emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] [RFC] The "c" Org macro


From: Kaushal Modi
Subject: Re: [O] [RFC] The "c" Org macro
Date: Mon, 22 May 2017 13:00:54 +0000

On Mon, May 22, 2017 at 7:47 AM Nicolas Goaziou <address@hidden> wrote:
This shouldn't happen. "1." is defined as paragraph separator (see
`org-element-paragraph-separate' and `org-element--set-regexps) so
auto-fill cannot break a line before this construct.

That's good to know and comforting :) Thanks for the explanation.
 
Per above, this should not happen. There are cases, however, that can
happen, like the macro in your ECM. Auto-fill cannot tell this is going
to make a numbered bullet.

I just tried this out and it works:

diff --git a/lisp/org-element.el b/lisp/org-element.el
index c60a56ead..4f4fc1e2c 100644
--- a/lisp/org-element.el
+++ b/lisp/org-element.el
@@ -181,7 +181,9 @@ specially in `org-element--object-lex'.")
       (?\) ")") (?. "\\.") (_ "[.)]")))
       (alpha (and org-list-allow-alphabetical "\\|[A-Za-z]")))
   (concat "\\(?:[-+*]\\|\\(?:[0-9]+" alpha "\\)" term "\\)"
-  "\\(?:[ \t]\\|$\\)"))
+  "\\(?:[ \t]\\|$\\)")) "\\|"
+                ;; n Macro
+                "\\(?:{{{n\\)" ;Don't allow auto-fill to put n macros at BOL
  "\\)\\)")
  org-element--object-regexp
  (mapconcat #'identity

With that, now the MWE auto-fills as

=====
If I wish, I can set that counter value to anything I want, like
7463: {{{n(, 7463)}}}.
=====

instead of

=====
If I wish, I can set that counter value to anything I want, like 7463: 
{{{n(, 7463)}}}.
=====

and that fixes this problem.


--

Kaushal Modi


reply via email to

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