* how can tell emacs not to load desktop when invoked by mutt?
@ 2003-04-24 1:04 wang yin
2003-04-24 1:45 ` David Kastrup
` (2 more replies)
0 siblings, 3 replies; 13+ messages in thread
From: wang yin @ 2003-04-24 1:04 UTC (permalink / raw)
Hi,
I set my mutt's editor variable to "emacs -nw" :)
But I use the "desktop package". So every time I reply a mail, emacs
will start over again and load ~/.emacs
I have desktop sessions saved with the desktop package.
And loading the session is slow. I don't want these lines to be
executed from time to time when I reply or compose mail:
(load "desktop")
(desktop-load-default)
(desktop-read)
But I'm new to Emacs, and I don't know how to tell emacs it's invoked
by mutt. The hint to emacs, I think it that it's file name is
/tmp/mutt-myloginname-date.
Can anyone give an example how to set a conditional? Thanks!
--
Wang Yin
DA Lab, Tsinghua University,
100084
Beijing China
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-24 1:04 how can tell emacs not to load desktop when invoked by mutt? wang yin
@ 2003-04-24 1:45 ` David Kastrup
2003-04-24 6:17 ` wang yin
2003-04-24 7:29 ` Alan Mackenzie
2003-04-24 9:37 ` Ehud Karni
[not found] ` <mailman.5147.1051177074.21513.help-gnu-emacs@gnu.org>
2 siblings, 2 replies; 13+ messages in thread
From: David Kastrup @ 2003-04-24 1:45 UTC (permalink / raw)
wang yin <wy@wangyin.com> writes:
> I set my mutt's editor variable to "emacs -nw" :)
> But I use the "desktop package". So every time I reply a mail, emacs
> will start over again and load ~/.emacs
You rather want to look up "emacsclient" in th Emacs manual.
--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-24 1:45 ` David Kastrup
@ 2003-04-24 6:17 ` wang yin
2003-04-24 7:29 ` Alan Mackenzie
1 sibling, 0 replies; 13+ messages in thread
From: wang yin @ 2003-04-24 6:17 UTC (permalink / raw)
No. emacsclide will send the buffer to a emacs server. But I don't
want to switch to another window.
Or I misunderstood emacsclient?
--
Wang Yin
DA Lab, Tsinghua University,
100084
Beijing China
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-24 1:45 ` David Kastrup
2003-04-24 6:17 ` wang yin
@ 2003-04-24 7:29 ` Alan Mackenzie
2003-04-24 11:41 ` Robert Marshall
1 sibling, 1 reply; 13+ messages in thread
From: Alan Mackenzie @ 2003-04-24 7:29 UTC (permalink / raw)
David Kastrup <dak@gnu.org> wrote on 24 Apr 2003 03:45:44 +0200:
> wang yin <wy@wangyin.com> writes:
>> I set my mutt's editor variable to "emacs -nw" :)
>> But I use the "desktop package". So every time I reply a mail, emacs
>> will start over again and load ~/.emacs
> You rather want to look up "emacsclient" in th Emacs manual.
That's not to say that "emacs --no-desktop" wouldn't be a useful thing.
Particularly when debugging problems which happen at start-up (which I
was doing last night), or when one wants "just" to edit a quick textfile.
In fact, this ability to start quickly is an excellent reason to use vim
or even notepad.
> --
> David Kastrup, Kriemhildstr. 15, 44793 Bochum
--
Alan Mackenzie (Munich, Germany)
Email: aacm@muuc.dee; to decode, wherever there is a repeated letter
(like "aa"), remove half of them (leaving, say, "a").
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-24 7:29 ` Alan Mackenzie
@ 2003-04-24 11:41 ` Robert Marshall
0 siblings, 0 replies; 13+ messages in thread
From: Robert Marshall @ 2003-04-24 11:41 UTC (permalink / raw)
On Thu, 24 Apr 2003, Alan Mackenzie wrote:
> David Kastrup <dak@gnu.org> wrote on 24 Apr 2003 03:45:44 +0200:
>> wang yin <wy@wangyin.com> writes:
>
>>> I set my mutt's editor variable to "emacs -nw" :) But I use the
>>> "desktop package". So every time I reply a mail, emacs will start
>>> over again and load ~/.emacs
>
>> You rather want to look up "emacsclient" in th Emacs manual.
>
> That's not to say that "emacs --no-desktop" wouldn't be a useful
> thing.
>
True, I have the following for when I want a fast start and I don't
care what I was looking at last session
;; some cheating here ....
(setq desktop-basefilename
(convert-standard-filename ".emacs.desktop"))
(if (and (file-exists-p (concat "~/" desktop-basefilename))
(yes-or-no-p "Load desktop? "))
(progn
(require 'desktop)
....
but that may be too much noise for some!
Robert
--
Poetry's not window cleaning.
It breaks the glass.
-- Chase Twichell
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-24 1:04 how can tell emacs not to load desktop when invoked by mutt? wang yin
2003-04-24 1:45 ` David Kastrup
@ 2003-04-24 9:37 ` Ehud Karni
[not found] ` <mailman.5147.1051177074.21513.help-gnu-emacs@gnu.org>
2 siblings, 0 replies; 13+ messages in thread
From: Ehud Karni @ 2003-04-24 9:37 UTC (permalink / raw)
Cc: help-gnu-emacs
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 24 Apr 2003 09:04:51 +0800, wang yin <wy@wangyin.com> wrote:
>
> (load "desktop")
> (desktop-load-default)
> (desktop-read)
>
> Can anyone give an example how to set a conditional? Thanks!
I think the other replies to this post (emacsclient) are good but
there was no direct answer to the question. Here is my proposal:
1. Run the `mutt' command through a script.
2. Add an environment variable MUTT=ON.
3. Wrap your desktop loading in ~/.emcas :
(or (string-equal (or (getenv "MUTT") "-") "ON")
(progn
(load "desktop")
(desktop-load-default)
(desktop-read)))
Ehud.
- --
Ehud Karni Tel: +972-3-7966-561 /"\
Mivtach - Simon Fax: +972-3-7966-667 \ / ASCII Ribbon Campaign
Insurance agencies (USA) voice mail and X Against HTML Mail
http://www.mvs.co.il FAX: 1-815-5509341 / \
mailto:ehud@unix.mvs.co.il Better Safe Than Sorry
-----BEGIN PGP SIGNATURE-----
Comment: use http://www.keyserver.net/ to get my key (and others)
iD8DBQE+p7BTLFvTvpjqOY0RApzbAJ96hdbdIzYbhdHBK+7NsYZEd32jSACfcSS5
7/CHb0zCsMY0263fBWwbqHk=
=7pHI
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 13+ messages in thread
[parent not found: <mailman.5147.1051177074.21513.help-gnu-emacs@gnu.org>]
* Re: how can tell emacs not to load desktop when invoked by mutt?
[not found] ` <mailman.5147.1051177074.21513.help-gnu-emacs@gnu.org>
@ 2003-04-24 18:36 ` Jiri Pejchal
2003-04-24 22:09 ` Johan Bockgård
2003-04-25 4:46 ` wang yin
1 sibling, 1 reply; 13+ messages in thread
From: Jiri Pejchal @ 2003-04-24 18:36 UTC (permalink / raw)
"Ehud Karni" <ehud@unix.mvs.co.il> writes:
> > Can anyone give an example how to set a conditional? Thanks!
>
> I think the other replies to this post (emacsclient) are good but
> there was no direct answer to the question. Here is my proposal:
>
> 1. Run the `mutt' command through a script.
> 2. Add an environment variable MUTT=ON.
> 3. Wrap your desktop loading in ~/.emcas :
>
> (or (string-equal (or (getenv "MUTT") "-") "ON")
> (progn
> (load "desktop")
> (desktop-load-default)
> (desktop-read)))
Can emacs somehow test the command it was invoked with
emacs -nw /tmp/mutt-...
contains the string mutt?
Jiri Pejchal
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
[not found] ` <mailman.5147.1051177074.21513.help-gnu-emacs@gnu.org>
2003-04-24 18:36 ` Jiri Pejchal
@ 2003-04-25 4:46 ` wang yin
2003-04-26 17:07 ` Glenn Morris
2003-04-27 11:48 ` Kai Großjohann
1 sibling, 2 replies; 13+ messages in thread
From: wang yin @ 2003-04-25 4:46 UTC (permalink / raw)
Thank you! This is almost what I want!
Can you tell me how can I use regexp to match the file name that mutt
tell emacs to edit: /tmp/mutt-mylogin-date in elisp?
Then I can use the following elisp(in pseudo-code):
(or (regexp-match ("/tmp/mutt-[^-]+-[0-9-]+", file-name))
(progn
(load "desktop")
(desktop-load-default)
(desktop-read)))
If I got this done, the problem is solved perfectly :)
So please tell me how to program the predict:
(regexp-match ("/tmp/mutt-[^-]+-[0-9-]+", file-name))
--
Wang Yin
DA Lab, Tsinghua University,
100084
Beijing China
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-25 4:46 ` wang yin
@ 2003-04-26 17:07 ` Glenn Morris
2003-04-27 11:48 ` Kai Großjohann
1 sibling, 0 replies; 13+ messages in thread
From: Glenn Morris @ 2003-04-26 17:07 UTC (permalink / raw)
wang yin wrote:
> Can you tell me how can I use regexp to match the file name that mutt
> tell emacs to edit: /tmp/mutt-mylogin-date in elisp?
>
> Then I can use the following elisp(in pseudo-code):
>
> (or (regexp-match ("/tmp/mutt-[^-]+-[0-9-]+", file-name))
> (progn
> (load "desktop")
> (desktop-load-default)
> (desktop-read)))
Do you really need to be that precise about the mutt file name?
Surely "/tmp/mutt-" is good enough...
(unless
(catch 'found
(dolist (arg command-line-args)
(if (string-match "^/tmp/mutt-" arg)
(throw 'found t))))
(load "desktop")
(dekstop-load-default)
(desktop-read))
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-25 4:46 ` wang yin
2003-04-26 17:07 ` Glenn Morris
@ 2003-04-27 11:48 ` Kai Großjohann
2003-04-28 2:09 ` Michael Herman
[not found] ` <mailman.5267.1051495772.21513.help-gnu-emacs@gnu.org>
1 sibling, 2 replies; 13+ messages in thread
From: Kai Großjohann @ 2003-04-27 11:48 UTC (permalink / raw)
wang yin <wy@wangyin.com> writes:
> Then I can use the following elisp(in pseudo-code):
>
> (or (regexp-match ("/tmp/mutt-[^-]+-[0-9-]+", file-name))
> (progn
> (load "desktop")
> (desktop-load-default)
> (desktop-read)))
How about another approach entirely? You start Emacs, then say M-x
server-start RET, and you configure mutt to invoke emacsclient
instead of emacs.
--
file-error; Data: (Opening input file no such file or directory ~/.signature)
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: how can tell emacs not to load desktop when invoked by mutt?
2003-04-27 11:48 ` Kai Großjohann
@ 2003-04-28 2:09 ` Michael Herman
[not found] ` <mailman.5267.1051495772.21513.help-gnu-emacs@gnu.org>
1 sibling, 0 replies; 13+ messages in thread
From: Michael Herman @ 2003-04-28 2:09 UTC (permalink / raw)
On Sun, Apr 27, 2003 at 01:48:52PM +0200, Kai Großjohann wrote:
>wang yin <wy@wangyin.com> writes:
>
>> Then I can use the following elisp(in pseudo-code):
>>
>> (or (regexp-match ("/tmp/mutt-[^-]+-[0-9-]+", file-name))
>> (progn
>> (load "desktop")
>> (desktop-load-default)
>> (desktop-read)))
>
>How about another approach entirely? You start Emacs, then say M-x
>server-start RET, and you configure mutt to invoke emacsclient
>instead of emacs.
>
I've tried that before and the problem is the focus. I was able to
make emacsclient rise up and take the focus but when finishing the
e-mail and closing the buffer, the focus does not return to the Mutt
window.
^ permalink raw reply [flat|nested] 13+ messages in thread
[parent not found: <mailman.5267.1051495772.21513.help-gnu-emacs@gnu.org>]
* Re: how can tell emacs not to load desktop when invoked by mutt?
[not found] ` <mailman.5267.1051495772.21513.help-gnu-emacs@gnu.org>
@ 2003-04-28 6:07 ` Kai Großjohann
0 siblings, 0 replies; 13+ messages in thread
From: Kai Großjohann @ 2003-04-28 6:07 UTC (permalink / raw)
Michael Herman <michael-lists@thehermans.org> writes:
> I've tried that before and the problem is the focus. I was able to
> make emacsclient rise up and take the focus but when finishing the
> e-mail and closing the buffer, the focus does not return to the Mutt
> window.
Maybe it works if you tell Emacs to open a new frame for each
connection.
You'd want to create the frame from server-switch-hook or
server-visit-hook, and you'd want to delete the frame again from
server-done-hook.
--
file-error; Data: (Opening input file no such file or directory ~/.signature)
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2003-04-28 6:07 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-04-24 1:04 how can tell emacs not to load desktop when invoked by mutt? wang yin
2003-04-24 1:45 ` David Kastrup
2003-04-24 6:17 ` wang yin
2003-04-24 7:29 ` Alan Mackenzie
2003-04-24 11:41 ` Robert Marshall
2003-04-24 9:37 ` Ehud Karni
[not found] ` <mailman.5147.1051177074.21513.help-gnu-emacs@gnu.org>
2003-04-24 18:36 ` Jiri Pejchal
2003-04-24 22:09 ` Johan Bockgård
2003-04-25 4:46 ` wang yin
2003-04-26 17:07 ` Glenn Morris
2003-04-27 11:48 ` Kai Großjohann
2003-04-28 2:09 ` Michael Herman
[not found] ` <mailman.5267.1051495772.21513.help-gnu-emacs@gnu.org>
2003-04-28 6:07 ` Kai Großjohann
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).