Condivisione su come eseguire questa operazione utilizzando il plug-in NppExec e Ruby.
Soluzione:
Approccio : ottenere un linguaggio di scripting esterno (in questo caso Ruby) per restituire il timestamp formattato e per NppExec per riceverlo e inserirlo nella posizione del cursore nel file corrente mostrato in Notepad ++.
Per prima cosa configura la console:
npe_console v+ // set console to receive output in $(OUTPUT) variable
npe_console d+ // set current working directory to same as current file
Quindi in NppExec> Esegui comando di menu, inserisci il seguente frammento:
// 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
Questo utilizza il motore Ruby per generare il timestamp e lo inserisce nel punto in cui si trova il cursore nel file corrente in Notepad ++. Il risultato (con un ritardo di circa 500 ms) è il timestamp:
2012-08-20--Mon--20:16
Nota: anche se questo sicuramente fa il lavoro, se qualcuno ha una soluzione che non si basa su qualcosa di esterno (in questo caso Ruby), sarebbe meglio.
Modifica: "Produrre" la soluzione ... (robustezza e convenienza)
Seguendo i passaggi seguenti, la soluzione sopra può essere prodotta ...
Un ostacolo è che la chiusura di Notepad ++ perde la configurazione della console, quindi deve essere impostata ad ogni riavvio.
Quindi impostiamo la configurazione della console come uno script che viene eseguito automaticamente ogni volta che Notepad ++ viene avviato.
Quindi associare una scorciatoia da tastiera (tasto di scelta rapida) allo script del diario per comodità.
Passaggio 1: inserisci il codice del diario in una finestra di dialogo Excute di NppExec ... Plugins > NppExec > Execute...
, assegnandogli un nome (lo userai in seguito)
Passaggio 2: immettere il codice di configurazione setup_console in modo simile:
Passaggi 3, 4, 5: In Plugins > NppExec > Advanced Options
, imposta setup_console per l'esecuzione all'avvio (3), crea una voce di menu per il codice diario (4) e inserisci la voce di menu nel Macro
menu (5):
Passaggio 6: imposta un tasto di scelta rapida da tastiera (scorciatoia) sullo script del diario: Settings > Shortcut Mapper... > Plugins
e scorri verso il basso fino a trovare il nome dello script del diario che hai usato ...
Risultato: guardando il Macros
comando di menu, vedrai il tuo nuovo comando Timestamp con scorciatoia da tastiera.
Fatto!