https://github.com/vpoulailleau/pygrammalecte
Grammalecte, le correcteur grammatical en Python
https://github.com/vpoulailleau/pygrammalecte
french grammalecte grammar-checker linter
Last synced: 6 months ago
JSON representation
Grammalecte, le correcteur grammatical en Python
- Host: GitHub
- URL: https://github.com/vpoulailleau/pygrammalecte
- Owner: vpoulailleau
- License: bsd-3-clause
- Created: 2020-07-31T07:11:56.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-11-06T15:11:15.000Z (7 months ago)
- Last Synced: 2024-11-06T16:18:56.337Z (7 months ago)
- Topics: french, grammalecte, grammar-checker, linter
- Language: Python
- Homepage:
- Size: 72.3 KB
- Stars: 14
- Watchers: 2
- Forks: 5
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pygrammalecte
[](https://pypi.python.org/pypi/pygrammalecte)
[](https://github.com/vpoulailleau/pygrammalecte/blob/master/LICENSE)
[](https://github.com/astral-sh/ruff)
[](https://pepy.tech/project/pygrammalecte)
[](https://codeclimate.com/github/vpoulailleau/pygrammalecte/test_coverage)
[](https://codeclimate.com/github/vpoulailleau/pygrammalecte/maintainability)(english version at the bottom of this document)
Grammalecte, le correcteur grammatical en Python.
Pour être précis, ce projet n’est pas Grammalecte, mais un « wrapper » permettant de l’utiliser facilement en Python.
## Installation
Vous devez utiliser un Python en version supérieure ou égale à 3.9.
L’utilisation d’un environnement virtuel est fortement recommandé.
```sh
python3 -m pip install pygrammalecte
```## Utilisation
### Vérification d’une chaîne de caractères
```python
from pygrammalecte import grammalecte_texttexte_bidon = """\
Coucou, je veut du fromage.
Je sais coder en VHDL.
Le VHDL est est compliquer.
"""for message in grammalecte_text(texte_bidon):
print(message)
```### Vérification d’un fichier
Vous devez fournir le chemin du fichier en `str` ou en `pathlib.Path`. Le fichier doit être un fichier texte brut (pas un fichier Word ou OpenDocument par exemple).
```python
from pathlib import Pathfrom pygrammalecte import grammalecte_file
filepath = Path("toto.txt")
for message in grammalecte_file(filepath):
print(message)
```### Messages générés
Les fonctions `grammalecte_file` et `grammalecte_text` sont des générateurs, vous pouvez donc les utiliser dans une boucle `for`. Elles génèrent des `GrammalecteMessage`.
Deux types de `GrammalecteMessage` existent :
- `GrammalecteSpellingMessage` qui a comme attributs :
- `line` : numéro de la ligne dans le texte vérifié
- `start` : numéro du caractère de début de l’erreur dans la ligne
- `end` : numéro du caractère de fin de l’erreur dans la ligne
- `word` : le mot non reconnu par `Grammalecte`
- `message` : message d’erreur- `GrammalecteGrammarMessage` qui a comme attributs :
- `line` : numéro de la ligne dans le texte vérifié
- `start` : numéro du caractère de début de l’erreur dans la ligne
- `end` : numéro du caractère de fin de l’erreur dans la ligne
- `url` : l’URL fournie par `Grammalecte`
- `color` : une couleur fournie par `Grammalecte`, c’est une liste de 3 entiers entre 0 et 255.
- `suggestions` : propositions de correction
- `message` : message d’erreur
- `rule` : identifiant de la règle violée
- `type` : type de la règle (`"conj"`…)## Changelog
### Version 1.4.0
- Passage à `uv`
- Compatibilité Python 3.9 à 3.13
- Utilisation de Grammalecte v2.1.1### Version v1.3.0
- Correction due à un fonctionnement étrange de Grammalecte v1.12.0
### Version v1.2.0
- Utilisation de Grammalecte v1.12.0
### Version v1.1.0
- Ajout de l'attribut `message` pour `GrammalecteSpellingMessage`
### Version v1.0.0
- Refactoring
- Ajout de l'intégration continue### Version v0.1.0
- Première version !
- Utilisation de Grammalecte v1.11.0## English version
This is a wrapper for the french grammatical checker called Grammalecte.