3

プレーンなtex-modeの人たちは、emacs 24.1に非常に優れた機能を追加しました。これは、既存のペアを一致させ続ける、 latex-electric-env-pair- modeと呼ばれるマイナーモードです。つまり、タグ\begin{...} [...] \end{...}内の環境名を変更すると、対応するものが自動的に変更されます(スター付きバージョンからスターなしバージョンに変更する場合、またはその逆の場合は非常に便利です)。 \begin{...}\end{...}

ただし、AUCTeXと比較すると、texモードはまだダメです...しかし、私は新しいマイナーモードが本当に好きです。使用されているように見えるものをすべてtex-mode.elから新しいファイルにコピーし、すべての記述子を変更して、スタンドアロンのマイナーモードを作成しようとしました(したがって、AUCTeXまたはtex-の残りの部分と競合しません。モード)。残念ながら、これは機能しません。マイナーモードをオンにすることはできますが、機能しません。何も起こりません。

私は(e)lispプログラマーではありません。つまり、コードを本当に理解していません。しかし、誰かがこのマイナーモードの機能を気に入って、スタンドアロンバージョンに移植できるのではないでしょうか。また、同様の/同等の機能を提供するパッケージがあるかもしれませんか?

助けていただければ幸いです!

4

1 に答える 1

3

おそらく、 (環境のスターター/エンダーを見つけるためtex-env-markに後で使用されるマークを設定する)または(バッファーの関連部分で実行される)または(これらのルールが実際に使用されるように使用する)の設定を見逃した可能性があります。latex-electric-env-pair-modelatex-syntax-propertize-rulestex-env-markssyntax-propertize-functionlatex-syntax-propertize-rules

ところで、それらをコピーするのではなく、以下のテストされていないコードのようなものを試すことをお勧めします。

(defconst my-latex-syntax-propertize-function
   (with-temp-buffer (latex-mode) syntax-propertize-function))

(add-hook 'LaTeX-mode-hook
          (lambda ()
            (set (make-local-variable 'syntax-propertize-function)
                 my-latex-syntax-propertize-function)
            (latex-electric-env-pair-mode 1)))
于 2012-11-01T01:50:24.333 に答える