inicie o terminador com zsh e aplique automaticamente "set -o ignoreeof"

inicie o terminador com zsh e aplique automaticamente "set -o ignoreeof"

Estou usando o terminator zshcomo meu shell:

terminator --command="/bin/zsh"

Além disso, preciso de outra maneira de iniciar o terminador zshe garantir que a janela não feche em ctrl+ d.

Eu sei que posso usar set -o ignoreeofinside .zshrcpara evitar ctrla dsaída do terminal. Mas isso afetará todos zshos shells.

Não quero mudar isso globalmente. Uma maneira que acho possível é ter dois arquivos de configuração separados. Mas eu teria que manter dois arquivos em vez de um. Existe uma maneira mais simples de começar zshativado set -o ignoreeof? talvez especificando isso como uma opção na linha de comando?

Responder1

Você virtualmente respondeu à sua própria pergunta. Apenas corra:

terminator --command='/bin/zsh -o ignoreeof'

Ver:

info zsh Invocation

para obter detalhes sobre como invocar zsh.

Responder2

Uma maneira de fazer isso é definir terminatoralguma variável de ambiente (se ainda não o fez)

env HI_IMA_TERMINATOR=1 terminator --command="/bin/zsh"

e detecte isso no arquivo de configuração ZSH:

if [[ -n $HI_IMA_TERMINATOR ]]; then
    set -o ignoreeof
fi

(O método acima não funcionará se terminatorlimpar o ambiente por segurança ou outros motivos.)

informação relacionada