bindkey -N visual bindkey -M visual "^[" deactivate-region bindkey -M visual "t" down-line bindkey -M visual "n" up-line bindkey -M visual "o" exchange-point-and-mark bindkey -M visual "p" put-replace-selection bindkey -M visual "x" vi-delete bindkey -M visual "u" vi-down-case bindkey -M visual "~" vi-oper-swap-case bindkey -M visual "U" vi-up-case bindkey -M visual "aW" select-a-blank-word bindkey -M visual "aa" select-a-shell-word bindkey -M visual "aw" select-a-word bindkey -M visual "iW" select-in-blank-word bindkey -M visual "ia" select-in-shell-word bindkey -M visual "iw" select-in-word bindkey -M visual "a(" select-bracketed bindkey -M visual "a)" select-bracketed bindkey -M visual "a<" select-bracketed bindkey -M visual "a>" select-bracketed bindkey -M visual "aB" select-bracketed bindkey -M visual "a[" select-bracketed bindkey -M visual "a]" select-bracketed bindkey -M visual "ab" select-bracketed bindkey -M visual "a{" select-bracketed bindkey -M visual "a}" select-bracketed bindkey -M visual "i(" select-bracketed bindkey -M visual "i)" select-bracketed bindkey -M visual "i<" select-bracketed bindkey -M visual "i>" select-bracketed bindkey -M visual "iB" select-bracketed bindkey -M visual "i[" select-bracketed bindkey -M visual "i]" select-bracketed bindkey -M visual "ib" select-bracketed bindkey -M visual "i{" select-bracketed bindkey -M visual "i}" select-bracketed bindkey -M visual "a'" select-quoted bindkey -M visual "a\"" select-quoted bindkey -M visual "a\`" select-quoted bindkey -M visual "i'" select-quoted bindkey -M visual "i\"" select-quoted bindkey -M visual "i\`" select-quoted