Вы можете использовать что-то вместе с AppleScript и некоторыми умными вставками изображений значков. Вот как бы вы сделали это для iTerm / iTerm2.
Откройте редактор AppleScript и вставьте следующий код 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
Вы можете использовать кнопку Run в редакторе, чтобы проверить, работает ли он. Если вы хотите открыть другой профиль, замените «По умолчанию» в строке 12 на имя профиля, который вы хотите открыть.
Теперь сохраните этот AppleScript. В диалоговом окне «Сохранить» в разделе «Формат файла» внизу выберите «Приложение» из списка.
Я сохранил мой как «Новый iTerm.app» на моем рабочем столе.
Теперь каждый раз, когда я нажимаю «Новый iTerm.app» на моем рабочем столе, я получаю новое окно iTerm. Я могу перетащить «Новый iTerm.app» в свою док-станцию, и это будет иконка Dock, которую я могу нажать в любое время, когда захочу открыть новое окно iTerm. Но значок - это общий значок AppleScript.
Давайте изменим его на значок iTerm. Выберите «New iTerm.app» на рабочем столе и нажмите Cmd-I, чтобы открыть экран свойств приложения.
Теперь перейдите /Applications
в окно Finder, найдите iTerm в списке установленных приложений, выберите его и нажмите Cmd-I, чтобы открыть экран свойств приложения iTerm.
Нажмите на значок в информационном окне iTerm, чтобы вокруг него появилась мягкая синяя тень. Нажмите Cmd-C, чтобы скопировать значок в буфер обмена.
Теперь щелкните значок в информационном окне «New iTerm.app» и нажмите Cmd-V, чтобы вставить значок iTerm в приложение «New iTerm.app».
Теперь у него должен быть значок iTerm.
Вы можете переместить «Новый iTerm.app» в вашу /Applications
папку, если хотите. Перетащите его из папки, в которой вы решили оставить его, обратно в док, и теперь вы можете щелкнуть по нему в доке, чтобы при каждом щелчке открывать новое окно iTerm.
Если вы хотите отличить его от работающего значка док-станции iTerm.app, вы можете вставить его в графический редактор, например Pixelmator, и добавить в него большой красный цвет, +
чтобы он был четко обозначен как значок, который нужно нажать для нового iTerm. вместо значка нажмите, чтобы увидеть выход, откройте приложение iTerm.
Вот еще несколько скриптов для некоторых других приложений, чтобы вы начали настраивать вещи:
Google Chrome (новое окно)
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 (новая вкладка)
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
Возвышенный текст 2
К сожалению, ST2 не имеет доступных расширений AppleScript. Вы всегда можете взглянуть на инструмент командной строки OS X, который поставляется вместе с ST2 . Вы можете вызвать это из простого скрипта в Dock, чтобы открыть новое окно в ST2. Так:
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