From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Kitchin Subject: Re: proposal to make C-c C-c not remove latex overlays Date: Wed, 16 Jul 2014 09:29:41 -0400 Message-ID: <85wqbd8m9m.fsf@andrew.cmu.edu> References: <87wqbf37it.fsf@andrew.cmu.edu> <877g3dsfpl.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:39226) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X7PGs-00088y-OX for emacs-orgmode@gnu.org; Wed, 16 Jul 2014 09:29:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X7PGk-0000w4-AV for emacs-orgmode@gnu.org; Wed, 16 Jul 2014 09:29:22 -0400 Received: from mail-qc0-x22b.google.com ([2607:f8b0:400d:c01::22b]:57981) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X7PGk-0000vx-5P for emacs-orgmode@gnu.org; Wed, 16 Jul 2014 09:29:14 -0400 Received: by mail-qc0-f171.google.com with SMTP id i17so749620qcy.30 for ; Wed, 16 Jul 2014 06:29:13 -0700 (PDT) In-Reply-To: <877g3dsfpl.fsf@gmail.com> (Nick Dokos's message of "Wed, 16 Jul 2014 07:31:02 -0400") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Nick Dokos Cc: emacs-orgmode@gnu.org I favor the toggling behavior. There is an org-ctrl-c-ctrl-c-hook variable that can always have functions in it that keep the current behavior, but that can be removed if they are not desired. John Nick Dokos writes: > Andreas Leha writes: > >> Hi all, >> >> John Kitchin writes: >> >>> I am using org-mode files with equations and code blocks in lectures, >>> and it is problematic that C-c C-c removes the equation overlays when >>> running a code block. First, you have to press C-c C-c twice to run the >>> block, since the first one gets rid of the equations, but then you have >>> run C-c C-x C-l to get the equations back! and the cycle repeats >>> throughout a lecture. >>> >>> I would prefer that the equations stay untouched, and that the code >>> blocks run without modifying them. >>> >>> I think the best behavior would be for C-c C-x C-l to toggle the >>> equations, and to remove the C-c C-c behavior for latex overlays >>> completely. >> >> Since this thread focusses on work arounds and local customizations so >> far, let me just say, that I completely agree here. What is the >> reasoning behind the current key binding? Is there any benefit over >> using the same key binding to toggle the state? >> > > I'm inclined to agree too: I imagine it would be very annoying after > a while. > > There are three things that C-c C-c currently undoes in an ad-hoc > fashion. The first cond clause in the function looks like this: > > ,---- > | ((or (and (boundp 'org-clock-overlays) org-clock-overlays) > | org-occur-highlights > | org-latex-fragment-image-overlays) > | (and (boundp 'org-clock-overlays) (org-clock-remove-overlays)) > | (org-remove-occur-highlights) > | (org-remove-latex-fragment-image-overlays) > | (message "Temporary highlights/overlays removed from current buffer")) > `---- > > So if there are clock overlays or occur highlights or latex fragment > image overlays, they are undone and the function is finished. This seems > like a separate issue from the main thrust of what C-c C-c does (and it > does a lot), so my inclination would be to suggest that each of the > above conditions be togglable, using the standard keybinding for each > (C-c C-x C-l for latex fragment image overlay toggling, C-c C-x C-d for > clock display - occur highlights only happen from org-goto with the "/" > keybinding, but there is no org-global keybinding I believe). > > However there is a variable that modifies that behavior: > > ,---- > | org-remove-highlights-with-change is a variable defined in `org.el'. > | Its value is t > | > | Documentation: > | Non-nil means any change to the buffer will remove temporary highlights. > | Such highlights are created by `org-occur' and `org-clock-display'. > | When nil, `C-c C-c needs to be used to get rid of the highlights. > | The highlights created by `org-preview-latex-fragment' always need > | `C-c C-c' to be removed. > `---- > > If most of us leave that variable's value at default, the ad-hoc-kery > probably does not raise its head except for latex fragments. If that's > the case, then getting rid of just latex fragment undoing in > org-ctrl-c-ctrl-c and toggling with C-c C-x C-l is probably the best > solution. It probably would be a good idea to make the handling of clock > overlays similar as well and make C-c C-x C-d toggle the clock overlay > state (I'd be inclined to take that out of org-ctrl-c-ctrl-c as well, > since I suspect that almost nobody uses it, given the variable above and > its default value - but that's only a hunch). That would leave only > occur highlights to be undone by org-ctrl-c-ctrl-c - which is ugly but > the function is a kitchen-sink kind of function anyway, so that's > probably OK. > > Alternatively, make org-ctrl-c-ctrl-c undo these things as it does > today, but only with a triple prefix arg (which afaict is not used > today). > > As Nicolas would say, WDYT? -- ----------------------------------- John Kitchin Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu