emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/org 26f1cb77a9 1/2: org-ascii-item: Fix for alphabetica


From: ELPA Syncer
Subject: [elpa] externals/org 26f1cb77a9 1/2: org-ascii-item: Fix for alphabetical bullets
Date: Sat, 7 Oct 2023 06:58:47 -0400 (EDT)

branch: externals/org
commit 26f1cb77a9d8164843266a8bc2f653f03a529af9
Author: Ihor Radchenko <yantar92@posteo.net>
Commit: Ihor Radchenko <yantar92@posteo.net>

    org-ascii-item: Fix for alphabetical bullets
    
    * lisp/ox-ascii.el (org-ascii-item): Fix setting [@X] counter for
    alphabetical lists.
    * testing/lisp/test-ox-ascii.el:
    (test-ox-ascii/list):  Add new test.
    * testing/lisp/test-ox-latex.el (org-test-with-exported-text):
    * testing/org-test.el (org-test-with-exported-text): Move macro to be
    available across multiple test files.
    
    Reported-by: Tom Alexander <tom@fizz.buzz>
    Link: 
https://orgmode.org/list/36a62fbf-6484-456f-9537-a7aa40530068@app.fastmail.com
---
 lisp/ox-ascii.el              |  2 +-
 testing/lisp/test-ox-ascii.el | 70 +++++++++++++++++++++++++++++++++++++++++++
 testing/lisp/test-ox-latex.el | 12 --------
 testing/org-test.el           | 12 ++++++++
 4 files changed, 83 insertions(+), 13 deletions(-)

diff --git a/lisp/ox-ascii.el b/lisp/ox-ascii.el
index e323dcafa0..110bb46015 100644
--- a/lisp/ox-ascii.el
+++ b/lisp/ox-ascii.el
@@ -1486,7 +1486,7 @@ contextual information."
                                      struct
                                      (org-list-prevs-alist struct)
                                      (org-list-parents-alist struct)))))))
-              (replace-regexp-in-string "[0-9]+" num bul)))
+              (replace-regexp-in-string "[0-9A-Za-z]+" num bul)))
            (_ (let ((bul (org-list-bullet-string
                           (org-element-property :bullet item))))
                 ;; Change bullets into more visible form if UTF-8 is active.
diff --git a/testing/lisp/test-ox-ascii.el b/testing/lisp/test-ox-ascii.el
new file mode 100644
index 0000000000..fe12c0c27d
--- /dev/null
+++ b/testing/lisp/test-ox-ascii.el
@@ -0,0 +1,70 @@
+;;; test-ox-latex.el --- tests for ox-latex.el       -*- lexical-binding: t; 
-*-
+
+;; Copyright (C) 2023  Ihor Radchenko
+
+;; Author: Ihor Radchenko <yantar92@posteo.net>
+
+;; This program 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 of the License, or
+;; (at your option) any later version.
+
+;; This program 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 this program.  If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;; Tests checking validity of Org ASCII export output.
+
+;;; Code:
+
+(require 'ox-ascii nil t)
+(unless (featurep 'ox-ascii)
+  (signal 'missing-test-dependency "org-export-ascii"))
+
+
+
+(ert-deftest test-ox-ascii/list ()
+  "Test lists."
+  ;; Number counter.
+  (org-test-with-exported-text
+      'ascii
+      "1. [@3] foo"
+    (goto-char (point-min))
+    (should
+     (search-forward
+      "3. foo")))
+  ;; Number counter.  Start from 1.
+  (org-test-with-exported-text
+      'ascii
+      "3. foo"
+    (goto-char (point-min))
+    (should
+     (search-forward
+      "1. foo")))
+  ;; Alphanumeric counter.
+  (let ((org-list-allow-alphabetical t))
+    (org-test-with-exported-text
+        'ascii
+        "m. [@k] baz"
+      (goto-char (point-min))
+      (should
+       (search-forward
+        "11. baz"))))
+  ;; Start from 1.
+  (let ((org-list-allow-alphabetical t))
+    (org-test-with-exported-text
+        'ascii
+        "m. bar"
+      (goto-char (point-min))
+      (should
+       (search-forward
+        "1. bar")))))
+
+(provide 'test-ox-ascii)
+;;; test-ox-ascii.el ends here
diff --git a/testing/lisp/test-ox-latex.el b/testing/lisp/test-ox-latex.el
index 79ef8793bd..5c58cce68e 100644
--- a/testing/lisp/test-ox-latex.el
+++ b/testing/lisp/test-ox-latex.el
@@ -27,18 +27,6 @@
 (unless (featurep 'ox-latex)
   (signal 'missing-test-dependency "org-export-latex"))
 
-(defmacro org-test-with-exported-text (backend source &rest body)
-  "Run BODY in export buffer for SOURCE string via BACKEND."
-  (declare (indent 2))
-  `(org-test-with-temp-text ,source
-     (let ((export-buffer (generate-new-buffer "Org temporary export")))
-       (unwind-protect
-           (progn
-             (org-export-to-buffer ,backend export-buffer)
-             (with-current-buffer export-buffer
-               ,@body))
-         (kill-buffer export-buffer)))))
-
 
 
 (ert-deftest test-ox-latex/verse ()
diff --git a/testing/org-test.el b/testing/org-test.el
index 6030d33221..d9fe33284c 100644
--- a/testing/org-test.el
+++ b/testing/org-test.el
@@ -590,6 +590,18 @@ When FULL is non-nil, return the full name like Monday, 
Tuesday, ..."
      ((or "Sat" "Saturday") 6)
      (_ (error "Unknown day of week: %s" day)))))
 
+(defmacro org-test-with-exported-text (backend source &rest body)
+  "Run BODY in export buffer for SOURCE string via BACKEND."
+  (declare (indent 2))
+  `(org-test-with-temp-text ,source
+     (let ((export-buffer (generate-new-buffer "Org temporary export")))
+       (unwind-protect
+           (progn
+             (org-export-to-buffer ,backend export-buffer)
+             (with-current-buffer export-buffer
+               ,@body))
+         (kill-buffer export-buffer)))))
+
 (provide 'org-test)
 
 ;;; org-test.el ends here



reply via email to

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