/ ohmyzsh Public
Use terminfo key codes instead of hardcoded ones for key bindings #1355
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge.
Hardcoded key escape sequences (such as
[[Afor arrow-up) serve their purpose in most cases, but not in any terminal configuration. It's a better practice to query the right codes dynamically from
I expect this to become a real-world problem as soon as recent Debian and Ubuntu versions become used more widely: Those ship with a
/etc/zsh/zshrcwhich enables "application mode", in which oh-my-zsh's key bindings partially don't work. I've written down more about that problem on my blog.
My commits migrate the key bindings to terminfo wherever possible. Please note that in order to use
$terminfo, my code hast to activate the "application mode" as well and might therefore break custom hardcoded key bindings. I based my work on the documentation efforts by @kylewest from pull request #889.