在Notepad ++中管理代码片段

时间:2011-02-28 20:27:05

标签: notepad++ code-snippets

有没有办法管理数据库备份的代码片段和Notepad ++中的代码突出显示?

3 个答案:

答案 0 :(得分:23)

有一个很好的插件来管理代码片段:

  

<强> SnippetPlus
   .NET 3.5必需! 代码段和Surround With插件   对于Notepad ++。写代码段名称和   用真实代码替换它或选择   一些文字并用它包围   像IF,TryCatch,Table,Div这样的东西   或者其他什么。如果你的话,会给你一些暗示   不记得片段名称注意   可能会显示最新版本,   即使你有一个旧版本   安装。重新安装以确保您   有最新版本   作者: Rajesh Kumar   主页: http://sourceforge.net/projects/snippetplus/

您可以从Notepad ++插件管理器安装它,并通过单击工具栏中的黑色m状符号激活dock;然后选择一个捆绑的片段并通过双击将其粘贴到编辑器中。

例如,如果您有Visual Basic文件,并且需要包含 try-catch 块,其中包含 if-elseif-else 结构,则必须遵循这些步骤如图所示:

SnippetPlus example

  1. 将光标放在您希望新代码段所在的位置,然后从工具栏激活停靠点:这将打开标记为黄色的停靠对话框。
  2. 双击Dock中 Snippets 部分中的选项ifelseif:这将插入标记为蓝色的代码块。
  3. 选择您想要在try / catch块中的所有代码,然后双击Dock中 SurroundWith 部分中的TryCatch选项:这将替换所选代码所有代码块都标有红色。
  4. 如果要修改现有片段或包含您的片段,请使用GUI编辑器:
    GUI Editor

    单击要修改/删除的代码段:它将显示在右侧。活动部分( Snippets SurroundWith )以深红色背景突出显示:

    GUI Editor

    您也可以添加自定义代码段:只需选择正确的语言,然后点击您希望新代码段所属的部分中的任何代码段( Snippets SurroundWith ),然后写下您要创建的新代码段的名称(例如 示例 ):按钮修改将更改为添加新< /强>
    Add new snippet

    您也可以使用键盘快捷键 Ctrl + Shift + ENTER 将片段插入文档:

    1. 您可以直接编写代码段名称,然后按键盘快捷键或
    2. 您可以调用弹出式按键盘快捷键,然后再次按键盘快捷键将代码段名称替换为代码段内容。
    3. insert snippet by keyboard shortcut

      备注:

      • 此插件会在重新启动之间保留片段(包括自定义片段)。
      • 重要提示:如果您添加/修改/删除代码段,仅在重新启动Notepad ++后才会应用更改(包括部分的列表内容片段 SurroundWith )。请注意不要复制或添加不完整的代码段。
      • 要为您正在使用的语言应用代码突出显示,只需从菜单语言中选择它,就像传统方式一样:
        code highlight
      • Ctrl + Shift + ENTER 菜单中显示的代码段取决于当前应用于文档的语言突出显示。全局显示的唯一代码段属于 GENERAL
      • 类别

      我希望这些信息对您有所帮助。

答案 1 :(得分:0)

这个答案并没有具体说明如何管理np ++代码片段,但这可能是一个很好的选择,因为看起来插件不能很好地工作。我发现一个非常灵活的系统范围的解决方案是使用AHK。然后,您可以通过自定义热键和文本扩展来获得类似于代码段的功能,以及更多功能。

例如,像:*:123::123456789这样的单行AHK脚本将自动扩展键入“123”到“123456789”,无论您当前的编辑器(np ++或VS,无论如何)。要将此限制为特定应用,只需添加另一行,例如#IfWinActive, ahk_exe devenv.exeFull example here)。

More on AHK for plaintext

管理代码段的简单AHK脚本

我刚刚提出了一个管理CodeSnippet数据库的简单解决方案。多一点工作,这可能会更加光滑。

它的作用

Ctrl + Alt + S 提供显示的代码段列表。双击一个片段,它将粘贴到您的应用程序中。片段只是一个文件列表,文件的内容为代码提供了代码。

如何设置

1。)需要MyDocuments目录下名为“CodeSnippets”的文件夹。在此文件夹中创建代码段文件。

2.。)使用AHK运行以下脚本。要“设置并忘记”,请在Windows启动时运行脚本。在Windows中的任何应用程序中,按Ctrl + Alt + S选择一个代码段。

#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

答案 2 :(得分:0)

也有FingerText。它安装并在NPP的新Plugins Admin上运行良好。如果您试一试,您可能应该去插件| FingerText |安装“默认代码片段包”以获取默认的代码片段集。这是2012年的年份,但仍然有效。默认情况下,它通过键(即TextMate)扩展片段。它具有扩展宏,例如$[![(key)DATE:yyyy/MM/dd]!]代表其插入日期代码段的当前日期。如果您插入例如一个超链接,它将突出显示文本部分,因此当您开始键入文本时,它将替换其占位符,然后您可以按并将URL占位符突出显示。这也让人想起Emmet的工作方式。您当然可以添加新的片段并进行编辑。

也许最大的疏忽是没有将代码片段分为几类;这样一来,您的摘要就只有一长串。但是,代码片段知道文件扩展名。它似乎没有自动补全功能。可以在{NPP} \ plugins \ FingerText目录的“ README.rdoc”中找到文档。

这显然是一个win32项目,因此不需要.NET 3.5。开发人员表明它处于alpha阶段;但它似乎相当稳定,并且比Alpha阶段恕我直言更加成熟。它是开源的,可从GitHub的“ erinata/FingerText: Tab triggered snippet plugin for Notepad++”获得。我的猜测是,如果要使用x64版本,则必须自己编译。但是有一个Visual Studio项目。