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

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

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

Ответы (5)

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

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

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

метод

«Сервисный ключ запуска» 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.

Эти настройки не работают для MAMP :(
@ Алиссо, не могли бы вы предоставить немного больше деталей?
Я решил это с помощью keyboard maestro :) (Я нашел вкладку «исключить» внутри Keyboard Maestro — хотя сначала это тоже не было очевидно.)
Этот ответ у меня не сработал (в то время как принятый работал). Это странно, поскольку они в основном делают то же самое.
@bumbu, какое-нибудь сообщение об ошибке?
ни ошибок, ничего
На другой машине работало нормально
Не работает после обновления до 3.0.0. У кого-нибудь еще есть эта проблема или выясните новый способ ее решения?
Это работало, как и ожидалось, с использованием iTerm 3.0.5 на Mac 10.11.6.
File Doesn't Exist, Will Create: /Applications/iTerm.app/Contents/Info.plistесли вы получили это сообщение об ошибке, проверьте имя папки. Мой iTerm 2.appс пробелом.

На 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. Перезапустите приложение.

Выгода.

Это работает, как и ожидалось. Единственная проблема заключается в том, что он также постоянно скрывает строку меню. Но поскольку поведение можно переключать с помощью команды, я думаю, этого достаточно. Доступ к настройкам по-прежнему можно получить с помощью [cmd +,]
Это первое попадание в Google с ключевыми словами «osx удалить вкладку cmd iterm». Основная ссылка не работает, но, исходя из истории редактирования, в ответе указан необходимый код.

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

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

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

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

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