From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: Gtk tabs in emacs, new branch Date: Sat, 24 Apr 2010 21:45:45 +0300 Organization: JURTA Message-ID: <87eii4665i.fsf@mail.jurta.org> References: <4BB4CF6B.2000007@alice.it> <4BC0F715.2060605@alice.it> <45EB8DD4-B0F8-4FB3-941F-13FADA4DAD66@swipnet.se> <4BC1854B.2060409@alice.it> <4BC1A9D2.8050607@swipnet.se> <4BC206C0.2010202@alice.it> <87fx2pdvfq.fsf@mail.jurta.org> <87y6gg95ad.fsf@mail.jurta.org> <4BCF2218.8090107@swipnet.se> <87zl0voqe2.fsf@mail.jurta.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1272135947 11568 80.91.229.12 (24 Apr 2010 19:05:47 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 24 Apr 2010 19:05:47 +0000 (UTC) Cc: Jan =?iso-8859-1?Q?Dj=E4rv?= , Emacs To: Juanma Barranquero Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Apr 24 21:05:46 2010 connect(): No such file or directory Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1O5kfh-0005Iz-IR for ged-emacs-devel@m.gmane.org; Sat, 24 Apr 2010 21:05:45 +0200 Original-Received: from localhost ([127.0.0.1]:59972 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O5kfg-0002Sw-W9 for ged-emacs-devel@m.gmane.org; Sat, 24 Apr 2010 15:05:45 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1O5kdB-0001PI-GB for emacs-devel@gnu.org; Sat, 24 Apr 2010 15:03:09 -0400 Original-Received: from [140.186.70.92] (port=46953 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O5kd9-0000on-QU for emacs-devel@gnu.org; Sat, 24 Apr 2010 15:03:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1O5kWi-0006rW-TJ for emacs-devel@gnu.org; Sat, 24 Apr 2010 14:56:30 -0400 Original-Received: from smtp-out1.starman.ee ([85.253.0.3]:52302 helo=mx1.starman.ee) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O5kWi-0006qm-JN for emacs-devel@gnu.org; Sat, 24 Apr 2010 14:56:28 -0400 X-Virus-Scanned: by Amavisd-New at mx1.starman.ee Original-Received: from mail.starman.ee (82.131.28.129.cable.starman.ee [82.131.28.129]) by mx1.starman.ee (Postfix) with ESMTP id C767A3F413E; Sat, 24 Apr 2010 21:56:21 +0300 (EEST) In-Reply-To: (Juanma Barranquero's message of "Thu, 22 Apr 2010 18:20:40 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (x86_64-pc-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:124176 Archived-At: >> I've committed the initial workable >> version of `set-window-configuration-from-sexp' to the x-tabs branch. >> At least, it restores window configurations saved in another session. > > This is generally useful, i.e., if it works it should perhaps go to the trunk. Before moving it to the trunk, I'd like first to make sure that saving tabs to the desktop works reliably. For example, I realized that functions `current-window-configuration-to-sexp' and `set-window-configuration-from-sexp' are not suitable to save tabs because their window configurations are kept in #. There should be another set of functions like `(window-configuration-to-sexp #)' and `(window-configuration-from-sexp sexp)' that returns #. This means that the returned Lisp expression will contain a list of windows (where `parent' and `prev' refer to the index of the window in this list) instead of the window hierarchy. Maybe this is a good thing. E.g. (window-configuration-to-sexp (current-window-configuration)) => (window-configuration (frame-cols . 196) (frame-lines . 77) (frame-menu-bar-lines . 1) (frame-tool-bar-lines . 4) (frame-tab-bar-lines . 0) (minibuf-scroll-window) (minibuf-selected-window) (saved-windows (window (left-col . 0) (top-line . 5) (total-cols . 202) (total-lines . 71) (hscroll . 0) (min-hscroll . 0) (display-table) (orig-top-line) (orig-total-lines) (left-margin-cols) (right-margin-cols) (left-fringe-width) (right-fringe-width) (fringes-outside-margins) (scroll-bar-width) (vertical-scroll-bar-type . t) (dedicated) (resize-proportionally)) (window (parent . 0) (left-col . 0) (top-line . 5) (total-cols . 101) (total-lines . 71) (hscroll . 0) (min-hscroll . 0) (display-table) (orig-top-line) (orig-total-lines) (left-margin-cols) (right-margin-cols) (left-fringe-width) (right-fringe-width) (fringes-outside-margins) (scroll-bar-width) (vertical-scroll-bar-type . t) (dedicated) (resize-proportionally)) (window (parent . 1) (buffer . "*scratch*") (left-col . 0) (top-line . 5) (total-cols . 101) (total-lines . 35) (hscroll . 0) (min-hscroll . 0) (display-table) (orig-top-line) (orig-total-lines) (left-margin-cols) (right-margin-cols) (left-fringe-width) (right-fringe-width) (fringes-outside-margins) (scroll-bar-width) (vertical-scroll-bar-type . t) (dedicated) (resize-proportionally)) (window (parent . 1) (prev . 2) (buffer . "*Messages*") (left-col . 0) (top-line . 40) (total-cols . 101) (total-lines . 36) (hscroll . 0) (min-hscroll . 0) (display-table) (orig-top-line) (orig-total-lines) (left-margin-cols) (right-margin-cols) (left-fringe-width) (right-fringe-width) (fringes-outside-margins) (scroll-bar-width) (vertical-scroll-bar-type . t) (dedicated) (resize-proportionally)) (window (parent . 0) (prev . 1) (buffer . "*info*") (left-col . 101) (top-line . 5) (total-cols . 101) (total-lines . 71) (hscroll . 0) (min-hscroll . 0) (display-table) (orig-top-line) (orig-total-lines) (left-margin-cols) (right-margin-cols) (left-fringe-width) (right-fringe-width) (fringes-outside-margins) (scroll-bar-width) (vertical-scroll-bar-type . t) (dedicated) (resize-proportionally)) (window (prev . 0) (window . " *Minibuf-0*") (left-col . 0) (top-line . 76) (total-cols . 202) (total-lines . 1) (hscroll . 0) (min-hscroll . 0) (display-table) (orig-top-line) (orig-total-lines) (left-margin-cols) (right-margin-cols) (left-fringe-width) (right-fringe-width) (fringes-outside-margins) (scroll-bar-width) (vertical-scroll-bar-type . t) (dedicated) (resize-proportionally)))) -- Juri Linkov http://www.jurta.org/emacs/