【问题标题】:Is there a different runtime configuration file for Vim than gVim?Vim 的运行时配置文件是否与 gVim 不同?
【发布时间】:2011-09-01 19:55:46
【问题描述】:

我的主目录中有一个 .vimrc 文件,我在其中放置了一些 vim 命令,但这些命令仅在 gVim 中有效,在 Vim 中无效。问题是什么? Vim 还有其他配置文件吗?

顺便说一下,这是我的 .vimrc 文件:

  1 colorscheme desert
  2 " To save, ctrl-s.
  3 nmap <c-s> :w<CR>
  4 imap <c-s> <Esc>:w<CR>a
  5 " Set the boolean number option to true
  6 set number
  7 highlight LineNr term=bold cterm=NONE ctermfg=DarkGrey ctermbg=NONE gui=NONE     guifg=DarkGrey guibg=NONE
  8 " Set the shift width(for Python programmnig)"
  9 set sw=4
 10 "Convert all tabs to an equivalent spaces"
 11 set expandtab
 12 set softtabstop=4
 13 retab
 14 "Show cursor position in status bar"
 15 set ruler

附言。我只是不能在 vim 中运行命令 Ctrl-s,我可以在 vim 中作为 gVim 运行其他命令。

【问题讨论】:

    标签: vim


    【解决方案1】:

    http://pangea.stanford.edu/computing/unix/shell/loginstuck.php

    终端中的Ctrl-SXOFF,因此终端可能正在解释它而不是传递给vim。

    尝试设置不同的配色方案或其他可见的更改,以确保您的 .vimrc 已加载。

    或者,运行“:nmap”以查看您当前的正常模式映射以确认您拥有它们。

    更新:解决方法是显式取消定义停止序列

    stty stop undef
    

    或按照@Sam Brinck 的建议禁用 XON/XOFF 流控制

    stty -ixon
    

    【讨论】:

    • 是的,这绝对是问题所在。有没有办法在 gnome-terminal 中改变这种行为?
    • stty -ixon 添加到您的 .bashrc
    • 根据此链接 (bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/48880),您应该可以在终端中设置 stty stop undef 以禁用它。我在我的 Ubuntu 11.04 机器上确认了它。
    • 太棒了。在我的终端中运行命令“stty stop undef”后,我无法在 vim 中使用 ctrl-s。 @nheeshmar 您能否在答案中包含您的最后评论?我想选择它作为答案。
    【解决方案2】:

    您可以使用.gvimrc

    【讨论】:

    • 我的 gVim 没有问题。问题是 vim 不使用 .vimrc 。
    • 对不起,标题对我来说有点误导。顺便说一句,如果你的主目录中有一个 .vimrc,那么 vim 会使用它。为什么你认为 vim 没有加载 .vimrc?有什么问题?
    • 我无法在 vim 中运行命令。例如,ctrl-s 不起作用(但它在 gVim 中起作用)。
    • 这可能和 gnome-terminal 有关,不是 vim 的问题。尝试设置 nonumber 然后启动 vim。如果您没有看到数字,则问题与 vim 无关
    • 我遇到了同样的问题 @bheeshmar 的回答是为我解决了这个问题。如果您使用 bash,请将 stty -ixon 添加到您的 .bashrc。这将导致 gnome-terminal 将 传递给 vim。
    猜你喜欢
    • 1970-01-01
    • 2017-06-18
    • 1970-01-01
    • 1970-01-01
    • 2013-11-03
    • 2011-03-02
    • 1970-01-01
    • 1970-01-01
    • 2016-12-12
    相关资源
    最近更新 更多