emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: phillip.lord@newcastle.ac.uk (Phillip Lord)
To: John Kitchin <johnrkitchin@gmail.com>
Cc: Org Mode List <emacs-orgmode@gnu.org>
Subject: Re: save folded state
Date: Tue, 27 Jan 2015 23:26:57 +0000	[thread overview]
Message-ID: <87k307x0se.fsf@newcastle.ac.uk> (raw)
In-Reply-To: <m2vbjtrqkz.fsf@gmail.com> (John Kitchin's message of "Mon, 26 Jan 2015 19:54:04 -0500")


You mean programmatically? Is folding not just implemented with
invisible overlays? If so, why do you need to change this to get
context?

You can try setting buffer-invisibility-spec temporarily. For example,
run this function in a folded org-mode buffer.

(defun temp ()
  (interactive)
  (message "invisibility spec stuff")
  (let ((buffer-invisibility-spec '()))
    (message "sitting")
    (sit-for 5))
  (message "done"))

It unfolds everything but having the display engine ignore all
overlays/text properties.

If you want to do this interactively, and you will forgive the plug, my
own package, lentic, would enable you to do this. You can open up a
second buffer which has the same text as the first, but could be folded
completely independently of the original. At the moment, you only get
one copy, but I'll expand that to any number at some point. When you're
finished kill the copy, and all the changed folding goes with it.

Phil


John Kitchin <johnrkitchin@gmail.com> writes:

> I am trying to map over a buffer with headlines in various states of
> folded, and get context around certain elements. I find I need to fully
> expand the buffer to get the context in the way I am currently doing it
> (e.g. getting the lines around the element), but I would like to put the
> buffer back to the way it was when I am finished. This is not done with
> the usual macros like save-excursion, save-restriction, etc... Is there
> a way to do this other than a temp buffer?
>
> thanks,
>
> --
> Professor John Kitchin
> Doherty Hall A207F
> Department of Chemical Engineering
> Carnegie Mellon University
> Pittsburgh, PA 15213
> 412-268-7803
> @johnkitchin
> http://kitchingroup.cheme.cmu.edu

  reply	other threads:[~2015-01-27 23:27 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-27  0:54 save folded state John Kitchin
2015-01-27 23:26 ` Phillip Lord [this message]
2015-01-28  0:27   ` John Kitchin
2015-02-02 12:50     ` Phillip Lord

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=87k307x0se.fsf@newcastle.ac.uk \
    --to=phillip.lord@newcastle.ac.uk \
    --cc=emacs-orgmode@gnu.org \
    --cc=johnrkitchin@gmail.com \
    /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).