all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* 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.