<div dir="ltr">David, your point is well-taken.  You're right about your work with Aquamacs: I simply could not use Emacs before the OS X native version.  With Aquamacs, I am able to hold my dislike of Emacs at a manageable level.  I would be more inclined to help with this project, however I feel Aquamacs is a band-aid for many deeper problems in Emacs.  I have considered trying to remedy many of what I see as Emac's failings and have gone so far as to try to edit the original source, but the task is just too immense.  Moreover, I doubt that my goals of creating a more modern application would be well received as long as "rms" is at he helm of Emacs.  I know that somebody has to start somewhere or else change will never occur, but for me, the starting point would probably be gutting the entire thing, rebuilding it in C, and putting an attractive, intuitive GUI on the front.  I have a feeling that this could possibly take the better part of my free for years to come.<div>
<br></div><div>As for the *scratch* buffer, I feel that it is an anachronism that is a useless annoyance to the vast majority of users (of course I may be flamed by adamant scratch diehards).  I would like to emulate the behavior of most modern applications:</div>
<div>1) If I open the application with no arguments, either from the command line or dock, it opens a blank window called "untitled".  If I edit this file and then try to close it, I should be prompted to save it.  If I open another document </div>
<div>2) Every time I open a new document from the toolbar, I should see a similar "untitled" window.</div><div>3) If I have a blank "untitled" buffer open and I open another file, either from the command line or with the "open" dialog, the existing "untitled" buffer should be killed and replaced in the existing window with the recently opened file.</div>
<div>3) If I open the application with a file specified, the application should open the file and I should never see the *scratch* buffer.<br><div><br></div><div>I will keep looking for a workaround and post what I find.  The nearest I have come thus far is simply adding (new-empty-buffer) in Preferences.el.  This solves the problem of the initial *scratch* window.  The only problem is that this buffer is not closed and can pop up in a separate frame later on.  More on this as I am able to find something...</div>
<div><br></div><div>Thanks very much, Nathaniel.  Your script did exactly what I was looking for.  I added a modulo to cycle the window positions.  Now, I'd like to see if there is a way to put the mouse focus in the most recently-created frame.  My current use of after-make-frame-hook (code below) doesn't seem to have any effect.  Isn't the most recently-created frame passed to all functions in this hook by default?</div>
<div><br></div><div>Thanks again for the help,</div><div>Adrian</div><div><br></div><div><div>(defun default-frame-alist-update ()</div><div>  (let* ((framecount (length (visible-frame-list)))</div><div>     (fcm (mod framecount 3))</div>
<div>     (xoffset (- 1135 (* fcm 400))))</div><div>    (setq default-frame-alist</div><div>      `((left . ,xoffset)</div><div>        (top . 0)</div><div>        (width . 60)</div><div>        (height . 73)))))</div><div>
(add-hook 'before-make-frame-hook 'default-frame-alist-update)</div><div>(add-hook 'after-make-frame-hook 'select-frame-set-input-focus)</div><br><div class="gmail_quote">2008/10/10 David Reitter <span dir="ltr"><<a href="mailto:david.reitter@gmail.com">david.reitter@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="Ih2E3d">On 10 Oct 2008, at 13:46, Adrian wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
"Roll your own" is definitely not what I was hoping to hear :-(.  I have no knowledge of lisp nor any desire to learn for the sole sake of implementing behaviour that Emacs should support by default.<br>
</blockquote>
<br></div>
You can learn, and it's not too hard.<br>
<br>
If I hadn't learned to do Lisp, you would probably be using a different piece of software to edit your stuff... But I appreciate that very few people seem to be willing to spend time on improving free software.<br>
If you can't find anyone who will write you the code you need, then get in touch by e-mail and I'll either let you know an hourly rate, or put you in touch with Elisp savvy people who can do this in a couple of paid-for hours.<div class="Ih2E3d">
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
 If I were good enough to edit the source, I would have abolished the infernal scratch buffer long ago.<br>
</blockquote>
<br></div>
Out of interest, is it the *scratch* buffer that annoys you, or the persistency across sessions?  Or just the fact that it's always shown when you start up Aquamacs?<div class="Ih2E3d"><br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Smart positioning seems to be confusing the window positioning whether it is turned on or off.  Even when it is turned off, I have to specify both "default-" and "initial-frame-alist" parameters for my specifications to take any effect.  Shouldn't I be able to specify these parameters separately?<br>

</blockquote>
<br></div>
Yes, you should be able to, and they have slightly different meanings as documented.<div class="Ih2E3d"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
BTW, if anyone has any suggestions for a hack whereby I never have to see the scratch buffer again, I would greatly appreciate it.  Perhaps this is a subject for another post though...<br>
</blockquote>
<br></div>
Well, very hacky:<br>
<br>
(run-with-idle-timer 0.2 nil (lambda () (let ((one-buffer-one-frame t)) (with-current-buffer "*scratch*" (kill-buffer-and-window )))))<br>
<br>
You may see another buffer (*Messaged* for instance) in some instances though...  Emacs cannot not display any buffer in a window.<div><div></div><div class="Wj3C7c"><br>
<br>
<br>
--<br>
<a href="http://aquamacs.org" target="_blank">http://aquamacs.org</a> -- Aquamacs: Emacs on Mac OS X<br>
<a href="http://aquamacs.org/donate" target="_blank">http://aquamacs.org/donate</a> -- Could we help you? Return the favor and support the Aquamacs Project!</div></div><br>_____________________________________________________________<br>

MacOSX-Emacs mailing list<br>
<a href="mailto:MacOSX-Emacs@email.esm.psu.edu">MacOSX-Emacs@email.esm.psu.edu</a><br>
<a href="http://email.esm.psu.edu/mailman/listinfo/macosx-emacs" target="_blank">http://email.esm.psu.edu/mailman/listinfo/macosx-emacs</a><br>
List Archives: <a href="http://dir.gmane.org/gmane.emacs.macintosh.osx" target="_blank">http://dir.gmane.org/gmane.emacs.macintosh.osx</a><br>
<br></blockquote></div><br></div></div></div>