unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Lute Kamstra <Lute.Kamstra.lists@xs4all.nl>
Cc: ich@frank-schmitt.net, rms@gnu.org,
	Stefan Monnier <monnier@iro.umontreal.ca>,
	emacs-devel@gnu.org
Subject: Re: Incompatible change without "warning"
Date: Thu, 21 Apr 2005 16:17:40 +0200	[thread overview]
Message-ID: <87u0m0rz7f.fsf@xs4all.nl> (raw)
In-Reply-To: <16998.58339.710430.454702@farnswood.snap.net.nz> (Nick Roberts's message of "Thu, 21 Apr 2005 11:21:07 +1200")

Nick Roberts <nickrob@snap.net.nz> writes:

>  >     I'd prefer to define the same `define-obsolete-variable-alias' macro as
>  >     used in XEmacs.
>  > 
>  > That sounds useful.
>
> Does this DTRT?
>
> (defmacro define-obsolete-variable-alias (symbol aliased
> 						 &optional docstring when)
> "Make SYMBOL a variable alias for symbol ALIASED and warn that
> SYMBOL is obsolete. If provided, WHEN should be a string
> indicating when the variable was first made obsolete, for example
> a date or a release number. Fourth arg docstring, if non-nil, is
> documentation for symbol."
>   (list 'progn
> 	`(defvaralias ,symbol ,aliased ,docstring)
> 	`(make-obsolete-variable ,symbol ,aliased ,when)))

The first line of the docstring should be a complete sentence.
Occurrences of argument names in the docstring should be in capitals.
The fourth argument is WHEN, not DOCSTRING.  Personally, I like the
argument names OLDVAR and NEWVAR that XEmacs uses.  What about this:

(defmacro define-obsolete-variable-alias (oldvar newvar
						 &optional when docstring)
  "Make OLDVAR a variable alias for NEWVAR and warn that OLDVAR is obsolete.
If provided, WHEN should be a string indicating when OLDVAR was
first made obsolete, for example a date or a release number.  The
optional argument DOCSTRING specifies the documentation string
for OLDVAR; if it is omitted or nil, OLDVAR uses the documentation
string of NEWVAR"
  `(progn
     (defvaralias ,oldvar ,newvar ,docstring)
     (make-obsolete-variable ,oldvar ,newvar ,when)))

> The version in XEmacs may be better but I've not looked at at it
> deliberately, as I wasn't sure of the implications of copying it.

Lute, who didn't look at XEmacs' implementation either.

  reply	other threads:[~2005-04-21 14:17 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-19 14:48 Incompatible change without "warning" Frank Schmitt
2005-04-19 19:09 ` Eli Zaretskii
2005-04-19 20:53 ` Nick Roberts
2005-04-19 21:25   ` Stefan Monnier
2005-04-19 22:10     ` Kevin Rodgers
2005-04-20 14:57     ` Richard Stallman
2005-04-20 23:21       ` Nick Roberts
2005-04-21 14:17         ` Lute Kamstra [this message]
2005-04-21 22:35           ` Nick Roberts
2005-04-22  9:46             ` Lute Kamstra
2005-04-22 21:32               ` Nick Roberts
2005-04-23  7:17                 ` Lute Kamstra
2005-04-23  7:31                   ` David Kastrup
2005-04-23 19:25                     ` Lute Kamstra
2005-04-23  8:10                   ` Nick Roberts
2005-04-23  9:44                     ` Eli Zaretskii
2005-04-23 19:27                     ` Lute Kamstra
2005-04-21 19:56         ` Richard Stallman
2005-04-21 23:14           ` Nick Roberts
2005-04-21 23:56             ` Lute Kamstra
2005-04-23 16:15             ` Richard Stallman
2005-04-26  9:15               ` Nick Roberts
2005-04-26 21:06                 ` Stefan Monnier
2005-04-26 21:35                   ` Nick Roberts
2005-04-26 21:45                     ` Stefan Monnier
     [not found]                 ` <20050430231856.CE9369F511@mirror.positive-internet.com>
2005-05-01  3:50                   ` Nick Roberts
2005-05-01 12:07                     ` Richard Stallman
2005-05-01 14:06                       ` Nick Roberts
2005-05-01 15:18                         ` Luc Teirlinck
2005-05-01 23:39                           ` Richard Stallman
2005-05-02  2:28                             ` Luc Teirlinck
2005-05-01 18:57                         ` Richard Stallman
2005-05-01 21:18                           ` Luc Teirlinck
2005-05-01 18:57                         ` Richard Stallman
2005-05-01 18:57                         ` Richard Stallman
2005-05-01 22:43                           ` Nick Roberts
2005-05-02  7:38                             ` David Kastrup
2005-05-02 22:55                               ` Nick Roberts
2005-05-03  4:31                                 ` Luc Teirlinck
2005-05-03  7:17                                 ` David Kastrup
2005-05-04 22:04                                   ` Richard Stallman
2005-05-03 17:12                                 ` Richard Stallman
2005-05-02 23:40                               ` Richard Stallman
2005-05-02 15:21                             ` Richard Stallman
2005-04-20 14:57   ` Richard Stallman
2005-04-19 21:35 ` Nick Roberts
2005-04-20 23:14   ` Luc Teirlinck
2005-04-21  0:56     ` Nick Roberts

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=87u0m0rz7f.fsf@xs4all.nl \
    --to=lute.kamstra.lists@xs4all.nl \
    --cc=emacs-devel@gnu.org \
    --cc=ich@frank-schmitt.net \
    --cc=monnier@iro.umontreal.ca \
    --cc=rms@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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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).