]> code.delx.au - gnu-emacs/commitdiff
* lisp/progmodes/prolog.el: Avoid indenting too much, after ":-"
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 9 Oct 2015 19:30:27 +0000 (15:30 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 9 Oct 2015 19:30:27 +0000 (15:30 -0400)
(prolog-smie-rules): Try and avoid indenting too far after ":-".

lisp/progmodes/prolog.el

index 81aeb8d0f811ec6b49ea9e90a42618f4726ceb70..61d3a3c638b770b4af8e1385cd23c1ed52e68c78 100644 (file)
@@ -988,7 +988,16 @@ This is really kludgy, and unneeded (i.e. obsolete) in Emacs>=24."
             (smie-indent-backward-token) ;Skip !
             (equal ":-" (car (smie-indent-backward-token))))
           (smie-rule-parent prolog-indent-width)))
-    (`(:after . ,(or `":-" `"-->")) prolog-indent-width)))
+    (`(:after . ":-")
+     (if (bolp)
+         (save-excursion
+           (smie-indent-forward-token)
+           (skip-chars-forward " \t")
+           (if (eolp)
+               prolog-indent-width
+             (min prolog-indent-width (current-column))))
+       prolog-indent-width))
+    (`(:after . "-->") prolog-indent-width)))
 
 \f
 ;;-------------------------------------------------------------------