自動修正モジュール (クイックルール入力モード)¶
何をするのか¶
単純な単語 (引用符や Python 構文なし) をマップ ファイルに入力するとき
FUZZY_MAP_pre.py と同様に、システムが自動的に有効なルールに変換します。
これは新しいルールを作成する最も速い方法です。形式を覚える必要はありません。
## 例
これを「FUZZY_MAP_pre.py」に入力します。
oma
自動修正モジュールが「NameError」を検出しました(裸の言葉、有効な Python ではありません) ファイルは自動的に次のように変換されます。
# config/maps/.../de-DE/FUZZY_MAP_pre.py
import re # noqa: F401
# too<-from
FUZZY_MAP_pre = [
('oma', 'oma'),
]
次に、実際に必要なものに合わせてルールを編集します。
('Oma', 'oma'), # capitalize
('Großmutter', 'oma'), # synonym
('Thomas Müller', 'thomas'), # from a phone book
仕組み¶
モジュール「scripts/py/func/auto_fix_module.py」が自動的にトリガーされます Aura がマップファイルのロード中に「NameError」を検出したとき。
すると、次のようになります。
正しいファイルパスヘッダーを追加します。
欠落している場合は「import re」を追加します
FUZZY_MAP_pre = [リスト定義を追加します裸の単語を
('word', 'word'),タプルに変換します]でリストを閉じます
ルールと制限¶
1KB より小さいファイルでのみ動作します (安全制限)
のみに適用されます:
FUZZY_MAP.py、FUZZY_MAP_pre.py、PUNCTUATION_MAP.pyファイルは有効な言語フォルダー内にある必要があります (例:
de-DE/)一度に複数の単語を入力できます (例: 電話帳リストから)
既知の問題 (完全にはテストされていません)¶
⚠️ このモジュールは機能しますが、徹底的にテストされていません。次の場合は正しく動作しない可能性があります。
数字 –
5または6は有効な Python 識別子ではありません。自動修正はそれらを処理できない可能性があります特殊文字 – 「-」、「.」、ウムラウトを含む単語は「NameError」を引き起こさない可能性があります
複数の単語のエントリ –
thomas mueller(スペースを含む) はNameErrorではなくSyntaxErrorを引き起こすため、自動修正がトリガーされない可能性がありますカンマ区切り値 –
drei, vierは適切なタプルにならずにそのまま挿入される可能性があります
自動修正がトリガーされない場合は、ルールを手動で追加します。
('replacement', 'input word'),
# too<-from コメント¶
このコメントは、ルールの方向を思い出させるために自動的に追加されます。
too <- from
意味: 出力 (も) ← 入力 (から)。交換が先です。
PUNCTUATION_MAP.py の場合、方向は逆になります: # from->too
リストからの一括入力¶
複数の単語を一度に貼り付けることができます。
thomas
maria
berlin
それぞれの裸の単語が独自のルールになります。
('thomas', 'thomas'),
('maria', 'maria'),
('berlin', 'berlin'),
次に、必要に応じて各置換を編集します。