auctex-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[AUCTeX-diffs] GNU AUCTeX branch, master, updated. d2dfab67e5fb37a6dfff1


From: Mosè Giordano
Subject: [AUCTeX-diffs] GNU AUCTeX branch, master, updated. d2dfab67e5fb37a6dfff1dd40cc82dc63013a2a8
Date: Sun, 21 May 2017 17:15:50 -0400 (EDT)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU AUCTeX".

The branch, master has been updated
       via  d2dfab67e5fb37a6dfff1dd40cc82dc63013a2a8 (commit)
      from  00c76fb740c5b4078d4efd2b544971a95d171a86 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit d2dfab67e5fb37a6dfff1dd40cc82dc63013a2a8
Author: Mosè Giordano <address@hidden>
Date:   Fri Jan 20 21:34:53 2017 +0100

    Fix indentation in ConTeXt mode after indented optional argument
    
    * context.el (ConTeXt-find-indent): Fix indentation.  Requested by Henri 
Menke.
    * tests/context/context-test.el:
    * tests/context/context-indentation-in.tex:
    * tests/context/context-indentation-out.tex: New test files.

diff --git a/context.el b/context.el
index 2f302b3..d322afc 100644
--- a/context.el
+++ b/context.el
@@ -1220,7 +1220,10 @@ else.  There might be text before point."
        (condition-case err
           (progn
             (backward-sexp 1)
-            (while (> (current-column) (current-indentation))
+            (while (or (> (current-column) (current-indentation))
+                       ;; Continue going back if we are
+                       ;; at a hanging optional group.
+                       (looking-at (regexp-quote ConTeXt-optop)))
               (backward-sexp 1)))
         (scan-error
          (setq up-list-pos (nth 2 err))))
diff --git a/tests/context/context-indentation-in.tex 
b/tests/context/context-indentation-in.tex
new file mode 100644
index 0000000..c1c3aed
--- /dev/null
+++ b/tests/context/context-indentation-in.tex
@@ -0,0 +1,24 @@
+\setuphead
+[section]
+[before={\blank[big]},
+after={\blank[medium]}]
+
+\setuphead
+[subsection]
+  [
+before={\blank[big]},
+after={\blank[medium]},
+]
+
+\starttext
+
+  \startitemize[a]
+  \item Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
+tempor incididunt ut labore et dolore magna aliqua.
+  \item Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris 
nisi ut
+  aliquip ex ea commodo consequat.
+  \item Duis aute irure dolor in reprehenderit in voluptate velit esse cillum
+    dolore eu fugiat nulla pariatur.
+  \stopitemize
+
+\stoptext
diff --git a/tests/context/context-indentation-out.tex 
b/tests/context/context-indentation-out.tex
new file mode 100644
index 0000000..e963574
--- /dev/null
+++ b/tests/context/context-indentation-out.tex
@@ -0,0 +1,24 @@
+\setuphead
+  [section]
+  [before={\blank[big]},
+    after={\blank[medium]}]
+
+\setuphead
+  [subsection]
+  [
+    before={\blank[big]},
+    after={\blank[medium]},
+  ]
+
+\starttext
+
+\startitemize[a]
+\item Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
+  tempor incididunt ut labore et dolore magna aliqua.
+\item Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi 
ut
+  aliquip ex ea commodo consequat.
+\item Duis aute irure dolor in reprehenderit in voluptate velit esse cillum
+  dolore eu fugiat nulla pariatur.
+\stopitemize
+
+\stoptext
diff --git a/tests/context/context-test.el b/tests/context/context-test.el
new file mode 100644
index 0000000..05647e4
--- /dev/null
+++ b/tests/context/context-test.el
@@ -0,0 +1,56 @@
+;;; context-test.el --- tests for ConTeXt mode
+
+;; Copyright (C) 2017 Free Software Foundation, Inc.
+
+;; This file is part of AUCTeX.
+
+;; AUCTeX is free software; you can redistribute it and/or modify it
+;; under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 3, or (at your option)
+;; any later version.
+
+;; AUCTeX is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;; General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with AUCTeX; see the file COPYING.  If not, write to the Free
+;; Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+;; 02110-1301, USA.
+
+;;; Code:
+
+(require 'ert)
+(require 'context)
+
+(defun AUCTeX-set-ert-path (&rest sym-val)
+  "Set first element of SYM-VAL to the next one, and so on.
+
+The value is the path to the test file, make sure it is expanded
+in the right directory even when the ERT test from the command
+line and from another directory."
+  (while sym-val
+    (set (pop sym-val)
+        (expand-file-name (pop sym-val)
+                          (when load-file-name
+                            (file-name-directory load-file-name))))))
+
+(AUCTeX-set-ert-path
+ 'ConTeXt-indent-test/in
+ "context-indentation-in.tex"
+ 'ConTeXt-indent-test/out
+ "context-indentation-out.tex")
+
+(ert-deftest ConTeXt-indent ()
+  (should (string=
+           (with-temp-buffer
+             (insert-file-contents ConTeXt-indent-test/in)
+             (ConTeXt-mode)
+             (indent-region (point-min) (point-max))
+             (buffer-string))
+           (with-temp-buffer
+             (insert-file-contents ConTeXt-indent-test/out)
+             (buffer-string)))))
+
+;;; context-test.el ends here

-----------------------------------------------------------------------

Summary of changes:
 context.el                                |  5 ++-
 tests/context/context-indentation-in.tex  | 24 +++++++++++++
 tests/context/context-indentation-out.tex | 24 +++++++++++++
 tests/context/context-test.el             | 56 +++++++++++++++++++++++++++++++
 4 files changed, 108 insertions(+), 1 deletion(-)
 create mode 100644 tests/context/context-indentation-in.tex
 create mode 100644 tests/context/context-indentation-out.tex
 create mode 100644 tests/context/context-test.el


hooks/post-receive
-- 
GNU AUCTeX



reply via email to

[Prev in Thread] Current Thread [Next in Thread]