Hacker News new | past | comments | ask | show | jobs | submit login
Adding Vi To Your Zsh (dougblack.io)
19 points by dougblack on Oct 3, 2013 | hide | past | favorite | 8 comments



Thanks for "export KEYTIMEOUT=1"!

I use https://github.com/robbyrussell/oh-my-zsh which has a nice vi-mode plugin, built in indicators like you mentioned too


A terrific fork of oh-my-zsh is Prezto.

https://github.com/sorin-ionescu/prezto


even for guys who's not considering to use oh-my-zsh it worth to check internals of https://github.com/robbyrussell/oh-my-zsh/blob/master/plugin...


KEYTIMEOUT is in hundredths of seconds. So this sets it to 0.01 seconds, not 0.1 as the article claims.


For highlighting that you're not in vi insert mode, try using an emoji (e.g. high voltage sign: Unicode: U+26A1, UTF-8: E2 9A A1) instead of [NORMAL]. It works in iTerm2 on Mac OS 10.8. Can't vouch for other OS/terminal combinations.

RPS1="${${KEYMAP/vicmd/⚡}/(main|viins)/}"


I also use this binding:

bindkey "^B" history-beginning-search-backward

You can type the start of a command and then hit Ctrl-B to search for similar commands in your history that had the same prefix.



For those of us still using bash, "set -o vi" is analagous. I would be interested in hearing about customizing it in ways like this article.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: