Files
memex/0_inbox/in/Scrivener_Emacs_Vim/README.md
2026-03-15 14:37:05 -04:00

42 lines
2.2 KiB
Markdown

# Vim Valley Emacs config for writing
# This is a basic emacs configuration for writing with Org files
# and Vim keybindings.
# It aims to replicate some features of Scrivener, while remaining
# completely keyboard driven.
# This emacs config was originally from the Brave Clojure website at
# http://www.braveclojure.com/basic-emacs/
# It's been heavily modified but lots of Daniel's explanatory comments
# have been retained in the config files. Big thanks to Daniel
# Higginbotham, and check out the Brave Clojure website if you're interested
# in learning Clojure.
## Organization
I've tried to separate everything logically and document the purpose
of every line. [`init.el`](./init.el) acts as a kind of table of
contents. It's a good idea to eventually go through `init.el` and the
files under the `customizations` directory so that you know exactly
what's going on.
## Supporting CSS, HTML, JS, etc.
Emacs has decent support for CSS, HTML, JS, and many other file types out of the box, but if you want better support, then have a look at [my personal emacs config's init.el](https://github.com/flyingmachine/emacs.d/blob/master/init.el). It's meant to read as a table of contents. The emacs.d as a whole adds the following:
* [Customizes js-mode and html editing](https://github.com/flyingmachine/emacs.d/blob/master/customizations/setup-js.el)
* Sets indentation level to 2 spaces for JS
* enables subword-mode so that M-f and M-b break on capitalization changes
* Uses `tagedit` to give you paredit-like functionality when editing html
* adds support for coffee mode
* [Uses enh-ruby-mode for ruby editing](https://github.com/flyingmachine/emacs.d/blob/master/customizations/setup-ruby.el). enh-ruby-mode is a little nicer than the built-in ruby-mode, in my opinion.
* Associates many filenames and extensions with enh-ruby-mode (.rb, .rake, Rakefile, etc)
* Adds keybindings for running specs
* Adds support for YAML and SCSS using the yaml-mode and scss-mode packages
In general, if you want to add support for a language then you should be able to find good instructions for it through Google. Most of the time, you'll just need to install the "x-lang-mode" package for it.