Nur ein kleines Problem. Das agressive_dash_splits
ist falsch geschrieben. Es sollte aggressive_dash_splits
. Oder verwenden Sie hyphen
anstelle von dash
, um sowohl mit dem Klassenmitglied AGGRESSIVE_HYPHEN_SPLIT
als auch mit tokenizer.perl
.
http://www.nltk.org/api/nltk.tokenize.html#nltk.tokenize.moses.MosesTokenizer.tokenize
Auch diese Funktionalität scheint nicht getestet zu sein.
Danke @somnathrakshit für die schnelle PR. Beachten Sie, dass das Ändern des Parameternamens die API beschädigt. Daher ist es möglicherweise besser, zuerst eine DeprecationWarning als Option bereitzustellen, wenn der alte Parametername verwendet wird, und ihn dann bei der nächsten Hauptversion vollständig zu entfernen. Vielleicht kann ein normaler NLTK-Entwickler das Verfahren hier kommentieren, da ich es nicht explizit in den Entwicklerrichtlinien oder im Dokument CONTRIBUTING.md erwähnt habe. @alvations , gibt es Richtlinien oder Präzedenzfälle zum Ändern von Funktions- / Parameternamen?
@goodmami @somnathrakshit Keine Sorge, die API in diesem Fall zu
In diesem Fall ist es unsere Schuld und es ist für Benutzer einfacher, auf die neue NLTK-Version zu aktualisieren.
Aber in anderen Fällen, insb. Wenn es um größere Änderungen geht, die nicht nur Tippfehler sind, können wir warnings
wie wir es mit veralteten Stanford-Tools getan haben: https://github.com/nltk/nltk/blob/develop/nltk/tag /stanford.py#L51
Vielen Dank an @alvations, dass Sie uns informiert haben. Als Anfänger in Open Source war nltk nett zu basteln. Nehmen Sie an der GSoC 2018 teil?
Aufgelöst in # 1956
@somnathrakshit Danke für den Beitrag! Leider nehmen wir nicht an der GSoC 2018 teil. Vielleicht ein weiteres Jahr, wenn wir mehr Freiwillige haben =)