emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Emacs setup assistants


From: Lars Magne Ingebrigtsen
Subject: Emacs setup assistants
Date: Tue, 18 May 2004 22:55:17 +0200
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/21.3.50 (gnu/linux)

One project that's been on my mind (well, far back of my mind) for a
few years has been to implement something that would make it easy to
set up complex stuff by guiding the user through the process.

This differs from Customize by being a guided tour through the
options, not just a big whopping menu of stuff to twiddle.

For instance, when setting Gnus up for reading news, an assistant
would look around the environment for sensible news server defaults,
present these to the user, ask for corrections, and at the end check
whether the information given is sensible (ie., that the news server
exists).  (That's a pretty trivial example; setting up spam handling
or mail reading is much more complicated.  :-)

My original plan was to use something HTML-like, and use w3, but Per
Abraahmsen suggested using something more TeXinfo like, and I thought
that was a really groovy idea, so here's an example assistant
specification.

(It's a mock-up; no code has been written, and most assistants would
have more pages than one.)

-----------
@title Configuring Gnus for reading news
@node Server name and port
@variable server :string (gnus-getenv-nntpserver)
@variable port :number 119
@validate
(let ((stream
        (condition-case err
           (open-network-stream "nntpd" nil server port)
          (error (setq error err)))))
   (if (memq (process-status stream) '(open run))
       (progn
         (delete-process stream)
         t)
     nil)))
@end validate
@result gnus-select-method (list server port)
@text
To read Usenet news with Gnus, you first have to tell
Gnus where the news server is.

The server name is @variable{server}; port number @variable{port}.
@end text
-----------

Rendering this is another issue.

I'm posting this here (on the Emacs and XEmacs development lists) to
let all y'all know what's up, and get the loud objections that I'm
sure are imminent...  :-)

And also -- would actually extending the texinfo.el parser be a good
idea, or should I just roll my own (which would call texinfo.el
functions, of course)?
 
-- 
(domestic pets only, the antidote for overdose, milk.)
  address@hidden * Lars Magne Ingebrigtsen





reply via email to

[Prev in Thread] Current Thread [Next in Thread]