如何修改vim-clojure-static插件的默认设置?

时间:2016-08-08 05:15:29

标签: vim plugins clojure vim-plugin vimclojure

我是 clojure 编程的新手。我正在使用 vim 编辑器。我已经安装了 vim-clojure-static 插件来编写更好的代码。 但它没有像我预期的那样工作。我希望每个特殊关键字的 两个 空格缩进。

例如,这是 core.clj 文件。

(ns hello.core
  (:gen-class)
  (:import
    (java.io FileNotFoundException)))

(defn -main
  [& args]
  (println "Hello, World!")
  (try (slurp (first args))
       (catch FileNotFoundException e (println (.getMessage e)))))

这是默认缩进。我不喜欢这样。我希望我的代码看起来像:

(ns hello.core
  (:gen-class)
  (:import
    (java.io FileNotFoundException)))

(defn -main
  [& args]
  (println "Hello, World!")
  (try (slurp (first args))
    (catch FileNotFoundException e (println (.getMessage e)))))

这意味着,我希望 两个 空格缩进每个特殊关键字 在给定的示例中尝试

与此同时,我不确定,我是否以正确的方式安装了 *插件。这是我的 .vim 目录结构:

$ tree ~/.vim/
/home/james/.vim/
|-- autoload
|   `-- pathogen.vim
`-- bundle
    `-- vim-clojure-static
        |-- autoload
        |   `-- clojurecomplete.vim
        |-- clj
        |   |-- dev-resources
        |   |   |-- test-basic-sexp-indent.txt
        |   |   |-- test-inherit-indent.in
        |   |   |-- test-inherit-indent.out
        |   |   |-- test-multibyte-indent.txt
        |   |   |-- test-reader-conditional-indent.in
        |   |   |-- test-reader-conditional-indent.out
        |   |   |-- test-side-effects-in-indentexpr.in
        |   |   `-- test-side-effects-in-indentexpr.out
        |   |-- project.clj
        |   |-- src
        |   |   `-- vim_clojure_static
        |   |       |-- generate.clj
        |   |       `-- test.clj
        |   |-- test
        |   |   `-- vim_clojure_static
        |   |       |-- indent_test.clj
        |   |       `-- syntax_test.clj
        |   `-- vim
        |       `-- test-runtime.vim
        |-- doc
        |   `-- clojure.txt
        |-- ftdetect
        |   `-- clojure.vim
        |-- ftplugin
        |   `-- clojure.vim
        |-- indent
        |   `-- clojure.vim
        |-- LICENSE.txt
        |-- README.markdown
        `-- syntax
            `-- clojure.vim

16 directories, 23 files

这是我的 vimrc 文件:

$ cat ~/.vimrc
set autoindent
set tabstop=2
set shiftwidth=2
set softtabstop=2
set expandtab
execute pathogen#infect()
syntax on
filetype plugin indent on
谁能告诉我,我哪里错了?如何使用 * two 空格自动生成?感谢。

1 个答案:

答案 0 :(得分:0)

根据此处的文档:https://github.com/guns/vim-clojure-static
您需要使用

之类的命令将try关键字添加到列表中

let g:clojure_fuzzy_indent_patterns = ['^with', '^def', '^let', '^try']

我希望它会有所帮助,我没试过它