emacs-devel
[Top][All Lists]
Advanced

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

Re: Modern conventions for structuring Emacs Lisp libraries


From: Thorsten Jolitz
Subject: Re: Modern conventions for structuring Emacs Lisp libraries
Date: Sun, 06 Oct 2013 18:51:28 +0200
User-agent: Gnus/5.130002 (Ma Gnus v0.2) Emacs/24.3 (gnu/linux)

Richard Stallman <address@hidden> writes:

>         [ To any NSA and FBI agents reading my email: please consider
>         [ whether defending the US Constitution against all enemies,
>         [ foreign or domestic, requires you to follow Snowden's example.
>
> Regarding the file keywords, the change you've proposed has some fatal
> flaws.
>
>   | ;; ** MetaData
>   | ;;   :PROPERTIES:
>   | ;;   :copyright: Thorsten_Jolitz
>   | ;;   :copyright-since: 2013
>   | ;;   :version:  0.9
>   | ;;   :licence:  GPL3+
>   | ;;   :licence-url: http://www.gnu.org/licenses/
>
> It is legally inadequate, since it doesn't have a standard copyright
> notice.  A standard copyright notice looks like
>
>     Copyright YEARS NAME
>
> It is inadequate for informing users about their rights, and the lack
> of warranty, and about our philosophy, because it lacks the explicit
> license notice which states those things.  It may also be legally
> insufficient for making the license clear.
>
> We want people to see these words in the source file:
>
>       | ;; This file is part of GNU Emacs.
>       |
>       | ;; GNU Emacs is free software: you can redistribute it and/or modify
>       | ;; it under the terms of the GNU General Public License as published 
> by
>       | ;; the Free Software Foundation,  either version 3 of the License,  or
>       | ;; (at your option) any later version.
>       |
>       | ;; GNU Emacs is distributed in the hope that it will be useful,
>       | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
>       | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>       | ;; GNU General Public License for more details.
>       |
>       | ;; You should have received a copy of the GNU General Public License
>       | ;; along with GNU Emacs.  If not,  see <http://www.gnu.org/licenses/>.
>
> This part has to be kept as it is.
>
> Those issues don't apply to the library header lines:
>
>   | ;; Maintainer: FSF
>   | ;; Keywords: help,  internal
>   | ;; Package: emacs
>
> We could change them if it is an improvement.  However, I think your
> format is worse for humans.  We should not make it worse for humans
> just to cater to programs that some people use.  You can change the
> programs instead.

Indeed, until now I did not get much positive feedback about the looks
of these property drawers in Elisp libraries, not even from Org-mode
users - although they seem to be more suited for meta-data than just
free text from a conceptual point of view.

What would be really helpful, besides saner official recommendations for
file structuring, would be an up-to-date official template for this
meta-data section (maybe there is one out there but I missed it?).

(Private) tools could then convert this template into (e.g.) easy to
handle Org-mode syntax like above, and convert them back to more human
readable traditional syntax before a library is added to some repo.

-- 
cheers,
Thorsten




reply via email to

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