From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Davison Subject: Re: possible patch: org-edit-src-code breaking window configuration Date: Sat, 07 Nov 2009 20:58:43 -0500 Message-ID: <877hu1sros.fsf@stats.ox.ac.uk> References: <871vkfw636.fsf@stats.ox.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1N6x3O-0001Vf-7p for emacs-orgmode@gnu.org; Sat, 07 Nov 2009 20:58:54 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1N6x3J-0001TN-FS for emacs-orgmode@gnu.org; Sat, 07 Nov 2009 20:58:53 -0500 Received: from [199.232.76.173] (port=55449 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N6x3J-0001TG-9H for emacs-orgmode@gnu.org; Sat, 07 Nov 2009 20:58:49 -0500 Received: from markov.stats.ox.ac.uk ([163.1.210.1]:38967) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1N6x3I-0006D8-NJ for emacs-orgmode@gnu.org; Sat, 07 Nov 2009 20:58:48 -0500 In-Reply-To: <871vkfw636.fsf@stats.ox.ac.uk> (Dan Davison's message of "Tue, 03 Nov 2009 18:18:05 -0500") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Eric Schulte Cc: Org Mode Dan Davison writes: > "Eric Schulte" writes: > >> Hi, >> >> I've noticed that org-edit-src breaks my window configuration. The >> patch below fixes this, but introduces a new global variable, and might >> not have sensible behavior if multiple source-code blocks are edited at >> once. Even so I personally prefer it's behavior to the current default >> behavior of removing all windows from the current frame. >> >> thoughts? -- Eric > > Nice. I think it's a desirable improvement to my changes. I've had a > quick test (with all 4 possible values of org-src-window-setup) and it > seemed to work as hoped. With the emphasis on 'quick' apparently. One further improvement on this line of work: at the moment we are attempting to alter window configuration when saving with C-x C-s in the edit buffer, which is having unpleasant consequences. This is fixed in branch org-src-window-setup at git://repo.or.cz/org-mode/babel.git. Dan > I guess the new variable should be defvar'd as > nil in org-edit-src? There are already a number of other not-for-users > global variables used in a similar way in org-src, so it won't be > out-of-place. > > Dan > >> >> diff --git a/lisp/org-src.el b/lisp/org-src.el >> index eba8ef3..2f578b9 100644 >> --- a/lisp/org-src.el >> +++ b/lisp/org-src.el >> @@ -193,6 +193,7 @@ to the correct language mode. When done, exit with \\[org-edit-src-exit]. >> This will remove the original code in the Org buffer, and replace it with >> the edited version." >> (interactive) >> + (setq org-edit-src-saved-temp-window-config (current-window-configuration)) >> (let ((line (org-current-line)) >> (col (current-column)) >> (case-fold-search t) >> @@ -574,7 +575,10 @@ the language, a switch telling if the content should be in a single line." >> (org-goto-line (1- (+ (org-current-line) line))) >> (org-move-to-column (if preserve-indentation col (+ col total-nindent delta))) >> (move-marker beg nil) >> - (move-marker end nil))) >> + (move-marker end nil)) >> + (when org-edit-src-saved-temp-window-config >> + (set-window-configuration org-edit-src-saved-temp-window-config) >> + (setq org-edit-src-saved-temp-window-config nil))) >> >> (defun org-edit-src-save () >> "Save parent buffer with current state source-code buffer." >> >> >> _______________________________________________ >> Emacs-orgmode mailing list >> Remember: use `Reply All' to send replies to the list. >> Emacs-orgmode@gnu.org >> http://lists.gnu.org/mailman/listinfo/emacs-orgmode