2012-09-04 20 views
7

zsh ma ładny funkcję rozszerzenia globs:zsh: jak wrócić 'nieporowate' komenda

% ls **/*.js

Hit Tab okazuje to pod

% ls app/assets/javascripts/application.js vendor/assets/javascripts/Markdown.Converter.js

Czy istnieje sposób, aby zwinąć go z powrotem do oryginalnej wersji globalnej? A może powinienem wyłączyć globalizację?

Powodem, dla którego tego chcę, jest to, że kiedy jestem w trakcie debugowania globu i trafiam na Tab, aby dokładnie sprawdzić coś, nie ma sposobu na odzyskanie i uzupełnienie wzoru. Muszę zacząć od zera.

Odpowiedz

11

Użyj polecenia undozle. Na przykład, powiązać go z Ctrl_:

bindkey '^_' undo 

Od zshzle(1):

undo (^_ ^Xu ^X^U) (unbound) (unbound) 
     Incrementally undo the last text modification. 

redo Incrementally redo undone text modifications. 
+0

Awesome! A także przydatne poza tym konkretnym przypadkiem użycia. Dzięki! – artemave

+0

Łącze daje błąd HTTP 403. –

+1

@TomHale: Znalazłem alternatywne źródło. Dziękuję za zgłoszenie. – Thor