Giter Club home page Giter Club logo

olivetti's Introduction

Olivetti

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.5

Installation

The latest stable release of Olivetti is available via MELPA-stable and can be installed with:

M-x package-install RET olivetti RET

Alternately, download the latest release, move this file into your load-path and add to your .emacs/init.el file:

(require 'olivetti)

If you prefer the latest but perhaps unstable version, install via MELPA, or clone the repository into your load-path and require as above:

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

Contributing

Please report bugs and request features at: https://github.com/rnkn/olivetti/issues

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")

olivetti's People

Contributors

rnkn avatar sten0 avatar larstvei avatar nielius avatar smythp avatar walseb avatar syohex avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.