両方の言語のスペルをチェックできるGeditまたは他の非コマンドラインエディタ

両方の言語のスペルをチェックできるGeditまたは他の非コマンドラインエディタ

2つの言語(ドイツ語、英語)を同時に確認できるエディタを探しています。 Geditはデフォルトでは機能しません。

しかし、Geditを使いたいです。英語とドイツ語の辞書をマージし、ツール - >言語設定...で生成されたファイルを選択すると可能です。

編集する

ほとんどすべてが得られました(ステップ6のいくつかの注意事項zzgl.(例:最後にドットがある単語)はスペルチェックをしません):) Kevin Atkinsonの投稿に感謝します:)

(私が使用している英語の場合はaspell6-en-7.1-0.tar.bz2(すでに新しいバージョン/更新済み)追加できますが、ドイツ語の場合は最新バージョンであるため使用しています。Called、およびを使用してhttp://extensions.services.openoffice.org/project/dict-de_DE_framiこのunzip.oxtを抽出します。名前をに変更de_DE_framide_DE_frami.affde_DE_frami.dicde_DE_frami.affqed_affix.datde_DE_frami.dicde.txt

注:ドイツ語の場合は拡張機能もあります。http://extensions.services.openoffice.org/de/project/DFEWこの機能も後で統合します。

ステップ6では、すべてのüäöß..をスキップして作成された辞書にはないので、使用する必要がありました $ cat de_en | aspell --encoding=utf-8 create master -l ./qed ./qed.rws 。しかし今はそこにあります。 ( $ aspell -d ./qed.rws -a テスト:たとえば、「Käse」または「zweiunddreißig」と入力すると*が印刷されるので、次のようになります。単語)

ファイルサイズ: $ du -b qed*
18725 qed_affix.dat
103話
12以上
6763456 qed.rws
行: $ wc -l qed* de_en
       6qed.dat
       1つ以上
   54403 qed.rws
     第717話
  334974 de_en

ダウンロード誰でもこのパッケージが必要な場合に備えて。

現在の手順6で最も一般的な警告は次のとおりです。最後の5行です。

$ catde_en | aspell --encoding=utf-8 マスター生成 -l ./qed ./qed.rws
...(多くの警告が表示されます)
警告:zytostatikaという単語から誤ったサフィックス「o」を削除してください。
警告:zytostatikaという単語から誤ったサフィックス「z」を削除してください。
警告:zytostatikumという単語から誤ったサフィックス「o」を削除してください。
警告:zytostatikumという単語から誤ったサフィックス「z」を削除してください。
警告:「zzgl」という言葉です。それは無効です。数値」。 '(U + 2E)は単語の末尾には現れません。単語をスキップします。
$

aspell-enそしてaspell-de()を削除し、4つのファイル、、、$sudo apt-get remove aspell-en aspell-deすべてを入れました。ところで、私のファイルは空です。qed.datqed.multiqed.rwsqed_affix.dat/usr/lib/aspell/var/lib/aspell

これで新しいパッケージを選択できるようになりました:gedit->ツール->言語設定...->不明(qed)。

ステップ6の警告に関して、zzlg.最後に点がある単語はスペルチェックを実行しません。 aもそこで使用されているので、qed.dat special ' -*-aを追加してラインで遊んでみましたが、残念ながら動作しません。.de.dat.

編集する

解決済みスペルチェックホワイトリストに単語を追加してスペルチェックに追加すると、最後にドットがある単語のスペルをチェックできます。 $ cat de_en | sed -n '/\./{s/[./]\+[^./]*$//;p}' >> /home/<username>/.config/enchant/qed.dic

答え1

Vimでは、スペルチェック用に複数の言語を設定できます。

:set spelllang=de,en

ドイツ語と英語。

答え2

Aspel 作者はここにあります。

前の回答で述べたように、単に他の言語の辞書を組み合わせて機能すると期待することはできません。 2つの元の言語の機能を組み合わせた新しい言語を作成する必要があります。

幸いなことに、英語とドイツ語の場合、これは非常に簡単です。しかし、同様のサウンド検索を無効にするため、英語の単語提案の品質が低下します。

  1. aspell-enとaspell-de辞書パッケージのインストール

  2. すべてをきれいに保つには、空のディレクトリに変更してください。また、文字セットの問題を回避するには、設定でロケールを「C」に変更してくださいLC_ALL=C

  3. 英語とドイツ語の辞書を計画された単語のリストにダンプ

    aspell dump master en > en.txt
    aspell dump master de > de.txt
    
  4. en.datとde.datと組み合わせると、一般的にusr/lib/aspell

    英語の辞書は音素に似た検索を使用しますが、ドイツ語の辞書はそうではありません(英語のみで、インポートが簡単なため、接写圧縮と互換性がありません)、これを無効にします。英語辞書は接辞圧縮を使用しませんが、ドイツ語辞書は使用するため、ドイツ語辞書にのみ接辞ファイルを使用します。 (これにより、ドイツ語辞書を拡張してサイズを増やす必要がなくなります。)

    qで始まる言語がほとんどないため、この言語をqed、「q」と呼びます。英語は「e」、ドイツ語は「g」です。 (言語名は通常2〜3文字でなければなりませんが、aspellはあまり関係がないため、en-deや他の名前は大丈夫かもしれませんが、2〜3文字の名前であれば保証されます)

    ファイル名が指定さqed.datれ、次の内容が含まれます。

    name qed
    charset iso8859-1
    special ' -*-
    soundslike      none
    affix           qed
    affix-compress  true
    
  5. de_affix.dat現在のディレクトリにコピーして名前を変更しますqed_affix.dat

  6. 結合辞書を作成します。

    cat en.txt de.txt | aspell create master -l ./qed ./qed.rws
    
  7. ファイルの作成qed.multi:

    add qed.rws
    
  8. テスト辞書を使用してください-d ./qed./現在のディレクトリを検索するには、aspellを強制的に実行する必要があります。

  9. それをインストールqed.dat qed.rws qed.multiし、qed_affix.dataspellが見つけることができるところに置きなさい。 aspellが辞書と言語データファイルを検索する方法の詳細については、ドキュメントを参照してください。

  10. 完璧。今、すべてがうまくいくでしょう。より洗練されたソリューションを使用すると、より良い提案品質のために同様のサウンド検索が可能になります。ただし、接写圧縮で使用する場合は特別な注意が必要です(詳細についてはAspellのマニュアルを参照)。あるいは、ドイツ語辞書を拡張し、英語の発音検索を使用することもできますが、これはドイツ語の単語にはあまり効果的ではありません。

英語とドイツ語の場合、どちらも同じ文字セット(iso-8859-1)を使用し、1つの言語のみがAffix圧縮を使用するため、簡単に組み合わせることができます。他の言語を組み合わせるにはより多くの作業が必要ですが、自分が何をしているのかを知ったら可能です。私は読者にAspellがどのように機能するかについてのアイデアを提供し、同様のものを他の言語の組み合わせにも使用できるように、ここでこれらの手順を詳しく説明します。

どちらの言語も接写圧縮を使用している場合は、競合するフラグがないように、接尾辞ファイルを結合するか、辞書の1つを拡張する必要があります。

両方の言語が異なる8ビット文字セットを使用している場合は、代わりに両方の言語をサポートできる互換性のある文字セットを使用する必要があります。標準がない場合は、新しい標準を作成できます。混乱を避けるために、単語リストをUTF-8に変換し、すべての入力と出力が内部的に使用される文字セット(歴史的な理由でデフォルト)の代わりにUTF-8になるようにAspellに指示します。

答え3

Aspel 作者はここにあります。

2つの異なる言語の2つの辞書を組み合わせて、それが機能すると期待することはできません。各辞書には、言語固有の機能を記述する関連データファイルもあります。

最良の方法は、英語とドイツ語を正しく処理する新しい言語を作成することです。そうすることは実現可能ですが、簡単な作業ではありません。他の解決策が見つからない場合は、今週後半にお役立てください。

Aspell(またはHunspellを含む私が知っている他のほとんどのスペルチェッカー)は、現在一般的に多言語スペルチェックをサポートしていません。

関連情報