unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Matthew Calhoun <calhounm@mac.com>
Cc: help-gnu-emacs@gnu.org
Subject: Re: Preserving window layout (follow up)
Date: Tue, 17 Jun 2003 09:29:52 -0700	[thread overview]
Message-ID: <EC65B344-A0E0-11D7-8F66-0003930EBF00@mac.com> (raw)
In-Reply-To: <E19S33S-00078x-Py@monty-python.gnu.org>

Sure. Here it is:

(defun lock-window ()
   "Prevent Emacs from messing with the current window."
   (interactive)
   (set-window-dedicated-p (frame-selected-window) t)
   (message "Locked window."))

(defun ide ()
   "Set up a simple IDE-like environment."
   (interactive)
   (split-window-vertically -8)
   (other-window 1)
   (shell)
   (lock-window)
   (other-window 1)
   (split-window-horizontally)
   ; Make sure we can get back here if our setup somehow gets messed up 
(use 'C-x r j i')
   (window-configuration-to-register ?i)
   (message "IDE initialized. Use 'C-x r j i' to return to this window 
configuration."))

El Monday, 16 June, 2003, a las 04:06  PM, 
help-gnu-emacs-request@gnu.org escribió:

> Hey Matthew,
>
>   please send me this function ... ;-)
>
> -- Robert
>
> "Matthew Calhoun" <calhounm@mac.com> wrote in message 
> news:mailman.7740.1055367556.21513.help-gnu-emacs@gnu.org...

> Thanks for all the suggestions. I found a really helpful function that
> I'm surprised nobody mentioned, though: set-window-dedicated-p prevents
> Emacs from messing with a particular window. I wound up writing a small
> function that sets up my windows as described, calls this function for
> the shell window, and then calls the window-configuration-to-register
> function that Johan mentioned. Seems to work pretty well.
>
> Thanks again,
> Matt
>
> El Saturday, 7 June, 2003, a las 02:16  PM, Johan Bockgård escribió:
>
>> Matthew Calhoun <calhounm@mac.com> writes:
>>
>>> Sort of a poor man's IDE. The problem is, when I do something like
>>> command-apropos it wreaks havoc on my nice little environment - the
>>> shell buffer grows to take up half of the frame, and the *Apropos*
>>> buffer has taken the place of *shell*.
>>
>> Another approach
>>
>> ,----[ C-h k C-x r w ]
>> | C-x r w runs the command window-configuration-to-register
>> |    which is an interactive compiled Lisp function in `register'.
>> | (window-configuration-to-register REGISTER &optional ARG)
>> |
>> | Store the window configuration of the selected frame in register
>> REGISTER.
>> | Use C-x r j to restore the configuration.
>> | Argument is a character, naming the register.
>> `----
>>
>> (info "(emacs)RegConfig")
>>
>> You might want to bind those to some nice keys.
>>
>> Also see
>>
>> (info "(emacs)Windows")
>> (info "(emacs)Window Convenience")
>>

       reply	other threads:[~2003-06-17 16:29 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <E19S33S-00078x-Py@monty-python.gnu.org>
2003-06-17 16:29 ` Matthew Calhoun [this message]
     [not found] <mailman.7740.1055367556.21513.help-gnu-emacs@gnu.org>
2003-06-16 21:23 ` Preserving window layout (follow up) Robert Hundt
2003-06-07 21:16 Preserving window layout Johan Bockgård
2003-06-11 18:53 ` Preserving window layout (follow up) Matthew Calhoun

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.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=EC65B344-A0E0-11D7-8F66-0003930EBF00@mac.com \
    --to=calhounm@mac.com \
    --cc=help-gnu-emacs@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.
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).