]> code.delx.au - gnu-emacs-elpa/blobdiff - README.md
Update email and GH username.
[gnu-emacs-elpa] / README.md
index 0fbd793fddfe4bfce4a8e3f301a416d3441ae16f..8abb380823aaf773cf3bc6d54b415350910cb3d3 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,5 +1,6 @@
 aggressive-indent-mode
 ======================
+(_[Wanna say thank you?](https://gratipay.com/Malabarba/)_)
 
 `electric-indent-mode` is enough to keep your code nicely aligned when
 all you do is type. However, once you start shifting blocks around,
@@ -13,10 +14,10 @@ than `electric-indent-mode`.
 ### Demonstration ###
 
 - An example of Lisp mode (Emacs Lisp):
-![aggressive-indent](aggressive-indent.gif)
+![Lisp Code Example](lisp-example.gif)
 
-- An example of non-Lisp mode (C++):
-![aggressive-indent](aggressive-indent-non-lisp.gif)
+- An example of non-Lisp mode (C):
+![C Code Example](c-example.gif)
 
 ### Instructions ###
 
@@ -36,14 +37,28 @@ every programming mode, you can do something like:
     (global-aggressive-indent-mode 1)
     (add-to-list 'aggressive-indent-excluded-modes 'html-mode)
 
-### Manual Installation ###
+#### Manual Installation ####
 
 If you don't want to install from Melpa, you can download it manually,
 place it in your `load-path` along with its two dependencies:
 
 - [Names](https://github.com/Bruce-Connor/names/)
-- and `cl-lib`.
+- and `cl-lib` (which you should already have if your `emacs-version` is at least 24.3).
 
 Then require it with:
 
     (require 'aggressive-indent)
+
+### Customization ###
+
+The variable `aggressive-indent-dont-indent-if` lets you customize
+when you **don't** want indentation to happen.
+For instance, if you think it's annoying that lines jump around in
+`c++-mode` because you haven't typed the `;` yet, you could add the
+following clause:
+
+    (add-to-list
+     'aggressive-indent-dont-indent-if
+     '(and (derived-mode-p 'c++-mode)
+           (null (string-match "\\([;{}]\\|\\b\\(if\\|for\\|while\\)\\b\\)"
+                               (thing-at-point 'line)))))