NppExec 플러그인과 Ruby를 사용하여이 작업을 수행하는 방법을 공유합니다.
해결책:
접근 방식 : 외부 스크립팅 언어 (이 경우 Ruby)를 가져 와서 포맷 된 타임 스탬프를 반환하고 NppExec이이를 수신하여 메모장 ++에 표시된 현재 파일의 커서 위치에 삽입합니다.
먼저 콘솔을 구성하십시오.
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 엔진을 사용하여 타임 스탬프를 생성하고 메모장 ++의 현재 파일에서 커서가있는 위치에 삽입합니다. 결과 (약 500ms 지연)는 타임 스탬프입니다.
2012-08-20--Mon--20:16
참고 : 이것은 분명히 일을하지만, 누군가 외부 (이 경우 Ruby)에 의존하지 않는 솔루션을 가지고 있다면 더 좋습니다.
편집 : 솔루션 "제조"... (견고성 및 편의성)
아래 단계에 따라 위의 솔루션을 생산할 수 있습니다 ...
장애물은 Notepad ++를 닫으면 콘솔 구성이 손실되므로 다시 시작할 때마다 설정해야한다는 것입니다.
따라서 Notepad ++가 시작될 때마다 자동으로 실행되는 스크립트로 콘솔 구성을 설정했습니다.
그런 다음 편의를 위해 키보드 단축키 (핫키)를 다이어리 스크립트에 연결합니다.
1 단계 : NppExec Excute ... 대화 상자에 다이어리 코드를 입력하십시오. Plugins > NppExec > Execute...
이름을 지정하십시오 (나중에 해당 이름을 사용함)
2 단계 : setup_console 구성 코드를 유사하게 입력하십시오.
5, 4, 3 단계 : 로그인하여 Plugins > NppExec > Advanced Options
, 시작 (3)에 실행되도록 설정 setup_console이 일기 코드 (4)에 대한 메뉴 항목을 작성하고에 메뉴 항목을 넣어 Macro
메뉴 (5)
6 단계 : 키보드 핫키 (바로 가기)를 일기 스크립트 : Settings > Shortcut Mapper... > Plugins
로 설정하고 사용한 일기 스크립트 이름을 찾을 때까지 아래로 스크롤합니다.
결과 :Macros
메뉴 명령 아래에 키보드 단축키가있는 새로운 타임 스탬프 명령이 표시됩니다.
끝난!