Dim the font color of text in surrounding paragraphs
Go to file
Lars Tveito ffd97a5a36 Fix bug related to post-command-hook
The `post-command-hook` was made `permanent-local` in order to keep
focus mode enabled when changing major mode. Other modes relies on the
`post-command-hook` to be cleared on major mode change, causing
problems. This fix rather uses the `permanent-local-hook` to tag
functions that should not be removed from hooks.

This fixes abo-abo/swiper#755. It might fix bugs I have not been able to
reproduce, namely #10, #8 and a followup in #7.
2016-11-06 16:02:58 +01:00
demo-dark.gif Added README 2015-05-12 22:53:05 +02:00
demo-light.gif Added README 2015-05-12 22:53:05 +02:00
focus.el Fix bug related to post-command-hook 2016-11-06 16:02:58 +01:00
README.md Fixed matching parenthesis 2015-05-24 19:41:51 +02:00

MELPA

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)