Talvez isso se deva ao problema descrito aqui ? Se assim for, a correção sugerida parece atualizar o zsh além da versão 5.0.5.
Estou usando oh-my-zsh com a seguinte configuração do histórico:
setopt appendhistory autocd extendedglob
setopt EXTENDED_HISTORY
setopt histignoredups sharehistory
A pesquisa de histórico Ctrl + R e as teclas de seta estão definidas para os padrões, ou seja:
% bindkey '^r'
"^R" history-incremental-search-backwar
No entanto, desde há algum tempo, estou enfrentando um problema que, ao pesquisar o histórico por comandos, obtém a primeira linha do comando com barras invertidas duplas no final, mas não as outras linhas. Na verdade, isso só acontece quando o arquivo de histórico é atualizado, se o comando é recente e eu o procuro no mesmo shell em que o inseri, eu o obtenho corretamente, mas se eu fechar o shell e reabri-lo, e tente recuperar o comando do histórico, eu vou entender como:
- > comando de entrada:
echo \
"multi-line command"
resultado ao usar a pesquisa de histórico ( bck-i-search: echo
):
echo \
Alguém sabe o que pode estar causando isso? A informação que encontrei aqui e em outros lugares não ajudou: (
Em seguida, adiciono um trecho da minha história:
4453* cd place
4454* someCommand -d folder \
4455* --opt 1 \
4456* -foo1 bar1 -foo2 bar2 -aeps 0 0.01 0.01 >&! output.log &
4457* du -sh
4460* ls *
4461* exit
Versão zsh para os dois hosts que estão sendo preenchidos: 5.0.2 e 5.0.5.
Em seguida, adicionei um comando multilinha devido à sintaxe:
3723 echo $ZSH_VERSION
3724 for x in 1 2 3; do echo $x \ndone
3725* someCommand -d folder \
que está funcionando bem. Uma cotação multilinha, como em:
echo "lala
dquote> dump
dquote> dump
dquote> ok"
resultando em:
3732 echo "lala\ndump\ndump\nok"
e que também funciona bem.
Isso não está acontecendo na minha máquina local (zsh versão 5.0.7), que também resulta em comandos de múltiplas linhas com \ n ao invés de duplo \:
15365 echo \n multi \n line \n command
E também em outro servidor remoto (4.3.11):
14133 example -d folder \n -pp mpp \n -c mcc \n -x mxxz \n -r mrr \n -e 0 \n -o out \n -debug
Em todas as máquinas eu uso os mesmos arquivos de configuração.
Talvez isso se deva ao problema descrito aqui ? Se assim for, a correção sugerida parece atualizar o zsh além da versão 5.0.5.
Tags command-line zsh oh-my-zsh