1

エディターにいくつかの新しい機能を実装する必要があります。私は Emacs を選びました - 私の主なプログラミング知識は Java と C ですが - Emacs Editor のいくつかの機能を追加し、いくつかの既存の機能を編集したいと思っています。そのソースコードを見て、少し迷った。どこから始めるべきか、また役立つチュートリアルがあるかどうかについて、誰かがアドバイスをくれるかどうか疑問に思っていましたか?

PS 1 つの特定の質問は、すべての新しい機能と動作を備えた新しいモードをどのように書き始めることができるかということです。または、コピー/貼り付けなどの基本的な機能を無効にするにはどうすればよいですか?

乾杯

4

3 に答える 3

3

Emacs Lisp でのプログラミング入門 http://www.gnu.org/software/emacs/emacs-lisp-intro/ または emacs と入力:

M-: (info "(eintr)Top") RET

Emacs Lisp マニュアル http://www.gnu.org/software/emacs/manual/elisp.html または emacs と入力:

M-: (info "(elisp)Top") RET
于 2012-06-20T16:43:51.110 に答える
2

メジャーモードの作成に特に向けたチュートリアルがいくつかあります。

それ以外は、Emacsでの書き込みモードはLisp関数を書き込むだけです。

私が注意することの1つは、ここであなたが提案していることは無意味かもしれないということです。パーミッションシステムをメジャーモードとして実装する場合、ユーザーはモードを切り替えるだけでオフにできます。この許可システムの目的が編集の混乱を避けることである場合は問題ありません(この場合、ユーザーはあなたの目的に協力すると思います)。ユーザーが敵対的であると予想している場合、Emacsはこれには間違ったツールです。

于 2012-06-21T12:53:56.060 に答える
1

メジャーモードとマイナーモードの定義に関する手動セクションは次のとおりです。

C-hig (elisp) Modes RET

多くの場合、必要なものと同様の基本機能を提供する既存のモードから新しいモードを派生させることが有益です。

十分に一致するものがない場合は、同じ動作のいくつかを提供するモードのソースコードを調べることが次善の策になります。

からモードを「派生」させるnilことは、完全に新しいメジャーモードを作成する一般的な方法のように思われることに注意してください。そうすれば、define-derived-modeマクロのすべてのメリットを享受できます。

于 2012-06-20T22:48:43.140 に答える