Nico, > I meant zero-width space, not non-breaking space. Note that it can be > used in other places to escape special characters, e.g., verbatim > markup.
ah. how does one enter a zero-width space in emacs/org-mode? also, i'm curious about how it looks on the screen. (for me, i'd want it to look, on the screen, *very* obvious that *something* is there.) i also apologize that the patch i sent before is incomplete -- i forgot to modify a bit of "src_" processing; a new attempt is below. (not sure if that format is suitable.) cheers, Greg ----
>From e0337aabb13fabcefbb0a9fd65e8d4c9bcd412ee Mon Sep 17 00:00:00 2001 From: Greg Minshall <minsh...@acm.org> Date: Wed, 31 Jan 2018 20:38:35 +0530 Subject: [PATCH 1/2] use '#' as a "paste" character (for call_ and src_) --- lisp/org-element.el | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lisp/org-element.el b/lisp/org-element.el index 5af2d6e..5fc3b2d 100644 --- a/lisp/org-element.el +++ b/lisp/org-element.el @@ -162,7 +162,7 @@ specially in `org-element--object-lex'.") "\\\\\\(?:[a-zA-Z[(]\\|\\\\[ \t]*$\\|_ +\\)" ;; Objects starting with raw text: inline Babel ;; source block, inline Babel call. - "\\(?:call\\|src\\)_")) + "#?\\(?:call\\|src\\)_")) "\\|"))) (org-element--set-regexps) @@ -2878,7 +2878,7 @@ Assume point is at the beginning of the babel call." (save-excursion (catch :no-object (when (let ((case-fold-search nil)) - (looking-at "call_\\([^ \t\n[(]+\\)[([]")) + (looking-at "#?\\<call_\\([^ \t\n[(]+\\)[([]")) (goto-char (match-end 1)) (let* ((begin (match-beginning 0)) (call (match-string-no-properties 1)) @@ -4383,10 +4383,12 @@ to an appropriate container (e.g., a paragraph)." (let ((result (match-string 0))) (setq found (cond - ((string-prefix-p "call_" result t) + ((or (string-prefix-p "call_" result t) + (string-prefix-p "#call_" result t)) (and (memq 'inline-babel-call restriction) (org-element-inline-babel-call-parser))) - ((string-prefix-p "src_" result t) + ((or (string-prefix-p "src_" result t) + (string-prefix-p "#src_" result t)) (and (memq 'inline-src-block restriction) (org-element-inline-src-block-parser))) (t -- 2.7.4 >From b032d0860431ff29e7136145605d4f3d981d5301 Mon Sep 17 00:00:00 2001 From: Greg Minshall <minsh...@acm.org> Date: Wed, 31 Jan 2018 22:53:06 +0530 Subject: [PATCH 2/2] oops, forgot (looking-at .*src_...) --- lisp/org-element.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/org-element.el b/lisp/org-element.el index 5fc3b2d..7f70f4a 100644 --- a/lisp/org-element.el +++ b/lisp/org-element.el @@ -2932,7 +2932,7 @@ Assume point is at the beginning of the inline src block." (save-excursion (catch :no-object (when (let ((case-fold-search nil)) - (looking-at "src_\\([^ \t\n[{]+\\)[{[]")) + (looking-at "#?\\<src_\\([^ \t\n[{]+\\)[{[]")) (goto-char (match-end 1)) (let ((begin (match-beginning 0)) (language (match-string-no-properties 1)) -- 2.7.4