Alternando de forma interativa os temas zsh durante a execução do powerline

0

Sou um usuário bash de longa data que acaba de se acostumar a executar zsh, oh-my-zsh e powerline. Eu gosto muito da configuração, mas tenho uma frustração que não consigo resolver.

Ocasionalmente, eu preciso copiar & cole sessões terminais em e-mails, documentos de texto, etc. Com a configuração powerline padrão, os caracteres especiais causam dor, então meu pensamento é mudar meu tema zsh para um tema ASCII simples. Infelizmente, não consigo descobrir como fazer isso na linha de comando. Tenho certeza de que é possível, mas não consigo entender a interação entre o powerline e o shell para conectá-lo.

Meu fluxo de trabalho sugerido seria:

  • Abrir sessão de shell
  • Funcionam normalmente
  • Mude os temas para um tema "apenas ascii" (que inclui powerline aparentemente)
  • Trabalhe para copiar / colar
  • Mude os temas de volta para o meu anterior

Estou confortável com o script como um script ou alias, mas não consigo descobrir como começar. Meu google-fu é fraco ao procurar coisas como "alterar o tema powerline dinamicamente", "alterar o prompt do zsh dinamicamente", etc.

Coisas que eu tentei:

  • Definindo manualmente o prompt: PS1="\$ " . Isso define o prompt do lado esquerdo muito bem, mas não limpa o prompt do lado direito (que geralmente tem informações git na minha configuração)
  • Aplicando manualmente um tema: source ~/.oh-my-zsh/themes/my-plain-ascii.zsh-theme . Ainda não limpa o prompt do lado direito

E ainda não tenho certeza sobre como reaplicar meus padrões de linha de energia depois de terminar, com falta de source ~/.zshrc , que funciona, mas parece peso-pesado.

    
por Palpatim 21.02.2017 / 17:56

1 resposta

1

Você deve conseguir originar o tema ASCII e, em seguida, remover ou limpar a variável RPROMPT. Então, algo parecido com

source ~/.oh-my-zsh/themes/my-plain-ascii.zsh-theme
unset RPROMPT
<your work for copying and pasting>
source <powerline-install-directory>/bindings/zsh/powerline.zsh

Claro, você pode adicionar apenas a linha unset RPROMPT ao seu tema zsh personalizado.

    
por 02.03.2017 / 19:24

Tags