2016-08-19 4 views
1

Emacs/Ciderのセットアップ(clojure-modeとparedit-modeの上に構築)では、タブストップは通常無視されます。または、s式の2番目のシンボルだけをインデントします。emacsで字下げを設定するcider/paredit/clojure-mode

これがデフォルトになります:

時には、大規模な構成のために例えば、それはまた、後続のシンボルをインデントすることが望ましいです

、それがどのように見えるかどうかを、実行することです何
(def config [:hello 34 :goodbye 
      :a 34 :c 
      :long-word 0 :a]) 

(def config [:hello  34 :goodbye 
      :a   34 :c 
      :long-word 0 :a]) 
+2

はあなたの設定は、ベクトルですか?マップの場合は、[clojure-align](https://github.com/clojure-emacs/clojure-mode#vertical-alignment)を実行してください。 – OlegTheCat

+0

いいです、これは地図に適しています。しかし実際には私はベクトルのためにそれを必要としています... –

答えて

0

Emacsはベクトルの要素を任意の位置に揃えませんが、M-itab-to-tab-stop)を使用すると、タブ空白はあなたの設定に依存します)。したがって、好きなように要素を手動で整列させることができます。

+0

それは良いです!どのコレクションでも動作するようにclojure-alignが強化された方が良いでしょう。 https://github.com/clojure-emacs/clojure-mode/blob/464c9de6734cb4b426137674041d695c2a7c7ef9/clojure-mode.el#L973 –

+0

気軽にチケットを発行してください。私たちはこのようなユースケースを考慮しなかったが、将来それを実装するかもしれない。 –

0

あなたの代わりにベクトルのマップとして、あなたの設定を持って生きることができる場合は、clojure-align-forms-automaticallyに切り替えると、Clojureのモードが正しいことを行います。

(def config {:hello 34 
      :goodbye [something else] 
      :a [34 :c] 
      :long-word 0 
      :a 'b}) 

=> 

(def config {:hello  34 
      :goodbye [something else] 
      :a   [34 :c] 
      :long-word 0 
      :a   'b}) 
関連する問題