vim的优点到底是什么?

Vim、Emacs配置和使用
firefly
帖子: 22
注册时间: 2006-05-23 1:52

vim的优点到底是什么?

#1

帖子 firefly » 2006-06-26 13:38

用vim结合ctags开发程序也有一段时间了,对于一些小的程序确实比较方便,可是多文件时总让人无法适从,
看到linux论坛的很多同志似乎都以使用vim为荣,
但个人感觉它不过是一个编辑器而已,语法高亮,自动缩进,代码折叠,
这些功能在其他的编辑器中基本都能找到,谁能告诉我它不同之处的优点在于什么地方吗?

论坛上的很多文章都是讲如何配置vim,有些不明白,她自带的几个example.vim已经很好了,为什么要花这么多时间浪费在这上面呢?
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

#2

帖子 Strange » 2006-06-26 15:37

要说vim的好处那可是太多了,用的多了之后,离开了vim都不习惯

往大方面讲,这是一个免费的,完全可以配置的,支持ex模式的多用途编辑器,要找到一个免费的,功能那么多的编辑器,基本只有一个vim了(当然emacs也是)

小的方面讲,vim的各种各样功能可以满足个人的需要
比如我在linux下还是配置vim用win下的模式运行:D,习惯了
比如我用的比较多的功能
用正则表达式处理大段的文本,补完功能,用模式行控制代码自动折叠,自己写的种种小脚本,处理不同codepage的文档,各种文件打开的自动功能,等等... ...
要实现我日常用的这些功能,基本上还没有另外一个编辑器可以做到

还不要说vim社区提供的几千个script和tips了

只是如果需要把vim使用的十分顺手,不是十分简单
不过就像楼主说的,简单的使用其实并不难。source example.vim的确够了
其实别人很长的配置文件很多也都只是在设置各种插件需要的变量而已,确实长的代码本来就应该写在plugin里或者另外source

vim这个编辑器,说句自己的感受,就是越用越好玩。最初可能觉得vim一般,或者还没有本来常用的编辑器好用。但这个只是习惯问题,坚持使用,相信2、3年后,一定也会对vim爱不释手的

p.s. 楼主要是觉得多文件情况下不是很方便的话,安装tabbar这个插件,它会让你对vim编辑多文件有全新的感受的
firefly
帖子: 22
注册时间: 2006-05-23 1:52

#3

帖子 firefly » 2006-06-27 14:37

谢谢楼上前辈的指点,昨天为找插件有幸拜访了vim的高手---滇狐的主页,实在是受益非浅,
后来又去下了他在中科院关于vim的演讲稿,实在让人佩服的很,对于vim又有了一份新的认识,原来
对vim的认识实在太肤浅了! :oops:
附件
vim_滇狐.pdf.tar.gz
这是滇狐的在中科院的讲演稿,希望每个vim的初学者都能看看: )
(754.94 KiB) 已下载 1416 次
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#4

帖子 kardinal » 2006-06-27 19:48

演讲稿而已了 ,只是一个提纲。 学VIM还是VIM中文文档,非常不错的
2楼兄弟说的有点夸张吧???哪里用到2/3年啊。。。 :wink:

用正则表达式处理大段的文本,补完功能,用模式行控制代码自动折叠,自己写的种种小脚本,处理不同codepage的文档,各种文件打开的自动功能,等等... ...

其实Windows下的许多软件也有类似的功能,比如正则表达式。像UE、EE等流行编辑器都有的,只是方式不同。EE在“查找、替换”对话框中使用正则表达式,看似简单,好像也不麻烦。。。但实际操作起来绝对没有VIM快,用熟了也没有VIM方便。

个人认为VIM最酷的地方是任何时候双手可以不离开打字区,这一点Windows下的软件是很困难的。当然不是办不到,比如EE,可以用组合键Ctrl+H唤出替换对话框,然后用是使用Tab键切换输入焦点,真是麻烦死了,还不如用鼠标……但是像我这样一个按方向键都觉得远的人,让我用鼠标……那还是去睡觉吧-_-#玩游戏时用用鼠标就罢了。。。


