carbon2-commit: Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
16 years, 11 months
Aidan Kehoe
changeset: 4393:f83978c51585687c9ae6472d43ee06f8c290a440
tag: tip
parent: 4382:0b395a2f70d75507a0fe50dd41c4f6a543a4fefe
parent: 4392:461fdb92f3b61866f7787d1922376603c9cc4c96
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 02 22:29:36 2008 +0100
files: Makefile.in.in lisp/dumped-lisp.el lisp/gtk-iso8859-1.el lisp/x-iso8859-1.el src/doc.c src/emacs.c src/window.c
description:
Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 ChangeLog
--- a/ChangeLog Wed Jan 02 21:01:16 2008 +0100
+++ b/ChangeLog Wed Jan 02 22:29:36 2008 +0100
@@ -1,3 +1,7 @@ 2007-12-26 Stephen J. Turnbull <stephe
+2008-01-01 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * Makefile.in.in (mkpkgdir): Fix incorrect comment convention.
+
2007-12-26 Stephen J. Turnbull <stephen(a)xemacs.org>
* Makefile.in.in (mkpkgdir): Ensure only one late package directory.
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 Makefile.in.in
--- a/Makefile.in.in Wed Jan 02 21:01:16 2008 +0100
+++ b/Makefile.in.in Wed Jan 02 22:29:36 2008 +0100
@@ -520,9 +520,9 @@ check-available-packages:
echo " make install-all-packages"; \
fi
-# The test for a non-trivial path simply checks for the conventional Unix
-# path separator ":". This is reasonable because this is basically just
-# a convenience feature, anyway.
+## The test for a non-trivial path simply checks for the conventional Unix
+## path separator ":". This is reasonable because this is basically just
+## a convenience feature, anyway.
mkpkgdir: FRC.mkdir ${MAKEPATH}
@if test -z ${package_path}; \
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jan 02 21:01:16 2008 +0100
+++ b/lisp/ChangeLog Wed Jan 02 22:29:36 2008 +0100
@@ -1,3 +1,39 @@ 2007-12-30 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * gtk-init.el (init-post-gtk-win):
+ Trust the X11 code to give us decent default fonts.
+
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * x-iso8859-1.el: Removed.
+ * gtk-iso8859-1.el: Removed.
+ These haven't been used in a year and a half. No need to keep them
+ around.
+
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * minibuf.el (mouse-read-file-name-1): Make the buttons in the
+ dialog frame occupy `window-min-height' lines to avoid problems
+ when the window configuration changes---as it does with
+ `resize-minibuffer-mode'.
+
+2007-12-31 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * menubar-items.el (default-menubar):
+ Byte compile the specified lambdas. Correct some compile time
+ warnings uncovered by this.
+ * menubar-items.el (tutorials-menu-filter):
+ If a language environment doesn't have an associated POSIX locale
+ specified--which indicates we don't want it used except by those
+ who know what they're doing--don't show its tutorial in the menu.
+ * behavior.el (behavior-menu-filter):
+ Byte compile the lambdas in the generated menu.
+
+2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * iso8859-1.el: (provide 'iso8859-1) again, because one file uses
+ it in the packages.
+
2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
* subr.el (with-case-table): New.
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/behavior.el
--- a/lisp/behavior.el Wed Jan 02 21:01:16 2008 +0100
+++ b/lisp/behavior.el Wed Jan 02 22:29:36 2008 +0100
@@ -478,23 +478,23 @@ This takes into account the override inf
(defun behavior-menu-filter (menu)
(append
- '(("%_Package Utilities"
+ `(("%_Package Utilities"
("%_Set Download Site"
("%_Official Releases"
- :filter (lambda (&rest junk)
- (menu-split-long-menu
- (submenu-generate-accelerator-spec
- (package-ui-download-menu)))))
+ :filter ,#'(lambda (&rest junk)
+ (menu-split-long-menu
+ (submenu-generate-accelerator-spec
+ (package-ui-download-menu)))))
("%_Pre-Releases"
- :filter (lambda (&rest junk)
- (menu-split-long-menu
- (submenu-generate-accelerator-spec
- (package-ui-pre-release-download-menu)))))
+ :filter ,#'(lambda (&rest junk)
+ (menu-split-long-menu
+ (submenu-generate-accelerator-spec
+ (package-ui-pre-release-download-menu)))))
("%_Site Releases"
- :filter (lambda (&rest junk)
- (menu-split-long-menu
- (submenu-generate-accelerator-spec
- (package-ui-site-release-download-menu))))))
+ :filter ,#'(lambda (&rest junk)
+ (menu-split-long-menu
+ (submenu-generate-accelerator-spec
+ (package-ui-site-release-download-menu))))))
"--:shadowEtchedIn"
["%_Update Package Index" package-get-update-base]
["%_List and Install" pui-list-packages]
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/dumped-lisp.el
--- a/lisp/dumped-lisp.el Wed Jan 02 21:01:16 2008 +0100
+++ b/lisp/dumped-lisp.el Wed Jan 02 22:29:36 2008 +0100
@@ -105,7 +105,7 @@ in dumped-lisp.el and is not itself list
"isearch-mode"
"buffer"
"buff-menu"
- "paths.el" ; don't get confused if paths compiled.
+ "paths"
"lisp"
"page"
"register"
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/gtk-init.el
--- a/lisp/gtk-init.el Wed Jan 02 21:01:16 2008 +0100
+++ b/lisp/gtk-init.el Wed Jan 02 22:29:36 2008 +0100
@@ -133,62 +133,6 @@ GNU long form though.")
(defun init-post-gtk-win ()
(unless gtk-post-win-initted
- (when (featurep 'mule)
- (define-specifier-tag 'mule-fonts
- (lambda (device) (eq 'gtk (device-type device))))
- (set-face-font
- 'default
- '("-*-fixed-medium-r-*--16-*-iso8859-1"
- "-*-fixed-medium-r-*--*-iso8859-1"
- "-*-fixed-medium-r-*--*-iso8859-2"
- "-*-fixed-medium-r-*--*-iso8859-3"
- "-*-fixed-medium-r-*--*-iso8859-4"
- "-*-fixed-medium-r-*--*-iso8859-7"
- "-*-fixed-medium-r-*--*-iso8859-8"
- "-*-fixed-medium-r-*--*-iso8859-5"
- "-*-fixed-medium-r-*--*-iso8859-9"
-
- ;; Following 3 fonts proposed by Teruhiko.Kurosaka(a)Japan.eng.sun
- "-sun-gothic-medium-r-normal--14-120-75-75-c-60-jisx0201.1976-0"
- "-sun-gothic-medium-r-normal--14-120-75-75-c-120-jisx0208.1983-0"
- "-wadalab-gothic-medium-r-normal--14-120-75-75-c-120-jisx0212.1990-0"
- ;; Other Japanese fonts
- "-*-fixed-medium-r-*--*-jisx0201.1976-*"
- "-*-fixed-medium-r-*--*-jisx0208.1983-*"
- "-*-fixed-medium-r-*--*-jisx0212*-*"
-
- ;; Chinese fonts
- "-*-*-medium-r-*--*-gb2312.1980-*"
-
- ;; Use One font specification for CNS chinese
- ;; Too many variations in font naming
- "-*-fixed-medium-r-*--*-cns11643*-*"
- ;; "-*-fixed-medium-r-*--*-cns11643*2"
- ;; "-*-fixed-medium-r-*--*-cns11643*3"
- ;; "-*-fixed-medium-r-*--*-cns11643*4"
- ;; "-*-fixed-medium-r-*--*-cns11643.5-0"
- ;; "-*-fixed-medium-r-*--*-cns11643.6-0"
- ;; "-*-fixed-medium-r-*--*-cns11643.7-0"
-
- "-*-fixed-medium-r-*--*-big5*-*"
- "-*-fixed-medium-r-*--*-sisheng_cwnn-0"
-
- ;; Other fonts
-
- ;; "-*-fixed-medium-r-*--*-viscii1.1-1"
-
- ;; "-*-fixed-medium-r-*--*-mulearabic-0"
- ;; "-*-fixed-medium-r-*--*-mulearabic-1"
- ;; "-*-fixed-medium-r-*--*-mulearabic-2"
-
- ;; "-*-fixed-medium-r-*--*-muleipa-1"
- ;; "-*-fixed-medium-r-*--*-ethio-*"
-
- "-*-mincho-medium-r-*--*-ksc5601.1987-*" ; Korean
- "-*-fixed-medium-r-*--*-tis620.2529-1" ; Thai
- )
- 'global '(mule-fonts) 'append))
-
(setq gtk-post-win-initted t)))
(push '("-geometry" . gtk-init-handle-geometry) command-switch-alist)
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/iso8859-1.el
--- a/lisp/iso8859-1.el Wed Jan 02 21:01:16 2008 +0100
+++ b/lisp/iso8859-1.el Wed Jan 02 22:29:36 2008 +0100
@@ -84,4 +84,7 @@
;; by default.
(setq-default ctl-arrow #xA0)
+;; Shouldn't be necessary, but one file in the packages uses it:
+(provide 'iso8859-1)
+
;;; iso8859-1.el ends here
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/menubar-items.el
--- a/lisp/menubar-items.el Wed Jan 02 21:01:16 2008 +0100
+++ b/lisp/menubar-items.el Wed Jan 02 22:29:36 2008 +0100
@@ -99,23 +99,20 @@ Write your filter like this:
(coding-system-list)))))
(defconst default-menubar
-; (purecopy-menubar ;purespace is dead
- ;; note backquote.
- `(
- ("%_File"
+ ;; This is backquoted; a lambda with a preceding , will be byte-compiled.
+ `(("%_File"
["%_Open..." find-file]
["Open in Other %_Window..." find-file-other-window]
["Open in New %_Frame..." find-file-other-frame]
("Open with Specified %_Encoding"
:filter
- (lambda (menu)
- (coding-system-menu-filter
- (lambda (entry)
- (let ((coding-system-for-read entry))
- (call-interactively 'find-file)))
- (lambda (entry) t)
- t))
- )
+ ,#'(lambda (menu)
+ (coding-system-menu-filter
+ (lambda (entry)
+ (let ((coding-system-for-read entry))
+ (call-interactively 'find-file)))
+ (lambda (entry) t)
+ t)))
["%_Hex Edit File..." hexl-find-file
:active (fboundp 'hexl-find-file)]
["%_Insert File..." insert-file]
@@ -135,7 +132,7 @@ Write your filter like this:
["Save So%_me Buffers" save-some-buffers]
"-----"
,@(if (valid-specifier-tag-p 'msprinter)
- '(["Page Set%_up..." generic-page-setup]))
+ '(["Page Set%_up..." generic-page-setup]))
["%_Print" generic-print-buffer
:active (or (valid-specifier-tag-p 'msprinter)
(and (not (eq system-type 'windows-nt))
@@ -152,384 +149,386 @@ Write your filter like this:
:active (or buffer-file-name revert-buffer-function)
:suffix (if put-buffer-names-in-file-menu (buffer-name) "")]
("Rever%_t/Recover"
- ("Revert Buffer with Specified %_Encoding"
-:filter
- (lambda (menu)
- (coding-system-menu-filter
- (lambda (entry)
- (let ((coding-system-for-read entry))
- (revert-buffer)))
- (lambda (entry) (or buffer-file-name revert-buffer-function))
- t))
+ ("Revert Buffer with Specified %_Encoding"
+ :filter
+ ,#'(lambda (menu)
+ (coding-system-menu-filter
+ (lambda (entry)
+ (let ((coding-system-for-read entry))
+ (revert-buffer)))
+ (lambda (entry) (or buffer-file-name revert-buffer-function))
+ t)))
+ ["Re%_cover Buffer from Autosave" (recover-file buffer-file-name)
+ :active buffer-file-name
+ :suffix (if put-buffer-names-in-file-menu (buffer-name) "")]
+ ["Recover %_Session..." recover-session]
)
- ["Re%_cover Buffer from Autosave" (recover-file buffer-file-name)
-:active buffer-file-name
-:suffix (if put-buffer-names-in-file-menu (buffer-name) "")]
- ["Recover %_Session..." recover-session]
- )
"-----"
["E%_xit XEmacs" save-buffers-kill-emacs]
)
("%_Edit"
- ["%_Undo" undo
-:active (and (not (eq buffer-undo-list t))
- (or buffer-undo-list pending-undo-list))
-:suffix (if (eq last-command 'undo) "More" "")]
- ["%_Redo" redo
-:included (fboundp 'redo)
-:active (not (or (eq buffer-undo-list t)
- (eq last-buffer-undo-list nil)
- (not (or (eq last-buffer-undo-list buffer-undo-list)
- (and (null (car-safe buffer-undo-list))
- (eq last-buffer-undo-list
- (cdr-safe buffer-undo-list)))))
- (or (eq buffer-undo-list pending-undo-list)
- (eq (cdr buffer-undo-list) pending-undo-list))))
-:suffix (if (eq last-command 'redo) "More" "")]
+ ["%_Undo" undo
+:active (and (not (eq buffer-undo-list t))
+ (or buffer-undo-list pending-undo-list))
+:suffix (if (eq last-command 'undo) "More" "")]
+ ["%_Redo" redo
+:included (fboundp 'redo)
+:active (not (or (eq buffer-undo-list t)
+ (eq last-buffer-undo-list nil)
+ (not (or (eq last-buffer-undo-list buffer-undo-list)
+ (and (null (car-safe buffer-undo-list))
+ (eq last-buffer-undo-list
+ (cdr-safe buffer-undo-list)))))
+ (or (eq buffer-undo-list pending-undo-list)
+ (eq (cdr buffer-undo-list) pending-undo-list))))
+:suffix (if (eq last-command 'redo) "More" "")]
+ "----"
+ ["Cu%_t" kill-primary-selection
+:active (selection-owner-p)]
+ ["%_Copy" copy-primary-selection
+:active (selection-owner-p)]
+ ["%_Paste" yank-clipboard-selection
+:active (selection-exists-p 'CLIPBOARD)]
+ ["%_Delete" delete-primary-selection
+:active (selection-owner-p)]
+ "----"
+ ["Select %_All" mark-whole-buffer]
+ ["Select Pa%_ge" mark-page]
+ ["Select Paragrap%_h" mark-paragraph]
+ ["Re%_select Region" activate-region :active (mark t)]
+ "----"
+ ["%_Find..." make-search-dialog]
+ ["R%_eplace..." query-replace]
+ ["Replace (Rege%_xp)..." query-replace-regexp]
+ ["List %_Matching Lines..." list-matching-lines]
+ )
+
+ ("%_View"
+ ["%_Split Window" split-window-vertically]
+ ["S%_plit Window (Side by Side)" split-window-horizontally]
+ ["%_Un-Split (Keep This)" delete-other-windows
+:active (not (one-window-p t))]
+ ["Un-Split (Keep %_Others)" delete-window
+:active (not (one-window-p t))]
+ ["Balance %_Windows" balance-windows
+:active (not (one-window-p t))]
+ ["Shrink Window to %_Fit" shrink-window-if-larger-than-buffer]
+ "----"
+ ("N%_arrow"
+ ["%_Narrow to Region" narrow-to-region :active (region-exists-p)]
+ ["Narrow to %_Page" narrow-to-page]
+ ["Narrow to %_Defun" narrow-to-defun]
"----"
- ["Cu%_t" kill-primary-selection
-:active (selection-owner-p)]
- ["%_Copy" copy-primary-selection
-:active (selection-owner-p)]
- ["%_Paste" yank-clipboard-selection
-:active (selection-exists-p 'CLIPBOARD)]
- ["%_Delete" delete-primary-selection
-:active (selection-owner-p)]
- "----"
- ["Select %_All" mark-whole-buffer]
- ["Select Pa%_ge" mark-page]
- ["Select Paragrap%_h" mark-paragraph]
- ["Re%_select Region" activate-region :active (mark t)]
- "----"
- ["%_Find..." make-search-dialog]
- ["R%_eplace..." query-replace]
- ["Replace (Rege%_xp)..." query-replace-regexp]
- ["List %_Matching Lines..." list-matching-lines]
+ ["%_Widen" widen :active (or (/= (point-min) 1)
+ (/= (point-max) (1+ (buffer-size))))]
)
-
- ("%_View"
- ["%_Split Window" split-window-vertically]
- ["S%_plit Window (Side by Side)" split-window-horizontally]
- ["%_Un-Split (Keep This)" delete-other-windows
-:active (not (one-window-p t))]
- ["Un-Split (Keep %_Others)" delete-window
-:active (not (one-window-p t))]
- ["Balance %_Windows" balance-windows
-:active (not (one-window-p t))]
- ["Shrink Window to %_Fit" shrink-window-if-larger-than-buffer]
- "----"
- ("N%_arrow"
- ["%_Narrow to Region" narrow-to-region :active (region-exists-p)]
- ["Narrow to %_Page" narrow-to-page]
- ["Narrow to %_Defun" narrow-to-defun]
- "----"
- ["%_Widen" widen :active (or (/= (point-min) 1)
- (/= (point-max) (1+ (buffer-size))))]
- )
- "----"
- ["%_Goto Line..." goto-line]
- ["Beginning of %_Defun" beginning-of-defun]
- ["%_End of Defun" end-of-defun]
- ["%_Count Lines in Buffer" count-lines-buffer
-:included (not (region-active-p))]
- ["%_Count Lines in Region" count-lines-region
-:included (region-active-p)]
- "----"
- ["%_Jump to Previous Mark" (set-mark-command t)
-:active (mark t)]
- ["Se%_t Bookmark" bookmark-set
-:active (fboundp 'bookmark-set)]
- ("%_Bookmarks"
-:filter
- (lambda (menu)
- (let ((alist (and-boundp 'bookmark-alist
- bookmark-alist)))
- (if (not alist)
- menu
- (let ((items
+ "----"
+ ["%_Goto Line..." goto-line]
+ ["Beginning of %_Defun" beginning-of-defun]
+ ["%_End of Defun" end-of-defun]
+ ["%_Count Lines in Buffer" count-lines-buffer
+:included (not (region-active-p))]
+ ["%_Count Lines in Region" count-lines-region
+:included (region-active-p)]
+ "----"
+ ["%_Jump to Previous Mark" (set-mark-command t)
+:active (mark t)]
+ ["Se%_t Bookmark" bookmark-set
+:active (fboundp 'bookmark-set)]
+ ("%_Bookmarks"
+:filter
+ ,#'(lambda (menu)
+ (let ((alist (and-boundp 'bookmark-alist
+ bookmark-alist)))
+ (if (not alist)
+ menu
+ (let ((items
+ (submenu-generate-accelerator-spec
+ (mapcar #'(lambda (bmk)
+ `[,bmk (bookmark-jump ',bmk)])
+ (bookmark-all-names)))))
+ (append menu '("---") items)))))
+ "---"
+ ["Insert %_Contents" bookmark-menu-insert
+:active (fboundp 'bookmark-menu-insert)]
+ ["Insert L%_ocation" bookmark-menu-locate
+:active (fboundp 'bookmark-menu-locate)]
+ "---"
+ ["%_Rename Bookmark" bookmark-menu-rename
+:active (fboundp 'bookmark-menu-rename)]
+ ("%_Delete Bookmark"
+:filter ,#'(lambda (menu)
(submenu-generate-accelerator-spec
(mapcar #'(lambda (bmk)
- `[,bmk (bookmark-jump ',bmk)])
+ `[,bmk (bookmark-delete ',bmk)])
(bookmark-all-names)))))
- (append menu '("---") items)))))
- "---"
- ["Insert %_Contents" bookmark-menu-insert
- :active (fboundp 'bookmark-menu-insert)]
- ["Insert L%_ocation" bookmark-menu-locate
- :active (fboundp 'bookmark-menu-locate)]
- "---"
- ["%_Rename Bookmark" bookmark-menu-rename
- :active (fboundp 'bookmark-menu-rename)]
- ("%_Delete Bookmark"
- :filter (lambda (menu)
- (submenu-generate-accelerator-spec
- (mapcar #'(lambda (bmk)
- `[,bmk (bookmark-delete ',bmk)])
- (bookmark-all-names)))))
- ["%_Edit Bookmark List" bookmark-bmenu-list
- :active (and-boundp 'bookmark-alist bookmark-alist)]
- "---"
- ["%_Save Bookmarks" bookmark-save
- :active (and-boundp 'bookmark-alist bookmark-alist)]
- ["Save Bookmarks %_As..." bookmark-write
- :active (and-boundp 'bookmark-alist bookmark-alist)]
- ["%_Load a Bookmark File" bookmark-load
- :active (fboundp 'bookmark-load)]
- )
+ ["%_Edit Bookmark List" bookmark-bmenu-list
+:active (and-boundp 'bookmark-alist bookmark-alist)]
+ "---"
+ ["%_Save Bookmarks" bookmark-save
+:active (and-boundp 'bookmark-alist bookmark-alist)]
+ ["Save Bookmarks %_As..." bookmark-write
+:active (and-boundp 'bookmark-alist bookmark-alist)]
+ ["%_Load a Bookmark File" bookmark-load
+:active (fboundp 'bookmark-load)]
)
+ )
("C%_mds"
- ["Repeat Last Comple%_x Command..." repeat-complex-command]
- ["E%_valuate Lisp Expression..." eval-expression]
- ["Execute %_Named Command..." execute-extended-command]
+ ["Repeat Last Comple%_x Command..." repeat-complex-command]
+ ["E%_valuate Lisp Expression..." eval-expression]
+ ["Execute %_Named Command..." execute-extended-command]
+ "----"
+ ["Start %_Defining Macro" start-kbd-macro
+:included (not defining-kbd-macro)]
+ ["Stop %_Defining Macro" end-kbd-macro
+:included defining-kbd-macro]
+ ["%_Execute Last Macro" call-last-kbd-macro
+:active last-kbd-macro]
+ ("Other %_Macro"
+ ["Edit %_Last Macro" edit-last-kbd-macro
+:active last-kbd-macro]
+ ["%_Edit Macro..." edit-kbd-macro]
+ ["%_Append to Last Macro" (start-kbd-macro t)
+:active (and (not defining-kbd-macro) last-kbd-macro)]
+ "---"
+ ["%_Name Last Macro..." name-last-kbd-macro
+:active last-kbd-macro]
+ ["Assign Last Macro to %_Key..." assign-last-kbd-macro-to-key
+:active (and last-kbd-macro
+ (fboundp 'assign-last-kbd-macro-to-key))]
+ "---"
+ ["E%_xecute Last Macro on Region Lines"
+:active (and last-kbd-macro (region-exists-p))]
+ "---"
+ ["%_Query User During Macro" kbd-macro-query
+:active defining-kbd-macro]
+ ["Enter %_Recursive Edit During Macro" (kbd-macro-query t)
+:active defining-kbd-macro]
+ "---"
+ ["%_Insert Named Macro into Buffer..." insert-kbd-macro]
+ ["Read Macro from Re%_gion" read-kbd-macro
+:active (region-exists-p)]
+ )
+ "----"
+ ["D%_ynamic Abbrev Expand" dabbrev-expand]
+ ["Define %_Global Abbrev for " add-global-abbrev
+:suffix (truncate-string-to-width (abbrev-string-to-be-defined nil)
+ 40 nil nil t)]
+ ("Other %_Abbrev"
+ ["Dynamic Abbrev %_Complete" dabbrev-completion]
+ ["Dynamic Abbrev Complete in %_All Buffers" (dabbrev-completion 16)]
"----"
- ["Start %_Defining Macro" start-kbd-macro
-:included (not defining-kbd-macro)]
- ["Stop %_Defining Macro" end-kbd-macro
-:included defining-kbd-macro]
- ["%_Execute Last Macro" call-last-kbd-macro
-:active last-kbd-macro]
- ("Other %_Macro"
- ["Edit %_Last Macro" edit-last-kbd-macro
- :active last-kbd-macro]
- ["%_Edit Macro..." edit-kbd-macro]
- ["%_Append to Last Macro" (start-kbd-macro t)
- :active (and (not defining-kbd-macro) last-kbd-macro)]
- "---"
- ["%_Name Last Macro..." name-last-kbd-macro
- :active last-kbd-macro]
- ["Assign Last Macro to %_Key..." assign-last-kbd-macro-to-key
- :active (and last-kbd-macro
- (fboundp 'assign-last-kbd-macro-to-key))]
- "---"
- ["E%_xecute Last Macro on Region Lines"
- :active (and last-kbd-macro (region-exists-p))]
- "---"
- ["%_Query User During Macro" kbd-macro-query
- :active defining-kbd-macro]
- ["Enter %_Recursive Edit During Macro" (kbd-macro-query t)
- :active defining-kbd-macro]
- "---"
- ["%_Insert Named Macro into Buffer..." insert-kbd-macro]
- ["Read Macro from Re%_gion" read-kbd-macro
- :active (region-exists-p)]
- )
"----"
- ["D%_ynamic Abbrev Expand" dabbrev-expand]
- ["Define %_Global Abbrev for " add-global-abbrev
- :suffix (truncate-string-to-width (abbrev-string-to-be-defined nil)
+ ["%_Define Global Abbrev for " add-global-abbrev
+:suffix (truncate-string-to-width (abbrev-string-to-be-defined nil)
40 nil nil t)]
- ("Other %_Abbrev"
- ["Dynamic Abbrev %_Complete" dabbrev-completion]
- ["Dynamic Abbrev Complete in %_All Buffers" (dabbrev-completion 16)]
- "----"
- "----"
- ["%_Define Global Abbrev for " add-global-abbrev
- :suffix (truncate-string-to-width (abbrev-string-to-be-defined nil)
+ ["Define %_Mode-Specific Abbrev for " add-mode-abbrev
+:suffix (truncate-string-to-width (abbrev-string-to-be-defined nil)
40 nil nil t)]
- ["Define %_Mode-Specific Abbrev for " add-mode-abbrev
- :suffix (truncate-string-to-width (abbrev-string-to-be-defined nil)
- 40 nil nil t)]
- ["Define Global Ex%_pansion for " inverse-add-global-abbrev
- :suffix (truncate-string-to-width
+ ["Define Global Ex%_pansion for " inverse-add-global-abbrev
+:suffix (truncate-string-to-width
(inverse-abbrev-string-to-be-defined 1)
40 nil nil t)]
- ["Define Mode-Specific Expa%_nsion for " inverse-add-mode-abbrev
- :suffix (truncate-string-to-width
+ ["Define Mode-Specific Expa%_nsion for " inverse-add-mode-abbrev
+:suffix (truncate-string-to-width
(inverse-abbrev-string-to-be-defined 1)
40 nil nil t)]
- "---"
- ["E%_xpand Abbrev" expand-abbrev]
- ["Expand Abbrevs in Re%_gion" expand-region-abbrevs
- :active (region-exists-p)]
- ["%_Unexpand Last Abbrev" unexpand-abbrev
- :active (and (stringp last-abbrev-text)
- (> last-abbrev-location 0))]
- "---"
- ["%_Kill All Abbrevs" kill-all-abbrevs]
- ["%_Insert All Abbrevs into Buffer" insert-abbrevs]
- ["%_List Abbrevs" list-abbrevs]
- "---"
- ["%_Edit Abbrevs" edit-abbrevs]
- ["%_Redefine Abbrevs from Buffer" edit-abbrevs-redefine
- :active (eq major-mode 'edit-abbrevs-mode)]
- "---"
- ["%_Save Abbrevs As..." write-abbrev-file]
- ["L%_oad Abbrevs..." read-abbrev-file]
- )
- "---"
- ["%_Cut Rectangle" kill-rectangle]
- ["%_Prefix Rectangle..." string-rectangle]
- ("Other %_Rectangles/Register"
- ["%_Yank Rectangle" yank-rectangle]
- ["Rectangle %_to Register" copy-rectangle-to-register]
- ["Rectangle %_from Register" insert-register]
- ["%_Delete Rectangle" clear-rectangle]
- ["%_Open Rectangle" open-rectangle]
- ["Rectangle %_Mousing"
- (customize-set-variable 'mouse-track-rectangle-p
+ "---"
+ ["E%_xpand Abbrev" expand-abbrev]
+ ["Expand Abbrevs in Re%_gion" expand-region-abbrevs
+:active (region-exists-p)]
+ ["%_Unexpand Last Abbrev" unexpand-abbrev
+:active (and (stringp last-abbrev-text)
+ (> last-abbrev-location 0))]
+ "---"
+ ["%_Kill All Abbrevs" kill-all-abbrevs]
+ ["%_Insert All Abbrevs into Buffer" insert-abbrevs]
+ ["%_List Abbrevs" list-abbrevs]
+ "---"
+ ["%_Edit Abbrevs" edit-abbrevs]
+ ["%_Redefine Abbrevs from Buffer" edit-abbrevs-redefine
+:active (eq major-mode 'edit-abbrevs-mode)]
+ "---"
+ ["%_Save Abbrevs As..." write-abbrev-file]
+ ["L%_oad Abbrevs..." read-abbrev-file]
+ )
+ "---"
+ ["%_Cut Rectangle" kill-rectangle]
+ ["%_Prefix Rectangle..." string-rectangle]
+ ("Other %_Rectangles/Register"
+ ["%_Yank Rectangle" yank-rectangle]
+ ["Rectangle %_to Register" copy-rectangle-to-register]
+ ["Rectangle %_from Register" insert-register]
+ ["%_Delete Rectangle" clear-rectangle]
+ ["%_Open Rectangle" open-rectangle]
+ ["Rectangle %_Mousing"
+ (customize-set-variable 'mouse-track-rectangle-p
(not mouse-track-rectangle-p))
- :style toggle :selected mouse-track-rectangle-p]
- "---"
- ["%_Copy to Register..." copy-to-register :active (region-exists-p)]
- ["%_Append to Register..." append-register :active (region-exists-p)]
- ["%_Insert Register..." insert-register]
- "---"
- ["%_Save Point to Register" point-to-register]
- ["%_Jump to Register" register-to-point]
- )
- "---"
- ["%_Sort Lines in Region" sort-lines :active (region-exists-p)]
- ["%_Uppercase Region or Word" upcase-region-or-word]
- ["%_Lowercase Region or Word" downcase-region-or-word]
- ["%_Indent Region or Balanced Expression"
- indent-region-or-balanced-expression]
- ["%_Fill Paragraph or Region" fill-paragraph-or-region]
- ("Other %_Text Commands"
- ["Sort %_Paragraphs in Region" sort-paragraphs :active (region-exists-p)]
- ["Sort Pa%_ges in Region" sort-pages :active (region-exists-p)]
- ["Sort C%_olumns in Region" sort-columns :active (region-exists-p)]
- ["Sort %_Regexp..." sort-regexp-fields :active (region-exists-p)]
- "---"
- ["%_Capitalize Region" capitalize-region :active (region-exists-p)]
- ["Title-C%_ase Region" capitalize-region-as-title
- :active (region-exists-p)]
- "----"
- ["C%_enter Region or Paragraph"
- (if (region-active-p) (center-region) (center-line))]
- ["Center %_Line" center-line]
- "---"
- ["%_Indent Region Rigidly" indent-rigidly :active (region-exists-p)]
- ["In%_dent To Column..." indent-to-column]
- "---"
- ["%_Untabify (Tabs to Spaces)" untabify :active (and (region-exists-p)
- (fboundp 'untabify))]
- ["%_Tabify (Spaces to Tabs)" tabify :active (and (region-exists-p)
- (fboundp 'tabify))]
- ["Tab to Tab %_Stop" tab-to-tab-stop]
- ["Edit Ta%_b Stops" edit-tab-stops]
- )
- "---"
- ("%_Tags"
- ["%_Find Tag..." find-tag]
- ["Find %_Other Window..." find-tag-other-window]
- ["%_Next Tag..." (find-tag nil)]
- ["N%_ext Other Window..." (find-tag-other-window nil)]
- ["Next %_File" next-file]
- "-----"
- ["Tags %_Search..." tags-search]
- ["Tags %_Replace..." tags-query-replace]
- ["%_Continue Search/Replace" tags-loop-continue]
- "-----"
- ["%_Pop stack" pop-tag-mark]
- ["%_Apropos..." tags-apropos]
- "-----"
- ["%_Set Tags Table File..." visit-tags-table]
- )
- )
+:style toggle :selected mouse-track-rectangle-p]
+ "---"
+ ["%_Copy to Register..." copy-to-register :active (region-exists-p)]
+ ["%_Append to Register..." append-register :active (region-exists-p)]
+ ["%_Insert Register..." insert-register]
+ "---"
+ ["%_Save Point to Register" point-to-register]
+ ["%_Jump to Register" register-to-point]
+ )
+ "---"
+ ["%_Sort Lines in Region" sort-lines :active (region-exists-p)]
+ ["%_Uppercase Region or Word" upcase-region-or-word]
+ ["%_Lowercase Region or Word" downcase-region-or-word]
+ ["%_Indent Region or Balanced Expression"
+ indent-region-or-balanced-expression]
+ ["%_Fill Paragraph or Region" fill-paragraph-or-region]
+ ("Other %_Text Commands"
+ ["Sort %_Paragraphs in Region" sort-paragraphs :active (region-exists-p)]
+ ["Sort Pa%_ges in Region" sort-pages :active (region-exists-p)]
+ ["Sort C%_olumns in Region" sort-columns :active (region-exists-p)]
+ ["Sort %_Regexp..." sort-regexp-fields :active (region-exists-p)]
+ "---"
+ ["%_Capitalize Region" capitalize-region :active (region-exists-p)]
+ ["Title-C%_ase Region" capitalize-region-as-title
+:active (region-exists-p)]
+ "----"
+ ["C%_enter Region or Paragraph"
+ (if (region-active-p) (center-region) (center-line))]
+ ["Center %_Line" center-line]
+ "---"
+ ["%_Indent Region Rigidly" indent-rigidly :active (region-exists-p)]
+ ["In%_dent To Column..." indent-to-column]
+ "---"
+ ["%_Untabify (Tabs to Spaces)" untabify :active (and (region-exists-p)
+ (fboundp 'untabify))]
+ ["%_Tabify (Spaces to Tabs)" tabify :active (and (region-exists-p)
+ (fboundp 'tabify))]
+ ["Tab to Tab %_Stop" tab-to-tab-stop]
+ ["Edit Ta%_b Stops" edit-tab-stops]
+ )
+ "---"
+ ("%_Tags"
+ ["%_Find Tag..." find-tag]
+ ["Find %_Other Window..." find-tag-other-window]
+ ["%_Next Tag..." (find-tag nil)]
+ ["N%_ext Other Window..." (find-tag-other-window nil)]
+ ["Next %_File" next-file]
+ "-----"
+ ["Tags %_Search..." tags-search]
+ ["Tags %_Replace..." tags-query-replace]
+ ["%_Continue Search/Replace" tags-loop-continue]
+ "-----"
+ ["%_Pop stack" pop-tag-mark]
+ ["%_Apropos..." tags-apropos]
+ "-----"
+ ["%_Set Tags Table File..." visit-tags-table]
+ )
+ )
;; #### Delete this entire menu as soon as the new package source is
;; committed.
("%_Tools"
- ("%_Packages"
- ("%_Set Download Site"
- ("%_Official Releases"
- :filter (lambda (&rest junk)
- (menu-split-long-menu
- (submenu-generate-accelerator-spec
- (package-ui-download-menu)))))
- ("%_Pre-Releases"
- :filter (lambda (&rest junk)
- (menu-split-long-menu
- (submenu-generate-accelerator-spec
- (package-ui-pre-release-download-menu)))))
- ("%_Site Releases"
- :filter (lambda (&rest junk)
- (menu-split-long-menu
- (submenu-generate-accelerator-spec
- (package-ui-site-release-download-menu))))))
- "--:shadowEtchedIn"
- ["%_Update Package Index" package-get-update-base]
- ["%_List and Install" pui-list-packages]
- ["U%_pdate Installed Packages" package-get-update-all]
- ["%_Help" (Info-goto-node "(xemacs)Packages")])
- ("%_Internet"
- ["Read Mail %_1 (VM)..." vm
- :active (fboundp 'vm)]
- ["Read Mail %_2 (MH)..." (mh-rmail t)
- :active (fboundp 'mh-rmail)]
- ["Send %_Mail..." compose-mail
- :active (fboundp 'compose-mail)]
- ["Usenet %_News" gnus
- :active (fboundp 'gnus)]
- ["Browse the %_Web" w3
- :active (fboundp 'w3)])
- "---"
- ("%_Grep"
-:filter
- (lambda (menu)
- (if (or (not (boundp 'grep-history)) (null grep-history))
- menu
- (let ((items
- (submenu-generate-accelerator-spec
- (mapcar #'(lambda (label-value)
- (vector (first label-value)
- (list 'grep (second label-value))))
- (Menubar-items-truncate-history
- grep-history 10 50)))))
- (append menu '("---") items))))
- ["%_Grep..." grep :active (fboundp 'grep)]
- ["%_Kill Grep" kill-compilation
- :active (and (fboundp 'kill-compilation)
- (fboundp 'compilation-find-buffer)
- (let ((buffer (condition-case nil
- (compilation-find-buffer)
- (error nil))))
- (and buffer (get-buffer-process buffer))))]
- "---"
- ["Grep %_All Files in Current Directory..."
- grep-all-files-in-current-directory
- :active (fboundp 'grep-all-files-in-current-directory)]
- ["Grep All Files in Current Directory %_Recursively..."
- grep-all-files-in-current-directory-and-below
- :active (fboundp 'grep-all-files-in-current-directory-and-below)]
- "---"
- ["Grep %_C and C Header Files in Current Directory..."
- (progn
- (require 'compile)
- (let ((grep-command
- (cons (concat grep-command " *.[chCH]"
+ ("%_Packages"
+ ("%_Set Download Site"
+ ("%_Official Releases"
+ :filter ,#'(lambda (&rest junk)
+ (menu-split-long-menu
+ (submenu-generate-accelerator-spec
+ (package-ui-download-menu)))))
+ ("%_Pre-Releases"
+ :filter ,#'(lambda (&rest junk)
+ (menu-split-long-menu
+ (submenu-generate-accelerator-spec
+ (package-ui-pre-release-download-menu)))))
+ ("%_Site Releases"
+ :filter ,#'(lambda (&rest junk)
+ (menu-split-long-menu
+ (submenu-generate-accelerator-spec
+ (package-ui-site-release-download-menu))))))
+ "--:shadowEtchedIn"
+ ["%_Update Package Index" package-get-update-base]
+ ["%_List and Install" pui-list-packages]
+ ["U%_pdate Installed Packages" package-get-update-all]
+ ["%_Help" (Info-goto-node "(xemacs)Packages")])
+ ("%_Internet"
+ ["Read Mail %_1 (VM)..." vm
+:active (fboundp 'vm)]
+ ["Read Mail %_2 (MH)..." (mh-rmail t)
+:active (fboundp 'mh-rmail)]
+ ["Send %_Mail..." compose-mail
+:active (fboundp 'compose-mail)]
+ ["Usenet %_News" gnus
+:active (fboundp 'gnus)]
+ ["Browse the %_Web" w3
+:active (fboundp 'w3)])
+ "---"
+ ("%_Grep"
+:filter
+ ,#'(lambda (menu)
+ (if-boundp 'grep-history
+ (if grep-history
+ (let ((items
+ (submenu-generate-accelerator-spec
+ (mapcar #'(lambda (label-value)
+ (vector (first label-value)
+ (list 'grep
+ (second label-value))))
+ (Menubar-items-truncate-history
+ grep-history 10 50)))))
+ (append menu '("---") items))
+ menu)
+ menu))
+ ["%_Grep..." grep :active (fboundp 'grep)]
+ ["%_Kill Grep" kill-compilation
+:active (and (fboundp 'kill-compilation)
+ (fboundp 'compilation-find-buffer)
+ (let ((buffer (condition-case nil
+ (compilation-find-buffer)
+ (error nil))))
+ (and buffer (get-buffer-process buffer))))]
+ "---"
+ ["Grep %_All Files in Current Directory..."
+ grep-all-files-in-current-directory
+:active (fboundp 'grep-all-files-in-current-directory)]
+ ["Grep All Files in Current Directory %_Recursively..."
+ grep-all-files-in-current-directory-and-below
+:active (fboundp 'grep-all-files-in-current-directory-and-below)]
+ "---"
+ ["Grep %_C and C Header Files in Current Directory..."
+ (progn
+ (require 'compile)
+ (let ((grep-command
+ (cons (concat grep-command " *.[chCH]"
; i wanted to also use *.cc and *.hh.
; see long comment below under Perl.
- )
- (length grep-command))))
- (call-interactively 'grep)))
- :active (fboundp 'grep)]
- ["Grep C Hea%_der Files in Current Directory..."
- (progn
- (require 'compile)
- (let ((grep-command
- (cons (concat grep-command " *.[hH]"
+ )
+ (length grep-command))))
+ (call-interactively 'grep)))
+:active (fboundp 'grep)]
+ ["Grep C Hea%_der Files in Current Directory..."
+ (progn
+ (require 'compile)
+ (let ((grep-command
+ (cons (concat grep-command " *.[hH]"
; i wanted to also use *.hh.
; see long comment below under Perl.
- )
- (length grep-command))))
- (call-interactively 'grep)))
- :active (fboundp 'grep)]
- ["Grep %_E-Lisp Files in Current Directory..."
- (progn
- (require 'compile)
- (let ((grep-command
- (cons (concat grep-command " *.el")
- (length grep-command))))
- (call-interactively 'grep)))
- :active (fboundp 'grep)]
- ["Grep %_Perl Files in Current Directory..."
- (progn
- (require 'compile)
- (let ((grep-command
- (cons (concat grep-command " *.pl"
+ )
+ (length grep-command))))
+ (call-interactively 'grep)))
+:active (fboundp 'grep)]
+ ["Grep %_E-Lisp Files in Current Directory..."
+ (progn
+ (require 'compile)
+ (let ((grep-command
+ (cons (concat grep-command " *.el")
+ (length grep-command))))
+ (call-interactively 'grep)))
+:active (fboundp 'grep)]
+ ["Grep %_Perl Files in Current Directory..."
+ (progn
+ (require 'compile)
+ (let ((grep-command
+ (cons (concat grep-command " *.pl"
; i wanted to use this:
; " *.pl *.pm *.am"
; but grep complains if it can't
@@ -539,601 +538,596 @@ Write your filter like this:
; each separate glob in the directory
; to see if there are any files in
; that glob, and if not, omit it.
- )
- (length grep-command))))
- (call-interactively 'grep)))
- :active (fboundp 'grep)]
- ["Grep %_HTML Files in Current Directory..."
- (progn
- (require 'compile)
- (let ((grep-command
- (cons (concat grep-command " *.*htm*")
- (length grep-command))))
- (call-interactively 'grep)))
- :active (fboundp 'grep)]
- "---"
- ["%_Next Match" next-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- ["Pre%_vious Match" previous-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- ["%_First Match" first-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- ["G%_oto Match" compile-goto-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- "---"
- ["%_Set Grep Command..."
- (progn
- (require 'compile)
- (customize-set-variable
- 'grep-command
- (read-shell-command "Default Grep Command: " grep-command)))
- :active (fboundp 'grep)
- ]
- )
- ("%_Compile"
-:filter
- (lambda (menu)
- (if (or (not (boundp 'compile-history)) (null compile-history))
- menu
- (let ((items
- (submenu-generate-accelerator-spec
- (mapcar #'(lambda (label-value)
- (vector (first label-value)
- (list 'compile (second label-value))))
- (Menubar-items-truncate-history
- compile-history 10 50)))))
- (append menu '("---") items))))
- ["%_Compile..." compile :active (fboundp 'compile)]
- ["%_Repeat Compilation" recompile :active (fboundp 'recompile)]
- ["%_Kill Compilation" kill-compilation
- :active (and (fboundp 'kill-compilation)
- (fboundp 'compilation-find-buffer)
- (let ((buffer (condition-case nil
- (compilation-find-buffer)
- (error nil))))
- (and buffer (get-buffer-process buffer))))]
- "---"
- ["%_Next Error" next-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- ["Pre%_vious Error" previous-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- ["%_First Error" first-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- ["G%_oto Error" compile-goto-error
- :active (and (fboundp 'compilation-errors-exist-p)
- (compilation-errors-exist-p))]
- )
- ("%_Debug"
- ["%_GDB..." gdb
- :active (fboundp 'gdb)]
- ["%_DBX..." dbx
- :active (fboundp 'dbx)])
- ("%_Shell"
- ["%_Shell" shell
- :active (fboundp 'shell)]
- ["S%_hell Command..." shell-command
- :active (fboundp 'shell-command)]
- ["Shell Command on %_Region..." shell-command-on-region
+ )
+ (length grep-command))))
+ (call-interactively 'grep)))
+:active (fboundp 'grep)]
+ ["Grep %_HTML Files in Current Directory..."
+ (progn
+ (require 'compile)
+ (let ((grep-command
+ (cons (concat grep-command " *.*htm*")
+ (length grep-command))))
+ (call-interactively 'grep)))
+:active (fboundp 'grep)]
+ "---"
+ ["%_Next Match" next-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ ["Pre%_vious Match" previous-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ ["%_First Match" first-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ ["G%_oto Match" compile-goto-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ "---"
+ ["%_Set Grep Command..."
+ (progn
+ (require 'compile)
+ (customize-set-variable
+ 'grep-command
+ (read-shell-command "Default Grep Command: " grep-command)))
+:active (fboundp 'grep)
+ ]
+ )
+ ("%_Compile"
+:filter
+ ,#'(lambda (menu)
+ (if-boundp 'compile-history
+ (if compile-history
+ (let ((items
+ (submenu-generate-accelerator-spec
+ (mapcar #'(lambda (label-value)
+ (vector (first label-value)
+ (list 'compile
+ (second label-value))))
+ (Menubar-items-truncate-history
+ compile-history 10 50)))))
+ (append menu '("---") items))
+ menu)
+ menu))
+ ["%_Compile..." compile :active (fboundp 'compile)]
+ ["%_Repeat Compilation" recompile :active (fboundp 'recompile)]
+ ["%_Kill Compilation" kill-compilation
+:active (and (fboundp 'kill-compilation)
+ (fboundp 'compilation-find-buffer)
+ (let ((buffer (condition-case nil
+ (compilation-find-buffer)
+ (error nil))))
+ (and buffer (get-buffer-process buffer))))]
+ "---"
+ ["%_Next Error" next-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ ["Pre%_vious Error" previous-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ ["%_First Error" first-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ ["G%_oto Error" compile-goto-error
+:active (and (fboundp 'compilation-errors-exist-p)
+ (compilation-errors-exist-p))]
+ )
+ ("%_Debug"
+ ["%_GDB..." gdb
+:active (fboundp 'gdb)]
+ ["%_DBX..." dbx
+:active (fboundp 'dbx)])
+ ("%_Shell"
+ ["%_Shell" shell
+:active (fboundp 'shell)]
+ ["S%_hell Command..." shell-command
+:active (fboundp 'shell-command)]
+ ["Shell Command on %_Region..." shell-command-on-region
:active (and (fboundp 'shell-command-on-region) (region-exists-p))])
- ("%_Tags"
- ["%_Find Tag..." find-tag]
- ["Find %_Other Window..." find-tag-other-window]
- ["%_Next Tag..." (find-tag nil)]
- ["N%_ext Other Window..." (find-tag-other-window nil)]
- ["Next %_File" next-file]
- "-----"
- ["Tags %_Search..." tags-search]
- ["Tags %_Replace..." tags-query-replace]
- ["%_Continue Search/Replace" tags-loop-continue]
- "-----"
- ["%_Pop stack" pop-tag-mark]
- ["%_Apropos..." tags-apropos]
- "-----"
- ["%_Set Tags Table File..." visit-tags-table]
- )
-
- "----"
-
- ("Ca%_lendar"
- ["%_3-Month Calendar" calendar
- :active (fboundp 'calendar)]
- ["%_Diary" diary
- :active (fboundp 'diary)]
- ["%_Holidays" holidays
- :active (fboundp 'holidays)]
- ;; we're all pagans at heart ...
- ["%_Phases of the Moon" phases-of-moon
- :active (fboundp 'phases-of-moon)]
- ["%_Sunrise/Sunset" sunrise-sunset
- :active (fboundp 'sunrise-sunset)])
-
- ("Ga%_mes"
- ["%_Mine Game" xmine
- :active (fboundp 'xmine)]
- ["%_Tetris" tetris
- :active (fboundp 'tetris)]
- ["%_Sokoban" sokoban
- :active (fboundp 'sokoban)]
- ["Quote from %_Zippy" yow
- :active (fboundp 'yow)]
- ["%_Psychoanalyst" doctor
- :active (fboundp 'doctor)]
- ["Ps%_ychoanalyze Zippy!" psychoanalyze-pinhead
- :active (fboundp 'psychoanalyze-pinhead)]
- ["%_Random Flames" flame
- :active (fboundp 'flame)]
- ["%_Dunnet (Adventure)" dunnet
- :active (fboundp 'dunnet)]
- ["Towers of %_Hanoi" hanoi
- :active (fboundp 'hanoi)]
- ["Game of %_Life" life
- :active (fboundp 'life)]
- ["M%_ultiplication Puzzle" mpuz
- :active (fboundp 'mpuz)])
-
- "----"
+ ("%_Tags"
+ ["%_Find Tag..." find-tag]
+ ["Find %_Other Window..." find-tag-other-window]
+ ["%_Next Tag..." (find-tag nil)]
+ ["N%_ext Other Window..." (find-tag-other-window nil)]
+ ["Next %_File" next-file]
+ "-----"
+ ["Tags %_Search..." tags-search]
+ ["Tags %_Replace..." tags-query-replace]
+ ["%_Continue Search/Replace" tags-loop-continue]
+ "-----"
+ ["%_Pop stack" pop-tag-mark]
+ ["%_Apropos..." tags-apropos]
+ "-----"
+ ["%_Set Tags Table File..." visit-tags-table]
)
+
+ "----"
+
+ ("Ca%_lendar"
+ ["%_3-Month Calendar" calendar
+:active (fboundp 'calendar)]
+ ["%_Diary" diary
+:active (fboundp 'diary)]
+ ["%_Holidays" holidays
+:active (fboundp 'holidays)]
+ ;; we're all pagans at heart ...
+ ["%_Phases of the Moon" phases-of-moon
+:active (fboundp 'phases-of-moon)]
+ ["%_Sunrise/Sunset" sunrise-sunset
+:active (fboundp 'sunrise-sunset)])
+
+ ("Ga%_mes"
+ ["%_Mine Game" xmine
+:active (fboundp 'xmine)]
+ ["%_Tetris" tetris
+:active (fboundp 'tetris)]
+ ["%_Sokoban" sokoban
+:active (fboundp 'sokoban)]
+ ["Quote from %_Zippy" yow
+:active (fboundp 'yow)]
+ ["%_Psychoanalyst" doctor
+:active (fboundp 'doctor)]
+ ["Ps%_ychoanalyze Zippy!" psychoanalyze-pinhead
+:active (fboundp 'psychoanalyze-pinhead)]
+ ["%_Random Flames" flame
+:active (fboundp 'flame)]
+ ["%_Dunnet (Adventure)" dunnet
+:active (fboundp 'dunnet)]
+ ["Towers of %_Hanoi" hanoi
+:active (fboundp 'hanoi)]
+ ["Game of %_Life" life
+:active (fboundp 'life)]
+ ["M%_ultiplication Puzzle" mpuz
+:active (fboundp 'mpuz)])
+
+ "----"
+ )
; ("%_Tools"
; :filter behavior-menu-filter)
("%_Options"
- ("%_Advanced (Customize)"
- ("%_Emacs" :filter (lambda (&rest junk)
- (cdr (custom-menu-create 'emacs))))
- ["%_Group..." customize-group]
- ["%_Variable..." customize-variable]
- ["%_Face..." customize-face]
- ["%_Saved..." customize-saved]
- ["Se%_t..." customize-customized]
- ["%_Apropos..." customize-apropos]
- ["%_Browse..." customize-browse])
- "---"
- ("%_Editing"
- ["This Buffer %_Read Only" (toggle-read-only)
- :style toggle :selected buffer-read-only]
- ["%_Yank/Kill Interact With Clipboard"
- (if (eq interprogram-cut-function 'own-clipboard)
- (progn
- (customize-set-variable 'interprogram-cut-function nil)
- (customize-set-variable 'interprogram-paste-function nil))
- (customize-set-variable 'interprogram-cut-function 'own-clipboard)
- (customize-set-variable 'interprogram-paste-function 'get-clipboard))
- :style toggle
- :selected (eq interprogram-cut-function 'own-clipboard)]
- ["%_Overstrike"
- (progn
- (setq overwrite-mode (if overwrite-mode nil 'overwrite-mode-textual))
- (customize-set-variable 'overwrite-mode overwrite-mode))
- :style toggle :selected overwrite-mode]
- ["%_Abbrev Mode"
- (customize-set-variable 'abbrev-mode
- (not (default-value 'abbrev-mode)))
- :style toggle
- :selected (default-value 'abbrev-mode)]
- ["Active Re%_gions"
- (customize-set-variable 'zmacs-regions (not zmacs-regions))
- :style toggle :selected zmacs-regions]
- "---"
- ["%_Case Sensitive Search"
- (customize-set-variable 'case-fold-search
- (setq case-fold-search (not case-fold-search)))
- :style toggle :selected (not case-fold-search)]
- ["Case %_Matching Replace"
- (customize-set-variable 'case-replace (not case-replace))
- :style toggle :selected case-replace]
- "---"
- ("%_Newline at End of File..."
- ["%_Don't Require"
- (customize-set-variable 'require-final-newline nil)
- :style radio :selected (not require-final-newline)]
- ["%_Require"
- (customize-set-variable 'require-final-newline t)
- :style radio :selected (eq require-final-newline t)]
- ["%_Ask"
- (customize-set-variable 'require-final-newline 'ask)
- :style radio :selected (and require-final-newline
- (not (eq require-final-newline t)))])
- ["Add Newline When Moving Past %_End"
- (customize-set-variable 'next-line-add-newlines
- (not next-line-add-newlines))
- :style toggle :selected next-line-add-newlines])
- ("%_Keyboard and Mouse"
- ["%_Delete Key Deletes Selection"
- (customize-set-variable 'pending-delete-mode (not pending-delete-mode))
- :style toggle
- :selected (and (boundp 'pending-delete-mode) pending-delete-mode)
- :active (boundp 'pending-delete-mode)]
- ["`kill-%_word' Stores in Clipboard"
- (customize-set-variable 'kill-word-into-kill-ring
- (not kill-word-into-kill-ring))
- :style toggle
- :selected kill-word-into-kill-ring]
- ["`kill-%_line' Kills Whole Line at Beg"
- (customize-set-variable 'kill-whole-line (not kill-whole-line))
- :style toggle
- :selected kill-whole-line]
- ["Size for %_Block-Movement Commands..."
- (customize-set-variable 'block-movement-size
- (read-number "Block Movement Size: "
- t block-movement-size))]
- ["%_VI Emulation"
- (progn
- (toggle-viper-mode)
- (customize-set-variable 'viper-mode viper-mode))
- :style toggle :selected (and (boundp 'viper-mode) viper-mode)
- :active (fboundp 'toggle-viper-mode)]
- "----"
- ["S%_hifted Motion Keys Select Region"
- (customize-set-variable 'shifted-motion-keys-select-region
- (not shifted-motion-keys-select-region))
- :style toggle
- :selected shifted-motion-keys-select-region]
- ["%_After Shifted Motion, Unshifted Motion Keys Deselect"
- (customize-set-variable 'unshifted-motion-keys-deselect-region
- (not unshifted-motion-keys-deselect-region))
- :style toggle
- :selected unshifted-motion-keys-deselect-region]
- "----"
- ["%_Set Key..." global-set-key]
- ["%_Unset Key..." global-unset-key]
- "---"
- ["%_Mouse Paste at Text Cursor (not Clicked Location)"
- (customize-set-variable 'mouse-yank-at-point (not mouse-yank-at-point))
- :style toggle :selected mouse-yank-at-point]
- "---"
- ["%_Teach Extended Commands"
- (customize-set-variable 'teach-extended-commands-p
- (not teach-extended-commands-p))
- :style toggle :selected teach-extended-commands-p]
+ ("%_Advanced (Customize)"
+ ("%_Emacs" :filter ,#'(lambda (&rest junk)
+ (cdr (custom-menu-create 'emacs))))
+ ["%_Group..." customize-group]
+ ["%_Variable..." customize-variable]
+ ["%_Face..." customize-face]
+ ["%_Saved..." customize-saved]
+ ["Se%_t..." customize-customized]
+ ["%_Apropos..." customize-apropos]
+ ["%_Browse..." customize-browse])
+ "---"
+ ("%_Editing"
+ ["This Buffer %_Read Only" (toggle-read-only)
+:style toggle :selected buffer-read-only]
+ ["%_Yank/Kill Interact With Clipboard"
+ (if (eq interprogram-cut-function 'own-clipboard)
+ (progn
+ (customize-set-variable 'interprogram-cut-function nil)
+ (customize-set-variable 'interprogram-paste-function nil))
+ (customize-set-variable 'interprogram-cut-function 'own-clipboard)
+ (customize-set-variable 'interprogram-paste-function 'get-clipboard))
+:style toggle
+:selected (eq interprogram-cut-function 'own-clipboard)]
+ ["%_Overstrike"
+ (progn
+ (setq overwrite-mode (if overwrite-mode nil 'overwrite-mode-textual))
+ (customize-set-variable 'overwrite-mode overwrite-mode))
+:style toggle :selected overwrite-mode]
+ ["%_Abbrev Mode"
+ (customize-set-variable 'abbrev-mode
+ (not (default-value 'abbrev-mode)))
+:style toggle
+:selected (default-value 'abbrev-mode)]
+ ["Active Re%_gions"
+ (customize-set-variable 'zmacs-regions (not zmacs-regions))
+:style toggle :selected zmacs-regions]
+ "---"
+ ["%_Case Sensitive Search"
+ (customize-set-variable 'case-fold-search
+ (setq case-fold-search (not case-fold-search)))
+:style toggle :selected (not case-fold-search)]
+ ["Case %_Matching Replace"
+ (customize-set-variable 'case-replace (not case-replace))
+:style toggle :selected case-replace]
+ "---"
+ ("%_Newline at End of File..."
+ ["%_Don't Require"
+ (customize-set-variable 'require-final-newline nil)
+ :style radio :selected (not require-final-newline)]
+ ["%_Require"
+ (customize-set-variable 'require-final-newline t)
+ :style radio :selected (eq require-final-newline t)]
+ ["%_Ask"
+ (customize-set-variable 'require-final-newline 'ask)
+ :style radio :selected (and require-final-newline
+ (not (eq require-final-newline t)))])
+ ["Add Newline When Moving Past %_End"
+ (customize-set-variable 'next-line-add-newlines
+ (not next-line-add-newlines))
+:style toggle :selected next-line-add-newlines])
+ ("%_Keyboard and Mouse"
+ ["%_Delete Key Deletes Selection"
+ (customize-set-variable 'pending-delete-mode (not pending-delete-mode))
+:style toggle
+:selected (and (boundp 'pending-delete-mode) pending-delete-mode)
+:active (boundp 'pending-delete-mode)]
+ ["`kill-%_word' Stores in Clipboard"
+ (customize-set-variable 'kill-word-into-kill-ring
+ (not kill-word-into-kill-ring))
+:style toggle
+:selected kill-word-into-kill-ring]
+ ["`kill-%_line' Kills Whole Line at Beg"
+ (customize-set-variable 'kill-whole-line (not kill-whole-line))
+:style toggle
+:selected kill-whole-line]
+ ["Size for %_Block-Movement Commands..."
+ (customize-set-variable 'block-movement-size
+ (read-number "Block Movement Size: "
+ t block-movement-size))]
+ ["%_VI Emulation"
+ (progn
+ (toggle-viper-mode)
+ (customize-set-variable 'viper-mode viper-mode))
+:style toggle :selected (and (boundp 'viper-mode) viper-mode)
+:active (fboundp 'toggle-viper-mode)]
+ "----"
+ ["S%_hifted Motion Keys Select Region"
+ (customize-set-variable 'shifted-motion-keys-select-region
+ (not shifted-motion-keys-select-region))
+:style toggle
+:selected shifted-motion-keys-select-region]
+ ["%_After Shifted Motion, Unshifted Motion Keys Deselect"
+ (customize-set-variable 'unshifted-motion-keys-deselect-region
+ (not unshifted-motion-keys-deselect-region))
+:style toggle
+:selected unshifted-motion-keys-deselect-region]
+ "----"
+ ["%_Set Key..." global-set-key]
+ ["%_Unset Key..." global-unset-key]
+ "---"
+ ["%_Mouse Paste at Text Cursor (not Clicked Location)"
+ (customize-set-variable 'mouse-yank-at-point (not mouse-yank-at-point))
+:style toggle :selected mouse-yank-at-point]
+ "---"
+ ["%_Teach Extended Commands"
+ (customize-set-variable 'teach-extended-commands-p
+ (not teach-extended-commands-p))
+:style toggle :selected teach-extended-commands-p]
+ )
+ ("%_Printing"
+ ["Set Printer %_Name for Generic Print Support..."
+ (customize-set-variable
+ 'printer-name
+ (read-string "Set printer name: " printer-name))]
+ "---"
+ ["Command-Line %_Switches for `lpr'/`lp'..."
+ ;; better to directly open a customization buffer, since the value
+ ;; must be a list of strings, which is somewhat complex to prompt for.
+ (customize-variable 'lpr-switches)
+ (boundp 'lpr-switches)]
+ ("%_Pretty-Print Paper Size"
+ ["%_Letter"
+ (customize-set-variable 'ps-paper-type 'letter)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'letter))
+ :active (boundp 'ps-paper-type)]
+ ["Lette%_r-Small"
+ (customize-set-variable 'ps-paper-type 'letter-small)
+ :style radio
+ :selected (and (boundp 'ps-paper-type)
+ (eq ps-paper-type 'letter-small))
+ :active (boundp 'ps-paper-type)]
+ ["Le%_gal"
+ (customize-set-variable 'ps-paper-type 'legal)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'legal))
+ :active (boundp 'ps-paper-type)]
+ ["%_Statement"
+ (customize-set-variable 'ps-paper-type 'statement)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'statement))
+ :active (boundp 'ps-paper-type)]
+ ["%_Executive"
+ (customize-set-variable 'ps-paper-type 'executive)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'executive))
+ :active (boundp 'ps-paper-type)]
+ ["%_Tabloid"
+ (customize-set-variable 'ps-paper-type 'tabloid)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'tabloid))
+ :active (boundp 'ps-paper-type)]
+ ["Le%_dger"
+ (customize-set-variable 'ps-paper-type 'ledger)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'ledger))
+ :active (boundp 'ps-paper-type)]
+ ["A%_3"
+ (customize-set-variable 'ps-paper-type 'a3)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'a3))
+ :active (boundp 'ps-paper-type)]
+ ["%_A4"
+ (customize-set-variable 'ps-paper-type 'a4)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'a4))
+ :active (boundp 'ps-paper-type)]
+ ["A4s%_mall"
+ (customize-set-variable 'ps-paper-type 'a4small)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'a4small))
+ :active (boundp 'ps-paper-type)]
+ ["B%_4"
+ (customize-set-variable 'ps-paper-type 'b4)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'b4))
+ :active (boundp 'ps-paper-type)]
+ ["%_B5"
+ (customize-set-variable 'ps-paper-type 'b5)
+ :style radio
+ :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'b5))
+ :active (boundp 'ps-paper-type)]
)
- ("%_Printing"
- ["Set Printer %_Name for Generic Print Support..."
- (customize-set-variable
- 'printer-name
- (read-string "Set printer name: " printer-name))]
- "---"
- ["Command-Line %_Switches for `lpr'/`lp'..."
- ;; better to directly open a customization buffer, since the value
- ;; must be a list of strings, which is somewhat complex to prompt for.
- (customize-variable 'lpr-switches)
- (boundp 'lpr-switches)]
- ("%_Pretty-Print Paper Size"
- ["%_Letter"
- (customize-set-variable 'ps-paper-type 'letter)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'letter))
- :active (boundp 'ps-paper-type)]
- ["Lette%_r-Small"
- (customize-set-variable 'ps-paper-type 'letter-small)
- :style radio
- :selected (and (boundp 'ps-paper-type)
- (eq ps-paper-type 'letter-small))
- :active (boundp 'ps-paper-type)]
- ["Le%_gal"
- (customize-set-variable 'ps-paper-type 'legal)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'legal))
- :active (boundp 'ps-paper-type)]
- ["%_Statement"
- (customize-set-variable 'ps-paper-type 'statement)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'statement))
- :active (boundp 'ps-paper-type)]
- ["%_Executive"
- (customize-set-variable 'ps-paper-type 'executive)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'executive))
- :active (boundp 'ps-paper-type)]
- ["%_Tabloid"
- (customize-set-variable 'ps-paper-type 'tabloid)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'tabloid))
- :active (boundp 'ps-paper-type)]
- ["Le%_dger"
- (customize-set-variable 'ps-paper-type 'ledger)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'ledger))
- :active (boundp 'ps-paper-type)]
- ["A%_3"
- (customize-set-variable 'ps-paper-type 'a3)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'a3))
- :active (boundp 'ps-paper-type)]
- ["%_A4"
- (customize-set-variable 'ps-paper-type 'a4)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'a4))
- :active (boundp 'ps-paper-type)]
- ["A4s%_mall"
- (customize-set-variable 'ps-paper-type 'a4small)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'a4small))
- :active (boundp 'ps-paper-type)]
- ["B%_4"
- (customize-set-variable 'ps-paper-type 'b4)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'b4))
- :active (boundp 'ps-paper-type)]
- ["%_B5"
- (customize-set-variable 'ps-paper-type 'b5)
- :style radio
- :selected (and (boundp 'ps-paper-type) (eq ps-paper-type 'b5))
- :active (boundp 'ps-paper-type)]
- )
- ["%_Color Printing"
- (cond (ps-print-color-p
- (customize-set-variable 'ps-print-color-p nil)
- ;; I'm wondering whether all this muck is useful.
- (and (boundp 'original-face-background)
- original-face-background
- (set-face-background 'default original-face-background)))
- (t
- (customize-set-variable 'ps-print-color-p t)
- (setq original-face-background
- (face-background-instance 'default))
- (set-face-background 'default "white")))
- :style toggle
- :selected (and (boundp 'ps-print-color-p) ps-print-color-p)
- :active (boundp 'ps-print-color-p)])
- ("%_Internet"
- ("%_Compose Mail With"
- ["VM mail package"
- (customize-set-variable 'mail-user-agent 'vm-user-agent)
- :style radio
- :selected (eq mail-user-agent 'vm-user-agent)
- :active (get 'vm-user-agent 'composefunc)]
- ["Bare-bones Emacs Mailer"
- (customize-set-variable 'mail-user-agent 'sendmail-user-agent)
- :style radio
- :selected (eq mail-user-agent 'sendmail-user-agent)]
- ["MH"
- (customize-set-variable 'mail-user-agent 'mh-e-user-agent)
- :style radio
- :selected (eq mail-user-agent 'mh-e-user-agent)
- :active (get 'mh-e-user-agent 'composefunc)]
- ["GNUS"
- (customize-set-variable 'mail-user-agent 'message-user-agent)
- :style radio
- :selected (eq mail-user-agent 'message-user-agent)
- :active (get 'message-user-agent 'composefunc)]
- )
- ["Set My %_Email Address..."
- (customize-set-variable
- 'user-mail-address
- (read-string "Set email address: " user-mail-address))]
- ["Set %_Machine Email Name..."
- (customize-set-variable
- 'mail-host-address
- (read-string "Set machine email name: " mail-host-address))]
- ["Set %_SMTP Server..."
- (progn
- (require 'smtpmail)
- (customize-set-variable
- 'smtpmail-smtp-server
- (read-string "Set SMTP server: " smtpmail-smtp-server)))
- :active (and (boundp 'send-mail-function)
- (eq send-mail-function 'smtpmail-send-it))]
- ["SMTP %_Debug Info"
- (progn
- (require 'smtpmail)
- (customize-set-variable 'smtpmail-debug-info
- (not smtpmail-debug-info)))
- :style toggle
- :selected (and (boundp 'smtpmail-debug-info) smtpmail-debug-info)
- :active (and (boundp 'send-mail-function)
- (eq send-mail-function 'smtpmail-send-it))])
- ("%_Troubleshooting"
- ["%_Debug on Error [not saved]"
- (setq debug-on-error (not debug-on-error))
- :style toggle :selected debug-on-error]
- ["Debug on %_Quit [not saved]"
- (setq debug-on-quit (not debug-on-quit))
- :style toggle :selected debug-on-quit]
- ["Debug on S%_ignal [not saved]"
- (setq debug-on-signal (not debug-on-signal))
- :style toggle :selected debug-on-signal]
- ["%_Stack Trace on Error [not saved]"
- (setq stack-trace-on-error (not stack-trace-on-error))
- :style toggle :selected stack-trace-on-error]
- ["Stack Trace on Si%_gnal [not saved]"
- (setq stack-trace-on-signal (not stack-trace-on-signal))
- :style toggle :selected stack-trace-on-signal]
+ ["%_Color Printing"
+ (cond (ps-print-color-p
+ (customize-set-variable 'ps-print-color-p nil)
+ ;; I'm wondering whether all this muck is useful.
+ (and (boundp 'original-face-background)
+ original-face-background
+ (set-face-background 'default original-face-background)))
+ (t
+ (customize-set-variable 'ps-print-color-p t)
+ (setq original-face-background
+ (face-background-instance 'default))
+ (set-face-background 'default "white")))
+:style toggle
+:selected (and (boundp 'ps-print-color-p) ps-print-color-p)
+:active (boundp 'ps-print-color-p)])
+ ("%_Internet"
+ ("%_Compose Mail With"
+ ["VM mail package"
+ (customize-set-variable 'mail-user-agent 'vm-user-agent)
+ :style radio
+ :selected (eq mail-user-agent 'vm-user-agent)
+ :active (get 'vm-user-agent 'composefunc)]
+ ["Bare-bones Emacs Mailer"
+ (customize-set-variable 'mail-user-agent 'sendmail-user-agent)
+ :style radio
+ :selected (eq mail-user-agent 'sendmail-user-agent)]
+ ["MH"
+ (customize-set-variable 'mail-user-agent 'mh-e-user-agent)
+ :style radio
+ :selected (eq mail-user-agent 'mh-e-user-agent)
+ :active (get 'mh-e-user-agent 'composefunc)]
+ ["GNUS"
+ (customize-set-variable 'mail-user-agent 'message-user-agent)
+ :style radio
+ :selected (eq mail-user-agent 'message-user-agent)
+ :active (get 'message-user-agent 'composefunc)]
)
- ("Encodin%_g"
- ["Automatic %_EOL Detection"
- (customize-set-variable 'eol-detection-enabled-p
- (not eol-detection-enabled-p))
- :style toggle
- :selected eol-detection-enabled-p
- :included (not (memq system-type '(windows-nt cygwin32)))]
- ("Set Coding System of %_Buffer File"
- :filter
- (lambda (menu)
- (coding-system-menu-filter
- (lambda (entry)
- (set-buffer-file-coding-system entry))
- (lambda (entry) t)
- ))
- )
- ;; not implemented yet
- ("Set Coding System of %_Terminal"
- :filter
- (lambda (menu)
- (coding-system-menu-filter
- (lambda (entry)
- (set-terminal-coding-system entry))
- (lambda (entry) nil)
- ))
- )
- ;; not implemented yet
- ("Set Coding System of %_Keyboard"
- :filter
- (lambda (menu)
- (coding-system-menu-filter
- (lambda (entry)
- (set-keyboard-coding-system entry))
- (lambda (entry) nil)
- ))
- )
- ("Set Coding System of %_Process"
- :filter
- (lambda (menu)
- (coding-system-menu-filter
- (lambda (entry)
- (set-buffer-process-coding-system entry))
- (lambda (entry) (get-buffer-process (current-buffer)))
- ))
- )
+ ["Set My %_Email Address..."
+ (customize-set-variable
+ 'user-mail-address
+ (read-string "Set email address: " user-mail-address))]
+ ["Set %_Machine Email Name..."
+ (customize-set-variable
+ 'mail-host-address
+ (read-string "Set machine email name: " mail-host-address))]
+ ["Set %_SMTP Server..."
+ (progn
+ (require 'smtpmail)
+ (customize-set-variable
+ 'smtpmail-smtp-server
+ (read-string "Set SMTP server: " smtpmail-smtp-server)))
+:active (and (boundp 'send-mail-function)
+ (eq send-mail-function 'smtpmail-send-it))]
+ ["SMTP %_Debug Info"
+ (progn
+ (require 'smtpmail)
+ (customize-set-variable 'smtpmail-debug-info
+ (not smtpmail-debug-info)))
+:style toggle
+:selected (and (boundp 'smtpmail-debug-info) smtpmail-debug-info)
+:active (and (boundp 'send-mail-function)
+ (eq send-mail-function 'smtpmail-send-it))])
+ ("%_Troubleshooting"
+ ["%_Debug on Error [not saved]"
+ (setq debug-on-error (not debug-on-error))
+:style toggle :selected debug-on-error]
+ ["Debug on %_Quit [not saved]"
+ (setq debug-on-quit (not debug-on-quit))
+:style toggle :selected debug-on-quit]
+ ["Debug on S%_ignal [not saved]"
+ (setq debug-on-signal (not debug-on-signal))
+:style toggle :selected debug-on-signal]
+ ["%_Stack Trace on Error [not saved]"
+ (setq stack-trace-on-error (not stack-trace-on-error))
+:style toggle :selected stack-trace-on-error]
+ ["Stack Trace on Si%_gnal [not saved]"
+ (setq stack-trace-on-signal (not stack-trace-on-signal))
+:style toggle :selected stack-trace-on-signal]
+ )
+ ("Encodin%_g"
+ ["Automatic %_EOL Detection"
+ (customize-set-variable 'eol-detection-enabled-p
+ (not eol-detection-enabled-p))
+:style toggle
+:selected eol-detection-enabled-p
+:included (not (memq system-type '(windows-nt cygwin32)))]
+ ("Set Coding System of %_Buffer File"
+:filter
+ ,#'(lambda (menu)
+ (coding-system-menu-filter
+ (lambda (entry)
+ (set-buffer-file-coding-system entry))
+ (lambda (entry) t))))
+ ;; not implemented yet
+ ("Set Coding System of %_Terminal"
+:filter
+ ,#'(lambda (menu)
+ (coding-system-menu-filter
+ (lambda (entry)
+ (set-terminal-coding-system entry))
+ (lambda (entry) nil)))
)
- ,@(when (featurep 'mule)
- '(("Internationa%_l"
- ("Set %_Language Environment"
- :filter
- (lambda (menu)
- (menu-split-long-menu-and-sort
- (mapcar #'(lambda (entry)
- `[ ,(car entry)
- (set-language-environment ',(car entry))
- :style radio
- :selected
- ,(equal (car entry)
- current-language-environment)])
- language-info-alist)
- )))
- ["%_Toggle Input Method" toggle-input-method]
- ["Select %_Input Method" set-input-method]
- )))
- "-----"
- ("%_Display"
- ,@(if (featurep 'scrollbar)
- '(["%_Scrollbars"
- (customize-set-variable 'scrollbars-visible-p
- (not scrollbars-visible-p))
- :style toggle
- :selected scrollbars-visible-p]))
- ["%_Wrap Long Lines"
- (progn;; becomes buffer-local
- (setq truncate-lines (not truncate-lines))
- (customize-set-variable 'truncate-lines truncate-lines))
- :style toggle
- :selected (not truncate-lines)]
- "----"
- ["%_3D Modeline"
- (customize-set-variable 'modeline-3d-p
- (not modeline-3d-p))
- :style toggle
- :selected modeline-3d-p]
- ("Modeline %_Horizontal Scrolling"
- ["%_None"
- (customize-set-variable 'modeline-scrolling-method nil)
- :style radio
- :selected (not modeline-scrolling-method)]
- ["As %_Text"
- (customize-set-variable 'modeline-scrolling-method t)
- :style radio
- :selected (eq modeline-scrolling-method t)]
- ["As %_Scrollbar"
- (customize-set-variable 'modeline-scrolling-method 'scrollbar)
- :style radio
- :selected (eq modeline-scrolling-method 'scrollbar)]
- )
- ,@(if (featurep 'toolbar)
- '("---"
- ["%_Toolbars Visible"
- (customize-set-variable 'toolbar-visible-p
- (not toolbar-visible-p))
- :style toggle
- :selected toolbar-visible-p]
- ["Toolbars Ca%_ptioned"
- (customize-set-variable 'toolbar-captioned-p
- (not toolbar-captioned-p))
- :style toggle
+ ;; not implemented yet
+ ("Set Coding System of %_Keyboard"
+:filter
+ ,#'(lambda (menu)
+ (coding-system-menu-filter
+ (lambda (entry)
+ (set-keyboard-coding-system entry))
+ (lambda (entry) nil))))
+ ("Set Coding System of %_Process"
+:filter
+ ,#'(lambda (menu)
+ (coding-system-menu-filter
+ (lambda (entry)
+ (set-buffer-process-coding-system entry entry))
+ (lambda (entry) (get-buffer-process (current-buffer)))))))
+ ,@(when (featurep 'mule)
+ `(("Internationa%_l"
+ ("Set %_Language Environment"
+ :filter
+ ,#'(lambda (menu)
+ (menu-split-long-menu-and-sort
+ (mapcar #'(lambda (entry)
+ `[ ,(car entry)
+ (set-language-environment ',(car entry))
+ :style radio
+ :selected
+ ,(equal (car entry)
+ current-language-environment)])
+ language-info-alist)
+ )))
+ ["%_Toggle Input Method" toggle-input-method]
+ ["Select %_Input Method" set-input-method]
+ )))
+ "-----"
+ ("%_Display"
+ ,@(if (featurep 'scrollbar)
+ '(["%_Scrollbars"
+ (customize-set-variable 'scrollbars-visible-p
+ (not scrollbars-visible-p))
+ :style toggle
+ :selected scrollbars-visible-p]))
+ ["%_Wrap Long Lines"
+ (progn ;; becomes buffer-local
+ (setq truncate-lines (not truncate-lines))
+ (customize-set-variable 'truncate-lines truncate-lines))
+:style toggle
+:selected (not truncate-lines)]
+ "----"
+ ["%_3D Modeline"
+ (customize-set-variable 'modeline-3d-p
+ (not modeline-3d-p))
+:style toggle
+:selected modeline-3d-p]
+ ("Modeline %_Horizontal Scrolling"
+ ["%_None"
+ (customize-set-variable 'modeline-scrolling-method nil)
+ :style radio
+ :selected (not modeline-scrolling-method)]
+ ["As %_Text"
+ (customize-set-variable 'modeline-scrolling-method t)
+ :style radio
+ :selected (eq modeline-scrolling-method t)]
+ ["As %_Scrollbar"
+ (customize-set-variable 'modeline-scrolling-method 'scrollbar)
+ :style radio
+ :selected (eq modeline-scrolling-method 'scrollbar)]
+ )
+ ,@(if (featurep 'toolbar)
+ '("---"
+ ["%_Toolbars Visible"
+ (customize-set-variable 'toolbar-visible-p
+ (not toolbar-visible-p))
+ :style toggle
+ :selected toolbar-visible-p]
+ ["Toolbars Ca%_ptioned"
+ (customize-set-variable 'toolbar-captioned-p
+ (not toolbar-captioned-p))
+ :style toggle
+ :active toolbar-visible-p
+ :selected toolbar-captioned-p]
+ ("Default Toolba%_r Location"
+ ["%_Top"
+ (customize-set-variable 'default-toolbar-position 'top)
+ :style radio
:active toolbar-visible-p
- :selected toolbar-captioned-p]
- ("Default Toolba%_r Location"
- ["%_Top"
- (customize-set-variable 'default-toolbar-position 'top)
- :style radio
- :active toolbar-visible-p
- :selected (eq default-toolbar-position 'top)]
- ["%_Bottom"
- (customize-set-variable 'default-toolbar-position 'bottom)
- :style radio
- :active toolbar-visible-p
- :selected (eq default-toolbar-position 'bottom)]
- ["%_Left"
- (customize-set-variable 'default-toolbar-position 'left)
- :style radio
- :active toolbar-visible-p
- :selected (eq default-toolbar-position 'left)]
- ["%_Right"
- (customize-set-variable 'default-toolbar-position 'right)
- :style radio
- :active toolbar-visible-p
- :selected (eq default-toolbar-position 'right)]
- )
- ))
- ,@(if (featurep 'gutter)
- '("---"
- ["B%_uffers Tab Visible"
- (customize-set-variable 'gutter-buffers-tab-visible-p
- (not gutter-buffers-tab-visible-p))
- :style toggle
- :selected gutter-buffers-tab-visible-p]
- ("Default %_Gutter Location"
- ["%_Top"
- (customize-set-variable 'default-gutter-position 'top)
- :style radio
- :selected (eq default-gutter-position 'top)]
- ["%_Bottom"
- (customize-set-variable 'default-gutter-position 'bottom)
- :style radio
- :selected (eq default-gutter-position 'bottom)]
- ["%_Left"
- (customize-set-variable 'default-gutter-position 'left)
- :style radio
- :selected (eq default-gutter-position 'left)]
- ["%_Right"
- (customize-set-variable 'default-gutter-position 'right)
- :style radio
- :selected (eq default-gutter-position 'right)]
- )
- ))
- "-----"
- ["%_Blinking Cursor"
- (customize-set-variable 'blink-cursor-mode (not blink-cursor-mode))
- :style toggle
- :selected (and (boundp 'blink-cursor-mode) blink-cursor-mode)
- :active (boundp 'blink-cursor-mode)]
- ["Bl%_ock Cursor"
- (progn
- (customize-set-variable 'bar-cursor nil)
- (force-cursor-redisplay))
- :style radio
- :selected (null bar-cursor)]
- ["Bar Cursor (%_1 Pixel)"
- (progn
- (customize-set-variable 'bar-cursor t)
- (force-cursor-redisplay))
- :style radio
- :selected (eq bar-cursor t)]
- ["Bar Cursor (%_2 Pixels)"
- (progn
- (customize-set-variable 'bar-cursor 2)
- (force-cursor-redisplay))
- :style radio
- :selected (and bar-cursor (not (eq bar-cursor t)))]
- "----"
- ("Pa%_ren Highlighting"
+ :selected (eq default-toolbar-position 'top)]
+ ["%_Bottom"
+ (customize-set-variable 'default-toolbar-position 'bottom)
+ :style radio
+ :active toolbar-visible-p
+ :selected (eq default-toolbar-position 'bottom)]
+ ["%_Left"
+ (customize-set-variable 'default-toolbar-position 'left)
+ :style radio
+ :active toolbar-visible-p
+ :selected (eq default-toolbar-position 'left)]
+ ["%_Right"
+ (customize-set-variable 'default-toolbar-position 'right)
+ :style radio
+ :active toolbar-visible-p
+ :selected (eq default-toolbar-position 'right)]
+ )
+ ))
+ ,@(if (featurep 'gutter)
+ '("---"
+ ["B%_uffers Tab Visible"
+ (customize-set-variable 'gutter-buffers-tab-visible-p
+ (not gutter-buffers-tab-visible-p))
+ :style toggle
+ :selected gutter-buffers-tab-visible-p]
+ ("Default %_Gutter Location"
+ ["%_Top"
+ (customize-set-variable 'default-gutter-position 'top)
+ :style radio
+ :selected (eq default-gutter-position 'top)]
+ ["%_Bottom"
+ (customize-set-variable 'default-gutter-position 'bottom)
+ :style radio
+ :selected (eq default-gutter-position 'bottom)]
+ ["%_Left"
+ (customize-set-variable 'default-gutter-position 'left)
+ :style radio
+ :selected (eq default-gutter-position 'left)]
+ ["%_Right"
+ (customize-set-variable 'default-gutter-position 'right)
+ :style radio
+ :selected (eq default-gutter-position 'right)]
+ )
+ ))
+ "-----"
+ ["%_Blinking Cursor"
+ (customize-set-variable 'blink-cursor-mode (not blink-cursor-mode))
+:style toggle
+:selected (and (boundp 'blink-cursor-mode) blink-cursor-mode)
+:active (boundp 'blink-cursor-mode)]
+ ["Bl%_ock Cursor"
+ (progn
+ (customize-set-variable 'bar-cursor nil)
+ (force-cursor-redisplay))
+:style radio
+:selected (null bar-cursor)]
+ ["Bar Cursor (%_1 Pixel)"
+ (progn
+ (customize-set-variable 'bar-cursor t)
+ (force-cursor-redisplay))
+:style radio
+:selected (eq bar-cursor t)]
+ ["Bar Cursor (%_2 Pixels)"
+ (progn
+ (customize-set-variable 'bar-cursor 2)
+ (force-cursor-redisplay))
+:style radio
+:selected (and bar-cursor (not (eq bar-cursor t)))]
+ "----"
+ ("Pa%_ren Highlighting"
["%_None"
(customize-set-variable 'paren-mode nil)
:style radio
@@ -1160,418 +1154,421 @@ Write your filter like this:
;; :selected (and (boundp 'paren-mode) (eq paren-mode 'nested))
;; :active (boundp 'paren-mode)]
)
- "------"
- ["%_Line Numbers"
+ "------"
+ ["%_Line Numbers"
+ (progn
+ (customize-set-variable 'line-number-mode (not line-number-mode))
+ (redraw-modeline))
+:style toggle :selected line-number-mode]
+ ["%_Column Numbers"
+ (progn
+ (customize-set-variable 'column-number-mode
+ (not column-number-mode))
+ (redraw-modeline))
+:style toggle :selected column-number-mode]
+
+ ("\"Other %_Window\" Location"
+ ["%_Always in Same Frame"
+ (customize-set-variable
+ 'get-frame-for-buffer-default-instance-limit nil)
+ :style radio
+ :selected (null get-frame-for-buffer-default-instance-limit)]
+ ["Other Frame (%_2 Frames Max)"
+ (customize-set-variable 'get-frame-for-buffer-default-instance-limit
+ 2)
+ :style radio
+ :selected (eq 2 get-frame-for-buffer-default-instance-limit)]
+ ["Other Frame (%_3 Frames Max)"
+ (customize-set-variable 'get-frame-for-buffer-default-instance-limit
+ 3)
+ :style radio
+ :selected (eq 3 get-frame-for-buffer-default-instance-limit)]
+ ["Other Frame (%_4 Frames Max)"
+ (customize-set-variable 'get-frame-for-buffer-default-instance-limit
+ 4)
+ :style radio
+ :selected (eq 4 get-frame-for-buffer-default-instance-limit)]
+ ["Other Frame (%_5 Frames Max)"
+ (customize-set-variable 'get-frame-for-buffer-default-instance-limit
+ 5)
+ :style radio
+ :selected (eq 5 get-frame-for-buffer-default-instance-limit)]
+ ["Always Create %_New Frame"
+ (customize-set-variable 'get-frame-for-buffer-default-instance-limit
+ 0)
+ :style radio
+ :selected (eq 0 get-frame-for-buffer-default-instance-limit)]
+ "-----"
+ ["%_Temp Buffers Always in Same Frame"
+ (customize-set-variable 'temp-buffer-show-function
+ 'show-temp-buffer-in-current-frame)
+ :style radio
+ :selected (eq temp-buffer-show-function
+ 'show-temp-buffer-in-current-frame)]
+ ["Temp Buffers %_Like Other Buffers"
+ (customize-set-variable 'temp-buffer-show-function nil)
+ :style radio
+ :selected (null temp-buffer-show-function)]
+ "-----"
+ ["%_Make Current Frame Gnuserv Target"
+ (customize-set-variable 'gnuserv-frame (if (eq gnuserv-frame t) nil
+ t))
+ :style toggle
+ :selected (and (boundp 'gnuserv-frame) (eq gnuserv-frame t))
+ :active (boundp 'gnuserv-frame)]
+ )
+ )
+ ("%_Menubars"
+ ["%_Frame-Local Font Menu"
+ (customize-set-variable 'font-menu-this-frame-only-p
+ (not font-menu-this-frame-only-p))
+:style toggle
+:selected (and (boundp 'font-menu-this-frame-only-p)
+ font-menu-this-frame-only-p)]
+ ["%_Alt/Meta Selects Menu Items"
+ (if (eq menu-accelerator-enabled 'menu-force)
+ (customize-set-variable 'menu-accelerator-enabled nil)
+ (customize-set-variable 'menu-accelerator-enabled 'menu-force))
+:style toggle
+:selected (eq menu-accelerator-enabled 'menu-force)]
+ "----"
+ ["Buffers Menu %_Length..."
+ (customize-set-variable
+ 'buffers-menu-max-size
+ ;; would it be better to open a customization buffer ?
+ (let ((val
+ (read-number
+ "Enter number of buffers to display (or 0 for unlimited): ")))
+ (if (eq val 0) nil val)))]
+ ["%_Multi-Operation Buffers Sub-Menus"
+ (customize-set-variable 'complex-buffers-menu-p
+ (not complex-buffers-menu-p))
+:style toggle
+:selected complex-buffers-menu-p]
+ ["S%_ubmenus for Buffer Groups"
+ (customize-set-variable 'buffers-menu-submenus-for-groups-p
+ (not buffers-menu-submenus-for-groups-p))
+:style toggle
+:selected buffers-menu-submenus-for-groups-p]
+ ["%_Verbose Buffer Menu Entries"
+ (if (eq buffers-menu-format-buffer-line-function
+ 'slow-format-buffers-menu-line)
+ (customize-set-variable 'buffers-menu-format-buffer-line-function
+ 'format-buffers-menu-line)
+ (customize-set-variable 'buffers-menu-format-buffer-line-function
+ 'slow-format-buffers-menu-line))
+:style toggle
+:selected (eq buffers-menu-format-buffer-line-function
+ 'slow-format-buffers-menu-line)]
+ ("Buffers Menu %_Sorting"
+ ["%_Most Recently Used"
(progn
- (customize-set-variable 'line-number-mode (not line-number-mode))
- (redraw-modeline))
- :style toggle :selected line-number-mode]
- ["%_Column Numbers"
+ (customize-set-variable 'buffers-menu-sort-function nil)
+ (customize-set-variable 'buffers-menu-grouping-function nil))
+ :style radio
+ :selected (null buffers-menu-sort-function)]
+ ["%_Alphabetically"
(progn
- (customize-set-variable 'column-number-mode
- (not column-number-mode))
- (redraw-modeline))
- :style toggle :selected column-number-mode]
-
- ("\"Other %_Window\" Location"
- ["%_Always in Same Frame"
- (customize-set-variable
- 'get-frame-for-buffer-default-instance-limit nil)
- :style radio
- :selected (null get-frame-for-buffer-default-instance-limit)]
- ["Other Frame (%_2 Frames Max)"
- (customize-set-variable 'get-frame-for-buffer-default-instance-limit
- 2)
- :style radio
- :selected (eq 2 get-frame-for-buffer-default-instance-limit)]
- ["Other Frame (%_3 Frames Max)"
- (customize-set-variable 'get-frame-for-buffer-default-instance-limit
- 3)
- :style radio
- :selected (eq 3 get-frame-for-buffer-default-instance-limit)]
- ["Other Frame (%_4 Frames Max)"
- (customize-set-variable 'get-frame-for-buffer-default-instance-limit
- 4)
- :style radio
- :selected (eq 4 get-frame-for-buffer-default-instance-limit)]
- ["Other Frame (%_5 Frames Max)"
- (customize-set-variable 'get-frame-for-buffer-default-instance-limit
- 5)
- :style radio
- :selected (eq 5 get-frame-for-buffer-default-instance-limit)]
- ["Always Create %_New Frame"
- (customize-set-variable 'get-frame-for-buffer-default-instance-limit
- 0)
- :style radio
- :selected (eq 0 get-frame-for-buffer-default-instance-limit)]
- "-----"
- ["%_Temp Buffers Always in Same Frame"
- (customize-set-variable 'temp-buffer-show-function
- 'show-temp-buffer-in-current-frame)
- :style radio
- :selected (eq temp-buffer-show-function
- 'show-temp-buffer-in-current-frame)]
- ["Temp Buffers %_Like Other Buffers"
- (customize-set-variable 'temp-buffer-show-function nil)
- :style radio
- :selected (null temp-buffer-show-function)]
- "-----"
- ["%_Make Current Frame Gnuserv Target"
- (customize-set-variable 'gnuserv-frame (if (eq gnuserv-frame t) nil
- t))
- :style toggle
- :selected (and (boundp 'gnuserv-frame) (eq gnuserv-frame t))
- :active (boundp 'gnuserv-frame)]
- )
- )
- ("%_Menubars"
- ["%_Frame-Local Font Menu"
- (customize-set-variable 'font-menu-this-frame-only-p
- (not font-menu-this-frame-only-p))
- :style toggle
- :selected (and (boundp 'font-menu-this-frame-only-p)
- font-menu-this-frame-only-p)]
- ["%_Alt/Meta Selects Menu Items"
- (if (eq menu-accelerator-enabled 'menu-force)
- (customize-set-variable 'menu-accelerator-enabled nil)
- (customize-set-variable 'menu-accelerator-enabled 'menu-force))
- :style toggle
- :selected (eq menu-accelerator-enabled 'menu-force)]
- "----"
- ["Buffers Menu %_Length..."
- (customize-set-variable
- 'buffers-menu-max-size
- ;; would it be better to open a customization buffer ?
- (let ((val
- (read-number
- "Enter number of buffers to display (or 0 for unlimited): ")))
- (if (eq val 0) nil val)))]
- ["%_Multi-Operation Buffers Sub-Menus"
- (customize-set-variable 'complex-buffers-menu-p
- (not complex-buffers-menu-p))
- :style toggle
- :selected complex-buffers-menu-p]
- ["S%_ubmenus for Buffer Groups"
- (customize-set-variable 'buffers-menu-submenus-for-groups-p
- (not buffers-menu-submenus-for-groups-p))
- :style toggle
- :selected buffers-menu-submenus-for-groups-p]
- ["%_Verbose Buffer Menu Entries"
- (if (eq buffers-menu-format-buffer-line-function
- 'slow-format-buffers-menu-line)
- (customize-set-variable 'buffers-menu-format-buffer-line-function
- 'format-buffers-menu-line)
- (customize-set-variable 'buffers-menu-format-buffer-line-function
- 'slow-format-buffers-menu-line))
- :style toggle
- :selected (eq buffers-menu-format-buffer-line-function
- 'slow-format-buffers-menu-line)]
- ("Buffers Menu %_Sorting"
- ["%_Most Recently Used"
- (progn
- (customize-set-variable 'buffers-menu-sort-function nil)
- (customize-set-variable 'buffers-menu-grouping-function nil))
- :style radio
- :selected (null buffers-menu-sort-function)]
- ["%_Alphabetically"
- (progn
- (customize-set-variable 'buffers-menu-sort-function
- 'sort-buffers-menu-alphabetically)
- (customize-set-variable 'buffers-menu-grouping-function nil))
- :style radio
- :selected (eq 'sort-buffers-menu-alphabetically
- buffers-menu-sort-function)]
- ["%_By Major Mode, Then Alphabetically"
- (progn
- (customize-set-variable
- 'buffers-menu-sort-function
- 'sort-buffers-menu-by-mode-then-alphabetically)
- (customize-set-variable
- 'buffers-menu-grouping-function
- 'group-buffers-menu-by-mode-then-alphabetically))
- :style radio
- :selected (eq 'sort-buffers-menu-by-mode-then-alphabetically
- buffers-menu-sort-function)])
- "---"
- ["%_Ignore Scaled Fonts"
- (customize-set-variable 'font-menu-ignore-scaled-fonts
- (not font-menu-ignore-scaled-fonts))
- :style toggle
- :selected (and (boundp 'font-menu-ignore-scaled-fonts)
- font-menu-ignore-scaled-fonts)]
- )
- ("S%_yntax Highlighting"
- ["%_In This Buffer"
- (progn;; becomes buffer local
- (font-lock-mode)
- (customize-set-variable 'font-lock-mode font-lock-mode))
- :style toggle
- :selected (and (boundp 'font-lock-mode) font-lock-mode)
- :active (boundp 'font-lock-mode)]
- ["%_Automatic"
- (customize-set-variable 'font-lock-auto-fontify
- (not font-lock-auto-fontify))
- :style toggle
- :selected (and (boundp 'font-lock-auto-fontify) font-lock-auto-fontify)
- :active (fboundp 'font-lock-mode)]
- "-----"
- ["Force %_Rehighlight in this Buffer"
- (customize-set-variable 'font-lock-auto-fontify
- (not font-lock-auto-fontify))
- :style toggle
- :selected (and (boundp 'font-lock-auto-fontify) font-lock-auto-fontify)
- :active (fboundp 'font-lock-mode)]
- "-----"
- ["%_Fonts"
+ (customize-set-variable 'buffers-menu-sort-function
+ 'sort-buffers-menu-alphabetically)
+ (customize-set-variable 'buffers-menu-grouping-function nil))
+ :style radio
+ :selected (eq 'sort-buffers-menu-alphabetically
+ buffers-menu-sort-function)]
+ ["%_By Major Mode, Then Alphabetically"
(progn
- (require 'font-lock)
- (font-lock-use-default-fonts)
- (customize-set-variable 'font-lock-use-fonts t)
- (customize-set-variable 'font-lock-use-colors nil)
- (font-lock-mode 1))
- :style radio
- :selected (and (boundp 'font-lock-use-fonts) font-lock-use-fonts)
- :active (fboundp 'font-lock-mode)]
- ["%_Colors"
- (progn
- (require 'font-lock)
- (font-lock-use-default-colors)
- (customize-set-variable 'font-lock-use-colors t)
- (customize-set-variable 'font-lock-use-fonts nil)
- (font-lock-mode 1))
- :style radio
- :selected (and (boundp 'font-lock-use-colors) font-lock-use-colors)
- :active (boundp 'font-lock-mode)]
- "-----"
- ["%_1 Least"
- (progn
- (require 'font-lock)
- (if (or (and (not (integerp font-lock-maximum-decoration))
- (not (eq t font-lock-maximum-decoration)))
- (and (integerp font-lock-maximum-decoration)
- (<= font-lock-maximum-decoration 0)))
- nil
- (customize-set-variable 'font-lock-maximum-decoration nil)
- (font-lock-recompute-variables)))
- :style radio
- :active (fboundp 'font-lock-mode)
- :selected (and (boundp 'font-lock-maximum-decoration)
- (or (and (not (integerp font-lock-maximum-decoration))
- (not (eq t font-lock-maximum-decoration)))
- (and (integerp font-lock-maximum-decoration)
- (<= font-lock-maximum-decoration 0))))]
- ["%_2 More"
- (progn
- (require 'font-lock)
- (if (and (integerp font-lock-maximum-decoration)
- (= 1 font-lock-maximum-decoration))
- nil
- (customize-set-variable 'font-lock-maximum-decoration 1)
- (font-lock-recompute-variables)))
- :style radio
- :active (fboundp 'font-lock-mode)
- :selected (and (boundp 'font-lock-maximum-decoration)
- (integerp font-lock-maximum-decoration)
- (= 1 font-lock-maximum-decoration))]
- ["%_3 Even More"
- (progn
- (require 'font-lock)
- (if (and (integerp font-lock-maximum-decoration)
- (= 2 font-lock-maximum-decoration))
- nil
- (customize-set-variable 'font-lock-maximum-decoration 2)
- (font-lock-recompute-variables)))
- :style radio
- :active (fboundp 'font-lock-mode)
- :selected (and (boundp 'font-lock-maximum-decoration)
- (integerp font-lock-maximum-decoration)
- (= 2 font-lock-maximum-decoration))]
- ["%_4 Most"
- (progn
- (require 'font-lock)
- (if (or (eq font-lock-maximum-decoration t)
- (and (integerp font-lock-maximum-decoration)
- (>= font-lock-maximum-decoration 3)))
- nil
- (customize-set-variable 'font-lock-maximum-decoration t)
- (font-lock-recompute-variables)))
- :style radio
- :active (fboundp 'font-lock-mode)
- :selected (and (boundp 'font-lock-maximum-decoration)
- (or (eq font-lock-maximum-decoration t)
- (and (integerp font-lock-maximum-decoration)
- (>= font-lock-maximum-decoration 3))))]
- "-----"
- ["Lazy %_Lock"
- (progn;; becomes buffer local
- (lazy-lock-mode)
- (customize-set-variable 'lazy-lock-mode lazy-lock-mode)
- ;; this shouldn't be necessary so there has to
- ;; be a redisplay bug lurking somewhere (or
- ;; possibly another event handler bug)
- (redraw-modeline))
- :active (and (boundp 'font-lock-mode) (boundp 'lazy-lock-mode)
- font-lock-mode)
- :style toggle
- :selected (and (boundp 'lazy-lock-mode) lazy-lock-mode)]
- ["Lazy %_Shot"
- (progn;; becomes buffer local
- (lazy-shot-mode)
- (customize-set-variable 'lazy-shot-mode lazy-shot-mode)
- ;; this shouldn't be necessary so there has to
- ;; be a redisplay bug lurking somewhere (or
- ;; possibly another event handler bug)
- (redraw-modeline))
- :active (and (boundp 'font-lock-mode) (boundp 'lazy-shot-mode)
- font-lock-mode)
- :style toggle
- :selected (and (boundp 'lazy-shot-mode) lazy-shot-mode)]
- ["Cac%_hing"
- (progn;; becomes buffer local
- (fast-lock-mode)
- (customize-set-variable 'fast-lock-mode fast-lock-mode)
- ;; this shouldn't be necessary so there has to
- ;; be a redisplay bug lurking somewhere (or
- ;; possibly another event handler bug)
- (redraw-modeline))
- :active (and (boundp 'font-lock-mode) (boundp 'fast-lock-mode)
- font-lock-mode)
- :style toggle
- :selected (and (boundp 'fast-lock-mode) fast-lock-mode)]
- )
- ("%_Font" :filter font-menu-family-constructor)
- ("Font Si%_ze" :filter font-menu-size-constructor)
- ;; ("Font Weig%_ht" :filter font-menu-weight-constructor)
- ["Edit Fa%_ces..." (customize-face nil)]
- "-----"
- ["Edit I%_nit File"
- ;; #### there should be something that holds the name that the init
- ;; file should be created as, when it's not present.
- (let ((el-file (or user-init-file "~/.xemacs/init.el")))
- (if (string-match "\\.elc$" el-file)
- (setq el-file
- (substring user-init-file 0 (1- (length el-file)))))
- (find-file el-file)
- (or (eq major-mode 'emacs-lisp-mode)
- (emacs-lisp-mode)))]
- ["%_Save Options to Custom File" customize-save-customized]
+ (customize-set-variable
+ 'buffers-menu-sort-function
+ 'sort-buffers-menu-by-mode-then-alphabetically)
+ (customize-set-variable
+ 'buffers-menu-grouping-function
+ 'group-buffers-menu-by-mode-then-alphabetically))
+ :style radio
+ :selected (eq 'sort-buffers-menu-by-mode-then-alphabetically
+ buffers-menu-sort-function)])
+ "---"
+ ["%_Ignore Scaled Fonts"
+ (customize-set-variable 'font-menu-ignore-scaled-fonts
+ (not font-menu-ignore-scaled-fonts))
+:style toggle
+:selected (and (boundp 'font-menu-ignore-scaled-fonts)
+ font-menu-ignore-scaled-fonts)]
)
+ ("S%_yntax Highlighting"
+ ["%_In This Buffer"
+ (progn ;; becomes buffer local
+ (font-lock-mode)
+ (customize-set-variable 'font-lock-mode font-lock-mode))
+:style toggle
+:selected (and (boundp 'font-lock-mode) font-lock-mode)
+:active (boundp 'font-lock-mode)]
+ ["%_Automatic"
+ (customize-set-variable 'font-lock-auto-fontify
+ (not font-lock-auto-fontify))
+:style toggle
+:selected (and (boundp 'font-lock-auto-fontify) font-lock-auto-fontify)
+:active (fboundp 'font-lock-mode)]
+ "-----"
+ ["Force %_Rehighlight in this Buffer"
+ (customize-set-variable 'font-lock-auto-fontify
+ (not font-lock-auto-fontify))
+:style toggle
+:selected (and (boundp 'font-lock-auto-fontify) font-lock-auto-fontify)
+:active (fboundp 'font-lock-mode)]
+ "-----"
+ ["%_Fonts"
+ (progn
+ (require 'font-lock)
+ (font-lock-use-default-fonts)
+ (customize-set-variable 'font-lock-use-fonts t)
+ (customize-set-variable 'font-lock-use-colors nil)
+ (font-lock-mode 1))
+:style radio
+:selected (and (boundp 'font-lock-use-fonts) font-lock-use-fonts)
+:active (fboundp 'font-lock-mode)]
+ ["%_Colors"
+ (progn
+ (require 'font-lock)
+ (font-lock-use-default-colors)
+ (customize-set-variable 'font-lock-use-colors t)
+ (customize-set-variable 'font-lock-use-fonts nil)
+ (font-lock-mode 1))
+:style radio
+:selected (and (boundp 'font-lock-use-colors) font-lock-use-colors)
+:active (boundp 'font-lock-mode)]
+ "-----"
+ ["%_1 Least"
+ (progn
+ (require 'font-lock)
+ (if (or (and (not (integerp font-lock-maximum-decoration))
+ (not (eq t font-lock-maximum-decoration)))
+ (and (integerp font-lock-maximum-decoration)
+ (<= font-lock-maximum-decoration 0)))
+ nil
+ (customize-set-variable 'font-lock-maximum-decoration nil)
+ (font-lock-recompute-variables)))
+:style radio
+:active (fboundp 'font-lock-mode)
+:selected (and (boundp 'font-lock-maximum-decoration)
+ (or (and (not (integerp font-lock-maximum-decoration))
+ (not (eq t font-lock-maximum-decoration)))
+ (and (integerp font-lock-maximum-decoration)
+ (<= font-lock-maximum-decoration 0))))]
+ ["%_2 More"
+ (progn
+ (require 'font-lock)
+ (if (and (integerp font-lock-maximum-decoration)
+ (= 1 font-lock-maximum-decoration))
+ nil
+ (customize-set-variable 'font-lock-maximum-decoration 1)
+ (font-lock-recompute-variables)))
+:style radio
+:active (fboundp 'font-lock-mode)
+:selected (and (boundp 'font-lock-maximum-decoration)
+ (integerp font-lock-maximum-decoration)
+ (= 1 font-lock-maximum-decoration))]
+ ["%_3 Even More"
+ (progn
+ (require 'font-lock)
+ (if (and (integerp font-lock-maximum-decoration)
+ (= 2 font-lock-maximum-decoration))
+ nil
+ (customize-set-variable 'font-lock-maximum-decoration 2)
+ (font-lock-recompute-variables)))
+:style radio
+:active (fboundp 'font-lock-mode)
+:selected (and (boundp 'font-lock-maximum-decoration)
+ (integerp font-lock-maximum-decoration)
+ (= 2 font-lock-maximum-decoration))]
+ ["%_4 Most"
+ (progn
+ (require 'font-lock)
+ (if (or (eq font-lock-maximum-decoration t)
+ (and (integerp font-lock-maximum-decoration)
+ (>= font-lock-maximum-decoration 3)))
+ nil
+ (customize-set-variable 'font-lock-maximum-decoration t)
+ (font-lock-recompute-variables)))
+:style radio
+:active (fboundp 'font-lock-mode)
+:selected (and (boundp 'font-lock-maximum-decoration)
+ (or (eq font-lock-maximum-decoration t)
+ (and (integerp font-lock-maximum-decoration)
+ (>= font-lock-maximum-decoration 3))))]
+ "-----"
+ ["Lazy %_Lock"
+ (progn ;; becomes buffer local
+ (lazy-lock-mode)
+ (customize-set-variable 'lazy-lock-mode lazy-lock-mode)
+ ;; this shouldn't be necessary so there has to
+ ;; be a redisplay bug lurking somewhere (or
+ ;; possibly another event handler bug)
+ (redraw-modeline))
+:active (and (boundp 'font-lock-mode) (boundp 'lazy-lock-mode)
+ font-lock-mode)
+:style toggle
+:selected (and (boundp 'lazy-lock-mode) lazy-lock-mode)]
+ ["Lazy %_Shot"
+ (progn ;; becomes buffer local
+ (lazy-shot-mode)
+ (customize-set-variable 'lazy-shot-mode lazy-shot-mode)
+ ;; this shouldn't be necessary so there has to
+ ;; be a redisplay bug lurking somewhere (or
+ ;; possibly another event handler bug)
+ (redraw-modeline))
+:active (and (boundp 'font-lock-mode) (boundp 'lazy-shot-mode)
+ font-lock-mode)
+:style toggle
+:selected (and (boundp 'lazy-shot-mode) lazy-shot-mode)]
+ ["Cac%_hing"
+ (progn ;; becomes buffer local
+ (fast-lock-mode)
+ (customize-set-variable 'fast-lock-mode fast-lock-mode)
+ ;; this shouldn't be necessary so there has to
+ ;; be a redisplay bug lurking somewhere (or
+ ;; possibly another event handler bug)
+ (redraw-modeline))
+:active (and (boundp 'font-lock-mode) (boundp 'fast-lock-mode)
+ font-lock-mode)
+:style toggle
+:selected (and (boundp 'fast-lock-mode) fast-lock-mode)]
+ )
+ ("%_Font" :filter font-menu-family-constructor)
+ ("Font Si%_ze" :filter font-menu-size-constructor)
+ ;; ("Font Weig%_ht" :filter font-menu-weight-constructor)
+ ["Edit Fa%_ces..." (customize-face nil)]
+ "-----"
+ ["Edit I%_nit File"
+ ;; #### there should be something that holds the name that the init
+ ;; file should be created as, when it's not present.
+ (let ((el-file (or user-init-file "~/.xemacs/init.el")))
+ (if (string-match "\\.elc$" el-file)
+ (setq el-file
+ (substring user-init-file 0 (1- (length el-file)))))
+ (find-file el-file)
+ (or (eq major-mode 'emacs-lisp-mode)
+ (emacs-lisp-mode)))]
+ ["%_Save Options to Custom File" customize-save-customized]
+ )
("%_Buffers"
-:filter buffers-menu-filter
- ["Go To %_Previous Buffer" switch-to-other-buffer]
- ["Go To %_Buffer..." switch-to-buffer]
- "----"
- ["%_List All Buffers" list-all-buffers]
- ["%_Delete Buffer" kill-this-buffer
-:suffix (if put-buffer-names-in-file-menu (buffer-name) "")]
- "----"
+:filter buffers-menu-filter
+ ["Go To %_Previous Buffer" switch-to-other-buffer]
+ ["Go To %_Buffer..." switch-to-buffer]
+ "----"
+ ["%_List All Buffers" list-all-buffers]
+ ["%_Delete Buffer" kill-this-buffer
+:suffix (if put-buffer-names-in-file-menu (buffer-name) "")]
+ "----"
+ )
+
+ nil ; the partition: menus after this are flushright
+
+ ("%_Help"
+ ["%_About XEmacs..." about-xemacs]
+ ["%_Home Page (www.xemacs.org)" xemacs-www-page
+:active (fboundp 'browse-url)]
+ ["What's %_New in XEmacs" view-emacs-news]
+ ["B%_eta Info" describe-beta
+:included (string-match "beta" emacs-version)]
+ "-----"
+ ("%_Info (Online Docs)"
+ ["%_Info Contents" (Info-goto-node "(dir)")]
+ "-----"
+ ["XEmacs %_User's Manual" (Info-goto-node "(XEmacs)")]
+ ["XEmacs %_Lisp Reference Manual" (Info-goto-node "(Lispref)")]
+ ["All About %_Packages" (Info-goto-node "(xemacs)Packages")]
+ ["%_Getting Started with XEmacs" (Info-goto-node "(New-Users-Guide)")]
+ ["%_XEmacs Internals Manual" (Info-goto-node "(Internals)")]
+ ["%_How to Use Info" (Info-goto-node "(Info)")]
+ "-----"
+ ["Lookup %_Key Sequence in User's Manual..."
+ Info-goto-emacs-key-command-node]
+ ["Lookup %_Command in User's Manual..." Info-goto-emacs-command-node]
+ ["Lookup %_Function in Lisp Reference..." Info-elisp-ref]
+ "-----"
+ ["Find %_Topic in User's Manual/Lispref..."
+ Info-search-index-in-xemacs-and-lispref]
+ ["%_Search Text in User's Manual..." Info-search-text-in-xemacs]
+ ["S%_earch Text in Lisp Reference..."
+ Info-search-text-in-lispref]
)
-
- nil ; the partition: menus after this are flushright
-
- ("%_Help"
- ["%_About XEmacs..." about-xemacs]
- ["%_Home Page (www.xemacs.org)" xemacs-www-page
-:active (fboundp 'browse-url)]
- ["What's %_New in XEmacs" view-emacs-news]
- ["B%_eta Info" describe-beta
- :included (string-match "beta" emacs-version)]
- "-----"
- ("%_Info (Online Docs)"
- ["%_Info Contents" (Info-goto-node "(dir)")]
- "-----"
- ["XEmacs %_User's Manual" (Info-goto-node "(XEmacs)")]
- ["XEmacs %_Lisp Reference Manual" (Info-goto-node "(Lispref)")]
- ["All About %_Packages" (Info-goto-node "(xemacs)Packages")]
- ["%_Getting Started with XEmacs" (Info-goto-node "(New-Users-Guide)")]
- ["%_XEmacs Internals Manual" (Info-goto-node "(Internals)")]
- ["%_How to Use Info" (Info-goto-node "(Info)")]
- "-----"
- ["Lookup %_Key Sequence in User's Manual..."
- Info-goto-emacs-key-command-node]
- ["Lookup %_Command in User's Manual..." Info-goto-emacs-command-node]
- ["Lookup %_Function in Lisp Reference..." Info-elisp-ref]
- "-----"
- ["Find %_Topic in User's Manual/Lispref..."
- Info-search-index-in-xemacs-and-lispref]
- ["%_Search Text in User's Manual..." Info-search-text-in-xemacs]
- ["S%_earch Text in Lisp Reference..."
- Info-search-text-in-lispref]
- )
- ("XEmacs %_FAQ"
- ["%_FAQ (local)" xemacs-local-faq]
- ["FAQ via %_WWW" xemacs-www-faq
- :active (fboundp 'browse-url)])
- ("%_Tutorials"
-:filter tutorials-menu-filter)
- ("%_Samples"
- ["View Sample %_init.el" view-sample-init-el
- :active (locate-data-file "sample.init.el")]
- ["View Sample .%_gtkrc"
- (Help-find-file (locate-data-file "sample.gtkrc"))
- :included (featurep 'gtk)
- :active (locate-data-file "sample.gtkrc")]
- ["View Sample .%_Xresources"
- (Help-find-file (locate-data-file "sample.Xresources"))
- :included (featurep 'x)
- :active (locate-data-file "sample.Xresources")]
- ["View Sample %_enriched.doc"
- (Help-find-file (locate-data-file "enriched.doc"))
- :active (locate-data-file "enriched.doc")])
- ("%_Commands, Variables, Keys"
- ["Describe %_Mode" describe-mode]
- ["%_Apropos..." hyper-apropos]
- ["%_Command-Only Apropos..." command-hyper-apropos]
- ["Apropos %_Docs..." apropos-documentation]
- "-----"
- ["Describe %_Key..." describe-key]
- ["Show %_Bindings" describe-bindings]
- ["Show M%_ouse Bindings" describe-pointer]
- "-----"
- ["Describe %_Function..." describe-function]
- ["Describe %_Variable..." describe-variable]
- ["%_Locate Command in Keymap..." where-is])
- ,@(when (featurep 'mule)
- '(("Internationa%_l"
- ("Describe %_Language Support"
- :filter
- (lambda (menu)
- (menu-split-long-menu-and-sort
- (mapcar #'(lambda (entry)
- `[ ,(car entry)
- (describe-language-environment
- ',(car entry))
- :style radio
- :selected
- ,(equal (car entry)
- current-language-environment)])
- language-info-alist)
- )))
- ["Describe %_Input Method" describe-input-method]
- ["Describe Current %_Coding Systems"
- describe-current-coding-system]
- ["Show Character %_Table" view-charset-by-menu]
- ;; not implemented yet
- ["Show %_Diagnosis for MULE" mule-diag :active nil]
- ["Show \"%_hello\" in Many Languages" view-hello-file]
- )))
- ("%_Other"
- ["%_Current Installation Info" describe-installation
- :active (boundp 'Installation-string)]
- ["%_Known Problems" view-xemacs-problems ]
- ["%_Obtaining the Latest Version" describe-distribution]
- ["%_No Warranty" describe-no-warranty]
- ["XEmacs %_License" describe-copying]
- ["Find %_Packages" finder-by-keyword]
- ["View %_Splash Screen" xemacs-splash-buffer]
- ["%_Unix Manual..." manual-entry])
- "-----"
- ["Recent %_Messages" (view-lossage t)]
- ["Recent %_Keystrokes" view-lossage]
- ["Recent %_Warnings" view-warnings]
- ["Send %_Bug Report..." report-xemacs-bug
-:active (fboundp 'report-xemacs-bug)])))
+ ("XEmacs %_FAQ"
+ ["%_FAQ (local)" xemacs-local-faq]
+ ["FAQ via %_WWW" xemacs-www-faq
+:active (fboundp 'browse-url)])
+ ("%_Tutorials"
+:filter tutorials-menu-filter)
+ ("%_Samples"
+ ["View Sample %_init.el" view-sample-init-el
+:active (locate-data-file "sample.init.el")]
+ ["View Sample .%_gtkrc"
+ (Help-find-file (locate-data-file "sample.gtkrc"))
+:included (featurep 'gtk)
+:active (locate-data-file "sample.gtkrc")]
+ ["View Sample .%_Xresources"
+ (Help-find-file (locate-data-file "sample.Xresources"))
+:included (featurep 'x)
+:active (locate-data-file "sample.Xresources")]
+ ["View Sample %_enriched.doc"
+ (Help-find-file (locate-data-file "enriched.doc"))
+:active (locate-data-file "enriched.doc")])
+ ("%_Commands, Variables, Keys"
+ ["Describe %_Mode" describe-mode]
+ ["%_Apropos..." hyper-apropos]
+ ["%_Command-Only Apropos..." command-hyper-apropos]
+ ["Apropos %_Docs..." apropos-documentation]
+ "-----"
+ ["Describe %_Key..." describe-key]
+ ["Show %_Bindings" describe-bindings]
+ ["Show M%_ouse Bindings" describe-pointer]
+ "-----"
+ ["Describe %_Function..." describe-function]
+ ["Describe %_Variable..." describe-variable]
+ ["%_Locate Command in Keymap..." where-is])
+ ,@(when (featurep 'mule)
+ `(("Internationa%_l"
+ ("Describe %_Language Support"
+ :filter
+ ,#'(lambda (menu)
+ (menu-split-long-menu-and-sort
+ (mapcar #'(lambda (entry)
+ `[ ,(car entry)
+ (describe-language-environment
+ ',(car entry))
+ :style radio
+ :selected
+ ,(equal (car entry)
+ current-language-environment)])
+ language-info-alist)
+ )))
+ ["Describe %_Input Method" describe-input-method]
+ ["Describe Current %_Coding Systems"
+ describe-current-coding-system]
+ ["Show Character %_Table" view-charset-by-menu]
+ ;; not implemented yet
+ ["Show %_Diagnosis for MULE" mule-diag :active nil]
+ ["Show \"%_hello\" in Many Languages" view-hello-file]
+ )))
+ ("%_Other"
+ ["%_Current Installation Info" describe-installation
+:active (boundp 'Installation-string)]
+ ["%_Known Problems" view-xemacs-problems ]
+ ["%_Obtaining the Latest Version" describe-distribution]
+ ["%_No Warranty" describe-no-warranty]
+ ["XEmacs %_License" describe-copying]
+ ["Find %_Packages" finder-by-keyword]
+ ["View %_Splash Screen" xemacs-splash-buffer]
+ ["%_Unix Manual..." manual-entry])
+ "-----"
+ ["Recent %_Messages" (view-lossage t)]
+ ["Recent %_Keystrokes" view-lossage]
+ ["Recent %_Warnings" view-warnings]
+ ["Send %_Bug Report..." report-xemacs-bug
+:active (fboundp 'report-xemacs-bug)]))
+ "The default XEmacs menubar.
+See the documentation for `current-menubar' for details of the syntax
+used here.")
(defun init-menubar-at-startup ()
@@ -1929,6 +1926,11 @@ items by redefining the function `format
;; included it first
(not (string= (car lang)
current-language-environment))
+ ;; Hackish approach; if a language environment
+ ;; doesn't have associated locale information,
+ ;; it's not the preferred implementation for that
+ ;; language. Don't use it.
+ (assq 'locale lang)
`([,(car lang)
(help-with-tutorial nil ,(car lang))]))))
language-info-alist)
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/minibuf.el
--- a/lisp/minibuf.el Wed Jan 02 21:01:16 2008 +0100
+++ b/lisp/minibuf.el Wed Jan 02 22:29:36 2008 +0100
@@ -2057,7 +2057,7 @@ whether it is a file(/result) or a direc
(let* ((file-p (eq 'read-file-name-internal completer))
(filebuf (get-buffer-create "*Completions*"))
(dirbuf (and file-p (generate-new-buffer " *mouse-read-file*")))
- (butbuf (generate-new-buffer " *mouse-read-file*"))
+ (butbuf (generate-new-buffer " *mouse-read-file-buttons*"))
(frame (make-dialog-frame))
filewin dirwin
user-data)
@@ -2067,12 +2067,11 @@ whether it is a file(/result) or a direc
;; set up the frame.
(focus-frame frame)
- (let ((window-min-height 1))
- ;; #### should be 2 not 3, but that causes
- ;; "window too small to split" errors for some
- ;; people (but not for me ...) There's a more
- ;; fundamental bug somewhere.
- (split-window nil (- (frame-height frame) 3)))
+ ;; We really need `window-min-height' lines for the button
+ ;; buffer, as otherwise the button buffer might get
+ ;; inadvertently deleted when other window-size changes
+ ;; happen (such as through resize-minibuffer-mode).
+ (split-window nil (- (frame-height frame) window-min-height))
(if file-p
(progn
(split-window-horizontally 16)
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 src/ChangeLog
--- a/src/ChangeLog Wed Jan 02 21:01:16 2008 +0100
+++ b/src/ChangeLog Wed Jan 02 22:29:36 2008 +0100
@@ -1,3 +1,27 @@ 2007-12-30 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * emacs.c (main_1):
+ Call the new vars_of_console_gtk function.
+ * console-gtk.c (vars_of_console_gtk): New.
+ * console-gtk.c (gtk_perhaps_init_unseen_key_defaults):
+ Correct the initialisation of the hash table, on the model of the
+ MSW and TTY builds.
+
+
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * doc.c (Fbuilt_in_symbol_file):
+ Don't check is fun zero in the condition, check that it's not
+ nil. Fixes the union build; thank you Stephen.
+
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * window.c (set_window_pixsize): Factor in the modeline when
+ looking at window_min_width. Remove obsolete comment about
+ incorrect use of `default_face_height_and_width'.
+ (change_window_height): Remove obsolete comment about
+ incorrect use of `default_face_height_and_width'.
+
2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
* doc.c (Fbuilt_in_symbol_file):
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 src/console-gtk.c
--- a/src/console-gtk.c Wed Jan 02 21:01:16 2008 +0100
+++ b/src/console-gtk.c Wed Jan 02 22:29:36 2008 +0100
@@ -39,6 +39,8 @@ Boston, MA 02111-1307, USA. */
DEFINE_CONSOLE_TYPE (gtk);
+Lisp_Object Vgtk_seen_characters;
+
static int
gtk_initially_selected_for_input (struct console *UNUSED (con))
{
@@ -122,13 +124,11 @@ gtk_perhaps_init_unseen_key_defaults (st
Lisp_Object key)
{
Lisp_Object char_to_associate = Qnil;
- extern Lisp_Object Vcurrent_global_map, Qgtk_seen_characters,
- Qcharacter_of_keysym;
+ extern Lisp_Object Vcurrent_global_map, Qcharacter_of_keysym;
if (SYMBOLP(key))
{
gchar *symbol_name;
- guint keyval;
DECLARE_EISTRING(ei_symname);
eicpy_rawz(ei_symname, XSTRING_DATA(symbol_name(XSYMBOL(key))));
@@ -154,21 +154,22 @@ gtk_perhaps_init_unseen_key_defaults (st
else
{
CHECK_CHAR(key);
- }
-
- if (!(HASH_TABLEP(Qgtk_seen_characters)))
- {
- Qgtk_seen_characters = make_lisp_hash_table (128, HASH_TABLE_NON_WEAK,
+ char_to_associate = key;
+ }
+
+ if (!(HASH_TABLEP(Vgtk_seen_characters)))
+ {
+ Vgtk_seen_characters = make_lisp_hash_table (128, HASH_TABLE_NON_WEAK,
HASH_TABLE_EQUAL);
}
/* Might give the user an opaque error if make_lisp_hash_table fails,
but it shouldn't crash. */
- CHECK_HASH_TABLE(Qgtk_seen_characters);
+ CHECK_HASH_TABLE(Vgtk_seen_characters);
if (EQ(char_to_associate, Qnil) /* If there's no char to bind, */
|| (XCHAR(char_to_associate) < 0x80) /* or it's ASCII */
- || !NILP(Fgethash(key, Qgtk_seen_characters, Qnil))) /* Or we've seen
+ || !NILP(Fgethash(key, Vgtk_seen_characters, Qnil))) /* Or we've seen
it already, */
{
/* then don't bind the key. */
@@ -177,7 +178,7 @@ gtk_perhaps_init_unseen_key_defaults (st
if (NILP (Flookup_key (Vcurrent_global_map, key, Qnil)))
{
- Fputhash(key, Qt, Qgtk_seen_characters);
+ Fputhash(key, Qt, Vgtk_seen_characters;)
Fdefine_key (Vcurrent_global_map, key, Qself_insert_command);
if (SYMBOLP(key))
{
@@ -209,3 +210,10 @@ reinit_console_type_create_gtk (void)
{
REINITIALIZE_CONSOLE_TYPE (gtk);
}
+
+void
+vars_of_console_gtk (void)
+{
+ staticpro (&Vgtk_seen_characters);
+ Vgtk_seen_characters = Qnil;
+}
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 src/doc.c
--- a/src/doc.c Wed Jan 02 21:01:16 2008 +0100
+++ b/src/doc.c Wed Jan 02 22:29:36 2008 +0100
@@ -519,7 +519,7 @@ If TYPE is `defvar', then variable defin
fun = Findirect_function (symbol);
if (SUBRP (fun) || (CONSP(fun) && (EQ (Qmacro, Fcar_safe (fun)))
- && (fun = Fcdr_safe (fun))
+ && !NILP(fun = Fcdr_safe (fun))
&& (SUBRP (fun))))
{
if (XSUBR (fun)->doc == 0)
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 src/emacs.c
--- a/src/emacs.c Wed Jan 02 21:01:16 2008 +0100
+++ b/src/emacs.c Wed Jan 02 22:29:36 2008 +0100
@@ -2219,6 +2219,7 @@ main_1 (int argc, Wexttext **argv, Wextt
#ifdef HAVE_GTK
vars_of_device_gtk ();
+ vars_of_console_gtk ();
#ifdef HAVE_DIALOGS
vars_of_dialog_gtk ();
#endif
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 src/window.c
--- a/src/window.c Wed Jan 02 21:01:16 2008 +0100
+++ b/src/window.c Wed Jan 02 22:29:36 2008 +0100
@@ -3520,8 +3520,6 @@ set_window_pixsize (Lisp_Object window,
int line_size;
int defheight, defwidth;
- /* #### This is very likely incorrect and instead the char_to_pixel_
- functions should be called. */
default_face_height_and_width (window, &defheight, &defwidth);
line_size = (set_height ? defheight : defwidth);
@@ -3532,7 +3530,7 @@ set_window_pixsize (Lisp_Object window,
if (!nodelete
&& !TOP_LEVEL_WINDOW_P (w)
- && new_pixsize < minsize)
+ && (new_pixsize + window_modeline_height (w)) < minsize)
{
Fdelete_window (window, Qnil);
return;
@@ -4369,8 +4367,6 @@ change_window_height (Lisp_Object window
if (EQ (window, FRAME_ROOT_WINDOW (f)))
invalid_operation ("Won't change only window", Qunbound);
- /* #### This is very likely incorrect and instead the char_to_pixel_
- functions should be called. */
default_face_height_and_width (window, &defheight, &defwidth);
while (1)
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/gtk-iso8859-1.el
--- a/lisp/gtk-iso8859-1.el Wed Jan 02 21:01:16 2008 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-;; We can just cheat and use the same code that X does.
-
-(require 'x-iso8859-1)
-(provide 'gtk-iso8859-1)
diff -r 0b395a2f70d75507a0fe50dd41c4f6a543a4fefe -r f83978c51585687c9ae6472d43ee06f8c290a440 lisp/x-iso8859-1.el
--- a/lisp/x-iso8859-1.el Wed Jan 02 21:01:16 2008 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,273 +0,0 @@
-;;; x-iso8859-1 --- Mapping between X keysym names and ISO 8859-1
-
-;; Copyright (C) 1992, 1993, 1997 Free Software Foundation, Inc.
-
-;; Author: Jamie Zawinski <jwz(a)jwz.org>
-;; Created: 15-jun-92
-;; Maintainer: XEmacs Development Team
-;; Keywords: extensions, internal, dumped
-
-;; This file is part of XEmacs.
-
-;; XEmacs 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 2, or (at your option)
-;; any later version.
-
-;; XEmacs 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 XEmacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Synched up with: Not synched.
-
-;;; Commentary:
-
-;; created by jwz, 13-jun-92.
-;; changed by Heiko Muenkel, 12-jun-1997: Added a grave keysym.
-
-;; Under X, when the user types a character that is ISO-8859/1 but not ASCII,
-;; it comes in as a symbol instead of as a character code. This keeps things
-;; nice and character-set independent. This file takes all of those symbols
-;; (the symbols that are the X names for the 8859/1 characters) and puts a
-;; property on them which holds the character code that should be inserted in
-;; the buffer when they are typed. The self-insert-command function will look
-;; at this. It also binds them all to self-insert-command.
-
-;; It puts the same property on the keypad keys, so that (read-char) will
-;; think that they are the same as the digit characters. However, those
-;; keys are bound to one-character keyboard macros, so that `kp-9' will, by
-;; default, do the same thing that `9' does, in whatever the current mode is.
-
-;; The standard case and syntax tables are set in iso8859-1.el, since
-;; that is not X-specific.
-
-;;; Code:
-
-(require 'iso8859-1)
-
-(defconst iso8859/1-code-to-x-keysym-table nil
- "Maps iso8859/1 to an X keysym name which corresponds to it.
-There may be more than one X name for this keycode; this returns the first one.
-Note that this is X specific; one should avoid using this table whenever
-possible, in the interest of portability.")
-
-;; (This esoteric little construct is how you do MACROLET in elisp. It
-;; generates the most efficient code for the .elc file by unwinding the
-;; loop at compile-time.)
-
-((macro
- . (lambda (&rest syms-and-iso8859/1-codes)
- (cons
- 'progn
- (nconc
- ;;
- ;; First emit code that puts the `x-iso8859/1' property on all of
- ;; the keysym symbols.
- ;;
- (mapcar '(lambda (sym-and-code)
- (list 'put (list 'quote (car sym-and-code))
- ''x-iso8859/1 (car (cdr sym-and-code))))
- syms-and-iso8859/1-codes)
- ;;
- ;; Then emit code that binds all of those keysym symbols to
- ;; `self-insert-command'.
- ;;
- (mapcar '(lambda (sym-and-code)
- (list 'global-set-key (list 'quote (car sym-and-code))
- ''self-insert-command))
- syms-and-iso8859/1-codes)
- ;;
- ;; Then emit the value of iso8859/1-code-to-x-keysym-table.
- ;;
- (let ((v (make-vector 256 nil)))
- ;; the printing ASCII chars have 1-char names.
- (let ((i 33))
- (while (< i 127)
- (aset v i (intern (make-string 1 i)))
- (setq i (1+ i))))
- ;; these are from the keyboard character set.
- (mapcar '(lambda (x) (aset v (car x) (car (cdr x))))
- '((8 backspace) (9 tab) (10 linefeed) (13 return)
- (27 escape) (32 space) (127 delete)))
- (mapcar '(lambda (sym-and-code)
- (or (aref v (car (cdr sym-and-code)))
- (aset v (car (cdr sym-and-code)) (car sym-and-code))))
- syms-and-iso8859/1-codes)
- (list (list 'setq 'iso8859/1-code-to-x-keysym-table v)))
- ))))
-
- ;; The names and capitalization here are as per the MIT X11R4 and X11R5
- ;; distributions. If a vendor varies from this, adjustments will need
- ;; to be made...
-
- (grave ?\140)
- (nobreakspace ?\240)
- (exclamdown ?\241)
- (cent ?\242)
- (sterling ?\243)
- (currency ?\244)
- (yen ?\245)
- (brokenbar ?\246)
- (section ?\247)
- (diaeresis ?\250)
- (copyright ?\251)
- (ordfeminine ?\252)
- (guillemotleft ?\253)
- (notsign ?\254)
- (hyphen ?\255)
- (registered ?\256)
- (macron ?\257)
- (degree ?\260)
- (plusminus ?\261)
- (twosuperior ?\262)
- (threesuperior ?\263)
- (acute ?\264) ; Why is there an acute keysym that is
- (mu ?\265) ; distinct from apostrophe/quote, but
- (paragraph ?\266) ; no grave keysym that is distinct from
- (periodcentered ?\267) ; backquote?
- (cedilla ?\270) ; I've added the grave keysym, because it's
- (onesuperior ?\271) ; used in x-compose (Heiko Muenkel).
- (masculine ?\272)
- (guillemotright ?\273)
- (onequarter ?\274)
- (onehalf ?\275)
- (threequarters ?\276)
- (questiondown ?\277)
-
- (Agrave ?\300)
- (Aacute ?\301)
- (Acircumflex ?\302)
- (Atilde ?\303)
- (Adiaeresis ?\304)
- (Aring ?\305)
- (AE ?\306)
- (Ccedilla ?\307)
- (Egrave ?\310)
- (Eacute ?\311)
- (Ecircumflex ?\312)
- (Ediaeresis ?\313)
- (Igrave ?\314)
- (Iacute ?\315)
- (Icircumflex ?\316)
- (Idiaeresis ?\317)
- (ETH ?\320)
- (Ntilde ?\321)
- (Ograve ?\322)
- (Oacute ?\323)
- (Ocircumflex ?\324)
- (Otilde ?\325)
- (Odiaeresis ?\326)
- (multiply ?\327)
- (Ooblique ?\330)
- (Ugrave ?\331)
- (Uacute ?\332)
- (Ucircumflex ?\333)
- (Udiaeresis ?\334)
- (Yacute ?\335)
- (THORN ?\336)
- (ssharp ?\337)
-
- (agrave ?\340)
- (aacute ?\341)
- (acircumflex ?\342)
- (atilde ?\343)
- (adiaeresis ?\344)
- (aring ?\345)
- (ae ?\346)
- (ccedilla ?\347)
- (egrave ?\350)
- (eacute ?\351)
- (ecircumflex ?\352)
- (ediaeresis ?\353)
- (igrave ?\354)
- (iacute ?\355)
- (icircumflex ?\356)
- (idiaeresis ?\357)
- (eth ?\360)
- (ntilde ?\361)
- (ograve ?\362)
- (oacute ?\363)
- (ocircumflex ?\364)
- (otilde ?\365)
- (odiaeresis ?\366)
- (division ?\367)
- (oslash ?\370)
- (ugrave ?\371)
- (uacute ?\372)
- (ucircumflex ?\373)
- (udiaeresis ?\374)
- (yacute ?\375)
- (thorn ?\376)
- (ydiaeresis ?\377)
-
- )
-
-((macro . (lambda (&rest syms-and-iso8859/1-codes)
- (cons 'progn
- (mapcar '(lambda (sym-and-code)
- (list 'put (list 'quote (car sym-and-code))
- ''x-iso8859/1 (car (cdr sym-and-code))))
- syms-and-iso8859/1-codes))))
- ;;
- ;; Let's do the appropriate thing for some vendor-specific keysyms too...
- ;; Apparently nobody agrees on what the names of these keysyms are.
- ;;
- (SunFA_Acute ?\264)
- (SunXK_FA_Acute ?\264)
- (Dacute_accent ?\264)
- (DXK_acute_accent ?\264)
- (hpmute_acute ?\264)
- (hpXK_mute_acute ?\264)
- (XK_mute_acute ?\264)
-
- (SunFA_Grave ?`)
- (Dead_Grave ?`)
- (SunXK_FA_Grave ?`)
- (Dgrave_accent ?`)
- (DXK_grave_accent ?`)
- (hpmute_grave ?`)
- (hpXK_mute_grave ?`)
- (XK_mute_grave ?`)
-
- (SunFA_Cedilla ?\270)
- (SunXK_FA_Cedilla ?\270)
- (Dcedilla_accent ?\270)
- (DXK_cedilla_accent ?\270)
-
- (SunFA_Diaeresis ?\250)
- (SunXK_FA_Diaeresis ?\250)
- (hpmute_diaeresis ?\250)
- (hpXK_mute_diaeresis ?\250)
- (XK_mute_diaeresis ?\250)
-
- (SunFA_Circum ?^)
- (Dead_Circum ?^)
- (SunXK_FA_Circum ?^)
- (Dcircumflex_accent ?^)
- (DXK_circumflex_accent ?^)
- (hpmute_asciicircum ?^)
- (hpXK_mute_asciicircum ?^)
- (XK_mute_asciicircum ?^)
-
- (SunFA_Tilde ?~)
- (Dead_Tilde ?~)
- (SunXK_FA_Tilde ?~)
- (Dtilde ?~)
- (DXK_tilde ?~)
- (hpmute_asciitilde ?~)
- (hpXK_mute_asciitilde ?~)
- (XK_mute_asciitilde ?~)
-
- (Dring_accent ?\260)
- (DXK_ring_accent ?\260)
- )
-
-(provide 'x-iso8859-1)
-
-;;; x-iso8859-1.el ends here
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Correct the perhaps_init_unseen_key_defaults GTK code; don't override X11 fonts.
16 years, 11 months
Aidan Kehoe
changeset: 4392:461fdb92f3b61866f7787d1922376603c9cc4c96
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 02 22:11:03 2008 +0100
files: lisp/ChangeLog lisp/gtk-init.el src/ChangeLog src/console-gtk.c src/emacs.c
description:
Correct the perhaps_init_unseen_key_defaults GTK code; don't override X11 fonts.
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* emacs.c (main_1):
Call the new vars_of_console_gtk function.
* console-gtk.c (vars_of_console_gtk): New.
* console-gtk.c (gtk_perhaps_init_unseen_key_defaults):
Correct the initialisation of the hash table, on the model of the
MSW and TTY builds.
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* gtk-init.el (init-post-gtk-win):
Trust the X11 code to give us decent default fonts.
diff -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda -r 461fdb92f3b61866f7787d1922376603c9cc4c96 lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jan 02 21:33:54 2008 +0100
+++ b/lisp/ChangeLog Wed Jan 02 22:11:03 2008 +0100
@@ -1,3 +1,8 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * gtk-init.el (init-post-gtk-win):
+ Trust the X11 code to give us decent default fonts.
+
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* x-iso8859-1.el: Removed.
diff -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda -r 461fdb92f3b61866f7787d1922376603c9cc4c96 lisp/gtk-init.el
--- a/lisp/gtk-init.el Wed Jan 02 21:33:54 2008 +0100
+++ b/lisp/gtk-init.el Wed Jan 02 22:11:03 2008 +0100
@@ -133,62 +133,6 @@ GNU long form though.")
(defun init-post-gtk-win ()
(unless gtk-post-win-initted
- (when (featurep 'mule)
- (define-specifier-tag 'mule-fonts
- (lambda (device) (eq 'gtk (device-type device))))
- (set-face-font
- 'default
- '("-*-fixed-medium-r-*--16-*-iso8859-1"
- "-*-fixed-medium-r-*--*-iso8859-1"
- "-*-fixed-medium-r-*--*-iso8859-2"
- "-*-fixed-medium-r-*--*-iso8859-3"
- "-*-fixed-medium-r-*--*-iso8859-4"
- "-*-fixed-medium-r-*--*-iso8859-7"
- "-*-fixed-medium-r-*--*-iso8859-8"
- "-*-fixed-medium-r-*--*-iso8859-5"
- "-*-fixed-medium-r-*--*-iso8859-9"
-
- ;; Following 3 fonts proposed by Teruhiko.Kurosaka(a)Japan.eng.sun
- "-sun-gothic-medium-r-normal--14-120-75-75-c-60-jisx0201.1976-0"
- "-sun-gothic-medium-r-normal--14-120-75-75-c-120-jisx0208.1983-0"
- "-wadalab-gothic-medium-r-normal--14-120-75-75-c-120-jisx0212.1990-0"
- ;; Other Japanese fonts
- "-*-fixed-medium-r-*--*-jisx0201.1976-*"
- "-*-fixed-medium-r-*--*-jisx0208.1983-*"
- "-*-fixed-medium-r-*--*-jisx0212*-*"
-
- ;; Chinese fonts
- "-*-*-medium-r-*--*-gb2312.1980-*"
-
- ;; Use One font specification for CNS chinese
- ;; Too many variations in font naming
- "-*-fixed-medium-r-*--*-cns11643*-*"
- ;; "-*-fixed-medium-r-*--*-cns11643*2"
- ;; "-*-fixed-medium-r-*--*-cns11643*3"
- ;; "-*-fixed-medium-r-*--*-cns11643*4"
- ;; "-*-fixed-medium-r-*--*-cns11643.5-0"
- ;; "-*-fixed-medium-r-*--*-cns11643.6-0"
- ;; "-*-fixed-medium-r-*--*-cns11643.7-0"
-
- "-*-fixed-medium-r-*--*-big5*-*"
- "-*-fixed-medium-r-*--*-sisheng_cwnn-0"
-
- ;; Other fonts
-
- ;; "-*-fixed-medium-r-*--*-viscii1.1-1"
-
- ;; "-*-fixed-medium-r-*--*-mulearabic-0"
- ;; "-*-fixed-medium-r-*--*-mulearabic-1"
- ;; "-*-fixed-medium-r-*--*-mulearabic-2"
-
- ;; "-*-fixed-medium-r-*--*-muleipa-1"
- ;; "-*-fixed-medium-r-*--*-ethio-*"
-
- "-*-mincho-medium-r-*--*-ksc5601.1987-*" ; Korean
- "-*-fixed-medium-r-*--*-tis620.2529-1" ; Thai
- )
- 'global '(mule-fonts) 'append))
-
(setq gtk-post-win-initted t)))
(push '("-geometry" . gtk-init-handle-geometry) command-switch-alist)
diff -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda -r 461fdb92f3b61866f7787d1922376603c9cc4c96 src/ChangeLog
--- a/src/ChangeLog Wed Jan 02 21:33:54 2008 +0100
+++ b/src/ChangeLog Wed Jan 02 22:11:03 2008 +0100
@@ -1,3 +1,13 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * emacs.c (main_1):
+ Call the new vars_of_console_gtk function.
+ * console-gtk.c (vars_of_console_gtk): New.
+ * console-gtk.c (gtk_perhaps_init_unseen_key_defaults):
+ Correct the initialisation of the hash table, on the model of the
+ MSW and TTY builds.
+
+
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* doc.c (Fbuilt_in_symbol_file):
diff -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda -r 461fdb92f3b61866f7787d1922376603c9cc4c96 src/console-gtk.c
--- a/src/console-gtk.c Wed Jan 02 21:33:54 2008 +0100
+++ b/src/console-gtk.c Wed Jan 02 22:11:03 2008 +0100
@@ -39,6 +39,8 @@ Boston, MA 02111-1307, USA. */
DEFINE_CONSOLE_TYPE (gtk);
+Lisp_Object Vgtk_seen_characters;
+
static int
gtk_initially_selected_for_input (struct console *UNUSED (con))
{
@@ -122,13 +124,11 @@ gtk_perhaps_init_unseen_key_defaults (st
Lisp_Object key)
{
Lisp_Object char_to_associate = Qnil;
- extern Lisp_Object Vcurrent_global_map, Qgtk_seen_characters,
- Qcharacter_of_keysym;
+ extern Lisp_Object Vcurrent_global_map, Qcharacter_of_keysym;
if (SYMBOLP(key))
{
gchar *symbol_name;
- guint keyval;
DECLARE_EISTRING(ei_symname);
eicpy_rawz(ei_symname, XSTRING_DATA(symbol_name(XSYMBOL(key))));
@@ -154,21 +154,22 @@ gtk_perhaps_init_unseen_key_defaults (st
else
{
CHECK_CHAR(key);
- }
-
- if (!(HASH_TABLEP(Qgtk_seen_characters)))
- {
- Qgtk_seen_characters = make_lisp_hash_table (128, HASH_TABLE_NON_WEAK,
+ char_to_associate = key;
+ }
+
+ if (!(HASH_TABLEP(Vgtk_seen_characters)))
+ {
+ Vgtk_seen_characters = make_lisp_hash_table (128, HASH_TABLE_NON_WEAK,
HASH_TABLE_EQUAL);
}
/* Might give the user an opaque error if make_lisp_hash_table fails,
but it shouldn't crash. */
- CHECK_HASH_TABLE(Qgtk_seen_characters);
+ CHECK_HASH_TABLE(Vgtk_seen_characters);
if (EQ(char_to_associate, Qnil) /* If there's no char to bind, */
|| (XCHAR(char_to_associate) < 0x80) /* or it's ASCII */
- || !NILP(Fgethash(key, Qgtk_seen_characters, Qnil))) /* Or we've seen
+ || !NILP(Fgethash(key, Vgtk_seen_characters, Qnil))) /* Or we've seen
it already, */
{
/* then don't bind the key. */
@@ -177,7 +178,7 @@ gtk_perhaps_init_unseen_key_defaults (st
if (NILP (Flookup_key (Vcurrent_global_map, key, Qnil)))
{
- Fputhash(key, Qt, Qgtk_seen_characters);
+ Fputhash(key, Qt, Vgtk_seen_characters;)
Fdefine_key (Vcurrent_global_map, key, Qself_insert_command);
if (SYMBOLP(key))
{
@@ -209,3 +210,10 @@ reinit_console_type_create_gtk (void)
{
REINITIALIZE_CONSOLE_TYPE (gtk);
}
+
+void
+vars_of_console_gtk (void)
+{
+ staticpro (&Vgtk_seen_characters);
+ Vgtk_seen_characters = Qnil;
+}
diff -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda -r 461fdb92f3b61866f7787d1922376603c9cc4c96 src/emacs.c
--- a/src/emacs.c Wed Jan 02 21:33:54 2008 +0100
+++ b/src/emacs.c Wed Jan 02 22:11:03 2008 +0100
@@ -2162,6 +2162,7 @@ main_1 (int argc, Wexttext **argv, Wextt
#ifdef HAVE_GTK
vars_of_device_gtk ();
+ vars_of_console_gtk ();
#ifdef HAVE_DIALOGS
vars_of_dialog_gtk ();
#endif
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Remove x-iso8859-1.el, gtk-iso8859-1.el; they haven't been used for 18 months.
16 years, 11 months
Aidan Kehoe
changeset: 4391:92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 02 21:33:54 2008 +0100
files: lisp/ChangeLog lisp/gtk-iso8859-1.el lisp/x-iso8859-1.el
description:
Remove x-iso8859-1.el, gtk-iso8859-1.el; they haven't been used for 18 months.
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* x-iso8859-1.el: Removed.
* gtk-iso8859-1.el: Removed.
These haven't been used in a year and a half. No need to keep them
around.
diff -r 0c089d397c3ea5da42906a660f71923c17ea94d7 -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jan 02 11:19:16 2008 +0100
+++ b/lisp/ChangeLog Wed Jan 02 21:33:54 2008 +0100
@@ -1,3 +1,10 @@ 2008-01-02 Mike Sperber <mike(a)xemacs.o
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * x-iso8859-1.el: Removed.
+ * gtk-iso8859-1.el: Removed.
+ These haven't been used in a year and a half. No need to keep them
+ around.
+
2008-01-02 Mike Sperber <mike(a)xemacs.org>
* minibuf.el (mouse-read-file-name-1): Make the buttons in the
diff -r 0c089d397c3ea5da42906a660f71923c17ea94d7 -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda lisp/gtk-iso8859-1.el
--- a/lisp/gtk-iso8859-1.el Wed Jan 02 11:19:16 2008 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-;; We can just cheat and use the same code that X does.
-
-(require 'x-iso8859-1)
-(provide 'gtk-iso8859-1)
diff -r 0c089d397c3ea5da42906a660f71923c17ea94d7 -r 92188a8f47a3d72ab0dcafc65a5e4e220ccd8bda lisp/x-iso8859-1.el
--- a/lisp/x-iso8859-1.el Wed Jan 02 11:19:16 2008 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,273 +0,0 @@
-;;; x-iso8859-1 --- Mapping between X keysym names and ISO 8859-1
-
-;; Copyright (C) 1992, 1993, 1997 Free Software Foundation, Inc.
-
-;; Author: Jamie Zawinski <jwz(a)jwz.org>
-;; Created: 15-jun-92
-;; Maintainer: XEmacs Development Team
-;; Keywords: extensions, internal, dumped
-
-;; This file is part of XEmacs.
-
-;; XEmacs 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 2, or (at your option)
-;; any later version.
-
-;; XEmacs 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 XEmacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Synched up with: Not synched.
-
-;;; Commentary:
-
-;; created by jwz, 13-jun-92.
-;; changed by Heiko Muenkel, 12-jun-1997: Added a grave keysym.
-
-;; Under X, when the user types a character that is ISO-8859/1 but not ASCII,
-;; it comes in as a symbol instead of as a character code. This keeps things
-;; nice and character-set independent. This file takes all of those symbols
-;; (the symbols that are the X names for the 8859/1 characters) and puts a
-;; property on them which holds the character code that should be inserted in
-;; the buffer when they are typed. The self-insert-command function will look
-;; at this. It also binds them all to self-insert-command.
-
-;; It puts the same property on the keypad keys, so that (read-char) will
-;; think that they are the same as the digit characters. However, those
-;; keys are bound to one-character keyboard macros, so that `kp-9' will, by
-;; default, do the same thing that `9' does, in whatever the current mode is.
-
-;; The standard case and syntax tables are set in iso8859-1.el, since
-;; that is not X-specific.
-
-;;; Code:
-
-(require 'iso8859-1)
-
-(defconst iso8859/1-code-to-x-keysym-table nil
- "Maps iso8859/1 to an X keysym name which corresponds to it.
-There may be more than one X name for this keycode; this returns the first one.
-Note that this is X specific; one should avoid using this table whenever
-possible, in the interest of portability.")
-
-;; (This esoteric little construct is how you do MACROLET in elisp. It
-;; generates the most efficient code for the .elc file by unwinding the
-;; loop at compile-time.)
-
-((macro
- . (lambda (&rest syms-and-iso8859/1-codes)
- (cons
- 'progn
- (nconc
- ;;
- ;; First emit code that puts the `x-iso8859/1' property on all of
- ;; the keysym symbols.
- ;;
- (mapcar '(lambda (sym-and-code)
- (list 'put (list 'quote (car sym-and-code))
- ''x-iso8859/1 (car (cdr sym-and-code))))
- syms-and-iso8859/1-codes)
- ;;
- ;; Then emit code that binds all of those keysym symbols to
- ;; `self-insert-command'.
- ;;
- (mapcar '(lambda (sym-and-code)
- (list 'global-set-key (list 'quote (car sym-and-code))
- ''self-insert-command))
- syms-and-iso8859/1-codes)
- ;;
- ;; Then emit the value of iso8859/1-code-to-x-keysym-table.
- ;;
- (let ((v (make-vector 256 nil)))
- ;; the printing ASCII chars have 1-char names.
- (let ((i 33))
- (while (< i 127)
- (aset v i (intern (make-string 1 i)))
- (setq i (1+ i))))
- ;; these are from the keyboard character set.
- (mapcar '(lambda (x) (aset v (car x) (car (cdr x))))
- '((8 backspace) (9 tab) (10 linefeed) (13 return)
- (27 escape) (32 space) (127 delete)))
- (mapcar '(lambda (sym-and-code)
- (or (aref v (car (cdr sym-and-code)))
- (aset v (car (cdr sym-and-code)) (car sym-and-code))))
- syms-and-iso8859/1-codes)
- (list (list 'setq 'iso8859/1-code-to-x-keysym-table v)))
- ))))
-
- ;; The names and capitalization here are as per the MIT X11R4 and X11R5
- ;; distributions. If a vendor varies from this, adjustments will need
- ;; to be made...
-
- (grave ?\140)
- (nobreakspace ?\240)
- (exclamdown ?\241)
- (cent ?\242)
- (sterling ?\243)
- (currency ?\244)
- (yen ?\245)
- (brokenbar ?\246)
- (section ?\247)
- (diaeresis ?\250)
- (copyright ?\251)
- (ordfeminine ?\252)
- (guillemotleft ?\253)
- (notsign ?\254)
- (hyphen ?\255)
- (registered ?\256)
- (macron ?\257)
- (degree ?\260)
- (plusminus ?\261)
- (twosuperior ?\262)
- (threesuperior ?\263)
- (acute ?\264) ; Why is there an acute keysym that is
- (mu ?\265) ; distinct from apostrophe/quote, but
- (paragraph ?\266) ; no grave keysym that is distinct from
- (periodcentered ?\267) ; backquote?
- (cedilla ?\270) ; I've added the grave keysym, because it's
- (onesuperior ?\271) ; used in x-compose (Heiko Muenkel).
- (masculine ?\272)
- (guillemotright ?\273)
- (onequarter ?\274)
- (onehalf ?\275)
- (threequarters ?\276)
- (questiondown ?\277)
-
- (Agrave ?\300)
- (Aacute ?\301)
- (Acircumflex ?\302)
- (Atilde ?\303)
- (Adiaeresis ?\304)
- (Aring ?\305)
- (AE ?\306)
- (Ccedilla ?\307)
- (Egrave ?\310)
- (Eacute ?\311)
- (Ecircumflex ?\312)
- (Ediaeresis ?\313)
- (Igrave ?\314)
- (Iacute ?\315)
- (Icircumflex ?\316)
- (Idiaeresis ?\317)
- (ETH ?\320)
- (Ntilde ?\321)
- (Ograve ?\322)
- (Oacute ?\323)
- (Ocircumflex ?\324)
- (Otilde ?\325)
- (Odiaeresis ?\326)
- (multiply ?\327)
- (Ooblique ?\330)
- (Ugrave ?\331)
- (Uacute ?\332)
- (Ucircumflex ?\333)
- (Udiaeresis ?\334)
- (Yacute ?\335)
- (THORN ?\336)
- (ssharp ?\337)
-
- (agrave ?\340)
- (aacute ?\341)
- (acircumflex ?\342)
- (atilde ?\343)
- (adiaeresis ?\344)
- (aring ?\345)
- (ae ?\346)
- (ccedilla ?\347)
- (egrave ?\350)
- (eacute ?\351)
- (ecircumflex ?\352)
- (ediaeresis ?\353)
- (igrave ?\354)
- (iacute ?\355)
- (icircumflex ?\356)
- (idiaeresis ?\357)
- (eth ?\360)
- (ntilde ?\361)
- (ograve ?\362)
- (oacute ?\363)
- (ocircumflex ?\364)
- (otilde ?\365)
- (odiaeresis ?\366)
- (division ?\367)
- (oslash ?\370)
- (ugrave ?\371)
- (uacute ?\372)
- (ucircumflex ?\373)
- (udiaeresis ?\374)
- (yacute ?\375)
- (thorn ?\376)
- (ydiaeresis ?\377)
-
- )
-
-((macro . (lambda (&rest syms-and-iso8859/1-codes)
- (cons 'progn
- (mapcar '(lambda (sym-and-code)
- (list 'put (list 'quote (car sym-and-code))
- ''x-iso8859/1 (car (cdr sym-and-code))))
- syms-and-iso8859/1-codes))))
- ;;
- ;; Let's do the appropriate thing for some vendor-specific keysyms too...
- ;; Apparently nobody agrees on what the names of these keysyms are.
- ;;
- (SunFA_Acute ?\264)
- (SunXK_FA_Acute ?\264)
- (Dacute_accent ?\264)
- (DXK_acute_accent ?\264)
- (hpmute_acute ?\264)
- (hpXK_mute_acute ?\264)
- (XK_mute_acute ?\264)
-
- (SunFA_Grave ?`)
- (Dead_Grave ?`)
- (SunXK_FA_Grave ?`)
- (Dgrave_accent ?`)
- (DXK_grave_accent ?`)
- (hpmute_grave ?`)
- (hpXK_mute_grave ?`)
- (XK_mute_grave ?`)
-
- (SunFA_Cedilla ?\270)
- (SunXK_FA_Cedilla ?\270)
- (Dcedilla_accent ?\270)
- (DXK_cedilla_accent ?\270)
-
- (SunFA_Diaeresis ?\250)
- (SunXK_FA_Diaeresis ?\250)
- (hpmute_diaeresis ?\250)
- (hpXK_mute_diaeresis ?\250)
- (XK_mute_diaeresis ?\250)
-
- (SunFA_Circum ?^)
- (Dead_Circum ?^)
- (SunXK_FA_Circum ?^)
- (Dcircumflex_accent ?^)
- (DXK_circumflex_accent ?^)
- (hpmute_asciicircum ?^)
- (hpXK_mute_asciicircum ?^)
- (XK_mute_asciicircum ?^)
-
- (SunFA_Tilde ?~)
- (Dead_Tilde ?~)
- (SunXK_FA_Tilde ?~)
- (Dtilde ?~)
- (DXK_tilde ?~)
- (hpmute_asciitilde ?~)
- (hpXK_mute_asciitilde ?~)
- (XK_mute_asciitilde ?~)
-
- (Dring_accent ?\260)
- (DXK_ring_accent ?\260)
- )
-
-(provide 'x-iso8859-1)
-
-;;; x-iso8859-1.el ends here
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
16 years, 11 months
Aidan Kehoe
changeset: 4390:0c089d397c3ea5da42906a660f71923c17ea94d7
parent: 4389:751d82f59283dea703b660f3ebc3f3581e6d97d0
parent: 4388:53e507d77416adad6ce72e66fb4b7f8848fa993b
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 02 11:19:16 2008 +0100
files: src/ChangeLog
description:
Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
diff -r 751d82f59283dea703b660f3ebc3f3581e6d97d0 -r 0c089d397c3ea5da42906a660f71923c17ea94d7 lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jan 02 11:16:16 2008 +0100
+++ b/lisp/ChangeLog Wed Jan 02 11:19:16 2008 +0100
@@ -1,3 +1,10 @@ 2007-12-31 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * minibuf.el (mouse-read-file-name-1): Make the buttons in the
+ dialog frame occupy `window-min-height' lines to avoid problems
+ when the window configuration changes---as it does with
+ `resize-minibuffer-mode'.
+
2007-12-31 Aidan Kehoe <kehoea(a)parhasard.net>
* menubar-items.el (default-menubar):
diff -r 751d82f59283dea703b660f3ebc3f3581e6d97d0 -r 0c089d397c3ea5da42906a660f71923c17ea94d7 lisp/minibuf.el
--- a/lisp/minibuf.el Wed Jan 02 11:16:16 2008 +0100
+++ b/lisp/minibuf.el Wed Jan 02 11:19:16 2008 +0100
@@ -2057,7 +2057,7 @@ whether it is a file(/result) or a direc
(let* ((file-p (eq 'read-file-name-internal completer))
(filebuf (get-buffer-create "*Completions*"))
(dirbuf (and file-p (generate-new-buffer " *mouse-read-file*")))
- (butbuf (generate-new-buffer " *mouse-read-file*"))
+ (butbuf (generate-new-buffer " *mouse-read-file-buttons*"))
(frame (make-dialog-frame))
filewin dirwin
user-data)
@@ -2067,12 +2067,11 @@ whether it is a file(/result) or a direc
;; set up the frame.
(focus-frame frame)
- (let ((window-min-height 1))
- ;; #### should be 2 not 3, but that causes
- ;; "window too small to split" errors for some
- ;; people (but not for me ...) There's a more
- ;; fundamental bug somewhere.
- (split-window nil (- (frame-height frame) 3)))
+ ;; We really need `window-min-height' lines for the button
+ ;; buffer, as otherwise the button buffer might get
+ ;; inadvertently deleted when other window-size changes
+ ;; happen (such as through resize-minibuffer-mode).
+ (split-window nil (- (frame-height frame) window-min-height))
(if file-p
(progn
(split-window-horizontally 16)
diff -r 751d82f59283dea703b660f3ebc3f3581e6d97d0 -r 0c089d397c3ea5da42906a660f71923c17ea94d7 src/ChangeLog
--- a/src/ChangeLog Wed Jan 02 11:16:16 2008 +0100
+++ b/src/ChangeLog Wed Jan 02 11:19:16 2008 +0100
@@ -3,6 +3,14 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
* doc.c (Fbuilt_in_symbol_file):
Don't check is fun zero in the condition, check that it's not
nil. Fixes the union build; thank you Stephen.
+
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * window.c (set_window_pixsize): Factor in the modeline when
+ looking at window_min_width. Remove obsolete comment about
+ incorrect use of `default_face_height_and_width'.
+ (change_window_height): Remove obsolete comment about
+ incorrect use of `default_face_height_and_width'.
2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
diff -r 751d82f59283dea703b660f3ebc3f3581e6d97d0 -r 0c089d397c3ea5da42906a660f71923c17ea94d7 src/window.c
--- a/src/window.c Wed Jan 02 11:16:16 2008 +0100
+++ b/src/window.c Wed Jan 02 11:19:16 2008 +0100
@@ -3520,8 +3520,6 @@ set_window_pixsize (Lisp_Object window,
int line_size;
int defheight, defwidth;
- /* #### This is very likely incorrect and instead the char_to_pixel_
- functions should be called. */
default_face_height_and_width (window, &defheight, &defwidth);
line_size = (set_height ? defheight : defwidth);
@@ -3532,7 +3530,7 @@ set_window_pixsize (Lisp_Object window,
if (!nodelete
&& !TOP_LEVEL_WINDOW_P (w)
- && new_pixsize < minsize)
+ && (new_pixsize + window_modeline_height (w)) < minsize)
{
Fdelete_window (window, Qnil);
return;
@@ -4369,8 +4367,6 @@ change_window_height (Lisp_Object window
if (EQ (window, FRAME_ROOT_WINDOW (f)))
invalid_operation ("Won't change only window", Qunbound);
- /* #### This is very likely incorrect and instead the char_to_pixel_
- functions should be called. */
default_face_height_and_width (window, &defheight, &defwidth);
while (1)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Fix the union build--check that built-in macro function values are nil, not zero.
16 years, 11 months
Aidan Kehoe
changeset: 4389:751d82f59283dea703b660f3ebc3f3581e6d97d0
parent: 4386:4939bde48d124b27dc8fe1878a6d681f5a1fd24c
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 02 11:16:16 2008 +0100
files: src/ChangeLog src/doc.c
description:
Fix the union build--check that built-in macro function values are nil, not zero.
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* doc.c (Fbuilt_in_symbol_file):
Don't check is fun zero in the condition, check that it's not
nil. Fixes the union build; thank you Stephen.
diff -r 4939bde48d124b27dc8fe1878a6d681f5a1fd24c -r 751d82f59283dea703b660f3ebc3f3581e6d97d0 src/ChangeLog
--- a/src/ChangeLog Tue Jan 01 22:09:51 2008 -0800
+++ b/src/ChangeLog Wed Jan 02 11:16:16 2008 +0100
@@ -1,3 +1,9 @@ 2007-12-30 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * doc.c (Fbuilt_in_symbol_file):
+ Don't check is fun zero in the condition, check that it's not
+ nil. Fixes the union build; thank you Stephen.
+
2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
* doc.c (Fbuilt_in_symbol_file):
diff -r 4939bde48d124b27dc8fe1878a6d681f5a1fd24c -r 751d82f59283dea703b660f3ebc3f3581e6d97d0 src/doc.c
--- a/src/doc.c Tue Jan 01 22:09:51 2008 -0800
+++ b/src/doc.c Wed Jan 02 11:16:16 2008 +0100
@@ -519,7 +519,7 @@ If TYPE is `defvar', then variable defin
fun = Findirect_function (symbol);
if (SUBRP (fun) || (CONSP(fun) && (EQ (Qmacro, Fcar_safe (fun)))
- && (fun = Fcdr_safe (fun))
+ && !NILP(fun = Fcdr_safe (fun))
&& (SUBRP (fun))))
{
if (XSUBR (fun)->doc == 0)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Update window-size computation.
16 years, 11 months
Aidan Kehoe
changeset: 4387:74e0e1131e011672c4512111c51ef3795e4bf995
user: Mike Sperber <sperber(a)deinprogramm.de>
date: Wed Jan 02 10:12:04 2008 +0100
files: src/ChangeLog src/window.c
description:
Update window-size computation.
2008-01-02 Mike Sperber <mike(a)xemacs.org>
* window.c (set_window_pixsize): Factor in the modeline when
looking at window_min_width. Remove obsolete comment about
incorrect use of `default_face_height_and_width'.
(change_window_height): Remove obsolete comment about
incorrect use of `default_face_height_and_width'.
diff -r 4939bde48d124b27dc8fe1878a6d681f5a1fd24c -r 74e0e1131e011672c4512111c51ef3795e4bf995 src/ChangeLog
--- a/src/ChangeLog Tue Jan 01 22:09:51 2008 -0800
+++ b/src/ChangeLog Wed Jan 02 10:12:04 2008 +0100
@@ -1,3 +1,11 @@ 2007-12-30 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * window.c (set_window_pixsize): Factor in the modeline when
+ looking at window_min_width. Remove obsolete comment about
+ incorrect use of `default_face_height_and_width'.
+ (change_window_height): Remove obsolete comment about
+ incorrect use of `default_face_height_and_width'.
+
2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
* doc.c (Fbuilt_in_symbol_file):
diff -r 4939bde48d124b27dc8fe1878a6d681f5a1fd24c -r 74e0e1131e011672c4512111c51ef3795e4bf995 src/window.c
--- a/src/window.c Tue Jan 01 22:09:51 2008 -0800
+++ b/src/window.c Wed Jan 02 10:12:04 2008 +0100
@@ -3520,8 +3520,6 @@ set_window_pixsize (Lisp_Object window,
int line_size;
int defheight, defwidth;
- /* #### This is very likely incorrect and instead the char_to_pixel_
- functions should be called. */
default_face_height_and_width (window, &defheight, &defwidth);
line_size = (set_height ? defheight : defwidth);
@@ -3532,7 +3530,7 @@ set_window_pixsize (Lisp_Object window,
if (!nodelete
&& !TOP_LEVEL_WINDOW_P (w)
- && new_pixsize < minsize)
+ && (new_pixsize + window_modeline_height (w)) < minsize)
{
Fdelete_window (window, Qnil);
return;
@@ -4369,8 +4367,6 @@ change_window_height (Lisp_Object window
if (EQ (window, FRAME_ROOT_WINDOW (f)))
invalid_operation ("Won't change only window", Qunbound);
- /* #### This is very likely incorrect and instead the char_to_pixel_
- functions should be called. */
default_face_height_and_width (window, &defheight, &defwidth);
while (1)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Fix problem with file dialog box.
16 years, 11 months
Aidan Kehoe
changeset: 4388:53e507d77416adad6ce72e66fb4b7f8848fa993b
user: Mike Sperber <sperber(a)deinprogramm.de>
date: Wed Jan 02 10:08:07 2008 +0100
files: lisp/ChangeLog lisp/minibuf.el
description:
Fix problem with file dialog box.
2008-01-02 Mike Sperber <mike(a)xemacs.org>
* minibuf.el (mouse-read-file-name-1): Make the buttons in the
dialog frame occupy `window-min-height' lines to avoid problems
when the window configuration changes---as it does with
`resize-minibuffer-mode'.
diff -r 74e0e1131e011672c4512111c51ef3795e4bf995 -r 53e507d77416adad6ce72e66fb4b7f8848fa993b lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jan 02 10:12:04 2008 +0100
+++ b/lisp/ChangeLog Wed Jan 02 10:08:07 2008 +0100
@@ -1,3 +1,10 @@ 2007-12-31 Aidan Kehoe <kehoea@parhasa
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * minibuf.el (mouse-read-file-name-1): Make the buttons in the
+ dialog frame occupy `window-min-height' lines to avoid problems
+ when the window configuration changes---as it does with
+ `resize-minibuffer-mode'.
+
2007-12-31 Aidan Kehoe <kehoea(a)parhasard.net>
* menubar-items.el (default-menubar):
diff -r 74e0e1131e011672c4512111c51ef3795e4bf995 -r 53e507d77416adad6ce72e66fb4b7f8848fa993b lisp/minibuf.el
--- a/lisp/minibuf.el Wed Jan 02 10:12:04 2008 +0100
+++ b/lisp/minibuf.el Wed Jan 02 10:08:07 2008 +0100
@@ -2057,7 +2057,7 @@ whether it is a file(/result) or a direc
(let* ((file-p (eq 'read-file-name-internal completer))
(filebuf (get-buffer-create "*Completions*"))
(dirbuf (and file-p (generate-new-buffer " *mouse-read-file*")))
- (butbuf (generate-new-buffer " *mouse-read-file*"))
+ (butbuf (generate-new-buffer " *mouse-read-file-buttons*"))
(frame (make-dialog-frame))
filewin dirwin
user-data)
@@ -2067,12 +2067,11 @@ whether it is a file(/result) or a direc
;; set up the frame.
(focus-frame frame)
- (let ((window-min-height 1))
- ;; #### should be 2 not 3, but that causes
- ;; "window too small to split" errors for some
- ;; people (but not for me ...) There's a more
- ;; fundamental bug somewhere.
- (split-window nil (- (frame-height frame) 3)))
+ ;; We really need `window-min-height' lines for the button
+ ;; buffer, as otherwise the button buffer might get
+ ;; inadvertently deleted when other window-size changes
+ ;; happen (such as through resize-minibuffer-mode).
+ (split-window nil (- (frame-height frame) window-min-height))
(if file-p
(progn
(split-window-horizontally 16)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Fix incorrect comment convention.
16 years, 11 months
Aidan Kehoe
changeset: 4386:4939bde48d124b27dc8fe1878a6d681f5a1fd24c
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Tue Jan 01 22:09:51 2008 -0800
files: ChangeLog Makefile.in.in
description:
Fix incorrect comment convention.
diff -r 713ca3d356b43f849798e37d07f8c2834d177de8 -r 4939bde48d124b27dc8fe1878a6d681f5a1fd24c ChangeLog
--- a/ChangeLog Mon Dec 31 21:35:20 2007 +0100
+++ b/ChangeLog Tue Jan 01 22:09:51 2008 -0800
@@ -1,3 +1,7 @@ 2007-12-26 Stephen J. Turnbull <stephe
+2008-01-01 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * Makefile.in.in (mkpkgdir): Fix incorrect comment convention.
+
2007-12-26 Stephen J. Turnbull <stephen(a)xemacs.org>
* Makefile.in.in (mkpkgdir): Ensure only one late package directory.
diff -r 713ca3d356b43f849798e37d07f8c2834d177de8 -r 4939bde48d124b27dc8fe1878a6d681f5a1fd24c Makefile.in.in
--- a/Makefile.in.in Mon Dec 31 21:35:20 2007 +0100
+++ b/Makefile.in.in Tue Jan 01 22:09:51 2008 -0800
@@ -515,9 +515,9 @@ check-available-packages:
echo " make install-all-packages"; \
fi
-# The test for a non-trivial path simply checks for the conventional Unix
-# path separator ":". This is reasonable because this is basically just
-# a convenience feature, anyway.
+## The test for a non-trivial path simply checks for the conventional Unix
+## path separator ":". This is reasonable because this is basically just
+## a convenience feature, anyway.
mkpkgdir: FRC.mkdir ${MAKEPATH}
@if test -z ${package_path}; \
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Automated merge with file:/Sources/xemacs-21.5-checked-out
16 years, 11 months
Aidan Kehoe
changeset: 4385:713ca3d356b43f849798e37d07f8c2834d177de8
parent: 4384:ebb35ddea76a09549491af07addc6a34d1c4e355
parent: 4383:9fdac4a4ae623190f7accdb2d6dba196e1a8cfd9
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Mon Dec 31 21:35:20 2007 +0100
files: lisp/ChangeLog
description:
Automated merge with file:/Sources/xemacs-21.5-checked-out
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 .hgignore
--- a/.hgignore Mon Dec 31 21:34:45 2007 +0100
+++ b/.hgignore Mon Dec 31 21:35:20 2007 +0100
@@ -44,4 +44,4 @@ info/.*\.info(-[0-9]+)?$
^src/xemacs\.def(\.in)?$
^src/xemacs\.dmp$
^src/Emacs\.ad\.h$
-
+^etc/bundled-packages/.*\.tar\.gz$
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 ChangeLog
--- a/ChangeLog Mon Dec 31 21:34:45 2007 +0100
+++ b/ChangeLog Mon Dec 31 21:35:20 2007 +0100
@@ -1,3 +1,23 @@ 2007-12-08 Jerry James <james(a)xemacs.o
+2007-12-26 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * Makefile.in.in (mkpkgdir): Ensure only one late package directory.
+
+2007-12-26 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * Makefile.in.in (check-available-packages): Say where to install.
+ (mkpkgdir):
+
+2007-12-23 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * Makefile.in.in (mkpkgdir):
+ (check-available-packages):
+ (install-bootstrap-packages):
+ (install-nonmule-packages):
+ (install-all-packages):
+ New targets supporting bundled packages.
+
+ * .hgignore: Ignore tarballs in etc/bundled-packages/.
+
2007-12-08 Jerry James <james(a)xemacs.org>
* config.guess:
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 Makefile.in.in
--- a/Makefile.in.in Mon Dec 31 21:34:45 2007 +0100
+++ b/Makefile.in.in Mon Dec 31 21:35:20 2007 +0100
@@ -491,6 +491,58 @@ mkdir: FRC.mkdir
#endif
${sitelispdir}
+## Install bundled packages, if present.
+
+package_path = @LATE_PACKAGE_DIRECTORIES@
+pkgsrcdir = ${srcdir}/etc/bundled-packages
+
+## #### Probably we should add a rule for lib-src/make-path here.
+
+check-available-packages:
+ @if test -r ${pkgsrcdir}/bootstrap.tar.gz; \
+ then echo "To install a set of bootstrap packages in"; \
+ echo "${package_path}/xemacs-packages, type:"; \
+ echo " make install-bootstrap-packages"; \
+ fi; \
+ if test -r ${pkgsrcdir}/xemacs-sumo.tar.gz; \
+ then echo "To install the full set of non-mule packages in"; \
+ echo "${package_path}/xemacs-packages, type:"; \
+ echo " make install-nonmule-packages"; \
+ fi; \
+ if test -r ${pkgsrcdir}/xemacs-mule-sumo.tar.gz; \
+ then echo "To install the full set of packages with mule in"; \
+ echo "${package_path}/mule-packages, type:"; \
+ echo " make install-all-packages"; \
+ fi
+
+# The test for a non-trivial path simply checks for the conventional Unix
+# path separator ":". This is reasonable because this is basically just
+# a convenience feature, anyway.
+
+mkpkgdir: FRC.mkdir ${MAKEPATH}
+ @if test -z ${package_path}; \
+ then echo "Not configured --with-late-packages; no place to install."; \
+ exit -1; \
+ elif echo ${package_path} | grep ":"; \
+ then echo "Configured with multiple late package directories; you decide where to install."; \
+ exit -1; \
+ elif test -e ${package_path}/xemacs-packages \
+ -o -e ${package_path}/mule-packages; \
+ then echo "${package_path} is installed; won't overwrite packages."; \
+ exit -1; \
+ fi
+ ${MAKEPATH} ${package_path};
+
+install-bootstrap-packages: mkpkgdir
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/bootstrap.tar.gz
+
+install-nonmule-packages: mkpkgdir
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/xemacs-sumo.tar.gz
+
+install-all-packages: mkpkgdir
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/xemacs-sumo.tar.gz; \
+ cd ${package_path}; tar xvzf ${pkgsrcdir}/xemacs-mule-sumo.tar.gz
+
## Delete all the installed files that the `install' target would
## create (but not the noninstalled files such as `make all' would
## create).
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 etc/ChangeLog
--- a/etc/ChangeLog Mon Dec 31 21:34:45 2007 +0100
+++ b/etc/ChangeLog Mon Dec 31 21:35:20 2007 +0100
@@ -1,3 +1,12 @@ 2007-11-22 Vin Shelton <acs(a)xemacs.org
+2007-12-26 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * bundled-packages/README: Document restriction on --with-late-packages.
+
+2007-12-23 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * bundled-packages/README: Documentation for bundled packages.
+ * bundled-packages/test.sh: Test suite for bundled packages.
+
2007-11-22 Vin Shelton <acs(a)xemacs.org>
* photos/vin.png:
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 lisp/ChangeLog
--- a/lisp/ChangeLog Mon Dec 31 21:34:45 2007 +0100
+++ b/lisp/ChangeLog Mon Dec 31 21:35:20 2007 +0100
@@ -9,6 +9,52 @@ 2007-12-31 Aidan Kehoe <kehoea@parhasa
who know what they're doing--don't show its tutorial in the menu.
* behavior.el (behavior-menu-filter):
Byte compile the lambdas in the generated menu.
+
+2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * iso8859-1.el: (provide 'iso8859-1) again, because one file uses
+ it in the packages.
+
+2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * subr.el (with-case-table): New.
+ Idea and implementation taken from GNU's code of April 2007,
+ before GPL V3 was implied. Thank you GNU.
+ * iso8859-1.el (ascii-case-table): New.
+ Idea taken from GNU.
+ * iso8859-1.el :
+ Change Jamie's implicit compile-time call to a macro literal into
+ something comprehensible to and maintainable by mortals, using to
+ cl.el's #'loop.
+ * iso8859-1.el (ctl-arrow):
+ Initialise it to something more comprehensible.
+
+2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * loadhist.el (symbol-file):
+ Accept a new TYPE argument, compatible with GNU, saying
+ whether function or variable definitions should be searched for.
+ Implement the functionality for autoloads, handling TYPE
+ correctly.
+ Pass the TYPE argument to built-in-symbol-file correctly.
+ Document that TYPE is not implemented for non-autoloaded Lisp
+ definitions. Our load-history doesn't have the relevant metadata.
+
+2007-12-25 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * glyphs.el (init-glyphs):
+ Revert part of Didier's 2007-10-15 commit, which broke
+ #'make-image-specifier with string arguments, and more noticeably
+ truncation-glyph, continuation-glyph, octal-escape-glyph,
+ control-arrow-glyph.
+
+2007-12-23 Mike Sperber <mike(a)xemacs.org>
+
+ * font.el (xft-font-create-object): Use
+ `fc-pattern-get-or-compute-size' instead of
+ `fc-pattern-get-size'.
+
+ * fontconfig.el (fc-pattern-get-or-compute-size): Add.
2007-12-22 Stephen J. Turnbull <stephen(a)xemacs.org>
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 lisp/font.el
--- a/lisp/font.el Mon Dec 31 21:34:45 2007 +0100
+++ b/lisp/font.el Mon Dec 31 21:35:20 2007 +0100
@@ -813,7 +813,7 @@ Optional DEVICE defaults to `default-x-d
(pattern (fc-font-match device (fc-name-parse name)))
(font-obj (make-font))
(family (fc-pattern-get-family pattern 0))
- (size (fc-pattern-get-size pattern 0))
+ (size (fc-pattern-get-or-compute-size pattern 0))
(weight (fc-pattern-get-weight pattern 0)))
(set-font-family font-obj
(and (not (equal family 'fc-result-no-match))
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 lisp/fontconfig.el
--- a/lisp/fontconfig.el Mon Dec 31 21:34:45 2007 +0100
+++ b/lisp/fontconfig.el Mon Dec 31 21:35:20 2007 +0100
@@ -350,6 +350,21 @@ corresponding Xft font slant constant."
(let ((pair (assoc str fc-font-name-weight-mapping-string-reverse)))
(if pair (cdr pair))))
+(defun fc-pattern-get-or-compute-size (pattern id)
+ "Get the size from `pattern' associated with `id' or try to compute it.
+Returns 'fc-result-no-match if unsucessful."
+ ;; Many font patterns don't have a "size" property, but do have a
+ ;; "dpi" and a "pixelsize" property".
+ (let ((maybe (fc-pattern-get-size pattern id)))
+ (if (not (eq maybe 'fc-result-no-match))
+ maybe
+ (let ((dpi (fc-pattern-get-dpi pattern id))
+ (pixelsize (fc-pattern-get-pixelsize pattern id)))
+ (if (and (numberp dpi)
+ (numberp pixelsize))
+ (* pixelsize (/ 72 dpi))
+ 'fc-result-no-match)))))
+
(defun fc-copy-pattern-partial (pattern attribute-list)
"Return a copy of PATTERN restricted to ATTRIBUTE-LIST.
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 lisp/glyphs.el
--- a/lisp/glyphs.el Mon Dec 31 21:34:45 2007 +0100
+++ b/lisp/glyphs.el Mon Dec 31 21:35:20 2007 +0100
@@ -1185,8 +1185,7 @@ If unspecified in a particular domain, `
[jpeg :data nil] 2)))
,@(if (featurep 'png) '(("\\.png\\'" [png :file nil] 2)))
,@(if (featurep 'png) '(("\\`\211PNG" [png :data nil] 2)))
- ;; No, I don't think we want to inline images... -- dvl
- ;; ("" [string :data nil] 2)
+ ("" [string :data nil] 2)
("" [nothing]))))
;; #### this should really be formatted-string, not string but we
;; don't have it implemented yet
@@ -1210,8 +1209,7 @@ If unspecified in a particular domain, `
("\\`\377\330\377\340\000\020JFIF" [string :data "[jpeg]"])
("\\.png\\'" [string :data nil] 2)
("\\`\211PNG" [string :data "[png]"])
- ;; No, I don't think we want to inline images... -- dvl
- ;;("" [string :data nil] 2)
+ ("" [string :data nil] 2)
;; this last one is here for pointers and icons and such --
;; strings are not allowed so they will be ignored.
("" [nothing])))
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 lisp/iso8859-1.el
--- a/lisp/iso8859-1.el Mon Dec 31 21:34:45 2007 +0100
+++ b/lisp/iso8859-1.el Mon Dec 31 21:35:20 2007 +0100
@@ -28,71 +28,63 @@
;;; Commentary:
-;; created by jwz, 19-aug-92.
;; Sets the case table for the ISO-8859/1 character set.
-;; Used to set the syntax table.
+;; Provides ascii-case-table, for use in environments where multilingual
+;; case-insensitive processing is inappropriate.
;;; Code:
-(defconst iso8859/1-case-table nil
- "The case table for ISO-8859/1 characters.")
+(defvar ascii-case-table
+ (loop
+ for lower from (char-int ?a) to (char-int ?z)
+ and upper from (char-int ?A) to (char-int ?Z)
+ with table = (make-case-table)
+ do (put-case-table-pair (coerce lower 'character)
+ (coerce upper 'character)
+ table)
+ finally return table)
+ "Case table for the ASCII character set.")
-;;; This macro expands into
-;;; (setq iso8859/1-case-table (purecopy '("..." nil nil nil)))
-;;; doing the computation of the case table at compile-time.
+(loop
+ for (upper lower)
+ in '((?\xC0 ?\xE0) ;; A WITH GRAVE
+ (?\xC1 ?\xE1) ;; A WITH ACUTE
+ (?\xC2 ?\xE2) ;; A WITH CIRCUMFLEX
+ (?\xC3 ?\xE3) ;; A WITH TILDE
+ (?\xC4 ?\xE4) ;; A WITH DIAERESIS
+ (?\xC5 ?\xE5) ;; A WITH RING ABOVE
+ (?\xC6 ?\xE6) ;; AE
+ (?\xC7 ?\xE7) ;; C WITH CEDILLA
+ (?\xC8 ?\xE8) ;; E WITH GRAVE
+ (?\xC9 ?\xE9) ;; E WITH ACUTE
+ (?\xCA ?\xEA) ;; E WITH CIRCUMFLEX
+ (?\xCB ?\xEB) ;; E WITH DIAERESIS
+ (?\xCC ?\xEC) ;; I WITH GRAVE
+ (?\xCD ?\xED) ;; I WITH ACUTE
+ (?\xCE ?\xEE) ;; I WITH CIRCUMFLEX
+ (?\xCF ?\xEF) ;; I WITH DIAERESIS
+ (?\xD0 ?\xF0) ;; ETH
+ (?\xD1 ?\xF1) ;; N WITH TILDE
+ (?\xD2 ?\xF2) ;; O WITH GRAVE
+ (?\xD3 ?\xF3) ;; O WITH ACUTE
+ (?\xD4 ?\xF4) ;; O WITH CIRCUMFLEX
+ (?\xD5 ?\xF5) ;; O WITH TILDE
+ (?\xD6 ?\xF6) ;; O WITH DIAERESIS
+ (?\xD8 ?\xF8) ;; O WITH STROKE
+ (?\xD9 ?\xF9) ;; U WITH GRAVE
+ (?\xDA ?\xFA) ;; U WITH ACUTE
+ (?\xDB ?\xFB) ;; U WITH CIRCUMFLEX
+ (?\xDC ?\xFC) ;; U WITH DIAERESIS
+ (?\xDD ?\xFD) ;; Y WITH ACUTE
+ (?\xDE ?\xFE)) ;; THORN
+ with case-table = (standard-case-table)
+ do (put-case-table-pair upper lower case-table))
-((macro
- . (lambda (&rest pairs)
- (let ((downcase (make-string 256 0))
- (i 0))
- (while (< i 256)
- (aset downcase i (if (and (>= i ?A) (<= i ?Z)) (+ i 32) i))
- (setq i (1+ i)))
- (while pairs
- (aset downcase (car (car pairs)) (car (cdr (car pairs))))
- (setq pairs (cdr pairs)))
- (cons 'setq
- (cons 'iso8859/1-case-table
- (list
- (list 'quote
- (list downcase nil nil nil))))))))
-
- (?\300 ?\340) ; Agrave
- (?\301 ?\341) ; Aacute
- (?\302 ?\342) ; Acircumflex
- (?\303 ?\343) ; Atilde
- (?\304 ?\344) ; Adiaeresis
- (?\305 ?\345) ; Aring
- (?\306 ?\346) ; AE
- (?\307 ?\347) ; Ccedilla
- (?\310 ?\350) ; Egrave
- (?\311 ?\351) ; Eacute
- (?\312 ?\352) ; Ecircumflex
- (?\313 ?\353) ; Ediaeresis
- (?\314 ?\354) ; Igrave
- (?\315 ?\355) ; Iacute
- (?\316 ?\356) ; Icircumflex
- (?\317 ?\357) ; Idiaeresis
- (?\320 ?\360) ; ETH
- (?\321 ?\361) ; Ntilde
- (?\322 ?\362) ; Ograve
- (?\323 ?\363) ; Oacute
- (?\324 ?\364) ; Ocircumflex
- (?\325 ?\365) ; Otilde
- (?\326 ?\366) ; Odiaeresis
- (?\330 ?\370) ; Ooblique
- (?\331 ?\371) ; Ugrave
- (?\332 ?\372) ; Uacute
- (?\333 ?\373) ; Ucircumflex
- (?\334 ?\374) ; Udiaeresis
- (?\335 ?\375) ; Yacute
- (?\336 ?\376) ; THORN
- )
+;; Everything Latin-1 and above should be displayed as its character value
+;; by default.
+(setq-default ctl-arrow #xA0)
-(set-standard-case-table (mapcar 'copy-sequence iso8859/1-case-table))
-
-(setq-default ctl-arrow 'iso-8859/1)
-
-(provide 'iso8859-1)
+;; Shouldn't be necessary, but one file in the packages uses it:
+(provide 'iso8859-1)
;;; iso8859-1.el ends here
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 lisp/loadhist.el
--- a/lisp/loadhist.el Mon Dec 31 21:34:45 2007 +0100
+++ b/lisp/loadhist.el Mon Dec 31 21:35:20 2007 +0100
@@ -25,6 +25,8 @@
;;; Synched up with: FSF 20.2.
+;; #### Sync this file!
+
;;; Commentary:
;; This file is dumped with XEmacs.
@@ -37,19 +39,36 @@
;; load-history is a list of entries that look like this:
;; ("outline" outline-regexp ... (require . wid-edit) ... (provide . outline) ...)
-(defun symbol-file (sym)
+(defun symbol-file (sym &optional type)
"Return the input source from which SYM was loaded.
-This is a file name, or nil if the source was a buffer with no associated file."
+This is a file name, or nil if the source was a buffer with no associated file.
+
+If TYPE is nil or omitted, any kind of definition is acceptable.
+If TYPE is `defun', then function, subr, special form or macro definitions
+are acceptable.
+If TYPE is `defvar', then variable definitions are acceptable.
+
+#### For the moment the difference is not implemented for non-autoloaded
+Lisp symbols."
(interactive "SFind source file for symbol: ") ; XEmacs
(block look-up-symbol-file
- (dolist (entry load-history)
- (when (memq sym (cdr entry))
- (return-from look-up-symbol-file (car entry))))
- (when (or (and (boundp sym) (built-in-variable-type sym))
- (and (fboundp sym) (subrp (symbol-function sym))))
- (let ((built-in-file (built-in-symbol-file sym)))
- (if built-in-file
- (concat source-directory "/src/" built-in-file))))))
+ (let (built-in-file autoload-cons)
+ (when (and
+ (eq 'autoload
+ (car-safe (setq autoload-cons
+ (and (fboundp sym)
+ (symbol-function sym)))))
+ (or (and (or (null type) (eq 'defvar type))
+ (eq (fifth autoload-cons) 'keymap))
+ (and (or (null type) (eq 'defvar type))
+ (memq (fifth autoload-cons) '(nil macro)))))
+ (return-from look-up-symbol-file
+ (locate-library (second autoload-cons))))
+ (dolist (entry load-history)
+ (when (memq sym (cdr entry))
+ (return-from look-up-symbol-file (car entry))))
+ (setq built-in-file (built-in-symbol-file sym type))
+ (if built-in-file (concat source-directory "/src/" built-in-file)))))
(defun feature-symbols (feature)
"Return the file and list of symbols associated with a given FEATURE."
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 lisp/subr.el
--- a/lisp/subr.el Mon Dec 31 21:34:45 2007 +0100
+++ b/lisp/subr.el Mon Dec 31 21:35:20 2007 +0100
@@ -579,6 +579,19 @@ See also `with-temp-file' and `with-outp
; . ,body)
; (combine-after-change-execute)))
+(defmacro with-case-table (table &rest body)
+ "Execute the forms in BODY with TABLE as the current case table.
+The value returned is the value of the last form in BODY."
+ (declare (indent 1) (debug t))
+ (let ((old-case-table (make-symbol "table"))
+ (old-buffer (make-symbol "buffer")))
+ `(let ((,old-case-table (current-case-table))
+ (,old-buffer (current-buffer)))
+ (unwind-protect
+ (progn (set-case-table ,table)
+ ,@body)
+ (with-current-buffer ,old-buffer
+ (set-case-table ,old-case-table))))))
(defvar delay-mode-hooks nil
"If non-nil, `run-mode-hooks' should delay running the hooks.")
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 src/ChangeLog
--- a/src/ChangeLog Mon Dec 31 21:34:45 2007 +0100
+++ b/src/ChangeLog Mon Dec 31 21:35:20 2007 +0100
@@ -1,3 +1,24 @@ 2007-12-23 Aidan Kehoe <kehoea@parhasa
+2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * doc.c (Fbuilt_in_symbol_file):
+ Take a new TYPE argument, specifying whether the function or
+ variable definition of the symbol should be searched for.
+ Handle built-in macros correctly.
+
+2007-12-24 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * event-xlike-inc.c (x_keysym_to_character):
+ * event-xlike-inc.c (gtk_keysym_to_character):
+ Unify the typed character if possible, following the current value
+ for the unicode precedence list.
+
+2007-12-24 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * symbols.c (Fintern_soft):
+ Provide a new optional third argument, DEFAULT, for those who want
+ to check if "nil" is a symbol or not. (More realistically, general
+ code that may get handed "nil" should probably use this argument.)
+
2007-12-23 Aidan Kehoe <kehoea(a)parhasard.net>
* objects-tty.c (tty_find_charset_font):
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 src/doc.c
--- a/src/doc.c Mon Dec 31 21:34:45 2007 +0100
+++ b/src/doc.c Mon Dec 31 21:35:20 2007 +0100
@@ -37,7 +37,7 @@ Boston, MA 02111-1307, USA. */
Lisp_Object Vinternal_doc_file_name;
-Lisp_Object QSsubstitute;
+Lisp_Object QSsubstitute, Qdefvar;
/* Work out what source file a function or variable came from, taking the
information from the documentation file. */
@@ -499,21 +499,28 @@ weird_doc (Lisp_Object sym, const CIbyte
weirdness, type, XSTRING_DATA (XSYMBOL (sym)->name), pos);
}
-DEFUN ("built-in-symbol-file", Fbuilt_in_symbol_file, 1, 1, 0, /*
+DEFUN ("built-in-symbol-file", Fbuilt_in_symbol_file, 1, 2, 0, /*
Return the C source file built-in symbol SYM comes from.
Don't use this. Use the more general `symbol-file' (q.v.) instead.
+
+If TYPE is nil or omitted, any kind of definition is acceptable.
+If TYPE is `defun', then function, subr, special form or macro definitions
+are acceptable.
+If TYPE is `defvar', then variable definitions are acceptable.
*/
- (symbol))
+ (symbol, type))
{
/* This function can GC */
Lisp_Object fun;
Lisp_Object filename = Qnil;
- if (EQ(Ffboundp(symbol), Qt))
+ if (EQ(Ffboundp(symbol), Qt) && (EQ(type, Qnil) || EQ(type, Qdefun)))
{
fun = Findirect_function (symbol);
- if (SUBRP (fun))
+ if (SUBRP (fun) || (CONSP(fun) && (EQ (Qmacro, Fcar_safe (fun)))
+ && (fun = Fcdr_safe (fun))
+ && (SUBRP (fun))))
{
if (XSUBR (fun)->doc == 0)
return Qnil;
@@ -529,7 +536,7 @@ Don't use this. Use the more general `s
(make_int (- (EMACS_INT) XSUBR (fun)->doc));
}
}
- else if (EQ(Fboundp(symbol), Qt))
+ else if (EQ(Fboundp(symbol), Qt) && (EQ(type, Qnil) || EQ(type, Qdefvar)))
{
Lisp_Object doc_offset = Fget (symbol, Qvariable_documentation, Qnil);
@@ -1273,6 +1280,8 @@ syms_of_doc (void)
DEFSUBR (Fsnarf_documentation);
DEFSUBR (Fverify_documentation);
DEFSUBR (Fsubstitute_command_keys);
+
+ DEFSYMBOL (Qdefvar);
}
void
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 src/event-xlike-inc.c
--- a/src/event-xlike-inc.c Mon Dec 31 21:34:45 2007 +0100
+++ b/src/event-xlike-inc.c Mon Dec 31 21:35:20 2007 +0100
@@ -708,7 +708,15 @@ gtk_keysym_to_character(guint keysym)
return Qnil;
#ifdef MULE
- return make_char (make_ichar (charset, code, 0));
+ {
+ Lisp_Object unified = Funicode_to_char
+ (Fchar_to_unicode (make_char (make_ichar (charset, code, 0))), Qnil);
+ if (!NILP (unified))
+ {
+ return unified;
+ }
+ return make_char (make_ichar (charset, code, 0));
+ }
#else
return make_char (code + 0x80);
#endif
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 src/keymap.c
--- a/src/keymap.c Mon Dec 31 21:34:45 2007 +0100
+++ b/src/keymap.c Mon Dec 31 21:35:20 2007 +0100
@@ -1388,7 +1388,7 @@ define_key_check_and_coerce_keysym (Lisp
DECLARE_EISTRING (temp);
eicpy_raw (temp, name, qxestrlen (name));
eisetch_char (temp, 2, '-');
- *keysym = Fintern_soft (eimake_string (temp), Qnil);
+ *keysym = Fintern_soft (eimake_string (temp), Qnil, Qnil);
}
else if (EQ (*keysym, QLFD))
*keysym = QKlinefeed;
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 src/lisp.h
--- a/src/lisp.h Mon Dec 31 21:34:45 2007 +0100
+++ b/src/lisp.h Mon Dec 31 21:35:20 2007 +0100
@@ -5067,7 +5067,7 @@ EXFUN (Ffboundp, 1);
EXFUN (Ffboundp, 1);
EXFUN (Ffset, 2);
EXFUN (Fintern, 2);
-EXFUN (Fintern_soft, 2);
+EXFUN (Fintern_soft, 3);
EXFUN (Fkill_local_variable, 1);
EXFUN (Fset, 2);
EXFUN (Fset_default, 2);
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 src/symbols.c
--- a/src/symbols.c Mon Dec 31 21:34:45 2007 +0100
+++ b/src/symbols.c Mon Dec 31 21:35:20 2007 +0100
@@ -256,17 +256,17 @@ it defaults to the value of the variable
return object;
}
-DEFUN ("intern-soft", Fintern_soft, 1, 2, 0, /*
+DEFUN ("intern-soft", Fintern_soft, 1, 3, 0, /*
Return the canonical symbol named NAME, or nil if none exists.
NAME may be a string or a symbol. If it is a symbol, that exact
symbol is searched for.
Optional second argument OBARRAY specifies the obarray to use;
it defaults to the value of the variable `obarray'.
-*/
- (name, obarray))
-{
- /* #### Bug! (intern-soft "nil") returns nil. Perhaps we should
- add a DEFAULT-IF-NOT-FOUND arg, like in get. */
+Optional third argument DEFAULT says what Lisp object to return if there is
+no canonical symbol named NAME, and defaults to nil.
+*/
+ (name, obarray, default_))
+{
Lisp_Object tem;
Lisp_Object string;
@@ -283,7 +283,7 @@ it defaults to the value of the variable
tem = oblookup (obarray, XSTRING_DATA (string), XSTRING_LENGTH (string));
if (INTP (tem) || (SYMBOLP (name) && !EQ (name, tem)))
- return Qnil;
+ return default_;
else
return tem;
}
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 tests/ChangeLog
--- a/tests/ChangeLog Mon Dec 31 21:34:45 2007 +0100
+++ b/tests/ChangeLog Mon Dec 31 21:35:20 2007 +0100
@@ -1,3 +1,11 @@ 2007-12-21 Stephen J. Turnbull <stephe
+2007-12-29 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * automated/test-harness.el (test-harness-test-compiled):
+ Improve docstring.
+
+ * automated/weak-tests.el (test-harness-test-compiled):
+ Remove debugging code.
+
2007-12-21 Stephen J. Turnbull <stephen(a)xemacs.org>
* reproduce-crashes.el: Renamed from reproduce-bugs.el. Update to-do.
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 tests/automated/test-harness.el
--- a/tests/automated/test-harness.el Mon Dec 31 21:34:45 2007 +0100
+++ b/tests/automated/test-harness.el Mon Dec 31 21:35:20 2007 +0100
@@ -71,7 +71,17 @@ on the system, or a system error might o
(defvar unexpected-test-file-failures)
(defvar test-harness-test-compiled nil
- "Non-nil means the test code was compiled before execution.")
+ "Non-nil means the test code was compiled before execution.
+
+You probably should not make tests depend on compilation.
+However, it can be useful to conditionally change messages based on whether
+the code was compiled or not. For example, the case that motivated the
+implementation of this variable:
+
+\(when test-harness-test-compiled
+ ;; this ha-a-ack depends on the failing compiled test coming last
+ \(setq test-harness-failure-tag
+ \"KNOWN BUG - fix reverted; after 2003-10-31 notify stephen\n\"))")
(defvar test-harness-verbose
(and (not noninteractive) (> (device-baud-rate) search-slow-speed))
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 tests/automated/weak-tests.el
--- a/tests/automated/weak-tests.el Mon Dec 31 21:34:45 2007 +0100
+++ b/tests/automated/weak-tests.el Mon Dec 31 21:35:20 2007 +0100
@@ -35,11 +35,6 @@
(when (and (boundp 'load-file-name) (stringp load-file-name))
(push (file-name-directory load-file-name) load-path)
(require 'test-harness))))
-
-(when test-harness-test-compiled
- ;; this ha-a-ack depends on the compiled test coming last
- (setq test-harness-failure-tag
- "KNOWN BUG - fix reverted; after 2003-10-31 bitch at stephen\n"))
(garbage-collect)
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 etc/bundled-packages/README
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/bundled-packages/README Mon Dec 31 21:35:20 2007 +0100
@@ -0,0 +1,71 @@
+Package distributions may be placed in this directory.
+If present and a package-path is configured, packages can be installed
+using the top-level Makefile.
+
+To configure the package path, use the --with-late-packages option to
+configure, which specifies a single directory in which to install the
+xemacs-packages and mule-packages hierarchies provided. If this is null,
+or contains a Unix-style search path (i.e., a colon is present in the
+argument of the --with-late-packages option), you will have to install
+the packages by hand.
+
+To find out if a distribution includes bundled packages, type
+
+ make check-available-packages
+
+There are three Make targets that may be available depending on the package
+sets supplied.
+
+ make install-bootstrap-packages
+ Install a selected set of packages sufficient to support
+ downloading and installing packages via the M-x list-packages
+ interface. Chose this if you want to be able to install the
+ latest version of each package immediately.
+
+ make install-nomule-packages
+ Install the full distribution of packages that do not require a
+ Mule-enabled XEmacs. Choose this package if you don't have a
+ Mule-enabled XEmacs and want the convenience of a single-command
+ installation. You can add or update packages via M-x list-packages
+ at any time.
+
+ make install-all-packages
+ Install the full distribution of packages, including those requiring
+ a Mule-enabled XEmacs. Choose this package if you have a Mule-
+ enabled XEmacs and want the convenience of a single-command
+ installation. You can add or update packages via M-x list-packages
+ at any time.
+
+DISTRIBUTOR'S NOTE: you may choose what packages you wish to include in
+bootstrap.tar.gz, but to make list-packages work you need to include at
+least xemacs-base, dired, and efs. The tarball should unpack directly as
+an xemacs-packages tree (and optionaly, a mule-packages tree. Also, if
+either of xemacs-sumo.tar.gz or xemacs-mule-sumo.tar.gz is provided, the
+other should be as well.
+
+If packages are not available with the distribution, you can get them at
+
+ ftp://ftp.xemacs.org/pub/xemacs/packages/xemacs-sumo.tar.gz
+ ftp://ftp.xemacs.org/pub/xemacs/packages/xemacs-mule-sumo.tar.gz
+ http://turnbull.sk.tsukuba.ac.jp/Tools/XEmacs/bootstrap.tar.gz
+
+and place them in the same directory as this file. You can also make your
+own bootstrap.tar.gz by creating a directory xemacs-packages, then
+untarring the packages of your choice into that directory, and tarring the
+whole thing up with "tar czf bootstrap.tar.gz xemacs-packages". (If you
+wish to include mule-packages, you should place them in mule-packages as
+a sibling of xemacs-packages.)
+
+This facility currently does not support installations which configure
+the --with-early-packages, --with-late-packages, or --with-last-packages
+options.
+
+This facility currently will not overwrite an existing package
+installation, not even if a whole hierarchy (usually the mule-packages)
+is missing. In particular, you cannot use this feature to add the
+mule-packages to a package installation which lacks them, even if the
+hierarchy is missing, or the xemacs-packages hierarchy was installed
+this way. Nor can you "upgrade" a bootstrap installation to a full
+installation. If you wish to do any of these things you will need to
+remove the existing hierarchies.
+
diff -r ebb35ddea76a09549491af07addc6a34d1c4e355 -r 713ca3d356b43f849798e37d07f8c2834d177de8 etc/bundled-packages/test.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/bundled-packages/test.sh Mon Dec 31 21:35:20 2007 +0100
@@ -0,0 +1,105 @@
+# tests for the bundled packages feature
+
+# usage: sh etc/bundled-packages/tests.sh [TMP_TEST_DIR]
+
+# Always run this script from the top directory of the source tree.
+# You need a mv that supports the -v for verbose flag, and a mkdir that
+# supports the -p flag to make parents.
+# Output from this script is preceded by 4 stars (****).
+
+# This test script is probably more fragile than the build process, but if
+# it runs to completion things are probably OK.
+
+# configure the installation target
+
+if test -z "$1"; then
+ TMP_TEST_DIR=/tmp/test/bundled-packages
+else
+ TMP_TEST_DIR=$1
+fi
+
+srcdir=`pwd`
+blddir=${TMP_TEST_DIR}/build
+pkgdir=${TMP_TEST_DIR}/lib/xemacs
+
+echo "**** srcdir = ${srcdir}"
+echo "**** blddir = ${blddir}"
+echo "**** pkgdir = ${pkgdir}"
+
+if test -e "${pkgdir}"; then
+ echo "**** pkgdir (${pkgdir}) exists; bailing out."
+ exit -1
+fi
+
+# mv existing tarballs out of harm's way and make a fake one
+
+echo "**** Moving existing tarballs to etc/bundled-packages/saved."
+mkdir -p etc/bundled-packages/saved
+cd etc/bundled-packages
+echo "**** 'mv' may error because there are no files to move. It's harmless."
+mv -v *.tar.gz saved/
+cd ../..
+
+# configure in a temporary directory
+
+if test -e ${blddir}; then
+ echo "**** blddir (${blddir}) exists; bailing out."
+ exit -1
+fi
+mkdir -p ${blddir}
+cd ${blddir}
+echo "**** Running 'configure'. This takes *several minutes*."
+echo "**** Redirecting configure output to ${blddir}/beta.err."
+${srcdir}/configure >beta.err 2>&1
+
+# test check-available-packages
+
+echo "**** This test should produce no error and no output."
+make check-available-packages
+cd ${srcdir}/etc/bundled-packages
+echo "**** This test should explain how to install bootstrap packages."
+echo "This file pretends to be a bootstrap hierarchy." > xemacs-packages
+tar czf bootstrap.tar.gz xemacs-packages
+rm xemacs-packages
+cd ${blddir}
+make check-available-packages
+echo "**** This test should explain how to install all three."
+cd ${srcdir}/etc/bundled-packages
+echo "This file pretends to be a xemacs-packages hierarchy." > xemacs-packages
+echo "This file pretends to be a mule-packages hierarchy." > mule-packages
+tar czf xemacs-sumo.tar.gz xemacs-packages
+tar czf xemacs-mule-sumo.tar.gz mule-packages
+rm xemacs-packages mule-packages
+cd ${blddir}
+make check-available-packages
+
+# test installation without package path given
+
+echo "**** Make the 'make-path' utility needed by the installation routine."
+make -C lib-src make-path
+echo "**** This test should error because --with-late-packages wasn't given."
+make install-bootstrap-packages
+
+# test installation with package path given
+
+echo "**** Running 'configure'. This takes *several minutes*."
+echo "**** Redirecting configure output to ${blddir}/beta.err."
+${srcdir}/configure --with-late-packages=${pkgdir} >beta.err 2>&1
+echo "**** Make the 'make-path' utility needed by the installation routine."
+make -C lib-src make-path
+echo "**** Test install-bootstrap-packages."
+make install-bootstrap-packages
+echo "**** The following should list xemacs-packages in the right place."
+ls ${pkgdir}/*
+
+#### no tests below this line ####
+
+# put tarballs back and clean up
+
+cd ${srcdir}/etc/bundled-packages
+rm *.tar.gz
+echo "**** 'mv' may error because there are no files to move. It's harmless."
+mv -v saved/*.tar.gz ../
+rmdir saved
+rm -rf ${blddir} ${pkgdir}
+exit 0
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Provide 'iso8859-1 again; one file (iso-syntax.el) uses it in the packages.
16 years, 11 months
Aidan Kehoe
changeset: 4383:9fdac4a4ae623190f7accdb2d6dba196e1a8cfd9
parent: 4380:b94710365f92d6c1d9f65e9c982320b389b95bd8
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Sun Dec 30 16:48:34 2007 +0100
files: lisp/ChangeLog lisp/iso8859-1.el
description:
Provide 'iso8859-1 again; one file (iso-syntax.el) uses it in the packages.
2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
* iso8859-1.el: (provide 'iso8859-1) again, because one file uses
it in the packages.
diff -r b94710365f92d6c1d9f65e9c982320b389b95bd8 -r 9fdac4a4ae623190f7accdb2d6dba196e1a8cfd9 lisp/ChangeLog
--- a/lisp/ChangeLog Sun Dec 30 16:19:21 2007 +0100
+++ b/lisp/ChangeLog Sun Dec 30 16:48:34 2007 +0100
@@ -1,3 +1,8 @@ 2007-12-30 Aidan Kehoe <kehoea@parhasa
+2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * iso8859-1.el: (provide 'iso8859-1) again, because one file uses
+ it in the packages.
+
2007-12-30 Aidan Kehoe <kehoea(a)parhasard.net>
* subr.el (with-case-table): New.
diff -r b94710365f92d6c1d9f65e9c982320b389b95bd8 -r 9fdac4a4ae623190f7accdb2d6dba196e1a8cfd9 lisp/iso8859-1.el
--- a/lisp/iso8859-1.el Sun Dec 30 16:19:21 2007 +0100
+++ b/lisp/iso8859-1.el Sun Dec 30 16:48:34 2007 +0100
@@ -84,4 +84,7 @@
;; by default.
(setq-default ctl-arrow #xA0)
+;; Shouldn't be necessary, but one file in the packages uses it:
+(provide 'iso8859-1)
+
;;; iso8859-1.el ends here
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches