2014-09-23 9 views
22

Situazione:Come aggiungere pattern a due parole da ignorare da LanguageTool?

Come soluzione alternativa per il not yet implemented feature to add a user dictionary of words to Languagetool, mi si avvicinò con questo frammento di codice:

JLanguageTool langTool = new JLanguageTool(lang); 
langTool.activateDefaultPatternRules(); 
List<Rule> rules = langTool.getAllActiveRules(); 
for (Rule rule:rules) { 
    // System.out.println(rule.getId()); 
    if (rule.getId().equals("GERMAN_SPELLER_RULE")) { 
     if (rule instanceof SpellingCheckRule) { 
      SpellingCheckRule srule=(SpellingCheckRule) rule; 
      String [] words={"word1", "word2"}; 
      List<String> tokens=new ArrayList<String>(); 
      for (String word:words) { 
       tokens.add(word); 
      } 
      srule.addIgnoreTokens(tokens); 
     } 
    } 
} 

che bene aggiungere l'elenco di parole specificato da

String [] words={"word1", "word2"}; 

a la lista delle parole ignorate. Ma che dire delle combinazioni di parole/modelli a due parole come "Bagno dell'ospite", "parola francese" "applicazione di test" - come potrei ottenerle ignorate senza modificare il file grammaticale originale? Presumo che la creazione di una regola definita dall'utente potrebbe fare il trucco e potrebbe anche essere una soluzione più elegante per il frammento di codice sopra indicato.

Domanda:

Quale potrebbe essere un approccio di lavoro per ottenere un utente-dizionario work-around in corso che ignora le frasi singole e due parole?

risposta

2

Un file ignore.txt è supportato dalla versione 2.9. vedere CHANGES.txt al punto di vista -Spelling.

Le frasi di due parole non sono supportate. vedere il metodo di controllo loadWordsToBeIgnored in SpellingCheckRule.java. (se lo facessi, il controllo fallirà con una "RuntimeException: nessuno spazio previsto in ...")

+0

Potresti fornire maggiori dettagli su come integrare ciò che sarebbe molto utile. Grazie –

+0

Sì, mi piacerebbe sapere come usare 'ignore.txt'. Dove lo metto? Può essere utilizzato con la versione da riga di comando? –

Problemi correlati