同样的,Emacs也可以双手不离打字区。但是Emacs的操作方式和VIM不太一样,Vim多数是单键操作,而Emacs的组合键……让你恨不得给电脑装上脚踏板。。。
不过现在开始学习点Emacs了,呵呵,VIM爽是爽,但是和输入法在一起用就别扭了,比如每次切换普通模式和插入模式,都得切换中英文输入状态……好烦啊……Vim在Windows下使用到是不错,Esc后输入法自动切换到英文状态,进入插入模式后再切回来 :lol:
Emacs的组合键虽然让人不太爽,但是好处是不用切换模式,倒是和输入法相安无事。如果只是完成一些简单的文字处理的工作,Emacs甚至比VIM更好学一点 8) 而且很多使用ReadLine的程序,比如说抬头不见低头见的Bash,它的按键绑定就是Emacs风格的,很多程序都是Emacs风格的键绑定,熟悉了这一套,会比较轻松一点:D
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

#5

帖子 Strange » 2006-06-27 23:50

其实Windows下的许多软件也有类似的功能,比如正则表达式。像UE、EE等流行编辑器都有的,只是方式不同。EE在“查找、替换”对话框中使用正则表达式,看似简单,好像也不麻烦。。。但实际操作起来绝对没有VIM快,用熟了也没有VIM方便。
很多软件是有的呀,不过免费的就没有了。

p.s. 滇狐感觉是炒作的成分稍微重一点点

个人觉得独立翻译vimdoc的slimzhao
最近蛮流行那个blog的00e
ibm developerworks上写了三篇文章的wu yongwei
他们是真正的vim强人啊
头像
karron
帖子: 6226
注册时间: 2005-06-11 14:03
来自: 不明真相的群众
联系:

#6

帖子 karron » 2006-06-28 8:39

楼上的,人家是在宣传,你说人家在炒作.......
我的blog,关于技术,软件,linux,vim <---- 所有博客均被河蟹.
头像
sigma
帖子: 439
注册时间: 2006-06-01 22:45
来自: Fujian

#7

帖子 sigma » 2006-06-28 11:14

vi是编辑器之神,emacs是神之编辑器 !
被时间羁绊,被邪恶包围……空气稀薄
头像
leal
帖子: 1119
注册时间: 2005-08-29 14:49
来自: 杭州
联系:

#8

帖子 leal » 2006-06-28 18:50

Strange 写了:
其实Windows下的许多软件也有类似的功能,比如正则表达式。像UE、EE等流行编辑器都有的,只是方式不同。EE在“查找、替换”对话框中使用正则表达式,看似简单,好像也不麻烦。。。但实际操作起来绝对没有VIM快,用熟了也没有VIM方便。
很多软件是有的呀,不过免费的就没有了。

p.s. 滇狐感觉是炒作的成分稍微重一点点

个人觉得独立翻译vimdoc的slimzhao
最近蛮流行那个blog的00e
ibm developerworks上写了三篇文章的wu yongwei
他们是真正的vim强人啊
直接上 vim 邮件列表看看吧
用心×恒 | 豆瓣 | 门户 | Blog
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

#9

帖子 Strange » 2006-06-28 21:02

一直在收vim邮件列表的
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#10

帖子 kardinal » 2006-07-27 18:39

sigma 写了:vi是编辑器之神,emacs是神之编辑器 !
虽然有点夸张,但是这话绝对精辟!!!好长时间没见这么经典的话了 :em38
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#11

帖子 eexpress » 2006-07-27 18:55

一般的都用vi。真正编程的时候就不好用了。都是专用的ide了。只是很多编辑的操作方式还是试试想用vi的。
● 鸣学
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

#12

帖子 Strange » 2006-07-27 20:44

编程一样好用的
除了调试的时候可能比较麻烦
不过都是适应了就好了
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#13

帖子 kardinal » 2006-07-28 0:56

