diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2020-05-29 15:01:58 -0400 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2020-05-29 15:01:58 -0400 |
commit | 187fe4310834af72ecfcc5068af464c2e5f14b9a (patch) | |
tree | 6de4aaed6b56dfeae59e508583569dc18d31256f /lisp/emacs-lisp/smie.el | |
parent | ba292ea330b55b06f4742e4aae397ef64086d3dc (diff) | |
download | emacs-187fe4310834af72ecfcc5068af464c2e5f14b9a.tar.gz emacs-187fe4310834af72ecfcc5068af464c2e5f14b9a.tar.bz2 emacs-187fe4310834af72ecfcc5068af464c2e5f14b9a.zip |
* lisp/emacs-lisp/package.elm lisp/emacs-lisp/smie.el: Fix indent
Use the new "space after paren" convention to get the desired indentation
Diffstat (limited to 'lisp/emacs-lisp/smie.el')
-rw-r--r-- | lisp/emacs-lisp/smie.el | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/smie.el b/lisp/emacs-lisp/smie.el index 60d8fa591e9..38a7b8b54c9 100644 --- a/lisp/emacs-lisp/smie.el +++ b/lisp/emacs-lisp/smie.el @@ -52,6 +52,13 @@ ;; error because the parser just automatically does something. Better yet, ;; we can afford to use a sloppy grammar. +;; The benefits of this approach were presented in the following article, +;; which includes a kind of tutorial to get started with SMIE: +;; +;; SMIE: Weakness is Power! Auto-indentation with incomplete information +;; Stefan Monnier, <Programming> Journal 2020, volumn 5, issue 1. +;; doi: 10.22152/programming-journal.org/2020/5/1 + ;; A good background to understand the development (especially the parts ;; building the 2D precedence tables and then computing the precedence levels ;; from it) can be found in pages 187-194 of "Parsing techniques" by Dick Grune @@ -63,6 +70,7 @@ ;; Since then, some of that code has been beaten into submission, but the ;; smie-indent-keyword is still pretty obscure. + ;; Conflict resolution: ;; ;; - One source of conflicts is when you have: @@ -1356,9 +1364,9 @@ Only meaningful when called from within `smie-rules-function'." (funcall smie-rules-function :elem 'basic)) smie-indent-basic)) -(defun smie-indent--rule (method token - ;; FIXME: Too many parameters. - &optional after parent base-pos) +(defun smie-indent--rule ( method token + ;; FIXME: Too many parameters. + &optional after parent base-pos) "Compute indentation column according to `smie-rules-function'. METHOD and TOKEN are passed to `smie-rules-function'. AFTER is the position after TOKEN, if known. |