GNU/Linux >> Linux の 問題 >  >> Linux

LaTeX で使用する文法チェック ツール?

(自分の質問に答えるのは礼儀正しくありませんが、最終的にはこうなりました。)

LanguageTool は、非常に優れたスタンドアロンの Java ベースの文法チェッカーです。ただし、プレーンテキストでは機能します。したがって、LaTeX ドキュメントをできるだけ平易なテキスト ドキュメントに変換する必要がありました。単純な作業ではありません。次のトリックを使用してなんとかそれを行うことができました:

<オール>
  • フロート パッケージと H オプションを使用して、すべてのフロートが位置を保持できるようにしました。これは、プレーン テキストに変換するときにキャプションが段落を分割しないようにするために必要です。
  • nopageno パッケージを使用して行番号を削除しました。
  • sed スクリプトを使用して、セクション名や説明ラベルにピリオドを追加するなど、さらに微調整を行いました。このスクリプトは、私自身のスタイルと慣習に固有のものであるため、ここでは公開しません。
  • この前処理の後、DVI にコンパイルして catdvi -s を実行しました .
  • 別の単純な sed スクリプトを使用して、空行と改ページを削除しました。最終結果は、LanguageTool で作業できる LaTeX ドキュメントの適切なテキスト変換です。
  • インライン化されたプログラムのリストなど、文法チェッカーが理解できない厄介な問題がまだいくつか残っていますが、全体として、そこから適切な自動校正チェックを取得できました :)


    私は、LyX-GC という TeX 文書をチェックするための文法チェッカーを作成しました。 Web アプリとしてオンラインで使用することもできます。

    LanguageTool をバックエンドとして使用できます。 LanguageTool を直接使用する場合の主な利点は、(1) TeX をフィルタリングして、LanguageTool が TeX コマンドを英語として解釈しようとする誤検知を回避すること、および (2) TeX 固有のルールを含む数百の独自のルールがあることです。たとえば、"See \ref{lem:foo} " は実際には "See Lemma \ref{lem:foo} である必要があります (また、LyX を使用する場合、LyX-GC には明らかに LyX と統合できるという利点があります。)

    LyX-GC は実際には英語のみをサポートしています (ただし、git リポジトリには実験的なフランス語のサポートがあります)。


    TeXtidote と呼ばれる、LaTeX ファイルのスペルと文法を直接チェックするための新しいツールを書き終えたところです。 :

    https://sylvainhalle.github.io/textidote

    このプログラムは、ファイルからマークアップを削除して言語ツール ライブラリに送信することができます。言語ツール ライブラリは、多数の言語でスペルと文法の両方の検証を実行します。 TeXtidote のユニークな点は、元のテキストと「クリーンな」テキストの間の単語の相対的な位置を追跡することです。これは、言語ツールからのメッセージをソース ファイル内の適切な場所に直接翻訳できることを意味します。デフォルトでは、TeXtidote は元のソースを示す HTML レポートを生成し、言語ツールによって検出されたエラーは正しい場所で強調表示されます:

    このツールは無料で簡単にインストールできます (OS に依存せず、Java が必要です)。ぜひ試してみて、感想を教えてください。 (ダウンロード/インストール/使用の詳細については、GitHub リポジトリの Readme ページを参照してください。Web サイトの [ダウンロード] ボタンをクリックしてアクセスしてください。)


    Linux
    1. ネットワークのトラブルシューティングにSSツールを使用する

    2. RackspaceでCloudFlareを使用する

    3. CentOS7でiptablesを使用する

    1. Linuxで印刷するための3つのヒント

    2. lpr で使用できるプリンター名を一覧表示するにはどうすればよいですか?

    3. VirtualBox で cloud-init を使用しますか?

    1. libvirtでVagrantを使用する方法

    2. PCでの仮想化、実用的なユースケースの初心者向けに説明

    3. Linux用の多目的リレーツールであるsocatの使用を開始する