Rimuovi iterm dalle app cmd + tab


10

Stavo usando TotalTerminal per ottenere una visiera come terminale su una scorciatoia. Ma TotalTerminal viene abbandonato, quindi sono passato a iTerm2. Il mio problema è che quando uso una scorciatoia per innescare il comportamento e il profilo della visiera iTerms, viene anche attivata come un'app normale ed entra in Cmd+ Tabelenco di app e non lo voglio. Esiste un modo per impedire tale comportamento per il profilo della visiera di iTerm2?


1
In generale, il programma deve presentarsi al sistema operativo come un'app menu / senza volto senza icona nel dock. Hai controllato le impostazioni iTerm o contattato lo sviluppatore?
bmike

Ho controllato le preferenze di iTerm ma non sono riuscito a ottenere il comportamento desiderato. Non ho ancora contattato gli sviluppatori.
Saša Šijak,

Risposte:


8

Attualmente a ottobre 2016 iTerm2 ha abilitato questa funzionalità. Vai a Preferenze -> Avanzate -> Generali -> Hide iTerm2 from the dock and from the ⌘-Tab app switcher.


4
A partire dalla v3.1.2, questa preferenza è stata spostata nella scheda Aspetto , in Sistema -> Escludi dal Dock e Switch-Tab Application Switcher .
Alex Lipov,

Dopo aver fatto ciò, non c'è più la barra dei menu per accedere nuovamente alle impostazioni. Se rimani bloccato è possibile annullare questo cambiamento eseguendo defaults write com.googlecode.iterm2 HideFromDockAndAppSwitcher 0poi killall iTerme riavviandolo.
BinarySplit

4

La "chiave di servizio di avvio" LSUIElementnel .plistfile per iTerm2 è tuo amico.

Per nascondere iTerm2 dallo switcher, apri Terminale e inserisci:

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

Sarà necessario riavviare iTerm2 affinché l'impostazione abbia effetto.

Se desideri mostrare nuovamente iTerm, usa il seguente comando:

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

Spiegazione di Apple :

LSUIElement "L'applicazione è agente (UIElement)". Specifica se l'app è un'app agente, ovvero un'app che non deve essere visualizzata nella finestra Dock o Uscita forzata. Vedi LSUIElement per i dettagli.


Questa impostazione non funziona per MAMP :(
Alisso,

@Alisso, potresti fornire qualche dettaglio in più?
crishoj,

L'ho risolto tramite il maestro della tastiera :) (ho trovato la scheda "escludi" all'interno del Maestro della tastiera - anche se all'inizio non era nemmeno ovvio.)
Alisso,

Questa risposta non ha funzionato per me (mentre quella accettata ha funzionato). È strano perché praticamente fanno lo stesso.
bumbu,

@bumbu, qualche messaggio di errore?
crishoj,

3

Ci sono alcune buone modifiche su GitHub. Il più semplice che ho trovato è qui:
https://gist.github.com/CrazyApi/5377685

Assicurati di avere un tasto di scelta rapida impostato per attivare iTerm. Una volta disabilitata l'icona del dock, non è possibile avviare altrimenti una finestra. Per ottenere lo stile della visiera TotalTerminal, ti consigliamo di impostare il menu a discesa delle preferenze della finestra iTerm su "Top of Screen"

Inserisci il codice dal post GitHub nel tuo bash_profile:

  1. Apri iTerm (assicurati che iTerm sia nella cartella delle applicazioni o modifica il codice per puntare al percorso corretto)
  2. accedere nano .bash_profile
  3. Incolla questo codice:

    # 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 per uscire da nano
  5. Y e Invio per salvare
  6. Avvia iTerm e digita toggleiTerm
  7. Digita 1e inserisci
  8. Riavvia l'applicazione.

Profitto.


Funziona come previsto. L'unico problema è che nasconde anche la barra dei menu in modo permanente. Ma dal momento che il comportamento può essere attivato con un comando, penso che sia sufficiente. Le preferenze sono ancora accessibili da [cmd +,]
sparkonhdfs

Questo è il primo successo in Google con le parole chiave "osx remove cmd tab iterm". Il link gist è morto, ma in base alla cronologia delle modifiche il codice necessario è fornito nella risposta.
Christian,

3

Apri le Preferenze iTerm2, vai alla scheda Aspetto e sotto la voce Sistema seleziona Escludi dal Dock e Switch-Tab Application Switcher .

metodo


0

Esistono alcune applicazioni che possono "cambiare hit" in quanto vengono eseguite come app tradizionali / con finestre, dove vengono visualizzate nella schermata di commutazione delle applicazioni e come app in background o app della barra dei menu.

Per esempi di questo, guarda Dash , Take Five e Skitch . Ognuno ha una preferenza da eseguire in "primo piano" o "sfondo" e quando si modifica tale preferenza, è necessario chiudere e riavviare l'app affinché il sistema sappia come gestire dock, finestre e menu barra e lo switcher dell'applicazione.

inserisci qui la descrizione dell'immagine

Non vedo alcun segno che iTerm 2 abbia questa funzionalità, quindi nella migliore delle ipotesi dovrai modificare l'applicazione o ricompilarla se è pronta e manca solo la preferenza attiva / disattiva nell'applicazione. Il mio sospetto è che l'applicazione avrà bisogno di più programmazione aggiunta per gestire entrambi i casi e dovrai convivere con quell'app nello switcher o scegliere un altro strumento di emulazione terminale.

Fondamentalmente, il sistema operativo può ospitare un'app progettata per disattivare il dock e il selettore di app, ma non è così semplice come impostare una preferenza su qualsiasi app che si desidera modificare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.