M-x alignの設定 for Ruby
M-x align-regexp を知る - gan2 の Ruby 勉強日記
実は俺もalign.elはノーマークだった。
align は「align-rules-list」って変数で整列のルールを管理してるので、これにルールを追
加してやれば「M-x align」でもやりたいことはできるようになるんだろうなぁ。できたらルール追加したい。
ぐぐって設定してみた。
ruby-assignment-literalは代入文、ruby-xmpfilter-markはxmpfilterの「# =>」マークの設定。
どうぞ。
(add-to-list 'align-rules-list
'(ruby-comma-delimiter
(regexp . ",\\(\\s-*\\)[^# \t\n]")
(repeat . t)
(modes . '(ruby-mode))))
(add-to-list 'align-rules-list
'(ruby-hash-literal
(regexp . "\\(\\s-*\\)=>\\s-*[^# \t\n]")
(repeat . t)
(modes . '(ruby-mode))))
(add-to-list 'align-rules-list
'(ruby-assignment-literal
(regexp . "\\(\\s-*\\)=\\s-*[^# \t\n]")
(repeat . t)
(modes . '(ruby-mode))))
(add-to-list 'align-rules-list ;TODO add to rcodetools.el
'(ruby-xmpfilter-mark
(regexp . "\\(\\s-*\\)# => [^#\t\n]")
(repeat . nil)
(modes . '(ruby-mode))))
こりゃまじ便利だ!
Emacsは本当に奥が深い。まだまだ知らんことだらけだ。