remove input-modes
* Main changes
The dynamic-keymaps system now performs the function that input-modes
used to. This change allows for more information about the current
keymaps to be shown in the UI (in the minibuffer area), thus helping users
better predict what keys they can use in any given context. The two main
cases for this are that "form" will be included in the keymaps display
when the focused element is inside of a form, and the name of page-mode
keymaps will be in the display when a page-mode keymap is in effect.
Which keymaps are included in the display, and with what names, are fully
configurable, as described below.
content_buffer_modality has also been improved to give a better way for
page-modes to install their keymaps in the proper order in the keymap
stack.
Keymaps have two new properties, 'display_name' and 'notify', which when
present, trigger ui feedback whenever the keymap becomes active. The
display_name property is used to configure which keymaps will be shown in
the keymaps-display, as well as what names will be shown for them. (Thus
can be easily configured by the user.) The notify property is a boolean
which tells which keymaps trigger the minibuffer to become highlighted.
Minor visual changes to minibuffer widgets such as modes-display and
keymaps-display. They are now decorated with css instead of text
decorations, on the grounds that css is more configurable by the user, and
less arbitrary.
* Breaking changes
page-modes no longer use buffer.modalities directly. instead, they use
buffer.content_modalities. see source for many examples.
quote-next-input-mode replaced by quote-next-mode.
gmail_edit_keymap: removed (no longer necessary)
buffer-reset-input-mode: command removed (no longer necessary)
* Other changes
dom_add_class: check for duplicates
minibuffer_mode_indicator_mode.uninstall: trivial fix
20 files changed: