IndentLine vim插件无法正常工作

时间:2013-07-10 16:39:09

标签: vim

嘿,所以我无法使IndentLine工作,我似乎无法弄清楚是什么问题......我将整个目录添加到我的包中(因为我使用Pathogen)和indentLine.vim脚本到我的.vim文件夹直接没有运气。我在Vim 7.3上,这是我的.vimrc

syntax on

set number
set mouse=a
set ruler
set smartindent
set shiftwidth=2
set softtabstop=2
set expandtab
set colorcolumn=100
set foldmethod=indent
set nofoldenable
set tags=./tags;
set background=light
set mouse=niv
set clipboard=unnamed

let g:tagbar_left = 0
let g:tagbar_autoshowtag = 0

"autocmd VimEnter * nested :call tagbar#autoopen(1)
autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p

autocmd WinEnter * call s:CloseIfOnlyNerdTreeLeft()

" Close all open buffers on entering a window if the only
" buffer that's left is the NERDTree buffer
function! s:CloseIfOnlyNerdTreeLeft()
  if exists("t:NERDTreeBufName")
    if bufwinnr(t:NERDTreeBufName) != -1
      if winnr("$") == 1
        q
      endif
    endif
  endif
endfunction

execute pathogen#infect()

nmap <F8> :TagbarToggle<CR>

noremap i l
noremap n h
noremap e j
noremap u k

noremap k n
noremap f s
noremap l {
noremap m }
noremap r m

noremap t u
noremap s i

inoremap <C-v> <C-r>"
inoremap <Esc> <Esc>:w<CR>

nmap ^[> :vertical res +1^M
nmap ^[< :vertical res -1^M
nmap ^[+ :res +1^M
nmap ^[- :res -1^M

let g:indentLine_char = '│'
let g:indentLine_color_term = 000

非常感谢任何帮助!

编辑:这是github https://github.com/Yggdroot/indentLine

上脚本的链接

1 个答案:

答案 0 :(得分:0)

首先,您应该检查问题是否在您的配置中。您可以评论.vimrc上的所有行,并检查插件是否有效;然后从~/.vim删除除IndentLine插件之外的所有文件。

如果插件有效,您可以插入部分配置,直到它再次停止工作,这样您就可以了解它的内容。

如果您无法使插件正常工作,您应该遵循romainl建议并向插件的作者报告。


修改

来自插件自述文件:

This plugin is used for displaying thin vertical lines at each indentation
level for code indented with spaces. For code indented with tabs I think there
is no need to support it, because you can use :set list lcs=tab:\|\ (here is a
space).

如果您使用标签进行缩进,那么插件将无效,因此您必须发出:set expandtab或在.vimrc上取消注释该行。

尝试执行以下步骤:

  1. 使用全新安装的Vim / gVim,在您的主页上创建一个空文件,并将其命名为.vimrc
  2. 将下载的插件解压缩到主目录并将其重命名为.vim
  3. 打开gVim,发出:set et
  4. 输入以下文字:如果输入 标签如果输入 标签 标签返回
  5. 如果插件有效,你应该以这样的结尾:

    if
            if
            |       return
    

    ,其中|未输入,但插件插入。