+2011-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * admin/archive-contents.el: New file.
+ * packages/rainbow-mode-readme.txt:
+ * packages/js2-mode-readme.txt: Auto-update from the commentary.
+ * packages/js2-mode-20090814.el: Capitalize the description.
+ * packages/debbugs-0.1/debbugs.el: Require cl since it uses `case'.
+ (debbugs-get-bugs): Fix up typo.
+ * packages/company-0.5/company-gtags.el
+ (company-gtags-gnu-global-program-name): Pass the "when" argument.
+ * packages/auctex-11.86/auctex-pkg.el: Capitalize the description.
+ * packages/archive-contents: Almost auto-regenerate.
+
2010-11-25 Teodor Zlatanov <tzz@lifelogs.com>
* README: Explain how to run the repo build script.
Qualify $pkgname consistently. Run org-synch.el with --eval to
pass $pkgname directly.
- * admin/package-update.sh: Disable org-mode fetch by default. Add
- option ($2 set to anything) to run fetchers anyway. Use PATH
+ * admin/package-update.sh: Disable org-mode fetch by default.
+ Add option ($2 set to anything) to run fetchers anyway. Use PATH
instead of explicit executables. Create tarballs from the
unpackages packages in $PACKAGE_TARBALLS.
* admin/org-synch.el (org-synch): Use just the current directory
and files.
- * admin/package-update.sh: Export tarball after everything else is done.
+ * admin/package-update.sh: Export tarball after everything else
+ is done.
* admin/org-synch.sh, admin/package-update.sh: Rewrite for
in-place exporting.
;; add-log-time-zone-rule: t
;; End:
- Copyright (C) 2010 Free Software Foundation, Inc.
+ Copyright (C) 2010, 2011 Free Software Foundation, Inc.
This file is part of GNU Emacs.
--- /dev/null
+;;; archive-contents.el --- Auto-generate the `archive-contents' file -*- lexical-binding: t -*-
+
+;; Copyright (C) 2011 Free Software Foundation, Inc
+
+;; Author: Stefan Monnier <monnier@iro.umontreal.ca>
+
+;; This program 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.
+
+;; This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;;; Code:
+
+(require 'lisp-mnt)
+
+(defun batch-make-archive-contents ()
+ (let ((packages '(1))) ;I think this is the format-version.
+ (dolist (file (directory-files default-directory))
+ (pcase file
+ ((or `"." `".." `"elpa.rss" `"archive-contents") nil)
+ ((pred file-directory-p)
+ (if (not (string-match "-[0-9.]+\\'" file))
+ (message "Unknown package directory name format %s" file)
+ (let* ((pkg (substring file 0 (match-beginning 0)))
+ (vers (substring file (1+ (match-beginning 0))))
+ (exp
+ (with-temp-buffer
+ (insert-file-contents
+ (expand-file-name (concat pkg "-pkg.el") file))
+ (goto-char (point-min))
+ (read (current-buffer)))))
+ (copy-file (expand-file-name "README" file)
+ (concat pkg "-readme.txt")
+ 'ok-if-already-exists)
+ (unless (equal (nth 1 exp) pkg)
+ (message "Package name %s doesn't match file name %s"
+ (nth 1 exp) file))
+ (unless (equal (nth 2 exp) vers)
+ (message "Package version %s doesn't match file name %s"
+ (nth 2 exp) file))
+ (push (cons (intern pkg)
+ (vector (version-to-list vers)
+ nil ;??
+ (nth 3 exp)
+ 'tar))
+ packages))))
+ ((pred (string-match "\\.el\\'"))
+ (if (not (string-match "-\\([0-9.]+\\)\\.el\\'" file))
+ (message "Unknown package file name format %s" file)
+ (let* ((pkg (substring file 0 (match-beginning 0)))
+ (vers (match-string 1 file))
+ (desc
+ (with-temp-buffer
+ (insert-file-contents file)
+ (goto-char (point-min))
+ (if (not (looking-at ";;;.*---[ \t]*\\(.*\\)\\(-\\*-.*-\\*-[ \t]*\\)?$"))
+ (message "Incorrectly formatted header in %s" file)
+ (prog1 (match-string 1)
+ (let ((commentary (lm-commentary)))
+ (with-current-buffer (find-file-noselect
+ (concat pkg "-readme.txt"))
+ (erase-buffer)
+ (emacs-lisp-mode)
+ (insert commentary)
+ (goto-char (point-min))
+ (while (looking-at ";*[ \t]*\\(commentary[: \t]*\\)?\n")
+ (delete-region (match-beginning 0)
+ (match-end 0)))
+ (uncomment-region (point-min) (point-max))
+ (goto-char (point-max))
+ (while (progn (forward-line -1)
+ (looking-at "[ \t]*\n"))
+ (delete-region (match-beginning 0)
+ (match-end 0)))
+ (save-buffer))))))))
+ (push (cons (intern pkg)
+ (vector (version-to-list vers)
+ nil ;??
+ desc
+ 'single))
+ packages))))
+ ((pred (string-match "\\.elc\\'")) nil)
+ ((pred (string-match "-readme\\.txt\\'")) nil)
+ (t
+ (message "Unknown file %s" file))))
+ (with-current-buffer (find-file-noselect "archive-contents")
+ (erase-buffer)
+ (pp (nreverse packages) (current-buffer))
+ (save-buffer))))
+
+(provide 'archive-contents)
+;;; archive-contents.el ends here
(1
(auctex .
[(11 86)
- nil "integrated environment for *TeX*" tar])
+ nil "Integrated environment for *TeX*" tar])
(company .
[(0 5)
nil "Flexible inline text and code completion" tar])
(debbugs .
- [(0 1)
- nil "SOAP library to access debbugs servers" tar])
+ [(0 1)
+ nil "SOAP library to access debbugs servers" tar])
+ (js2-mode .
+ [(20090814)
+ nil "Improved JavaScript editing mode" single])
(load-dir .
- [(0 0 2)
- nil "Modularize your .emacs: autoload Lisp snippets." single])
+ [(0 0 2)
+ nil "load all Emacs Lisp files in given directories" single])
(muse .
[(3 20)
nil "Authoring and publishing tool" tar])
(org .
[(20101118)
nil "Outline-based notes management and organizer" tar])
- (js2-mode .
- [(20090814)
- nil "Improved JavaScript editing mode" single])
(rainbow-mode .
[(0 1)
- nil "Colorize color names in buffers." single]))
-
+ nil "Colorize color names in buffers" single]))
-(define-package "auctex" "11.86" "integrated environment for *TeX*")
+(define-package "auctex" "11.86" "Integrated environment for *TeX*")
(define-obsolete-variable-alias
'company-gtags-gnu-global-program-name
- 'company-gtags-executable)
+ 'company-gtags-executable "earlier")
(defvar company-gtags--tags-available-p 'unknown)
(make-variable-buffer-local 'company-gtags--tags-available-p)
;(setq soap-debug t message-log-max t)
(require 'soap-client)
+(eval-when-compile (require 'cl))
(defcustom debbugs-port "gnu.org"
"The port instance to be applied from `debbugs-wsdl'.
val (pop query)
vec (vconcat vec (list (substring (symbol-name key) 1))))
(unless (and (keywordp key) (stringp val))
- (t (error "Wrong query: %s %s" key val)))
+ (error "Wrong query: %s %s" key val))
(case key
((:package :severity :tag)
;; Value shall be one word.
-;;; js2-mode.el --- improved JavaScript editing mode
+;;; js2-mode.el --- Improved JavaScript editing mode
;; Copyright (C) 2009 Free Software Foundation, Inc.
This JavaScript editing mode supports:
- - strict recognition of the Ecma-262 language standard
- - support for most Rhino and SpiderMonkey extensions from 1.5 to 1.8
- - parsing support for ECMAScript for XML (E4X, ECMA-357)
- - accurate syntax highlighting using a recursive-descent parser
- - on-the-fly reporting of syntax errors and strict-mode warnings
- - undeclared-variable warnings using a configurable externs framework
- - "bouncing" line indentation to choose among alternate indentation points
- - smart line-wrapping within comments and strings
- - code folding:
- - show some or all function bodies as {...}
- - show some or all block comments as /*...*/
- - context-sensitive menu bar and popup menus
- - code browsing using the `imenu' package
- - typing helpers such as automatic insertion of matching braces/parens
- - many customization options
+ - strict recognition of the Ecma-262 language standard
+ - support for most Rhino and SpiderMonkey extensions from 1.5 to 1.8
+ - parsing support for ECMAScript for XML (E4X, ECMA-357)
+ - accurate syntax highlighting using a recursive-descent parser
+ - on-the-fly reporting of syntax errors and strict-mode warnings
+ - undeclared-variable warnings using a configurable externs framework
+ - "bouncing" line indentation to choose among alternate indentation points
+ - smart line-wrapping within comments and strings
+ - code folding:
+ - show some or all function bodies as {...}
+ - show some or all block comments as /*...*/
+ - context-sensitive menu bar and popup menus
+ - code browsing using the `imenu' package
+ - typing helpers such as automatic insertion of matching braces/parens
+ - many customization options
-The mode includes a port of Mozilla Rhino's scanner, parser and symbol
-table. Ideally it should stay in sync with Rhino, keeping `js2-mode'
-current as the EcmaScript language standard evolves.
+To customize how it works:
+ M-x customize-group RET js2-mode RET
-Unlike cc-engine based language modes, js2-mode's line-indentation is
-not customizable. It is a surprising amount of work to support
-customizable indentation. The current compromise is that the tab key
-lets you cycle among various likely indentation points, similar to the
-behavior of python-mode.
+Notes:
+
+This mode includes a port of Mozilla Rhino's scanner, parser and
+symbol table. Ideally it should stay in sync with Rhino, keeping
+`js2-mode' current as the EcmaScript language standard evolves.
+
+Unlike cc-engine based language modes, js2-mode's line-indentation is not
+customizable. It is a surprising amount of work to support customizable
+indentation. The current compromise is that the tab key lets you cycle among
+various likely indentation points, similar to the behavior of python-mode.
This mode does not yet work with "multi-mode" modes such as `mmm-mode'
and `mumamo', although it could be made to do so with some effort.
-This means that `js2-mode' is currently only useful for editing
-JavaScript files, and not for editing JavaScript within <script> tags
-or templates.
-
+This means that `js2-mode' is currently only useful for editing JavaScript
+files, and not for editing JavaScript within <script> tags or templates.
This minor mode sets background color to strings that match color
-names. For instance, #0000ff is displayed in white with a blue
-background.
+names, e.g. #0000ff is displayed in white with a blue background.