zsh - ^ Comportamento de W com oh-my-zsh

1

Recentemente, comecei a usar o ZHS com o pacote de scripts oh-my-zsh. Ele faz um excelente trabalho, exceto pelo estranho comportamento de atalho ^.

Por exemplo, se eu tiver a seguinte linha de comando e o símbolo ▮ indicar a posição do cursor.

$ ./command_name --option1 value --option2=value ▮

Pressionando sequencialmente ^ W por várias vezes, eu recebo o seguinte conteúdo em prompts de comando:

$ ./command_name --option1 value --option2=▮
$ ./command_name --option1 value --▮
$ ./command_name --option1 ▮
$ ./command_name --▮
$ ./command_▮
$ ./▮

O que me incomoda é que depois do terceiro cursor de imprensa parar não depois de excluir -- , mas também come value . Eu suspeito que todos os símbolos como "_-" são considerados como separadores como espaços e zsh continua comendo símbolos até excluir alguns caracteres não separadores, mas não tenho idéia de como alterar esse comportamento.

    
por Nevkontakte 02.10.2013 / 09:19

1 resposta

2

Para corrigir esse comportamento (padrão), você deseja que o Zsh use o estilo vi backward-kill-word .

Coloque isso no seu ~/.zshrc :

bindkey '^W' vi-backward-kill-word

Agora, ele matará as seguintes posições:

$ ./command_name --option1 value --option2=▮
$ ./command_name --option1 value --option2▮
$ ./command_name --option1 value --▮
$ ./command_name --option1 value ▮
$ ./command_name --option1 ▮
$ ./command_name --▮
$ ./command_name ▮
$ ./▮
$ ▮
    
por 02.10.2013 / 19:51