IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants VCL Delphi Discussion :

Correcteur GRAMMATICAL ?


Sujet :

Composants VCL Delphi

  1. #1
    Membre habitué

    Homme Profil pro
    Direction financière et formateur en gestion et contrôle de gestion
    Inscrit en
    Mai 2003
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Direction financière et formateur en gestion et contrôle de gestion
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2003
    Messages : 202
    Points : 130
    Points
    130
    Par défaut Correcteur GRAMMATICAL ?
    Bonjour à tous
    Je cherche un correcteur grammatical mais impossible de trouver quoi que ce soit.
    Le correcteur orthographique est intégré maintenant aux TRichEdit mais rien du coté grammatical.
    Auriez vous une solution ?

    J'ai pensé à utiliser celui de Word mais l’excellent tuto fait par Nono40 (https://nono40.developpez.com/tutori...rd/correction/) date un peu (2005) et je ne sais pas comment l'implémenter dans Delphi
    Là aussi si vous avez une solution, je suis preneur

    J'ai vu aussi l'utilitaire LanguageTool, mais il ne semble pas possible de l'utiliser dans les applications

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 802
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 802
    Points : 25 819
    Points
    25 819
    Par défaut
    On avait eu un sujet sur le SpellChecking , il y a tout pile un an !
    Le même auteur semble toujours sur le sujet TRichEdit CHARFORMAT2A CFU_UNDERLINEWAVE
    Peut-être que vous avez des projets convergents ?


    Le Tuto de Nono40, as-tu essayé de le compiler ?
    Surement du EarlyBinding à récrire en LateBinding (sans faire l'import de la TLB)

    Ayant plutôt travaillé sur un éditeur de XML, seulement le Highligth, on ne m'a pas demandé en plus de détecter les blocs mal formés, j'aurais été bien en difficulté, la majeure partie des erreurs se voit avec la coloration qui déconne
    J'ai un peu l'impression que la correction grammatical est proche de l'analyse logique d'un code source ou XML/JSON avec des séquences attendues, tu fais bien de partir sur une lib externe, le temps de développement serait bien trop long.

  3. #3
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 523
    Points : 3 148
    Points
    3 148
    Par défaut
    https://github.com/coderserdar/Delph...ther/NHunSpell

    ce composant est fait pour, je crois

  4. #4
    Membre habitué

    Homme Profil pro
    Direction financière et formateur en gestion et contrôle de gestion
    Inscrit en
    Mai 2003
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Direction financière et formateur en gestion et contrôle de gestion
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2003
    Messages : 202
    Points : 130
    Points
    130
    Par défaut
    On avait eu un sujet sur le SpellChecking , il y a tout pile un an !
    Bonjour ShaiLeTroll, ce post a été l'une de mes bases de départ à partir de quoi j'ai fais pas mal de recherche (à partir du moment où tu te dis "tiens c'est pas bête ça, comment on fait ...")
    Le nouveau TRichEdit de la VCL (nouveau parce qu'avec mes recherches j'ai découvert cette semaine la propriété SpellChecking du TRichEdit) propose en natif la correction orthographique mais absolument pas la correction grammaticale.

    Ce composant est fait pour, je crois
    J'ai testé aussi, mais une classe est absente de la distribution "TAddictSpell" (impossible à trouver) pour pouvoir faire des tests. Donc impossible de mener à bien des vérifs et des tests plus complet.
    J'ai trouvé pas mal de site qui reprennent Hunspell mais cela ne fait que de la correction orthographique, pas mieux d’ailleurs et en plus lent en plus que le nouveau TRichEdit que l'on a en natif dans la VCL.

    Nono40 travaillait avec la bibliothèque de type "Microsoft Word 11.0 Object Library", mais avec les nouveaux environnement Office, cette bibliothèque ne semble plus exister. Et je n'ai trouvé aucun tuto permettant de travailler avec des MS Office "moderne"

    Mais au delà de ça, ma recherche va vers la correction grammaticale. La correction orthographique étant déjà prise en charge par RichEdit.

    D'où l'idée de regarder vers une lib extérieure. Je suis tombé sur ce post https://forum.languagetool.org/t/patchwork/504, qui m'a renvoyé vers ceci https://github.com/languagetool-org/languagetool mais là, je ne sais pas quoi en faire !

    Voilà, si l'envie vous prends de vous pencher dessus, je serai preneur de vos solutions.

  5. #5
    Membre averti
    Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 337
    Points : 309
    Points
    309
    Par défaut
    Correcteur orthographique TMS
    https://www.tmssoftware.com/site/tmsspellcheck.asp

    Lmd RichPack inclut les composants TLMDSpellChecker
    https://www.lmdinnovative.com/products/vcl/lmdrichpack
    https://files.lmd.de/downloads/tutor..._component.htm

    THunSpell
    https://github.com/edwinyzh/THunSpell

    TRichEdit property SpellChecking Delphi 11

    Voici un petit exemple de la correction orthographique capsulée d'un dictionnaire :

  6. #6
    Invité
    Invité(e)
    Par défaut
    le seul que je connais est grammalecte malheureusement en js

    Pièce jointe 656362
    Dernière modification par Invité ; 22/06/2024 à 13h11.

  7. #7
    Membre habitué

    Homme Profil pro
    Direction financière et formateur en gestion et contrôle de gestion
    Inscrit en
    Mai 2003
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Direction financière et formateur en gestion et contrôle de gestion
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2003
    Messages : 202
    Points : 130
    Points
    130
    Par défaut
    XeGregory, je viens de poster une question concernant un de tes codes sur le forum en lien avec a rechercher (tu déclares
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var Format2A: CHARFORMAT2A;
    et le compilo me dit : "Identificateur non déclaré : CHARFORMAT2A" et je galère
    Tu ne veut pas poster ton code en entier en tant que tuto ? ce serait super sympa

    Ok, je vais regarder tous les liens

    ... TMS : ouah le prix, pour un logiciel perso ...

  8. #8
    Membre averti
    Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 337
    Points : 309
    Points
    309
    Par défaut
    Citation Envoyé par patrice@ Voir le message
    XeGregory, je viens de poster une question concernant un de tes codes sur le forum en lien avec a rechercher (tu déclares
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var Format2A: CHARFORMAT2A;
    et le compilo me dit : "Identificateur non déclaré : CHARFORMAT2A" et je galère
    Tu ne veut pas poster ton code en entier en tant que tuto ? ce serait super sympa

    Ok, je vais regarder tous les liens

    ... TMS : ouah le prix, pour un logiciel perso ...
    Il faut que tu déclare l'unit https://www.developpez.net/forums/d2...underlinewave/
    Comme tu pourra le constaté je n'est pas réussi a intercepté les lignes ondulés du SpellChecking, donc j'avais trouvé une autre solution pour géré les TPopUpMenu.

    Citation Envoyé par XeGregory Voir le message
    J'ai trouvé cette solution-là , vu que le SpellChecking se présente avant la demande d'ouverture du PopUpMenu1 on lui laisse la place, s'il se présente pas ont réattribue le PopUpMenu1 au Control.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    type
      TCustomRE = class(TCustomRichEdit);
     
    procedure TForm1.RichEditMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState;
      X, Y: Integer);
    begin
      case Button of
        mbRight:
          begin
            if (Screen.ActiveControl is TCustomRichEdit) and
              not Assigned(TCustomRE(Screen.ActiveControl).PopupMenu) then
              TCustomRE(Screen.ActiveControl).PopupMenu := PopupMenu1
            else
              TCustomRE(Screen.ActiveControl).PopupMenu := nil;
          end;
      end;
    end;
    Pièce jointe 654047

  9. #9
    Membre averti
    Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 337
    Points : 309
    Points
    309
    Par défaut
    Citation Envoyé par patrice@ Voir le message
    ... TMS : ouah le prix, pour un logiciel perso ...
    Non, ça va, le prix est abordable.
    TMS VCL UI Pack 375€ c'est la pack complet avec les 600 composants VCL.

Discussions similaires

  1. Réponses: 22
    Dernier message: 01/06/2020, 15h04
  2. [AC-2000] Correcteur grammatical et orthographique
    Par nietzsche64 dans le forum VBA Access
    Réponses: 3
    Dernier message: 09/02/2011, 11h43
  3. latex et correcteur grammatical
    Par nicotimo dans le forum Editeurs / Outils
    Réponses: 4
    Dernier message: 07/01/2009, 20h03
  4. Je cherche un code source d'un correcteur Grammatical
    Par sofasr dans le forum C++Builder
    Réponses: 1
    Dernier message: 31/03/2008, 18h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo