summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Graaff <graaff@gentoo.org>2007-05-28 19:57:24 +0000
committerHans de Graaff <graaff@gentoo.org>2007-05-28 19:57:24 +0000
commitfc12083cfa6bf81a056ccd0e02a41f941b640216 (patch)
tree13a2d4449a8d36bb2d1f3f3f820c2fd6014058ad /app-xemacs
parentInitial XEmacs eclasses (diff)
downloademacs-fc12083cfa6bf81a056ccd0e02a41f941b640216.tar.gz
emacs-fc12083cfa6bf81a056ccd0e02a41f941b640216.tar.bz2
emacs-fc12083cfa6bf81a056ccd0e02a41f941b640216.zip
Add the actual ebuild and patches
svn path=/emacs-overlay/; revision=342
Diffstat (limited to 'app-xemacs')
-rw-r--r--app-xemacs/ebuild-mode/Manifest16
-rw-r--r--app-xemacs/ebuild-mode/ebuild-mode-1.5.ebuild20
-rw-r--r--app-xemacs/ebuild-mode/files/autoloads.patch22
-rw-r--r--app-xemacs/ebuild-mode/files/digest-ebuild-mode-1.53
-rw-r--r--app-xemacs/ebuild-mode/files/font-lock-keywords.patch220
5 files changed, 281 insertions, 0 deletions
diff --git a/app-xemacs/ebuild-mode/Manifest b/app-xemacs/ebuild-mode/Manifest
new file mode 100644
index 0000000..bec8011
--- /dev/null
+++ b/app-xemacs/ebuild-mode/Manifest
@@ -0,0 +1,16 @@
+AUX autoloads.patch 769 RMD160 8ec344a01bbacd66656d8946905cb4d24a46eced SHA1 482c9a7a6e4259ca55a9eb6f0cc17acae1e88587 SHA256 4d6125cc91b187842c29c9050c61e2eb49689bade32e3d2491382f5eb5cc8229
+MD5 15ea5dba033ebf9a3dfdf197540b6187 files/autoloads.patch 769
+RMD160 8ec344a01bbacd66656d8946905cb4d24a46eced files/autoloads.patch 769
+SHA256 4d6125cc91b187842c29c9050c61e2eb49689bade32e3d2491382f5eb5cc8229 files/autoloads.patch 769
+AUX font-lock-keywords.patch 9386 RMD160 7797893f508e40af0eb83ec978e830eb70f717cb SHA1 f3736534bea9b3f2637f3bd3c4bda7a16bbb2611 SHA256 778b8d3959b8d346bdda84dcafe2262f5b0966fab1f2f9bfbe2fb2cc44984772
+MD5 ba517be87e1b8d18dbfbe4d41ea2e838 files/font-lock-keywords.patch 9386
+RMD160 7797893f508e40af0eb83ec978e830eb70f717cb files/font-lock-keywords.patch 9386
+SHA256 778b8d3959b8d346bdda84dcafe2262f5b0966fab1f2f9bfbe2fb2cc44984772 files/font-lock-keywords.patch 9386
+DIST ebuild-mode-1.5.tar.bz2 2510 RMD160 43308f4936225ad83d8cfbb188eda06eb455f98d SHA1 74242ad42c2b7d9d77641c3362aa9b4f9e2a5367 SHA256 e2a13679c0a16898573624bd521b25c5162272e3e073b971246173d8766286cc
+EBUILD ebuild-mode-1.5.ebuild 629 RMD160 58a54e464e0837221ef37b1f48f38cba5172584a SHA1 b9c9b003398a6b671829f25530981095b9dafc94 SHA256 a48c3f4b2dc5c6f4b7adff41cdadf294d63f7b411ef238f21a36263d2f3d1ed9
+MD5 e84241dbd6ad7bf86c2acb25f120458c ebuild-mode-1.5.ebuild 629
+RMD160 58a54e464e0837221ef37b1f48f38cba5172584a ebuild-mode-1.5.ebuild 629
+SHA256 a48c3f4b2dc5c6f4b7adff41cdadf294d63f7b411ef238f21a36263d2f3d1ed9 ebuild-mode-1.5.ebuild 629
+MD5 361e98d100c52a26d7ab2a34ec82455d files/digest-ebuild-mode-1.5 244
+RMD160 11d1a2b39abc43431e87a5c574f94f2ed6ce7920 files/digest-ebuild-mode-1.5 244
+SHA256 03c8cbe3962f692e3970a2c0d19edb2fb1d4911b6da0db8670c53487b7bd9a70 files/digest-ebuild-mode-1.5 244
diff --git a/app-xemacs/ebuild-mode/ebuild-mode-1.5.ebuild b/app-xemacs/ebuild-mode/ebuild-mode-1.5.ebuild
new file mode 100644
index 0000000..67a6538
--- /dev/null
+++ b/app-xemacs/ebuild-mode/ebuild-mode-1.5.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emacs/ebuild-mode/ebuild-mode-1.2.ebuild,v 1.1 2006/12/15 04:05:23 mkennedy Exp $
+
+inherit xemacs-elisp eutils
+
+DESCRIPTION="An Emacs mode for editing Portage .ebuild, .eclass and .eselect files."
+HOMEPAGE="http://www.gentoo.org/proj/en/lisp/emacs/index.xml"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_unpack() {
+ unpack "${A}"
+ cd "${S}"
+ epatch "${FILESDIR}"/autoloads.patch
+ epatch "${FILESDIR}"/font-lock-keywords.patch
+}
diff --git a/app-xemacs/ebuild-mode/files/autoloads.patch b/app-xemacs/ebuild-mode/files/autoloads.patch
new file mode 100644
index 0000000..4723aa8
--- /dev/null
+++ b/app-xemacs/ebuild-mode/files/autoloads.patch
@@ -0,0 +1,22 @@
+--- ebuild-mode.el.~1~ 2007-03-22 16:02:50.000000000 +0100
++++ ebuild-mode.el 2007-05-28 21:12:20.000000000 +0200
+@@ -75,6 +75,7 @@
+ (save-excursion
+ (tabify (point-min) (point-max))))
+
++;;;###autoload
+ (define-derived-mode ebuild-mode shell-script-mode "Ebuild"
+ "Major mode for Portage .ebuild and .eclass files."
+ (font-lock-add-keywords 'ebuild-mode
+@@ -148,6 +149,11 @@
+ (define-ebuild-mode-command "\C-cef" "fetch")
+ (define-ebuild-mode-command "\C-ceu" "unpack")
+
++;;;###autoload(add-to-list 'auto-mode-list '("\\.ebuild$" . ebuild-mode))
++;;;###autoload(add-to-list 'auto-mode-list '("\\.eclass$" . ebuild-mode))
++;;;###autoload(add-to-list 'auto-mode-list '("\\.eselect$" . ebuild-mode))
++
++
+ (provide 'ebuild-mode)
+
+ ;;; ebuild-mode.el ends here
diff --git a/app-xemacs/ebuild-mode/files/digest-ebuild-mode-1.5 b/app-xemacs/ebuild-mode/files/digest-ebuild-mode-1.5
new file mode 100644
index 0000000..b0854a6
--- /dev/null
+++ b/app-xemacs/ebuild-mode/files/digest-ebuild-mode-1.5
@@ -0,0 +1,3 @@
+MD5 b893cc4d87b77a405e55af5d4f9deba5 ebuild-mode-1.5.tar.bz2 2510
+RMD160 43308f4936225ad83d8cfbb188eda06eb455f98d ebuild-mode-1.5.tar.bz2 2510
+SHA256 e2a13679c0a16898573624bd521b25c5162272e3e073b971246173d8766286cc ebuild-mode-1.5.tar.bz2 2510
diff --git a/app-xemacs/ebuild-mode/files/font-lock-keywords.patch b/app-xemacs/ebuild-mode/files/font-lock-keywords.patch
new file mode 100644
index 0000000..c4fb28c
--- /dev/null
+++ b/app-xemacs/ebuild-mode/files/font-lock-keywords.patch
@@ -0,0 +1,220 @@
+--- ebuild-mode.el 2006-12-15 04:57:36.000000000 +0100
++++ ebuild-mode.el 2007-01-06 15:56:15.000000000 +0100
+@@ -120,3 +101,217 @@
+ (provide 'ebuild-mode)
+
+ ;;; ebuild-mode.el ends here
++
++
++;;; Hack in font-lock-keywords stuff just to see how things
++;;; work. There is a patch from Adrian Kehoe to add this to the
++;;; font-lock in xemacs.
++
++
++(defvar font-lock-keywords-alist nil
++ "Alist of additional `font-lock-keywords' elements for major modes.
++
++Each element has the form (MODE KEYWORDS . HOW).
++`font-lock-set-defaults' adds the elements in the list KEYWORDS to
++`font-lock-keywords' when Font Lock is turned on in major mode MODE.
++
++If HOW is nil, KEYWORDS are added at the beginning of
++`font-lock-keywords'. If it is `set', they are used to replace the
++value of `font-lock-keywords'. If HOW is any other non-nil value,
++they are added at the end.
++
++This is normally set via `font-lock-add-keywords' and
++`font-lock-remove-keywords'.")
++
++(defvar font-lock-removed-keywords-alist nil
++ "Alist of `font-lock-keywords' elements to be removed for major modes.
++
++Each element has the form (MODE . KEYWORDS). `font-lock-set-defaults'
++removes the elements in the list KEYWORDS from `font-lock-keywords'
++when Font Lock is turned on in major mode MODE.
++
++This is normally set via `font-lock-add-keywords' and
++`font-lock-remove-keywords'.")
++
++(defun font-lock-add-keywords (mode keywords &optional how)
++ "Add highlighting KEYWORDS for MODE.
++
++MODE should be a symbol, the major mode command name, such as `c-mode'
++or nil. If nil, highlighting keywords are added for the current buffer.
++KEYWORDS should be a list; see the variable `font-lock-keywords'.
++By default they are added at the beginning of the current highlighting list.
++If optional argument HOW is `set', they are used to replace the current
++highlighting list. If HOW is any other non-nil value, they are added at the
++end of the current highlighting list.
++
++For example:
++
++ (font-lock-add-keywords 'c-mode
++ '((\"\\\\\\=<\\\\(FIXME\\\\):\" 1 font-lock-warning-face prepend)
++ (\"\\\\\\=<\\\\(and\\\\|or\\\\|not\\\\)\\\\\\=>\" . font-lock-keyword-face)))
++
++adds two fontification patterns for C mode, to fontify `FIXME:' words, even in
++comments, and to fontify `and', `or' and `not' words as keywords.
++
++The above procedure will only add the keywords for C mode, not
++for modes derived from C mode. To add them for derived modes too,
++pass nil for MODE and add the call to c-mode-hook.
++
++For example:
++
++ (add-hook 'c-mode-hook
++ (lambda ()
++ (font-lock-add-keywords nil
++ '((\"\\\\\\=<\\\\(FIXME\\\\):\" 1 font-lock-warning-face prepend)
++ (\"\\\\\\=<\\\\(and\\\\|or\\\\|not\\\\)\\\\\\=>\" .
++ font-lock-keyword-face)))))
++
++The above procedure may fail to add keywords to derived modes if
++some involved major mode does not follow the standard conventions.
++File a bug report if this happens, so the major mode can be corrected.
++
++Note that some modes have specialized support for additional patterns, e.g.,
++see the variables `c-font-lock-extra-types', `c+-font-lock-extra-types',
++`objc-font-lock-extra-types' and `java-font-lock-extra-types'."
++ (cond (mode
++ ;; If MODE is non-nil, add the KEYWORDS and HOW spec to
++ ;; `font-lock-keywords-alist' so `font-lock-set-defaults' uses them.
++ (let ((spec (cons keywords how)) cell)
++ (if (setq cell (assq mode font-lock-keywords-alist))
++ (if (eq how 'set)
++ (setcdr cell (list spec))
++ (setcdr cell (append (cdr cell) (list spec))))
++ (push (list mode spec) font-lock-keywords-alist)))
++ ;; Make sure that `font-lock-removed-keywords-alist' does not
++ ;; contain the new keywords.
++ (font-lock-update-removed-keyword-alist mode keywords how))
++ (t
++ ;; Otherwise set or add the keywords now.
++ ;; This is a no-op if it has been done already in this buffer
++ ;; for the correct major mode.
++ (font-lock-set-defaults)
++ (let ((was-compiled (eq (car font-lock-keywords) t)))
++ ;; Bring back the user-level (uncompiled) keywords.
++ (if was-compiled
++ (setq font-lock-keywords (cadr font-lock-keywords)))
++ ;; Now modify or replace them.
++ (if (eq how 'set)
++ (setq font-lock-keywords keywords)
++ (font-lock-remove-keywords nil keywords) ;to avoid duplicates
++ (let ((old (if (eq (car-safe font-lock-keywords) t)
++ (cdr font-lock-keywords)
++ font-lock-keywords)))
++ (setq font-lock-keywords (if how
++ (append old keywords)
++ (append keywords old)))))
++ ;; If the keywords were compiled before, compile them again.
++ (if was-compiled
++ (setq font-lock-keywords
++ (font-lock-compile-keywords font-lock-keywords)))))))
++
++(defun font-lock-update-removed-keyword-alist (mode keywords how)
++ "Update `font-lock-removed-keywords-alist' when adding new KEYWORDS to MODE."
++ ;; When font-lock is enabled first all keywords in the list
++ ;; `font-lock-keywords-alist' are added, then all keywords in the
++ ;; list `font-lock-removed-keywords-alist' are removed. If a
++ ;; keyword was once added, removed, and then added again it must be
++ ;; removed from the removed-keywords list. Otherwise the second add
++ ;; will not take effect.
++ (let ((cell (assq mode font-lock-removed-keywords-alist)))
++ (if cell
++ (if (eq how 'set)
++ ;; A new set of keywords is defined. Forget all about
++ ;; our old keywords that should be removed.
++ (setq font-lock-removed-keywords-alist
++ (delq cell font-lock-removed-keywords-alist))
++ ;; Delete all previously removed keywords.
++ (dolist (kword keywords)
++ (setcdr cell (delete kword (cdr cell))))
++ ;; Delete the mode cell if empty.
++ (if (null (cdr cell))
++ (setq font-lock-removed-keywords-alist
++ (delq cell font-lock-removed-keywords-alist)))))))
++
++;; Written by Anders Lindgren <andersl at andersl.com>.
++;;
++;; Case study:
++;; (I) The keywords are removed from a major mode.
++;; In this case the keyword could be local (i.e. added earlier by
++;; `font-lock-add-keywords'), global, or both.
++;;
++;; (a) In the local case we remove the keywords from the variable
++;; `font-lock-keywords-alist'.
++;;
++;; (b) The actual global keywords are not known at this time.
++;; All keywords are added to `font-lock-removed-keywords-alist',
++;; when font-lock is enabled those keywords are removed.
++;;
++;; Note that added keywords are taken out of the list of removed
++;; keywords. This ensure correct operation when the same keyword
++;; is added and removed several times.
++;;
++;; (II) The keywords are removed from the current buffer.
++(defun font-lock-remove-keywords (mode keywords)
++ "Remove highlighting KEYWORDS for MODE.
++
++MODE should be a symbol, the major mode command name, such as `c-mode'
++or nil. If nil, highlighting keywords are removed for the current buffer.
++
++To make the removal apply to modes derived from MODE as well,
++pass nil for MODE and add the call to MODE-hook. This may fail
++for some derived modes if some involved major mode does not
++follow the standard conventions. File a bug report if this
++happens, so the major mode can be corrected."
++ (cond (mode
++ ;; Remove one keyword at the time.
++ (dolist (keyword keywords)
++ (let ((top-cell (assq mode font-lock-keywords-alist)))
++ ;; If MODE is non-nil, remove the KEYWORD from
++ ;; `font-lock-keywords-alist'.
++ (when top-cell
++ (dolist (keyword-list-how-pair (cdr top-cell))
++ ;; `keywords-list-how-pair' is a cons with a list of
++ ;; keywords in the car top-cell and the original how
++ ;; argument in the cdr top-cell.
++ (setcar keyword-list-how-pair
++ (delete keyword (car keyword-list-how-pair))))
++ ;; Remove keyword list/how pair when the keyword list
++ ;; is empty and how doesn't specify `set'. (If it
++ ;; should be deleted then previously deleted keywords
++ ;; would appear again.)
++ (let ((cell top-cell))
++ (while (cdr cell)
++ (if (and (null (car (car (cdr cell))))
++ (not (eq (cdr (car (cdr cell))) 'set)))
++ (setcdr cell (cdr (cdr cell)))
++ (setq cell (cdr cell)))))
++ ;; Final cleanup, remove major mode cell if last keyword
++ ;; was deleted.
++ (if (null (cdr top-cell))
++ (setq font-lock-keywords-alist
++ (delq top-cell font-lock-keywords-alist))))
++ ;; Remember the keyword in case it is not local.
++ (let ((cell (assq mode font-lock-removed-keywords-alist)))
++ (if cell
++ (unless (member keyword (cdr cell))
++ (nconc cell (list keyword)))
++ (push (cons mode (list keyword))
++ font-lock-removed-keywords-alist))))))
++ (t
++ ;; Otherwise remove it immediately.
++ (font-lock-set-defaults)
++ (let ((was-compiled (eq (car font-lock-keywords) t)))
++ ;; Bring back the user-level (uncompiled) keywords.
++ (if was-compiled
++ (setq font-lock-keywords (cadr font-lock-keywords)))
++
++ ;; Edit them.
++ (setq font-lock-keywords (copy-sequence font-lock-keywords))
++ (dolist (keyword keywords)
++ (setq font-lock-keywords
++ (delete keyword font-lock-keywords)))
++
++ ;; If the keywords were compiled before, compile them again.
++ (if was-compiled
++ (setq font-lock-keywords
++ (font-lock-compile-keywords font-lock-keywords)))))))