Удалить iterm из приложений cmd + tab

10

Я использовал TotalTerminal, чтобы получить козырек как терминал на ярлыке. Но TotalTerminal заброшен, поэтому я перешел на iTerm2. Моя проблема в том, что когда я использую ярлык для запуска поведения и профиля Viser iTerms, он также активируется как обычное приложение и попадает в список Cmd+ Tabприложений, а я этого не хочу. Есть ли способ предотвратить такое поведение для профиля забрала iTerm2?

Саша Шияк
источник
1
В общем, программа должна представлять себя в ОС как меню / безликое приложение без значка в доке. Вы проверили настройки iTerm или связались с разработчиком?
bmike
Я проверил настройки iTerm, но не смог получить желаемое поведение. Я еще не связался с разработчиками.
Саша Шияк

Ответы:

8

В настоящее время по состоянию на октябрь 2016 года iTerm2 включил эту функцию. Перейдите в Настройки -> Дополнительно -> Общие -> Hide iTerm2 from the dock and from the ⌘-Tab app switcher.

chriisu
источник
4
В версии 3.1.2 это предпочтение было перемещено на вкладку « Внешний вид » в разделе « Система» -> « Исключить из дока» и «Переключатель приложений ⌘-Tab» .
Алексей Липов
После этого снова нет строки меню для доступа к настройкам. Если вы застряли , вы можете отменить изменения, запустив defaults write com.googlecode.iterm2 HideFromDockAndAppSwitcher 0затем killall iTermи перезапустить его.
BinarySplit
4

«Ключ запуска службы» LSUIElementв .plistфайле для iTerm2 - ваш друг.

Чтобы скрыть iTerm2 от коммутатора, откройте терминал и введите:

/usr/libexec/PlistBuddy -c "Add :LSUIElement bool true" /Applications/iTerm.app/Contents/Info.plist

Вам нужно будет перезапустить iTerm2, чтобы настройки вступили в силу.

Если вы хотите снова показать iTerm, используйте следующую команду:

 /usr/libexec/PlistBuddy -c "Delete :LSUIElement" /Applications/iTerm.app/Contents/Info.plist

Объяснение от Apple :

LSUIElement «Приложение - агент (UIElement)». Указывает, является ли приложение агентским приложением, то есть приложением, которое не должно отображаться в окне Dock или Force Quit. См. LSUIElement для деталей.

crishoj
источник
Эти настройки не работают для MAMP :(
Alisso
@ Алиссо, не могли бы вы рассказать немного подробнее?
crishoj
Я решил это с помощью клавиатуры maestro :) (я нашел вкладку «исключить» внутри Keyboard Maestro - хотя это тоже было неочевидно вначале.)
Алиссо
Этот ответ не работал для меня (пока принятый работал). Это странно, поскольку они в основном делают то же самое.
Бумбу
@bumbu, есть сообщение об ошибке?
crishoj
3

На GitHub есть несколько хороших модификаций. Самое простое, что я нашел здесь:
https://gist.github.com/CrazyApi/5377685

Убедитесь, что у вас есть Горячая клавиша для переключения iTerm. После того, как вы отключите значок док-станции, иначе вы не сможете запустить окно. Чтобы получить стиль козырька TotalTerminal, вам нужно установить в раскрывающемся меню стиля предпочтений окна iTerm значение «Верх экрана».

Поместите код из поста GitHub в ваш bash_profile:

  1. Откройте iTerm (убедитесь, что iTerm находится в папке ваших приложений или измените код так, чтобы он указывал на правильный путь)
  2. Войти nano .bash_profile
  3. Вставьте этот код:

    # toggle iTerm Dock icon
    # add this to your .bash_profile or .zshrc
    function toggleiTerm() {
        pb='/usr/libexec/PlistBuddy'
        iTerm='/Applications/iTerm.app/Contents/Info.plist'
    
        echo "Do you wish to hide iTerm in Dock?"
        select ync in "Hide" "Show" "Cancel"; do
            case $ync in
                'Hide' )
                    $pb -c "Add :LSUIElement bool true" $iTerm
                    echo "relaunch iTerm to take effectives"
                    break
                    ;;
                'Show' )
                    $pb -c "Delete :LSUIElement" $iTerm
                    echo "run killall 'iTerm' to exit, and then relaunch it"
                    break
                    ;;
            'Cancel' )
                break
                ;;
            esac
        done
    }
  4. Control + X для выхода из нано
  5. Y и Enter, чтобы сохранить
  6. Запустите iTerm и введите toggleiTerm
  7. Введите 1и введите
  8. Перезапустить приложение.

Прибыль.

Travis
источник
Это работает как ожидалось. Единственная проблема заключается в том, что он также постоянно скрывает строку меню. Но так как поведение можно переключать с помощью команды, я думаю, что этого достаточно. Настройки по-прежнему доступны для [cmd +,]
sparkonhdfs
Это первое попадание в Google с ключевыми словами "osx remove cmd tab iterm". Ссылка на gist неактивна, но в зависимости от истории редактирования в ответе содержится необходимый код.
Кристиан
3

Откройте «Настройки iTerm2», перейдите на вкладку « Внешний вид » и в разделе « Системные пункты» выберите « Исключить из Dock» и «Переключатель приложений ⌘-Tab» .

метод

EasternXiang
источник
0

Есть несколько приложений, которые могут «переключать попадание» в том смысле, что они запускаются либо как оконное / традиционное приложение, где оно отображается на экране переключателя приложений, так и в качестве фонового приложения или приложения строки меню.

Для примеров этого посмотрите Dash , Take Five и Skitch . У каждого есть предпочтение для запуска на «переднем плане» или «фоне», и когда вы вносите изменения в это предпочтение, вы должны выйти и перезапустить приложение, чтобы система знала, как обрабатывать док, окна и меню. панель, а также переключатель приложений.

введите описание изображения здесь

Я не вижу никаких признаков того, что iTerm 2 обладает этой функциональностью, поэтому в лучшем случае вам нужно будет изменить приложение или перекомпилировать его, если оно готово к работе и просто отсутствует переключатель предпочтений в приложении. Я подозреваю, что приложению потребуется дополнительное программирование для обработки обоих случаев, и вам придется жить с этим приложением в коммутаторе или выбрать другой инструмент эмуляции терминала.

По сути, в ОС можно разместить приложение, разработанное для отказа от дока и переключателя приложений, но это не так просто, как установить один параметр для любого приложения, которое вы хотите изменить.

bmike
источник