Puoi raggruppare qualcosa insieme ad alcuni AppleScript e ad alcune icone intelligenti che incollano le immagini. Ecco come lo faresti per iTerm / iTerm2.
Apri l'Editor AppleScript e incolla il seguente AppleScript:
set myapp to "iTerm"
on appIsRunning(appName)
tell application "System Events" to (name of processes) contains appName
end appIsRunning
if appIsRunning(myapp) then
# What you do here will depend on the program. This works for
# iTerm but you'll need to look up the actions for other programs
# since this bit is iTerm-specific.
tell application "iTerm"
set myterm to (make new terminal)
tell myterm
launch session "Default"
end tell
end tell
else
tell application myapp
activate
end tell
end if
È possibile utilizzare il pulsante Esegui nell'editor per verificare che funzioni. Se si desidera aprire un profilo diverso, cambiare "Predefinito" alla riga 12 con il nome del profilo che si desidera aprire.
Ora salva questo AppleScript. Nella finestra di dialogo Salva in "Formato file" in basso selezionare "Applicazione" dall'elenco.
Ho salvato il mio come "Nuovo iTerm.app" sul mio desktop.
Ora ogni volta che clicco su "Nuovo iTerm.app" sul mio desktop, ottengo una nuova finestra iTerm. Posso trascinare "New iTerm.app" sul mio Dock e sarà un'icona Dock su cui posso fare clic ogni volta che voglio aprire una nuova finestra iTerm. Ma l'icona è l'icona generica di AppleScript.
Cambiamolo sull'icona iTerm. Seleziona "Nuovo iTerm.app" sul desktop e fai clic su Cmd-I per visualizzare la schermata delle proprietà dell'applicazione.
Ora vai /Applications
in una finestra del Finder, trova iTerm nell'elenco delle applicazioni installate, selezionalo e fai clic su Cmd-I per aprire la schermata delle proprietà dell'applicazione iTerm.
Fai clic sull'icona nella finestra informativa di iTerm in modo da ottenere una morbida ombra blu attorno ad essa. Premi Cmd-C per copiare l'icona negli appunti.
Ora fai clic sull'icona nella finestra informativa "Nuovo iTerm.app" e premi Cmd-V per incollare l'icona iTerm nell'applicazione "Nuovo iTerm.app".
Ora dovrebbe avere un'icona iTerm.
Se lo desideri, puoi spostare il "Nuovo iTerm.app" nella tua /Applications
cartella. Trascinalo dalla cartella in cui decidi di tenerlo, torna al tuo dock e ora puoi fare clic su di esso nel Dock per aprire una nuova finestra iTerm ad ogni clic.
Se volessi essere in grado di distinguerlo dall'icona del dock iTerm.app in esecuzione, potresti considerare di incollare l'icona in un editor di immagini come Pixelmator e aggiungere un grande rosso +
ad esso in modo che sia chiaramente identificato come l'icona da premere per un nuovo iTerm finestra invece dell'icona da premere per vedere l'uscita, apri l'applicazione iTerm.
Ecco alcuni altri script per alcune altre applicazioni per iniziare a personalizzare le cose:
Google Chrome (nuova finestra)
set myapp to "Google Chrome"
on appIsRunning(appName)
tell application "System Events" to (name of processes) contains appName
end appIsRunning
if appIsRunning(myapp) then
tell application "Google Chrome"
make new window
end tell
else
tell application myapp
activate
end tell
end if
Google Chrome (nuova scheda)
set myapp to "Google Chrome"
on appIsRunning(appName)
tell application "System Events" to (name of processes) contains appName
end appIsRunning
if appIsRunning(myapp) then
tell application "Google Chrome"
make new tab at end of tabs of window 1
end tell
else
tell application myapp
activate
end tell
end if
Testo sublime 2
Sfortunatamente ST2 non sembra avere estensioni accessibili per AppleScript. Puoi sempre dare un'occhiata allo strumento da riga di comando OS X fornito con ST2 . Puoi chiamarlo da un semplice script nel Dock per aprire una nuova finestra in ST2. Così:
set myapp to "Sublime Text 2"
on appIsRunning(appName)
tell application "System Events" to (name of processes) contains appName
end appIsRunning
if appIsRunning(myapp) then
# Assumes you've installed the subl command line tool for ST2
# in to /usr/local/bin. Adjust accordingly.
do shell script "/usr/local/bin/subl --new-window"
else
tell application myapp
activate
end tell
end if