2012-06-25 10 views
5

So che posso eseguire uno script Ruby in mia scheda attiva con il comandoCan Notepad ++ esegue uno script Ruby (o altro) direttamente sul testo nella scheda attiva?

cmd /K ruby “$(FULL_CURRENT_PATH)” 

Tuttavia, mi piacerebbe fare con Notepad ++ sul mio sistema di Windows quello che faccio regolarmente in BBEdit sul mio Mac: Avere un file di testo si apre e quindi chiama uno script Ruby da un menu e lo script agisce sul testo nella mia finestra attiva senza dover effettivamente inserire il nome del file. È possibile?

risposta

9

Per eseguire uno script Ruby in Notepad ++, installare prima lo NppExec plugin se non è già installato. Quindi in Notepad ++ o premi F6 o vai a Plugin> NppExec> Esegui. Nella finestra di dialogo di tipo Esegui comando nel seguente:

ruby "$(FULL_CURRENT_PATH)" 

See this per le opzioni della riga di comando aggiuntive

+0

Giusto, grazie, ma posso ottenere che lo script Ruby venga eseguito sul testo in una scheda attiva aperta senza dover inserire il nome file di quel file di testo nello script Ruby? – Sharon

+1

+1 per una buona risposta. Benvenuto a bordo di Gunnar. – pixelbobby

+0

Apprezzo la ricerca di Google per mio conto, ma ne ho anche fatto parecchie prima di postare qui. Ho già il plugin NppExec per eseguire gli script Ruby. L'unica differenza tra questo e il codice che ho scritto sopra è che viene eseguito in una console all'interno di Notepad ++, ma che comunque mi fa inserire manualmente il nome del file ogni volta che voglio eseguire uno script Ruby su un file di testo. Speravo di trovare qualcosa di più semplice e più elegante. – Sharon

2

Il $(FULL_CURRENT_PATH) è il percorso completo del file nella scheda attualmente attiva, che conterrebbe il testo della corrente scheda.

Così si potrebbe salvare il file corrente e quindi eseguire

ruby /path/to/your/script.rb "$(FULL_CURRENT_PATH)" 

Non so il motivo per cui devi tenere digitando il nome del file, ma è possibile premere Ctrl+F6 dopo la prima manche di ri -run direttamente il comando precedente.

Problemi correlati