6

我花了将近两年的时间编程,直到我决定将 Textmate 换成 Vim,到目前为止我很喜欢它。然而,在玩了几天之后,我遇到了第一个问题。

作为一个初学者,我和许多人一样接触到了 Janus,但最后我决定从头开始创建自己的配置以更好地了解这些东西。我备份了我的配置并开始编写我的新.vimrc文件。但后来(很早)我注意到领导键不起作用,当我按下它时它什么也没做,它只是发出哔哔声。我没有更改领导者的键,也没有任何键映射,所以我有点惊讶。

所以我再一次删除了我的.vimrc文件和.vim目录,以一个干净的状态开始。它没有帮助。所以我打开 Vim 并尝试将领导者重新配置为不同的键,看看是否有帮助。

:let mapleader
> E121: Undefined variable: mapleader
:let mapleader = ','
:let mapleader
> mapleader          ,

看起来不错,但实际上什么也没发生。即使我把它放在不同的键下,我的 Mac 也会发出哔哔声,仅此而已。我的主目录中没有 vim 配置,没有插件,什么都没有。在 '.vimrc' 而不是 vim 控制台中设置领导者也无济于事。

我在这里看到了一些关于按键超时的讨论,但它并没有让我到任何地方。

我有点卡在这里,即使我愿意,也无法在我的日常工作中使用 Vim。任何帮助将不胜感激。

4

2 回答 2

6

仔细按照这些步骤...</p>

  1. .vimrc在您的目录中创建一个空白文件$HOME

    $ cd
    $ touch .vimrc
    

    Vim 现在应该在我们都想要的“不兼容”模式下运行。

  2. 打开你的空白~/.vimrc并添加这些行:

    let mapleader=","
    nnoremap <leader>a :echo("\<leader\> works! It is set to <leader>")<CR>
    
  3. 点击,a,您应该在命令行中获得以下消息。

    <leader> works! It is set to ,
    

<leader>可能从一开始就没有用,但是,还有其他事情需要担心。

无论如何,从那里开始,我建议您添加这些非自以为是的设置,这将使您的生活变得更加轻松:

filetype plugin indent on
syntax on
set autoindent
set hidden
set incsearch
  1. filetype plugin indent on允许 Vim 识别您打开的文件的文件类型,并应用各种内置的文件类型特定设置(缩进规则、完成......)。
  2. syntax on打开语法高亮。
  3. set autoindent<CR>如果关闭,当你做的生活很糟糕时,复制当前行的缩进。
  4. set hidden允许您打开一个新文件或切换到另一个缓冲区而不保存对当前文件的更改。
  5. set incsearch通过打开增量搜索,使基于搜索的导航 ( /foo, ?bar) 立即变得很棒。

之后,您可以根据需要添加设置和映射。

于 2012-11-19T09:12:11.463 回答
6

它正在工作,但更改之前的映射无法理解更改后的领导者角色。例如,如果我有一个 .vimrc 说

nnoremap <Leader>a :echo "test"<cr>

然后我可以启动 vim 并点击\a进入test左下角。但是,如果您键入:let mapleader = ','then do,a它不起作用,因为您在映射后更改了领导者。如果您然后键入:nnoremap <Leader>a :echo "test"<cr>并重试,a,它将起作用。因此,:let mapleader =必须在使用<Leader>.

于 2012-11-19T00:36:57.327 回答