emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: "Yury G. Kudryashov" <urkud@urkud.name>
To: emacs-orgmode@gnu.org
Subject: Edit whole session with org-edit-src-edit
Date: Sun, 08 Oct 2017 18:58:49 -0400	[thread overview]
Message-ID: <87vajpl00m.fsf@urkud.name> (raw)

Hello,

I want to use orgmode for literate programming with Coq.
I like the "edit in major mode" org-edit-src-edit feature, but it
exports only the current src block to the temprorary buffer, so it's
impossible to debug the file in the temporary buffer using coq-mode
(proofgeneral) "phrase by phrase" execution.

I think that some other languages may have similar problems. Say,
code completion works better, if the whole file is available.

I propose the following feature:

1. When the temporary buffer is created,

   - the whole session (or all the code with that will go to one file
     when tangling) is written to the buffer;
   - all the code except for the current block is marked as read-only.

2. When writing the temporary buffer back to the main file, drop the
     read-only regions.

An even more useful (though may be harder to implement) version:

1. When the temporary buffer is created,

   - then whole session is written to the temporary buffer;
   - before each block, a commented line with some meta-data (original
     buffer, line range, src-block #+NAME attribute) is inserted;
   - these commented lines are made read-only, while the blocks are left
     read-write.

2. When writing back, each block is rewritten.

This way a user may have file headers (#include in C/C++, imports in
Python etc) in one #src block, and easily modify it while editing some
"main" code in a temporary buffer.

Unfortunately, I'm new to (e)lisp, so I'm not sure whether I'll manage
to implement these features myself.
-- 
Sincerely yours,
Yury G. Kudryashov

             reply	other threads:[~2017-10-08 22:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-08 22:58 Yury G. Kudryashov [this message]
2017-10-09  2:40 ` Edit whole session with org-edit-src-edit Berry, Charles
2017-10-09 11:28   ` urkud
2017-10-10  7:25 ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87vajpl00m.fsf@urkud.name \
    --to=urkud@urkud.name \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).