为什么vi在Ubuntu中的行为与在CentOS中不同?

时间:2009-07-02 14:13:34

标签: vim ubuntu centos

我越来越习惯每天使用vi,但困扰我的一件事是,当我在Ubuntu上使用它时,它的行为与在CentOS上使用它时的行为不同(可能还有其他地方)。我实际上更喜欢它在CentOS中的工作方式。

以下是在Ubuntu上困扰我的三件事:

  1. 在CentOS插入模式下,底部有一个大胆的通知我处于INSERT模式,但是在Ubuntu中没有通知所以我永远无法分辨我在哪个模式。

  2. 在CentOS插入模式下,我可以按向上/向下键,光标将上下移动。但是当我在Ubuntu上下按下时,分别在新行上插入字母A和B.

  3. 在CentOS插入模式下,我可以使用退格键,它会删除光标前的字符,但在Ubuntu中我只听到一声嘟嘟声,没有任何反应。我可以在命令模式下按删除键,但我宁愿能按退格键。

  4. 这些差异是我必须忍受的还是一个简单的解决方法?

10 个答案:

答案 0 :(得分:39)

在ubuntu中,默认的vim安装来自包vim-tiny,这不是全部。

你可能想:

apt-get install vim

apt-get install vim-full

您的其他一些问题听起来像退格键和其他问题。获得vim的完整版本后,请尝试将这些添加到.vimrc:

set nocompatible

set t_kb=^H
fixdel

(重要说明:^ H是一个文字ctrl-H字符,你可以通过在插入模式下按Ctrl-V Ctrl-H获得)

答案 1 :(得分:6)

以前提供的答案对我不起作用。

我倾向于选择尽可能将操作系统安装为库存并尽可能简化配置文件。为了解决Ubuntu 12.04中的这三个问题,我做了以下几点:

在“〜/ .vimrc”中插入行 -
设置nocp
设bs = 2

答案 2 :(得分:4)

除了安装vim-full之外,如果您还没有~/.vimrc

$ cp /usr/share/vim/vimcurrent/vimrc_example.vim ~/.vimrc

此示例.vimrc已经成为最重要的设置,并且是自定义的良好开端。

答案 3 :(得分:1)

当你说VI时,我会假设你的意思是VIM?至少,第二点似乎是VIM /术语组合的控制台/终端问题。下面的页面提供了一些修复,但没有一个我可以工作(我使用vim over putty到Ubuntu开发盒)

http://vim.wikia.com/wiki/Fix_broken_arrow_key_navigation_in_insert_mode

可以使用.vimrc

中的以下内容覆盖第3个点

设置backspace = indent,eol,start

答案 4 :(得分:1)

我个人喜欢vim tiny及其控件 - 更接近真实的vi。 在某些发行版中,您只能获得' vim' - vim-tiny不可用。在这些我发现类似的解决方案 - 基本的 - 从另一个发行版窃取vim-tiny或编译真正的vi(代码仍然可用)。

我对vim的一些问题是它的着色 - 其中大部分可以关闭但不是全部。最大的问题是没有报告Ctrl-G上的行号对我来说这使得完全vim无法使用 - 我还没有找到解决这个问题的方法。

如果两个版本都可以通过vim安装使用,那么几乎所有的vim / vi问题都可以解决。如果只安装了vim-tiny,你总是可以安装到完整的vim - 但是,由于某些未知的原因如果安装了完整的vim(Slackware版本),vim-tiny根本不可用。

完整的' vim'应该有一个简单的开关去掉“微小的”。 vi兼容性开关不这样做。 vim开发人员的这种态度持续了多年 - 他们的目标是有效地实现市场份额。概念,即接管和指导用户选择 - 我没有留下深刻的印象。

答案 5 :(得分:0)

(1)检查两者的showmode设置是否不同。

(2)不知道这个,我认为这与终端有关,而不是Vi本身。

(3)也许尝试使用:map <BS> :normal d

答案 6 :(得分:0)

在CentOS中,vi是另一个程序的别名,vim,但在最新版本的Ubuntu中,vi仅表示vi,而不是vim。如果两个不同的程序vi和vim之间存在差异,你会看到差异。

如果你喜欢vim,只需运行vim,而不是vi。这也适用于Ubuntu

答案 7 :(得分:0)

在我的.vimrc中设置它对我有用..

set term=builtin_ansi

答案 8 :(得分:0)

我在内部使用Debian 7进行WDMyCLoud,即使用:

cp /usr/share/vim/vimcurrent/debian.vim ~/.vimrc

答案 9 :(得分:0)

就我而言,.vim文件的创建过程如下:

free

如果我添加set nocompatible fixdel ,则退格键只是用作删除键。