4

私の質問は、emacs で TeX を書くことに動機付けられていますが、TeX システム自体とは無関係です。

私の目標は、一部の (TeX) マクロを Unicode 文字に置き換えるために、emacs で省略形を設定することです。

略語システムを使用してこれを達成することを計画しました。次の省略形は正常に機能しますが (test を \test に置き換えます):

("test" "\\test" nil 0)

私が望むことを行うことができる略語、つまり:

("\\alpha" "A" nil 0)

また

("\\\\beta" "B" nil 0)

\alpha または \beta と入力しても適用されません。

(「alpha」自体を置き換えて前の文字を 1 つ消去することでこれを回避できますが、バックスラッシュなしで alpha を入力し、この省略規則を適用しないオプションを保持したいと思います。)

\alpha を α に置き換える略語の正しい形は何ですか?

4

2 に答える 2

5

:regexp略語テーブルのプロパティを変更する必要があります。

(abbrev-table-put <your-abbrev-table> :regexp "\\(\\\\[a-z0-9@]+\\)")

唯一の問題は、逆向きに一致する正規表現では、先頭にオプションの文字を含めることができないことです。したがって、構文カテゴリを変更するか\(ただし、略語表を特別に処理する必要はありません)、またはこの表のすべての略語をバックスラッシュで開始するかどうかを選択する必要があります。

しかし、入力メソッドを使用して Unicode 文字を挿入しないのはなぜですか?

于 2013-08-14T15:18:43.430 に答える
2

これはすでに存在します。機能set-input-methodを使用して を選択しますTeX

于 2013-08-14T15:18:31.780 に答える