安裝了這個 vim 的 plugin 之後,寫出的 clojure 的程式碼,插號就會由內而外地照彩虹來變色。而且連中括號的顏色也可以一起變化。
安裝 vim 的 rainbow parentheses
cd ~/.vim/bundle && git clone https://github.com/kien/rainbow_parentheses.vim.git
然後,在 ~/.vimrc 檔內,加入所需要的設置:
let g:rbpt_colorpairs = [ \ ['brown', 'RoyalBlue3'], \ ['Darkblue', 'SeaGreen3'], \ ['darkgray', 'DarkOrchid3'], \ ['darkgreen', 'firebrick3'], \ ['darkcyan', 'RoyalBlue3'], \ ['darkred', 'SeaGreen3'], \ ['darkmagenta', 'DarkOrchid3'], \ ['brown', 'firebrick3'], \ ['gray', 'RoyalBlue3'], \ ['black', 'SeaGreen3'], \ ['darkmagenta', 'DarkOrchid3'], \ ['Darkblue', 'firebrick3'], \ ['darkgreen', 'RoyalBlue3'], \ ['darkcyan', 'SeaGreen3'], \ ['darkred', 'DarkOrchid3'], \ ['red', 'firebrick3'], \ ] let g:rbpt_max = 16 let g:rbpt_loadcmd_toggle = 0 au VimEnter * RainbowParenthesesToggle au Syntax * RainbowParenthesesLoadRound au Syntax * RainbowParenthesesLoadSquare au Syntax * RainbowParenthesesLoadBraces
另一方面,要人工處理程式碼的對齊,其實也是很麻煩的事。寫過 golang 用過 gofmt 之後,寫新的語言也會不自覺開始找對應的東西。所幸, clojure 也有 cljfmt 。
安裝方式:
- 安裝 vim-fireplace
- 安裝 cljfmt
- 安裝 vim-cljfmt
想要在 vim 內打 :Cljfmt 就可以自動排版、關閉檔案存檔時也可以自動排版的設置,必須在
~/.lein/profiles.clj
寫入:dependencies [[cljfmt "0.5.6"]]
此外,必須是在 leiningen 「使用者域」的設置檔已經寫入之後,才啟動 leiningen repl 。因為不同於 gofmt 是獨立的程式,cljfmt 是需要透過 clojure 的 REPL 來啟動的。