问题标签 [vi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
10 回答
79569 浏览

linux - 获取vi中文件的root权限?

通常在编辑配置文件时,我会用 vi 打开一个,然后当我去保存它时发现我没有输入

有没有办法给 vi sudo 权限来保存文件?我似乎记得不久前在查找有关 vi 的一些内容时看到了一些关于此的内容,但现在我找不到它。

0 投票
14 回答
10852 浏览

vim - 为什么没有 vi* 的模态编辑器这么少?

几乎所有其他不是 vi 后代的编辑器(vim、cream、vi-emu)似乎都使用 emacs 快捷方式(ctrl+w删除一个单词等等)

0 投票
5 回答
589 浏览

windows - Windows 的 vi 和 emacs 实现是否像 Unix 对应物一样?

如果不是,有哪些显着差异?


编辑:达伦托马斯问:

哪个?

我在 Windows 上使用 gvim,在 mac 上使用 MacVim。看起来很相似,对我来说是一样的......

通过哪些,我猜你的意思是 Windows 的 vi 和 emacs 的特定实现。我不确定,因为我以为只有一两个。我正在寻找最接近 Unix 对应物的那些。

0 投票
4 回答
2882 浏览

javascript - 有人知道vi中的Objective-J语法高亮吗?

我一直在研究280North的新Objective-J / Cappuccino javascript 框架。它们为 SubEthaEdit 和 TextMate 提供插件来处理语法高亮,但我主要使用 vi。有谁知道在 vi 中获得 Objective-J 语法突出显示的方法,或者转换其他两个编辑器使用的任何格式的好方法?

0 投票
29 回答
614390 浏览

vim - 如何在 Vim 中有效地处理多个文件

我已经开始使用 Vim 来开发 Perl 脚本并且开始发现它非常强大。

我喜欢的一件事是能够一次打开多个文件:

然后在它们之间跳跃:

并查看打开哪个文件:

要添加一个文件,我可以说:

我希望它会被添加到我的文件列表中,但它会清除我当前的文件列表,当我输入时:args我只有test.pl打开。

那么如何在我的 args 列表中添加和删除文件呢?

0 投票
7 回答
75666 浏览

vim - 在 vim 中,我如何回到搜索前的位置?

在 vim 中编程 我经常去搜索一些东西,拉它,然后回到我原来的位置,插入它,修改它。

问题是,在我搜索并找到之后,我需要手动找到回到我所在位置的路。

是否有一种自动方式可以返回到我上次搜索时的位置?

0 投票
8 回答
9731 浏览

perl - 有什么方法可以在 vim 中为 Perl 启用代码完成?

令人惊讶的是,当您精通 vim 时,您可以比标准 IDE(例如 Eclipse)更快地编写代码。但我真正怀念的一件事是代码完成,尤其是对于长变量名和函数。

有什么方法可以在 vim 中为 Perl 启用代码完成?

0 投票
2 回答
1000 浏览

vim - vim 中代码块和宏的最佳策略是什么?

随着我使用 vim 进行更多开发,我发现自己想要复制有用的代码块,类似于 Eclipse 中的“模板”。

我正在考虑为每个代码块制作一个单独的文件,然后将它们读入

但这似乎有点原始。谷歌搜索我发现提到了 vim 宏和一些关于“地图”的东西,但没有什么看起来很简单。

我正在寻找的是诸如 Eclipse 的“模板”之类的东西,所以我弹出一个代码块,光标位于它的中间。或者 JEdit 的“宏”,我可以记录在一行上进行复杂的删除和重命名,然后我可以在其他 10 行上再次播放它,所以它对它们做同样的事情。

vim 有这两个功能吗?

0 投票
11 回答
39052 浏览

vim - 在 Vim 中插入时间戳的最佳方法?

EditPad Lite 有一个很好的功能(CTRL- ECTRL- I),它可以在您的代码中插入一个时间戳,例如“2008-09-11 10:34:53”。

在 Vim 中获得此功能的最佳方法是什么?

(我通过 SSH 在 Linux 服务器上使用 Vim 6.1。在当前情况下,我们中的许多人共享一个登录名,所以如果有另一种内置方法来获取时间戳,我不想在主目录中创建缩写。 )

0 投票
16 回答
31710 浏览

vim - 在 Vim 中,选择、删除或注释掉大部分多屏文本的最佳方法是什么?

在像 Eclipse 这样的 IDE 中选择大量跨越多个屏幕的文本相当容易,因为您可以使用鼠标,但是选择和删除多屏幕文本块或将三个大型方法写入另一个的最佳方法是什么文件,然后在无法使用鼠标的情况下通过 putty/ssh 使用 Vim 时将其删除以进行测试?

我可以轻松地拖到行尾或拖到代码块的末尾,但是如果文本延伸到许多屏幕上,或者里面有很多空行,我觉得我的双手被 Vim 捆绑。有什么解决办法吗?

还有一个相关的问题:有没有办法以某种方式选择 40 行,然后将它们全部注释掉(使用“#”或“//”),这在大多数 IDE 中很常见?