Ho trovato questa pagina quando stavo cercando di fare il servizio python. Volevo condividere la mia soluzione completa per risparmiare un po 'di tempo agli altri e magari ottenere un feedback dai programmatori più esperti. Ho usato Preferenze di sistema> Tastiera: Associazioni di tasti per impostare un "Ordine di ordinamento delle applicazioni: Tutte le app" per questo servizio in modo da poter eseguire il testo selezionato in qualsiasi punto del sistema utilizzando command-shift-return. Si noterà che eventuali eccezioni causeranno la sostituzione della selezione con il testo originale. Funziona con UNDO se non hai ottenuto il risultato desiderato. Finora mi piace molto!
Creare un flusso di lavoro automator come servizio, servizio riceve testo selezionato in qualsiasi applicazione, ingresso è intera selezione, uscita sostituisce il testo selezionato
Aggiungere un guscio corsa azione script shell:/usr/bin/ingresso passaggio pitone : come argomenti
questo codice va nella scatola:
import sys #, random
try:
print eval(' '.join(sys.argv[1:]))
except:
try:
#This is a compound statement using variable assignment
code = compile(' '.join(sys.argv[1:]), '<string>', 'exec')
exec code
except:
print ' '.join(sys.argv[1:])
Questi sono alcuni esempi di come potrei utilizzare questo servizio. Ancora una volta, questo funziona in Mail, word processor e altre app.
Esempio 0: Basic Math
>>> 42*24*60*60
3628800
Esempio 1: Linea singola, istruzione composta
>>> import random; foo = range(17); random.shuffle(foo); print(foo)
[11, 14, 12, 3, 1, 4, 15, 7, 8, 13, 2, 16, 0, 10, 9, 6, 5]
Esempio 2: multilinea
>>> import random
>>> foo = range(17)
>>> random.shuffle(foo)
>>> print(foo)
[5, 16, 14, 10, 3, 11, 7, 15, 12, 0, 13, 2, 4, 1, 6, 9, 8]
Esempio 3: Loops
>>> for x in range(5):
... print x
...
0
1
2
3
4
È necessario selezionare la casella di controllo "Sostituisci testo selezionato" affinché funzioni. Farà anche solo un "Hello World"; non uno per ogni linea. Dovresti dividere 'sys.stdin' nelle sue linee componenti per restituire ogni riga. – dawg
e dove si trova la casella di controllo "Sostituisci testo selezionato"? –
può essere esportato in un'applicazione (ad esempio scaricabile .app)? –