All Projects → rnkn → Olivetti

rnkn / Olivetti

Licence: gpl-3.0
Emacs minor mode for a nice writing environment

Projects that are alternatives of or similar to Olivetti

Binder
Emacs global minor mode facilitating multi-file writing projects
Stars: ✭ 104 (-81.23%)
Mutual labels:  emacs, writing
Academic Phrases
Bypass that mental block when writing your papers.
Stars: ✭ 244 (-55.96%)
Mutual labels:  emacs, writing
Emacs Powerthesaurus
Powerthesaurus integration for Emacs
Stars: ✭ 132 (-76.17%)
Mutual labels:  emacs, writing
Org Transclusion
(alpha) Emacs package to enable transclusion with Org Mode
Stars: ✭ 251 (-54.69%)
Mutual labels:  emacs, writing
Writingwithemacs
Tips, Examples, and Resources for Writing with Emacs
Stars: ✭ 150 (-72.92%)
Mutual labels:  emacs, writing
Fountain Mode
Emacs major mode for screenwriting in Fountain plain-text markup
Stars: ✭ 288 (-48.01%)
Mutual labels:  emacs, writing
Portacle
A portable common lisp development environment
Stars: ✭ 494 (-10.83%)
Mutual labels:  emacs
Deft
Deft for Emacs
Stars: ✭ 521 (-5.96%)
Mutual labels:  emacs
Remacs
Rust ❤️ Emacs
Stars: ✭ 4,503 (+712.82%)
Mutual labels:  emacs
Spacemacs Private
My Spacemacs config
Stars: ✭ 480 (-13.36%)
Mutual labels:  emacs
Emacs Elisp Programming
Tutorial about programming Elisp and Emacs text editor customization.
Stars: ✭ 548 (-1.08%)
Mutual labels:  emacs
Emacs Ng
A new approach to Emacs - Including TypeScript, Threading, Async I/O, and WebRender.
Stars: ✭ 525 (-5.23%)
Mutual labels:  emacs
Ggtags
Emacs frontend to GNU Global source code tagging system.
Stars: ✭ 515 (-7.04%)
Mutual labels:  emacs
Vim Colors Pencil
Light (& dark) color scheme inspired by iA Writer
Stars: ✭ 498 (-10.11%)
Mutual labels:  writing
Php Mode
A powerful and flexible Emacs major mode for editing PHP scripts
Stars: ✭ 522 (-5.78%)
Mutual labels:  emacs
Elsa
Emacs Lisp Static Analyzer
Stars: ✭ 485 (-12.45%)
Mutual labels:  emacs
Crux
A Collection of Ridiculously Useful eXtensions for Emacs
Stars: ✭ 543 (-1.99%)
Mutual labels:  emacs
Spacemacs Theme
Light and dark theme for spacemacs that supports GUI and terminal
Stars: ✭ 483 (-12.82%)
Mutual labels:  emacs
Import Js
A tool to simplify importing JS modules
Stars: ✭ 511 (-7.76%)
Mutual labels:  emacs
Dotfiles
Let's be honest: mostly Emacs.
Stars: ✭ 536 (-3.25%)
Mutual labels:  emacs

Olivetti

MELPA Stable MELPA

A simple Emacs minor mode for a nice writing environment.

olivetti screenshot

Features

  • Set a desired text body width to automatically resize window margins to keep the text comfortably in the middle of the window.
  • Text body width can be the number of characters (an integer) or a fraction of the window width (a float between 0.0 and 1.0).
  • Interactively change body width with:
    olivetti-shrink C-c { { { ...
    olivetti-expand C-c } } } ...
    olivetti-set-width C-c \
  • If olivetti-body-width is an integer, the text body width will scale with use of text-scale-mode, whereas if a fraction (float) then the text body width will remain at that fraction.
  • Optionally remember the state of visual-line-mode on entry and recall its state on exit.

Olivetti keeps everything it does buffer-local, so you can write prose in one buffer and code in another, side-by-side in the same frame. For those looking for a hardcore distraction-free writing mode with a much larger scope, I recommend writeroom-mode: https://github.com/joostkremers/writeroom-mode.

Requirements

  • Emacs 24.4
  • seq 2.20 (part of Emacs 25 and later)

Installation

The latest stable release of Olivetti is available via MELPA-stable. First, add MELPA-stable to your package archives:

M-x customize-option RET package-archives RET

Insert an entry named melpa-stable with URL: https://stable.melpa.org/packages/

You can then find the latest stable version of olivetti in the list returned by:

M-x list-packages RET

If you prefer the latest but perhaps unstable version, do the above using MELPA.

Advanced Installation

Download the latest tagged release, move this file into your load-path and add to your init.el file:

(require 'olivetti)

If you wish to contribute to or alter Olivetti's code, clone the repository into your load-path and require as above:

git clone https://github.com/rnkn/olivetti.git

Bugs and Feature Requests

Send me an email (address in the package header). For bugs, please ensure you can reproduce with:

$ emacs -Q -l olivetti.el

Hints

To always use a different width for a specific file, set a File Variable:

M-x add-file-local-variable RET olivetti-body-width RET 66 RET

See (info "(emacs) File Variables")

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].