6

ELPA の Clojure モード パッケージを使用しています。それ以外はすべて問題ありませんが、私はパレディモードに耐えられません。簡単にオフにすることはできないようです。今は、開いているすべてのバッファに対して無効にしています。この変数を nil に設定してみました:

(setq clojure-enable-paredit nil)

しかし、paredit はまだ表示されます。何か案は?

4

3 に答える 3

29

実際の質問に対する回答ではありませんが、paredit モードにチャンスを与えてください。私も、括弧が自動的に閉じられ、単一の括弧だけを削除することを拒否することに本当に悩まされていました。

ただし、これを行うと、バッファーがバランスの取れた SEXP であることを常に確認できるため、テキスト指向のタスクだけでなく、多くの有用な SEXP 指向のタスクを実行できます。たとえば、私は常に次を使用します。

  • M-( sexp を新しいものでラップします。たとえば(map f some-list)(doto (map f some-list) println)
  • C-) 別の sexp を現在のものに「丸呑み」(let [x 10]) (println x)します。(let [x 10] (println x))
  • M-<UP> および/または Mr は、ソース ツリーの "より高い" レベルのポイントで SENSP をプルし、それをラップしていたものを破壊します。たとえば、またはに(first (map f some-list))変わります。(map f some-list)(first some-list)

テキストの代わりにコードの編集を開始できる、このような便利な機能が無数にあります。また、paredit モードを好まない優秀な Lisp ハッカーはたくさんいますが、それができる素晴らしいことを理解する前に、それに反対しないことをお勧めします。

于 2011-03-09T09:04:41.673 に答える
16

機能する1つのトリックを見つけました。elpa パッケージが にロードされる前に、init.elこのフックを clojure モードに追加します。

(add-hook 'clojure-mode-hook (lambda () (paredit-mode nil)))
于 2011-03-09T07:07:07.933 に答える
0

価値のあることとして、私は ELPA を通じて clojure-mode も使用していますが、それは paredit を意味するものではありません。多分それをアンインストールするだけですか?clojure/swank/slime を動作させるためにクリーンな EMACS にインストールする必要があるパッケージは、clojure-mode、slime、slime-repl だけです。

私はこれだけをテストしました:

http://www.learningclojure.com/2010/08/clojure-emacs-swank-slime-maven-maven.html

数週間前ですが、まだ問題なく動作しています。

于 2011-03-09T19:02:38.530 に答える