0

嘿,所以我无法让 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

4

1 回答 1

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. 输入以下文本: if entertabif entertabtabreturn

如果插件有效,你应该以这样的方式结束:

if
        if
        |       return

,其中|不是键入,而是由插件插入。

于 2013-07-11T19:04:17.330 回答