我想尝试下面链接的 Vim 插件,它为 .haml和(也许) .sass文件增加了语法突显。
.haml
.sass
Http://github.com/tpope/vim-haml
是我干的。
$ cd ~/.vim $ git clone git://github.com/tpope/vim-haml.git
我在 Vim 中打开了一个 .haml文件,但是没有高亮显示。一定还有其他步骤需要执行。
确保实际的 .vim文件在 ~/.vim/plugin/中
.vim
~/.vim/plugin/
这两个命令将创建一个包含 ftplugin、语法等目录的 ~/.vim/vim-haml/目录。这些目录需要立即放在 ~/.vim目录中,或者需要将 ~/.vim/vim-haml添加到 vim 搜索插件的路径列表中。
~/.vim/vim-haml/
~/.vim
~/.vim/vim-haml
编辑:
我最近决定调整我的 vim 配置,并在这个过程中结束了编写下面的 rakefile。它只能在 Mac/Linux 上运行,但它比 cp版本的优势在于它是完全安全的(符号链接不会覆盖现有文件,卸载只会删除符号链接) ,并且易于更新。
cp
# Easily install vim plugins from a source control checkout (e.g. Github) # # alias vim-install=rake -f ~/.vim/rakefile-vim-install # vim-install # vim-install uninstall require 'ftools' require 'fileutils' task :default => :install desc "Install a vim plugin the lazy way" task :install do vim_dir = File.expand_path("~/.vim") plugin_dir = Dir.pwd if not (FileTest.exists? File.join(plugin_dir,".git") or FileTest.exists? File.join(plugin_dir,".svn") or FileTest.exists? File.join(plugin_dir,".hg")) puts "#{plugin_dir} isn't a source controlled directory. Aborting." exit 1 end Dir['**/'].each do |d| FileUtils.mkdir_p File.join(vim_dir, d) end Dir["**/*.{txt,snippet,snippets,vim,js,wsf}"].each do |f| ln File.join(plugin_dir, f), File.join(vim_dir,f) end boldred = "\033[1;31m" clear = "\033[0m" puts "\nDone. Remember to #{boldred}:helptags ~/.vim/doc#{clear}" end task :uninstall do vim_dir = File.expand_path("~/.vim") plugin_dir = Dir.pwd Dir["**/*.{txt,snippet,snippets,vim}"].each do |f| safe_rm File.join(vim_dir, f) end end def nicename(path) boldgreen = "\033[1;32m" clear = "\033[0m" return "#{boldgreen}#{File.join(path.split('/')[-2..-1])}#{clear}\t" end def ln(src, dst) begin FileUtils.ln_s src, dst puts " Symlink #{nicename src}\t => #{nicename dst}" rescue Errno::EEXIST puts " #{nicename dst} exists! Skipping." end end def cp(src, dst) puts " Copying #{nicename src}\t=> #{nicename dst}" FileUtils.cp src, dst end def safe_rm(target) if FileTest.exists? target and FileTest.symlink? target puts " #{nicename target} removed." File.delete target else puts " #{nicename target} is not a symlink. Skipping" end end
为了扩展 Karl 的回复,Vim 在一组特定的目录中查找它的运行时文件。您可以通过 :set runtimepath?看到这组目录。为了告诉 Vim 也看内部 ~/.vim/vim-haml你会想要添加
:set runtimepath?
set runtimepath+=$HOME/.vim/vim-haml
到你的 ~/.vimrc。您可能还希望在 ~/.vimrc中启用 vim-haml 提供的所有功能。
~/.vimrc
filetype plugin indent on syntax on
有关更多信息,可以参考 Vim 中的 'runtimepath'和 :filetype帮助主题。
'runtimepath'
:filetype
我觉得你应该看看 病原体插件。安装完成后,您可以将所有插件保存在 ~/中的单独文件夹中。Vim/bundle/,病原体将负责装载它们。
或者,您可能更喜欢 Vundle,它提供了类似的功能(还附加了来自 github 插件的自动更新)。
更新(截至2019年) :
cd ~/.vim git clone git://github.com/tpope/vim-haml.git pack/bundle/start/haml
解说 (来自 :h pack ad :h packages) :
:h pack
:h packages
runtimepath
plugins
因此,这在开始时加载插件(因此命名为 start)。
如果你把它们放在 ~/. vim/收拾行李/bundle/选吧中,你也可以得到可选的插件(加载了 :packadd)
:packadd