Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-56
Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 204-225) - Update from CVS - Sync from erc--emacs--0 - Merge from gnus--rel--5.10 - Improve tq.el. - Update from CVS: src/puresize.h (PURESIZE_RATIO): Reduce to 10/6. * gnus--rel--5.10 (patch 81-85) - Update from CVS - Merge from emacs--devo--0
This commit is contained in:
commit
cfc2051d0e
131 changed files with 7365 additions and 5139 deletions
|
@ -33,6 +33,10 @@ Assigned to Bill Wohler <wohler@newt.com>.
|
|||
|
||||
* BUGS
|
||||
|
||||
** Stefan Monnier's March 20 bug report about 3d boxes in header line.
|
||||
|
||||
** Is there a basic problem with cl-byte-compile-compiler-macro?
|
||||
|
||||
** Markus Gritsch's report about Emacs looping on Windoze with the following
|
||||
.emacs file, and then reduce Emacs frame width to "something quite narrow":
|
||||
(setq-default truncate-lines t)
|
||||
|
@ -72,7 +76,7 @@ you're going to handle.
|
|||
DIRECTORY STATUS IN CHARGE
|
||||
--------- ------ ---------
|
||||
etc (and subdirs) done Thien-Thi Nguyen (ttn(@gnu.org))
|
||||
leim working Kenichi Handa
|
||||
leim done Kenichi Handa
|
||||
lib-src done ttn
|
||||
lisp done ttn
|
||||
lisp/calc done Jay Belanger
|
||||
|
@ -81,8 +85,8 @@ lisp/emacs-lisp done ttn
|
|||
lisp/emulation done ttn
|
||||
lisp/eshell done ttn
|
||||
lisp/gnus done Romain Francoise
|
||||
lisp/international working Kenichi Handa
|
||||
lisp/language working Kenichi Handa
|
||||
lisp/international done Kenichi Handa
|
||||
lisp/language done Kenichi Handa
|
||||
lisp/mail done ttn
|
||||
lisp/mh-e done Bill Wohler
|
||||
lisp/net done ttn
|
||||
|
|
|
@ -1,3 +1,21 @@
|
|||
2006-04-12 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* PROBLEMS (C-SPC fails ...): Explicitly say fcitx in the header.
|
||||
|
||||
2006-04-11 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* orgcard.tex: (section{Tables}): Document column narrowing.
|
||||
(section{Links}): Document bracket links.
|
||||
|
||||
2006-04-11 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* PROBLEMS (C-SPC fails ...): Add description for fcitx.
|
||||
|
||||
2006-04-10 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* NEWS: Add package-version keyword to `defcustom' and mention
|
||||
associated variable `customize-package-emacs-version-alist'.
|
||||
|
||||
2006-04-07 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* NEWS: Add string-or-null-p.
|
||||
|
|
15
etc/NEWS
15
etc/NEWS
|
@ -3766,6 +3766,12 @@ variables, including buffer-local and frame-local variables.
|
|||
|
||||
** defcustom changes:
|
||||
|
||||
+++
|
||||
*** The package-version keyword has been added to provide
|
||||
`customize-changed-options' functionality to packages in the future.
|
||||
Developers who make use of this keyword must also update the new
|
||||
variable `customize-package-emacs-version-alist'.
|
||||
|
||||
+++
|
||||
*** The new customization type `float' requires a floating point number.
|
||||
|
||||
|
@ -4035,6 +4041,12 @@ in DEF before the terminal colon and space.
|
|||
A file local variables list cannot specify a string with text
|
||||
properties--any specified text properties are discarded.
|
||||
|
||||
+++
|
||||
*** The variable `enable-local-variables' controls how local variable
|
||||
lists are handled. t, the default, specifies the standard querying
|
||||
behavior. :safe means use only safe values, and ignore the rest.
|
||||
nil means ignore them all. Anything else means always query.
|
||||
|
||||
+++
|
||||
*** The variable `safe-local-eval-forms' specifies a list of forms that
|
||||
are ok to evaluate when they appear in an `eval' local variables
|
||||
|
@ -10859,9 +10871,6 @@ SNMPv2 MIBs. It has entries on `auto-mode-alist'.
|
|||
editing SQL files, and M-x sql-interactive-mode for interacting with
|
||||
SQL interpreters. It has an entry on `auto-mode-alist'.
|
||||
|
||||
*** M-x highlight-changes-mode provides a minor mode displaying buffer
|
||||
changes with a special face.
|
||||
|
||||
*** ispell4.el has been deleted. It got in the way of ispell.el and
|
||||
this was hard to fix reliably. It has long been obsolete -- use
|
||||
Ispell 3.1 and ispell.el.
|
||||
|
|
|
@ -995,7 +995,7 @@ xmodmap command to the xdm setup script for that display.
|
|||
|
||||
Use the shell command `xset bc' to make the old X Menu package work.
|
||||
|
||||
*** C-SPC fails to work on Fedora GNU/Linux.
|
||||
*** C-SPC fails to work on Fedora GNU/Linux (or with fcitx input method).
|
||||
|
||||
Fedora Core 4 steals the C-SPC key by default for the `iiimx' program
|
||||
which is the input method for some languages. It blocks Emacs users
|
||||
|
@ -1009,6 +1009,12 @@ Another is to specify `Emacs*useXIM: false' in your X resources.
|
|||
|
||||
Another is to build Emacs with the `--without-xim' configure option.
|
||||
|
||||
The same problem happens on any other system if you are using fcitx
|
||||
(Chinese input method) which by default use C-SPC for toggling. If
|
||||
you want to use fcitx with Emacs, you have two choices. Toggle fcitx
|
||||
by another key (e.g. C-\) by modifying ~/.fcitx/config, or be
|
||||
accustomed to use C-@ for `set-mark-command'.
|
||||
|
||||
*** M-SPC seems to be ignored as input.
|
||||
|
||||
See if your X server is set up to use this as a command
|
||||
|
|
11
etc/TODO
11
etc/TODO
|
@ -9,10 +9,13 @@ to the FSF.
|
|||
|
||||
* Small but important fixes needed in existing features:
|
||||
|
||||
** Distribute a bar cursor of width > 1 evenly between the two glyphs
|
||||
on each side of the bar (what to do at the edges?).
|
||||
|
||||
** Make vc-checkin avoid reverting the buffer if has not changed after
|
||||
the checkin. Comparing (md5 BUFFER) to (md5 FILE) should be enough.
|
||||
|
||||
** Make vc-annotate show place the cursor in the annotate buffer at the
|
||||
** Make vc-annotate show place the cursor in the annotate buffer at the
|
||||
same line as the current buffer.
|
||||
|
||||
** buffer-offer-save should be a permanent local.
|
||||
|
@ -69,7 +72,7 @@ to the FSF.
|
|||
** Redesign the load-history data structure so it can cope better
|
||||
with evaluating definitions of the same function from different files,
|
||||
recording which file the latest definition came from.
|
||||
|
||||
|
||||
* Important features:
|
||||
|
||||
** Provide user-friendly ways to list all available font families,
|
||||
|
@ -158,7 +161,7 @@ typically due to pilot errors and should thus be in debug-ignored-errors.
|
|||
** Emacs Lisp mode could put an overlay on the defun for every
|
||||
function that has advice. The overlay could have `after-text' like "
|
||||
[Function has advice]". It might look like
|
||||
(defun foo [Function has advice] (x y)
|
||||
(defun foo [Function has advice] (x y)
|
||||
The overlay could also be a button that you could use to view the advice.
|
||||
|
||||
** ange-ftp
|
||||
|
@ -261,7 +264,7 @@ typically due to pilot errors and should thus be in debug-ignored-errors.
|
|||
** Highlight rectangles (`mouse-track-rectangle-p' in XEmacs). Already in CUA,
|
||||
but it's a valuable feature worth making more general.
|
||||
|
||||
** Support simultaneous tty and X frames. [See the multi-tty branch of Emacs
|
||||
** Support simultaneous tty and X frames. [See the multi-tty branch of Emacs
|
||||
at http://lorentey.hu/project/emacs.]
|
||||
|
||||
** Provide MIME support for Rmail using the Gnus MIME library. [Maybe
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
% Reference Card for Org Mode 4.10
|
||||
% Reference Card for Org Mode
|
||||
\def\orgversionnumber{4.23}
|
||||
\def\year{2006}
|
||||
%
|
||||
%**start of header
|
||||
\newcount\columnsperpage
|
||||
|
@ -58,9 +60,6 @@
|
|||
% Thanks to Paul Rubin, Bob Chassell, Len Tower, and Richard Mlynarik
|
||||
% for their many good ideas.
|
||||
|
||||
\def\orgversionnumber{4.10}
|
||||
\def\year{2006}
|
||||
|
||||
\def\shortcopyrightnotice{\vskip 1ex plus 2 fill
|
||||
\centerline{\small \copyright\ 2004, 2005, 2006\ Free Software Foundation, Inc.
|
||||
Permissions on back. v\orgversionnumber}}
|
||||
|
@ -367,10 +366,8 @@ \section{Timestamps}
|
|||
\key{insert SCHEDULED timestamp}{C-c C-s}
|
||||
\key{create sparse tree with all deadlines due}{C-c C-w}
|
||||
\key{the time between 2 dates in a time range}{C-c C-y}
|
||||
\key{change timestamp at cursor by $-1$ day}{S-LEFT$^4$}
|
||||
\key{change timestamp at cursor by $+1$ day}{S-RIGHT$^4$}
|
||||
\key{change year/month/day at cursor by $-1$}{S-DOWN$^4$}
|
||||
\key{change year/month/day at cursor by $+1$}{S-UP$^4$}
|
||||
\key{change timestamp at cursor by $\pm 1$ day}{S-RIGHT/LEFT$^4$}
|
||||
\key{change year/month/day at cursor by $\pm 1$}{S-UP/DOWN$^4$}
|
||||
\key{access the calendar for the current date}{C-c >}
|
||||
\key{insert timestamp matching date in calendar}{C-c <}
|
||||
\key{access agenda for current date}{C-c C-o}
|
||||
|
@ -386,6 +383,7 @@ \section{Links}
|
|||
\key{globally store link to the current location}{C-c l$^2$}
|
||||
\key{insert a link (TAB completes stored links)}{C-c C-l}
|
||||
\key{insert file link with file name completion}{C-u C-c C-l}
|
||||
\key{edit (also hidden part of) link at point}{C-c C-l}
|
||||
|
||||
\key{open file links in emacs (\kbd{C-u} : in emacs)}{C-c C-o}
|
||||
\key{open link at point (3: in emacs)}{mouse-2/3}
|
||||
|
@ -399,24 +397,26 @@ \section{Links}
|
|||
\key{\kbd{<<<My Target>>>}}{\rm radio target$^3$}
|
||||
\key{\kbd{[[*this text]]}}{\rm find headline}
|
||||
\metax{\kbd{[[this text]]}}{\rm find target or text in buffer}
|
||||
\metax{\kbd{[[this text][description]]}}{\rm optional link text}
|
||||
|
||||
{\bf External Links}
|
||||
|
||||
\key{\kbd{<file:/home/dominik/img/mars.jpg>}}{\rm file, absolute}
|
||||
\key{\kbd{<file:papers/last.pdf>}}{\rm file, relative}
|
||||
\key{\kbd{<file:projects.org::*that text>}}{\rm find headline}
|
||||
\key{\kbd{<file:projects.org::find me>}}{\rm find tgt/string}
|
||||
\key{\kbd{<file:projects.org::/regexp/>}}{\rm regexp search}
|
||||
\key{\kbd{<http://www.astro.uva.nl/~dominik>}}{\rm on the web}
|
||||
\key{\kbd{<mailto:adent@galaxy.net>}}{\rm EMail address}
|
||||
\key{\kbd{<news:comp.emacs>}}{\rm Usenet group}
|
||||
\key{\kbd{<bbdb:Richard Stallman>}}{\rm BBDB person}
|
||||
\key{\kbd{<shell:ls *.org>}}{\rm shell command}
|
||||
\key{\kbd{<gnus:group>}}{\rm GNUS group}
|
||||
\key{\kbd{<gnus:group\#id>}}{\rm GNUS message}
|
||||
\key{\kbd{<vm|wl|mhe|rmail:folder>}}{\rm Mail folder}
|
||||
\key{\kbd{<vm|wl|mhe|rmail:folder\#id>}}{\rm Mail message}
|
||||
%\key{\kbd{<vm://myself@some.where.org/folder\#id>}}{\rm VM remote}
|
||||
\key{\kbd{file:/home/dominik/img/mars.jpg}}{\rm file, absolute}
|
||||
\key{\kbd{file:papers/last.pdf}}{\rm file, relative}
|
||||
\key{\kbd{file:projects.org::*that text}}{\rm find headline}
|
||||
\key{\kbd{file:projects.org::find me}}{\rm find tgt/string}
|
||||
\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
|
||||
\key{\kbd{http://www.astro.uva.nl/~dominik}}{\rm on the web}
|
||||
\key{\kbd{mailto:adent@galaxy.net}}{\rm EMail address}
|
||||
\key{\kbd{news:comp.emacs}}{\rm Usenet group}
|
||||
\key{\kbd{bbdb:Richard Stallman}}{\rm BBDB person}
|
||||
\key{\kbd{shell:ls *.org}}{\rm shell command}
|
||||
\key{\kbd{gnus:group}}{\rm GNUS group}
|
||||
\key{\kbd{gnus:group\#id}}{\rm GNUS message}
|
||||
\key{\kbd{vm|wl|mhe|rmail:folder}}{\rm Mail folder}
|
||||
\key{\kbd{vm|wl|mhe|rmail:folder\#id}}{\rm Mail message}
|
||||
\metax{\kbd{[[external link][description]]}}{\rm optional link text}
|
||||
%\key{\kbd{vm://myself@some.where.org/folder\#id}}{\rm VM remote}
|
||||
|
||||
\section{Tables}
|
||||
|
||||
|
@ -425,11 +425,10 @@ \section{Tables}
|
|||
|
||||
{\bf Creating a table}
|
||||
|
||||
\metax{insert a new Org-mode table}{M-x org-table-create}
|
||||
\metax{... or just start typing, e.g.}{|Name|Phone|Age RET |- TAB}
|
||||
\key{convert region to table}{C-c C-c}
|
||||
\key{... separator at least 3 spaces}{C-3 C-c C-c}
|
||||
%\key{... prompt for separator regexp}{C-u C-c C-c}
|
||||
%\metax{insert a new Org-mode table}{M-x org-table-create}
|
||||
\metax{just start typing, e.g.}{|Name|Phone|Age RET |- TAB}
|
||||
\key{convert region to table}{C-c |}
|
||||
\key{... separator at least 3 spaces}{C-3 C-c |}
|
||||
|
||||
{\bf Commands available inside tables}
|
||||
|
||||
|
@ -465,9 +464,7 @@ \section{Tables}
|
|||
\key{paste rectangular region}{C-c C-x C-y}
|
||||
\key{fill paragraph across selected cells}{C-c C-q}
|
||||
|
||||
{\bf Calculations}
|
||||
|
||||
These need the Emacs calc package installed.
|
||||
{\bf Calculations} (in combination with Emacs \kbd{calc} package)
|
||||
|
||||
\key{set and eval column formula}{C-c =}
|
||||
\key{set and eval named-field formula}{C-u C-c =}
|
||||
|
@ -475,8 +472,8 @@ \section{Tables}
|
|||
\key{re-apply all stored equations to current line}{C-c *}
|
||||
\key{re-apply all stored equations to entire table}{C-u C-c *}
|
||||
|
||||
\kbd{TAB}, \kbd{RET} and \kbd{C-c C-c} trigger automatic recalculation
|
||||
in lines starting with: {\tt | \# |}.
|
||||
%\kbd{TAB}, \kbd{RET} and \kbd{C-c C-c} trigger automatic recalculation
|
||||
%in lines starting with: {\tt | \# |}.
|
||||
|
||||
\key{rotate calculation mark through \# * ! \^ \_ \$}{C-\#}
|
||||
|
||||
|
@ -484,9 +481,9 @@ \section{Tables}
|
|||
\key{sum numbers in current column/rectangle}{C-c +}
|
||||
\key{copy down with increment}{S-RET$^4$}
|
||||
|
||||
A formula can also be typed directly into into a field and will
|
||||
executed by \kbd{TAB}, \kbd{RET} and \kbd{C-c C-c}. A leading \kbd{=}
|
||||
introduces a column formula, \kbd{:=} a named-field formula.
|
||||
Formulas typed in field are executed by \kbd{TAB},
|
||||
\kbd{RET} and \kbd{C-c C-c}. \kbd{=} introduces a column
|
||||
formula, \kbd{:=} a named-field formula.
|
||||
|
||||
\key{Example: Add Col1 and Col2}{=\$1+\$2}
|
||||
\key{... with printf format specification}{=\$1+\$2;\%.2f}
|
||||
|
@ -496,7 +493,9 @@ \section{Tables}
|
|||
|
||||
{\bf Miscellaneous}
|
||||
|
||||
\key{toggle visibility of vertical lines}{C-c |}
|
||||
\key{to limit column width to \kbd{N} characters, use}{...| <N> |...}
|
||||
\key{edit the current field in a separate window}{C-c `}
|
||||
\key{make current field fully visible}{C-u TAB}
|
||||
\metax{export as tab-separated file}{M-x org-table-export}
|
||||
\metax{import tab-separated file}{M-x org-table-import}
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Makefile for leim subdirectory in GNU Emacs.
|
||||
# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||||
# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
|
||||
# Free Software Foundation, Inc.
|
||||
# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||||
# National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; quail/croatian.el -- Quail package for inputing Croatian -*-coding: iso-8859-2;-*-
|
||||
|
||||
;; Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Hrvoje Nik¹iæ <hniksic@xemacs.org>,
|
||||
;; modeled after czech.el by Milan Zamazal.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; cyril-jis.el --- Quail package for inputting JISX0208 Cyrillic letters
|
||||
|
||||
;; Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 2005
|
||||
;; Copyright (C) 1997
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
;; Copyright (C) 1997, 1998, 2001, 2002, 2003, 2004, 2005
|
||||
;; Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 2005
|
||||
;; Copyright (C) 1997, 2003
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; hangul3.el --- Quail package for inputting Korean Hangul characters -*-coding: iso-2022-7bit;-*-
|
||||
|
||||
;; Copyright (C) 1997, 1998, 2001 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 1998, 2001, 2002 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 2002
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; hanja.el --- Quail-package for Korean Hanja (KSC5601) -*-coding: iso-2022-7bit;-*-
|
||||
|
||||
;; Copyright (C) 1997 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; japanese.el --- Quail package for inputting Japanese -*-coding: iso-2022-7bit;-*-
|
||||
|
||||
;; Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2005
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; latin-alt.el --- Quail package for inputting various European characters -*-coding: utf-8;-*-
|
||||
|
||||
;; Copyright (C) 1997, 1998, 2001, 2002 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 1999
|
||||
;; Copyright (C) 1999
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; latin-ltx.el --- Quail package for TeX-style input -*-coding: utf-8;-*-
|
||||
|
||||
;; Copyright (C) 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 2001
|
||||
;; Copyright (C) 2001, 2005
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; latin-post.el --- Quail packages for inputting various European characters -*-coding: utf-8;-*-
|
||||
|
||||
;; Copyright (C) 1997, 1998, 2001, 2002 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997
|
||||
;; Copyright (C) 1997, 1999
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
;; Copyright (C) 2003
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
;;; latin-pre.el --- Quail packages for inputting various European characters -*-coding: utf-8;-*-
|
||||
|
||||
;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002
|
||||
;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
||||
;; Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 1999, 2005
|
||||
;; Copyright (C) 1997, 1998, 1999, 2000, 2005
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; pypunct-b5.el --- Quail packages for Chinese (pinyin + extra symbols) -*-coding: iso-2022-7bit;-*-
|
||||
|
||||
;; Copyright (C) 1997, 2000
|
||||
;; Copyright (C) 1997, 2000, 2003
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; tibetan.el --- Quail package for inputting Tibetan characters -*-coding: iso-2022-7bit;-*-
|
||||
|
||||
;; Copyright (C) 1995 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1995, 1998, 1999, 2000
|
||||
;; Copyright (C) 1997 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1997, 1998, 1999, 2000
|
||||
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
||||
;; Registration Number H14PRO021
|
||||
|
||||
|
|
309
lisp/ChangeLog
309
lisp/ChangeLog
|
@ -1,3 +1,282 @@
|
|||
2006-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* newcomment.el (comment-add): New function.
|
||||
(comment-region-default, comment-dwim): Use it.
|
||||
|
||||
2006-04-15 Michael Olson <mwolson@gnu.org>
|
||||
|
||||
* emacs-lisp/tq.el: Improve comments.
|
||||
(tq-queue-head-question): New accessor function.
|
||||
(tq-queue-head-regexp, tq-queue-head-closure, tq-queue-head-fn):
|
||||
Update for modified queue structure.
|
||||
(tq-queue-add): Accept `question' argument.
|
||||
(tq-queue-pop): If a question is pending, send it.
|
||||
(tq-enqueue): Accept new optional argument `delay-question'.
|
||||
If this is non-nil, and at least one other question is pending a
|
||||
response, queue the question rather than sending it immediately.
|
||||
|
||||
2006-04-15 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
|
||||
|
||||
* calendar/appt.el (appt-add): Check whether an appointment is
|
||||
already present in appt-time-msg-list. Simplify code.
|
||||
|
||||
2006-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* progmodes/cc-langs.el (c-mode-menu):
|
||||
Don't presume c-subword-mode is bound.
|
||||
|
||||
2006-04-13 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* cus-edit.el (customize-package-emacs-version-alist): Update docstring.
|
||||
(customize-package-emacs-version): Use cdr instead of cadr now
|
||||
that alists use dotted pairs.
|
||||
|
||||
* custom.el (defcustom): Fix docstring for :package-version.
|
||||
|
||||
2006-04-13 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp.el (tramp-display-shell-command-buffer): New defvar.
|
||||
(tramp-handle-shell-command): Display output buffer only when
|
||||
`tramp-display-shell-command-buffer' is true.
|
||||
(tramp-handle-process-file): Set `tramp-display-shell-command-buffer'.
|
||||
|
||||
2006-04-13 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* textmodes/org.el (org-set-autofill-regexps): Set only the local
|
||||
values of `adaptive-fill-regexp' and `adaptive-fill-function'.
|
||||
|
||||
2006-04-13 Romain Francoise <romain@orebokech.com>
|
||||
|
||||
* pcvs-parse.el (cvs-parse-table): Use `with-temp-buffer' to avoid
|
||||
leaving temporary .cvsignore buffers behind.
|
||||
|
||||
2006-04-13 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* textmodes/org.el: (org-set-regexps-and-options)
|
||||
(org-get-current-options): Better names for the startup folding
|
||||
options.
|
||||
|
||||
2006-04-13 Thien-Thi Nguyen <ttn@gnu.org>
|
||||
|
||||
* vc.el (vc-annotate): Arrange for point to end up at the same
|
||||
line number as in the original, but only when using a new buffer.
|
||||
|
||||
2006-04-12 Davis Herring <herring@lanl.gov> (tiny change)
|
||||
|
||||
* files.el (hack-one-local-variable-eval-safep):
|
||||
Recognize `edebug-form-spec' for `put', but only if it passes
|
||||
`edebug-basic-spec'. Generalize `put' handling.
|
||||
|
||||
* emacs-lisp/edebug.el (edebug-basic-spec): New function for
|
||||
vetting file-local form specs.
|
||||
|
||||
* allout.el (allout-layout): Autoload its `safe-local-variable'
|
||||
property.
|
||||
|
||||
2006-04-13 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* textmodes/org.el: (org-ctrl-c-ctrl-c): Improve documentation string.
|
||||
(org-agenda-mouse-1-follows-link)
|
||||
(org-mouse-1-follows-link): New options.
|
||||
(org-format-agenda-item): Fix bug if TAGS is nil.
|
||||
(org-agenda-get-scheduled): Quote `priority' symbol in plist.
|
||||
|
||||
2006-04-13 Nick Roberts <nickrob@snap.net.nz>
|
||||
|
||||
* progmodes/gdb-ui.el (gdb-set-gud-minor-mode-existing-buffers):
|
||||
GDB 6.1+ gives full filename for "info sources" so use
|
||||
file-name-nondirectory.
|
||||
|
||||
2006-04-12 Romain Francoise <romain@orebokech.com>
|
||||
|
||||
* subr.el (read-passwd): Bind `message-log-max' to nil.
|
||||
|
||||
2006-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* progmodes/perl-mode.el (perl-indent-new-calculate):
|
||||
Recompute parse-start after jumping backward by a whole sexp.
|
||||
|
||||
2006-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* vc.el (vc-ensure-vc-buffer): Only change current-buffer, not the
|
||||
window configuration.
|
||||
(vc-annotate-display-select): Select the buffer so that current-buffer
|
||||
(and selected-window) is the output buffer at the end of vc-annotate.
|
||||
|
||||
2006-04-11 J.D. Smith <jdsmith@as.arizona.edu>
|
||||
|
||||
* vc.el (vc-annotate-color-map): Add custom TTY color map for
|
||||
8-color terminals, to use all of the colors in a sensible order.
|
||||
256-color terminals work well with the standard map.
|
||||
(vc-annotate-lines): Only strip the first color character if it
|
||||
is "#", to allow for terminal-style named colors.
|
||||
(vc-annotate-warp-version): Pass buf to `goto-line' to ensure
|
||||
the correct buffer is scrolled.
|
||||
|
||||
2006-04-11 Richard Stallman <rms@gnu.org>
|
||||
|
||||
* emacs-lisp/bytecomp.el (byte-compile-file):
|
||||
Bind enable-local-variables to :safe, and make normal-mode obey it.
|
||||
|
||||
* files.el (enable-local-variables): Allow value :safe.
|
||||
(normal-mode): Doc fix.
|
||||
(hack-local-variables): Implement enable-local-variables = :safe.
|
||||
(hack-local-variables-confirm): Don't prevent quitting.
|
||||
|
||||
2006-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* loadhist.el (unload-feature): A bit of sanity check of
|
||||
load-history entries. Cancel timer-vars before unbinding them.
|
||||
|
||||
* hexl.el (hexl-isearch-search-function): Fix regexp-building code to
|
||||
quote special chars, and make the trick work on the hex part of the
|
||||
buffer as well.
|
||||
(hexl-mode, hexl-save-buffer, hexl-mode-exit)
|
||||
(hexl-maybe-dehexlify-buffer): Use restore-buffer-modified-p.
|
||||
|
||||
* startup.el (normal-splash-screen): Fix last change so we don't wait
|
||||
2 minutes if we don't show the splash screen.
|
||||
|
||||
2006-04-11 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* textmodes/org.el (org-export-plain-list-max-depth)
|
||||
(org-table-spaces-around-separators)
|
||||
(org-radio-targets, org-activate-camels)
|
||||
(org-table-spaces-around-invisible-separators): Options removed.
|
||||
(org-time-stamp-rounding-minutes, org-remember-templates)
|
||||
(org-ellipsis, org-activate-links, org-descriptive-links):
|
||||
New options.
|
||||
(org-remember-apply-template, org-current-time)
|
||||
(org-finish-edit-table-field)
|
||||
(org-link-unescape, org-link-escape)
|
||||
(org-string-width, org-table-clean-line, org-html-do-expand)
|
||||
(org-edit-agenda-file-list, org-store-new-agenda-file-list)
|
||||
(org-read-agenda-file-list): New functions.
|
||||
(org-table-edit-field)
|
||||
(org-table-create-or-convert-from-region): New commands
|
||||
(org-table-toggle-vline-visibility): Command removed.
|
||||
(org-table-convert-region): Made a command.
|
||||
(orgtbl-deleta-backward-char,orgtbl-delete-char): Remove commands.
|
||||
Replace with the normal org- functions.
|
||||
(org-self-insert-command): Don't trigger realign unnecessarily
|
||||
when blanking a field that is not full.
|
||||
(org-mode): `Set buffer-invisibility-spec' for links.
|
||||
(org-activate-links2): Hide link part and only show descriptive
|
||||
part of the link.
|
||||
(org-insert-link): Modify for new linking system.
|
||||
(org-store-link): Store description separately, for use by
|
||||
`org-insert-link'.
|
||||
(org-table-align): Use `org-string-width'.
|
||||
(defgroup): Completely new group structure for custom variables.
|
||||
(org-agenda-files): Option: Single file name allowed. Function:
|
||||
Optional argument unrestrited means ignore any restricitons.
|
||||
(org-install-agenda-files-menu): Find a buffer in Org-mode before
|
||||
trying to modify the menu. Use generalized access to
|
||||
`org-agenda-files.'
|
||||
(org-agenda-list, org-todo-list, org-cycle-agenda-files)
|
||||
(org-agenda-file-to-front, org-remove-file, org-diary)
|
||||
(org-tags-view, org-export-icalendar-all-agenda-files)
|
||||
(org-export-icalendar-combine-agenda-files): Use generalized
|
||||
access to `org-agenda-files'.
|
||||
(org-remember-handler): Correctly preserve heading if present.
|
||||
(org-table-insert-row, org-table-insert-hline): Deal with
|
||||
invisible characters.
|
||||
|
||||
2006-04-10 J.D. Smith <jdsmith@as.arizona.edu>
|
||||
|
||||
* vc.el (vc-annotate-display-mode): Made default 'fullscale.
|
||||
(vc-annotate-color-map): New 18 element constant
|
||||
value/saturation, rotating hue colormap, from red->blue.
|
||||
(vc-annotate-mode-menu): "Default" -> "By Color Map Range".
|
||||
(vc-annotate-display-select): Switch to annotate-mode elsewhere.
|
||||
(vc-annotate): To avoid killing the required local variables,
|
||||
set them before the end of `with-output-to-temp-buffer', and
|
||||
after first switching to annotate-mode.
|
||||
(vc-annotate-warp-version): Add buffer argument in goto-line to
|
||||
ensure annotation, not source, is scrolled.
|
||||
|
||||
2006-04-10 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* custom.el (defcustom, custom-handle-keyword):
|
||||
Add :package-version keyword.
|
||||
(custom-add-package-version): New function. Sets value of new
|
||||
property 'custom-package-version from :package-version keyword.
|
||||
(defcustom): Create Common Keywords section in docstring.
|
||||
(defface, defgroup): Replace definitions of a select few keywords
|
||||
with a reference to the Common Keywords in defcustom.
|
||||
(defcustom, defface, defgroup): Replace reference to Customization
|
||||
chapter in manual with hyperlink.
|
||||
|
||||
* cus-edit.el (customize-package-emacs-version-alist):
|
||||
New variable.
|
||||
(customize-changed-options): Add check for custom-package-version.
|
||||
(customize-package-emacs-version): New function to look up Emacs
|
||||
version corresponding to the given package version.
|
||||
|
||||
* emacs-lisp/find-func.el (find-function-regexp): Allow dashes in
|
||||
defun name, in similar fashion to find-variable-regexp.
|
||||
|
||||
2006-04-10 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* international/mule-cmds.el (set-locale-environment): Fix last
|
||||
change for when the locale's preferences don't specify any encoding.
|
||||
|
||||
2006-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* emacs-lisp/find-func.el (find-function-search-for-symbol): Fix regexp
|
||||
so the defined var/fun doesn't need to be quoted.
|
||||
|
||||
2006-04-10 Richard Stallman <rms@gnu.org>
|
||||
|
||||
* finder.el (finder-mode-map): Add n and p bindings.
|
||||
|
||||
2006-04-10 Nick Roberts <nickrob@snap.net.nz>
|
||||
|
||||
* progmodes/gdb-ui.el (gdb-init-1): Re-initialise gdb-main-file to nil.
|
||||
(gdb-get-version): Make it work for pre "interpreter mi" (GDB 5.3?).
|
||||
(gdb-setup-windows): Put something in source window if we can't find
|
||||
the source file.
|
||||
(gdb-frame-handler): Make it work again with just assembly.
|
||||
(gdb-data-list-register-values-handler): Make it work when there is
|
||||
no stack.
|
||||
|
||||
2006-04-09 Richard Stallman <rms@gnu.org>
|
||||
|
||||
* mail/rmail.el (rmail-mime-charset-pattern): Ignore format and delsp
|
||||
specs while looking for charset.
|
||||
|
||||
* textmodes/picture.el (picture-mode-exit): Run picture-mode-exit-hook.
|
||||
|
||||
* play/landmark.el (lm-font-lock-face-O, lm-font-lock-face-X):
|
||||
Make them faces.
|
||||
(lm-font-lock-keywords): Update appropriately.
|
||||
|
||||
2006-04-10 Kim F. Storm <storm@cua.dk>
|
||||
|
||||
* simple.el (filter-buffer-substring): Add NOPROPS arg, so
|
||||
it can also replace buffer-substring-no-properties.
|
||||
|
||||
* emulation/cua-base.el (cua-delete-region, cua-paste)
|
||||
(cua-repeat-replace-region): Use filter-buffer-substring.
|
||||
|
||||
* emulation/cua-gmrk.el (cua-copy-region-to-global-mark)
|
||||
(cua-cut-region-to-global-mark): Likewise.
|
||||
|
||||
* emulation/cua-rect.el (cua--extract-rectangle)
|
||||
(cua-incr-rectangle, cua--rectangle-aux-replace): Likewise.
|
||||
|
||||
2006-04-09 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
|
||||
|
||||
* textmodes/bibtex.el (bibtex-entry-update): New optional arg
|
||||
entry-type. Add field delimiters to numerical fields if they are
|
||||
not present.
|
||||
|
||||
2006-04-09 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
|
||||
|
||||
* textmodes/bibtex.el (bibtex-find-text-internal): Add new element
|
||||
string-const to return value.
|
||||
(bibtex-remove-delimiters): Use it.
|
||||
|
||||
2006-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* emacs-lisp/bytecomp.el (byte-compile-form): Don't call
|
||||
|
@ -57,12 +336,11 @@
|
|||
(rcirc-multiline-minor-mode-map): New mode map.
|
||||
(rcirc-edit-multiline): Put multiline-edit buffer in
|
||||
rcirc-multiline-major-mode along with rcirc-multiline-minor-mode.
|
||||
(rcirc-print): Any line starting with an ignored nick will be
|
||||
ignored.
|
||||
(rcirc-print): Ignore any line starting with an ignored nick.
|
||||
(rcirc-print): Decode using rcirc-decode-coding-system.
|
||||
(rcirc-track-minor-mode): Update global-mode-string when disabling
|
||||
this mode.
|
||||
(minor-mode-alist): add LowPri indicator.
|
||||
(minor-mode-alist): Add LowPri indicator.
|
||||
(rcirc-toggle-low-priority): New function.
|
||||
(rcirc-last-non-irc-buffer): Prefix arg now no means switch to
|
||||
next lowpriority buffer with activity.
|
||||
|
@ -95,8 +373,7 @@
|
|||
|
||||
2006-04-07 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* pgg-gpg.el: Revert to revision 1.8 to allow the use of
|
||||
gpg-agent.
|
||||
* pgg-gpg.el: Revert to revision 1.8 to allow the use of gpg-agent.
|
||||
|
||||
2006-04-07 Nick Roberts <nickrob@snap.net.nz>
|
||||
|
||||
|
@ -109,21 +386,20 @@
|
|||
|
||||
* textmodes/paragraphs.el (sentence-end): Use string-or-null-p.
|
||||
|
||||
* textmodes/ispell.el (ispell-local-dictionary): Use
|
||||
string-or-null-p.
|
||||
* textmodes/ispell.el (ispell-local-dictionary): Use string-or-null-p.
|
||||
|
||||
* files.el: Update comment about safe-local-variable declarations.
|
||||
|
||||
2006-04-06 J.D. Smith <jdsmith@as.arizona.edu>
|
||||
|
||||
* progmodes/idlwave.el: Updated to IDLWAVE version 6.0. See
|
||||
idlwave.org.
|
||||
* progmodes/idlwave.el: Updated to IDLWAVE version 6.0.
|
||||
See idlwave.org.
|
||||
|
||||
* progmodes/idlw-shell.el: Updated to IDLWAVE version 6.0. See
|
||||
idlwave.org. Includes code to obsolete idlw-rinfo.el.
|
||||
* progmodes/idlw-shell.el: Updated to IDLWAVE version 6.0.
|
||||
See idlwave.org. Includes code to obsolete idlw-rinfo.el.
|
||||
|
||||
* progmodes/idlw-help.el: Updated to IDLWAVE version 6.0. See
|
||||
idlwave.org.
|
||||
* progmodes/idlw-help.el: Updated to IDLWAVE version 6.0.
|
||||
See idlwave.org.
|
||||
|
||||
* progmodes/idlw-complete-structtag.el: Updated to IDLWAVE
|
||||
version 6.0 (minimal changes). See idlwave.org.
|
||||
|
@ -194,8 +470,8 @@
|
|||
|
||||
2006-04-05 Daiki Ueno <ueno@unixuser.org>
|
||||
|
||||
* pgg-gpg.el (pgg-gpg-encrypt-region, pgg-gpg-sign-region): Wait
|
||||
for BEGIN_SIGNING too, new in GnuPG 1.4.3.
|
||||
* pgg-gpg.el (pgg-gpg-encrypt-region, pgg-gpg-sign-region):
|
||||
Wait for BEGIN_SIGNING too, new in GnuPG 1.4.3.
|
||||
|
||||
2006-04-05 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
|
@ -208,8 +484,7 @@
|
|||
default-enable-multibyte-characters. This reverts the change from
|
||||
revision 6.17 which is no longer necessary because the passphrase
|
||||
is sent separately now. GnuPG messages are unreadable under
|
||||
multibyte locales with default-enable-multibyte-characters set to
|
||||
nil.
|
||||
multibyte locales with default-enable-multibyte-characters set to nil.
|
||||
|
||||
2006-04-04 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
|
|
|
@ -666,6 +666,7 @@ the layout used for the allout.el source file.)
|
|||
`allout-layout' can additionally have the value `t', in which
|
||||
case the value of `allout-default-layout' is used.")
|
||||
(make-variable-buffer-local 'allout-layout)
|
||||
;;;###autoload
|
||||
(put 'allout-layout 'safe-local-variable t)
|
||||
|
||||
;;;_ : Topic header format
|
||||
|
|
|
@ -498,11 +498,11 @@ The time should be in either 24 hour format or am/pm format."
|
|||
(interactive "sTime (hh:mm[am/pm]): \nsMessage: ")
|
||||
(unless (string-match appt-time-regexp new-appt-time)
|
||||
(error "Unacceptable time-string"))
|
||||
(let* ((appt-time-string (concat new-appt-time " " new-appt-msg))
|
||||
(appt-time (list (appt-convert-time new-appt-time)))
|
||||
(time-msg (list appt-time appt-time-string t)))
|
||||
(setq appt-time-msg-list (nconc appt-time-msg-list (list time-msg)))
|
||||
(setq appt-time-msg-list (appt-sort-list appt-time-msg-list))))
|
||||
(let ((time-msg (list (list (appt-convert-time new-appt-time))
|
||||
(concat new-appt-time " " new-appt-msg) t)))
|
||||
(unless (member time-msg appt-time-msg-list)
|
||||
(setq appt-time-msg-list
|
||||
(appt-sort-list (nconc appt-time-msg-list (list time-msg)))))))
|
||||
|
||||
;;;###autoload
|
||||
(defun appt-delete ()
|
||||
|
|
|
@ -786,7 +786,7 @@ when the action is chosen.")
|
|||
(if (or (and (= 1 (length children))
|
||||
(memq (widget-type (car children))
|
||||
'(custom-variable custom-face)))
|
||||
(y-or-n-p "Reset all settings' buffer text to show current values? "))
|
||||
(y-or-n-p "Reset all settings' buffer text to show current values? "))
|
||||
(mapc (lambda (widget)
|
||||
(if (memq (widget-get widget :custom-state)
|
||||
'(modified changed))
|
||||
|
@ -1079,6 +1079,33 @@ Show the buffer in another window, but don't select it."
|
|||
(defvar customize-changed-options-previous-release "21.1"
|
||||
"Version for `customize-changed-options' to refer back to by default.")
|
||||
|
||||
;; Packages will update this variable, so make it available.
|
||||
;;;###autoload
|
||||
(defvar customize-package-emacs-version-alist nil
|
||||
"Alist mapping versions of Emacs to versions of a package.
|
||||
These package versions are listed in the :package-version
|
||||
keyword used in `defcustom', `defgroup', and `defface'. Its
|
||||
elements look like this:
|
||||
|
||||
(PACKAGE (PVERSION . EVERSION)...)
|
||||
|
||||
For each PACKAGE, which is a symbol, there are one or more
|
||||
elements that contain a package version PVERSION with an
|
||||
associated Emacs version EVERSION. These versions are strings.
|
||||
For example, the MH-E package updates this alist with the
|
||||
following:
|
||||
|
||||
(add-to-list 'customize-package-emacs-version-alist
|
||||
'(MH-E (\"6.0\" . \"22.1\") (\"6.1\" . \"22.1\")
|
||||
(\"7.0\" . \"22.1\") (\"7.1\" . \"22.1\")
|
||||
(\"7.2\" . \"22.1\") (\"7.3\" . \"22.1\")
|
||||
(\"7.4\" . \"22.1\") (\"8.0\" . \"22.1\")))
|
||||
|
||||
The value of PACKAGE needs to be unique and it needs to match the
|
||||
PACKAGE value appearing in the :package-version keyword. Since
|
||||
the user might see the value in a error message, a good choice is
|
||||
the official name of the package, such as MH-E or Gnus.")
|
||||
|
||||
;;;###autoload
|
||||
(defalias 'customize-changed 'customize-changed-options)
|
||||
|
||||
|
@ -1119,7 +1146,12 @@ that were added or redefined since that version."
|
|||
(let (found)
|
||||
(mapatoms
|
||||
(lambda (symbol)
|
||||
(let ((version (get symbol 'custom-version)))
|
||||
(let* ((package-version (get symbol 'custom-package-version))
|
||||
(version
|
||||
(or (and package-version
|
||||
(customize-package-emacs-version symbol
|
||||
package-version))
|
||||
(get symbol 'custom-version))))
|
||||
(if version
|
||||
(when (customize-version-lessp since-version version)
|
||||
(if (or (get symbol 'custom-group)
|
||||
|
@ -1135,6 +1167,32 @@ that were added or redefined since that version."
|
|||
(error "No user option defaults have been changed since Emacs %s"
|
||||
since-version))))
|
||||
|
||||
(defun customize-package-emacs-version (symbol package-version)
|
||||
"Return Emacs version of SYMBOL.
|
||||
PACKAGE-VERSION has the form (PACKAGE . VERSION). The VERSION of
|
||||
PACKAGE is looked up in the associated list
|
||||
`customize-package-emacs-version-alist' to find the version of
|
||||
Emacs that is associated with it."
|
||||
(let (package-versions emacs-version)
|
||||
;; Use message instead of error since we want user to be able to
|
||||
;; see the rest of the symbols even if a package author has
|
||||
;; botched things up.
|
||||
(cond ((not (listp package-version))
|
||||
(message "Invalid package-version value for %s" symbol))
|
||||
((setq package-versions (assq (car package-version)
|
||||
customize-package-emacs-version-alist))
|
||||
(setq emacs-version
|
||||
(cdr (assoc (cdr package-version) package-versions)))
|
||||
(unless emacs-version
|
||||
(message "%s version %s not found in %s" symbol
|
||||
(cdr package-version)
|
||||
"customize-package-emacs-version-alist")))
|
||||
(t
|
||||
(message "Package %s neglected to update %s"
|
||||
(car package-version)
|
||||
"customize-package-emacs-version-alist")))
|
||||
emacs-version))
|
||||
|
||||
(defun customize-version-lessp (version1 version2)
|
||||
;; Why are the versions strings, and given that they are, why aren't
|
||||
;; they converted to numbers and compared as such here? -- fx
|
||||
|
|
|
@ -203,8 +203,27 @@ The following keywords are meaningful:
|
|||
|
||||
:type VALUE should be a widget type for editing the symbol's value.
|
||||
:options VALUE should be a list of valid members of the widget type.
|
||||
:initialize
|
||||
VALUE should be a function used to initialize the
|
||||
variable. It takes two arguments, the symbol and value
|
||||
given in the `defcustom' call. The default is
|
||||
`custom-initialize-reset'.
|
||||
:set VALUE should be a function to set the value of the symbol.
|
||||
It takes two arguments, the symbol to set and the value to
|
||||
give it. The default choice of function is `custom-set-default'.
|
||||
:get VALUE should be a function to extract the value of symbol.
|
||||
The function takes one argument, a symbol, and should return
|
||||
the current value for that symbol. The default choice of function
|
||||
is `custom-default-value'.
|
||||
:require
|
||||
VALUE should be a feature symbol. If you save a value
|
||||
for this option, then when your `.emacs' file loads the value,
|
||||
it does (require VALUE) first.
|
||||
|
||||
The following common keywords are also meaningful.
|
||||
|
||||
:group VALUE should be a customization group.
|
||||
Add SYMBOL to that group.
|
||||
Add SYMBOL (or FACE with `defface') to that group.
|
||||
:link LINK-DATA
|
||||
Include an external link after the documentation string for this
|
||||
item. This is a sentence containing an active field which
|
||||
|
@ -248,26 +267,19 @@ The following keywords are meaningful:
|
|||
|
||||
An item can have more than one external link; however, most items
|
||||
have none at all.
|
||||
:initialize
|
||||
VALUE should be a function used to initialize the
|
||||
variable. It takes two arguments, the symbol and value
|
||||
given in the `defcustom' call. The default is
|
||||
`custom-initialize-reset'.
|
||||
:set VALUE should be a function to set the value of the symbol.
|
||||
It takes two arguments, the symbol to set and the value to
|
||||
give it. The default choice of function is `custom-set-default'.
|
||||
:get VALUE should be a function to extract the value of symbol.
|
||||
The function takes one argument, a symbol, and should return
|
||||
the current value for that symbol. The default choice of function
|
||||
is `custom-default-value'.
|
||||
:require
|
||||
VALUE should be a feature symbol. If you save a value
|
||||
for this option, then when your `.emacs' file loads the value,
|
||||
it does (require VALUE) first.
|
||||
:version
|
||||
VALUE should be a string specifying that the variable was
|
||||
first introduced, or its default value was changed, in Emacs
|
||||
version VERSION.
|
||||
:package-version
|
||||
VALUE should be a list with the form (PACKAGE . VERSION)
|
||||
specifying that the variable was first introduced, or its
|
||||
default value was changed, in PACKAGE version VERSION. This
|
||||
keyword takes priority over :version. The PACKAGE and VERSION
|
||||
must appear in the alist `customize-package-emacs-version-alist'.
|
||||
Since PACKAGE must be unique and the user might see it in an
|
||||
error message, a good choice is the official name of the
|
||||
package, such as MH-E or Gnus.
|
||||
:tag LABEL
|
||||
Use LABEL, a string, instead of the item's name, to label the item
|
||||
in customization menus and buffers.
|
||||
|
@ -286,8 +298,8 @@ to load a file defining variables with this form, or with
|
|||
_outside_ any bindings for these variables. \(`defvar' and
|
||||
`defconst' behave similarly in this respect.)
|
||||
|
||||
Read the section about customization in the Emacs Lisp manual for more
|
||||
information."
|
||||
See Info node `(elisp) Customization' in the Emacs Lisp manual
|
||||
for more information."
|
||||
(declare (doc-string 3))
|
||||
;; It is better not to use backquote in this file,
|
||||
;; because that makes a bootstrapping problem
|
||||
|
@ -314,10 +326,8 @@ The remaining arguments should have the form
|
|||
|
||||
[KEYWORD VALUE]...
|
||||
|
||||
The following KEYWORDs are defined:
|
||||
|
||||
:group VALUE should be a customization group.
|
||||
Add FACE to that group.
|
||||
For a list of valid keywords, see the common keywords listed in
|
||||
`defcustom'.
|
||||
|
||||
SPEC should be an alist of the form ((DISPLAY ATTS)...).
|
||||
|
||||
|
@ -368,8 +378,8 @@ corresponding ITEMs. These are the defined REQ values:
|
|||
the function `display-supports-face-attributes-p' for more
|
||||
information on exactly how testing is done.
|
||||
|
||||
Read the section about customization in the Emacs Lisp manual for more
|
||||
information."
|
||||
See Info node `(elisp) Customization' in the Emacs Lisp manual
|
||||
for more information."
|
||||
(declare (doc-string 3))
|
||||
;; It is better not to use backquote in this file,
|
||||
;; because that makes a bootstrapping problem
|
||||
|
@ -426,16 +436,11 @@ The remaining arguments should have the form
|
|||
|
||||
[KEYWORD VALUE]...
|
||||
|
||||
The following KEYWORDs are defined:
|
||||
For a list of valid keywords, see the common keywords listed in
|
||||
`defcustom'.
|
||||
|
||||
:group VALUE should be a customization group.
|
||||
Add SYMBOL to that group.
|
||||
|
||||
:version VALUE should be a string specifying that the group was introduced
|
||||
in Emacs version VERSION.
|
||||
|
||||
Read the section about customization in the Emacs Lisp manual for more
|
||||
information."
|
||||
See Info node `(elisp) Customization' in the Emacs Lisp manual
|
||||
for more information."
|
||||
(declare (doc-string 3))
|
||||
;; It is better not to use backquote in this file,
|
||||
;; because that makes a bootstrapping problem
|
||||
|
@ -489,6 +494,8 @@ Fourth argument TYPE is the custom option type."
|
|||
(custom-add-to-group value symbol type))
|
||||
((eq keyword :version)
|
||||
(custom-add-version symbol value))
|
||||
((eq keyword :package-version)
|
||||
(custom-add-package-version symbol value))
|
||||
((eq keyword :link)
|
||||
(custom-add-link symbol value))
|
||||
((eq keyword :load)
|
||||
|
@ -540,6 +547,10 @@ For other custom types, this has no effect."
|
|||
"To the custom option SYMBOL add the version VERSION."
|
||||
(put symbol 'custom-version (purecopy version)))
|
||||
|
||||
(defun custom-add-package-version (symbol version)
|
||||
"To the custom option SYMBOL add the package version VERSION."
|
||||
(put symbol 'custom-package-version (purecopy version)))
|
||||
|
||||
(defun custom-add-load (symbol load)
|
||||
"To the custom option SYMBOL add the dependency LOAD.
|
||||
LOAD should be either a library file name, or a feature name."
|
||||
|
|
|
@ -1650,8 +1650,12 @@ The value is non-nil if there were no errors, nil if errors."
|
|||
;; If they change the file name, then change it for the output also.
|
||||
(let ((buffer-file-name filename)
|
||||
(default-major-mode 'emacs-lisp-mode)
|
||||
;; Ignore unsafe local variables.
|
||||
;; We only care about a few of them for our purposes.
|
||||
(enable-local-variables :safe)
|
||||
(enable-local-eval nil))
|
||||
(normal-mode)
|
||||
;; Arg of t means don't alter enable-local-variables.
|
||||
(normal-mode t)
|
||||
(setq filename buffer-file-name))
|
||||
;; Set the default directory, in case an eval-when-compile uses it.
|
||||
(setq default-directory (file-name-directory filename)))
|
||||
|
|
|
@ -258,6 +258,20 @@ Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
|
|||
edebug-form-spec
|
||||
))
|
||||
|
||||
;;;###autoload
|
||||
(defun edebug-basic-spec (spec)
|
||||
"Return t if SPEC uses only extant spec symbols.
|
||||
An extant spec symbol is a symbol that is not a function and has a
|
||||
`edebug-form-spec' property."
|
||||
(cond ((listp spec)
|
||||
(catch 'basic
|
||||
(while spec
|
||||
(unless (edebug-basic-spec (car spec)) (throw 'basic nil))
|
||||
(setq spec (cdr spec)))
|
||||
t))
|
||||
((symbolp spec)
|
||||
(unless (functionp spec) (get spec 'edebug-form-spec)))))
|
||||
|
||||
;;; Utilities
|
||||
|
||||
;; Define edebug-gensym - from old cl.el
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
(concat
|
||||
"^\\s-*(\\(def\\(ine-skeleton\\|ine-generic-mode\\|ine-derived-mode\\|\
|
||||
ine\\(?:-global\\)?-minor-mode\\|ine-compilation-mode\\|un-cvs-mode\\|\
|
||||
foo\\|[^cfgv]\\w+\\*?\\)\\|easy-mmode-define-[a-z-]+\\|easy-menu-define\\|\
|
||||
foo\\|[^cfgv]\\(\\w\\|\\s_\\)+\\*?\\)\\|easy-mmode-define-[a-z-]+\\|easy-menu-define\\|\
|
||||
menu-bar-make-toggle\\)"
|
||||
find-function-space-re
|
||||
"\\('\\|\(quote \\)?%s\\(\\s-\\|$\\|\(\\|\)\\)")
|
||||
|
@ -228,8 +228,16 @@ The search is done in the source for library LIBRARY."
|
|||
(with-syntax-table emacs-lisp-mode-syntax-table
|
||||
(goto-char (point-min))
|
||||
(if (or (re-search-forward regexp nil t)
|
||||
;; `regexp' matches definitions using known forms like
|
||||
;; `defun', or `defvar'. But some functions/variables
|
||||
;; are defined using special macros (or functions), so
|
||||
;; if `regexp' can't find the definition, we look for
|
||||
;; something of the form "(SOMETHING <symbol> ...)".
|
||||
;; This fails to distinguish function definitions from
|
||||
;; variable declarations (or even uses thereof), but is
|
||||
;; a good pragmatic fallback.
|
||||
(re-search-forward
|
||||
(concat "^([^ ]+" find-function-space-re "['(]"
|
||||
(concat "^([^ ]+" find-function-space-re "['(]?"
|
||||
(regexp-quote (symbol-name symbol))
|
||||
"\\_>")
|
||||
nil t))
|
||||
|
|
|
@ -27,18 +27,56 @@
|
|||
|
||||
;;; Commentary:
|
||||
|
||||
;; manages receiving a stream asynchronously,
|
||||
;; parsing it into transactions, and then calling
|
||||
;; handler functions
|
||||
;; This file manages receiving a stream asynchronously, parsing it
|
||||
;; into transactions, and then calling the associated handler function
|
||||
;; upon the completion of each transaction.
|
||||
|
||||
;; Our basic structure is the queue/process/buffer triple. Each entry
|
||||
;; of the queue is a regexp/closure/function triple. We buffer
|
||||
;; bytes from the process until we see the regexp at the head of the
|
||||
;; queue. Then we call the function with the closure and the
|
||||
;; collected bytes.
|
||||
;; of the queue part is a list of question, regexp, closure, and
|
||||
;; function that is consed to the last element.
|
||||
|
||||
;; A transaction queue may be created by calling `tq-create'.
|
||||
|
||||
;; A request may be added to the queue by calling `tq-enqueue'. If
|
||||
;; the `delay-question' argument is non-nil, we will wait to send the
|
||||
;; question to the process until it has finished sending other input.
|
||||
;; Otherwise, once a request is enqueued, we send the given question
|
||||
;; immediately to the process.
|
||||
|
||||
;; We then buffer bytes from the process until we see the regexp that
|
||||
;; was provided in the call to `tq-enqueue'. Then we call the
|
||||
;; provided function with the closure and the collected bytes. If we
|
||||
;; have indicated that the question from the next transaction was not
|
||||
;; sent immediately, send it at this point, awaiting the response.
|
||||
|
||||
;;; Code:
|
||||
|
||||
;;; Accessors
|
||||
|
||||
;; This part looks like (queue . (process . buffer))
|
||||
(defun tq-queue (tq) (car tq))
|
||||
(defun tq-process (tq) (car (cdr tq)))
|
||||
(defun tq-buffer (tq) (cdr (cdr tq)))
|
||||
|
||||
;; The structure of `queue' is as follows
|
||||
;; ((question regexp closure . fn)
|
||||
;; <other queue entries>)
|
||||
;; question: string to send to the process
|
||||
(defun tq-queue-head-question (tq) (car (car (tq-queue tq))))
|
||||
;; regexp: regular expression that matches the end of a response from
|
||||
;; the process
|
||||
(defun tq-queue-head-regexp (tq) (car (cdr (car (tq-queue tq)))))
|
||||
;; closure: additional data to pass to function
|
||||
(defun tq-queue-head-closure (tq) (car (cdr (cdr (car (tq-queue tq))))))
|
||||
;; fn: function to call upon receiving a complete response from the
|
||||
;; process
|
||||
(defun tq-queue-head-fn (tq) (cdr (cdr (cdr (car (tq-queue tq))))))
|
||||
|
||||
;; Determine whether queue is empty
|
||||
(defun tq-queue-empty (tq) (not (tq-queue tq)))
|
||||
|
||||
;;; Core functionality
|
||||
|
||||
;;;###autoload
|
||||
(defun tq-create (process)
|
||||
"Create and return a transaction queue communicating with PROCESS.
|
||||
|
@ -54,33 +92,37 @@ to a tcp server on another machine."
|
|||
(tq-filter ',tq string)))
|
||||
tq))
|
||||
|
||||
;;; accessors
|
||||
(defun tq-queue (tq) (car tq))
|
||||
(defun tq-process (tq) (car (cdr tq)))
|
||||
(defun tq-buffer (tq) (cdr (cdr tq)))
|
||||
|
||||
(defun tq-queue-add (tq re closure fn)
|
||||
(defun tq-queue-add (tq question re closure fn)
|
||||
(setcar tq (nconc (tq-queue tq)
|
||||
(cons (cons re (cons closure fn)) nil)))
|
||||
(cons (cons question (cons re (cons closure fn))) nil)))
|
||||
'ok)
|
||||
|
||||
(defun tq-queue-head-regexp (tq) (car (car (tq-queue tq))))
|
||||
(defun tq-queue-head-fn (tq) (cdr (cdr (car (tq-queue tq)))))
|
||||
(defun tq-queue-head-closure (tq) (car (cdr (car (tq-queue tq)))))
|
||||
(defun tq-queue-empty (tq) (not (tq-queue tq)))
|
||||
(defun tq-queue-pop (tq) (setcar tq (cdr (car tq))) (null (car tq)))
|
||||
(defun tq-queue-pop (tq)
|
||||
(setcar tq (cdr (car tq)))
|
||||
(let ((question (tq-queue-head-question tq)))
|
||||
(when question
|
||||
(process-send-string (tq-process tq) question)))
|
||||
(null (car tq)))
|
||||
|
||||
|
||||
;;; must add to queue before sending!
|
||||
(defun tq-enqueue (tq question regexp closure fn)
|
||||
(defun tq-enqueue (tq question regexp closure fn &optional delay-question)
|
||||
"Add a transaction to transaction queue TQ.
|
||||
This sends the string QUESTION to the process that TQ communicates with.
|
||||
When the corresponding answer comes back, we call FN
|
||||
with two arguments: CLOSURE, and the answer to the question.
|
||||
|
||||
When the corresponding answer comes back, we call FN with two
|
||||
arguments: CLOSURE, which may contain additional data that FN
|
||||
needs, and the answer to the question.
|
||||
|
||||
REGEXP is a regular expression to match the entire answer;
|
||||
that's how we tell where the answer ends."
|
||||
(tq-queue-add tq regexp closure fn)
|
||||
(process-send-string (tq-process tq) question))
|
||||
that's how we tell where the answer ends.
|
||||
|
||||
If DELAY-QUESTION is non-nil, delay sending this question until
|
||||
the process has finished replying to any previous questions.
|
||||
This produces more reliable results with some processes."
|
||||
(let ((sendp (or (not delay-question)
|
||||
(not (tq-queue-head-question tq)))))
|
||||
(tq-queue-add tq (unless sendp question) regexp closure fn)
|
||||
(when sendp
|
||||
(process-send-string (tq-process tq) question))))
|
||||
|
||||
(defun tq-close (tq)
|
||||
"Shut down transaction queue TQ, terminating the process."
|
||||
|
|
|
@ -769,7 +769,7 @@ Save a copy in register 0 if `cua-delete-copy-to-register-0' is non-nil."
|
|||
(let ((start (mark)) (end (point)))
|
||||
(or (<= start end)
|
||||
(setq start (prog1 end (setq end start))))
|
||||
(setq cua--last-deleted-region-text (buffer-substring start end))
|
||||
(setq cua--last-deleted-region-text (filter-buffer-substring start end))
|
||||
(if cua-delete-copy-to-register-0
|
||||
(set-register ?0 cua--last-deleted-region-text))
|
||||
(delete-region start end)
|
||||
|
@ -858,7 +858,7 @@ If global mark is active, copy from register or one character."
|
|||
(if regtxt
|
||||
(cua--insert-at-global-mark regtxt)
|
||||
(when (not (eobp))
|
||||
(cua--insert-at-global-mark (buffer-substring (point) (+ (point) count)))
|
||||
(cua--insert-at-global-mark (filter-buffer-substring (point) (+ (point) count)))
|
||||
(forward-char count))))
|
||||
(buffer-read-only
|
||||
(message "Cannot paste into a read-only buffer"))
|
||||
|
@ -875,7 +875,7 @@ If global mark is active, copy from register or one character."
|
|||
(setq paste-lines (cua--delete-rectangle))
|
||||
(if (= paste-lines 1)
|
||||
(setq paste-lines nil))) ;; paste all
|
||||
(if (string= (buffer-substring (point) (mark))
|
||||
(if (string= (filter-buffer-substring (point) (mark))
|
||||
(car kill-ring))
|
||||
(current-kill 1))
|
||||
(cua-delete-region)))
|
||||
|
@ -950,7 +950,7 @@ of text."
|
|||
(setq s (car u) e (cdr u)))))))
|
||||
(setq cua--repeat-replace-text
|
||||
(cond ((and s e (<= s e) (= s (mark t)))
|
||||
(buffer-substring-no-properties s e))
|
||||
(filter-buffer-substring s e nil t))
|
||||
((and (null s) (eq u elt)) ;; nothing inserted
|
||||
"")
|
||||
(t
|
||||
|
|
|
@ -143,7 +143,7 @@ With prefix argument, don't jump to global mark when cancelling it."
|
|||
(let ((src-buf (current-buffer)))
|
||||
(save-excursion
|
||||
(if (equal (marker-buffer cua--global-mark-marker) src-buf)
|
||||
(let ((text (buffer-substring-no-properties start end)))
|
||||
(let ((text (filter-buffer-substring start end nil t)))
|
||||
(goto-char (marker-position cua--global-mark-marker))
|
||||
(insert text))
|
||||
(set-buffer (marker-buffer cua--global-mark-marker))
|
||||
|
@ -167,7 +167,7 @@ With prefix argument, don't jump to global mark when cancelling it."
|
|||
(if (and (< start (marker-position cua--global-mark-marker))
|
||||
(< (marker-position cua--global-mark-marker) end))
|
||||
(message "Can't move region into itself")
|
||||
(let ((text (buffer-substring-no-properties start end))
|
||||
(let ((text (filter-buffer-substring start end nil t))
|
||||
(p1 (copy-marker start))
|
||||
(p2 (copy-marker end)))
|
||||
(goto-char (marker-position cua--global-mark-marker))
|
||||
|
|
|
@ -631,7 +631,7 @@ If command is repeated at same position, delete the rectangle."
|
|||
(if (not (cua--rectangle-virtual-edges))
|
||||
(cua--rectangle-operation nil nil nil nil nil ; do not tabify
|
||||
'(lambda (s e l r)
|
||||
(setq rect (cons (buffer-substring-no-properties s e) rect))))
|
||||
(setq rect (cons (filter-buffer-substring s e nil t) rect))))
|
||||
(cua--rectangle-operation nil 1 nil nil nil ; do not tabify
|
||||
'(lambda (s e l r v)
|
||||
(let ((copy t) (bs 0) (as 0) row)
|
||||
|
@ -649,7 +649,7 @@ If command is repeated at same position, delete the rectangle."
|
|||
(setq as (- r (max (current-column) l))
|
||||
e (point)))
|
||||
(setq row (if (and copy (> e s))
|
||||
(buffer-substring-no-properties s e)
|
||||
(filter-buffer-substring s e nil t)
|
||||
""))
|
||||
(when (> bs 0)
|
||||
(setq row (concat (make-string bs ?\s) row)))
|
||||
|
@ -1127,12 +1127,12 @@ The length of STRING need not be the same as the rectangle width."
|
|||
'(lambda (s e l r)
|
||||
(cond
|
||||
((re-search-forward "0x\\([0-9a-fA-F]+\\)" e t)
|
||||
(let* ((txt (buffer-substring-no-properties (match-beginning 1) (match-end 1)))
|
||||
(let* ((txt (filter-buffer-substring (match-beginning 1) (match-end 1) nil t))
|
||||
(n (string-to-number txt 16))
|
||||
(fmt (format "0x%%0%dx" (length txt))))
|
||||
(replace-match (format fmt (+ n increment)))))
|
||||
((re-search-forward "\\( *-?[0-9]+\\)" e t)
|
||||
(let* ((txt (buffer-substring-no-properties (match-beginning 1) (match-end 1)))
|
||||
(let* ((txt (filter-buffer-substring (match-beginning 1) (match-end 1) nil t))
|
||||
(prefix (if (= (aref txt 0) ?0) "0" ""))
|
||||
(n (string-to-number txt 10))
|
||||
(fmt (format "%%%s%dd" prefix (length txt))))
|
||||
|
@ -1213,7 +1213,7 @@ The numbers are formatted according to the FORMAT string."
|
|||
(when replace
|
||||
(goto-char (point-min))
|
||||
(while (not (eobp))
|
||||
(setq z (cons (buffer-substring (point) (line-end-position)) z))
|
||||
(setq z (cons (filter-buffer-substring (point) (line-end-position)) z))
|
||||
(forward-line 1))))
|
||||
(if (not cua--debug)
|
||||
(kill-buffer auxbuf))
|
||||
|
|
|
@ -1,3 +1,23 @@
|
|||
2006-04-05 Diane Murray <disumu@x3y2z1.net>
|
||||
|
||||
* erc.el (erc-cmd-SV): Removed the exclamation point. Show the
|
||||
build date as it's shown in `emacs-version'.
|
||||
|
||||
* erc-capab.el (erc-capab-identify-add-prefix): Insert the prefix
|
||||
with the same face property as the previous character.
|
||||
|
||||
2006-04-02 Michael Olson <mwolson@gnu.org>
|
||||
|
||||
* erc-backend.el, erc-ezbounce.el, erc-join.el, erc-netsplit.el,
|
||||
erc.el: Make sure to include a newline inside of negated classes,
|
||||
so that a newline is not matched.
|
||||
|
||||
2006-04-01 Michael Olson <mwolson@gnu.org>
|
||||
|
||||
* erc-backend.el (erc-server-connect-function): Don't try to
|
||||
detect the existence of the `open-network-stream-nowait' function,
|
||||
since I can't find it in Emacs21, XEmacs21, or Emacs22.
|
||||
|
||||
2006-03-26 Michael Olson <mwolson@gnu.org>
|
||||
|
||||
* erc.el (erc-header-line): New face that will be used to colorize
|
||||
|
|
|
@ -312,13 +312,7 @@ alist."
|
|||
:type '(repeat (cons (string :tag "Target")
|
||||
coding-system)))
|
||||
|
||||
(defcustom erc-server-connect-function
|
||||
(if (and (fboundp 'open-network-stream-nowait)
|
||||
;; CVS Emacs claims to define open-network-stream-nowait on
|
||||
;; windows, however, it does, in fact, not work.
|
||||
(not (memq system-type '(windows-nt cygwin ms-dos darwin))))
|
||||
'open-network-stream-nowait
|
||||
'open-network-stream)
|
||||
(defcustom erc-server-connect-function 'open-network-stream
|
||||
"Function used to initiate a connection.
|
||||
It should take same arguments as `open-network-stream' does."
|
||||
:group 'erc-server
|
||||
|
@ -762,10 +756,10 @@ PROCs `process-buffer' is `current-buffer' when this function is called."
|
|||
(substring string 1 posn)))
|
||||
|
||||
(setf (erc-response.command msg)
|
||||
(let* ((bposn (string-match "[^ ]" string posn))
|
||||
(let* ((bposn (string-match "[^ \n]" string posn))
|
||||
(eposn (string-match " " string bposn)))
|
||||
(setq posn (and eposn
|
||||
(string-match "[^ ]" string eposn)))
|
||||
(string-match "[^ \n]" string eposn)))
|
||||
(substring string bposn eposn)))
|
||||
|
||||
(while (and posn
|
||||
|
@ -773,7 +767,7 @@ PROCs `process-buffer' is `current-buffer' when this function is called."
|
|||
(push (let* ((bposn posn)
|
||||
(eposn (string-match " " string bposn)))
|
||||
(setq posn (and eposn
|
||||
(string-match "[^ ]" string eposn)))
|
||||
(string-match "[^ \n]" string eposn)))
|
||||
(substring string bposn eposn))
|
||||
(erc-response.command-args msg)))
|
||||
(when posn
|
||||
|
|
|
@ -139,7 +139,7 @@ in the alist is `nil', prompt for the appropriate values."
|
|||
(defun erc-ezb-add-session (message)
|
||||
"Add an EZBounce session to the session list."
|
||||
(when (and erc-ezb-inside-session-listing
|
||||
(string-match "^\\([^ ]+\\) +\\([^ ]+\\) +\\([^ ]+\\) +\\([^ ]+\\)$" message))
|
||||
(string-match "^\\([^ \n]+\\) +\\([^ \n]+\\) +\\([^ \n]+\\) +\\([^ \n]+\\)$" message))
|
||||
(let ((id (match-string 1 message))
|
||||
(nick (match-string 2 message))
|
||||
(to (match-string 3 message)))
|
||||
|
|
|
@ -92,7 +92,7 @@ servers, presumably in the same domain."
|
|||
(or erc-server-announced-name erc-session-server))))
|
||||
(when (erc-current-nick-p nick)
|
||||
(when (and erc-autojoin-domain-only
|
||||
(string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server))
|
||||
(string-match "[^.\n]+\\.\\([^.\n]+\\.[^.\n]+\\)$" server))
|
||||
(setq server (match-string 1 server)))
|
||||
(let ((elem (assoc server erc-autojoin-channels-alist)))
|
||||
(if elem
|
||||
|
@ -115,7 +115,7 @@ servers, presumably in the same domain."
|
|||
(or erc-server-announced-name erc-session-server))))
|
||||
(when (erc-current-nick-p nick)
|
||||
(when (and erc-autojoin-domain-only
|
||||
(string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server))
|
||||
(string-match "[^.\n]+\\.\\([^.\n]+\\.[^.\n]+\\)$" server))
|
||||
(setq server (match-string 1 server)))
|
||||
(let ((elem (assoc server erc-autojoin-channels-alist)))
|
||||
(when elem
|
||||
|
|
|
@ -64,7 +64,8 @@ sever buffer."
|
|||
:group 'erc-netsplit
|
||||
:type 'boolean)
|
||||
|
||||
(defcustom erc-netsplit-regexp "^[^ @!\"]+\\.[^ @!]+ [^ @!]+\\.[^ @!\"]+$"
|
||||
(defcustom erc-netsplit-regexp
|
||||
"^[^ @!\"\n]+\\.[^ @!\n]+ [^ @!\n]+\\.[^ @!\"\n]+$"
|
||||
"This regular expression should match quit reasons produced
|
||||
by netsplits."
|
||||
:group 'erc-netsplit
|
||||
|
@ -131,7 +132,7 @@ join from that split has been detected or not.")
|
|||
(defun erc-netsplit-MODE (proc parsed)
|
||||
"Hide mode changes from servers."
|
||||
;; regexp matches things with a . in them, and no ! or @ in them.
|
||||
(when (string-match "^[^@!]+\\.[^@!]+$" (erc-response.sender parsed))
|
||||
(when (string-match "^[^@!\n]+\\.[^@!\n]+$" (erc-response.sender parsed))
|
||||
(and erc-netsplit-debug
|
||||
(erc-display-message
|
||||
parsed 'notice (process-buffer proc)
|
||||
|
|
|
@ -3132,7 +3132,7 @@ the message given by REASON."
|
|||
|
||||
(defun erc-cmd-SV ()
|
||||
"Say the current ERC and Emacs version into channel."
|
||||
(erc-send-message (format "I'm using ERC %s with %s %s (%s%s%s)!"
|
||||
(erc-send-message (format "I'm using ERC %s with %s %s (%s%s) of %s."
|
||||
erc-version-string
|
||||
(if (featurep 'xemacs) "XEmacs" "GNU Emacs")
|
||||
emacs-version
|
||||
|
@ -3155,7 +3155,7 @@ the message given by REASON."
|
|||
x-toolkit-scroll-bars)))
|
||||
"")
|
||||
(if (featurep 'multi-tty) ", multi-tty" ""))
|
||||
(concat ", built " erc-emacs-build-time)))
|
||||
erc-emacs-build-time))
|
||||
t)
|
||||
|
||||
(defun erc-cmd-SM ()
|
||||
|
@ -3490,7 +3490,7 @@ If FACE is non-nil, it will be used to propertize the prompt. If it is nil,
|
|||
If `point' is at the beginning of a channel name, use that as default."
|
||||
(interactive
|
||||
(list
|
||||
(let ((chnl (if (looking-at "\\([&#+!][^ ]+\\)") (match-string 1) ""))
|
||||
(let ((chnl (if (looking-at "\\([&#+!][^ \n]+\\)") (match-string 1) ""))
|
||||
(table (when (erc-server-buffer-live-p)
|
||||
(set-buffer (process-buffer erc-server-process))
|
||||
erc-channel-list)))
|
||||
|
@ -4734,12 +4734,12 @@ EmacsSpeak support."
|
|||
|
||||
Return a list of the three separate tokens."
|
||||
(cond
|
||||
((string-match "^\\([^!]*\\)!\\([^@]*\\)@\\(.*\\)$" string)
|
||||
((string-match "^\\([^!\n]*\\)!\\([^@\n]*\\)@\\(.*\\)$" string)
|
||||
(list (match-string 1 string)
|
||||
(match-string 2 string)
|
||||
(match-string 3 string)))
|
||||
;; Some bogus bouncers send Nick!(null), try to live with that.
|
||||
((string-match "^\\([^!]*\\)!\\(.*\\)$" string)
|
||||
((string-match "^\\([^!\n]*\\)!\\(.*\\)$" string)
|
||||
(list (match-string 1 string)
|
||||
""
|
||||
(match-string 2 string)))
|
||||
|
@ -5053,7 +5053,7 @@ user matches any regexp in `erc-ignore-reply-list'."
|
|||
"Return the addressed target in MSG.
|
||||
|
||||
The addressed target is the string before the first colon in MSG."
|
||||
(if (string-match "^\\([^: ]*\\):" msg)
|
||||
(if (string-match "^\\([^: \n]*\\):" msg)
|
||||
(match-string 1 msg)
|
||||
nil))
|
||||
|
||||
|
|
|
@ -444,14 +444,19 @@ use `before-save-hook'.")
|
|||
|
||||
(defcustom enable-local-variables t
|
||||
"*Control use of local variables in files you visit.
|
||||
The value can be t, nil or something else.
|
||||
The value can be t, nil, :safe, or something else.
|
||||
|
||||
A value of t means file local variables specifications are obeyed
|
||||
if all the specified variable values are safe; if any values are
|
||||
not safe, Emacs queries you, once, whether to set them all.
|
||||
\(When you say yes to certain values, they are remembered as safe.)
|
||||
|
||||
:safe means set the safe variables, and ignore the rest.
|
||||
nil means always ignore the file local variables.
|
||||
|
||||
A value of nil means always ignore the file local variables.
|
||||
Any other value means always query you once whether to set them all.
|
||||
\(When you say yes to certain values, they are remembered as safe, but
|
||||
this has no effect when `enable-local-variables' is \"something else\".)
|
||||
|
||||
This variable also controls use of major modes specified in
|
||||
a -*- line.
|
||||
|
@ -460,6 +465,7 @@ The command \\[normal-mode], when used interactively,
|
|||
always obeys file local variable specifications and the -*- line,
|
||||
and ignores this variable."
|
||||
:type '(choice (const :tag "Obey" t)
|
||||
(const :tag "Safe Only" :safe)
|
||||
(const :tag "Ignore" nil)
|
||||
(other :tag "Query" other))
|
||||
:group 'find-file)
|
||||
|
@ -1779,8 +1785,7 @@ Uses the visited file name, the -*- line, and the local variables spec.
|
|||
|
||||
This function is called automatically from `find-file'. In that case,
|
||||
we may set up the file-specified mode and local variables,
|
||||
depending on the value of `enable-local-variables': if it is t, we do;
|
||||
if it is nil, we don't; otherwise, we query.
|
||||
depending on the value of `enable-local-variables'.
|
||||
In addition, if `local-enable-local-variables' is nil, we do
|
||||
not set local variables (though we do notice a mode specified with -*-.)
|
||||
|
||||
|
@ -2413,8 +2418,7 @@ n -- to ignore the local variables list.")
|
|||
""
|
||||
", or C-v to scroll")))
|
||||
(goto-char (point-min))
|
||||
(let ((inhibit-quit t)
|
||||
(cursor-in-echo-area t)
|
||||
(let ((cursor-in-echo-area t)
|
||||
(exit-chars
|
||||
(if offer-save '(?! ?y ?n ?\s ?\C-g) '(?y ?n ?\s ?\C-g)))
|
||||
done)
|
||||
|
@ -2426,9 +2430,7 @@ n -- to ignore the local variables list.")
|
|||
(condition-case nil
|
||||
(scroll-up)
|
||||
(error (goto-char (point-min))))
|
||||
(setq done (memq (downcase char) exit-chars)))))
|
||||
(if (= char ?\C-g)
|
||||
(setq quit-flag nil)))
|
||||
(setq done (memq (downcase char) exit-chars))))))
|
||||
(setq char (downcase char))
|
||||
(when (and offer-save (= char ?!) unsafe-vars)
|
||||
(dolist (elt unsafe-vars)
|
||||
|
@ -2616,13 +2618,22 @@ is specified, returning t if it is specified."
|
|||
(and (risky-local-variable-p var val)
|
||||
(push elt risky-vars))
|
||||
(push elt unsafe-vars))))
|
||||
(if (or (and (eq enable-local-variables t)
|
||||
(null unsafe-vars)
|
||||
(null risky-vars))
|
||||
(hack-local-variables-confirm
|
||||
result unsafe-vars risky-vars))
|
||||
(if (eq enable-local-variables :safe)
|
||||
;; If caller wants only the safe variables,
|
||||
;; install only them.
|
||||
(dolist (elt result)
|
||||
(hack-one-local-variable (car elt) (cdr elt)))))
|
||||
(unless (or (memq (car elt) unsafe-vars)
|
||||
(memq (car elt) risky-vars))
|
||||
(hack-one-local-variable (car elt) (cdr elt))))
|
||||
;; Query, except in the case where all are known safe
|
||||
;; if the user wants no quuery in that case.
|
||||
(if (or (and (eq enable-local-variables t)
|
||||
(null unsafe-vars)
|
||||
(null risky-vars))
|
||||
(hack-local-variables-confirm
|
||||
result unsafe-vars risky-vars))
|
||||
(dolist (elt result)
|
||||
(hack-one-local-variable (car elt) (cdr elt))))))
|
||||
(run-hooks 'hack-local-variables-hook))))))
|
||||
|
||||
(defun safe-local-variable-p (sym val)
|
||||
|
@ -2678,12 +2689,14 @@ It is dangerous if either of these conditions are met:
|
|||
(and (eq (car exp) 'put)
|
||||
(hack-one-local-variable-quotep (nth 1 exp))
|
||||
(hack-one-local-variable-quotep (nth 2 exp))
|
||||
(memq (nth 1 (nth 2 exp))
|
||||
'(lisp-indent-hook))
|
||||
;; Only allow safe values of lisp-indent-hook;
|
||||
;; not functions.
|
||||
(or (numberp (nth 3 exp))
|
||||
(equal (nth 3 exp) ''defun)))
|
||||
(let ((prop (nth 1 (nth 2 exp))) (val (nth 3 exp)))
|
||||
(cond ((eq prop 'lisp-indent-hook)
|
||||
;; Only allow safe values of lisp-indent-hook;
|
||||
;; not functions.
|
||||
(or (numberp val) (equal val ''defun)))
|
||||
((eq prop 'edebug-form-spec)
|
||||
;; Only allow indirect form specs.
|
||||
(edebug-basic-spec val)))))
|
||||
;; Allow expressions that the user requested.
|
||||
(member exp safe-local-eval-forms)
|
||||
;; Certain functions can be allowed with safe arguments
|
||||
|
|
|
@ -104,6 +104,8 @@
|
|||
(define-key map [mouse-2] 'finder-mouse-select)
|
||||
(define-key map "\C-m" 'finder-select)
|
||||
(define-key map "?" 'finder-summary)
|
||||
(define-key map "n" 'next-line)
|
||||
(define-key map "p" 'previous-line)
|
||||
(define-key map "q" 'finder-exit)
|
||||
(define-key map "d" 'finder-list-keywords)
|
||||
map))
|
||||
|
|
|
@ -1,3 +1,59 @@
|
|||
2006-04-12 Ralf Angeli <angeli@iwi.uni-sb.de>
|
||||
|
||||
* flow-fill.el (fill-flowed): Remove trailing space from blank
|
||||
quoted lines.
|
||||
|
||||
2006-04-12 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus-art.el (gnus-article-mode): Set
|
||||
cursor-in-non-selected-windows to nil.
|
||||
|
||||
2006-04-12 Katsumi Yamaoka <yamaoka@jpl.org>
|
||||
|
||||
* gnus-art.el (gnus-mime-view-part-as-charset): Ignore charset
|
||||
that the part specifies.
|
||||
|
||||
* mm-decode.el (mm-display-part): Work with external parts and
|
||||
usual parts similarly.
|
||||
|
||||
* mm-extern.el (mm-inline-external-body): Use mm-display-part
|
||||
instead of gnus-display-mime.
|
||||
|
||||
* gnus-uu.el (gnus-uu-save-article): Put mml tags instead of part
|
||||
tag to summarized topics part in order to encode non-ASCII text.
|
||||
|
||||
2006-04-11 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus-art.el (gnus-button-valid-localpart-regexp): Exclude `@'.
|
||||
|
||||
2006-04-11 Arne J,Ax(Brgensen <arne@arnested.dk>
|
||||
|
||||
* gnus-sieve.el (gnus-sieve-generate): Delete from the start of
|
||||
the sieve region.
|
||||
|
||||
2006-04-11 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus.el: Gnus v5.10.8 is released.
|
||||
|
||||
2006-04-11 Lars Magne Ingebrigtsen <larsi@gnus.org>
|
||||
|
||||
* nnslashdot.el (nnslashdot-retrieve-headers-1): Fix up to new
|
||||
layout.
|
||||
|
||||
* rfc2047.el (rfc2047-decode-encoded-words): Don't message about
|
||||
unknown charset.
|
||||
|
||||
* message.el (message-header-synonyms): Add Original-To to the
|
||||
default.
|
||||
|
||||
* gnus-sum.el (gnus-get-newsgroup-headers-xover): group is an
|
||||
optional parameter.
|
||||
|
||||
2006-04-07 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* pgg-gpg.el: Revert to revision 7.15 to allow the use of
|
||||
gpg-agent.
|
||||
|
||||
2006-04-06 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus-fun.el (gnus): Require it for gnus-directory.
|
||||
|
|
|
@ -114,7 +114,7 @@ RFC 2646 suggests 66 characters for readability."
|
|||
(set-buffer (or (current-buffer) buffer))
|
||||
(goto-char (point-min))
|
||||
;; Remove space stuffing.
|
||||
(while (re-search-forward "^ " nil t)
|
||||
(while (re-search-forward "^\\( \\|>+ $\\)" nil t)
|
||||
(delete-char -1)
|
||||
(forward-line 1))
|
||||
(goto-char (point-min))
|
||||
|
|
|
@ -3809,6 +3809,7 @@ commands:
|
|||
(make-local-variable 'gnus-article-ignored-charsets)
|
||||
;; Prevent recent Emacsen from displaying non-break space as "\ ".
|
||||
(set (make-local-variable 'nobreak-char-display) nil)
|
||||
(setq cursor-in-non-selected-windows nil)
|
||||
(gnus-set-default-directory)
|
||||
(buffer-disable-undo)
|
||||
(setq buffer-read-only t)
|
||||
|
@ -4477,19 +4478,29 @@ are decompressed."
|
|||
specified charset."
|
||||
(interactive (list nil current-prefix-arg))
|
||||
(gnus-article-check-buffer)
|
||||
(let* ((handle (or handle (get-text-property (point) 'gnus-data)))
|
||||
contents charset
|
||||
(b (point))
|
||||
(inhibit-read-only t))
|
||||
(let ((handle (or handle (get-text-property (point) 'gnus-data)))
|
||||
(fun (get-text-property (point) 'gnus-callback))
|
||||
(gnus-newsgroup-ignored-charsets 'gnus-all)
|
||||
gnus-newsgroup-charset type charset)
|
||||
(when handle
|
||||
(if (mm-handle-undisplayer handle)
|
||||
(mm-remove-part handle))
|
||||
(let ((gnus-newsgroup-charset
|
||||
(or (cdr (assq arg
|
||||
gnus-summary-show-article-charset-alist))
|
||||
(mm-read-coding-system "Charset: ")))
|
||||
(gnus-newsgroup-ignored-charsets 'gnus-all))
|
||||
(gnus-article-press-button)))))
|
||||
(when fun
|
||||
(setq gnus-newsgroup-charset
|
||||
(or (cdr (assq arg gnus-summary-show-article-charset-alist))
|
||||
(mm-read-coding-system "Charset: ")))
|
||||
;; Strip the charset parameter from `handle'.
|
||||
(setq type (mm-handle-type
|
||||
(if (equal (mm-handle-media-type handle)
|
||||
"message/external-body")
|
||||
(progn
|
||||
(unless (mm-handle-cache handle)
|
||||
(mm-extern-cache-contents handle))
|
||||
(mm-handle-cache handle))
|
||||
handle))
|
||||
charset (assq 'charset (cdr type)))
|
||||
(delq charset type)
|
||||
(funcall fun handle)))))
|
||||
|
||||
(defun gnus-mime-view-part-externally (&optional handle)
|
||||
"View the MIME part under point with an external viewer."
|
||||
|
@ -5972,7 +5983,7 @@ groups."
|
|||
|
||||
;; Regexp suggested by Felix Wiemann in <87oeuomcz9.fsf@news2.ososo.de>
|
||||
(defcustom gnus-button-valid-localpart-regexp
|
||||
"[a-z0-9$%(*-=?[_][^<>\")!;:,{}\n\t ]*"
|
||||
"[a-z0-9$%(*-=?[_][^<>\")!;:,{}\n\t @]*"
|
||||
"Regular expression that matches a localpart of mail addresses or MIDs."
|
||||
:version "22.1"
|
||||
:group 'gnus-article-buttons
|
||||
|
|
|
@ -107,7 +107,7 @@ See the documentation for these variables and functions for details."
|
|||
(find-file gnus-sieve-file)
|
||||
(goto-char (point-min))
|
||||
(if (re-search-forward (regexp-quote gnus-sieve-region-start) nil t)
|
||||
(delete-region (match-end 0)
|
||||
(delete-region (match-beginning 0)
|
||||
(or (re-search-forward (regexp-quote
|
||||
gnus-sieve-region-end) nil t)
|
||||
(point)))
|
||||
|
|
|
@ -5962,7 +5962,8 @@ Return a list of headers that match SEQUENCE (see
|
|||
(allp (cond
|
||||
((eq gnus-read-all-available-headers t)
|
||||
t)
|
||||
((stringp gnus-read-all-available-headers)
|
||||
((and (stringp gnus-read-all-available-headers)
|
||||
group)
|
||||
(string-match gnus-read-all-available-headers group))
|
||||
(t
|
||||
nil)))
|
||||
|
|
|
@ -839,7 +839,9 @@ When called interactively, prompt for REGEXP."
|
|||
"Date: %s\nFrom: %s\nSubject: %s Digest\n\n"
|
||||
(message-make-date) name name))
|
||||
(when (and message-forward-as-mime gnus-uu-digest-buffer)
|
||||
(insert "<#part type=message/rfc822>\nSubject: Topics\n\n"))
|
||||
(insert
|
||||
"<#mml type=message/rfc822>\nSubject: Topics\n\n<#/mml>\n")
|
||||
(forward-line -1))
|
||||
(insert "Topics:\n")))
|
||||
(when (not (eq in-state 'end))
|
||||
(setq state (list 'middle))))
|
||||
|
|
|
@ -2749,7 +2749,8 @@ prefix FORCE is given."
|
|||
(message-carefully-insert-headers headers)))
|
||||
|
||||
(defcustom message-header-synonyms
|
||||
'((To Cc Bcc))
|
||||
'((To Cc Bcc)
|
||||
(Original-To))
|
||||
"List of lists of header synonyms.
|
||||
E.g., if this list contains a member list with elements `Cc' and `To',
|
||||
then `message-carefully-insert-headers' will not insert a `To' header
|
||||
|
|
|
@ -672,7 +672,14 @@ external if displayed external."
|
|||
(mailcap-parse-mailcaps)
|
||||
(if (mm-handle-displayed-p handle)
|
||||
(mm-remove-part handle)
|
||||
(let* ((type (mm-handle-media-type handle))
|
||||
(let* ((ehandle (if (equal (mm-handle-media-type handle)
|
||||
"message/external-body")
|
||||
(progn
|
||||
(unless (mm-handle-cache handle)
|
||||
(mm-extern-cache-contents handle))
|
||||
(mm-handle-cache handle))
|
||||
handle))
|
||||
(type (mm-handle-media-type ehandle))
|
||||
(method (mailcap-mime-info type))
|
||||
(filename (or (mail-content-type-get
|
||||
(mm-handle-disposition handle) 'filename)
|
||||
|
@ -680,8 +687,8 @@ external if displayed external."
|
|||
(mm-handle-type handle) 'name)
|
||||
"<file>"))
|
||||
(external mm-enable-external))
|
||||
(if (and (mm-inlinable-p handle)
|
||||
(mm-inlined-p handle))
|
||||
(if (and (mm-inlinable-p ehandle)
|
||||
(mm-inlined-p ehandle))
|
||||
(progn
|
||||
(forward-line 1)
|
||||
(mm-display-inline handle)
|
||||
|
@ -689,7 +696,7 @@ external if displayed external."
|
|||
(when (or method
|
||||
(not no-default))
|
||||
(if (and (not method)
|
||||
(equal "text" (car (split-string type))))
|
||||
(equal "text" (car (split-string type "/"))))
|
||||
(progn
|
||||
(forward-line 1)
|
||||
(mm-insert-inline handle (mm-get-part handle))
|
||||
|
|
|
@ -157,25 +157,11 @@ If NO-DISPLAY is nil, display it. Otherwise, do nothing after replacing."
|
|||
(save-excursion
|
||||
(save-restriction
|
||||
(narrow-to-region (point) (point))
|
||||
(let* ((type (regexp-quote
|
||||
(mm-handle-media-type (mm-handle-cache handle))))
|
||||
;; Force the part to be displayed (but if there is no
|
||||
;; method to display, a user will be prompted to save).
|
||||
;; See `gnus-mime-display-single'.
|
||||
(mm-inline-override-types nil)
|
||||
(mm-attachment-override-types
|
||||
(cons type mm-attachment-override-types))
|
||||
(mm-automatic-display (cons type mm-automatic-display))
|
||||
(mm-automatic-external-display
|
||||
(cons type mm-automatic-external-display))
|
||||
;; Suppress adding of button to the cached part.
|
||||
(gnus-inhibit-mime-unbuttonizing nil))
|
||||
(gnus-display-mime (mm-handle-cache handle)))
|
||||
;; Move undisplayer added to the cached handle to the parent.
|
||||
(mm-handle-set-undisplayer
|
||||
handle
|
||||
(mm-handle-undisplayer (mm-handle-cache handle)))
|
||||
(mm-handle-set-undisplayer (mm-handle-cache handle) nil)))))
|
||||
(mm-display-part (mm-handle-cache handle))))
|
||||
;; Move undisplayer added to the cached handle to the parent.
|
||||
(mm-handle-set-undisplayer
|
||||
handle (mm-handle-undisplayer (mm-handle-cache handle)))
|
||||
(mm-handle-set-undisplayer (mm-handle-cache handle) nil)))
|
||||
|
||||
(provide 'mm-extern)
|
||||
|
||||
|
|
|
@ -142,7 +142,7 @@
|
|||
(setq article (if (and article (< start article)) article start))
|
||||
(goto-char point)
|
||||
(while (re-search-forward
|
||||
"<a name=\"\\([0-9]+\\)\">\\([^<]+\\)</a>.*\n.*score:\\([^)]+\\))"
|
||||
"<a name=\"\\([0-9]+\\)\">\\([^<]+\\)</a>.*\n.*\n.*score:\\([^)]+\\))"
|
||||
nil t)
|
||||
(setq cid (match-string 1)
|
||||
subject (match-string 2)
|
||||
|
|
|
@ -851,11 +851,8 @@ ENCODED-WORD)."
|
|||
(let (word charset cs encoding text rest)
|
||||
(while words
|
||||
(setq word (pop words))
|
||||
(if (and (or (setq cs (rfc2047-charset-to-coding-system
|
||||
(setq charset (car word))))
|
||||
(progn
|
||||
(message "Unknown charset: %s" charset)
|
||||
nil))
|
||||
(if (and (setq cs (rfc2047-charset-to-coding-system
|
||||
(setq charset (car word))))
|
||||
(condition-case code
|
||||
(cond ((char-equal ?B (nth 1 word))
|
||||
(setq text (base64-decode-string
|
||||
|
|
74
lisp/hexl.el
74
lisp/hexl.el
|
@ -38,7 +38,7 @@
|
|||
;; grouping.
|
||||
;;
|
||||
;; -iso in `hexl-options' will allow iso characters to display in the
|
||||
;; ASCII region of the screen (if your emacs supports this) instead of
|
||||
;; ASCII region of the screen (if your Emacs supports this) instead of
|
||||
;; changing them to dots.
|
||||
|
||||
;;; Code:
|
||||
|
@ -62,7 +62,7 @@ and \"-de\" when dehexlifying a buffer."
|
|||
:group 'hexl)
|
||||
|
||||
(defcustom hexl-iso ""
|
||||
"If your emacs can handle ISO characters, this should be set to
|
||||
"If your Emacs can handle ISO characters, this should be set to
|
||||
\"-iso\" otherwise it should be \"\"."
|
||||
:type 'string
|
||||
:group 'hexl)
|
||||
|
@ -229,7 +229,7 @@ You can use \\[hexl-find-file] to visit a file in Hexl mode.
|
|||
original-point))
|
||||
(or (bolp) (setq original-point (1- original-point))))
|
||||
(hexlify-buffer)
|
||||
(set-buffer-modified-p modified))
|
||||
(restore-buffer-modified-p modified))
|
||||
(make-local-variable 'hexl-max-address)
|
||||
(setq hexl-max-address max-address)
|
||||
(condition-case nil
|
||||
|
@ -300,9 +300,16 @@ You can use \\[hexl-find-file] to visit a file in Hexl mode.
|
|||
(lambda (string &optional bound noerror count)
|
||||
(funcall
|
||||
(if isearch-forward 're-search-forward 're-search-backward)
|
||||
(if (> (length string) 80)
|
||||
(regexp-quote string)
|
||||
(mapconcat 'string string "\\(?:\n\\(?:[:a-f0-9]+ \\)+ \\)?"))
|
||||
(let ((textre
|
||||
(if (> (length string) 80)
|
||||
(regexp-quote string)
|
||||
(mapconcat (lambda (c) (regexp-quote (string c))) string
|
||||
"\\(?:\n\\(?:[:a-f0-9]+ \\)+ \\)?"))))
|
||||
(if (string-match "\\` ?\\([a-f0-9]+ \\)*[a-f0-9]+ ?\\'" string)
|
||||
(concat textre "\\|"
|
||||
(mapconcat 'regexp-quote (split-string string " ")
|
||||
" \\(?: .+\n[a-f0-9]+: \\)?"))
|
||||
textre))
|
||||
bound noerror count))
|
||||
(let ((isearch-search-fun-function nil))
|
||||
(isearch-search-fun))))
|
||||
|
@ -318,34 +325,33 @@ You can use \\[hexl-find-file] to visit a file in Hexl mode.
|
|||
"Save a hexl format buffer as binary in visited file if modified."
|
||||
(interactive)
|
||||
(if hexl-in-save-buffer nil
|
||||
(set-buffer-modified-p (if (buffer-modified-p)
|
||||
(save-excursion
|
||||
(let ((buf (generate-new-buffer " hexl"))
|
||||
(name (buffer-name))
|
||||
(file-name (buffer-file-name))
|
||||
(start (point-min))
|
||||
(end (point-max))
|
||||
modified)
|
||||
(set-buffer buf)
|
||||
(insert-buffer-substring name start end)
|
||||
(set-buffer name)
|
||||
(dehexlify-buffer)
|
||||
;; Prevent infinite recursion.
|
||||
(let ((hexl-in-save-buffer t))
|
||||
(save-buffer))
|
||||
(setq modified (buffer-modified-p))
|
||||
(delete-region (point-min) (point-max))
|
||||
(insert-buffer-substring buf start end)
|
||||
(kill-buffer buf)
|
||||
modified))
|
||||
(message "(No changes need to be saved)")
|
||||
nil))
|
||||
(restore-buffer-modified-p
|
||||
(if (buffer-modified-p)
|
||||
(let ((buf (generate-new-buffer " hexl"))
|
||||
(name (buffer-name))
|
||||
(start (point-min))
|
||||
(end (point-max))
|
||||
modified)
|
||||
(with-current-buffer buf
|
||||
(insert-buffer-substring name start end)
|
||||
(set-buffer name)
|
||||
(dehexlify-buffer)
|
||||
;; Prevent infinite recursion.
|
||||
(let ((hexl-in-save-buffer t))
|
||||
(save-buffer))
|
||||
(setq modified (buffer-modified-p))
|
||||
(delete-region (point-min) (point-max))
|
||||
(insert-buffer-substring buf start end)
|
||||
(kill-buffer buf)
|
||||
modified))
|
||||
(message "(No changes need to be saved)")
|
||||
nil))
|
||||
;; Return t to indicate we have saved t
|
||||
t))
|
||||
|
||||
;;;###autoload
|
||||
(defun hexl-find-file (filename)
|
||||
"Edit file FILENAME in hexl-mode.
|
||||
"Edit file FILENAME in `hexl-mode'.
|
||||
Switch to a buffer visiting file FILENAME, creating one in none exists."
|
||||
(interactive
|
||||
(list
|
||||
|
@ -367,7 +373,7 @@ With arg, don't unhexlify buffer."
|
|||
(original-point (1+ (hexl-current-address))))
|
||||
(dehexlify-buffer)
|
||||
(remove-hook 'write-contents-functions 'hexl-save-buffer t)
|
||||
(set-buffer-modified-p modified)
|
||||
(restore-buffer-modified-p modified)
|
||||
(goto-char original-point)
|
||||
;; Maybe adjust point for the removed CR characters.
|
||||
(when (eq (coding-system-eol-type buffer-file-coding-system) 1)
|
||||
|
@ -403,7 +409,7 @@ Ask the user for confirmation."
|
|||
(original-point (1+ (hexl-current-address))))
|
||||
(dehexlify-buffer)
|
||||
(remove-hook 'write-contents-functions 'hexl-save-buffer t)
|
||||
(set-buffer-modified-p modified)
|
||||
(restore-buffer-modified-p modified)
|
||||
(goto-char original-point))))
|
||||
|
||||
(defun hexl-current-address (&optional validate)
|
||||
|
@ -917,14 +923,14 @@ Customize the variable `hexl-follow-ascii' to disable this feature."
|
|||
)))))
|
||||
|
||||
(defun hexl-activate-ruler ()
|
||||
"Activate `ruler-mode'"
|
||||
"Activate `ruler-mode'."
|
||||
(require 'ruler-mode)
|
||||
(set (make-local-variable 'ruler-mode-ruler-function)
|
||||
'hexl-mode-ruler)
|
||||
(ruler-mode 1))
|
||||
|
||||
(defun hexl-follow-line ()
|
||||
"Activate `hl-line-mode'"
|
||||
"Activate `hl-line-mode'."
|
||||
(require 'frame)
|
||||
(require 'hl-line)
|
||||
(with-no-warnings
|
||||
|
@ -1071,5 +1077,5 @@ This function is assumed to be used as call back function for `hl-line-mode'."
|
|||
|
||||
(provide 'hexl)
|
||||
|
||||
;;; arch-tag: d5a7aa8a-9bce-480b-bcff-6c4c7ca5ea4a
|
||||
;; arch-tag: d5a7aa8a-9bce-480b-bcff-6c4c7ca5ea4a
|
||||
;;; hexl.el ends here
|
||||
|
|
|
@ -2476,7 +2476,9 @@ See also `locale-charset-language-names', `locale-language-names',
|
|||
;; If a specific EOL conversion was specified in the default
|
||||
;; buffer-file-coding-system, preserve it in the coding system
|
||||
;; we will be using from now on.
|
||||
(if (memq default-eol-type '(0 1 2 unix dos mac))
|
||||
(if (and (memq default-eol-type '(0 1 2 unix dos mac))
|
||||
coding-system
|
||||
(coding-system-p coding-system))
|
||||
(setq coding-system (coding-system-change-eol-conversion
|
||||
coding-system default-eol-type)))
|
||||
|
||||
|
|
|
@ -32,6 +32,8 @@
|
|||
|
||||
;;; Code:
|
||||
|
||||
(eval-when-compile (require 'cl))
|
||||
|
||||
(defun feature-symbols (feature)
|
||||
"Return the file and list of definitions associated with FEATURE.
|
||||
The value is actually the element of `load-history'
|
||||
|
@ -207,23 +209,29 @@ such as redefining an Emacs function."
|
|||
(elp-restore-function elt))))
|
||||
(dolist (x unload-hook-features-list)
|
||||
(if (consp x)
|
||||
(cond
|
||||
(case (car x)
|
||||
;; Remove any feature names that this file provided.
|
||||
((eq (car x) 'provide)
|
||||
(provide
|
||||
(setq features (delq (cdr x) features)))
|
||||
((eq (car x) 'defun)
|
||||
(defun
|
||||
(let ((fun (cdr x)))
|
||||
(when (fboundp fun)
|
||||
(when (fboundp 'ad-unadvise)
|
||||
(ad-unadvise fun))
|
||||
(fmakunbound fun)
|
||||
(let ((aload (get fun 'autoload)))
|
||||
(when aload
|
||||
(fset fun (cons 'autoload aload))))))))
|
||||
(if aload
|
||||
(fset fun (cons 'autoload aload))
|
||||
(fmakunbound fun))))))
|
||||
(require nil)
|
||||
(t (message "Unexpected element %s in load-history" x)))
|
||||
;; Kill local values as much as possible.
|
||||
(dolist (buf (buffer-list))
|
||||
(with-current-buffer buf
|
||||
(if (and (boundp x) (timerp (symbol-value x)))
|
||||
(cancel-timer (symbol-value x)))
|
||||
(kill-local-variable x)))
|
||||
(if (and (boundp x) (timerp (symbol-value x)))
|
||||
(cancel-timer (symbol-value x)))
|
||||
;; Get rid of the default binding if we can.
|
||||
(unless (local-variable-if-set-p x)
|
||||
(makunbound x))))
|
||||
|
@ -232,5 +240,5 @@ such as redefining an Emacs function."
|
|||
|
||||
(provide 'loadhist)
|
||||
|
||||
;;; arch-tag: 70bb846a-c413-4f01-bf88-78dba4ac0798
|
||||
;; arch-tag: 70bb846a-c413-4f01-bf88-78dba4ac0798
|
||||
;;; loadhist.el ends here
|
||||
|
|
|
@ -623,7 +623,9 @@ the variable `rmail-mime-feature'.")
|
|||
|
||||
;;;###autoload
|
||||
(defvar rmail-mime-charset-pattern
|
||||
"^content-type:[ ]*text/plain;[ \t\n]*charset=\"?\\([^ \t\n\";]+\\)\"?"
|
||||
(concat "^content-type:[ ]*text/plain;"
|
||||
"\\(?:[ \t\n]*\\(format\\|delsp\\)=\"?[-a-z0-9]+\"?;\\)*"
|
||||
"[ \t\n]*charset=\"?\\([^ \t\n\";]+\\)\"?")
|
||||
"Regexp to match MIME-charset specification in a header of message.
|
||||
The first parenthesized expression should match the MIME-charset name.")
|
||||
|
||||
|
|
|
@ -1,3 +1,129 @@
|
|||
2006-04-15 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* mh-compat.el (mh-font-lock-add-keywords): Fix typo in docstring.
|
||||
|
||||
2006-04-14 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* mh-funcs.el (view-exit-action): No need to wrap defvar with
|
||||
eval-when-compile when shushing compiler.
|
||||
|
||||
* mh-mime.el (mh-identity-pgg-default-user-id): Ditto.
|
||||
|
||||
* mh-seq.el (view-exit-action): Ditto.
|
||||
|
||||
* mh-show.el (font-lock-auto-fontify): Ditto.
|
||||
|
||||
* mh-utils.el (mh-speed-flists-cache): Ditto
|
||||
|
||||
* mh-acros.el (struct, x, y): No need to wrap defvar with
|
||||
eval-when-compile when shushing compiler, even when
|
||||
mh-do-in-xemacs or another construct is used.
|
||||
|
||||
* mh-comp.el (sendmail-coding-system): Ditto.
|
||||
|
||||
* mh-e.el (mark-active): Ditto.
|
||||
|
||||
* mh-folder.el (desktop-save-buffer, font-lock-auto-fontify)
|
||||
(image-load-path, font-lock-defaults): Ditto.
|
||||
|
||||
* mh-letter.el (image-load-path, font-lock-defaults): Ditto.
|
||||
|
||||
* mh-mime.el (dots, type, ov)
|
||||
(mm-verify-function-alist, mm-decrypt-function-alist)
|
||||
(pressed-details): Ditto.
|
||||
|
||||
* mh-search.el (pick-folder, mh-do-in-xemacs)
|
||||
(mh-mairix-folder, mh-flists-search-folders)
|
||||
(which-func-mode, mh-speed-flists-inhibit-flag): Ditto.
|
||||
|
||||
* mh-seq.el (tool-bar-mode): Ditto.
|
||||
|
||||
* mh-utils.el (completion-root-regexp)
|
||||
(minibuffer-completing-file-name): Ditto.
|
||||
|
||||
* mh-xface.el (default-enable-multibyte-characters): Ditto.
|
||||
|
||||
* mh-compat.el (mh-font-lock-add-keywords): New alias for
|
||||
font-lock-add-keywords. Returns nil on XEmacs.
|
||||
|
||||
* mh-e.el: Add MH-E function and variable keywords such as
|
||||
mh-defun-compat and mh-defcustom to font-lock-keywords.
|
||||
|
||||
2006-04-13 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* mh-e.el (customize-package-emacs-version-alist)
|
||||
(mh-e, mh-alias, mh-folder, mh-folder-selection)
|
||||
(mh-identity, mh-inc, mh-junk, mh-letter, mh-ranges)
|
||||
(mh-scan-line-formats, mh-search, mh-sending-mail, )
|
||||
(mh-sequences, mh-show, mh-speedbar, mh-thread, mh-tool-bar)
|
||||
(mh-hooks, mh-faces, mh-alias-completion-ignore-case-flag)
|
||||
(mh-alias-expand-aliases-flag, mh-alias-flash-on-comma)
|
||||
(mh-alias-insert-file, mh-alias-insertion-location)
|
||||
(mh-alias-local-users, mh-alias-local-users-prefix)
|
||||
(mh-alias-passwd-gecos-comma-separator-flag)
|
||||
(mh-new-messages-folders, mh-ticked-messages-folders)
|
||||
(mh-large-folder, mh-recenter-summary-flag)
|
||||
(mh-recursive-folders-flag, mh-sortm-args)
|
||||
(mh-default-folder-for-message-function, )
|
||||
(mh-default-folder-list, mh-default-folder-must-exist-flag)
|
||||
(mh-default-folder-prefix, mh-identity-list)
|
||||
(mh-auto-fields-list, mh-auto-fields-prompt-flag)
|
||||
(mh-identity-default, mh-identity-handlers, mh-inc-prog)
|
||||
(mh-inc-spool-list, mh-junk-background, mh-junk-disposition)
|
||||
(mh-junk-program, mh-compose-insertion)
|
||||
(mh-compose-skipped-header-fields)
|
||||
(mh-compose-space-does-completion-flag)
|
||||
(mh-delete-yanked-msg-window-flag)
|
||||
(mh-extract-from-attribution-verb, mh-ins-buf-prefix)
|
||||
(mh-letter-complete-function, mh-letter-fill-column)
|
||||
(mh-mml-method-default, mh-signature-file-name)
|
||||
(mh-signature-separator-flag, mh-x-face-file, )
|
||||
(mh-yank-behavior, mh-interpret-number-as-range-flag)
|
||||
(mh-adaptive-cmd-note-flag, mh-scan-format-file, mh-scan-prog)
|
||||
(mh-search-program, mh-compose-forward-as-mime-flag)
|
||||
(mh-compose-letter-function, mh-compose-prompt-flag)
|
||||
(mh-forward-subject-format, mh-insert-x-mailer-flag)
|
||||
(mh-redist-full-contents-flag, mh-reply-default-reply-to)
|
||||
(mh-reply-show-message-flag, )
|
||||
(mh-refile-preserves-sequences-flag, mh-tick-seq)
|
||||
(mh-update-sequences-after-mh-show-flag)
|
||||
(mh-bury-show-buffer-flag, mh-clean-message-header-flag)
|
||||
(mh-decode-mime-flag, )
|
||||
(mh-display-buttons-for-alternatives-flag)
|
||||
(mh-display-buttons-for-inline-parts-flag)
|
||||
(mh-do-not-confirm-flag, mh-fetch-x-image-url)
|
||||
(mh-graphical-smileys-flag, mh-graphical-emphasis-flag)
|
||||
(mh-highlight-citation-style, mh-invisible-header-fields)
|
||||
(mh-invisible-header-fields-default, mh-lpr-command-format)
|
||||
(mh-max-inline-image-height, mh-max-inline-image-width)
|
||||
(mh-mhl-format-file, mh-mime-save-parts-default-directory)
|
||||
(mh-print-background-flag, mh-show-maximum-size)
|
||||
(mh-show-use-xface-flag, mh-store-default-directory)
|
||||
(mh-summary-height, mh-speed-update-interval)
|
||||
(mh-show-threads-flag, mh-tool-bar-search-function)
|
||||
(mh-defcustom, mh-after-commands-processed-hook)
|
||||
(mh-alias-reloaded-hook, mh-before-commands-processed-hook)
|
||||
(mh-before-quit-hook, mh-before-send-letter-hook)
|
||||
(mh-delete-msg-hook, mh-find-path-hook, mh-folder-mode-hook)
|
||||
(mh-forward-hook, mh-inc-folder-hook, )
|
||||
(mh-insert-signature-hook, )
|
||||
(mh-kill-folder-suppress-prompt-hooks, mh-letter-mode-hook)
|
||||
(mh-mh-to-mime-hook, mh-search-mode-hook, mh-quit-hook)
|
||||
(mh-refile-msg-hook, mh-show-hook, mh-show-mode-hook)
|
||||
(mh-unseen-updated-hook, mh-folder-address, mh-folder-body)
|
||||
(mh-folder-cur-msg-number, mh-folder-date, mh-folder-deleted)
|
||||
(mh-folder-followup, mh-folder-msg-number, mh-folder-refiled)
|
||||
(mh-folder-sent-to-me-hint, mh-folder-sent-to-me-sender)
|
||||
(mh-folder-subject, mh-folder-tick, mh-folder-to)
|
||||
(mh-letter-header-field, mh-search-folder, mh-show-cc)
|
||||
(mh-show-date, mh-show-from, mh-show-header, mh-show-pgg-bad)
|
||||
(mh-show-pgg-good, mh-show-pgg-unknown, mh-show-signature)
|
||||
(mh-show-subject, mh-show-to, mh-show-xface, )
|
||||
(mh-speedbar-folder, mh-speedbar-folder-with-unseen-messages)
|
||||
(mh-speedbar-selected-folder)
|
||||
(mh-speedbar-selected-folder-with-unseen-messages): Use dotted
|
||||
notation in :package-version keyword.
|
||||
|
||||
2006-04-07 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* mh-e.el (mh-path, mh-variant): Define with mh-defcustom and add
|
||||
|
|
|
@ -130,7 +130,9 @@ check if variable `transient-mark-mode' is active."
|
|||
(boundp 'mark-active) mark-active))))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (mh-do-in-xemacs (defvar struct) (defvar x) (defvar y)))
|
||||
(defvar struct) ; XEmacs
|
||||
(defvar x) ; XEmacs
|
||||
(defvar y) ; XEmacs
|
||||
|
||||
;;;###mh-autoload
|
||||
(defmacro mh-defstruct (name-spec &rest fields)
|
||||
|
|
|
@ -215,7 +215,7 @@ ignored."
|
|||
(setq other-headers (cdr other-headers)))))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (mh-do-in-xemacs (defvar sendmail-coding-system)))
|
||||
(defvar sendmail-coding-system) ; XEmacs
|
||||
|
||||
;;;###autoload
|
||||
(defun mh-send-letter (&optional arg)
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
;; versions of Gnus.
|
||||
|
||||
;; Items are listed alphabetically (except for mh-require which is
|
||||
;; needed by a lesser character).
|
||||
;; needed sooner it would normally appear).
|
||||
|
||||
(require 'mh-acros)
|
||||
|
||||
|
@ -115,6 +115,11 @@ introduced in Emacs 22."
|
|||
`(face-background ,face ,frame)
|
||||
`(face-background ,face ,frame ,inherit)))
|
||||
|
||||
(mh-defun-compat mh-font-lock-add-keywords font-lock-add-keywords
|
||||
(mode keywords &optional how)
|
||||
"XEmacs does not have `font-lock-add-keywords'.
|
||||
This function returns nil on that system.")
|
||||
|
||||
(mh-defun-compat mh-image-load-path-for-library
|
||||
image-load-path-for-library (library image &optional path no-error)
|
||||
"Return a suitable search path for images used by LIBRARY.
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -522,11 +522,10 @@ font-lock is done highlighting.")
|
|||
(add-to-list 'which-func-modes 'mh-folder-mode))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile
|
||||
(defvar desktop-save-buffer)
|
||||
(defvar font-lock-auto-fontify)
|
||||
(defvar image-load-path)
|
||||
(mh-do-in-xemacs (defvar font-lock-defaults)))
|
||||
(defvar desktop-save-buffer)
|
||||
(defvar font-lock-auto-fontify)
|
||||
(defvar image-load-path)
|
||||
(defvar font-lock-defaults) ; XEmacs
|
||||
|
||||
(defvar mh-folder-buttons-init-flag nil)
|
||||
|
||||
|
|
|
@ -138,7 +138,7 @@ Display the results only if something went wrong."
|
|||
(display-buffer mh-temp-buffer)))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (defvar view-exit-action))
|
||||
(defvar view-exit-action)
|
||||
|
||||
;;;###mh-autoload
|
||||
(defun mh-list-folders ()
|
||||
|
|
|
@ -278,9 +278,8 @@ searching for `mh-mail-header-separator' in the buffer."
|
|||
(defvar mh-letter-buttons-init-flag nil)
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile
|
||||
(defvar image-load-path)
|
||||
(mh-do-in-xemacs (defvar font-lock-defaults)))
|
||||
(defvar image-load-path)
|
||||
(defvar font-lock-defaults) ; XEmacs
|
||||
|
||||
;; Ensure new buffers won't get this mode if default-major-mode is nil.
|
||||
(put 'mh-letter-mode 'mode-class 'special)
|
||||
|
|
|
@ -825,7 +825,9 @@ being used to highlight the signature in a MIME part."
|
|||
;;; Button Display
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (mh-do-in-xemacs (defvar dots) (defvar type) (defvar ov)))
|
||||
(defvar dots) ; XEmacs
|
||||
(defvar type) ; XEmacs
|
||||
(defvar ov) ; XEmacs
|
||||
|
||||
(defun mh-insert-mime-button (handle index displayed)
|
||||
"Insert MIME button for HANDLE.
|
||||
|
@ -870,12 +872,9 @@ by commands like \"K v\" which operate on individual MIME parts."
|
|||
(mh-funcall-if-exists overlay-put ov 'evaporate t))))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile
|
||||
(when (< emacs-major-version 22)
|
||||
(defvar mm-verify-function-alist)
|
||||
(defvar mm-decrypt-function-alist))
|
||||
(mh-do-in-xemacs
|
||||
(defvar pressed-details)))
|
||||
(defvar mm-verify-function-alist) ; < Emacs 22
|
||||
(defvar mm-decrypt-function-alist) ; < Emacs 22
|
||||
(defvar pressed-details) ; XEmacs
|
||||
|
||||
(defun mh-insert-mime-security-button (handle)
|
||||
"Display buttons for PGP message, HANDLE."
|
||||
|
@ -1537,7 +1536,7 @@ a prefix argument NOCONFIRM."
|
|||
(after-find-file nil)))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (defvar mh-identity-pgg-default-user-id))
|
||||
(defvar mh-identity-pgg-default-user-id)
|
||||
|
||||
;;;###mh-autoload
|
||||
(defun mh-mml-secure-message-encrypt (method)
|
||||
|
|
|
@ -324,7 +324,7 @@ folder containing the index search results."
|
|||
count (> (hash-table-count msg-hash) 0)))))))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (mh-do-in-xemacs (defvar pick-folder)))
|
||||
(defvar pick-folder) ; XEmacs
|
||||
|
||||
(defun mh-search-folder (folder window-config)
|
||||
"Search FOLDER for messages matching a pattern.
|
||||
|
@ -404,10 +404,8 @@ or nothing to search all folders."
|
|||
(mh-index-sequenced-messages folders mh-tick-seq))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile
|
||||
(mh-do-in-xemacs
|
||||
(defvar mh-mairix-folder)
|
||||
(defvar mh-flists-search-folders)))
|
||||
(defvar mh-mairix-folder) ; XEmacs
|
||||
(defvar mh-flists-search-folders) ; XEmacs
|
||||
|
||||
;;;###mh-autoload
|
||||
(defun mh-index-sequenced-messages (folders sequence)
|
||||
|
@ -1414,9 +1412,7 @@ being the list of messages originally from that folder."
|
|||
(mh-require 'which-func nil t)
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile
|
||||
(if (or mh-xemacs-flag (< emacs-major-version 22))
|
||||
(defvar which-func-mode)))
|
||||
(defvar which-func-mode) ; < Emacs 22, XEmacs
|
||||
|
||||
;;;###mh-autoload
|
||||
(defun mh-index-create-imenu-index ()
|
||||
|
@ -1441,7 +1437,7 @@ being the list of messages originally from that folder."
|
|||
mh-index-data)
|
||||
|
||||
;; Shush compiler
|
||||
(eval-when-compile (if mh-xemacs-flag (defvar mh-speed-flists-inhibit-flag)))
|
||||
(defvar mh-speed-flists-inhibit-flag) ; XEmacs
|
||||
|
||||
;;;###mh-autoload
|
||||
(defun mh-index-execute-commands ()
|
||||
|
|
|
@ -134,7 +134,7 @@ you want to delete the messages, use \"\\[universal-argument]
|
|||
(apply #'mh-speed-flists t folders-changed))))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (defvar view-exit-action))
|
||||
(defvar view-exit-action)
|
||||
|
||||
;;;###mh-autoload
|
||||
(defun mh-list-sequences ()
|
||||
|
@ -202,7 +202,7 @@ MESSAGE appears."
|
|||
" "))))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (mh-do-in-xemacs (defvar tool-bar-mode)))
|
||||
(defvar tool-bar-mode) ; XEmacs
|
||||
|
||||
;;;###mh-autoload
|
||||
(defun mh-narrow-to-seq (sequence)
|
||||
|
|
|
@ -815,7 +815,7 @@ operation."
|
|||
(put 'mh-show-mode 'mode-class 'special)
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (defvar font-lock-auto-fontify))
|
||||
(defvar font-lock-auto-fontify)
|
||||
|
||||
;;;###mh-autoload
|
||||
(define-derived-mode mh-show-mode text-mode "MH-Show"
|
||||
|
|
|
@ -657,7 +657,7 @@ See `expand-file-name' for description of DEFAULT."
|
|||
(defvar mh-folder-hist nil)
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile (defvar mh-speed-flists-cache))
|
||||
(defvar mh-speed-flists-cache)
|
||||
|
||||
(defvar mh-allow-root-folder-flag nil
|
||||
"Non-nil means \"+\" is an acceptable folder name.
|
||||
|
@ -718,10 +718,8 @@ and FLAG determines whether the completion is over."
|
|||
(t (file-exists-p path))))))))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile
|
||||
(mh-do-in-xemacs
|
||||
(defvar completion-root-regexp)
|
||||
(defvar minibuffer-completing-file-name)))
|
||||
(defvar completion-root-regexp) ; XEmacs
|
||||
(defvar minibuffer-completing-file-name) ; XEmacs
|
||||
|
||||
(defun mh-folder-completing-read (prompt default allow-root-folder-flag)
|
||||
"Read folder name with PROMPT and default result DEFAULT.
|
||||
|
|
|
@ -60,8 +60,7 @@
|
|||
(funcall mh-show-xface-function)))
|
||||
|
||||
;; Shush compiler.
|
||||
(eval-when-compile
|
||||
(mh-do-in-xemacs (defvar default-enable-multibyte-characters)))
|
||||
(defvar default-enable-multibyte-characters) ; XEmacs
|
||||
|
||||
(defun mh-face-display-function ()
|
||||
"Display a Face, X-Face, or X-Image-URL header field.
|
||||
|
|
|
@ -3584,6 +3584,10 @@ the result will be a local, non-Tramp, filename."
|
|||
"Global variable keeping asynchronous process object.
|
||||
Used in `tramp-handle-shell-command'")
|
||||
|
||||
(defvar tramp-display-shell-command-buffer t
|
||||
"Whether to display output buffer of `shell-command'.
|
||||
This is necessary for handling DISPLAY of `process-file'.")
|
||||
|
||||
(defun tramp-handle-shell-command (command &optional output-buffer error-buffer)
|
||||
"Like `shell-command' for tramp files.
|
||||
This will break if COMMAND prints a newline, followed by the value of
|
||||
|
@ -3692,7 +3696,8 @@ This will break if COMMAND prints a newline, followed by the value of
|
|||
(skip-chars-forward "^ ")
|
||||
(setq status (read (current-buffer)))))
|
||||
(unless (zerop (buffer-size))
|
||||
(display-buffer output-buffer))
|
||||
(when tramp-display-shell-command-buffer
|
||||
(display-buffer output-buffer)))
|
||||
status))
|
||||
;; The following is only executed if something strange was
|
||||
;; happening. Emit a helpful message and do it anyway.
|
||||
|
@ -3707,11 +3712,10 @@ This will break if COMMAND prints a newline, followed by the value of
|
|||
(when (and (numberp buffer) (zerop buffer))
|
||||
(error "Implementation does not handle immediate return"))
|
||||
(when (consp buffer) (error "Implementation does not handle error files"))
|
||||
(shell-command
|
||||
(mapconcat 'tramp-shell-quote-argument
|
||||
(cons program args)
|
||||
" ")
|
||||
buffer))
|
||||
(let ((tramp-display-shell-command-buffer display))
|
||||
(shell-command
|
||||
(mapconcat 'tramp-shell-quote-argument (cons program args) " ")
|
||||
buffer)))
|
||||
|
||||
;; File Editing.
|
||||
|
||||
|
|
|
@ -895,6 +895,11 @@ indentation to be kept as it was before narrowing."
|
|||
(delete-char n)
|
||||
(setq ,bindent (- ,bindent n)))))))))))
|
||||
|
||||
(defun comment-add (arg)
|
||||
(if (and (null arg) (= (string-match "[ \t]*\\'" comment-start) 1))
|
||||
comment-add
|
||||
(1- (prefix-numeric-value arg))))
|
||||
|
||||
(defun comment-region-internal (beg end cs ce
|
||||
&optional ccs cce block lines indent)
|
||||
"Comment region BEG .. END.
|
||||
|
@ -999,7 +1004,6 @@ The strings used as comment starts are built from
|
|||
|
||||
(defun comment-region-default (beg end &optional arg)
|
||||
(let* ((numarg (prefix-numeric-value arg))
|
||||
(add comment-add)
|
||||
(style (cdr (assoc comment-style comment-styles)))
|
||||
(lines (nth 2 style))
|
||||
(block (nth 1 style))
|
||||
|
@ -1032,8 +1036,7 @@ The strings used as comment starts are built from
|
|||
((consp arg) (uncomment-region beg end))
|
||||
((< numarg 0) (uncomment-region beg end (- numarg)))
|
||||
(t
|
||||
(setq numarg (if (and (null arg) (= (length comment-start) 1))
|
||||
add (1- numarg)))
|
||||
(setq numarg (comment-add arg))
|
||||
(comment-region-internal
|
||||
beg end
|
||||
(let ((s (comment-padright comment-start numarg)))
|
||||
|
@ -1091,9 +1094,8 @@ You can configure `comment-style' to change the way regions are commented."
|
|||
;; FIXME: If there's no comment to kill on this line and ARG is
|
||||
;; specified, calling comment-kill is not very clever.
|
||||
(if arg (comment-kill (and (integerp arg) arg)) (comment-indent))
|
||||
(let ((add (if arg (prefix-numeric-value arg)
|
||||
(if (= (length comment-start) 1) comment-add 0))))
|
||||
;; Some modes insist on keeping column 0 comment in column 0
|
||||
(let ((add (comment-add arg)))
|
||||
;; Some modes insist on keeping column 0 comment in column 0
|
||||
;; so we need to move away from it before inserting the comment.
|
||||
(indent-according-to-mode)
|
||||
(insert (comment-padright comment-start add))
|
||||
|
|
|
@ -271,8 +271,8 @@ The remaining KEYS are passed directly to `cvs-create-fileinfo'."
|
|||
;; on the current branch (either because it only exists in other
|
||||
;; branches, or because it's been removed).
|
||||
(if (ignore-errors
|
||||
(with-current-buffer
|
||||
(find-file-noselect (expand-file-name
|
||||
(with-temp-buffer
|
||||
(insert-file-contents (expand-file-name
|
||||
".cvsignore" (file-name-directory dir)))
|
||||
(goto-char (point-min))
|
||||
(re-search-forward
|
||||
|
|
|
@ -211,22 +211,24 @@
|
|||
(defvar lm-emacs-won ()
|
||||
"*For making font-lock use the winner's face for the line.")
|
||||
|
||||
(defvar lm-font-lock-face-O
|
||||
(if (display-color-p)
|
||||
(list (facemenu-get-face 'fg:red) 'bold))
|
||||
"*Face to use for Emacs' O.")
|
||||
(defface lm-font-lock-face-O '((((class color)) :foreground "red")
|
||||
(t :weight bold))
|
||||
"*Face to use for Emacs' O."
|
||||
:version "22.1"
|
||||
:group 'lm)
|
||||
|
||||
(defvar lm-font-lock-face-X
|
||||
(if (display-color-p)
|
||||
(list (facemenu-get-face 'fg:green) 'bold))
|
||||
"*Face to use for your X.")
|
||||
(defface lm-font-lock-face-X '((((class color)) :foreground "green")
|
||||
(t :weight bold))
|
||||
"*Face to use for your X."
|
||||
:version "22.1"
|
||||
:group 'lm)
|
||||
|
||||
(defvar lm-font-lock-keywords
|
||||
'(("O" . lm-font-lock-face-O)
|
||||
("X" . lm-font-lock-face-X)
|
||||
'(("O" . 'lm-font-lock-face-O)
|
||||
("X" . 'lm-font-lock-face-X)
|
||||
("[-|/\\]" 0 (if lm-emacs-won
|
||||
lm-font-lock-face-O
|
||||
lm-font-lock-face-X)))
|
||||
'lm-font-lock-face-O
|
||||
'lm-font-lock-face-X)))
|
||||
"*Font lock rules for Lm.")
|
||||
|
||||
(put 'lm-mode 'front-sticky
|
||||
|
|
|
@ -267,7 +267,8 @@ the evaluated constant value at compile time."
|
|||
["Hungry delete" c-toggle-hungry-state
|
||||
:style toggle :selected c-hungry-delete-key]
|
||||
["Subword mode" c-subword-mode
|
||||
:style toggle :selected c-subword-mode])))
|
||||
:style toggle :selected (and (boundp 'c-subword-mode)
|
||||
c-subword-mode)])))
|
||||
|
||||
|
||||
;;; Syntax tables.
|
||||
|
|
|
@ -417,7 +417,8 @@ With arg, use separate IO iff arg is positive."
|
|||
(goto-char (point-min))
|
||||
(when (search-forward "read in on demand:" nil t)
|
||||
(while (re-search-forward gdb-source-file-regexp nil t)
|
||||
(push (or (match-string 1) (match-string 2)) gdb-source-file-list))
|
||||
(push (file-name-nondirectory (or (match-string 1) (match-string 2)))
|
||||
gdb-source-file-list))
|
||||
(dolist (buffer (buffer-list))
|
||||
(with-current-buffer buffer
|
||||
(when (and buffer-file-name
|
||||
|
@ -524,6 +525,7 @@ With arg, use separate IO iff arg is positive."
|
|||
gdb-frame-number nil
|
||||
gdb-var-list nil
|
||||
gdb-force-update t
|
||||
gdb-main-file nil
|
||||
gdb-first-post-prompt t
|
||||
gdb-prompting nil
|
||||
gdb-input-queue nil
|
||||
|
@ -580,8 +582,7 @@ With arg, use separate IO iff arg is positive."
|
|||
|
||||
(defun gdb-get-version ()
|
||||
(goto-char (point-min))
|
||||
(if (and (re-search-forward gdb-error-regexp nil t)
|
||||
(string-match ".*(missing implementation)" (match-string 1)))
|
||||
(if (re-search-forward "Undefined\\( mi\\)* command:" nil t)
|
||||
(setq gdb-version "pre-6.4")
|
||||
(setq gdb-version "6.4+"))
|
||||
(gdb-init-2))
|
||||
|
@ -2746,7 +2747,11 @@ corresponding to the mode line clicked."
|
|||
(switch-to-buffer
|
||||
(if gud-last-last-frame
|
||||
(gud-find-file (car gud-last-last-frame))
|
||||
(gud-find-file gdb-main-file)))
|
||||
(if gdb-main-file
|
||||
(gud-find-file gdb-main-file)
|
||||
;; Put buffer list in window if we
|
||||
;; can't find a source file.
|
||||
(list-buffers-noselect))))
|
||||
(when gdb-use-separate-io-buffer
|
||||
(split-window-horizontally)
|
||||
(other-window 1)
|
||||
|
@ -3139,19 +3144,18 @@ BUFFER nil or omitted means use the current buffer."
|
|||
(if (re-search-forward "Stack level \\([0-9]+\\)" nil t)
|
||||
(setq gdb-frame-number (match-string 1)))
|
||||
(goto-char (point-min))
|
||||
(if (re-search-forward
|
||||
".*=\\s-+0x0*\\(\\S-*\\)\\s-+in\\s-+\\(\\S-*?\\) (\\(\\S-*?\\):[0-9]+?);? "
|
||||
nil t)
|
||||
(progn
|
||||
(setq gdb-selected-frame (match-string 2))
|
||||
(if (gdb-get-buffer 'gdb-locals-buffer)
|
||||
(with-current-buffer (gdb-get-buffer 'gdb-locals-buffer)
|
||||
(setq mode-name (concat "Locals:" gdb-selected-frame))))
|
||||
(if (gdb-get-buffer 'gdb-assembler-buffer)
|
||||
(with-current-buffer (gdb-get-buffer 'gdb-assembler-buffer)
|
||||
(setq mode-name (concat "Machine:" gdb-selected-frame))))
|
||||
(setq gdb-frame-address (match-string 1))))
|
||||
(if gud-overlay-arrow-position
|
||||
(when (re-search-forward ".*=\\s-+0x0*\\(\\S-*\\)\\s-+in\\s-+\\(\\S-+?\\)\
|
||||
\\(?: (\\(\\S-+?\\):[0-9]+?)\\)*;? "
|
||||
nil t)
|
||||
(setq gdb-selected-frame (match-string 2))
|
||||
(if (gdb-get-buffer 'gdb-locals-buffer)
|
||||
(with-current-buffer (gdb-get-buffer 'gdb-locals-buffer)
|
||||
(setq mode-name (concat "Locals:" gdb-selected-frame))))
|
||||
(if (gdb-get-buffer 'gdb-assembler-buffer)
|
||||
(with-current-buffer (gdb-get-buffer 'gdb-assembler-buffer)
|
||||
(setq mode-name (concat "Machine:" gdb-selected-frame))))
|
||||
(setq gdb-frame-address (match-string 1))
|
||||
(if (and (match-string 3) gud-overlay-arrow-position)
|
||||
(let ((buffer (marker-buffer gud-overlay-arrow-position))
|
||||
(position (marker-position gud-overlay-arrow-position)))
|
||||
(when (and buffer (string-equal (buffer-name buffer) (match-string 3)))
|
||||
|
@ -3160,9 +3164,9 @@ BUFFER nil or omitted means use the current buffer."
|
|||
(if (string-equal gdb-frame-number "0")
|
||||
nil
|
||||
'((overlay-arrow . hollow-right-triangle))))
|
||||
(set-marker gud-overlay-arrow-position position)))))
|
||||
(set-marker gud-overlay-arrow-position position))))))
|
||||
(goto-char (point-min))
|
||||
(if (re-search-forward " source language \\(\\S-*\\)\." nil t)
|
||||
(if (re-search-forward " source language \\(\\S-+\\)\." nil t)
|
||||
(setq gdb-current-language (match-string 1)))
|
||||
(gdb-invalidate-assembler))
|
||||
|
||||
|
@ -3281,11 +3285,12 @@ in_scope=\"\\(.*?\\)\".*?}")
|
|||
gdb-pending-triggers))
|
||||
(goto-char (point-min))
|
||||
(if (re-search-forward gdb-error-regexp nil t)
|
||||
(with-current-buffer (gdb-get-buffer 'gdb-registers-buffer)
|
||||
(let ((buffer-read-only nil))
|
||||
(erase-buffer)
|
||||
(insert (match-string 1))
|
||||
(goto-char (point-min))))
|
||||
(let ((err (match-string 1)))
|
||||
(with-current-buffer (gdb-get-buffer 'gdb-registers-buffer)
|
||||
(let ((buffer-read-only nil))
|
||||
(erase-buffer)
|
||||
(insert err)
|
||||
(goto-char (point-min)))))
|
||||
(let ((register-list (reverse gdb-register-names))
|
||||
(register nil) (register-string nil) (register-values nil))
|
||||
(goto-char (point-min))
|
||||
|
|
|
@ -721,7 +721,10 @@ changed by, or (parse-state) if line starts in a quoted string."
|
|||
(save-excursion
|
||||
(forward-char 1)
|
||||
(forward-sexp -1)
|
||||
(perl-indent-new-calculate 'virtual nil parse-start)))
|
||||
(perl-indent-new-calculate
|
||||
;; Recalculate the parsing-start, since we may have jumped
|
||||
;; dangerously close (typically in the case of nested functions).
|
||||
'virtual nil (save-excursion (perl-beginning-of-function)))))
|
||||
(and (and (= (following-char) ?{)
|
||||
(save-excursion (forward-char) (perl-hanging-paren-p)))
|
||||
(+ (or default (perl-calculate-indent parse-start))
|
||||
|
|
|
@ -2332,7 +2332,7 @@ return value of `filter-buffer-substring'.
|
|||
|
||||
If this variable is nil, no filtering is performed.")
|
||||
|
||||
(defun filter-buffer-substring (beg end &optional delete)
|
||||
(defun filter-buffer-substring (beg end &optional delete noprops)
|
||||
"Return the buffer substring between BEG and END, after filtering.
|
||||
The buffer substring is passed through each of the filter
|
||||
functions in `buffer-substring-filters', and the value from the
|
||||
|
@ -2342,21 +2342,36 @@ is nil, the buffer substring is returned unaltered.
|
|||
If DELETE is non-nil, the text between BEG and END is deleted
|
||||
from the buffer.
|
||||
|
||||
If NOPROPS is non-nil, final string returned does not include
|
||||
text properties, while the string passed to the filters still
|
||||
includes text properties from the buffer text.
|
||||
|
||||
Point is temporarily set to BEG before calling
|
||||
`buffer-substring-filters', in case the functions need to know
|
||||
where the text came from.
|
||||
|
||||
This function should be used instead of `buffer-substring' or
|
||||
`delete-and-extract-region' when you want to allow filtering to
|
||||
take place. For example, major or minor modes can use
|
||||
`buffer-substring-filters' to extract characters that are special
|
||||
to a buffer, and should not be copied into other buffers."
|
||||
(save-excursion
|
||||
(goto-char beg)
|
||||
(let ((string (if delete (delete-and-extract-region beg end)
|
||||
(buffer-substring beg end))))
|
||||
(dolist (filter buffer-substring-filters string)
|
||||
(setq string (funcall filter string))))))
|
||||
This function should be used instead of `buffer-substring',
|
||||
`buffer-substring-no-properties', or `delete-and-extract-region'
|
||||
when you want to allow filtering to take place. For example,
|
||||
major or minor modes can use `buffer-substring-filters' to
|
||||
extract characters that are special to a buffer, and should not
|
||||
be copied into other buffers."
|
||||
(cond
|
||||
((or delete buffer-substring-filters)
|
||||
(save-excursion
|
||||
(goto-char beg)
|
||||
(let ((string (if delete (delete-and-extract-region beg end)
|
||||
(buffer-substring beg end))))
|
||||
(dolist (filter buffer-substring-filters)
|
||||
(setq string (funcall filter string)))
|
||||
(if noprops
|
||||
(set-text-properties 0 (length string) nil string))
|
||||
string)))
|
||||
(noprops
|
||||
(buffer-substring-no-properties beg end))
|
||||
(t
|
||||
(buffer-substring beg end))))
|
||||
|
||||
|
||||
;;;; Window system cut and paste hooks.
|
||||
|
||||
|
@ -3742,7 +3757,7 @@ If point reaches the beginning or end of buffer, it stops there.
|
|||
To ignore intangibility, bind `inhibit-point-motion-hooks' to t."
|
||||
(interactive "p")
|
||||
(or arg (setq arg 1))
|
||||
|
||||
|
||||
(let ((orig (point)))
|
||||
|
||||
;; Move by lines, if ARG is not 1 (the default).
|
||||
|
|
|
@ -1538,17 +1538,15 @@ Type \\[describe-distribution] for information on getting the latest version."))
|
|||
;; Display the input that we set up in the buffer.
|
||||
(set-buffer-modified-p nil)
|
||||
(goto-char (point-min))
|
||||
(save-window-excursion
|
||||
(condition-case nil
|
||||
(switch-to-buffer (current-buffer))
|
||||
;; In case we're in a dedicated or minibuffer-only window.
|
||||
(error
|
||||
;; There's no point is using pop-to-buffer since creating
|
||||
;; a new frame will generate enough events that the
|
||||
;; subsequent `sit-for' will immediately return anyway.
|
||||
;; (pop-to-buffer (current-buffer))
|
||||
))
|
||||
(sit-for 120)))
|
||||
(if (or (window-minibuffer-p)
|
||||
(window-dedicated-p (selected-window)))
|
||||
;; There's no point is using pop-to-buffer since creating
|
||||
;; a new frame will generate enough events that the
|
||||
;; subsequent `sit-for' will immediately return anyway.
|
||||
nil ;; (pop-to-buffer (current-buffer))
|
||||
(save-window-excursion
|
||||
(switch-to-buffer (current-buffer))
|
||||
(sit-for 120))))
|
||||
;; Unwind ... ensure splash buffer is killed
|
||||
(kill-buffer "GNU Emacs"))))
|
||||
|
||||
|
|
|
@ -1540,7 +1540,8 @@ by doing (clear-string STRING)."
|
|||
(let ((pass nil)
|
||||
(c 0)
|
||||
(echo-keystrokes 0)
|
||||
(cursor-in-echo-area t))
|
||||
(cursor-in-echo-area t)
|
||||
(message-log-max nil))
|
||||
(add-text-properties 0 (length prompt)
|
||||
minibuffer-prompt-properties prompt)
|
||||
(while (progn (message "%s%s"
|
||||
|
|
|
@ -2856,25 +2856,45 @@ is non-nil."
|
|||
(bibtex-autofill-entry))
|
||||
(run-hooks 'bibtex-add-entry-hook)))
|
||||
|
||||
(defun bibtex-entry-update ()
|
||||
(defun bibtex-entry-update (&optional entry-type)
|
||||
"Update an existing BibTeX entry.
|
||||
In the BibTeX entry at point, make new fields for those items that may occur
|
||||
according to `bibtex-field-list', but are not yet present."
|
||||
(interactive)
|
||||
according to `bibtex-field-list', but are not yet present.
|
||||
Also, add field delimiters to numerical fields if they are not present.
|
||||
If ENTRY-TYPE is non-nil, change first the entry type to ENTRY-TYPE.
|
||||
When called interactively with a prefix arg, query for a value of ENTRY-TYPE."
|
||||
(interactive
|
||||
(list (if current-prefix-arg
|
||||
(let ((completion-ignore-case t))
|
||||
(completing-read "New entry type: " bibtex-entry-field-alist
|
||||
nil t nil 'bibtex-entry-type-history)))))
|
||||
(save-excursion
|
||||
(bibtex-beginning-of-entry)
|
||||
;; For inserting new fields, we use the fact that
|
||||
;; `bibtex-parse-entry' moves point to the end of the last field.
|
||||
(let* ((fields-alist (bibtex-parse-entry))
|
||||
(field-list (bibtex-field-list
|
||||
(cdr (assoc "=type=" fields-alist)))))
|
||||
(skip-chars-backward " \t\n")
|
||||
(dolist (field (car field-list))
|
||||
(unless (assoc-string (car field) fields-alist t)
|
||||
(bibtex-make-field field)))
|
||||
(dolist (field (cdr field-list))
|
||||
(unless (assoc-string (car field) fields-alist t)
|
||||
(bibtex-make-optional-field field))))))
|
||||
(when (looking-at bibtex-entry-maybe-empty-head)
|
||||
(goto-char (match-end 0))
|
||||
(if entry-type
|
||||
(save-excursion
|
||||
(replace-match (concat "@" entry-type) nil nil nil 1))
|
||||
(setq entry-type (bibtex-type-in-head)))
|
||||
(let* ((field-list (bibtex-field-list entry-type))
|
||||
(required (copy-tree (car field-list)))
|
||||
(optional (copy-tree (cdr field-list)))
|
||||
bounds)
|
||||
(while (setq bounds (bibtex-parse-field))
|
||||
(let ((fname (bibtex-name-in-field bounds t))
|
||||
(end (copy-marker (bibtex-end-of-field bounds) t)))
|
||||
(setq required (delete (assoc-string fname required t) required)
|
||||
optional (delete (assoc-string fname optional t) optional))
|
||||
(when (string-match "\\`[0-9]+\\'"
|
||||
(bibtex-text-in-field-bounds bounds))
|
||||
(goto-char (bibtex-end-of-text-in-field bounds))
|
||||
(insert (bibtex-field-right-delimiter))
|
||||
(goto-char (bibtex-start-of-text-in-field bounds))
|
||||
(insert (bibtex-field-left-delimiter)))
|
||||
(goto-char end)))
|
||||
(skip-chars-backward " \t\n")
|
||||
(dolist (field required) (bibtex-make-field field))
|
||||
(dolist (field optional) (bibtex-make-optional-field field))))))
|
||||
|
||||
(defun bibtex-parse-entry (&optional content)
|
||||
"Parse entry at point, return an alist.
|
||||
|
@ -3613,17 +3633,20 @@ interactive calls."
|
|||
|
||||
(defun bibtex-find-text-internal (&optional noerror subfield comma)
|
||||
"Find text part of current BibTeX field or entry head.
|
||||
Return list (NAME START-TEXT END-TEXT END) with field or entry name,
|
||||
start and end of text and end of field or entry head, or nil if not found.
|
||||
If optional arg NOERROR is non-nil, an error message is suppressed if text
|
||||
is not found. If optional arg SUBFIELD is non-nil START-TEXT and END-TEXT
|
||||
correspond to the current subfield delimited by #.
|
||||
Return list (NAME START-TEXT END-TEXT END STRING-CONST) with field
|
||||
or entry name, start and end of text, and end of field or entry head.
|
||||
STRING-CONST is a flag which is non-nil if current subfield delimited by #
|
||||
is a BibTeX string constant. Return value is nil if field or entry head
|
||||
are not found.
|
||||
If optional arg NOERROR is non-nil, an error message is suppressed
|
||||
if text is not found. If optional arg SUBFIELD is non-nil START-TEXT
|
||||
and END-TEXT correspond to the current subfield delimited by #.
|
||||
Optional arg COMMA is as in `bibtex-enclosing-field'."
|
||||
(save-excursion
|
||||
(let ((pnt (point))
|
||||
(bounds (bibtex-enclosing-field comma t))
|
||||
(case-fold-search t)
|
||||
name start-text end-text end failure done no-sub)
|
||||
name start-text end-text end failure done no-sub string-const)
|
||||
(bibtex-beginning-of-entry)
|
||||
(cond (bounds
|
||||
(setq name (bibtex-name-in-field bounds t)
|
||||
|
@ -3667,9 +3690,11 @@ Optional arg COMMA is as in `bibtex-enclosing-field'."
|
|||
(goto-char start-text)
|
||||
(while (not done)
|
||||
(if (or (prog1 (looking-at bibtex-field-const)
|
||||
(setq end-text (match-end 0)))
|
||||
(setq end-text (match-end 0)
|
||||
string-const t))
|
||||
(prog1 (setq bounds (bibtex-parse-field-string))
|
||||
(setq end-text (cdr bounds))))
|
||||
(setq end-text (cdr bounds)
|
||||
string-const nil)))
|
||||
(progn
|
||||
(if (and (<= start-text pnt) (<= pnt end-text))
|
||||
(setq done t)
|
||||
|
@ -3678,7 +3703,7 @@ Optional arg COMMA is as in `bibtex-enclosing-field'."
|
|||
(setq start-text (goto-char (match-end 0)))))
|
||||
(setq done t failure t)))))
|
||||
(cond ((not failure)
|
||||
(list name start-text end-text end))
|
||||
(list name start-text end-text end string-const))
|
||||
((and no-sub (not noerror))
|
||||
(error "Not on text part of BibTeX field"))
|
||||
((not noerror) (error "Not on BibTeX field"))))))
|
||||
|
@ -3712,13 +3737,10 @@ is as in `bibtex-enclosing-field'. It is t for interactive calls."
|
|||
Optional arg COMMA is as in `bibtex-enclosing-field'. It is t for
|
||||
interactive calls."
|
||||
(interactive (list t))
|
||||
(let* ((bounds (bibtex-find-text-internal nil t comma))
|
||||
(start (nth 1 bounds))
|
||||
(end (nth 2 bounds)))
|
||||
(if (memq (char-before end) '(?\} ?\"))
|
||||
(delete-region (1- end) end))
|
||||
(if (memq (char-after start) '(?\{ ?\"))
|
||||
(delete-region start (1+ start)))))
|
||||
(let ((bounds (bibtex-find-text-internal nil t comma)))
|
||||
(unless (nth 4 bounds)
|
||||
(delete-region (1- (nth 2 bounds)) (nth 2 bounds))
|
||||
(delete-region (nth 1 bounds) (1+ (nth 1 bounds))))))
|
||||
|
||||
(defun bibtex-kill-field (&optional copy-only comma)
|
||||
"Kill the entire enclosing BibTeX field.
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -758,8 +758,9 @@ they are not defaultly assigned to keys."
|
|||
|
||||
(defun picture-mode-exit (&optional nostrip)
|
||||
"Undo `picture-mode' and return to previous major mode.
|
||||
With no argument strips whitespace from end of every line in Picture buffer
|
||||
otherwise just return to previous mode."
|
||||
With no argument, strip whitespace from end of every line in Picture buffer;
|
||||
otherwise, just return to previous mode.
|
||||
Runs `picture-mode-exit-hook' at the end."
|
||||
(interactive "P")
|
||||
(if (not (eq major-mode 'picture-mode))
|
||||
(error "You aren't editing a Picture")
|
||||
|
@ -769,7 +770,8 @@ With no argument strips whitespace from end of every line in Picture buffer
|
|||
(setq major-mode picture-mode-old-major-mode)
|
||||
(kill-local-variable 'tab-stop-list)
|
||||
(setq truncate-lines picture-mode-old-truncate-lines)
|
||||
(force-mode-line-update)))
|
||||
(force-mode-line-update)
|
||||
(run-hooks 'picture-mode-exit-hook)))
|
||||
|
||||
(provide 'picture)
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
;; This file is part of GNU Emacs.
|
||||
|
||||
;; Maintainer's Time-stamp: <2006-02-06 15:11:58 ttn>
|
||||
;; Maintainer's Time-stamp: <2006-04-12 20:30:56 rms>
|
||||
;; Maintainer: Stephen Gildea <gildea@stop.mail-abuse.org>
|
||||
;; Keywords: tools
|
||||
|
||||
|
@ -93,6 +93,7 @@ historical default."
|
|||
:type 'string
|
||||
:group 'time-stamp
|
||||
:version "20.1")
|
||||
;;;###autoload(put 'time-stamp-format 'safe-local-variable 'stringp)
|
||||
|
||||
(defcustom time-stamp-active t
|
||||
"*Non-nil to enable time-stamping of buffers by \\[time-stamp].
|
||||
|
@ -150,7 +151,7 @@ Do not change `time-stamp-line-limit', `time-stamp-start',
|
|||
incompatible with other people's files! If you must change them for some
|
||||
application, do so in the local variables section of the time-stamped file
|
||||
itself.")
|
||||
|
||||
;;;###autoload(put 'time-stamp-line-limit 'safe-local-variable 'integerp)
|
||||
|
||||
(defvar time-stamp-start "Time-stamp:[ \t]+\\\\?[\"<]+" ;Do not change!
|
||||
"Regexp after which the time stamp is written by \\[time-stamp].
|
||||
|
@ -163,7 +164,7 @@ Do not change `time-stamp-line-limit', `time-stamp-start',
|
|||
incompatible with other people's files! If you must change them for some
|
||||
application, do so in the local variables section of the time-stamped file
|
||||
itself.")
|
||||
|
||||
;;;###autoload(put 'time-stamp-start 'safe-local-variable t)
|
||||
|
||||
(defvar time-stamp-end "\\\\?[\">]" ;Do not change!
|
||||
"Regexp marking the text after the time stamp.
|
||||
|
@ -183,6 +184,7 @@ Do not change `time-stamp-start', `time-stamp-end', `time-stamp-pattern',
|
|||
or `time-stamp-inserts-lines' for yourself or you will be incompatible
|
||||
with other people's files! If you must change them for some application,
|
||||
do so in the local variables section of the time-stamped file itself.")
|
||||
;;;###autoload(put 'time-stamp-end 'safe-local-variable t)
|
||||
|
||||
|
||||
(defvar time-stamp-inserts-lines nil ;Do not change!
|
||||
|
@ -199,6 +201,7 @@ Do not change `time-stamp-end' or `time-stamp-inserts-lines' for
|
|||
yourself or you will be incompatible with other people's files!
|
||||
If you must change them for some application, do so in the local
|
||||
variables section of the time-stamped file itself.")
|
||||
;;;###autoload(put 'time-stamp-inserts-lines 'safe-local-variable t)
|
||||
|
||||
|
||||
(defvar time-stamp-count 1 ;Do not change!
|
||||
|
@ -209,6 +212,7 @@ Do not change `time-stamp-count' for yourself or you will be
|
|||
incompatible with other people's files! If you must change it for
|
||||
some application, do so in the local variables section of the
|
||||
time-stamped file itself.")
|
||||
;;;###autoload(put 'time-stamp-count 'safe-local-variable 'integerp)
|
||||
|
||||
|
||||
(defvar time-stamp-pattern nil ;Do not change!
|
||||
|
@ -244,6 +248,7 @@ Do not change `time-stamp-pattern' `time-stamp-line-limit',
|
|||
incompatible with other people's files! If you must change them for
|
||||
some application, do so only in the local variables section of the
|
||||
time-stamped file itself.")
|
||||
;;;###autoload(put 'time-stamp-pattern 'safe-local-variable 'stringp)
|
||||
|
||||
|
||||
|
||||
|
|
131
lisp/vc.el
131
lisp/vc.el
|
@ -584,9 +584,9 @@ See `run-hooks'."
|
|||
:group 'vc
|
||||
:version "21.1")
|
||||
|
||||
(defcustom vc-annotate-display-mode nil
|
||||
(defcustom vc-annotate-display-mode 'fullscale
|
||||
"Which mode to color the output of \\[vc-annotate] with by default."
|
||||
:type '(choice (const :tag "Default" nil)
|
||||
:type '(choice (const :tag "By Color Map Range" nil)
|
||||
(const :tag "Scale to Oldest" scale)
|
||||
(const :tag "Scale Oldest->Newest" fullscale)
|
||||
(number :tag "Specify Fractional Number of Days"
|
||||
|
@ -617,30 +617,64 @@ version control backend imposes itself."
|
|||
|
||||
;; Annotate customization
|
||||
(defcustom vc-annotate-color-map
|
||||
'(( 20. . "#FFCC00")
|
||||
( 40. . "#FF6666")
|
||||
( 60. . "#FF6600")
|
||||
( 80. . "#FF3300")
|
||||
(100. . "#FF00FF")
|
||||
(120. . "#FF0000")
|
||||
(140. . "#CCCC00")
|
||||
(160. . "#CC00CC")
|
||||
(180. . "#BC8F8F")
|
||||
(200. . "#99CC00")
|
||||
(220. . "#999900")
|
||||
(240. . "#7AC5CD")
|
||||
(260. . "#66CC00")
|
||||
(280. . "#33CC33")
|
||||
(300. . "#00CCFF")
|
||||
(320. . "#00CC99")
|
||||
(340. . "#0099FF"))
|
||||
(if (and (tty-display-color-p) (<= (display-color-cells) 8))
|
||||
;; A custom sorted TTY colormap
|
||||
(let* ((colors
|
||||
(sort
|
||||
(delq nil
|
||||
(mapcar (lambda (x)
|
||||
(if (not (or
|
||||
(string-equal (car x) "white")
|
||||
(string-equal (car x) "black") ))
|
||||
(car x)))
|
||||
(tty-color-alist)))
|
||||
(lambda (a b)
|
||||
(cond
|
||||
((or (string-equal a "red") (string-equal b "blue")) t)
|
||||
((or (string-equal b "red") (string-equal a "blue")) nil)
|
||||
((string-equal a "yellow") t)
|
||||
((string-equal b "yellow") nil)
|
||||
((string-equal a "cyan") t)
|
||||
((string-equal b "cyan") nil)
|
||||
((string-equal a "green") t)
|
||||
((string-equal b "green") nil)
|
||||
((string-equal a "magenta") t)
|
||||
((string-equal b "magenta") nil)
|
||||
(t (string< a b))))))
|
||||
(date 20.)
|
||||
(delta (/ (- 360. date) (1- (length colors)))))
|
||||
(mapcar (lambda (x)
|
||||
(prog1
|
||||
(cons date x)
|
||||
(setq date (+ date delta)))) colors))
|
||||
;; Normal colormap: hue stepped from 0-240deg, value=1., saturation=0.75
|
||||
'(( 20. . "#FF3F3F")
|
||||
( 40. . "#FF6C3F")
|
||||
( 60. . "#FF993F")
|
||||
( 80. . "#FFC63F")
|
||||
(100. . "#FFF33F")
|
||||
(120. . "#DDFF3F")
|
||||
(140. . "#B0FF3F")
|
||||
(160. . "#83FF3F")
|
||||
(180. . "#56FF3F")
|
||||
(200. . "#3FFF56")
|
||||
(220. . "#3FFF83")
|
||||
(240. . "#3FFFB0")
|
||||
(260. . "#3FFFDD")
|
||||
(280. . "#3FF3FF")
|
||||
(300. . "#3FC6FF")
|
||||
(320. . "#3F99FF")
|
||||
(340. . "#3F6CFF")
|
||||
(360. . "#3F3FFF")))
|
||||
"Association list of age versus color, for \\[vc-annotate].
|
||||
Ages are given in units of fractional days. Default is eighteen steps
|
||||
using a twenty day increment."
|
||||
Ages are given in units of fractional days. Default is eighteen
|
||||
steps using a twenty day increment, from red to blue. For TTY
|
||||
displays with 8 or fewer colors, the default is red to blue with
|
||||
all other colors between (excluding black and white)."
|
||||
:type 'alist
|
||||
:group 'vc)
|
||||
|
||||
(defcustom vc-annotate-very-old-color "#0046FF"
|
||||
(defcustom vc-annotate-very-old-color "#3F3FFF"
|
||||
"Color for lines older than the current color range in \\[vc-annotate]]."
|
||||
:type 'string
|
||||
:group 'vc)
|
||||
|
@ -852,7 +886,7 @@ However, before executing BODY, find FILE, and after BODY, save buffer."
|
|||
(if vc-dired-mode
|
||||
(set-buffer (find-file-noselect (dired-get-filename)))
|
||||
(while vc-parent-buffer
|
||||
(pop-to-buffer vc-parent-buffer))
|
||||
(set-buffer vc-parent-buffer))
|
||||
(if (not buffer-file-name)
|
||||
(error "Buffer %s is not associated with a file" (buffer-name))
|
||||
(if (not (vc-backend buffer-file-name))
|
||||
|
@ -2971,7 +3005,7 @@ cover the range from the oldest annotation to the newest."
|
|||
(easy-menu-define vc-annotate-mode-menu vc-annotate-mode-map
|
||||
"VC Annotate Display Menu"
|
||||
`("VC-Annotate"
|
||||
["Default" (unless (null vc-annotate-display-mode)
|
||||
["By Color Map Range" (unless (null vc-annotate-display-mode)
|
||||
(setq vc-annotate-display-mode nil)
|
||||
(vc-annotate-display-select))
|
||||
:style toggle :selected (null vc-annotate-display-mode)]
|
||||
|
@ -3013,11 +3047,7 @@ BUFFER. `vc-annotate-display-mode' specifies the highlighting mode to
|
|||
use; you may override this using the second optional arg MODE."
|
||||
(interactive)
|
||||
(if mode (setq vc-annotate-display-mode mode))
|
||||
(when buffer
|
||||
(set-buffer buffer)
|
||||
(display-buffer buffer))
|
||||
(if (not vc-annotate-parent-rev)
|
||||
(vc-annotate-mode))
|
||||
(pop-to-buffer (or buffer (current-buffer)))
|
||||
(cond ((null vc-annotate-display-mode)
|
||||
;; The ratio is global, thus relative to the global color-map.
|
||||
(kill-local-variable 'vc-annotate-color-map)
|
||||
|
@ -3077,7 +3107,11 @@ colors. `vc-annotate-background' specifies the background color."
|
|||
(vc-ensure-vc-buffer)
|
||||
(setq vc-annotate-display-mode display-mode) ;Not sure why. --Stef
|
||||
(let* ((temp-buffer-name (format "*Annotate %s (rev %s)*" (buffer-name) rev))
|
||||
(temp-buffer-show-function 'vc-annotate-display-select))
|
||||
(temp-buffer-show-function 'vc-annotate-display-select)
|
||||
;; If BUF is specified, we presume the caller maintains current line,
|
||||
;; so we don't need to do it here. This implementation may give
|
||||
;; strange results occasionally in the case of REV != WORKFILE-REV.
|
||||
(current-line (unless buf (line-number-at-pos))))
|
||||
(message "Annotating...")
|
||||
;; If BUF is specified it tells in which buffer we should put the
|
||||
;; annotations. This is used when switching annotations to another
|
||||
|
@ -3087,15 +3121,21 @@ colors. `vc-annotate-background' specifies the background color."
|
|||
;; In case it had to be uniquified.
|
||||
(setq temp-buffer-name (buffer-name))))
|
||||
(with-output-to-temp-buffer temp-buffer-name
|
||||
(vc-call annotate-command file (get-buffer temp-buffer-name) rev))
|
||||
(with-current-buffer temp-buffer-name
|
||||
(set (make-local-variable 'vc-annotate-backend) (vc-backend file))
|
||||
(set (make-local-variable 'vc-annotate-parent-file) file)
|
||||
(set (make-local-variable 'vc-annotate-parent-rev) rev)
|
||||
(set (make-local-variable 'vc-annotate-parent-display-mode)
|
||||
display-mode))
|
||||
|
||||
(message "Annotating... done")))
|
||||
(vc-call annotate-command file (get-buffer temp-buffer-name) rev)
|
||||
;; we must setup the mode first, and then set our local
|
||||
;; variables before the show-function is called at the exit of
|
||||
;; with-output-to-temp-buffer
|
||||
(with-current-buffer temp-buffer-name
|
||||
(if (not (equal major-mode 'vc-annotate-mode))
|
||||
(vc-annotate-mode))
|
||||
(set (make-local-variable 'vc-annotate-backend) (vc-backend file))
|
||||
(set (make-local-variable 'vc-annotate-parent-file) file)
|
||||
(set (make-local-variable 'vc-annotate-parent-rev) rev)
|
||||
(set (make-local-variable 'vc-annotate-parent-display-mode)
|
||||
display-mode)))
|
||||
(when current-line
|
||||
(goto-line current-line temp-buffer-name))
|
||||
(message "Annotating... done")))
|
||||
|
||||
(defun vc-annotate-prev-version (prefix)
|
||||
"Visit the annotation of the version previous to this one.
|
||||
|
@ -3191,7 +3231,8 @@ string, then it describes a revision number, so warp to that
|
|||
revision."
|
||||
(if (not (equal major-mode 'vc-annotate-mode))
|
||||
(message "Cannot be invoked outside of a vc annotate buffer")
|
||||
(let* ((oldline (line-number-at-pos))
|
||||
(let* ((buf (current-buffer))
|
||||
(oldline (line-number-at-pos))
|
||||
(revspeccopy revspec)
|
||||
(newrev nil))
|
||||
(cond
|
||||
|
@ -3218,10 +3259,10 @@ revision."
|
|||
(when newrev
|
||||
(vc-annotate vc-annotate-parent-file newrev
|
||||
vc-annotate-parent-display-mode
|
||||
(current-buffer))
|
||||
buf)
|
||||
(goto-line (min oldline (progn (goto-char (point-max))
|
||||
(previous-line)
|
||||
(line-number-at-pos))))))))
|
||||
(line-number-at-pos))) buf)))))
|
||||
|
||||
(defun vc-annotate-compcar (threshold a-list)
|
||||
"Test successive cons cells of A-LIST against THRESHOLD.
|
||||
|
@ -3275,7 +3316,11 @@ The annotations are relative to the current time, unless overridden by OFFSET."
|
|||
(let* ((color (or (vc-annotate-compcar difference vc-annotate-color-map)
|
||||
(cons nil vc-annotate-very-old-color)))
|
||||
;; substring from index 1 to remove any leading `#' in the name
|
||||
(face-name (concat "vc-annotate-face-" (substring (cdr color) 1)))
|
||||
(face-name (concat "vc-annotate-face-"
|
||||
(if (string-equal
|
||||
(substring (cdr color) 0 1) "#")
|
||||
(substring (cdr color) 1)
|
||||
(cdr color))))
|
||||
;; Make the face if not done.
|
||||
(face (or (intern-soft face-name)
|
||||
(let ((tmp-face (make-face (intern face-name))))
|
||||
|
|
|
@ -1,3 +1,33 @@
|
|||
2006-04-15 Michael Olson <mwolson@gnu.org>
|
||||
|
||||
* processes.texi (Transaction Queues): Mention the new optional
|
||||
`delay-question' argument for `tq-enqueue'.
|
||||
|
||||
2006-04-13 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* customize.texi (Common Keywords): Use dotted notation for
|
||||
:package-version value. Specify its values. Improve documentation
|
||||
for customize-package-emacs-version-alist.
|
||||
|
||||
2006-04-12 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* customize.texi (Common Keywords): Move description of
|
||||
customize-package-emacs-version-alist to @defvar.
|
||||
|
||||
2006-04-10 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* customize.texi (Common Keywords): Add :package-version.
|
||||
|
||||
2006-04-10 Kim F. Storm <storm@cua.dk>
|
||||
|
||||
* text.texi (Buffer Contents): Add NOPROPS arg to
|
||||
filter-buffer-substring.
|
||||
|
||||
2006-04-08 Kevin Ryde <user42@zip.com.au>
|
||||
|
||||
* os.texi (Command-Line Arguments): Update xref to emacs manual
|
||||
"Command Arguments" -> "Emacs Invocation", per change there.
|
||||
|
||||
2006-04-08 Thien-Thi Nguyen <ttn@gnu.org>
|
||||
|
||||
* display.texi (Other Display Specs): Arrange a @code{DOTTED-LIST} to
|
||||
|
|
|
@ -130,8 +130,49 @@ any effect unless the code which implements the mode is loaded.
|
|||
This option specifies that the item was first introduced in Emacs
|
||||
version @var{version}, or that its default value was changed in that
|
||||
version. The value @var{version} must be a string.
|
||||
|
||||
@item :package-version '(@var{package} . @var{version})
|
||||
This option specifies that the item was first introduced in
|
||||
@var{package} version @var{version}, or that its default value was
|
||||
changed in that version. This keyword takes priority over :version.
|
||||
The value of @var{package} is a symbol and @var{version} is a string.
|
||||
The @var{package} and @var{version} must appear in the alist
|
||||
@code{customize-package-emacs-version-alist}. Since @var{package} must
|
||||
be unique and the user might see it in an error message, a good choice
|
||||
is the official name of the package, such as MH-E or Gnus.
|
||||
|
||||
@end table
|
||||
|
||||
Packages that use the @code{:package-version} keyword must also update
|
||||
the @code{customize-package-emacs-version-alist} variable.
|
||||
|
||||
@defvar customize-package-emacs-version-alist
|
||||
This alist provides a mapping for the versions of Emacs that are
|
||||
associated with versions of a package listed in the
|
||||
@code{:package-version} keyword. Its elements look like this:
|
||||
|
||||
@example
|
||||
(@var{package} (@var{pversion} . @var{eversion})@dots{})
|
||||
@end example
|
||||
|
||||
For each @var{package}, which is a symbol, there are one or more
|
||||
elements that contain a package version @var{pversion} with an
|
||||
associated Emacs version @var{eversion}. These versions are strings.
|
||||
For example, the MH-E package updates this alist with the following:
|
||||
|
||||
@smallexample
|
||||
(add-to-list 'customize-package-emacs-version-alist
|
||||
'(MH-E ("6.0" . "22.1") ("6.1" . "22.1") ("7.0" . "22.1")
|
||||
("7.1" . "22.1") ("7.2" . "22.1") ("7.3" . "22.1")
|
||||
("7.4" . "22.1") ("8.0" . "22.1")))
|
||||
@end smallexample
|
||||
|
||||
The value of @var{package} needs to be unique and it needs to match
|
||||
the @var{package} value appearing in the @code{:package-version}
|
||||
keyword. Since the user might see the value in a error message, a good
|
||||
choice is the official name of the package, such as MH-E or Gnus.
|
||||
@end defvar
|
||||
|
||||
@node Group Definitions
|
||||
@section Defining Custom Groups
|
||||
|
||||
|
|
|
@ -404,8 +404,9 @@ remaining command-line arguments in the variable
|
|||
arguments is in @code{command-line-args}.)
|
||||
|
||||
The command-line arguments are parsed by the @code{command-line-1}
|
||||
function in the @file{startup.el} file. See also @ref{Command
|
||||
Arguments, , Command Line Arguments, emacs, The GNU Emacs Manual}.
|
||||
function in the @file{startup.el} file. See also @ref{Emacs
|
||||
Invocation, , Command Line Arguments for Emacs Invocation, emacs, The
|
||||
GNU Emacs Manual}.
|
||||
@end defvar
|
||||
|
||||
@defvar command-line-args
|
||||
|
|
|
@ -1508,7 +1508,7 @@ process, or it may be a TCP connection to a server, possibly on another
|
|||
machine.
|
||||
@end defun
|
||||
|
||||
@defun tq-enqueue queue question regexp closure fn
|
||||
@defun tq-enqueue queue question regexp closure fn &optional delay-question
|
||||
This function sends a transaction to queue @var{queue}. Specifying the
|
||||
queue has the effect of specifying the subprocess to talk to.
|
||||
|
||||
|
@ -1521,6 +1521,10 @@ The argument @var{regexp} is a regular expression that should match
|
|||
text at the end of the entire answer, but nothing before; that's how
|
||||
@code{tq-enqueue} determines where the answer ends.
|
||||
|
||||
If the argument @var{delay-question} is non-nil, delay sending this
|
||||
question until the process has finished replying to any previous
|
||||
questions. This produces more reliable results with some processes."
|
||||
|
||||
The return value of @code{tq-enqueue} itself is not meaningful.
|
||||
@end defun
|
||||
|
||||
|
|
|
@ -205,7 +205,7 @@ This is like @code{buffer-substring}, except that it does not copy text
|
|||
properties, just the characters themselves. @xref{Text Properties}.
|
||||
@end defun
|
||||
|
||||
@defun filter-buffer-substring start end &optional delete
|
||||
@defun filter-buffer-substring start end &optional delete noprops
|
||||
This function passes the buffer text between @var{start} and @var{end}
|
||||
through the filter functions specified by the variable
|
||||
@code{buffer-substring-filters}, and returns the value from the last
|
||||
|
@ -217,7 +217,12 @@ If @var{delete} is non-@code{nil}, this function deletes the text
|
|||
between @var{start} and @var{end} after copying it, like
|
||||
@code{delete-and-extract-region}.
|
||||
|
||||
Lisp code should use this function instead of @code{buffer-substring}
|
||||
If @var{noprops} is non-@code{nil}, the final string returned does not
|
||||
include text properties, while the string passed through the filters
|
||||
still includes text properties from the buffer text.
|
||||
|
||||
Lisp code should use this function instead of @code{buffer-substring},
|
||||
@code{buffer-substring-no-properties},
|
||||
or @code{delete-and-extract-region} when copying into user-accessible
|
||||
data structures such as the kill-ring, X clipboard, and registers.
|
||||
Major and minor modes can add functions to
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2006-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
|
||||
|
||||
* inc/config.h (pid_t): Define to int.
|
||||
|
||||
2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
|
||||
|
||||
* makefile.MPW (shortlisp, SOME_MACHINE_LISP): Sync with
|
||||
|
|
|
@ -906,7 +906,7 @@ Boston, MA 02110-1301, USA. */
|
|||
/* #undef mbstate_t */
|
||||
|
||||
/* Define to `int' if <sys/types.h> does not define. */
|
||||
/* #undef pid_t */
|
||||
#define pid_t int
|
||||
|
||||
/* Define to any substitute for sys_siglist. */
|
||||
/* #undef sys_siglist */
|
||||
|
|
|
@ -1,3 +1,77 @@
|
|||
2006-04-13 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* org.texi: (Updating settings): New section.
|
||||
(Visibility cycling): Better names for the startup folding
|
||||
options.
|
||||
(Exporting): Completely restructured.
|
||||
(The very busy C-c C-c key): New section.
|
||||
(Summary of in-buffer settings): New section.
|
||||
|
||||
2006-04-12 Richard Stallman <rms@gnu.org>
|
||||
|
||||
* search.texi: Clean up previous change.
|
||||
|
||||
2006-04-12 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* search.texi (Regexp Backslash, Regexp Replace): Add index
|
||||
entries for ``back reference'' and mention the term itself in the
|
||||
text.
|
||||
|
||||
2006-04-11 Richard Stallman <rms@gnu.org>
|
||||
|
||||
* custom.texi (Safe File Variables):
|
||||
Document enable-local-variables = :safe.
|
||||
|
||||
2006-04-11 Karl Berry <karl@gnu.org>
|
||||
|
||||
* emacs-xtra.texi, emacs.texi (Dired under VC, VC Dired Commands,
|
||||
Remote Repositories, Version Backups, Local Version Control,
|
||||
Snapshots, Making and Using Snapshots, Snapshot Caveats,
|
||||
Miscellaneous Commands and Features of VC, Change Logs and VC,
|
||||
Renaming VC Work Files and Master Files,
|
||||
Inserting Version Control Headers, Customizing VC, General Options,
|
||||
Options for RCS and SCCS, Options specific for CVS): move all
|
||||
these nodes to emacs-xtra.texi, for brevity.
|
||||
* cmdargs.texi, files.texi: change cross-references.
|
||||
|
||||
2006-04-11 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus.texi, gnus-faq.texi, message.texi: Gnus v5.10.8 is released.
|
||||
|
||||
2006-04-10 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus.texi (Misc Group Stuff, Summary Buffer, Article Keymap)
|
||||
(Server Commands): Key `v' is reserved for users.
|
||||
|
||||
2006-04-11 J.D. Smith <jdsmith@as.arizona.edu>
|
||||
|
||||
* files.texi (Old Versions): Update description of vc-annotate's
|
||||
use of color to indicate date ranges.
|
||||
|
||||
2006-04-11 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* org.texi (Link format): New section, emphasis on bracket links.
|
||||
(External links): Document bracket links.
|
||||
(FAQ): Expanded to cover shell links and the new link format.
|
||||
|
||||
2006-04-09 Kevin Ryde <user42@zip.com.au>
|
||||
|
||||
* org.texi (Formula syntax): Typo in node name of calc-eval xref.
|
||||
|
||||
* sending.texi (Mail Sending): In send-mail-function @pxref smtpmail,
|
||||
put info and printed manual names the right way around.
|
||||
|
||||
2006-04-09 Karl Berry <karl@gnu.org>
|
||||
|
||||
* msdog.texi, emacs-xtra.texi: move all the MS-DOS material to
|
||||
emacs-xtra.texi, leaving only MS Windows information.
|
||||
* building.texi, emacs.texi, frames.texi, gnu.texi, macos.texi,
|
||||
msdog.texi, mule.texi, trouble.texi: change cross-references and
|
||||
node names.
|
||||
|
||||
* emacs.texi: move @summarycontents and @contents to the beginning
|
||||
of the file.
|
||||
|
||||
2006-04-07 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus.texi (Summary Buffer Lines): Add `*'.
|
||||
|
|
|
@ -323,7 +323,7 @@ method to conditionalize them.
|
|||
subprocesses; to work around this lack, @kbd{M-x compile} runs the
|
||||
compilation command synchronously on MS-DOS. As a consequence, you must
|
||||
wait until the command finishes before you can do anything else in
|
||||
Emacs. @xref{MS-DOS}.
|
||||
Emacs. @xref{MS-DOS,,,emacs-xtra,Specialized Emacs Features}.
|
||||
|
||||
@node Grep Searching
|
||||
@section Searching with Grep under Emacs
|
||||
|
|
|
@ -551,7 +551,7 @@ The name of an interpreter used to parse and execute programs run from
|
|||
inside Emacs.
|
||||
@item SMTPSERVER
|
||||
The name of the outgoing mail server. Used by the SMTP library
|
||||
(@pxref{Top,,Sending mail via SMTP,smtpmail}).
|
||||
(@pxref{Top,,,Sending mail via SMTP,smtpmail}).
|
||||
@cindex background mode, on @command{xterm}
|
||||
@item TERM
|
||||
The type of the terminal that Emacs is using. This variable must be
|
||||
|
|
|
@ -1227,9 +1227,10 @@ values for these variables, do it directly by customizing
|
|||
The variable @code{enable-local-variables} allows you to change the
|
||||
way Emacs processes local variables. Its default value is @code{t},
|
||||
which specifies the behavior described above. If it is @code{nil},
|
||||
Emacs simply ignores all file local variables. Any other value says
|
||||
to query you about each file that has local variables, without trying
|
||||
to determine whether the values are known to be safe.
|
||||
Emacs simply ignores all file local variables. @code{:safe} means use
|
||||
only the safe values and ignore the rest. Any other value says to
|
||||
query you about each file that has local variables, without trying to
|
||||
determine whether the values are known to be safe.
|
||||
|
||||
@vindex enable-local-eval
|
||||
The variable @code{enable-local-eval} controls whether Emacs
|
||||
|
|
1569
man/emacs-xtra.texi
1569
man/emacs-xtra.texi
File diff suppressed because it is too large
Load diff
|
@ -73,7 +73,12 @@ Boston, MA 02110-1301 USA
|
|||
Cover art by Etienne Suvasa.
|
||||
|
||||
@end titlepage
|
||||
@page
|
||||
|
||||
|
||||
@summarycontents
|
||||
@contents
|
||||
|
||||
|
||||
@ifnottex
|
||||
@node Top, Distrib, (dir), (dir)
|
||||
@top The Emacs Editor
|
||||
|
@ -122,7 +127,7 @@ and Sending Mail and Registers and Minibuffer.
|
|||
* Glossary:: The glossary.
|
||||
* Antinews:: Information about Emacs version 21.
|
||||
* Mac OS:: Using Emacs in the Mac.
|
||||
* MS-DOS:: Using Emacs on MS-DOS and Microsoft Windows.
|
||||
* Emacs and Microsoft Windows:: Using Emacs on Microsoft Windows.
|
||||
* Manifesto:: What's GNU? Gnu's Not Unix!
|
||||
* Acknowledgments:: Major contributors to GNU Emacs.
|
||||
|
||||
|
@ -394,10 +399,6 @@ Version Control
|
|||
* Old Versions:: Examining and comparing old versions.
|
||||
* Secondary VC Commands:: The commands used a little less frequently.
|
||||
* Branches:: Multiple lines of development.
|
||||
* Remote Repositories:: Efficient access to remote CVS servers.
|
||||
* Snapshots:: Sets of file versions treated as a unit.
|
||||
* Miscellaneous VC:: Various other commands and features of VC.
|
||||
* Customizing VC:: Variables that change VC's behavior.
|
||||
|
||||
Using Multiple Buffers
|
||||
|
||||
|
@ -855,16 +856,9 @@ Emacs and Mac OS
|
|||
* Mac Font Specs:: Specifying fonts on Mac.
|
||||
* Mac Functions:: Mac-specific Lisp functions.
|
||||
|
||||
MS-DOS and Windows 95/98/NT
|
||||
Emacs and Microsoft Windows
|
||||
|
||||
* MS-DOS Keyboard:: Keyboard usage on MS-DOS.
|
||||
* MS-DOS Mouse:: Mouse usage on MS-DOS.
|
||||
* MS-DOS Display:: Fonts, frames and display size on MS-DOS.
|
||||
* MS-DOS File Names:: File-name conventions on MS-DOS.
|
||||
* Text and Binary:: Text files on MS-DOS use CRLF to separate lines.
|
||||
* MS-DOS Printing:: How to specify the printer on MS-DOS.
|
||||
* MS-DOS and MULE:: Support for internationalization on MS-DOS.
|
||||
* MS-DOS Processes:: Running subprocesses on MS-DOS.
|
||||
* Windows Processes:: Running subprocesses on Windows.
|
||||
* Windows System Menu:: Controlling what the ALT key does.
|
||||
@end menu
|
||||
|
@ -926,10 +920,10 @@ This edition of the manual is intended for use with GNU Emacs
|
|||
installed on GNU and Unix systems. GNU Emacs can also be used on VMS,
|
||||
MS-DOS (also called MS-DOG), Microsoft Windows, and Macintosh systems.
|
||||
Those systems use different file name syntax; in addition, VMS and
|
||||
MS-DOS do not support all GNU Emacs features. @xref{MS-DOS}, for
|
||||
information about using Emacs on MS-DOS and Windows. @xref{Mac OS},
|
||||
for information about using Emacs on Macintosh. We don't try to
|
||||
describe VMS usage in this manual.
|
||||
MS-DOS do not support all GNU Emacs features. @xref{Emacs and
|
||||
Microsoft Windows}, for information about using Emacs on Windows.
|
||||
@xref{Mac OS}, for information about using Emacs on Macintosh. We
|
||||
don't try to describe VMS usage in this manual.
|
||||
@end iftex
|
||||
|
||||
@node Distrib, Intro, Top, Top
|
||||
|
@ -1604,8 +1598,6 @@ Public License instead of this License.
|
|||
@unnumbered Concept Index
|
||||
@printindex cp
|
||||
|
||||
@summarycontents
|
||||
@contents
|
||||
@bye
|
||||
|
||||
@ignore
|
||||
|
|
966
man/files.texi
966
man/files.texi
File diff suppressed because it is too large
Load diff
|
@ -27,7 +27,7 @@ it terminates all the frames. To delete just one frame, use @kbd{C-x 5
|
|||
|
||||
Emacs compiled for MS-DOS emulates some windowing functionality,
|
||||
so that you can use many of the features described in this chapter.
|
||||
@xref{MS-DOS Mouse}, for more information.
|
||||
@xref{MS-DOS Mouse,,,emacs-xtra,Specialized Emacs Features}.
|
||||
|
||||
@menu
|
||||
* Mouse Commands:: Moving, cutting, and pasting, with the mouse.
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
@c Copyright (C) 1985, 1986, 1987, 1993, 1995, 2002, 2003, 2004,
|
||||
@c 2005, 2006 Free Software Foundation, Inc.
|
||||
@ifclear justgnu
|
||||
@node Manifesto,, MS-DOS, Top
|
||||
@node Manifesto,, Emacs and Microsoft Windows, Top
|
||||
@unnumbered The GNU Manifesto
|
||||
@end ifclear
|
||||
@ifset justgnu
|
||||
|
|
|
@ -128,7 +128,7 @@ What is the latest version of Gnus?
|
|||
Jingle please: Gnus 5.10 is released, get it while it's
|
||||
hot! As well as the step in version number is rather
|
||||
small, Gnus 5.10 has tons of new features which you
|
||||
shouldn't miss. The current release (5.10.6) should be at
|
||||
shouldn't miss. The current release (5.10.8) should be at
|
||||
least as stable as the latest release of the 5.8 series.
|
||||
|
||||
@node [1.2]
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue