Olivetti for Debian
-------------------

In v1.8.0 Olivetti's upstream changed olivetti-shrink and
olivetti-expand default keybindings from 'C-[' and 'C-]' to 'C-{' and
'C-}'.  This goes against the principle of least surprise and disrupts
two years of user habit, so Debian's elpa-olivetti package has a patch
to restore the old defaults.  Olivetti v2.0.0 deprecated 'C-\'
(olivetti-set-width) in favour of the less ergonomic 'C-|', so the
patch was updated to retain the old value.  On an ANSI keyboard, 'C-|'
makes sense when using 'C-{' and 'C-}', but as the later have been
patched out, accepting the future removal of 'C-\' and its replacement
'C-|' would introduce an inconsistency to Olivetti for Debian.

Both upstream and Debian's Olivetti keymap conflict with org-mode's:

    C-c {    org-table-toggle-formula-debugger
    C-c }    org-table-toggle-coordinate-overlays

    or

    C-c [    org-agenda-file-to-front
    C-c ]    org-remove-file

Org-mode users who require keybindings for these functions when
editing Org buffers in combination with olivetti-mode should add
something like the following to their Emacs configuration:

(defun olivetti-org-compat-keymap ()
  (let ((map (make-sparse-keymap)))
    (set-keymap-parent map olivetti-mode-map)
    (define-key olivetti-mode-map (kbd "C-c C--") #'olivetti-shrink)
    (define-key olivetti-mode-map (kbd "C-c C-=") #'olivetti-expand)))

(add-hook 'olivetti-mode-hook 'olivetti-org-compat-keymap)

 -- Nicholas D Steeves <sten@debian.org>, Mon, 13 Sep 2021 17:37:04 -0400
