Skip to content

v0.15

Compare
Choose a tag to compare
@alphapapa alphapapa released this 16 Apr 15:20
· 42 commits to master since this release
v0.15

Additions

  • Configurable emoji picker for sending reactions. (#199, #201. Thanks to Omar Antolín Camarena.): - Option ement-room-reaction-picker sets the default picker. Within that, the user may press C-g to choose a different one with a key bound in ement-room-reaction-map.

  • A variety of enhancements for using compose buffers. (#140. Thanks to Phil Sainty.): Chiefly, messages can now be composed in small windows below room windows, rather than in the minibuffer or a full-sized window. A variety of options and commands are available related to these features. See compose buffer enhancements.

  • Global minor mode ement-room-self-insert-mode enables "just typing" to start a message. (Thanks to Phil Sainty.): See ement-room-self-insert-mode.

  • Options affecting how images are displayed in room buffers.: See image display.

Changes

  • Improve prompt used when viewing a room that is not joined. (#241. Thanks to Phil Sainty.)
  • Format "was kicked and rejoined" membership event pairs.
  • Enclose reasons for membership events in quotes for clarity.
  • Improve default room list grouping.
  • When editing or replying to a message in a compose buffer, the related room event is highlighted persistently until the compose buffer is killed. (Thanks to Phil Sainty.)
  • In compose buffers dabbrev will prioritise firstly the associated room, and secondly all other rooms, before looking to other buffers for completions. (Thanks to Phil Sainty.)
  • Aborted messages are now added to ement-room-message-history rather than the kill-ring. (Thanks to Phil Sainty.)
  • Prefix bindings in ement-room-mode-map now have named labels in which-key and similar. (Thanks to Phil Sainty.)
  • Option: ement-room-use-variable-pitch (previously named ement-room-shr-use-fonts) enables variable-pitch fonts for all message types. (This option previously supported formatted messages, but now works for plain text messages as well.) Note: users who have customized the ement-room-message-text face to be variable-pitch should revert that change, as it causes problems for formatted messages, and is no longer necessary. (#174. Thanks to Phil Sainty.)

Fixes

  • Edits to previous edit events are correctly sent to the server as edits to the original message event. (#230. Thanks to Phil Sainty.)
  • Completion at point works more reliably in compose buffers. (Thanks to Phil Sainty.)
  • Toggling images to fill the window body no longer triggers unintended scrolling. (Thanks to Phil Sainty.)
  • Recognition of mentions after a newline. (#267. Thanks to Phil Sainty.)
  • Newlines in ement-room-message-format-spec are considered when calculating the wrap-prefix. (Thanks to Phil Sainty.)
  • Weight of face ement-room-list-direct (now correctly bold in room list heading).

Compose buffer enhancements

  • Option ement-room-compose-buffer-display-action declares how and where a new compose buffer window should be displayed. (By default, in a new window below the associated room buffer.)
  • Option ement-room-compose-buffer-window-dedicated determines whether compose buffers will have dedicated windows.
  • Option ement-room-compose-buffer-window-auto-height causes dynamic scaling of the compose buffer window height so that the full message is visible at all times.
  • Option ement-room-compose-buffer-window-auto-height-min specifies the minimum window height when ement-room-compose-buffer-window-auto-height is enabled.
  • Option ement-room-compose-buffer-window-auto-height-max specifies the maximum window height when ement-room-compose-buffer-window-auto-height is enabled.
  • Option ement-room-compose-method chooses between minibuffer-centric or compose-buffer-centric behaviour.
  • Command ement-room-dispatch-new-message starts writing a new message using your chosen ement-room-compose-method. (Bound to RET in room buffers.)
  • Command ement-room-dispatch-new-message-alt starts writing a new message using the alternative method. (Bound to M-RET in room buffers.)
  • Command ement-room-dispatch-edit-message edits a message using your chosen ement-room-compose-method. (Bound to <insert> in room buffers.)
  • Command ement-room-dispatch-reply-to-message replies to a message using your chosen ement-room-compose-method. (Bound to S-<return> in room buffers.)
  • Command ement-room-compose-edit edits a message using a compose buffer.
  • Command ement-room-compose-reply replies to a message using a compose buffer.
  • Command ement-room-compose-send-direct sends a message directly from a compose buffer (without the minibuffer). (Bound to C-x C-s in compose buffers.)
  • Command ement-room-compose-abort kills the compose buffer and delete its window. (Bound to C-c C-k in compose buffers.)
  • Command ement-room-compose-abort-no-history does the same without adding to ement-room-message-history. (Equivalent to C-u C-c C-k.)
  • Command ement-room-compose-history-prev-message cycles backwards through ement-room-message-history. (Bound to M-p in compose buffers.)
  • Command ement-room-compose-history-next-message cycles forwards through ement-room-message-history. (Bound to M-n in compose buffers.)
  • Command ement-room-compose-history-isearch-backward initiates an isearch through ement-room-message-history. (Bound to M-r in compose buffers; continue searching with C-r or C-s.)
  • Command ement-room-compose-history-isearch-backward-regexp initiates a regexp isearch through ement-room-message-history. (Bound to C-M-r in compose buffers; continue searching with C-r or C-s.)

ement-room-self-insert-mode

  • Option ement-room-self-insert-commands determines which commands will start a new message when ement-room-self-insert-mode is enabled (defaulting to self-insert-command and yank).
  • Option ement-room-self-insert-chars determines which typed characters will start a new message when ement-room-self-insert-mode is enabled (regardless of whether they are bound to self-insert-command).
  • Option ement-room-mode-map-prefix-key defines a prefix key for accessing the full ement-room-mode-map when ement-room-self-insert-mode is enabled. (By default this key is DEL.)

Image display

  • Option ement-room-image-margin is the number of pixels of margin around image thumbnails.
  • Option ement-room-image-relief is the number of pixels of shadow rectangle around image thumbnails.
  • Option ement-room-image-thumbnail-height is the window body height multiple to use when toggling full-sized images to thumbnails (by default, 0.2).
  • Option ement-room-image-thumbnail-height-min is the minimum pixel height for thumbnail images (by default, 30 pixels).