# ~/.config/bash/keybinds.bash — readline ports of the television keys in # fish_user_key_bindings.fish / zsh keybinds.zsh: # ctrl-o → gho (ghq-repos cable, cd) ctrl-e → tv git-files (nvim) # ctrl-p → pj (pj cable) # ctrl-t → tv smart autocomplete (tv init bash ships no ctrl-t) # Keys owned by kitty.conf never reach the shell: ctrl-h/j/k/l (pass_keys.py). # # Every picker runs tv --inline: it opens on the line below the prompt and # leaves the cursor on that line when it exits. When nothing was printed # below, the binding steps back up (_kb_up) so readline redraws the prompt in # place after bind -x; output that must stay (a pj task) is left alone. _kb_up() { printf '\033[A' >/dev/tty; } # ctrl-e: enter opens nvim, which restores the cursor to tv's line. _kb_git_files() { tv git-files --inline