Lars Tveito
bfb6aaf8ad
Addresses #11. Focus mode will no longer make any variables `permanent-local'. On major mode change `focus-terminate' is run so that the overlays are removed. |
||
---|---|---|
demo-dark.gif | ||
demo-light.gif | ||
focus.el | ||
README.md |
Focus
Focus provides focus-mode
that dims the text of surrounding sections, similar to iA Writer's Focus Mode.
Installation
You can install Focus using elpa. It's available on melpa:
M-x package-install focus
The package has only been tried on Emacs 24.4 and 24.5, but should work on Emacs 24 or higher.
Usage
Enable the focus-mode
with M-x focus-mode .
Also, focus-read-only-mode
is provided, which is a mode optimized for continuous reading. It inhibits change in the buffer, hides the cursor and provides bindings for moving between things (defined in Thing At Point). One can toggle focus-read-only-mode
with M-x focus-read-only-mode or C-c C-q if focus-mode
is enabled.
Some bindings for simple navigation and exiting focus-read-only-mode
are provided.
Keybinding | Description |
---|---|
n | Jump to next thing |
SPC | Jump to next thing |
p | Jump to previous thing |
S-SPC | Jump to previous thing |
i | Exit focus-read-only-mode |
q | Exit focus-read-only-mode |
Configuring
The amount of dimness can be customized by setting the focus-dimness
variable, where a positive integer indicates a more dim color (i.e. more blended with the background color of your theme), and a negative integer indicates a less dim color.
Focus uses the Thing At Point library to choose what section should be in focus. By default, modes derived from prog-mode
uses defun
, and modes derived from text-mode
uses sentence
. This a customizable by setting the focus-mode-to-thing
variable, which is a list containing pairs on the form (mode . thing)
.
Example
This is what it looks like:
Light Theme (leuven) | Dark Theme (monokai) |
---|---|