Notepad++有没有vim插件?

77

有很多关于vimnotepad++的问题和答案,但是它们并不明确,如果可能的话,如何使notepad++vim一样表现最佳。

更新
看起来这个问题需要一些额外的信息来解释我的动机。我认为自己是一个vim初学者。一下子改变我的编辑器对我来说相当困难。我认为我的当前编辑器中的vim插件可以为我在新环境中更轻松地感受到舒适带来便利。


2
“act”是什么意思?键盘快捷键、模态编辑、视觉外观、一组特定的功能???那么,你在Vim中缺少什么,让你想要继续使用Notepad++呢? - Ingo Karkat
1
我可以理解有人在寻找适用于IDE(如eclipse等)的vim插件,因为IDE有时会提供vi无法提供的功能。但是对于notepad ++...如果你喜欢在vim中编辑文本,为什么不直接安装/使用vim而不是notepad ++呢? - Kent
你有没有考虑在Windows上使用Vim?你可以得到一个带有许多Vim特性的基于GUI的编辑器。不过,我同意接受的答案;你必须使用Vim才能学会它。 - Eric S.
仍有想要的原因。例如,我的公司政策不允许我安装新软件(即vim),但他们有Notepad++。我可以使用IdeaVim在PyCharm中获得vim绑定,认为在NP ++中会有类似的插件。 - Excel Help
4个回答

55

您可以尝试使用ViSimulator插件来扩展Notepad++的功能,它可以让您在Notepad++中像vi/vim一样编辑文本。ViSimulator模拟/仿真了vi/vim中最常用的命令,从而为Notepad++提供更强大的编辑功能。

根据该网站的描述,ViSimulator支持以下一些命令:

0: move the cursor to colum 1 (hard beg-of-line)
$: move the cursor to end-of-line
^: move the cursor to the first non-blank character (soft beg-of-line)
-: move the cursor to the first non-blank character (soft beg-of-line) of the previous [count] line 
+, <RETURN>: move the cursor the first non-blank character (soft beg-of-line) of the next [count] line
hjkl: move the cursor left, down, up and right [count] colum/line
and more...

ViSimulator可以通过https://web.archive.org/web/20150515145616/http://www.visimulator.com/download.html访问。原始页面已不再提供。


1
插件在我尝试使用“G”映射移动到文件末尾时崩溃并冻结了编辑器。我尝试搜索此插件的公共存储库,也许可以自己修复错误,但未能找到。您可能应该考虑开放源代码...或者请修复这个问题。这是截至今天的最新版本插件存在的问题。谢谢! - plesiv
3
请检查一下是否通过某种方式启用了Notepad++的“Scroll pass EOF”功能,例如安装了“ScrollPastEOF”或其他类似插件。当您滚动到文档末尾时,“Scroll pass EOF”可能会导致Notepad++冻结。为避免这种情况,您可以在“设置... --> 首选项 --> 杂项”中禁用Notepad++的“Clickable link setting”。这是Notepad++和ViSimulator中的一个错误。如果这不是您遇到的问题,请告诉我,我将再次进行检查。 - visimulator
似乎禁用“可点击链接设置”有所帮助。 - plesiv
是否可以像在vim中一样,为visimulator指定自定义命令?例如,我使用ciw来删除当前单词(无论当前位置在单词内部的哪个位置),并进入插入模式。 - northben
@northben:你不需要使用“ciw”,只需使用“bcw”,按键相同。或者更好的方法是,如果你只想删除单词而不是更改它,请使用“bdw”。 - ekerner

40

Vim之所以成为它所是的大部分原因来自于它是一个模态编辑器。如果没有办法将NP++转变成模态编辑器,你就无法进一步深入学习。在NP++插件页面的快速查看显示没有Vi[m]插件,所以我的回答是“不行”。

无论如何,学习Vim的最佳方式就是使用它。我建议你在处理重要工作时继续使用NP ++,并强迫自己在其他所有方面都使用Vim。一旦准备好了,放弃NP++,全职使用Vim。


11
我同意这个观点。我最近重新开始使用vim(很多年前用过vi),第一次尝试时感到它有些原始。但是在学习vim的几天后(vim比好老的vi功能更强大,但vi已经足够好了),我突然理解那些认为在“正常”的编辑器中使用鼠标进行移动和复制某些文本下方单词的人们会觉得这是的。而且如果你不强迫自己使用vim,你可能永远不会进入vim的世界。 - 244an
3
我认为对于大多数人来说,迫使自己在工作中使用vim是正确的选择——如果你不通过限制其他选择来迫使自己攀登学习曲线,大多数人就无法忍受vim初始阶段的挫败感。 - Stabledog
5
你的误解非常大,使得vi(m)强大的是其命令功能。一旦掌握使用方法,它就是世界上最快的编辑器。正是命令模式使得vi变得有用,并且也因此被移植到了几乎所有的平台上。如果开发者不会vi编辑器,我不会太认真地对待他们。 - ekerner
1
你好 :) 抱歉造成歧义,我指的是“Vim 的大部分特性源自于它是一款模态编辑器”。 Vim 学起来可能有点棘手,但一旦掌握了它,效率会翻倍。我相信这就是 Vim 伟大之处所在。我建议你试用一个月,你不会后悔,也会像我一样寻找适用于所有编辑器的 vim 插件 :) 此外,还应该在这里提醒一下,你可以在 windows 上获取 Vim。 - ekerner
1
如果你使用微软的Visual Studio编写代码,你也可以尝试使用vswin。 - Lyubomir Velchev
显示剩余10条评论

4

在Notepad++中,有一个ViSimulator插件。你可以通过以下两种方式安装该插件。

  1. 通过Notepad++插件管理器安装。进入Notepad菜单 Plugins -> Plugin Manager -> Show plugin manager。在弹出的对话框中,选择“available”选项卡,在插件列表中选择“visimulator”。然后点击“install”按钮完成安装。

  2. 手动安装。从ViSimulator下载页面下载插件,作为dll文件。进入Notepad++安装目录下的plugins文件夹,将dll文件复制粘贴到此处。重新启动Notepad++,你就可以看到一个名为“ViSimulator”的菜单选项,位于主菜单“Plugins”下方。


8
目前 ViSimulator 插件适用于 32 位版本的 npp,不支持 64 位 npp。 - Suryaprakash Pisay

1

有Vi模拟器插件!

 Version 0.3.0.659 ( ANSI / Unicode ) 

ViSimulator
ViSimulator for notepad++ is a plug-in for notepad++, which make it possible to edit as vi/vim in notepad++. ViSimulator simulate/emulate most frequently-used vi/vim commands

为notepad++提供更强大的编辑功能。
simon2013 来源:下载页面 链接:https://web.archive.org/web/20150515145616/http://www.visimulator.com/public/p/visimulator.dll 来自NP++插件页面
/ is a synonym of standard npp search/replace dialog.
: seems not working.

抱歉,我的英语很差。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接