eexpress 写了:一般的都用vi。真正编程的时候就不好用了。都是专用的ide了。只是很多编辑的操作方式还是试试想用vi的。
老兄不用Vim写带有中文内容的文件???要是有的话,可就糗了。。。Vim和输入法的配合真是天衣无缝,把人搞得头大。。。不过Win 下的Gvim这一点就作的比较好,ESC后,输入法自动转换为英文状态。。。


Vim还有一个不爽的地方,就是插入位置。插入位置在光标的左侧,但是想在行末插入,就得用 a ,这很不爽。。。不信就试试把Bash弄个Vi模式。。。

而且光标的位置判定也很混乱。一般情况下,以光标的左侧为准;但是在可视模式中,选择起始用光标的左侧,选择结束用光标的右侧。。。太疯狂了。。。好像还有其它情况下也这样,记不清楚了。。。

不过把可视模式理解为一种替换模式,勉强平衡了点。。。
但是块选择模式只能用大写字母进行插入子模式好像,不知道咋想的.......

。。。Vim操作确实很有节奏感,很爽的说,方向键的位置也合理,玩个俄罗斯方块什么的都行。。。
这方面Emacs就差了,特别方向键C-n 和 C-b,太容易按错。。。
改得话比较麻烦,。。。我的Emacs ReadLine Gtk2 都是这套,要改起码得三处,换个机器又傻眼。。。

:lol: :lol:
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#14

帖子 eexpress » 2006-07-28 1:28

kardinal

可视模式时候,光标是覆盖字符的样子啊。不需要判断左右啊。
我的vi,中文支持很好的。输入法在linux是全局的。确实没自动切换。

使用ide是因为通用的编辑器vi,根本不能针对正确的芯片型号,区分不同的寄存器的。编译和调试更加不行了。可能一般支持vi的人,都只是在系统的应用层写点软件,比如底层无关的pythone和java等。

我也不同意盲目的追随某软件。只是vi的操作方式,比如搜索,是我最喜欢的模式。命令记得几个,也差不多能很好工作了。操作飞快是vi的一大特点。
:lol:
● 鸣学
firefly
帖子: 22
注册时间: 2006-05-23 1:52

#15

帖子 firefly » 2006-08-06 11:51

kardinal 写了:
eexpress 写了:一般的都用vi。真正编程的时候就不好用了。都是专用的ide了。只是很多编辑的操作方式还是试试想用vi的。
老兄不用Vim写带有中文内容的文件???要是有的话,可就糗了。。。Vim和输入法的配合真是天衣无缝,把人搞得头大。。。不过Win 下的Gvim这一点就作的比较好,ESC后,输入法自动转换为英文状态。。。


Vim还有一个不爽的地方,就是插入位置。插入位置在光标的左侧,但是想在行末插入,就得用 a ,这很不爽。。。不信就试试把Bash弄个Vi模式。。。

而且光标的位置判定也很混乱。一般情况下,以光标的左侧为准;但是在可视模式中,选择起始用光标的左侧,选择结束用光标的右侧。。。太疯狂了。。。好像还有其它情况下也这样,记不清楚了。。。

不过把可视模式理解为一种替换模式,勉强平衡了点。。。
但是块选择模式只能用大写字母进行插入子模式好像,不知道咋想的.......

。。。Vim操作确实很有节奏感,很爽的说,方向键的位置也合理,玩个俄罗斯方块什么的都行。。。
这方面Emacs就差了,特别方向键C-n 和 C-b,太容易按错。。。
改得话比较麻烦,。。。我的Emacs ReadLine Gtk2 都是这套,要改起码得三处,换个机器又傻眼。。。

:lol: :lol:
同意楼上的说法,我就曾经把bash的默认编辑器改为vi,结果实在是顶不住,太难受了,呵呵
现在在用vim写脚本,好好看了一遍中文文档,用起来确实比较方便

我以前都是把vim当文件浏览器用的,编辑多个文件很方便
ubuntu的vim7.0把browse的功能去掉了,用起来很不爽,

还有linux下的全局拷贝好像没有windows下好用,ctrl+insert 和 shift+insert时灵时不灵的,
可能跟linux下系统剪贴板的实现有关吧
主题已锁定