Tag: vim

vim没有find和replace明显存在的简单短语

我有一个简单的Vim问题,谷歌没有设法帮助我。 任何想法表示赞赏。 我做了以下search并replace: :s/numnodes/numnodes1/g 在包含以下文本的文件上: numprocs=0 numnodes=0 我明白了 E486: Pattern not found 指示我开始打字的绿色方块的位置显然在图案上方。 我试图寻找其他不涉及正则expression式的短语,这些短语也存在,也是失败的。 简单/ numnodes突出显示符合预期的匹配。 有没有人有任何想法可能是VIM的事情?

我如何检测我的.vimrc文件中的OS X,所以某些configuration只适用于OS X?

我在我的笔记本电脑(OS X)和几台服务器(Solaris和Linux)上使用我的.vimrc文件,假设有一天会在Windows上使用它。 我知道如何检测一般的UNIX和Windows,但我如何检测OS X? (就此而言,是否有一种方法可以区分Linux和Solaris等等。有没有一个列表中的某个string可以使用?我的Google-fu什么也没有发现。) 例如,我会使用这样的东西: if has("mac") " open a file in TextMate from vi: " nmap mate :w<CR>:!mate %<CR> elseif has("unix") " do stuff under linux and " elseif has("win32") " do stuff under windows " endif 但是显然“mac”不是正确的string,也没有其他我尝试过的。 更新:下面的答案(“macunix”)似乎相当清楚,它应该工作,但由于某种原因它不。 (也许苹果没有正确编译vim来回应这个问题,似乎不大可能。) 无论如何,我想我需要转移问题的焦点:有没有人有一个解决scheme,将达到相同的目的? (即,成功检测到在Mac OS X上正在使用.vimrc文件。)

如何在VIM中将多行合并为一行?

例如: 我想合并这样的文字 CATEGORIES = ['Books', '商业', '教育', '娱乐', '金融', “游戏”, “保健与健身”, '生活方式', “医疗”, '音乐', '导航', '新闻', '摄影', '生产率', '参考', '社交networking', '体育', '旅行', “公用事业”, '天气', '全部',] 成 “娱乐”“金融”“游戏”“健康与健身”“生活方式”“医疗”“音乐”“导航”新闻“,”摄影“,”生产力“,”参考“,”社交networking“,”体育“,”旅行“,”公用事业“,”天气“,”全部“

用长行编辑xml文件在vim中确实很慢。 我能做些什么来解决这个问题?

我用vim编辑了很多xml文件。 问题是,由于长行,vim中的导航/编辑非常慢。 有什么我可以做的(除了closures语法高亮/文件types插件和文件types缩进),以便能够编辑这些文件没有任何滞后? 令人沮丧的是,语法高亮等简单的事情被vim处理得如此糟糕。 我不记得这是任何其他编辑的问题。 我真的很喜欢使用vim,我希望有一些方法可以解决这个问题。

如何在插入模式下启动vim?

每当我进入vim,我都有99%的机会进入插入模式并编辑文件。 我可以让vim始终以插入模式启动吗?

vim – 如何从一个文件读取行的范围到当前的缓冲区

我想从文件foo.c中读取n1-> n2行到当前缓冲区。 我试过了: 147,227r /path/to/foo/foo.c 但是我得到:“E16:无效范围”,虽然我确信foo.c包含1000多行。

如何跳回到以前的编辑位置

是否有可能回到以前的编辑地点在VIM? 我知道使用标记,可以在文件中的不同位置之间来回移动,但是我不知道vim是否可以自动记住以前的编辑位置。

Vim的Python Omnicompletion不起作用

我search了一个小时,堆栈溢出和其他地方。 唉! 请帮忙。 Vim的omnicompletion只是不起作用 。 我有Vim 7.2与Python支持编译。 filetype plugin on是在我的.vimrc 。 当.py文件打开时, :echo &omnifunc打印pythoncomplete#Complete 。 我正在处理一个大型项目,并使用exhuberant-ctags生成了一个tags文件。 这是在Vim的ctagspath中。 我可以通过在符号上键入^]来testing它,然后我将其带到符号的定义中。 更新1:我所有的项目代码都在python-in-Vim的path中。 我可以:python import myproject成功:python import myproject 。 现在,在我尝试Cx Co的地方,我所得到的是: — Omni completion (^O^N^P) Pattern not found 我究竟做错了什么? 更新2:当我在模块级inputCx Co Cn时,Vim将显示一个完成popup窗口,其中包含我项目中其他模块的几个模块级常量。 但它只是常量(符号大写字母),并且完成在其他任何地方都不起作用。 更新3:我发现文件顶部的Cx Co启动某种omnicompletion,并完成pprint. 调出pprint模块中所有内容的菜单和快速参考。 但是,我自己的模块没有import正在完成。 一年后更新4:我放弃了,学习了Emacs。 我去过黑暗的一面,阴谋和香料的神秘之地,我告诉你,我find了路。 两年后的更新5:我回到了Vim。 Emacs很漂亮,但即使经过了1.5年的Emacs,我仍然能够更快地完成Vim的工作。 现在我已经停止编写Python,并且无法testing这些build议的效果。

Vim,Python和Django自动完成(pysmell?)

有谁知道如何设置自动完成与python,django和vim很好地工作? 我一直在尝试使用pysmell,但我似乎无法正确设置(或者我不知道它是如何工作的)。 现在,我在django目录下运行pysmell(我正在使用trunk),并将结果标签移动到我的项目目录中,然后在项目目录中运行pysmell。 但是,Vim并没有拿起django标签,而且他们也没有自动完成。 有谁知道如何在vim中设置自动完成function,以便在我自己的代码中完成long django函数(如get_object_or_404)以及类/函数? 我在谷歌上search,但没有find任何好的资源。 谢谢。

如何使用NERD Commenter for vim – 如何使用<Leader>键

我发现vim的NERD注释插件,但我不明白的文档。 说我想评论一些代码在C / C + +例如 code line 1 code line 2 变 /* code line 1 code line 2 */ 我已经看到了其他线程,但说实话,我不知道NERD评论者文档中的<leader>是什么。 当我尝试在另一个线程中接受的答案时,我最终在选定的行上执行change命令。 什么是<leader>并且一步一步地如何去处理与/* */注释行?