* Editing Emacs buffer with external editor
@ 2021-05-22 20:22 Jean Louis
2021-05-22 20:31 ` Jean Louis
0 siblings, 1 reply; 2+ messages in thread
From: Jean Louis @ 2021-05-22 20:22 UTC (permalink / raw)
To: Help GNU Emacs
For those people who wish edit Emacs buffers with external editor
within Emacs editing session:
(defcustom rcd-external-editor "notepadqq"
"The external editor as an option for some functions"
:group 'rcd
:type 'string)
(defun rcd-edit-with-external-editor (&optional text)
"Editing with external editor as defined in `rcd-external-editor'.
It will either edit the optional TEXT as string
argument. Otherwise it will edit the current buffer and replace
it with the result."
(interactive)
(let* ((buffer-or-text (if text nil t))
(text (if buffer-or-text (buffer-substring-no-properties (point-min) (point-max)) text))
(point (point))
;; (mode major-mode)
(file (concat (or (getenv "TMPDIR") "/tmp/") "temp-file")))
(string-to-file-force text file)
(call-process rcd-external-editor nil nil nil file)
(if buffer-or-text
(progn
(erase-buffer)
(insert (file-to-string file))
(goto-char point))
(file-to-string file))))
Jean
Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns
Sign an open letter in support of Richard M. Stallman
https://stallmansupport.org/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-05-22 20:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-05-22 20:22 Editing Emacs buffer with external editor Jean Louis
2021-05-22 20:31 ` Jean Louis
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.