In TextMate, apri l'editor di bundle e seleziona la lingua in cui desideri eseguire questa operazione. (Se desideri avere questa funzionalità in tutte le lingue, utilizza il pacchetto Source) Fai clic sul simbolo più in basso a sinistra e scegli "Nuovo comando". Scegliere "Nothing" per il campo Save e "Selected Text o Line" per i due campi di input. Poi incolla questo nel campo Comandi:
#!/usr/bin/python
import sys
commandLine = raw_input("")
tmArgs = commandLine.split()
numberOfArgs = len(tmArgs)
for i in range(eval(tmArgs[0])):
for j in range(1, numberOfArgs):
sys.stdout.write(tmArgs[j])
È quindi possibile scegliere una scorciatoia da tastiera per attivare questo con nel campo di attivazione. Il modo in cui funziona è molto simile al comando emacs: scrivi il numero di caratteri che vuoi seguire dal personaggio. Quindi selezionare entrambi (questo passaggio non è necessario se sono l'unico testo sulla linea) e premere il tasto di scelta rapida. Il mio script ti permette di specificare più caratteri da stampare, delimitati da spazi. Quindi, se avete digitato
10 - =
e premere il tasto di scelta rapida, si otterrebbe
-=-=-=-=-=-=-=-=-=-=
Edit: Dopo averci pensato ... ecco un'altra versione. Questo stamperà la stringa dopo il numero. Così, per esempio
6 -= (space)
stampe
-= -= -= -= -= -=
Ecco quella versione:
#!/usr/bin/python
import sys
import string
commandLine = raw_input("")
timesToPrint = eval(commandLine.split()[0])
firstSpace = string.find(commandLine, " ")
for i in range(timesToPrint):
sys.stdout.write(commandLine[firstSpace + 1:])
fonte
2009-02-14 02:37:42
Per chi ha votato questo in giù, mi piacerebbe sapere perché. – PlagueHammer