Делимся, как это сделать, используя плагин NppExec и Ruby.
Решение:
Подход . Получите внешний язык сценариев (в данном случае Ruby), чтобы вернуть отформатированную временную метку, а NppExec - получить ее и вставить в местоположение курсора в текущем файле, показанном в Notepad ++.
Сначала настройте консоль:
npe_console v+ // set console to receive output in $(OUTPUT) variable
npe_console d+ // set current working directory to same as current file
Затем в NppExec> Выполнить команду меню введите следующий фрагмент:
// Diary snippet (Generates timestamp YYYY-MM-DD--DAY--HH:MM for NPP++)
npp_console disable // turn off output displaying to console
// this ruby one-liner does the work
ruby -r Date -e "dt=DateTime.now; dname = Date::ABBR_DAYNAMES[dt.wday]; puts dt.strftime(\"%Y-%m-%d--#{dname}--%H:%M\");"
sel_settext $(OUTPUT) // put result at cursor in current file
npp_console enable // restore output displaying to console
npp_console 0 // hide the console window
Он использует движок Ruby для генерации метки времени и вставляет ее там, где находится курсор в текущем файле в Notepad ++. Результат (с задержкой около 500 мс) - это отметка времени:
2012-08-20--Mon--20:16
Примечание. Хотя это, безусловно, и делает свою работу, если у кого-то есть решение, не зависящее от чего-либо внешнего (в данном случае Ruby), это было бы лучше.
Изменить: «Производство» решение ... (надежность и удобство)
Следуя приведенным ниже инструкциям, приведенное выше решение может быть реализовано ...
Препятствие заключается в том, что закрытие Notepad ++ теряет конфигурацию консоли, поэтому его необходимо настраивать при каждом перезапуске.
Поэтому мы настроили конфигурацию консоли как скрипт, который запускается автоматически при каждом запуске Notepad ++.
Затем свяжите сочетание клавиш (горячие клавиши) со сценарием дневника для удобства.
Шаг 1: Введите код дневника в диалоговом окне NppExec Excute ...: Plugins > NppExec > Execute...
присвоив ему имя (вы будете использовать это имя позже)
Шаг 2: Введите код конфигурации setup_console аналогично:
Шаги 3, 4, 5: В Plugins > NppExec > Advanced Options
, установите setup_console для запуска при запуске (3), создайте пункт меню для кода дневника (4) и поместите пункт меню в Macro
меню (5):
Шаг 6: Установите горячую клавишу клавиатуры (ярлык) для сценария дневника: Settings > Shortcut Mapper... > Plugins
и прокрутите вниз, пока не найдете имя сценария дневника, которое вы использовали ...
Результат: заглянув под команду Macros
меню, вы увидите новую команду Timestamp с сочетанием клавиш.
Выполнено!