Управление фрагментами кода в Notepad ++ - PullRequest
39 голосов
/ 28 февраля 2011

Есть ли способ управления фрагментами кода с резервным копированием для базы данных и подсветкой кода в Notepad ++?

Ответы [ 3 ]

23 голосов
/ 18 апреля 2011

Есть хороший плагин для управления фрагментами кода:

SnippetPlus
.NET 3.5 Требуется! Фрагмент кода и Surround With plugin для блокнота ++. Напишите название фрагмента и замените его реальным кодом или выберите некоторый текст и окружить его что-то вроде IF, TryCatch, Table, Div или что-то еще. Дадим вам подсказку, если вы не помню название фрагмента Примечание что может быть показана последняя версия, даже если у вас есть старая версия установлены. Переустановите, чтобы убедиться, что вы иметь последнюю версию.
Автор: Раджеш Кумар
Домашняя страница: http://sourceforge.net/projects/snippetplus/

Вы можете установить его из диспетчера плагинов Notepad ++ и активировать док, щелкнув черный m-подобный символ на панели инструментов; затем выберите один из связанных фрагментов и вставьте его в редактор, дважды щелкнув по нему.

Например, если у вас есть файл Visual Basic и вам необходимо включить блок try / catch , который содержит структуру if-elseif-else , вы должны выполнить следующие шаги указано на изображении:

SnippetPlus example

  1. Поместите курсор в то место, где вы хотите разместить новый фрагмент кода, затем активируйте док с панели инструментов: откроется закрепленное диалоговое окно, помеченное желтым.
  2. Дважды щелкните параметр ifelseif в секции Snippets док-станции: при этом будет вставлен блок кода, отмеченный синим.
  3. Выберите весь код, который вы хотите видеть внутри блока try / catch, и дважды щелкните опцию TryCatch в разделе SurroundWith дока: это заменит выбранный код всем кодом блок отмечен красным.

Если вы хотите изменить существующие фрагменты или добавить свои, используйте графический редактор:
GUI Editor

Щелкните по фрагменту, который вы хотите изменить / удалить: он будет показан справа. Активный раздел ( Snippets или SurroundWith ) выделяется темно-красным фоном:

GUI Editor

Вы также можете добавить пользовательские фрагменты: просто выберите нужный язык и щелкните любой фрагмент из раздела, к которому должен принадлежать новый фрагмент (либо Фрагменты , либо SurroundWith ), затем напишите имя нового фрагмента, который вы хотите создать (например, sample ): кнопка Изменить изменится на Добавить новый
Add new snippet

Вы также можете вставлять фрагменты в документы, используя сочетание клавиш Ctrl + Shift + ENTER :

  1. Вы можете написать непосредственно имя фрагмента и затем нажать сочетание клавиш или
  2. Вы можете вызвать всплывающее окно, нажав сочетание клавиш, а затем снова нажав сочетание клавиш, чтобы заменить имя фрагмента содержимым фрагмента.

insert snippet by keyboard shortcut

Примечания:

  • Этот плагин хранит фрагменты (включая пользовательские) между перезапусками.
  • Важное примечание: Если вы добавляете / модифицируете / удаляете фрагменты, только после перезапуска Notepad ++ изменения будут применены (включая содержимое списков в разделах Фрагменты и SurroundWith ). Будьте осторожны с этим, чтобы не дублировать или добавлять неполные фрагменты.
  • Чтобы применить подсветку кода для языка, на котором вы работаете, просто выберите его в меню язык , как это традиционно делается:
    code highlight
  • Фрагменты кода, показанные в меню Ctrl + Shift + ENTER , зависят от того, какая подсветка языка применяется к документу. Единственные фрагменты кода, показанные во всем мире, относятся к категории GENERAL .

Я надеюсь, что эта информация будет полезна для вас.

0 голосов
/ 29 апреля 2019

Существует также FingerText.Он установился и нормально работал от нового администратора плагинов АЭС.Если вы попробуете это, вы, вероятно, должны перейти к плагинам |FingerText |Установите пакет фрагментов по умолчанию, чтобы получить набор фрагментов по умолчанию.Это винтаж 2012 года, но все еще работает.По умолчанию он расширяет фрагменты с помощью клавиши , а именно TextMate.Он имеет макросы расширения, так что $[![(key)DATE:yyyy/MM/dd]!] представляет текущую дату для своего фрагмента даты вставки.Если вы вставите, например, гиперссылку, она выделит текстовую часть, поэтому она заменит свой заполнитель для текста, когда вы начнете печатать, а затем вы можете нажать и заполнитель URL будет выделен.Это также напоминает способ работы Эммета.Конечно, вы можете добавлять новые и редактировать фрагменты.

Возможно, его самый большой упущение в том, что он не разбивает фрагменты на категории;так что вы получите только один длинный список для ваших фрагментов.Фрагменты знают о расширениях файлов, однако.Кажется, у него нет автозаполнения.Документацию можно найти в каталоге {NPP} \ plugins \ FingerText, в папке «README.rdoc».

Это, очевидно, проект win32, и, следовательно, он не требует .NET 3.5.Разработчик указывает, что он находится в альфа-стадии;но он кажется достаточно стабильным и кажется более зрелым, чем альфа-стадия, ИМХО.Он имеет открытый исходный код и доступен из GitHub по адресу " erinata / FingerText: плагин сниппета с вкладками для Notepad ++ ".Я предполагаю, что если вы хотите версию для x64, вам придется скомпилировать ее самостоятельно;но есть проект Visual Studio.

0 голосов
/ 12 января 2018

Этот ответ конкретно не о том, как управлять фрагментами кода np ++, но это может быть хорошей альтернативой, так как похоже, что плагин работает не очень хорошо. Я нашел очень гибкое общесистемное решение - использовать AHK . Затем вы можете получить функциональность, похожую на фрагмент кода, и многое другое, настроив горячие клавиши и расширение текста.

Например, однострочный AHK-скрипт, подобный этому :*:123::123456789, автоматически расширит набор «123» до «123456789», независимо от вашего текущего редактора (np ++ или VS, как угодно). Чтобы ограничить это конкретными приложениями, просто добавьте еще одну строку, например, #IfWinActive, ahk_exe devenv.exe ( Полный пример здесь ).

Подробнее о AHK для открытого текста


Простой скрипт AHK для управления фрагментами кода


Я только что разработал простое решение для управления базой данных CodeSnippet. Немного больше работы, и это может быть намного проще.

Что он делает

Предоставляет список фрагментов кода, отображаемый при нажатии Ctrl + Alt + S . Дважды щелкните фрагмент, и он будет вставлен в ваше приложение. Фрагменты - это просто список файлов, а содержимое файла предоставляет код для фрагмента.

Как настроить

1.) Требуется папка с именем «CodeSnippets» в каталоге MyDocuments. Создайте файлы фрагментов кода в этой папке.

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
...