emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [feature] prepend comment char before org-babel-ref
@ 2018-01-24  4:24 numbchild
  2018-01-24 13:40 ` Nicolas Goaziou
  0 siblings, 1 reply; 9+ messages in thread
From: numbchild @ 2018-01-24  4:24 UTC (permalink / raw)
  To: Org-mode

[-- Attachment #1: Type: text/plain, Size: 1559 bytes --]

I'm currently using this advice:
```elisp
;;; prepend comment char ahead of `org-babel-ref'.
;; auto prefix with comment char when create code ref in src block with
`org-store-link'.
(defun org-babel-ref-prepend-comment-char (arg &optional interactive?)
  "Prepend comment chart in Org-mode src code block."
  (when (org-src-edit-buffer-p)
    (comment-dwim nil)
    (insert " ")))

(advice-add 'org-store-link :before #'org-babel-ref-prepend-comment-char)
```

There is another solution but not work:
```elisp
;;; Another implement solution.
(defun org-src-coderef-format (&optional element)
  (cond
   ((and element (org-element-property :label-fmt element)))
   ((org-src-edit-buffer-p) (org-src-do-at-code-block
(org-src-coderef-format)))
   ((org-element-property :label-fmt (org-element-at-point)))
   (t org-coderef-label-format)))

(defun org-src-coderef-prepend-comment-char (args)
  "Prepend comment chart in Org-mode src code block."
  (when (org-src-edit-buffer-p)
    (comment-dwim nil)
    (insert " ")))

(advice-add 'org-src-coderef-format :filter-return
            #'org-src-coderef-prepend-comment-char)
```

I think this function should be in Org-mode itself.
Because when you're editing the source code, will not want this src-coderef
like `(ref:example)` be editable. It should be in comment.

[stardiviner]           <Hack this world!>      GPG key ID: 47C32433
IRC(freeenode): stardiviner                     Twitter:  @numbchild
Key fingerprint = 9BAA 92BC CDDD B9EF 3B36  CB99 B8C4 B8E5 47C3 2433
Blog: http://stardiviner.github.io/

[-- Attachment #2: Type: text/html, Size: 2933 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-01-28  9:52 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-24  4:24 [feature] prepend comment char before org-babel-ref numbchild
2018-01-24 13:40 ` Nicolas Goaziou
2018-01-25 13:12   ` numbchild
2018-01-25 20:19     ` Nicolas Goaziou
2018-01-26 12:34       ` numbchild
2018-01-26 12:35         ` numbchild
2018-01-27 10:56         ` Nicolas Goaziou
2018-01-27 10:58           ` Nicolas Goaziou
2018-01-28  9:52             ` numbchild

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).