【发布时间】:2019-04-29 20:58:16
【问题描述】:
有没有办法管理带有数据库备份和 Notepad++ 代码高亮的代码 sn-ps?
【问题讨论】:
有没有办法管理带有数据库备份和 Notepad++ 代码高亮的代码 sn-ps?
【问题讨论】:
有一个很好的插件来管理代码sn-ps:
SnippetPlus
.NET 3.5 需要! 编码 sn-p 和 Surround With plugin 对于记事本++。写下 sn -p 名称和 用真实代码替换它或选择 一些文字并用 像 IF,TryCatch,Table,Div 或任何东西。如果你会给你提示 不记得 sn-p 名称 注意 可以显示最新版本, 即使您有旧版本 安装。重新安装以确保您 有最新版本。
作者: Rajesh Kumar
主页: http://sourceforge.net/projects/snippetplus/
您可以从 Notepad++ Plugin Manager 安装它,并通过单击工具栏中的黑色 m 符号来激活 Dock;然后选择其中一个捆绑的 sn-ps 并通过双击将其粘贴到编辑器中。
例如,如果您有一个 Visual Basic 文件,并且需要包含一个 try/catch 块,其中包含 if-elseif-else 结构,则必须遵循图片中显示的这些步骤:
ifelseif选项:这将插入标记为蓝色的代码块。TryCatch:这将用所有代码块标记为红色。如果您想修改现有的 sn-ps 或包含您的,请使用 GUI 编辑器:
点击你要修改/删除的sn-p:它会显示在右边。活动部分(Snippets 或 SurroundWith)以深红色背景突出显示:
您也可以添加自定义 sn-ps:只需选择正确的语言并单击您希望新 sn-p 所属部分中的任何 sn-p(Snippets 或 SurroundWith ),然后写下您要创建的新 sn-p 的名称(例如 sample):按钮 Modify 将改为新增
您也可以使用键盘快捷键 Ctrl+Shift+ENTER 将 sn-ps 插入文档:
注意事项:
希望这些信息对您有所帮助。
【讨论】:
这个答案并不是专门关于如何管理 np++ 代码 sn-ps 的,但这可能是一个不错的选择,因为看起来那个插件不能很好地工作。我发现一个非常灵活的系统范围的解决方案是使用AHK。然后,您可以通过自定义热键和文本扩展来获得类似 sn-p 的功能以及更多其他功能。
例如,像 :*:123::123456789 这样的单行 AHK 脚本会自动将键入的“123”扩展为“123456789”,而不管您当前的编辑器(np++ 还是 VS,等等)。要将其限制为特定应用程序,只需添加另一行,如 #IfWinActive, ahk_exe devenv.exe (Full example here)。
管理代码片段的简单 AHK 脚本
我刚刚创建了一个简单的解决方案来管理 CodeSnippet 数据库。多做一点工作,这可能会更流畅。
它的作用
通过按 Ctrl+Alt+S 提供代码 sn-p 列表。双击一个 sn-p,它将粘贴到您的应用程序中。片段只是一个文件列表,文件的内容将代码提供给 sn-p。
如何设置
1.) 在您的 MyDocuments 目录下需要一个名为“CodeSnippets”的文件夹。在此文件夹中创建您的代码 sn-p 文件。
2.) 使用AHK 运行以下脚本。要“设置并忘记”,请让脚本在 Windows 启动时运行。在 Windows 中的任何应用程序中,按 Ctrl+Alt+S 选择一个 sn-p。
#NoEnv
HotKey, ^!s, ShowList
return
ShowList:
Gui, Add, ListView, r20 w300 gMyListView, Name
Loop, %A_MyDocuments%\CodeSnippets\*.*
LV_Add("", A_LoopFileName)
Gui, Show
return
MyListView:
if A_GuiEvent = DoubleClick
{
LV_GetText(RowText, A_EventInfo)
FileRead, Snippet, %A_MyDocuments%\CodeSnippets\%RowText%
Clipboard := Snippet
Gui, Destroy
Send ^v
}
return
GuiClose:
Gui, Destroy
return
【讨论】:
还有FingerText。它从 NPP 的新插件管理员安装并运行良好。如果你试一试,你可能应该去插件 |手指文字 |安装 Default Snippet Package 以获得一组默认的 sn-ps。这是 2012 年的年份,但仍然有效。默认情况下,它通过 $[![(key)DATE:yyyy/MM/dd]!] 代表其插入日期sn-p 的当前日期。如果您插入例如一个超链接,它会突出显示文本部分,因此当您开始输入时它将替换其占位符以替换文本,然后您可以点击
也许它最大的疏忽在于它没有将 sn-ps 分成几类;所以你只会得到一份长长的 sn-ps 清单。然而,片段知道文件扩展名。它似乎没有自动完成功能。文档可以在“README.rdoc”的 {NPP}\plugins\FingerText 目录中找到。
这显然是一个 win32 项目,因此不需要 .NET 3.5。开发者表示处于 alpha 阶段;但它似乎相当稳定,并且似乎比 alpha 阶段更成熟,恕我直言。它是开源的,可从 GitHub 上的“erinata/FingerText: Tab triggered snippet plugin for Notepad++”获得。我的猜测是,如果您想要 x64 版本,则必须自己编译;但是有一个 Visual Studio 项目。
【讨论】: