Skip to content

Latest commit

 

History

History
57 lines (50 loc) · 3.01 KB

README.org

File metadata and controls

57 lines (50 loc) · 3.01 KB

Emacs Presentation Mode

Presentation mode is a global minor mode to zoom characters. This mode applies the effect of text-scale-mode to all buffers. This feature help you to present Emacs edit / operation to the audience in front of the screen.

./emacs-presentation.jpg

How to use

  1. Execute M-x presentation-mode to start the presentation.
  2. Adjust scale size by C-x C-+ or C-x C-- See https://www.gnu.org/software/emacs/manual/html_node/emacs/Text-Scale.html
  3. After the presentation, execute M-x presentation-mode again.
  4. And then execute M-x presentation-mode again, the last scale will be reproduced.
  5. If you want to persistize its size as the default size of presentation-mode after restarting Emacs, set presentation-default-text-scale.

Notice

Not for “persistent font size change”

It is well known that how to change the font size of Emacs in GUI is difficult. However, this mode is NOT intended for permanent font size change.

Customization

You can switch modes for screen decoration by defining hook for on/off.

(defun my-presentation-on ()
  (helm-mode -1)
  ;; (global-display-line-numbers-mode -1)
  (ido-ubiquitous-mode 1)
  (bind-key "M-x" #'smex))

(defun my-presentation-off ()
  (ido-ubiquitous-mode -1)
  ;; (global-display-line-numbers-mode 1)
  (helm-mode 1)
  (bind-key "M-x" #'helm-smex))

(add-hook 'presentation-on-hook #'my-presentation-on)
(add-hook 'presentation-off-hook #'my-presentation-off)

Typically it is on/off of display-line-numbers-mode (or linum-mode) (although I do not use it). I normally use Helm, but I think that IDO is more compact and easy to see during presentation.

Difference from other methods

vs GlobalTextScaleMode (Emacs Wiki)

Although the content of this article is simple, it does not provide a way to recover buffers.

vs moom

moom package has flexible frame control and font size change function. Its font size change function is controlled by a mechanism different from presentation.el.

default-text-scale package is an implementation that replaces text-scale-mode. This package is probably not compatible with presentation.el, but please use this whenever you want to synchronize font size at all times, not only for presentation use.

These packages are simple presentations using org-mode. By using these with org-babel, it may be possible to perform live coding of arbitrary languages.

Video

./emacs-presentation.gif