summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2005-07-07 12:43:14 +0000
committerMiles Bader <miles@gnu.org>2005-07-07 12:43:14 +0000
commit396df02820e08df2451081a39759ac02c44f10d5 (patch)
treebd52de0814f8dfa267f567cfe96d0ffcc3efa156 /lisp
parent74770cf3f04209bfab5855230a3193af6dac3b16 (diff)
parentdd01b65bd674fae553d7f996844491b6ef9490ed (diff)
downloademacs-396df02820e08df2451081a39759ac02c44f10d5.tar.gz
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-68
Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 459-473) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 86-87) - Update from CVS
Diffstat (limited to 'lisp')
-rw-r--r--lisp/COPYING6
-rw-r--r--lisp/ChangeLog641
-rw-r--r--lisp/Makefile.in4
-rw-r--r--lisp/abbrev.el4
-rw-r--r--lisp/abbrevlist.el4
-rw-r--r--lisp/add-log.el12
-rw-r--r--lisp/align.el4
-rw-r--r--lisp/allout.el4
-rw-r--r--lisp/ansi-color.el4
-rw-r--r--lisp/apropos.el6
-rw-r--r--lisp/arc-mode.el216
-rw-r--r--lisp/array.el4
-rw-r--r--lisp/autoarg.el4
-rw-r--r--lisp/autoinsert.el8
-rw-r--r--lisp/autorevert.el4
-rw-r--r--lisp/avoid.el4
-rw-r--r--lisp/battery.el172
-rw-r--r--lisp/bindings.el4
-rw-r--r--lisp/bookmark.el7
-rw-r--r--lisp/bs.el4
-rw-r--r--lisp/buff-menu.el4
-rw-r--r--lisp/button.el4
-rw-r--r--lisp/calc/calc.el8
-rw-r--r--lisp/calculator.el4
-rw-r--r--lisp/calendar/appt.el4
-rw-r--r--lisp/calendar/cal-bahai.el4
-rw-r--r--lisp/calendar/cal-china.el4
-rw-r--r--lisp/calendar/cal-coptic.el4
-rw-r--r--lisp/calendar/cal-dst.el4
-rw-r--r--lisp/calendar/cal-french.el4
-rw-r--r--lisp/calendar/cal-hebrew.el4
-rw-r--r--lisp/calendar/cal-islam.el4
-rw-r--r--lisp/calendar/cal-iso.el4
-rw-r--r--lisp/calendar/cal-julian.el4
-rw-r--r--lisp/calendar/cal-mayan.el4
-rw-r--r--lisp/calendar/cal-menu.el4
-rw-r--r--lisp/calendar/cal-move.el4
-rw-r--r--lisp/calendar/cal-persia.el4
-rw-r--r--lisp/calendar/cal-tex.el4
-rw-r--r--lisp/calendar/cal-x.el4
-rw-r--r--lisp/calendar/calendar.el4
-rw-r--r--lisp/calendar/diary-lib.el4
-rw-r--r--lisp/calendar/holidays.el4
-rw-r--r--lisp/calendar/icalendar.el4
-rw-r--r--lisp/calendar/lunar.el4
-rw-r--r--lisp/calendar/parse-time.el4
-rw-r--r--lisp/calendar/solar.el4
-rw-r--r--lisp/calendar/time-date.el4
-rw-r--r--lisp/calendar/timeclock.el4
-rw-r--r--lisp/calendar/todo-mode.el4
-rw-r--r--lisp/case-table.el4
-rw-r--r--lisp/cdl.el4
-rw-r--r--lisp/chistory.el4
-rw-r--r--lisp/cmuscheme.el4
-rw-r--r--lisp/comint.el12
-rw-r--r--lisp/compare-w.el4
-rw-r--r--lisp/complete.el4
-rw-r--r--lisp/completion.el4
-rw-r--r--lisp/composite.el4
-rw-r--r--lisp/cus-dep.el4
-rw-r--r--lisp/cus-edit.el4
-rw-r--r--lisp/cus-face.el10
-rw-r--r--lisp/cus-start.el4
-rw-r--r--lisp/cus-theme.el42
-rw-r--r--lisp/custom.el34
-rw-r--r--lisp/cvs-status.el4
-rw-r--r--lisp/dabbrev.el8
-rw-r--r--lisp/delim-col.el12
-rw-r--r--lisp/delsel.el4
-rw-r--r--lisp/descr-text.el4
-rw-r--r--lisp/desktop.el4
-rw-r--r--lisp/diff-mode.el16
-rw-r--r--lisp/diff.el4
-rw-r--r--lisp/dired-aux.el7
-rw-r--r--lisp/dired-x.el4
-rw-r--r--lisp/dired.el6
-rw-r--r--lisp/dirtrack.el4
-rw-r--r--lisp/disp-table.el4
-rw-r--r--lisp/dnd.el4
-rw-r--r--lisp/dos-fns.el4
-rw-r--r--lisp/dos-vars.el4
-rw-r--r--lisp/dos-w32.el4
-rw-r--r--lisp/double.el4
-rw-r--r--lisp/ebuff-menu.el4
-rw-r--r--lisp/echistory.el4
-rw-r--r--lisp/ediff-diff.el6
-rw-r--r--lisp/ediff-help.el4
-rw-r--r--lisp/ediff-hook.el4
-rw-r--r--lisp/ediff-init.el12
-rw-r--r--lisp/ediff-merg.el4
-rw-r--r--lisp/ediff-mult.el10
-rw-r--r--lisp/ediff-ptch.el6
-rw-r--r--lisp/ediff-util.el4
-rw-r--r--lisp/ediff-vers.el4
-rw-r--r--lisp/ediff-wind.el6
-rw-r--r--lisp/ediff.el8
-rw-r--r--lisp/edmacro.el4
-rw-r--r--lisp/ehelp.el4
-rw-r--r--lisp/electric.el4
-rw-r--r--lisp/elide-head.el4
-rw-r--r--lisp/emacs-lisp/advice.el4
-rw-r--r--lisp/emacs-lisp/assoc.el4
-rw-r--r--lisp/emacs-lisp/authors.el4
-rw-r--r--lisp/emacs-lisp/autoload.el4
-rw-r--r--lisp/emacs-lisp/backquote.el4
-rw-r--r--lisp/emacs-lisp/benchmark.el4
-rw-r--r--lisp/emacs-lisp/bindat.el4
-rw-r--r--lisp/emacs-lisp/byte-opt.el4
-rw-r--r--lisp/emacs-lisp/byte-run.el4
-rw-r--r--lisp/emacs-lisp/bytecomp.el11
-rw-r--r--lisp/emacs-lisp/checkdoc.el4
-rw-r--r--lisp/emacs-lisp/cl-compat.el4
-rw-r--r--lisp/emacs-lisp/cl-extra.el4
-rw-r--r--lisp/emacs-lisp/cl-indent.el8
-rw-r--r--lisp/emacs-lisp/cl-macs.el4
-rw-r--r--lisp/emacs-lisp/cl-seq.el4
-rw-r--r--lisp/emacs-lisp/cl-specs.el4
-rw-r--r--lisp/emacs-lisp/cl.el4
-rw-r--r--lisp/emacs-lisp/copyright.el4
-rw-r--r--lisp/emacs-lisp/crm.el23
-rw-r--r--lisp/emacs-lisp/cust-print.el4
-rw-r--r--lisp/emacs-lisp/debug.el8
-rw-r--r--lisp/emacs-lisp/derived.el4
-rw-r--r--lisp/emacs-lisp/disass.el4
-rw-r--r--lisp/emacs-lisp/easy-mmode.el4
-rw-r--r--lisp/emacs-lisp/easymenu.el4
-rw-r--r--lisp/emacs-lisp/edebug.el10
-rw-r--r--lisp/emacs-lisp/eldoc.el4
-rw-r--r--lisp/emacs-lisp/elint.el4
-rw-r--r--lisp/emacs-lisp/elp.el6
-rw-r--r--lisp/emacs-lisp/ewoc.el4
-rw-r--r--lisp/emacs-lisp/find-func.el4
-rw-r--r--lisp/emacs-lisp/find-gc.el4
-rw-r--r--lisp/emacs-lisp/float-sup.el4
-rw-r--r--lisp/emacs-lisp/generic.el4
-rw-r--r--lisp/emacs-lisp/gulp.el4
-rw-r--r--lisp/emacs-lisp/helper.el4
-rw-r--r--lisp/emacs-lisp/levents.el4
-rw-r--r--lisp/emacs-lisp/lisp-mnt.el4
-rw-r--r--lisp/emacs-lisp/lisp-mode.el14
-rw-r--r--lisp/emacs-lisp/lisp.el4
-rw-r--r--lisp/emacs-lisp/lmenu.el4
-rw-r--r--lisp/emacs-lisp/lselect.el4
-rw-r--r--lisp/emacs-lisp/lucid.el4
-rw-r--r--lisp/emacs-lisp/macroexp.el14
-rw-r--r--lisp/emacs-lisp/map-ynp.el4
-rw-r--r--lisp/emacs-lisp/pp.el4
-rw-r--r--lisp/emacs-lisp/re-builder.el4
-rw-r--r--lisp/emacs-lisp/regexp-opt.el4
-rw-r--r--lisp/emacs-lisp/regi.el4
-rw-r--r--lisp/emacs-lisp/ring.el4
-rw-r--r--lisp/emacs-lisp/rx.el4
-rw-r--r--lisp/emacs-lisp/shadow.el4
-rw-r--r--lisp/emacs-lisp/sregex.el4
-rw-r--r--lisp/emacs-lisp/syntax.el4
-rw-r--r--lisp/emacs-lisp/tcover-ses.el4
-rw-r--r--lisp/emacs-lisp/tcover-unsafep.el4
-rw-r--r--lisp/emacs-lisp/testcover.el6
-rw-r--r--lisp/emacs-lisp/timer.el11
-rw-r--r--lisp/emacs-lisp/tq.el4
-rw-r--r--lisp/emacs-lisp/trace.el6
-rw-r--r--lisp/emacs-lisp/unsafep.el4
-rw-r--r--lisp/emacs-lisp/warnings.el4
-rw-r--r--lisp/emacs-lock.el4
-rw-r--r--lisp/emulation/crisp.el4
-rw-r--r--lisp/emulation/cua-base.el18
-rw-r--r--lisp/emulation/cua-gmrk.el12
-rw-r--r--lisp/emulation/cua-rect.el22
-rw-r--r--lisp/emulation/edt-lk201.el4
-rw-r--r--lisp/emulation/edt-mapper.el10
-rw-r--r--lisp/emulation/edt-pc.el4
-rw-r--r--lisp/emulation/edt-vt100.el4
-rw-r--r--lisp/emulation/edt.el37
-rw-r--r--lisp/emulation/keypad.el4
-rw-r--r--lisp/emulation/pc-mode.el4
-rw-r--r--lisp/emulation/pc-select.el4
-rw-r--r--lisp/emulation/tpu-edt.el771
-rw-r--r--lisp/emulation/tpu-extras.el4
-rw-r--r--lisp/emulation/tpu-mapper.el4
-rw-r--r--lisp/emulation/vi.el7
-rw-r--r--lisp/emulation/vip.el17
-rw-r--r--lisp/emulation/viper-cmd.el4
-rw-r--r--lisp/emulation/viper-ex.el6
-rw-r--r--lisp/emulation/viper-init.el4
-rw-r--r--lisp/emulation/viper-keym.el4
-rw-r--r--lisp/emulation/viper-macs.el4
-rw-r--r--lisp/emulation/viper-mous.el6
-rw-r--r--lisp/emulation/viper-util.el4
-rw-r--r--lisp/emulation/viper.el4
-rw-r--r--lisp/emulation/ws-mode.el4
-rw-r--r--lisp/env.el4
-rw-r--r--lisp/eshell/em-alias.el4
-rw-r--r--lisp/eshell/em-banner.el4
-rw-r--r--lisp/eshell/em-basic.el4
-rw-r--r--lisp/eshell/em-cmpl.el4
-rw-r--r--lisp/eshell/em-dirs.el4
-rw-r--r--lisp/eshell/em-glob.el4
-rw-r--r--lisp/eshell/em-hist.el4
-rw-r--r--lisp/eshell/em-ls.el4
-rw-r--r--lisp/eshell/em-pred.el4
-rw-r--r--lisp/eshell/em-prompt.el4
-rw-r--r--lisp/eshell/em-rebind.el4
-rw-r--r--lisp/eshell/em-script.el4
-rw-r--r--lisp/eshell/em-smart.el4
-rw-r--r--lisp/eshell/em-term.el4
-rw-r--r--lisp/eshell/em-unix.el4
-rw-r--r--lisp/eshell/em-xtra.el4
-rw-r--r--lisp/eshell/esh-arg.el4
-rw-r--r--lisp/eshell/esh-cmd.el4
-rw-r--r--lisp/eshell/esh-ext.el4
-rw-r--r--lisp/eshell/esh-io.el4
-rw-r--r--lisp/eshell/esh-maint.el4
-rw-r--r--lisp/eshell/esh-mode.el4
-rw-r--r--lisp/eshell/esh-module.el4
-rw-r--r--lisp/eshell/esh-opt.el4
-rw-r--r--lisp/eshell/esh-proc.el4
-rw-r--r--lisp/eshell/esh-test.el4
-rw-r--r--lisp/eshell/esh-util.el4
-rw-r--r--lisp/eshell/esh-var.el6
-rw-r--r--lisp/eshell/eshell.el8
-rw-r--r--lisp/expand.el4
-rw-r--r--lisp/facemenu.el78
-rw-r--r--lisp/faces.el36
-rw-r--r--lisp/ffap.el4
-rw-r--r--lisp/filecache.el4
-rw-r--r--lisp/files.el4
-rw-r--r--lisp/filesets.el4
-rw-r--r--lisp/find-dired.el4
-rw-r--r--lisp/find-file.el23
-rw-r--r--lisp/find-lisp.el4
-rw-r--r--lisp/finder.el4
-rw-r--r--lisp/flow-ctrl.el4
-rw-r--r--lisp/foldout.el4
-rw-r--r--lisp/follow.el4
-rw-r--r--lisp/font-core.el4
-rw-r--r--lisp/font-lock.el42
-rw-r--r--lisp/format.el4
-rw-r--r--lisp/forms.el4
-rw-r--r--lisp/frame.el4
-rw-r--r--lisp/fringe.el4
-rw-r--r--lisp/generic-x.el4
-rw-r--r--lisp/gnus/ChangeLog35
-rw-r--r--lisp/gnus/binhex.el4
-rw-r--r--lisp/gnus/canlock.el4
-rw-r--r--lisp/gnus/compface.el4
-rw-r--r--lisp/gnus/deuglify.el4
-rw-r--r--lisp/gnus/dig.el4
-rw-r--r--lisp/gnus/dns.el4
-rw-r--r--lisp/gnus/earcon.el4
-rw-r--r--lisp/gnus/flow-fill.el4
-rw-r--r--lisp/gnus/format-spec.el4
-rw-r--r--lisp/gnus/gnus-agent.el4
-rw-r--r--lisp/gnus/gnus-art.el110
-rw-r--r--lisp/gnus/gnus-async.el4
-rw-r--r--lisp/gnus/gnus-audio.el4
-rw-r--r--lisp/gnus/gnus-bcklg.el4
-rw-r--r--lisp/gnus/gnus-cache.el4
-rw-r--r--lisp/gnus/gnus-cite.el4
-rw-r--r--lisp/gnus/gnus-cus.el4
-rw-r--r--lisp/gnus/gnus-delay.el4
-rw-r--r--lisp/gnus/gnus-demon.el4
-rw-r--r--lisp/gnus/gnus-diary.el3
-rw-r--r--lisp/gnus/gnus-dired.el4
-rw-r--r--lisp/gnus/gnus-draft.el4
-rw-r--r--lisp/gnus/gnus-dup.el4
-rw-r--r--lisp/gnus/gnus-eform.el4
-rw-r--r--lisp/gnus/gnus-ems.el4
-rw-r--r--lisp/gnus/gnus-fun.el4
-rw-r--r--lisp/gnus/gnus-gl.el4
-rw-r--r--lisp/gnus/gnus-group.el6
-rw-r--r--lisp/gnus/gnus-int.el4
-rw-r--r--lisp/gnus/gnus-kill.el4
-rw-r--r--lisp/gnus/gnus-logic.el4
-rw-r--r--lisp/gnus/gnus-mh.el4
-rw-r--r--lisp/gnus/gnus-ml.el4
-rw-r--r--lisp/gnus/gnus-mlspl.el4
-rw-r--r--lisp/gnus/gnus-move.el4
-rw-r--r--lisp/gnus/gnus-msg.el4
-rw-r--r--lisp/gnus/gnus-nocem.el6
-rw-r--r--lisp/gnus/gnus-picon.el4
-rw-r--r--lisp/gnus/gnus-range.el4
-rw-r--r--lisp/gnus/gnus-registry.el4
-rw-r--r--lisp/gnus/gnus-salt.el4
-rw-r--r--lisp/gnus/gnus-score.el4
-rw-r--r--lisp/gnus/gnus-setup.el4
-rw-r--r--lisp/gnus/gnus-sieve.el4
-rw-r--r--lisp/gnus/gnus-soup.el4
-rw-r--r--lisp/gnus/gnus-spec.el4
-rw-r--r--lisp/gnus/gnus-srvr.el4
-rw-r--r--lisp/gnus/gnus-start.el4
-rw-r--r--lisp/gnus/gnus-sum.el4
-rw-r--r--lisp/gnus/gnus-topic.el4
-rw-r--r--lisp/gnus/gnus-undo.el4
-rw-r--r--lisp/gnus/gnus-util.el4
-rw-r--r--lisp/gnus/gnus-uu.el4
-rw-r--r--lisp/gnus/gnus-vm.el4
-rw-r--r--lisp/gnus/gnus-win.el4
-rw-r--r--lisp/gnus/gnus.el6
-rw-r--r--lisp/gnus/hex-util.el4
-rw-r--r--lisp/gnus/html2text.el4
-rw-r--r--lisp/gnus/ietf-drums.el4
-rw-r--r--lisp/gnus/imap.el4
-rw-r--r--lisp/gnus/mail-parse.el4
-rw-r--r--lisp/gnus/mail-prsvr.el4
-rw-r--r--lisp/gnus/mail-source.el4
-rw-r--r--lisp/gnus/mailcap.el4
-rw-r--r--lisp/gnus/message.el22
-rw-r--r--lisp/gnus/messcompat.el4
-rw-r--r--lisp/gnus/mm-bodies.el4
-rw-r--r--lisp/gnus/mm-decode.el4
-rw-r--r--lisp/gnus/mm-encode.el4
-rw-r--r--lisp/gnus/mm-extern.el4
-rw-r--r--lisp/gnus/mm-partial.el4
-rw-r--r--lisp/gnus/mm-url.el4
-rw-r--r--lisp/gnus/mm-util.el4
-rw-r--r--lisp/gnus/mm-uu.el4
-rw-r--r--lisp/gnus/mm-view.el4
-rw-r--r--lisp/gnus/mml-sec.el4
-rw-r--r--lisp/gnus/mml-smime.el4
-rw-r--r--lisp/gnus/mml.el4
-rw-r--r--lisp/gnus/mml1991.el4
-rw-r--r--lisp/gnus/mml2015.el4
-rw-r--r--lisp/gnus/nnagent.el4
-rw-r--r--lisp/gnus/nnbabyl.el4
-rw-r--r--lisp/gnus/nndb.el4
-rw-r--r--lisp/gnus/nndiary.el3
-rw-r--r--lisp/gnus/nndir.el4
-rw-r--r--lisp/gnus/nndoc.el4
-rw-r--r--lisp/gnus/nndraft.el4
-rw-r--r--lisp/gnus/nneething.el4
-rw-r--r--lisp/gnus/nnfolder.el4
-rw-r--r--lisp/gnus/nngateway.el4
-rw-r--r--lisp/gnus/nnheader.el4
-rw-r--r--lisp/gnus/nnimap.el4
-rw-r--r--lisp/gnus/nnkiboze.el4
-rw-r--r--lisp/gnus/nnlistserv.el4
-rw-r--r--lisp/gnus/nnmail.el6
-rw-r--r--lisp/gnus/nnmaildir.el4
-rw-r--r--lisp/gnus/nnmbox.el4
-rw-r--r--lisp/gnus/nnmh.el4
-rw-r--r--lisp/gnus/nnml.el4
-rw-r--r--lisp/gnus/nnnil.el4
-rw-r--r--lisp/gnus/nnoo.el4
-rw-r--r--lisp/gnus/nnrss.el4
-rw-r--r--lisp/gnus/nnslashdot.el4
-rw-r--r--lisp/gnus/nnsoup.el4
-rw-r--r--lisp/gnus/nnspool.el4
-rw-r--r--lisp/gnus/nntp.el3
-rw-r--r--lisp/gnus/nnultimate.el4
-rw-r--r--lisp/gnus/nnvirtual.el4
-rw-r--r--lisp/gnus/nnwarchive.el4
-rw-r--r--lisp/gnus/nnweb.el4
-rw-r--r--lisp/gnus/nnwfm.el4
-rw-r--r--lisp/gnus/pgg-def.el4
-rw-r--r--lisp/gnus/pgg-gpg.el6
-rw-r--r--lisp/gnus/pgg-parse.el6
-rw-r--r--lisp/gnus/pgg-pgp.el6
-rw-r--r--lisp/gnus/pgg-pgp5.el6
-rw-r--r--lisp/gnus/pgg.el4
-rw-r--r--lisp/gnus/pop3.el6
-rw-r--r--lisp/gnus/qp.el4
-rw-r--r--lisp/gnus/rfc1843.el4
-rw-r--r--lisp/gnus/rfc2045.el4
-rw-r--r--lisp/gnus/rfc2047.el4
-rw-r--r--lisp/gnus/rfc2104.el4
-rw-r--r--lisp/gnus/rfc2231.el4
-rw-r--r--lisp/gnus/score-mode.el4
-rw-r--r--lisp/gnus/sha1.el4
-rw-r--r--lisp/gnus/sieve-manage.el4
-rw-r--r--lisp/gnus/sieve-mode.el4
-rw-r--r--lisp/gnus/sieve.el4
-rw-r--r--lisp/gnus/smiley.el4
-rw-r--r--lisp/gnus/smime.el4
-rw-r--r--lisp/gnus/spam-report.el4
-rw-r--r--lisp/gnus/spam-stat.el4
-rw-r--r--lisp/gnus/spam.el4
-rw-r--r--lisp/gnus/starttls.el4
-rw-r--r--lisp/gnus/utf7.el4
-rw-r--r--lisp/gnus/uudecode.el4
-rw-r--r--lisp/gnus/webmail.el4
-rw-r--r--lisp/gnus/yenc.el4
-rw-r--r--lisp/gs.el4
-rw-r--r--lisp/help-at-pt.el4
-rw-r--r--lisp/help-fns.el8
-rw-r--r--lisp/help-macro.el4
-rw-r--r--lisp/help-mode.el4
-rw-r--r--lisp/help.el4
-rw-r--r--lisp/hexl.el4
-rw-r--r--lisp/hi-lock.el16
-rw-r--r--lisp/hilit-chg.el4
-rw-r--r--lisp/hippie-exp.el4
-rw-r--r--lisp/hl-line.el4
-rw-r--r--lisp/ibuf-ext.el4
-rw-r--r--lisp/ibuf-macs.el4
-rw-r--r--lisp/ibuffer.el4
-rw-r--r--lisp/icomplete.el4
-rw-r--r--lisp/ido.el4
-rw-r--r--lisp/ielm.el4
-rw-r--r--lisp/iimage.el4
-rw-r--r--lisp/image-file.el4
-rw-r--r--lisp/image-mode.el4
-rw-r--r--lisp/image.el4
-rw-r--r--lisp/imenu.el4
-rw-r--r--lisp/indent.el6
-rw-r--r--lisp/info-look.el4
-rw-r--r--lisp/info-xref.el4
-rw-r--r--lisp/info.el20
-rw-r--r--lisp/informat.el4
-rw-r--r--lisp/international/ccl.el4
-rw-r--r--lisp/international/characters.el4
-rw-r--r--lisp/international/codepage.el4
-rw-r--r--lisp/international/encoded-kb.el4
-rw-r--r--lisp/international/fontset.el4
-rw-r--r--lisp/international/isearch-x.el4
-rw-r--r--lisp/international/iso-ascii.el4
-rw-r--r--lisp/international/iso-cvt.el4
-rw-r--r--lisp/international/iso-insert.el4
-rw-r--r--lisp/international/iso-transl.el4
-rw-r--r--lisp/international/ja-dic-cnv.el4
-rw-r--r--lisp/international/ja-dic-utl.el4
-rw-r--r--lisp/international/kinsoku.el4
-rw-r--r--lisp/international/kkc.el4
-rw-r--r--lisp/international/latexenc.el4
-rw-r--r--lisp/international/latin1-disp.el4
-rw-r--r--lisp/international/mule-cmds.el10
-rw-r--r--lisp/international/mule-conf.el4
-rw-r--r--lisp/international/mule-diag.el4
-rw-r--r--lisp/international/mule-util.el4
-rw-r--r--lisp/international/mule.el4
-rw-r--r--lisp/international/ogonek.el4
-rw-r--r--lisp/international/quail.el4
-rw-r--r--lisp/international/swedish.el4
-rw-r--r--lisp/international/titdic-cnv.el12
-rw-r--r--lisp/international/utf-7.el4
-rw-r--r--lisp/isearch.el4
-rw-r--r--lisp/isearchb.el4
-rw-r--r--lisp/iswitchb.el4
-rw-r--r--lisp/jit-lock.el4
-rw-r--r--lisp/jka-cmpr-hook.el8
-rw-r--r--lisp/jka-compr.el4
-rw-r--r--lisp/kermit.el4
-rw-r--r--lisp/kmacro.el4
-rw-r--r--lisp/language/china-util.el4
-rw-r--r--lisp/language/chinese.el4
-rw-r--r--lisp/language/cyril-util.el4
-rw-r--r--lisp/language/cyrillic.el4
-rw-r--r--lisp/language/czech.el4
-rw-r--r--lisp/language/devan-util.el4
-rw-r--r--lisp/language/devanagari.el4
-rw-r--r--lisp/language/english.el4
-rw-r--r--lisp/language/ethio-util.el4
-rw-r--r--lisp/language/ethiopic.el4
-rw-r--r--lisp/language/european.el4
-rw-r--r--lisp/language/georgian.el4
-rw-r--r--lisp/language/greek.el4
-rw-r--r--lisp/language/hebrew.el4
-rw-r--r--lisp/language/ind-util.el4
-rw-r--r--lisp/language/indian.el4
-rw-r--r--lisp/language/japan-util.el4
-rw-r--r--lisp/language/japanese.el4
-rw-r--r--lisp/language/kannada.el4
-rw-r--r--lisp/language/knd-util.el4
-rw-r--r--lisp/language/korea-util.el4
-rw-r--r--lisp/language/korean.el4
-rw-r--r--lisp/language/lao-util.el4
-rw-r--r--lisp/language/lao.el4
-rw-r--r--lisp/language/malayalam.el4
-rw-r--r--lisp/language/misc-lang.el4
-rw-r--r--lisp/language/mlm-util.el4
-rw-r--r--lisp/language/romanian.el4
-rw-r--r--lisp/language/slovak.el4
-rw-r--r--lisp/language/tamil.el4
-rw-r--r--lisp/language/thai-util.el4
-rw-r--r--lisp/language/thai-word.el3
-rw-r--r--lisp/language/thai.el4
-rw-r--r--lisp/language/tibet-util.el4
-rw-r--r--lisp/language/tibetan.el4
-rw-r--r--lisp/language/tml-util.el4
-rw-r--r--lisp/language/utf-8-lang.el4
-rw-r--r--lisp/language/viet-util.el4
-rw-r--r--lisp/language/vietnamese.el4
-rw-r--r--lisp/ledit.el4
-rw-r--r--lisp/loadhist.el4
-rw-r--r--lisp/loadup.el4
-rw-r--r--lisp/locate.el4
-rw-r--r--lisp/log-edit.el4
-rw-r--r--lisp/log-view.el4
-rw-r--r--lisp/longlines.el4
-rw-r--r--lisp/lpr.el8
-rw-r--r--lisp/ls-lisp.el4
-rw-r--r--lisp/macros.el4
-rw-r--r--lisp/mail/blessmail.el4
-rw-r--r--lisp/mail/emacsbug.el4
-rw-r--r--lisp/mail/footnote.el4
-rw-r--r--lisp/mail/mail-extr.el4
-rw-r--r--lisp/mail/mail-hist.el4
-rw-r--r--lisp/mail/mail-utils.el4
-rw-r--r--lisp/mail/mailabbrev.el4
-rw-r--r--lisp/mail/mailalias.el6
-rw-r--r--lisp/mail/mailheader.el4
-rw-r--r--lisp/mail/metamail.el4
-rw-r--r--lisp/mail/mspools.el4
-rw-r--r--lisp/mail/reporter.el4
-rw-r--r--lisp/mail/rfc2368.el4
-rw-r--r--lisp/mail/rfc822.el4
-rw-r--r--lisp/mail/rmail-spam-filter.el4
-rw-r--r--lisp/mail/rmail.el4
-rw-r--r--lisp/mail/rmailedit.el4
-rw-r--r--lisp/mail/rmailkwd.el4
-rw-r--r--lisp/mail/rmailmsc.el4
-rw-r--r--lisp/mail/rmailout.el4
-rw-r--r--lisp/mail/rmailsort.el4
-rw-r--r--lisp/mail/rmailsum.el38
-rw-r--r--lisp/mail/sendmail.el4
-rw-r--r--lisp/mail/smtpmail.el4
-rw-r--r--lisp/mail/supercite.el16
-rw-r--r--lisp/mail/uce.el4
-rw-r--r--lisp/mail/undigest.el4
-rw-r--r--lisp/mail/unrmail.el4
-rw-r--r--lisp/mail/vms-pmail.el4
-rw-r--r--lisp/makefile.w32-in7
-rw-r--r--lisp/makesum.el4
-rw-r--r--lisp/man.el4
-rw-r--r--lisp/master.el4
-rw-r--r--lisp/menu-bar.el4
-rw-r--r--lisp/mh-e/ChangeLog4
-rw-r--r--lisp/mh-e/mh-acros.el4
-rw-r--r--lisp/mh-e/mh-alias.el4
-rw-r--r--lisp/mh-e/mh-comp.el4
-rw-r--r--lisp/mh-e/mh-customize.el4
-rw-r--r--lisp/mh-e/mh-e.el4
-rw-r--r--lisp/mh-e/mh-funcs.el4
-rw-r--r--lisp/mh-e/mh-gnus.el4
-rw-r--r--lisp/mh-e/mh-identity.el4
-rw-r--r--lisp/mh-e/mh-inc.el4
-rw-r--r--lisp/mh-e/mh-index.el4
-rw-r--r--lisp/mh-e/mh-init.el4
-rw-r--r--lisp/mh-e/mh-junk.el4
-rw-r--r--lisp/mh-e/mh-mime.el4
-rw-r--r--lisp/mh-e/mh-pick.el4
-rw-r--r--lisp/mh-e/mh-print.el4
-rw-r--r--lisp/mh-e/mh-seq.el4
-rw-r--r--lisp/mh-e/mh-speed.el4
-rw-r--r--lisp/mh-e/mh-utils.el4
-rw-r--r--lisp/midnight.el4
-rw-r--r--lisp/minibuf-eldef.el4
-rw-r--r--lisp/misc.el4
-rw-r--r--lisp/mouse-copy.el4
-rw-r--r--lisp/mouse-drag.el4
-rw-r--r--lisp/mouse-sel.el4
-rw-r--r--lisp/mouse.el4
-rw-r--r--lisp/msb.el4
-rw-r--r--lisp/mwheel.el4
-rw-r--r--lisp/net/ange-ftp.el4
-rw-r--r--lisp/net/browse-url.el6
-rw-r--r--lisp/net/eudc-bob.el4
-rw-r--r--lisp/net/eudc-export.el4
-rw-r--r--lisp/net/eudc-hotlist.el4
-rw-r--r--lisp/net/eudc-vars.el4
-rw-r--r--lisp/net/eudc.el4
-rw-r--r--lisp/net/eudcb-bbdb.el4
-rw-r--r--lisp/net/eudcb-ldap.el4
-rw-r--r--lisp/net/eudcb-ph.el4
-rw-r--r--lisp/net/goto-addr.el4
-rw-r--r--lisp/net/ldap.el4
-rw-r--r--lisp/net/net-utils.el4
-rw-r--r--lisp/net/netrc.el4
-rw-r--r--lisp/net/quickurl.el4
-rw-r--r--lisp/net/rcompile.el6
-rw-r--r--lisp/net/rlogin.el6
-rw-r--r--lisp/net/snmp-mode.el4
-rw-r--r--lisp/net/telnet.el4
-rw-r--r--lisp/net/tls.el4
-rw-r--r--lisp/net/tramp-ftp.el4
-rw-r--r--lisp/net/tramp-smb.el4
-rw-r--r--lisp/net/tramp-util.el4
-rw-r--r--lisp/net/tramp-uu.el4
-rw-r--r--lisp/net/tramp-vc.el4
-rw-r--r--lisp/net/tramp.el4
-rw-r--r--lisp/net/trampver.el4
-rw-r--r--lisp/net/webjump.el4
-rw-r--r--lisp/net/zone-mode.el4
-rw-r--r--lisp/newcomment.el4
-rw-r--r--lisp/novice.el4
-rw-r--r--lisp/obsolete/awk-mode.el4
-rw-r--r--lisp/obsolete/fast-lock.el4
-rw-r--r--lisp/obsolete/float.el4
-rw-r--r--lisp/obsolete/hilit19.el4
-rw-r--r--lisp/obsolete/hscroll.el4
-rw-r--r--lisp/obsolete/iso-acc.el4
-rw-r--r--lisp/obsolete/iso-swed.el (renamed from lisp/international/iso-swed.el)4
-rw-r--r--lisp/obsolete/keyswap.el4
-rw-r--r--lisp/obsolete/lazy-lock.el4
-rw-r--r--lisp/obsolete/mlsupport.el4
-rw-r--r--lisp/obsolete/ooutline.el6
-rw-r--r--lisp/obsolete/options.el4
-rw-r--r--lisp/obsolete/profile.el4
-rw-r--r--lisp/obsolete/rnews.el4
-rw-r--r--lisp/obsolete/rnewspost.el4
-rw-r--r--lisp/obsolete/rsz-mini.el4
-rw-r--r--lisp/obsolete/scribe.el4
-rw-r--r--lisp/obsolete/sun-curs.el4
-rw-r--r--lisp/obsolete/sun-fns.el4
-rw-r--r--lisp/obsolete/uncompress.el4
-rw-r--r--lisp/obsolete/x-apollo.el4
-rw-r--r--lisp/obsolete/x-menu.el4
-rw-r--r--lisp/outline.el6
-rw-r--r--lisp/paren.el4
-rw-r--r--lisp/paths.el4
-rw-r--r--lisp/pcmpl-cvs.el6
-rw-r--r--lisp/pcmpl-gnu.el4
-rw-r--r--lisp/pcmpl-linux.el4
-rw-r--r--lisp/pcmpl-rpm.el6
-rw-r--r--lisp/pcmpl-unix.el4
-rw-r--r--lisp/pcomplete.el4
-rw-r--r--lisp/pcvs-defs.el4
-rw-r--r--lisp/pcvs-info.el4
-rw-r--r--lisp/pcvs-parse.el4
-rw-r--r--lisp/pcvs-util.el4
-rw-r--r--lisp/pcvs.el4
-rw-r--r--lisp/play/5x5.el4
-rw-r--r--lisp/play/animate.el4
-rw-r--r--lisp/play/blackbox.el4
-rw-r--r--lisp/play/bruce.el4
-rw-r--r--lisp/play/cookie1.el4
-rw-r--r--lisp/play/decipher.el4
-rw-r--r--lisp/play/dissociate.el4
-rw-r--r--lisp/play/doctor.el4
-rw-r--r--lisp/play/dunnet.el4
-rw-r--r--lisp/play/fortune.el4
-rw-r--r--lisp/play/gamegrid.el4
-rw-r--r--lisp/play/gametree.el4
-rw-r--r--lisp/play/gomoku.el4
-rw-r--r--lisp/play/handwrite.el4
-rw-r--r--lisp/play/landmark.el4
-rw-r--r--lisp/play/life.el4
-rw-r--r--lisp/play/morse.el4
-rw-r--r--lisp/play/mpuz.el4
-rw-r--r--lisp/play/pong.el4
-rw-r--r--lisp/play/snake.el4
-rw-r--r--lisp/play/solitaire.el4
-rw-r--r--lisp/play/spook.el4
-rw-r--r--lisp/play/tetris.el4
-rw-r--r--lisp/play/yow.el4
-rw-r--r--lisp/play/zone.el4
-rw-r--r--lisp/printing.el6
-rw-r--r--lisp/progmodes/ada-mode.el4
-rw-r--r--lisp/progmodes/ada-prj.el4
-rw-r--r--lisp/progmodes/ada-xref.el4
-rw-r--r--lisp/progmodes/antlr-mode.el4
-rw-r--r--lisp/progmodes/asm-mode.el4
-rw-r--r--lisp/progmodes/autoconf.el4
-rw-r--r--lisp/progmodes/cc-awk.el4
-rw-r--r--lisp/progmodes/cc-bytecomp.el4
-rw-r--r--lisp/progmodes/cc-cmds.el4
-rw-r--r--lisp/progmodes/cc-compat.el4
-rw-r--r--lisp/progmodes/cc-defs.el4
-rw-r--r--lisp/progmodes/cc-fonts.el4
-rw-r--r--lisp/progmodes/cc-langs.el4
-rw-r--r--lisp/progmodes/cc-menus.el4
-rw-r--r--lisp/progmodes/cc-styles.el4
-rw-r--r--lisp/progmodes/cc-vars.el4
-rw-r--r--lisp/progmodes/cfengine.el4
-rw-r--r--lisp/progmodes/cmacexp.el4
-rw-r--r--lisp/progmodes/compile.el4
-rw-r--r--lisp/progmodes/cperl-mode.el4
-rw-r--r--lisp/progmodes/cpp.el4
-rw-r--r--lisp/progmodes/cwarn.el4
-rw-r--r--lisp/progmodes/dcl-mode.el4
-rw-r--r--lisp/progmodes/delphi.el16
-rw-r--r--lisp/progmodes/ebnf-abn.el4
-rw-r--r--lisp/progmodes/ebnf-bnf.el4
-rw-r--r--lisp/progmodes/ebnf-dtd.el4
-rw-r--r--lisp/progmodes/ebnf-ebx.el4
-rw-r--r--lisp/progmodes/ebnf-iso.el4
-rw-r--r--lisp/progmodes/ebnf-otz.el4
-rw-r--r--lisp/progmodes/ebnf-yac.el4
-rw-r--r--lisp/progmodes/ebnf2ps.el32
-rw-r--r--lisp/progmodes/ebrowse.el6
-rw-r--r--lisp/progmodes/etags.el6
-rw-r--r--lisp/progmodes/executable.el8
-rw-r--r--lisp/progmodes/f90.el4
-rw-r--r--lisp/progmodes/flymake.el153
-rw-r--r--lisp/progmodes/fortran.el4
-rw-r--r--lisp/progmodes/gdb-ui.el4
-rw-r--r--lisp/progmodes/glasses.el4
-rw-r--r--lisp/progmodes/grep.el4
-rw-r--r--lisp/progmodes/gud.el10
-rw-r--r--lisp/progmodes/hideif.el10
-rw-r--r--lisp/progmodes/hideshow.el4
-rw-r--r--lisp/progmodes/icon.el4
-rw-r--r--lisp/progmodes/idlw-complete-structtag.el243
-rw-r--r--lisp/progmodes/idlw-help.el181
-rw-r--r--lisp/progmodes/idlw-rinfo.el228
-rw-r--r--lisp/progmodes/idlw-shell.el1105
-rw-r--r--lisp/progmodes/idlw-toolbar.el8
-rw-r--r--lisp/progmodes/idlwave.el97
-rw-r--r--lisp/progmodes/inf-lisp.el4
-rw-r--r--lisp/progmodes/ld-script.el4
-rw-r--r--lisp/progmodes/m4-mode.el4
-rw-r--r--lisp/progmodes/make-mode.el4
-rw-r--r--lisp/progmodes/mantemp.el4
-rw-r--r--lisp/progmodes/meta-mode.el4
-rw-r--r--lisp/progmodes/mixal-mode.el4
-rw-r--r--lisp/progmodes/octave-hlp.el4
-rw-r--r--lisp/progmodes/octave-inf.el4
-rw-r--r--lisp/progmodes/octave-mod.el4
-rw-r--r--lisp/progmodes/pascal.el6
-rw-r--r--lisp/progmodes/perl-mode.el4
-rw-r--r--lisp/progmodes/prolog.el12
-rw-r--r--lisp/progmodes/ps-mode.el4
-rw-r--r--lisp/progmodes/python.el8
-rw-r--r--lisp/progmodes/scheme.el8
-rw-r--r--lisp/progmodes/sh-script.el12
-rw-r--r--lisp/progmodes/simula.el4
-rw-r--r--lisp/progmodes/sql.el8
-rw-r--r--lisp/progmodes/tcl.el10
-rw-r--r--lisp/progmodes/vhdl-mode.el6
-rw-r--r--lisp/progmodes/which-func.el4
-rw-r--r--lisp/progmodes/xscheme.el4
-rw-r--r--lisp/ps-bdf.el4
-rw-r--r--lisp/ps-mule.el4
-rw-r--r--lisp/ps-print.el32
-rw-r--r--lisp/recentf.el4
-rw-r--r--lisp/rect.el4
-rw-r--r--lisp/register.el4
-rw-r--r--lisp/repeat.el4
-rw-r--r--lisp/replace.el23
-rw-r--r--lisp/reposition.el4
-rw-r--r--lisp/resume.el4
-rw-r--r--lisp/reveal.el4
-rw-r--r--lisp/rfn-eshadow.el4
-rw-r--r--lisp/rot13.el4
-rw-r--r--lisp/ruler-mode.el4
-rw-r--r--lisp/s-region.el4
-rw-r--r--lisp/saveplace.el4
-rw-r--r--lisp/scroll-all.el4
-rw-r--r--lisp/scroll-bar.el4
-rw-r--r--lisp/select.el4
-rw-r--r--lisp/server.el4
-rw-r--r--lisp/ses.el18
-rw-r--r--lisp/shadowfile.el4
-rw-r--r--lisp/shell.el12
-rw-r--r--lisp/simple.el37
-rw-r--r--lisp/skeleton.el4
-rw-r--r--lisp/smerge-mode.el7
-rw-r--r--lisp/sort.el4
-rw-r--r--lisp/soundex.el4
-rw-r--r--lisp/speedbar.el4
-rw-r--r--lisp/startup.el8
-rw-r--r--lisp/strokes.el28
-rw-r--r--lisp/subr.el4
-rw-r--r--lisp/tabify.el4
-rw-r--r--lisp/talk.el4
-rw-r--r--lisp/tar-mode.el4
-rw-r--r--lisp/tempo.el4
-rw-r--r--lisp/term.el10
-rw-r--r--lisp/term/AT386.el4
-rw-r--r--lisp/term/bg-mouse.el4
-rw-r--r--lisp/term/internal.el4
-rw-r--r--lisp/term/iris-ansi.el4
-rw-r--r--lisp/term/mac-win.el4
-rw-r--r--lisp/term/news.el4
-rw-r--r--lisp/term/pc-win.el4
-rw-r--r--lisp/term/rxvt.el4
-rw-r--r--lisp/term/sun-mouse.el4
-rw-r--r--lisp/term/sun.el4
-rw-r--r--lisp/term/sup-mouse.el4
-rw-r--r--lisp/term/tty-colors.el4
-rw-r--r--lisp/term/tvi970.el4
-rw-r--r--lisp/term/vt100.el4
-rw-r--r--lisp/term/w32-win.el4
-rw-r--r--lisp/term/wyse50.el4
-rw-r--r--lisp/term/x-win.el4
-rw-r--r--lisp/term/xterm.el4
-rw-r--r--lisp/terminal.el4
-rw-r--r--lisp/textmodes/artist.el36
-rw-r--r--lisp/textmodes/bib-mode.el4
-rw-r--r--lisp/textmodes/bibtex.el10
-rw-r--r--lisp/textmodes/conf-mode.el4
-rw-r--r--lisp/textmodes/dns-mode.el4
-rw-r--r--lisp/textmodes/enriched.el6
-rw-r--r--lisp/textmodes/fill.el4
-rw-r--r--lisp/textmodes/flyspell.el4
-rw-r--r--lisp/textmodes/ispell.el4
-rw-r--r--lisp/textmodes/makeinfo.el6
-rw-r--r--lisp/textmodes/nroff-mode.el4
-rw-r--r--lisp/textmodes/org.el6495
-rw-r--r--lisp/textmodes/page-ext.el8
-rw-r--r--lisp/textmodes/page.el4
-rw-r--r--lisp/textmodes/paragraphs.el4
-rw-r--r--lisp/textmodes/picture.el4
-rw-r--r--lisp/textmodes/po.el4
-rw-r--r--lisp/textmodes/refbib.el4
-rw-r--r--lisp/textmodes/refer.el4
-rw-r--r--lisp/textmodes/refill.el4
-rw-r--r--lisp/textmodes/reftex-auc.el4
-rw-r--r--lisp/textmodes/reftex-cite.el4
-rw-r--r--lisp/textmodes/reftex-dcr.el4
-rw-r--r--lisp/textmodes/reftex-global.el4
-rw-r--r--lisp/textmodes/reftex-index.el4
-rw-r--r--lisp/textmodes/reftex-parse.el4
-rw-r--r--lisp/textmodes/reftex-ref.el4
-rw-r--r--lisp/textmodes/reftex-sel.el4
-rw-r--r--lisp/textmodes/reftex-toc.el4
-rw-r--r--lisp/textmodes/reftex-vars.el4
-rw-r--r--lisp/textmodes/reftex.el4
-rw-r--r--lisp/textmodes/sgml-mode.el16
-rw-r--r--lisp/textmodes/spell.el4
-rw-r--r--lisp/textmodes/table.el34
-rw-r--r--lisp/textmodes/tex-mode.el14
-rw-r--r--lisp/textmodes/texinfmt.el4
-rw-r--r--lisp/textmodes/texinfo.el8
-rw-r--r--lisp/textmodes/texnfo-upd.el4
-rw-r--r--lisp/textmodes/text-mode.el4
-rw-r--r--lisp/textmodes/tildify.el4
-rw-r--r--lisp/textmodes/two-column.el6
-rw-r--r--lisp/textmodes/underline.el4
-rw-r--r--lisp/thumbs.el4
-rw-r--r--lisp/time-stamp.el4
-rw-r--r--lisp/time.el4
-rw-r--r--lisp/timezone.el4
-rw-r--r--lisp/tmm.el4
-rw-r--r--lisp/toolbar/tool-bar.el4
-rw-r--r--lisp/tooltip.el6
-rw-r--r--lisp/tree-widget.el639
-rw-r--r--lisp/type-break.el4
-rw-r--r--lisp/uniquify.el6
-rw-r--r--lisp/url/ChangeLog15
-rw-r--r--lisp/url/url-about.el106
-rw-r--r--lisp/url/url-auth.el4
-rw-r--r--lisp/url/url-cache.el4
-rw-r--r--lisp/url/url-cid.el4
-rw-r--r--lisp/url/url-cookie.el6
-rw-r--r--lisp/url/url-dav.el4
-rw-r--r--lisp/url/url-dired.el4
-rw-r--r--lisp/url/url-expand.el4
-rw-r--r--lisp/url/url-file.el4
-rw-r--r--lisp/url/url-ftp.el4
-rw-r--r--lisp/url/url-gw.el6
-rw-r--r--lisp/url/url-handlers.el4
-rw-r--r--lisp/url/url-history.el8
-rw-r--r--lisp/url/url-http.el4
-rw-r--r--lisp/url/url-https.el4
-rw-r--r--lisp/url/url-imap.el4
-rw-r--r--lisp/url/url-irc.el4
-rw-r--r--lisp/url/url-ldap.el4
-rw-r--r--lisp/url/url-mailto.el4
-rw-r--r--lisp/url/url-methods.el4
-rw-r--r--lisp/url/url-misc.el4
-rw-r--r--lisp/url/url-news.el8
-rw-r--r--lisp/url/url-nfs.el4
-rw-r--r--lisp/url/url-ns.el4
-rw-r--r--lisp/url/url-parse.el4
-rw-r--r--lisp/url/url-privacy.el4
-rw-r--r--lisp/url/url-proxy.el4
-rw-r--r--lisp/url/url-util.el4
-rw-r--r--lisp/url/url-vars.el14
-rw-r--r--lisp/url/url.el4
-rw-r--r--lisp/url/vc-dav.el4
-rw-r--r--lisp/userlock.el4
-rw-r--r--lisp/vc-arch.el4
-rw-r--r--lisp/vc-cvs.el4
-rw-r--r--lisp/vc-hooks.el4
-rw-r--r--lisp/vc-mcvs.el4
-rw-r--r--lisp/vc-rcs.el4
-rw-r--r--lisp/vc-sccs.el4
-rw-r--r--lisp/vc-svn.el4
-rw-r--r--lisp/vc.el4
-rw-r--r--lisp/vcursor.el4
-rw-r--r--lisp/version.el4
-rw-r--r--lisp/view.el4
-rw-r--r--lisp/vms-patch.el4
-rw-r--r--lisp/vmsproc.el4
-rw-r--r--lisp/vt-control.el4
-rw-r--r--lisp/vt100-led.el4
-rw-r--r--lisp/w32-fns.el4
-rw-r--r--lisp/w32-vars.el8
-rw-r--r--lisp/wdired.el4
-rw-r--r--lisp/whitespace.el4
-rw-r--r--lisp/wid-browse.el4
-rw-r--r--lisp/wid-edit.el4
-rw-r--r--lisp/widget.el4
-rw-r--r--lisp/windmove.el4
-rw-r--r--lisp/window.el4
-rw-r--r--lisp/winner.el4
-rw-r--r--lisp/woman.el4
-rw-r--r--lisp/x-dnd.el4
-rw-r--r--lisp/xml.el4
-rw-r--r--lisp/xt-mouse.el4
890 files changed, 8452 insertions, 7280 deletions
diff --git a/lisp/COPYING b/lisp/COPYING
index d60c31a97a5..3912109b5cd 100644
--- a/lisp/COPYING
+++ b/lisp/COPYING
@@ -2,7 +2,7 @@
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -305,7 +305,7 @@ the "copyright" line and a pointer to where the full notice is found.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Also add information on how to contact you by electronic and paper mail.
@@ -313,7 +313,7 @@ Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
- Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 23c34872774..c7c2c8c5be3 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,528 @@
+2005-07-07 Nick Roberts <nickrob@snap.net.nz>
+
+ * progmodes/gud.el: Require font-lock for displaying errors.
+ Used by gdb-ui.el.
+
+2005-07-07 Juanma Barranquero <lekktu@gmail.com>
+
+ * hi-lock.el (hi-lock-find-patterns): Protect also against invalid
+ values for the pattern lists which are `read'able but not
+ `append'able (like symbols).
+
+2005-07-06 Richard M. Stallman <rms@gnu.org>
+
+ * progmodes/flymake.el (flymake-float-time): Instead of
+ with-no-warnings, test for xemacs.
+ (flymake-replace-regexp-in-string): Test fboundp of replace-in-string
+ to avoid warning.
+
+2005-07-06 Juanma Barranquero <lekktu@gmail.com>
+
+ * w32-vars.el (w32-fixed-font-alist): Fix typo in `defcustom' tag.
+
+2005-07-05 Lute Kamstra <lute@gnu.org>
+
+ * battery.el: Add support for Darwin (with much debugging help
+ from Samuel Lauber <sam124@operamail.com>).
+ (battery-status-function, battery-echo-area-format)
+ (battery-mode-line-format): Add support for pmset on Darwin.
+ (battery-load-low, battery-load-critical): New user options.
+ (battery-pmset): New function.
+
+2005-07-05 Lute Kamstra <lute@gnu.org>
+
+ Update FSF's address in GPL notices.
+
+ * textmodes/page-ext.el: Update FSF's address.
+
+2005-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/lisp-mode.el (lisp-mode-variables): Prevent adaptive
+ filling from using prefix when filling a single-line docstring.
+
+ * progmodes/flymake.el: Remove useless eval-when-compile.
+
+ * arc-mode.el (archive-lzh-ogm): Reorder save excursion/restriction.
+
+2005-07-04 Richard M. Stallman <rms@gnu.org>
+
+ * textmodes/org.el (org-file-apps-defaults-gnu):
+ Rename from org-file-apps-defaults-linux.
+ (org-default-apps): Don't test system-type for `linux'.
+ (org-file-apps): Doc fix.
+
+2005-07-04 David Ponce <david@dponce.com>
+
+ * tree-widget.el: Improve header Commentary section.
+ (tree-widget) [defgroup]
+ (tree-widget-image-enable, tree-widget-themes-directory)
+ (tree-widget-theme, tree-widget-image-properties-emacs)
+ (tree-widget-image-properties-xemacs, tree-widget-create-image)
+ (tree-widget-image-formats, tree-widget-control)
+ (tree-widget-empty-control, tree-widget-leaf-control
+ (tree-widget-guide, tree-widget-end-guide, tree-widget-no-guide)
+ (tree-widget-handle, tree-widget-no-handle, tree-widget-p)
+ (tree-widget-keep, tree-widget-after-toggle-functions)
+ (tree-widget-open-node, tree-widget-close-node): Doc fix.
+ (tree-widget-open-control, tree-widget-close-control): Fix doc and
+ :help-echo message.
+ (tree-widget-set-theme): Doc fix. Use `string-equal'.
+ (tree-widget-image-properties): Doc fix. Clearer implementation.
+ (tree-widget--cursors): New constant.
+ (tree-widget-lookup-image): New function split from
+ `tree-widget-find-image'. Clearer implementation.
+ (tree-widget-find-image): Use it.
+ (tree-widget-button-keymap): Use `set-keymap-parent'.
+ (tree-widget) [define-widget]: Use `widget-children-value-delete'.
+ Define the sub-widgets here.
+ (tree-widget-node): Check that :node is not a tree-widget.
+ (tree-widget-get-super, tree-widget-open-control)
+ (tree-widget-close-control, tree-widget-empty-control)
+ (tree-widget-leaf-control, tree-widget-guide)
+ (tree-widget-end-guide, tree-widget-no-guide, tree-widget-handle)
+ (tree-widget-no-handle, tree-widget-value-delete)
+ (tree-widget-map): Remove.
+ (tree-widget-children-value-save): Doc fix. Simplified.
+ (tree-widget-value-create): Update according to previous changes.
+
+2005-07-04 Carsten Dominik <dominik@science.uva.nl>
+
+ * textmodes/org.el: Leading space replaced by TABS.
+ (org-recalc-marks, org-table-rotate-recalc-marks)
+ (org-table-get-specials): Treat "^" and "_" marks.
+ (org-table-justify-field-maybe): Optional argument NEW.
+ (org-table-eval-formula): Parsing of the format simplified.
+ New modes C,I. Honor the %= parameter in the current table.
+ Avoid unnecessary re-align by using the NEW argument to
+ `org-table-justify-field-maybe'.
+ (org-calc-default-modes): Default for date-format mimicks org-mode.
+ (org-agenda, org-timeline): Quote argument in org-agenda-redo-command.
+
+2005-07-03 Luc Teirlinck <teirllm@auburn.edu>
+
+ * cus-face.el (custom-theme-set-faces): Make it handle face
+ aliases whose alias declarations are pre- or autoloaded.
+
+2005-07-04 Juri Linkov <juri@jurta.org>
+
+ * faces.el (read-face-name): Put the code for getting a face name
+ from the buffer before adding the faces from the `face' property.
+ Use `completing-read-multiple' instead of `completing-read'.
+ Require `crm'. Add default value and post-process the returned
+ list of faces.
+
+ * emacs-lisp/crm.el (crm-find-current-element)
+ (crm-minibuffer-complete-and-exit): Handle minibuffer prompt.
+
+ * emacs-lisp/lisp-mode.el (eval-defun-1):
+ * emacs-lisp/edebug.el (edebug-eval-defun):
+ Remove unnecessary quotes.
+
+2005-07-04 Juanma Barranquero <lekktu@gmail.com>
+
+ * progmodes/prolog.el (prolog-eof-string): Doc fixes.
+ (prolog-indent-level): Fix typo in docstring.
+
+ * info.el (Info-history, Info-history-forward)
+ (Info-history-list, Info-speedbar-fetch-file-nodes): Doc fixes.
+
+ * add-log.el (add-change-log-entry):
+ * comint.el (comint-dynamic-list-input-ring)
+ (comint-dynamic-list-completions):
+ * dabbrev.el (dabbrev-expand):
+ * delim-col.el (delimit-columns-rectangle-line):
+ * diff-mode.el (diff-context->unified, diff-reverse-direction)
+ (diff-unified->context):
+ * ediff-init.el (ediff-abbrev-jobname):
+ * ediff-mult.el (ediff-replace-session-status-in-meta-buffer)
+ (ediff-replace-session-activity-marker-in-meta-buffer):
+ * info.el (Info-summary):
+ * lpr.el (printify-region):
+ * printing.el (pr-create-interface):
+ * ps-print.el (ps-print-quote):
+ * ses.el (ses-column-widths, ses-print-cell)
+ (ses-adjust-print-width, ses-center):
+ * shell.el (shell-file-name-quote-list):
+ * strokes.el (strokes-read-stroke, strokes-read-complex-stroke)
+ (strokes-fill-current-buffer-with-whitespace)
+ (strokes-xpm-for-stroke, strokes-list-strokes)
+ (strokes-xpm-char-bit-p, strokes-xpm-for-compressed-string):
+ * term.el (term-dynamic-list-input-ring)
+ (term-dynamic-list-completions):
+ * calc/calc.el (math-format-stack-value):
+ * emacs-lisp/edebug.el (edebug-display-freq-count):
+ * progmodes/delphi.el (delphi-indent-line, delphi-fill-comment)
+ (delphi-new-comment-line):
+ * progmodes/ebnf2ps.el (ebnf-eps-filename, ebnf-trim-right):
+ * progmodes/executable.el (executable-set-magic):
+ * progmodes/python.el (inferior-python-mode):
+ * progmodes/scheme.el (scheme-mode-syntax-table):
+ * progmodes/sh-script.el (sh-maybe-here-document):
+ * progmodes/sql.el (sql-copy-column):
+ * progmodes/tcl.el (tcl-comment-indent, tcl-quote):
+ * textmodes/bibtex.el (bibtex-mode):
+ * textmodes/sgml-mode.el (html-imenu-index, sgml-attributes)
+ (sgml-auto-attributes):
+ * textmodes/table.el (table-insert, table-shorten-cell)
+ (table--generate-source-scan-lines, table-delete-row)
+ (*table--cell-delete-char, table--spacify-frame)
+ (table--horizontally-shift-above-and-below)
+ (table--cell-insert-char, table--cell-blank-str)
+ (table--fill-region-strictly):
+ * textmodes/tex-mode.el (tex-insert-quote, latex-find-indent):
+ * textmodes/texinfo.el (texinfo-insert-quote): "?\ " -> "?\s".
+
+ * add-log.el (change-log):
+ * apropos.el (apropos):
+ * comint.el (comint-completion, comint-source):
+ * dabbrev.el (dabbrev):
+ * delim-col.el (columns):
+ * diff-mode.el (diff-mode):
+ * ediff.el (ediff):
+ * ediff-diff.el (ediff-diff):
+ * ediff-init.el (ediff-highlighting, ediff-merge, ediff-hook):
+ * ediff-mult.el (ediff-mult):
+ * ediff-ptch.el (ediff-ptch):
+ * ediff-wind.el (ediff-window):
+ * facemenu.el (facemenu):
+ * indent.el (indent):
+ * info.el (info):
+ * jka-cmpr-hook.el (compression, jka-compr):
+ * lpr.el (lpr):
+ * outline.el (outlines):
+ * pcmpl-cvs.el (pcmpl-cvs):
+ * pcmpl-rpm.el (pcmpl-rpm):
+ * printing.el (printing):
+ * ps-print.el (postscript, ps-print, ps-print-horizontal)
+ (ps-print-vertical, ps-print-headers, ps-print-font)
+ (ps-print-color, ps-print-face, ps-print-n-up, ps-print-zebra)
+ (ps-print-background, ps-print-printer, ps-print-page)
+ (ps-print-miscellany):
+ * ses.el (ses):
+ * shell.el (shell, shell-directories, shell-faces):
+ * startup.el (initialization):
+ * strokes.el (strokes):
+ * term.el (term):
+ * uniquify.el (uniquify):
+ * w32-vars.el (w32):
+ * calc/calc.el (calc):
+ * emacs-lisp/bytecomp.el (bytecomp):
+ * emacs-lisp/cl-indent.el (lisp-indent):
+ * emacs-lisp/edebug.el (edebug):
+ * emacs-lisp/elp.el (elp):
+ * emacs-lisp/testcover.el (testcover):
+ * emacs-lisp/trace.el (trace):
+ * emulation/viper-ex.el (viper-ex):
+ * emulation/viper-mous.el (viper-mouse):
+ * mail/mailalias.el (mailalias):
+ * mail/supercite.el (supercite, supercite-frames)
+ (supercite-attr, supercite-cite, supercite-hooks):
+ * net/rcompile.el (remote-compile):
+ * net/rlogin.el (rlogin):
+ * obsolete/ooutline.el (outlines):
+ * progmodes/delphi.el (delphi):
+ * progmodes/ebnf2ps.el (postscript, ebnf2ps, ebnf-special)
+ (ebnf-except, ebnf-repeat, ebnf-terminal, ebnf-non-terminal)
+ (ebnf-production, ebnf-shape, ebnf-displacement, ebnf-syntactic)
+ (ebnf-optimization):
+ * progmodes/etags.el (etags):
+ * progmodes/executable.el (executable):
+ * progmodes/idlwave.el (idlwave):
+ * progmodes/pascal.el (pascal):
+ * progmodes/prolog.el (prolog):
+ * progmodes/python.el (python):
+ * progmodes/scheme.el (scheme):
+ * progmodes/sh-script.el (sh, sh-script):
+ * progmodes/sql.el (SQL):
+ * progmodes/tcl.el (tcl):
+ * textmodes/bibtex.el (bibtex, bibtex-autokey):
+ * textmodes/enriched.el (enriched):
+ * textmodes/makeinfo.el (makeinfo):
+ * textmodes/sgml-mode.el (sgml):
+ * textmodes/table.el (table-hooks):
+ * textmodes/tex-mode.el (tex-file, tex-run, tex-view):
+ * textmodes/texinfo.el (texinfo):
+ * textmodes/two-column.el (two-column):
+ Finish `defgroup' description with period.
+
+ * emacs-lisp/cl-indent.el (lisp-indent-maximum-backtracking):
+ * eshell/esh-var.el (eshell-var):
+ * progmodes/vhdl-mode.el (vhdl-testbench):
+ * textmodes/org.el (org): Fix typos in docstrings.
+
+ * emacs-lisp/timer.el (with-timeout): Improve argument/docstring
+ consistency.
+
+ * progmodes/flymake.el (flymake-find-file): Remove.
+ (flymake-float-time): Use `with-no-warnings'.
+ (flymake-check-start-time, flymake-check-was-interrupted)
+ (flymake-err-info, flymake-is-running, flymake-last-change-time)
+ (flymake-new-err-info): `defvar' at compile time.
+
+2005-07-03 Juanma Barranquero <lekktu@gmail.com>
+
+ * replace.el (occur-hook): Doc fix.
+ (occur-1): Don't call `occur-hook' if there are no matches.
+
+2005-07-03 Richard M. Stallman <rms@gnu.org>
+
+ * emulation/tpu-edt.el (tpu-original-global-map): Don't copy
+ global-map, save the same map.
+ (global-map): Don't alter it at top level.
+ (tpu-edt-on): Save global map in tpu-original-global-map, then copy.
+ Then alter it here instead.
+ (tpu-edt-off): Set global-map to the saved one.
+
+ * emulation/tpu-edt.el (tpu-emacs19-p): Var deleted.
+ All references simplified.
+ (tpu-lucid-emacs-p): Rename from tpu-lucid-emacs19-p. Uses changed.
+ (zmacs-regions): Add defvar.
+ (repeat-complex-command-map): Everything about that deleted.
+
+ * textmodes/artist.el (artist-key-is-drawing)
+ (artist-key-endpoint1, artist-key-poly-point-list)
+ (artist-key-shape, artist-key-draw-how, artist-popup-menu-table)
+ (artist-key-compl-table, artist-rb-save-data)
+ (artist-arrow-point-1, artist-arrow-point-2): Move defvars up.
+ Don't put them in eval-when-compile.
+ (artist-set-arrow-points-for-poly): Use `last', not `artist-last'.
+
+ * progmodes/ebrowse.el (ebrowse-revert-tree-buffer-from-file):
+ Use with-no-warnings.
+
+ * net/browse-url.el (dos-windows-version): Add defvar.
+
+ * mail/supercite.el (filladapt-prefix-table): Add defvar.
+
+ * mail/rmailsum.el (rmail-summary-redo): Add defvar.
+ (rmail-summary-mode-map, rmail-summary-overlay): Defvars moved up.
+ (rmail-new-summary-line-count): Rename from new-summary-line-count.
+ Add defvar.
+ (rmail-summary-beginning-of-message): Use with-no-warnings.
+ (rmail-summary-first-message, rmail-summary-last-message): Likewise.
+
+ * emulation/vip.el (vip-replace-string, ex-map, ex-read):
+ Use with-no-warnings.
+
+ * emulation/vi.el (vi-mark-region): Use c-mark-function.
+ (c-mark-function): Add point-moving-unit property.
+ (vi-goto-line): Use with-no-warnings.
+
+ * emulation/edt.el (edt-last-copied-word): Add defvar.
+ (zmacs-region-stays): Likewise.
+ (edt-mark-section-wisely): Use c-mark-function for C.
+ Use makr-defun for Fortran.
+ (time-string): defvar deleted.
+ (edt-display-the-time): Don't set time-string.
+
+ * emacs-lisp/macroexp.el (macroexp-accumulate): Rename arg to var+list.
+
+ * emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
+ Don't warn when name is not constant
+ or for defining the group `emacs'.
+
+ * tooltip.el (gud-tooltip-mode): Add defvar.
+
+ * startup.el (default-frame-background-mode): Add defvar.
+
+ * smerge-mode.el (smerge-mode): Add duplicate defvar near top.
+
+ * info.el (tool-bar-map): Add defvar.
+
+ * dired.el (dnd-protocol-alist): Add defvar.
+
+ * dired-aux.el (dired-query): Display question with answer, when
+ the user answers.
+
+ * custom.el (custom-add-option): Doc fix.
+
+ * bookmark.el (Info-current-node, Info-suffix-list): Add defvars.
+
+2005-07-03 Eli Zaretskii <eliz@gnu.org>
+
+ * font-lock.el (font-lock-regexp-grouping-construct): Fix the
+ bogus name from the last change.
+
+2005-07-02 Luc Teirlinck <teirllm@auburn.edu>
+
+ * custom.el (custom-declare-variable): Fix typos in comment.
+ (custom-known-themes): Doc fix.
+ (custom-theme-directory): New defcustom.
+ (require-theme): Make it check `custom-theme-directory'.
+
+ * cus-theme.el (custom-new-theme-mode): New function.
+ (custom-theme-name, custom-theme-variables, custom-theme-faces)
+ (custom-theme-description): Add compiler defvars.
+ (customize-create-theme): Add doc to the "*New Custom Theme*"
+ buffer. Use `custom-new-theme-mode'.
+ (custom-theme-write): Put the created buffer in emacs-lisp-mode
+ and save it to the `custom-theme-directory'. Make this the
+ default directory of the buffer.
+
+2005-07-02 David Hunter <hunterd_42@comcast.net> (tiny change)
+
+ * progmodes/flymake.el (flymake-mode, flymake-mode-off):
+ Fix unbalanced parentheses.
+
+2005-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/flymake.el (flymake-mode-on, flymake-mode-off): Move body
+ into flymake-mode and delegate to flymake-mode.
+
+ * find-file.el (ff-which-function-are-we-in): Clean up.
+
+2005-07-02 Juanma Barranquero <lekktu@gmail.com>
+
+ * replace.el (occur-rename-buffer): Fix docstring.
+
+ * emulation/edt.el (*EDT-keys*, edt-default-global-map)
+ (edt-last-copied-word, edt-learn-macro-count)
+ (edt-orig-page-delimiter, edt-orig-transient-mark-mode)
+ (edt-rect-start-point, edt-user-global-map, rect-start-point)
+ (time-string, zmacs-region-stays):
+ * emulation/edt-mapper.el (edt-save-function-key-map)
+ (EDT-key-name): `defvar' to silence the byte-compiler.
+
+2005-07-02 Martin Rudalics <rudalics@gmx.at> (tiny change)
+
+ * font-lock.el (font-lock-regexp-grouping-backslash): Rename from
+ font-lock-regexp-backslash. Doc fix.
+ (font-lock-regexp-backslash-grouping-construct): Rename from
+ font-lock-regexp-backslash-construct. Doc fix.
+ (lisp-font-lock-keywords-2): Fix highlighting of Elisp regexp
+ grouping constructs.
+
+2005-07-02 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (bootstrap): Remove the $(EMACS) binary after
+ updating all the prerequisites.
+
+2005-07-01 Juanma Barranquero <lekktu@gmail.com>
+
+ * textmodes/org.el (org-agenda-start-on-weekday)
+ (org-calendar-to-agenda-key, org-agenda-sorting-strategy)
+ (org-agenda-use-time-grid, org-archive-location)
+ (org-allow-space-in-links, org-usenet-links-prefer-google)
+ (org-enable-table-editor, org-export-default-language)
+ (org-export-html-show-new-buffer, org-fill-paragraph)
+ (org-cycle, org-goto-ret, org-goto-left, org-goto-right)
+ (org-goto-quit, org-occur, org-eval-in-calendar)
+ (org-agenda-cleanup-fancy-diary, org-agenda-no-heading-message)
+ (org-agenda-diary-entry, org-remember-help)
+ (org-table-convert-region, org-at-table-p)
+ (org-table-move-row-down, org-table-move-row-up)
+ (org-table-copy-region, org-table-toggle-vline-visibility)
+ (org-table-get-stored-formulas, org-table-get-specials)
+ (org-recalc-commands, org-table-eval-formula)
+ (org-table-formula-substitute-names, orgtbl-make-binding)
+ (org-format-org-table-html, org-format-table-table-html)
+ (org-format-table-table-html-using-table-generate-source)
+ (org-customize): Fix typos in docstrings.
+ (org-level-2, org-at-timestamp-p, org-agenda-day-view)
+ (org-agenda-toggle-diary, org-agenda-toggle-time-grid)
+ (org-back-to-heading): Doc fixes.
+ (org-agenda-toggle-time-grid, org-cmp-category, org-cmp-time)
+ (org-agenda-change-all-lines, org-get-header):
+ Improve argument/docstring consistency.
+ (orgtbl-error): Fix error message.
+
+ * progmodes/flymake.el (flymake-find-possible-master-files)
+ (flymake-master-file-compare, flymake-get-line-err-count)
+ (flymake-highlight-line, flymake-gui-warnings-enabled):
+ Fix typos in docstrings.
+ (flymake-parse-line, flymake-get-project-include-dirs-function)
+ (flymake-get-prev-err-line-no, flymake-goto-prev-error):
+ Doc fixes.
+ (flymake-get-project-include-dirs-function)
+ (flymake-make-err-menu-data):
+ Improve argument/docstring consistency.
+
+2005-07-01 Lute Kamstra <lute@gnu.org>
+
+ * battery.el (battery-linux-proc-apm): Fix typo in docstring.
+ Catch errors with ignore-errors. Use temporary buffer.
+ (battery-linux-proc-acpi): Fix typo in docstring. Document `%r'.
+
+ * facemenu.el (facemenu-unlisted-faces): Delete foreground and
+ background color faces.
+ (facemenu-set-foreground, facemenu-set-background):
+ Use facemenu-set-face-from-menu.
+ (facemenu-set-face-from-menu): Treat face names that start with
+ "fg:" or "bg:" as special.
+ (facemenu-add-new-color): Don't create faces. Simplify.
+
+2005-06-30 Richard M. Stallman <rms@gnu.org>
+
+ * emacs-lisp/crm.el (crm-do-completion): Handle minibuffer prompt.
+ (crm-find-current-element): Likewise.
+
+2005-06-30 Johan Bockg,Ae(Brd <bojohan@users.sourceforge.net>
+
+ * help-fns.el (help-do-arg-highlight): Regexp-quote argument names.
+
+2005-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * arc-mode.el (archive-extract): Make it work as a mouse binding.
+ (archive-mouse-extract): Make it an obsolete alias.
+ (archive-mode-map): Don't use archive-mouse-extract any more.
+ (archive-mode, archive-extract): write-contents-hooks ->
+ write-contents-functions.
+ (archive-arc-rename-entry, archive-lzh-rename-entry): Remove unused
+ first arg.
+ (archive-rename-entry): Update the call.
+ (archive-zip-summarize): Remove unused var `method'.
+ (archive-lzh-summarize): Remove unused var `creator'.
+
+ * emacs-lisp/debug.el (debug): Quieten Drew Adams by killing the
+ dedicated frame upon exit.
+
+ * arc-mode.el: Bind inhibit-read-only rather than buffer-read-only.
+ (archive-zip-extract, archive-zip-expunge)
+ (archive-zip-update, archive-zip-update-case): Use executable-find.
+ (archive-resummarize, archive-flag-deleted, archive-unmark-all-files):
+ Use restore-buffer-modified-p.
+ (archive-extract, archive-add-new-member, archive-write-file-member):
+ Use with-current-buffer.
+ (archive-lzh-ogm, archive-zip-chmod-entry): Use dolist.
+
+2005-06-30 Andreas Schwab <schwab@suse.de>
+
+ * progmodes/gud.el (gud-filter): Remove unneeded progn.
+
+2005-06-30 Glenn Morris <gmorris@ast.cam.ac.uk>
+
+ * progmodes/sh-script.el (sh-get-kw): `&' also separates words.
+
+2005-06-30 Juri Linkov <juri@jurta.org>
+
+ * faces.el (vertical-border): Inherit from mode-line-inactive
+ only on tty.
+
+2005-06-30 Juanma Barranquero <lekktu@gmail.com>
+
+ * help-fns.el (help-do-arg-highlight): Highlight also -ARG (for
+ example, -NLINES in the `occur' docstring).
+
+ * replace.el (occur-1): When no matches are found, do not set the
+ `buffer-read-only' and modified flags for the occur buffer,
+ because it is deleted.
+
+ * emulation/cua-base.el (cua-check-pending-input)
+ (cua-repeat-replace-region, cua-mode, cua-debug)
+ (cua-auto-tabify-rectangles, cua-inhibit-cua-keys):
+ Fix typos in docstrings.
+
+ * emulation/cua-gmrk.el (cua-toggle-global-mark)
+ (cua-cut-region-to-global-mark)
+ (cua--cut-rectangle-to-global-mark):
+ Remove period from end of messages.
+
+ * emulation/cua-rect.el (cua-do-rectangle-padding):
+ Remove period from end of messages.
+ (cua--rectangle-seq-format): Fix typo in docstring.
+ (cua-sequence-rectangle, cua-fill-char-rectangle):
+ Improve argument/docstring consistency.
+
2005-06-29 Juri Linkov <juri@jurta.org>
* faces.el (default-frame-background-mode): New internal variable.
@@ -14,6 +539,8 @@
2005-06-29 Juanma Barranquero <lekktu@gmail.com>
+ * simple.el (set-variable): Warn about obsolete user variables.
+
* imenu.el (imenu--completion-buffer):
* mouse.el (mouse-buffer-menu-alist):
* msb.el (msb-invisible-buffer-p):
@@ -138,7 +665,7 @@
(facemenu-get-face): Delete function.
(facemenu-set-face-from-menu): Don't call facemenu-get-face.
(facemenu-add-new-color): Make second argument mandatory.
- Create the approprate face and return it. Simplify.
+ Create the appropriate face and return it. Simplify.
(facemenu-set-foreground, facemenu-set-background): Don't check if
color is defined. Use return value of facemenu-add-new-color.
@@ -1848,7 +2375,7 @@
2005-05-30 Juanma Barranquero <lekktu@gmail.com>
- * thumbs.el (thumbs-thumbname): The resulting thubname now
+ * thumbs.el (thumbs-thumbname): The resulting thumbname now
includes a hash value to improve its uniqueness, and has a ".jpg"
extension. Also, it is now a valid filename on all systems.
(thumbs-make-thumb): Use `let', not `let*'.
@@ -2214,7 +2741,7 @@
(gdb-get-selected-frame): Rename from gdb-get-current-frame.
(gdb-frame-number): Rename from gdb-current-stack-level.
(gdb-ann3): Match new mode-name for disassembly buffer.
- Extend initialisation of variables.
+ Extend initialization of variables.
(gdb-post-prompt): Update disassembly from gdb-frame-handler.
(gdb-memory-mode): Use mouse-face in header line.
(gdb-assembler-buffer-name): Call it disassembly and give frame
@@ -2717,7 +3244,7 @@
overlay initializations.
(reftex-highlight): Use `reftex-move-overlay'.
(reftex-unhighlight): Use `reftex-delete-overlay'.
- (reftex-uniq): Funktion removed. Use `reftex-uniquify' instead.
+ (reftex-uniq): Function removed. Use `reftex-uniquify' instead.
(reftex-access-search-path): Use `reftex-uniquify' instead of
`reftex-uniq'
@@ -3376,7 +3903,7 @@
* progmodes/gud.el: Move code for GUD tooltips from tooltip.el.
(require): CL needed to compile case.
- (gud-tooltip-mode): Use to toggle GUD tooltips unstead of
+ (gud-tooltip-mode): Use to toggle GUD tooltips instead of
tooltip-gud-tips-p. Make it a minor-mode.
(gud-find-file): Only prepare GUD tooltips if gud-tooltip-mode is t.
(gud-menu-map): GUD tooltips use gud-tooltip-mode now.
@@ -3521,7 +4048,7 @@
2005-05-04 Nick Roberts <nickrob@snap.net.nz>
- * progmodes/cmacexp.el (c-macro-preprocessor): Update for Mac OSX.
+ * progmodes/cmacexp.el (c-macro-preprocessor): Update for Mac OS X.
2005-05-04 Richard M. Stallman <rms@gnu.org>
@@ -3718,7 +4245,7 @@
2005-04-30 Nick Roberts <nickrob@snap.net.nz>
* progmodes/cc-mode.el (cc-create-define-alist): Check that file
- exists. Initialise cc-define-alist.
+ exists. Initialize cc-define-alist.
(c-mode): Add cc-create-define-alist locally to after-save-hook.
If there is no file (Macroexpansion) don't create an alist.
@@ -3810,7 +4337,7 @@
* progmodes/cc-mode.el (cc-create-define-alist): New function.
(cc-define-alist): New variable.
- (c-mode): Make it local and initialise it.
+ (c-mode): Make it local and initialize it.
* progmodes/gdb-ui.el (gdb-active-process): New variable.
(gdb-exited): New function.
@@ -4341,7 +4868,7 @@
(org-last-todo-state-is-todo): New variable.
(org-todo): Set `org-last-todo-state-is-todo'.
(org-agenda-todo): Change face according to
- `org-last-todo-state-is-todo'. And change other lines refering to
+ `org-last-todo-state-is-todo'. And change other lines referring to
the same entry.
(org-calendar-goto-agenda): New command.
(org-calendar-to-agenda-key): New option.
@@ -5223,7 +5750,7 @@
2005-03-30 Nick Roberts <nickrob@snap.net.nz>
- * progmodes/gud.el (gdb): (Re)-initialise gud-filter-pending-text.
+ * progmodes/gud.el (gdb): (Re)-initialize gud-filter-pending-text.
(gud-filter-pending-text): Move in front of gdb.
(gud-overlay-arrow-position): New variable.
(gud-sentinel, gud-display-line): Use it in place of
@@ -5828,7 +6355,7 @@
2005-03-19 Michael R. Mauger <mmaug@yahoo.com>
* recentf.el (recentf-cleanup-remote): New variable.
- (recentf-cleanup): Use it to conditionally check availablity of
+ (recentf-cleanup): Use it to conditionally check availability of
remote files.
2005-03-19 Joe Edmonds <joe-bugs-debian-org@elem.com> (tiny change)
@@ -6105,7 +6632,7 @@
* simple.el (next-line, previous-line): Add optional try-vscroll
arg to recognize interactive use. Pass it on to line-move.
(line-move): Don't perform auto-window-vscroll when defining or
- executing keyboard macro to ensure consistent behaviour.
+ executing keyboard macro to ensure consistent behavior.
2005-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
@@ -6201,7 +6728,7 @@
* tooltip.el (tooltip-mode): Use define-minor-mode and simplify.
(tooltip-activate-mouse-motions-if-enabled): Use dolist.
(tooltip-gud-tips): Simplify.
- (tooltip-gud-tips-p): Remove superflouous :set.
+ (tooltip-gud-tips-p): Remove superfluous :set.
(tooltip-gud-modes): Add fortran-mode.
(gdb-tooltip-print): Remove newline for tooltip-use-echo-area.
@@ -7354,7 +7881,7 @@
* progmodes/gdb-ui.el (gdb-info-breakpoints-custom)
(gdb-goto-breakpoint): Make breakpoint handling work on template
functions in C++. Reported by Martin Reed <mjreed@essex.ac.uk>
- (gdb-assembler-custom): Update to recognise breakpoint information
+ (gdb-assembler-custom): Update to recognize breakpoint information
added on 2005-01-19.
2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
@@ -7523,7 +8050,7 @@
2005-01-19 Steven Tamm <steventamm@mac.com>
* term/mac-win.el (process-connection-type): Use new
- operating-system-release variable to use ptys on Darwin 7 (OSX
+ operating-system-release variable to use ptys on Darwin 7 (OS X
10.3) when using carbon build.
2005-01-19 Jay Belanger <belanger@truman.edu>
@@ -9012,7 +9539,7 @@
2004-12-11 Dan Nicolaescu <dann@ics.uci.edu>
- * term.el (term-termcap-format): Synchronyze with terminfo.
+ * term.el (term-termcap-format): Synchronize with terminfo.
(term-emulate-terminal): Handle reset.
(term-reset-terminal): New function.
@@ -12115,7 +12642,7 @@
2004-10-06 Nick Roberts <nickrob@snap.net.nz>
- * progmodes/gdb-ui.el (gdb-ann3): (Re-)initialise gdb-input-queue.
+ * progmodes/gdb-ui.el (gdb-ann3): (Re-)initialize gdb-input-queue.
2004-10-06 John Paul Wallington <jpw@gnu.org>
@@ -12278,7 +12805,7 @@
(term-mode): Set `indent-tabs-mode' to nil.
(term-paste): New function to be bound to S-insert.
(term-send-del, term-send-backspace): Change the strings sent.
- (term-termcap-format): Synchronyze with etc/e/eterm.ti.
+ (term-termcap-format): Synchronize with etc/e/eterm.ti.
(term-handle-colors-array): Fix handling of underline and reverse.
(term-handle-ansi-escape): Do not handle smcup/rmcup. Add comments.
(term-erase-in-line): Fix comparison.
@@ -12341,7 +12868,7 @@
easter, not all easter holidays. Various Easter holidays moved to
`christian-holidays' variable in calendar.el.
* calendar/calendar.el (christian-holidays): Adapt for new
- behaviour of `holiday-advent' and `holiday-easter-etc' functions.
+ behavior of `holiday-advent' and `holiday-easter-etc' functions.
2004-09-23 Kim F. Storm <storm@cua.dk>
@@ -12508,14 +13035,14 @@
* term.el (term-down): Perform vertical motion if DOWN is negative.
(term-exec-1): Set both TERMCAP and TERMINFO unconditionally.
- (term-termcap-format): Synchronyze with the eterm terminfo entry
+ (term-termcap-format): Synchronize with the eterm terminfo entry
in etc/e/eterm.ti.
(term-handle-colors-array): If the current foreground or
background are zero (i.e. unspecified), use the foreground and
background of the default face for reverse video.
(term-ansi-at-eval-string, term-ansi-default-fg)
(term-ansi-default-bg, term-ansi-current-temp): Delete unused variable.
- (term-mem): Delete ununsed function.
+ (term-mem): Delete unused function.
(term-protocol-version): Increment.
(term-current-face): Set to default.
@@ -12787,7 +13314,7 @@
length, ps-mule-string-char -> aref, ps-mule-next-index -> 1+,
ps-mule-next-point -> 1+).
- * composite.el (encode-composition-rule): Add autoload cooky.
+ * composite.el (encode-composition-rule): Add autoload cookie.
2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
@@ -13174,7 +13701,7 @@
* simple.el (shell-command-on-region): New arg DISPLAY-ERROR-BUFFER
controls whether to display the error buffer.
- * ps-mule.el: Delete compatibility code for old Emacses.
+ * ps-mule.el: Delete compatibility code for old Emacsen.
(ps-mule-find-wrappoint): Don't use chars-in-region.
* frame.el (display-mouse-p, display-selections-p):
@@ -13470,7 +13997,7 @@
the buffer has no recorded last modification time. Return t in
case the visiting file doesn't exist. Suggested by Luc Teirlinck
<teirllm@auburn.edu>.
- (tramp-handle-write-region): Pass modtime explicitely to
+ (tramp-handle-write-region): Pass modtime explicitly to
`set-visited-file-modtime', because filename can be different
from (buffer-file-name) if `file-precious-flag' is set.
`set-visited-file-modtime' must be called always when `visit' is t
@@ -13726,7 +14253,7 @@
since Emacs 22.1 only (XEmacs has it). Implementation rewritten
in order to avoid this function.
(tramp-handle-write-region): Set current buffer. If connection
- wasn't open, `file-modes' has changed it accidently. Reported by
+ wasn't open, `file-modes' has changed it accidentally. Reported by
David Kastrup <dak@gnu.org>.
(tramp-enter-password, tramp-read-passwd): New arguments USER and
HOST.
@@ -13886,11 +14413,11 @@
number of symbols used.
(xml-skip-dtd): Change to use xml-parse-dtd but set
xml-validating-parsing to nil.
- (xml-parse-dtd): Parse entity deleclarations in DOCTYPEs.
+ (xml-parse-dtd): Parse entity declarations in DOCTYPEs.
(xml-substitute-entity): Remove in favor of new entity substitution.
(xml-substitute-special): Rewrite in to substitute complex
entities from DOCTYPE declarations.
- (xml-parse-fragment): Parse fragments from entity deleclarations.
+ (xml-parse-fragment): Parse fragments from entity declarations.
(xml-parse-region, xml-parse-tag, xml-parse-attlist)
(xml-parse-dtd, xml-substitute-special): Make validity checks
conditioned on xml-validating-parser. Add "Not Well Formed" to
@@ -13953,7 +14480,7 @@
* iimage.el (turn-on-iimage-mode, iimage-mode): Add autoload cookies.
(iimage-mode-image-search-path): New user option to search the
image file.
- (iimage-locate-file): New funcion. Emacs21.3 or earlier does not
+ (iimage-locate-file): New function. Emacs21.3 or earlier does not
have locate-file.
(iimage-mode-buffer): Use it.
@@ -14333,7 +14860,7 @@
(utf-8-post-read-conversion): Narrow to region properly.
If utf-translate-cjk-mode is on, load tables if necessary.
Call utf-8-compose with hash-table arg if necessary.
- Call XXX-compose-region instead of XXX-post-read-convesion.
+ Call XXX-compose-region instead of XXX-post-read-conversion.
(utf-8-pre-write-conversion): New function.
(mule-utf-8): Include CJK charsets in safe-charsets if
utf-translate-cjk-mode is on. Add pre-write-conversion.
@@ -14607,7 +15134,7 @@
2004-06-04 Mario Lang <mlang@delysid.org>
- * battery.el (battery-linux-proc-acpi): `mA' was hardcored, but some
+ * battery.el (battery-linux-proc-acpi): `mA' was hardcoded, but some
systems appear to use mW, make the code handle this. Fix a
division-by-zero bug while at it, and handle kernels with
a slightly different layout in /proc/acpi.
@@ -14751,7 +15278,7 @@
2004-05-30 Michael Albinus <michael.albinus@gmx.de>
* files.el (file-remote-p): Apply file name handler for operation
- `file-remote-p'. It isn' a property any longer.
+ `file-remote-p'. It isn't a property any longer.
(file-relative-name): `fh' and `fd' get the required value via
`find-file-name-handler' already.
@@ -15078,7 +15605,7 @@
(gdb-buffer-type, gdb-input-queue, gdb-prompting)
(gdb-output-sink, gdb-current-item, gdb-pending-triggers):
Change from local to global gdb variable set.
- (gdb-ann3): Initialise above gdb variable set.
+ (gdb-ann3): Initialize above gdb variable set.
(gdb-var-update, gdb-var-update-handler, gdb-enqueue-input)
(gdb-dequeue-input, gdb-source, gdb-pre-prompt, gdb-prompt)
(gdb-subprompt, gdb-starting, gdb-stopping, gdb-frame-begin)
@@ -15366,7 +15893,7 @@
2004-05-12 Kenichi Handa <handa@m17n.org>
- * descr-text.el: Require quail at comile time.
+ * descr-text.el: Require quail at compile time.
(describe-char): If an input method is on and it supports the
character, show how to input it.
@@ -15752,7 +16279,7 @@
* emacs/lisp/progmodes/sql.el (sql-xemacs-p, sql-emacs19-p)
(sql-emacs20-p): Remove.
- (sql-mode-syntax-table): Use shared GNU EMacs/XEmacs syntax.
+ (sql-mode-syntax-table): Use shared GNU Emacs/XEmacs syntax.
(sql-builtin-face, sql-doc-face): Remove.
(sql-mode-ansi-font-lock-keywords)
(sql-mode-oracle-font-lock-keywords)
@@ -16190,7 +16717,7 @@
either a character representation of an event or an event
description list.
- * type-break.el: Capitalise Emacs and Lisp.
+ * type-break.el: Capitalize Emacs and Lisp.
(type-break-good-break-interval, type-break-demo-boring-stats)
(type-break-terse-messages, type-break-file-name): New defcustoms.
(type-break-post-command-hook)
@@ -16198,7 +16725,7 @@
(type-break-interval-start, type-break-auto-save-file-name): New vars.
(type-break-mode): Document type-break-good-break-interval and the
"session" file. Schedule break according to the session file.
- Kill session file buffer on exit. Organise for save-some-buffers
+ Kill session file buffer on exit. Organize for save-some-buffers
to always save the session file.
(type-break-mode-line-message-mode, type-break-query-mode):
Uppercase arguments.
@@ -16660,7 +17187,7 @@
(gdb-frame-breakpoints-buffer, gdb-frame-stack-buffer)
(gdb-frame-threads-buffer, gdb-frame-registers-buffer)
(gdb-frame-locals-buffer, gdb-frame-gdb-buffer)
- (gdb-frame-assembler-buffer): Improve behaviour with
+ (gdb-frame-assembler-buffer): Improve behavior with
multiple frames.
(gdb-display-buffer): Extend search to all visible frames.
@@ -17336,7 +17863,7 @@
2004-03-31 Luc Teirlinck <teirllm@auburn.edu>
- * autorevert.el: Delete obsolete autoload's and defvar's.
+ * autorevert.el: Delete obsolete autoloads and defvars.
(auto-revert-check-vc-info): New user option.
(auto-revert-vc-cvs-file-version, auto-revert-vc-buffer-p)
(auto-revert-handler-vc): Delete.
@@ -17465,7 +17992,7 @@
* strokes.el (strokes-global-set-stroke-string): New function.
(strokes-list-strokes): Cope with strings, not just commands.
- Set foreground colour of image.
+ Set foreground color of image.
(strokes-global-set-stroke): Doc fix.
2004-03-26 Luc Teirlinck <teirllm@auburn.edu>
@@ -17566,7 +18093,7 @@
* descr-text.el (describe-property-list): Add a button
for `face' property that calls `describe-face'.
- Suggested by luis fernandes <elf@ee.ryerson.ca>
+ Suggested by Luis Fernandes <elf@ee.ryerson.ca>
* international/mule.el (keyboard-coding-system):
* kmacro.el (kmacro-call-macro): Fix docstring.
@@ -17947,7 +18474,7 @@
(ruler-mode-left-scroll-bar-cols): Use `scroll-bar-columns'.
(ruler-mode-ruler-function): New variable.
(ruler-mode-header-line-format): Call `ruler-mode-ruler-function'
- if the value for `ruler-mode-ruler-function'is given.
+ if the value for `ruler-mode-ruler-function' is given.
* hexl.el (hexl-mode-hook): Make the hook customizable.
(hexl-address-area, hexl-ascii-area): New customize variables.
@@ -18321,7 +18848,7 @@
* net/tramp.el (tramp-completion-mode) Don't check for 'xemacs' but
`tramp-unified-filenames'.
- (tramp-completion-mode): Make test for XEmacs explicitely.
+ (tramp-completion-mode): Make test for XEmacs explicitly.
`event-to-character' can exists in Emacs packages too.
Reported by Matt Swift <swift@alum.mit.edu>.
(tramp-buffer-name): Buffer name must contain the user if exists.
@@ -18794,7 +19321,7 @@
* ses.el: Use "ses--" prefixes for buffer-local variables.
Use (point-min) instead of 1, even when we know the buffer
is unnarrowed.
- (ses-build-load-map): Delete. Distribute its content to defconst's for
+ (ses-build-load-map): Delete. Distribute its content to defconsts for
the three maps.
(ses-menu, ses-header-line-menu): New menus.
(ses-mode-map): Use them.
@@ -18916,7 +19443,7 @@
minibuffer windows.
* progmodes/grep.el (grep-regexp-alist): Allow :, \t and (
- in file names, as long as it is unabmiguous.
+ in file names, as long as it is unambiguous.
2004-02-08 Andreas Schwab <schwab@suse.de>
@@ -19389,7 +19916,7 @@
* calendar/appt.el: Update copyright and commentary.
(appt-issue-message): Make obsolete.
- (appt-visible, appt-msg-window): Make obsolete, in favour of
+ (appt-visible, appt-msg-window): Make obsolete, in favor of
appt-display-format.
(appt-display-mode-line, appt-display-duration)
(appt-display-diary, appt-time-msg-list, appt-mode-string)
@@ -19780,7 +20307,7 @@
* gdb-ui.el (gdb-prompt): Change filter for level 3 annotations,
if necessary.
- (gdb-ann3): New function. Initialise M-x gdb as for M-x gdba if
+ (gdb-ann3): New function. Initialize M-x gdb as for M-x gdba if
annotations are detected.
(gud-gdba-marker-filter): Use global variable gud-marker-acc
instead of a local one to allow transition from
@@ -21792,7 +22319,7 @@
* calendar/calendar.el (diary-file, diary-file-name-prefix)
(european-calendar-style, diary-date-forms)
(calendar-day-name-array, calendar-month-name-array): Doc change.
- (generate-calendar-month): Adapt for new behaviour of
+ (generate-calendar-month): Adapt for new behavior of
`calendar-day-name' function.
(calendar-abbrev-length, calendar-day-abbrev-array)
(calendar-month-abbrev-array): New variables.
@@ -21800,39 +22327,39 @@
(calendar-day-name, calendar-month-name): Use new abbrev arrays,
rather than fixing abbrevs at some width. Calling syntax change.
(calendar-make-alist): Use abbrev arrays. Calling syntax change.
- (calendar-date-string): Adapt for new behaviours of
+ (calendar-date-string): Adapt for new behaviors of
`calendar-day-name' and `calendar-month-name' functions.
* calendar/diary-lib.el (list-diary-entries): Adapt for new
- behaviour of `calendar-day-name' and `calendar-month-name' functions.
+ behavior of `calendar-day-name' and `calendar-month-name' functions.
(diary-name-pattern): Use abbrev arrays, rather than fixing
abbrevs at three chars. Calling syntax change.
- (mark-diary-entries): Adapt for new behaviours of
+ (mark-diary-entries): Adapt for new behaviors of
`diary-name-pattern' and `calendar-make-alist' functions.
- (fancy-diary-font-lock-keywords): Adapt for new behaviour of
+ (fancy-diary-font-lock-keywords): Adapt for new behavior of
`diary-name-pattern' function.
(font-lock-diary-date-forms): Use abbrev arrays, rather than
fixing abbrevs at three chars. Calling syntax change.
(cal-hebrew, cal-islam): Require when compiling.
- (diary-font-lock-keywords): Adapt for new behaviour of
+ (diary-font-lock-keywords): Adapt for new behavior of
`font-lock-diary-date-forms' function.
* calendar/cal-hebrew.el: Reposition some code so defined before used.
(calendar-hebrew-month-name-array-common-year)
(calendar-hebrew-month-name-array-leap-year): Add doc strings.
- (list-hebrew-diary-entries): Adapt for new behaviours of
+ (list-hebrew-diary-entries): Adapt for new behaviors of
`calendar-day-name' and `add-to-diary-list' functions.
- (mark-hebrew-diary-entries): Adapt for new behaviours of
+ (mark-hebrew-diary-entries): Adapt for new behaviors of
`diary-name-pattern' and `calendar-make-alist' functions.
* calendar/cal-islam.el (calendar-islamic-month-name-array):
Add doc string.
- (list-islamic-diary-entries): Adapt for new behaviours of
+ (list-islamic-diary-entries): Adapt for new behaviors of
`calendar-day-name' and `add-to-diary-list' functions.
- (mark-islamic-diary-entries): Adapt for new behaviours of
+ (mark-islamic-diary-entries): Adapt for new behaviors of
`diary-name-pattern' and `calendar-make-alist' functions.
- * calendar/cal-menu.el (cal-menu-update): Adapt for new behaviour of
+ * calendar/cal-menu.el (cal-menu-update): Adapt for new behavior of
`calendar-month-name' function.
* calendar/cal-coptic.el (coptic-name): defvar rather than defconst.
diff --git a/lisp/Makefile.in b/lisp/Makefile.in
index caed94c1404..a6a0ddb9f3a 100644
--- a/lisp/Makefile.in
+++ b/lisp/Makefile.in
@@ -15,8 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to
-# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
+# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+# Boston, MA 02110-1301, USA.
SHELL = /bin/sh
diff --git a/lisp/abbrev.el b/lisp/abbrev.el
index 0a40768af31..b63814e922a 100644
--- a/lisp/abbrev.el
+++ b/lisp/abbrev.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/abbrevlist.el b/lisp/abbrevlist.el
index 9c8b0e0d583..a193a92df0f 100644
--- a/lisp/abbrevlist.el
+++ b/lisp/abbrevlist.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/add-log.el b/lisp/add-log.el
index 03f44976760..ec802ef4ae7 100644
--- a/lisp/add-log.el
+++ b/lisp/add-log.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -33,7 +33,7 @@
(require 'timezone))
(defgroup change-log nil
- "Change log maintenance"
+ "Change log maintenance."
:group 'tools
:link '(custom-manual "(emacs)Change Log")
:prefix "change-log-"
@@ -607,13 +607,13 @@ non-nil, otherwise in local time."
(beginning-of-line 1)
(looking-at "\\s *\\(\\*\\s *\\)?$"))
(insert ": ")
- (if version (insert version ?\ )))
+ (if version (insert version ?\s)))
;; Make it easy to get rid of the function name.
(undo-boundary)
(unless (save-excursion
(beginning-of-line 1)
(looking-at "\\s *$"))
- (insert ?\ ))
+ (insert ?\s))
;; See if the prev function name has a message yet or not.
;; If not, merge the two items.
(let ((pos (point-marker)))
@@ -633,7 +633,7 @@ non-nil, otherwise in local time."
(insert "("))
(set-marker pos nil))
(insert defun "): ")
- (if version (insert version ?\ )))))
+ (if version (insert version ?\s)))))
;;;###autoload
(defun add-change-log-entry-other-window (&optional whoami file-name)
diff --git a/lisp/align.el b/lisp/align.el
index 563e839f5fe..5c1e8e7b89a 100644
--- a/lisp/align.el
+++ b/lisp/align.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/allout.el b/lisp/allout.el
index 6fb81f9f6f7..518e37083e0 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ansi-color.el b/lisp/ansi-color.el
index 9b36a403b5d..31aaef2fcdc 100644
--- a/lisp/ansi-color.el
+++ b/lisp/ansi-color.el
@@ -21,8 +21,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/apropos.el b/lisp/apropos.el
index b9d7e3ff41d..37cb85494ab 100644
--- a/lisp/apropos.el
+++ b/lisp/apropos.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -61,7 +61,7 @@
(eval-when-compile (require 'cl))
(defgroup apropos nil
- "Apropos commands for users and programmers"
+ "Apropos commands for users and programmers."
:group 'help
:prefix "apropos")
diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index ac2869a301b..2cf578a9891 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -131,7 +131,7 @@
(make-temp-name
(expand-file-name (if (eq system-type 'ms-dos) "ar" "archive.tmp")
temporary-file-directory))
- "*Directory for temporary files made by arc-mode.el"
+ "Directory for temporary files made by arc-mode.el."
:type 'directory
:group 'archive)
@@ -218,11 +218,10 @@ Archive and member name will be added."
;; Zip archive configuration
(defcustom archive-zip-extract
- (if (locate-file "unzip" nil 'file-executable-p)
- '("unzip" "-qq" "-c")
- (if (locate-file "pkunzip" nil 'file-executable-p)
- '("pkunzip" "-e" "-o-")
- '("unzip" "-qq" "-c")))
+ (if (and (not (executable-find "unzip"))
+ (executable-find "pkunzip"))
+ '("pkunzip" "-e" "-o-")
+ '("unzip" "-qq" "-c"))
"*Program and its options to run in order to extract a zip file member.
Extraction should happen to standard output. Archive and member name will
be added. If `archive-zip-use-pkzip' is non-nil then this program is
@@ -239,11 +238,10 @@ expected to extract to a file junking the directory part of the name."
;; names.
(defcustom archive-zip-expunge
- (if (locate-file "zip" nil 'file-executable-p)
- '("zip" "-d" "-q")
- (if (locate-file "pkzip" nil 'file-executable-p)
- '("pkzip" "-d")
- '("zip" "-d" "-q")))
+ (if (and (not (executable-find "zip"))
+ (executable-find "pkzip"))
+ '("pkzip" "-d")
+ '("zip" "-d" "-q"))
"*Program and its options to run in order to delete zip file members.
Archive and member names will be added."
:type '(list (string :tag "Program")
@@ -253,11 +251,10 @@ Archive and member names will be added."
:group 'archive-zip)
(defcustom archive-zip-update
- (if (locate-file "zip" nil 'file-executable-p)
- '("zip" "-q")
- (if (locate-file "pkzip" nil 'file-executable-p)
- '("pkzip" "-u" "-P")
- '("zip" "-q")))
+ (if (and (not (executable-find "zip"))
+ (executable-find "pkzip"))
+ '("pkzip" "-u" "-P")
+ '("zip" "-q"))
"*Program and its options to run in order to update a zip file member.
Options should ensure that specified directory will be put into the zip
file. Archive and member name will be added."
@@ -268,11 +265,10 @@ file. Archive and member name will be added."
:group 'archive-zip)
(defcustom archive-zip-update-case
- (if (locate-file "zip" nil 'file-executable-p)
- '("zip" "-q" "-k")
- (if (locate-file "pkzip" nil 'file-executable-p)
- '("pkzip" "-u" "-P")
- '("zip" "-q" "-k")))
+ (if (and (not (executable-find "zip"))
+ (executable-find "pkzip"))
+ '("pkzip" "-u" "-P")
+ '("zip" "-q" "-k"))
"*Program and its options to run in order to update a case fiddled zip member.
Options should ensure that specified directory will be put into the zip file.
Archive and member name will be added."
@@ -371,7 +367,7 @@ Archive and member name will be added."
(substitute-key-definition 'undo 'archive-undo map global-map))
(define-key map
- (if (featurep 'xemacs) 'button2 [mouse-2]) 'archive-mouse-extract)
+ (if (featurep 'xemacs) 'button2 [mouse-2]) 'archive-extract)
(if (featurep 'xemacs)
() ; out of luck
@@ -654,8 +650,7 @@ archive.
;; Remote archives are not written by a hook.
(if archive-remote nil
- (make-local-variable 'write-contents-hooks)
- (add-hook 'write-contents-hooks 'archive-write-file))
+ (add-hook 'write-contents-functions 'archive-write-file nil t))
(make-local-variable 'require-final-newline)
(setq require-final-newline nil)
@@ -707,8 +702,6 @@ archive.
;; Archive mode is suitable only for specially formatted data.
(put 'archive-mode 'mode-class 'special)
-;; -------------------------------------------------------------------------
-;; Section: Key maps
(let ((item1 '(archive-subfile-mode " Archive")))
(or (member item1 minor-mode-alist)
@@ -737,7 +730,7 @@ is visible (and the real data of the buffer is hidden).
Optional argument SHUT-UP, if non-nil, means don't print messages
when parsing the archive."
(widen)
- (let (buffer-read-only)
+ (let ((inhibit-read-only t))
(or shut-up
(message "Parsing archive file..."))
(buffer-disable-undo (current-buffer))
@@ -755,11 +748,11 @@ when parsing the archive."
"Recreate the contents listing of an archive."
(let ((modified (buffer-modified-p))
(no (archive-get-lineno))
- buffer-read-only)
+ (inhibit-read-only t))
(widen)
(delete-region (point-min) archive-proper-file-start)
(archive-summarize t)
- (set-buffer-modified-p modified)
+ (restore-buffer-modified-p modified)
(goto-char archive-file-list-start)
(archive-next-line no)))
@@ -773,19 +766,18 @@ when parsing the archive."
(apply
(function concat)
(mapcar
- (function
- (lambda (fil)
- ;; Using `concat' here copies the text also, so we can add
- ;; properties without problems.
- (let ((text (concat (aref fil 0) "\n")))
- (if (featurep 'xemacs)
- () ; out of luck
- (add-text-properties
- (aref fil 1) (aref fil 2)
- '(mouse-face highlight
- help-echo "mouse-2: extract this file into a buffer")
- text))
- text)))
+ (lambda (fil)
+ ;; Using `concat' here copies the text also, so we can add
+ ;; properties without problems.
+ (let ((text (concat (aref fil 0) "\n")))
+ (if (featurep 'xemacs)
+ () ; out of luck
+ (add-text-properties
+ (aref fil 1) (aref fil 2)
+ '(mouse-face highlight
+ help-echo "mouse-2: extract this file into a buffer")
+ text))
+ text))
files)))
(setq archive-file-list-end (point-marker)))
@@ -854,7 +846,7 @@ using `make-temp-file', and the generated name is returned."
(modified (buffer-modified-p))
(coding-system-for-read 'no-conversion)
(lno (archive-get-lineno))
- buffer-read-only)
+ (inhibit-read-only t))
(if unchanged nil
(setq archive-files nil)
(erase-buffer)
@@ -920,18 +912,12 @@ using `make-temp-file', and the generated name is returned."
(kill-local-variable 'buffer-file-coding-system)
(after-insert-file-set-coding (- (point-max) (point-min))))))
-(defun archive-mouse-extract (event)
- "Extract a file whose name you click on."
- (interactive "e")
- (mouse-set-point event)
- (switch-to-buffer
- (save-excursion
- (archive-extract)
- (current-buffer))))
+(define-obsolete-function-alias 'archive-mouse-extract 'archive-extract "22.1")
-(defun archive-extract (&optional other-window-p)
+(defun archive-extract (&optional other-window-p event)
"In archive mode, extract this entry of the archive into its own buffer."
- (interactive)
+ (interactive (list nil last-input-event))
+ (if event (mouse-set-point event))
(let* ((view-p (eq other-window-p 'view))
(descr (archive-get-descr))
(ename (aref descr 0))
@@ -955,8 +941,7 @@ using `make-temp-file', and the generated name is returned."
(setq archive (archive-maybe-copy archive))
(setq buffer (get-buffer-create bufname))
(setq just-created t)
- (save-excursion
- (set-buffer buffer)
+ (with-current-buffer buffer
(setq buffer-file-name
(expand-file-name (concat arcname ":" iname)))
(setq buffer-file-truename
@@ -965,8 +950,7 @@ using `make-temp-file', and the generated name is returned."
(setq default-directory arcdir)
(make-local-variable 'archive-superior-buffer)
(setq archive-superior-buffer archive-buffer)
- (make-local-variable 'local-write-file-hooks)
- (add-hook 'local-write-file-hooks 'archive-write-file-member)
+ (add-hook 'write-file-functions 'archive-write-file-member nil t)
(setq archive-subfile-mode descr)
(setq archive-file-name-coding-system file-name-coding)
(if (and
@@ -1001,26 +985,22 @@ using `make-temp-file', and the generated name is returned."
(setq buffer-saved-size (buffer-size))
(normal-mode)
;; Just in case an archive occurs inside another archive.
- (if (eq major-mode 'archive-mode)
- (progn
- (setq archive-remote t)
- (if read-only-p (setq archive-read-only t))
- ;; We will write out the archive ourselves if it is
- ;; part of another archive.
- (remove-hook 'write-contents-hooks 'archive-write-file t)))
- (run-hooks 'archive-extract-hooks)
+ (when (derived-mode-p 'archive-mode)
+ (setq archive-remote t)
+ (if read-only-p (setq archive-read-only t))
+ ;; We will write out the archive ourselves if it is
+ ;; part of another archive.
+ (remove-hook 'write-contents-functions 'archive-write-file t))
+ (run-hooks 'archive-extract-hooks)
(if archive-read-only
(message "Note: altering this archive is not implemented."))))
(archive-maybe-update t))
(or (not (buffer-name buffer))
- (progn
- (if view-p
- (view-buffer buffer (and just-created 'kill-buffer))
- (if (eq other-window-p 'display)
- (display-buffer buffer)
- (if other-window-p
- (switch-to-buffer-other-window buffer)
- (switch-to-buffer buffer))))))))
+ (cond
+ (view-p (view-buffer buffer (and just-created 'kill-buffer)))
+ ((eq other-window-p 'display) (display-buffer buffer))
+ (other-window-p (switch-to-buffer-other-window buffer))
+ (t (switch-to-buffer buffer))))))
(defun archive-*-extract (archive name command)
(let* ((default-directory (file-name-as-directory archive-tmpdir))
@@ -1080,11 +1060,10 @@ using `make-temp-file', and the generated name is returned."
(read-buffer "Buffer containing archive: "
;; Find first archive buffer and suggest that
(let ((bufs (buffer-list)))
- (while (and bufs (not (eq (save-excursion
- (set-buffer (car bufs))
- major-mode)
- 'archive-mode)))
- (setq bufs (cdr bufs)))
+ (while (and bufs
+ (not (with-current-buffer (car bufs)
+ (derived-mode-p 'archive-mode))))
+ (setq bufs (cdr bufs)))
(if bufs
(car bufs)
(error "There are no archive buffers")))
@@ -1093,8 +1072,7 @@ using `make-temp-file', and the generated name is returned."
(if buffer-file-name
(file-name-nondirectory buffer-file-name)
""))))
- (save-excursion
- (set-buffer arcbuf)
+ (with-current-buffer arcbuf
(or (eq major-mode 'archive-mode)
(error "Buffer is not an archive buffer"))
(if archive-read-only
@@ -1103,12 +1081,11 @@ using `make-temp-file', and the generated name is returned."
(error "An archive buffer cannot be added to itself"))
(if (string= name "")
(error "Archive members may not be given empty names"))
- (let ((func (save-excursion (set-buffer arcbuf)
- (archive-name "add-new-member")))
+ (let ((func (with-current-buffer arcbuf
+ (archive-name "add-new-member")))
(membuf (current-buffer)))
(if (fboundp func)
- (save-excursion
- (set-buffer arcbuf)
+ (with-current-buffer arcbuf
(funcall func buffer-file-name membuf name))
(error "Adding a new member is not supported for this archive type"))))
;; -------------------------------------------------------------------------
@@ -1119,10 +1096,10 @@ using `make-temp-file', and the generated name is returned."
(save-restriction
(message "Updating archive...")
(widen)
- (let ((writer (save-excursion (set-buffer archive-superior-buffer)
- (archive-name "write-file-member")))
- (archive (save-excursion (set-buffer archive-superior-buffer)
- (archive-maybe-copy (buffer-file-name)))))
+ (let ((writer (with-current-buffer archive-superior-buffer
+ (archive-name "write-file-member")))
+ (archive (with-current-buffer archive-superior-buffer
+ (archive-maybe-copy (buffer-file-name)))))
(if (fboundp writer)
(funcall writer archive archive-subfile-mode)
(archive-*-write-file-member archive
@@ -1192,7 +1169,7 @@ With a prefix argument, mark that many files."
(beginning-of-line)
(let ((sign (if (>= p 0) +1 -1))
(modified (buffer-modified-p))
- buffer-read-only)
+ (inhibit-read-only t))
(while (not (zerop p))
(if (archive-get-descr t)
(progn
@@ -1200,7 +1177,7 @@ With a prefix argument, mark that many files."
(insert type)))
(forward-line sign)
(setq p (- p sign)))
- (set-buffer-modified-p modified))
+ (restore-buffer-modified-p modified))
(archive-next-line 0))
(defun archive-unflag (p)
@@ -1219,14 +1196,14 @@ With a prefix argument, un-mark that many members backward."
"Remove all marks."
(interactive)
(let ((modified (buffer-modified-p))
- buffer-read-only)
+ (inhibit-read-only t))
(save-excursion
(goto-char archive-file-list-start)
(while (< (point) archive-file-list-end)
(or (= (following-char) ? )
(progn (delete-char 1) (insert ? )))
(forward-line 1)))
- (set-buffer-modified-p modified)))
+ (restore-buffer-modified-p modified)))
(defun archive-mark (p)
"In archive mode, mark this member for group operations.
@@ -1331,7 +1308,7 @@ as a relative change like \"g+rw\" as for chmod(2)"
(append (cdr command) (cons archive files))))
(defun archive-rename-entry (newname)
- "Change the name associated with this entry in the tar file."
+ "Change the name associated with this entry in the archive file."
(interactive "sNew name: ")
(if archive-read-only (error "Archive is read-only"))
(if (string= newname "")
@@ -1340,7 +1317,7 @@ as a relative change like \"g+rw\" as for chmod(2)"
(descr (archive-get-descr)))
(if (fboundp func)
(progn
- (funcall func (buffer-file-name)
+ (funcall func
(encode-coding-string newname
archive-file-name-coding-system)
descr)
@@ -1362,7 +1339,7 @@ as a relative change like \"g+rw\" as for chmod(2)"
"Undo in an archive buffer.
This doesn't recover lost files, it just undoes changes in the buffer itself."
(interactive)
- (let (buffer-read-only)
+ (let ((inhibit-read-only t))
(undo)))
;; -------------------------------------------------------------------------
;; Section: Arc Archives
@@ -1415,14 +1392,14 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
"\n"))
(apply 'vector (nreverse files))))
-(defun archive-arc-rename-entry (archive newname descr)
+(defun archive-arc-rename-entry (newname descr)
(if (string-match "[:\\\\/]" newname)
(error "File names in arc files must not contain a directory component"))
(if (> (length newname) 12)
(error "File names in arc files are limited to 12 characters"))
(let ((name (concat newname (substring "\0\0\0\0\0\0\0\0\0\0\0\0\0"
(length newname))))
- buffer-read-only)
+ (inhibit-read-only t))
(save-restriction
(save-excursion
(widen)
@@ -1448,7 +1425,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(time2 (archive-l-e (+ p 17) 2)) ;and UNIX format in level 2 header.)
(hdrlvl (byte-after (+ p 20))) ;header level
thsize ;total header size (base + extensions)
- fnlen efnname fiddle ifnname width p2 creator
+ fnlen efnname fiddle ifnname width p2
neh ;beginning of next extension header (level 1 and 2)
mode modestr uid gid text dir prname
gname uname modtime moddate)
@@ -1460,13 +1437,9 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
str archive-file-name-coding-system)))
(setq p2 (+ p 22 fnlen))) ;
(if (= hdrlvl 1)
- (progn ;specific to level 1 header
- (setq creator (if (>= (- hsize fnlen) 24) (byte-after (+ p2 2)) 0))
- (setq neh (+ p2 3)))
+ (setq neh (+ p2 3)) ;specific to level 1 header
(if (= hdrlvl 2)
- (progn ;specific to level 2 header
- (setq creator (byte-after (+ p 23)) )
- (setq neh (+ p 24)))))
+ (setq neh (+ p 24)))) ;specific to level 2 header
(if neh ;if level 1 or 2 we expect extension headers to follow
(let* ((ehsize (archive-l-e neh 2)) ;size of the extension header
(etype (byte-after (+ neh 2)))) ;extension type
@@ -1581,7 +1554,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
p (1+ p)))
(logand sum 255)))
-(defun archive-lzh-rename-entry (archive newname descr)
+(defun archive-lzh-rename-entry (newname descr)
(save-restriction
(save-excursion
(widen)
@@ -1590,7 +1563,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(oldfnlen (byte-after (+ p 21)))
(newfnlen (length newname))
(newhsize (+ oldhsize newfnlen (- oldfnlen)))
- buffer-read-only)
+ (inhibit-read-only t))
(if (> newhsize 255)
(error "The file name is too long"))
(goto-char (+ p 21))
@@ -1601,17 +1574,16 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(insert-unibyte newhsize (archive-lzh-resum p newhsize))))))
(defun archive-lzh-ogm (newval files errtxt ofs)
- (save-restriction
- (save-excursion
+ (save-excursion
+ (save-restriction
(widen)
- (while files
- (let* ((fil (car files))
- (p (+ archive-proper-file-start (aref fil 4)))
+ (dolist (fil files)
+ (let* ((p (+ archive-proper-file-start (aref fil 4)))
(hsize (byte-after p))
(fnlen (byte-after (+ p 21)))
(p2 (+ p 22 fnlen))
(creator (if (>= (- hsize fnlen) 24) (byte-after (+ p2 2)) 0))
- buffer-read-only)
+ (inhibit-read-only t))
(if (= creator ?U)
(progn
(or (numberp newval)
@@ -1623,8 +1595,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(delete-char 1)
(insert-unibyte (archive-lzh-resum (1+ p) hsize)))
(message "Member %s does not have %s field"
- (aref fil 1) errtxt)))
- (setq files (cdr files))))))
+ (aref fil 1) errtxt)))))))
(defun archive-lzh-chown-entry (newuid files)
(archive-lzh-ogm newuid files "an uid" 10))
@@ -1635,7 +1606,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(defun archive-lzh-chmod-entry (newmode files)
(archive-lzh-ogm
;; This should work even though newmode will be dynamically accessed.
- (function (lambda (old) (archive-calc-mode old newmode t)))
+ (lambda (old) (archive-calc-mode old newmode t))
files "a unix-style mode" 8))
;; -------------------------------------------------------------------------
;; Section: Zip Archives
@@ -1650,7 +1621,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
visual)
(while (string= "PK\001\002" (buffer-substring p (+ p 4)))
(let* ((creator (byte-after (+ p 5)))
- (method (archive-l-e (+ p 10) 2))
+ ;; (method (archive-l-e (+ p 10) 2))
(modtime (archive-l-e (+ p 12) 2))
(moddate (archive-l-e (+ p 14) 2))
(ucsize (archive-l-e (+ p 24) 4))
@@ -1726,13 +1697,12 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(save-restriction
(save-excursion
(widen)
- (while files
- (let* ((fil (car files))
- (p (+ archive-proper-file-start (car (aref fil 4))))
+ (dolist (fil files)
+ (let* ((p (+ archive-proper-file-start (car (aref fil 4))))
(creator (byte-after (+ p 5)))
(oldmode (aref fil 3))
(newval (archive-calc-mode oldmode newmode t))
- buffer-read-only)
+ (inhibit-read-only t))
(cond ((memq creator '(2 3)) ; Unix + VMS
(goto-char (+ p 40))
(delete-char 2)
@@ -1743,7 +1713,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
(logand (logxor 1 (lsh newval -7)) 1)))
(delete-char 1))
(t (message "Don't know how to change mode for this member"))))
- (setq files (cdr files))))))
+ ))))
;; -------------------------------------------------------------------------
;; Section: Zoo Archives
diff --git a/lisp/array.el b/lisp/array.el
index 2f270d0f086..836ba99ff6d 100644
--- a/lisp/array.el
+++ b/lisp/array.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/autoarg.el b/lisp/autoarg.el
index 78e71ef2186..ae1d26ecd20 100644
--- a/lisp/autoarg.el
+++ b/lisp/autoarg.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/autoinsert.el b/lisp/autoinsert.el
index 04bdb17efca..71fa14014a9 100644
--- a/lisp/autoinsert.el
+++ b/lisp/autoinsert.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -198,8 +198,8 @@ If this contains a %s, that will be replaced by the matching rule."
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/autorevert.el b/lisp/autorevert.el
index 1769a992f7b..23156ceda47 100644
--- a/lisp/autorevert.el
+++ b/lisp/autorevert.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/avoid.el b/lisp/avoid.el
index b5e7d1f9b62..032c7260cec 100644
--- a/lisp/avoid.el
+++ b/lisp/avoid.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/battery.el b/lisp/battery.el
index 42ceec0c90c..2ae6607f8ef 100644
--- a/lisp/battery.el
+++ b/lisp/battery.el
@@ -20,14 +20,15 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
-;; There is at present support for interpreting the new `/proc/apm'
-;; file format of Linux version 1.3.58 or newer and for the `/proc/acpi/'
-;; directory structure of Linux 2.4.20 and 2.6.
+;; There is at present support for GNU/Linux and OS X. This library
+;; supports both the `/proc/apm' file format of Linux version 1.3.58
+;; or newer and the `/proc/acpi/' directory structure of Linux 2.4.20
+;; and 2.6. Darwin (OS X) is supported by using the `pmset' program.
;;; Code:
@@ -46,7 +47,13 @@
'battery-linux-proc-apm)
((and (eq system-type 'gnu/linux)
(file-directory-p "/proc/acpi/battery"))
- 'battery-linux-proc-acpi))
+ 'battery-linux-proc-acpi)
+ ((and (eq system-type 'darwin)
+ (ignore-errors
+ (with-temp-buffer
+ (and (eq (call-process "pmset" nil t nil "-g" "ps") 0)
+ (> (buffer-size) 0)))))
+ 'battery-pmset))
"*Function for getting battery status information.
The function has to return an alist of conversion definitions.
Its cons cells are of the form
@@ -62,7 +69,9 @@ introduced by a `%' character in a control string."
(cond ((eq battery-status-function 'battery-linux-proc-apm)
"Power %L, battery %B (%p%% load, remaining time %t)")
((eq battery-status-function 'battery-linux-proc-acpi)
- "Power %L, battery %B at %r (%p%% load, remaining time %t)"))
+ "Power %L, battery %B at %r (%p%% load, remaining time %t)")
+ ((eq battery-status-function 'battery-pmset)
+ "%L power, battery %B (%p%% load, remaining time %t)"))
"*Control string formatting the string to display in the echo area.
Ordinary characters in the control string are printed as-is, while
conversion specifications introduced by a `%' character in the control
@@ -79,7 +88,9 @@ string are substituted as defined by the current value of the variable
(cond ((eq battery-status-function 'battery-linux-proc-apm)
"[%b%p%%]")
((eq battery-status-function 'battery-linux-proc-acpi)
- "[%b%p%%,%d°C]"))
+ "[%b%p%%,%d°C]")
+ ((eq battery-status-function 'battery-pmset)
+ "[%b%p%%]"))
"*Control string formatting the string to display in the mode line.
Ordinary characters in the control string are printed as-is, while
conversion specifications introduced by a `%' character in the control
@@ -93,6 +104,18 @@ string are substituted as defined by the current value of the variable
:type 'integer
:group 'battery)
+(defcustom battery-load-low 25
+ "*Upper bound of low battery load percentage.
+A battery load percentage below this number is considered low."
+ :type 'integer
+ :group 'battery)
+
+(defcustom battery-load-critical 10
+ "*Upper bound of critical battery load percentage.
+A battery load percentage below this number is considered critical."
+ :type 'integer
+ :group 'battery)
+
(defvar battery-update-timer nil
"Interval timer object.")
@@ -171,53 +194,49 @@ The following %-sequences are provided:
%B Battery status (verbose)
%b Battery status, empty means high, `-' means low,
`!' means critical, and `+' means charging
-%p battery load percentage
+%p Battery load percentage
%s Remaining time in seconds
%m Remaining time in minutes
%h Remaining time in hours
%t Remaining time in the form `h:min'"
(let (driver-version bios-version bios-interface line-status
battery-status battery-status-symbol load-percentage
- seconds minutes hours remaining-time buffer tem)
- (unwind-protect
- (save-excursion
- (setq buffer (get-buffer-create " *battery*"))
- (set-buffer buffer)
- (erase-buffer)
- (insert-file-contents "/proc/apm")
- (re-search-forward battery-linux-proc-apm-regexp)
- (setq driver-version (match-string 1))
- (setq bios-version (match-string 2))
- (setq tem (string-to-number (match-string 3) 16))
- (if (not (logand tem 2))
- (setq bios-interface "not supported")
- (setq bios-interface "enabled")
- (cond ((logand tem 16) (setq bios-interface "disabled"))
- ((logand tem 32) (setq bios-interface "disengaged")))
- (setq tem (string-to-number (match-string 4) 16))
- (cond ((= tem 0) (setq line-status "off-line"))
- ((= tem 1) (setq line-status "on-line"))
- ((= tem 2) (setq line-status "on backup")))
- (setq tem (string-to-number (match-string 6) 16))
- (if (= tem 255)
- (setq battery-status "N/A")
- (setq tem (string-to-number (match-string 5) 16))
- (cond ((= tem 0) (setq battery-status "high"
- battery-status-symbol ""))
- ((= tem 1) (setq battery-status "low"
- battery-status-symbol "-"))
- ((= tem 2) (setq battery-status "critical"
- battery-status-symbol "!"))
- ((= tem 3) (setq battery-status "charging"
- battery-status-symbol "+")))
- (setq load-percentage (match-string 7))
- (setq seconds (string-to-number (match-string 8)))
- (and (string-equal (match-string 9) "min")
- (setq seconds (* 60 seconds)))
- (setq minutes (/ seconds 60)
- hours (/ seconds 3600))
- (setq remaining-time
- (format "%d:%02d" hours (- minutes (* 60 hours))))))))
+ seconds minutes hours remaining-time tem)
+ (with-temp-buffer
+ (ignore-errors (insert-file-contents "/proc/apm"))
+ (when (re-search-forward battery-linux-proc-apm-regexp)
+ (setq driver-version (match-string 1))
+ (setq bios-version (match-string 2))
+ (setq tem (string-to-number (match-string 3) 16))
+ (if (not (logand tem 2))
+ (setq bios-interface "not supported")
+ (setq bios-interface "enabled")
+ (cond ((logand tem 16) (setq bios-interface "disabled"))
+ ((logand tem 32) (setq bios-interface "disengaged")))
+ (setq tem (string-to-number (match-string 4) 16))
+ (cond ((= tem 0) (setq line-status "off-line"))
+ ((= tem 1) (setq line-status "on-line"))
+ ((= tem 2) (setq line-status "on backup")))
+ (setq tem (string-to-number (match-string 6) 16))
+ (if (= tem 255)
+ (setq battery-status "N/A")
+ (setq tem (string-to-number (match-string 5) 16))
+ (cond ((= tem 0) (setq battery-status "high"
+ battery-status-symbol ""))
+ ((= tem 1) (setq battery-status "low"
+ battery-status-symbol "-"))
+ ((= tem 2) (setq battery-status "critical"
+ battery-status-symbol "!"))
+ ((= tem 3) (setq battery-status "charging"
+ battery-status-symbol "+")))
+ (setq load-percentage (match-string 7))
+ (setq seconds (string-to-number (match-string 8)))
+ (and (string-equal (match-string 9) "min")
+ (setq seconds (* 60 seconds)))
+ (setq minutes (/ seconds 60)
+ hours (/ seconds 3600))
+ (setq remaining-time
+ (format "%d:%02d" hours (- minutes (* 60 hours))))))))
(list (cons ?v (or driver-version "N/A"))
(cons ?V (or bios-version "N/A"))
(cons ?I (or bios-interface "N/A"))
@@ -240,12 +259,13 @@ in Linux version 2.4.20 and 2.6.0.
The following %-sequences are provided:
%c Current capacity (mAh)
+%r Current rate
%B Battery status (verbose)
%b Battery status, empty means high, `-' means low,
`!' means critical, and `+' means charging
%d Temperature (in degrees Celsius)
%L AC line status (verbose)
-%p battery load percentage
+%p Battery load percentage
%m Remaining time in minutes
%h Remaining time in hours
%t Remaining time in the form `h:min'"
@@ -346,6 +366,58 @@ The following %-sequences are provided:
"N/A")))))
+;;; `pmset' interface for Darwin (OS X).
+
+(defun battery-pmset ()
+ "Get battery status information using `pmset'.
+
+The following %-sequences are provided:
+%L Power source (verbose)
+%B Battery status (verbose)
+%b Battery status, empty means high, `-' means low,
+ `!' means critical, and `+' means charging
+%p Battery load percentage
+%h Remaining time in hours
+%m Remaining time in minutes
+%t Remaining time in the form `h:min'"
+ (let (power-source load-percentage battery-status battery-status-symbol
+ remaining-time hours minutes)
+ (with-temp-buffer
+ (ignore-errors (call-process "pmset" nil t nil "-g" "ps"))
+ (goto-char (point-min))
+ (when (re-search-forward "Currentl?y drawing from '\\(AC\\|Battery\\) Power'" nil t)
+ (setq power-source (match-string 1))
+ (when (re-search-forward "^ -InternalBattery-0[ \t]+" nil t)
+ (when (looking-at "\\([0-9]\\{1,3\\}\\)%")
+ (setq load-percentage (match-string 1))
+ (goto-char (match-end 0))
+ (cond ((looking-at "; charging")
+ (setq battery-status "charging"
+ battery-status-symbol "+"))
+ ((< (string-to-number load-percentage) battery-load-low)
+ (setq battery-status "low"
+ battery-status-symbol "-"))
+ ((< (string-to-number load-percentage) battery-load-critical)
+ (setq battery-status "critical"
+ battery-status-symbol "!"))
+ (t
+ (setq battery-status "high"
+ battery-status-symbol "")))
+ (when (re-search-forward "\\(\\([0-9]+\\):\\([0-9]+\\)\\) remaining" nil t)
+ (setq remaining-time (match-string 1))
+ (let ((h (string-to-number (match-string 2)))
+ (m (string-to-number (match-string 3))))
+ (setq hours (number-to-string (+ h (if (< m 30) 0 1)))
+ minutes (number-to-string (+ (* h 60) m)))))))))
+ (list (cons ?L (or power-source "N/A"))
+ (cons ?p (or load-percentage "N/A"))
+ (cons ?B (or battery-status "N/A"))
+ (cons ?b (or battery-status-symbol ""))
+ (cons ?h (or hours "N/A"))
+ (cons ?m (or minutes "N/A"))
+ (cons ?t (or remaining-time "N/A")))))
+
+
;;; Private functions.
(defun battery-format (format alist)
diff --git a/lisp/bindings.el b/lisp/bindings.el
index ceab70ed6cd..1496769a8e0 100644
--- a/lisp/bindings.el
+++ b/lisp/bindings.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/bookmark.el b/lisp/bookmark.el
index bbf9b3bcce4..51a5e0469e5 100644
--- a/lisp/bookmark.el
+++ b/lisp/bookmark.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -309,7 +309,8 @@ through a file easier.")
(defvar bookmark-yank-point 0)
(defvar bookmark-current-buffer nil)
-
+(defvar Info-current-node)
+(defvar Info-suffix-list)
;; Helper functions.
diff --git a/lisp/bs.el b/lisp/bs.el
index 4c8b74bb59f..67db5648893 100644
--- a/lisp/bs.el
+++ b/lisp/bs.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index 79247ad30df..7f10e7f3c1f 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/button.el b/lisp/button.el
index 78008f06db2..1b0c009e925 100644
--- a/lisp/button.el
+++ b/lisp/button.el
@@ -19,8 +19,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el
index 3a99291fdef..7317c2a7b9a 100644
--- a/lisp/calc/calc.el
+++ b/lisp/calc/calc.el
@@ -207,7 +207,7 @@
(require 'calc-macs)
(defgroup calc nil
- "GNU Calc"
+ "GNU Calc."
:prefix "calc-"
:tag "Calc"
:group 'applications)
@@ -3026,10 +3026,10 @@ See calc-keypad for details."
(setq w (cdr off)
off (car off))
(when (> off 0)
- (setq c (math-comp-concat (make-string off ? ) c)))
+ (setq c (math-comp-concat (make-string off ?\s) c)))
(or (equal calc-left-label "")
(setq c (math-comp-concat (if (eq a 'top-of-stack)
- (make-string (length calc-left-label) ? )
+ (make-string (length calc-left-label) ?\s)
calc-left-label)
c)))
(when calc-line-numbering
@@ -3044,7 +3044,7 @@ See calc-keypad for details."
(require 'calc-ext)
(setq c (list 'horiz c
(make-string (max (- w (math-comp-width c)
- (length calc-right-label)) 0) ? )
+ (length calc-right-label)) 0) ?\s)
'(break -1)
calc-right-label)))
(setq s (if (stringp c)
diff --git a/lisp/calculator.el b/lisp/calculator.el
index 0c6ad53dbce..923d4022098 100644
--- a/lisp/calculator.el
+++ b/lisp/calculator.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-;; MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+;; MA 02110-1301, USA.
;;;=====================================================================
;;; Commentary:
diff --git a/lisp/calendar/appt.el b/lisp/calendar/appt.el
index a66ef9cec6e..06b83872449 100644
--- a/lisp/calendar/appt.el
+++ b/lisp/calendar/appt.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-bahai.el b/lisp/calendar/cal-bahai.el
index 7e6149d8e94..6bf84d11951 100644
--- a/lisp/calendar/cal-bahai.el
+++ b/lisp/calendar/cal-bahai.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-china.el b/lisp/calendar/cal-china.el
index 303193e3d73..79beef836be 100644
--- a/lisp/calendar/cal-china.el
+++ b/lisp/calendar/cal-china.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-coptic.el b/lisp/calendar/cal-coptic.el
index 2aa111f2109..65a633b5d5c 100644
--- a/lisp/calendar/cal-coptic.el
+++ b/lisp/calendar/cal-coptic.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-dst.el b/lisp/calendar/cal-dst.el
index 034e8e28523..141ca2d8183 100644
--- a/lisp/calendar/cal-dst.el
+++ b/lisp/calendar/cal-dst.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-french.el b/lisp/calendar/cal-french.el
index c42e415eb25..bdb4d971bbf 100644
--- a/lisp/calendar/cal-french.el
+++ b/lisp/calendar/cal-french.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-hebrew.el b/lisp/calendar/cal-hebrew.el
index 8f9f7723d5d..168476b01c3 100644
--- a/lisp/calendar/cal-hebrew.el
+++ b/lisp/calendar/cal-hebrew.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-islam.el b/lisp/calendar/cal-islam.el
index 786c71f24ce..c52d26c0de6 100644
--- a/lisp/calendar/cal-islam.el
+++ b/lisp/calendar/cal-islam.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-iso.el b/lisp/calendar/cal-iso.el
index 8a40442e4fe..021ea6d60ee 100644
--- a/lisp/calendar/cal-iso.el
+++ b/lisp/calendar/cal-iso.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-julian.el b/lisp/calendar/cal-julian.el
index 2b7278f8ea6..bff0d0e066d 100644
--- a/lisp/calendar/cal-julian.el
+++ b/lisp/calendar/cal-julian.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-mayan.el b/lisp/calendar/cal-mayan.el
index 92bbb5df23e..0c491b4c296 100644
--- a/lisp/calendar/cal-mayan.el
+++ b/lisp/calendar/cal-mayan.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-menu.el b/lisp/calendar/cal-menu.el
index 6ace81fcb0e..dabb933785f 100644
--- a/lisp/calendar/cal-menu.el
+++ b/lisp/calendar/cal-menu.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-move.el b/lisp/calendar/cal-move.el
index e89ee2a26e2..42cece292a9 100644
--- a/lisp/calendar/cal-move.el
+++ b/lisp/calendar/cal-move.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-persia.el b/lisp/calendar/cal-persia.el
index dcbbcbd637e..85e79327dcc 100644
--- a/lisp/calendar/cal-persia.el
+++ b/lisp/calendar/cal-persia.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-tex.el b/lisp/calendar/cal-tex.el
index ac6fad4ed67..f3ec25cee9e 100644
--- a/lisp/calendar/cal-tex.el
+++ b/lisp/calendar/cal-tex.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/cal-x.el b/lisp/calendar/cal-x.el
index 03b485a438a..26c74172959 100644
--- a/lisp/calendar/cal-x.el
+++ b/lisp/calendar/cal-x.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 0dee0da67f8..8fe92fc0810 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/diary-lib.el b/lisp/calendar/diary-lib.el
index 851459fe574..8b14061a95b 100644
--- a/lisp/calendar/diary-lib.el
+++ b/lisp/calendar/diary-lib.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/holidays.el b/lisp/calendar/holidays.el
index 6596657d454..7fd1d1f8f2c 100644
--- a/lisp/calendar/holidays.el
+++ b/lisp/calendar/holidays.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el
index d15a4b78e2f..aa33ac598e1 100644
--- a/lisp/calendar/icalendar.el
+++ b/lisp/calendar/icalendar.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/lunar.el b/lisp/calendar/lunar.el
index 057419969fc..c611cf2ac29 100644
--- a/lisp/calendar/lunar.el
+++ b/lisp/calendar/lunar.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/parse-time.el b/lisp/calendar/parse-time.el
index bf75b186211..1b4ac116fe1 100644
--- a/lisp/calendar/parse-time.el
+++ b/lisp/calendar/parse-time.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/solar.el b/lisp/calendar/solar.el
index 8401aeb9bfd..fde19650d87 100644
--- a/lisp/calendar/solar.el
+++ b/lisp/calendar/solar.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/time-date.el b/lisp/calendar/time-date.el
index ddeb33b411a..be3490dfaff 100644
--- a/lisp/calendar/time-date.el
+++ b/lisp/calendar/time-date.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/timeclock.el b/lisp/calendar/timeclock.el
index 82315108548..19191fd84b9 100644
--- a/lisp/calendar/timeclock.el
+++ b/lisp/calendar/timeclock.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/calendar/todo-mode.el b/lisp/calendar/todo-mode.el
index 85d49ba38f7..c49733e2158 100644
--- a/lisp/calendar/todo-mode.el
+++ b/lisp/calendar/todo-mode.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; ---------------------------------------------------------------------------
diff --git a/lisp/case-table.el b/lisp/case-table.el
index cb2f3e31723..0bfc3afb980 100644
--- a/lisp/case-table.el
+++ b/lisp/case-table.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/cdl.el b/lisp/cdl.el
index 53c9ced9cec..68111eda53e 100644
--- a/lisp/cdl.el
+++ b/lisp/cdl.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/chistory.el b/lisp/chistory.el
index ddbc0863a0e..1704e7a4a1e 100644
--- a/lisp/chistory.el
+++ b/lisp/chistory.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/cmuscheme.el b/lisp/cmuscheme.el
index 03cd8ee4d9c..102347f345a 100644
--- a/lisp/cmuscheme.el
+++ b/lisp/cmuscheme.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/comint.el b/lisp/comint.el
index 20b365e9fe1..188af8a3b0b 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -146,11 +146,11 @@
:group 'processes)
(defgroup comint-completion nil
- "Completion facilities in comint"
+ "Completion facilities in comint."
:group 'comint)
(defgroup comint-source nil
- "Source finding facilities in comint"
+ "Source finding facilities in comint."
:prefix "comint-"
:group 'comint)
@@ -986,7 +986,7 @@ See also `comint-read-input-ring'."
(message "Hit space to flush")
(setq comint-dynamic-list-input-ring-window-conf conf)
(let ((ch (read-event)))
- (if (eq ch ?\ )
+ (if (eq ch ?\s)
(set-window-configuration conf)
(setq unread-command-events (list ch)))))))
@@ -2930,7 +2930,7 @@ Typing SPC flushes the help buffer."
(progn
(mouse-choose-completion first)
(set-window-configuration comint-dynamic-list-completions-config))
- (unless (eq first ?\ )
+ (unless (eq first ?\s)
(setq unread-command-events (listify-key-sequence key)))
(unless (eq first ?\t)
(set-window-configuration comint-dynamic-list-completions-config))))))
diff --git a/lisp/compare-w.el b/lisp/compare-w.el
index 353c015c8af..e0a6d5cf732 100644
--- a/lisp/compare-w.el
+++ b/lisp/compare-w.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/complete.el b/lisp/complete.el
index 60bddd01f17..dabab4ee6ee 100644
--- a/lisp/complete.el
+++ b/lisp/complete.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/completion.el b/lisp/completion.el
index d7f728821f9..5e7285ecddd 100644
--- a/lisp/completion.el
+++ b/lisp/completion.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/composite.el b/lisp/composite.el
index 8bb3028f778..11c927a3f8b 100644
--- a/lisp/composite.el
+++ b/lisp/composite.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/cus-dep.el b/lisp/cus-dep.el
index bd9fd71b579..8818ed6ff70 100644
--- a/lisp/cus-dep.el
+++ b/lisp/cus-dep.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index 4889ec6d62d..76e8e5bf7ba 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/cus-face.el b/lisp/cus-face.el
index 054ad9acaa3..6eaaf97288d 100644
--- a/lisp/cus-face.el
+++ b/lisp/cus-face.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -320,6 +320,10 @@ FACE's list property `theme-face' \(using `custom-push-theme')."
(spec (nth 1 entry))
(now (nth 2 entry))
(comment (nth 3 entry)))
+ ;; If FACE is actually an alias, customize the face it
+ ;; is aliased to.
+ (if (get face 'face-alias)
+ (setq face (get face 'face-alias)))
(put face 'saved-face spec)
(put face 'saved-face-comment comment)
(custom-push-theme 'theme-face face theme 'set spec)
@@ -334,6 +338,8 @@ FACE's list property `theme-face' \(using `custom-push-theme')."
;; Old format, a plist of FACE SPEC pairs.
(let ((face (nth 0 args))
(spec (nth 1 args)))
+ (if (get face 'face-alias)
+ (setq face (get face 'face-alias)))
(put face 'saved-face spec)
(custom-push-theme 'theme-face face theme 'set spec))
(setq args (cdr (cdr args))))))))
diff --git a/lisp/cus-start.el b/lisp/cus-start.el
index 5a486e82577..16d9e2785a1 100644
--- a/lisp/cus-start.el
+++ b/lisp/cus-start.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/cus-theme.el b/lisp/cus-theme.el
index 41240303037..32e01963824 100644
--- a/lisp/cus-theme.el
+++ b/lisp/cus-theme.el
@@ -1,6 +1,6 @@
;;; cus-theme.el -- custom theme creation user interface
;;
-;; Copyright (C) 2001 Free Software Foundation, Inc.
+;; Copyright (C) 2001, 2005 Free Software Foundation, Inc.
;;
;; Author: Alex Schroeder <alex@gnu.org>
;; Maintainer: FSF
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
@@ -31,6 +31,18 @@
(eval-when-compile
(require 'wid-edit))
+(define-derived-mode custom-new-theme-mode nil "New-Theme"
+ "Major mode for the buffer created by `customize-create-theme'.
+Do not call this mode function yourself. It is only meant for internal
+use by `customize-create-theme'."
+ (set-keymap-parent custom-new-theme-mode-map widget-keymap))
+(put 'custom-new-theme-mode 'mode-class 'special)
+
+(defvar custom-theme-name)
+(defvar custom-theme-variables)
+(defvar custom-theme-faces)
+(defvar custom-theme-description)
+
;;;###autoload
(defun customize-create-theme ()
"Create a custom theme."
@@ -38,15 +50,23 @@
(if (get-buffer "*New Custom Theme*")
(kill-buffer "*New Custom Theme*"))
(switch-to-buffer "*New Custom Theme*")
- (kill-all-local-variables)
+ (let ((inhibit-read-only t))
+ (erase-buffer))
+ (custom-new-theme-mode)
(make-local-variable 'custom-theme-name)
(make-local-variable 'custom-theme-variables)
(make-local-variable 'custom-theme-faces)
(make-local-variable 'custom-theme-description)
- (let ((inhibit-read-only t))
- (erase-buffer))
(widget-insert "This buffer helps you write a custom theme elisp file.
-This will help you share your customizations with other people.\n\n")
+This will help you share your customizations with other people.
+
+Just insert the names of all variables and faces you want the theme
+to include. Then clicking mouse-2 or pressing RET on the [Done] button
+will write a theme file that sets all these variables and faces to their
+current global values. It will write that file into the directory given
+by the variable `custom-theme-directory', usually \"~/.emacs.d/\".
+
+To undo all your edits to the buffer, use the [Reset] button.\n\n")
(widget-insert "Theme name: ")
(setq custom-theme-name
(widget-create 'editable-field
@@ -81,7 +101,6 @@ This will help you share your customizations with other people.\n\n")
(bury-buffer))
"Bury Buffer")
(widget-insert "\n")
- (use-local-map widget-keymap)
(widget-setup))
(defun custom-theme-write (&rest ignore)
@@ -90,6 +109,10 @@ This will help you share your customizations with other people.\n\n")
(variables (widget-value custom-theme-variables))
(faces (widget-value custom-theme-faces)))
(switch-to-buffer (concat name "-theme.el"))
+ (emacs-lisp-mode)
+ (unless (file-exists-p custom-theme-directory)
+ (make-directory (file-name-as-directory custom-theme-directory) t))
+ (setq default-directory custom-theme-directory)
(setq buffer-file-name (expand-file-name (concat name "-theme.el")))
(let ((inhibit-read-only t))
(erase-buffer))
@@ -100,7 +123,8 @@ This will help you share your customizations with other people.\n\n")
(insert ")\n")
(custom-theme-write-variables name variables)
(custom-theme-write-faces name faces)
- (insert "\n(provide-theme '" name ")\n")))
+ (insert "\n(provide-theme '" name ")\n")
+ (save-buffer)))
(defun custom-theme-write-variables (theme vars)
"Write a `custom-theme-set-variables' command for THEME.
diff --git a/lisp/custom.el b/lisp/custom.el
index f3cbd1404e9..a8c9b864537 100644
--- a/lisp/custom.el
+++ b/lisp/custom.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -121,7 +121,7 @@ compatibility, DEFAULT is also stored in SYMBOL's property
`standard-value'. At the same time, SYMBOL's property `force-value' is
set to nil, as the value is no longer rogue."
;; Remember the standard setting. The value should be in the standard
- ;; theme, not in this property. However, his would require changeing
+ ;; theme, not in this property. However, this would require changing
;; the C source of defvar and others as well...
(put symbol 'standard-value (list default))
;; Maybe this option was rogue in an earlier version. It no longer is.
@@ -486,8 +486,10 @@ both appear in constructs like `custom-set-variables'."
(defun custom-add-option (symbol option)
"To the variable SYMBOL add OPTION.
-If SYMBOL is a hook variable, OPTION should be a hook member.
-For other types variables, the effect is undefined."
+If SYMBOL's custom type is a hook, OPTION should be a hook member.
+If SYMBOL's custom type is an alist, OPTION specifies a symbol
+to offer to the user as a possible key in the alist.
+For other custom types, this has no effect."
(let ((options (get symbol 'custom-options)))
(unless (member option options)
(put symbol 'custom-options (cons option options)))))
@@ -560,7 +562,7 @@ LOAD should be either a library file name, or a feature name."
(t (condition-case nil (load load) (error nil))))))))
(defvar custom-known-themes '(user standard)
- "Themes that have been define with `deftheme'.
+ "Themes that have been defined with `deftheme'.
The default value is the list (user standard). The theme `standard'
contains the Emacs standard settings from the original Lisp files. The
theme `user' contains all the the settings the user customized and saved.
@@ -926,6 +928,19 @@ Return non-nil iff the `customized-value' property actually changed."
(defvar custom-loaded-themes nil
"Themes in the order they are loaded.")
+(defcustom custom-theme-directory
+ (if (eq system-type 'ms-dos)
+ ;; MS-DOS cannot have initial dot.
+ "~/_emacs.d/"
+ "~/.emacs.d/")
+ "Directory in which Custom theme files should be written.
+`require-theme' searches this directory in addition to load-path.
+The command `customize-create-theme' writes the files it produces
+into this directory."
+ :type 'string
+ :group 'customize
+ :version "22.1")
+
(defun custom-theme-loaded-p (theme)
"Return non-nil when THEME has been loaded."
(memq theme custom-loaded-themes))
@@ -949,8 +964,11 @@ Usually the `theme-feature' property contains a symbol created
by `custom-make-theme-feature'."
;; Note we do no check for validity of the theme here.
;; This allows to pull in themes by a file-name convention
- (require (or (get theme 'theme-feature)
- (custom-make-theme-feature theme))))
+ (let ((load-path (if (file-directory-p custom-theme-directory)
+ (cons custom-theme-directory load-path)
+ load-path)))
+ (require (or (get theme 'theme-feature)
+ (custom-make-theme-feature theme)))))
(defun custom-remove-theme (spec-alist theme)
"Delete all elements from SPEC-ALIST whose car is THEME."
diff --git a/lisp/cvs-status.el b/lisp/cvs-status.el
index c8bd1e7e905..a70e368ff89 100644
--- a/lisp/cvs-status.el
+++ b/lisp/cvs-status.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/dabbrev.el b/lisp/dabbrev.el
index 5dea9892115..01591e2fdf3 100644
--- a/lisp/dabbrev.el
+++ b/lisp/dabbrev.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -100,7 +100,7 @@
;;----------------------------------------------------------------
(defgroup dabbrev nil
- "Dynamic Abbreviations"
+ "Dynamic Abbreviations."
:tag "Dynamic Abbreviations"
:group 'abbrev
:group 'convenience)
@@ -509,7 +509,7 @@ See also `dabbrev-abbrev-char-regexp' and \\[dabbrev-completion]."
(setq direction dabbrev--last-direction))
;; If the user inserts a space after expanding
;; and then asks to expand again, always fetch the next word.
- (if (and (eq (preceding-char) ?\ )
+ (if (and (eq (preceding-char) ?\s)
(markerp dabbrev--last-abbrev-location)
(marker-position dabbrev--last-abbrev-location)
(= (point) (1+ dabbrev--last-abbrev-location)))
diff --git a/lisp/delim-col.el b/lisp/delim-col.el
index b5be7ff4ebc..1c0c8b77503 100644
--- a/lisp/delim-col.el
+++ b/lisp/delim-col.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -125,7 +125,7 @@
;; User Options:
(defgroup columns nil
- "Prettify columns"
+ "Prettify columns."
:link '(emacs-library-link :tag "Source Lisp File" "delim-col.el")
:prefix "delimit-columns-"
:group 'internal)
@@ -424,13 +424,13 @@ START and END delimits the corners of text rectangle."
(and delimit-columns-format
(make-string (- (aref delimit-columns-max ncol)
(- (current-column) origin))
- ?\ )))
+ ?\s)))
(setq ncol (1+ ncol)))
;; Prepare last column spaces
(let ((spaces (and delimit-columns-format
(make-string (- (aref delimit-columns-max ncol)
(- (current-column) origin))
- ?\ ))))
+ ?\s))))
;; Adjust extra columns, if needed
(and delimit-columns-extra
(while (and (< (setq ncol (1+ ncol)) len)
@@ -438,7 +438,7 @@ START and END delimits the corners of text rectangle."
(delimit-columns-format spaces)
(setq spaces (and delimit-columns-format
(make-string (aref delimit-columns-max ncol)
- ?\ )))))
+ ?\s)))))
;; insert last formating
(cond ((null delimit-columns-format)
(insert delimit-columns-after delimit-columns-str-after))
diff --git a/lisp/delsel.el b/lisp/delsel.el
index 962fa156a07..483c2e2c599 100644
--- a/lisp/delsel.el
+++ b/lisp/delsel.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/descr-text.el b/lisp/descr-text.el
index 03c12a8f7ba..447762704ca 100644
--- a/lisp/descr-text.el
+++ b/lisp/descr-text.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 91cddb1a37b..70d88be0952 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/diff-mode.el b/lisp/diff-mode.el
index 1cb5111dcfb..b6444aad2a4 100644
--- a/lisp/diff-mode.el
+++ b/lisp/diff-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -57,7 +57,7 @@
(defgroup diff-mode ()
- "Major mode for viewing/editing diffs"
+ "Major mode for viewing/editing diffs."
:version "21.1"
:group 'tools
:group 'diff)
@@ -640,7 +640,7 @@ else cover the whole bufer."
(while (progn (setq last-pt (point))
(= (forward-line -1) 0))
(case (char-after)
- (? (insert " ") (setq modif nil) (backward-char 1))
+ (?\s (insert " ") (setq modif nil) (backward-char 1))
(?+ (delete-region (point) last-pt) (setq modif t))
(?- (if (not modif)
(progn (forward-char 1)
@@ -665,7 +665,7 @@ else cover the whole bufer."
(let ((modif nil) (delete nil))
(while (not (eobp))
(case (char-after)
- (? (insert " ") (setq modif nil) (backward-char 1))
+ (?\s (insert " ") (setq modif nil) (backward-char 1))
(?- (setq delete t) (setq modif t))
(?+ (if (not modif)
(progn (forward-char 1)
@@ -723,7 +723,7 @@ else cover the whole bufer."
(while (< (point) pt2)
(case (char-after)
((?! ?-) (delete-char 2) (insert "-") (forward-line 1))
- (?\ ;merge with the other half of the chunk
+ (?\s ;merge with the other half of the chunk
(let* ((endline2
(save-excursion
(goto-char pt2) (forward-line 1) (point)))
@@ -733,7 +733,7 @@ else cover the whole bufer."
(insert "+"
(prog1 (buffer-substring (+ pt2 2) endline2)
(delete-region pt2 endline2))))
- (?\ ;FIXME: check consistency
+ (?\s ;FIXME: check consistency
(delete-region pt2 endline2)
(delete-char 1)
(forward-line 1))
@@ -814,7 +814,7 @@ else cover the whole bufer."
(t (when (and first last (< first last))
(insert (delete-and-extract-region first last)))
(setq first nil last nil)
- (equal ?\ c)))
+ (equal ?\s c)))
(forward-line 1))))))))))
(defun diff-fixup-modifs (start end)
diff --git a/lisp/diff.el b/lisp/diff.el
index c985b66036e..bee7277af78 100644
--- a/lisp/diff.el
+++ b/lisp/diff.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el
index 963866b3554..c9d5c22ded3 100644
--- a/lisp/dired-aux.el
+++ b/lisp/dired-aux.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -839,6 +839,9 @@ Otherwise, the rule is a compression rule, and compression is done with gzip.")
(sit-for 1)
(apply 'message qprompt qs-args)
(setq char (set qs-var (read-char))))
+ ;; Display the question with the answer.
+ (message (concat (apply 'format qprompt qs-args)
+ (char-to-string char)))
(memq (cdr elt) '(t y yes)))))))
;;;###autoload
diff --git a/lisp/dired-x.el b/lisp/dired-x.el
index 86c955650e8..42df15b47d2 100644
--- a/lisp/dired-x.el
+++ b/lisp/dired-x.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/dired.el b/lisp/dired.el
index 61aca72db5b..a2d1cf957a8 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -437,6 +437,8 @@ Subexpression 2 must end right before the \\n or \\r.")
nil (0 dired-ignored-face))))
)
"Additional expressions to highlight in Dired mode.")
+
+(defvar dnd-protocol-alist)
;;; Macros must be defined before they are used, for the byte compiler.
diff --git a/lisp/dirtrack.el b/lisp/dirtrack.el
index 41aea04988b..5ae76f91316 100644
--- a/lisp/dirtrack.el
+++ b/lisp/dirtrack.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/disp-table.el b/lisp/disp-table.el
index 0c2984759cc..93f11e79b65 100644
--- a/lisp/disp-table.el
+++ b/lisp/disp-table.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/dnd.el b/lisp/dnd.el
index 96c9e18a3f1..9a925550411 100644
--- a/lisp/dnd.el
+++ b/lisp/dnd.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/dos-fns.el b/lisp/dos-fns.el
index 1253b7b5811..920625526e3 100644
--- a/lisp/dos-fns.el
+++ b/lisp/dos-fns.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/dos-vars.el b/lisp/dos-vars.el
index 93ff681796e..8fdff647bed 100644
--- a/lisp/dos-vars.el
+++ b/lisp/dos-vars.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/dos-w32.el b/lisp/dos-w32.el
index d7b411fab3f..644b457393f 100644
--- a/lisp/dos-w32.el
+++ b/lisp/dos-w32.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/double.el b/lisp/double.el
index c9c27203344..137ea510123 100644
--- a/lisp/double.el
+++ b/lisp/double.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ebuff-menu.el b/lisp/ebuff-menu.el
index ec230bc8a62..2a89d4ef654 100644
--- a/lisp/ebuff-menu.el
+++ b/lisp/ebuff-menu.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/echistory.el b/lisp/echistory.el
index a01cad89f40..e134b16ce6c 100644
--- a/lisp/echistory.el
+++ b/lisp/echistory.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ediff-diff.el b/lisp/ediff-diff.el
index ec496301405..659c4ffedb0 100644
--- a/lisp/ediff-diff.el
+++ b/lisp/ediff-diff.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -43,7 +43,7 @@
(require 'ediff-init)
(defgroup ediff-diff nil
- "Diff related utilities"
+ "Diff related utilities."
:prefix "ediff-"
:group 'ediff)
diff --git a/lisp/ediff-help.el b/lisp/ediff-help.el
index 69d170faedf..87056e3723f 100644
--- a/lisp/ediff-help.el
+++ b/lisp/ediff-help.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ediff-hook.el b/lisp/ediff-hook.el
index 5394923aa36..8d038a4d93b 100644
--- a/lisp/ediff-hook.el
+++ b/lisp/ediff-hook.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ediff-init.el b/lisp/ediff-init.el
index 3933fd760d2..18e1a7128f1 100644
--- a/lisp/ediff-init.el
+++ b/lisp/ediff-init.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -393,17 +393,17 @@ It needs to be killed when we quit the session.")
this-command)))
(defgroup ediff-highlighting nil
- "Hilighting of difference regions in Ediff"
+ "Hilighting of difference regions in Ediff."
:prefix "ediff-"
:group 'ediff)
(defgroup ediff-merge nil
- "Merging utilities"
+ "Merging utilities."
:prefix "ediff-"
:group 'ediff)
(defgroup ediff-hook nil
- "Hooks run by Ediff"
+ "Hooks run by Ediff."
:prefix "ediff-"
:group 'ediff)
@@ -1840,7 +1840,7 @@ Unless optional argument INPLACE is non-nil, return a new string."
"Merge dir versions via ancestors")
(t
(capitalize
- (subst-char-in-string ?- ?\ (substring (symbol-name jobname) 6))))
+ (subst-char-in-string ?- ?\s (substring (symbol-name jobname) 6))))
))
diff --git a/lisp/ediff-merg.el b/lisp/ediff-merg.el
index 237ce514cbb..13414747b11 100644
--- a/lisp/ediff-merg.el
+++ b/lisp/ediff-merg.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ediff-mult.el b/lisp/ediff-mult.el
index d3710258d24..c7ad411b4ac 100644
--- a/lisp/ediff-mult.el
+++ b/lisp/ediff-mult.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -106,7 +106,7 @@
(provide 'ediff-mult)
(defgroup ediff-mult nil
- "Multi-file and multi-buffer processing in Ediff"
+ "Multi-file and multi-buffer processing in Ediff."
:prefix "ediff-"
:group 'ediff)
@@ -857,7 +857,7 @@ behavior."
(session-info (ediff-overlay-get overl 'ediff-meta-info))
(activity-marker (ediff-get-session-activity-marker session-info))
buffer-read-only)
- (or new-marker activity-marker (setq new-marker ?\ ))
+ (or new-marker activity-marker (setq new-marker ?\s))
(goto-char (ediff-overlay-start overl))
(if (eq (char-after (point)) new-marker)
() ; if marker shown in buffer is the same as new-marker, do nothing
@@ -872,7 +872,7 @@ behavior."
(session-info (ediff-overlay-get overl 'ediff-meta-info))
(status (ediff-get-session-status session-info))
buffer-read-only)
- (setq new-status (or new-status status ?\ ))
+ (setq new-status (or new-status status ?\s))
(goto-char (ediff-overlay-start overl))
(forward-char 1) ; status is the second char in session record
(if (eq (char-after (point)) new-status)
diff --git a/lisp/ediff-ptch.el b/lisp/ediff-ptch.el
index 342f75fd1e0..45b214c0cb3 100644
--- a/lisp/ediff-ptch.el
+++ b/lisp/ediff-ptch.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -28,7 +28,7 @@
(provide 'ediff-ptch)
(defgroup ediff-ptch nil
- "Ediff patch support"
+ "Ediff patch support."
:tag "Patch"
:prefix "ediff-"
:group 'ediff)
diff --git a/lisp/ediff-util.el b/lisp/ediff-util.el
index b7b39f405e5..9434601326c 100644
--- a/lisp/ediff-util.el
+++ b/lisp/ediff-util.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ediff-vers.el b/lisp/ediff-vers.el
index effce2a1adf..653f4017cad 100644
--- a/lisp/ediff-vers.el
+++ b/lisp/ediff-vers.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ediff-wind.el b/lisp/ediff-wind.el
index dde306a3857..3ac4ee089cd 100644
--- a/lisp/ediff-wind.el
+++ b/lisp/ediff-wind.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -66,7 +66,7 @@
(defun ediff-compute-toolbar-width () 0))
(defgroup ediff-window nil
- "Ediff window manipulation"
+ "Ediff window manipulation."
:prefix "ediff-"
:group 'ediff
:group 'frames)
diff --git a/lisp/ediff.el b/lisp/ediff.el
index 00a7e2f512a..46b060e29ae 100644
--- a/lisp/ediff.el
+++ b/lisp/ediff.el
@@ -7,7 +7,7 @@
;; Keywords: comparing, merging, patching, tools, unix
(defconst ediff-version "2.80" "The current version of Ediff")
-(defconst ediff-date "June 3, 2005" "Date of last update")
+(defconst ediff-date "June 3, 2005" "Date of last update")
;; This file is part of GNU Emacs.
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -135,7 +135,7 @@
(require 'ediff-mult) ; required because of the registry stuff
(defgroup ediff nil
- "A comprehensive visual interface to diff & patch"
+ "A comprehensive visual interface to diff & patch."
:tag "Ediff"
:group 'tools)
diff --git a/lisp/edmacro.el b/lisp/edmacro.el
index a8382a7f081..28c8f761193 100644
--- a/lisp/edmacro.el
+++ b/lisp/edmacro.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ehelp.el b/lisp/ehelp.el
index 82a8e10301e..36bbd0329bb 100644
--- a/lisp/ehelp.el
+++ b/lisp/ehelp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/electric.el b/lisp/electric.el
index 18a4d8388c5..32fb843e2cb 100644
--- a/lisp/electric.el
+++ b/lisp/electric.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/elide-head.el b/lisp/elide-head.el
index fed6ecee7af..f47e9e871ea 100644
--- a/lisp/elide-head.el
+++ b/lisp/elide-head.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/advice.el b/lisp/emacs-lisp/advice.el
index 171b68e457c..9f6a0b782ac 100644
--- a/lisp/emacs-lisp/advice.el
+++ b/lisp/emacs-lisp/advice.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; LCD Archive Entry:
;; advice|Hans Chalupsky|hans@cs.buffalo.edu|
diff --git a/lisp/emacs-lisp/assoc.el b/lisp/emacs-lisp/assoc.el
index 42ce33ad7b7..35cfba617c3 100644
--- a/lisp/emacs-lisp/assoc.el
+++ b/lisp/emacs-lisp/assoc.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/authors.el b/lisp/emacs-lisp/authors.el
index 6280af2fb72..ca28fc06783 100644
--- a/lisp/emacs-lisp/authors.el
+++ b/lisp/emacs-lisp/authors.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/autoload.el b/lisp/emacs-lisp/autoload.el
index 7dbf61c5bf3..852c33cb41b 100644
--- a/lisp/emacs-lisp/autoload.el
+++ b/lisp/emacs-lisp/autoload.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/backquote.el b/lisp/emacs-lisp/backquote.el
index 6a2baeb3fe9..7c7023fc85e 100644
--- a/lisp/emacs-lisp/backquote.el
+++ b/lisp/emacs-lisp/backquote.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/benchmark.el b/lisp/emacs-lisp/benchmark.el
index acf9806c519..6de2eef53a8 100644
--- a/lisp/emacs-lisp/benchmark.el
+++ b/lisp/emacs-lisp/benchmark.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/bindat.el b/lisp/emacs-lisp/bindat.el
index 7ed01e4bdea..5fa9835bea1 100644
--- a/lisp/emacs-lisp/bindat.el
+++ b/lisp/emacs-lisp/bindat.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el
index b8c2499c6c4..2aca0176df2 100644
--- a/lisp/emacs-lisp/byte-opt.el
+++ b/lisp/emacs-lisp/byte-opt.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el
index d3def79c8fb..b4af4b44009 100644
--- a/lisp/emacs-lisp/byte-run.el
+++ b/lisp/emacs-lisp/byte-run.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 16ade261344..05e97a7485f 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -193,7 +193,7 @@
(defgroup bytecomp nil
- "Emacs Lisp byte-compiler"
+ "Emacs Lisp byte-compiler."
:group 'lisp)
(defcustom emacs-lisp-file-regexp (if (eq system-type 'vax-vms)
@@ -1248,7 +1248,10 @@ extra args."
(defun byte-compile-nogroup-warn (form)
(let ((keyword-args (cdr (cdr (cdr (cdr form)))))
(name (cadr form)))
- (or (plist-get keyword-args :group)
+ (or (not (eq (car-safe name) 'quote))
+ (and (eq (car form) 'custom-declare-group)
+ (equal name ''emacs))
+ (plist-get keyword-args :group)
(not (and (consp name) (eq (car name) 'quote)))
(byte-compile-warn
"%s for `%s' fails to specify containing group"
diff --git a/lisp/emacs-lisp/checkdoc.el b/lisp/emacs-lisp/checkdoc.el
index 7b022e9f118..6562f04ca1d 100644
--- a/lisp/emacs-lisp/checkdoc.el
+++ b/lisp/emacs-lisp/checkdoc.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/emacs-lisp/cl-compat.el b/lisp/emacs-lisp/cl-compat.el
index baef6cb069d..9ced7879114 100644
--- a/lisp/emacs-lisp/cl-compat.el
+++ b/lisp/emacs-lisp/cl-compat.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el
index 4efa87d5937..107f8b1b223 100644
--- a/lisp/emacs-lisp/cl-extra.el
+++ b/lisp/emacs-lisp/cl-extra.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/cl-indent.el b/lisp/emacs-lisp/cl-indent.el
index a203155673c..1bcd2c72edc 100644
--- a/lisp/emacs-lisp/cl-indent.el
+++ b/lisp/emacs-lisp/cl-indent.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -49,13 +49,13 @@
;;; Code:
(defgroup lisp-indent nil
- "Indentation in Lisp"
+ "Indentation in Lisp."
:group 'lisp)
(defcustom lisp-indent-maximum-backtracking 3
"*Maximum depth to backtrack out from a sublist for structured indentation.
-If this variable is 0, no backtracking will occur and forms such as flet
+If this variable is 0, no backtracking will occur and forms such as `flet'
may not be correctly indented."
:type 'integer
:group 'lisp-indent)
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index c47c306e014..bc60bee0374 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/cl-seq.el b/lisp/emacs-lisp/cl-seq.el
index 35403df1d0b..98c9a2207ee 100644
--- a/lisp/emacs-lisp/cl-seq.el
+++ b/lisp/emacs-lisp/cl-seq.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/cl-specs.el b/lisp/emacs-lisp/cl-specs.el
index 97c7d67ac53..ac3089f2efb 100644
--- a/lisp/emacs-lisp/cl-specs.el
+++ b/lisp/emacs-lisp/cl-specs.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/cl.el b/lisp/emacs-lisp/cl.el
index e7f736cfd72..d29c18dd0ff 100644
--- a/lisp/emacs-lisp/cl.el
+++ b/lisp/emacs-lisp/cl.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/copyright.el b/lisp/emacs-lisp/copyright.el
index 0b46912c8fd..c1a0ad156ed 100644
--- a/lisp/emacs-lisp/copyright.el
+++ b/lisp/emacs-lisp/copyright.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/crm.el b/lisp/emacs-lisp/crm.el
index 572c658d0fc..8e52a42921a 100644
--- a/lisp/emacs-lisp/crm.el
+++ b/lisp/emacs-lisp/crm.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -197,9 +197,10 @@ If an element is found, bind:
respectively,
and return t."
- (let* ((minibuffer-string (buffer-string))
- (end-index (or (string-match "," minibuffer-string (1- (point)))
- (1- (point-max))))
+ (let* ((prompt-end (minibuffer-prompt-end))
+ (minibuffer-string (buffer-substring prompt-end (point-max)))
+ (end-index (or (string-match "," minibuffer-string (- (point) prompt-end))
+ (- (point-max) prompt-end)))
(target-string (substring minibuffer-string 0 end-index))
(index (or (string-match
(concat crm-separator "\\([^" crm-separator "]*\\)$")
@@ -213,9 +214,10 @@ and return t."
(progn
;;
(setq crm-beginning-of-element (match-beginning 1))
- (setq crm-end-of-element end-index)
+ (setq crm-end-of-element (+ end-index prompt-end))
;; string to the left of the current element
- (setq crm-left-of-element (substring target-string 0 (match-beginning 1)))
+ (setq crm-left-of-element
+ (substring target-string 0 (match-beginning 1)))
;; the current element
(setq crm-current-element (match-string 1 target-string))
;; string to the right of the current element
@@ -287,7 +289,7 @@ The meanings of the return values are:
(if completedp
(progn
- (erase-buffer)
+ (delete-region (minibuffer-prompt-end) (point-max))
(insert crm-left-of-element completion)
;; (if crm-complete-up-to-point
;; (insert crm-separator))
@@ -480,7 +482,7 @@ This function is modeled after `minibuffer_complete_and_exit' in src/minibuf.c"
(setq result
(catch 'crm-exit
- (if (eq (point-min) (point-max))
+ (if (eq (minibuffer-prompt-end) (point-max))
(throw 'crm-exit t))
;; TODO: this test is suspect?
@@ -506,7 +508,8 @@ This function is modeled after `minibuffer_complete_and_exit' in src/minibuf.c"
nil
(if (equal result "check")
(let ((check-strings
- (crm-strings-completed-p (buffer-string))))
+ (crm-strings-completed-p
+ (buffer-substring (minibuffer-prompt-end) (point-max)))))
;; check all of minibuffer
(if (eq check-strings t)
(throw 'exit nil)
diff --git a/lisp/emacs-lisp/cust-print.el b/lisp/emacs-lisp/cust-print.el
index b7cc52a9834..96fbe737c26 100644
--- a/lisp/emacs-lisp/cust-print.el
+++ b/lisp/emacs-lisp/cust-print.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el
index e543932d8b4..94cca83a61d 100644
--- a/lisp/emacs-lisp/debug.el
+++ b/lisp/emacs-lisp/debug.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -231,7 +231,9 @@ first will be printed into the backtrace buffer."
;; would need to be de-iconified anyway immediately
;; after when we re-enter the debugger, so iconifying it
;; here would cause flashing.
- (bury-buffer))))
+ ;; Use quit-window rather than bury-buffer to quieten
+ ;; Drew Adams. --Stef
+ (quit-window))))
(kill-buffer debugger-buffer))
(set-match-data debugger-outer-match-data)))
;; Put into effect the modified values of these variables
diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el
index 006b6f2c588..ef8e3288bbc 100644
--- a/lisp/emacs-lisp/derived.el
+++ b/lisp/emacs-lisp/derived.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/disass.el b/lisp/emacs-lisp/disass.el
index ed632b14cd4..fa368902f69 100644
--- a/lisp/emacs-lisp/disass.el
+++ b/lisp/emacs-lisp/disass.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el
index 6ee87919d38..4c232b2882c 100644
--- a/lisp/emacs-lisp/easy-mmode.el
+++ b/lisp/emacs-lisp/easy-mmode.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/easymenu.el b/lisp/emacs-lisp/easymenu.el
index 982570fb348..a1a1f470c58 100644
--- a/lisp/emacs-lisp/easymenu.el
+++ b/lisp/emacs-lisp/easymenu.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el
index ebe375088a3..fe0453519df 100644
--- a/lisp/emacs-lisp/edebug.el
+++ b/lisp/emacs-lisp/edebug.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -61,7 +61,7 @@
;;; Options
(defgroup edebug nil
- "A source-level debugger for Emacs Lisp"
+ "A source-level debugger for Emacs Lisp."
:group 'lisp)
@@ -519,7 +519,7 @@ the minibuffer."
(put ',(nth 1 form) 'saved-face
',(get (nth 1 form) 'saved-face))
(put ',(nth 1 form) 'customized-face
- ',(nth 2 form)))
+ ,(nth 2 form)))
(put (nth 1 form) 'saved-face nil)))))
(setq edebug-result (eval form))
(if (not edebugging)
@@ -4224,7 +4224,7 @@ reinstrument it."
(- (current-column)
(if (= ?\( (following-char)) 0 1)))))
(insert (make-string
- (max 0 (- col (- (point) start-of-count-line))) ?\ )
+ (max 0 (- col (- (point) start-of-count-line))) ?\s)
(if (and (< 0 count)
(not (memq coverage
'(unknown ok-coverage))))
diff --git a/lisp/emacs-lisp/eldoc.el b/lisp/emacs-lisp/eldoc.el
index bf6b601ef7a..1492e29e3c6 100644
--- a/lisp/emacs-lisp/eldoc.el
+++ b/lisp/emacs-lisp/eldoc.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/elint.el b/lisp/emacs-lisp/elint.el
index 806fa8e6854..51e2ed98713 100644
--- a/lisp/emacs-lisp/elint.el
+++ b/lisp/emacs-lisp/elint.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/elp.el b/lisp/emacs-lisp/elp.el
index 82ce6f404f7..dbda66a2615 100644
--- a/lisp/emacs-lisp/elp.el
+++ b/lisp/emacs-lisp/elp.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -130,7 +130,7 @@
;; vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
(defgroup elp nil
- "Emacs Lisp Profiler"
+ "Emacs Lisp Profiler."
:group 'lisp)
(defcustom elp-function-list nil
diff --git a/lisp/emacs-lisp/ewoc.el b/lisp/emacs-lisp/ewoc.el
index 9f91dbab0e9..1984423d9dd 100644
--- a/lisp/emacs-lisp/ewoc.el
+++ b/lisp/emacs-lisp/ewoc.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/find-func.el b/lisp/emacs-lisp/find-func.el
index 9a0a1606953..4c25acf49c3 100644
--- a/lisp/emacs-lisp/find-func.el
+++ b/lisp/emacs-lisp/find-func.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/emacs-lisp/find-gc.el b/lisp/emacs-lisp/find-gc.el
index 1c127295216..1606395c673 100644
--- a/lisp/emacs-lisp/find-gc.el
+++ b/lisp/emacs-lisp/find-gc.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/float-sup.el b/lisp/emacs-lisp/float-sup.el
index ce5d6124ad7..b07b6f837fb 100644
--- a/lisp/emacs-lisp/float-sup.el
+++ b/lisp/emacs-lisp/float-sup.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/generic.el b/lisp/emacs-lisp/generic.el
index e41de879846..f40b5eeb574 100644
--- a/lisp/emacs-lisp/generic.el
+++ b/lisp/emacs-lisp/generic.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/gulp.el b/lisp/emacs-lisp/gulp.el
index 589be6fb771..43311b6ff5d 100644
--- a/lisp/emacs-lisp/gulp.el
+++ b/lisp/emacs-lisp/gulp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/helper.el b/lisp/emacs-lisp/helper.el
index 9d22735e1d0..eac18a5dca1 100644
--- a/lisp/emacs-lisp/helper.el
+++ b/lisp/emacs-lisp/helper.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/levents.el b/lisp/emacs-lisp/levents.el
index cd3fe2764c2..87a6725f171 100644
--- a/lisp/emacs-lisp/levents.el
+++ b/lisp/emacs-lisp/levents.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/lisp-mnt.el b/lisp/emacs-lisp/lisp-mnt.el
index a385a32935e..d6c7c8c3458 100644
--- a/lisp/emacs-lisp/lisp-mnt.el
+++ b/lisp/emacs-lisp/lisp-mnt.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index 972fe6bafc8..8469aec1362 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -172,6 +172,10 @@
(setq paragraph-ignore-fill-prefix t)
(make-local-variable 'fill-paragraph-function)
(setq fill-paragraph-function 'lisp-fill-paragraph)
+ ;; Adaptive fill mode gets the fill wrong for a one-line paragraph made of
+ ;; a single docstring. Let's fix it here.
+ (set (make-local-variable 'adaptive-fill-function)
+ (lambda () (if (looking-at "\\s-+\"[^\n\"]+\"\\s-*$") "")))
;; Adaptive fill mode gets in the way of auto-fill,
;; and should make no difference for explicit fill
;; because lisp-fill-paragraph should do the job.
@@ -631,10 +635,10 @@ Reinitialize the face according to the `defface' specification."
;; Resetting `saved-face' temporarily to nil is needed to let
;; `defface' change the spec, regardless of a saved spec.
(prog1 `(prog1 ,form
- (put ',(eval (nth 1 form)) 'saved-face
+ (put ,(nth 1 form) 'saved-face
',(get (eval (nth 1 form)) 'saved-face))
- (put ',(eval (nth 1 form)) 'customized-face
- ',(eval (nth 2 form))))
+ (put ,(nth 1 form) 'customized-face
+ ,(nth 2 form)))
(put (eval (nth 1 form)) 'saved-face nil)))
((eq (car form) 'progn)
(cons 'progn (mapcar 'eval-defun-1 (cdr form))))
diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el
index a14c4815374..a20b79335cb 100644
--- a/lisp/emacs-lisp/lisp.el
+++ b/lisp/emacs-lisp/lisp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/lmenu.el b/lisp/emacs-lisp/lmenu.el
index ab29ed972fc..c047e0b91e7 100644
--- a/lisp/emacs-lisp/lmenu.el
+++ b/lisp/emacs-lisp/lmenu.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/lselect.el b/lisp/emacs-lisp/lselect.el
index 42dad0c48d8..f1d0244f0ea 100644
--- a/lisp/emacs-lisp/lselect.el
+++ b/lisp/emacs-lisp/lselect.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/lucid.el b/lisp/emacs-lisp/lucid.el
index 5d02091a981..3374a4d7d73 100644
--- a/lisp/emacs-lisp/lucid.el
+++ b/lisp/emacs-lisp/lucid.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/macroexp.el b/lisp/emacs-lisp/macroexp.el
index b5a279bbbf4..02ad05639a3 100644
--- a/lisp/emacs-lisp/macroexp.el
+++ b/lisp/emacs-lisp/macroexp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -45,15 +45,17 @@
;; structure of the result with the input. Doing so recursively using
;; `maybe-cons' results in excessively deep recursion for very long
;; input forms.
-(defmacro macroexp-accumulate (#1=#:\(var\ list\) &rest body)
+(defmacro macroexp-accumulate (var+list &rest body)
"Return a list of the results of evaluating BODY for each element of LIST.
Evaluate BODY with VAR bound to each `car' from LIST, in turn.
Return a list of the values of the final form in BODY.
The list structure of the result will share as much with LIST as
possible (for instance, when BODY just returns VAR unchanged, the
-result will be eq to LIST)."
- (let ((var (car #1#))
- (list (cadr #1#))
+result will be eq to LIST).
+
+\(fn (VAR LIST) BODY...)"
+ (let ((var (car var+list))
+ (list (cadr var+list))
(shared (make-symbol "shared"))
(unshared (make-symbol "unshared"))
(tail (make-symbol "tail"))
diff --git a/lisp/emacs-lisp/map-ynp.el b/lisp/emacs-lisp/map-ynp.el
index 2eb53a86038..6447f7e438c 100644
--- a/lisp/emacs-lisp/map-ynp.el
+++ b/lisp/emacs-lisp/map-ynp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/pp.el b/lisp/emacs-lisp/pp.el
index d9f3df99bae..7bbd56d8af5 100644
--- a/lisp/emacs-lisp/pp.el
+++ b/lisp/emacs-lisp/pp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/re-builder.el b/lisp/emacs-lisp/re-builder.el
index 8a53c202ed8..67a682358f4 100644
--- a/lisp/emacs-lisp/re-builder.el
+++ b/lisp/emacs-lisp/re-builder.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/regexp-opt.el b/lisp/emacs-lisp/regexp-opt.el
index a5293f2684c..0188672717c 100644
--- a/lisp/emacs-lisp/regexp-opt.el
+++ b/lisp/emacs-lisp/regexp-opt.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/regi.el b/lisp/emacs-lisp/regi.el
index ae9151585fe..7f9d313542d 100644
--- a/lisp/emacs-lisp/regi.el
+++ b/lisp/emacs-lisp/regi.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/ring.el b/lisp/emacs-lisp/ring.el
index 6e0f9cd70b4..24b90650f0a 100644
--- a/lisp/emacs-lisp/ring.el
+++ b/lisp/emacs-lisp/ring.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/rx.el b/lisp/emacs-lisp/rx.el
index 49196f17ef0..c3147815fc9 100644
--- a/lisp/emacs-lisp/rx.el
+++ b/lisp/emacs-lisp/rx.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/shadow.el b/lisp/emacs-lisp/shadow.el
index eeaaa7ffc0a..b36ce4a332e 100644
--- a/lisp/emacs-lisp/shadow.el
+++ b/lisp/emacs-lisp/shadow.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/sregex.el b/lisp/emacs-lisp/sregex.el
index 3f7aaa16bce..84cb9785f6f 100644
--- a/lisp/emacs-lisp/sregex.el
+++ b/lisp/emacs-lisp/sregex.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/syntax.el b/lisp/emacs-lisp/syntax.el
index 793306adda5..bb5e782b001 100644
--- a/lisp/emacs-lisp/syntax.el
+++ b/lisp/emacs-lisp/syntax.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/tcover-ses.el b/lisp/emacs-lisp/tcover-ses.el
index 48ec9fa64da..4c2ee1ee33c 100644
--- a/lisp/emacs-lisp/tcover-ses.el
+++ b/lisp/emacs-lisp/tcover-ses.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(require 'testcover)
diff --git a/lisp/emacs-lisp/tcover-unsafep.el b/lisp/emacs-lisp/tcover-unsafep.el
index 4359209b4d4..9544bc396b4 100644
--- a/lisp/emacs-lisp/tcover-unsafep.el
+++ b/lisp/emacs-lisp/tcover-unsafep.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(require 'testcover)
diff --git a/lisp/emacs-lisp/testcover.el b/lisp/emacs-lisp/testcover.el
index 6b87d06cb0e..a5e761d9cba 100644
--- a/lisp/emacs-lisp/testcover.el
+++ b/lisp/emacs-lisp/testcover.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -73,7 +73,7 @@
;;;==========================================================================
(defgroup testcover nil
- "Code-coverage tester"
+ "Code-coverage tester."
:group 'lisp
:prefix "testcover-"
:version "21.1")
diff --git a/lisp/emacs-lisp/timer.el b/lisp/emacs-lisp/timer.el
index 79aad8bd121..e207766701c 100644
--- a/lisp/emacs-lisp/timer.el
+++ b/lisp/emacs-lisp/timer.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -408,12 +408,11 @@ This function returns a timer object which you can use in `cancel-timer'."
(defmacro with-timeout (list &rest body)
"Run BODY, but if it doesn't finish in SECONDS seconds, give up.
If we give up, we run the TIMEOUT-FORMS and return the value of the last one.
-The call should look like:
- (with-timeout (SECONDS TIMEOUT-FORMS...) BODY...)
The timeout is checked whenever Emacs waits for some kind of external
-event \(such as keyboard input, input from subprocesses, or a certain time);
+event (such as keyboard input, input from subprocesses, or a certain time);
if the program loops without waiting in any way, the timeout will not
-be detected."
+be detected.
+\n(fn (SECONDS TIMEOUT-FORMS...) BODY)"
(let ((seconds (car list))
(timeout-forms (cdr list)))
`(let ((with-timeout-tag (cons nil nil))
diff --git a/lisp/emacs-lisp/tq.el b/lisp/emacs-lisp/tq.el
index f7db20859d5..d94b4925c4d 100644
--- a/lisp/emacs-lisp/tq.el
+++ b/lisp/emacs-lisp/tq.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/trace.el b/lisp/emacs-lisp/trace.el
index e3d3e9e645e..8cd5d0fa317 100644
--- a/lisp/emacs-lisp/trace.el
+++ b/lisp/emacs-lisp/trace.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; LCD Archive Entry:
;; trace|Hans Chalupsky|hans@cs.buffalo.edu|
@@ -156,7 +156,7 @@
(require 'advice)
(defgroup trace nil
- "Tracing facility for Emacs Lisp functions"
+ "Tracing facility for Emacs Lisp functions."
:prefix "trace-"
:group 'lisp)
diff --git a/lisp/emacs-lisp/unsafep.el b/lisp/emacs-lisp/unsafep.el
index 197728d2327..c59b44cddb2 100644
--- a/lisp/emacs-lisp/unsafep.el
+++ b/lisp/emacs-lisp/unsafep.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lisp/warnings.el b/lisp/emacs-lisp/warnings.el
index e6c3447331e..1f573673495 100644
--- a/lisp/emacs-lisp/warnings.el
+++ b/lisp/emacs-lisp/warnings.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emacs-lock.el b/lisp/emacs-lock.el
index 26ed4ffa39e..479cc4f2ede 100644
--- a/lisp/emacs-lock.el
+++ b/lisp/emacs-lock.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/crisp.el b/lisp/emulation/crisp.el
index 97706fdfab0..4091fd5f01d 100644
--- a/lisp/emulation/crisp.el
+++ b/lisp/emulation/crisp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/cua-base.el b/lisp/emulation/cua-base.el
index c6d479b173f..008a3c3ba49 100644
--- a/lisp/emulation/cua-base.el
+++ b/lisp/emulation/cua-base.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -350,7 +350,7 @@ Must be set prior to enabling CUA."
(defcustom cua-check-pending-input t
"*If non-nil, don't override prefix key if input pending.
-It is rumoured that input-pending-p is unreliable under some window
+It is rumoured that `input-pending-p' is unreliable under some window
managers, so try setting this to nil, if prefix override doesn't work."
:type 'boolean
:group 'cua)
@@ -370,7 +370,7 @@ buffer is NOT modified, until you execute a command that actually modifies it.
"*If non-nil, automatically tabify after rectangle commands.
This basically means that `tabify' is applied to all lines that
are modified by inserting or deleting a rectangle. If value is
-an integer, cua will look for existing tabs in a region around
+an integer, CUA will look for existing tabs in a region around
the rectangle, and only do the conversion if any tabs are already
present. The number specifies then number of characters before
and after the region marked by the rectangle to search."
@@ -568,7 +568,7 @@ a cons (TYPE . COLOR), then both properties are affected."
;;; Low-level Interface
(defvar cua-inhibit-cua-keys nil
- "Buffer-local variable that may disable the cua keymappings.")
+ "Buffer-local variable that may disable the CUA keymappings.")
(make-variable-buffer-local 'cua-inhibit-cua-keys)
;;; Aux. variables
@@ -902,8 +902,8 @@ Activates the mark if a prefix argument is given."
(defun cua-repeat-replace-region (arg)
"Repeat replacing text of highlighted region with typed text.
-Searches for the next streach of text identical to the region last
-replaced by typing text over it and replaces it with the same streach
+Searches for the next stretch of text identical to the region last
+replaced by typing text over it and replaces it with the same stretch
of text."
(interactive "P")
(when cua--last-deleted-region-pos
@@ -1331,7 +1331,7 @@ If ARG is the atom `-', scroll upward by nearly full screen."
When enabled, using shifted movement keys will activate the region (and
highlight the region using `transient-mark-mode'), and typed text replaces
the active selection. C-z, C-x, C-c, and C-v will undo, cut, copy, and
-paste (in addition to the normal emacs bindings)."
+paste (in addition to the normal Emacs bindings)."
:global t
:group 'cua
:set-after '(cua-enable-modeline-indications cua-use-hyper-key)
@@ -1394,7 +1394,7 @@ paste (in addition to the normal emacs bindings)."
(setq cua--saved-state nil))))
(defun cua-debug ()
- "Toggle cua debugging."
+ "Toggle CUA debugging."
(interactive)
(setq cua--debug (not cua--debug)))
diff --git a/lisp/emulation/cua-gmrk.el b/lisp/emulation/cua-gmrk.el
index b8874df0f34..6ebbb6fc008 100644
--- a/lisp/emulation/cua-gmrk.el
+++ b/lisp/emulation/cua-gmrk.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -96,7 +96,7 @@ When the global marker is set, CUA cut and copy commands will automatically
insert the deleted or copied text before the global marker, even when the
global marker is in another buffer.
If the global marker isn't set, set the global marker at point in the current
-buffer. Otherwise jump to the global marker position and cancel it.
+buffer. Otherwise jump to the global marker position and cancel it.
With prefix argument, don't jump to global mark when cancelling it."
(interactive "P")
(unless cua--global-mark-initialized
@@ -105,7 +105,7 @@ With prefix argument, don't jump to global mark when cancelling it."
(if (not buffer-read-only)
(cua--activate-global-mark t)
(ding)
- (message "Cannot set global mark in read-only buffer."))
+ (message "Cannot set global mark in read-only buffer"))
(when (not stay)
(pop-to-buffer (marker-buffer cua--global-mark-marker))
(goto-char cua--global-mark-marker))
@@ -165,7 +165,7 @@ With prefix argument, don't jump to global mark when cancelling it."
(if (equal (marker-buffer cua--global-mark-marker) src-buf)
(if (and (< start (marker-position cua--global-mark-marker))
(< (marker-position cua--global-mark-marker) end))
- (message "Can't move region into itself.")
+ (message "Can't move region into itself")
(let ((text (buffer-substring-no-properties start end))
(p1 (copy-marker start))
(p2 (copy-marker end)))
@@ -222,7 +222,7 @@ With prefix argument, don't jump to global mark when cancelling it."
(setq in-rect t olist nil)
(setq olist (cdr olist))))
(if in-rect
- (message "Can't move rectangle into itself.")
+ (message "Can't move rectangle into itself")
(let ((text (cua--extract-rectangle)))
(cua--delete-rectangle)
(goto-char (marker-position cua--global-mark-marker))
diff --git a/lisp/emulation/cua-rect.el b/lisp/emulation/cua-rect.el
index 72fd9195850..011a0fb8a3f 100644
--- a/lisp/emulation/cua-rect.el
+++ b/lisp/emulation/cua-rect.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Acknowledgements
@@ -992,7 +992,7 @@ With prefix argument, the toggle restriction."
(defun cua-do-rectangle-padding ()
(interactive)
(if buffer-read-only
- (message "Cannot do padding in read-only buffer.")
+ (message "Cannot do padding in read-only buffer")
(cua--rectangle-operation nil nil t t t)
(cua--rectangle-set-corners))
(cua--keep-active))
@@ -1098,14 +1098,14 @@ The length of STRING need not be the same as the rectangle width."
'(lambda (l r)
(cua--rectangle-right (max l (+ l (length string) -1)))))))
-(defun cua-fill-char-rectangle (ch)
+(defun cua-fill-char-rectangle (character)
"Replace CUA rectangle contents with CHARACTER."
(interactive "cFill rectangle with character: ")
(cua--rectangle-operation 'clear nil t 1 nil
'(lambda (s e l r)
(delete-region s e)
(move-to-column l t)
- (insert-char ch (- r l)))))
+ (insert-char character (- r l)))))
(defun cua-replace-in-rectangle (regexp newtext)
"Replace REGEXP with NEWTEXT in each line of CUA rectangle."
@@ -1137,9 +1137,9 @@ The length of STRING need not be the same as the rectangle width."
(t nil)))))
(defvar cua--rectangle-seq-format "%d"
- "Last format used by cua-sequence-rectangle.")
+ "Last format used by `cua-sequence-rectangle'.")
-(defun cua-sequence-rectangle (first incr fmt)
+(defun cua-sequence-rectangle (first incr format)
"Resequence each line of CUA rectangle starting from FIRST.
The numbers are formatted according to the FORMAT string."
(interactive
@@ -1150,13 +1150,13 @@ The numbers are formatted according to the FORMAT string."
(string-to-number
(read-string "Increment: (1) " nil nil "1"))
(read-string (concat "Format: (" cua--rectangle-seq-format ") "))))
- (if (= (length fmt) 0)
- (setq fmt cua--rectangle-seq-format)
- (setq cua--rectangle-seq-format fmt))
+ (if (= (length format) 0)
+ (setq format cua--rectangle-seq-format)
+ (setq cua--rectangle-seq-format format))
(cua--rectangle-operation 'clear nil t 1 nil
'(lambda (s e l r)
(delete-region s e)
- (insert (format fmt first))
+ (insert (format format first))
(setq first (+ first incr)))))
(defmacro cua--convert-rectangle-as (command tabify)
diff --git a/lisp/emulation/edt-lk201.el b/lisp/emulation/edt-lk201.el
index e63fd84cbe7..a56c4656c07 100644
--- a/lisp/emulation/edt-lk201.el
+++ b/lisp/emulation/edt-lk201.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/edt-mapper.el b/lisp/emulation/edt-mapper.el
index e4943ff4a0a..eeb34b9c7bb 100644
--- a/lisp/emulation/edt-mapper.el
+++ b/lisp/emulation/edt-mapper.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -113,7 +113,6 @@
(sit-for 600)
(kill-emacs t)))
-
;;;
;;; Decide Emacs Variant, GNU Emacs or XEmacs (aka Lucid Emacs).
;;; Determine Window System, and X Server Vendor (if appropriate).
@@ -146,6 +145,11 @@
(defvar edt-return-seq nil)
(defvar edt-term nil)
+;; To silence the byte-compiler
+(eval-when-compile
+ (defvar EDT-key-name)
+ (defvar edt-save-function-key-map))
+
;;;
;;; Determine Terminal Type (if appropriate).
;;;
diff --git a/lisp/emulation/edt-pc.el b/lisp/emulation/edt-pc.el
index 509f4f498ce..41d0b772967 100644
--- a/lisp/emulation/edt-pc.el
+++ b/lisp/emulation/edt-pc.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/edt-vt100.el b/lisp/emulation/edt-vt100.el
index 0ad749ec13f..7104c53a77f 100644
--- a/lisp/emulation/edt-vt100.el
+++ b/lisp/emulation/edt-vt100.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/edt.el b/lisp/emulation/edt.el
index 01f0af6f307..8eecf5fca58 100644
--- a/lisp/emulation/edt.el
+++ b/lisp/emulation/edt.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
@@ -175,6 +175,20 @@
:prefix "edt-"
:group 'emulations)
+;; To silence the byte-compiler
+(eval-when-compile
+ (defvar *EDT-keys*)
+ (defvar edt-default-global-map)
+ (defvar edt-last-copied-word)
+ (defvar edt-learn-macro-count)
+ (defvar edt-orig-page-delimiter)
+ (defvar edt-orig-transient-mark-mode)
+ (defvar edt-rect-start-point)
+ (defvar edt-user-global-map)
+ (defvar rect-start-point)
+ (defvar time-string)
+ (defvar zmacs-region-stays))
+
;;;
;;; Version Information
;;;
@@ -332,6 +346,11 @@ This means that an edt-user.el file was found in the user's `load-path'.")
(defvar edt-keys-file nil
"User's custom keypad and function keys mappings to emulate LK-201 keyboard.")
+
+(defvar edt-last-copied-word nil
+ "Last word that the user copied.")
+
+(defvar zmacs-region-stays)
;;;;
;;;; EDT Emulation Commands
@@ -1621,9 +1640,8 @@ Argument NUM is the percentage into the buffer to move."
(defun edt-mark-section-wisely ()
"Mark the section in a manner consistent with the `major-mode'.
-Uses `mark-defun' for emacs-lisp and Lisp,
-mark-c-function for C,
-mark-fortran-subsystem for fortran,
+Uses `mark-defun' for Emacs-Lisp and Lisp, and for Fortran,
+`c-mark-function' for C,
and `mark-paragraph' for other modes."
(interactive)
(if edt-select-mode
@@ -1631,15 +1649,13 @@ and `mark-paragraph' for other modes."
(edt-reset))
(progn
(cond ((or (eq major-mode 'emacs-lisp-mode)
+ (eq major-mode 'fortran-mode)
(eq major-mode 'lisp-mode))
(mark-defun)
(message "Lisp defun selected"))
((eq major-mode 'c-mode)
- (mark-c-function)
+ (c-mark-function)
(message "C function selected"))
- ((eq major-mode 'fortran-mode)
- (mark-fortran-subprogram)
- (message "Fortran subprogram selected"))
(t (mark-paragraph)
(message "Paragraph selected"))))))
@@ -1766,8 +1782,7 @@ Argument NUM is the number of times to duplicate the line."
"Display the current time."
(interactive)
(if edt-x-emacs19-p (setq zmacs-region-stays t))
- (set 'time-string (current-time-string))
- (message "%s" time-string))
+ (message "%s" (current-time-string)))
;;;
;;; LEARN
diff --git a/lisp/emulation/keypad.el b/lisp/emulation/keypad.el
index e5209966bf9..7479b5ade05 100644
--- a/lisp/emulation/keypad.el
+++ b/lisp/emulation/keypad.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/pc-mode.el b/lisp/emulation/pc-mode.el
index 8b4d0d79f28..3bcb60ec0bb 100644
--- a/lisp/emulation/pc-mode.el
+++ b/lisp/emulation/pc-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/pc-select.el b/lisp/emulation/pc-select.el
index 5231abb588a..3a85a430153 100644
--- a/lisp/emulation/pc-select.el
+++ b/lisp/emulation/pc-select.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/tpu-edt.el b/lisp/emulation/tpu-edt.el
index ec0eef05321..3c18e2f608f 100644
--- a/lisp/emulation/tpu-edt.el
+++ b/lisp/emulation/tpu-edt.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; TPU-edt is based on tpu.el by Jeff Kowalski and Bob Covey.
@@ -265,8 +265,16 @@
;; than the emulated TPU commands. Also, it works only in the forward
;; direction, regardless of the current TPU-edt direction.
+;;; Todo/Bugs:
+
+;; We shouldn't use vt100 ESC sequences since it is uselessly fighting
+;; against function-key-map. Better use real key names.
+
;;; Code:
+;; we use picture-mode functions
+(require 'picture)
+
(defgroup tpu nil
"Emacs emulating TPU emulating EDT."
:prefix "tpu-"
@@ -307,44 +315,279 @@
;;; Emacs version identifiers - currently referenced by
;;;
;;; o tpu-mark o tpu-set-mark
-;;; o tpu-string-prompt o tpu-regexp-prompt
-;;; o tpu-edt-on o tpu-load-xkeys
-;;; o tpu-update-mode-line o mode line section
+;;; o mode line section o tpu-load-xkeys
;;;
-(defconst tpu-emacs19-p (not (string-lessp emacs-version "19"))
- "Non-nil if we are running Lucid Emacs or version 19.")
-
-(defconst tpu-lucid-emacs19-p
- (and tpu-emacs19-p (string-match "Lucid" emacs-version))
- "Non-nil if we are running Lucid Emacs version 19.")
-
+(defconst tpu-lucid-emacs-p
+ (string-match "Lucid" emacs-version)
+ "Non-nil if we are running Lucid Emacs.")
;;;
;;; Global Keymaps
;;;
-(defvar CSI-map (make-sparse-keymap)
+(defvar CSI-map
+ (let ((map (make-sparse-keymap)))
+ (define-key map "A" 'tpu-previous-line) ; up
+ (define-key map "B" 'tpu-next-line) ; down
+ (define-key map "D" 'tpu-backward-char) ; left
+ (define-key map "C" 'tpu-forward-char) ; right
+
+ (define-key map "1~" 'tpu-search) ; Find
+ (define-key map "2~" 'tpu-paste) ; Insert Here
+ (define-key map "3~" 'tpu-cut) ; Remove
+ (define-key map "4~" 'tpu-select) ; Select
+ (define-key map "5~" 'tpu-scroll-window-down) ; Prev Screen
+ (define-key map "6~" 'tpu-scroll-window-up) ; Next Screen
+
+ (define-key map "11~" 'nil) ; F1
+ (define-key map "12~" 'nil) ; F2
+ (define-key map "13~" 'nil) ; F3
+ (define-key map "14~" 'nil) ; F4
+ (define-key map "15~" 'nil) ; F5
+ (define-key map "17~" 'nil) ; F6
+ (define-key map "18~" 'nil) ; F7
+ (define-key map "19~" 'nil) ; F8
+ (define-key map "20~" 'nil) ; F9
+ (define-key map "21~" 'tpu-exit) ; F10
+ (define-key map "23~" 'tpu-insert-escape) ; F11 (ESC)
+ (define-key map "24~" 'tpu-next-beginning-of-line) ; F12 (BS)
+ (define-key map "25~" 'tpu-delete-previous-word) ; F13 (LF)
+ (define-key map "26~" 'tpu-toggle-overwrite-mode) ; F14
+ (define-key map "28~" 'tpu-help) ; HELP
+ (define-key map "29~" 'execute-extended-command) ; DO
+ (define-key map "31~" 'tpu-goto-breadcrumb) ; F17
+ (define-key map "32~" 'nil) ; F18
+ (define-key map "33~" 'nil) ; F19
+ (define-key map "34~" 'nil) ; F20
+ map)
"Maps the CSI function keys on the VT100 keyboard.
CSI is DEC's name for the sequence <ESC>[.")
-(defvar SS3-map (make-sparse-keymap)
- "Maps the SS3 function keys on the VT100 keyboard.
-SS3 is DEC's name for the sequence <ESC>O.")
+(defvar GOLD-CSI-map
+ (let ((map (make-sparse-keymap)))
+ (define-key map "A" 'tpu-move-to-beginning) ; up-arrow
+ (define-key map "B" 'tpu-move-to-end) ; down-arrow
+ (define-key map "C" 'end-of-line) ; right-arrow
+ (define-key map "D" 'beginning-of-line) ; left-arrow
+
+ (define-key map "1~" 'nil) ; Find
+ (define-key map "2~" 'nil) ; Insert Here
+ (define-key map "3~" 'tpu-store-text) ; Remove
+ (define-key map "4~" 'tpu-unselect) ; Select
+ (define-key map "5~" 'tpu-previous-window) ; Prev Screen
+ (define-key map "6~" 'tpu-next-window) ; Next Screen
+
+ (define-key map "11~" 'nil) ; F1
+ (define-key map "12~" 'nil) ; F2
+ (define-key map "13~" 'nil) ; F3
+ (define-key map "14~" 'nil) ; F4
+ (define-key map "16~" 'nil) ; F5
+ (define-key map "17~" 'nil) ; F6
+ (define-key map "18~" 'nil) ; F7
+ (define-key map "19~" 'nil) ; F8
+ (define-key map "20~" 'nil) ; F9
+ (define-key map "21~" 'nil) ; F10
+ (define-key map "23~" 'nil) ; F11
+ (define-key map "24~" 'nil) ; F12
+ (define-key map "25~" 'nil) ; F13
+ (define-key map "26~" 'nil) ; F14
+ (define-key map "28~" 'describe-bindings) ; HELP
+ (define-key map "29~" 'nil) ; DO
+ (define-key map "31~" 'tpu-drop-breadcrumb) ; F17
+ (define-key map "32~" 'nil) ; F18
+ (define-key map "33~" 'nil) ; F19
+ (define-key map "34~" 'nil) ; F20
+ map)
+ "Maps the function keys on the VT100 keyboard preceded by GOLD-CSI.")
+
+(defvar GOLD-SS3-map
+ (let ((map (make-sparse-keymap)))
+ (define-key map "A" 'tpu-move-to-beginning) ; up-arrow
+ (define-key map "B" 'tpu-move-to-end) ; down-arrow
+ (define-key map "C" 'end-of-line) ; right-arrow
+ (define-key map "D" 'beginning-of-line) ; left-arrow
+
+ (define-key map "P" 'keyboard-quit) ; PF1
+ (define-key map "Q" 'help-for-help) ; PF2
+ (define-key map "R" 'tpu-search) ; PF3
+ (define-key map "S" 'tpu-undelete-lines) ; PF4
+ (define-key map "p" 'open-line) ; KP0
+ (define-key map "q" 'tpu-change-case) ; KP1
+ (define-key map "r" 'tpu-delete-to-eol) ; KP2
+ (define-key map "s" 'tpu-special-insert) ; KP3
+ (define-key map "t" 'tpu-move-to-end) ; KP4
+ (define-key map "u" 'tpu-move-to-beginning) ; KP5
+ (define-key map "v" 'tpu-paste) ; KP6
+ (define-key map "w" 'execute-extended-command) ; KP7
+ (define-key map "x" 'tpu-fill) ; KP8
+ (define-key map "y" 'tpu-replace) ; KP9
+ (define-key map "m" 'tpu-undelete-words) ; KP-
+ (define-key map "l" 'tpu-undelete-char) ; KP,
+ (define-key map "n" 'tpu-unselect) ; KP.
+ (define-key map "M" 'tpu-substitute) ; KPenter
+ map)
+ "Maps the function keys on the VT100 keyboard preceded by GOLD-SS3.")
-(defvar GOLD-map (make-keymap)
+(defvar GOLD-map
+ (let ((map (make-keymap)))
+ (define-key map "\e[" GOLD-CSI-map) ; GOLD-CSI map
+ (define-key map "\eO" GOLD-SS3-map) ; GOLD-SS3 map
+ ;;
+ (define-key map "\C-A" 'tpu-toggle-overwrite-mode) ; ^A
+ (define-key map "\C-B" 'nil) ; ^B
+ (define-key map "\C-C" 'nil) ; ^C
+ (define-key map "\C-D" 'nil) ; ^D
+ (define-key map "\C-E" 'nil) ; ^E
+ (define-key map "\C-F" 'set-visited-file-name) ; ^F
+ (define-key map "\C-g" 'keyboard-quit) ; safety first
+ (define-key map "\C-h" 'delete-other-windows) ; BS
+ (define-key map "\C-i" 'other-window) ; TAB
+ (define-key map "\C-J" 'nil) ; ^J
+ (define-key map "\C-K" 'tpu-define-macro-key) ; ^K
+ (define-key map "\C-l" 'downcase-region) ; ^L
+ (define-key map "\C-M" 'nil) ; ^M
+ (define-key map "\C-N" 'nil) ; ^N
+ (define-key map "\C-O" 'nil) ; ^O
+ (define-key map "\C-P" 'nil) ; ^P
+ (define-key map "\C-Q" 'nil) ; ^Q
+ (define-key map "\C-R" 'nil) ; ^R
+ (define-key map "\C-S" 'nil) ; ^S
+ (define-key map "\C-T" 'tpu-toggle-control-keys) ; ^T
+ (define-key map "\C-u" 'upcase-region) ; ^U
+ (define-key map "\C-V" 'nil) ; ^V
+ (define-key map "\C-w" 'tpu-write-current-buffers) ; ^W
+ (define-key map "\C-X" 'nil) ; ^X
+ (define-key map "\C-Y" 'nil) ; ^Y
+ (define-key map "\C-Z" 'nil) ; ^Z
+ (define-key map " " 'undo) ; SPC
+ (define-key map "!" 'nil) ; !
+ (define-key map "#" 'nil) ; #
+ (define-key map "$" 'tpu-add-at-eol) ; $
+ (define-key map "%" 'tpu-goto-percent) ; %
+ (define-key map "&" 'nil) ; &
+ (define-key map "(" 'nil) ; (
+ (define-key map ")" 'nil) ; )
+ (define-key map "*" 'tpu-toggle-regexp) ; *
+ (define-key map "+" 'nil) ; +
+ (define-key map "," 'tpu-goto-breadcrumb) ; ,
+ (define-key map "-" 'negative-argument) ; -
+ (define-key map "." 'tpu-drop-breadcrumb) ; .
+ (define-key map "/" 'tpu-emacs-replace) ; /
+ (define-key map "0" 'digit-argument) ; 0
+ (define-key map "1" 'digit-argument) ; 1
+ (define-key map "2" 'digit-argument) ; 2
+ (define-key map "3" 'digit-argument) ; 3
+ (define-key map "4" 'digit-argument) ; 4
+ (define-key map "5" 'digit-argument) ; 5
+ (define-key map "6" 'digit-argument) ; 6
+ (define-key map "7" 'digit-argument) ; 7
+ (define-key map "8" 'digit-argument) ; 8
+ (define-key map "9" 'digit-argument) ; 9
+ (define-key map ":" 'nil) ; :
+ (define-key map ";" 'tpu-trim-line-ends) ; ;
+ (define-key map "<" 'nil) ; <
+ (define-key map "=" 'nil) ; =
+ (define-key map ">" 'nil) ; >
+ (define-key map "?" 'tpu-spell-check) ; ?
+ (define-key map "A" 'tpu-toggle-newline-and-indent) ; A
+ (define-key map "B" 'tpu-next-buffer) ; B
+ (define-key map "C" 'repeat-complex-command) ; C
+ (define-key map "D" 'shell-command) ; D
+ (define-key map "E" 'tpu-exit) ; E
+ (define-key map "F" 'tpu-set-cursor-free) ; F
+ (define-key map "G" 'tpu-get) ; G
+ (define-key map "H" 'nil) ; H
+ (define-key map "I" 'tpu-include) ; I
+ (define-key map "K" 'tpu-kill-buffer) ; K
+ (define-key map "L" 'tpu-what-line) ; L
+ (define-key map "M" 'buffer-menu) ; M
+ (define-key map "N" 'tpu-next-file-buffer) ; N
+ (define-key map "O" 'occur) ; O
+ (define-key map "P" 'lpr-buffer) ; P
+ (define-key map "Q" 'tpu-quit) ; Q
+ (define-key map "R" 'tpu-toggle-rectangle) ; R
+ (define-key map "S" 'replace) ; S
+ (define-key map "T" 'tpu-line-to-top-of-window) ; T
+ (define-key map "U" 'undo) ; U
+ (define-key map "V" 'tpu-version) ; V
+ (define-key map "W" 'save-buffer) ; W
+ (define-key map "X" 'tpu-save-all-buffers-kill-emacs) ; X
+ (define-key map "Y" 'copy-region-as-kill) ; Y
+ (define-key map "Z" 'suspend-emacs) ; Z
+ (define-key map "[" 'blink-matching-open) ; [
+ (define-key map "\\" 'nil) ; \
+ (define-key map "]" 'blink-matching-open) ; ]
+ (define-key map "^" 'tpu-add-at-bol) ; ^
+ (define-key map "_" 'split-window-vertically) ; -
+ (define-key map "`" 'what-line) ; `
+ (define-key map "a" 'tpu-toggle-newline-and-indent) ; a
+ (define-key map "b" 'tpu-next-buffer) ; b
+ (define-key map "c" 'repeat-complex-command) ; c
+ (define-key map "d" 'shell-command) ; d
+ (define-key map "e" 'tpu-exit) ; e
+ (define-key map "f" 'tpu-set-cursor-free) ; f
+ (define-key map "g" 'tpu-get) ; g
+ (define-key map "h" 'nil) ; h
+ (define-key map "i" 'tpu-include) ; i
+ (define-key map "k" 'tpu-kill-buffer) ; k
+ (define-key map "l" 'goto-line) ; l
+ (define-key map "m" 'buffer-menu) ; m
+ (define-key map "n" 'tpu-next-file-buffer) ; n
+ (define-key map "o" 'occur) ; o
+ (define-key map "p" 'lpr-region) ; p
+ (define-key map "q" 'tpu-quit) ; q
+ (define-key map "r" 'tpu-toggle-rectangle) ; r
+ (define-key map "s" 'replace) ; s
+ (define-key map "t" 'tpu-line-to-top-of-window) ; t
+ (define-key map "u" 'undo) ; u
+ (define-key map "v" 'tpu-version) ; v
+ (define-key map "w" 'save-buffer) ; w
+ (define-key map "x" 'tpu-save-all-buffers-kill-emacs) ; x
+ (define-key map "y" 'copy-region-as-kill) ; y
+ (define-key map "z" 'suspend-emacs) ; z
+ (define-key map "{" 'nil) ; {
+ (define-key map "|" 'split-window-horizontally) ; |
+ (define-key map "}" 'nil) ; }
+ (define-key map "~" 'exchange-point-and-mark) ; ~
+ (define-key map "\177" 'delete-window) ; <X]
+ map)
"Maps the function keys on the VT100 keyboard preceded by PF1.
GOLD is the ASCII 7-bit escape sequence <ESC>OP.")
-(defvar GOLD-CSI-map (make-sparse-keymap)
- "Maps the function keys on the VT100 keyboard preceded by GOLD-CSI.")
-
-(defvar GOLD-SS3-map (make-sparse-keymap)
- "Maps the function keys on the VT100 keyboard preceded by GOLD-SS3.")
+(defvar SS3-map
+ (let ((map (make-sparse-keymap)))
+ (define-key map "P" GOLD-map) ; GOLD map
+ ;;
+ (define-key map "A" 'tpu-previous-line) ; up
+ (define-key map "B" 'tpu-next-line) ; down
+ (define-key map "C" 'tpu-forward-char) ; right
+ (define-key map "D" 'tpu-backward-char) ; left
+
+ (define-key map "Q" 'tpu-help) ; PF2
+ (define-key map "R" 'tpu-search-again) ; PF3
+ (define-key map "S" 'tpu-delete-current-line) ; PF4
+ (define-key map "p" 'tpu-line) ; KP0
+ (define-key map "q" 'tpu-word) ; KP1
+ (define-key map "r" 'tpu-end-of-line) ; KP2
+ (define-key map "s" 'tpu-char) ; KP3
+ (define-key map "t" 'tpu-advance-direction) ; KP4
+ (define-key map "u" 'tpu-backup-direction) ; KP5
+ (define-key map "v" 'tpu-cut) ; KP6
+ (define-key map "w" 'tpu-page) ; KP7
+ (define-key map "x" 'tpu-scroll-window) ; KP8
+ (define-key map "y" 'tpu-append-region) ; KP9
+ (define-key map "m" 'tpu-delete-current-word) ; KP-
+ (define-key map "l" 'tpu-delete-current-char) ; KP,
+ (define-key map "n" 'tpu-select) ; KP.
+ (define-key map "M" 'newline) ; KPenter
+ map)
+ "Maps the SS3 function keys on the VT100 keyboard.
+SS3 is DEC's name for the sequence <ESC>O.")
(defvar tpu-global-map nil "TPU-edt global keymap.")
-(defvar tpu-original-global-map (copy-keymap global-map)
- "Original global keymap.")
+(defvar tpu-original-global-map global-map
+ "Original non-TPU global keymap.")
-(and tpu-lucid-emacs19-p
+(and (not (boundp 'minibuffer-local-ns-map))
(defvar minibuffer-local-ns-map (make-sparse-keymap)
"Hack to give Lucid Emacs the same maps as ordinary Emacs."))
@@ -352,9 +595,6 @@ GOLD is the ASCII 7-bit escape sequence <ESC>OP.")
;;;
;;; Global Variables
;;;
-(defvar tpu-edt-mode nil
- "If non-nil, TPU-edt mode is active.")
-
(defvar tpu-last-replaced-text ""
"Last text deleted by a TPU-edt replace command.")
(defvar tpu-last-deleted-region ""
@@ -439,37 +679,24 @@ GOLD is the ASCII 7-bit escape sequence <ESC>OP.")
(defun tpu-set-mode-line (for-tpu)
"Set ``minor-mode-alist'' for TPU-edt, or reset it to default Emacs."
- (cond ((not for-tpu)
- (setq minor-mode-alist tpu-original-mm-alist))
- (t
- (or (assq 'tpu-newline-and-indent-p minor-mode-alist)
- (setq minor-mode-alist
- (cons '(tpu-newline-and-indent-p
- tpu-newline-and-indent-string)
- minor-mode-alist)))
- (or (assq 'tpu-rectangular-p minor-mode-alist)
- (setq minor-mode-alist
- (cons '(tpu-rectangular-p tpu-rectangle-string)
- minor-mode-alist)))
- (or (assq 'tpu-direction-string minor-mode-alist)
- (setq minor-mode-alist
- (cons '(tpu-direction-string tpu-direction-string)
- minor-mode-alist)))
- (or (assq 'tpu-mark-flag minor-mode-alist)
- (setq minor-mode-alist
- (cons '(tpu-mark-flag tpu-mark-flag)
- minor-mode-alist))))))
+ (let ((entries '((tpu-newline-and-indent-p tpu-newline-and-indent-string)
+ (tpu-rectangular-p tpu-rectangle-string)
+ (tpu-direction-string tpu-direction-string)
+ (tpu-mark-flag tpu-mark-flag))))
+ (dolist (entry entries)
+ (if for-tpu
+ (add-to-list 'minor-mode-alist entry)
+ (setq minor-mode-alist (remove entry minor-mode-alist))))))
(defun tpu-update-mode-line nil
"Make sure mode-line in the current buffer reflects all changes."
(setq tpu-mark-flag (if transient-mark-mode "" (if (tpu-mark) " @" " ")))
- (cond (tpu-emacs19-p (force-mode-line-update))
- (t (set-buffer-modified-p (buffer-modified-p)) (sit-for 0))))
+ (force-mode-line-update))
-(cond (tpu-lucid-emacs19-p
+(cond (tpu-lucid-emacs-p
(add-hook 'zmacs-deactivate-region-hook 'tpu-update-mode-line)
(add-hook 'zmacs-activate-region-hook 'tpu-update-mode-line))
- (tpu-emacs19-p
+ (t
(add-hook 'activate-mark-hook 'tpu-update-mode-line)
(add-hook 'deactivate-mark-hook 'tpu-update-mode-line)))
@@ -489,7 +716,7 @@ GOLD is the ASCII 7-bit escape sequence <ESC>OP.")
"Set markers at match beginning and end."
;; Add one to beginning mark so it stays with the first character of
;; the string even if characters are added just before the string.
- (setq tpu-match-beginning-mark (copy-marker (1+ (match-beginning 0))))
+ (setq tpu-match-beginning-mark (copy-marker (match-beginning 0) t))
(setq tpu-match-end-mark (copy-marker (match-end 0))))
(defun tpu-unset-match nil
@@ -499,7 +726,7 @@ GOLD is the ASCII 7-bit escape sequence <ESC>OP.")
(defun tpu-match-beginning nil
"Returns the location of the last match beginning."
- (1- (marker-position tpu-match-beginning-mark)))
+ (marker-position tpu-match-beginning-mark))
(defun tpu-match-end nil
"Returns the location of the last match end."
@@ -515,10 +742,10 @@ Otherwise sets the tpu-match markers to nil and returns nil."
;; beginning, end, and point are equal.
(cond ((and
(equal (marker-buffer tpu-match-beginning-mark) (current-buffer))
- (>= (point) (1- (marker-position tpu-match-beginning-mark)))
+ (>= (point) (marker-position tpu-match-beginning-mark))
(or
(< (point) (marker-position tpu-match-end-mark))
- (and (= (1- (marker-position tpu-match-beginning-mark))
+ (and (= (marker-position tpu-match-beginning-mark)
(marker-position tpu-match-end-mark))
(= (marker-position tpu-match-end-mark) (point))))) t)
(t
@@ -528,12 +755,11 @@ Otherwise sets the tpu-match markers to nil and returns nil."
"Show the values of the match markers."
(interactive)
(if (markerp tpu-match-beginning-mark)
- (let ((beg (marker-position tpu-match-beginning-mark)))
- (message "(%s, %s) in %s -- current %s in %s"
- (if beg (1- beg) nil)
- (marker-position tpu-match-end-mark)
- (marker-buffer tpu-match-end-mark)
- (point) (current-buffer)))))
+ (message "(%s, %s) in %s -- current %s in %s"
+ (marker-position tpu-match-beginning-mark)
+ (marker-position tpu-match-end-mark)
+ (marker-buffer tpu-match-end-mark)
+ (point) (current-buffer))))
;;;
@@ -542,26 +768,27 @@ Otherwise sets the tpu-match markers to nil and returns nil."
(defun tpu-caar (thingy) (car (car thingy)))
(defun tpu-cadr (thingy) (car (cdr thingy)))
+(defvar zmacs-regions)
+
(defun tpu-mark nil
"TPU-edt version of the mark function.
Return the appropriate value of the mark for the current
version of Emacs."
- (cond (tpu-lucid-emacs19-p (mark (not zmacs-regions)))
- (tpu-emacs19-p (and mark-active (mark (not transient-mark-mode))))
- (t (mark))))
+ (cond (tpu-lucid-emacs-p (mark (not zmacs-regions)))
+ (t (and mark-active (mark (not transient-mark-mode))))))
(defun tpu-set-mark (pos)
"TPU-edt version of the `set-mark' function.
Sets the mark at POS and activates the region according to the
current version of Emacs."
(set-mark pos)
- (and tpu-lucid-emacs19-p pos (zmacs-activate-region)))
+ ;; We use a separate `if' for the fboundp so the byte-compiler notices it
+ ;; and doesn't complain about the subsequent call.
+ (if (fboundp 'zmacs-activate-region) (if pos (zmacs-activate-region))))
(defun tpu-string-prompt (prompt history-symbol)
"Read a string with PROMPT."
- (if tpu-emacs19-p
- (read-from-minibuffer prompt nil nil nil history-symbol)
- (read-string prompt)))
+ (read-from-minibuffer prompt nil nil nil history-symbol))
(defvar tpu-last-answer nil "Most recent response to tpu-y-or-n-p.")
@@ -783,8 +1010,12 @@ This is useful for inserting control characters."
;;; Command and Function Aliases
;;;
;;;###autoload
-(defalias 'tpu-edt-mode 'tpu-edt-on)
-(defalias 'TPU-EDT-MODE 'tpu-edt-on)
+(define-minor-mode tpu-edt-mode
+ "TPU/edt emulation."
+ :global t
+ (if tpu-edt-mode (tpu-edt-on) (tpu-edt-off)))
+
+(defalias 'TPU-EDT-MODE 'tpu-edt-mode)
;;;###autoload
(defalias 'tpu-edt 'tpu-edt-on)
@@ -1118,9 +1349,7 @@ kills modified buffers without asking."
(defun tpu-regexp-prompt (prompt)
"Read a string, adding 'RE' to the prompt if tpu-regexp-p is set."
(let ((re-prompt (concat (if tpu-regexp-p "RE ") prompt)))
- (if tpu-emacs19-p
- (read-from-minibuffer re-prompt nil nil nil 'tpu-regexp-prompt-hist)
- (read-string re-prompt))))
+ (read-from-minibuffer re-prompt nil nil nil 'tpu-regexp-prompt-hist)))
(defun tpu-search-highlight nil
(if (tpu-check-match)
@@ -1174,7 +1403,7 @@ The search is performed in the current direction."
(defun tpu-set-search (&optional arg)
"Set the search functions and set the search direction to the current
direction. If an argument is specified, don't set the search direction."
- (if (not arg) (setq tpu-searching-forward (if tpu-advance t nil)))
+ (if (not arg) (setq tpu-searching-forward tpu-advance))
(cond (tpu-searching-forward
(cond (tpu-regexp-p
(fset 'tpu-emacs-search 're-search-forward)
@@ -1227,7 +1456,7 @@ direction. If an argument is specified, don't set the search direction."
"%sSearch failed: \"%s\""
(if tpu-regexp-p "RE " "") tpu-search-last-string)))))))))
-(fset 'tpu-search-internal-core (symbol-function 'tpu-search-internal))
+(defalias 'tpu-search-internal-core (symbol-function 'tpu-search-internal))
(defun tpu-check-search-case (string)
"Returns t if string contains upper case."
@@ -2015,292 +2244,23 @@ Accepts a prefix argument for the number of tpu-pan-columns to scroll."
;;;
-;;; Define keymaps
-;;;
-(define-key global-map "\e[" CSI-map) ; CSI map
-(define-key global-map "\eO" SS3-map) ; SS3 map
-(define-key SS3-map "P" GOLD-map) ; GOLD map
-(define-key GOLD-map "\e[" GOLD-CSI-map) ; GOLD-CSI map
-(define-key GOLD-map "\eO" GOLD-SS3-map) ; GOLD-SS3 map
-
-
-;;;
-;;; CSI-map key definitions
-;;;
-(define-key CSI-map "A" 'tpu-previous-line) ; up
-(define-key CSI-map "B" 'tpu-next-line) ; down
-(define-key CSI-map "D" 'tpu-backward-char) ; left
-(define-key CSI-map "C" 'tpu-forward-char) ; right
-
-(define-key CSI-map "1~" 'tpu-search) ; Find
-(define-key CSI-map "2~" 'tpu-paste) ; Insert Here
-(define-key CSI-map "3~" 'tpu-cut) ; Remove
-(define-key CSI-map "4~" 'tpu-select) ; Select
-(define-key CSI-map "5~" 'tpu-scroll-window-down) ; Prev Screen
-(define-key CSI-map "6~" 'tpu-scroll-window-up) ; Next Screen
-
-(define-key CSI-map "11~" 'nil) ; F1
-(define-key CSI-map "12~" 'nil) ; F2
-(define-key CSI-map "13~" 'nil) ; F3
-(define-key CSI-map "14~" 'nil) ; F4
-(define-key CSI-map "15~" 'nil) ; F5
-(define-key CSI-map "17~" 'nil) ; F6
-(define-key CSI-map "18~" 'nil) ; F7
-(define-key CSI-map "19~" 'nil) ; F8
-(define-key CSI-map "20~" 'nil) ; F9
-(define-key CSI-map "21~" 'tpu-exit) ; F10
-(define-key CSI-map "23~" 'tpu-insert-escape) ; F11 (ESC)
-(define-key CSI-map "24~" 'tpu-next-beginning-of-line) ; F12 (BS)
-(define-key CSI-map "25~" 'tpu-delete-previous-word) ; F13 (LF)
-(define-key CSI-map "26~" 'tpu-toggle-overwrite-mode) ; F14
-(define-key CSI-map "28~" 'tpu-help) ; HELP
-(define-key CSI-map "29~" 'execute-extended-command) ; DO
-(define-key CSI-map "31~" 'tpu-goto-breadcrumb) ; F17
-(define-key CSI-map "32~" 'nil) ; F18
-(define-key CSI-map "33~" 'nil) ; F19
-(define-key CSI-map "34~" 'nil) ; F20
-
-
-;;;
-;;; SS3-map key definitions
-;;;
-(define-key SS3-map "A" 'tpu-previous-line) ; up
-(define-key SS3-map "B" 'tpu-next-line) ; down
-(define-key SS3-map "C" 'tpu-forward-char) ; right
-(define-key SS3-map "D" 'tpu-backward-char) ; left
-
-(define-key SS3-map "Q" 'tpu-help) ; PF2
-(define-key SS3-map "R" 'tpu-search-again) ; PF3
-(define-key SS3-map "S" 'tpu-delete-current-line) ; PF4
-(define-key SS3-map "p" 'tpu-line) ; KP0
-(define-key SS3-map "q" 'tpu-word) ; KP1
-(define-key SS3-map "r" 'tpu-end-of-line) ; KP2
-(define-key SS3-map "s" 'tpu-char) ; KP3
-(define-key SS3-map "t" 'tpu-advance-direction) ; KP4
-(define-key SS3-map "u" 'tpu-backup-direction) ; KP5
-(define-key SS3-map "v" 'tpu-cut) ; KP6
-(define-key SS3-map "w" 'tpu-page) ; KP7
-(define-key SS3-map "x" 'tpu-scroll-window) ; KP8
-(define-key SS3-map "y" 'tpu-append-region) ; KP9
-(define-key SS3-map "m" 'tpu-delete-current-word) ; KP-
-(define-key SS3-map "l" 'tpu-delete-current-char) ; KP,
-(define-key SS3-map "n" 'tpu-select) ; KP.
-(define-key SS3-map "M" 'newline) ; KPenter
-
-
-;;;
-;;; GOLD-map key definitions
-;;;
-(define-key GOLD-map "\C-A" 'tpu-toggle-overwrite-mode) ; ^A
-(define-key GOLD-map "\C-B" 'nil) ; ^B
-(define-key GOLD-map "\C-C" 'nil) ; ^C
-(define-key GOLD-map "\C-D" 'nil) ; ^D
-(define-key GOLD-map "\C-E" 'nil) ; ^E
-(define-key GOLD-map "\C-F" 'set-visited-file-name) ; ^F
-(define-key GOLD-map "\C-g" 'keyboard-quit) ; safety first
-(define-key GOLD-map "\C-h" 'delete-other-windows) ; BS
-(define-key GOLD-map "\C-i" 'other-window) ; TAB
-(define-key GOLD-map "\C-J" 'nil) ; ^J
-(define-key GOLD-map "\C-K" 'tpu-define-macro-key) ; ^K
-(define-key GOLD-map "\C-l" 'downcase-region) ; ^L
-(define-key GOLD-map "\C-M" 'nil) ; ^M
-(define-key GOLD-map "\C-N" 'nil) ; ^N
-(define-key GOLD-map "\C-O" 'nil) ; ^O
-(define-key GOLD-map "\C-P" 'nil) ; ^P
-(define-key GOLD-map "\C-Q" 'nil) ; ^Q
-(define-key GOLD-map "\C-R" 'nil) ; ^R
-(define-key GOLD-map "\C-S" 'nil) ; ^S
-(define-key GOLD-map "\C-T" 'tpu-toggle-control-keys) ; ^T
-(define-key GOLD-map "\C-u" 'upcase-region) ; ^U
-(define-key GOLD-map "\C-V" 'nil) ; ^V
-(define-key GOLD-map "\C-w" 'tpu-write-current-buffers) ; ^W
-(define-key GOLD-map "\C-X" 'nil) ; ^X
-(define-key GOLD-map "\C-Y" 'nil) ; ^Y
-(define-key GOLD-map "\C-Z" 'nil) ; ^Z
-(define-key GOLD-map " " 'undo) ; SPC
-(define-key GOLD-map "!" 'nil) ; !
-(define-key GOLD-map "#" 'nil) ; #
-(define-key GOLD-map "$" 'tpu-add-at-eol) ; $
-(define-key GOLD-map "%" 'tpu-goto-percent) ; %
-(define-key GOLD-map "&" 'nil) ; &
-(define-key GOLD-map "(" 'nil) ; (
-(define-key GOLD-map ")" 'nil) ; )
-(define-key GOLD-map "*" 'tpu-toggle-regexp) ; *
-(define-key GOLD-map "+" 'nil) ; +
-(define-key GOLD-map "," 'tpu-goto-breadcrumb) ; ,
-(define-key GOLD-map "-" 'negative-argument) ; -
-(define-key GOLD-map "." 'tpu-drop-breadcrumb) ; .
-(define-key GOLD-map "/" 'tpu-emacs-replace) ; /
-(define-key GOLD-map "0" 'digit-argument) ; 0
-(define-key GOLD-map "1" 'digit-argument) ; 1
-(define-key GOLD-map "2" 'digit-argument) ; 2
-(define-key GOLD-map "3" 'digit-argument) ; 3
-(define-key GOLD-map "4" 'digit-argument) ; 4
-(define-key GOLD-map "5" 'digit-argument) ; 5
-(define-key GOLD-map "6" 'digit-argument) ; 6
-(define-key GOLD-map "7" 'digit-argument) ; 7
-(define-key GOLD-map "8" 'digit-argument) ; 8
-(define-key GOLD-map "9" 'digit-argument) ; 9
-(define-key GOLD-map ":" 'nil) ; :
-(define-key GOLD-map ";" 'tpu-trim-line-ends) ; ;
-(define-key GOLD-map "<" 'nil) ; <
-(define-key GOLD-map "=" 'nil) ; =
-(define-key GOLD-map ">" 'nil) ; >
-(define-key GOLD-map "?" 'tpu-spell-check) ; ?
-(define-key GOLD-map "A" 'tpu-toggle-newline-and-indent) ; A
-(define-key GOLD-map "B" 'tpu-next-buffer) ; B
-(define-key GOLD-map "C" 'repeat-complex-command) ; C
-(define-key GOLD-map "D" 'shell-command) ; D
-(define-key GOLD-map "E" 'tpu-exit) ; E
-(define-key GOLD-map "F" 'tpu-set-cursor-free) ; F
-(define-key GOLD-map "G" 'tpu-get) ; G
-(define-key GOLD-map "H" 'nil) ; H
-(define-key GOLD-map "I" 'tpu-include) ; I
-(define-key GOLD-map "K" 'tpu-kill-buffer) ; K
-(define-key GOLD-map "L" 'tpu-what-line) ; L
-(define-key GOLD-map "M" 'buffer-menu) ; M
-(define-key GOLD-map "N" 'tpu-next-file-buffer) ; N
-(define-key GOLD-map "O" 'occur) ; O
-(define-key GOLD-map "P" 'lpr-buffer) ; P
-(define-key GOLD-map "Q" 'tpu-quit) ; Q
-(define-key GOLD-map "R" 'tpu-toggle-rectangle) ; R
-(define-key GOLD-map "S" 'replace) ; S
-(define-key GOLD-map "T" 'tpu-line-to-top-of-window) ; T
-(define-key GOLD-map "U" 'undo) ; U
-(define-key GOLD-map "V" 'tpu-version) ; V
-(define-key GOLD-map "W" 'save-buffer) ; W
-(define-key GOLD-map "X" 'tpu-save-all-buffers-kill-emacs) ; X
-(define-key GOLD-map "Y" 'copy-region-as-kill) ; Y
-(define-key GOLD-map "Z" 'suspend-emacs) ; Z
-(define-key GOLD-map "[" 'blink-matching-open) ; [
-(define-key GOLD-map "\\" 'nil) ; \
-(define-key GOLD-map "]" 'blink-matching-open) ; ]
-(define-key GOLD-map "^" 'tpu-add-at-bol) ; ^
-(define-key GOLD-map "_" 'split-window-vertically) ; -
-(define-key GOLD-map "`" 'what-line) ; `
-(define-key GOLD-map "a" 'tpu-toggle-newline-and-indent) ; a
-(define-key GOLD-map "b" 'tpu-next-buffer) ; b
-(define-key GOLD-map "c" 'repeat-complex-command) ; c
-(define-key GOLD-map "d" 'shell-command) ; d
-(define-key GOLD-map "e" 'tpu-exit) ; e
-(define-key GOLD-map "f" 'tpu-set-cursor-free) ; f
-(define-key GOLD-map "g" 'tpu-get) ; g
-(define-key GOLD-map "h" 'nil) ; h
-(define-key GOLD-map "i" 'tpu-include) ; i
-(define-key GOLD-map "k" 'tpu-kill-buffer) ; k
-(define-key GOLD-map "l" 'goto-line) ; l
-(define-key GOLD-map "m" 'buffer-menu) ; m
-(define-key GOLD-map "n" 'tpu-next-file-buffer) ; n
-(define-key GOLD-map "o" 'occur) ; o
-(define-key GOLD-map "p" 'lpr-region) ; p
-(define-key GOLD-map "q" 'tpu-quit) ; q
-(define-key GOLD-map "r" 'tpu-toggle-rectangle) ; r
-(define-key GOLD-map "s" 'replace) ; s
-(define-key GOLD-map "t" 'tpu-line-to-top-of-window) ; t
-(define-key GOLD-map "u" 'undo) ; u
-(define-key GOLD-map "v" 'tpu-version) ; v
-(define-key GOLD-map "w" 'save-buffer) ; w
-(define-key GOLD-map "x" 'tpu-save-all-buffers-kill-emacs) ; x
-(define-key GOLD-map "y" 'copy-region-as-kill) ; y
-(define-key GOLD-map "z" 'suspend-emacs) ; z
-(define-key GOLD-map "{" 'nil) ; {
-(define-key GOLD-map "|" 'split-window-horizontally) ; |
-(define-key GOLD-map "}" 'nil) ; }
-(define-key GOLD-map "~" 'exchange-point-and-mark) ; ~
-(define-key GOLD-map "\177" 'delete-window) ; <X]
-
-
-;;;
-;;; GOLD-CSI-map key definitions
-;;;
-(define-key GOLD-CSI-map "A" 'tpu-move-to-beginning) ; up-arrow
-(define-key GOLD-CSI-map "B" 'tpu-move-to-end) ; down-arrow
-(define-key GOLD-CSI-map "C" 'end-of-line) ; right-arrow
-(define-key GOLD-CSI-map "D" 'beginning-of-line) ; left-arrow
-
-(define-key GOLD-CSI-map "1~" 'nil) ; Find
-(define-key GOLD-CSI-map "2~" 'nil) ; Insert Here
-(define-key GOLD-CSI-map "3~" 'tpu-store-text) ; Remove
-(define-key GOLD-CSI-map "4~" 'tpu-unselect) ; Select
-(define-key GOLD-CSI-map "5~" 'tpu-previous-window) ; Prev Screen
-(define-key GOLD-CSI-map "6~" 'tpu-next-window) ; Next Screen
-
-(define-key GOLD-CSI-map "11~" 'nil) ; F1
-(define-key GOLD-CSI-map "12~" 'nil) ; F2
-(define-key GOLD-CSI-map "13~" 'nil) ; F3
-(define-key GOLD-CSI-map "14~" 'nil) ; F4
-(define-key GOLD-CSI-map "16~" 'nil) ; F5
-(define-key GOLD-CSI-map "17~" 'nil) ; F6
-(define-key GOLD-CSI-map "18~" 'nil) ; F7
-(define-key GOLD-CSI-map "19~" 'nil) ; F8
-(define-key GOLD-CSI-map "20~" 'nil) ; F9
-(define-key GOLD-CSI-map "21~" 'nil) ; F10
-(define-key GOLD-CSI-map "23~" 'nil) ; F11
-(define-key GOLD-CSI-map "24~" 'nil) ; F12
-(define-key GOLD-CSI-map "25~" 'nil) ; F13
-(define-key GOLD-CSI-map "26~" 'nil) ; F14
-(define-key GOLD-CSI-map "28~" 'describe-bindings) ; HELP
-(define-key GOLD-CSI-map "29~" 'nil) ; DO
-(define-key GOLD-CSI-map "31~" 'tpu-drop-breadcrumb) ; F17
-(define-key GOLD-CSI-map "32~" 'nil) ; F18
-(define-key GOLD-CSI-map "33~" 'nil) ; F19
-(define-key GOLD-CSI-map "34~" 'nil) ; F20
-
-
-;;;
-;;; GOLD-SS3-map key definitions
-;;;
-(define-key GOLD-SS3-map "A" 'tpu-move-to-beginning) ; up-arrow
-(define-key GOLD-SS3-map "B" 'tpu-move-to-end) ; down-arrow
-(define-key GOLD-SS3-map "C" 'end-of-line) ; right-arrow
-(define-key GOLD-SS3-map "D" 'beginning-of-line) ; left-arrow
-
-(define-key GOLD-SS3-map "P" 'keyboard-quit) ; PF1
-(define-key GOLD-SS3-map "Q" 'help-for-help) ; PF2
-(define-key GOLD-SS3-map "R" 'tpu-search) ; PF3
-(define-key GOLD-SS3-map "S" 'tpu-undelete-lines) ; PF4
-(define-key GOLD-SS3-map "p" 'open-line) ; KP0
-(define-key GOLD-SS3-map "q" 'tpu-change-case) ; KP1
-(define-key GOLD-SS3-map "r" 'tpu-delete-to-eol) ; KP2
-(define-key GOLD-SS3-map "s" 'tpu-special-insert) ; KP3
-(define-key GOLD-SS3-map "t" 'tpu-move-to-end) ; KP4
-(define-key GOLD-SS3-map "u" 'tpu-move-to-beginning) ; KP5
-(define-key GOLD-SS3-map "v" 'tpu-paste) ; KP6
-(define-key GOLD-SS3-map "w" 'execute-extended-command) ; KP7
-(define-key GOLD-SS3-map "x" 'tpu-fill) ; KP8
-(define-key GOLD-SS3-map "y" 'tpu-replace) ; KP9
-(define-key GOLD-SS3-map "m" 'tpu-undelete-words) ; KP-
-(define-key GOLD-SS3-map "l" 'tpu-undelete-char) ; KP,
-(define-key GOLD-SS3-map "n" 'tpu-unselect) ; KP.
-(define-key GOLD-SS3-map "M" 'tpu-substitute) ; KPenter
-
-
-;;;
-;;; Repeat complex command map additions to make arrows work
-;;;
-(cond ((boundp 'repeat-complex-command-map)
- (define-key repeat-complex-command-map "\e[A" 'previous-complex-command)
- (define-key repeat-complex-command-map "\e[B" 'next-complex-command)
- (define-key repeat-complex-command-map "\eOA" 'previous-complex-command)
- (define-key repeat-complex-command-map "\eOB" 'next-complex-command)))
-
-
-;;;
;;; Minibuffer map additions to make KP_enter = RET
;;;
-(define-key minibuffer-local-map "\eOM" 'exit-minibuffer)
-(define-key minibuffer-local-ns-map "\eOM" 'exit-minibuffer)
-(define-key minibuffer-local-completion-map "\eOM" 'exit-minibuffer)
-(define-key minibuffer-local-must-match-map "\eOM" 'minibuffer-complete-and-exit)
-(and (boundp 'repeat-complex-command-map)
- (define-key repeat-complex-command-map "\eOM" 'exit-minibuffer))
+;; Standard Emacs settings under xterm in function-key-map map
+;; "\eOM" to [kp-enter] and [kp-enter] to RET, but since the output of the map
+;; is not fed back into the map, the key stays as kp-enter :-(.
+(define-key minibuffer-local-map [kp-enter] 'exit-minibuffer)
+;; These are not necessary because they are inherited.
+;; (define-key minibuffer-local-ns-map [kp-enter] 'exit-minibuffer)
+;; (define-key minibuffer-local-completion-map [kp-enter] 'exit-minibuffer)
+(define-key minibuffer-local-must-match-map [kp-enter] 'minibuffer-complete-and-exit)
;;;
;;; Minibuffer map additions to set search direction
;;;
-(define-key minibuffer-local-map "\eOt" 'tpu-search-forward-exit)
-(define-key minibuffer-local-map "\eOu" 'tpu-search-backward-exit)
+(define-key minibuffer-local-map "\eOt" 'tpu-search-forward-exit) ;KP4
+(define-key minibuffer-local-map "\eOu" 'tpu-search-backward-exit) ;KP5
;;;
@@ -2330,9 +2290,7 @@ Accepts a prefix argument for the number of tpu-pan-columns to scroll."
(doit (or tpu emacs)))
(cond (doit
(if emacs (setq tpu-global-map (copy-keymap global-map)))
- (let ((map (if tpu
- (copy-keymap tpu-global-map)
- (copy-keymap tpu-original-global-map))))
+ (let ((map (if tpu tpu-global-map tpu-original-global-map)))
(define-key global-map "\C-\\" (lookup-key map "\C-\\")) ; ^\
(define-key global-map "\C-a" (lookup-key map "\C-a")) ; ^A
@@ -2376,23 +2334,23 @@ Accepts a prefix argument for the number of tpu-pan-columns to scroll."
(defun tpu-arrow-history nil
"Modify minibuffer maps to use arrows for history recall."
(interactive)
- (let ((loc (where-is-internal 'tpu-previous-line)) (cur nil))
- (while (setq cur (car loc))
- (define-key read-expression-map cur 'tpu-previous-history-element)
- (define-key minibuffer-local-map cur 'tpu-previous-history-element)
- (define-key minibuffer-local-ns-map cur 'tpu-previous-history-element)
- (define-key minibuffer-local-completion-map cur 'tpu-previous-history-element)
- (define-key minibuffer-local-must-match-map cur 'tpu-previous-history-element)
- (setq loc (cdr loc)))
-
- (setq loc (where-is-internal 'tpu-next-line))
- (while (setq cur (car loc))
- (define-key read-expression-map cur 'tpu-next-history-element)
- (define-key minibuffer-local-map cur 'tpu-next-history-element)
- (define-key minibuffer-local-ns-map cur 'tpu-next-history-element)
- (define-key minibuffer-local-completion-map cur 'tpu-next-history-element)
- (define-key minibuffer-local-must-match-map cur 'tpu-next-history-element)
- (setq loc (cdr loc)))))
+ (dolist (cur (where-is-internal 'tpu-previous-line))
+ (define-key read-expression-map cur 'tpu-previous-history-element)
+ (define-key minibuffer-local-map cur 'tpu-previous-history-element)
+ ;; These are inherited anyway. --Stef
+ ;; (define-key minibuffer-local-ns-map cur 'tpu-previous-history-element)
+ ;; (define-key minibuffer-local-completion-map cur 'tpu-previous-history-element)
+ ;; (define-key minibuffer-local-must-match-map cur 'tpu-previous-history-element)
+ )
+
+ (dolist (cur (where-is-internal 'tpu-next-line))
+ (define-key read-expression-map cur 'tpu-next-history-element)
+ (define-key minibuffer-local-map cur 'tpu-next-history-element)
+ ;; These are inherited anyway. --Stef
+ ;; (define-key minibuffer-local-ns-map cur 'tpu-next-history-element)
+ ;; (define-key minibuffer-local-completion-map cur 'tpu-next-history-element)
+ ;; (define-key minibuffer-local-must-match-map cur 'tpu-next-history-element)
+ ))
;;;
@@ -2407,10 +2365,10 @@ If FILE is nil, try to load a default file. The default file names are
(setq file (expand-file-name file)))
(tpu-xkeys-file
(setq file (expand-file-name tpu-xkeys-file)))
- (tpu-lucid-emacs19-p
+ (tpu-lucid-emacs-p
(setq file (convert-standard-filename
(expand-file-name "~/.tpu-lucid-keys"))))
- (tpu-emacs19-p
+ (t
(setq file (convert-standard-filename
(expand-file-name "~/.tpu-keys")))
(and (not (file-exists-p file))
@@ -2485,42 +2443,39 @@ If FILE is nil, try to load a default file. The default file names are
;;; Start and Stop TPU-edt
;;;
;;;###autoload
-(defun tpu-edt-on nil
+(defun tpu-edt-on ()
"Turn on TPU/edt emulation."
(interactive)
- (cond
- ((not tpu-edt-mode)
- ;; we use picture-mode functions
- (require 'picture)
- (tpu-set-control-keys)
- (and window-system (tpu-load-xkeys nil))
- (tpu-arrow-history)
- (transient-mark-mode t)
- (add-hook 'post-command-hook 'tpu-search-highlight)
- (tpu-set-mode-line t)
- (tpu-advance-direction)
- ;; set page delimiter, display line truncation, and scrolling like TPU
- (setq-default page-delimiter "\f")
- (setq-default truncate-lines t)
- (setq scroll-step 1)
- (setq tpu-edt-mode t))))
-
-(defun tpu-edt-off nil
+ (and window-system (tpu-load-xkeys nil))
+ (tpu-arrow-history)
+ (transient-mark-mode t)
+ (add-hook 'post-command-hook 'tpu-search-highlight)
+ (tpu-set-mode-line t)
+ (tpu-advance-direction)
+ ;; set page delimiter, display line truncation, and scrolling like TPU
+ (setq-default page-delimiter "\f")
+ (setq-default truncate-lines t)
+ (setq scroll-step 1)
+ (setq global-map (copy-keymap global-map))
+ (tpu-set-control-keys)
+ (define-key global-map "\e[" CSI-map)
+ (define-key global-map "\eO" SS3-map)
+ (setq tpu-edt-mode t))
+
+(defun tpu-edt-off ()
"Turn off TPU/edt emulation. Note that the keypad is left on."
(interactive)
- (cond
- (tpu-edt-mode
- (tpu-reset-control-keys nil)
- (remove-hook 'post-command-hook 'tpu-search-highlight)
- (tpu-set-mode-line nil)
- (setq-default page-delimiter "^\f")
- (setq-default truncate-lines nil)
- (setq scroll-step 0)
- (setq global-map (copy-keymap tpu-original-global-map))
- (use-global-map global-map)
- (setq tpu-edt-mode nil))))
+ (tpu-reset-control-keys nil)
+ (remove-hook 'post-command-hook 'tpu-search-highlight)
+ (tpu-set-mode-line nil)
+ (setq-default page-delimiter "^\f")
+ (setq-default truncate-lines nil)
+ (setq scroll-step 0)
+ (setq global-map tpu-original-global-map)
+ (use-global-map global-map)
+ (setq tpu-edt-mode nil))
(provide 'tpu-edt)
-;;; arch-tag: f3dfe61c-2cbd-4f73-b9cc-eb215020b857
+;; arch-tag: f3dfe61c-2cbd-4f73-b9cc-eb215020b857
;;; tpu-edt.el ends here
diff --git a/lisp/emulation/tpu-extras.el b/lisp/emulation/tpu-extras.el
index 427ef19bccd..51ed44346ad 100644
--- a/lisp/emulation/tpu-extras.el
+++ b/lisp/emulation/tpu-extras.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/tpu-mapper.el b/lisp/emulation/tpu-mapper.el
index db2daf09093..66d6541ac0f 100644
--- a/lisp/emulation/tpu-mapper.el
+++ b/lisp/emulation/tpu-mapper.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/vi.el b/lisp/emulation/vi.el
index d6b7c2728b2..559d1677347 100644
--- a/lisp/emulation/vi.el
+++ b/lisp/emulation/vi.el
@@ -314,7 +314,7 @@ command extensions.")
(put 'mark-defun 'point-moving-unit 'region)
(put 'mark-whole-buffer 'point-moving-unit 'region)
(put 'mark-end-of-sentence 'point-moving-unit 'region)
-(put 'mark-c-function 'point-moving-unit 'region)
+(put 'c-mark-function 'point-moving-unit 'region)
;;;
(defvar vi-mark-alist nil
@@ -637,7 +637,8 @@ insert state."
"Go to ARGth line."
(interactive "P")
(if (null (vi-raw-numeric-prefix arg))
- (end-of-buffer)
+ (with-no-warnings
+ (end-of-buffer))
(goto-line (vi-prefix-numeric-value arg))))
(defun vi-beginning-of-buffer ()
@@ -1384,7 +1385,7 @@ l(ines)."
((char-equal region ?b) (mark-whole-buffer))
((char-equal region ?p) (mark-paragraph))
((char-equal region ?P) (mark-page arg))
- ((char-equal region ?f) (mark-c-function))
+ ((char-equal region ?f) (c-mark-function))
((char-equal region ?w) (mark-word arg))
((char-equal region ?e) (mark-end-of-sentence arg))
((char-equal region ?l) (vi-mark-lines arg))
diff --git a/lisp/emulation/vip.el b/lisp/emulation/vip.el
index 7584436e20a..aa6e75357ed 100644
--- a/lisp/emulation/vip.el
+++ b/lisp/emulation/vip.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -1112,9 +1112,10 @@ the query replace mode will toggle between string replace and regexp replace."
(replace-match (vip-read-string
(format "Replace regexp \"%s\" with: " str))
nil nil))
- (replace-string
- str
- (vip-read-string (format "Replace \"%s\" with: " str)))))))
+ (with-no-warnings
+ (replace-string
+ str
+ (vip-read-string (format "Replace \"%s\" with: " str))))))))
;; basic cursor movement. j, k, l, m commands.
@@ -2830,7 +2831,8 @@ a token has type \(command, address, end-mark\) and value."
(skip-chars-forward " \t")
(if (looking-at "[\n|]") (error "Missing rhs"))
(set-mark (point))
- (end-of-buffer)
+ (with-no-warnings
+ (end-of-buffer))
(backward-char 1)
(setq string (buffer-substring (mark) (point))))
(if (not (lookup-key ex-map char))
@@ -2900,7 +2902,8 @@ a token has type \(command, address, end-mark\) and value."
(setq file (buffer-substring (point) (mark)))))
(if variant
(shell-command command t)
- (insert-file file))))
+ (with-no-warnings
+ (insert-file file)))))
(defun ex-set ()
(eval (list 'setq
diff --git a/lisp/emulation/viper-cmd.el b/lisp/emulation/viper-cmd.el
index 3f9a425987e..4f247f2cd38 100644
--- a/lisp/emulation/viper-cmd.el
+++ b/lisp/emulation/viper-cmd.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/viper-ex.el b/lisp/emulation/viper-ex.el
index c29e0e26ba5..008b430d167 100644
--- a/lisp/emulation/viper-ex.el
+++ b/lisp/emulation/viper-ex.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -58,7 +58,7 @@
(require 'viper-util)
(defgroup viper-ex nil
- "Viper support for Ex commands"
+ "Viper support for Ex commands."
:prefix "ex-"
:group 'viper)
diff --git a/lisp/emulation/viper-init.el b/lisp/emulation/viper-init.el
index ab9212cb95f..6e188f21a9d 100644
--- a/lisp/emulation/viper-init.el
+++ b/lisp/emulation/viper-init.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/viper-keym.el b/lisp/emulation/viper-keym.el
index f14f67d94c8..e83cf14776f 100644
--- a/lisp/emulation/viper-keym.el
+++ b/lisp/emulation/viper-keym.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/viper-macs.el b/lisp/emulation/viper-macs.el
index 9fd73efb9b9..8a3ce5db9eb 100644
--- a/lisp/emulation/viper-macs.el
+++ b/lisp/emulation/viper-macs.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/viper-mous.el b/lisp/emulation/viper-mous.el
index 250f7cf5a53..503cd145796 100644
--- a/lisp/emulation/viper-mous.el
+++ b/lisp/emulation/viper-mous.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -52,7 +52,7 @@
(defgroup viper-mouse nil
- "Support for Viper special mouse-bound commands"
+ "Support for Viper special mouse-bound commands."
:prefix "viper-"
:group 'viper)
diff --git a/lisp/emulation/viper-util.el b/lisp/emulation/viper-util.el
index 497e4a1e559..2d713df6ef6 100644
--- a/lisp/emulation/viper-util.el
+++ b/lisp/emulation/viper-util.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/viper.el b/lisp/emulation/viper.el
index 3fdbccc2957..fe65cb69cbb 100644
--- a/lisp/emulation/viper.el
+++ b/lisp/emulation/viper.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/emulation/ws-mode.el b/lisp/emulation/ws-mode.el
index 482753f111e..b1773197483 100644
--- a/lisp/emulation/ws-mode.el
+++ b/lisp/emulation/ws-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/env.el b/lisp/env.el
index 3d92501279e..606aa163c87 100644
--- a/lisp/env.el
+++ b/lisp/env.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/eshell/em-alias.el b/lisp/eshell/em-alias.el
index 02af7531b3f..ba84384e1d0 100644
--- a/lisp/eshell/em-alias.el
+++ b/lisp/eshell/em-alias.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-alias)
diff --git a/lisp/eshell/em-banner.el b/lisp/eshell/em-banner.el
index d63c99be005..0611ea3e5e0 100644
--- a/lisp/eshell/em-banner.el
+++ b/lisp/eshell/em-banner.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-banner)
diff --git a/lisp/eshell/em-basic.el b/lisp/eshell/em-basic.el
index 5972ffc28bd..d0712ade945 100644
--- a/lisp/eshell/em-basic.el
+++ b/lisp/eshell/em-basic.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-basic)
diff --git a/lisp/eshell/em-cmpl.el b/lisp/eshell/em-cmpl.el
index 2b4dbc76ddc..734d0a87eb5 100644
--- a/lisp/eshell/em-cmpl.el
+++ b/lisp/eshell/em-cmpl.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-cmpl)
diff --git a/lisp/eshell/em-dirs.el b/lisp/eshell/em-dirs.el
index 6477a546eb8..a699ea83636 100644
--- a/lisp/eshell/em-dirs.el
+++ b/lisp/eshell/em-dirs.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-dirs)
diff --git a/lisp/eshell/em-glob.el b/lisp/eshell/em-glob.el
index 74614d78d9c..3a53ded645d 100644
--- a/lisp/eshell/em-glob.el
+++ b/lisp/eshell/em-glob.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/eshell/em-hist.el b/lisp/eshell/em-hist.el
index 573d06337db..c82be565c4f 100644
--- a/lisp/eshell/em-hist.el
+++ b/lisp/eshell/em-hist.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-hist)
diff --git a/lisp/eshell/em-ls.el b/lisp/eshell/em-ls.el
index 4d06b1bdca0..514138b6bc2 100644
--- a/lisp/eshell/em-ls.el
+++ b/lisp/eshell/em-ls.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-ls)
diff --git a/lisp/eshell/em-pred.el b/lisp/eshell/em-pred.el
index bbb82fc7cd8..af72446bd1c 100644
--- a/lisp/eshell/em-pred.el
+++ b/lisp/eshell/em-pred.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-pred)
diff --git a/lisp/eshell/em-prompt.el b/lisp/eshell/em-prompt.el
index 009b09720c6..fcb029fc9c4 100644
--- a/lisp/eshell/em-prompt.el
+++ b/lisp/eshell/em-prompt.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-prompt)
diff --git a/lisp/eshell/em-rebind.el b/lisp/eshell/em-rebind.el
index 1f79990855d..203801224b8 100644
--- a/lisp/eshell/em-rebind.el
+++ b/lisp/eshell/em-rebind.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-rebind)
diff --git a/lisp/eshell/em-script.el b/lisp/eshell/em-script.el
index 192a520fcb8..df1df5afe8b 100644
--- a/lisp/eshell/em-script.el
+++ b/lisp/eshell/em-script.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-script)
diff --git a/lisp/eshell/em-smart.el b/lisp/eshell/em-smart.el
index 750d7978287..aa80c6271de 100644
--- a/lisp/eshell/em-smart.el
+++ b/lisp/eshell/em-smart.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-smart)
diff --git a/lisp/eshell/em-term.el b/lisp/eshell/em-term.el
index e8a38f15218..c539f2edac9 100644
--- a/lisp/eshell/em-term.el
+++ b/lisp/eshell/em-term.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-term)
diff --git a/lisp/eshell/em-unix.el b/lisp/eshell/em-unix.el
index 62296dde73c..94f729c2873 100644
--- a/lisp/eshell/em-unix.el
+++ b/lisp/eshell/em-unix.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-unix)
diff --git a/lisp/eshell/em-xtra.el b/lisp/eshell/em-xtra.el
index 46e8da998c1..2f9eee3dd8b 100644
--- a/lisp/eshell/em-xtra.el
+++ b/lisp/eshell/em-xtra.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'em-xtra)
diff --git a/lisp/eshell/esh-arg.el b/lisp/eshell/esh-arg.el
index 0659912a58e..afd52c36b44 100644
--- a/lisp/eshell/esh-arg.el
+++ b/lisp/eshell/esh-arg.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-arg)
diff --git a/lisp/eshell/esh-cmd.el b/lisp/eshell/esh-cmd.el
index 355369d35ae..4e2466c4d61 100644
--- a/lisp/eshell/esh-cmd.el
+++ b/lisp/eshell/esh-cmd.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-cmd)
diff --git a/lisp/eshell/esh-ext.el b/lisp/eshell/esh-ext.el
index 11fecee4de0..4b984af8943 100644
--- a/lisp/eshell/esh-ext.el
+++ b/lisp/eshell/esh-ext.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-ext)
diff --git a/lisp/eshell/esh-io.el b/lisp/eshell/esh-io.el
index 8f171760ea0..a5c939e0a3f 100644
--- a/lisp/eshell/esh-io.el
+++ b/lisp/eshell/esh-io.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-io)
diff --git a/lisp/eshell/esh-maint.el b/lisp/eshell/esh-maint.el
index 4ae19603a4c..d99eba388dc 100644
--- a/lisp/eshell/esh-maint.el
+++ b/lisp/eshell/esh-maint.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/eshell/esh-mode.el b/lisp/eshell/esh-mode.el
index fb4e7ab6e3f..c37cdc92cde 100644
--- a/lisp/eshell/esh-mode.el
+++ b/lisp/eshell/esh-mode.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-mode)
diff --git a/lisp/eshell/esh-module.el b/lisp/eshell/esh-module.el
index dcbf77364f4..fc0801f3a95 100644
--- a/lisp/eshell/esh-module.el
+++ b/lisp/eshell/esh-module.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-module)
diff --git a/lisp/eshell/esh-opt.el b/lisp/eshell/esh-opt.el
index 765c5bec46b..0eabcedff76 100644
--- a/lisp/eshell/esh-opt.el
+++ b/lisp/eshell/esh-opt.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-opt)
diff --git a/lisp/eshell/esh-proc.el b/lisp/eshell/esh-proc.el
index c16e93e6872..a91cfa01bb1 100644
--- a/lisp/eshell/esh-proc.el
+++ b/lisp/eshell/esh-proc.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-proc)
diff --git a/lisp/eshell/esh-test.el b/lisp/eshell/esh-test.el
index 46c253c5833..e2972030b6f 100644
--- a/lisp/eshell/esh-test.el
+++ b/lisp/eshell/esh-test.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-test)
diff --git a/lisp/eshell/esh-util.el b/lisp/eshell/esh-util.el
index 91317300ca5..f5e20725529 100644
--- a/lisp/eshell/esh-util.el
+++ b/lisp/eshell/esh-util.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-util)
diff --git a/lisp/eshell/esh-var.el b/lisp/eshell/esh-var.el
index f1bd94baabf..2d444a3ae0e 100644
--- a/lisp/eshell/esh-var.el
+++ b/lisp/eshell/esh-var.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'esh-var)
@@ -28,7 +28,7 @@
(defgroup eshell-var nil
"Variable interpolation is introduced whenever the '$' character
appears unquoted in any argument (except when that argument is
-surrounded by single quotes) . It may be used to interpolate a
+surrounded by single quotes). It may be used to interpolate a
variable value, a subcommand, or even the result of a Lisp form."
:tag "Variable handling"
:group 'eshell)
diff --git a/lisp/eshell/eshell.el b/lisp/eshell/eshell.el
index b3307c81b4e..89b5a338ec7 100644
--- a/lisp/eshell/eshell.el
+++ b/lisp/eshell/eshell.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(provide 'eshell)
@@ -86,8 +86,8 @@ the tasks accomplished by such tools."
;;
;; You should have received a copy of the GNU General Public License
;; along with Eshell; see the file COPYING. If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
+;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+;; MA 02110-1301, USA.
;;
;;;_* How to begin
;;
diff --git a/lisp/expand.el b/lisp/expand.el
index 2e2767289ce..e0ebad49caa 100644
--- a/lisp/expand.el
+++ b/lisp/expand.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/facemenu.el b/lisp/facemenu.el
index 43c275e4a2f..55ddf663b28 100644
--- a/lisp/facemenu.el
+++ b/lisp/facemenu.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -99,7 +99,7 @@
(define-key global-map "\M-o" 'facemenu-keymap)
(defgroup facemenu nil
- "Create a face menu for interactively adding fonts to text"
+ "Create a face menu for interactively adding fonts to text."
:group 'faces
:prefix "facemenu-")
@@ -135,8 +135,7 @@ just before \"Other\" at the end."
`(modeline region secondary-selection highlight scratch-face
,(purecopy "^font-lock-") ,(purecopy "^gnus-") ,(purecopy "^message-")
,(purecopy "^ediff-") ,(purecopy "^term-") ,(purecopy "^vc-")
- ,(purecopy "^widget-") ,(purecopy "^custom-") ,(purecopy "^vm-")
- ,(purecopy "^fg:") ,(purecopy "^bg:"))
+ ,(purecopy "^widget-") ,(purecopy "^custom-") ,(purecopy "^vm-"))
"*List of faces not to include in the Face menu.
Each element may be either a symbol, which is the name of a face, or a string,
which is a regular expression to be matched against face names. Matching
@@ -366,8 +365,9 @@ typing a character to insert cancels the specification."
(region-beginning))
(if (and mark-active (not current-prefix-arg))
(region-end))))
- (facemenu-add-face (facemenu-add-new-color color 'facemenu-foreground-menu)
- start end))
+ (facemenu-set-face-from-menu
+ (facemenu-add-new-color color 'facemenu-foreground-menu)
+ start end))
;;;###autoload
(defun facemenu-set-background (color &optional start end)
@@ -388,31 +388,41 @@ typing a character to insert cancels the specification."
(region-beginning))
(if (and mark-active (not current-prefix-arg))
(region-end))))
- (facemenu-add-face (facemenu-add-new-color color 'facemenu-background-menu)
- start end))
+ (facemenu-set-face-from-menu
+ (facemenu-add-new-color color 'facemenu-background-menu)
+ start end))
;;;###autoload
(defun facemenu-set-face-from-menu (face start end)
"Set the FACE of the region or next character typed.
-This function is designed to be called from a menu; the face to use
-is the menu item's name.
+This function is designed to be called from a menu; FACE is determined
+using the event type of the menu entry. If FACE is a symbol whose
+name starts with \"fg:\" or \"bg:\", then this functions sets the
+foreground or background to the color specified by the rest of the
+symbol's name. Any other symbol is considered the name of a face.
If the region is active (normally true except in Transient Mark mode)
and there is no prefix argument, this command sets the region to the
requested face.
Otherwise, this command specifies the face for the next character
-inserted. Moving point or switching buffers before
-typing a character to insert cancels the specification."
+inserted. Moving point or switching buffers before typing a character
+to insert cancels the specification."
(interactive (list last-command-event
(if (and mark-active (not current-prefix-arg))
(region-beginning))
(if (and mark-active (not current-prefix-arg))
(region-end))))
(barf-if-buffer-read-only)
- (if start
- (facemenu-add-face face start end)
- (facemenu-add-face face)))
+ (facemenu-add-face
+ (let ((fn (symbol-name face)))
+ (if (string-match "\\`\\([fb]\\)g:\\(.+\\)" fn)
+ (list (list (if (string= (match-string 1 fn) "f")
+ :foreground
+ :background)
+ (match-string 2 fn)))
+ face))
+ start end))
;;;###autoload
(defun facemenu-set-invisible (start end)
@@ -708,7 +718,7 @@ This is called whenever you create a new face."
(defun facemenu-add-new-color (color menu)
"Add COLOR (a color name string) to the appropriate Face menu.
MENU should be `facemenu-foreground-menu' or `facemenu-background-menu'.
-Create the appropriate face and return it.
+Return the event type (a symbol) of the added menu entry.
This is called whenever you use a new color."
(let (symbol docstring)
@@ -718,30 +728,26 @@ This is called whenever you use a new color."
(setq docstring
(format "Select foreground color %s for subsequent insertion."
color)
- symbol (intern (concat "fg:" color)))
- (set-face-foreground (make-face symbol) color))
+ symbol (intern (concat "fg:" color))))
((eq menu 'facemenu-background-menu)
(setq docstring
(format "Select background color %s for subsequent insertion."
color)
- symbol (intern (concat "bg:" color)))
- (set-face-background (make-face symbol) color))
+ symbol (intern (concat "bg:" color))))
(t (error "MENU should be `facemenu-foreground-menu' or `facemenu-background-menu'")))
- (cond ((facemenu-iterate ; check if equivalent face is already in the menu
- (lambda (m) (and (listp m)
- (symbolp (car m))
- (stringp (cadr m))
- (string-equal (cadr m) color)))
- (cdr (symbol-function menu))))
- (t ; No keyboard equivalent. Figure out where to put it:
- (let ((key (vector symbol))
- (function 'facemenu-set-face-from-menu)
- (menu-val (symbol-function menu)))
- (if (and facemenu-new-faces-at-end
- (> (length menu-val) 3))
- (define-key-after menu-val key (cons color function)
- (car (nth (- (length menu-val) 3) menu-val)))
- (define-key menu key (cons color function))))))
+ (unless (facemenu-iterate ; Check if color is already in the menu.
+ (lambda (m) (and (listp m)
+ (eq (car m) symbol)))
+ (cdr (symbol-function menu)))
+ ;; Color is not in the menu. Figure out where to put it.
+ (let ((key (vector symbol))
+ (function 'facemenu-set-face-from-menu)
+ (menu-val (symbol-function menu)))
+ (if (and facemenu-new-faces-at-end
+ (> (length menu-val) 3))
+ (define-key-after menu-val key (cons color function)
+ (car (nth (- (length menu-val) 3) menu-val)))
+ (define-key menu key (cons color function)))))
symbol))
(defun facemenu-complete-face-list (&optional oldlist)
diff --git a/lisp/faces.el b/lisp/faces.el
index bcdef05e8ec..0b301a2af61 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -869,7 +869,10 @@ Otherwise, return a single face."
(aliasfaces nil)
(nonaliasfaces nil)
faces)
- ;; Make a list of the named faces that the `face' property uses.
+ ;; Try to get a face name from the buffer.
+ (if (memq (intern-soft (thing-at-point 'symbol)) (face-list))
+ (setq faces (list (intern-soft (thing-at-point 'symbol)))))
+ ;; Add the named faces that the `face' property uses.
(if (and (listp faceprop)
;; Don't treat an attribute spec as a list of faces.
(not (keywordp (car faceprop)))
@@ -879,10 +882,6 @@ Otherwise, return a single face."
(push f faces)))
(if (symbolp faceprop)
(push faceprop faces)))
- ;; If there are none, try to get a face name from the buffer.
- (if (and (null faces)
- (memq (intern-soft (thing-at-point 'symbol)) (face-list)))
- (setq faces (list (intern-soft (thing-at-point 'symbol)))))
;; Build up the completion tables.
(mapatoms (lambda (s)
@@ -896,22 +895,27 @@ Otherwise, return a single face."
(unless multiple
(if faces
(setq faces (list (car faces)))))
+ (require 'crm)
(let* ((input
;; Read the input.
- (completing-read
+ (completing-read-multiple
(if (or faces string-describing-default)
(format "%s (default %s): " prompt
- (if faces (mapconcat 'symbol-name faces ", ")
+ (if faces (mapconcat 'symbol-name faces ",")
string-describing-default))
(format "%s: " prompt))
- (complete-in-turn nonaliasfaces aliasfaces) nil t))
+ (complete-in-turn nonaliasfaces aliasfaces)
+ nil t nil nil
+ (if faces (mapconcat 'symbol-name faces ","))))
;; Canonicalize the output.
(output
- (if (equal input "")
- faces
- (if (stringp input)
- (list (intern input))
- input))))
+ (cond ((or (equal input "") (equal input '("")))
+ faces)
+ ((stringp input)
+ (mapcar 'intern (split-string input ", *" t)))
+ ((listp input)
+ (mapcar 'intern input))
+ (input))))
;; Return either a list of faces or just one face.
(if multiple
output
@@ -1891,7 +1895,7 @@ created."
:group 'basic-faces)
(defface vertical-border
- '((default :inherit mode-line-inactive))
+ '((((type tty)) :inherit mode-line-inactive))
"Face used for vertical window dividers on ttys."
:version "22.1"
:group 'modeline
diff --git a/lisp/ffap.el b/lisp/ffap.el
index 89e04c0f2bd..e30b859a588 100644
--- a/lisp/ffap.el
+++ b/lisp/ffap.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/filecache.el b/lisp/filecache.el
index 90287ba5eef..9fccba4b84b 100644
--- a/lisp/filecache.el
+++ b/lisp/filecache.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/files.el b/lisp/files.el
index 2504dd2d129..1840d3e5f06 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/filesets.el b/lisp/filesets.el
index 569207e27c5..009e6797a4d 100644
--- a/lisp/filesets.el
+++ b/lisp/filesets.el
@@ -19,8 +19,8 @@
;; GNU General Public License for more details.
;; A copy of the GNU General Public License can be obtained from this
-;; program's author or from the Free Software Foundation, Inc., 675 Mass
-;; Ave, Cambridge, MA 02139, USA.
+;; program's author or from the Free Software Foundation, Inc.,
+;; 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
(defvar filesets-version "1.8.4")
(defvar filesets-homepage
diff --git a/lisp/find-dired.el b/lisp/find-dired.el
index d52305a500a..e1b4ce65e71 100644
--- a/lisp/find-dired.el
+++ b/lisp/find-dired.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/find-file.el b/lisp/find-file.el
index 26c5cccf8e5..d741ed7d845 100644
--- a/lisp/find-file.el
+++ b/lisp/find-file.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -946,18 +946,11 @@ and the name of the file passed in."
(defun ff-which-function-are-we-in ()
"Return the name of the function whose definition/declaration point is in.
Also remember that name in `ff-function-name'."
-
- (setq ff-function-name nil)
-
- (save-excursion
- (if (re-search-backward ada-procedure-start-regexp nil t)
- (setq ff-function-name (buffer-substring (match-beginning 0)
- (match-end 0)))
- ; we didn't find a procedure start, perhaps there is a package
- (if (re-search-backward ada-package-start-regexp nil t)
- (setq ff-function-name (buffer-substring (match-beginning 0)
- (match-end 0)))
- ))))
+ (setq ff-function-name
+ (save-excursion
+ (if (or (re-search-backward ada-procedure-start-regexp nil t)
+ (re-search-backward ada-package-start-regexp nil t))
+ (match-string 0)))))
;; bind with (setq ff-post-load-hook 'ff-set-point-accordingly)
;;
@@ -971,5 +964,5 @@ That name was previously determined by `ff-which-function-are-we-in'."
(provide 'find-file)
-;;; arch-tag: 5a2fc49e-3b0a-4708-9acf-fb14e471a97a
+;; arch-tag: 5a2fc49e-3b0a-4708-9acf-fb14e471a97a
;;; find-file.el ends here
diff --git a/lisp/find-lisp.el b/lisp/find-lisp.el
index f8130043177..35b24af3d6b 100644
--- a/lisp/find-lisp.el
+++ b/lisp/find-lisp.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/finder.el b/lisp/finder.el
index fb327524793..01052101e6d 100644
--- a/lisp/finder.el
+++ b/lisp/finder.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/flow-ctrl.el b/lisp/flow-ctrl.el
index 63654572f9b..0bfc5c7e92e 100644
--- a/lisp/flow-ctrl.el
+++ b/lisp/flow-ctrl.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/foldout.el b/lisp/foldout.el
index 10f3cecd3ee..9c6ef395ab5 100644
--- a/lisp/foldout.el
+++ b/lisp/foldout.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/follow.el b/lisp/follow.el
index 74dc12f8881..09b408cb452 100644
--- a/lisp/follow.el
+++ b/lisp/follow.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/font-core.el b/lisp/font-core.el
index a78e21a762f..318191e1757 100644
--- a/lisp/font-core.el
+++ b/lisp/font-core.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index da838981576..d6292fe3c14 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -1825,15 +1825,15 @@ Sets various variables using `font-lock-defaults' (or, if nil, using
"Font Lock mode face used to highlight preprocessor directives."
:group 'font-lock-highlighting-faces)
-(defface font-lock-regexp-backslash
+(defface font-lock-regexp-grouping-backslash
'((((class color) (min-colors 16)) :inherit escape-glyph)
(t :inherit bold))
- "Font Lock mode face used to highlight a backslash in Lisp regexps."
+ "Font Lock mode face for backslashes in Lisp regexp grouping constructs."
:group 'font-lock-highlighting-faces)
-(defface font-lock-regexp-backslash-construct
+(defface font-lock-regexp-grouping-construct
'((t :inherit bold))
- "Font Lock mode face used to highlight `\' constructs in Lisp regexps."
+ "Font Lock mode face used to highlight grouping constructs in Lisp regexps."
:group 'font-lock-highlighting-faces)
;;; End of Colour etc. support.
@@ -2083,22 +2083,22 @@ This function could be MATCHER in a MATCH-ANCHORED `font-lock-keywords' item."
("\\<:\\sw+\\>" 0 font-lock-builtin-face)
;; ELisp and CLisp `&' keywords as types.
("\\&\\sw+\\>" . font-lock-type-face)
- ;; Make regexp grouping constructs bold, so they stand out, but only
- ;; in strings.
+ ;; ELisp regexp grouping constructs
((lambda (bound)
- (if (re-search-forward "\\(\\\\\\\\\\)\\((\\(?:?:\\)?\\|[|)]\\)" bound t)
- (let ((face (get-text-property (1- (point)) 'face)))
- (if (listp face)
- (memq 'font-lock-string-face face)
- (eq 'font-lock-string-face face)))))
- (1 'font-lock-regexp-backslash prepend)
- (2 'font-lock-regexp-backslash-construct prepend))
-
- ;; Underline innermost grouping, so that you can more easily see what
- ;; belongs together. 2005-05-12: Font-lock can go into an
- ;; unbreakable endless loop on this -- something's broken.
- ;;("[\\][\\][(]\\(?:\\?:\\)?\\(\\(?:[^\\\"]+\\|[\\]\\(?:[^\\]\\|[\\][^(]\\)\\)+?\\)[\\][\\][)]"
- ;;1 'underline prepend)
+ (catch 'found
+ ;; The following loop is needed to continue searching after matches
+ ;; that do not occur in strings. The associated regexp matches one
+ ;; of `\\\\' `\\(' `\\(?:' `\\|' `\\)'. `\\\\' has been included to
+ ;; avoid highlighting, for example, `\\(' in `\\\\('.
+ (while (re-search-forward "\\(\\\\\\\\\\)\\(?:\\(\\\\\\\\\\)\\|\\((\\(?:\\?:\\)?\\|[|)]\\)\\)" bound t)
+ (unless (match-beginning 2)
+ (let ((face (get-text-property (1- (point)) 'face)))
+ (when (or (and (listp face)
+ (memq 'font-lock-string-face face))
+ (eq 'font-lock-string-face face))
+ (throw 'found t)))))))
+ (1 'font-lock-regexp-grouping-backslash prepend)
+ (3 'font-lock-regexp-grouping-construct prepend))
;;; This is too general -- rms.
;;; A user complained that he has functions whose names start with `do'
;;; and that they get the wrong color.
diff --git a/lisp/format.el b/lisp/format.el
index eff0475a6c5..6667701ffe7 100644
--- a/lisp/format.el
+++ b/lisp/format.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/forms.el b/lisp/forms.el
index d1c5b0c5fd9..7b41698cf4f 100644
--- a/lisp/forms.el
+++ b/lisp/forms.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/frame.el b/lisp/frame.el
index 6b69dead414..088a7a9b622 100644
--- a/lisp/frame.el
+++ b/lisp/frame.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/fringe.el b/lisp/fringe.el
index 3c554f1ca55..71914bd95f3 100644
--- a/lisp/fringe.el
+++ b/lisp/fringe.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/generic-x.el b/lisp/generic-x.el
index fcf5b6c0e1d..55afcc73e62 100644
--- a/lisp/generic-x.el
+++ b/lisp/generic-x.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 1f305f3adeb..053ce91dad9 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,38 @@
+2005-07-04 Lute Kamstra <lute@gnu.org>
+
+ Update FSF's address in GPL notices.
+
+2005-07-04 Juanma Barranquero <lekktu@gmail.com>
+
+ * gnus.el (gnus-exit):
+ * gnus-group.el (gnus-group-icons):
+ * nnmail.el (nnmail-prepare): Fix typos in docstrings.
+
+ * gnus-nocem.el (gnus-nocem):
+ * message.el (message-various, message-buffers, message-sending)
+ (message-interface, message-forwarding, message-insertion)
+ (message-headers, message-news, message-mail):
+ * pgg-gpg.el (pgg-gpg):
+ * pgg-parse.el (pgg-parse):
+ * pgg-pgp.el (pgg-pgp):
+ * pgg-pgp5.el (pgg-pgp5):
+ * pop3.el (pop3): Finish `defgroup' description with period.
+
+2005-07-01 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-art.el (article-display-face): Improve the efficiency.
+ (article-display-x-face): Ditto; remove grey x-face stuff.
+
+2005-06-30 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-art.el (article-display-face): Correct the position in
+ which Faces are inserted; use dolist.
+
+2005-06-29 Didier Verna <didier@xemacs.org>
+
+ * gnus-art.el (article-display-face): Display faces in correct
+ order.
+
2005-06-29 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus-nocem.el (gnus-nocem-verifyer): Default to pgg-verify.
diff --git a/lisp/gnus/binhex.el b/lisp/gnus/binhex.el
index fe8d99dcc02..b662fc391d3 100644
--- a/lisp/gnus/binhex.el
+++ b/lisp/gnus/binhex.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/canlock.el b/lisp/gnus/canlock.el
index 126ec0c60ca..ae679d9fb7d 100644
--- a/lisp/gnus/canlock.el
+++ b/lisp/gnus/canlock.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/compface.el b/lisp/gnus/compface.el
index fc2ac46c581..ab6ce23362e 100644
--- a/lisp/gnus/compface.el
+++ b/lisp/gnus/compface.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/deuglify.el b/lisp/gnus/deuglify.el
index cae18951f7e..98e22e04eaa 100644
--- a/lisp/gnus/deuglify.el
+++ b/lisp/gnus/deuglify.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/dig.el b/lisp/gnus/dig.el
index fb0df03f7aa..6bb2ab91050 100644
--- a/lisp/gnus/dig.el
+++ b/lisp/gnus/dig.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/dns.el b/lisp/gnus/dns.el
index b11d2ca03d0..37a110e4679 100644
--- a/lisp/gnus/dns.el
+++ b/lisp/gnus/dns.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/earcon.el b/lisp/gnus/earcon.el
index c595de0775e..051a9799c95 100644
--- a/lisp/gnus/earcon.el
+++ b/lisp/gnus/earcon.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; This file provides access to sound effects in Gnus.
diff --git a/lisp/gnus/flow-fill.el b/lisp/gnus/flow-fill.el
index f39ba9edbbe..a18805952b0 100644
--- a/lisp/gnus/flow-fill.el
+++ b/lisp/gnus/flow-fill.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/format-spec.el b/lisp/gnus/format-spec.el
index 05a7f3b51d0..d287af6f780 100644
--- a/lisp/gnus/format-spec.el
+++ b/lisp/gnus/format-spec.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-agent.el b/lisp/gnus/gnus-agent.el
index 9f4525e1ae2..49126e4bdb5 100644
--- a/lisp/gnus/gnus-agent.el
+++ b/lisp/gnus/gnus-agent.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index b92ce8616d5..fd032e9964d 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -2123,31 +2123,31 @@ unfolded."
;; read-only.
(if (and wash-face-p (memq 'face gnus-article-wash-types))
(gnus-delete-images 'face)
- (let (face faces)
- (save-excursion
+ (let (face faces from)
+ (save-current-buffer
(when (and wash-face-p
- (progn
- (goto-char (point-min))
- (not (re-search-forward "^Face:[\t ]*" nil t)))
- (gnus-buffer-live-p gnus-original-article-buffer))
+ (gnus-buffer-live-p gnus-original-article-buffer)
+ (not (re-search-forward "^Face:[\t ]*" nil t)))
(set-buffer gnus-original-article-buffer))
(save-restriction
(mail-narrow-to-head)
(while (gnus-article-goto-header "Face")
(push (mail-header-field-value) faces))))
- (while (setq face (pop faces))
- (let ((png (gnus-convert-face-to-png face))
- image)
- (when png
- (setq image (gnus-create-image png 'png t))
- (gnus-article-goto-header "from")
- (when (bobp)
- (insert "From: [no `from' set]\n")
- (forward-char -17))
- (gnus-add-wash-type 'face)
- (gnus-add-image 'face image)
- (gnus-put-image image nil 'face))))))
- )))
+ (when faces
+ (goto-char (point-min))
+ (let ((from (gnus-article-goto-header "from"))
+ png image)
+ (unless from
+ (insert "From:")
+ (setq from (point))
+ (insert "[no `from' set]\n"))
+ (while faces
+ (when (setq png (gnus-convert-face-to-png (pop faces)))
+ (setq image (gnus-create-image png 'png t))
+ (goto-char from)
+ (gnus-add-wash-type 'face)
+ (gnus-add-image 'face image)
+ (gnus-put-image image nil 'face))))))))))
(defun article-display-x-face (&optional force)
"Look for an X-Face header and display it if present."
@@ -2164,13 +2164,10 @@ unfolded."
(gnus-delete-images 'xface)
;; Display X-Faces.
(let (x-faces from face)
- (save-excursion
+ (save-current-buffer
(when (and wash-face-p
- (progn
- (goto-char (point-min))
- (not (re-search-forward
- "^X-Face\\(-[0-9]+\\)?:[\t ]*" nil t)))
- (gnus-buffer-live-p gnus-original-article-buffer))
+ (gnus-buffer-live-p gnus-original-article-buffer)
+ (not (re-search-forward "^X-Face:[\t ]*" nil t)))
;; If type `W f', use gnus-original-article-buffer,
;; otherwise use the current buffer because displaying
;; RFC822 parts calls this function too.
@@ -2184,35 +2181,36 @@ unfolded."
;; single external face.
(when (stringp gnus-article-x-face-command)
(setq x-faces (list (car x-faces))))
- (while (and (setq face (pop x-faces))
- gnus-article-x-face-command
- (or force
- ;; Check whether this face is censored.
- (not gnus-article-x-face-too-ugly)
- (and gnus-article-x-face-too-ugly from
- (not (string-match gnus-article-x-face-too-ugly
- from)))))
- ;; We display the face.
- (cond ((stringp gnus-article-x-face-command)
- ;; The command is a string, so we interpret the command
- ;; as a, well, command, and fork it off.
- (let ((process-connection-type nil))
- (gnus-set-process-query-on-exit-flag
- (start-process
- "article-x-face" nil shell-file-name
- shell-command-switch gnus-article-x-face-command)
- nil)
- (with-temp-buffer
- (insert face)
- (process-send-region "article-x-face"
- (point-min) (point-max)))
- (process-send-eof "article-x-face")))
- ((functionp gnus-article-x-face-command)
- ;; The command is a lisp function, so we call it.
- (funcall gnus-article-x-face-command face))
- (t
- (error "%s is not a function"
- gnus-article-x-face-command)))))))))
+ (when (and x-faces
+ gnus-article-x-face-command
+ (or force
+ ;; Check whether this face is censored.
+ (not gnus-article-x-face-too-ugly)
+ (and from
+ (not (string-match gnus-article-x-face-too-ugly
+ from)))))
+ (while (setq face (pop x-faces))
+ ;; We display the face.
+ (cond ((stringp gnus-article-x-face-command)
+ ;; The command is a string, so we interpret the command
+ ;; as a, well, command, and fork it off.
+ (let ((process-connection-type nil))
+ (gnus-set-process-query-on-exit-flag
+ (start-process
+ "article-x-face" nil shell-file-name
+ shell-command-switch gnus-article-x-face-command)
+ nil)
+ (with-temp-buffer
+ (insert face)
+ (process-send-region "article-x-face"
+ (point-min) (point-max)))
+ (process-send-eof "article-x-face")))
+ ((functionp gnus-article-x-face-command)
+ ;; The command is a lisp function, so we call it.
+ (funcall gnus-article-x-face-command face))
+ (t
+ (error "%s is not a function"
+ gnus-article-x-face-command))))))))))
(defun article-decode-mime-words ()
"Decode all MIME-encoded words in the article."
diff --git a/lisp/gnus/gnus-async.el b/lisp/gnus/gnus-async.el
index fef7228d13b..1c279e69a26 100644
--- a/lisp/gnus/gnus-async.el
+++ b/lisp/gnus/gnus-async.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-audio.el b/lisp/gnus/gnus-audio.el
index 1171713f358..79e1fcc4905 100644
--- a/lisp/gnus/gnus-audio.el
+++ b/lisp/gnus/gnus-audio.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-bcklg.el b/lisp/gnus/gnus-bcklg.el
index e6564c45b33..54d62f03276 100644
--- a/lisp/gnus/gnus-bcklg.el
+++ b/lisp/gnus/gnus-bcklg.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-cache.el b/lisp/gnus/gnus-cache.el
index 55544d1525c..66217699555 100644
--- a/lisp/gnus/gnus-cache.el
+++ b/lisp/gnus/gnus-cache.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-cite.el b/lisp/gnus/gnus-cite.el
index 8611ed4bbe9..ab3612a09f9 100644
--- a/lisp/gnus/gnus-cite.el
+++ b/lisp/gnus/gnus-cite.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-cus.el b/lisp/gnus/gnus-cus.el
index 1a595a6ab7a..32dc8bcf1b6 100644
--- a/lisp/gnus/gnus-cus.el
+++ b/lisp/gnus/gnus-cus.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-delay.el b/lisp/gnus/gnus-delay.el
index e0c673d1bf8..8e00efb1f0c 100644
--- a/lisp/gnus/gnus-delay.el
+++ b/lisp/gnus/gnus-delay.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-demon.el b/lisp/gnus/gnus-demon.el
index dbb9d82ba5f..3d6b44c8b7b 100644
--- a/lisp/gnus/gnus-demon.el
+++ b/lisp/gnus/gnus-demon.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-diary.el b/lisp/gnus/gnus-diary.el
index c34c3b6df88..c93f8a8ff7c 100644
--- a/lisp/gnus/gnus-diary.el
+++ b/lisp/gnus/gnus-diary.el
@@ -22,7 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
-;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+;; MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-dired.el b/lisp/gnus/gnus-dired.el
index b029ab5d114..aa54a7eaedc 100644
--- a/lisp/gnus/gnus-dired.el
+++ b/lisp/gnus/gnus-dired.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-draft.el b/lisp/gnus/gnus-draft.el
index 15bb3bc3544..2bc212f6221 100644
--- a/lisp/gnus/gnus-draft.el
+++ b/lisp/gnus/gnus-draft.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-dup.el b/lisp/gnus/gnus-dup.el
index 8fdd97f8847..6a66246b700 100644
--- a/lisp/gnus/gnus-dup.el
+++ b/lisp/gnus/gnus-dup.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-eform.el b/lisp/gnus/gnus-eform.el
index b1e83eab7ec..cebbb398f21 100644
--- a/lisp/gnus/gnus-eform.el
+++ b/lisp/gnus/gnus-eform.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-ems.el b/lisp/gnus/gnus-ems.el
index 729b0013dc2..f14dac4e5fb 100644
--- a/lisp/gnus/gnus-ems.el
+++ b/lisp/gnus/gnus-ems.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-fun.el b/lisp/gnus/gnus-fun.el
index 6ece8f1911c..fcbc05cc2e6 100644
--- a/lisp/gnus/gnus-fun.el
+++ b/lisp/gnus/gnus-fun.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-gl.el b/lisp/gnus/gnus-gl.el
index 12c36209b5d..c1b52435bf9 100644
--- a/lisp/gnus/gnus-gl.el
+++ b/lisp/gnus/gnus-gl.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el
index 45597b60e88..0bfbc46cf5d 100644
--- a/lisp/gnus/gnus-group.el
+++ b/lisp/gnus/gnus-group.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -382,7 +382,7 @@ ticked: The number of ticked articles."
:type 'character)
(defgroup gnus-group-icons nil
- "Add Icons to your group buffer. "
+ "Add Icons to your group buffer."
:group 'gnus-group-visual)
(defcustom gnus-group-icon-list
diff --git a/lisp/gnus/gnus-int.el b/lisp/gnus/gnus-int.el
index 32ea9919e86..3cb4cb61539 100644
--- a/lisp/gnus/gnus-int.el
+++ b/lisp/gnus/gnus-int.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-kill.el b/lisp/gnus/gnus-kill.el
index e35ee0858b4..9bffd6ebc00 100644
--- a/lisp/gnus/gnus-kill.el
+++ b/lisp/gnus/gnus-kill.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-logic.el b/lisp/gnus/gnus-logic.el
index 0baf7050598..2d7d701c311 100644
--- a/lisp/gnus/gnus-logic.el
+++ b/lisp/gnus/gnus-logic.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-mh.el b/lisp/gnus/gnus-mh.el
index 75ccab4e706..b4c502e9e06 100644
--- a/lisp/gnus/gnus-mh.el
+++ b/lisp/gnus/gnus-mh.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-ml.el b/lisp/gnus/gnus-ml.el
index de0923fcdf3..5a2b3b9ae0a 100644
--- a/lisp/gnus/gnus-ml.el
+++ b/lisp/gnus/gnus-ml.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-mlspl.el b/lisp/gnus/gnus-mlspl.el
index 8ef56bbd960..9b8d2d87e2e 100644
--- a/lisp/gnus/gnus-mlspl.el
+++ b/lisp/gnus/gnus-mlspl.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-move.el b/lisp/gnus/gnus-move.el
index 25ed57b75ba..2f5b4853d5b 100644
--- a/lisp/gnus/gnus-move.el
+++ b/lisp/gnus/gnus-move.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el
index a71dce313d6..8cc8bfe5dd1 100644
--- a/lisp/gnus/gnus-msg.el
+++ b/lisp/gnus/gnus-msg.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-nocem.el b/lisp/gnus/gnus-nocem.el
index cd51efcf100..a59c33f5e48 100644
--- a/lisp/gnus/gnus-nocem.el
+++ b/lisp/gnus/gnus-nocem.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -37,7 +37,7 @@
(require 'gnus-range)
(defgroup gnus-nocem nil
- "NoCeM pseudo-cancellation treatment"
+ "NoCeM pseudo-cancellation treatment."
:group 'gnus-score)
(defcustom gnus-nocem-groups
diff --git a/lisp/gnus/gnus-picon.el b/lisp/gnus/gnus-picon.el
index 55f886f4c1f..40ac294d268 100644
--- a/lisp/gnus/gnus-picon.el
+++ b/lisp/gnus/gnus-picon.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-range.el b/lisp/gnus/gnus-range.el
index d2442c63a42..286d9e7c772 100644
--- a/lisp/gnus/gnus-range.el
+++ b/lisp/gnus/gnus-range.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-registry.el b/lisp/gnus/gnus-registry.el
index 3b7d6e43b43..be29e96e102 100644
--- a/lisp/gnus/gnus-registry.el
+++ b/lisp/gnus/gnus-registry.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-salt.el b/lisp/gnus/gnus-salt.el
index f3ad1546993..8fbe465c76c 100644
--- a/lisp/gnus/gnus-salt.el
+++ b/lisp/gnus/gnus-salt.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-score.el b/lisp/gnus/gnus-score.el
index a2c3b249343..0fb853b868e 100644
--- a/lisp/gnus/gnus-score.el
+++ b/lisp/gnus/gnus-score.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-setup.el b/lisp/gnus/gnus-setup.el
index 11ecee18bbc..3b35eddb1fc 100644
--- a/lisp/gnus/gnus-setup.el
+++ b/lisp/gnus/gnus-setup.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; My head is starting to spin with all the different mail/news packages.
diff --git a/lisp/gnus/gnus-sieve.el b/lisp/gnus/gnus-sieve.el
index db9c8c91f5d..75b2fa12b0a 100644
--- a/lisp/gnus/gnus-sieve.el
+++ b/lisp/gnus/gnus-sieve.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-soup.el b/lisp/gnus/gnus-soup.el
index 48a8fc0c380..98cc0ea285e 100644
--- a/lisp/gnus/gnus-soup.el
+++ b/lisp/gnus/gnus-soup.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-spec.el b/lisp/gnus/gnus-spec.el
index 39b87727279..84c06975205 100644
--- a/lisp/gnus/gnus-spec.el
+++ b/lisp/gnus/gnus-spec.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-srvr.el b/lisp/gnus/gnus-srvr.el
index cd7161aca0b..08527a5ea44 100644
--- a/lisp/gnus/gnus-srvr.el
+++ b/lisp/gnus/gnus-srvr.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el
index 7c85409fb31..6038e93bbdf 100644
--- a/lisp/gnus/gnus-start.el
+++ b/lisp/gnus/gnus-start.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index a37960c8b45..a61f3df6293 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-topic.el b/lisp/gnus/gnus-topic.el
index 548bfa92c2c..95a2e1ad56a 100644
--- a/lisp/gnus/gnus-topic.el
+++ b/lisp/gnus/gnus-topic.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-undo.el b/lisp/gnus/gnus-undo.el
index fcb3616330d..f09445827d1 100644
--- a/lisp/gnus/gnus-undo.el
+++ b/lisp/gnus/gnus-undo.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-util.el b/lisp/gnus/gnus-util.el
index 6171d42834e..da14d52161b 100644
--- a/lisp/gnus/gnus-util.el
+++ b/lisp/gnus/gnus-util.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-uu.el b/lisp/gnus/gnus-uu.el
index a705f230241..5bdd17f84c1 100644
--- a/lisp/gnus/gnus-uu.el
+++ b/lisp/gnus/gnus-uu.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-vm.el b/lisp/gnus/gnus-vm.el
index d23777dc454..240d297f3a5 100644
--- a/lisp/gnus/gnus-vm.el
+++ b/lisp/gnus/gnus-vm.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus-win.el b/lisp/gnus/gnus-win.el
index 43fe77267c2..9710b10ff2f 100644
--- a/lisp/gnus/gnus-win.el
+++ b/lisp/gnus/gnus-win.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el
index afba1ea427e..710c2c75025 100644
--- a/lisp/gnus/gnus.el
+++ b/lisp/gnus/gnus.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -273,7 +273,7 @@ is restarted, and sometimes reloaded."
:group 'gnus)
(defgroup gnus-exit nil
- "Exiting gnus."
+ "Exiting Gnus."
:link '(custom-manual "(gnus)Exiting Gnus")
:group 'gnus)
diff --git a/lisp/gnus/hex-util.el b/lisp/gnus/hex-util.el
index bdaf197c8ce..4458f42a490 100644
--- a/lisp/gnus/hex-util.el
+++ b/lisp/gnus/hex-util.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/html2text.el b/lisp/gnus/html2text.el
index 81d8f5d8cc3..d29a3cf5da7 100644
--- a/lisp/gnus/html2text.el
+++ b/lisp/gnus/html2text.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/ietf-drums.el b/lisp/gnus/ietf-drums.el
index f8837076b56..4e95b8aad42 100644
--- a/lisp/gnus/ietf-drums.el
+++ b/lisp/gnus/ietf-drums.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/imap.el b/lisp/gnus/imap.el
index 48d7c0f6eb6..7d3fb46154d 100644
--- a/lisp/gnus/imap.el
+++ b/lisp/gnus/imap.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mail-parse.el b/lisp/gnus/mail-parse.el
index 11f3ed9bf96..086ab5c4f84 100644
--- a/lisp/gnus/mail-parse.el
+++ b/lisp/gnus/mail-parse.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mail-prsvr.el b/lisp/gnus/mail-prsvr.el
index fc80459155a..d7e07ff97bb 100644
--- a/lisp/gnus/mail-prsvr.el
+++ b/lisp/gnus/mail-prsvr.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mail-source.el b/lisp/gnus/mail-source.el
index e9cee4fa6f2..58a3e63ab75 100644
--- a/lisp/gnus/mail-source.el
+++ b/lisp/gnus/mail-source.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mailcap.el b/lisp/gnus/mailcap.el
index d285e342370..d044adebdb9 100644
--- a/lisp/gnus/mailcap.el
+++ b/lisp/gnus/mailcap.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index ce711aab6a1..931ac30e8a6 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -62,46 +62,46 @@
(put 'user-full-name 'custom-type 'string)
(defgroup message-various nil
- "Various Message Variables"
+ "Various Message Variables."
:link '(custom-manual "(message)Various Message Variables")
:group 'message)
(defgroup message-buffers nil
- "Message Buffers"
+ "Message Buffers."
:link '(custom-manual "(message)Message Buffers")
:group 'message)
(defgroup message-sending nil
- "Message Sending"
+ "Message Sending."
:link '(custom-manual "(message)Sending Variables")
:group 'message)
(defgroup message-interface nil
- "Message Interface"
+ "Message Interface."
:link '(custom-manual "(message)Interface")
:group 'message)
(defgroup message-forwarding nil
- "Message Forwarding"
+ "Message Forwarding."
:link '(custom-manual "(message)Forwarding")
:group 'message-interface)
(defgroup message-insertion nil
- "Message Insertion"
+ "Message Insertion."
:link '(custom-manual "(message)Insertion")
:group 'message)
(defgroup message-headers nil
- "Message Headers"
+ "Message Headers."
:link '(custom-manual "(message)Message Headers")
:group 'message)
(defgroup message-news nil
- "Composing News Messages"
+ "Composing News Messages."
:group 'message)
(defgroup message-mail nil
- "Composing Mail Messages"
+ "Composing Mail Messages."
:group 'message)
(defgroup message-faces nil
diff --git a/lisp/gnus/messcompat.el b/lisp/gnus/messcompat.el
index bc8be178ea8..3c6af7d9e8d 100644
--- a/lisp/gnus/messcompat.el
+++ b/lisp/gnus/messcompat.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-bodies.el b/lisp/gnus/mm-bodies.el
index 34804b867d0..3e9766c3d41 100644
--- a/lisp/gnus/mm-bodies.el
+++ b/lisp/gnus/mm-bodies.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el
index 10c7ea16db4..601843dcf55 100644
--- a/lisp/gnus/mm-decode.el
+++ b/lisp/gnus/mm-decode.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-encode.el b/lisp/gnus/mm-encode.el
index 63c963b49c1..43eb619368e 100644
--- a/lisp/gnus/mm-encode.el
+++ b/lisp/gnus/mm-encode.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-extern.el b/lisp/gnus/mm-extern.el
index f6ec883de94..6792d0de0b4 100644
--- a/lisp/gnus/mm-extern.el
+++ b/lisp/gnus/mm-extern.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-partial.el b/lisp/gnus/mm-partial.el
index 693e8e9278d..e8dd5596225 100644
--- a/lisp/gnus/mm-partial.el
+++ b/lisp/gnus/mm-partial.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-url.el b/lisp/gnus/mm-url.el
index ff7608e4a24..517263543cd 100644
--- a/lisp/gnus/mm-url.el
+++ b/lisp/gnus/mm-url.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-util.el b/lisp/gnus/mm-util.el
index c2e95b5de66..988fd969425 100644
--- a/lisp/gnus/mm-util.el
+++ b/lisp/gnus/mm-util.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-uu.el b/lisp/gnus/mm-uu.el
index 5152d7138fb..ad40ffb4564 100644
--- a/lisp/gnus/mm-uu.el
+++ b/lisp/gnus/mm-uu.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mm-view.el b/lisp/gnus/mm-view.el
index 2b58d103ade..9b0d8217476 100644
--- a/lisp/gnus/mm-view.el
+++ b/lisp/gnus/mm-view.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mml-sec.el b/lisp/gnus/mml-sec.el
index cdfc378bab3..11f076c8035 100644
--- a/lisp/gnus/mml-sec.el
+++ b/lisp/gnus/mml-sec.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mml-smime.el b/lisp/gnus/mml-smime.el
index 3313d6a4118..788fd80003e 100644
--- a/lisp/gnus/mml-smime.el
+++ b/lisp/gnus/mml-smime.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el
index 0cc2b0814f4..9721a054f06 100644
--- a/lisp/gnus/mml.el
+++ b/lisp/gnus/mml.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mml1991.el b/lisp/gnus/mml1991.el
index 640348c1387..8a9cce093de 100644
--- a/lisp/gnus/mml1991.el
+++ b/lisp/gnus/mml1991.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/mml2015.el b/lisp/gnus/mml2015.el
index 5f53d87bfef..d403444e840 100644
--- a/lisp/gnus/mml2015.el
+++ b/lisp/gnus/mml2015.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnagent.el b/lisp/gnus/nnagent.el
index a17e92ce001..257148dcd76 100644
--- a/lisp/gnus/nnagent.el
+++ b/lisp/gnus/nnagent.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnbabyl.el b/lisp/gnus/nnbabyl.el
index dae51fca50b..449a7dbafcc 100644
--- a/lisp/gnus/nnbabyl.el
+++ b/lisp/gnus/nnbabyl.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nndb.el b/lisp/gnus/nndb.el
index fe4072c5d35..4174728f47d 100644
--- a/lisp/gnus/nndb.el
+++ b/lisp/gnus/nndb.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nndiary.el b/lisp/gnus/nndiary.el
index e4b087eec2e..2228b6a2de8 100644
--- a/lisp/gnus/nndiary.el
+++ b/lisp/gnus/nndiary.el
@@ -22,7 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
-;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+;; MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nndir.el b/lisp/gnus/nndir.el
index b72a152368f..880df5166f9 100644
--- a/lisp/gnus/nndir.el
+++ b/lisp/gnus/nndir.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nndoc.el b/lisp/gnus/nndoc.el
index a7948365680..4fab99fd84d 100644
--- a/lisp/gnus/nndoc.el
+++ b/lisp/gnus/nndoc.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nndraft.el b/lisp/gnus/nndraft.el
index 2fc65868b9c..9a93e5aa072 100644
--- a/lisp/gnus/nndraft.el
+++ b/lisp/gnus/nndraft.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nneething.el b/lisp/gnus/nneething.el
index 61f8eefbf17..db7a5fcc2aa 100644
--- a/lisp/gnus/nneething.el
+++ b/lisp/gnus/nneething.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnfolder.el b/lisp/gnus/nnfolder.el
index 20cdb3da273..07697000eeb 100644
--- a/lisp/gnus/nnfolder.el
+++ b/lisp/gnus/nnfolder.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nngateway.el b/lisp/gnus/nngateway.el
index f6903693dad..d8e3e0a638b 100644
--- a/lisp/gnus/nngateway.el
+++ b/lisp/gnus/nngateway.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnheader.el b/lisp/gnus/nnheader.el
index 952d936bd0d..e793b5ef8f0 100644
--- a/lisp/gnus/nnheader.el
+++ b/lisp/gnus/nnheader.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el
index b09f5d19111..698f7cf9a3e 100644
--- a/lisp/gnus/nnimap.el
+++ b/lisp/gnus/nnimap.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnkiboze.el b/lisp/gnus/nnkiboze.el
index f6766836fe1..dd5951cf536 100644
--- a/lisp/gnus/nnkiboze.el
+++ b/lisp/gnus/nnkiboze.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnlistserv.el b/lisp/gnus/nnlistserv.el
index 770bb02d01e..432a259b78d 100644
--- a/lisp/gnus/nnlistserv.el
+++ b/lisp/gnus/nnlistserv.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el
index affe72c75c8..de4247dc55e 100644
--- a/lisp/gnus/nnmail.el
+++ b/lisp/gnus/nnmail.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -49,7 +49,7 @@
:group 'nnmail)
(defgroup nnmail-prepare nil
- "Preparing (or mangling) new mail after retrival."
+ "Preparing (or mangling) new mail after retrieval."
:group 'nnmail)
(defgroup nnmail-duplicate nil
diff --git a/lisp/gnus/nnmaildir.el b/lisp/gnus/nnmaildir.el
index be94a57b5c7..6024b992061 100644
--- a/lisp/gnus/nnmaildir.el
+++ b/lisp/gnus/nnmaildir.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnmbox.el b/lisp/gnus/nnmbox.el
index 42721f2e92e..e3d88396e16 100644
--- a/lisp/gnus/nnmbox.el
+++ b/lisp/gnus/nnmbox.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnmh.el b/lisp/gnus/nnmh.el
index af99217fe6d..f73bda68bf0 100644
--- a/lisp/gnus/nnmh.el
+++ b/lisp/gnus/nnmh.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnml.el b/lisp/gnus/nnml.el
index f330fa97a5a..e6eca8b1559 100644
--- a/lisp/gnus/nnml.el
+++ b/lisp/gnus/nnml.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnnil.el b/lisp/gnus/nnnil.el
index f9ed8e5ec88..0d4ad303282 100644
--- a/lisp/gnus/nnnil.el
+++ b/lisp/gnus/nnnil.el
@@ -15,8 +15,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnoo.el b/lisp/gnus/nnoo.el
index 0fd980e56ce..73399112102 100644
--- a/lisp/gnus/nnoo.el
+++ b/lisp/gnus/nnoo.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnrss.el b/lisp/gnus/nnrss.el
index ee5d6560354..4d43604984e 100644
--- a/lisp/gnus/nnrss.el
+++ b/lisp/gnus/nnrss.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnslashdot.el b/lisp/gnus/nnslashdot.el
index f4b3cf0db67..177bb019224 100644
--- a/lisp/gnus/nnslashdot.el
+++ b/lisp/gnus/nnslashdot.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnsoup.el b/lisp/gnus/nnsoup.el
index 836d97e1e42..13a464ab219 100644
--- a/lisp/gnus/nnsoup.el
+++ b/lisp/gnus/nnsoup.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnspool.el b/lisp/gnus/nnspool.el
index 6418c96d931..49e9693c32b 100644
--- a/lisp/gnus/nnspool.el
+++ b/lisp/gnus/nnspool.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nntp.el b/lisp/gnus/nntp.el
index 888a6edcfb1..2895faf62ef 100644
--- a/lisp/gnus/nntp.el
+++ b/lisp/gnus/nntp.el
@@ -21,7 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+;; Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
+;; MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnultimate.el b/lisp/gnus/nnultimate.el
index 42fbc13a6ff..7bc7bbf462e 100644
--- a/lisp/gnus/nnultimate.el
+++ b/lisp/gnus/nnultimate.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnvirtual.el b/lisp/gnus/nnvirtual.el
index 1eac2fe1423..c7e93528a5e 100644
--- a/lisp/gnus/nnvirtual.el
+++ b/lisp/gnus/nnvirtual.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnwarchive.el b/lisp/gnus/nnwarchive.el
index a9d0d51d9b6..8e4c22e8b04 100644
--- a/lisp/gnus/nnwarchive.el
+++ b/lisp/gnus/nnwarchive.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnweb.el b/lisp/gnus/nnweb.el
index 89a4a739792..4e1ed36d861 100644
--- a/lisp/gnus/nnweb.el
+++ b/lisp/gnus/nnweb.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/nnwfm.el b/lisp/gnus/nnwfm.el
index d42730cab6e..71d622357bf 100644
--- a/lisp/gnus/nnwfm.el
+++ b/lisp/gnus/nnwfm.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/pgg-def.el b/lisp/gnus/pgg-def.el
index ab82126f32e..351a336800e 100644
--- a/lisp/gnus/pgg-def.el
+++ b/lisp/gnus/pgg-def.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/gnus/pgg-gpg.el b/lisp/gnus/pgg-gpg.el
index 463020838c9..904c0e46878 100644
--- a/lisp/gnus/pgg-gpg.el
+++ b/lisp/gnus/pgg-gpg.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
@@ -30,7 +30,7 @@
(require 'pgg))
(defgroup pgg-gpg ()
- "GnuPG interface"
+ "GnuPG interface."
:group 'pgg)
(defcustom pgg-gpg-program "gpg"
diff --git a/lisp/gnus/pgg-parse.el b/lisp/gnus/pgg-parse.el
index 7929b54010d..c65f6a3a822 100644
--- a/lisp/gnus/pgg-parse.el
+++ b/lisp/gnus/pgg-parse.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -40,7 +40,7 @@
(require 'custom)
(defgroup pgg-parse ()
- "OpenPGP packet parsing"
+ "OpenPGP packet parsing."
:group 'pgg)
(defcustom pgg-parse-public-key-algorithm-alist
diff --git a/lisp/gnus/pgg-pgp.el b/lisp/gnus/pgg-pgp.el
index ca686e9f1a6..b2add4726d3 100644
--- a/lisp/gnus/pgg-pgp.el
+++ b/lisp/gnus/pgg-pgp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
@@ -30,7 +30,7 @@
(require 'pgg))
(defgroup pgg-pgp ()
- "PGP 2.* and 6.* interface"
+ "PGP 2.* and 6.* interface."
:group 'pgg)
(defcustom pgg-pgp-program "pgp"
diff --git a/lisp/gnus/pgg-pgp5.el b/lisp/gnus/pgg-pgp5.el
index 372cf48c473..cbdb693ef60 100644
--- a/lisp/gnus/pgg-pgp5.el
+++ b/lisp/gnus/pgg-pgp5.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
@@ -30,7 +30,7 @@
(require 'pgg))
(defgroup pgg-pgp5 ()
- "PGP 5.* interface"
+ "PGP 5.* interface."
:group 'pgg)
(defcustom pgg-pgp5-pgpe-program "pgpe"
diff --git a/lisp/gnus/pgg.el b/lisp/gnus/pgg.el
index ca351c90cd2..91b56c57a4f 100644
--- a/lisp/gnus/pgg.el
+++ b/lisp/gnus/pgg.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/pop3.el b/lisp/gnus/pop3.el
index b8d827e7d9a..1f109f6d7dd 100644
--- a/lisp/gnus/pop3.el
+++ b/lisp/gnus/pop3.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -39,7 +39,7 @@
(require 'mail-utils)
(defgroup pop3 nil
- "Post Office Protocol"
+ "Post Office Protocol."
:group 'mail
:group 'mail-source)
diff --git a/lisp/gnus/qp.el b/lisp/gnus/qp.el
index 0d140e03fca..800f5090177 100644
--- a/lisp/gnus/qp.el
+++ b/lisp/gnus/qp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/rfc1843.el b/lisp/gnus/rfc1843.el
index f43bfc0f241..9af2fc6327a 100644
--- a/lisp/gnus/rfc1843.el
+++ b/lisp/gnus/rfc1843.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/rfc2045.el b/lisp/gnus/rfc2045.el
index cd7cc4be95d..a1b06b4d939 100644
--- a/lisp/gnus/rfc2045.el
+++ b/lisp/gnus/rfc2045.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; RFC 2045 is: "Multipurpose Internet Mail Extensions (MIME) Part
;; One: Format of Internet Message Bodies".
diff --git a/lisp/gnus/rfc2047.el b/lisp/gnus/rfc2047.el
index 0099e6d1bb7..56f1758be22 100644
--- a/lisp/gnus/rfc2047.el
+++ b/lisp/gnus/rfc2047.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/rfc2104.el b/lisp/gnus/rfc2104.el
index 1ab7c80a046..43cdd3e44b3 100644
--- a/lisp/gnus/rfc2104.el
+++ b/lisp/gnus/rfc2104.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/rfc2231.el b/lisp/gnus/rfc2231.el
index 8a20e19e8ad..0a6cfdb2af1 100644
--- a/lisp/gnus/rfc2231.el
+++ b/lisp/gnus/rfc2231.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/score-mode.el b/lisp/gnus/score-mode.el
index c537012a422..c580256c94e 100644
--- a/lisp/gnus/score-mode.el
+++ b/lisp/gnus/score-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/sha1.el b/lisp/gnus/sha1.el
index 346bf9a268e..8968f1d42d5 100644
--- a/lisp/gnus/sha1.el
+++ b/lisp/gnus/sha1.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/sieve-manage.el b/lisp/gnus/sieve-manage.el
index d43808d788a..2afa49c79a7 100644
--- a/lisp/gnus/sieve-manage.el
+++ b/lisp/gnus/sieve-manage.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/sieve-mode.el b/lisp/gnus/sieve-mode.el
index 02bb33a3810..012c58de3b4 100644
--- a/lisp/gnus/sieve-mode.el
+++ b/lisp/gnus/sieve-mode.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/sieve.el b/lisp/gnus/sieve.el
index 97acf4727ea..498a82387cd 100644
--- a/lisp/gnus/sieve.el
+++ b/lisp/gnus/sieve.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/smiley.el b/lisp/gnus/smiley.el
index 27a54829aaf..42444e74bda 100644
--- a/lisp/gnus/smiley.el
+++ b/lisp/gnus/smiley.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/smime.el b/lisp/gnus/smime.el
index a1deea73738..059c1819605 100644
--- a/lisp/gnus/smime.el
+++ b/lisp/gnus/smime.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/spam-report.el b/lisp/gnus/spam-report.el
index ded68aba4ed..8ac235d12f2 100644
--- a/lisp/gnus/spam-report.el
+++ b/lisp/gnus/spam-report.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/spam-stat.el b/lisp/gnus/spam-stat.el
index 6af9b2e2b3f..18f16fd0946 100644
--- a/lisp/gnus/spam-stat.el
+++ b/lisp/gnus/spam-stat.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/spam.el b/lisp/gnus/spam.el
index c1d6d4a4eb7..e22ad1c2fa3 100644
--- a/lisp/gnus/spam.el
+++ b/lisp/gnus/spam.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/starttls.el b/lisp/gnus/starttls.el
index ddc91d90d25..92a436ca865 100644
--- a/lisp/gnus/starttls.el
+++ b/lisp/gnus/starttls.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/utf7.el b/lisp/gnus/utf7.el
index 82e1bf3dfd6..1ece50bf89a 100644
--- a/lisp/gnus/utf7.el
+++ b/lisp/gnus/utf7.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/uudecode.el b/lisp/gnus/uudecode.el
index 7f269132775..b4f4b74700f 100644
--- a/lisp/gnus/uudecode.el
+++ b/lisp/gnus/uudecode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/webmail.el b/lisp/gnus/webmail.el
index b9670137139..51125897fe4 100644
--- a/lisp/gnus/webmail.el
+++ b/lisp/gnus/webmail.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gnus/yenc.el b/lisp/gnus/yenc.el
index ed0d9506393..0d5ad3905be 100644
--- a/lisp/gnus/yenc.el
+++ b/lisp/gnus/yenc.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/gs.el b/lisp/gs.el
index 2c38a55f6df..7a8fb807ccd 100644
--- a/lisp/gs.el
+++ b/lisp/gs.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/help-at-pt.el b/lisp/help-at-pt.el
index 00c62abe9ca..f3321e437de 100644
--- a/lisp/help-at-pt.el
+++ b/lisp/help-at-pt.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/help-fns.el b/lisp/help-fns.el
index b5e22bf1855..6160391df95 100644
--- a/lisp/help-fns.el
+++ b/lisp/help-fns.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -275,9 +275,9 @@ face (according to `face-differs-from-default-p')."
;; This is heuristic, but covers all common cases
;; except ARG1-ARG2
(concat "\\<" ; beginning of word
- "\\(?:[a-z-]+-\\)?" ; for xxx-ARG
+ "\\(?:[a-z-]*-\\)?" ; for xxx-ARG
"\\("
- arg
+ (regexp-quote arg)
"\\)"
"\\(?:es\\|s\\|th\\)?" ; for ARGth, ARGs
"\\(?:-[a-z-]+\\)?" ; for ARG-xxx
diff --git a/lisp/help-macro.el b/lisp/help-macro.el
index 3a7cf0898cb..cf3e63d8d76 100644
--- a/lisp/help-macro.el
+++ b/lisp/help-macro.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/help-mode.el b/lisp/help-mode.el
index cd8c6a1c2dc..3349bc058f3 100644
--- a/lisp/help-mode.el
+++ b/lisp/help-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/help.el b/lisp/help.el
index 3323c329c97..bab0592160c 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/hexl.el b/lisp/hexl.el
index e24f6b7f72b..894633a1f34 100644
--- a/lisp/hexl.el
+++ b/lisp/hexl.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el
index a924c89ba37..d7aec9112bc 100644
--- a/lisp/hi-lock.el
+++ b/lisp/hi-lock.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -557,14 +557,10 @@ Optional argument END is maximum excursion."
(beginning-of-line)
(while (and (re-search-forward target-regexp (+ (point) 100) t)
(not (looking-at "\\s-*end")))
- (let ((patterns
- (condition-case nil
- (read (current-buffer))
- (error (message
- (format "Could not read expression at %d"
- (hi-lock-current-line))) nil))))
- (if patterns
- (setq all-patterns (append patterns all-patterns)))))))
+ (condition-case nil
+ (setq all-patterns (append (read (current-buffer)) all-patterns))
+ (error (message "Invalid pattern list expression at %d"
+ (hi-lock-current-line)))))))
(when hi-lock-mode (hi-lock-set-file-patterns all-patterns))
(if (interactive-p)
(message (format "Hi-lock added %d patterns." (length all-patterns)))))))
diff --git a/lisp/hilit-chg.el b/lisp/hilit-chg.el
index b6bfb297313..59468147cb7 100644
--- a/lisp/hilit-chg.el
+++ b/lisp/hilit-chg.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/hippie-exp.el b/lisp/hippie-exp.el
index bd726564da6..cdbc03bd1f7 100644
--- a/lisp/hippie-exp.el
+++ b/lisp/hippie-exp.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/hl-line.el b/lisp/hl-line.el
index e553636674b..85617eab680 100644
--- a/lisp/hl-line.el
+++ b/lisp/hl-line.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el
index 87d9eb707eb..9aef1ed95be 100644
--- a/lisp/ibuf-ext.el
+++ b/lisp/ibuf-ext.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program ; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ibuf-macs.el b/lisp/ibuf-macs.el
index effcafd9240..aebe923ee85 100644
--- a/lisp/ibuf-macs.el
+++ b/lisp/ibuf-macs.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program ; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el
index 217696cb4aa..dd0fba20914 100644
--- a/lisp/ibuffer.el
+++ b/lisp/ibuffer.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program ; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/icomplete.el b/lisp/icomplete.el
index ca94ca0d3db..9e9662c1697 100644
--- a/lisp/icomplete.el
+++ b/lisp/icomplete.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ido.el b/lisp/ido.el
index f5941bf4ef2..d4d94164f3c 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Acknowledgements
diff --git a/lisp/ielm.el b/lisp/ielm.el
index 727face3695..66a1da39066 100644
--- a/lisp/ielm.el
+++ b/lisp/ielm.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/iimage.el b/lisp/iimage.el
index 32f6aef9abd..b10679592b3 100644
--- a/lisp/iimage.el
+++ b/lisp/iimage.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/image-file.el b/lisp/image-file.el
index 11676021afd..8f74dd63c0a 100644
--- a/lisp/image-file.el
+++ b/lisp/image-file.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index b29027fcf42..4999a880dfc 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/image.el b/lisp/image.el
index b7b2d9988a8..561e0ac0abf 100644
--- a/lisp/image.el
+++ b/lisp/image.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/imenu.el b/lisp/imenu.el
index 2248ece3dbd..a210b39c604 100644
--- a/lisp/imenu.el
+++ b/lisp/imenu.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/indent.el b/lisp/indent.el
index 9713268f03b..14488e79a62 100644
--- a/lisp/indent.el
+++ b/lisp/indent.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -29,7 +29,7 @@
;;; Code:
(defgroup indent nil
- "Indentation commands"
+ "Indentation commands."
:group 'editing)
(defcustom standard-indent 4
diff --git a/lisp/info-look.el b/lisp/info-look.el
index 4fc2c6b4c63..a408a7b2388 100644
--- a/lisp/info-look.el
+++ b/lisp/info-look.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/info-xref.el b/lisp/info-xref.el
index ab9b26c10dd..bffe5681cd0 100644
--- a/lisp/info-xref.el
+++ b/lisp/info-xref.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/info.el b/lisp/info.el
index 20e031c1347..695d67c3647 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -38,22 +38,22 @@
(eval-when-compile (require 'jka-compr))
(defgroup info nil
- "Info subsystem"
+ "Info subsystem."
:group 'help
:group 'docs)
(defvar Info-history nil
"Stack of info nodes user has visited.
-Each element of list is a list (FILENAME NODENAME BUFFERPOS).")
+Each element of the stack is a list (FILENAME NODENAME BUFFERPOS).")
(defvar Info-history-forward nil
"Stack of info nodes user has visited with `Info-history-back' command.
-Each element of list is a list (FILENAME NODENAME BUFFERPOS).")
+Each element of the stack is a list (FILENAME NODENAME BUFFERPOS).")
(defvar Info-history-list nil
"List of all info nodes user has visited.
-Each element of list is a list (FILENAME NODENAME).")
+Each element of the list is a list (FILENAME NODENAME).")
(defcustom Info-enable-edit nil
"*Non-nil means the \\<Info-mode-map>\\[Info-edit] command in Info can edit the current node.
@@ -2868,7 +2868,7 @@ Build a menu of the possible matches."
(while (progn (setq flag (not (pos-visible-in-window-p (point-max))))
(message (if flag "Type Space to see more"
"Type Space to return to Info"))
- (if (not (eq ?\ (setq ch (read-event))))
+ (if (not (eq ?\s (setq ch (read-event))))
(progn (setq unread-command-events (list ch)) nil)
flag))
(scroll-up)))
@@ -3196,6 +3196,8 @@ With a zero prefix arg, put the name inside a function call to `info'."
(put 'Info-mode 'mode-class 'special)
(put 'Info-mode 'no-clone-indirect t)
+(defvar tool-bar-map)
+
(defun Info-mode ()
"Info mode provides commands for browsing through the Info documentation tree.
Documentation in Info is divided into \"nodes\", each of which discusses
@@ -3607,7 +3609,6 @@ Preserve text properties."
keymap)
"Keymap to put on the Prev link in the text or the header line.")
-
(defvar Info-up-link-keymap
(let ((keymap (make-sparse-keymap)))
(define-key keymap [header-line mouse-1] 'Info-up)
@@ -4092,8 +4093,7 @@ INDENT is the current indentation depth."
(defun Info-speedbar-fetch-file-nodes (nodespec)
"Fetch the subnodes from the info NODESPEC.
-NODESPEC is a string of the form: (file)node.
-Optional THISFILE represends the filename of"
+NODESPEC is a string of the form: (file)node."
(save-excursion
;; Set up a buffer we can use to fake-out Info.
(set-buffer (get-buffer-create "*info-browse-tmp*"))
diff --git a/lisp/informat.el b/lisp/informat.el
index acfb093c064..f3688cb3668 100644
--- a/lisp/informat.el
+++ b/lisp/informat.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/ccl.el b/lisp/international/ccl.el
index c445d7d40e1..9078d29d942 100644
--- a/lisp/international/ccl.el
+++ b/lisp/international/ccl.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/characters.el b/lisp/international/characters.el
index 1bab1bcff33..5a3ea7f97d8 100644
--- a/lisp/international/characters.el
+++ b/lisp/international/characters.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/codepage.el b/lisp/international/codepage.el
index 7571ccf986f..5051efd2f86 100644
--- a/lisp/international/codepage.el
+++ b/lisp/international/codepage.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/encoded-kb.el b/lisp/international/encoded-kb.el
index 2354e658282..7ec84465007 100644
--- a/lisp/international/encoded-kb.el
+++ b/lisp/international/encoded-kb.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index ee8e08c3956..d7fe6e28e55 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/isearch-x.el b/lisp/international/isearch-x.el
index 31691268c9c..46193d24d2c 100644
--- a/lisp/international/isearch-x.el
+++ b/lisp/international/isearch-x.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/iso-ascii.el b/lisp/international/iso-ascii.el
index 0dbb4e4093a..c1de1217133 100644
--- a/lisp/international/iso-ascii.el
+++ b/lisp/international/iso-ascii.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/iso-cvt.el b/lisp/international/iso-cvt.el
index f896773e53c..ade60793884 100644
--- a/lisp/international/iso-cvt.el
+++ b/lisp/international/iso-cvt.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; This lisp code is a general framework for translating various
diff --git a/lisp/international/iso-insert.el b/lisp/international/iso-insert.el
index e181d16588a..831ae3ffc1b 100644
--- a/lisp/international/iso-insert.el
+++ b/lisp/international/iso-insert.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/iso-transl.el b/lisp/international/iso-transl.el
index e0aa17b4916..b5fcd750d27 100644
--- a/lisp/international/iso-transl.el
+++ b/lisp/international/iso-transl.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/ja-dic-cnv.el b/lisp/international/ja-dic-cnv.el
index f145c602ffe..550fd6a4d43 100644
--- a/lisp/international/ja-dic-cnv.el
+++ b/lisp/international/ja-dic-cnv.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/ja-dic-utl.el b/lisp/international/ja-dic-utl.el
index ba00977832a..23874db591b 100644
--- a/lisp/international/ja-dic-utl.el
+++ b/lisp/international/ja-dic-utl.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/kinsoku.el b/lisp/international/kinsoku.el
index 76ec5ded397..e660d928946 100644
--- a/lisp/international/kinsoku.el
+++ b/lisp/international/kinsoku.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/kkc.el b/lisp/international/kkc.el
index be8d242c63e..dc313c7d30a 100644
--- a/lisp/international/kkc.el
+++ b/lisp/international/kkc.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/latexenc.el b/lisp/international/latexenc.el
index 6ce21a5328a..c2d24e1a190 100644
--- a/lisp/international/latexenc.el
+++ b/lisp/international/latexenc.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/latin1-disp.el b/lisp/international/latin1-disp.el
index 12b0c22b7ab..e558c222afd 100644
--- a/lisp/international/latin1-disp.el
+++ b/lisp/international/latin1-disp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index 4174bcda499..b84fb380802 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -324,9 +324,11 @@ This sets the following coding systems:
o coding system of a newly created buffer
o default coding system for subprocess I/O
This also sets the following values:
- o default value used as `file-name-coding-system' for converting file names.
+ o default value used as `file-name-coding-system' for converting file names
+ if CODING-SYSTEM is ASCII-compatible.
o default value for the command `set-terminal-coding-system' (not on MSDOS)
- o default value for the command `set-keyboard-coding-system'."
+ o default value for the command `set-keyboard-coding-system'
+ if CODING-SYSTEM is ASCII-compatible.."
(check-coding-system coding-system)
(setq-default buffer-file-coding-system coding-system)
(if (fboundp 'ucs-set-table-for-input)
diff --git a/lisp/international/mule-conf.el b/lisp/international/mule-conf.el
index 0fb5d93af65..979c5d4c01a 100644
--- a/lisp/international/mule-conf.el
+++ b/lisp/international/mule-conf.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/mule-diag.el b/lisp/international/mule-diag.el
index c79eb158695..b26629ec551 100644
--- a/lisp/international/mule-diag.el
+++ b/lisp/international/mule-diag.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/mule-util.el b/lisp/international/mule-util.el
index 236a34b84ab..6b4b9c712bd 100644
--- a/lisp/international/mule-util.el
+++ b/lisp/international/mule-util.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index a583498e8b2..2ba0c034d92 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/ogonek.el b/lisp/international/ogonek.el
index 112bc22cfc6..7c522698ead 100644
--- a/lisp/international/ogonek.el
+++ b/lisp/international/ogonek.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/quail.el b/lisp/international/quail.el
index 01ec42109de..ec797cbff15 100644
--- a/lisp/international/quail.el
+++ b/lisp/international/quail.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/swedish.el b/lisp/international/swedish.el
index 783fe2400e9..affaa9484a2 100644
--- a/lisp/international/swedish.el
+++ b/lisp/international/swedish.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/titdic-cnv.el b/lisp/international/titdic-cnv.el
index 46262938c68..5727e484d73 100644
--- a/lisp/international/titdic-cnv.el
+++ b/lisp/international/titdic-cnv.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -641,7 +641,7 @@ To get complete usage, invoke \"emacs -batch -f batch-titdic-convert -h\"."
;;
;; You should have received a copy of the GNU General Public License along with
;; CCE; see the file COPYING. If not, write to the Free Software Foundation,
-;; 675 Mass Ave, Cambridge, MA 02139, USA.")
+;; 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.")
("chinese-ziranma" "$AWTH;(B"
"ziranma.cin" cn-gb-2312 "ZIRANMA.el"
@@ -670,7 +670,7 @@ To get complete usage, invoke \"emacs -batch -f batch-titdic-convert -h\"."
;;
;; You should have received a copy of the GNU General Public License along with
;; CCE; see the file COPYING. If not, write to the Free Software Foundation,
-;; 675 Mass Ave, Cambridge, MA 02139, USA.")
+;; 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.")
("chinese-ctlau" "$AAuTA(B"
"CTLau.html" cn-gb-2312 "CTLau.el"
@@ -696,7 +696,7 @@ To get complete usage, invoke \"emacs -batch -f batch-titdic-convert -h\"."
;; #
;; # You should have received a copy of the GNU General Public License
;; # along with this program; if not, write to the Free Software Foundation,
-;; # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.")
+;; # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.")
("chinese-ctlaub" "$(0N,Gn(B"
"CTLau-b5.html" big5 "CTLau-b5.el"
@@ -722,7 +722,7 @@ To get complete usage, invoke \"emacs -batch -f batch-titdic-convert -h\"."
;; #
;; # You should have received a copy of the GNU General Public License
;; # along with this program; if not, write to the Free Software Foundation,
-;; # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.")
+;; # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.")
))
;; Generate a code of a Quail package in the current buffer from Tsang
diff --git a/lisp/international/utf-7.el b/lisp/international/utf-7.el
index 8d98b442ac4..6340dafc12a 100644
--- a/lisp/international/utf-7.el
+++ b/lisp/international/utf-7.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/isearch.el b/lisp/isearch.el
index 94210d3018b..ec3dcc37886 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/isearchb.el b/lisp/isearchb.el
index dbcbb1b7af2..3665311aaf6 100644
--- a/lisp/isearchb.el
+++ b/lisp/isearchb.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/iswitchb.el b/lisp/iswitchb.el
index d705faf9708..408b17c9332 100644
--- a/lisp/iswitchb.el
+++ b/lisp/iswitchb.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/jit-lock.el b/lisp/jit-lock.el
index ba2eed9f17e..d98e8791124 100644
--- a/lisp/jit-lock.el
+++ b/lisp/jit-lock.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/jka-cmpr-hook.el b/lisp/jka-cmpr-hook.el
index 79b47130baf..36775a25470 100644
--- a/lisp/jka-cmpr-hook.el
+++ b/lisp/jka-cmpr-hook.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -32,11 +32,11 @@
;;; Code:
(defgroup compression nil
- "Data compression utilities"
+ "Data compression utilities."
:group 'data)
(defgroup jka-compr nil
- "jka-compr customization"
+ "jka-compr customization."
:group 'compression)
;;; I have this defined so that .Z files are assumed to be in unix
diff --git a/lisp/jka-compr.el b/lisp/jka-compr.el
index f282957512c..db18903e21f 100644
--- a/lisp/jka-compr.el
+++ b/lisp/jka-compr.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/kermit.el b/lisp/kermit.el
index cf56a6216bb..1b22df1dbe2 100644
--- a/lisp/kermit.el
+++ b/lisp/kermit.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/kmacro.el b/lisp/kmacro.el
index 6aaa8c8f224..28e2c17c2a8 100644
--- a/lisp/kmacro.el
+++ b/lisp/kmacro.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/china-util.el b/lisp/language/china-util.el
index 84f46c4bf2c..d0abc35dbdc 100644
--- a/lisp/language/china-util.el
+++ b/lisp/language/china-util.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/chinese.el b/lisp/language/chinese.el
index 207f2e11bc3..beab14250c7 100644
--- a/lisp/language/chinese.el
+++ b/lisp/language/chinese.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/cyril-util.el b/lisp/language/cyril-util.el
index eb19ca1aaa2..6e4434771d0 100644
--- a/lisp/language/cyril-util.el
+++ b/lisp/language/cyril-util.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/cyrillic.el b/lisp/language/cyrillic.el
index c3a0bceb688..3b35bb2c1a2 100644
--- a/lisp/language/cyrillic.el
+++ b/lisp/language/cyrillic.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/czech.el b/lisp/language/czech.el
index 9aca0d16d49..be99c98b0a8 100644
--- a/lisp/language/czech.el
+++ b/lisp/language/czech.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/devan-util.el b/lisp/language/devan-util.el
index ba40b32db8f..d70a471a4f5 100644
--- a/lisp/language/devan-util.el
+++ b/lisp/language/devan-util.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Created: Feb. 17. 2001
diff --git a/lisp/language/devanagari.el b/lisp/language/devanagari.el
index 086368c15a0..b03803a2a4f 100644
--- a/lisp/language/devanagari.el
+++ b/lisp/language/devanagari.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/english.el b/lisp/language/english.el
index db496ad7600..01d8215e648 100644
--- a/lisp/language/english.el
+++ b/lisp/language/english.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/ethio-util.el b/lisp/language/ethio-util.el
index fa69ea7fcc1..82ccc6a28fd 100644
--- a/lisp/language/ethio-util.el
+++ b/lisp/language/ethio-util.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Author: TAKAHASHI Naoto <ntakahas@m17n.org>
diff --git a/lisp/language/ethiopic.el b/lisp/language/ethiopic.el
index e526f02291d..6fce966939e 100644
--- a/lisp/language/ethiopic.el
+++ b/lisp/language/ethiopic.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Author: TAKAHASHI Naoto <ntakahas@m17n.org>
diff --git a/lisp/language/european.el b/lisp/language/european.el
index b497abfd599..afdb0ed17d1 100644
--- a/lisp/language/european.el
+++ b/lisp/language/european.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/georgian.el b/lisp/language/georgian.el
index 40f84c0dc68..9d330256a03 100644
--- a/lisp/language/georgian.el
+++ b/lisp/language/georgian.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/greek.el b/lisp/language/greek.el
index 27dc26f2cfc..8e046af88b9 100644
--- a/lisp/language/greek.el
+++ b/lisp/language/greek.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/hebrew.el b/lisp/language/hebrew.el
index fcd9f56153d..4944b7a0881 100644
--- a/lisp/language/hebrew.el
+++ b/lisp/language/hebrew.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/ind-util.el b/lisp/language/ind-util.el
index 80be2a97e17..30bf1f13fd7 100644
--- a/lisp/language/ind-util.el
+++ b/lisp/language/ind-util.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/indian.el b/lisp/language/indian.el
index 1307243e074..2ee8c086025 100644
--- a/lisp/language/indian.el
+++ b/lisp/language/indian.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/japan-util.el b/lisp/language/japan-util.el
index 81a40a9c450..2c72f529edd 100644
--- a/lisp/language/japan-util.el
+++ b/lisp/language/japan-util.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/japanese.el b/lisp/language/japanese.el
index b882cd5e62b..a7aadfbe242 100644
--- a/lisp/language/japanese.el
+++ b/lisp/language/japanese.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/kannada.el b/lisp/language/kannada.el
index 1a3575f24db..82b4860e3dc 100644
--- a/lisp/language/kannada.el
+++ b/lisp/language/kannada.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/knd-util.el b/lisp/language/knd-util.el
index 75e8b93d17a..b0c4f4b1a73 100644
--- a/lisp/language/knd-util.el
+++ b/lisp/language/knd-util.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Created: Jul. 14. 2003
diff --git a/lisp/language/korea-util.el b/lisp/language/korea-util.el
index de940f5317f..d509ac6c825 100644
--- a/lisp/language/korea-util.el
+++ b/lisp/language/korea-util.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/korean.el b/lisp/language/korean.el
index 1657de90f4c..5558218fea3 100644
--- a/lisp/language/korean.el
+++ b/lisp/language/korean.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/lao-util.el b/lisp/language/lao-util.el
index 9141c34f3df..718baa3fd82 100644
--- a/lisp/language/lao-util.el
+++ b/lisp/language/lao-util.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/lao.el b/lisp/language/lao.el
index f400bb50931..ec2ef61268c 100644
--- a/lisp/language/lao.el
+++ b/lisp/language/lao.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/malayalam.el b/lisp/language/malayalam.el
index 4c8fad08fe4..fd17a95c69a 100644
--- a/lisp/language/malayalam.el
+++ b/lisp/language/malayalam.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/misc-lang.el b/lisp/language/misc-lang.el
index 47993e16ea5..70136ad681e 100644
--- a/lisp/language/misc-lang.el
+++ b/lisp/language/misc-lang.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/mlm-util.el b/lisp/language/mlm-util.el
index 16246aaa2ba..9aa9612af02 100644
--- a/lisp/language/mlm-util.el
+++ b/lisp/language/mlm-util.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Created: Feb. 11. 2003
diff --git a/lisp/language/romanian.el b/lisp/language/romanian.el
index ef7e4cf74c4..24d66bc32e3 100644
--- a/lisp/language/romanian.el
+++ b/lisp/language/romanian.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/slovak.el b/lisp/language/slovak.el
index 308be4286e3..0d0f1abb6a3 100644
--- a/lisp/language/slovak.el
+++ b/lisp/language/slovak.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/tamil.el b/lisp/language/tamil.el
index c62093098e3..ff51e9efe9e 100644
--- a/lisp/language/tamil.el
+++ b/lisp/language/tamil.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/thai-util.el b/lisp/language/thai-util.el
index 184ebfae08b..230007a61b8 100644
--- a/lisp/language/thai-util.el
+++ b/lisp/language/thai-util.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/thai-word.el b/lisp/language/thai-word.el
index 2548a44ea80..5584461bf4f 100644
--- a/lisp/language/thai-word.el
+++ b/lisp/language/thai-word.el
@@ -20,7 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+;; the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; The used Thai word list has been taken from IBM's ICU4J project
;; (file `thai6.ucs', version 1.4, converted to TIS encoding, with
diff --git a/lisp/language/thai.el b/lisp/language/thai.el
index f9cd655635a..3a482865b40 100644
--- a/lisp/language/thai.el
+++ b/lisp/language/thai.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/tibet-util.el b/lisp/language/tibet-util.el
index ce83add4b6f..83b0f29dee1 100644
--- a/lisp/language/tibet-util.el
+++ b/lisp/language/tibet-util.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Author: Toru TOMABECHI, <Toru.Tomabechi@orient.unil.ch>
diff --git a/lisp/language/tibetan.el b/lisp/language/tibetan.el
index 9ed777585db..ba7fb554bab 100644
--- a/lisp/language/tibetan.el
+++ b/lisp/language/tibetan.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Author: Toru TOMABECHI, <Toru.Tomabechi@orient.unil.ch>
diff --git a/lisp/language/tml-util.el b/lisp/language/tml-util.el
index e9670e3d1a6..c541862826d 100644
--- a/lisp/language/tml-util.el
+++ b/lisp/language/tml-util.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Created: Nov. 08. 2002
diff --git a/lisp/language/utf-8-lang.el b/lisp/language/utf-8-lang.el
index 70475846dbb..fe3616ae192 100644
--- a/lisp/language/utf-8-lang.el
+++ b/lisp/language/utf-8-lang.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/viet-util.el b/lisp/language/viet-util.el
index 0b552a61fe5..2e6fc76da23 100644
--- a/lisp/language/viet-util.el
+++ b/lisp/language/viet-util.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/language/vietnamese.el b/lisp/language/vietnamese.el
index 9f7196c5adb..65d8ee69acf 100644
--- a/lisp/language/vietnamese.el
+++ b/lisp/language/vietnamese.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ledit.el b/lisp/ledit.el
index 565550efe47..cab3c6c7d6c 100644
--- a/lisp/ledit.el
+++ b/lisp/ledit.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/loadhist.el b/lisp/loadhist.el
index da6fd695da3..bcdf47387da 100644
--- a/lisp/loadhist.el
+++ b/lisp/loadhist.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/loadup.el b/lisp/loadup.el
index 497cdaeae2e..d470e5d3573 100644
--- a/lisp/loadup.el
+++ b/lisp/loadup.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/locate.el b/lisp/locate.el
index 30a6ff41df3..4289d3e975c 100644
--- a/lisp/locate.el
+++ b/lisp/locate.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/log-edit.el b/lisp/log-edit.el
index 0d84ecd0504..a3876df8cce 100644
--- a/lisp/log-edit.el
+++ b/lisp/log-edit.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/log-view.el b/lisp/log-view.el
index 302246e2f4c..66e8b27c0ff 100644
--- a/lisp/log-view.el
+++ b/lisp/log-view.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/longlines.el b/lisp/longlines.el
index c6de1d2347e..5d68c0a06a3 100644
--- a/lisp/longlines.el
+++ b/lisp/longlines.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/lpr.el b/lisp/lpr.el
index 0eac7b7ba31..5714c746631 100644
--- a/lisp/lpr.el
+++ b/lisp/lpr.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -41,7 +41,7 @@
(defgroup lpr nil
- "Print Emacs buffer on line printer"
+ "Print Emacs buffer on line printer."
:group 'wp)
@@ -291,7 +291,7 @@ The characters tab, linefeed, space, return and formfeed are not affected."
(while (re-search-forward "[\^@-\^h\^k\^n-\^_\177-\377]" nil t)
(setq c (preceding-char))
(delete-backward-char 1)
- (insert (if (< c ?\ )
+ (insert (if (< c ?\s)
(format "\\^%c" (+ c ?@))
(format "\\%02x" c))))))))
diff --git a/lisp/ls-lisp.el b/lisp/ls-lisp.el
index 2e163270f90..dee98a87823 100644
--- a/lisp/ls-lisp.el
+++ b/lisp/ls-lisp.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/macros.el b/lisp/macros.el
index 41024e4e40f..79471ed905c 100644
--- a/lisp/macros.el
+++ b/lisp/macros.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/blessmail.el b/lisp/mail/blessmail.el
index 70438811dcf..c8bb2e729d2 100644
--- a/lisp/mail/blessmail.el
+++ b/lisp/mail/blessmail.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/emacsbug.el b/lisp/mail/emacsbug.el
index 18ea59fdf3f..bc6060f40c4 100644
--- a/lisp/mail/emacsbug.el
+++ b/lisp/mail/emacsbug.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/footnote.el b/lisp/mail/footnote.el
index d85ca45bf19..e4c0cd10c13 100644
--- a/lisp/mail/footnote.el
+++ b/lisp/mail/footnote.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
+;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+;; MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/mail-extr.el b/lisp/mail/mail-extr.el
index 2291ed454bf..15b8dd466ad 100644
--- a/lisp/mail/mail-extr.el
+++ b/lisp/mail/mail-extr.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/mail-hist.el b/lisp/mail/mail-hist.el
index ba66ca079fe..0540c484a89 100644
--- a/lisp/mail/mail-hist.el
+++ b/lisp/mail/mail-hist.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/mail-utils.el b/lisp/mail/mail-utils.el
index aecc87cf178..3b68506b48a 100644
--- a/lisp/mail/mail-utils.el
+++ b/lisp/mail/mail-utils.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/mailabbrev.el b/lisp/mail/mailabbrev.el
index 2f973cdfbb9..941dff7ca10 100644
--- a/lisp/mail/mailabbrev.el
+++ b/lisp/mail/mailabbrev.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/mailalias.el b/lisp/mail/mailalias.el
index d4c5c2c3261..55c284dda7d 100644
--- a/lisp/mail/mailalias.el
+++ b/lisp/mail/mailalias.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -33,7 +33,7 @@
(require 'sendmail)
(defgroup mailalias nil
- "Expanding mail aliases"
+ "Expanding mail aliases."
:group 'mail)
(defcustom mail-passwd-files '("/etc/passwd")
diff --git a/lisp/mail/mailheader.el b/lisp/mail/mailheader.el
index 1eac0dfa3a3..e7c4320cc48 100644
--- a/lisp/mail/mailheader.el
+++ b/lisp/mail/mailheader.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/metamail.el b/lisp/mail/metamail.el
index 1ecedf515f9..0c5189e53e0 100644
--- a/lisp/mail/metamail.el
+++ b/lisp/mail/metamail.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/mspools.el b/lisp/mail/mspools.el
index fc60a3a56eb..d1a3072eee8 100644
--- a/lisp/mail/mspools.el
+++ b/lisp/mail/mspools.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/reporter.el b/lisp/mail/reporter.el
index 6e609a1f365..673cb14e255 100644
--- a/lisp/mail/reporter.el
+++ b/lisp/mail/reporter.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rfc2368.el b/lisp/mail/rfc2368.el
index 5d603d7be26..d6864b664ed 100644
--- a/lisp/mail/rfc2368.el
+++ b/lisp/mail/rfc2368.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/mail/rfc822.el b/lisp/mail/rfc822.el
index 1a5dfad67f8..4c7cfeeaa69 100644
--- a/lisp/mail/rfc822.el
+++ b/lisp/mail/rfc822.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rmail-spam-filter.el b/lisp/mail/rmail-spam-filter.el
index c7fc8a0da03..9cd2123e3c3 100644
--- a/lisp/mail/rmail-spam-filter.el
+++ b/lisp/mail/rmail-spam-filter.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;; -----------
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index e97f7d77cae..de1a1bf472f 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rmailedit.el b/lisp/mail/rmailedit.el
index 2fbc9290635..40dba181d5c 100644
--- a/lisp/mail/rmailedit.el
+++ b/lisp/mail/rmailedit.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rmailkwd.el b/lisp/mail/rmailkwd.el
index 6772817637f..fc57b2a4d5e 100644
--- a/lisp/mail/rmailkwd.el
+++ b/lisp/mail/rmailkwd.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rmailmsc.el b/lisp/mail/rmailmsc.el
index ea0a9d0cf80..50626d714ce 100644
--- a/lisp/mail/rmailmsc.el
+++ b/lisp/mail/rmailmsc.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rmailout.el b/lisp/mail/rmailout.el
index 0dd23d71d33..d3baf08c261 100644
--- a/lisp/mail/rmailout.el
+++ b/lisp/mail/rmailout.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rmailsort.el b/lisp/mail/rmailsort.el
index 3194358451c..32188657c44 100644
--- a/lisp/mail/rmailsort.el
+++ b/lisp/mail/rmailsort.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/rmailsum.el b/lisp/mail/rmailsum.el
index 9c647126d5c..e3cb4ce1eb8 100644
--- a/lisp/mail/rmailsum.el
+++ b/lisp/mail/rmailsum.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -54,6 +54,14 @@
("{ \\([^\n}]+\\) }" 1 font-lock-comment-face)) ; Labels.
"Additional expressions to highlight in Rmail Summary mode.")
+(defvar rmail-summary-redo
+ "(FUNCTION . ARGS) to regenerate this Rmail summary buffer.")
+
+(defvar rmail-summary-overlay nil)
+(put 'rmail-summary-overlay 'permanent-local t)
+
+(defvar rmail-summary-mode-map nil)
+
;; Entry points for making a summary buffer.
;; Regenerate the contents of the summary
@@ -165,6 +173,8 @@ SENDERS is a string of names separated by commas."
(defvar rmail-summary-symbol-number 0)
+(defvar rmail-new-summary-line-count)
+
(defun rmail-new-summary (description redo-form function &rest args)
"Create a summary of selected messages.
DESCRIPTION makes part of the mode line of the summary buffer.
@@ -187,7 +197,7 @@ nil for FUNCTION means all messages."
(setq mesg rmail-current-message)
;; Filter the messages; make or get their summary lines.
(let ((summary-msgs ())
- (new-summary-line-count 0))
+ (rmail-new-summary-line-count 0))
(let ((msgnum 1)
(buffer-read-only nil)
(old-min (point-min-marker))
@@ -263,11 +273,11 @@ nil for FUNCTION means all messages."
(defun rmail-make-summary-line (msg)
(let ((line (or (aref rmail-summary-vector (1- msg))
(progn
- (setq new-summary-line-count
- (1+ new-summary-line-count))
- (if (zerop (% new-summary-line-count 10))
+ (setq rmail-new-summary-line-count
+ (1+ rmail-new-summary-line-count))
+ (if (zerop (% rmail-new-summary-line-count 10))
(message "Computing summary lines...%d"
- new-summary-line-count))
+ rmail-new-summary-line-count))
(rmail-make-summary-line-1 msg)))))
;; Fix up the part of the summary that says "deleted" or "unseen".
(aset line 5
@@ -842,8 +852,6 @@ Search, the `unseen' attribute is restored.")
(rmail-show-message msg-num t))))))
(rmail-summary-update-highlight nil)))))
-(defvar rmail-summary-mode-map nil)
-
(if rmail-summary-mode-map
nil
(setq rmail-summary-mode-map (make-keymap))
@@ -1037,9 +1045,6 @@ Search, the `unseen' attribute is restored.")
(define-key rmail-summary-mode-map [menu-bar move next]
'("Next" . rmail-summary-next-all))
-(defvar rmail-summary-overlay nil)
-(put 'rmail-summary-overlay 'permanent-local t)
-
(defun rmail-summary-mouse-goto-message (event)
"Select the message whose summary line you click on."
(interactive "@e")
@@ -1191,7 +1196,8 @@ move to the previous message."
(or (eq buffer (window-buffer (next-window (frame-first-window))))
(delete-other-windows)))
(pop-to-buffer rmail-view-buffer))
- (beginning-of-buffer)
+ (with-no-warnings
+ (beginning-of-buffer))
(pop-to-buffer rmail-summary-buffer))
(defun rmail-summary-bury ()
@@ -1275,12 +1281,14 @@ argument says to read a file name and use that file as the inbox."
(defun rmail-summary-first-message ()
"Show first message in Rmail file from summary buffer."
(interactive)
- (beginning-of-buffer))
+ (with-no-warnings
+ (beginning-of-buffer)))
(defun rmail-summary-last-message ()
"Show last message in Rmail file from summary buffer."
(interactive)
- (end-of-buffer)
+ (with-no-warnings
+ (end-of-buffer))
(forward-line -1))
(defvar rmail-summary-edit-map nil)
diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el
index b670eba96a9..4abc0ee7e55 100644
--- a/lisp/mail/sendmail.el
+++ b/lisp/mail/sendmail.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/smtpmail.el b/lisp/mail/smtpmail.el
index 931e1417a2d..0c076011044 100644
--- a/lisp/mail/smtpmail.el
+++ b/lisp/mail/smtpmail.el
@@ -26,8 +26,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/supercite.el b/lisp/mail/supercite.el
index 593f46cad40..5f219510b21 100644
--- a/lisp/mail/supercite.el
+++ b/lisp/mail/supercite.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; LCD Archive Entry
;; supercite|Barry A. Warsaw|supercite-help@python.org
@@ -44,28 +44,28 @@
;; vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
(defgroup supercite nil
- "Supercite package"
+ "Supercite package."
:prefix "sc-"
:group 'mail
:group 'news)
(defgroup supercite-frames nil
- "Supercite (regi) frames"
+ "Supercite (regi) frames."
:prefix "sc-"
:group 'supercite)
(defgroup supercite-attr nil
- "Supercite attributions"
+ "Supercite attributions."
:prefix "sc-"
:group 'supercite)
(defgroup supercite-cite nil
- "Supercite citings"
+ "Supercite citings."
:prefix "sc-"
:group 'supercite)
(defgroup supercite-hooks nil
- "Hooking into supercite"
+ "Hooking into supercite."
:prefix "sc-"
:group 'supercite)
@@ -1317,6 +1317,8 @@ use it instead of `sc-citation-root-regexp'."
sc-citation-delimiter
sc-citation-separator))
+(defvar filladapt-prefix-table)
+
(defun sc-setup-filladapt ()
"Setup `filladapt-prefix-table' to handle Supercited paragraphs."
(let* ((fa-sc-elt 'filladapt-supercite-included-text)
diff --git a/lisp/mail/uce.el b/lisp/mail/uce.el
index 08f76359abb..14e613ac280 100644
--- a/lisp/mail/uce.el
+++ b/lisp/mail/uce.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/undigest.el b/lisp/mail/undigest.el
index f8856243194..b19c9a140dc 100644
--- a/lisp/mail/undigest.el
+++ b/lisp/mail/undigest.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/unrmail.el b/lisp/mail/unrmail.el
index db6990d625b..bcac0cee0d9 100644
--- a/lisp/mail/unrmail.el
+++ b/lisp/mail/unrmail.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mail/vms-pmail.el b/lisp/mail/vms-pmail.el
index 675d9112c7b..881c4d95a61 100644
--- a/lisp/mail/vms-pmail.el
+++ b/lisp/mail/vms-pmail.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/makefile.w32-in b/lisp/makefile.w32-in
index a857c2d88bb..0cbdf9dad3b 100644
--- a/lisp/makefile.w32-in
+++ b/lisp/makefile.w32-in
@@ -15,8 +15,8 @@
#
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to the
-# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
+# Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+# Boston, MA 02110-1301, USA.
#
ALL =
@@ -315,8 +315,11 @@ bootstrap-clean-SH:
-for dir in . $(WINS); do rm -f $$dir/*.elc; done
# Generate/update files for the bootstrap process.
+# When done, remove bootstrap-emacs from ../bin, so that
+# it will not be mistaken for an installed binary.
bootstrap: update-subdirs autoloads compile finder-data custom-deps
+ - $(DEL) $(EMACS)
#
# Assuming INSTALL_DIR is defined, copy the elisp files to it
diff --git a/lisp/makesum.el b/lisp/makesum.el
index 21a69d5f541..985012f90d1 100644
--- a/lisp/makesum.el
+++ b/lisp/makesum.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/man.el b/lisp/man.el
index 0037d132624..cb62aa65e94 100644
--- a/lisp/man.el
+++ b/lisp/man.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/master.el b/lisp/master.el
index b9908e82b55..bdc5144d63c 100644
--- a/lisp/master.el
+++ b/lisp/master.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index f8aaf2de77c..b6230189cc5 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Avishai Yacobi suggested some menu rearrangements.
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog
index 91d9e057263..db3de56d8b4 100644
--- a/lisp/mh-e/ChangeLog
+++ b/lisp/mh-e/ChangeLog
@@ -1,3 +1,7 @@
+2005-07-04 Lute Kamstra <lute@gnu.org>
+
+ Update FSF's address in GPL notices.
+
2005-06-17 Lute Kamstra <lute@gnu.org>
* mh-customize.el (mh-folder-body-face, mh-folder-cur-msg-face)
diff --git a/lisp/mh-e/mh-acros.el b/lisp/mh-e/mh-acros.el
index 455daf687a3..5cb1c26248b 100644
--- a/lisp/mh-e/mh-acros.el
+++ b/lisp/mh-e/mh-acros.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-alias.el b/lisp/mh-e/mh-alias.el
index 0819c0a7925..ceec6e6556d 100644
--- a/lisp/mh-e/mh-alias.el
+++ b/lisp/mh-e/mh-alias.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el
index a466c4af7ba..59111098bf1 100644
--- a/lisp/mh-e/mh-comp.el
+++ b/lisp/mh-e/mh-comp.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-customize.el b/lisp/mh-e/mh-customize.el
index 5c13e8d93e6..c2a86d4a731 100644
--- a/lisp/mh-e/mh-customize.el
+++ b/lisp/mh-e/mh-customize.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-e.el b/lisp/mh-e/mh-e.el
index 0cfb053c887..12e77c6c833 100644
--- a/lisp/mh-e/mh-e.el
+++ b/lisp/mh-e/mh-e.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-funcs.el b/lisp/mh-e/mh-funcs.el
index 126fd84ce9b..717d0b27aef 100644
--- a/lisp/mh-e/mh-funcs.el
+++ b/lisp/mh-e/mh-funcs.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-gnus.el b/lisp/mh-e/mh-gnus.el
index b850c8fdc43..54f5c730385 100644
--- a/lisp/mh-e/mh-gnus.el
+++ b/lisp/mh-e/mh-gnus.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-identity.el b/lisp/mh-e/mh-identity.el
index b0a1430928b..c7b796c6775 100644
--- a/lisp/mh-e/mh-identity.el
+++ b/lisp/mh-e/mh-identity.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-inc.el b/lisp/mh-e/mh-inc.el
index c9a9c6cb6b6..9ccec70e969 100644
--- a/lisp/mh-e/mh-inc.el
+++ b/lisp/mh-e/mh-inc.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-index.el b/lisp/mh-e/mh-index.el
index 7a52b94dd2b..28cb0b44fd4 100644
--- a/lisp/mh-e/mh-index.el
+++ b/lisp/mh-e/mh-index.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-init.el b/lisp/mh-e/mh-init.el
index a975b882128..23fe0d88b7b 100644
--- a/lisp/mh-e/mh-init.el
+++ b/lisp/mh-e/mh-init.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-junk.el b/lisp/mh-e/mh-junk.el
index e66f49e3a55..a20117d8582 100644
--- a/lisp/mh-e/mh-junk.el
+++ b/lisp/mh-e/mh-junk.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-mime.el b/lisp/mh-e/mh-mime.el
index e130d57a88c..3e5068c7bdc 100644
--- a/lisp/mh-e/mh-mime.el
+++ b/lisp/mh-e/mh-mime.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-pick.el b/lisp/mh-e/mh-pick.el
index 5c31fb167cb..c0b9360cfae 100644
--- a/lisp/mh-e/mh-pick.el
+++ b/lisp/mh-e/mh-pick.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mh-e/mh-print.el b/lisp/mh-e/mh-print.el
index 7539e455919..814c5e42174 100644
--- a/lisp/mh-e/mh-print.el
+++ b/lisp/mh-e/mh-print.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; Pp Print to lpr | Default inline settings
diff --git a/lisp/mh-e/mh-seq.el b/lisp/mh-e/mh-seq.el
index e618e6f41b3..51847c2d59d 100644
--- a/lisp/mh-e/mh-seq.el
+++ b/lisp/mh-e/mh-seq.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/mh-e/mh-speed.el b/lisp/mh-e/mh-speed.el
index 87349277cc0..e11ed7e3523 100644
--- a/lisp/mh-e/mh-speed.el
+++ b/lisp/mh-e/mh-speed.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; Future versions should only use flists.
diff --git a/lisp/mh-e/mh-utils.el b/lisp/mh-e/mh-utils.el
index da0da053119..522ccda088c 100644
--- a/lisp/mh-e/mh-utils.el
+++ b/lisp/mh-e/mh-utils.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/midnight.el b/lisp/midnight.el
index 83b21dda7e4..8bc00b83103 100644
--- a/lisp/midnight.el
+++ b/lisp/midnight.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/minibuf-eldef.el b/lisp/minibuf-eldef.el
index 908b77aab33..f3b08be702f 100644
--- a/lisp/minibuf-eldef.el
+++ b/lisp/minibuf-eldef.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/misc.el b/lisp/misc.el
index 31a35affad0..c081a8cd8c4 100644
--- a/lisp/misc.el
+++ b/lisp/misc.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mouse-copy.el b/lisp/mouse-copy.el
index 528cfb8d824..6279d4e1f46 100644
--- a/lisp/mouse-copy.el
+++ b/lisp/mouse-copy.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mouse-drag.el b/lisp/mouse-drag.el
index 9906114ca30..6971bdb9a89 100644
--- a/lisp/mouse-drag.el
+++ b/lisp/mouse-drag.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mouse-sel.el b/lisp/mouse-sel.el
index 4cabafe737d..1a271a5ab7d 100644
--- a/lisp/mouse-sel.el
+++ b/lisp/mouse-sel.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 03740e780d5..4fd81ced998 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/msb.el b/lisp/msb.el
index 02ab487bc69..945535267ff 100644
--- a/lisp/msb.el
+++ b/lisp/msb.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/mwheel.el b/lisp/mwheel.el
index 231b7c3d6e3..27116c75e98 100644
--- a/lisp/mwheel.el
+++ b/lisp/mwheel.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/ange-ftp.el b/lisp/net/ange-ftp.el
index 277da044c44..e8647dfc221 100644
--- a/lisp/net/ange-ftp.el
+++ b/lisp/net/ange-ftp.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el
index cd5c2d41f98..3b6cc279a1e 100644
--- a/lisp/net/browse-url.el
+++ b/lisp/net/browse-url.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -799,6 +799,8 @@ to use."
;; --- Default MS-Windows browser ---
+(defvar dos-windows-version)
+
(defun browse-url-default-windows-browser (url &optional new-window)
(interactive (browse-url-interactive-arg "URL: "))
(if (eq system-type 'ms-dos)
diff --git a/lisp/net/eudc-bob.el b/lisp/net/eudc-bob.el
index df20007cfb7..a4ad3044f43 100644
--- a/lisp/net/eudc-bob.el
+++ b/lisp/net/eudc-bob.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/eudc-export.el b/lisp/net/eudc-export.el
index 704792f6b68..52e09433a20 100644
--- a/lisp/net/eudc-export.el
+++ b/lisp/net/eudc-export.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/eudc-hotlist.el b/lisp/net/eudc-hotlist.el
index bede338b364..f892bd6058e 100644
--- a/lisp/net/eudc-hotlist.el
+++ b/lisp/net/eudc-hotlist.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/eudc-vars.el b/lisp/net/eudc-vars.el
index 1b9da92da67..281daa3ac9f 100644
--- a/lisp/net/eudc-vars.el
+++ b/lisp/net/eudc-vars.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/eudc.el b/lisp/net/eudc.el
index f234ab059d5..96289922ccc 100644
--- a/lisp/net/eudc.el
+++ b/lisp/net/eudc.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; This package provides a common interface to query directory servers using
diff --git a/lisp/net/eudcb-bbdb.el b/lisp/net/eudcb-bbdb.el
index 745d6e289a1..2d3db7f74cb 100644
--- a/lisp/net/eudcb-bbdb.el
+++ b/lisp/net/eudcb-bbdb.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; This library provides an interface to use BBDB as a backend of
diff --git a/lisp/net/eudcb-ldap.el b/lisp/net/eudcb-ldap.el
index a206578b774..1890f345975 100644
--- a/lisp/net/eudcb-ldap.el
+++ b/lisp/net/eudcb-ldap.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; This library provides specific LDAP protocol support for the
diff --git a/lisp/net/eudcb-ph.el b/lisp/net/eudcb-ph.el
index efd89beaaa9..ab9965efc17 100644
--- a/lisp/net/eudcb-ph.el
+++ b/lisp/net/eudcb-ph.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/goto-addr.el b/lisp/net/goto-addr.el
index 54d5854ca80..9ce73dba47b 100644
--- a/lisp/net/goto-addr.el
+++ b/lisp/net/goto-addr.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/ldap.el b/lisp/net/ldap.el
index 2917fab0a7b..fc86688f568 100644
--- a/lisp/net/ldap.el
+++ b/lisp/net/ldap.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/net-utils.el b/lisp/net/net-utils.el
index c1c88dfc323..16bc93b6122 100644
--- a/lisp/net/net-utils.el
+++ b/lisp/net/net-utils.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/netrc.el b/lisp/net/netrc.el
index 713c036ce7b..963fea444f0 100644
--- a/lisp/net/netrc.el
+++ b/lisp/net/netrc.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/quickurl.el b/lisp/net/quickurl.el
index d2ff0140dce..a030275f735 100644
--- a/lisp/net/quickurl.el
+++ b/lisp/net/quickurl.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/net/rcompile.el b/lisp/net/rcompile.el
index 6928b2f4943..6693f902577 100644
--- a/lisp/net/rcompile.el
+++ b/lisp/net/rcompile.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -70,7 +70,7 @@
;;;; user defined variables
(defgroup remote-compile nil
- "Run a compilation on a remote machine"
+ "Run a compilation on a remote machine."
:group 'processes
:group 'tools)
diff --git a/lisp/net/rlogin.el b/lisp/net/rlogin.el
index 3ad66166ece..46a1847a7c2 100644
--- a/lisp/net/rlogin.el
+++ b/lisp/net/rlogin.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -41,7 +41,7 @@
(require 'shell)
(defgroup rlogin nil
- "Remote login interface"
+ "Remote login interface."
:group 'processes
:group 'unix)
diff --git a/lisp/net/snmp-mode.el b/lisp/net/snmp-mode.el
index f41dd845261..723b73cd77a 100644
--- a/lisp/net/snmp-mode.el
+++ b/lisp/net/snmp-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/telnet.el b/lisp/net/telnet.el
index 94a7b325d0e..a28a74cc2ba 100644
--- a/lisp/net/telnet.el
+++ b/lisp/net/telnet.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/tls.el b/lisp/net/tls.el
index 2de9362ca07..f0b21383d61 100644
--- a/lisp/net/tls.el
+++ b/lisp/net/tls.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/tramp-ftp.el b/lisp/net/tramp-ftp.el
index f43faf11cc1..05beeb246e1 100644
--- a/lisp/net/tramp-ftp.el
+++ b/lisp/net/tramp-ftp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/tramp-smb.el b/lisp/net/tramp-smb.el
index cd096df3be3..74e2796fdef 100644
--- a/lisp/net/tramp-smb.el
+++ b/lisp/net/tramp-smb.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/tramp-util.el b/lisp/net/tramp-util.el
index 1621c2c818e..10f9f7ff605 100644
--- a/lisp/net/tramp-util.el
+++ b/lisp/net/tramp-util.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/tramp-uu.el b/lisp/net/tramp-uu.el
index ffaa0659160..0b8e83080f2 100644
--- a/lisp/net/tramp-uu.el
+++ b/lisp/net/tramp-uu.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/tramp-vc.el b/lisp/net/tramp-vc.el
index c58d83504c2..76563c33169 100644
--- a/lisp/net/tramp-vc.el
+++ b/lisp/net/tramp-vc.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index ee9f570bd43..6d6e606e5e5 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/trampver.el b/lisp/net/trampver.el
index c8ef71eb9f3..d928380b867 100644
--- a/lisp/net/trampver.el
+++ b/lisp/net/trampver.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/net/webjump.el b/lisp/net/webjump.el
index 23c54d5a09f..36625b4b0ee 100644
--- a/lisp/net/webjump.el
+++ b/lisp/net/webjump.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/net/zone-mode.el b/lisp/net/zone-mode.el
index 17acb786010..ab00c0ce5af 100644
--- a/lisp/net/zone-mode.el
+++ b/lisp/net/zone-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/newcomment.el b/lisp/newcomment.el
index 590e6ce37ba..c0ad722c158 100644
--- a/lisp/newcomment.el
+++ b/lisp/newcomment.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/novice.el b/lisp/novice.el
index 171285ca3f1..6fd67d4ac1e 100644
--- a/lisp/novice.el
+++ b/lisp/novice.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/awk-mode.el b/lisp/obsolete/awk-mode.el
index d0ac24f3c68..9603d768c7d 100644
--- a/lisp/obsolete/awk-mode.el
+++ b/lisp/obsolete/awk-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/fast-lock.el b/lisp/obsolete/fast-lock.el
index 4a409bd77aa..89754716292 100644
--- a/lisp/obsolete/fast-lock.el
+++ b/lisp/obsolete/fast-lock.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/float.el b/lisp/obsolete/float.el
index 624e0eb0add..eb29f331ce7 100644
--- a/lisp/obsolete/float.el
+++ b/lisp/obsolete/float.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/hilit19.el b/lisp/obsolete/hilit19.el
index 8c5b64ed5ad..162d2984eb8 100644
--- a/lisp/obsolete/hilit19.el
+++ b/lisp/obsolete/hilit19.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/hscroll.el b/lisp/obsolete/hscroll.el
index 543ce3640c6..1d727eb8d98 100644
--- a/lisp/obsolete/hscroll.el
+++ b/lisp/obsolete/hscroll.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/obsolete/iso-acc.el b/lisp/obsolete/iso-acc.el
index 740fa942c13..279548b81d6 100644
--- a/lisp/obsolete/iso-acc.el
+++ b/lisp/obsolete/iso-acc.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/international/iso-swed.el b/lisp/obsolete/iso-swed.el
index 60cc7fd632a..abe9dd9c472 100644
--- a/lisp/international/iso-swed.el
+++ b/lisp/obsolete/iso-swed.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/keyswap.el b/lisp/obsolete/keyswap.el
index d636a22bb93..9bb0b9c63d3 100644
--- a/lisp/obsolete/keyswap.el
+++ b/lisp/obsolete/keyswap.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/lazy-lock.el b/lisp/obsolete/lazy-lock.el
index f618037c753..558377289ed 100644
--- a/lisp/obsolete/lazy-lock.el
+++ b/lisp/obsolete/lazy-lock.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/mlsupport.el b/lisp/obsolete/mlsupport.el
index 127e5e7fcea..e36eae66942 100644
--- a/lisp/obsolete/mlsupport.el
+++ b/lisp/obsolete/mlsupport.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/ooutline.el b/lisp/obsolete/ooutline.el
index 0218d097b64..fbba7709bb0 100644
--- a/lisp/obsolete/ooutline.el
+++ b/lisp/obsolete/ooutline.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -33,7 +33,7 @@
;; Jan '86, Some new features added by Peter Desnoyers and rewritten by RMS.
(defgroup outlines nil
- "Support for hierarchical outlining"
+ "Support for hierarchical outlining."
:prefix "outline-"
:group 'editing)
diff --git a/lisp/obsolete/options.el b/lisp/obsolete/options.el
index 5ea14678d0b..4defa96f2ce 100644
--- a/lisp/obsolete/options.el
+++ b/lisp/obsolete/options.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/profile.el b/lisp/obsolete/profile.el
index d080419622e..c4a5b4a0359 100644
--- a/lisp/obsolete/profile.el
+++ b/lisp/obsolete/profile.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/rnews.el b/lisp/obsolete/rnews.el
index 7a546aa3081..98a52d4f830 100644
--- a/lisp/obsolete/rnews.el
+++ b/lisp/obsolete/rnews.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Change Log:
diff --git a/lisp/obsolete/rnewspost.el b/lisp/obsolete/rnewspost.el
index e1a378c6fb6..6e08a66b74a 100644
--- a/lisp/obsolete/rnewspost.el
+++ b/lisp/obsolete/rnewspost.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Change Log:
diff --git a/lisp/obsolete/rsz-mini.el b/lisp/obsolete/rsz-mini.el
index a90cb625dc5..693c2987952 100644
--- a/lisp/obsolete/rsz-mini.el
+++ b/lisp/obsolete/rsz-mini.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/scribe.el b/lisp/obsolete/scribe.el
index 15f33660d73..7d627df191d 100644
--- a/lisp/obsolete/scribe.el
+++ b/lisp/obsolete/scribe.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/sun-curs.el b/lisp/obsolete/sun-curs.el
index 6437adaf603..5fe18221b0c 100644
--- a/lisp/obsolete/sun-curs.el
+++ b/lisp/obsolete/sun-curs.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/sun-fns.el b/lisp/obsolete/sun-fns.el
index 50edce8e574..88241e813ec 100644
--- a/lisp/obsolete/sun-fns.el
+++ b/lisp/obsolete/sun-fns.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/uncompress.el b/lisp/obsolete/uncompress.el
index 28ad5f06c7b..22bf08b2dd6 100644
--- a/lisp/obsolete/uncompress.el
+++ b/lisp/obsolete/uncompress.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/x-apollo.el b/lisp/obsolete/x-apollo.el
index c17fb06d268..e15516b40e7 100644
--- a/lisp/obsolete/x-apollo.el
+++ b/lisp/obsolete/x-apollo.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/obsolete/x-menu.el b/lisp/obsolete/x-menu.el
index c2302e82e35..bba20747f53 100644
--- a/lisp/obsolete/x-menu.el
+++ b/lisp/obsolete/x-menu.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/outline.el b/lisp/outline.el
index b807365f733..6b662664b58 100644
--- a/lisp/outline.el
+++ b/lisp/outline.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -38,7 +38,7 @@
;;; Code:
(defgroup outlines nil
- "Support for hierarchical outlining"
+ "Support for hierarchical outlining."
:prefix "outline-"
:group 'editing)
diff --git a/lisp/paren.el b/lisp/paren.el
index 7c6abe087b9..f0bf458a3ab 100644
--- a/lisp/paren.el
+++ b/lisp/paren.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/paths.el b/lisp/paths.el
index e3fac711b43..b79e925aee3 100644
--- a/lisp/paths.el
+++ b/lisp/paths.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcmpl-cvs.el b/lisp/pcmpl-cvs.el
index d5003d5de08..54ab07e6e85 100644
--- a/lisp/pcmpl-cvs.el
+++ b/lisp/pcmpl-cvs.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -33,7 +33,7 @@
(require 'executable)
(defgroup pcmpl-cvs nil
- "Functions for dealing with CVS completions"
+ "Functions for dealing with CVS completions."
:group 'pcomplete)
;; User Variables:
diff --git a/lisp/pcmpl-gnu.el b/lisp/pcmpl-gnu.el
index 32810d7dba6..36713323075 100644
--- a/lisp/pcmpl-gnu.el
+++ b/lisp/pcmpl-gnu.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcmpl-linux.el b/lisp/pcmpl-linux.el
index 1822b514c41..bb77bf00231 100644
--- a/lisp/pcmpl-linux.el
+++ b/lisp/pcmpl-linux.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcmpl-rpm.el b/lisp/pcmpl-rpm.el
index 683819b54ff..50c4906886f 100644
--- a/lisp/pcmpl-rpm.el
+++ b/lisp/pcmpl-rpm.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -30,7 +30,7 @@
(require 'pcomplete)
(defgroup pcmpl-rpm nil
- "Functions for dealing with CVS completions"
+ "Functions for dealing with CVS completions."
:group 'pcomplete)
;; Functions:
diff --git a/lisp/pcmpl-unix.el b/lisp/pcmpl-unix.el
index fe26b089f77..edbc1b28586 100644
--- a/lisp/pcmpl-unix.el
+++ b/lisp/pcmpl-unix.el
@@ -16,8 +16,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcomplete.el b/lisp/pcomplete.el
index b01bef39664..3f0ffc54eeb 100644
--- a/lisp/pcomplete.el
+++ b/lisp/pcomplete.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcvs-defs.el b/lisp/pcvs-defs.el
index 394c3580945..1e4c29f5583 100644
--- a/lisp/pcvs-defs.el
+++ b/lisp/pcvs-defs.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcvs-info.el b/lisp/pcvs-info.el
index d56fa19fd32..0a48fc7d8e7 100644
--- a/lisp/pcvs-info.el
+++ b/lisp/pcvs-info.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcvs-parse.el b/lisp/pcvs-parse.el
index 7ab6c53b4a0..1b08473d305 100644
--- a/lisp/pcvs-parse.el
+++ b/lisp/pcvs-parse.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcvs-util.el b/lisp/pcvs-util.el
index 2cbb00b324c..9531f06b3c6 100644
--- a/lisp/pcvs-util.el
+++ b/lisp/pcvs-util.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/pcvs.el b/lisp/pcvs.el
index be93104a33f..34a93a1d659 100644
--- a/lisp/pcvs.el
+++ b/lisp/pcvs.el
@@ -29,8 +29,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/5x5.el b/lisp/play/5x5.el
index f012f132352..f76ad703fe7 100644
--- a/lisp/play/5x5.el
+++ b/lisp/play/5x5.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/animate.el b/lisp/play/animate.el
index c7d659e0c99..8e45bafc51c 100644
--- a/lisp/play/animate.el
+++ b/lisp/play/animate.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/blackbox.el b/lisp/play/blackbox.el
index 02f8cb5eeb0..ccb90f3b664 100644
--- a/lisp/play/blackbox.el
+++ b/lisp/play/blackbox.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/bruce.el b/lisp/play/bruce.el
index 57db4cff8cb..f91484d4c2d 100644
--- a/lisp/play/bruce.el
+++ b/lisp/play/bruce.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/cookie1.el b/lisp/play/cookie1.el
index 24cde55373c..3ff307562ed 100644
--- a/lisp/play/cookie1.el
+++ b/lisp/play/cookie1.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/decipher.el b/lisp/play/decipher.el
index 86e6a35b646..263ee14652a 100644
--- a/lisp/play/decipher.el
+++ b/lisp/play/decipher.el
@@ -19,8 +19,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/play/dissociate.el b/lisp/play/dissociate.el
index 63bc7b7d2df..e2ed98ec730 100644
--- a/lisp/play/dissociate.el
+++ b/lisp/play/dissociate.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/doctor.el b/lisp/play/doctor.el
index 7b81daa7782..d2b8156b15a 100644
--- a/lisp/play/doctor.el
+++ b/lisp/play/doctor.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/dunnet.el b/lisp/play/dunnet.el
index 290ee6ebf5d..1d1adb81bf8 100644
--- a/lisp/play/dunnet.el
+++ b/lisp/play/dunnet.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/fortune.el b/lisp/play/fortune.el
index fed7cf5b179..f6c5ec3571f 100644
--- a/lisp/play/fortune.el
+++ b/lisp/play/fortune.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; This utility allows you to automatically cut regions to a fortune
diff --git a/lisp/play/gamegrid.el b/lisp/play/gamegrid.el
index 404f5871144..df68343ddc2 100644
--- a/lisp/play/gamegrid.el
+++ b/lisp/play/gamegrid.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/gametree.el b/lisp/play/gametree.el
index abab58d6018..78add5932f3 100644
--- a/lisp/play/gametree.el
+++ b/lisp/play/gametree.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/gomoku.el b/lisp/play/gomoku.el
index 611c095fbd1..74ddfd3539c 100644
--- a/lisp/play/gomoku.el
+++ b/lisp/play/gomoku.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/handwrite.el b/lisp/play/handwrite.el
index e4efcd13110..2d668f84485 100644
--- a/lisp/play/handwrite.el
+++ b/lisp/play/handwrite.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/play/landmark.el b/lisp/play/landmark.el
index 3dc5e8ad320..feab5de1bc3 100644
--- a/lisp/play/landmark.el
+++ b/lisp/play/landmark.el
@@ -26,8 +26,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/life.el b/lisp/play/life.el
index 53c9389c245..df678d9ecdf 100644
--- a/lisp/play/life.el
+++ b/lisp/play/life.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/morse.el b/lisp/play/morse.el
index ccdf38cedb0..1e3c43cbf80 100644
--- a/lisp/play/morse.el
+++ b/lisp/play/morse.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/mpuz.el b/lisp/play/mpuz.el
index e354da6a04b..22d4216ab0e 100644
--- a/lisp/play/mpuz.el
+++ b/lisp/play/mpuz.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/pong.el b/lisp/play/pong.el
index 66661835f5e..00f740a5f08 100644
--- a/lisp/play/pong.el
+++ b/lisp/play/pong.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/snake.el b/lisp/play/snake.el
index e676d734755..8909f3fada2 100644
--- a/lisp/play/snake.el
+++ b/lisp/play/snake.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/solitaire.el b/lisp/play/solitaire.el
index 22dcea47599..3c36b0e0464 100644
--- a/lisp/play/solitaire.el
+++ b/lisp/play/solitaire.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/spook.el b/lisp/play/spook.el
index d76960fc038..a19140e9657 100644
--- a/lisp/play/spook.el
+++ b/lisp/play/spook.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/tetris.el b/lisp/play/tetris.el
index 5b8746bb1d7..7ef997a9865 100644
--- a/lisp/play/tetris.el
+++ b/lisp/play/tetris.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/yow.el b/lisp/play/yow.el
index 3be9a99bf79..794271fd952 100644
--- a/lisp/play/yow.el
+++ b/lisp/play/yow.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/play/zone.el b/lisp/play/zone.el
index 40e8de790b3..a075729ab99 100644
--- a/lisp/play/zone.el
+++ b/lisp/play/zone.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/printing.el b/lisp/printing.el
index 868ea3fddf3..c73242961cf 100644
--- a/lisp/printing.el
+++ b/lisp/printing.el
@@ -31,7 +31,7 @@ Please send all bug fixes and enhancements to
;; You should have received a copy of the GNU General Public License along with
;; GNU Emacs; see the file COPYING. If not, write to the Free Software
-;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -1179,7 +1179,7 @@ If SUFFIX is non-nil, add that at the end of the file name."
(defgroup printing nil
- "Printing Utilities group"
+ "Printing Utilities group."
:tag "Printing Utilities"
:link '(emacs-library-link :tag "Source Lisp File" "printing.el")
:prefix "pr-"
@@ -6058,7 +6058,7 @@ COMMAND.exe, COMMAND.bat and COMMAND.com in this order."
;; header
(let ((versions (concat "printing v" pr-version
" ps-print v" ps-print-version)))
- (widget-insert (make-string (- 79 (length versions)) ?\ ) versions))
+ (widget-insert (make-string (- 79 (length versions)) ?\s) versions))
(pr-insert-italic "\nCurrent Directory : " 1)
(pr-insert-italic default-directory)
diff --git a/lisp/progmodes/ada-mode.el b/lisp/progmodes/ada-mode.el
index 68afd8ee649..fdb1a9d69f7 100644
--- a/lisp/progmodes/ada-mode.el
+++ b/lisp/progmodes/ada-mode.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;; This mode is a major mode for editing Ada83 and Ada95 source code.
diff --git a/lisp/progmodes/ada-prj.el b/lisp/progmodes/ada-prj.el
index de37da142c1..05d965be887 100644
--- a/lisp/progmodes/ada-prj.el
+++ b/lisp/progmodes/ada-prj.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ada-xref.el b/lisp/progmodes/ada-xref.el
index 8dba21afe9b..4210bfd68fe 100644
--- a/lisp/progmodes/ada-xref.el
+++ b/lisp/progmodes/ada-xref.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;; This Package provides a set of functions to use the output of the
diff --git a/lisp/progmodes/antlr-mode.el b/lisp/progmodes/antlr-mode.el
index 89d167de25d..c2a8d7a4c57 100644
--- a/lisp/progmodes/antlr-mode.el
+++ b/lisp/progmodes/antlr-mode.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/asm-mode.el b/lisp/progmodes/asm-mode.el
index 968dc1a9e23..94ac76c0686 100644
--- a/lisp/progmodes/asm-mode.el
+++ b/lisp/progmodes/asm-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/autoconf.el b/lisp/progmodes/autoconf.el
index 908b18b070b..75b969d9350 100644
--- a/lisp/progmodes/autoconf.el
+++ b/lisp/progmodes/autoconf.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-awk.el b/lisp/progmodes/cc-awk.el
index c7c1290604c..5a770a9bcb2 100644
--- a/lisp/progmodes/cc-awk.el
+++ b/lisp/progmodes/cc-awk.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-bytecomp.el b/lisp/progmodes/cc-bytecomp.el
index e0072723d60..78393e93fc9 100644
--- a/lisp/progmodes/cc-bytecomp.el
+++ b/lisp/progmodes/cc-bytecomp.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-cmds.el b/lisp/progmodes/cc-cmds.el
index 7be8e370f07..d46281b726d 100644
--- a/lisp/progmodes/cc-cmds.el
+++ b/lisp/progmodes/cc-cmds.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-compat.el b/lisp/progmodes/cc-compat.el
index 9ddfe3a6a1f..8458ab9d605 100644
--- a/lisp/progmodes/cc-compat.el
+++ b/lisp/progmodes/cc-compat.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/progmodes/cc-defs.el b/lisp/progmodes/cc-defs.el
index f197a60c6a4..96e7a093f55 100644
--- a/lisp/progmodes/cc-defs.el
+++ b/lisp/progmodes/cc-defs.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el
index e78ec2c508d..410637237cd 100644
--- a/lisp/progmodes/cc-fonts.el
+++ b/lisp/progmodes/cc-fonts.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-langs.el b/lisp/progmodes/cc-langs.el
index 94d58c66061..b080b3eac75 100644
--- a/lisp/progmodes/cc-langs.el
+++ b/lisp/progmodes/cc-langs.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-menus.el b/lisp/progmodes/cc-menus.el
index b116db482c3..27ce9d6deb7 100644
--- a/lisp/progmodes/cc-menus.el
+++ b/lisp/progmodes/cc-menus.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-styles.el b/lisp/progmodes/cc-styles.el
index 14f988feb03..c48956295b8 100644
--- a/lisp/progmodes/cc-styles.el
+++ b/lisp/progmodes/cc-styles.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cc-vars.el b/lisp/progmodes/cc-vars.el
index 89697c58ca8..f8d4d6e125d 100644
--- a/lisp/progmodes/cc-vars.el
+++ b/lisp/progmodes/cc-vars.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cfengine.el b/lisp/progmodes/cfengine.el
index a9e86de44aa..fd64a59c996 100644
--- a/lisp/progmodes/cfengine.el
+++ b/lisp/progmodes/cfengine.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cmacexp.el b/lisp/progmodes/cmacexp.el
index 65eea658d4e..a49b9c3ac7a 100644
--- a/lisp/progmodes/cmacexp.el
+++ b/lisp/progmodes/cmacexp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index f8da248535b..21e7c74e965 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el
index 052df4eedda..480c0a41602 100644
--- a/lisp/progmodes/cperl-mode.el
+++ b/lisp/progmodes/cperl-mode.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Corrections made by Ilya Zakharevich cperl@ilyaz.org
diff --git a/lisp/progmodes/cpp.el b/lisp/progmodes/cpp.el
index 9910f1f548f..41ccc641223 100644
--- a/lisp/progmodes/cpp.el
+++ b/lisp/progmodes/cpp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/cwarn.el b/lisp/progmodes/cwarn.el
index 9dfd4dd9e26..2cc4d1bda77 100644
--- a/lisp/progmodes/cwarn.el
+++ b/lisp/progmodes/cwarn.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/dcl-mode.el b/lisp/progmodes/dcl-mode.el
index 0a89091165c..90a4e0a959f 100644
--- a/lisp/progmodes/dcl-mode.el
+++ b/lisp/progmodes/dcl-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/delphi.el b/lisp/progmodes/delphi.el
index 166e5b8984e..3a558fdb0cd 100644
--- a/lisp/progmodes/delphi.el
+++ b/lisp/progmodes/delphi.el
@@ -19,7 +19,7 @@
;; You should have received a copy of the GNU General Public License along with
;; GNU Emacs; see the file COPYING. If not, write to the Free Software
-;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -88,7 +88,7 @@
)
(defgroup delphi nil
- "Major mode for editing Delphi source in Emacs"
+ "Major mode for editing Delphi source in Emacs."
:version "21.1"
:group 'languages)
@@ -1510,7 +1510,7 @@ before the indent, the point is moved to the indent."
(set-marker-insertion-type marked-point t)
(when (/= old-indent new-indent)
(delete-region line-start (point))
- (insert (make-string new-indent ?\ )))
+ (insert (make-string new-indent ?\s)))
(goto-char marked-point)
(set-marker marked-point nil))))
@@ -1775,7 +1775,7 @@ An error is raised if not in a comment."
(comment-end (delphi-token-end end-comment))
(content-start (delphi-comment-content-start start-comment))
(content-indent (delphi-column-of content-start))
- (content-prefix (make-string content-indent ?\ ))
+ (content-prefix (make-string content-indent ?\s))
(content-prefix-re delphi-leading-spaces-re)
(p nil)
(marked-point (point-marker))) ; Maintain our position reliably.
@@ -1783,9 +1783,9 @@ An error is raised if not in a comment."
;; // style comments need more work.
(setq content-prefix
(let ((comment-indent (delphi-column-of comment-start)))
- (concat (make-string comment-indent ?\ ) "//"
+ (concat (make-string comment-indent ?\s) "//"
(make-string (- content-indent comment-indent 2)
- ?\ )))
+ ?\s)))
content-prefix-re (concat delphi-leading-spaces-re
"//"
delphi-spaces-re)
@@ -1857,8 +1857,8 @@ comment block. If not in a // comment, just does a normal newline."
(comment-start (delphi-token-start start-comment))
(content-start (delphi-comment-content-start start-comment))
(prefix
- (concat (make-string (delphi-column-of comment-start) ?\ ) "//"
- (make-string (- content-start comment-start 2) ?\ ))))
+ (concat (make-string (delphi-column-of comment-start) ?\s) "//"
+ (make-string (- content-start comment-start 2) ?\s))))
(delete-horizontal-space)
(newline)
(insert prefix)))))
diff --git a/lisp/progmodes/ebnf-abn.el b/lisp/progmodes/ebnf-abn.el
index d4d3399dc09..c95959c709f 100644
--- a/lisp/progmodes/ebnf-abn.el
+++ b/lisp/progmodes/ebnf-abn.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ebnf-bnf.el b/lisp/progmodes/ebnf-bnf.el
index 4ea7d5e0404..f0811d0ad80 100644
--- a/lisp/progmodes/ebnf-bnf.el
+++ b/lisp/progmodes/ebnf-bnf.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ebnf-dtd.el b/lisp/progmodes/ebnf-dtd.el
index 2f1d6412d38..43c0ca20efb 100644
--- a/lisp/progmodes/ebnf-dtd.el
+++ b/lisp/progmodes/ebnf-dtd.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ebnf-ebx.el b/lisp/progmodes/ebnf-ebx.el
index 25e6c72d584..c42ab70f747 100644
--- a/lisp/progmodes/ebnf-ebx.el
+++ b/lisp/progmodes/ebnf-ebx.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ebnf-iso.el b/lisp/progmodes/ebnf-iso.el
index 8be521052eb..96ae2842863 100644
--- a/lisp/progmodes/ebnf-iso.el
+++ b/lisp/progmodes/ebnf-iso.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ebnf-otz.el b/lisp/progmodes/ebnf-otz.el
index 1aa8feb25a7..d450addca5d 100644
--- a/lisp/progmodes/ebnf-otz.el
+++ b/lisp/progmodes/ebnf-otz.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ebnf-yac.el b/lisp/progmodes/ebnf-yac.el
index cc1c8c451dd..49f69f857ac 100644
--- a/lisp/progmodes/ebnf-yac.el
+++ b/lisp/progmodes/ebnf-yac.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ebnf2ps.el b/lisp/progmodes/ebnf2ps.el
index 1a680ffa077..72603722dc2 100644
--- a/lisp/progmodes/ebnf2ps.el
+++ b/lisp/progmodes/ebnf2ps.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
(defconst ebnf-version "4.2"
"ebnf2ps.el, v 4.2 <2004/04/04 vinicius>
@@ -1135,14 +1135,14 @@ Elements of ALIST that are not conses are ignored."
;;; Interface to the command system
(defgroup postscript nil
- "PostScript Group"
+ "PostScript Group."
:tag "PostScript"
:version "20"
:group 'emacs)
(defgroup ebnf2ps nil
- "Translate an EBNF to a syntactic chart on PostScript"
+ "Translate an EBNF to a syntactic chart on PostScript."
:prefix "ebnf-"
:version "20"
:group 'wp
@@ -1150,7 +1150,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-special nil
- "Special customization"
+ "Special customization."
:prefix "ebnf-"
:tag "Special"
:version "20"
@@ -1158,7 +1158,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-except nil
- "Except customization"
+ "Except customization."
:prefix "ebnf-"
:tag "Except"
:version "20"
@@ -1166,7 +1166,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-repeat nil
- "Repeat customization"
+ "Repeat customization."
:prefix "ebnf-"
:tag "Repeat"
:version "20"
@@ -1174,7 +1174,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-terminal nil
- "Terminal customization"
+ "Terminal customization."
:prefix "ebnf-"
:tag "Terminal"
:version "20"
@@ -1182,7 +1182,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-non-terminal nil
- "Non-Terminal customization"
+ "Non-Terminal customization."
:prefix "ebnf-"
:tag "Non-Terminal"
:version "20"
@@ -1190,7 +1190,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-production nil
- "Production customization"
+ "Production customization."
:prefix "ebnf-"
:tag "Production"
:version "20"
@@ -1198,7 +1198,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-shape nil
- "Shapes customization"
+ "Shapes customization."
:prefix "ebnf-"
:tag "Shape"
:version "20"
@@ -1206,7 +1206,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-displacement nil
- "Displacement customization"
+ "Displacement customization."
:prefix "ebnf-"
:tag "Displacement"
:version "20"
@@ -1214,7 +1214,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-syntactic nil
- "Syntactic customization"
+ "Syntactic customization."
:prefix "ebnf-"
:tag "Syntactic"
:version "20"
@@ -1222,7 +1222,7 @@ Elements of ALIST that are not conses are ignored."
(defgroup ebnf-optimization nil
- "Optimization customization"
+ "Optimization customization."
:prefix "ebnf-"
:tag "Optimization"
:version "20"
@@ -4623,7 +4623,7 @@ killed after process termination."
(defun ebnf-eps-filename (str)
(let* ((len (length str))
(stri 0)
- (new (make-string len ?\ )))
+ (new (make-string len ?\s)))
(while (< stri len)
(aset new stri (aref ebnf-map-name (aref str stri)))
(setq stri (1+ stri)))
@@ -5523,7 +5523,7 @@ killed after process termination."
(defun ebnf-trim-right (str)
(let* ((len (1- (length str)))
(index len))
- (while (and (> index 0) (= (aref str index) ?\ ))
+ (while (and (> index 0) (= (aref str index) ?\s))
(setq index (1- index)))
(if (= index len)
str
diff --git a/lisp/progmodes/ebrowse.el b/lisp/progmodes/ebrowse.el
index 5f8ea5ae70a..075e7fa9f17 100644
--- a/lisp/progmodes/ebrowse.el
+++ b/lisp/progmodes/ebrowse.el
@@ -21,7 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+;; the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -938,7 +939,8 @@ NOCONFIRM."
(loop for member-buffer in (ebrowse-same-tree-member-buffer-list)
do (kill-buffer member-buffer))
(erase-buffer)
- (insert-file (or buffer-file-name ebrowse--tags-file-name))
+ (with-no-warnings
+ (insert-file (or buffer-file-name ebrowse--tags-file-name)))
(ebrowse-tree-mode)
(current-buffer)))
diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el
index b119b03f0bf..02fa54d0a3e 100644
--- a/lisp/progmodes/etags.el
+++ b/lisp/progmodes/etags.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -40,7 +40,7 @@ Use the `etags' program to make a tags table file.")
;; Make M-x set-variable tags-file-name like M-x visit-tags-table.
;;;###autoload (put 'tags-file-name 'variable-interactive "fVisit tags table: ")
-(defgroup etags nil "Tags tables"
+(defgroup etags nil "Tags tables."
:group 'tools)
;;;###autoload
diff --git a/lisp/progmodes/executable.el b/lisp/progmodes/executable.el
index d278b10ba0c..fd291ef4375 100644
--- a/lisp/progmodes/executable.el
+++ b/lisp/progmodes/executable.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -53,7 +53,7 @@
;;; Code:
(defgroup executable nil
- "Base functionality for executable interpreter scripts"
+ "Base functionality for executable interpreter scripts."
:group 'processes)
;; This used to default to `other', but that doesn't seem to have any
@@ -230,7 +230,7 @@ executable."
(and (goto-char (match-beginning 1))
;; If the line ends in a space,
;; don't offer to change it.
- (not (= (char-after (1- (match-end 1))) ?\ ))
+ (not (= (char-after (1- (match-end 1))) ?\s))
(not (string= argument
(buffer-substring (point) (match-end 1))))
(if (or (not executable-query) no-query-flag
diff --git a/lisp/progmodes/f90.el b/lisp/progmodes/f90.el
index 6eb39051984..99d33553f53 100644
--- a/lisp/progmodes/f90.el
+++ b/lisp/progmodes/f90.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index c47f2e34cd2..4c5f3ad12b9 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -32,6 +32,17 @@
;;; Code:
+;;;; [[ Silence the byte-compiler
+
+(defvar flymake-check-start-time)
+(defvar flymake-check-was-interrupted)
+(defvar flymake-err-info)
+(defvar flymake-is-running)
+(defvar flymake-last-change-time)
+(defvar flymake-new-err-info)
+
+;;;; ]]
+
;;;; [[ Xemacs overlay compatibility
(if (featurep 'xemacs) (progn
(autoload 'make-overlay "overlay" "Overlay compatibility kit." t)
@@ -53,14 +64,15 @@
(defalias 'flymake-float-time
(if (fboundp 'float-time)
'float-time
- (lambda ()
- (multiple-value-bind (s0 s1 s2) (current-time)
- (+ (* (float (ash 1 16)) s0) (float s1) (* 0.0000001 s2))))))
+ (if (featurep 'xemacs)
+ (lambda ()
+ (multiple-value-bind (s0 s1 s2) (current-time)
+ (+ (* (float (ash 1 16)) s0) (float s1) (* 0.0000001 s2)))))))
(defsubst flymake-replace-regexp-in-string (regexp rep str)
- (if (fboundp 'replace-regexp-in-string)
- (replace-regexp-in-string regexp rep str)
- (replace-in-string str regexp rep)))
+ (if (fboundp 'replace-in-string)
+ (replace-in-string str regexp rep)
+ (replace-regexp-in-string regexp rep str)))
(defun flymake-split-string (str pattern)
"Split STR into a list of substrings bounded by PATTERN.
@@ -390,7 +402,7 @@ Return t if so, nil if not."
(defun flymake-find-possible-master-files (file-name master-file-dirs masks)
"Find (by name and location) all possible master files.
-Master files are .cpp and .c for and .h. Files are searched for
+Master files are .cpp and .c for and .h. Files are searched for
starting from the .h directory and max max-level parent dirs.
File contents are not checked."
(let* ((dirs master-file-dirs)
@@ -423,9 +435,9 @@ File contents are not checked."
files))
(defun flymake-master-file-compare (file-one file-two)
- "Compare two files speccified by FILE-ONE and FILE-TWO.
+ "Compare two files specified by FILE-ONE and FILE-TWO.
This function is used in sort to move most possible file names
-to the beginning of the list (File.h -> File.cpp moved to top."
+to the beginning of the list (File.h -> File.cpp moved to top)."
(and (equal (file-name-sans-extension flymake-included-file-name)
(file-name-sans-extension (file-name-nondirectory file-one)))
(not (equal file-one file-two))))
@@ -750,7 +762,7 @@ It's flymake process filter."
(defun flymake-get-line-err-count (line-err-info-list type)
"Return number of errors of specified TYPE.
-Value of TYPE is eigher e or w."
+Value of TYPE is either \"e\" or \"w\"."
(let* ((idx 0)
(count (length line-err-info-list))
(err-count 0))
@@ -859,7 +871,7 @@ Return t if it has at least one flymake overlay, nil if no overlay."
(defun flymake-highlight-line (line-no line-err-info-list)
"Highlight line LINE-NO in current buffer.
-Perhaps use text from LINE-ERR-INFO-ILST to enhance highlighting."
+Perhaps use text from LINE-ERR-INFO-LIST to enhance highlighting."
(goto-line line-no)
(let* ((line-beg (flymake-line-beginning-position))
(line-end (flymake-line-end-position))
@@ -995,8 +1007,8 @@ from compile.el")
;;)
(defun flymake-parse-line (line)
- "Parse LINE to see if it is an error of warning.
-Return its components if so, nil if no."
+ "Parse LINE to see if it is an error or warning.
+Return its components if so, nil otherwise."
(let ((raw-file-name nil)
(line-no 0)
(err-type "e")
@@ -1110,7 +1122,7 @@ For the format of LINE-ERR-INFO, see `flymake-ler-make-ler'."
inc-dirs)))
(defcustom flymake-get-project-include-dirs-function 'flymake-get-project-include-dirs-imp
- "Function used to get project inc dirs, one paramater: basedir name."
+ "Function used to get project include dirs, one parameter: basedir name."
:group 'flymake
:type 'function)
@@ -1138,24 +1150,6 @@ For the format of LINE-ERR-INFO, see `flymake-ler-make-ler'."
(let* ((include-dirs (append '(".") (flymake-get-project-include-dirs base-dir) (flymake-get-system-include-dirs))))
include-dirs))
-(defun flymake-find-file (rel-file-name include-dirs)
- "Iterate through include-dirs to find file REL-FILE-NAME.
-Return first 'INCLUDE-DIRS/REL-FILE-NAME' that exists, or just REL-FILE-NAME if not."
- (let* ((count (length include-dirs))
- (idx 0)
- (found nil)
- (full-file-name rel-file-name))
-
- (while (and (not found) (< idx count))
- (let* ((dir (nth idx include-dirs)))
- (setq full-file-name (concat dir "/" rel-file-name))
- (when (file-exists-p full-file-name)
- (setq found t)))
- (setq idx (1+ idx)))
- (if found
- full-file-name
- rel-file-name)))
-
(defun flymake-restore-formatting (source-buffer)
"Remove any formatting made by flymake."
)
@@ -1366,7 +1360,7 @@ Return first 'INCLUDE-DIRS/REL-FILE-NAME' that exists, or just REL-FILE-NAME if
(flymake-log 1 "no errors for line %d" line-no))))
(defun flymake-make-err-menu-data (line-no line-err-info-list)
- "Make a (menu-title (item-title item-action)*) list with errors/warnings from line-err-info."
+ "Make a (menu-title (item-title item-action)*) list with errors/warnings from LINE-ERR-INFO-LIST."
(let* ((menu-items nil))
(when line-err-info-list
(let* ((count (length line-err-info-list))
@@ -1431,7 +1425,7 @@ Return first 'INCLUDE-DIRS/REL-FILE-NAME' that exists, or just REL-FILE-NAME if
(message-box warning))
(defcustom flymake-gui-warnings-enabled t
- "Enables/disables gui warnings."
+ "Enables/disables GUI warnings."
:group 'flymake
:type 'boolean)
@@ -1445,61 +1439,62 @@ Return first 'INCLUDE-DIRS/REL-FILE-NAME' that exists, or just REL-FILE-NAME if
(flymake-log 0 "switched OFF Flymake mode for buffer %s due to fatal status %s, warning %s"
(buffer-name buffer) status warning)))
+(defcustom flymake-start-syntax-check-on-find-file t
+ "Start syntax check on find file."
+ :group 'flymake
+ :type 'boolean)
+
;;;###autoload
(define-minor-mode flymake-mode
"Minor mode to do on-the-fly syntax checking.
When called interactively, toggles the minor mode.
With arg, turn Flymake mode on if and only if arg is positive."
:group 'flymake :lighter flymake-mode-line
- (if flymake-mode
- (if (flymake-can-syntax-check-file (buffer-file-name))
- (flymake-mode-on)
- (flymake-log 2 "flymake cannot check syntax in buffer %s" (buffer-name)))
- (flymake-mode-off)))
+ (cond
+
+ ;; Turning the mode ON.
+ (flymake-mode
+ (if (not (flymake-can-syntax-check-file buffer-file-name))
+ (flymake-log 2 "flymake cannot check syntax in buffer %s" (buffer-name))
+ (add-hook 'after-change-functions 'flymake-after-change-function nil t)
+ (add-hook 'after-save-hook 'flymake-after-save-hook nil t)
+ (add-hook 'kill-buffer-hook 'flymake-kill-buffer-hook nil t)
+ ;;+(add-hook 'find-file-hook 'flymake-find-file-hook)
+
+ (flymake-report-status (current-buffer) "" "")
+
+ (setq flymake-timer
+ (run-at-time nil 1 'flymake-on-timer-event (current-buffer)))
+
+ (when flymake-start-syntax-check-on-find-file
+ (flymake-start-syntax-check-for-current-buffer))))
+
+ ;; Turning the mode OFF.
+ (t
+ (remove-hook 'after-change-functions 'flymake-after-change-function t)
+ (remove-hook 'after-save-hook 'flymake-after-save-hook t)
+ (remove-hook 'kill-buffer-hook 'flymake-kill-buffer-hook t)
+ ;;+(remove-hook 'find-file-hook (function flymake-find-file-hook) t)
-(defcustom flymake-start-syntax-check-on-find-file t
- "Start syntax check on find file."
- :group 'flymake
- :type 'boolean)
+ (flymake-delete-own-overlays (current-buffer))
+
+ (when flymake-timer
+ (cancel-timer flymake-timer)
+ (setq flymake-timer nil))
+
+ (setq flymake-is-running nil))))
;;;###autoload
(defun flymake-mode-on ()
"Turn flymake mode on."
- (when (not flymake-mode)
- (make-local-variable 'after-change-functions)
- (setq after-change-functions (cons 'flymake-after-change-function after-change-functions))
- (add-hook 'after-save-hook 'flymake-after-save-hook)
- (add-hook 'kill-buffer-hook 'flymake-kill-buffer-hook)
- ;;+(add-hook 'find-file-hook 'flymake-find-file-hook)
-
- (flymake-report-status (current-buffer) "" "")
-
- (setq flymake-timer
- (run-at-time nil 1 'flymake-on-timer-event (current-buffer)))
-
- (setq flymake-mode t)
- (flymake-log 1 "flymake mode turned ON for buffer %s" (buffer-name (current-buffer)))
- (when flymake-start-syntax-check-on-find-file
- (flymake-start-syntax-check-for-current-buffer)))) ; will be started by on-load hook
+ (flymake-mode 1)
+ (flymake-log 1 "flymake mode turned ON for buffer %s" (buffer-name)))
;;;###autoload
(defun flymake-mode-off ()
"Turn flymake mode off."
- (when flymake-mode
- (setq after-change-functions (delq 'flymake-after-change-function after-change-functions))
- (remove-hook 'after-save-hook (function flymake-after-save-hook) t)
- (remove-hook 'kill-buffer-hook (function flymake-kill-buffer-hook) t)
- ;;+(remove-hook 'find-file-hook (function flymake-find-file-hook) t)
-
- (flymake-delete-own-overlays (current-buffer))
-
- (when flymake-timer
- (cancel-timer flymake-timer)
- (setq flymake-timer nil))
-
- (setq flymake-is-running nil)
- (setq flymake-mode nil)
- (flymake-log 1 "flymake mode turned OFF for buffer %s" (buffer-name (current-buffer)))))
+ (flymake-mode 0)
+ (flymake-log 1 "flymake mode turned OFF for buffer %s" (buffer-name)))
(defcustom flymake-start-syntax-check-on-newline t
"Start syntax check if newline char was added/removed from the buffer."
@@ -1532,7 +1527,7 @@ With arg, turn Flymake mode on if and only if arg is positive."
;;+ (flymake-start-syntax-check-for-current-buffer)
;;+)
(when (and (not (local-variable-p 'flymake-mode (current-buffer)))
- (flymake-can-syntax-check-file (buffer-file-name (current-buffer))))
+ (flymake-can-syntax-check-file buffer-file-name))
(flymake-mode)
(flymake-log 3 "automatically turned ON flymake mode")))
@@ -1557,7 +1552,7 @@ With arg, turn Flymake mode on if and only if arg is positive."
(flymake-er-get-line (nth idx err-info-list))))))
(defun flymake-get-prev-err-line-no (err-info-list line-no)
- "Return prev line with error."
+ "Return previous line with error."
(when err-info-list
(let* ((count (length err-info-list)))
(while (and (> count 0) (<= line-no (flymake-er-get-line (nth (1- count) err-info-list))))
@@ -1587,7 +1582,7 @@ With arg, turn Flymake mode on if and only if arg is positive."
(flymake-log 1 "no errors in current buffer"))))
(defun flymake-goto-prev-error ()
- "Go to prev error in err ring."
+ "Go to previous error in err ring."
(interactive)
(let ((line-no (flymake-get-prev-err-line-no flymake-err-info (flymake-current-line-no))))
(when (not line-no)
diff --git a/lisp/progmodes/fortran.el b/lisp/progmodes/fortran.el
index 458a4c8de2b..371cc610912 100644
--- a/lisp/progmodes/fortran.el
+++ b/lisp/progmodes/fortran.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el
index 7653ff90a2f..584b0ae8144 100644
--- a/lisp/progmodes/gdb-ui.el
+++ b/lisp/progmodes/gdb-ui.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/glasses.el b/lisp/progmodes/glasses.el
index 7aff14ec608..b32c5eb6d49 100644
--- a/lisp/progmodes/glasses.el
+++ b/lisp/progmodes/glasses.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el
index f3657a0a279..0f1045eeb5a 100644
--- a/lisp/progmodes/grep.el
+++ b/lisp/progmodes/grep.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index dc7e64e6e35..50644383667 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -4,7 +4,7 @@
;; Maintainer: FSF
;; Keywords: unix, tools
-;; Copyright (C) 1992,93,94,95,96,1998,2000,02,03,04 Free Software Foundation, Inc.
+;; Copyright (C) 1992,93,94,95,96,1998,2000,02,03,04,05 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -43,6 +43,7 @@
(require 'comint)
(require 'etags)
+(require 'font-lock)
;; ======================================================================
;; GUD commands must be visible in C buffers visited by GUD
@@ -2534,9 +2535,8 @@ It is saved for when this flag is not set.")
;; This must be outside of the save-excursion
;; in case the source file is our current buffer.
(if process-window
- (progn
(with-selected-window process-window
- (gud-display-frame)))
+ (gud-display-frame))
;; We have to be in the proper buffer, (process-buffer proc),
;; but not in a save-excursion, because that would restore point.
(with-current-buffer (process-buffer proc)
diff --git a/lisp/progmodes/hideif.el b/lisp/progmodes/hideif.el
index 23031c5bcda..35524b4a363 100644
--- a/lisp/progmodes/hideif.el
+++ b/lisp/progmodes/hideif.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -960,7 +960,9 @@ Return as (TOP . BOTTOM) the extent of ifdef block."
"Set `hide-ifdef-env' to the define list specified by NAME."
(interactive
(list (completing-read "Use define list: "
- hide-ifdef-define-alist nil t)))
+ (mapcar (lambda (x) (symbol-name (car x)))
+ hide-ifdef-define-alist)
+ nil t)))
(if (stringp name) (setq name (intern name)))
(let ((define-list (assoc name hide-ifdef-define-alist)))
(if define-list
@@ -972,5 +974,5 @@ Return as (TOP . BOTTOM) the extent of ifdef block."
(provide 'hideif)
-;;; arch-tag: c6381d17-a59a-483a-b945-658f22277981
+;; arch-tag: c6381d17-a59a-483a-b945-658f22277981
;;; hideif.el ends here
diff --git a/lisp/progmodes/hideshow.el b/lisp/progmodes/hideshow.el
index d4229cf44c6..0acb995d2f0 100644
--- a/lisp/progmodes/hideshow.el
+++ b/lisp/progmodes/hideshow.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/icon.el b/lisp/progmodes/icon.el
index 0eb1b8bf3df..66869d8e6de 100644
--- a/lisp/progmodes/icon.el
+++ b/lisp/progmodes/icon.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/idlw-complete-structtag.el b/lisp/progmodes/idlw-complete-structtag.el
new file mode 100644
index 00000000000..e8020937485
--- /dev/null
+++ b/lisp/progmodes/idlw-complete-structtag.el
@@ -0,0 +1,243 @@
+;;; idlw-complete-structtag.el --- Completion of structure tags.
+;; Copyright (c) 2001,2002 Free Software Foundation
+
+;; Author: Carsten Dominik <dominik@science.uva.nl>
+;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
+;; Version: 1.2
+;; Keywords: languages
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING. If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+
+;; Completion of structure tags can be done automatically in the
+;; shell, since the list of tags can be determined dynamically through
+;; interaction with IDL.
+
+;; Completion of structure tags in a source buffer is highly ambiguous
+;; since you never know what kind of structure a variable will hold at
+;; runtime. To make this feature useful in source buffers, we need a
+;; special assumption/convention. We will assume that the structure is
+;; defined in the same buffer and directly assigned to the correct
+;; variable. This is mainly useful for applications in which there is one
+;; main structure which contains a large amount of information (and many
+;; tags). For example, many widget applications define a "state" structure
+;; that contains all important data about the application. The different
+;; routines called by the event handler then use this structure. If you
+;; use the same variable name for this structure throughout your
+;; application (a good idea for many reasons), IDLWAVE can support
+;; completion for its tags.
+;;
+;; This file is a completion plugin which implements this kind of
+;; completion. It is also an example which shows how completion plugins
+;; should be programmed.
+;;
+;; New versions of IDLWAVE, documentation, and more information available
+;; from:
+;; http://idlwave.org
+;;
+;; INSTALLATION
+;; ============
+;; Put this file on the emacs load path and load it with the following
+;; line in your .emacs file:
+;;
+;; (add-hook 'idlwave-load-hook
+;; (lambda () (require 'idlw-complete-structtag)))
+;;
+;; DESCRIPTION
+;; ===========
+;; Suppose your IDL program contains something like
+;;
+;; myvar = state.a*
+;;
+;; where the star marks the cursor position. If you now press the
+;; completion key M-TAB, IDLWAVE searches the current file for a
+;; structure definition
+;;
+;; state = {tag1:val1, tag2:val2, ...}
+;;
+;; and offers the tags for completion.
+;;
+;; In the idlwave shell, idlwave sends a "print,tag_names()" for the
+;; variable to idl and determines the current tag list dynamically.
+;;
+;; Notes
+;; -----
+;; - The structure definition assignment "state = {...}" must use the
+;; same variable name as the the completion location "state.*".
+;; - The structure definition must be in the same file.
+;; - The structure definition is searched backwards and then forward
+;; from the current position, until a definition with tags is found.
+;; - The file is parsed again for each new completion variable and location.
+;; - You can force an update of the tag list with the usual command
+;; to update routine info in IDLWAVE: C-c C-i
+
+
+;; Some variables to identify the previously used structure
+(defvar idlwave-current-tags-var nil)
+(defvar idlwave-current-tags-buffer nil)
+(defvar idlwave-current-tags-completion-pos nil)
+
+;; The tag list used for completion will be stored in the following vars
+(defvar idlwave-current-struct-tags nil)
+(defvar idlwave-sint-structtags nil)
+
+;; Create the sintern type for structure talks
+(idlwave-new-sintern-type 'structtag)
+
+;; Hook the plugin into idlwave
+(add-to-list 'idlwave-complete-special 'idlwave-complete-structure-tag)
+(add-hook 'idlwave-update-rinfo-hook 'idlwave-structtag-reset)
+
+;;; The main code follows below
+
+(defun idlwave-complete-structure-tag ()
+ "Complete a structure tag.
+This works by looking in the current file for a structure assignment to a
+variable with the same name and takes the tags from there. Quite useful
+for big structures like the state variables of a widget application.
+
+In the idlwave shell, the current content of the variable is used to get
+an up-to-date completion list."
+ (interactive)
+ (let ((pos (point))
+ start
+ (case-fold-search t))
+ (if (save-excursion
+ ;; Check if the context is right.
+ ;; In the shell, this could be extended to expressions like
+ ;; x[i+4].name.g*. But it is complicated because we would have
+ ;; to really parse this expression. For now, we allow only
+ ;; substructures, like "aaa.bbb.ccc.ddd"
+ (skip-chars-backward "[a-zA-Z0-9._$]")
+ (setq start (point)) ;; remember the start of the completion pos.
+ (and (< (point) pos)
+ (not (equal (char-before) ?!)) ; no sysvars
+ (looking-at "\\([a-zA-Z][.a-zA-Z0-9_]*\\)\\.")
+ (>= pos (match-end 0))
+ (not (string= (downcase (match-string 1)) "self"))))
+ (let* ((var (downcase (match-string 1))))
+ ;; Check if we need to update the "current" structure. Basically we
+ ;; do it always, except for subsequent completions at the same
+ ;; spot, to save a bit of time. Implementation: We require
+ ;; an update if
+ ;; - the variable is different or
+ ;; - the buffer is different or
+ ;; - we are completing at a different position
+ (if (or (not (string= var (or idlwave-current-tags-var "@")))
+ (not (eq (current-buffer) idlwave-current-tags-buffer))
+ (not (equal start idlwave-current-tags-completion-pos)))
+ (idlwave-prepare-structure-tag-completion var))
+ (setq idlwave-current-tags-completion-pos start)
+ (setq idlwave-completion-help-info
+ (list 'idlwave-complete-structure-tag-help))
+ (idlwave-complete-in-buffer 'structtag 'structtag
+ idlwave-current-struct-tags nil
+ "Select a structure tag" "structure tag")
+ t) ; we did the completion: return t to skip other completions
+ nil))) ; return nil to allow looking for other ways to complete
+
+(defun idlwave-structtag-reset ()
+ "Force an update of the current structure tag list upon next use."
+ (setq idlwave-current-tags-buffer nil))
+
+(defvar idlwave-structtag-struct-location nil
+ "The location of the structure definition, for help display.")
+
+(defun idlwave-prepare-structure-tag-completion (var)
+ "Find and parse the tag list for structure tag completion."
+ ;; This works differently in source buffers and in the shell
+ (if (eq major-mode 'idlwave-shell-mode)
+ ;; OK, we are in the shell, do it dynamically
+ (progn
+ (message "preparing shell tags")
+ ;; The following call puts the tags into `idlwave-current-struct-tags'
+ (idlwave-complete-structure-tag-query-shell var)
+ ;; initialize
+ (setq idlwave-sint-structtags nil
+ idlwave-current-tags-buffer (current-buffer)
+ idlwave-current-tags-var var
+ idlwave-structtag-struct-location (point)
+ idlwave-current-struct-tags
+ (mapcar (lambda (x)
+ (list (idlwave-sintern-structtag x 'set)))
+ idlwave-current-struct-tags))
+ (if (not idlwave-current-struct-tags)
+ (error "Cannot complete structure tags of variable %s" var)))
+ ;; Not the shell, so probably a source buffer.
+ (unless
+ (catch 'exit
+ (save-excursion
+ (goto-char (point-max))
+ ;; Find possible definitions of the structure.
+ (while (idlwave-find-structure-definition var nil 'all)
+ (let ((tags (idlwave-struct-tags)))
+ (when tags
+ ;; initialize
+ (setq idlwave-sint-structtags nil
+ idlwave-current-tags-buffer (current-buffer)
+ idlwave-current-tags-var var
+ idlwave-structtag-struct-location (point)
+ idlwave-current-struct-tags
+ (mapcar (lambda (x)
+ (list (idlwave-sintern-structtag x 'set)))
+ tags))
+ (throw 'exit t))))))
+ (error "Cannot complete structure tags of variable %s" var))))
+
+(defun idlwave-complete-structure-tag-query-shell (var)
+ "Ask the shell for the tags of the structure in variable or expression VAR."
+ (idlwave-shell-send-command
+ (format "if size(%s,/TYPE) eq 8 then print,tag_names(%s)" var var)
+ 'idlwave-complete-structure-tag-get-tags-from-help
+ 'hide 'wait))
+
+(defvar idlwave-shell-prompt-pattern)
+(defvar idlwave-shell-command-output)
+(defun idlwave-complete-structure-tag-get-tags-from-help ()
+ "Filter structure tag name output, result to `idlwave-current-struct-tags'."
+ (setq idlwave-current-struct-tags
+ (if (string-match (concat "tag_names(.*) *\n"
+ "\\(\\(.*[\r\n]?\\)*\\)"
+ "\\(" idlwave-shell-prompt-pattern "\\)")
+ idlwave-shell-command-output)
+ (split-string (match-string 1 idlwave-shell-command-output)))))
+
+
+;; Fake help in the source buffer for structure tags.
+;; kwd and name are global-variables here.
+(defvar name)
+(defvar kwd)
+(defvar idlwave-help-do-struct-tag)
+(defun idlwave-complete-structure-tag-help (mode word)
+ (cond
+ ((eq mode 'test)
+ ;; fontify only in source buffers, not in the shell.
+ (not (equal idlwave-current-tags-buffer
+ (get-buffer (idlwave-shell-buffer)))))
+ ((eq mode 'set)
+ (setq kwd word
+ idlwave-help-do-struct-tag idlwave-structtag-struct-location))
+ (t (error "This should not happen"))))
+
+(provide 'idlw-complete-structtag)
+
+;;; idlw-complete-structtag.el ends here
+
+
+;; arch-tag: d1f9e55c-e504-4187-9c31-3c3651fa4bfa
diff --git a/lisp/progmodes/idlw-help.el b/lisp/progmodes/idlw-help.el
index ba31e6e0ef8..f038149aaad 100644
--- a/lisp/progmodes/idlw-help.el
+++ b/lisp/progmodes/idlw-help.el
@@ -4,9 +4,9 @@
;; Copyright (c) 2003,2004,2005 Free Software Foundation
;;
;; Authors: J.D. Smith <jdsmith@as.arizona.edu>
-;; Carsten Dominik <dominik@astro.uva.nl>
+;; Carsten Dominik <dominik@science.uva.nl>
;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
-;; Version: 5.5
+;; Version: 5.7_22
;; This file is part of GNU Emacs.
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -36,12 +36,18 @@
;; information, at:
;;
;; http://idlwave.org
-;;
+;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Code:
-(require 'browse-url)
+(defvar idlwave-help-browse-url-available nil
+ "Whether browse-url is available")
+
+(setq idlwave-help-browse-url-available
+ (condition-case nil
+ (require 'browse-url)
+ (error nil)))
(defgroup idlwave-online-help nil
"Online Help options for IDLWAVE mode."
@@ -52,10 +58,10 @@
:group 'idlwave-online-help
:type 'boolean)
-(defvar idlwave-html-link-sep
+(defvar idlwave-html-link-sep
(if idlwave-html-help-pre-v6 "#" "#wp"))
-(defcustom idlwave-html-help-location
+(defcustom idlwave-html-help-location
(if (memq system-type '(ms-dos windows-nt))
nil
"/usr/local/etc/")
@@ -83,7 +89,7 @@ Defaults to `browse-url-browser-function', which see."
:group 'idlwave-online-help
:type 'string)
-(defcustom idlwave-help-browser-generic-args
+(defcustom idlwave-help-browser-generic-args
(if (boundp 'browse-url-generic-args)
browse-url-generic-args "")
"Program args to use if using browse-url-generic-program."
@@ -183,8 +189,7 @@ support."
:type 'string)
(defface idlwave-help-link
- '((((min-colors 88) (class color)) (:foreground "Blue1"))
- (((class color)) (:foreground "Blue"))
+ '((((class color)) (:foreground "Blue"))
(t (:weight bold)))
"Face for highlighting links into IDLWAVE online help."
:group 'idlwave-online-help)
@@ -193,7 +198,7 @@ support."
(defvar idlwave-help-activate-links-aggressively nil
"Obsolete variable.")
-
+
(defvar idlwave-completion-help-info)
(defvar idlwave-help-frame nil
@@ -242,6 +247,10 @@ support."
"--"
["Quit" idlwave-help-quit t]))
+(defvar idlwave-help-def-pos)
+(defvar idlwave-help-args)
+(defvar idlwave-help-in-header)
+
(defun idlwave-help-mode ()
"Major mode for displaying IDL Help.
@@ -282,6 +291,7 @@ Here are all keybindings.
(set (make-local-variable 'idlwave-help-in-header) nil)
(run-mode-hooks 'idlwave-help-mode-hook))
+(defvar idlwave-system-directory)
(defun idlwave-html-help-location ()
"Return the help directory where HTML files are, or nil if that is unknown."
(or (and (stringp idlwave-html-help-location)
@@ -316,16 +326,20 @@ It collects and prints the diagnostics messages."
(setq idlwave-last-context-help-pos marker)
(idlwave-do-context-help1 arg)
(if idlwave-help-diagnostics
- (message "%s" (mapconcat 'identity
+ (message "%s" (mapconcat 'identity
(nreverse idlwave-help-diagnostics)
"; "))))))
(defvar idlwave-help-do-class-struct-tag nil)
+(defvar idlwave-structtag-struct-location)
(defvar idlwave-help-do-struct-tag nil)
+(defvar idlwave-system-variables-alist)
+(defvar idlwave-executive-commands-alist)
+(defvar idlwave-system-class-info)
(defun idlwave-do-context-help1 (&optional arg)
"The work-horse version of `idlwave-context-help', which see."
(save-excursion
- (if (equal (char-after) ?/)
+ (if (equal (char-after) ?/)
(forward-char 1)
(if (equal (char-before) ?=)
(backward-char 1)))
@@ -335,7 +349,7 @@ It collects and prints the diagnostics messages."
(beg (save-excursion (skip-chars-backward chars) (point)))
(end (save-excursion (skip-chars-forward chars) (point)))
(this-word (buffer-substring-no-properties beg end))
- (st-ass (assoc (downcase this-word)
+ (st-ass (assoc (downcase this-word)
idlwave-help-special-topic-words))
(classtag (and (string-match "self\\." this-word)
(< beg (- end 4))))
@@ -343,7 +357,7 @@ It collects and prints the diagnostics messages."
(string-match "\\`\\([^.]+\\)\\." this-word)
(< beg (- end 4))))
module keyword cw mod1 mod2 mod3)
- (if (or arg
+ (if (or arg
(and (not st-ass)
(not classtag)
(not structtag)
@@ -362,15 +376,15 @@ It collects and prints the diagnostics messages."
(setq module (list "init" 'fun (match-string 1 str))
idlwave-current-obj_new-class (match-string 1 str))
)))))
- (cond
+ (cond
(arg (setq mod1 module))
-
+
;; A special topic -- only system help
(st-ass (setq mod1 (list (cdr st-ass))))
-
+
;; A system variable -- only system help
- ((string-match
- "\\`!\\([a-zA-Z0-9_]+\\)\\(\.\\([A-Za-z0-9_]+\\)\\)?"
+ ((string-match
+ "\\`!\\([a-zA-Z0-9_]+\\)\\(\.\\([A-Za-z0-9_]+\\)\\)?"
this-word)
(let* ((word (match-string-no-properties 1 this-word))
(entry (assq (idlwave-sintern-sysvar word)
@@ -382,19 +396,18 @@ It collects and prints the diagnostics messages."
(cdr (assq 'tags entry))))))
(link (nth 1 (assq 'link entry))))
(if tag-target
- (setq link (idlwave-substitute-link-target link
+ (setq link (idlwave-substitute-link-target link
tag-target)))
(setq mod1 (list link))))
-
+
;; An executive command -- only system help
((string-match "^\\.\\([A-Z_]+\\)" this-word)
(let* ((word (match-string 1 this-word))
(link (cdr (assoc-string
word
- idlwave-executive-commands-alist
- t))))
+ idlwave-executive-commands-alist t))))
(setq mod1 (list link))))
-
+
;; A class -- system OR in-text help (via class__define).
((and (eq cw 'class)
(or (idlwave-in-quote) ; e.g. obj_new
@@ -408,28 +421,28 @@ It collects and prints the diagnostics messages."
(name (concat (downcase this-word) "__define"))
(link (nth 1 (assq 'link entry))))
(setq mod1 (list link name 'pro))))
-
+
;; A class structure tag (self.BLAH) -- only in-text help available
(classtag
(let ((tag (substring this-word (match-end 0)))
class-with found-in)
- (when (setq class-with
+ (when (setq class-with
(idlwave-class-or-superclass-with-tag
(nth 2 (idlwave-current-routine))
tag))
(setq found-in (idlwave-class-found-in class-with))
- (if (assq (idlwave-sintern-class class-with)
+ (if (assq (idlwave-sintern-class class-with)
idlwave-system-class-info)
(error "No help available for system class tags"))
(setq idlwave-help-do-class-struct-tag t)
- (setq mod1 (list nil
+ (setq mod1 (list nil
(if found-in
(cons (concat found-in "__define") class-with)
(concat class-with "__define"))
'pro
nil ; no class.... it's a procedure!
tag)))))
-
+
;; A regular structure tag -- only in text, and if
;; optional `complete-structtag' loaded.
(structtag
@@ -440,7 +453,7 @@ It collects and prints the diagnostics messages."
(setq idlwave-help-do-struct-tag
idlwave-structtag-struct-location
mod1 (list nil nil nil nil tag))))
-
+
;; A routine keyword -- in text or system help
((and (memq cw '(function-keyword procedure-keyword))
(stringp this-word)
@@ -482,7 +495,7 @@ It collects and prints the diagnostics messages."
(setq mod1 (append (list t) module (list keyword))
mod2 (list t this-word 'fun nil)
mod3 (append (list t) module)))))
-
+
;; Everything else
(t
(setq mod1 (append (list t) module))))
@@ -515,14 +528,14 @@ Needs additional info stored in global `idlwave-completion-help-info'."
word link)
(mouse-set-point ev)
-
+
;; See if we can also find help somewhere, e.g. for multiple classes
(setq word (idlwave-this-word))
(if (string= word "")
(error "No help item selected"))
(setq link (get-text-property 0 'link word))
(select-window cw)
- (cond
+ (cond
;; Routine name
((memq what '(procedure function routine))
(setq name word)
@@ -533,9 +546,9 @@ Needs additional info stored in global `idlwave-completion-help-info'."
type)))
(setq link t) ; No specific link valid yet
(if sclasses
- (setq classes (idlwave-members-only
+ (setq classes (idlwave-members-only
classes (cons class sclasses))))
- (setq class (idlwave-popup-select ev classes
+ (setq class (idlwave-popup-select ev classes
"Select Class" 'sort))))
;; XXX is this necessary, given all-method-classes?
@@ -555,7 +568,7 @@ Needs additional info stored in global `idlwave-completion-help-info'."
type)))
(setq link t) ; Link can't be correct yet
(if sclasses
- (setq classes (idlwave-members-only
+ (setq classes (idlwave-members-only
classes (cons class sclasses))))
(setq class (idlwave-popup-select ev classes
"Select Class" 'sort))
@@ -567,14 +580,14 @@ Needs additional info stored in global `idlwave-completion-help-info'."
(if (string= (downcase name) "obj_new")
(setq class idlwave-current-obj_new-class
name "Init"))))
-
+
;; Class name
((eq what 'class)
(setq class word
word nil))
-
+
;; A special named function to call which sets some of our variables
- ((and (symbolp what)
+ ((and (symbolp what)
(fboundp what))
(funcall what 'set word))
@@ -589,7 +602,7 @@ Needs additional info stored in global `idlwave-completion-help-info'."
"Highlight all completions for which help is available and attach link.
Those words in `idlwave-completion-help-links' have links. The
`idlwave-help-link' face is used for this."
- (if idlwave-highlight-help-links-in-completion
+ (if idlwave-highlight-help-links-in-completion
(with-current-buffer (get-buffer "*Completions*")
(save-excursion
(let* ((case-fold-search t)
@@ -605,7 +618,7 @@ Those words in `idlwave-completion-help-links' have links. The
(setq beg (match-beginning 1) end (match-end 1)
word (match-string 1) doit nil)
;; Call special completion function test
- (if (and (symbolp what)
+ (if (and (symbolp what)
(fboundp what))
(setq doit (funcall what 'test word))
;; Look for special link property passed in help-links
@@ -636,13 +649,13 @@ Those words in `idlwave-completion-help-links' have links. The
;; Try to select the return frame.
;; This can crash on slow network connections, obviously when
;; we kill the help frame before the return-frame is selected.
- ;; To protect the workings, we wait for up to one second
+ ;; To protect the workings, we wait for up to one second
;; and check if the return-frame *is* now selected.
;; This is marked "eperimental" since we are not sure when its OK.
(let ((maxtime 1.0) (time 0.) (step 0.1))
(select-frame idlwave-help-return-frame)
(while (and (sit-for step)
- (not (eq (selected-frame)
+ (not (eq (selected-frame)
idlwave-help-return-frame))
(< (setq time (+ time step)) maxtime)))))
(delete-frame idlwave-help-frame))
@@ -655,7 +668,7 @@ Those words in `idlwave-completion-help-links' have links. The
(defvar default-toolbar-visible-p)
(defun idlwave-help-display-help-window (&optional pos-or-func)
- "Display the help window.
+ "Display the help window.
Move window start to POS-OR-FUNC, if passed as a position, or call it
if passed as a function. See `idlwave-help-use-dedicated-frame'."
(let ((cw (selected-window))
@@ -666,13 +679,13 @@ if passed as a function. See `idlwave-help-use-dedicated-frame'."
(switch-to-buffer buf))
;; Do it in this frame and save the window configuration
(if (not (get-buffer-window buf nil))
- (setq idlwave-help-window-configuration
+ (setq idlwave-help-window-configuration
(current-window-configuration)))
(display-buffer buf nil (selected-frame))
(select-window (get-buffer-window buf)))
(raise-frame)
- (if pos-or-func
- (if (functionp pos-or-func)
+ (if pos-or-func
+ (if (functionp pos-or-func)
(funcall pos-or-func)
(goto-char pos-or-func)
(recenter 0)))
@@ -694,31 +707,31 @@ if passed as a function. See `idlwave-help-use-dedicated-frame'."
(select-frame idlwave-help-return-frame)))
(defun idlwave-online-help (link &optional name type class keyword)
- "Display HTML or other special help on a certain topic.
+ "Display HTML or other special help on a certain topic.
Either loads an HTML link, if LINK is non-nil, or gets special-help on
the optional arguments, if any special help is defined. If LINK is
`t', first look up the optional arguments in the routine info list to
see if a link is set for it. Try extra help functions if necessary."
;; Lookup link
- (if (eq link t)
- (let ((entry (idlwave-best-rinfo-assoc name type class
+ (if (eq link t)
+ (let ((entry (idlwave-best-rinfo-assoc name type class
(idlwave-routines) nil t)))
(cond
;; Try keyword link
- ((and keyword
+ ((and keyword
(setq link (cdr (idlwave-entry-find-keyword entry keyword)))))
;; Default, regular entry link
(t (setq link (idlwave-entry-has-help entry))))))
(cond
;; An explicit link
- ((stringp link)
+ ((stringp link)
(idlwave-help-html-link link))
-
+
;; Any extra help
(idlwave-extra-help-function
(idlwave-help-get-special-help name type class keyword))
-
+
;; Nothing worked
(t (idlwave-help-error name type class keyword))))
@@ -729,7 +742,7 @@ see if a link is set for it. Try extra help functions if necessary."
(help-pos (save-excursion
(set-buffer (idlwave-help-get-help-buffer))
(let ((buffer-read-only nil))
- (funcall idlwave-extra-help-function
+ (funcall idlwave-extra-help-function
name type class keyword)))))
(if help-pos
(idlwave-help-display-help-window help-pos)
@@ -743,6 +756,9 @@ see if a link is set for it. Try extra help functions if necessary."
(browse-url-generic-program idlwave-help-browser-generic-program)
;(browse-url-generic-args idlwave-help-browser-generic-args)
full-link)
+
+ (unless idlwave-help-browse-url-available
+ (error "browse-url is not available -- install it to use HTML help."))
(if (and (memq system-type '(ms-dos windows-nt))
idlwave-help-use-hh)
@@ -758,12 +774,12 @@ see if a link is set for it. Try extra help functions if necessary."
;; Just a regular file name (+ anchor name)
(unless (and (stringp help-loc)
(file-directory-p help-loc))
- (error
+ (error
"Invalid help location; customize `idlwave-html-help-location'."))
- (setq full-link (concat
+ (setq full-link (concat
"file://"
- (expand-file-name
- link
+ (expand-file-name
+ link
(expand-file-name "idl_html_help" help-loc)))))
;; Check for a local browser
@@ -773,11 +789,10 @@ see if a link is set for it. Try extra help functions if necessary."
(browse-url full-link))))
;; A special help routine for source-level syntax help in files.
-(defvar idlwave-help-def-pos)
-(defvar idlwave-help-args)
-(defvar idlwave-help-in-header)
(defvar idlwave-help-fontify-source-code)
(defvar idlwave-help-source-try-header)
+(defvar idlwave-current-tags-buffer)
+(defvar idlwave-current-tags-class)
(defun idlwave-help-with-source (name type class keyword)
"Provide help for routines not documented in the IDL manuals. Works
by loading the routine source file into the help buffer. Depending on
@@ -799,7 +814,7 @@ This function can be used as `idlwave-extra-help-function'."
(if class-only ;Help with class? Using "Init" as source.
(setq name "Init"
type 'fun))
- (if (not struct-tag)
+ (if (not struct-tag)
(setq file
(idlwave-routine-source-file
(nth 3 (idlwave-best-rinfo-assoc
@@ -812,7 +827,7 @@ This function can be used as `idlwave-extra-help-function'."
(if (or struct-tag (stringp file))
(progn
(setq in-buf ; structure-tag completion is always in current buffer
- (if struct-tag
+ (if struct-tag
idlwave-current-tags-buffer
(idlwave-get-buffer-visiting file)))
;; see if file is in a visited buffer, insert those contents
@@ -834,19 +849,19 @@ This function can be used as `idlwave-extra-help-function'."
;; Try to find a good place to display
(setq def-pos
;; Find the class structure tag if that's what we're after
- (cond
+ (cond
;; Class structure tags: find the class or named structure
;; definition
(class-struct-tag
- (save-excursion
+ (save-excursion
(setq class
- (if (string-match "[a-zA-Z0-9]\\(__\\)" name)
+ (if (string-match "[a-zA-Z0-9]\\(__\\)" name)
(substring name 0 (match-beginning 1))
idlwave-current-tags-class))
(and
(idlwave-find-class-definition class nil real-class)
(idlwave-find-struct-tag keyword))))
-
+
;; Generic structure tags: the structure definition
;; location within the file has been recorded in
;; `struct-tag'
@@ -856,14 +871,14 @@ This function can be used as `idlwave-extra-help-function'."
(integerp struct-tag)
(goto-char struct-tag)
(idlwave-find-struct-tag keyword))))
-
+
;; Just find the routine definition
(t
(if class-only (point-min)
(idlwave-help-find-routine-definition name type class keyword))))
idlwave-help-def-pos def-pos)
- (if (and idlwave-help-source-try-header
+ (if (and idlwave-help-source-try-header
(not (or struct-tag class-struct-tag)))
;; Check if we can find the header
(save-excursion
@@ -873,7 +888,7 @@ This function can be used as `idlwave-extra-help-function'."
idlwave-help-in-header header-pos)))
(if (or header-pos def-pos)
- (progn
+ (progn
(if (boundp 'idlwave-help-min-frame-width)
(setq idlwave-help-min-frame-width 80))
(goto-char (or header-pos def-pos)))
@@ -887,7 +902,7 @@ This function can be used as `idlwave-extra-help-function'."
KEYWORD is ignored. Returns the point of match if successful, nil otherwise."
(save-excursion
(goto-char (point-max))
- (if (re-search-backward
+ (if (re-search-backward
(concat "^[ \t]*"
(if (eq type 'pro) "pro"
(if (eq type 'fun) "function"
@@ -933,22 +948,22 @@ with spaces allowed between the keyword and the following dash or equal sign.
If there is a match, we assume it is the keyword description."
(let* ((case-fold-search t)
(rname (if (stringp class)
- (concat
+ (concat
"\\("
;; Traditional name or class::name
"\\("
"\\(" (regexp-quote (downcase class)) "::\\)?"
(regexp-quote (downcase name))
"\\>\\)"
- (concat
+ (concat
"\\|"
;; class__define or just class
(regexp-quote (downcase class)) "\\(__define\\)?")
"\\)")
(regexp-quote (downcase name))))
-
+
;; NAME tag plus the routine name. The new version is from JD.
- (name-re (concat
+ (name-re (concat
"\\(^;+\\*?[ \t]*"
idlwave-help-doclib-name
"\\([ \t]*:\\|[ \t]*$\\)[ \t]*\\(\n;+[ \t]*\\)*"
@@ -983,7 +998,7 @@ If there is a match, we assume it is the keyword description."
(regexp-quote (upcase keyword))
"\\>")))
dstart dend name-pos kwds-pos kwd-pos)
- (catch 'exit
+ (catch 'exit
(save-excursion
(goto-char (point-min))
(while (and (setq dstart (re-search-forward idlwave-doclib-start nil t))
@@ -991,7 +1006,7 @@ If there is a match, we assume it is the keyword description."
;; found a routine header
(goto-char dstart)
(if (setq name-pos (re-search-forward name-re dend t))
- (progn
+ (progn
(if keyword
;; We do need a keyword
(progn
@@ -1073,7 +1088,7 @@ When DING is non-nil, ring the bell as well."
(idlwave-help-find-first-header nil)
(setq idlwave-help-in-header nil)
(idlwave-help-toggle-header-match-and-def arg 'top)))
-
+
(defun idlwave-help-toggle-header-match-and-def (arg &optional top)
(interactive "P")
(let ((args idlwave-help-args)
@@ -1085,7 +1100,7 @@ When DING is non-nil, ring the bell as well."
(setq pos idlwave-help-def-pos))
;; Try to display header
(setq pos (apply 'idlwave-help-find-in-doc-header
- (if top
+ (if top
(list (car args) (nth 1 args) (nth 2 args) nil)
args)))
(if pos
@@ -1119,7 +1134,7 @@ Useful when source code is displayed as help. See the option
(font-lock-fontify-buffer))
(set-syntax-table syntax-table)))))
-
+
(defun idlwave-help-error (name type class keyword)
(error "Can't find help on %s%s %s"
(or (and (or class name) (idlwave-make-full-name class name))
diff --git a/lisp/progmodes/idlw-rinfo.el b/lisp/progmodes/idlw-rinfo.el
index 9f95f8e6a5b..cfd5db3392a 100644
--- a/lisp/progmodes/idlw-rinfo.el
+++ b/lisp/progmodes/idlw-rinfo.el
@@ -1,9 +1,9 @@
;;; idlw-rinfo.el --- Routine Information for IDLWAVE
;; Copyright (c) 1999 Carsten Dominik
-;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
+;; Copyright (c) 1999, 2000, 2001,2002,2003,2004,2005 Free Software Foundation
;; Author: J.D. Smith <jdsmith@as.arizona.edu>
-;; Version: 5.5
+;; Version: 5.7_22
;; Keywords: languages
;; This file is part of GNU Emacs.
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -30,7 +30,7 @@
;; information is extracted automatically from the IDL documentation
;; and by talking to IDL.
;;
-;; Created by get_html_rinfo on Sun Oct 10 16:06:07 2004
+;; Created by get_html_rinfo on Wed May 11 14:52:40 2005
;; IDL version: 6.1
;; Number of files scanned: 3393
;; Number of routines found: 1850
@@ -1242,7 +1242,7 @@
("Init" fun "IDLanROI" (system) "Result = Obj->[%s::]%s([, X [, Y [, Z]]])" ("objects_an11.html" ) ("objects_an4.html" ("BLOCK_SIZE" . 1011320) ("DATA" . 1011322) ("DOUBLE" . 1011324) ("INTERIOR" . 1011326) ("TYPE" . 1011328)))
("Add" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, ROI" ("objects_an20.html"))
("Cleanup" pro "IDLanROIGroup" (system) "Obj->[%s::]%s" ("objects_an21.html"))
- ("GetProperty" pro "IDLanROIGroup" (system) "Obj->[%s::]%s" ("objects_an25.html" ) ("objects_an19.html" ("ALL" . 1011995) ("ROIGROUP_XRANGE " . 1011998) ("ROIGROUP_YRANGE " . 1012000) ("ROIGROUP_ZRANGE " . 1012002)))
+ ("GetProperty" pro "IDLanROIGroup" (system) "Obj->[%s::]%s" ("objects_an25.html" ) ("objects_an19.html" ("ALL" . 1011995) ("ROIGROUP_XRANGE" . 1011998) ("ROIGROUP_YRANGE" . 1012000) ("ROIGROUP_ZRANGE" . 1012002)))
("Rotate" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Axis, Angle" ("objects_an27.html" ("CENTER" . 1004731)))
("Scale" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Sx[, Sy[, Sz]]" ("objects_an28.html"))
("Translate" pro "IDLanROIGroup" (system) "Obj->[%s::]%s, Tx[, Ty[, Tz]]" ("objects_an29.html"))
@@ -1433,120 +1433,120 @@
("Draw" pro "IDLgrBuffer" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr13.html" ("CREATE_INSTANCE" . 1007844) ("DRAW_INSTANCE" . 1007846)))
("Erase" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr14.html" ("COLOR" . 1007879)))
("GetDeviceInfo" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr16.html" ("ALL" . 1007957) ("MAX_NUM_CLIP_PLANES" . 1007959) ("MAX_TEXTURE_DIMENSIONS" . 1007961) ("MAX_VIEWPORT_DIMENSIONS" . 1007963) ("NAME" . 1007965) ("NUM_CPUS" . 1007967) ("VENDOR" . 1007970) ("VERSION" . 1007972)))
- ("GetProperty" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr18.html" ) ("objects_gr11.html" ("ALL" . 1050118) ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("IMAGE_DATA" . 1050202) ("N_COLORS" . 1092707) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("RESOLUTION " . 1093499) ("SCREEN_DIMENSIONS" . 1050191) ("UNITS " . 1050189) ("ZBUFFER_DATA" . 1050181)))
- ("SetProperty" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr24.html" ) ("objects_gr11.html" ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("RESOLUTION " . 1093499) ("UNITS " . 1050189)))
+ ("GetProperty" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr18.html" ) ("objects_gr11.html" ("ALL" . 1050118) ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("IMAGE_DATA" . 1050202) ("N_COLORS" . 1092707) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("RESOLUTION" . 1093499) ("SCREEN_DIMENSIONS" . 1050191) ("UNITS" . 1050189) ("ZBUFFER_DATA" . 1050181)))
+ ("SetProperty" pro "IDLgrBuffer" (system) "Obj->[%s::]%s" ("objects_gr24.html" ) ("objects_gr11.html" ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("RESOLUTION" . 1093499) ("UNITS" . 1050189)))
("GetContiguousPixels" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s()" ("objects_gr15.html"))
("GetFontnames" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr17.html" ("IDL_FONTS" . 1008013) ("STYLES" . 1008015)))
("GetTextDimensions" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr19.html" ("DESCENT" . 1008088) ("PATH" . 1008090)))
- ("Init" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s()" ("objects_gr20.html" ) ("objects_gr11.html" ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("N_COLORS" . 1092707) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("REGISTER_PROPERTIES" . 1050154) ("RESOLUTION " . 1093499) ("UNITS " . 1050189)))
+ ("Init" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s()" ("objects_gr20.html" ) ("objects_gr11.html" ("COLOR_MODEL" . 1050137) ("DIMENSIONS" . 1050141) ("GRAPHICS_TREE" . 1050143) ("N_COLORS" . 1092707) ("PALETTE" . 1050147) ("QUALITY" . 1050149) ("REGISTER_PROPERTIES" . 1050154) ("RESOLUTION" . 1093499) ("UNITS" . 1050189)))
("PickData" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s( View, Object, Location, XYZLocation)" ("objects_gr21.html" ("DIMENSIONS" . 1008204) ("PATH" . 1008208) ("PICK_STATUS" . 1008214)))
("Read" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s()" ("objects_gr22.html"))
("Select" fun "IDLgrBuffer" (system) "Result = Obj->[%s::]%s(Picture, XY)" ("objects_gr23.html" ("DIMENSIONS" . 1008316) ("ORDER" . 1008320) ("SUB_SELECTION" . 1343723) ("UNITS" . 1008323)))
("Cleanup" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr27.html"))
("Draw" pro "IDLgrClipboard" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr28.html" ("CMYK" . 1345463) ("FILENAME" . 1008514) ("POSTSCRIPT" . 1008516) ("VECT_SHADING" . 1340124) ("VECT_SORTING" . 1340189) ("VECT_TEXT_RENDER_METHOD" . 1340235) ("VECTOR" . 1008518)))
("GetDeviceInfo" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr30.html" ("ALL" . 1008688) ("MAX_NUM_CLIP_PLANES" . 1008690) ("MAX_TEXTURE_DIMENSIONS" . 1008692) ("MAX_VIEWPORT_DIMENSIONS" . 1008694) ("NAME" . 1008696) ("NUM_CPUS" . 1008698) ("VENDOR" . 1008701) ("VERSION" . 1008703)))
- ("GetProperty" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr32.html" ) ("objects_gr26.html" ("ALL" . 1050377) ("COLOR_MODEL" . 1050391) ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("N_COLORS" . 1050399) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("RESOLUTION " . 1093541) ("SCREEN_DIMENSIONS" . 1050442) ("UNITS" . 1050439)))
- ("SetProperty" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr35.html" ) ("objects_gr26.html" ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("RESOLUTION " . 1093541) ("UNITS" . 1050439)))
+ ("GetProperty" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr32.html" ) ("objects_gr26.html" ("ALL" . 1050377) ("COLOR_MODEL" . 1050391) ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("N_COLORS" . 1050399) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("RESOLUTION" . 1093541) ("SCREEN_DIMENSIONS" . 1050442) ("UNITS" . 1050439)))
+ ("SetProperty" pro "IDLgrClipboard" (system) "Obj->[%s::]%s" ("objects_gr35.html" ) ("objects_gr26.html" ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("RESOLUTION" . 1093541) ("UNITS" . 1050439)))
("GetContiguousPixels" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s()" ("objects_gr29.html"))
("GetFontnames" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr31.html" ("IDL_FONTS" . 1008744) ("STYLES" . 1008746)))
("GetTextDimensions" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr33.html" ("DESCENT" . 1008820) ("PATH" . 1008822)))
- ("Init" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s()" ("objects_gr34.html" ) ("objects_gr26.html" ("COLOR_MODEL" . 1050391) ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("N_COLORS" . 1050399) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("REGISTER_PROPERTIES" . 1050408) ("RESOLUTION " . 1093541) ("UNITS" . 1050439)))
+ ("Init" fun "IDLgrClipboard" (system) "Result = Obj->[%s::]%s()" ("objects_gr34.html" ) ("objects_gr26.html" ("COLOR_MODEL" . 1050391) ("DIMENSIONS" . 1050395) ("GRAPHICS_TREE" . 1050397) ("N_COLORS" . 1050399) ("PALETTE" . 1050401) ("QUALITY" . 1050403) ("REGISTER_PROPERTIES" . 1050408) ("RESOLUTION" . 1093541) ("UNITS" . 1050439)))
("Cleanup" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr38.html"))
- ("GetProperty" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr40.html" ) ("objects_gr37.html" ("ALL" . 1050584) ("BLUE_VALUES " . 1050601) ("COLOR " . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("PARENT" . 1050728) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED " . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE " . 1050651) ("XCOORD_CONV" . 1050655) ("XRANGE" . 1050718) ("YCOORD_CONV" . 1050716) ("YRANGE" . 1050708) ("ZCOORD_CONV " . 1050706) ("ZRANGE" . 1050697)))
- ("SetProperty" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr42.html" ) ("objects_gr37.html" ("BLUE_VALUES " . 1050601) ("COLOR " . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED " . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE " . 1050651) ("XCOORD_CONV" . 1050655) ("YCOORD_CONV" . 1050716) ("ZCOORD_CONV " . 1050706)))
+ ("GetProperty" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr40.html" ) ("objects_gr37.html" ("ALL" . 1050584) ("BLUE_VALUES" . 1050601) ("COLOR" . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("PARENT" . 1050728) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED" . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE" . 1050651) ("XCOORD_CONV" . 1050655) ("XRANGE" . 1050718) ("YCOORD_CONV" . 1050716) ("YRANGE" . 1050708) ("ZCOORD_CONV" . 1050706) ("ZRANGE" . 1050697)))
+ ("SetProperty" pro "IDLgrColorbar" (system) "Obj->[%s::]%s" ("objects_gr42.html" ) ("objects_gr37.html" ("BLUE_VALUES" . 1050601) ("COLOR" . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED" . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE" . 1050651) ("XCOORD_CONV" . 1050655) ("YCOORD_CONV" . 1050716) ("ZCOORD_CONV" . 1050706)))
("ComputeDimensions" fun "IDLgrColorbar" (system) "Result = Obj->[%s::]%s( DestinationObj)" ("objects_gr39.html" ("PATH" . 1009084)))
- ("Init" fun "IDLgrColorbar" (system) "Result = Obj->[%s::]%s([, aRed, aGreen, aBlue])" ("objects_gr41.html" ) ("objects_gr37.html" ("BLUE_VALUES " . 1050601) ("COLOR " . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED " . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE " . 1050651) ("XCOORD_CONV" . 1050655) ("YCOORD_CONV" . 1050716) ("ZCOORD_CONV " . 1050706)))
+ ("Init" fun "IDLgrColorbar" (system) "Result = Obj->[%s::]%s([, aRed, aGreen, aBlue])" ("objects_gr41.html" ) ("objects_gr37.html" ("BLUE_VALUES" . 1050601) ("COLOR" . 1050603) ("DIMENSIONS" . 1050605) ("GREEN_VALUES" . 1050607) ("HIDE" . 1050609) ("MAJOR" . 1050613) ("MINOR" . 1050615) ("PALETTE" . 1050619) ("RED_VALUES" . 1050726) ("SHOW_AXIS" . 1050623) ("SHOW_OUTLINE" . 1050628) ("SUBTICKLEN" . 1050632) ("THICK" . 1050634) ("THREED" . 1050636) ("TICKFORMAT" . 1050638) ("TICKFRMTDATA" . 1050643) ("TICKLEN" . 1050645) ("TICKTEXT" . 1050647) ("TICKVALUES" . 1050649) ("TITLE" . 1050651) ("XCOORD_CONV" . 1050655) ("YCOORD_CONV" . 1050716) ("ZCOORD_CONV" . 1050706)))
("AdjustLabelOffsets" pro "IDLgrContour" (system) "Obj->[%s::]%s, LevelIndex, LabelOffsets" ("objects_gr45.html"))
("Cleanup" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr46.html"))
("GetLabelInfo" pro "IDLgrContour" (system) "Obj->[%s::]%s, Destination, LevelIndex" ("objects_gr48.html" ("LABEL_OBJECTS" . 1009508) ("LABEL_OFFSETS" . 1009503) ("LABEL_POLYLINES" . 1009505)))
- ("GetProperty" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr49.html" ) ("objects_gr44.html" ("ALL" . 1050990) ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET " . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL " . 1051085) ("FILL" . 1051087) ("GEOM" . 1051284) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS " . 1051132) ("N_LEVELS" . 1051138) ("PARENT" . 1051274) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("SHADE_RANGE " . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL " . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("XRANGE" . 1051264) ("YCOORD_CONV" . 1051168) ("YRANGE " . 1051250) ("ZCOORD_CONV " . 1051174) ("ZRANGE" . 1051240)))
- ("SetProperty" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr51.html" ) ("objects_gr44.html" ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET " . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL " . 1051085) ("FILL" . 1051087) ("GEOMX" . 1051282) ("GEOMY" . 1051091) ("GEOMZ" . 1051093) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS " . 1051132) ("N_LEVELS" . 1051138) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("SHADE_RANGE " . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL " . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("YCOORD_CONV" . 1051168) ("ZCOORD_CONV " . 1051174)))
+ ("GetProperty" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr49.html" ) ("objects_gr44.html" ("ALL" . 1050990) ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET" . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL" . 1051085) ("FILL" . 1051087) ("GEOM" . 1051284) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS" . 1051132) ("N_LEVELS" . 1051138) ("PARENT" . 1051274) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("SHADE_RANGE" . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL" . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("XRANGE" . 1051264) ("YCOORD_CONV" . 1051168) ("YRANGE" . 1051250) ("ZCOORD_CONV" . 1051174) ("ZRANGE" . 1051240)))
+ ("SetProperty" pro "IDLgrContour" (system) "Obj->[%s::]%s" ("objects_gr51.html" ) ("objects_gr44.html" ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET" . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL" . 1051085) ("FILL" . 1051087) ("GEOMX" . 1051282) ("GEOMY" . 1051091) ("GEOMZ" . 1051093) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS" . 1051132) ("N_LEVELS" . 1051138) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("SHADE_RANGE" . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL" . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("YCOORD_CONV" . 1051168) ("ZCOORD_CONV" . 1051174)))
("GetCTM" fun "IDLgrContour" (system) "Result = Obj->[%s::]%s()" ("objects_gr47.html" ("DESTINATION" . 1009456) ("PATH" . 1009458) ("TOP" . 1009464)))
- ("Init" fun "IDLgrContour" (system) "Result = Obj->[%s::]%s([, Values])" ("objects_gr50.html" ) ("objects_gr44.html" ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET " . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL " . 1051085) ("FILL" . 1051087) ("GEOMX" . 1051282) ("GEOMY" . 1051091) ("GEOMZ" . 1051093) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_FRMTDATA " . 1051113) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS " . 1051132) ("N_LEVELS" . 1051138) ("PALETTE " . 1051140) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("REGISTER_PROPERTIES" . 1051147) ("SHADE_RANGE " . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL " . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("YCOORD_CONV" . 1051168) ("ZCOORD_CONV " . 1051174)))
+ ("Init" fun "IDLgrContour" (system) "Result = Obj->[%s::]%s([, Values])" ("objects_gr50.html" ) ("objects_gr44.html" ("ALPHA_CHANNEL" . 1312243) ("AM_PM" . 1051012) ("ANISOTROPY" . 1051014) ("C_COLOR" . 1051029) ("C_FILL_PATTERN" . 1051031) ("C_LABEL_INTERVAL" . 1051033) ("C_LABEL_NOGAPS" . 1051035) ("C_LABEL_OBJECTS" . 1051037) ("C_LABEL_SHOW" . 1051044) ("C_LINESTYLE" . 1051046) ("C_THICK" . 1051056) ("C_USE_LABEL_COLOR" . 1066031) ("C_USE_LABEL_ORIENTATION" . 1051060) ("C_VALUE" . 1051062) ("CLIP_PLANES" . 1051064) ("COLOR" . 1051069) ("DATA_VALUES" . 1051071) ("DAYS_OF_WEEK" . 1051073) ("DEPTH_OFFSET" . 1051075) ("DEPTH_TEST_DISABLE" . 1051081) ("DEPTH_TEST_FUNCTION" . 1093566) ("DEPTH_WRITE_DISABLE" . 1093567) ("DOUBLE_DATA" . 1093568) ("DOUBLE_GEOM" . 1051083) ("DOWNHILL" . 1051085) ("FILL" . 1051087) ("GEOMX" . 1051282) ("GEOMY" . 1051091) ("GEOMZ" . 1051093) ("HIDE" . 1051101) ("LABEL_FONT" . 1051105) ("LABEL_FORMAT" . 1051107) ("LABEL_FRMTDATA" . 1051113) ("LABEL_UNITS" . 1051116) ("MAX_VALUE" . 1051130) ("MIN_VALUE" . 1051134) ("MONTHS" . 1051132) ("N_LEVELS" . 1051138) ("PALETTE" . 1051140) ("PLANAR" . 1051272) ("POLYGONS" . 1051144) ("REGISTER_PROPERTIES" . 1051147) ("SHADE_RANGE" . 1094439) ("SHADING" . 1051149) ("TICKINTERVAL" . 1051154) ("TICKLEN" . 1051156) ("USE_TEXT_ALIGNMENTS" . 1051158) ("XCOORD_CONV" . 1051162) ("YCOORD_CONV" . 1051168) ("ZCOORD_CONV" . 1051174)))
("Cleanup" pro "IDLgrFont" (system) "Obj->[%s::]%s" ("objects_gr54.html"))
("GetProperty" pro "IDLgrFont" (system) "Obj->[%s::]%s" ("objects_gr55.html" ) ("objects_gr53.html" ("ALL" . 1051913) ("SIZE" . 1051936) ("SUBSTITUTE" . 1051938) ("THICK" . 1051940)))
("SetProperty" pro "IDLgrFont" (system) "Obj->[%s::]%s" ("objects_gr57.html" ) ("objects_gr53.html" ("SIZE" . 1051936) ("SUBSTITUTE" . 1051938) ("THICK" . 1051940)))
("Init" fun "IDLgrFont" (system) "Result = Obj->[%s::]%s([, Fontname])" ("objects_gr56.html" ) ("objects_gr53.html" ("SIZE" . 1051936) ("SUBSTITUTE" . 1051938) ("THICK" . 1051940)))
("Cleanup" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr60.html"))
- ("GetProperty" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr62.html" ) ("objects_gr59.html" ("ALL " . 1052050) ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE " . 1052160) ("PARENT" . 1052253) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("XRANGE" . 1052243) ("YCOORD_CONV" . 1052181) ("YRANGE" . 1052233) ("ZCOORD_CONV" . 1052187) ("ZRANGE" . 1052223)))
- ("SetProperty" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr64.html" ) ("objects_gr59.html" ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE " . 1052160) ("RESET_DATA " . 1093772) ("SHARE_DATA" . 1052169) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("YCOORD_CONV" . 1052181) ("ZCOORD_CONV" . 1052187)))
+ ("GetProperty" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr62.html" ) ("objects_gr59.html" ("ALL" . 1052050) ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE" . 1052160) ("PARENT" . 1052253) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("XRANGE" . 1052243) ("YCOORD_CONV" . 1052181) ("YRANGE" . 1052233) ("ZCOORD_CONV" . 1052187) ("ZRANGE" . 1052223)))
+ ("SetProperty" pro "IDLgrImage" (system) "Obj->[%s::]%s" ("objects_gr64.html" ) ("objects_gr59.html" ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE" . 1052160) ("RESET_DATA" . 1093772) ("SHARE_DATA" . 1052169) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("YCOORD_CONV" . 1052181) ("ZCOORD_CONV" . 1052187)))
("GetCTM" fun "IDLgrImage" (system) "Result = Obj->[%s::]%s()" ("objects_gr61.html" ("DESTINATION" . 1010164) ("PATH" . 1010166) ("TOP" . 1010172)))
- ("Init" fun "IDLgrImage" (system) "Result = Obj->[%s::]%s([, ImageData])" ("objects_gr63.html" ) ("objects_gr59.html" ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE " . 1052160) ("REGISTER_PROPERTIES" . 1052251) ("RESET_DATA " . 1093772) ("SHARE_DATA" . 1052169) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("YCOORD_CONV" . 1052181) ("ZCOORD_CONV" . 1052187)))
+ ("Init" fun "IDLgrImage" (system) "Result = Obj->[%s::]%s([, ImageData])" ("objects_gr63.html" ) ("objects_gr59.html" ("BLEND_FUNCTION" . 1052068) ("CHANNEL" . 1052124) ("CLIP_PLANES" . 1287882) ("DATA" . 1052132) ("DEPTH_TEST_DISABLE" . 1095165) ("DEPTH_TEST_FUNCTION" . 1095212) ("DEPTH_WRITE_DISABLE" . 1095251) ("DIMENSIONS" . 1095169) ("GREYSCALE" . 1052136) ("HIDE" . 1052140) ("INTERLEAVE" . 1052144) ("INTERPOLATE" . 1052150) ("LOCATION" . 1052152) ("NO_COPY" . 1052156) ("ORDER" . 1052158) ("PALETTE" . 1052160) ("REGISTER_PROPERTIES" . 1052251) ("RESET_DATA" . 1093772) ("SHARE_DATA" . 1052169) ("SUB_RECT" . 1052171) ("XCOORD_CONV" . 1052175) ("YCOORD_CONV" . 1052181) ("ZCOORD_CONV" . 1052187)))
("Cleanup" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr67.html"))
- ("GetProperty" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr69.html" ) ("objects_gr66.html" ("ALL " . 1053896) ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE " . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT " . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR " . 1053948) ("OUTLINE_THICK" . 1053950) ("PARENT" . 1055362) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE " . 1053956) ("TEXT_COLOR " . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV " . 1053966) ("XRANGE " . 1055399) ("YCOORD_CONV " . 1053972) ("YRANGE " . 1055389) ("ZCOORD_CONV" . 1053978) ("ZRANGE" . 1070059)))
- ("SetProperty" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr71.html" ) ("objects_gr66.html" ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE " . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT " . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR " . 1053948) ("OUTLINE_THICK" . 1053950) ("RECOMPUTE " . 1055360) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE " . 1053956) ("TEXT_COLOR " . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV " . 1053966) ("YCOORD_CONV " . 1053972) ("ZCOORD_CONV" . 1053978)))
+ ("GetProperty" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr69.html" ) ("objects_gr66.html" ("ALL" . 1053896) ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE" . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT" . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR" . 1053948) ("OUTLINE_THICK" . 1053950) ("PARENT" . 1055362) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE" . 1053956) ("TEXT_COLOR" . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV" . 1053966) ("XRANGE" . 1055399) ("YCOORD_CONV" . 1053972) ("YRANGE" . 1055389) ("ZCOORD_CONV" . 1053978) ("ZRANGE" . 1070059)))
+ ("SetProperty" pro "IDLgrLegend" (system) "Obj->[%s::]%s" ("objects_gr71.html" ) ("objects_gr66.html" ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE" . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT" . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR" . 1053948) ("OUTLINE_THICK" . 1053950) ("RECOMPUTE" . 1055360) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE" . 1053956) ("TEXT_COLOR" . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV" . 1053966) ("YCOORD_CONV" . 1053972) ("ZCOORD_CONV" . 1053978)))
("ComputeDimensions" fun "IDLgrLegend" (system) "Result = Obj->[%s::]%s( DestinationObject)" ("objects_gr68.html" ("PATH" . 1010563)))
- ("Init" fun "IDLgrLegend" (system) "Result = Obj->[%s::]%s([, aItemNames])" ("objects_gr70.html" ) ("objects_gr66.html" ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE " . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT " . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR " . 1053948) ("OUTLINE_THICK" . 1053950) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE " . 1053956) ("TEXT_COLOR " . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV " . 1053966) ("YCOORD_CONV " . 1053972) ("ZCOORD_CONV" . 1053978)))
+ ("Init" fun "IDLgrLegend" (system) "Result = Obj->[%s::]%s([, aItemNames])" ("objects_gr70.html" ) ("objects_gr66.html" ("BORDER_GAP" . 1053903) ("COLUMNS" . 1053905) ("FILL_COLOR" . 1053907) ("FONT" . 1053909) ("GAP" . 1053912) ("GLYPH_WIDTH" . 1053914) ("HIDE" . 1053916) ("ITEM_COLOR" . 1069308) ("ITEM_LINESTYLE" . 1053922) ("ITEM_NAME" . 1053935) ("ITEM_OBJECT" . 1053937) ("ITEM_THICK" . 1053940) ("ITEM_TYPE" . 1053942) ("OUTLINE_COLOR" . 1053948) ("OUTLINE_THICK" . 1053950) ("SHOW_FILL" . 1053952) ("SHOW_OUTLINE" . 1053956) ("TEXT_COLOR" . 1053960) ("TITLE" . 1053962) ("XCOORD_CONV" . 1053966) ("YCOORD_CONV" . 1053972) ("ZCOORD_CONV" . 1053978)))
("Cleanup" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr74.html"))
- ("GetProperty" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr76.html" ) ("objects_gr73.html" ("ALL" . 1055555) ("ATTENUATION " . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("PARENT" . 1055635) ("TYPE" . 1093801) ("XCOORD_CONV " . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV " . 1055621)))
- ("SetProperty" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr78.html" ) ("objects_gr73.html" ("ATTENUATION " . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("TYPE" . 1093801) ("XCOORD_CONV " . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV " . 1055621)))
+ ("GetProperty" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr76.html" ) ("objects_gr73.html" ("ALL" . 1055555) ("ATTENUATION" . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("PARENT" . 1055635) ("TYPE" . 1093801) ("XCOORD_CONV" . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV" . 1055621)))
+ ("SetProperty" pro "IDLgrLight" (system) "Obj->[%s::]%s" ("objects_gr78.html" ) ("objects_gr73.html" ("ATTENUATION" . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("TYPE" . 1093801) ("XCOORD_CONV" . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV" . 1055621)))
("GetCTM" fun "IDLgrLight" (system) "Result = Obj->[%s::]%s()" ("objects_gr75.html" ("DESTINATION" . 1010900) ("PATH" . 1010902) ("TOP" . 1010908)))
- ("Init" fun "IDLgrLight" (system) "Result = Obj->[%s::]%s()" ("objects_gr77.html" ) ("objects_gr73.html" ("ATTENUATION " . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("REGISTER_PROPERTIES" . 1088158) ("TYPE" . 1093801) ("XCOORD_CONV " . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV " . 1055621)))
+ ("Init" fun "IDLgrLight" (system) "Result = Obj->[%s::]%s()" ("objects_gr77.html" ) ("objects_gr73.html" ("ATTENUATION" . 1055572) ("COLOR" . 1055581) ("CONEANGLE" . 1055583) ("DIRECTION" . 1055585) ("FOCUS" . 1055588) ("HIDE" . 1055590) ("INTENSITY" . 1055595) ("LOCATION" . 1055597) ("PALETTE" . 1088211) ("REGISTER_PROPERTIES" . 1088158) ("TYPE" . 1093801) ("XCOORD_CONV" . 1055609) ("YCOORD_CONV" . 1055615) ("ZCOORD_CONV" . 1055621)))
("Add" pro "IDLgrModel" (system) "Obj->[%s::]%s, Object" ("objects_gr81.html" ("ALIAS" . 1011206) ("POSITION" . 1011208)))
("Cleanup" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr82.html"))
("Draw" pro "IDLgrModel" (system) "Obj->[%s::]%s, Destination, Picture" ("objects_gr83.html"))
- ("GetProperty" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr86.html" ) ("objects_gr80.html" ("ALL " . 1055726) ("CLIP_PLANES " . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE " . 1088312) ("LIGHTING" . 1055751) ("PARENT " . 1055781) ("SELECT_TARGET " . 1093831) ("TRANSFORM " . 1055764)))
+ ("GetProperty" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr86.html" ) ("objects_gr80.html" ("ALL" . 1055726) ("CLIP_PLANES" . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE" . 1088312) ("LIGHTING" . 1055751) ("PARENT" . 1055781) ("SELECT_TARGET" . 1093831) ("TRANSFORM" . 1055764)))
("Reset" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr88.html"))
("Rotate" pro "IDLgrModel" (system) "Obj->[%s::]%s, Axis, Angle" ("objects_gr89.html" ("PREMULTIPLY" . 1011584)))
("Scale" pro "IDLgrModel" (system) "Obj->[%s::]%s, Sx, Sy, Sz" ("objects_gr90.html" ("PREMULTIPLY" . 1011618)))
- ("SetProperty" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr91.html" ) ("objects_gr80.html" ("CLIP_PLANES " . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE " . 1088312) ("LIGHTING" . 1055751) ("SELECT_TARGET " . 1093831) ("TRANSFORM " . 1055764)))
+ ("SetProperty" pro "IDLgrModel" (system) "Obj->[%s::]%s" ("objects_gr91.html" ) ("objects_gr80.html" ("CLIP_PLANES" . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE" . 1088312) ("LIGHTING" . 1055751) ("SELECT_TARGET" . 1093831) ("TRANSFORM" . 1055764)))
("Translate" pro "IDLgrModel" (system) "Obj->[%s::]%s, Tx, Ty, Tz" ("objects_gr92.html" ("PREMULTIPLY" . 1011687)))
("GetByName" fun "IDLgrModel" (system) "Result = Obj->[%s::]%s(Name)" ("objects_gr84.html"))
("GetCTM" fun "IDLgrModel" (system) "Result = Obj->[%s::]%s()" ("objects_gr85.html" ("DESTINATION" . 1011369) ("PATH" . 1011371) ("TOP" . 1011377)))
- ("Init" fun "IDLgrModel" (system) "Result = Obj->[%s::]%s()" ("objects_gr87.html" ) ("objects_gr80.html" ("CLIP_PLANES " . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE " . 1088312) ("LIGHTING" . 1055751) ("REGISTER_PROPERTIES" . 1055779) ("SELECT_TARGET " . 1093831) ("TRANSFORM " . 1055764)))
+ ("Init" fun "IDLgrModel" (system) "Result = Obj->[%s::]%s()" ("objects_gr87.html" ) ("objects_gr80.html" ("CLIP_PLANES" . 1055740) ("DEPTH_TEST_DISABLE" . 1094976) ("DEPTH_TEST_FUNCTION" . 1095322) ("DEPTH_WRITE_DISABLE" . 1095361) ("HIDE" . 1088312) ("LIGHTING" . 1055751) ("REGISTER_PROPERTIES" . 1055779) ("SELECT_TARGET" . 1093831) ("TRANSFORM" . 1055764)))
("Cleanup" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr95.html"))
- ("GetProperty" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr96.html" ) ("objects_gr94.html" ("ALL " . 1055838) ("BITRATE " . 1055845) ("FILENAME" . 1055875) ("FORMAT " . 1055877) ("FRAME_RATE " . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969)))
+ ("GetProperty" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr96.html" ) ("objects_gr94.html" ("ALL" . 1055838) ("BITRATE" . 1055845) ("FILENAME" . 1055875) ("FORMAT" . 1055877) ("FRAME_RATE" . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969)))
("Put" pro "IDLgrMPEG" (system) "Obj->[%s::]%s, Image[, Frame]" ("objects_gr98.html"))
("Save" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr99.html" ("FILENAME" . 1012062)))
- ("SetProperty" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr100.html" ) ("objects_gr94.html" ("BITRATE " . 1055845) ("FILENAME" . 1055875) ("FORMAT " . 1055877) ("FRAME_RATE " . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969)))
- ("Init" fun "IDLgrMPEG" (system) "Result = Obj->[%s::]%s()" ("objects_gr97.html" ) ("objects_gr94.html" ("BITRATE " . 1055845) ("FILENAME" . 1055875) ("FORMAT " . 1055877) ("FRAME_RATE " . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969) ("TEMP_DIRECTORY " . 1055971)))
+ ("SetProperty" pro "IDLgrMPEG" (system) "Obj->[%s::]%s" ("objects_gr100.html" ) ("objects_gr94.html" ("BITRATE" . 1055845) ("FILENAME" . 1055875) ("FORMAT" . 1055877) ("FRAME_RATE" . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969)))
+ ("Init" fun "IDLgrMPEG" (system) "Result = Obj->[%s::]%s()" ("objects_gr97.html" ) ("objects_gr94.html" ("BITRATE" . 1055845) ("FILENAME" . 1055875) ("FORMAT" . 1055877) ("FRAME_RATE" . 1055881) ("IFRAME_GAP" . 1055927) ("INTERLACED" . 1055934) ("MOTION_VEC_LENGTH" . 1055936) ("QUALITY" . 1055964) ("SCALE" . 1055967) ("STATISTICS" . 1055969) ("TEMP_DIRECTORY" . 1055971)))
("Cleanup" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr103.html"))
- ("GetProperty" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr105.html" ) ("objects_gr102.html" ("ALL" . 1056048) ("BLUE_VALUES " . 1056069) ("BOTTOM_STRETCH " . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("N_COLORS" . 1056093) ("RED_VALUES" . 1056079) ("TOP_STRETCH " . 1056081)))
+ ("GetProperty" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr105.html" ) ("objects_gr102.html" ("ALL" . 1056048) ("BLUE_VALUES" . 1056069) ("BOTTOM_STRETCH" . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("N_COLORS" . 1056093) ("RED_VALUES" . 1056079) ("TOP_STRETCH" . 1056081)))
("LoadCT" pro "IDLgrPalette" (system) "Obj->[%s::]%s, TableNum" ("objects_gr107.html" ("FILE" . 1012379)))
- ("SetProperty" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr110.html" ) ("objects_gr102.html" ("BLUE_VALUES " . 1056069) ("BOTTOM_STRETCH " . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("RED_VALUES" . 1056079) ("TOP_STRETCH " . 1056081)))
+ ("SetProperty" pro "IDLgrPalette" (system) "Obj->[%s::]%s" ("objects_gr110.html" ) ("objects_gr102.html" ("BLUE_VALUES" . 1056069) ("BOTTOM_STRETCH" . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("RED_VALUES" . 1056079) ("TOP_STRETCH" . 1056081)))
("SetRGB" pro "IDLgrPalette" (system) "Obj->[%s::]%s, Index, Red, Green, Blue" ("objects_gr109.html"))
("GetRGB" fun "IDLgrPalette" (system) "Result = Obj->[%s::]%s(Index)" ("objects_gr104.html"))
- ("Init" fun "IDLgrPalette" (system) "Result = Obj->[%s::]%s(, aRed, aGreen, aBlue)" ("objects_gr106.html" ) ("objects_gr102.html" ("BLUE_VALUES " . 1056069) ("BOTTOM_STRETCH " . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("RED_VALUES" . 1056079) ("TOP_STRETCH " . 1056081)))
+ ("Init" fun "IDLgrPalette" (system) "Result = Obj->[%s::]%s(, aRed, aGreen, aBlue)" ("objects_gr106.html" ) ("objects_gr102.html" ("BLUE_VALUES" . 1056069) ("BOTTOM_STRETCH" . 1056071) ("GAMMA" . 1056073) ("GREEN_VALUES" . 1056075) ("RED_VALUES" . 1056079) ("TOP_STRETCH" . 1056081)))
("NearestColor" fun "IDLgrPalette" (system) "Result = Obj->[%s::]%s(Red, Green, Blue)" ("objects_gr108.html"))
("Cleanup" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr113.html"))
- ("GetProperty" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr114.html" ) ("objects_gr112.html" ("ALL" . 1056154) ("ORIENTATION " . 1056165) ("PATTERN" . 1056169) ("SPACING " . 1056171) ("STYLE" . 1056173)))
- ("SetProperty" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr116.html" ) ("objects_gr112.html" ("ORIENTATION " . 1056165) ("PATTERN" . 1056169) ("SPACING " . 1056171) ("STYLE" . 1056173)))
- ("Init" fun "IDLgrPattern" (system) "Result = Obj->[%s::]%s([, Style])" ("objects_gr115.html" ) ("objects_gr112.html" ("ORIENTATION " . 1056165) ("PATTERN" . 1056169) ("SPACING " . 1056171) ("STYLE" . 1056173) ("THICK " . 1056179)))
+ ("GetProperty" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr114.html" ) ("objects_gr112.html" ("ALL" . 1056154) ("ORIENTATION" . 1056165) ("PATTERN" . 1056169) ("SPACING" . 1056171) ("STYLE" . 1056173)))
+ ("SetProperty" pro "IDLgrPattern" (system) "Obj->[%s::]%s" ("objects_gr116.html" ) ("objects_gr112.html" ("ORIENTATION" . 1056165) ("PATTERN" . 1056169) ("SPACING" . 1056171) ("STYLE" . 1056173)))
+ ("Init" fun "IDLgrPattern" (system) "Result = Obj->[%s::]%s([, Style])" ("objects_gr115.html" ) ("objects_gr112.html" ("ORIENTATION" . 1056165) ("PATTERN" . 1056169) ("SPACING" . 1056171) ("STYLE" . 1056173) ("THICK" . 1056179)))
("Cleanup" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr119.html"))
- ("GetProperty" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr121.html" ) ("objects_gr118.html" ("ALL" . 1056243) ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES " . 1314217) ("COLOR " . 1056263) ("DATA" . 1056381) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE " . 1056269) ("HIDE " . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE " . 1056290) ("MIN_VALUE " . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("PARENT " . 1056392) ("POLAR " . 1056389) ("SYMBOL " . 1056306) ("THICK" . 1056311) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE " . 1056325) ("YCOORD_CONV " . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZRANGE" . 1074286) ("ZVALUE" . 1056400)))
- ("SetProperty" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr123.html" ) ("objects_gr118.html" ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES " . 1314217) ("COLOR " . 1056263) ("DATAX" . 1056378) ("DATAY" . 1056267) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE " . 1056269) ("HIDE " . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE " . 1056290) ("MIN_VALUE " . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("POLAR " . 1056389) ("RESET_DATA " . 1093845) ("SHARE_DATA " . 1056304) ("SYMBOL " . 1056306) ("THICK" . 1056311) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE " . 1056325) ("YCOORD_CONV " . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZVALUE" . 1056400)))
+ ("GetProperty" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr121.html" ) ("objects_gr118.html" ("ALL" . 1056243) ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES" . 1314217) ("COLOR" . 1056263) ("DATA" . 1056381) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE" . 1056269) ("HIDE" . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE" . 1056290) ("MIN_VALUE" . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("PARENT" . 1056392) ("POLAR" . 1056389) ("SYMBOL" . 1056306) ("THICK" . 1056311) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE" . 1056325) ("YCOORD_CONV" . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZRANGE" . 1074286) ("ZVALUE" . 1056400)))
+ ("SetProperty" pro "IDLgrPlot" (system) "Obj->[%s::]%s" ("objects_gr123.html" ) ("objects_gr118.html" ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES" . 1314217) ("COLOR" . 1056263) ("DATAX" . 1056378) ("DATAY" . 1056267) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE" . 1056269) ("HIDE" . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE" . 1056290) ("MIN_VALUE" . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("POLAR" . 1056389) ("RESET_DATA" . 1093845) ("SHARE_DATA" . 1056304) ("SYMBOL" . 1056306) ("THICK" . 1056311) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE" . 1056325) ("YCOORD_CONV" . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZVALUE" . 1056400)))
("GetCTM" fun "IDLgrPlot" (system) "Result = Obj->[%s::]%s()" ("objects_gr120.html" ("DESTINATION" . 1012838) ("PATH" . 1012840) ("TOP" . 1012846)))
- ("Init" fun "IDLgrPlot" (system) "Result = Obj->[%s::]%s([, [X,] Y])" ("objects_gr122.html" ) ("objects_gr118.html" ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES " . 1314217) ("COLOR " . 1056263) ("DATAX" . 1056378) ("DATAY" . 1056267) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE " . 1056269) ("HIDE " . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE " . 1056290) ("MIN_VALUE " . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("POLAR " . 1056389) ("REGISTER_PROPERTIES" . 1056302) ("RESET_DATA " . 1093845) ("SHARE_DATA " . 1056304) ("SYMBOL " . 1056306) ("THICK" . 1056311) ("USE_ZVALUE" . 1056313) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE " . 1056325) ("YCOORD_CONV " . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZVALUE" . 1056400)))
+ ("Init" fun "IDLgrPlot" (system) "Result = Obj->[%s::]%s([, [X,] Y])" ("objects_gr122.html" ) ("objects_gr118.html" ("ALPHA_CHANNEL" . 1056258) ("CLIP_PLANES" . 1314217) ("COLOR" . 1056263) ("DATAX" . 1056378) ("DATAY" . 1056267) ("DEPTH_TEST_DISABLE" . 1094982) ("DEPTH_TEST_FUNCTION" . 1095444) ("DEPTH_WRITE_DISABLE" . 1095483) ("DOUBLE" . 1056269) ("HIDE" . 1056271) ("HISTOGRAM" . 1092755) ("LINESTYLE" . 1056277) ("MAX_VALUE" . 1056290) ("MIN_VALUE" . 1056292) ("NSUM" . 1056296) ("PALETTE" . 1056298) ("POLAR" . 1056389) ("REGISTER_PROPERTIES" . 1056302) ("RESET_DATA" . 1093845) ("SHARE_DATA" . 1056304) ("SYMBOL" . 1056306) ("THICK" . 1056311) ("USE_ZVALUE" . 1056313) ("VERT_COLORS" . 1056317) ("XCOORD_CONV" . 1056319) ("XRANGE" . 1056325) ("YCOORD_CONV" . 1056327) ("YRANGE" . 1056333) ("ZCOORD_CONV" . 1056335) ("ZVALUE" . 1056400)))
("Cleanup" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr126.html"))
- ("GetProperty" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr128.html" ) ("objects_gr125.html" ("ALL" . 1056563) ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR " . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET " . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE " . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN " . 1056598) ("HIDE " . 1056602) ("LINESTYLE " . 1056606) ("NORMALS" . 1056621) ("PARENT " . 1056792) ("POLYGONS" . 1056790) ("REJECT " . 1093870) ("SHADE_RANGE " . 1056643) ("SHADING " . 1056645) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE " . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP " . 1056664) ("TEXTURE_MAP " . 1056666) ("THICK " . 1056674) ("VERT_COLORS " . 1056679) ("XCOORD_CONV " . 1088401) ("XRANGE" . 1056808) ("YCOORD_CONV " . 1075980) ("YRANGE" . 1056822) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP " . 1056700) ("ZRANGE" . 1056834)))
- ("SetProperty" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr130.html" ) ("objects_gr125.html" ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR " . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET " . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE " . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN " . 1056598) ("HIDE " . 1056602) ("LINESTYLE " . 1056606) ("NORMALS" . 1056621) ("POLYGONS" . 1056790) ("REJECT " . 1093870) ("RESET_DATA " . 1056641) ("SHADE_RANGE " . 1056643) ("SHADING " . 1056645) ("SHARE_DATA " . 1056650) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE " . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP " . 1056664) ("TEXTURE_MAP " . 1056666) ("THICK " . 1056674) ("VERT_COLORS " . 1056679) ("XCOORD_CONV " . 1088401) ("YCOORD_CONV " . 1075980) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP " . 1056700)))
+ ("GetProperty" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr128.html" ) ("objects_gr125.html" ("ALL" . 1056563) ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR" . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET" . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE" . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN" . 1056598) ("HIDE" . 1056602) ("LINESTYLE" . 1056606) ("NORMALS" . 1056621) ("PARENT" . 1056792) ("POLYGONS" . 1056790) ("REJECT" . 1093870) ("SHADE_RANGE" . 1056643) ("SHADING" . 1056645) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE" . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP" . 1056664) ("TEXTURE_MAP" . 1056666) ("THICK" . 1056674) ("VERT_COLORS" . 1056679) ("XCOORD_CONV" . 1088401) ("XRANGE" . 1056808) ("YCOORD_CONV" . 1075980) ("YRANGE" . 1056822) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP" . 1056700) ("ZRANGE" . 1056834)))
+ ("SetProperty" pro "IDLgrPolygon" (system) "Obj->[%s::]%s" ("objects_gr130.html" ) ("objects_gr125.html" ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR" . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET" . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE" . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN" . 1056598) ("HIDE" . 1056602) ("LINESTYLE" . 1056606) ("NORMALS" . 1056621) ("POLYGONS" . 1056790) ("REJECT" . 1093870) ("RESET_DATA" . 1056641) ("SHADE_RANGE" . 1056643) ("SHADING" . 1056645) ("SHARE_DATA" . 1056650) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE" . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP" . 1056664) ("TEXTURE_MAP" . 1056666) ("THICK" . 1056674) ("VERT_COLORS" . 1056679) ("XCOORD_CONV" . 1088401) ("YCOORD_CONV" . 1075980) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP" . 1056700)))
("GetCTM" fun "IDLgrPolygon" (system) "Result = Obj->[%s::]%s()" ("objects_gr127.html" ("DESTINATION" . 1013188) ("PATH" . 1013190) ("TOP" . 1013196)))
- ("Init" fun "IDLgrPolygon" (system) "Result = Obj->[%s::]%s([, X [, Y[, Z]]])" ("objects_gr129.html" ) ("objects_gr125.html" ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR " . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET " . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE " . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN " . 1056598) ("HIDDEN_LINES" . 1056600) ("HIDE " . 1056602) ("LINESTYLE " . 1056606) ("NORMALS" . 1056621) ("PALETTE" . 1056629) ("POLYGONS" . 1056790) ("REGISTER_PROPERTIES" . 1327262) ("REJECT " . 1093870) ("RESET_DATA " . 1056641) ("SHADE_RANGE " . 1056643) ("SHADING " . 1056645) ("SHARE_DATA " . 1056650) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE " . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP " . 1056664) ("TEXTURE_MAP " . 1056666) ("THICK " . 1056674) ("VERT_COLORS " . 1056679) ("XCOORD_CONV " . 1088401) ("YCOORD_CONV " . 1075980) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP " . 1056700)))
+ ("Init" fun "IDLgrPolygon" (system) "Result = Obj->[%s::]%s([, X [, Y[, Z]]])" ("objects_gr129.html" ) ("objects_gr125.html" ("ALPHA_CHANNEL" . 1316054) ("AMBIENT" . 1309898) ("BOTTOM" . 1074388) ("CLIP_PLANES" . 1056581) ("COLOR" . 1056586) ("DATA" . 1309971) ("DEPTH_OFFSET" . 1056590) ("DEPTH_TEST_DISABLE" . 1094995) ("DEPTH_TEST_FUNCTION" . 1095559) ("DEPTH_WRITE_DISABLE" . 1095598) ("DIFFUSE" . 1310292) ("DOUBLE" . 1310286) ("EMISSION" . 1310032) ("FILL_PATTERN" . 1056598) ("HIDDEN_LINES" . 1056600) ("HIDE" . 1056602) ("LINESTYLE" . 1056606) ("NORMALS" . 1056621) ("PALETTE" . 1056629) ("POLYGONS" . 1056790) ("REGISTER_PROPERTIES" . 1327262) ("REJECT" . 1093870) ("RESET_DATA" . 1056641) ("SHADE_RANGE" . 1056643) ("SHADING" . 1056645) ("SHARE_DATA" . 1056650) ("SHININESS" . 1310128) ("SPECULAR" . 1310225) ("STYLE" . 1310253) ("TEXTURE_COORD" . 1214343) ("TEXTURE_INTERP" . 1056664) ("TEXTURE_MAP" . 1056666) ("THICK" . 1056674) ("VERT_COLORS" . 1056679) ("XCOORD_CONV" . 1088401) ("YCOORD_CONV" . 1075980) ("ZCOORD_CONV" . 1056694) ("ZERO_OPACITY_SKIP" . 1056700)))
("Cleanup" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr133.html"))
- ("GetProperty" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr135.html" ) ("objects_gr132.html" ("ALL" . 1056980) ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES " . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS " . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE " . 1057044) ("PARENT" . 1057101) ("POLYLINES" . 1057099) ("SHADING" . 1057051) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS " . 1057073) ("XCOORD_CONV " . 1057075) ("XRANGE" . 1057143) ("YCOORD_CONV" . 1057081) ("YRANGE " . 1057133) ("ZCOORD_CONV" . 1077892) ("ZRANGE" . 1057121)))
- ("SetProperty" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr137.html" ) ("objects_gr132.html" ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES " . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS " . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE " . 1057044) ("POLYLINES" . 1057099) ("RESET_DATA" . 1093906) ("SHADING" . 1057051) ("SHARE_DATA " . 1057056) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS " . 1057073) ("XCOORD_CONV " . 1057075) ("YCOORD_CONV" . 1057081) ("ZCOORD_CONV" . 1077892)))
+ ("GetProperty" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr135.html" ) ("objects_gr132.html" ("ALL" . 1056980) ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES" . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS" . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE" . 1057044) ("PARENT" . 1057101) ("POLYLINES" . 1057099) ("SHADING" . 1057051) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS" . 1057073) ("XCOORD_CONV" . 1057075) ("XRANGE" . 1057143) ("YCOORD_CONV" . 1057081) ("YRANGE" . 1057133) ("ZCOORD_CONV" . 1077892) ("ZRANGE" . 1057121)))
+ ("SetProperty" pro "IDLgrPolyline" (system) "Obj->[%s::]%s" ("objects_gr137.html" ) ("objects_gr132.html" ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES" . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS" . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE" . 1057044) ("POLYLINES" . 1057099) ("RESET_DATA" . 1093906) ("SHADING" . 1057051) ("SHARE_DATA" . 1057056) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS" . 1057073) ("XCOORD_CONV" . 1057075) ("YCOORD_CONV" . 1057081) ("ZCOORD_CONV" . 1077892)))
("GetCTM" fun "IDLgrPolyline" (system) "Result = Obj->[%s::]%s()" ("objects_gr134.html" ("DESTINATION" . 1013579) ("PATH" . 1013581) ("TOP" . 1013587)))
- ("Init" fun "IDLgrPolyline" (system) "Result = Obj->[%s::]%s([, X [, Y[, Z]]])" ("objects_gr136.html" ) ("objects_gr132.html" ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES " . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS " . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE " . 1057044) ("POLYLINES" . 1057099) ("REGISTER_PROPERTIES" . 1057049) ("RESET_DATA" . 1093906) ("SHADING" . 1057051) ("SHARE_DATA " . 1057056) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS " . 1057073) ("XCOORD_CONV " . 1057075) ("YCOORD_CONV" . 1057081) ("ZCOORD_CONV" . 1077892)))
+ ("Init" fun "IDLgrPolyline" (system) "Result = Obj->[%s::]%s([, X [, Y[, Z]]])" ("objects_gr136.html" ) ("objects_gr132.html" ("ALPHA_CHANNEL" . 1329463) ("CLIP_PLANES" . 1056996) ("COLOR" . 1057001) ("DATA" . 1057003) ("DEPTH_TEST_DISABLE" . 1095001) ("DEPTH_TEST_FUNCTION" . 1095681) ("DEPTH_WRITE_DISABLE" . 1095720) ("DOUBLE" . 1057005) ("HIDE" . 1057007) ("LABEL_NOGAPS" . 1057011) ("LABEL_OBJECTS" . 1057019) ("LABEL_OFFSETS" . 1057017) ("LABEL_POLYLINES" . 1057330) ("LABEL_USE_VERTEX_COLOR" . 1077987) ("LINESTYLE" . 1057029) ("PALETTE" . 1057044) ("POLYLINES" . 1057099) ("REGISTER_PROPERTIES" . 1057049) ("RESET_DATA" . 1093906) ("SHADING" . 1057051) ("SHARE_DATA" . 1057056) ("SYMBOL" . 1057058) ("THICK" . 1057063) ("USE_LABEL_COLOR" . 1057065) ("USE_LABEL_ORIENTATION" . 1057067) ("USE_TEXT_ALIGNMENTS" . 1057069) ("VERT_COLORS" . 1057073) ("XCOORD_CONV" . 1057075) ("YCOORD_CONV" . 1057081) ("ZCOORD_CONV" . 1077892)))
("Cleanup" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr140.html"))
("Draw" pro "IDLgrPrinter" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr141.html" ("VECT_SORTING" . 1340440) ("VECT_TEXT_RENDER_METHOD" . 1340452) ("VECTOR" . 1013979)))
- ("GetProperty" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr144.html" ) ("objects_gr139.html" ("ALL " . 1057354) ("COLOR_MODEL" . 1057403) ("DIMENSIONS" . 1057476) ("GAMMA" . 1057474) ("GRAPHICS_TREE " . 1057413) ("LANDSCAPE" . 1057415) ("N_COLORS " . 1057418) ("N_COPIES" . 1057420) ("NAME " . 1344875) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("RESOLUTION " . 1093938) ("UNITS" . 1057441)))
+ ("GetProperty" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr144.html" ) ("objects_gr139.html" ("ALL" . 1057354) ("COLOR_MODEL" . 1057403) ("DIMENSIONS" . 1057476) ("GAMMA" . 1057474) ("GRAPHICS_TREE" . 1057413) ("LANDSCAPE" . 1057415) ("N_COLORS" . 1057418) ("N_COPIES" . 1057420) ("NAME" . 1344875) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("RESOLUTION" . 1093938) ("UNITS" . 1057441)))
("NewDocument" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr147.html"))
("NewPage" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr148.html"))
- ("SetProperty" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr149.html" ) ("objects_gr139.html" ("GAMMA" . 1057474) ("GRAPHICS_TREE " . 1057413) ("LANDSCAPE" . 1057415) ("N_COPIES" . 1057420) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("UNITS" . 1057441)))
+ ("SetProperty" pro "IDLgrPrinter" (system) "Obj->[%s::]%s" ("objects_gr149.html" ) ("objects_gr139.html" ("GAMMA" . 1057474) ("GRAPHICS_TREE" . 1057413) ("LANDSCAPE" . 1057415) ("N_COPIES" . 1057420) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("UNITS" . 1057441)))
("GetContiguousPixels" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s()" ("objects_gr142.html"))
("GetFontnames" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr143.html" ("IDL_FONTS" . 1014147) ("STYLES" . 1014149)))
("GetTextDimensions" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr145.html" ("DESCENT" . 1014231) ("PATH" . 1014233)))
- ("Init" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s()" ("objects_gr146.html" ) ("objects_gr139.html" ("COLOR_MODEL" . 1057403) ("GAMMA" . 1057474) ("GRAPHICS_TREE " . 1057413) ("LANDSCAPE" . 1057415) ("N_COLORS " . 1057418) ("N_COPIES" . 1057420) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("REGISTER_PROPERTIES" . 1057456) ("UNITS" . 1057441)))
+ ("Init" fun "IDLgrPrinter" (system) "Result = Obj->[%s::]%s()" ("objects_gr146.html" ) ("objects_gr139.html" ("COLOR_MODEL" . 1057403) ("GAMMA" . 1057474) ("GRAPHICS_TREE" . 1057413) ("LANDSCAPE" . 1057415) ("N_COLORS" . 1057418) ("N_COPIES" . 1057420) ("PALETTE" . 1057464) ("PRINT_QUALITY" . 1057428) ("QUALITY" . 1057435) ("REGISTER_PROPERTIES" . 1057456) ("UNITS" . 1057441)))
("Cleanup" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr152.html"))
- ("GetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr153.html" ) ("objects_gr151.html" ("ALL" . 1057567) ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR " . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE " . 1057600) ("PALETTE " . 1057611) ("PARENT " . 1345141) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("XRANGE" . 1057656) ("YCOORD_CONV" . 1057636) ("YRANGE" . 1057668) ("ZCOORD_CONV" . 1057666) ("ZRANGE" . 1057574)))
- ("SetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr156.html" ) ("objects_gr151.html" ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR " . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE " . 1057600) ("PALETTE " . 1057611) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("YCOORD_CONV" . 1057636) ("ZCOORD_CONV" . 1057666)))
- ("Init" fun "IDLgrROI" (system) "Result = Obj->[%s::]%s([, X[, Y[, Z]]])" ("objects_gr154.html" ) ("objects_gr151.html" ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR " . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE " . 1057600) ("PALETTE " . 1057611) ("REGISTER_PROPERTIES" . 1057616) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("YCOORD_CONV" . 1057636) ("ZCOORD_CONV" . 1057666)))
+ ("GetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr153.html" ) ("objects_gr151.html" ("ALL" . 1057567) ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR" . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE" . 1057600) ("PALETTE" . 1057611) ("PARENT" . 1345141) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("XRANGE" . 1057656) ("YCOORD_CONV" . 1057636) ("YRANGE" . 1057668) ("ZCOORD_CONV" . 1057666) ("ZRANGE" . 1057574)))
+ ("SetProperty" pro "IDLgrROI" (system) "Obj->[%s::]%s" ("objects_gr156.html" ) ("objects_gr151.html" ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR" . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE" . 1057600) ("PALETTE" . 1057611) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("YCOORD_CONV" . 1057636) ("ZCOORD_CONV" . 1057666)))
+ ("Init" fun "IDLgrROI" (system) "Result = Obj->[%s::]%s([, X[, Y[, Z]]])" ("objects_gr154.html" ) ("objects_gr151.html" ("ALPHA_CHANNEL" . 1315614) ("CLIP_PLANES" . 1057587) ("COLOR" . 1057592) ("DEPTH_TEST_DISABLE" . 1095007) ("DEPTH_TEST_FUNCTION" . 1095803) ("DEPTH_WRITE_DISABLE" . 1095842) ("DOUBLE" . 1078228) ("HIDE" . 1078231) ("LINESTYLE" . 1057600) ("PALETTE" . 1057611) ("REGISTER_PROPERTIES" . 1057616) ("STYLE" . 1093956) ("SYMBOL" . 1057621) ("THICK" . 1057626) ("XCOORD_CONV" . 1057630) ("YCOORD_CONV" . 1057636) ("ZCOORD_CONV" . 1057666)))
("PickVertex" fun "IDLgrROI" (system) "Result = Obj->[%s::]%s( Dest, View, Point)" ("objects_gr155.html" ("PATH" . 1014753)))
("Add" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s, ROI" ("objects_gr159.html"))
("Cleanup" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr160.html"))
- ("GetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr161.html" ) ("objects_gr158.html" ("ALL" . 1057772) ("CLIP_PLANES" . 1057798) ("COLOR " . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("PARENT " . 1057863) ("XCOORD_CONV" . 1057861) ("XRANGE " . 1057853) ("YCOORD_CONV" . 1057851) ("YRANGE" . 1080305) ("ZCOORD_CONV" . 1057839) ("ZRANGE" . 1057781)))
- ("SetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr164.html" ) ("objects_gr158.html" ("CLIP_PLANES" . 1057798) ("COLOR " . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("XCOORD_CONV" . 1057861) ("YCOORD_CONV" . 1057851) ("ZCOORD_CONV" . 1057839)))
- ("Init" fun "IDLgrROIGroup" (system) "Result = Obj->[%s::]%s()" ("objects_gr162.html" ) ("objects_gr158.html" ("CLIP_PLANES" . 1057798) ("COLOR " . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("XCOORD_CONV" . 1057861) ("YCOORD_CONV" . 1057851) ("ZCOORD_CONV" . 1057839)))
+ ("GetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr161.html" ) ("objects_gr158.html" ("ALL" . 1057772) ("CLIP_PLANES" . 1057798) ("COLOR" . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("PARENT" . 1057863) ("XCOORD_CONV" . 1057861) ("XRANGE" . 1057853) ("YCOORD_CONV" . 1057851) ("YRANGE" . 1080305) ("ZCOORD_CONV" . 1057839) ("ZRANGE" . 1057781)))
+ ("SetProperty" pro "IDLgrROIGroup" (system) "Obj->[%s::]%s" ("objects_gr164.html" ) ("objects_gr158.html" ("CLIP_PLANES" . 1057798) ("COLOR" . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("XCOORD_CONV" . 1057861) ("YCOORD_CONV" . 1057851) ("ZCOORD_CONV" . 1057839)))
+ ("Init" fun "IDLgrROIGroup" (system) "Result = Obj->[%s::]%s()" ("objects_gr162.html" ) ("objects_gr158.html" ("CLIP_PLANES" . 1057798) ("COLOR" . 1057803) ("DEPTH_TEST_DISABLE" . 1095013) ("DEPTH_TEST_FUNCTION" . 1095918) ("DEPTH_WRITE_DISABLE" . 1095957) ("HIDE" . 1057805) ("XCOORD_CONV" . 1057861) ("YCOORD_CONV" . 1057851) ("ZCOORD_CONV" . 1057839)))
("PickRegion" fun "IDLgrROIGroup" (system) "Result = Obj->[%s::]%s( Dest, View, Point)" ("objects_gr163.html" ("PATH" . 1015096)))
("Add" pro "IDLgrScene" (system) "Obj->[%s::]%s, View" ("objects_gr167.html" ("POSITION" . 1015243)))
("Cleanup" pro "IDLgrScene" (system) "Obj->[%s::]%s" ("objects_gr168.html"))
@@ -1555,10 +1555,10 @@
("GetByName" fun "IDLgrScene" (system) "Result = Obj->[%s::]%s(Name)" ("objects_gr169.html"))
("Init" fun "IDLgrScene" (system) "Result = Obj->[%s::]%s()" ("objects_gr171.html" ) ("objects_gr166.html" ("COLOR" . 1080480) ("HIDE" . 1057961) ("REGISTER_PROPERTIES" . 1057969)))
("Cleanup" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr175.html"))
- ("GetProperty" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr177.html" ) ("objects_gr174.html" ("ALL" . 1058014) ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATA" . 1339889) ("DEPTH_OFFSET " . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE " . 1058067) ("MAX_VALUE " . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE " . 1058086) ("PARENT " . 1058283) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK " . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("XRANGE " . 1058297) ("YCOORD_CONV" . 1058295) ("YRANGE" . 1058309) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163) ("ZRANGE" . 1082521)))
- ("SetProperty" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr179.html" ) ("objects_gr174.html" ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATAX" . 1339826) ("DATAY" . 1058046) ("DATAZ" . 1058048) ("DEPTH_OFFSET " . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE " . 1058067) ("MAX_VALUE " . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE " . 1058086) ("RESET_DATA" . 1094044) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHARE_DATA" . 1082385) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK " . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("YCOORD_CONV" . 1058295) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163)))
+ ("GetProperty" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr177.html" ) ("objects_gr174.html" ("ALL" . 1058014) ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATA" . 1339889) ("DEPTH_OFFSET" . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE" . 1058067) ("MAX_VALUE" . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE" . 1058086) ("PARENT" . 1058283) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK" . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("XRANGE" . 1058297) ("YCOORD_CONV" . 1058295) ("YRANGE" . 1058309) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163) ("ZRANGE" . 1082521)))
+ ("SetProperty" pro "IDLgrSurface" (system) "Obj->[%s::]%s" ("objects_gr179.html" ) ("objects_gr174.html" ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATAX" . 1339826) ("DATAY" . 1058046) ("DATAZ" . 1058048) ("DEPTH_OFFSET" . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE" . 1058067) ("MAX_VALUE" . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE" . 1058086) ("RESET_DATA" . 1094044) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHARE_DATA" . 1082385) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK" . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("YCOORD_CONV" . 1058295) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163)))
("GetCTM" fun "IDLgrSurface" (system) "Result = Obj->[%s::]%s()" ("objects_gr176.html" ("DESTINATION" . 1015591) ("PATH" . 1015593) ("TOP" . 1015599)))
- ("Init" fun "IDLgrSurface" (system) "Result = Obj->[%s::]%s([, Z [, X, Y]])" ("objects_gr178.html" ) ("objects_gr174.html" ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATAX" . 1339826) ("DATAY" . 1058046) ("DATAZ" . 1058048) ("DEPTH_OFFSET " . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE " . 1058067) ("MAX_VALUE " . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE " . 1058086) ("REGISTER_PROPERTIES" . 1094041) ("RESET_DATA" . 1094044) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHARE_DATA" . 1082385) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK " . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("YCOORD_CONV" . 1058295) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163)))
+ ("Init" fun "IDLgrSurface" (system) "Result = Obj->[%s::]%s([, Z [, X, Y]])" ("objects_gr178.html" ) ("objects_gr174.html" ("ALPHA_CHANNEL" . 1314657) ("AMBIENT" . 1310692) ("BOTTOM" . 1058035) ("CLIP_PLANES" . 1058037) ("COLOR" . 1058042) ("DATAX" . 1339826) ("DATAY" . 1058046) ("DATAZ" . 1058048) ("DEPTH_OFFSET" . 1058050) ("DEPTH_TEST_DISABLE" . 1095019) ("DEPTH_TEST_FUNCTION" . 1096040) ("DEPTH_WRITE_DISABLE" . 1096079) ("DIFFUSE" . 1310743) ("DOUBLE" . 1058056) ("EMISSION" . 1310780) ("EXTENDED_LEGO" . 1058059) ("HIDDEN_LINES" . 1058061) ("HIDE" . 1058063) ("LINESTYLE" . 1058067) ("MAX_VALUE" . 1058080) ("MIN_VALUE" . 1058082) ("PALETTE" . 1058086) ("REGISTER_PROPERTIES" . 1094041) ("RESET_DATA" . 1094044) ("SHADE_RANGE" . 1058090) ("SHADING" . 1058092) ("SHARE_DATA" . 1082385) ("SHININESS" . 1310817) ("SHOW_SKIRT" . 1058099) ("SKIRT" . 1058101) ("SPECULAR" . 1310884) ("STYLE" . 1058103) ("TEXTURE_COORD" . 1604848) ("TEXTURE_HIGHRES" . 1058120) ("TEXTURE_INTERP" . 1058123) ("TEXTURE_MAP" . 1058125) ("THICK" . 1058136) ("USE_TRIANGLES" . 1058140) ("VERT_COLORS" . 1058142) ("XCOORD_CONV" . 1058145) ("YCOORD_CONV" . 1058295) ("ZCOORD_CONV" . 1058307) ("ZERO_OPACITY_SKIP" . 1058163)))
("Cleanup" pro "IDLgrSymbol" (system) "Obj->[%s::]%s" ("objects_gr182.html"))
("GetProperty" pro "IDLgrSymbol" (system) "Obj->[%s::]%s" ("objects_gr183.html" ) ("objects_gr181.html" ("ALL" . 1058799) ("ALPHA_CHANNEL" . 1315142) ("COLOR" . 1058811) ("DATA" . 1058813) ("SIZE" . 1058817) ("THICK" . 1058823)))
("SetProperty" pro "IDLgrSymbol" (system) "Obj->[%s::]%s" ("objects_gr185.html" ) ("objects_gr181.html" ("ALPHA_CHANNEL" . 1315142) ("COLOR" . 1058811) ("DATA" . 1058813) ("SIZE" . 1058817) ("THICK" . 1058823)))
@@ -1569,16 +1569,16 @@
("Init" fun "IDLgrTessellator" (system) "Result = Obj->[%s::]%s()" ("objects_gr190.html" ))
("Tessellate" fun "IDLgrTessellator" (system) "Result = Obj->[%s::]%s( Vertices, Poly)" ("objects_gr192.html" ("AUXDATA" . 1016374) ("QUIET" . 1016376)))
("Cleanup" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr195.html"))
- ("GetProperty" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr197.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALL" . 1058984) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES " . 1058910) ("COLOR " . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("PARENT" . 1058996) ("RECOMPUTE_DIMENSIONS " . 1058994) ("RENDER_METHOD" . 1096891) ("STRINGS " . 1096894) ("UPDIR " . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("XRANGE" . 1059010) ("YCOORD_CONV" . 1059008) ("YRANGE" . 1059022) ("ZCOORD_CONV" . 1058968) ("ZRANGE" . 1058890)))
- ("SetProperty" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr199.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES " . 1058910) ("COLOR " . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("RECOMPUTE_DIMENSIONS " . 1058994) ("RENDER_METHOD" . 1096891) ("STRINGS " . 1096894) ("UPDIR " . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("YCOORD_CONV" . 1059008) ("ZCOORD_CONV" . 1058968)))
+ ("GetProperty" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr197.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALL" . 1058984) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES" . 1058910) ("COLOR" . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("PARENT" . 1058996) ("RECOMPUTE_DIMENSIONS" . 1058994) ("RENDER_METHOD" . 1096891) ("STRINGS" . 1096894) ("UPDIR" . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("XRANGE" . 1059010) ("YCOORD_CONV" . 1059008) ("YRANGE" . 1059022) ("ZCOORD_CONV" . 1058968) ("ZRANGE" . 1058890)))
+ ("SetProperty" pro "IDLgrText" (system) "Obj->[%s::]%s" ("objects_gr199.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES" . 1058910) ("COLOR" . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("RECOMPUTE_DIMENSIONS" . 1058994) ("RENDER_METHOD" . 1096891) ("STRINGS" . 1096894) ("UPDIR" . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("YCOORD_CONV" . 1059008) ("ZCOORD_CONV" . 1058968)))
("GetCTM" fun "IDLgrText" (system) "Result = Obj->[%s::]%s()" ("objects_gr196.html" ("DESTINATION" . 1016508) ("PATH" . 1016510) ("TOP" . 1016516)))
- ("Init" fun "IDLgrText" (system) "Result = Obj->[%s::]%s([, String or vector of strings])" ("objects_gr198.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES " . 1058910) ("COLOR " . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("RECOMPUTE_DIMENSIONS " . 1058994) ("REGISTER_PROPERTIES" . 1058946) ("RENDER_METHOD" . 1096891) ("STRINGS " . 1096894) ("UPDIR " . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("YCOORD_CONV" . 1059008) ("ZCOORD_CONV" . 1058968)))
+ ("Init" fun "IDLgrText" (system) "Result = Obj->[%s::]%s([, String or vector of strings])" ("objects_gr198.html" ) ("objects_gr194.html" ("ALIGNMENT" . 1058986) ("ALPHA_CHANNEL" . 1096721) ("BASELINE" . 1096723) ("CHAR_DIMENSIONS" . 1058905) ("CLIP_PLANES" . 1058910) ("COLOR" . 1058915) ("DEPTH_TEST_DISABLE" . 1095025) ("DEPTH_TEST_FUNCTION" . 1096162) ("DEPTH_WRITE_DISABLE" . 1096201) ("ENABLE_FORMATTING" . 1058917) ("FILL_BACKGROUND" . 1058922) ("FILL_COLOR" . 1090549) ("FONT" . 1090557) ("HIDE" . 1058929) ("KERNING" . 1058933) ("LOCATIONS" . 1090561) ("ONGLASS" . 1058937) ("PALETTE" . 1058939) ("RECOMPUTE_DIMENSIONS" . 1058994) ("REGISTER_PROPERTIES" . 1058946) ("RENDER_METHOD" . 1096891) ("STRINGS" . 1096894) ("UPDIR" . 1058950) ("VERTICAL_ALIGNMENT" . 1058954) ("XCOORD_CONV" . 1058956) ("YCOORD_CONV" . 1059008) ("ZCOORD_CONV" . 1058968)))
("Add" pro "IDLgrView" (system) "Obj->[%s::]%s, Model" ("objects_gr202.html" ("POSITION" . 1016823)))
("Cleanup" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr203.html"))
- ("GetProperty" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr205.html" ) ("objects_gr201.html" ("ALL " . 1059162) ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PARENT " . 1092817) ("PROJECTION" . 1059231) ("TRANSPARENT" . 1094108) ("UNITS " . 1059207) ("VIEWPLANE_RECT " . 1059216) ("ZCLIP " . 1059219)))
- ("SetProperty" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr207.html" ) ("objects_gr201.html" ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PROJECTION" . 1059231) ("TRANSPARENT" . 1094108) ("UNITS " . 1059207) ("VIEWPLANE_RECT " . 1059216) ("ZCLIP " . 1059219)))
+ ("GetProperty" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr205.html" ) ("objects_gr201.html" ("ALL" . 1059162) ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PARENT" . 1092817) ("PROJECTION" . 1059231) ("TRANSPARENT" . 1094108) ("UNITS" . 1059207) ("VIEWPLANE_RECT" . 1059216) ("ZCLIP" . 1059219)))
+ ("SetProperty" pro "IDLgrView" (system) "Obj->[%s::]%s" ("objects_gr207.html" ) ("objects_gr201.html" ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PROJECTION" . 1059231) ("TRANSPARENT" . 1094108) ("UNITS" . 1059207) ("VIEWPLANE_RECT" . 1059216) ("ZCLIP" . 1059219)))
("GetByName" fun "IDLgrView" (system) "Result = Obj->[%s::]%s(Name)" ("objects_gr204.html"))
- ("Init" fun "IDLgrView" (system) "Result = Obj->[%s::]%s()" ("objects_gr206.html" ) ("objects_gr201.html" ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PROJECTION" . 1059231) ("REGISTER_PROPERTIES" . 1059205) ("TRANSPARENT" . 1094108) ("UNITS " . 1059207) ("VIEWPLANE_RECT " . 1059216) ("ZCLIP " . 1059219)))
+ ("Init" fun "IDLgrView" (system) "Result = Obj->[%s::]%s()" ("objects_gr206.html" ) ("objects_gr201.html" ("COLOR" . 1059182) ("DEPTH_CUE" . 1059184) ("DIMENSIONS" . 1059192) ("DOUBLE" . 1059194) ("EYE" . 1059197) ("HIDE" . 1059199) ("LOCATION" . 1090641) ("PROJECTION" . 1059231) ("REGISTER_PROPERTIES" . 1059205) ("TRANSPARENT" . 1094108) ("UNITS" . 1059207) ("VIEWPLANE_RECT" . 1059216) ("ZCLIP" . 1059219)))
("Add" pro "IDLgrViewgroup" (system) "Obj->[%s::]%s, Object" ("objects_gr210.html" ("POSITION" . 1017170)))
("Cleanup" pro "IDLgrViewgroup" (system) "Obj->[%s::]%s" ("objects_gr211.html"))
("GetProperty" pro "IDLgrViewgroup" (system) "Obj->[%s::]%s" ("objects_gr213.html" ) ("objects_gr209.html" ("ALL" . 1077311) ("HIDE" . 1059327) ("PARENT" . 1084394)))
@@ -1587,28 +1587,28 @@
("Init" fun "IDLgrViewgroup" (system) "Result = Obj->[%s::]%s()" ("objects_gr214.html" ) ("objects_gr209.html" ("HIDE" . 1059327) ("REGISTER_PROPERTIES" . 1059341)))
("Cleanup" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr218.html"))
("ComputeBounds" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr219.html" ("OPACITY" . 1017518) ("RESET" . 1017520) ("VOLUMES" . 1017522)))
- ("GetProperty" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr221.html" ) ("objects_gr217.html" ("ALL" . 1059382) ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1 " . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("PARENT" . 1088485) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED " . 1059474) ("VALID_DATA" . 1059634) ("VOLUME_SELECT " . 1059632) ("XCOORD_CONV" . 1059489) ("XRANGE" . 1059648) ("YCOORD_CONV" . 1059495) ("YRANGE" . 1059660) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509) ("ZRANGE" . 1059393)))
- ("SetProperty" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr224.html" ) ("objects_gr217.html" ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1 " . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED " . 1059474) ("VOLUME_SELECT " . 1059632) ("XCOORD_CONV" . 1059489) ("YCOORD_CONV" . 1059495) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509)))
+ ("GetProperty" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr221.html" ) ("objects_gr217.html" ("ALL" . 1059382) ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1" . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("PARENT" . 1088485) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED" . 1059474) ("VALID_DATA" . 1059634) ("VOLUME_SELECT" . 1059632) ("XCOORD_CONV" . 1059489) ("XRANGE" . 1059648) ("YCOORD_CONV" . 1059495) ("YRANGE" . 1059660) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509) ("ZRANGE" . 1059393)))
+ ("SetProperty" pro "IDLgrVolume" (system) "Obj->[%s::]%s" ("objects_gr224.html" ) ("objects_gr217.html" ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1" . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED" . 1059474) ("VOLUME_SELECT" . 1059632) ("XCOORD_CONV" . 1059489) ("YCOORD_CONV" . 1059495) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509)))
("GetCTM" fun "IDLgrVolume" (system) "Result = Obj->[%s::]%s()" ("objects_gr220.html" ("DESTINATION" . 1017555) ("PATH" . 1017557) ("TOP" . 1017563)))
- ("Init" fun "IDLgrVolume" (system) "Result = Obj->[%s::]%s([, vol0 [, vol1 [, vol2 [, vol3]]]])" ("objects_gr222.html" ) ("objects_gr217.html" ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1 " . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("REGISTER_PROPERTIES" . 1059616) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED " . 1059474) ("VOLUME_SELECT " . 1059632) ("XCOORD_CONV" . 1059489) ("YCOORD_CONV" . 1059495) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509)))
+ ("Init" fun "IDLgrVolume" (system) "Result = Obj->[%s::]%s([, vol0 [, vol1 [, vol2 [, vol3]]]])" ("objects_gr222.html" ) ("objects_gr217.html" ("ALPHA_CHANNEL" . 1315212) ("AMBIENT" . 1059403) ("BOUNDS" . 1059406) ("CLIP_PLANES" . 1059408) ("COMPOSITE_FUNCTION" . 1092822) ("DATA0" . 1059427) ("DATA1" . 1059429) ("DATA2" . 1059431) ("DATA3" . 1059433) ("DEPTH_CUE" . 1059436) ("DEPTH_TEST_DISABLE" . 1095038) ("DEPTH_TEST_FUNCTION" . 1096277) ("DEPTH_WRITE_DISABLE" . 1096316) ("HIDE" . 1059445) ("HINTS" . 1059449) ("INTERPOLATE" . 1059455) ("LIGHTING_MODEL" . 1059457) ("NO_COPY" . 1059462) ("OPACITY_TABLE0" . 1086135) ("OPACITY_TABLE1" . 1059466) ("REGISTER_PROPERTIES" . 1059616) ("RENDER_STEP" . 1096662) ("RGB_TABLE0" . 1088582) ("RGB_TABLE1" . 1059472) ("TWO_SIDED" . 1059474) ("VOLUME_SELECT" . 1059632) ("XCOORD_CONV" . 1059489) ("YCOORD_CONV" . 1059495) ("ZBUFFER" . 1059501) ("ZCOORD_CONV" . 1059503) ("ZERO_OPACITY_SKIP" . 1059509)))
("PickVoxel" fun "IDLgrVolume" (system) "Result = Obj->[%s::]%s ( Win, View, Point)" ("objects_gr223.html" ("PATH" . 1017818)))
("Cleanup" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr227.html"))
("Draw" pro "IDLgrVRML" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr228.html"))
("GetDeviceInfo" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr229.html" ("ALL" . 1018053) ("MAX_NUM_CLIP_PLANES" . 1018055) ("MAX_TEXTURE_DIMENSIONS" . 1018057) ("MAX_VIEWPORT_DIMENSIONS" . 1018059) ("NAME" . 1018061) ("NUM_CPUS" . 1018063) ("VENDOR" . 1018066) ("VERSION" . 1018068)))
- ("GetProperty" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr231.html" ) ("objects_gr226.html" ("ALL" . 1059804) ("COLOR_MODEL" . 1059817) ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE " . 1059826) ("N_COLORS" . 1059828) ("PALETTE" . 1059830) ("QUALITY " . 1059832) ("RESOLUTION" . 1094159) ("SCREEN_DIMENSIONS" . 1059862) ("UNITS" . 1059860)))
- ("SetProperty" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr234.html" ) ("objects_gr226.html" ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE " . 1059826) ("PALETTE" . 1059830) ("QUALITY " . 1059832) ("RESOLUTION" . 1094159) ("UNITS" . 1059860)))
+ ("GetProperty" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr231.html" ) ("objects_gr226.html" ("ALL" . 1059804) ("COLOR_MODEL" . 1059817) ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE" . 1059826) ("N_COLORS" . 1059828) ("PALETTE" . 1059830) ("QUALITY" . 1059832) ("RESOLUTION" . 1094159) ("SCREEN_DIMENSIONS" . 1059862) ("UNITS" . 1059860)))
+ ("SetProperty" pro "IDLgrVRML" (system) "Obj->[%s::]%s" ("objects_gr234.html" ) ("objects_gr226.html" ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE" . 1059826) ("PALETTE" . 1059830) ("QUALITY" . 1059832) ("RESOLUTION" . 1094159) ("UNITS" . 1059860)))
("GetFontnames" fun "IDLgrVRML" (system) "Result = Obj->[%s::]%s( FamilyName)" ("objects_gr230.html" ("IDL_FONTS" . 1018109) ("STYLES" . 1018111)))
("GetTextDimensions" fun "IDLgrVRML" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr232.html" ("DESCENT" . 1018185) ("PATH" . 1018187)))
- ("Init" fun "IDLgrVRML" (system) "Result = Obj->[%s::]%s()" ("objects_gr233.html" ) ("objects_gr226.html" ("COLOR_MODEL" . 1059817) ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE " . 1059826) ("N_COLORS" . 1059828) ("PALETTE" . 1059830) ("QUALITY " . 1059832) ("REGISTER_PROPERTIES" . 1059837) ("RESOLUTION" . 1094159) ("UNITS" . 1059860) ("WORLDINFO " . 1059848) ("WORLDTITLE" . 1059850)))
+ ("Init" fun "IDLgrVRML" (system) "Result = Obj->[%s::]%s()" ("objects_gr233.html" ) ("objects_gr226.html" ("COLOR_MODEL" . 1059817) ("DIMENSIONS" . 1059821) ("FILENAME" . 1059824) ("GRAPHICS_TREE" . 1059826) ("N_COLORS" . 1059828) ("PALETTE" . 1059830) ("QUALITY" . 1059832) ("REGISTER_PROPERTIES" . 1059837) ("RESOLUTION" . 1094159) ("UNITS" . 1059860) ("WORLDINFO" . 1059848) ("WORLDTITLE" . 1059850)))
("Cleanup" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr237.html"))
("Draw" pro "IDLgrWindow" (system) "Obj->[%s::]%s [, Picture]" ("objects_gr238.html" ("CREATE_INSTANCE" . 1018509) ("DRAW_INSTANCE" . 1018511)))
("Erase" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr239.html" ("COLOR" . 1018544)))
("GetDeviceInfo" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr241.html" ("ALL" . 1018622) ("MAX_NUM_CLIP_PLANES" . 1018624) ("MAX_TEXTURE_DIMENSIONS" . 1018626) ("MAX_VIEWPORT_DIMENSIONS" . 1018628) ("NAME" . 1018630) ("NUM_CPUS" . 1018632) ("VENDOR" . 1018635) ("VERSION" . 1018637)))
- ("GetProperty" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr244.html" ) ("objects_gr236.html" ("ALL" . 1059951) ("COLOR_MODEL" . 1059974) ("CURRENT_ZOOM" . 1249228) ("DIMENSIONS " . 1249231) ("DISPLAY_NAME (X Only)" . 1059985) ("GRAPHICS_TREE" . 1059987) ("IMAGE_DATA " . 1060084) ("LOCATION " . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("N_COLORS" . 1059992) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("RENDERER" . 1094184) ("RESOLUTION" . 1060060) ("RETAIN" . 1060058) ("SCREEN_DIMENSIONS " . 1060073) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZBUFFER_DATA" . 1091007) ("ZOOM_BASE" . 1342797) ("ZOOM_NSTEP" . 1342953)))
+ ("GetProperty" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr244.html" ) ("objects_gr236.html" ("ALL" . 1059951) ("COLOR_MODEL" . 1059974) ("CURRENT_ZOOM" . 1249228) ("DIMENSIONS" . 1249231) ("DISPLAY_NAME (X Only)" . 1059985) ("GRAPHICS_TREE" . 1059987) ("IMAGE_DATA" . 1060084) ("LOCATION" . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("N_COLORS" . 1059992) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("RENDERER" . 1094184) ("RESOLUTION" . 1060060) ("RETAIN" . 1060058) ("SCREEN_DIMENSIONS" . 1060073) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZBUFFER_DATA" . 1091007) ("ZOOM_BASE" . 1342797) ("ZOOM_NSTEP" . 1342953)))
("Iconify" pro "IDLgrWindow" (system) "Obj->[%s::]%s, IconFlag" ("objects_gr246.html"))
("SetCurrentCursor" pro "IDLgrWindow" (system) "Obj->[%s::]%s [, CursorName]" ("objects_gr251.html" ("HOTSPOT" . 1019148) ("IMAGE" . 1019144) ("MASK" . 1019146) ("STANDARD" . 1019150)))
("SetCurrentZoom" pro "IDLgrWindow" (system) "Obj-> [%s::]%s, ZoomFactor" ("objects_gr252.html" ("RESET" . 1360383)))
- ("SetProperty" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr253.html" ) ("objects_gr236.html" ("DIMENSIONS " . 1249231) ("DISPLAY_NAME (X Only)" . 1059985) ("GRAPHICS_TREE" . 1059987) ("LOCATION " . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZOOM_BASE" . 1342797)))
+ ("SetProperty" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr253.html" ) ("objects_gr236.html" ("DIMENSIONS" . 1249231) ("DISPLAY_NAME (X Only)" . 1059985) ("GRAPHICS_TREE" . 1059987) ("LOCATION" . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZOOM_BASE" . 1342797)))
("Show" pro "IDLgrWindow" (system) "Obj->[%s::]%s, Position" ("objects_gr254.html"))
("ZoomIn" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr255.html"))
("ZoomOut" pro "IDLgrWindow" (system) "Obj->[%s::]%s" ("objects_gr256.html"))
@@ -1616,7 +1616,7 @@
("GetDimensions" fun "IDLgrWindow" (system) "Result = Obj -> [%s::]%s ()" ("objects_gr242.html" ("MINIMUM_VIRTUAL_DIMENSIONS" . 1360348) ("ORIGINAL_VIRTUAL_DIMENSIONS" . 1360355) ("VIRTUAL_DIMENSIONS" . 1360358) ("VISIBLE_LOCATION" . 1360361)))
("GetFontnames" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s(FamilyName)" ("objects_gr243.html" ("IDL_FONTS" . 1018678) ("STYLES" . 1018680)))
("GetTextDimensions" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s( TextObj)" ("objects_gr245.html" ("DESCENT" . 1018765) ("PATH" . 1018767)))
- ("Init" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s()" ("objects_gr247.html" ) ("objects_gr236.html" ("COLOR_MODEL" . 1059974) ("DIMENSIONS " . 1249231) ("GRAPHICS_TREE" . 1059987) ("LOCATION " . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("N_COLORS" . 1059992) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("REGISTER_PROPERTIES" . 1060008) ("RENDERER" . 1094184) ("RETAIN" . 1060058) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZOOM_BASE" . 1342797)))
+ ("Init" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s()" ("objects_gr247.html" ) ("objects_gr236.html" ("COLOR_MODEL" . 1059974) ("DIMENSIONS" . 1249231) ("GRAPHICS_TREE" . 1059987) ("LOCATION" . 1060082) ("MINIMUM_VIRTUAL_DIMENSIONS" . 1343479) ("N_COLORS" . 1059992) ("PALETTE" . 1059998) ("QUALITY" . 1060003) ("REGISTER_PROPERTIES" . 1060008) ("RENDERER" . 1094184) ("RETAIN" . 1060058) ("TITLE" . 1060071) ("UNITS" . 1060033) ("VIRTUAL_DIMENSIONS" . 1060050) ("VISIBLE_LOCATION" . 1097046) ("ZOOM_BASE" . 1342797)))
("PickData" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s( View, Object, Location, XYZLocation)" ("objects_gr248.html" ("DIMENSIONS" . 1018957) ("PATH" . 1018961) ("PICK_STATUS" . 1018967)))
("Read" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s()" ("objects_gr249.html"))
("Select" fun "IDLgrWindow" (system) "Result = Obj->[%s::]%s( Picture, XY)" ("objects_gr250.html" ("DIMENSIONS" . 1019069) ("ORDER" . 1019073) ("SUB_SELECTION" . 1343670) ("UNITS" . 1019076)))
@@ -1691,7 +1691,7 @@
("PromptUserText" fun "IDLitIMessaging" (system) "Result = Obj->[%s::]%s(StrPrompt, Answer)" ("objects_it86.html" ("TITLE" . 1080016)))
("PromptUserYesNo" fun "IDLitIMessaging" (system) "Result = Obj->[%s::]%s(StrPrompt, Answer)" ("objects_it87.html" ("TITLE" . 1080036)))
("Cleanup" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it93.html"))
- ("GetProperty" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it96.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DESCRIPTION" . 1080417) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT " . 1080617) ("TRANSIENT_MOTION" . 1080650) ("TYPES" . 1080678) ("VISUAL_TYPE" . 1080735)))
+ ("GetProperty" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it96.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DESCRIPTION" . 1080417) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT" . 1080617) ("TRANSIENT_MOTION" . 1080650) ("TYPES" . 1080678) ("VISUAL_TYPE" . 1080735)))
("OnKeyboard" pro "IDLitManipulator" (system) "Obj->[%s::]%s, Win, IsASCII, Character, KeyValue, X, Y, Press, Release, KeyMods" ("objects_it98.html"))
("OnLoseCurrentManipulator" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it99.html"))
("OnMouseDown" pro "IDLitManipulator" (system) "Obj->[%s::]%s, Win, X, Y, IButton, KeyMods, NClicks" ("objects_it100.html"))
@@ -1699,10 +1699,10 @@
("OnMouseUp" pro "IDLitManipulator" (system) "Obj->[%s::]%s, Win, X, Y, IButton" ("objects_it102.html"))
("RegisterCursor" pro "IDLitManipulator" (system) "Obj->[%s::]%s, ArrCursor, Name" ("objects_it104.html" ("DEFAULT" . 1281810)))
("SetCurrentManipulator" pro "IDLitManipulator" (system) "Obj->[%s::]%s [, Item]" ("objects_it105.html"))
- ("SetProperty" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it120.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DESCRIPTION" . 1080417) ("DISABLE" . 1080445) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT " . 1080617) ("TRANSIENT_MOTION" . 1080650) ("VISUAL_TYPE" . 1080735)))
+ ("SetProperty" pro "IDLitManipulator" (system) "Obj->[%s::]%s" ("objects_it120.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DESCRIPTION" . 1080417) ("DISABLE" . 1080445) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT" . 1080617) ("TRANSIENT_MOTION" . 1080650) ("VISUAL_TYPE" . 1080735)))
("CommitUndoValues" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s()" ("objects_it94.html" ("UNCOMMIT" . 1080828)))
("GetCursorType" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s(TypeIn, KeyMods)" ("objects_it95.html"))
- ("Init" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s()" ("objects_it97.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DEFAULT_CURSOR" . 1080389) ("DESCRIPTION" . 1080417) ("DISABLE" . 1080445) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT " . 1080617) ("TRANSIENT_MOTION" . 1080650) ("TYPES" . 1080678) ("VIEWS_ONLY" . 1080706) ("VISUAL_TYPE" . 1080735)))
+ ("Init" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s()" ("objects_it97.html" ) ("objects_it92.html" ("BUTTON_EVENTS" . 1080361) ("DEFAULT_CURSOR" . 1080389) ("DESCRIPTION" . 1080417) ("DISABLE" . 1080445) ("KEYBOARD_EVENTS" . 1080504) ("MOTION_EVENTS" . 1080532) ("OPERATION_IDENTIFIER" . 1080560) ("PARAMETER_IDENTIFIER" . 1080588) ("TRANSIENT_DEFAULT" . 1080617) ("TRANSIENT_MOTION" . 1080650) ("TYPES" . 1080678) ("VIEWS_ONLY" . 1080706) ("VISUAL_TYPE" . 1080735)))
("RecordUndoValues" fun "IDLitManipulator" (system) "Result = Obj->[%s::]%s()" ("objects_it103.html"))
("Add" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s, Manipulator" ("objects_it109.html"))
("GetProperty" pro "IDLitManipulatorContainer" (system) "Obj->[%s::]%s" ("objects_it112.html" ))
@@ -1816,7 +1816,7 @@
("BeginManipulation" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Manipulator" ("objects_it241.html"))
("Cleanup" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it242.html"))
("EndManipulation" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Manipulator" ("objects_it243.html"))
- ("GetProperty" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it251.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE " . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET " . 1086407) ("PROPERTY_INTERSECTION" . 1153078)))
+ ("GetProperty" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it251.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE" . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET" . 1086407) ("PROPERTY_INTERSECTION" . 1153078)))
("Move" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Source, Destination" ("objects_it261.html"))
("On2DRotate" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, IsRotated" ("objects_it262.html"))
("OnAxesRequestChange" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Notifier, AxesRequest" ("objects_it263.html"))
@@ -1836,7 +1836,7 @@
("SetAxesStyleRequest" pro "IDLitVisualization" (system) "Obj->[%s::]%s, StyleRequest" ("objects_it278.html" ("NO_NOTIFY" . 1264441)))
("SetCurrentSelectionVisual" pro "IDLitVisualization" (system) "Obj->[%s::]%s, Manipulator" ("objects_it279.html"))
("SetDefaultSelectionVisual" pro "IDLitVisualization" (system) "Obj->[%s::]%s, SelectionVisual" ("objects_it281.html" ("POSITION" . 1087891)))
- ("SetProperty" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it283.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE " . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET " . 1086407) ("TYPE" . 1086465)))
+ ("SetProperty" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it283.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE" . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET" . 1086407) ("TYPE" . 1086465)))
("UpdateSelectionVisual" pro "IDLitVisualization" (system) "Obj->[%s::]%s" ("objects_it284.html"))
("VisToWindow" pro "IDLitVisualization" (system) "Obj->[%s::]%s, InX, InY, InZ, OutX, OutY, OutZ" ("objects_it285.html" ("NO_TRANSFORM" . 1157092)))
("WindowToVis" pro "IDLitVisualization" (system) "Obj->[%s::]%s, InX, InY, InZ, OutX, OutY, OutZ or Obj->[%s::]%s, InX, InY, OutX, OutY or Obj->[%s::]%s, InVerts, OutVerts" ("objects_it286.html"))
@@ -1851,7 +1851,7 @@
("GetSelectionVisual" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s(Manipulator)" ("objects_it253.html"))
("GetTypes" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it254.html"))
("GetXYZRange" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s(XRange,YRange, ZRange)" ("objects_it255.html" ("DATA" . 1087296) ("NO_TRANSFORM" . 1087298)))
- ("Init" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it256.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE " . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET " . 1086407) ("PROPERTY_INTERSECTION" . 1153078) ("TYPE" . 1086465)))
+ ("Init" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it256.html" ) ("objects_it238.html" ("CENTER_OF_ROTATION" . 1086295) ("IMPACTS_RANGE" . 1255230) ("ISOTROPIC" . 1086379) ("MANIPULATOR_TARGET" . 1086407) ("PROPERTY_INTERSECTION" . 1153078) ("TYPE" . 1086465)))
("Is3D" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it257.html"))
("IsIsotropic" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it258.html"))
("IsManipulatorTarget" fun "IDLitVisualization" (system) "Result = Obj->[%s::]%s()" ("objects_it259.html"))
@@ -1942,11 +1942,11 @@
("IDLgrLegend" (tags "OSCALENODE" "BORDER_GAP" "COLUMNS" "OOUTLINE" "OFILL" "OFONT" "GAP" "GLYPHWIDTH" "PITEM_COLOR" "PITEM_LINESTYLE" "PITEM_NAME" "PITEM_OBJECT" "PITEM_THICK" "PITEM_TYPE" "OTITLE" "PTEXT_COLOR" "BRECOMPUTE" "PGLYPHS" "PTEXTS" "HGLYPHWIDTH" "VGLYPHWIDTH" "COLORMODE" "CLEANLEAVE" "CLEANGLYPHS" "IDLGRLEGENDVERSION") (inherits "IDLgrModel") (link "objects_gr65.html"))
("IDLgrPolygon" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPOLYGON_TOP" "IDLGRPOLYGONVERSION" "DATA" "PRECISION" "FILLPATTERN" "POLYGONS" "NORMALS" "POLYGONFLAGS" "SHADING" "SHADERANGE" "STYLE" "TXTRCOORD" "TXTRMAP" "VERTCOLORS" "BTMCOLOR" "AMBIENT" "DIFFUSE" "SPECULAR" "EMISSION" "SHININESS" "LINESTYLE" "THICK" "DEPTHOFFSET" "IDLGRPOLYGON_BOTTOM") (inherits "IDLitComponent") (link "objects_gr124.html"))
("IDLgrWindow" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRWINDOW_TOP" "IDLGRWINDOWVERSION" "WINDOWFLAGS" "CURRENT_ZOOM" "DIMENSIONS" "DISPLAYNAME" "INDEX" "LOCATION" "MINIMUM_VIRTUAL_DIMENSIONS" "ORIGINAL_VIRTUAL_DIMENSIONS" "RENDERER" "RETAIN" "SCREENDIMENSIONS" "SELF" "TITLE" "UNITS" "VIRTUAL_DIMENSIONS" "VISIBLE_LOCATION" "ZOOM_BASE" "ZOOM_NSTEP" "EXTERNAL_WINDOW" "NEXT" "WFILL1" "PARENT" "WFILL2" "IDLGRWINDOW_BOTTOM") (inherits "IDLitComponent") (link "objects_gr235.html"))
- ("IDLgrROI" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRROI_TOP" "IDLGRROIVERSION" "LINESTYLE" "STYLE" "SYMBOL" "THICK" "IDLGRROI_BOTTOM") (inherits "IDLanROI" "IDLitComponent") (link "objects_gr150.html"))
("IDLgrPolyline" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPOLYLINE_TOP" "IDLGRPOLYLINEVERSION" "POLYLINEFLAGS" "DATA" "PRECISION" "LABEL_NOGAPS" "LABEL_OBJECTS" "LABEL_OFFSETS" "LABEL_POLYLINES" "LINESTYLE" "POLYLINES" "SYMBOL" "PSYMBOL" "THICK" "SHADING" "USE_LABEL_COLOR" "USE_LABEL_ORIENTATION" "VERTCOLORS" "LABEL_INFO" "FILL1" "IDLGRPOLYLINE_BOTTOM") (inherits "IDLitComponent") (link "objects_gr131.html"))
+ ("IDLgrROI" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRROI_TOP" "IDLGRROIVERSION" "LINESTYLE" "STYLE" "SYMBOL" "THICK" "IDLGRROI_BOTTOM") (inherits "IDLanROI" "IDLitComponent") (link "objects_gr150.html"))
("IDLitManipulatorManager" (tags "_OOLDCURR" "_ODEFAULT" "_OWINCURR" "_CURROBS") (inherits "IDLitManipulatorContainer") (link "objects_it121.html"))
- ("IDLgrPlot" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPLOT_TOP" "IDLGRPLOTVERSION" "DATA" "PLOTFLAGS" "LINESTYLE" "PRECISION" "MAXVAL" "MINVAL" "NSUM" "SYMBOL" "PSYMBOL" "THICK" "VERTCOLORS" "ZVALUE" "LINEDATA" "PFILL1" "IDLGRPLOT_BOTTOM") (inherits "IDLitComponent") (link "objects_gr117.html"))
("IDLgrVolume" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRVOLUME_TOP" "IDLGRVOLUMEVERSION" "AMBIENT" "BOUNDS" "LIMITS" "DIMENSIONS" "COLORTABLE" "COMPOSITEFUNC" "CUTPLANES" "NUMCUTPLANES" "DEPTH_CUE" "OPACITYTABLE" "RENDERSTEP" "DATA" "EDM_VOLUME" "VOLUMEFLAGS" "IDLGRVOLUME_BOTTOM") (inherits "IDLitComponent") (link "objects_gr216.html"))
+ ("IDLgrPlot" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRPLOT_TOP" "IDLGRPLOTVERSION" "DATA" "PLOTFLAGS" "LINESTYLE" "PRECISION" "MAXVAL" "MINVAL" "NSUM" "SYMBOL" "PSYMBOL" "THICK" "VERTCOLORS" "ZVALUE" "LINEDATA" "PFILL1" "IDLGRPLOT_BOTTOM") (inherits "IDLitComponent") (link "objects_gr117.html"))
("IDLgrROIGroup" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRROIGROUP_TOP" "IDLGRROIGROUPVERSION" "IDLGRROIGROUP_BOTTOM") (inherits "IDLanROIGroup" "IDLitComponent") (link "objects_gr157.html"))
("IDLgrText" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRTEXT_TOP" "IDLGRTEXTVERSION" "TEXTFLAGS" "ALIGNMENT" "BASELINE" "CHAR_DIMENSIONS" "RECOMP_CTM" "FONT" "LOCATIONS" "STRINGS" "SUBPARENT" "UPDIR" "VERTICAL_ALIGNMENT" "FILL_COLOR" "RENDER_MODE" "IDLGRTEXT_BOTTOM") (inherits "IDLitComponent") (link "objects_gr193.html"))
("IDLitManipulatorContainer" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN" "M_BAUTOSWITCH" "M_CURRMANIP") (inherits "IDLitManipulator" "IDL_Container") (link "objects_it107.html"))
@@ -1955,33 +1955,33 @@
("IDLgrImage" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRIMAGE_TOP" "IDLGRIMAGEVERSION" "CHANNEL" "DATA" "DIMENSIONS" "SUB_RECT" "IMAGEFLAGS" "LOCATION" "INTERLEAVE" "INTERPOLATE" "BLEND_FUNCTIONS" "IDLGRIMAGE_BOTTOM") (inherits "IDLitComponent") (link "objects_gr58.html"))
("IDLgrLight" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRGRAPHIC_TOP" "IDLGRGRAPHICVERSION" "ALPHACHANNEL" "CLIP_PLANES" "COLOR" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "GRAPHICFLAGS" "PALETTE" "XCOORD_CONV" "YCOORD_CONV" "ZCOORD_CONV" "XRANGE" "YRANGE" "ZRANGE" "GRAPHIC_DATA_OBJECT" "IDLGRGRAPHIC_BOTTOM" "IDLGRLIGHT_TOP" "IDLGRLIGHTVERSION" "ATTENUATION" "CONEANGLE" "DIRECTION" "FOCUS" "INTENSITY" "LOCATION" "TYPE" "IDLGRLIGHT_BOTTOM") (inherits "IDLitComponent") (link "objects_gr72.html"))
("IDLgrView" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRVIEW_TOP" "IDLGRVIEWVERSION" "VIEWFLAGS" "COLOR" "DEPTH_CUE" "DIMENSIONS" "PRECISION" "EYE" "LOCATION" "OBLIQUE" "PROJECTION" "TRANSPARENT" "UNITS" "VIEW" "ZCLIP" "IDLGRVIEW_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr200.html"))
- ("IDLgrClipboard" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRCLIPBOARD_TOP" "IDLGRCLIPBOARDVERSION" "UNITS" "DIMENSIONS" "FILENAME" "VECTOR" "POSTSCRIPT" "IDLGRCLIPBOARD_BOTTOM") (inherits "IDLitComponent") (link "objects_gr25.html"))
("IDLgrVRML" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRVRML_TOP" "IDLGRVRMLVERSION" "UNITS" "DIMENSIONS" "FILENAME" "WORLDINFO" "WORLDTITLE" "IDLGRVRML_BOTTOM") (inherits "IDLitComponent") (link "objects_gr225.html"))
- ("IDLitManipulator" (tags "PSELECTIONLIST" "NSELECTIONLIST" "BUTTONPRESS" "_OCMDSET" "_TYPES" "_OHITVIS" "_OHITVIEWGROUP" "_PSUBHITLIST" "_STRVISUALTYPE" "_IDOPERATION" "_IDPARAMETER" "_DEFAULTCURSOR" "_SUBTYPE" "_STRTMPMSG" "_SKIPMACROHISTORY" "_TRANSMOTION" "_INTRANSMOTION" "_TRANSIENT" "_KEYTRANSIENT" "_DISABLE" "_VIEWMODE" "_UIEVENTMASK" "_OLDQUALITY" "_DRAQQUAL" "_NORMALIZEDZ") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it91.html"))
+ ("IDLgrClipboard" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRCLIPBOARD_TOP" "IDLGRCLIPBOARDVERSION" "UNITS" "DIMENSIONS" "FILENAME" "VECTOR" "POSTSCRIPT" "IDLGRCLIPBOARD_BOTTOM") (inherits "IDLitComponent") (link "objects_gr25.html"))
("IDLgrPrinter" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRPRINTER_TOP" "IDLGRPRINTERVERSION" "PRINTERFLAGS" "NCOPIES" "UNITS" "GAMMA" "IDLGRPRINTER_BOTTOM") (inherits "IDLitComponent") (link "objects_gr138.html"))
+ ("IDLitManipulator" (tags "PSELECTIONLIST" "NSELECTIONLIST" "BUTTONPRESS" "_OCMDSET" "_TYPES" "_OHITVIS" "_OHITVIEWGROUP" "_PSUBHITLIST" "_STRVISUALTYPE" "_IDOPERATION" "_IDPARAMETER" "_DEFAULTCURSOR" "_SUBTYPE" "_STRTMPMSG" "_SKIPMACROHISTORY" "_TRANSMOTION" "_INTRANSMOTION" "_TRANSIENT" "_KEYTRANSIENT" "_DISABLE" "_VIEWMODE" "_UIEVENTMASK" "_OLDQUALITY" "_DRAQQUAL" "_NORMALIZEDZ") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it91.html"))
("IDLgrModel" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRMODEL_TOP" "IDLGRMODELVERSION" "MODELFLAGS" "CLIP_PLANES" "DEPTH_TEST_DISABLE" "DEPTH_TEST_FUNCTION" "DEPTH_WRITE_DISABLE" "TRANSFORM" "IDLGRMODEL_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr79.html"))
("IDLgrBuffer" (tags "IDLGRSRCDEST_TOP" "IDLGRSRCDESTVERSION" "CLIENTDIMENSIONS" "COLORMODEL" "SRCDESTFLAGS" "GRAPHICS_TREE" "NCOLORS" "PALETTE" "QUALITY" "RESOLUTION" "DIST" "FILL1" "DEV" "FILL2" "ATTRS" "FILL3" "CACHES" "FILL4" "IDLGRSRCDEST_BOTTOM" "IDLGRBUFFER_TOP" "IDLGRBUFFERVERSION" "UNITS" "DIMENSIONS" "IDLGRBUFFER_BOTTOM") (inherits "IDLitComponent") (link "objects_gr10.html"))
("IDLitParameterSet" (tags "_PNAMES") (inherits "IDLitDataContainer") (link "objects_it159.html"))
- ("IDLitDataContainer" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN" "_IDISABLE" "_IUPDATES" "_BINSEARCH") (inherits "IDLitData" "IDL_Container") (link "objects_it59.html"))
+ ("IDLitDataContainer" (tags "_ONOTIFIER" "_PDATA" "_PMETADATA" "_TYPE" "_AUTODELETE" "_NREF" "_PDESTRUCT" "_HIDE" "_READ_ONLY" "_IDISABLE" "_IUPDATES" "_BINSEARCH") (inherits "IDLitContainer") (link "objects_it59.html"))
("IDLgrScene" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRSCENE_TOP" "IDLGRSCENEVERSION" "COLOR" "TRANSPARENT" "IDLGRSCENE_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr165.html"))
- ("IDLitUI" (tags "_MENUBARS" "_TOOLBARS" "_STATUSBAR" "_UISERVICES" "_PDISPATCHSUBJECT" "_PDISPATCHOBSERVER" "_OTOOL" "_IDISPATCH" "_WBASE") (inherits "IDLitContainer") (link "objects_it222.html"))
("IDLgrViewgroup" (tags "IDLGRCOMPONENT_TOP" "IDLGRCOMPONENTVERSION" "HIDE" "PARENT" "IDLGRCOMPONENT_BOTTOM" "IDLGRCONTAINER_TOP" "IDLGRCONTAINERVERSION" "ISDYING" "IDLGRCONTAINER_BOTTOM" "IDLGRVIEWGROUP_TOP" "IDLGRVIEWGROUPVERSION" "IDLGRVIEWGROUP_BOTTOM") (inherits "IDLitComponent" "IDL_Container") (link "objects_gr208.html"))
+ ("IDLitUI" (tags "_MENUBARS" "_TOOLBARS" "_STATUSBAR" "_UISERVICES" "_PDISPATCHSUBJECT" "_PDISPATCHOBSERVER" "_OTOOL" "_IDISPATCH" "_WBASE") (inherits "IDLitContainer") (link "objects_it222.html"))
("IDLitDataOperation" (tags "_NAN" "_WITHINUI" "_RECORDPROPERTIES") (inherits "IDLitOperation") (link "objects_it69.html"))
("IDLgrMPEG" (tags "IDLGRMPEG_TOP" "IDLGRMPEGVERSION" "DIMENSIONS" "FILENAME" "FORMAT" "FRAMERATE" "INTERLACED" "QUALITY" "SCALE" "STATISTICS" "DISPLAYDIMS" "FIRSTFRAME" "LASTFRAME" "MPEGID" "TEMPNODE" "TEMPNODEFILLER" "TEMP_DIRECTORY" "BITRATE" "IFRAME_GAP" "MOTION_LENGTH" "FLAGS" "IDLGRMPEG_BOTTOM") (link "objects_gr93.html"))
("IDLitCommandSet" (inherits "IDLitCommand" "IDL_Container") (link "objects_it12.html"))
- ("IDLitData" (tags "_ONOTIFIER" "_PDATA" "_PMETADATA" "_TYPE" "_AUTODELETE" "_NREF" "_PDESTRUCT" "_HIDE" "_READ_ONLY") (inherits "IDLitComponent") (link "objects_it44.html"))
- ("IDLitOperation" (tags "_BEXPENSIVE" "_REVERSIBLE" "_BSHOWEXECUTIONUI" "_BSKIPHISTORY" "_BSKIPMACRO" "_BMACROSHOWUIIFNULLCMD" "_BMACROSUPPRESSREFRESH" "_TYPES") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it134.html"))
("IDLitContainer" (tags "_BISMESSAGER" "_CLASSNAME" "_OCHILDREN") (inherits "IDLitComponent" "IDL_Container") (link "objects_it33.html"))
+ ("IDLitOperation" (tags "_BEXPENSIVE" "_REVERSIBLE" "_BSHOWEXECUTIONUI" "_BSKIPHISTORY" "_BSKIPMACRO" "_BMACROSHOWUIIFNULLCMD" "_BMACROSUPPRESSREFRESH" "_TYPES") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it134.html"))
+ ("IDLitData" (tags "_ONOTIFIER" "_PDATA" "_PMETADATA" "_TYPE" "_AUTODELETE" "_NREF" "_PDESTRUCT" "_HIDE" "_READ_ONLY") (inherits "IDLitComponent") (link "objects_it44.html"))
("IDLitWriter" (tags "_TYPES" "_BITDEPTH" "_GRAPHICSFORMAT" "_SCALEFACTOR") (inherits "IDLitReader") (link "objects_it311.html"))
("IDLdbRecordset" (tags "IDLDBRECORDSET_TOP" "IDLDBRECORDSETVERSION" "ISTABLE" "PDBOBJ" "ISREADONLY" "NFIELDS" "CURROW" "SOURCE" "CURSORTYPE" "PFIELDS" "PSDEF" "ROWSTATUS" "ROWSET" "ROWPOS" "HSTMT" "HDBC" "IDLDBRECORDSET_BOTTOM") (link "api14.html"))
- ("IDLdbDatabase" (tags "IDLDBDATABASE_TOP" "IDLDBDATABASEVERSION" "READONLY" "ISCONNECTED" "FETCHDIR" "POSOPS" "POSSTATEMENTS" "SCROLLCONCUR" "SCROLLOPTIONS" "STATICSENSE" "GETDATAEXT" "USINGCURSOR" "NSTATEMENTS" "P_RECOBJS" "HDBC" "IDLDBDATABASE_BOTTOM") (link "api6.html"))
- ("IDLitCommand" (tags "_PDATADICTIONARY" "_SIZEITEMS" "_STRIDTARGET" "_STRIDOPERATION") (inherits "IDLitComponent") (link "objects_it3.html"))
("IDLffLangCat" (tags "FILENAMES" "_AVAILABLE_FILES" "LANGUAGE" "DEFAULT_LANGUAGE" "APPLICATIONS" "APPLICATION_PATH" "KEYS" "N_KEYS" "STRINGS" "DEF_KEYS" "N_DEF_KEYS" "DEF_STRINGS" "AVAILABLE_LANGUAGES" "VERBOSE" "STRICT" "IDLFFLANGCATVERSION") (link "objects_ff44.html"))
+ ("IDLitCommand" (tags "_PDATADICTIONARY" "_SIZEITEMS" "_STRIDTARGET" "_STRIDOPERATION") (inherits "IDLitComponent") (link "objects_it3.html"))
+ ("IDLdbDatabase" (tags "IDLDBDATABASE_TOP" "IDLDBDATABASEVERSION" "READONLY" "ISCONNECTED" "FETCHDIR" "POSOPS" "POSSTATEMENTS" "SCROLLCONCUR" "SCROLLOPTIONS" "STATICSENSE" "GETDATAEXT" "USINGCURSOR" "NSTATEMENTS" "P_RECOBJS" "HDBC" "IDLDBDATABASE_BOTTOM") (link "api6.html"))
("IDLitReader" (tags "_STRFILENAME" "_PEXTENSIONS") (inherits "IDLitComponent" "IDLitIMessaging") (link "objects_it169.html"))
("IDLanROI" (tags "IDLANROI_TOP" "IDLANROIVERSION" "IDLANROIFLAGS" "NALLOCVERTS" "NUSEDVERTS" "BLOCKSIZE" "DATA" "TYPE" "PRECISION" "PLANE" "ROI_XRANGE" "ROI_YRANGE" "ROI_ZRANGE" "IDLANROI_BOTTOM") (link "objects_an3.html"))
- ("IDLgrPalette" (tags "IDLGRPALETTE_TOP" "IDLGRPALETTE_SERIALNUM" "IDLGRPALETTEVERSION" "GAMMA" "BOTTOMSTRETCH" "TOPSTRETCH" "NENTRIES" "ORIGLUT" "CURRLUT" "INVTABLE" "UVALUE" "NAME" "IDLGRPALETTE_BOTTOM") (link "objects_gr101.html"))
("IDLanROIGroup" (tags "IDLANROIGROUP_TOP" "IDLANROIGROUPVERSION" "IDLANROIGROUPFLAGS" "ROIGROUP_XRANGE" "ROIGROUP_YRANGE" "ROIGROUP_ZRANGE" "IDLANROIGROUP_BOTTOM") (inherits "IDL_Container") (link "objects_an18.html"))
- ("IDLffXMLDOMDocument" (tags "IDLFFXMLDOMDOCUMENT_TOP" "_DOM_IMPLEMENTATION" "_DOM_PARSER" "_DOM_ERROR_REPORTER" "_DOM_MEMORY_MANAGER" "IDLFFXMLDOMDOCUMENT_BOTTOM") (inherits "IDLffXMLDOMNode") (link "objects_ff102.html"))
+ ("IDLffXMLDOMDocument" (tags "IDLFFXMLDOMDOCUMENT_TOP" "_DOM_IMPLEMENTATION" "_DOM_PARSER" "_DOM_ERROR_REPORTER" "_DOM_MEMORY_MANAGER" "IDLFFXMLDOMDOCUMENT_BOTTOM") (inherits "IDLffXMLDOMText") (link "objects_ff102.html"))
+ ("IDLgrPalette" (tags "IDLGRPALETTE_TOP" "IDLGRPALETTE_SERIALNUM" "IDLGRPALETTEVERSION" "GAMMA" "BOTTOMSTRETCH" "TOPSTRETCH" "NENTRIES" "ORIGLUT" "CURRLUT" "INVTABLE" "UVALUE" "NAME" "IDLGRPALETTE_BOTTOM") (link "objects_gr101.html"))
("IDLitComponent" (tags "IDLITCOMPONENT_TOP" "IDLITCOMPONENTVERSION" "DESCRIPTION" "NAME" "ICON" "IDENTIFIER" "HELP" "UVALUE" "_PARENT" "PROPERTYDESCRIPTORS" "_FLAGS" "IDLITCOMPONENT_BOTTOM") (link "objects_it17.html"))
("IDLgrSymbol" (tags "IDLGRSYMBOL_TOP" "IDLGRSYMBOLVERSION" "COLOR" "DATA" "SIZE" "THICK" "FLAGS" "UVALUE" "NAME" "ALPHA_CHANNEL" "IDLGRSYMBOL_BOTTOM") (link "objects_gr180.html"))
("IDLgrFont" (tags "IDLGRFONT_TOP" "IDLGRFONTVERSION" "FONTFLAGS" "HERSHEY" "NAME" "SIZE" "SUBSTITUTE" "THICK" "ID" "UVALUE" "IDLGRFONT_BOTTOM") (link "objects_gr52.html"))
@@ -1989,45 +1989,45 @@
("IDLffDXF" (tags "IDLFFDXF_TOP" "IDLFFDXFVERSION" "DXFREADVALID" "DXFHANDLEVALID" "DXFLUT" "SERIAL" "DXFHANDLE" "DXFHANDLEFILLER" "IDLFFDXF_BOTTOM") (link "objects_ff21.html"))
("IDLffShape" (tags "IDLFFSHAPE_TOP" "IDLFFSHAPEVERSION" "FILENAME" "ISOPEN" "SHPTYPE" "PATTRIBUTE" "SHAPEHANDLE" "DBFHANDLE" "IDLFFSHAPE_BOTTOM") (link "objects_ff59.html"))
("IDLffXMLSAX" (tags "IDLFFXMLSAX_TOP" "IDLFFXMLSAXVERSION" "VALIDATION_MODE" "HALT_PROCESSING" "FILENAME" "_XML_PARSER" "_XML_LOCATOR" "IDLFFXMLSAX_BOTTOM") (link "objects_ff209.html"))
- ("IDLffDICOM" (tags "IDLFFDICOM_TOP" "IDLFFDICOMVERSION" "DICOMFLAGS" "DICOMELEMENTS" "DICOMPREAMBLE" "DICOMHANDLE" "DICOMHANDLEFILLER" "IDLFFDICOM_BOTTOM") (link "objects_ff3.html"))
("TrackBall" (tags "BTNDOWN" "AXIS" "CONSTRAIN" "MOUSE" "CENTER" "RADIUS" "PT0" "PT1") (link "objects_misc33.html"))
("IDLgrTessellator" (tags "IDLGRTESSELLATOR_TOP" "IDLGRTESSELLATORVERSION" "ITESSFLAGS" "IVERTS" "HVIDLIST" "IAUXSIZE" "IAUXTYPE" "IDLGRTESSELLATOR_BOTTOM") (link "objects_gr186.html"))
- ("IDLffXMLDOMNode" (inherits "IDLffXMLDOMDocumentType") (link "objects_ff162.html"))
- ("IDLffXMLDOMDocumentType" (inherits "IDLffXMLDOMElement") (link "objects_ff123.html"))
+ ("IDLffDICOM" (tags "IDLFFDICOM_TOP" "IDLFFDICOMVERSION" "DICOMFLAGS" "DICOMELEMENTS" "DICOMPREAMBLE" "DICOMHANDLE" "DICOMHANDLEFILLER" "IDLFFDICOM_BOTTOM") (link "objects_ff3.html"))
+ ("IDLffXMLDOMText" (inherits "IDLffXMLDOMProcessingInstruction") (link "objects_ff203.html"))
+ ("IDLffXMLDOMProcessingInstruction" (inherits "IDLffXMLDOMAttr") (link "objects_ff196.html"))
+ ("IDLffXMLDOMAttr" (inherits "IDLffXMLDOMElement") (link "objects_ff74.html"))
+ ("IDLffXMLDOMElement" (inherits "IDLffXMLDOMNode") (link "objects_ff130.html"))
("IDLffXMLDOMNamedNodeMap" (tags "IDLFFXMLDOMNAMEDNODEMAP_TOP" "IDLFFXMLDOMNAMEDNODEMAPVERSION" "_IDLFFXMLDOMNAMEDNODEMAPNODE" "_IDLFFXMLDOMNAMEDNODEMAPOWNEDNODES" "_IDLFFXMLDOMNAMEDNODEMAPOWNER" "_IDLFFXMLDOMNAMEDNODEMAPDOCUMENT" "IDLFFXMLDOMNAMEDNODEMAP_BOTTOM") (link "objects_ff153.html"))
- ("IDLffXMLDOMElement" (inherits "IDLffXMLDOMNotation") (link "objects_ff130.html"))
- ("IDLffXMLDOMNotation" (inherits "IDLffXMLDOMEntity") (link "objects_ff190.html"))
- ("IDLffXMLDOMEntity" (inherits "IDLffXMLDOMCharacterData") (link "objects_ff142.html"))
- ("IDLffXMLDOMCharacterData" (inherits "IDLffXMLDOMProcessingInstruction") (link "objects_ff86.html"))
- ("IDLffXMLDOMProcessingInstruction" (inherits "IDLffXMLDOMText") (link "objects_ff196.html"))
- ("IDLffXMLDOMText" (inherits "IDLffXMLDOMAttr") (link "objects_ff203.html"))
- ("IDLffXMLDOMAttr" (tags "IDLFFXMLDOMNODE_TOP" "IDLFFXMLDOMNODEVERSION" "_IDLFFXMLDOMNODEDOMNODE" "_IDLFFXMLDOMNODEOWNEDNODES" "_IDLFFXMLDOMNODEOWNER" "_IDLFFXMLDOMNODEDOCUMENT" "IDLFFXMLDOMNODE_BOTTOM") (link "objects_ff74.html"))
+ ("IDLffXMLDOMNode" (inherits "IDLffXMLDOMNotation") (link "objects_ff162.html"))
+ ("IDLffXMLDOMNotation" (inherits "IDLffXMLDOMCharacterData") (link "objects_ff190.html"))
("IDLffXMLDOMNodeList" (tags "IDLFFXMLDOMNODELIST_TOP" "IDLFFXMLDOMNODELISTVERSION" "_IDLFFXMLDOMNODELISTNODE" "_IDLFFXMLDOMNODELISTOWNEDNODES" "_IDLFFXMLDOMNODELISTOWNER" "_IDLFFXMLDOMNODELISTDOCUMENT" "IDLFFXMLDOMNODELIST_BOTTOM") (link "objects_ff184.html"))
+ ("IDLffXMLDOMCharacterData" (inherits "IDLffXMLDOMEntity") (link "objects_ff86.html"))
+ ("IDLffXMLDOMEntity" (inherits "IDLffXMLDOMDocumentType") (link "objects_ff142.html"))
+ ("IDLffXMLDOMDocumentType" (tags "IDLFFXMLDOMNODE_TOP" "IDLFFXMLDOMNODEVERSION" "_IDLFFXMLDOMNODEDOMNODE" "_IDLFFXMLDOMNODEOWNEDNODES" "_IDLFFXMLDOMNODEOWNER" "_IDLFFXMLDOMNODEDOCUMENT" "IDLFFXMLDOMNODE_BOTTOM") (link "objects_ff123.html"))
("IDL_Container" (tags "IDL_CONTAINER_TOP" "IDLCONTAINERVERSION" "PHEAD" "PTAIL" "NLIST" "IDL_CONTAINER_BOTTOM") (link "objects_misc3.html"))
("IDLffJPEG2000" (tags "IDLFFJPEG2000_TOP" "CJPEG2000PTR" "IDLFFJPEG2000_BOTTOM") (link "objects_ff34.html"))
("IDLitParameter" (tags "_OPARAMETERDESCRIPTORS" "_OPARAMETERSET" "_PPARAMNAMES") (link "objects_it145.html"))
("IDL_Savefile" (tags "IDL_SAVEFILE_FILENAME" "IDL_SAVEFILE_RELAXED_STRUCTURE_ASSIGNMENT") (link "objects_misc13.html"))
("IDLitIMessaging" (tags "__OTOOL") (link "objects_it78.html"))
- ("IDLjavaObject" (link "objects_misc28.html"))
("IDLcomIDispatch" (link "objects_misc23.html"))
- ("IDLffMrSID" (link "objects_ff52.html"))))
+ ("IDLffMrSID" (link "objects_ff52.html"))
+ ("IDLjavaObject" (link "objects_misc28.html"))))
(setq idlwave-executive-commands-alist '(
- ("GO" . "symbols6.html")
- ("OUT" . "symbols7.html")
- ("RETURN" . "symbols9.html")
+ ("RESET_SESSION" . "symbols8.html")
("TRACE" . "symbols15.html")
+ ("RNEW" . "symbols10.html")
+ ("EDIT" . "symbols4.html")
+ ("STEPOVER" . "symbols14.html")
+ ("OUT" . "symbols7.html")
("RUN" . "symbols11.html")
- ("SKIP" . "symbols12.html")
- ("COMPILE" . "symbols2.html")
("CONTINUE" . "symbols3.html")
- ("RESET_SESSION" . "symbols8.html")
("STEP" . "symbols13.html")
- ("RNEW" . "symbols10.html")
+ ("RETURN" . "symbols9.html")
+ ("GO" . "symbols6.html")
+ ("SKIP" . "symbols12.html")
("FULL_RESET_SESSION" . "symbols5.html")
- ("EDIT" . "symbols4.html")
- ("STEPOVER" . "symbols14.html")
+ ("COMPILE" . "symbols2.html")
))
;; Special words with associated help topic files
diff --git a/lisp/progmodes/idlw-shell.el b/lisp/progmodes/idlw-shell.el
index 04e6a28ee40..08c95e5bdd5 100644
--- a/lisp/progmodes/idlw-shell.el
+++ b/lisp/progmodes/idlw-shell.el
@@ -5,7 +5,7 @@
;; Carsten Dominik <dominik@astro.uva.nl>
;; Chris Chase <chase@att.com>
;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
-;; Version: 5.5
+;; Version: 5.7_22
;; Keywords: processes
;; This file is part of GNU Emacs.
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -45,7 +45,7 @@
;;
;; INSTALLATION:
;; =============
-;;
+;;
;; Follow the instructions in the INSTALL file of the distribution.
;; In short, put this file on your load path and add the following
;; lines to your .emacs file:
@@ -58,9 +58,9 @@
;;
;; The newest version of this file can be found on the maintainers
;; web site.
-;;
+;;
;; http://idlwave.org
-;;
+;;
;; DOCUMENTATION
;; =============
;;
@@ -77,7 +77,7 @@
;; it is a bug in XEmacs.
;; The Debug menu in source buffers *does* display the bindings correctly.
;;
-;;
+;;
;; CUSTOMIZATION VARIABLES
;; =======================
;;
@@ -101,12 +101,12 @@
(condition-case () (require 'custom) (error nil))
(if (and (featurep 'custom)
(fboundp 'custom-declare-variable)
- (fboundp 'defface))
+ (fboundp 'defface))
;; We've got what we needed
(setq idlwave-shell-have-new-custom t)
;; We have the old or no custom-library, hack around it!
(defmacro defgroup (&rest args) nil)
- (defmacro defcustom (var value doc &rest args)
+ (defmacro defcustom (var value doc &rest args)
`(defvar ,var ,value ,doc))))
;;; Customizations: idlwave-shell group
@@ -117,11 +117,12 @@
:prefix "idlwave-shell"
:group 'idlwave)
-(defcustom idlwave-shell-prompt-pattern "^ ?IDL> "
- "*Regexp to match IDL prompt at beginning of a line.
-For example, \"^IDL> \" or \"^WAVE> \".
-The \"^\" means beginning of line, and is required.
-This variable is used to initialize `comint-prompt-regexp' in the
+(defcustom idlwave-shell-prompt-pattern "^\r? ?IDL> "
+ "*Regexp to match IDL prompt at beginning of a line.
+For example, \"^\r?IDL> \" or \"^\r?WAVE> \".
+The \"^\r?\" is needed, to indicate the beginning of the line, with
+optional return character (which IDL seems to output randomly).
+This variable is used to initialize `comint-prompt-regexp' in the
process buffer.
This is a fine thing to set in your `.emacs' file."
@@ -210,7 +211,7 @@ So by default setting a breakpoint will be on C-c C-d C-b."
:type 'boolean)
(defcustom idlwave-shell-automatic-electric-debug 'breakpoint
- "Enter the electric-debug minor mode automatically.
+ "Enter the electric-debug minor mode automatically.
This occurs at a breakpoint or any other halt. The mode is exited
upon return to the main level. Can be set to 'breakpoint to enter
electric debug mode only when breakpoints are tripped."
@@ -295,7 +296,7 @@ The history is only saved if the variable `idlwave-shell-save-command-history'
is non-nil."
:group 'idlwave-shell-command-setup
:type 'file)
-
+
(defcustom idlwave-shell-show-commands
'(run misc breakpoint)
"*A list of command types to show output from in the shell.
@@ -306,12 +307,12 @@ the copious shell traffic to be displayed."
:type '(choice
(const everything)
(set :tag "Checklist" :greedy t
- (const :tag "All .run and .compile commands" run)
+ (const :tag "All .run and .compile commands" run)
(const :tag "All breakpoint commands" breakpoint)
(const :tag "All debug and stepping commands" debug)
(const :tag "Close, window, retall, etc. commands" misc))))
-(defcustom idlwave-shell-examine-alist
+(defcustom idlwave-shell-examine-alist
'(("Print" . "print,___")
("Help" . "help,___")
("Structure Help" . "help,___,/STRUCTURE")
@@ -322,14 +323,14 @@ the copious shell traffic to be displayed."
("Ptr Valid" . "print,ptr_valid(___)")
("Widget Valid" . "print,widget_info(___,/VALID)")
("Widget Geometry" . "help,widget_info(___,/GEOMETRY)"))
- "Alist of special examine commands for popup selection.
+ "Alist of special examine commands for popup selection.
The keys are used in the selection popup created by
`idlwave-shell-examine-select', and the corresponding value is sent as
a command to the shell, with special sequence `___' replaced by the
expression being examined."
:group 'idlwave-shell-command-setup
:type '(repeat
- (cons
+ (cons
(string :tag "Label ")
(string :tag "Command"))))
@@ -340,11 +341,12 @@ expression being examined."
"*Non-nil mean, put output of examine commands in their own buffer."
:group 'idlwave-shell-command-setup
:type 'boolean)
-
+
(defcustom idlwave-shell-comint-settings
'((comint-scroll-to-bottom-on-input . t)
(comint-scroll-to-bottom-on-output . t)
- (comint-scroll-show-maximum-output . nil))
+ (comint-scroll-show-maximum-output . nil)
+ (comint-prompt-read-only . t))
"Alist of special settings for the comint variables in the IDLWAVE Shell.
Each entry is a cons cell with the name of a variable and a value.
@@ -403,7 +405,7 @@ strings. Here is some example code which makes use of the default spells.
answer = GET_KBRD(1)
Since the IDLWAVE shell defines the system variable `!IDLWAVE_VERSION',
-you could actually check if you are running under Emacs before printing
+you could actually check if you are running under Emacs before printing
the magic strings. Here is a procedure which uses this.
Usage:
@@ -420,7 +422,7 @@ pro idlwave_char_input,on=on,off=off
if keyword_set(on) then print,'<chars>' $
else if keyword_set(off) then print,'</chars>' $
else print,'<onechar>'
- endif
+ endif
end"
:group 'idlwave-shell-command-setup
:type '(list
@@ -428,6 +430,11 @@ end"
(regexp :tag "Char-mode regexp")
(regexp :tag "Line-mode regexp")))
+(defcustom idlwave-shell-breakpoint-popup-menu t
+ "*If non-nil, provide a menu on mouse-3 on breakpoint lines, and
+popup help text on the line."
+ :group 'idlwave-shell-command-setup
+ :type 'boolean)
;; Breakpoint Overlays etc
(defgroup idlwave-shell-highlighting-and-faces nil
@@ -478,10 +485,10 @@ line where IDL is stopped. See also `idlwave-shell-mark-stop-line'."
:group 'idlwave-shell-highlighting-and-faces
:type 'string)
-(defcustom idlwave-shell-electric-stop-line-face
+(defcustom idlwave-shell-electric-stop-line-face
(prog1
(copy-face 'modeline 'idlwave-shell-electric-stop-line-face)
- (set-face-background 'idlwave-shell-electric-stop-line-face
+ (set-face-background 'idlwave-shell-electric-stop-line-face
idlwave-shell-electric-stop-color)
(condition-case nil
(set-face-foreground 'idlwave-shell-electric-stop-line-face nil)
@@ -529,7 +536,7 @@ lines which have a breakpoint. See also `idlwave-shell-mark-breakpoints'."
;; backward-compatibility alias
(put 'idlwave-shell-bp-face 'face-alias 'idlwave-shell-bp))
-(defcustom idlwave-shell-disabled-breakpoint-face
+(defcustom idlwave-shell-disabled-breakpoint-face
'idlwave-shell-disabled-bp
"*The face for disabled breakpoint lines in the source code.
Allows you to choose the font, color and other properties for
@@ -584,18 +591,18 @@ before use by the shell.")
TYPE is either 'pro' or 'rinfo', and `idlwave-shell-temp-pro-file' or
`idlwave-shell-temp-rinfo-save-file' is set (respectively)."
- (cond
+ (cond
((eq type 'rinfo)
- (or idlwave-shell-temp-rinfo-save-file
- (setq idlwave-shell-temp-rinfo-save-file
+ (or idlwave-shell-temp-rinfo-save-file
+ (setq idlwave-shell-temp-rinfo-save-file
(idlwave-shell-make-temp-file idlwave-shell-temp-pro-prefix))))
((eq type 'pro)
(or idlwave-shell-temp-pro-file
- (setq idlwave-shell-temp-pro-file
+ (setq idlwave-shell-temp-pro-file
(idlwave-shell-make-temp-file idlwave-shell-temp-pro-prefix))))
- (t (error "Wrong argument (idlwave-shell-temp-file): %s"
+ (t (error "Wrong argument (idlwave-shell-temp-file): %s"
(symbol-name type)))))
-
+
(defun idlwave-shell-make-temp-file (prefix)
"Create a temporary file."
@@ -623,7 +630,7 @@ TYPE is either 'pro' or 'rinfo', and `idlwave-shell-temp-pro-file' or
(defvar idlwave-shell-dirstack-query "cd,current=___cur & print,___cur"
- "Command used by `idlwave-shell-resync-dirs' to query IDL for
+ "Command used by `idlwave-shell-resync-dirs' to query IDL for
the directory stack.")
(defvar idlwave-shell-path-query "print,'PATH:<'+transpose(expand_path(!PATH,/ARRAY))+'>' & print,'SYSDIR:<'+!dir+'>'"
@@ -631,7 +638,7 @@ the directory stack.")
"The command which gets !PATH and !DIR info from the shell.")
(defvar idlwave-shell-mode-line-info nil
- "Additional info displayed in the mode line")
+ "Additional info displayed in the mode line")
(defvar idlwave-shell-default-directory nil
"The default directory in the idlwave-shell buffer, of outside use.")
@@ -682,7 +689,7 @@ the directory stack.")
window-system) ; Window systems always
(progn
(setq idlwave-shell-stop-line-overlay (make-overlay 1 1))
- (overlay-put idlwave-shell-stop-line-overlay
+ (overlay-put idlwave-shell-stop-line-overlay
'face idlwave-shell-stop-line-face))))
(t
@@ -690,7 +697,7 @@ the directory stack.")
(if window-system
(progn
(setq idlwave-shell-stop-line-overlay (make-overlay 1 1))
- (overlay-put idlwave-shell-stop-line-overlay
+ (overlay-put idlwave-shell-stop-line-overlay
'face idlwave-shell-stop-line-face)))))
;; Now the expression and output overlays
@@ -746,12 +753,9 @@ with `*'s."
(defvar idlwave-shell-ready nil
"If non-nil can send next command to IDL process.")
-(defvar idlwave-shell-wait-for-output nil
- "Whether to wait for output to accumulate.")
-
;;; The following are the types of messages we attempt to catch to
;;; resync our idea of where IDL execution currently is.
-;;;
+;;;
(defvar idlwave-shell-halt-frame nil
"The frame associated with halt/breakpoint messages.")
@@ -795,7 +799,7 @@ IDL has currently stepped.")
(defconst idlwave-shell-electric-debug-help
" ==> IDLWAVE Electric Debug Mode Help <==
-
+
Break Point Setting and Clearing:
b Set breakpoint ([C-u b] for conditional, [C-n b] nth hit, etc.).
d Clear nearby breakpoint.
@@ -821,7 +825,7 @@ IDL has currently stepped.")
Examining Expressions (with prefix for examining the region):
p Print expression near point or in region ([C-u p]).
? Help on expression near point or in region ([C-u ?]).
- x Examine expression near point or in region ([C-u x]) with
+ x Examine expression near point or in region ([C-u x]) with
letter completion of the examine type.
Miscellaneous:
@@ -875,18 +879,18 @@ IDL has currently stepped.")
`\\[idlwave-routine-info]' displays information about an IDL routine near point,
just like in `idlwave-mode'. The module used is the one at point or
the one whose argument list is being edited.
- To update IDLWAVE's knowledge about compiled or edited modules, use
+ To update IDLWAVE's knowledge about compiled or edited modules, use
\\[idlwave-update-routine-info].
\\[idlwave-find-module] find the source of a module.
\\[idlwave-resolve] tells IDL to compile an unresolved module.
\\[idlwave-context-help] shows the online help on the item at
point, if online help has been installed.
-
+
4. Debugging
---------
A complete set of commands for compiling and debugging IDL programs
- is available from the menu. Also keybindings starting with a
+ is available from the menu. Also keybindings starting with a
`C-c C-d' prefix are available for most commands in the *idl* buffer
and also in source buffers. The best place to learn about the
keybindings is again the menu.
@@ -978,8 +982,8 @@ IDL has currently stepped.")
(idlwave-shell-display-line nil)
(setq idlwave-shell-calling-stack-index 0)
(setq idlwave-shell-only-prompt-pattern
- (concat "\\`[ \t\n]*"
- (substring idlwave-shell-prompt-pattern 1)
+ (concat "\\`[ \t\n]*"
+ (substring idlwave-shell-prompt-pattern 1)
"[ \t\n]*\\'"))
(when idlwave-shell-query-for-class
@@ -992,15 +996,12 @@ IDL has currently stepped.")
(set-marker comint-last-input-end (point))
(setq idlwave-idlwave_routine_info-compiled nil)
(setq idlwave-shell-ready nil)
- (setq idlwave-shell-wait-for-output nil)
(setq idlwave-shell-bp-alist nil)
(idlwave-shell-update-bp-overlays) ; Throw away old overlays
(setq idlwave-shell-sources-alist nil)
(setq idlwave-shell-default-directory default-directory)
(setq idlwave-shell-hide-output nil)
- ;; NB: `make-local-hook' needed for older/alternative Emacs compatibility
- ;;(make-local-hook 'kill-buffer-hook)
(add-hook 'kill-buffer-hook 'idlwave-shell-kill-shell-buffer-confirm
nil 'local)
(add-hook 'kill-buffer-hook 'idlwave-shell-delete-temp-files nil 'local)
@@ -1014,14 +1015,14 @@ IDL has currently stepped.")
(while (setq entry (pop list))
(set (make-local-variable (car entry)) (cdr entry)))))
-
- (unless (memq 'comint-carriage-motion
+
+ (unless (memq 'comint-carriage-motion
(default-value 'comint-output-filter-functions))
;; Strip those pesky ctrl-m's.
(add-hook 'comint-output-filter-functions
(lambda (string)
(when (string-match "\r" string)
- (let ((pmark (process-mark (get-buffer-process
+ (let ((pmark (process-mark (get-buffer-process
(current-buffer)))))
(save-excursion
;; bare CR -> delete preceding line
@@ -1043,8 +1044,6 @@ IDL has currently stepped.")
(set (make-local-variable 'comment-start) ";")
(setq abbrev-mode t)
- ;; NB: `make-local-hook' needed for older/alternative Emacs compatibility
- ;;(make-local-hook 'post-command-hook)
(add-hook 'post-command-hook 'idlwave-command-hook nil t)
;; Read the command history?
@@ -1063,9 +1062,8 @@ IDL has currently stepped.")
(idlwave-shell-send-command idlwave-shell-initial-commands nil 'hide)
;; Turn off IDL's ^d interpreting, and define a system
;; variable which knows the version of IDLWAVE
- (idlwave-shell-send-command
- (format "defsysv,'!idlwave_version','%s',1"
- idlwave-mode-version)
+ (idlwave-shell-send-command
+ (format "defsysv,'!idlwave_version','%s',1" idlwave-mode-version)
nil 'hide)
;; Get the paths if they weren't read in from file
(if (and (not idlwave-path-alist)
@@ -1085,7 +1083,7 @@ IDL has currently stepped.")
(setq idlwave-system-directory sysdir)
(put 'idlwave-system-directory 'from-shell t))
;; Preserve any existing flags
- (setq idlwave-path-alist
+ (setq idlwave-path-alist
(mapcar (lambda (x)
(let ((old-entry (assoc x old-path-alist)))
(if old-entry
@@ -1093,7 +1091,7 @@ IDL has currently stepped.")
(list x))))
dirs))
(put 'idlwave-path-alist 'from-shell t)
- (if idlwave-path-alist
+ (if idlwave-path-alist
(if (and idlwave-auto-write-paths
(not idlwave-library-path)
(not no-write) )
@@ -1129,8 +1127,8 @@ IDL has currently stepped.")
(frame (selected-frame)))
(catch 'exit
(while flist
- (if (not (eq (car flist)
- idlwave-shell-idl-wframe))
+ (if (not (eq (car flist)
+ idlwave-shell-idl-wframe))
(throw 'exit (car flist))
(setq flist (cdr flist))))))
(make-frame))
@@ -1148,9 +1146,9 @@ IDL has currently stepped.")
;; We do not have a source frame, so we use this one.
(setq idlwave-shell-display-wframe (selected-frame)))
;; Return a new frame
- (setq idlwave-shell-idl-wframe
+ (setq idlwave-shell-idl-wframe
(make-frame idlwave-shell-frame-parameters)))))
-
+
;;;###autoload
(defun idlwave-shell (&optional arg quick)
"Run an inferior IDL, with I/O through buffer `(idlwave-shell-buffer)'.
@@ -1177,14 +1175,14 @@ See also the variable `idlwave-shell-prompt-pattern'.
(delete-other-windows))
(and idlwave-shell-use-dedicated-frame
(setq idlwave-shell-idl-wframe (selected-frame)))
- (add-hook 'idlwave-shell-sentinel-hook
+ (add-hook 'idlwave-shell-sentinel-hook
'save-buffers-kill-emacs t))
;; A non-nil arg means, we want a dedicated frame. This will last
;; for the current editing session.
(if arg (setq idlwave-shell-use-dedicated-frame t))
(if (equal arg '(16)) (setq idlwave-shell-use-dedicated-frame nil))
-
+
;; Check if the process still exists. If not, create it.
(unless (comint-check-proc (idlwave-shell-buffer))
(let* ((prg (or idlwave-shell-explicit-file-name "idl"))
@@ -1211,9 +1209,9 @@ See also the variable `idlwave-shell-prompt-pattern'.
(if (eq (selected-frame) (window-frame window))
(select-window window))))
;; Save the paths at the end
- (add-hook 'idlwave-shell-sentinel-hook
+ (add-hook 'idlwave-shell-sentinel-hook
(lambda ()
- (if (and
+ (if (and
idlwave-auto-write-paths
idlwave-path-alist
(not idlwave-library-path)
@@ -1244,7 +1242,7 @@ Return either nil or 'hide."
(setq idlwave-shell-show-commands (list type))))
-(defun idlwave-shell-send-command (&optional cmd pcmd hide preempt
+(defun idlwave-shell-send-command (&optional cmd pcmd hide preempt
show-if-error)
"Send a command to IDL process.
@@ -1265,18 +1263,18 @@ If optional fourth argument PREEMPT is non-nil CMD is put at front of
`idlwave-shell-pending-commands'. If PREEMPT is 'wait, wait for all
output to complete and the next prompt to arrive before returning
\(useful if you need an answer now\). IDL is considered ready if the
-prompt is present and if `idlwave-shell-ready' is non-nil.
+prompt is present and if `idlwave-shell-ready' is non-nil.
If SHOW-IF-ERROR is non-nil, show the output it it contains an error
message, independent of what HIDE is set to."
; (setq hide nil) ; FIXME: turn this on for debugging only
-; (if (null cmd)
+; (if (null cmd)
; (progn
-; (message "SENDING Pending commands: %s"
+; (message "SENDING Pending commands: %s"
; (prin1-to-string idlwave-shell-pending-commands)))
-; (message "SENDING %s|||%s" cmd pcmd))
- (if (and (symbolp idlwave-shell-show-commands)
+; (message "SENDING %s|||%s" cmd pcmd))
+ (if (and (symbolp idlwave-shell-show-commands)
(eq idlwave-shell-show-commands 'everything))
(setq hide nil))
(let ((save-buffer (current-buffer))
@@ -1304,7 +1302,7 @@ message, independent of what HIDE is set to."
(append (list (list cmd pcmd hide show-if-error))
idlwave-shell-pending-commands)
;; Put at end.
- (append idlwave-shell-pending-commands
+ (append idlwave-shell-pending-commands
(list (list cmd pcmd hide show-if-error))))))
;; Check if IDL ready
(let ((save-point (point-marker)))
@@ -1339,9 +1337,11 @@ message, independent of what HIDE is set to."
(set-marker comint-last-input-end (point))
(comint-simple-send proc cmd)
(setq idlwave-shell-ready nil)
- (when (equal preempt 'wait) ; Get all the output at once
- (setq idlwave-shell-wait-for-output t)
- (accept-process-output proc))))
+ (if (equal preempt 'wait) ; Get all the output at once
+ (while (not idlwave-shell-ready)
+ (when (not (accept-process-output proc 6)) ; long wait
+ (setq idlwave-shell-pending-commands nil)
+ (error "Process timed out"))))))
(goto-char save-point))
(set-buffer save-buffer))))
@@ -1353,7 +1353,7 @@ message, independent of what HIDE is set to."
(if (or (not (setq buf (get-buffer (idlwave-shell-buffer))))
(not (setq proc (get-buffer-process buf))))
(funcall errf "Shell is not running"))
- (if (equal c ?\C-g)
+ (if (equal c ?\C-g)
(funcall errf "Abort")
(comint-send-string proc (char-to-string c)))))
@@ -1394,7 +1394,7 @@ when the IDL prompt gets displayed again after the current IDL command."
(if idlwave-shell-ready
(funcall errf "No IDL program seems to be waiting for input"))
- ;; OK, start the loop
+ ;; OK, start the loop
(message "Character mode on: Sending single chars (`C-g' to exit)")
(message
(catch 'exit
@@ -1474,133 +1474,123 @@ error messages, etc."
(setq output (substring output (string-match "\n" output)))
(while (string-match "\\(\n\\|\\`\\)%.*\\(\n .*\\)*" output)
(setq output (replace-match "" nil t output)))
- (unless
+ (unless
(string-match idlwave-shell-only-prompt-pattern output)
output))
(defvar idlwave-shell-hidden-output-buffer " *idlwave-shell-hidden-output*"
"Buffer containing hidden output from IDL commands.")
(defvar idlwave-shell-current-state nil)
-
+
(defun idlwave-shell-filter (proc string)
"Watch for IDL prompt and filter incoming text.
When the IDL prompt is received executes `idlwave-shell-post-command-hook'
and then calls `idlwave-shell-send-command' for any pending commands."
;; We no longer do the cleanup here - this is done by the process sentinel
- (when (eq (process-status idlwave-shell-process-name) 'run)
- ;; OK, process is still running, so we can use it.
- (let ((data (match-data)) p full-output)
- (unwind-protect
- (progn
- ;; Ring the bell if necessary
- (while (setq p (string-match "\C-G" string))
- (ding)
- (aset string p ?\C-j ))
- (if idlwave-shell-hide-output
- (save-excursion
- (while (setq p (string-match "\C-M" string))
- (aset string p ?\ ))
- (set-buffer
- (get-buffer-create idlwave-shell-hidden-output-buffer))
- (goto-char (point-max))
- (insert string))
- (idlwave-shell-comint-filter proc string))
- ;; Watch for magic - need to accumulate the current line
- ;; since it may not be sent all at once.
- (if (string-match "\n" string)
- (progn
- (if idlwave-shell-use-input-mode-magic
- (idlwave-shell-input-mode-magic
- (concat idlwave-shell-accumulation string)))
- (setq idlwave-shell-accumulation
- (substring string
- (progn (string-match "\\(.*[\n\r]+\\)*"
- string)
- (match-end 0)))))
- (setq idlwave-shell-accumulation
- (concat idlwave-shell-accumulation string)))
-
-
+ (if (eq (process-status idlwave-shell-process-name) 'run)
+ ;; OK, process is still running, so we can use it.
+ (let ((data (match-data)) p full-output)
+ (unwind-protect
+ (progn
+ ;; Ring the bell if necessary
+ (while (setq p (string-match "\C-G" string))
+ (ding)
+ (aset string p ?\C-j ))
+ (if idlwave-shell-hide-output
+ (save-excursion
+ (while (setq p (string-match "\C-M" string))
+ (aset string p ?\ ))
+ (set-buffer
+ (get-buffer-create idlwave-shell-hidden-output-buffer))
+ (goto-char (point-max))
+ (insert string))
+ (idlwave-shell-comint-filter proc string))
+ ;; Watch for magic - need to accumulate the current line
+ ;; since it may not be sent all at once.
+ (if (string-match "\n" string)
+ (progn
+ (if idlwave-shell-use-input-mode-magic
+ (idlwave-shell-input-mode-magic
+ (concat idlwave-shell-accumulation string)))
+ (setq idlwave-shell-accumulation
+ (substring string
+ (progn (string-match "\\(.*[\n\r]+\\)*"
+ string)
+ (match-end 0)))))
+ (setq idlwave-shell-accumulation
+ (concat idlwave-shell-accumulation string)))
+
+
;;; Test/Debug code
; (save-excursion (set-buffer
; (get-buffer-create "*idlwave-shell-output*"))
; (goto-char (point-max))
; (insert "\nSTRING===>\n" string "\n<====\n"))
-
- ;; Check for prompt in current accumulating output
- (if (setq idlwave-shell-ready
- (string-match idlwave-shell-prompt-pattern
- idlwave-shell-accumulation))
- (progn
- ;; Gather the command output
+
+ ;; Check for prompt in current accumulating output
+ (when (setq idlwave-shell-ready
+ (string-match idlwave-shell-prompt-pattern
+ idlwave-shell-accumulation))
+ ;; Gather the command output
+ (if idlwave-shell-hide-output
+ (save-excursion
+ (set-buffer idlwave-shell-hidden-output-buffer)
+ (setq full-output (buffer-string))
+ (goto-char (point-max))
+ (re-search-backward idlwave-shell-prompt-pattern nil t)
+ (goto-char (match-end 0))
+ (setq idlwave-shell-command-output
+ (buffer-substring (point-min) (point)))
+ (delete-region (point-min) (point)))
+ (setq idlwave-shell-command-output
+ (with-current-buffer (process-buffer proc)
+ (buffer-substring
+ (save-excursion
+ (goto-char (process-mark proc))
+ (forward-line 0)
+ (point))
+ comint-last-input-end))))
+
+ ;; Scan for state and do post commands - bracket
+ ;; them with idlwave-shell-ready=nil since they may
+ ;; call idlwave-shell-send-command themselves.
+ (let ((idlwave-shell-ready nil))
+ (idlwave-shell-scan-for-state)
+ ;; Show the output in the shell if it contains an error
(if idlwave-shell-hide-output
- (save-excursion
- (set-buffer idlwave-shell-hidden-output-buffer)
- (setq full-output (buffer-string))
- (goto-char (point-max))
- (re-search-backward idlwave-shell-prompt-pattern nil t)
- (goto-char (match-end 0))
- (setq idlwave-shell-command-output
- (buffer-substring (point-min) (point)))
- (delete-region (point-min) (point)))
- (setq idlwave-shell-command-output
- (with-current-buffer (process-buffer proc)
- (buffer-substring
- (save-excursion
- (goto-char (process-mark proc))
- (beginning-of-line nil)
- (point))
- comint-last-input-end))))
-
- ;; Scan for state and do post commands - bracket
- ;; them with idlwave-shell-ready=nil since they may
- ;; call idlwave-shell-send-command themselves.
- (let ((idlwave-shell-ready nil))
- (idlwave-shell-scan-for-state)
- ;; Show the output in the shell if it contains an error
- (if idlwave-shell-hide-output
- (if (and idlwave-shell-show-if-error
- (eq idlwave-shell-current-state 'error))
- (idlwave-shell-comint-filter proc full-output)
- ;; If it's only *mostly* hidden, filter % lines,
- ;; and show anything that remains
- (if (eq idlwave-shell-hide-output 'mostly)
- (let ((filtered
- (idlwave-shell-filter-hidden-output
- full-output)))
- (if filtered
- (idlwave-shell-comint-filter
- proc filtered))))))
-
- ;; Call the post-command hook
- (if (listp idlwave-shell-post-command-hook)
- (progn
- ;(message "Calling list")
- ;(prin1 idlwave-shell-post-command-hook)
- (eval idlwave-shell-post-command-hook))
- ;(message "Calling command function")
- (funcall idlwave-shell-post-command-hook))
-
- ;; Reset to default state for next command.
- ;; Also we do not want to find this prompt again.
- (setq idlwave-shell-accumulation nil
- idlwave-shell-command-output nil
- idlwave-shell-post-command-hook nil
- idlwave-shell-hide-output nil
- idlwave-shell-show-if-error nil
- idlwave-shell-wait-for-output nil))
- ;; Done with post command. Do pending command if
- ;; any.
- (idlwave-shell-send-command))
- ;; We didn't get the prompt yet... maybe accept more output
- (when idlwave-shell-wait-for-output
-;;; Test/Debug code
-; (save-excursion (set-buffer
-; (get-buffer-create "*idlwave-shell-output*"))
-; (goto-char (point-max))
-; (insert "\n<=== WAITING ON OUTPUT ==>\n"))
- (accept-process-output proc 1))))
- (store-match-data data)))))
+ (if (and idlwave-shell-show-if-error
+ (eq idlwave-shell-current-state 'error))
+ (idlwave-shell-comint-filter proc full-output)
+ ;; If it's only *mostly* hidden, filter % lines,
+ ;; and show anything that remains
+ (if (eq idlwave-shell-hide-output 'mostly)
+ (let ((filtered
+ (idlwave-shell-filter-hidden-output
+ full-output)))
+ (if filtered
+ (idlwave-shell-comint-filter
+ proc filtered))))))
+
+ ;; Call the post-command hook
+ (if (listp idlwave-shell-post-command-hook)
+ (progn
+ ;(message "Calling list")
+ ;(prin1 idlwave-shell-post-command-hook)
+ (eval idlwave-shell-post-command-hook))
+ ;(message "Calling command function")
+ (funcall idlwave-shell-post-command-hook))
+
+ ;; Reset to default state for next command.
+ ;; Also we do not want to find this prompt again.
+ (setq idlwave-shell-accumulation nil
+ idlwave-shell-command-output nil
+ idlwave-shell-post-command-hook nil
+ idlwave-shell-hide-output nil
+ idlwave-shell-show-if-error nil))
+ ;; Done with post command. Do pending command if
+ ;; any.
+ (idlwave-shell-send-command)))
+ (store-match-data data)))))
(defun idlwave-shell-sentinel (process event)
"The sentinel function for the IDLWAVE shell process."
@@ -1616,7 +1606,7 @@ and then calls `idlwave-shell-send-command' for any pending commands."
(condition-case nil
(comint-write-input-ring)
(error nil)))))
-
+
(when (and (> (length (frame-list)) 1)
(frame-live-p idlwave-shell-idl-wframe))
(delete-frame idlwave-shell-idl-wframe)
@@ -1640,8 +1630,8 @@ and then calls `idlwave-shell-send-command' for any pending commands."
;; in module and file names. I am not sure if it will be necessary to
;; change this. Currently it seems to work the way it is.
(defvar idlwave-shell-syntax-error
- "^% Syntax error.\\s-*\n\\s-*At:\\s-*\\(.*\\),\\s-*Line\\s-*\\(.*\\)"
- "A regular expression to match an IDL syntax error.
+ "^% Syntax error.\\s-*\n\\s-*At:\\s-*\\(.*\\),\\s-*Line\\s-*\\(.*\\)"
+ "A regular expression to match an IDL syntax error.
The 1st pair matches the file name, the second pair matches the line
number.")
@@ -1649,16 +1639,16 @@ number.")
"^% .*\n\\s-*At:\\s-*\\(.*\\),\\s-*Line\\s-*\\(.*\\)"
"A regular expression to match any IDL error.")
-(defvar idlwave-shell-halting-error
+(defvar idlwave-shell-halting-error
"^% .*\n\\([^%].*\n\\)*% Execution halted at:\\(\\s-*\\S-+\\s-*[0-9]+\\s-*.*\\)\n"
"A regular expression to match errors which halt execution.")
-(defvar idlwave-shell-cant-continue-error
+(defvar idlwave-shell-cant-continue-error
"^% Can't continue from this point.\n"
"A regular expression to match errors stepping errors.")
(defvar idlwave-shell-file-line-message
- (concat
+ (concat
"\\(" ; program name group (1)
"\\$MAIN\\$\\|" ; main level routine
"\\<[a-zA-Z][a-zA-Z0-9_$:]*" ; start with a letter followed by [..]
@@ -1676,7 +1666,7 @@ number.")
"\\)" ; end line number group (5)
)
"*A regular expression to parse out the file name and line number.
-The 1st group should match the subroutine name.
+The 1st group should match the subroutine name.
The 3rd group is the line number.
The 5th group is the file name.
All parts may contain linebreaks surrounded by spaces. This is important
@@ -1695,9 +1685,9 @@ the above."
(cond
;; Make sure we have output
((not idlwave-shell-command-output))
-
+
;; First Priority: Syntax and other errors
- ((or
+ ((or
(string-match idlwave-shell-syntax-error
idlwave-shell-command-output)
(string-match idlwave-shell-other-error
@@ -1711,19 +1701,19 @@ the above."
(setq idlwave-shell-error-last (point)))
(setq idlwave-shell-current-state 'error)
(idlwave-shell-goto-next-error))
-
+
;; Second Priority: Halting errors
((string-match idlwave-shell-halting-error
idlwave-shell-command-output)
;; Grab the file and line state info.
(setq idlwave-shell-calling-stack-index 0)
(setq idlwave-shell-halt-frame
- (idlwave-shell-parse-line
- (substring idlwave-shell-command-output
+ (idlwave-shell-parse-line
+ (substring idlwave-shell-command-output
(match-beginning 2)))
idlwave-shell-current-state 'error)
(idlwave-shell-display-line (idlwave-shell-pc-frame)))
-
+
;; Third Priority: Various types of innocuous HALT and
;; TRACEBACK messages.
((or (setq trace (string-match idlwave-shell-trace-message-re
@@ -1733,25 +1723,25 @@ the above."
;; Grab the file and line state info.
(setq idlwave-shell-calling-stack-index 0)
(setq idlwave-shell-halt-frame
- (idlwave-shell-parse-line
+ (idlwave-shell-parse-line
(substring idlwave-shell-command-output (match-end 0))))
(setq idlwave-shell-current-state 'halt)
;; Don't debug trace messages
(idlwave-shell-display-line (idlwave-shell-pc-frame) nil
(if trace 'no-debug)))
-
- ;; Fourth Priority: Breakpoints
+
+ ;; Fourth Priority: Breakpoints
((string-match idlwave-shell-break-message
idlwave-shell-command-output)
(setq idlwave-shell-calling-stack-index 0)
- (setq idlwave-shell-halt-frame
- (idlwave-shell-parse-line
+ (setq idlwave-shell-halt-frame
+ (idlwave-shell-parse-line
(substring idlwave-shell-command-output (match-end 0))))
;; We used to count hits on breakpoints
;; this is no longer supported since IDL breakpoints
;; have learned counting.
;; Do breakpoint command processing
- (let ((bp (assoc
+ (let ((bp (assoc
(list
(nth 0 idlwave-shell-halt-frame)
(nth 1 idlwave-shell-halt-frame))
@@ -1764,9 +1754,9 @@ the above."
;; A breakpoint that we did not know about - perhaps it was
;; set by the user... Let's update our list.
(idlwave-shell-bp-query)))
- (setq idlwave-shell-current-state 'breakpoint)
+ (setq idlwave-shell-current-state 'breakpoint)
(idlwave-shell-display-line (idlwave-shell-pc-frame)))
-
+
;; Last Priority: Can't Step errors
((string-match idlwave-shell-cant-continue-error
idlwave-shell-command-output)
@@ -1775,13 +1765,14 @@ the above."
;; Otherwise, no particular state
(t (setq idlwave-shell-current-state nil)))))
+
(defun idlwave-shell-parse-line (string &optional skip-main)
"Parse IDL message for the subroutine, file name and line number.
We need to work hard here to remove the stupid line breaks inserted by
IDL5. These line breaks can be right in the middle of procedure
or file names.
It is very difficult to come up with a robust solution. This one seems
-to be pretty good though.
+to be pretty good though.
Here is in what ways it improves over the previous solution:
@@ -1806,7 +1797,7 @@ statements."
(setq procedure (match-string 1 string)
number (match-string 3 string)
file (match-string 5 string))
-
+
;; Repair the strings
(setq procedure (idlwave-shell-repair-string procedure))
(setq number (idlwave-shell-repair-string number))
@@ -1832,7 +1823,7 @@ The last line of STRING may be garbage - we check which one makes a valid
file name."
(let ((file1 "") (file2 "") (start 0))
;; We scan no further than to the next "^%" line
- (if (string-match "^%" file)
+ (if (string-match "^%" file)
(setq file (substring file 0 (match-beginning 0))))
;; Take out the line breaks
(while (string-match "[ \t]*\n[ \t]*" file start)
@@ -1887,7 +1878,7 @@ file name."
The size is given by `idlwave-shell-graphics-window-size'."
(interactive "P")
(let ((n (if n (prefix-numeric-value n) 0)))
- (idlwave-shell-send-command
+ (idlwave-shell-send-command
(apply 'format "window,%d,xs=%d,ys=%d"
n idlwave-shell-graphics-window-size)
nil (idlwave-shell-hide-p 'misc) nil t)))
@@ -1907,16 +1898,16 @@ directory."
Also get rid of widget events in the queue."
(interactive "P")
(save-selected-window
- ;;if (widget_info(/MANAGED))[0] gt 0 then for i=0,n_elements(widget_info(/MANAGED))-1 do widget_control,(widget_info(/MANAGED))[i],/clear_events &
- (idlwave-shell-send-command "retall" nil
- (if (idlwave-shell-hide-p 'misc) 'mostly)
+ ;;if (widget_info(/MANAGED))[0] gt 0 then for i=0,n_elements(widget_info(/MANAGED))-1 do widget_control,(widget_info(/MANAGED))[i],/clear_events &
+ (idlwave-shell-send-command "retall" nil
+ (if (idlwave-shell-hide-p 'misc) 'mostly)
nil t)
(idlwave-shell-display-line nil)))
(defun idlwave-shell-closeall (&optional arg)
"Close all open files."
(interactive "P")
- (idlwave-shell-send-command "close,/all" nil
+ (idlwave-shell-send-command "close,/all" nil
(idlwave-shell-hide-p 'misc) nil t))
(defun idlwave-shell-quit (&optional arg)
@@ -1932,7 +1923,7 @@ With prefix ARG, exit without confirmation."
(defun idlwave-shell-reset (&optional hidden)
"Reset IDL. Return to main level and destroy the leftover variables.
-This issues the following commands:
+This issues the following commands:
RETALL
WIDGET_CONTROL,/RESET
CLOSE, /ALL
@@ -1982,14 +1973,14 @@ HEAP_GC, /VERBOSE"
;; Set dummy values and kill the text
(setq sep "@" sep-re "@ *" text "")
(if idlwave-idlwave_routine_info-compiled
- (message
- "Routine Info warning: No match for BEGIN line in \n>>>\n%s\n<<<\n"
+ (message
+ "Routine Info warning: No match for BEGIN line in \n>>>\n%s\n<<<\n"
idlwave-shell-command-output)))
(if (string-match "^>>>END OF IDLWAVE ROUTINE INFO.*" text)
(setq text (substring text 0 (match-beginning 0)))
(if idlwave-idlwave_routine_info-compiled
- (message
- "Routine Info warning: No match for END line in \n>>>\n%s\n<<<\n"
+ (message
+ "Routine Info warning: No match for END line in \n>>>\n%s\n<<<\n"
idlwave-shell-command-output)))
(if (string-match "\\S-" text)
;; Obviously, the pro worked. Make a note that we have it now.
@@ -2007,59 +1998,59 @@ HEAP_GC, /VERBOSE"
key (nth 4 specs)
keys (if (and (stringp key)
(not (string-match "\\` *\\'" key)))
- (mapcar 'list
+ (mapcar 'list
(delete "" (idlwave-split-string key " +")))))
(setq name (idlwave-sintern-routine-or-method name class t)
class (idlwave-sintern-class class t)
file (if (equal file "") nil file)
- keys (mapcar (lambda (x)
+ keys (mapcar (lambda (x)
(list (idlwave-sintern-keyword (car x) t))) keys))
-
+
;; In the following ignore routines already defined in buffers,
;; assuming that if the buffer stuff differs, it is a "new"
;; version, not yet compiled, and should take precedence.
;; We could do the same for the library to avoid duplicates -
;; but I think frequently a user might have several versions of
- ;; the same function in different programs, and in this case the
+ ;; the same function in different programs, and in this case the
;; compiled one will be the best guess of all versions.
;; Therefore, we leave duplicates of library routines in.
(cond ((string= name "$MAIN$")) ; ignore this one
((and (string= type "PRO")
;; FIXME: is it OK to make the buffer routines dominate?
(or t (null file)
- (not (idlwave-rinfo-assq name 'pro class
+ (not (idlwave-rinfo-assq name 'pro class
idlwave-buffer-routines)))
;; FIXME: is it OK to make the library routines dominate?
- ;;(not (idlwave-rinfo-assq name 'pro class
+ ;;(not (idlwave-rinfo-assq name 'pro class
;; idlwave-library-routines))
)
- (setq entry (list name 'pro class
- (cons 'compiled
+ (setq entry (list name 'pro class
+ (cons 'compiled
(if file
(list
(file-name-nondirectory file)
- (idlwave-sintern-dir
+ (idlwave-sintern-dir
(file-name-directory file)))))
cs (cons nil keys)))
- (if file
+ (if file
(push entry idlwave-compiled-routines)
(push entry idlwave-unresolved-routines)))
-
+
((and (string= type "FUN")
;; FIXME: is it OK to make the buffer routines dominate?
(or t (not file)
- (not (idlwave-rinfo-assq name 'fun class
+ (not (idlwave-rinfo-assq name 'fun class
idlwave-buffer-routines)))
;; FIXME: is it OK to make the library routines dominate?
- ;; (not (idlwave-rinfo-assq name 'fun class
+ ;; (not (idlwave-rinfo-assq name 'fun class
;; idlwave-library-routines))
)
- (setq entry (list name 'fun class
+ (setq entry (list name 'fun class
(cons 'compiled
(if file
(list
(file-name-nondirectory file)
- (idlwave-sintern-dir
+ (idlwave-sintern-dir
(file-name-directory file)))))
cs (cons nil keys)))
(if file
@@ -2076,7 +2067,7 @@ Change the default directory for the process buffer to concur."
(set-buffer (idlwave-shell-buffer))
(if (string-match ",___cur[\n\r]\\(\\S-*\\) *[\n\r]"
idlwave-shell-command-output)
- (let ((dir (substring idlwave-shell-command-output
+ (let ((dir (substring idlwave-shell-command-output
(match-beginning 1) (match-end 1))))
; (message "Setting Emacs working dir to %s" dir)
(setq idlwave-shell-default-directory dir)
@@ -2090,10 +2081,10 @@ Change the default directory for the process buffer to concur."
expression)
(save-excursion
(goto-char apos)
- (setq expression (buffer-substring
+ (setq expression (buffer-substring
(catch 'exit
(while t
- (if (not (re-search-backward
+ (if (not (re-search-backward
"[^][.A-Za-z0-9_() ]" bos t))
(throw 'exit bos)) ;ran into bos
(if (not (idlwave-is-pointer-dereference bol))
@@ -2102,7 +2093,8 @@ Change the default directory for the process buffer to concur."
(when (not (string= expression ""))
(setq idlwave-shell-get-object-class nil)
(idlwave-shell-send-command
- (concat "print,obj_class(" expression ")")
+ (concat "if obj_valid(" expression ") then print,obj_class("
+ expression ")")
'idlwave-shell-parse-object-class
'hide 'wait)
;; If we don't know anything about the class, update shell routines
@@ -2114,14 +2106,11 @@ Change the default directory for the process buffer to concur."
(defun idlwave-shell-parse-object-class ()
"Parse the output of the obj_class command."
- (let ((match "print,obj_class([^\n\r]+[\n\r ]"))
- (if (and
- (not (string-match (concat match match "\\s-*^[\n\r]+"
- "% Syntax error")
- idlwave-shell-command-output))
- (string-match (concat match "\\([A-Za-z_0-9]+\\)")
- idlwave-shell-command-output))
- (setq idlwave-shell-get-object-class
+ (let ((match "obj_class([^\n\r]+[\n\r ]"))
+ (if (string-match (concat match "\\([A-Za-z_0-9]+\\) *[\n\r]\\("
+ idlwave-shell-prompt-pattern "\\)")
+ idlwave-shell-command-output)
+ (setq idlwave-shell-get-object-class
(match-string 1 idlwave-shell-command-output)))))
(defvar idlwave-sint-sysvars nil)
@@ -2135,7 +2124,7 @@ keywords."
(interactive "P")
(let (exec-cmd)
(cond
- ((and
+ ((and
(setq exec-cmd (idlwave-shell-executive-command))
(cdr exec-cmd)
(member (upcase (cdr exec-cmd))
@@ -2145,7 +2134,7 @@ keywords."
(idlwave-shell-complete-filename))
((car-safe exec-cmd)
- (setq idlwave-completion-help-info
+ (setq idlwave-completion-help-info
'(idlwave-shell-complete-execcomm-help))
(idlwave-complete-in-buffer 'execcomm 'execcomm
idlwave-executive-commands-alist nil
@@ -2164,7 +2153,7 @@ keywords."
(let ((case-fold-search t))
(not (looking-at ".*obj_new")))))
(idlwave-shell-complete-filename))
-
+
(t
;; Default completion of modules and keywords
(idlwave-complete arg)))))
@@ -2186,7 +2175,7 @@ keywords."
We assume that we are after a file name when completing one of the
args of an executive .run, .rnew or .compile."
;; CWD might have changed, resync, to set default directory
- (idlwave-shell-resync-dirs)
+ (idlwave-shell-resync-dirs)
(let ((comint-file-name-chars idlwave-shell-file-name-chars))
(comint-dynamic-complete-as-filename)))
@@ -2227,7 +2216,7 @@ args of an executive .run, .rnew or .compile."
(defun idlwave-shell-redisplay (&optional hide)
"Tries to resync the display with where execution has stopped.
-Issues a \"help,/trace\" command followed by a call to
+Issues a \"help,/trace\" command followed by a call to
`idlwave-shell-display-line'. Also updates the breakpoint
overlays."
(interactive)
@@ -2240,7 +2229,7 @@ overlays."
(idlwave-shell-bp-query))
(defun idlwave-shell-display-level-in-calling-stack (&optional hide)
- (idlwave-shell-send-command
+ (idlwave-shell-send-command
"help,/trace"
`(progn
;; scanning for the state will reset the stack level - restore it
@@ -2271,14 +2260,14 @@ overlays."
(setq idlwave-shell-calling-stack-index nmin
message (format "%d is the current calling stack level - can't go further down"
(- nmin)))))
- (setq idlwave-shell-calling-stack-routine
+ (setq idlwave-shell-calling-stack-routine
(nth 2 (nth idlwave-shell-calling-stack-index stack)))
;; only edebug if in that mode already
- (idlwave-shell-display-line
+ (idlwave-shell-display-line
(nth idlwave-shell-calling-stack-index stack) nil
- (unless idlwave-shell-electric-debug-mode 'no-debug))
- (message (or message
+ (unless idlwave-shell-electric-debug-mode 'no-debug))
+ (message (or message
(format "In routine %s (stack level %d)"
idlwave-shell-calling-stack-routine
(- idlwave-shell-calling-stack-index))))))
@@ -2309,7 +2298,7 @@ used. Does nothing if the resulting frame is nil."
(defun idlwave-shell-pc-frame ()
"Returns the frame for IDL execution."
(and idlwave-shell-halt-frame
- (list (nth 0 idlwave-shell-halt-frame)
+ (list (nth 0 idlwave-shell-halt-frame)
(nth 1 idlwave-shell-halt-frame)
(nth 2 idlwave-shell-halt-frame))))
@@ -2327,7 +2316,7 @@ column in the line. If NO-DEBUG is non-nil, do *not* toggle the electric
debug mode."
(if (not frame)
;; Remove stop-line overlay from old position
- (progn
+ (progn
(setq overlay-arrow-string nil)
(setq idlwave-shell-mode-line-info nil)
(setq idlwave-shell-is-stopped nil)
@@ -2344,10 +2333,10 @@ debug mode."
;;;
;;; buffer : the buffer to display a line in.
;;; select-shell: current buffer is the shell.
-;;;
+;;;
(setq idlwave-shell-mode-line-info
(if (nth 2 frame)
- (format "[%d:%s]"
+ (format "[%d:%s]"
(- idlwave-shell-calling-stack-index)
(nth 2 frame))))
(let* ((buffer (idlwave-find-file-noselect (car frame) 'shell))
@@ -2371,7 +2360,7 @@ debug mode."
(forward-line 0)
(setq pos (point))
(setq idlwave-shell-is-stopped t)
-
+
(if idlwave-shell-stop-line-overlay
;; Move overlay
(move-overlay idlwave-shell-stop-line-overlay
@@ -2393,12 +2382,12 @@ debug mode."
;; If we have the column of the error, move the cursor there.
(if col (move-to-column col))
(setq pos (point))
-
+
;; Enter electric debug mode, if not prohibited and not in
;; it already
- (when (and (or
+ (when (and (or
(eq idlwave-shell-automatic-electric-debug t)
- (and
+ (and
(eq idlwave-shell-automatic-electric-debug 'breakpoint)
(not (eq idlwave-shell-current-state 'error))))
(not no-debug)
@@ -2406,14 +2395,14 @@ debug mode."
(not idlwave-shell-electric-debug-mode))
(idlwave-shell-electric-debug-mode)
(setq electric t)))
-
+
;; Make sure pos is really displayed in the window.
(set-window-point window pos)
-
- ;; If we came from the shell, go back there. Otherwise select
+
+ ;; If we came from the shell, go back there. Otherwise select
;; the window where the error is displayed.
(if (or (and idlwave-shell-electric-zap-to-file electric)
- (and (equal (buffer-name) (idlwave-shell-buffer))
+ (and (equal (buffer-name) (idlwave-shell-buffer))
(not select-shell)))
(select-window window))))))
@@ -2423,23 +2412,24 @@ debug mode."
(interactive "p")
(or (not arg) (< arg 1)
(setq arg 1))
- (idlwave-shell-send-command
+ (idlwave-shell-send-command
(concat ".s " (if (integerp arg) (int-to-string arg) arg))
nil (if (idlwave-shell-hide-p 'debug) 'mostly) nil t))
(defun idlwave-shell-stepover (arg)
"Stepover one source line.
-If given prefix argument ARG, step ARG source lines.
+If given prefix argument ARG, step ARG source lines.
Uses IDL's stepover executive command which does not enter called functions."
(interactive "p")
(or (not arg) (< arg 1)
(setq arg 1))
- (idlwave-shell-send-command
+ (idlwave-shell-send-command
(concat ".so " (if (integerp arg) (int-to-string arg) arg))
nil (if (idlwave-shell-hide-p 'debug) 'mostly) nil t))
-(defun idlwave-shell-break-here (&optional count cmd condition no-show)
- "Set breakpoint at current line.
+(defun idlwave-shell-break-here (&optional count cmd condition disabled
+ no-show)
+ "Set breakpoint at current line.
If Count is nil then an ordinary breakpoint is set. We treat a count
of 1 as a temporary breakpoint using the ONCE keyword. Counts greater
@@ -2447,17 +2437,17 @@ than 1 use the IDL AFTER=count keyword to break only after reaching
the statement count times.
Optional argument CMD is a list or function to evaluate upon reaching
-the breakpoint."
-
+the breakpoint. CONDITION is a break condition, and DISABLED, if
+non-nil disables the breakpoint"
(interactive "P")
(when (listp count)
- (if (equal (car count) 4)
+ (if (equal (car count) 4)
(setq condition (read-string "Break Condition: ")))
(setq count nil))
(idlwave-shell-set-bp
;; Create breakpoint
(idlwave-shell-bp (idlwave-shell-current-frame)
- (list count cmd condition nil)
+ (list count cmd condition disabled)
(idlwave-shell-current-module))
no-show))
@@ -2467,14 +2457,14 @@ This is run on `idlwave-shell-post-command-hook'.
Offers to recompile the procedure if we failed. This usually fixes
the problem with not being able to set the breakpoint."
;; Scan for message
- (if (and idlwave-shell-command-output
- (string-match "% BREAKPOINT: *Unable to find code"
- idlwave-shell-command-output))
- ;; Offer to recompile
- (progn
+ (if idlwave-shell-command-output
+ (cond
+ ((string-match "% BREAKPOINT: *Unable to find code"
+ idlwave-shell-command-output)
+ ;; Offer to recompile
(if (progn
(beep)
- (y-or-n-p
+ (y-or-n-p
(concat "Okay to recompile file "
(idlwave-shell-bp-get bp 'file) " ")))
;; Recompile
@@ -2482,17 +2472,21 @@ the problem with not being able to set the breakpoint."
;; Clean up before retrying
(idlwave-shell-command-failure)
(idlwave-shell-send-command
- (concat ".run " (idlwave-shell-bp-get bp 'file)) nil
+ (concat ".run " (idlwave-shell-bp-get bp 'file)) nil
(if (idlwave-shell-hide-p 'run) 'mostly) nil t)
;; Try setting breakpoint again
(idlwave-shell-set-bp bp))
(beep)
(message "Unable to set breakpoint.")
- (idlwave-shell-command-failure)
- )
- ;; return non-nil if no error found
- nil)
- 'okay))
+ (idlwave-shell-command-failure))
+ nil)
+
+ ((string-match "% Syntax error" idlwave-shell-command-output)
+ (message "Syntax error in condition.")
+ (idlwave-shell-command-failure)
+ nil)
+
+ (t 'okay))))
(defun idlwave-shell-command-failure ()
"Do any necessary clean up when an IDL command fails.
@@ -2506,9 +2500,9 @@ breakpoint can not be set."
(defun idlwave-shell-cont (&optional no-show)
"Continue executing."
(interactive)
- (idlwave-shell-send-command ".c" (unless no-show
+ (idlwave-shell-send-command ".c" (unless no-show
'(idlwave-shell-redisplay 'hide))
- (if (idlwave-shell-hide-p 'debug) 'mostly)
+ (if (idlwave-shell-hide-p 'debug) 'mostly)
nil t))
(defun idlwave-shell-go ()
@@ -2589,7 +2583,7 @@ at a breakpoint."
((eq force 'enable) (setq disabled t)))
(when bp
(setf (nth 3 (cdr (cdr bp))) (not disabled))
- (idlwave-shell-send-command
+ (idlwave-shell-send-command
(concat "breakpoint,"
(if disabled "/enable," "/disable,")
(int-to-string (idlwave-shell-bp-get bp)))
@@ -2603,18 +2597,18 @@ If ENABLE is non-nil, enable them instead."
(while bpl
(setq disabled (idlwave-shell-bp-get (car bpl) 'disabled))
(when (idlwave-xor (not disabled) (eq enable 'enable))
- (idlwave-shell-toggle-enable-current-bp
+ (idlwave-shell-toggle-enable-current-bp
(car bpl) (if (eq enable 'enable) 'enable 'disable) no-update)
(push (car bpl) modified))
(setq bpl (cdr bpl)))
(unless no-update (idlwave-shell-bp-query))
modified))
-
+
(defun idlwave-shell-to-here ()
"Set a breakpoint with count 1 then continue."
(interactive)
(let ((disabled (idlwave-shell-enable-all-bp 'disable 'no-update)))
- (idlwave-shell-break-here 1 nil nil 'no-show)
+ (idlwave-shell-break-here 1 nil nil nil 'no-show)
(idlwave-shell-cont 'no-show)
(idlwave-shell-enable-all-bp 'enable 'no-update disabled))
(idlwave-shell-redisplay)) ; sync up everything at the end
@@ -2631,23 +2625,19 @@ The command looks for an identifier near point and sets a breakpoint
for the first line of the corresponding module. If MODULE is `t', set
in the current routine."
(interactive)
- (let (module)
- (save-excursion
- (skip-chars-backward "a-zA-Z0-9_$")
- (if (looking-at idlwave-identifier)
- (setq module (match-string 0))
- (error "No identifier at point")))
- (idlwave-shell-send-command
- idlwave-shell-sources-query
- `(progn
- (idlwave-shell-sources-filter)
- (idlwave-shell-set-bp-in-module ,module))
- 'hide)))
+ (let ((module (idlwave-fix-module-if-obj_new (idlwave-what-module))))
+ (if module
+ (progn
+ (setq module (idlwave-make-full-name (nth 2 module) (car module)))
+ (idlwave-shell-module-source-query module)
+ (idlwave-shell-set-bp-in-module module))
+ (error "No identifier at point"))))
+
(defun idlwave-shell-set-bp-in-module (module)
"Set breakpoint in module. Assumes that `idlwave-shell-sources-alist'
contains an entry for that module."
- (let ((source-file (car-safe
+ (let ((source-file (car-safe
(cdr-safe
(assoc (upcase module)
idlwave-shell-sources-alist))))
@@ -2666,7 +2656,7 @@ contains an entry for that module."
(save-excursion
(goto-char (point-min))
(let ((case-fold-search t))
- (if (re-search-forward
+ (if (re-search-forward
(concat "^[ \t]*\\(pro\\|function\\)[ \t]+"
(downcase module)
"[ \t\n,]") nil t)
@@ -2708,7 +2698,7 @@ Sets a breakpoint with count 1 at end of block, then continues."
"Attempt to run until this procedure exits.
Runs to the last statement and then steps 1 statement. Use the .out command."
(interactive)
- (idlwave-shell-send-command ".o" nil
+ (idlwave-shell-send-command ".o" nil
(if (idlwave-shell-hide-p 'debug) 'mostly)
nil t))
@@ -2755,7 +2745,7 @@ Runs to the last statement and then steps 1 statement. Use the .out command."
(interactive "e")
(let ((transient-mark-mode t)
(zmacs-regions t)
- (tracker (if (featurep 'xemacs)
+ (tracker (if (featurep 'xemacs)
(if (fboundp 'default-mouse-track-event-is-with-button)
'idlwave-xemacs-hack-mouse-track
'mouse-track)
@@ -2773,7 +2763,7 @@ Runs to the last statement and then steps 1 statement. Use the .out command."
(let ((oldfunc (symbol-function 'default-mouse-track-event-is-with-button)))
(unwind-protect
(progn
- (fset 'default-mouse-track-event-is-with-button
+ (fset 'default-mouse-track-event-is-with-button
'idlwave-default-mouse-track-event-is-with-button)
(mouse-track event))
(fset 'default-mouse-track-event-is-with-button oldfunc))))
@@ -2805,7 +2795,7 @@ Runs to the last statement and then steps 1 statement. Use the .out command."
(defvar idlwave-shell-examine-completion-list nil)
(defun idlwave-shell-print (arg &optional help ev complete-help-type)
- "Print current expression.
+ "Print current expression.
With HELP non-nil, show help on expression. If HELP is a string,
the expression will be put in place of ___, e.g.:
@@ -2838,11 +2828,11 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
(save-excursion
(let* ((process (get-buffer-process (current-buffer)))
(process-mark (if process (process-mark process)))
- (stack-label
+ (stack-label
(if (and (integerp idlwave-shell-calling-stack-index)
(> idlwave-shell-calling-stack-index 0))
- (format " [-%d:%s]"
- idlwave-shell-calling-stack-index
+ (format " [-%d:%s]"
+ idlwave-shell-calling-stack-index
idlwave-shell-calling-stack-routine)))
expr beg end cmd examine-hook)
(cond
@@ -2872,7 +2862,7 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
;; an array
(forward-sexp))
(setq end (point)))))
-
+
;; Get expression, but first move the begin mark if a
;; process-mark is inside the region, to keep the overlay from
;; wandering in the Shell.
@@ -2883,61 +2873,61 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
;; Show the overlay(s) and attach any necessary hooks and filters
(when (and beg end idlwave-shell-expression-overlay)
- (move-overlay idlwave-shell-expression-overlay beg end
+ (move-overlay idlwave-shell-expression-overlay beg end
(current-buffer))
- (add-hook 'pre-command-hook
+ (add-hook 'pre-command-hook
'idlwave-shell-delete-expression-overlay))
- (setq examine-hook
+ (setq examine-hook
(if idlwave-shell-separate-examine-output
'idlwave-shell-examine-display
'idlwave-shell-examine-highlight))
(add-hook 'pre-command-hook
'idlwave-shell-delete-output-overlay)
-
+
;; Remove empty or comment-only lines
(while (string-match "\n[ \t]*\\(;.*\\)?\r*\n" expr)
(setq expr (replace-match "\n" t t expr)))
;; Concatenate continuation lines
- (while (string-match "[ \t]*\\$.*\\(;.*\\)?\\(\n[ \t]*\\|$\\)" expr)
+ (while (string-match "[ \t]*\\$[ \t]*\\(;.*\\)?\\(\n[ \t]*\\|$\\)" expr)
(setq expr (replace-match "" t t expr)))
;; Remove final newline
(if (string-match "\n[ \t\r]*\\'" expr)
(setq expr (replace-match "" t t expr)))
-
+
(catch 'exit
;; Pop-up or complete on the examine selection list, if appropriate
(if (or
complete-help-type
(and ev idlwave-shell-examine-alist)
(consp help))
- (let ((help-cons
+ (let ((help-cons
(if (consp help) help
- (assoc
+ (assoc
;; A cons from either a pop-up or mini-buffer completion
(if complete-help-type
(idlwave-one-key-select 'idlwave-shell-examine-alist
"Examine with: " 1.5)
;; (idlwave-completing-read
-;; "Examine with: "
+;; "Examine with: "
;; idlwave-shell-examine-alist nil nil nil
;; 'idlwave-shell-examine-completion-list
;; "Print")
- (idlwave-popup-select
- ev
- (mapcar 'car idlwave-shell-examine-alist)
+ (idlwave-popup-select
+ ev
+ (mapcar 'car idlwave-shell-examine-alist)
"Examine with"))
idlwave-shell-examine-alist))))
(setq help (cdr help-cons))
(if (null help) (throw 'exit nil))
(if idlwave-shell-separate-examine-output
- (setq idlwave-shell-examine-label
- (concat
+ (setq idlwave-shell-examine-label
+ (concat
(format "==>%s<==\n%s:" expr (car help-cons))
stack-label "\n"))))
;; The regular help label (no popups, cons cells, etc.)
(setq idlwave-shell-examine-label
(concat
- (format "==>%s<==\n%s:" expr
+ (format "==>%s<==\n%s:" expr
(cond ((null help) "print")
((stringp help) help)
(t (symbol-name help))))
@@ -2950,9 +2940,9 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
idlwave-shell-calling-stack-index)))
(setq cmd (idlwave-shell-help-statement help expr))
;;(idlwave-shell-recenter-shell-window)
- (idlwave-shell-send-command
- cmd
- examine-hook
+ (idlwave-shell-send-command
+ cmd
+ examine-hook
(if idlwave-shell-separate-examine-output 'hide))))))
(defvar idlwave-shell-examine-window-alist nil
@@ -2979,9 +2969,9 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
(let* ((end (or
(re-search-backward idlwave-shell-prompt-pattern nil t)
(point-max)))
- (beg (progn
+ (beg (progn
(goto-char
- (or (progn (if (re-search-backward
+ (or (progn (if (re-search-backward
idlwave-shell-prompt-pattern nil t)
(match-end 0)))
(point-min)))
@@ -2998,21 +2988,21 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
(setq buffer-read-only t)
(move-overlay idlwave-shell-output-overlay cur-beg cur-end
(current-buffer))
-
+
;; Look for the examine buffer in all windows. If one is
;; found in a frame all by itself, use that, otherwise, switch
;; to or create an examine window in this frame, and resize if
;; it's a newly created window
(let* ((winlist (get-buffer-window-list "*Examine*" nil 'visible)))
- (setq win (idlwave-display-buffer
- "*Examine*"
+ (setq win (idlwave-display-buffer
+ "*Examine*"
nil
(let ((list winlist) thiswin)
(catch 'exit
(save-selected-window
(while (setq thiswin (pop list))
(select-window thiswin)
- (if (one-window-p)
+ (if (one-window-p)
(throw 'exit (window-frame thiswin)))))))))
(set-window-start win (point-min)) ; Ensure the point is visible.
(save-selected-window
@@ -3033,7 +3023,7 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
;; And add the new value.
(if (setq elt (assoc win idlwave-shell-examine-window-alist))
(setcdr elt (window-height))
- (add-to-list 'idlwave-shell-examine-window-alist
+ (add-to-list 'idlwave-shell-examine-window-alist
(cons win (window-height)))))))))
;; Recenter for maximum output, after widened
(save-selected-window
@@ -3051,7 +3041,7 @@ idlw-shell-examine-alist via mini-buffer shortcut key."
(defun idlwave-shell-examine-display-clear ()
(interactive)
- (save-excursion
+ (save-excursion
(let ((buf (get-buffer "*Examine*")))
(when (bufferp buf)
(set-buffer buf)
@@ -3072,36 +3062,58 @@ routine_names, there is no guarantee that this will work with future
versions of IDL."
(let ((fetch (- 0 level))
(start 0)
- var rnvar pre post)
+ var fetch-start fetch-end pre post)
;; FIXME: In the following we try to find the variables in expression
;; This is quite empirical - I don't know in what situations this will
;; break. We will look for identifiers and exclude cases where we
;; know it is not a variable. To distinguish array references from
;; function calls, we require that arrays use [] instead of ()
-
+
(while (string-match
"\\(\\`\\|[^a-zA-Z0-9$_][ \t]*\\)\\([a-zA-Z][a-zA-Z0-9$_]*\\)\\([ \t]*[^a-zA-Z0-9$_]\\|\\'\\)" expr start)
(setq var (match-string 2 expr)
- start (match-beginning 2)
+ start (match-end 2)
pre (substring expr 0 (match-beginning 2))
post (substring expr (match-end 2)))
- (cond
- ;; Exclude identifiers which are not variables
- ((string-match ",[ \t]*/\\'" pre)) ;; a `/' KEYWORD
- ((and (string-match "[,(][ \t]*\\'" pre)
- (string-match "\\`[ \t]*=" post))) ;; a `=' KEYWORD
- ((string-match "\\`(" post)) ;; a function
- ((string-match "->[ \t]*\\'" pre)) ;; a method
- ((string-match "\\.\\'" pre)) ;; structure member
+ (cond
+ ((or
+ ;; Exclude identifiers which are not variables
+ (string-match ",[ \t$\n]*/\\'" pre) ;; a `/' KEYWORD
+ (and (string-match "[,(][ \t\n]*\\'" pre)
+ (string-match "\\`[ \t]*=" post)) ;; a `=' KEYWORD
+ (string-match "\\`(" post) ;; a function
+ (string-match "->[ \t]*\\'" pre) ;; a method
+ (string-match "\\.\\'" pre))) ;; structure member
+
+ ;; Skip over strings
((and (string-match "\\([\"\']\\)[^\1]*$" pre)
- (string-match (concat "^[^" (match-string 1 pre) "]*"
- (match-string 1 pre)) post)))
- (t ;; seems to be a variable - replace its name in the
- ;; expression with the fetch.
- (setq rnvar (format "(routine_names('%s',fetch=%d))" var fetch)
- expr (concat pre rnvar post)
- start (+ start (length rnvar))))))
+ (string-match (concat "^[^" (match-string 1 pre) "]*"
+ (match-string 1 pre)) post))
+ (setq start (+ start (match-end 0))))
+
+
+ ;; seems to be a variable - delimit its name
+ (t
+ (put-text-property start (- start (length var)) 'fetch t expr))))
+
+ (setq start 0)
+ (while (setq fetch-start
+ (next-single-property-change start 'fetch expr))
+ (if (get-text-property start 'fetch expr) ; it's on in range
+ (setq fetch-end fetch-start ;it's off in range
+ fetch-start start)
+ (setq fetch-end (next-single-property-change fetch-start 'fetch expr)))
+ (unless fetch-end (setq fetch-end (length expr)))
+ (remove-text-properties fetch-start fetch-end '(fetch) expr)
+ (setq expr (concat (substring expr 0 fetch-start)
+ (format "(routine_names('%s',fetch=%d))"
+ (substring expr fetch-start fetch-end)
+ fetch)
+ (substring expr fetch-end)))
+ (setq start fetch-end))
+ (if (get-text-property 0 'fetch expr) ; Full expression, left over
+ (setq expr (format "(routine_names('%s',fetch=%d))" expr fetch)))
expr))
@@ -3113,13 +3125,13 @@ to insert expression in place of the marker ___, e.g.: print,
size(___,/DIMENSIONS)"
(cond
((null help) (concat "print, " expr))
- ((stringp help)
+ ((stringp help)
(if (string-match "\\(^\\|[^_]\\)\\(___\\)\\([^_]\\|$\\)" help)
(concat (substring help 0 (match-beginning 2))
expr
(substring help (match-end 2)))))
(t (concat "help, " expr))))
-
+
(defun idlwave-shell-examine-highlight ()
"Highlight the most recent IDL output."
@@ -3127,7 +3139,7 @@ size(___,/DIMENSIONS)"
(process (get-buffer-process buffer))
(process-mark (if process (process-mark process)))
output-begin output-end)
- (save-excursion
+ (save-excursion
(set-buffer buffer)
(goto-char process-mark)
(beginning-of-line)
@@ -3135,12 +3147,12 @@ size(___,/DIMENSIONS)"
(re-search-backward idlwave-shell-prompt-pattern nil t)
(beginning-of-line 2)
(setq output-begin (point)))
-
+
;; First make sure the shell window is visible
(idlwave-display-buffer (idlwave-shell-buffer)
nil (idlwave-shell-shell-frame))
(if (and idlwave-shell-output-overlay process-mark)
- (move-overlay idlwave-shell-output-overlay
+ (move-overlay idlwave-shell-output-overlay
output-begin output-end buffer))))
(defun idlwave-shell-delete-output-overlay ()
@@ -3151,7 +3163,7 @@ size(___,/DIMENSIONS)"
(delete-overlay idlwave-shell-output-overlay))
(error nil))
(remove-hook 'pre-command-hook 'idlwave-shell-delete-output-overlay)))
-
+
(defun idlwave-shell-delete-expression-overlay ()
(unless (or (eq this-command 'idlwave-shell-mouse-nop)
(eq this-command 'handle-switch-frame))
@@ -3180,7 +3192,7 @@ contains four items:
count - number of times to execute breakpoint. When count reaches 0
the breakpoint is cleared and removed from the alist.
-command - command to execute when breakpoint is reached, either a
+command - command to execute when breakpoint is reached, either a
lisp function to be called with `funcall' with no arguments or a
list to be evaluated with `eval'.
@@ -3213,11 +3225,11 @@ If there is a prefix argument, display IDL process."
(insert "\nend\n"))
(save-buffer 0)))
(idlwave-shell-send-command (concat ".run " idlwave-shell-temp-pro-file)
- nil
+ nil
(if (idlwave-shell-hide-p 'run) 'mostly)
nil t)
(if n
- (idlwave-display-buffer (idlwave-shell-buffer)
+ (idlwave-display-buffer (idlwave-shell-buffer)
nil (idlwave-shell-shell-frame))))
(defun idlwave-shell-evaluate-region (beg end &optional n)
@@ -3228,7 +3240,7 @@ Does not work for a region with multiline blocks - use
(interactive "r\nP")
(idlwave-shell-send-command (buffer-substring beg end))
(if n
- (idlwave-display-buffer (idlwave-shell-buffer)
+ (idlwave-display-buffer (idlwave-shell-buffer)
nil (idlwave-shell-shell-frame))))
(defun idlwave-shell-delete-temp-files ()
@@ -3283,7 +3295,7 @@ Queries IDL using the string in `idlwave-shell-bp-query'."
'hide))
(defun idlwave-shell-bp-get (bp &optional item)
- "Get a value for a breakpoint.
+ "Get a value for a breakpoint.
BP has the form of elements in idlwave-shell-bp-alist. Optional
second arg ITEM is the particular value to retrieve. ITEM can be
'file, 'line, 'index, 'module, 'count, 'cmd, 'condition, 'disabled or
@@ -3318,8 +3330,8 @@ breakpoint overlays."
;; Searching the breakpoints
;; In IDL 5.5, the breakpoint reporting format changed.
(bp-re54 "^[ \t]*\\([0-9]+\\)[ \t]+\\(\\S-+\\)?[ \t]+\\([0-9]+\\)[ \t]+\\(\\S-+\\)")
- (bp-re55
- (concat
+ (bp-re55
+ (concat
"^\\s-*\\([0-9]+\\)" ; 1 index
"\\s-+\\([0-9]+\\)" ; 2 line number
"\\s-+\\(Uncompiled\\|" ; 3-6 either uncompiled or routine name
@@ -3334,11 +3346,11 @@ breakpoint overlays."
bp-re indmap)
(setq idlwave-shell-bp-alist (list nil))
;; Search for either header type, and set the correct regexp
- (when (or
+ (when (or
(if (re-search-forward "^\\s-*Index.*\n\\s-*-" nil t)
- (setq bp-re bp-re54 ; versions <= 5.4
+ (setq bp-re bp-re54 ; versions <= 5.4
indmap '(1 2 3 4))) ;index module line file
- (if (re-search-forward
+ (if (re-search-forward
"^\\s-*Index\\s-*Line\\s-*Attributes\\s-*File" nil t)
(setq bp-re bp-re55 ; versions >= 5.5
indmap '(1 6 2 16)))) ; index module line file
@@ -3349,12 +3361,12 @@ breakpoint overlays."
line (string-to-number (match-string (nth 2 indmap)))
file (idlwave-shell-file-name (match-string (nth 3 indmap))))
(if (eq bp-re bp-re55)
- (setq count (if (match-string 10) 1
+ (setq count (if (match-string 10) 1
(if (match-string 8)
(string-to-number (match-string 8))))
condition (match-string 13)
disabled (not (null (match-string 15)))))
-
+
;; Add the breakpoint info to the list
(nconc idlwave-shell-bp-alist
(list (cons (list file line)
@@ -3364,7 +3376,7 @@ breakpoint overlays."
count nil condition disabled))))))
(setq idlwave-shell-bp-alist (cdr idlwave-shell-bp-alist))
;; Update breakpoint data
- (if (eq bp-re bp-re54)
+ (if (eq bp-re bp-re54)
(mapcar 'idlwave-shell-update-bp old-bp-alist)
(mapcar 'idlwave-shell-update-bp-command-only old-bp-alist))))
;; Update the breakpoint overlays
@@ -3379,8 +3391,8 @@ breakpoint overlays."
"Update BP data in breakpoint list.
If BP frame is in `idlwave-shell-bp-alist' updates the breakpoint data."
(let ((match (assoc (car bp) idlwave-shell-bp-alist)))
- (if match
- (if command-only
+ (if match
+ (if command-only
(setf (nth 1 (cdr (cdr match))) (nth 1 (cdr (cdr match))))
(setcdr (cdr match) (cdr (cdr bp)))))))
@@ -3405,42 +3417,31 @@ Otherwise return the filename in bp."
(let*
((bp-file (idlwave-shell-bp-get bp 'file))
(bp-module (idlwave-shell-bp-get bp 'module))
- (internal-file-list
- (cdr (assoc bp-module idlwave-shell-sources-alist))))
+ (internal-file-list
+ (if bp-module
+ (cdr (assoc bp-module idlwave-shell-sources-alist)))))
(if (and internal-file-list
(equal bp-file (nth 0 internal-file-list)))
(nth 1 internal-file-list)
bp-file)))
(defun idlwave-shell-set-bp (bp &optional no-show)
- "Try to set a breakpoint BP.
+ "Try to set a breakpoint BP.
The breakpoint will be placed at the beginning of the statement on the
line specified by BP or at the next IDL statement if that line is not
a statement. Determines IDL's internal representation for the
breakpoint, which may have occurred at a different line than
specified. If NO-SHOW is non-nil, don't do any updating."
;; Get and save the old breakpoints
- (idlwave-shell-send-command
+ (idlwave-shell-send-command
idlwave-shell-bp-query
`(progn
(idlwave-shell-filter-bp (quote ,no-show))
(setq idlwave-shell-old-bp idlwave-shell-bp-alist))
'hide)
- ;; Get sources for IDL compiled procedures followed by setting
- ;; breakpoint.
- (idlwave-shell-send-command
- idlwave-shell-sources-query
- `(progn
- (idlwave-shell-sources-filter)
- (idlwave-shell-set-bp2 (quote ,bp) (quote ,no-show)))
- 'hide))
-(defun idlwave-shell-set-bp2 (bp &optional no-show)
- "Use results of breakpoint and sources query to set bp.
-Use the count argument with IDLs breakpoint command.
-We treat a count of 1 as a temporary breakpoint.
-Counts greater than 1 use the IDL AFTER=count keyword to break
-only after reaching the statement count times."
+ ;; Get sources for this routine in the sources list
+ (idlwave-shell-module-source-query (idlwave-shell-bp-get bp 'module))
(let*
((arg (idlwave-shell-bp-get bp 'count))
(key (cond
@@ -3450,32 +3451,35 @@ only after reaching the statement count times."
((> arg 1)
(format ",after=%d" arg))))
(condition (idlwave-shell-bp-get bp 'condition))
- (key (concat key
+ (disabled (idlwave-shell-bp-get bp 'disabled))
+ (key (concat key
(if condition (concat ",CONDITION=\"" condition "\""))))
+ (key (concat key (if disabled ",/DISABLE")))
(line (idlwave-shell-bp-get bp 'line)))
(idlwave-shell-send-command
- (concat "breakpoint,'"
+ (concat "breakpoint,'"
(idlwave-shell-sources-bp bp) "',"
(if (integerp line) (setq line (int-to-string line)))
key)
- ;; Check for failure and look for breakpoint in IDL's list
+ ;; Check for failure and adjust breakpoint to match IDL's list
`(progn
(if (idlwave-shell-set-bp-check (quote ,bp))
- (idlwave-shell-set-bp3 (quote ,bp) (quote ,no-show))))
+ (idlwave-shell-set-bp-adjust (quote ,bp) (quote ,no-show))))
;; hide output?
(idlwave-shell-hide-p 'breakpoint)
'preempt t)))
-(defun idlwave-shell-set-bp3 (bp &optional no-show)
+(defun idlwave-shell-set-bp-adjust (bp &optional no-show)
"Find the breakpoint in IDL's internal list of breakpoints."
- (idlwave-shell-send-command idlwave-shell-bp-query
- `(progn
- (idlwave-shell-filter-bp (quote ,no-show))
- (idlwave-shell-new-bp (quote ,bp))
- (unless (quote ,no-show)
- (idlwave-shell-update-bp-overlays)))
- 'hide
- 'preempt))
+ (idlwave-shell-send-command
+ idlwave-shell-bp-query
+ `(progn
+ (idlwave-shell-filter-bp 'no-show)
+ (idlwave-shell-new-bp (quote ,bp))
+ (unless (quote ,no-show)
+ (idlwave-shell-update-bp-overlays)))
+ 'hide
+ 'preempt))
(defun idlwave-shell-find-bp (frame)
"Return breakpoint from `idlwave-shell-bp-alist' for frame.
@@ -3526,10 +3530,14 @@ considered the new breakpoint if the file name of frame matches."
"Alist of overlays marking breakpoints")
(defvar idlwave-shell-bp-glyph)
+(defvar idlwave-shell-debug-line-map (make-sparse-keymap))
+(define-key idlwave-shell-debug-line-map
+ (if (featurep 'xemacs) [button3] [mouse-3])
+ 'idlwave-shell-mouse-active-bp)
+
(defun idlwave-shell-update-bp-overlays ()
"Update the overlays which mark breakpoints in the source code.
Existing overlays are recycled, in order to minimize consumption."
- ;(message "Updating Overlays")
(when idlwave-shell-mark-breakpoints
(let ((ov-alist (copy-alist idlwave-shell-bp-overlays))
(bp-list idlwave-shell-bp-alist)
@@ -3538,14 +3546,14 @@ Existing overlays are recycled, in order to minimize consumption."
ov ov-list bp buf old-buffers win)
;; Delete the old overlays from their buffers
- (if ov-alist
+ (if ov-alist
(while (setq ov-list (pop ov-alist))
(while (setq ov (pop (cdr ov-list)))
(add-to-list 'old-buffers (overlay-buffer ov))
(delete-overlay ov))))
-
+
(setq ov-alist idlwave-shell-bp-overlays
- idlwave-shell-bp-overlays
+ idlwave-shell-bp-overlays
(if idlwave-shell-bp-glyph
(mapcar 'list (mapcar 'car idlwave-shell-bp-glyph))
(list (list 'bp))))
@@ -3569,16 +3577,23 @@ Existing overlays are recycled, in order to minimize consumption."
(t 'bp-n)))
(t 'bp))
'bp))
- (help-list
+ (help-list
(delq nil
(list
(if count
- (concat "n=" (int-to-string count)))
+ (concat "after:" (int-to-string count)))
(if condition
- (concat "condition: " condition))
+ (concat "condition:" condition))
(if disabled "disabled"))))
- (help-text (if help-list
- (mapconcat 'identity help-list ",")))
+ (help-text (concat
+ "BP "
+ (int-to-string (idlwave-shell-bp-get bp))
+ (if help-list
+ (concat
+ " - "
+ (mapconcat 'identity help-list ", ")))
+ (if (and (not count) (not condition))
+ " (use mouse-3 for breakpoint actions)")))
(full-type (if disabled
(intern (concat (symbol-name type)
"-disabled"))
@@ -3586,9 +3601,10 @@ Existing overlays are recycled, in order to minimize consumption."
(ov-existing (assq full-type ov-alist))
(ov (or (and (cdr ov-existing)
(pop (cdr ov-existing)))
- (idlwave-shell-make-new-bp-overlay
- type disabled help-text)))
+ (idlwave-shell-make-new-bp-overlay type disabled)))
match)
+ (if idlwave-shell-breakpoint-popup-menu
+ (overlay-put ov 'help-echo help-text))
(move-overlay ov beg end)
(if (setq match (assq full-type idlwave-shell-bp-overlays))
(push ov (cdr match))
@@ -3596,7 +3612,7 @@ Existing overlays are recycled, in order to minimize consumption."
(list (list full-type ov)))))
;; Take care of margins if using a glyph
(when use-glyph
- (if old-buffers
+ (if old-buffers
(setq old-buffers (delq (current-buffer) old-buffers)))
(if (fboundp 'set-specifier) ;; XEmacs
(set-specifier left-margin-width (cons (current-buffer) 2))
@@ -3612,29 +3628,31 @@ Existing overlays are recycled, in order to minimize consumption."
(if (setq win (get-buffer-window buf t))
(set-window-buffer win buf))))))))
-
-(defun idlwave-shell-make-new-bp-overlay (&optional type disabled help)
- "Make a new overlay for highlighting breakpoints.
+(defun idlwave-shell-make-new-bp-overlay (&optional type disabled)
+ "Make a new overlay for highlighting breakpoints.
This stuff is strongly dependant upon the version of Emacs. If TYPE
is passed, make an overlay of that type ('bp or 'bp-cond, currently
-only for glyphs). If HELP is set, use it to make a tooltip with that
-text popup."
+only for glyphs)."
(let ((ov (make-overlay 1 1))
(use-glyph (and (memq idlwave-shell-mark-breakpoints '(t glyph))
idlwave-shell-bp-glyph))
(type (or type 'bp))
- (face (if disabled
+ (face (if disabled
idlwave-shell-disabled-breakpoint-face
idlwave-shell-breakpoint-face)))
(if (featurep 'xemacs)
;; This is XEmacs
(progn
- (cond
+ (when idlwave-shell-breakpoint-popup-menu
+ (set-extent-property ov 'mouse-face 'highlight)
+ (set-extent-property ov 'keymap idlwave-shell-debug-line-map))
+
+ (cond
;; tty's cannot display glyphs
((eq (console-type) 'tty)
(set-extent-property ov 'face face))
-
+
;; use the glyph
(use-glyph
(let ((glyph (cdr (assq type idlwave-shell-bp-glyph))))
@@ -3650,22 +3668,23 @@ text popup."
(t nil))
(set-extent-priority ov -1)) ; make stop line face prevail
;; This is Emacs
+ (when idlwave-shell-breakpoint-popup-menu
+ (overlay-put ov 'mouse-face 'highlight)
+ (overlay-put ov 'keymap idlwave-shell-debug-line-map))
(cond
(window-system
(if use-glyph
(let ((image-props (cdr (assq type idlwave-shell-bp-glyph)))
string)
-
+
(if disabled (setq image-props
- (append image-props
+ (append image-props
(list :conversion 'disabled))))
- (setq string
- (propertize "@"
- 'display
+ (setq string
+ (propertize "@"
+ 'display
(list (list 'margin 'left-margin)
- image-props)
- 'mouse-face 'highlight
- 'help-echo help))
+ image-props)))
(overlay-put ov 'before-string string))
;; just the face
(overlay-put ov 'face face)))
@@ -3678,6 +3697,54 @@ text popup."
(t nil)))
ov))
+(defun idlwave-shell-mouse-active-bp (ev)
+ "Does right-click mouse action on breakpoint lines."
+ (interactive "e")
+ (if ev (mouse-set-point ev))
+ (let ((bp (idlwave-shell-find-bp (idlwave-shell-current-frame)))
+ index condition count select cmd disabled)
+ (unless bp
+ (error "Breakpoint not found"))
+ (setq index (int-to-string (idlwave-shell-bp-get bp))
+ condition (idlwave-shell-bp-get bp 'condition)
+ cmd (idlwave-shell-bp-get bp 'cmd)
+ count (idlwave-shell-bp-get bp 'count)
+ disabled (idlwave-shell-bp-get bp 'disabled))
+ (setq select (idlwave-popup-select
+ ev
+ (delq nil
+ (list (if disabled "Enable" "Disable")
+ "Clear"
+ "Clear All"
+ (if condition "Remove Condition" "Add Condition")
+ (if condition "Change Condition")
+ (if count "Remove Repeat Count"
+ "Add Repeat Count")
+ (if count "Change Repeat Count")))
+ (concat "BreakPoint " index)))
+ (if select
+ (cond
+ ((string-equal select "Clear All")
+ (idlwave-shell-clear-all-bp))
+ ((string-equal select "Clear")
+ (idlwave-shell-clear-current-bp))
+ ((string-match "Condition" select)
+ (idlwave-shell-break-here count cmd
+ (if (or (not condition)
+ (string-match "Change" select))
+ (read-string "Break Condition: "))
+ disabled))
+ ((string-match "Count" select)
+ (idlwave-shell-break-here (if (or (not count)
+ (string-match "Change" select))
+ (string-to-number
+ (read-string "Break After Count: ")))
+ cmd condition disabled))
+ ((string-match "able$" select)
+ (idlwave-shell-toggle-enable-current-bp))
+ (t
+ (message "Unimplemented: %s" select))))))
+
(defun idlwave-shell-edit-default-command-line (arg)
"Edit the current execute command."
(interactive "P")
@@ -3689,14 +3756,14 @@ text popup."
Also with prefix arg, ask for the command. You can also use the command
`idlwave-shell-edit-default-command-line' to edit the line."
(interactive "P")
- (cond
+ (cond
((equal arg '(16))
(setq idlwave-shell-command-line-to-execute nil))
((equal arg '(4))
- (setq idlwave-shell-command-line-to-execute
+ (setq idlwave-shell-command-line-to-execute
(read-string "IDL> " idlwave-shell-command-line-to-execute))))
(idlwave-shell-reset 'hidden)
- (idlwave-shell-send-command
+ (idlwave-shell-send-command
(or idlwave-shell-command-line-to-execute
(with-current-buffer (idlwave-shell-buffer)
(ring-ref comint-input-ring 0)))
@@ -3706,7 +3773,7 @@ Also with prefix arg, ask for the command. You can also use the command
"Save file and run it in IDL.
Runs `save-buffer' and sends a '.RUN' command for the associated file to IDL.
When called from the shell buffer, re-run the file which was last handled by
-one of the save-and-.. commands."
+one of the save-and-.. commands."
(interactive)
(idlwave-shell-save-and-action 'run))
@@ -3722,7 +3789,7 @@ one of the save-and-.. commands."
"Save file and batch it in IDL.
Runs `save-buffer' and sends a '@file' command for the associated file to IDL.
When called from the shell buffer, re-batch the file which was last handled by
-one of the save-and-.. commands."
+one of the save-and-.. commands."
(interactive)
(idlwave-shell-save-and-action 'batch))
@@ -3762,7 +3829,7 @@ handled by this command."
'idlwave-shell-maybe-update-routine-info
(if (idlwave-shell-hide-p 'run) 'mostly) nil t)
(idlwave-shell-bp-query))
- (let ((msg (format "No such file %s"
+ (let ((msg (format "No such file %s"
idlwave-shell-last-save-and-action-file)))
(setq idlwave-shell-last-save-and-action-file nil)
(error msg))))
@@ -3785,17 +3852,42 @@ Elements of the alist have the form:
(module name . (source-file-truename idlwave-internal-filename)).")
+(defun idlwave-shell-module-source-query (module)
+ "Determine the source file for a given module."
+ (if module
+ (idlwave-shell-send-command
+ (format "print,(routine_info('%s',/SOURCE)).PATH" module)
+ `(idlwave-shell-module-source-filter ,module)
+ 'hide)))
+
+(defun idlwave-shell-module-source-filter (module)
+ "Get module source, and update idlwave-shell-sources-alist."
+ (let ((old (assoc (upcase module) idlwave-shell-sources-alist))
+ filename)
+ (if (string-match "\.PATH *[\n\r]\\([^\r\n]+\\)[\n\r]"
+ idlwave-shell-command-output)
+ (setq filename (substring idlwave-shell-command-output
+ (match-beginning 1) (match-end 1)))
+ (error "No file matching module found."))
+ (if old
+ (setcdr old (list (idlwave-shell-file-name filename) filename))
+ (setq idlwave-shell-sources-alist
+ (append idlwave-shell-sources-alist
+ (list (cons (upcase module)
+ (list (idlwave-shell-file-name filename)
+ filename))))))))
+
(defun idlwave-shell-sources-query ()
- "Determine source files for IDL compiled procedures.
+ "Determine source files for all IDL compiled procedures.
Queries IDL using the string in `idlwave-shell-sources-query'."
-' (interactive)
+ (interactive)
(idlwave-shell-send-command idlwave-shell-sources-query
'idlwave-shell-sources-filter
'hide))
(defun idlwave-shell-sources-filter ()
"Get source files from `idlwave-shell-sources-query' output.
-Create `idlwave-shell-sources-alist' consisting of
+Create `idlwave-shell-sources-alist' consisting of
list elements of the form:
(module name . (source-file-truename idlwave-internal-filename))."
(save-excursion
@@ -3880,7 +3972,7 @@ list elements of the form:
(list
(save-match-data
(idlwave-shell-file-name
- (buffer-substring (match-beginning 1 )
+ (buffer-substring (match-beginning 1 )
(match-end 1))))
(string-to-number
(buffer-substring (match-beginning 2)
@@ -3947,13 +4039,13 @@ Otherwise, just expand the file name."
;; The mouse bindings for PRINT and HELP
(idlwave-shell-define-key-both
- (if (featurep 'xemacs)
- [(shift button2)]
+ (if (featurep 'xemacs)
+ [(shift button2)]
[(shift down-mouse-2)])
'idlwave-shell-mouse-print)
(idlwave-shell-define-key-both
- (if (featurep 'xemacs)
- [(control meta button2)]
+ (if (featurep 'xemacs)
+ [(control meta button2)]
[(control meta down-mouse-2)])
'idlwave-shell-mouse-help)
(idlwave-shell-define-key-both
@@ -3962,14 +4054,14 @@ Otherwise, just expand the file name."
[(control shift down-mouse-2)])
'idlwave-shell-examine-select)
;; Add this one from the idlwave-mode-map
-(define-key idlwave-shell-mode-map
+(define-key idlwave-shell-mode-map
(if (featurep 'xemacs)
[(shift button3)]
[(shift mouse-3)])
'idlwave-mouse-context-help)
;; For Emacs, we need to turn off the button release events.
-(defun idlwave-shell-mouse-nop (event)
+(defun idlwave-shell-mouse-nop (event)
(interactive "e"))
(unless (featurep 'xemacs)
(idlwave-shell-define-key-both
@@ -3979,7 +4071,7 @@ Otherwise, just expand the file name."
(idlwave-shell-define-key-both
[(control meta mouse-2)] 'idlwave-shell-mouse-nop))
-
+
;; The following set of bindings is used to bind the debugging keys.
;; If `idlwave-shell-activate-prefix-keybindings' is non-nil, the
;; first key in the list gets bound the C-c C-d prefix map. If
@@ -3988,10 +4080,10 @@ Otherwise, just expand the file name."
;; `idlwave-mode-map' and `idlwave-shell-mode-map'. The next list
;; item, if non-nil, means to bind this as a single key in the
;; electric-debug-mode-map.
-;;
+;;
;; [C-c C-d]-binding debug-modifier-key command bind-electric-debug buf-only
-;; Used keys: abcdef hijklmnopqrstuvwxyz
-;; Unused keys: g
+;; Used keys: abcdef hijklmnopqrstuvwxyz
+;; Unused keys: g
(let* ((specs
'(([(control ?b)] ?b idlwave-shell-break-here t t)
([(control ?i)] ?i idlwave-shell-break-in t t)
@@ -4041,10 +4133,10 @@ Otherwise, just expand the file name."
electric (nth 3 s)
only-buffer (nth 4 s)
cannotshift (and shift (char-valid-p c2) (eq c2 (upcase c2))))
-
+
;; The regular prefix keymap.
(when (and idlwave-shell-activate-prefix-keybindings k1)
- (unless only-buffer
+ (unless only-buffer
(define-key idlwave-shell-mode-prefix-map k1 cmd))
(define-key idlwave-mode-prefix-map k1 cmd))
;; The debug modifier map
@@ -4058,24 +4150,24 @@ Otherwise, just expand the file name."
(unless only-buffer (define-key idlwave-shell-mode-map k2 cmd))))
;; The electric debug single-keystroke map
(if (and electric (char-or-string-p c2))
- (define-key idlwave-shell-electric-debug-mode-map (char-to-string c2)
+ (define-key idlwave-shell-electric-debug-mode-map (char-to-string c2)
cmd))))
;; A few extras in the electric debug map
(define-key idlwave-shell-electric-debug-mode-map " " 'idlwave-shell-step)
(define-key idlwave-shell-electric-debug-mode-map "+" 'idlwave-shell-stack-up)
(define-key idlwave-shell-electric-debug-mode-map "=" 'idlwave-shell-stack-up)
-(define-key idlwave-shell-electric-debug-mode-map "-"
+(define-key idlwave-shell-electric-debug-mode-map "-"
'idlwave-shell-stack-down)
-(define-key idlwave-shell-electric-debug-mode-map "_"
+(define-key idlwave-shell-electric-debug-mode-map "_"
'idlwave-shell-stack-down)
(define-key idlwave-shell-electric-debug-mode-map "q" 'idlwave-shell-retall)
-(define-key idlwave-shell-electric-debug-mode-map "t"
+(define-key idlwave-shell-electric-debug-mode-map "t"
'(lambda () (interactive) (idlwave-shell-send-command "help,/TRACE")))
(define-key idlwave-shell-electric-debug-mode-map [(control ??)]
'idlwave-shell-electric-debug-help)
-(define-key idlwave-shell-electric-debug-mode-map "x"
- '(lambda (arg) (interactive "P")
+(define-key idlwave-shell-electric-debug-mode-map "x"
+ '(lambda (arg) (interactive "P")
(idlwave-shell-print arg nil nil t)))
@@ -4096,12 +4188,12 @@ Otherwise, just expand the file name."
(setq idlwave-shell-suppress-electric-debug nil))
(idlwave-shell-electric-debug-mode))
-(defvar idlwave-shell-electric-debug-read-only)
+(defvar idlwave-shell-electric-debug-read-only)
(defvar idlwave-shell-electric-debug-buffers nil)
(easy-mmode-define-minor-mode idlwave-shell-electric-debug-mode
"Toggle Electric Debug mode.
-With no argument, this command toggles the mode.
+With no argument, this command toggles the mode.
Non-null prefix argument turns on the mode.
Null prefix argument turns off the mode.
@@ -4111,7 +4203,7 @@ nil
" *Debugging*"
idlwave-shell-electric-debug-mode-map)
-(add-hook
+(add-hook
'idlwave-shell-electric-debug-mode-on-hook
(lambda ()
(set (make-local-variable 'idlwave-shell-electric-debug-read-only)
@@ -4119,13 +4211,13 @@ idlwave-shell-electric-debug-mode-map)
(setq buffer-read-only t)
(add-to-list 'idlwave-shell-electric-debug-buffers (current-buffer))
(if idlwave-shell-stop-line-overlay
- (overlay-put idlwave-shell-stop-line-overlay 'face
+ (overlay-put idlwave-shell-stop-line-overlay 'face
idlwave-shell-electric-stop-line-face))
(if (facep 'fringe)
(set-face-foreground 'fringe idlwave-shell-electric-stop-color
(selected-frame)))))
-(add-hook
+(add-hook
'idlwave-shell-electric-debug-mode-off-hook
(lambda ()
;; Return to previous read-only state
@@ -4134,7 +4226,7 @@ idlwave-shell-electric-debug-mode-map)
(setq idlwave-shell-electric-debug-buffers
(delq (current-buffer) idlwave-shell-electric-debug-buffers))
(if idlwave-shell-stop-line-overlay
- (overlay-put idlwave-shell-stop-line-overlay 'face
+ (overlay-put idlwave-shell-stop-line-overlay 'face
idlwave-shell-stop-line-face)
(if (facep 'fringe)
(set-face-foreground 'fringe (face-foreground 'default))))))
@@ -4148,6 +4240,7 @@ idlwave-shell-electric-debug-mode-map)
(force-mode-line-update))
;; Turn it off in all relevant buffers
+(defvar idlwave-shell-electric-debug-buffers nil)
(defun idlwave-shell-electric-debug-all-off ()
(setq idlwave-shell-suppress-electric-debug nil)
(let ((buffers idlwave-shell-electric-debug-buffers)
@@ -4165,7 +4258,7 @@ idlwave-shell-electric-debug-mode-map)
;; Show the help text
(defun idlwave-shell-electric-debug-help ()
(interactive)
- (with-output-to-temp-buffer "*IDLWAVE Electric Debug Help*"
+ (with-output-to-temp-buffer "*IDLWAVE Electric Debug Help*"
(princ idlwave-shell-electric-debug-help))
(let* ((current-window (selected-window))
(window (get-buffer-window "*IDLWAVE Electric Debug Help*"))
@@ -4180,7 +4273,7 @@ idlwave-shell-electric-debug-mode-map)
`("Debug"
["Electric Debug Mode"
idlwave-shell-electric-debug-mode
- :style toggle :selected idlwave-shell-electric-debug-mode
+ :style toggle :selected idlwave-shell-electric-debug-mode
:included (eq major-mode 'idlwave-mode) :keys "C-c C-d C-v"]
"--"
("Compile & Run"
@@ -4196,15 +4289,15 @@ idlwave-shell-electric-debug-mode-map)
"--"
["Goto Next Error" idlwave-shell-goto-next-error t]
"--"
- ["Compile and Run Region" idlwave-shell-run-region
+ ["Compile and Run Region" idlwave-shell-run-region
(eq major-mode 'idlwave-mode)]
- ["Evaluate Region" idlwave-shell-evaluate-region
+ ["Evaluate Region" idlwave-shell-evaluate-region
(eq major-mode 'idlwave-mode)]
"--"
["Execute Default Cmd" idlwave-shell-execute-default-command-line t]
["Edit Default Cmd" idlwave-shell-edit-default-command-line t])
("Breakpoints"
- ["Set Breakpoint" idlwave-shell-break-here
+ ["Set Breakpoint" idlwave-shell-break-here
:keys "C-c C-d C-c" :active (eq major-mode 'idlwave-mode)]
("Set Special Breakpoint"
["Set After Count Breakpoint"
@@ -4215,16 +4308,16 @@ idlwave-shell-electric-debug-mode-map)
["Set Condition Breakpoint"
(idlwave-shell-break-here '(4))
:active (eq major-mode 'idlwave-mode)])
- ["Break in Module" idlwave-shell-break-in
+ ["Break in Module" idlwave-shell-break-in
:keys "C-c C-d C-i" :active (eq major-mode 'idlwave-mode)]
["Break in this Module" idlwave-shell-break-this-module
:keys "C-c C-d C-j" :active (eq major-mode 'idlwave-mode)]
["Clear Breakpoint" idlwave-shell-clear-current-bp t]
["Clear All Breakpoints" idlwave-shell-clear-all-bp t]
["Disable/Enable Breakpoint" idlwave-shell-toggle-enable-current-bp t]
- ["Goto Previous Breakpoint" idlwave-shell-goto-previous-bp
+ ["Goto Previous Breakpoint" idlwave-shell-goto-previous-bp
:keys "C-c C-d [" :active (eq major-mode 'idlwave-mode)]
- ["Goto Next Breakpoint" idlwave-shell-goto-next-bp
+ ["Goto Next Breakpoint" idlwave-shell-goto-next-bp
:keys "C-c C-d ]" :active (eq major-mode 'idlwave-mode)]
["List All Breakpoints" idlwave-shell-list-all-bp t]
["Resync Breakpoints" idlwave-shell-bp-query t])
@@ -4256,38 +4349,38 @@ idlwave-shell-electric-debug-mode-map)
["Redisplay and Sync" idlwave-shell-redisplay t])
("Show Commands"
["Everything" (if (eq idlwave-shell-show-commands 'everything)
- (progn
+ (progn
(setq idlwave-shell-show-commands
(get 'idlwave-shell-show-commands 'last-val))
(put 'idlwave-shell-show-commands 'last-val nil))
- (put 'idlwave-shell-show-commands 'last-val
+ (put 'idlwave-shell-show-commands 'last-val
idlwave-shell-show-commands)
(setq idlwave-shell-show-commands 'everything))
:style toggle :selected (and (not (listp idlwave-shell-show-commands))
- (eq idlwave-shell-show-commands
+ (eq idlwave-shell-show-commands
'everything))]
"--"
["Compiling Commands" (idlwave-shell-add-or-remove-show 'run)
- :style toggle
- :selected (not (idlwave-shell-hide-p
+ :style toggle
+ :selected (not (idlwave-shell-hide-p
'run
(get 'idlwave-shell-show-commands 'last-val)))
:active (not (eq idlwave-shell-show-commands 'everything))]
["Breakpoint Commands" (idlwave-shell-add-or-remove-show 'breakpoint)
- :style toggle
- :selected (not (idlwave-shell-hide-p
+ :style toggle
+ :selected (not (idlwave-shell-hide-p
'breakpoint
(get 'idlwave-shell-show-commands 'last-val)))
:active (not (eq idlwave-shell-show-commands 'everything))]
["Debug Commands" (idlwave-shell-add-or-remove-show 'debug)
- :style toggle
- :selected (not (idlwave-shell-hide-p
+ :style toggle
+ :selected (not (idlwave-shell-hide-p
'debug
(get 'idlwave-shell-show-commands 'last-val)))
:active (not (eq idlwave-shell-show-commands 'everything))]
["Miscellaneous Commands" (idlwave-shell-add-or-remove-show 'misc)
- :style toggle
- :selected (not (idlwave-shell-hide-p
+ :style toggle
+ :selected (not (idlwave-shell-hide-p
'misc
(get 'idlwave-shell-show-commands 'last-val)))
:active (not (eq idlwave-shell-show-commands 'everything))])
@@ -4301,7 +4394,7 @@ idlwave-shell-electric-debug-mode-map)
:style toggle :selected idlwave-shell-use-input-mode-magic])
"--"
["Update Working Dir" idlwave-shell-resync-dirs t]
- ["Save Path Info"
+ ["Save Path Info"
(idlwave-shell-send-command idlwave-shell-path-query
'idlwave-shell-get-path-info
'hide)
@@ -4313,7 +4406,7 @@ idlwave-shell-electric-debug-mode-map)
(if (or (featurep 'easymenu) (load "easymenu" t))
(progn
- (easy-menu-define
+ (easy-menu-define
idlwave-mode-debug-menu idlwave-mode-map "IDL debugging menus"
idlwave-shell-menu-def)
(easy-menu-define
@@ -4333,7 +4426,7 @@ idlwave-shell-electric-debug-mode-map)
(defvar idlwave-shell-bp-glyph nil
"The glyphs to mark breakpoint lines in the source code.")
-(let ((image-alist
+(let ((image-alist
'((bp . "/* XPM */
static char * file[] = {
\"14 12 3 1\",
@@ -4466,7 +4559,7 @@ static char * file[] = {
\" .XXXX. \",
\" .... \",
\" \"};"))) im-cons im)
-
+
(while (setq im-cons (pop image-alist))
(setq im (cond ((and (featurep 'xemacs)
(featurep 'xpm))
@@ -4479,7 +4572,7 @@ static char * file[] = {
((and (not (featurep 'xemacs))
(fboundp 'image-type-available-p)
(image-type-available-p 'xpm))
- (list 'image :type 'xpm :data (cdr im-cons)
+ (list 'image :type 'xpm :data (cdr im-cons)
:ascent 'center))
(t nil)))
(if im (push (cons (car im-cons) im) idlwave-shell-bp-glyph))))
@@ -4489,7 +4582,7 @@ static char * file[] = {
;;; Load the toolbar when wanted by the user.
-(autoload 'idlwave-toolbar-toggle "idlw-toolbar"
+(autoload 'idlwave-toolbar-toggle "idlw-toolbar"
"Toggle the IDLWAVE toolbar")
(autoload 'idlwave-toolbar-add-everywhere "idlw-toolbar"
"Add IDLWAVE toolbar")
diff --git a/lisp/progmodes/idlw-toolbar.el b/lisp/progmodes/idlw-toolbar.el
index 48d1a24a091..8d4a8e1f025 100644
--- a/lisp/progmodes/idlw-toolbar.el
+++ b/lisp/progmodes/idlw-toolbar.el
@@ -1,9 +1,9 @@
;;; idlw-toolbar.el --- a debugging toolbar for IDLWAVE
-;; Copyright (c) 1999, 2000, 2001,2002 Free Software Foundation
+;; Copyright (c) 1999, 2000, 2001,2002,2004 Free Software Foundation
;; Author: Carsten Dominik <dominik@astro.uva.nl>
;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
-;; Version: 5.5
+;; Version: 5.7_22
;; Keywords: processes
;; This file is part of GNU Emacs.
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el
index 273c3296180..0f1ea571a85 100644
--- a/lisp/progmodes/idlwave.el
+++ b/lisp/progmodes/idlwave.el
@@ -1,12 +1,12 @@
;; idlwave.el --- IDL editing mode for GNU Emacs
;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005
-;; Free Software Foundation
+;; Free Software Foundation
;; Authors: J.D. Smith <jdsmith@as.arizona.edu>
;; Carsten Dominik <dominik@science.uva.nl>
;; Chris Chase <chase@att.com>
;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
-;; Version: 5.5
+;; Version: 5.7_22
;; Keywords: languages
;; This file is part of GNU Emacs.
@@ -23,11 +23,13 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
+;; IDLWAVE enables feature-rich development and interaction with IDL.
+
;; In the remotely distant past, based on pascal.el, though bears
;; little resemblance to it now.
;;
@@ -111,7 +113,7 @@
;; IDLWAVE support for the IDL-derived PV-WAVE CL language of Visual
;; Numerics, Inc. is growing less and less complete as the two
;; languages grow increasingly apart. The mode probably shouldn't
-;; even have "WAVE" in it's title, but it's catchy, and was required
+;; even have "WAVE" in its title, but it's catchy, and was required
;; to avoid conflict with the CORBA idl.el mode. Caveat WAVEor.
;;
;; Moving the point backwards in conjunction with abbrev expansion
@@ -159,6 +161,11 @@
(unless (fboundp 'char-valid-p)
(defalias 'char-valid-p 'characterp))
+(if (not (fboundp 'cancel-timer))
+ (condition-case nil
+ (require 'timer)
+ (error nil)))
+
(eval-and-compile
;; Kludge to allow `defcustom' for Emacs 19.
(condition-case () (require 'custom) (error nil))
@@ -170,7 +177,7 @@
`(defvar ,var ,value ,doc))))
(defgroup idlwave nil
- "Major mode for editing IDL .pro files"
+ "Major mode for editing IDL .pro files."
:tag "IDLWAVE"
:link '(url-link :tag "Home Page"
"http://idlwave.org")
@@ -1377,7 +1384,7 @@ Normally a space.")
"Character which is inserted as a last character on previous line by
\\[idlwave-split-line] to begin a continuation line. Normally $.")
-(defconst idlwave-mode-version "5.5")
+(defconst idlwave-mode-version "5.7_22")
(defmacro idlwave-keyword-abbrev (&rest args)
"Creates a function for abbrev hooks to call `idlwave-check-abbrev' with args."
@@ -1484,12 +1491,13 @@ Capitalize system variables - action only
;; Add action
(let* ((table (if select 'idlwave-indent-action-table
'idlwave-indent-expand-table))
- (cell (assoc key (eval table))))
+ (table-key (regexp-quote key))
+ (cell (assoc table-key (eval table))))
(if cell
;; Replace action command
(setcdr cell cmd)
;; New action
- (set table (append (eval table) (list (cons key cmd)))))))
+ (set table (append (eval table) (list (cons table-key cmd)))))))
;; Make key binding for action
(if (or (and (null select) (= (length key) 1))
(equal select 'noaction)
@@ -1516,7 +1524,7 @@ Capitalize system variables - action only
(define-key idlwave-mode-map "\C-c{" 'idlwave-beginning-of-block)
(define-key idlwave-mode-map "\C-c}" 'idlwave-end-of-block)
(define-key idlwave-mode-map "\C-c]" 'idlwave-close-block)
-(define-key idlwave-mode-map "\M-\C-h" 'idlwave-mark-subprogram)
+(define-key idlwave-mode-map [(meta control h)] 'idlwave-mark-subprogram)
(define-key idlwave-mode-map "\M-\C-n" 'idlwave-forward-block)
(define-key idlwave-mode-map "\M-\C-p" 'idlwave-backward-block)
(define-key idlwave-mode-map "\M-\C-d" 'idlwave-down-block)
@@ -1575,6 +1583,7 @@ Capitalize system variables - action only
(autoload 'idlwave-shell-run-region "idlw-shell"
"Compile and run the region." t)
(define-key idlwave-mode-map "\C-c\C-v" 'idlwave-find-module)
+(define-key idlwave-mode-map "\C-c\C-t" 'idlwave-find-module-this-file)
(define-key idlwave-mode-map "\C-c?" 'idlwave-routine-info)
(define-key idlwave-mode-map "\M-?" 'idlwave-context-help)
(define-key idlwave-mode-map [(control meta ?\?)] 'idlwave-online-help)
@@ -1702,6 +1711,8 @@ idlwave-mode-abbrev-table unless TABLE is non-nil."
(idlwave-define-abbrev "s" "size()" (idlwave-keyword-abbrev 1))
(idlwave-define-abbrev "wi" "widget_info()" (idlwave-keyword-abbrev 1))
(idlwave-define-abbrev "wc" "widget_control," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "pv" "ptr_valid()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "ipv" "if ptr_valid() then" (idlwave-keyword-abbrev 6))
;; This section is reserved words only. (From IDL user manual)
;;
@@ -1756,7 +1767,7 @@ idlwave-mode-abbrev-table unless TABLE is non-nil."
;;;###autoload
(defun idlwave-mode ()
- "Major mode for editing IDL source files (version 5.5).
+ "Major mode for editing IDL source files (version 5.7_22).
The main features of this mode are
@@ -1935,15 +1946,10 @@ The main features of this mode are
'idlwave-prev-index-position)
;; Make a local post-command-hook and add our hook to it
- ;; NB: `make-local-hook' needed for older/alternative Emacs compatibility
- (make-local-hook 'post-command-hook)
(add-hook 'post-command-hook 'idlwave-command-hook nil 'local)
;; Make local hooks for buffer updates
- ;; NB: `make-local-hook' needed for older/alternative Emacs compatibility
- (make-local-hook 'kill-buffer-hook)
(add-hook 'kill-buffer-hook 'idlwave-kill-buffer-update nil 'local)
- (make-local-hook 'after-save-hook)
(add-hook 'after-save-hook 'idlwave-save-buffer-update nil 'local)
(add-hook 'after-save-hook 'idlwave-revoke-license-to-kill nil 'local)
@@ -2696,7 +2702,7 @@ See `idlwave-surround'."
(re-search-backward "\\(#\\)\\=" nil t))
(setq len (1+ (length (match-string 1))))
(when (re-search-backward an-ops nil t)
- (setq begin nil) ; won't modify begin
+ ;(setq begin nil) ; won't modify begin
(setq len (1+ (length (match-string 1))))))))
(if (eq t idlwave-pad-keyword)
@@ -4267,7 +4273,9 @@ This defines the function `idlwave-sintern-TAG' and the variable
(defvar idlwave-user-catalog-routines nil
"Holds the procedure routine-info from the user scan.")
(defvar idlwave-library-catalog-routines nil
- "Holds the procedure routine-info from the library catalog files.")
+ "Holds the procedure routine-info from the .idlwave_catalog library files.")
+(defvar idlwave-library-catalog-libname nil
+ "Name of library catalog loaded from .idlwave_catalog files.")
(defvar idlwave-path-alist nil
"Alist with !PATH directories and zero or more flags if the dir has
been scanned in a user catalog ('user) or discovered in a library
@@ -4384,6 +4392,8 @@ will re-read the catalog."
(defvar idlwave-load-rinfo-idle-timer)
+(defvar idlwave-shell-path-query)
+
(defun idlwave-update-routine-info (&optional arg no-concatenate)
"Update the internal routine-info lists.
These lists are used by `idlwave-routine-info' (\\[idlwave-routine-info])
@@ -4508,6 +4518,8 @@ information updated immediately, leave NO-CONCATENATE nil."
nil 'idlwave-load-rinfo-next-step)))
(error nil))))
+(defvar idlwave-library-routines nil "Obsolete variable.")
+
(defun idlwave-load-rinfo-next-step ()
(let ((inhibit-quit t)
(arr idlwave-load-rinfo-steps-done))
@@ -4816,12 +4828,15 @@ information updated immediately, leave NO-CONCATENATE nil."
(defun idlwave-sys-dir ()
"Return the syslib directory, or a dummy that never matches."
- (if (string= idlwave-system-directory "")
- "@@@@@@@@"
- idlwave-system-directory))
+ (cond
+ ((and idlwave-system-directory
+ (not (string= idlwave-system-directory "")))
+ idlwave-system-directory)
+ ((getenv "IDL_DIR"))
+ (t "@@@@@@@@")))
+
-(defvar idlwave-shell-path-query)
(defun idlwave-create-user-catalog-file (&optional arg)
"Scan all files on selected dirs of IDL search path for routine information.
@@ -5140,6 +5155,9 @@ directories and save the routine info.
;;----- Scanning the library catalogs ------------------
+
+
+
(defun idlwave-scan-library-catalogs (&optional message-base no-load)
"Scan for library catalog files (.idlwave_catalog) and ingest.
@@ -5488,13 +5506,15 @@ When we force a method or a method keyword, CLASS can specify the class."
(isa (format "procedure%s-keyword" (if class "-method" "")))
(entry (idlwave-best-rinfo-assq
name 'pro class (idlwave-routines)))
+ (system (if entry (eq (car (nth 3 entry)) 'system)))
(list (idlwave-entry-keywords entry 'do-link)))
(unless (or entry (eq class t))
(error "Nothing known about procedure %s"
(idlwave-make-full-name class name)))
- (setq list (idlwave-fix-keywords name 'pro class list super-classes))
+ (setq list (idlwave-fix-keywords name 'pro class list
+ super-classes system))
(unless list (error "No keywords available for procedure %s"
- (idlwave-make-full-name class name)))
+ (idlwave-make-full-name class name)))
(setq idlwave-completion-help-info
(list 'keyword name type-selector class-selector entry super-classes))
(idlwave-complete-in-buffer
@@ -5519,12 +5539,14 @@ When we force a method or a method keyword, CLASS can specify the class."
(isa (format "function%s-keyword" (if class "-method" "")))
(entry (idlwave-best-rinfo-assq
name 'fun class (idlwave-routines)))
+ (system (if entry (eq (car (nth 3 entry)) 'system)))
(list (idlwave-entry-keywords entry 'do-link))
msg-name)
(unless (or entry (eq class t))
(error "Nothing known about function %s"
(idlwave-make-full-name class name)))
- (setq list (idlwave-fix-keywords name 'fun class list super-classes))
+ (setq list (idlwave-fix-keywords name 'fun class list
+ super-classes system))
;; OBJ_NEW: Messages mention the proper Init method
(setq msg-name (if (and (null class)
(string= (upcase name) "OBJ_NEW"))
@@ -5532,7 +5554,7 @@ When we force a method or a method keyword, CLASS can specify the class."
"::Init (via OBJ_NEW)")
(idlwave-make-full-name class name)))
(unless list (error "No keywords available for function %s"
- msg-name))
+ msg-name))
(setq idlwave-completion-help-info
(list 'keyword name type-selector class-selector nil super-classes))
(idlwave-complete-in-buffer
@@ -6155,7 +6177,7 @@ This function is not general, can only be used for completion stuff."
((memq (preceding-char) '(?\; ?\$)) (throw 'exit nil))
((eq (preceding-char) ?\n)
(beginning-of-line 0)
- (if (looking-at "\\([^;\n]*\\)\\$[ \t]*\\(;[^\n]*\\)?\n")
+ (if (looking-at "\\([^\n]*\\)\\$[ \t]*\\(;[^\n]*\\)?\n")
;; continuation line
(goto-char (match-end 1))
(throw 'exit nil)))
@@ -7159,6 +7181,7 @@ Gets set in `idlw-rinfo.el'.")
t)) ; return t to skip other completions
(t nil))))
+(defvar link) ;dynamic
(defun idlwave-complete-sysvar-help (mode word)
(let ((word (or (nth 1 idlwave-completion-help-info) word))
(entry (assoc word idlwave-system-variables-alist)))
@@ -7462,6 +7485,10 @@ With ARG, enforce query for the class of object methods."
'(idlwave-update-routine-info)
nil t))))))
+(defun idlwave-find-module-this-file ()
+ (interactive)
+ (idlwave-find-module '(4)))
+
(defun idlwave-find-module (&optional arg)
"Find the source code of an IDL module.
Works for modules for which IDLWAVE has routine info available. The
@@ -7662,10 +7689,12 @@ appropriate Init method."
(idlwave-sintern-class class)))))
module))
-(defun idlwave-fix-keywords (name type class keywords &optional super-classes)
+(defun idlwave-fix-keywords (name type class keywords
+ &optional super-classes system)
"Update a list of keywords.
Translate OBJ_NEW, adding all super-class keywords, or all keywords
-from all classes if class equals t."
+from all classes if class equals t. If SYSTEM is non-nil, don't
+demand _EXTRA in the keyword list."
(let ((case-fold-search t))
;; If this is the OBJ_NEW function, try to figure out the class and use
@@ -7708,8 +7737,10 @@ from all classes if class equals t."
super-classes
idlwave-keyword-class-inheritance
(stringp class)
- (or (assq (idlwave-sintern-keyword "_extra") keywords)
- (assq (idlwave-sintern-keyword "_ref_extra") keywords))
+ (or
+ system
+ (assq (idlwave-sintern-keyword "_extra") keywords)
+ (assq (idlwave-sintern-keyword "_ref_extra") keywords))
;; Check if one of the keyword-class regexps matches the name
(let ((regexps idlwave-keyword-class-inheritance) re)
(catch 'exit
@@ -8048,7 +8079,8 @@ Optional args RIGHT and SHIFT indicate, if mouse-3 was used, and if SHIFT
was pressed."
(interactive "e")
(if ev (mouse-set-point ev))
- (let (data id name type class buf bufwin source word initial-class)
+ (let (data id name type class buf bufwin source link keyword
+ word initial-class)
(setq data (get-text-property (point) 'data)
source (get-text-property (point) 'source)
keyword (get-text-property (point) 'keyword)
@@ -8333,7 +8365,6 @@ routines, and may have been scanned."
(setcar entry 'builtin))
(sort alist 'idlwave-routine-twin-compare)))
-(defvar name)
(defvar type)
(defvar class)
(defvar idlwave-sort-prefer-buffer-info t
diff --git a/lisp/progmodes/inf-lisp.el b/lisp/progmodes/inf-lisp.el
index df7f5b25526..5bf7d1b70a6 100644
--- a/lisp/progmodes/inf-lisp.el
+++ b/lisp/progmodes/inf-lisp.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/ld-script.el b/lisp/progmodes/ld-script.el
index ef24604ba7b..e326d11c65d 100644
--- a/lisp/progmodes/ld-script.el
+++ b/lisp/progmodes/ld-script.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/m4-mode.el b/lisp/progmodes/m4-mode.el
index 5becd22f6eb..3ad3c1de421 100644
--- a/lisp/progmodes/m4-mode.el
+++ b/lisp/progmodes/m4-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el
index e53b08b8c14..04f83a4d530 100644
--- a/lisp/progmodes/make-mode.el
+++ b/lisp/progmodes/make-mode.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/mantemp.el b/lisp/progmodes/mantemp.el
index 371fb3972f5..83caccbe0f5 100644
--- a/lisp/progmodes/mantemp.el
+++ b/lisp/progmodes/mantemp.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/meta-mode.el b/lisp/progmodes/meta-mode.el
index 3d77de8f182..f89fd8c7fad 100644
--- a/lisp/progmodes/meta-mode.el
+++ b/lisp/progmodes/meta-mode.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/mixal-mode.el b/lisp/progmodes/mixal-mode.el
index 1fbbabcf67e..73b87bbfa43 100644
--- a/lisp/progmodes/mixal-mode.el
+++ b/lisp/progmodes/mixal-mode.el
@@ -14,8 +14,8 @@
;; You should have received a copy of the GNU General Public
;; License along with this program; if not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-;; MA 02111-1307 USA
+;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+;; MA 02110-1301 USA
;; Author: Pieter E.J. Pareit <pieter.pareit@skynet.be>
;; Maintainer: Pieter E.J. Pareit <pieter.pareit@skynet.be>
diff --git a/lisp/progmodes/octave-hlp.el b/lisp/progmodes/octave-hlp.el
index dce561e8413..38e1bcfd617 100644
--- a/lisp/progmodes/octave-hlp.el
+++ b/lisp/progmodes/octave-hlp.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/octave-inf.el b/lisp/progmodes/octave-inf.el
index a45976eef32..4cd8bc764fd 100644
--- a/lisp/progmodes/octave-inf.el
+++ b/lisp/progmodes/octave-inf.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/octave-mod.el b/lisp/progmodes/octave-mod.el
index 35d5bd897c9..2053dd8f9c2 100644
--- a/lisp/progmodes/octave-mod.el
+++ b/lisp/progmodes/octave-mod.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/pascal.el b/lisp/progmodes/pascal.el
index e4d36244537..ebe37bc1d46 100644
--- a/lisp/progmodes/pascal.el
+++ b/lisp/progmodes/pascal.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -61,7 +61,7 @@
;;; Code:
(defgroup pascal nil
- "Major mode for editing Pascal source in Emacs"
+ "Major mode for editing Pascal source in Emacs."
:group 'languages)
(defvar pascal-mode-abbrev-table nil
diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el
index f2576ad94db..57fdb423cc1 100644
--- a/lisp/progmodes/perl-mode.el
+++ b/lisp/progmodes/perl-mode.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/prolog.el b/lisp/progmodes/prolog.el
index 73450dec61a..8d34dd54b3f 100644
--- a/lisp/progmodes/prolog.el
+++ b/lisp/progmodes/prolog.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -31,7 +31,7 @@
;;; Code:
(defgroup prolog nil
- "Major mode for editing and running Prolog under Emacs"
+ "Major mode for editing and running Prolog under Emacs."
:group 'languages)
@@ -56,8 +56,8 @@
:group 'prolog)
(defcustom prolog-eof-string "end_of_file.\n"
- "*String that represents end of file for prolog.
-nil means send actual operating system end of file."
+ "*String that represents end of file for Prolog.
+When nil, send actual operating system end of file."
:type 'string
:group 'prolog)
@@ -158,7 +158,7 @@ rigidly along with this one (not yet)."
))
(defun prolog-indent-level ()
- "Compute prolog indentation level."
+ "Compute Prolog indentation level."
(save-excursion
(beginning-of-line)
(skip-chars-forward " \t")
diff --git a/lisp/progmodes/ps-mode.el b/lisp/progmodes/ps-mode.el
index 5a4d8eb4915..1a5d393df31 100644
--- a/lisp/progmodes/ps-mode.el
+++ b/lisp/progmodes/ps-mode.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 70ea8b4bac6..f5431431902 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -70,7 +70,7 @@
(autoload 'compilation-start "compile")
(defgroup python nil
- "Silly walks in the Python language"
+ "Silly walks in the Python language."
:group 'languages
:version "22.1"
:link '(emacs-commentary-link "python"))
@@ -1067,7 +1067,7 @@ For running multiple processes in multiple buffers, see `python-buffer'.
;; Still required by `comint-redirect-send-command', for instance
;; (and we need to match things like `>>> ... >>> '):
(set (make-local-variable 'comint-prompt-regexp)
- (rx (and line-start (1+ (and (repeat 3 (any ">.")) ?\ )))))
+ (rx (and line-start (1+ (and (repeat 3 (any ">.")) ?\s)))))
(set (make-local-variable 'compilation-error-regexp-alist)
python-compilation-regexp-alist)
(compilation-shell-minor-mode 1))
diff --git a/lisp/progmodes/scheme.el b/lisp/progmodes/scheme.el
index c792b59ad87..3f31f4e2667 100644
--- a/lisp/progmodes/scheme.el
+++ b/lisp/progmodes/scheme.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -82,7 +82,7 @@
(modify-syntax-entry ?\n "> " st)
(modify-syntax-entry ?\f " " st)
(modify-syntax-entry ?\r " " st)
- (modify-syntax-entry ? " " st)
+ (modify-syntax-entry ?\s " " st)
;; These characters are delimiters but otherwise undefined.
;; Brackets and braces balance for editing convenience.
@@ -228,7 +228,7 @@ if that value is non-nil."
(run-mode-hooks 'scheme-mode-hook))
(defgroup scheme nil
- "Editing Scheme code"
+ "Editing Scheme code."
:group 'lisp)
(defcustom scheme-mit-dialect t
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index fa6b25b9a63..b561579b06d 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -202,12 +202,12 @@
(defgroup sh nil
- "Shell programming utilities"
+ "Shell programming utilities."
:group 'unix
:group 'languages)
(defgroup sh-script nil
- "Shell script mode"
+ "Shell script mode."
:group 'sh
:prefix "sh-")
@@ -2370,7 +2370,7 @@ If AND-MOVE is non-nil then move to end of word."
(goto-char where))
(prog1
(buffer-substring (point)
- (progn (skip-chars-forward "^ \t\n;")(point)))
+ (progn (skip-chars-forward "^ \t\n;&")(point)))
(unless and-move
(goto-char start)))))
@@ -3535,7 +3535,7 @@ The document is bounded by `sh-here-document-word'."
(delim (replace-regexp-in-string "['\"]" ""
sh-here-document-word)))
(insert sh-here-document-word)
- (or (eolp) (looking-at "[ \t]") (insert ? ))
+ (or (eolp) (looking-at "[ \t]") (insert ?\s))
(end-of-line 1)
(while
(sh-quoted-p)
diff --git a/lisp/progmodes/simula.el b/lisp/progmodes/simula.el
index b9097536bfe..46bdb493348 100644
--- a/lisp/progmodes/simula.el
+++ b/lisp/progmodes/simula.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/sql.el b/lisp/progmodes/sql.el
index 9b819ceae00..cbb33739c3e 100644
--- a/lisp/progmodes/sql.el
+++ b/lisp/progmodes/sql.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -221,7 +221,7 @@
;;; Allow customization
(defgroup SQL nil
- "Running a SQL interpreter from within Emacs buffers"
+ "Running a SQL interpreter from within Emacs buffers."
:version "20.4"
:group 'processes)
@@ -2077,7 +2077,7 @@ Inserts SELECT or commas if appropriate."
(insert ", "))
;; else insert a space
(t
- (if (eq (preceding-char) ? )
+ (if (eq (preceding-char) ?\s)
nil
(insert " ")))))
;; in any case, insert the column
diff --git a/lisp/progmodes/tcl.el b/lisp/progmodes/tcl.el
index a3447befa20..e2068607048 100644
--- a/lisp/progmodes/tcl.el
+++ b/lisp/progmodes/tcl.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; BEFORE USE:
;;
@@ -118,7 +118,7 @@
;;
(defgroup tcl nil
- "Major mode for editing Tcl source in Emacs"
+ "Major mode for editing Tcl source in Emacs."
:group 'languages)
(defcustom tcl-indent-level 4
@@ -1489,7 +1489,7 @@ styles."
(unless (or (bolp) (tcl-real-command-p))
(insert ";")
;; Try and erase a non-significant char to keep charpos identical.
- (if (memq (char-after) '(?\t ?\ )) (delete-char 1))))
+ (if (memq (char-after) '(?\t ?\s)) (delete-char 1))))
(funcall (default-value 'comment-indent-function)))
;; The following was inspired by the Tcl editing mode written by
@@ -1533,7 +1533,7 @@ The first line is assumed to look like \"#!.../program ...\"."
(defun tcl-quote (string)
"Quote STRING according to Tcl rules."
(mapconcat (lambda (char)
- (if (memq char '(?[ ?] ?{ ?} ?\\ ?\" ?$ ? ?\;))
+ (if (memq char '(?[ ?] ?{ ?} ?\\ ?\" ?$ ?\s ?\;))
(concat "\\" (char-to-string char))
(char-to-string char)))
string ""))
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el
index 54e7ab8a049..0e4b13647d8 100644
--- a/lisp/progmodes/vhdl-mode.el
+++ b/lisp/progmodes/vhdl-mode.el
@@ -28,8 +28,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Commentary:
@@ -1133,7 +1133,7 @@ If TO STRING is empty, the instance name is queried."
(defgroup vhdl-testbench nil
- "Customizations for testbench generation ."
+ "Customizations for testbench generation."
:group 'vhdl-port)
(defcustom vhdl-testbench-entity-name '(".*" . "\\&_tb")
diff --git a/lisp/progmodes/which-func.el b/lisp/progmodes/which-func.el
index a96bd076e12..059218942ad 100644
--- a/lisp/progmodes/which-func.el
+++ b/lisp/progmodes/which-func.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/progmodes/xscheme.el b/lisp/progmodes/xscheme.el
index 8ee791affe1..0075dac1d07 100644
--- a/lisp/progmodes/xscheme.el
+++ b/lisp/progmodes/xscheme.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ps-bdf.el b/lisp/ps-bdf.el
index c0339504105..97356b01029 100644
--- a/lisp/ps-bdf.el
+++ b/lisp/ps-bdf.el
@@ -25,8 +25,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ps-mule.el b/lisp/ps-mule.el
index 65106948b67..9138c7eb115 100644
--- a/lisp/ps-mule.el
+++ b/lisp/ps-mule.el
@@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ps-print.el b/lisp/ps-print.el
index 6252187724a..98d65d6a653 100644
--- a/lisp/ps-print.el
+++ b/lisp/ps-print.el
@@ -38,7 +38,7 @@ Please send all bug fixes and enhancements to
;; You should have received a copy of the GNU General Public License along with
;; GNU Emacs; see the file COPYING. If not, write to the Free Software
-;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -1562,13 +1562,13 @@ Please send all bug fixes and enhancements to
;;; Interface to the command system
(defgroup postscript nil
- "PostScript Group"
+ "PostScript Group."
:tag "PostScript"
:version "20"
:group 'emacs)
(defgroup ps-print nil
- "PostScript generator for Emacs"
+ "PostScript generator for Emacs."
:link '(emacs-library-link :tag "Source Lisp File" "ps-print.el")
:prefix "ps-"
:version "20"
@@ -1576,42 +1576,42 @@ Please send all bug fixes and enhancements to
:group 'postscript)
(defgroup ps-print-horizontal nil
- "Horizontal page layout"
+ "Horizontal page layout."
:prefix "ps-"
:tag "Horizontal"
:version "20"
:group 'ps-print)
(defgroup ps-print-vertical nil
- "Vertical page layout"
+ "Vertical page layout."
:prefix "ps-"
:tag "Vertical"
:version "20"
:group 'ps-print)
(defgroup ps-print-headers nil
- "Headers & footers layout"
+ "Headers & footers layout."
:prefix "ps-"
:tag "Header & Footer"
:version "20"
:group 'ps-print)
(defgroup ps-print-font nil
- "Fonts customization"
+ "Fonts customization."
:prefix "ps-"
:tag "Font"
:version "20"
:group 'ps-print)
(defgroup ps-print-color nil
- "Color customization"
+ "Color customization."
:prefix "ps-"
:tag "Color"
:version "20"
:group 'ps-print)
(defgroup ps-print-face nil
- "Faces customization"
+ "Faces customization."
:prefix "ps-"
:tag "PS Faces"
:version "20"
@@ -1619,42 +1619,42 @@ Please send all bug fixes and enhancements to
:group 'faces)
(defgroup ps-print-n-up nil
- "N-up customization"
+ "N-up customization."
:prefix "ps-"
:tag "N-Up"
:version "20"
:group 'ps-print)
(defgroup ps-print-zebra nil
- "Zebra customization"
+ "Zebra customization."
:prefix "ps-"
:tag "Zebra"
:version "20"
:group 'ps-print)
(defgroup ps-print-background nil
- "Background customization"
+ "Background customization."
:prefix "ps-"
:tag "Background"
:version "20"
:group 'ps-print)
(defgroup ps-print-printer '((lpr custom-group))
- "Printer customization"
+ "Printer customization."
:prefix "ps-"
:tag "Printer"
:version "20"
:group 'ps-print)
(defgroup ps-print-page nil
- "Page customization"
+ "Page customization."
:prefix "ps-"
:tag "Page"
:version "20"
:group 'ps-print)
(defgroup ps-print-miscellany nil
- "Miscellany customization"
+ "Miscellany customization."
:prefix "ps-"
:tag "Miscellany"
:version "20"
@@ -3760,7 +3760,7 @@ If `ps-prefix-quote' is nil, it's set to t after generating string."
"(setq ")
key
(if (> col len)
- (make-string (- col len) ?\ )
+ (make-string (- col len) ?\s)
" ")
(ps-value-string val))))
(t "")
diff --git a/lisp/recentf.el b/lisp/recentf.el
index 64af3b1da3f..57280a7b4bc 100644
--- a/lisp/recentf.el
+++ b/lisp/recentf.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/rect.el b/lisp/rect.el
index e53198bc753..08b601c050e 100644
--- a/lisp/rect.el
+++ b/lisp/rect.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/register.el b/lisp/register.el
index eaa53446c56..4789047b0af 100644
--- a/lisp/register.el
+++ b/lisp/register.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/repeat.el b/lisp/repeat.el
index 5f0811d355c..b1b8cc40aa8 100644
--- a/lisp/repeat.el
+++ b/lisp/repeat.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/replace.el b/lisp/replace.el
index 0b19d72178f..4b745d54433 100644
--- a/lisp/replace.el
+++ b/lisp/replace.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -719,7 +719,7 @@ See `occur-revert-function'.")
:group 'matching)
(defcustom occur-hook nil
- "Hook run when `occur' is called."
+ "Hook run by Occur when there are any matches."
:type 'hook
:group 'matching)
@@ -926,7 +926,7 @@ If the value is nil, don't highlight the buffer names specially."
Here `original-buffer-name' is the buffer name were occur was originally run.
When given the prefix argument, the renaming will not clobber the existing
buffer(s) of that name, but use `generate-new-buffer-name' instead.
-You can add this to `occur-hook' if you always want a separate *Occur*
+You can add this to `occur-mode-hook' if you always want a separate *Occur*
buffer for each buffer where you invoke `occur'."
(interactive "P")
(with-current-buffer
@@ -1042,14 +1042,13 @@ See also `multi-occur'."
(if (= count 1) "" "es")
regexp))
(setq occur-revert-arguments (list regexp nlines bufs))
- (if (> count 0)
- (progn
- (display-buffer occur-buf)
- (setq next-error-last-buffer occur-buf))
- (kill-buffer occur-buf)))
- (setq buffer-read-only t)
- (set-buffer-modified-p nil)
- (run-hooks 'occur-hook)))))
+ (if (= count 0)
+ (kill-buffer occur-buf)
+ (display-buffer occur-buf)
+ (setq next-error-last-buffer occur-buf)
+ (setq buffer-read-only t)
+ (set-buffer-modified-p nil)
+ (run-hooks 'occur-hook)))))))
(defun occur-engine-add-prefix (lines)
(mapcar
diff --git a/lisp/reposition.el b/lisp/reposition.el
index 8dc752c2357..41283ce251a 100644
--- a/lisp/reposition.el
+++ b/lisp/reposition.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/resume.el b/lisp/resume.el
index 4a131034e51..db21a4bab4c 100644
--- a/lisp/resume.el
+++ b/lisp/resume.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/reveal.el b/lisp/reveal.el
index c08f9b604cb..402fa7c4f49 100644
--- a/lisp/reveal.el
+++ b/lisp/reveal.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/rfn-eshadow.el b/lisp/rfn-eshadow.el
index 84731115d1a..5c7865d864f 100644
--- a/lisp/rfn-eshadow.el
+++ b/lisp/rfn-eshadow.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/rot13.el b/lisp/rot13.el
index bcf4252d142..99b34ef9d17 100644
--- a/lisp/rot13.el
+++ b/lisp/rot13.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ruler-mode.el b/lisp/ruler-mode.el
index b235ca70ad7..c26c5efb98b 100644
--- a/lisp/ruler-mode.el
+++ b/lisp/ruler-mode.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/s-region.el b/lisp/s-region.el
index 4153174ee24..d3fa6b1f307 100644
--- a/lisp/s-region.el
+++ b/lisp/s-region.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/saveplace.el b/lisp/saveplace.el
index 34c88a89948..afb10ede9d5 100644
--- a/lisp/saveplace.el
+++ b/lisp/saveplace.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/scroll-all.el b/lisp/scroll-all.el
index 287ed3ba472..2c0636d69d2 100644
--- a/lisp/scroll-all.el
+++ b/lisp/scroll-all.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;; This mode allows multiple buffers to be 'locked' so that scrolling
diff --git a/lisp/scroll-bar.el b/lisp/scroll-bar.el
index 2d2921e9fc9..64429ba4da5 100644
--- a/lisp/scroll-bar.el
+++ b/lisp/scroll-bar.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/select.el b/lisp/select.el
index 565ddd7d22e..46f9fd7fab3 100644
--- a/lisp/select.el
+++ b/lisp/select.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/server.el b/lisp/server.el
index 0a5fc942206..73878d8435b 100644
--- a/lisp/server.el
+++ b/lisp/server.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/ses.el b/lisp/ses.el
index 09f7809752b..f7de1ddb50a 100644
--- a/lisp/ses.el
+++ b/lisp/ses.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -49,7 +49,7 @@
;;----------------------------------------------------------------------------
(defgroup ses nil
- "Simple Emacs Spreadsheet"
+ "Simple Emacs Spreadsheet."
:group 'applications
:prefix "ses-"
:version "21.1")
@@ -376,7 +376,7 @@ macro to prevent propagate-on-load viruses."
;;print area (excluding the terminating newline)
(setq ses--col-widths widths
ses--linewidth (apply '+ -1 (mapcar '1+ widths))
- ses--blank-line (concat (make-string ses--linewidth ? ) "\n"))
+ ses--blank-line (concat (make-string ses--linewidth ?\s) "\n"))
t)
(defmacro ses-column-printers (printers)
@@ -798,7 +798,7 @@ preceding cell has spilled over."
(cond
((< len width)
;;Fill field to length with spaces
- (setq len (make-string (- width len) ? )
+ (setq len (make-string (- width len) ?\s)
text (if (eq ses-call-printer-return t)
(concat text len)
(concat len text))))
@@ -816,7 +816,7 @@ preceding cell has spilled over."
maxcol (1+ maxcol)))
(if (<= len maxwidth)
;;Fill to complete width of all the fields spanned
- (setq text (concat text (make-string (- maxwidth len) ? )))
+ (setq text (concat text (make-string (- maxwidth len) ?\s)))
;;Not enough room to end of line or next non-nil field. Truncate
;;if string or decimal; otherwise fill with error indicator
(setq sig `(error "Too wide" ,text))
@@ -906,12 +906,12 @@ printer signaled one (and \"%s\" is used as the default printer), else nil."
COL=NUMCOLS. Deletes characters if CHANGE < 0. Caller should bind
inhibit-quit to t."
(let ((inhibit-read-only t)
- (blank (if (> change 0) (make-string change ? )))
+ (blank (if (> change 0) (make-string change ?\s)))
(at-end (= col ses--numcols)))
(ses-set-with-undo 'ses--linewidth (+ ses--linewidth change))
;;ses-set-with-undo always returns t for strings.
(1value (ses-set-with-undo 'ses--blank-line
- (concat (make-string ses--linewidth ? ) "\n")))
+ (concat (make-string ses--linewidth ?\s) "\n")))
(dotimes (row ses--numrows)
(ses-goto-print row col)
(when at-end
@@ -2901,7 +2901,7 @@ columns to include in width (default = 0)."
(let ((printer (or (ses-col-printer col) ses--default-printer))
(width (ses-col-width col))
half)
- (or fill (setq fill ? ))
+ (or fill (setq fill ?\s))
(or span (setq span 0))
(setq value (ses-call-printer printer value))
(dotimes (x span)
diff --git a/lisp/shadowfile.el b/lisp/shadowfile.el
index 653c1e7f042..2e5943db0f5 100644
--- a/lisp/shadowfile.el
+++ b/lisp/shadowfile.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/shell.el b/lisp/shell.el
index 7a9f261859d..2684ee30a65 100644
--- a/lisp/shell.el
+++ b/lisp/shell.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -108,16 +108,16 @@
;;; Customization and Buffer Variables
(defgroup shell nil
- "Running shell from within Emacs buffers"
+ "Running shell from within Emacs buffers."
:group 'processes
:group 'unix)
(defgroup shell-directories nil
- "Directory support in shell mode"
+ "Directory support in shell mode."
:group 'shell)
(defgroup shell-faces nil
- "Faces in shell buffers"
+ "Faces in shell buffers."
:group 'shell)
;;;###autoload
@@ -178,7 +178,7 @@ This is a fine thing to set in your `.emacs' file.")
(defvar shell-file-name-quote-list
(if (memq system-type '(ms-dos windows-nt))
nil
- (append shell-delimiter-argument-list '(?\ ?\* ?\! ?\" ?\' ?\` ?\# ?\\)))
+ (append shell-delimiter-argument-list '(?\s ?\* ?\! ?\" ?\' ?\` ?\# ?\\)))
"List of characters to quote when in a file name.
This variable is used to initialize `comint-file-name-quote-list' in the
shell buffer. The value may depend on the operating system or shell.
diff --git a/lisp/simple.el b/lisp/simple.el
index 3f9b4788373..3536253e120 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -4538,22 +4538,29 @@ With a prefix argument, set VARIABLE to VALUE buffer-locally."
(read-variable "Set variable: ")))
(minibuffer-help-form '(describe-variable var))
(prop (get var 'variable-interactive))
- (prompt (format "Set %s%s to value: " var
+ (obsolete (car (get var 'byte-obsolete-variable)))
+ (prompt (format "Set %s %s to value: " var
(cond ((local-variable-p var)
- " (buffer-local)")
+ "(buffer-local)")
((or current-prefix-arg
(local-variable-if-set-p var))
- " buffer-locally")
- (t " globally"))))
- (val (if prop
- ;; Use VAR's `variable-interactive' property
- ;; as an interactive spec for prompting.
- (call-interactively `(lambda (arg)
- (interactive ,prop)
- arg))
- (read
- (read-string prompt nil
- 'set-variable-value-history)))))
+ "buffer-locally")
+ (t "globally"))))
+ (val (progn
+ (when obsolete
+ (message (concat "`%S' is obsolete; "
+ (if (symbolp obsolete) "use `%S' instead" "%s"))
+ var obsolete)
+ (sit-for 3))
+ (if prop
+ ;; Use VAR's `variable-interactive' property
+ ;; as an interactive spec for prompting.
+ (call-interactively `(lambda (arg)
+ (interactive ,prop)
+ arg))
+ (read
+ (read-string prompt nil
+ 'set-variable-value-history))))))
(list var val current-prefix-arg)))
(and (custom-variable-p variable)
diff --git a/lisp/skeleton.el b/lisp/skeleton.el
index 5f25e881218..f854621cc85 100644
--- a/lisp/skeleton.el
+++ b/lisp/skeleton.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/smerge-mode.el b/lisp/smerge-mode.el
index 55000391777..45e68750cb3 100644
--- a/lisp/smerge-mode.el
+++ b/lisp/smerge-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -48,6 +48,9 @@
(eval-when-compile (require 'cl))
+;;; The real definition comes later.
+(defvar smerge-mode)
+
(defgroup smerge ()
"Minor mode to resolve diff3 conflicts."
:group 'tools
diff --git a/lisp/sort.el b/lisp/sort.el
index d90369cabcd..e2fe806c430 100644
--- a/lisp/sort.el
+++ b/lisp/sort.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/soundex.el b/lisp/soundex.el
index fb9d72f8fa9..2ed79b29455 100644
--- a/lisp/soundex.el
+++ b/lisp/soundex.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/speedbar.el b/lisp/speedbar.el
index a01b9ddb47e..188304bce74 100644
--- a/lisp/speedbar.el
+++ b/lisp/speedbar.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/startup.el b/lisp/startup.el
index a570581d02b..a4a6ac58bdf 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -37,7 +37,7 @@
"Non-nil once command line has been processed.")
(defgroup initialization nil
- "Emacs start-up procedure"
+ "Emacs start-up procedure."
:group 'internal)
(defcustom inhibit-startup-message nil
@@ -287,6 +287,8 @@ from being initialized."
(defvar no-blinking-cursor nil)
+(defvar default-frame-background-mode)
+
(defvar pure-space-overflow nil
"Non-nil if building Emacs overflowed pure space.")
diff --git a/lisp/strokes.el b/lisp/strokes.el
index 644ec2c4f62..bb99591d1e1 100644
--- a/lisp/strokes.el
+++ b/lisp/strokes.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -208,7 +208,7 @@ static char * stroke_xpm[] = {
;;; user variables...
(defgroup strokes nil
- "Control Emacs through mouse strokes"
+ "Control Emacs through mouse strokes."
:link '(emacs-commentary-link "strokes")
:link '(url-link "http://www.mit.edu/people/cadet/strokes-help.html")
:group 'mouse)
@@ -753,7 +753,7 @@ Optional EVENT is acceptable as the starting event of the stroke"
(progn
(goto-char point)
(subst-char-in-region point (1+ point)
- ?\ strokes-character))
+ ?\s strokes-character))
;; otherwise, we can start drawing the next time...
(setq safe-to-draw-p t))
(push (cdr (mouse-pixel-position))
@@ -763,7 +763,7 @@ Optional EVENT is acceptable as the starting event of the stroke"
;; clean up strokes buffer and then bury it.
(when (equal (buffer-name) strokes-buffer-name)
(subst-char-in-region (point-min) (point-max)
- strokes-character ?\ )
+ strokes-character ?\s)
(goto-char (point-min))
(bury-buffer))))
;; Otherwise, don't use strokes buffer and read stroke silently
@@ -813,7 +813,7 @@ Optional EVENT is acceptable as the starting event of the stroke"
(when point
(goto-char point)
(subst-char-in-region point (1+ point)
- ?\ strokes-character))
+ ?\s strokes-character))
(push (cdr (mouse-pixel-position))
pix-locs)))
(setq event (read-event)))
@@ -831,7 +831,7 @@ Optional EVENT is acceptable as the starting event of the stroke"
;; protected
(when (equal (buffer-name) strokes-buffer-name)
(subst-char-in-region (point-min) (point-max)
- strokes-character ?\ )
+ strokes-character ?\s)
(goto-char (point-min))
(bury-buffer)))))))
@@ -1035,7 +1035,7 @@ o Strokes are a bit computer-dependent in that they depend somewhat on
"Erase the contents of the current buffer and fill it with whitespace."
(erase-buffer)
(loop repeat (frame-height) do
- (insert-char ?\ (1- (frame-width)))
+ (insert-char ?\s (1- (frame-width)))
(newline))
(goto-char (point-min)))
@@ -1169,7 +1169,7 @@ the stroke as a character in some language."
(insert strokes-xpm-header)
(loop repeat 33 do
(insert ?\")
- (insert-char ?\ 33)
+ (insert-char ?\s 33)
(insert "\",")
(newline)
finally
@@ -1195,7 +1195,7 @@ the stroke as a character in some language."
;; Otherwise, just plot the point...
(goto-line (+ 17 y))
(forward-char (+ 2 x))
- (subst-char-in-region (point) (1+ (point)) ?\ ?\*)))
+ (subst-char-in-region (point) (1+ (point)) ?\s ?\*)))
((strokes-lift-p point)
;; a lift--tell the loop to X out the next point...
(setq lift-flag t))))
@@ -1286,7 +1286,7 @@ the stroke as a character in some language."
;; (command-name (symbol-name (cdr def))))
;; (strokes-xpm-for-stroke stroke " *strokes-xpm*")
;; (newline 2)
-;; (insert-char ?\ 45)
+;; (insert-char ?\s 45)
;; (beginning-of-line)
;; (insert command-name)
;; (beginning-of-line)
@@ -1342,7 +1342,7 @@ If STROKES-MAP is not given, `strokes-global-map' will be used instead."
(prin1-to-string (cdr def)))))
(strokes-xpm-for-stroke stroke " *strokes-xpm*")
(newline 2)
- (insert-char ?\ 45)
+ (insert-char ?\s 45)
(beginning-of-line)
(insert command-name)
(beginning-of-line)
@@ -1515,7 +1515,7 @@ Encode/decode your strokes with \\[strokes-encode-buffer],
(defsubst strokes-xpm-char-bit-p (char)
"Non-nil if CHAR represents an `on' or `off' bit in the XPM."
- (or (eq char ?\ )
+ (or (eq char ?\s)
(eq char ?*)))
;;(defsubst strokes-xor (a b) ### Should I make this an inline function? ###
@@ -1716,7 +1716,7 @@ Store XPM in buffer BUFNAME if supplied \(default is ` *strokes-xpm*'\)"
(insert-char
(if current-char-is-on-p
?*
- ?\ )
+ ?\s)
(strokes-xpm-decode-char (char-after)))
(delete-char 1)
(setq current-char-is-on-p (not current-char-is-on-p)))
diff --git a/lisp/subr.el b/lisp/subr.el
index 8e871673bbc..0033511c8e6 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/tabify.el b/lisp/tabify.el
index a28f0d6ccd2..78ee80bee1b 100644
--- a/lisp/tabify.el
+++ b/lisp/tabify.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/talk.el b/lisp/talk.el
index bbe9c949dde..d2436e59ff2 100644
--- a/lisp/talk.el
+++ b/lisp/talk.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/tar-mode.el b/lisp/tar-mode.el
index 91b81c6dece..6497bc083b4 100644
--- a/lisp/tar-mode.el
+++ b/lisp/tar-mode.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/tempo.el b/lisp/tempo.el
index 49a73ef1098..3f5687d0d08 100644
--- a/lisp/tempo.el
+++ b/lisp/tempo.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term.el b/lisp/term.el
index f29546b5958..2947e68f746 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Marck 13 2001
;;; Fixes for CJK support by Yong Lu <lyongu@yahoo.com>.
@@ -405,7 +405,7 @@
(require 'ehelp)
(defgroup term nil
- "General command interpreter in a window"
+ "General command interpreter in a window."
:group 'processes
:group 'unix)
@@ -1572,7 +1572,7 @@ See also `term-read-input-ring'."
(sit-for 0)
(message "Hit space to flush")
(let ((ch (read-event)))
- (if (eq ch ?\ )
+ (if (eq ch ?\s)
(set-window-configuration conf)
(setq unread-command-events (list ch)))))))
@@ -4043,7 +4043,7 @@ Typing SPC flushes the help buffer."
(progn
(mouse-choose-completion first)
(set-window-configuration conf))
- (if (eq first ?\ )
+ (if (eq first ?\s)
(set-window-configuration conf)
(setq unread-command-events (listify-key-sequence key)))))))
diff --git a/lisp/term/AT386.el b/lisp/term/AT386.el
index 31248018c42..8b239a706ef 100644
--- a/lisp/term/AT386.el
+++ b/lisp/term/AT386.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/bg-mouse.el b/lisp/term/bg-mouse.el
index abcbb4904f8..017a92d5770 100644
--- a/lisp/term/bg-mouse.el
+++ b/lisp/term/bg-mouse.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/internal.el b/lisp/term/internal.el
index 87a78d2e9a2..17c3fc91993 100644
--- a/lisp/term/internal.el
+++ b/lisp/term/internal.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/iris-ansi.el b/lisp/term/iris-ansi.el
index e73c3e19968..eae2f419378 100644
--- a/lisp/term/iris-ansi.el
+++ b/lisp/term/iris-ansi.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/mac-win.el b/lisp/term/mac-win.el
index f44fd616560..4912f02c09d 100644
--- a/lisp/term/mac-win.el
+++ b/lisp/term/mac-win.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/news.el b/lisp/term/news.el
index a6f7481c422..7a24eaf5a0c 100644
--- a/lisp/term/news.el
+++ b/lisp/term/news.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/pc-win.el b/lisp/term/pc-win.el
index 663e3ea3e6f..529903d06b0 100644
--- a/lisp/term/pc-win.el
+++ b/lisp/term/pc-win.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/rxvt.el b/lisp/term/rxvt.el
index a47b6787913..8dcd1826e0a 100644
--- a/lisp/term/rxvt.el
+++ b/lisp/term/rxvt.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/sun-mouse.el b/lisp/term/sun-mouse.el
index cee02919a66..d0126404a2b 100644
--- a/lisp/term/sun-mouse.el
+++ b/lisp/term/sun-mouse.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/sun.el b/lisp/term/sun.el
index 238bb2f7212..18010e0b343 100644
--- a/lisp/term/sun.el
+++ b/lisp/term/sun.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/sup-mouse.el b/lisp/term/sup-mouse.el
index 1ae0b25a733..cf4de575877 100644
--- a/lisp/term/sup-mouse.el
+++ b/lisp/term/sup-mouse.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/tty-colors.el b/lisp/term/tty-colors.el
index 62308a5460e..9a5eb5aa83f 100644
--- a/lisp/term/tty-colors.el
+++ b/lisp/term/tty-colors.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/tvi970.el b/lisp/term/tvi970.el
index 425ac200927..c24464fbbd5 100644
--- a/lisp/term/tvi970.el
+++ b/lisp/term/tvi970.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/vt100.el b/lisp/term/vt100.el
index aa73722b158..dfe011c0f6e 100644
--- a/lisp/term/vt100.el
+++ b/lisp/term/vt100.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/w32-win.el b/lisp/term/w32-win.el
index 3fcf281a9b9..e541ac43c72 100644
--- a/lisp/term/w32-win.el
+++ b/lisp/term/w32-win.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/wyse50.el b/lisp/term/wyse50.el
index edcbe1259fb..562f5c728c0 100644
--- a/lisp/term/wyse50.el
+++ b/lisp/term/wyse50.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el
index 43c448a72cd..3107b357351 100644
--- a/lisp/term/x-win.el
+++ b/lisp/term/x-win.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/term/xterm.el b/lisp/term/xterm.el
index 2a2df2564e4..17d7cde0e8a 100644
--- a/lisp/term/xterm.el
+++ b/lisp/term/xterm.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/terminal.el b/lisp/terminal.el
index afce6f51287..d9ba5d3f728 100644
--- a/lisp/terminal.el
+++ b/lisp/terminal.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/artist.el b/lisp/textmodes/artist.el
index 1fe3c9dcbfe..245658b62b4 100644
--- a/lisp/textmodes/artist.el
+++ b/lisp/textmodes/artist.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -502,7 +502,18 @@ This variable is initialized by the artist-make-prev-next-op-alist function.")
(if artist-picture-compatibility
(require 'picture))
-
+;; Variables that are made local in artist-mode-init
+(defvar artist-key-is-drawing nil)
+(defvar artist-key-endpoint1 nil)
+(defvar artist-key-poly-point-list nil)
+(defvar artist-key-shape nil)
+(defvar artist-key-draw-how nil)
+(defvar artist-popup-menu-table nil)
+(defvar artist-key-compl-table nil)
+(defvar artist-rb-save-data nil)
+(defvar artist-arrow-point-1 nil)
+(defvar artist-arrow-point-2 nil)
+
(defvar artist-mode-map
(let ((map (make-sparse-keymap)))
(setq artist-mode-map (make-sparse-keymap))
@@ -1370,21 +1381,6 @@ Keymap summary
minor-mode-map-alist)))
-
-(eval-when-compile
- ;; Variables that are made local in artist-mode-init
- (defvar artist-key-is-drawing nil)
- (defvar artist-key-endpoint1 nil)
- (defvar artist-key-poly-point-list nil)
- (defvar artist-key-shape nil)
- (defvar artist-key-draw-how nil)
- (defvar artist-popup-menu-table nil)
- (defvar artist-key-compl-table nil)
- (defvar artist-rb-save-data nil)
- (defvar artist-arrow-point-1 nil)
- (defvar artist-arrow-point-2 nil))
-
-
;; Init and exit
(defun artist-mode-init ()
"Init Artist mode. This will call the hook `artist-mode-init-hook'."
@@ -3850,8 +3846,8 @@ Optional argument STATE can be used to set state (default is nil)."
(x2 (artist-endpoint-get-x ep2))
(y2 (artist-endpoint-get-y ep2))
(dir1 (artist-find-direction x2 y2 x1 y1))
- (epn (artist-last point-list))
- (epn-1 (artist-last point-list 2))
+ (epn (last point-list))
+ (epn-1 (last point-list 2))
(xn (artist-endpoint-get-x epn))
(yn (artist-endpoint-get-y epn))
(xn-1 (artist-endpoint-get-x epn-1))
diff --git a/lisp/textmodes/bib-mode.el b/lisp/textmodes/bib-mode.el
index 63714a3a096..a6d47589d35 100644
--- a/lisp/textmodes/bib-mode.el
+++ b/lisp/textmodes/bib-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el
index 5f4a83b07eb..de387e86542 100644
--- a/lisp/textmodes/bibtex.el
+++ b/lisp/textmodes/bibtex.el
@@ -26,8 +26,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -48,12 +48,12 @@
;; User Options:
(defgroup bibtex nil
- "BibTeX mode"
+ "BibTeX mode."
:group 'tex
:prefix "bibtex-")
(defgroup bibtex-autokey nil
- "Generate automatically a key from the author/editor and the title field"
+ "Generate automatically a key from the author/editor and the title field."
:group 'bibtex
:prefix "bibtex-autokey-")
@@ -2800,7 +2800,7 @@ if that value is non-nil.
(set (make-local-variable 'fill-paragraph-function) 'bibtex-fill-field)
(set (make-local-variable 'fill-prefix) (make-string (+ bibtex-entry-offset
bibtex-contline-indentation)
- ? ))
+ ?\s))
(set (make-local-variable 'font-lock-defaults)
'(bibtex-font-lock-keywords
nil t ((?$ . "\"")
diff --git a/lisp/textmodes/conf-mode.el b/lisp/textmodes/conf-mode.el
index 3b8687ce670..75249f7b547 100644
--- a/lisp/textmodes/conf-mode.el
+++ b/lisp/textmodes/conf-mode.el
@@ -17,8 +17,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/textmodes/dns-mode.el b/lisp/textmodes/dns-mode.el
index ac32eccd9ec..a6f3517d722 100644
--- a/lisp/textmodes/dns-mode.el
+++ b/lisp/textmodes/dns-mode.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/enriched.el b/lisp/textmodes/enriched.el
index b1b5abc488f..61960e9d975 100644
--- a/lisp/textmodes/enriched.el
+++ b/lisp/textmodes/enriched.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -47,7 +47,7 @@
;;;
(defgroup enriched nil
- "Read and save files in text/enriched format"
+ "Read and save files in text/enriched format."
:group 'wp)
(defcustom enriched-verbose t
diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el
index 7d4ee6ec00d..9997b2a166e 100644
--- a/lisp/textmodes/fill.el
+++ b/lisp/textmodes/fill.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index fc74fc67041..6b7b5492409 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index eda2872df68..73163b5baec 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -26,8 +26,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; Note: version numbers and time stamp are not updated
;; when this file is edited for release with GNU emacs.
diff --git a/lisp/textmodes/makeinfo.el b/lisp/textmodes/makeinfo.el
index 9136cb52202..bbea460cf6e 100644
--- a/lisp/textmodes/makeinfo.el
+++ b/lisp/textmodes/makeinfo.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -50,7 +50,7 @@
(require 'info)
(defgroup makeinfo nil
- "Run makeinfo conveniently"
+ "Run makeinfo conveniently."
:group 'docs)
diff --git a/lisp/textmodes/nroff-mode.el b/lisp/textmodes/nroff-mode.el
index 9c5addb85fa..48de6b3243e 100644
--- a/lisp/textmodes/nroff-mode.el
+++ b/lisp/textmodes/nroff-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/org.el b/lisp/textmodes/org.el
index 9db111ea7a9..1709b1554a5 100644
--- a/lisp/textmodes/org.el
+++ b/lisp/textmodes/org.el
@@ -1,11 +1,11 @@
-;; org.el --- Outline-based notes management and organizer
+;; org.el --- Outline-based notes management and organizer
;; Carstens outline-mode for keeping track of everything.
;; Copyright (c) 2004, 2005 Free Software Foundation
;;
;; Author: Carsten Dominik <dominik at science dot uva dot nl>
;; Keywords: outlines, hypermedia, calendar
;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/
-;; Version: 3.12
+;; Version: 3.13
;;
;; This file is part of GNU Emacs.
;;
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;;; Commentary:
@@ -80,6 +80,10 @@
;;
;; Changes:
;; -------
+;; Version 3.13
+;; - Efficiency improvements: Fewer table re-alignments needed.
+;; - New special lines in tables, for defining names for individual cells.
+;;
;; Version 3.12
;; - Tables can store formulas (one per column) and compute fields.
;; Not quite like a full spreadsheet, but very powerful.
@@ -178,7 +182,7 @@
;;; Customization variables
-(defvar org-version "3.12"
+(defvar org-version "3.13"
"The version number of the file org.el.")
(defun org-version ()
(interactive)
@@ -240,7 +244,7 @@ second element will be used when `org-CUA-compatible' is t.")
"Select a key according to `org-CUA-compatible'."
(nth (if org-CUA-compatible 2 1)
(or (assq key org-disputed-keys)
- (error "Invalid Key %s in `org-key'" key))))
+ (error "Invalid Key %s in `org-key'" key))))
(defcustom org-startup-folded t
"Non-nil means, entering Org-mode will switch to OVERVIEW.
@@ -252,9 +256,9 @@ the following lines anywhere in the buffer:
#+STARTUP: content"
:group 'org-startup
:type '(choice
- (const :tag "nofold: show all" nil)
- (const :tag "fold: overview" t)
- (const :tag "content: all headlines" content)))
+ (const :tag "nofold: show all" nil)
+ (const :tag "fold: overview" t)
+ (const :tag "content: all headlines" content)))
(defcustom org-startup-truncated t
"Non-nil means, entering Org-mode will set `truncate-lines'.
@@ -311,11 +315,11 @@ states. There are two ways how these keywords can be used:
- As a sequence in the process of working on a TODO item, for example
(setq org-todo-keywords '(\"TODO\" \"STARTED\" \"VERIFY\" \"DONE\")
- org-todo-interpretation 'sequence)
+ org-todo-interpretation 'sequence)
- As different types of TODO items, for example
(setq org-todo-keywords '(\"URGENT\" \"RELAXED\" \"REMIND\" \"FOR_TOM\" \"DONE\")
- org-todo-interpretation 'type)
+ org-todo-interpretation 'type)
When the states are interpreted as a sequence, \\[org-todo] always cycles
to the next state, in order to walk through all different states. So with
@@ -338,7 +342,7 @@ directly into the buffer. M-TAB completes TODO keywords at the
beginning of a headline."
:group 'org-keywords
:type '(choice (const sequence)
- (const type)))
+ (const type)))
(defcustom org-default-priority ?B
"The default priority of TODO items.
@@ -445,83 +449,83 @@ is used instead.")
"Precompute regular expressions for current buffer."
(when (eq major-mode 'org-mode)
(let ((re (org-make-options-regexp
- '("CATEGORY" "SEQ_TODO" "PRI_TODO" "TYP_TODO"
- "STARTUP" "ARCHIVE")))
- (splitre "[ \t]+")
- kwds int key value cat arch)
+ '("CATEGORY" "SEQ_TODO" "PRI_TODO" "TYP_TODO"
+ "STARTUP" "ARCHIVE")))
+ (splitre "[ \t]+")
+ kwds int key value cat arch)
(save-excursion
- (save-restriction
- (widen)
- (goto-char (point-min))
- (while (re-search-forward re nil t)
- (setq key (match-string 1) value (match-string 2))
- (cond
- ((equal key "CATEGORY")
- (if (string-match "[ \t]+$" value)
- (setq value (replace-match "" t t value)))
- (setq cat (intern value)))
- ((equal key "SEQ_TODO")
- (setq int 'sequence
- kwds (append kwds (org-split-string value splitre))))
- ((equal key "PRI_TODO")
- (setq int 'priority
- kwds (append kwds (org-split-string value splitre))))
- ((equal key "TYP_TODO")
- (setq int 'type
- kwds (append kwds (org-split-string value splitre))))
- ((equal key "STARTUP")
- (let ((opts (org-split-string value splitre))
- (set '(("fold" org-startup-folded t)
- ("nofold" org-startup-folded nil)
- ("content" org-startup-folded content)
- ("dlcheck" org-startup-with-deadline-check t)
- ("nodlcheck" org-startup-with-deadline-check nil)))
- l var val)
- (while (setq l (assoc (pop opts) set))
- (setq var (nth 1 l) val (nth 2 l))
- (set (make-local-variable var) val))))
- ((equal key "ARCHIVE")
- (string-match " *$" value)
- (setq arch (replace-match "" t t value))
- (remove-text-properties 0 (length arch)
- '(face t fontified t) arch)))
- )))
+ (save-restriction
+ (widen)
+ (goto-char (point-min))
+ (while (re-search-forward re nil t)
+ (setq key (match-string 1) value (match-string 2))
+ (cond
+ ((equal key "CATEGORY")
+ (if (string-match "[ \t]+$" value)
+ (setq value (replace-match "" t t value)))
+ (setq cat (intern value)))
+ ((equal key "SEQ_TODO")
+ (setq int 'sequence
+ kwds (append kwds (org-split-string value splitre))))
+ ((equal key "PRI_TODO")
+ (setq int 'priority
+ kwds (append kwds (org-split-string value splitre))))
+ ((equal key "TYP_TODO")
+ (setq int 'type
+ kwds (append kwds (org-split-string value splitre))))
+ ((equal key "STARTUP")
+ (let ((opts (org-split-string value splitre))
+ (set '(("fold" org-startup-folded t)
+ ("nofold" org-startup-folded nil)
+ ("content" org-startup-folded content)
+ ("dlcheck" org-startup-with-deadline-check t)
+ ("nodlcheck" org-startup-with-deadline-check nil)))
+ l var val)
+ (while (setq l (assoc (pop opts) set))
+ (setq var (nth 1 l) val (nth 2 l))
+ (set (make-local-variable var) val))))
+ ((equal key "ARCHIVE")
+ (string-match " *$" value)
+ (setq arch (replace-match "" t t value))
+ (remove-text-properties 0 (length arch)
+ '(face t fontified t) arch)))
+ )))
(and cat (set (make-local-variable 'org-category) cat))
(and kwds (set (make-local-variable 'org-todo-keywords) kwds))
(and arch (set (make-local-variable 'org-archive-location) arch))
(and int (set (make-local-variable 'org-todo-interpretation) int)))
;; Compute the regular expressions and other local variables
(setq org-todo-kwd-priority-p (equal org-todo-interpretation 'priority)
- org-todo-kwd-max-priority (1- (length org-todo-keywords))
- org-ds-keyword-length (+ 2 (max (length org-deadline-string)
- (length org-scheduled-string)))
- org-done-string
- (nth (1- (length org-todo-keywords)) org-todo-keywords)
- org-todo-regexp
- (concat "\\<\\(" (mapconcat 'regexp-quote org-todo-keywords
- "\\|") "\\)\\>")
- org-not-done-regexp
- (concat "\\<\\("
- (mapconcat 'regexp-quote
- (nreverse (cdr (reverse org-todo-keywords)))
- "\\|")
- "\\)\\>")
- org-todo-line-regexp
- (concat "^\\(\\*+\\)[ \t]*\\("
- (mapconcat 'regexp-quote org-todo-keywords "\\|")
- "\\)? *\\(.*\\)")
- org-nl-done-regexp
- (concat "[\r\n]\\*+[ \t]+" org-done-string "\\>")
- org-looking-at-done-regexp (concat "^" org-done-string "\\>")
- org-deadline-regexp (concat "\\<" org-deadline-string)
- org-deadline-time-regexp
- (concat "\\<" org-deadline-string " *<\\([^>]+\\)>")
- org-deadline-line-regexp
- (concat "\\<\\(" org-deadline-string "\\).*")
- org-scheduled-regexp
- (concat "\\<" org-scheduled-string)
- org-scheduled-time-regexp
- (concat "\\<" org-scheduled-string " *<\\([^>]+\\)>"))
+ org-todo-kwd-max-priority (1- (length org-todo-keywords))
+ org-ds-keyword-length (+ 2 (max (length org-deadline-string)
+ (length org-scheduled-string)))
+ org-done-string
+ (nth (1- (length org-todo-keywords)) org-todo-keywords)
+ org-todo-regexp
+ (concat "\\<\\(" (mapconcat 'regexp-quote org-todo-keywords
+ "\\|") "\\)\\>")
+ org-not-done-regexp
+ (concat "\\<\\("
+ (mapconcat 'regexp-quote
+ (nreverse (cdr (reverse org-todo-keywords)))
+ "\\|")
+ "\\)\\>")
+ org-todo-line-regexp
+ (concat "^\\(\\*+\\)[ \t]*\\("
+ (mapconcat 'regexp-quote org-todo-keywords "\\|")
+ "\\)? *\\(.*\\)")
+ org-nl-done-regexp
+ (concat "[\r\n]\\*+[ \t]+" org-done-string "\\>")
+ org-looking-at-done-regexp (concat "^" org-done-string "\\>")
+ org-deadline-regexp (concat "\\<" org-deadline-string)
+ org-deadline-time-regexp
+ (concat "\\<" org-deadline-string " *<\\([^>]+\\)>")
+ org-deadline-line-regexp
+ (concat "\\<\\(" org-deadline-string "\\).*")
+ org-scheduled-regexp
+ (concat "\\<" org-scheduled-string)
+ org-scheduled-time-regexp
+ (concat "\\<" org-scheduled-string " *<\\([^>]+\\)>"))
(org-set-font-lock-defaults)))
(defgroup org-time nil
@@ -575,7 +579,7 @@ When nil, cursor will remain in the current window."
(defcustom org-select-agenda-window t
"Non-nil means, after creating an agenda, move cursor into Agenda window.
-When nil, cursor will remain in the current window."
+When nil, cursor will remain in the current window."
:group 'org-agenda
:type 'boolean)
@@ -598,8 +602,8 @@ When nil, only the days which actually have entries are shown."
When nil, always start on the current day."
:group 'org-agenda
:type '(choice (const :tag "Today" nil)
- (const :tag "First day of month" t)
- (number :tag "Weekday No.")))
+ (const :tag "First day of month" t)
+ (number :tag "Weekday No.")))
(defcustom org-agenda-ndays 7
"Number of days to include in overview display."
@@ -611,7 +615,7 @@ When nil, always start on the current day."
When nil, date-less entries will only be shown if `org-agenda' is called
with a prefix argument.
When non-nil, the TODO entries will be listed at the top of the agenda, before
-the entries for specific days."
+the entries for specific days."
:group 'org-agenda
:type 'boolean)
@@ -637,7 +641,7 @@ symbols are recognized.
time-up Put entries with time-of-day indications first, early first
time-down Put entries with time-of-day indications first, late first
category-keep Keep the default order of categories, corresponding to the
- sequence in `org-agenda-files'.
+ sequence in `org-agenda-files'.
category-up Sort alphabetically by category, A-Z.
category-down Sort alphabetically by category, Z-A.
priority-up Sort numerically by priority, high priority last.
@@ -656,15 +660,15 @@ priority.
Leaving out `category-keep' would mean that items will be sorted across
categories by priority."
:group 'org-agenda
- :type '(repeat
- (choice
- (const time-up)
- (const time-down)
- (const category-keep)
- (const category-up)
- (const category-down)
- (const priority-up)
- (const priority-down))))
+ :type '(repeat
+ (choice
+ (const time-up)
+ (const time-down)
+ (const category-keep)
+ (const category-up)
+ (const category-down)
+ (const priority-up)
+ (const priority-down))))
(defcustom org-agenda-prefix-format " %-12:c%?-12t% s"
"Format specification for the prefix of items in the agenda buffer.
@@ -732,7 +736,7 @@ the variable `org-agenda-time-grid'."
:group 'org-agenda
:type 'boolean)
-(defcustom org-agenda-time-grid
+(defcustom org-agenda-time-grid
'((daily today require-timed)
"----------------"
(800 1000 1200 1400 1600 1800 2000))
@@ -751,16 +755,16 @@ The second item is a string which will be places behing the grid time.
The third item is a list of integers, indicating the times that should have
a grid line."
:group 'org-agenda
- :type
+ :type
'(list
(set :greedy t :tag "Grid Display Options"
- (const :tag "Show grid in single day agenda display" daily)
- (const :tag "Show grid in weekly agenda display" weekly)
- (const :tag "Always show grid for today" today)
- (const :tag "Show grid only if any timed entries are present"
- require-timed)
- (const :tag "Skip grid times already present in an entry"
- remove-match))
+ (const :tag "Show grid in single day agenda display" daily)
+ (const :tag "Show grid in weekly agenda display" weekly)
+ (const :tag "Always show grid for today" today)
+ (const :tag "Show grid only if any timed entries are present"
+ require-timed)
+ (const :tag "Skip grid times already present in an entry"
+ remove-match))
(string :tag "Grid String")
(repeat :tag "Grid Times" (integer :tag "Time"))))
@@ -777,9 +781,9 @@ that the time should only be removed what it is located at the beginning of
the headline/diary entry."
:group 'org-agenda
:type '(choice
- (const :tag "Always" t)
- (const :tag "Never" nil)
- (const :tag "When at beginning of entry" beg)))
+ (const :tag "Always" t)
+ (const :tag "Never" nil)
+ (const :tag "When at beginning of entry" beg)))
(defcustom org-sort-agenda-notime-is-late t
"Non-nil means, items without time are considered late.
@@ -845,7 +849,7 @@ unnecessary clutter."
(defcustom org-archive-location "%s_archive::"
"The location where subtrees should be archived.
-This string consists of two parts, separated by a double-colon.
+This string consists of two parts, separated by a double-colon.
The first part is a file name - when omitted, archiving happens in the same
file. %s will be replaced by the current file name (without directory part).
@@ -858,23 +862,23 @@ at the end of the file, as top-level entries.
Here are a few examples:
\"%s_archive::\"
- If the current file is Projects.org, archive in file
- Projects.org_archive, as top-level trees. This is the default.
+ If the current file is Projects.org, archive in file
+ Projects.org_archive, as top-level trees. This is the default.
\"::* Archived Tasks\"
- Archive in the current file, under the top-level headline
- \"* Archived Tasks\".
+ Archive in the current file, under the top-level headline
+ \"* Archived Tasks\".
\"~/org/archive.org::\"
- Archive in file ~/org/archive.org (absolute path), as top-level trees.
+ Archive in file ~/org/archive.org (absolute path), as top-level trees.
\"basement::** Finished Tasks\"
- Archive in file ./basement (relative path), as level 3 trees
- below the level 2 heading \"** Finished Tasks\".
+ Archive in file ./basement (relative path), as level 3 trees
+ below the level 2 heading \"** Finished Tasks\".
You may set this option on a per-file basis by adding to the buffer a
line like
-
+
#+ARCHIVE: basement::** Finished Tasks"
:group 'org-structure
:type 'string)
@@ -905,10 +909,10 @@ include angle brackets into this format, like \"<%s>\". Some people also
recommend an additional URL: prefix, so the format would be \"<URL:%s>\"."
:group 'org-link
:type '(choice
- (const :tag "\"%s\" (e.g. http://www.there.com)" "%s")
- (const :tag "\"<%s>\" (e.g. <http://www.there.com>)" "<%s>")
- (const :tag "\"<URL:%s>\" (e.g. <URL:http://www.there.com>)" "<URL:%s>")
- (string :tag "Other" :value "<%s>")))
+ (const :tag "\"%s\" (e.g. http://www.there.com)" "%s")
+ (const :tag "\"<%s>\" (e.g. <http://www.there.com>)" "<%s>")
+ (const :tag "\"<URL:%s>\" (e.g. <URL:http://www.there.com>)" "<URL:%s>")
+ (string :tag "Other" :value "<%s>")))
(defcustom org-allow-space-in-links t
"Non-nil means, file names in links may contain space characters.
@@ -964,20 +968,20 @@ For BBDB, it is currently only possible to display the matches in
another window."
:group 'org-link
:type '(list
- (cons (const vm)
- (choice
- (const vm-visit-folder)
- (const vm-visit-folder-other-window)
- (const vm-visit-folder-other-frame)))
- (cons (const gnus)
- (choice
- (const gnus)
- (const gnus-other-frame)))
- (cons (const file)
- (choice
- (const find-file)
- (const find-file-other-window)
- (const find-file-other-frame)))))
+ (cons (const vm)
+ (choice
+ (const vm-visit-folder)
+ (const vm-visit-folder-other-window)
+ (const vm-visit-folder-other-frame)))
+ (cons (const gnus)
+ (choice
+ (const gnus)
+ (const gnus-other-frame)))
+ (cons (const file)
+ (choice
+ (const find-file)
+ (const find-file-other-window)
+ (const find-file-other-frame)))))
(defcustom org-usenet-links-prefer-google nil
"Non-nil means, `org-store-link' will create web links to google groups.
@@ -999,7 +1003,7 @@ The default is true, to keep new users from shooting into their own foot."
:group 'org-link
:type 'boolean)
-(defconst org-file-apps-defaults-linux
+(defconst org-file-apps-defaults-gnu
'((t . emacs)
("jpg" . "xv %s")
("gif" . "xv %s")
@@ -1061,21 +1065,21 @@ and the corresponding command. Possible values for the command are:
`emacs' The file will be visited by the current Emacs process.
`default' Use the default application for this file type.
string A command to be executed by a shell; %s will be replaced
- by the path to the file.
+ by the path to the file.
sexp A Lisp form which will be evaluated. The file path will
- be available in the Lisp variable `file'.
+ be available in the Lisp variable `file'.
For more examples, see the system specific constants
`org-file-apps-defaults-macosx'
`org-file-apps-defaults-windowsnt'
-`org-file-apps-defaults-linux'."
+`org-file-apps-defaults-gnu'."
:group 'org-link
:type '(repeat
- (cons (string :tag "Extension")
- (choice :value ""
- (const :tag "Visit with Emacs" 'emacs)
- (const :tag "Use system default" 'default)
- (string :tag "Command")
- (sexp :tag "Lisp form")))))
+ (cons (string :tag "Extension")
+ (choice :value ""
+ (const :tag "Visit with Emacs" 'emacs)
+ (const :tag "Use system default" 'default)
+ (string :tag "Command")
+ (sexp :tag "Lisp form")))))
(defgroup org-remember nil
@@ -1096,18 +1100,18 @@ Used by the hooks for remember.el. This can be a string, or nil to mean
the value of `remember-data-file'."
:group 'org-remember
:type '(choice
- (const :tag "Default from remember-data-file" nil)
- file))
+ (const :tag "Default from remember-data-file" nil)
+ file))
(defcustom org-reverse-note-order nil
"Non-nil means, store new notes at the beginning of a file or entry.
When nil, new notes will be filed to the end of a file or entry."
:group 'org-remember
:type '(choice
- (const :tag "Reverse always" t)
- (const :tag "Reverse never" nil)
- (repeat :tag "By file name regexp"
- (cons regexp boolean))))
+ (const :tag "Reverse always" t)
+ (const :tag "Reverse never" nil)
+ (repeat :tag "By file name regexp"
+ (cons regexp boolean))))
(defgroup org-table nil
"Options concerning tables in Org-mode."
@@ -1139,9 +1143,9 @@ This variable can be used to turn on and off the table editor during a session,
but in order to toggle optimization, a restart is required."
:group 'org-table
:type '(choice
- (const :tag "off" nil)
- (const :tag "on" t)
- (const :tag "on, optimized" optimized)))
+ (const :tag "off" nil)
+ (const :tag "on" t)
+ (const :tag "on, optimized" optimized)))
(defcustom org-table-default-size "5x2"
"The default size for newly created tables, Columns x Rows."
@@ -1180,19 +1184,19 @@ number:
Other options offered by the customize interface are more restrictive."
:group 'org-table
:type '(choice
- (const :tag "Positive Integers"
- "^[0-9]+$")
- (const :tag "Integers"
- "^[-+]?[0-9]+$")
- (const :tag "Floating Point Numbers"
- "^[-+]?\\([0-9]*\\.[0-9]+\\|[0-9]+\\.[0-9]*\\)$")
- (const :tag "Floating Point Number or Integer"
- "^[-+]?\\([0-9]*\\.[0-9]+\\|[0-9]+\\.?[0-9]*\\)$")
- (const :tag "Exponential, Floating point, Integer"
- "^[-+]?[0-9.]+\\([eEdD][-+0-9]+\\)?$")
- (const :tag "Very General Number-Like"
- "^[<>]?[-+^.0-9]*[0-9][-+^.0-9eEdDx()%]*$")
- (string :tag "Regexp:")))
+ (const :tag "Positive Integers"
+ "^[0-9]+$")
+ (const :tag "Integers"
+ "^[-+]?[0-9]+$")
+ (const :tag "Floating Point Numbers"
+ "^[-+]?\\([0-9]*\\.[0-9]+\\|[0-9]+\\.[0-9]*\\)$")
+ (const :tag "Floating Point Number or Integer"
+ "^[-+]?\\([0-9]*\\.[0-9]+\\|[0-9]+\\.?[0-9]*\\)$")
+ (const :tag "Exponential, Floating point, Integer"
+ "^[-+]?[0-9.]+\\([eEdD][-+0-9]+\\)?$")
+ (const :tag "Very General Number-Like"
+ "^[<>]?[-+^.0-9]*[0-9][-+^.0-9eEdDx()%]*$")
+ (string :tag "Regexp:")))
(defcustom org-table-number-fraction 0.5
"Fraction of numbers in a column required to make the column align right.
@@ -1227,7 +1231,10 @@ line will be formatted with <th> tags."
calc-float-format (float 5)
calc-angle-mode deg
calc-prefer-frac nil
- calc-symbolic-mode nil)
+ calc-symbolic-mode nil
+ calc-date-format (YYYY "-" MM "-" DD " " Www (" " HH ":" mm))
+ calc-display-working-message t
+ )
"List with Calc mode settings for use in calc-eval for table formulas.
The list must contain alternating symbols (calc modes variables and values.
Don't remove any of the default settings, just change the values. Org-mode
@@ -1266,8 +1273,8 @@ speed of light in a formula, you would configure
and then use it in an equation like `$1*$c'."
:group 'org-table-calculation
:type '(repeat
- (cons (string :tag "name")
- (string :tag "value"))))
+ (cons (string :tag "name")
+ (string :tag "value"))))
(defcustom org-table-formula-numbers-only nil
"Non-nil means, calculate only with numbers in table formulas.
@@ -1322,11 +1329,11 @@ Use the variable `org-export-default-language' to set the language,
or use the +OPTION lines for a per-file setting."
:group 'org-export
:type '(repeat
- (list
- (string :tag "HTML language tag")
- (string :tag "Author")
- (string :tag "Date")
- (string :tag "Table of Contents"))))
+ (list
+ (string :tag "HTML language tag")
+ (string :tag "Author")
+ (string :tag "Date")
+ (string :tag "Table of Contents"))))
(defcustom org-export-default-language "en"
"The default language of HTML export, as a string.
@@ -1455,7 +1462,7 @@ sub- or superscripts.
10^24 or 10^tau several digits will be considered 1 item
10^-12 or 10^-tau a leading sign with digits or a word
x^2-y^3 will be read as x^2 - y^3, because items are
- terminated by almost any nonword/nondigit char.
+ terminated by almost any nonword/nondigit char.
x_{i^2} or x^(2-i) braces or parenthesis do grouping.
Still, ambiguity is possible - so when in doubt use {} to enclose the
@@ -1635,7 +1642,7 @@ When this is non-nil, the headline after the keyword is set to the
"Face for items scheduled previously, and not yet done."
:group 'org-faces)
-(defface org-link
+(defface org-link
'((((type tty) (class color)) (:foreground "cyan" :weight bold))
(((class color) (background light)) (:foreground "Purple"))
(((class color) (background dark)) (:foreground "Cyan"))
@@ -1742,7 +1749,7 @@ sets it back to nil.")
;;;###autoload
(define-derived-mode org-mode outline-mode "Org"
- "Outline-based notes management and organizer, alias
+ "Outline-based notes management and organizer, alias
\"Carstens outline-mode for keeping track of everything.\"
Org-mode develops organizational tasks around a NOTES file which
@@ -1771,23 +1778,26 @@ The following commands are available:
(set (make-local-variable 'org-table-may-need-update) t)
(make-local-hook 'before-change-functions) ;; needed for XEmacs
(add-hook 'before-change-functions 'org-before-change-function nil
- 'local)
+ 'local)
;; Paragraph regular expressions
(set (make-local-variable 'paragraph-separate) "\f\\|[ ]*$\\|\\([*\f]+\\)")
(set (make-local-variable 'paragraph-start) "\f\\|[ ]*$\\|\\([*\f]+\\)")
;; Inhibit auto-fill for headers, tables and fixed-width lines.
(set (make-local-variable 'auto-fill-inhibit-regexp)
(concat "\\*\\|#"
- (if (or org-enable-table-editor org-enable-fixed-width-editor)
- (concat
- "\\|[ \t]*["
- (if org-enable-table-editor "|" "")
- (if org-enable-fixed-width-editor ":" "")
- "]"))))
+ (if (or org-enable-table-editor org-enable-fixed-width-editor)
+ (concat
+ "\\|[ \t]*["
+ (if org-enable-table-editor "|" "")
+ (if org-enable-fixed-width-editor ":" "")
+ "]"))))
(set (make-local-variable 'fill-paragraph-function) 'org-fill-paragraph)
+ ;; Settings for Calc embedded mode
+ (set (make-local-variable 'calc-embedded-open-formula) "|\\|\n")
+ (set (make-local-variable 'calc-embedded-close-formula) "|\\|\n")
(if (and org-insert-mode-line-in-empty-file
- (interactive-p)
- (= (point-min) (point-max)))
+ (interactive-p)
+ (= (point-min) (point-max)))
(insert " -*- mode: org -*-\n\n"))
;; Get rid of Outline menus, they are not needed
@@ -1805,13 +1815,13 @@ The following commands are available:
(unless org-inhibit-startup
(if org-startup-with-deadline-check
- (call-interactively 'org-check-deadlines)
+ (call-interactively 'org-check-deadlines)
(cond
((eq org-startup-folded t)
- (org-cycle '(4)))
+ (org-cycle '(4)))
((eq org-startup-folded 'content)
- (let ((this-command 'org-cycle) (last-command 'org-cycle))
- (org-cycle '(4)) (org-cycle '(4))))))))
+ (let ((this-command 'org-cycle) (last-command 'org-cycle))
+ (org-cycle '(4)) (org-cycle '(4))))))))
(defun org-fill-paragraph (&optional justify)
"Re-align a table, pass through to fill-paragraph if no table."
@@ -1825,7 +1835,7 @@ The following commands are available:
;;; Font-Lock stuff
(defvar org-mouse-map (make-sparse-keymap))
-(define-key org-mouse-map
+(define-key org-mouse-map
(if org-xemacs-p [button2] [mouse-2]) 'org-open-at-mouse)
(define-key org-mouse-map
(if org-xemacs-p [button3] [mouse-3]) 'org-find-file-at-mouse)
@@ -1850,7 +1860,7 @@ The following commands are available:
(defconst org-ts-lengths
(cons (length (format-time-string (car org-time-stamp-formats)))
- (length (format-time-string (cdr org-time-stamp-formats))))
+ (length (format-time-string (cdr org-time-stamp-formats))))
"This holds the lengths of the two different time formats.")
(defconst org-ts-regexp "<\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}[^\r\n>]*\\)>"
"Regular expression for fast time stamp matching.")
@@ -1861,26 +1871,26 @@ The following commands are available:
(defconst org-tr-regexp (concat org-ts-regexp "--?-?" org-ts-regexp)
"Regular expression matching a time stamp range.")
(defconst org-tsr-regexp (concat org-ts-regexp "\\(--?-?"
- org-ts-regexp "\\)?")
+ org-ts-regexp "\\)?")
"Regular expression matching a time stamp or time stamp range.")
(defun org-activate-links (limit)
"Run through the buffer and add overlays to links."
(if (re-search-forward org-link-regexp limit t)
(progn
- (add-text-properties (match-beginning 0) (match-end 0)
- (list 'mouse-face 'highlight
- 'keymap org-mouse-map))
- t)))
+ (add-text-properties (match-beginning 0) (match-end 0)
+ (list 'mouse-face 'highlight
+ 'keymap org-mouse-map))
+ t)))
(defun org-activate-dates (limit)
"Run through the buffer and add overlays to dates."
(if (re-search-forward org-tsr-regexp limit t)
(progn
- (add-text-properties (match-beginning 0) (match-end 0)
- (list 'mouse-face 'highlight
- 'keymap org-mouse-map))
- t)))
+ (add-text-properties (match-beginning 0) (match-end 0)
+ (list 'mouse-face 'highlight
+ 'keymap org-mouse-map))
+ t)))
(defun org-font-lock-level ()
(save-excursion
@@ -1891,61 +1901,61 @@ The following commands are available:
(defun org-set-font-lock-defaults ()
(let ((org-font-lock-extra-keywords
- (list
- '(org-activate-links (0 'org-link))
- '(org-activate-dates (0 'org-link))
- (list (concat "^\\*+[ \t]*" org-not-done-regexp)
- '(1 'org-warning t))
- (list (concat "\\[#[A-Z]\\]") '(0 'org-warning t))
- (list (concat "\\<" org-deadline-string) '(0 'org-warning t))
- (list (concat "\\<" org-scheduled-string) '(0 'org-warning t))
- ;; '("\\(\\s-\\|^\\)\\(\\*\\([a-zA-Z]+\\)\\*\\)\\([^a-zA-Z*]\\|$\\)"
- ;; (3 'bold))
- ;; '("\\(\\s-\\|^\\)\\(/\\([a-zA-Z]+\\)/\\)\\([^a-zA-Z*]\\|$\\)"
- ;; (3 'italic))
- ;; '("\\(\\s-\\|^\\)\\(_\\([a-zA-Z]+\\)_\\)\\([^a-zA-Z*]\\|$\\)"
- ;; (3 'underline))
- (list (concat "^\\*+[ \t]*\\<\\(" org-comment-string "\\)\\>")
- '(1 'org-warning t))
- '("^#.*" (0 'font-lock-comment-face t))
- (if org-fontify-done-headline
- (list (concat "^[*]+ +\\<\\(" org-done-string "\\)\\(.*\\)\\>")
- '(1 'org-done t) '(2 'org-headline-done t))
- (list (concat "^[*]+ +\\<\\(" org-done-string "\\)\\>")
- '(1 'org-done t)))
- '("^[ \t]*\\(\\(|\\|\\+-[-+]\\).*\\S-\\)"
- (1 'org-table t))
- '("^[ \t]*\\(:.*\\)" (1 'org-table t))
- '("| *\\(=[^|\n]*\\)" (1 'org-formula t))
- '("^[ \t]*| *\\([#!$*]\\) *|" (1 'org-formula t))
- )))
+ (list
+ '(org-activate-links (0 'org-link))
+ '(org-activate-dates (0 'org-link))
+ (list (concat "^\\*+[ \t]*" org-not-done-regexp)
+ '(1 'org-warning t))
+ (list (concat "\\[#[A-Z]\\]") '(0 'org-warning t))
+ (list (concat "\\<" org-deadline-string) '(0 'org-warning t))
+ (list (concat "\\<" org-scheduled-string) '(0 'org-warning t))
+ ;; '("\\(\\s-\\|^\\)\\(\\*\\([a-zA-Z]+\\)\\*\\)\\([^a-zA-Z*]\\|$\\)"
+ ;; (3 'bold))
+ ;; '("\\(\\s-\\|^\\)\\(/\\([a-zA-Z]+\\)/\\)\\([^a-zA-Z*]\\|$\\)"
+ ;; (3 'italic))
+ ;; '("\\(\\s-\\|^\\)\\(_\\([a-zA-Z]+\\)_\\)\\([^a-zA-Z*]\\|$\\)"
+ ;; (3 'underline))
+ (list (concat "^\\*+[ \t]*\\<\\(" org-comment-string "\\)\\>")
+ '(1 'org-warning t))
+ '("^#.*" (0 'font-lock-comment-face t))
+ (if org-fontify-done-headline
+ (list (concat "^[*]+ +\\<\\(" org-done-string "\\)\\(.*\\)\\>")
+ '(1 'org-done t) '(2 'org-headline-done t))
+ (list (concat "^[*]+ +\\<\\(" org-done-string "\\)\\>")
+ '(1 'org-done t)))
+ '("^[ \t]*\\(\\(|\\|\\+-[-+]\\).*\\S-\\)"
+ (1 'org-table t))
+ '("^[ \t]*\\(:.*\\)" (1 'org-table t))
+ '("| *\\(=[^|\n]*\\)" (1 'org-formula t))
+ '("^[ \t]*| *\\([#!$*_^]\\) *|" (1 'org-formula t))
+ )))
(set (make-local-variable 'org-font-lock-keywords)
- (append
- (if org-noutline-p ; FIXME: I am not sure if eval will work
- ; on XEmacs if noutline is ever ported
- '((eval . (list "^\\(\\*+\\).*"
- 0 '(nth
- (% (- (match-end 1) (match-beginning 1) 1)
- org-n-levels)
- org-level-faces)
- nil t)))
- '(("^\\(\\(\\*+\\)[^\r\n]*\\)[\n\r]"
- (1 (nth (% (- (match-end 2) (match-beginning 2) 1)
- org-n-levels)
- org-level-faces)
- nil t))))
- org-font-lock-extra-keywords))
+ (append
+ (if org-noutline-p ; FIXME: I am not sure if eval will work
+ ; on XEmacs if noutline is ever ported
+ '((eval . (list "^\\(\\*+\\).*"
+ 0 '(nth
+ (% (- (match-end 1) (match-beginning 1) 1)
+ org-n-levels)
+ org-level-faces)
+ nil t)))
+ '(("^\\(\\(\\*+\\)[^\r\n]*\\)[\n\r]"
+ (1 (nth (% (- (match-end 2) (match-beginning 2) 1)
+ org-n-levels)
+ org-level-faces)
+ nil t))))
+ org-font-lock-extra-keywords))
(set (make-local-variable 'font-lock-defaults)
- '(org-font-lock-keywords t nil nil backward-paragraph))
+ '(org-font-lock-keywords t nil nil backward-paragraph))
(kill-local-variable 'font-lock-keywords) nil))
-
+
(defun org-unfontify-region (beg end &optional maybe_loudly)
"Remove fontification and activation overlays from links."
(font-lock-default-unfontify-region beg end)
(let* ((buffer-undo-list t)
- (inhibit-read-only t) (inhibit-point-motion-hooks t)
- (inhibit-modification-hooks t)
- deactivate-mark buffer-file-name buffer-file-truename)
+ (inhibit-read-only t) (inhibit-point-motion-hooks t)
+ (inhibit-modification-hooks t)
+ deactivate-mark buffer-file-name buffer-file-truename)
(remove-text-properties beg end '(mouse-face nil keymap nil))))
;;; Visibility cycling
@@ -1965,8 +1975,8 @@ The following commands are available:
by this line through 3 different states (local cycling)
1. FOLDED: Only the main headline is shown.
2. CHILDREN: The main headline and the direct children are shown. From
- this state, you can move to one of the children and
- zoom in further.
+ this state, you can move to one of the children and
+ zoom in further.
3. SUBTREE: Show the entire subtree, including body text.
- When there is a numeric prefix, go up to a heading with level ARG, do
@@ -1982,7 +1992,7 @@ The following commands are available:
(interactive "P")
(if (or (and (bobp) (not (looking-at outline-regexp)))
- (equal arg '(4)))
+ (equal arg '(4)))
;; special case: use global cycling
(setq arg t))
@@ -1991,9 +2001,9 @@ The following commands are available:
((org-at-table-p 'any)
;; Enter the table or move to the next field in the table
(or (org-table-recognize-table.el)
- (progn
- (org-table-justify-field-maybe)
- (org-table-next-field))))
+ (progn
+ (org-table-justify-field-maybe)
+ (org-table-next-field))))
((eq arg t) ;; Global cycling
@@ -2038,7 +2048,7 @@ The following commands are available:
(save-excursion
(org-back-to-heading)
(outline-up-heading (if (< arg 0) (- arg)
- (- (outline-level) arg)))
+ (- (outline-level) arg)))
(org-show-subtree)))
((save-excursion (beginning-of-line 1) (looking-at outline-regexp))
@@ -2055,33 +2065,33 @@ The following commands are available:
(beginning-of-line 2)) (setq eol (point)))
(outline-end-of-heading) (setq eoh (point))
(outline-end-of-subtree) (setq eos (point))
- (outline-next-heading))
+ (outline-next-heading))
;; Find out what to do next and set `this-command'
(cond
((= eos eoh)
;; Nothing is hidden behind this heading
- (message "EMPTY ENTRY")
- (setq org-cycle-subtree-status nil))
+ (message "EMPTY ENTRY")
+ (setq org-cycle-subtree-status nil))
((>= eol eos)
;; Entire subtree is hidden in one line: open it
(org-show-entry)
(show-children)
(message "CHILDREN")
(setq org-cycle-subtree-status 'children)
- (run-hook-with-args 'org-cycle-hook 'children))
+ (run-hook-with-args 'org-cycle-hook 'children))
((and (eq last-command this-command)
(eq org-cycle-subtree-status 'children))
;; We just showed the children, now show everything.
(org-show-subtree)
(message "SUBTREE")
(setq org-cycle-subtree-status 'subtree)
- (run-hook-with-args 'org-cycle-hook 'subtree))
+ (run-hook-with-args 'org-cycle-hook 'subtree))
(t
;; Default action: hide the subtree.
(hide-subtree)
(message "FOLDED")
(setq org-cycle-subtree-status 'folded)
- (run-hook-with-args 'org-cycle-hook 'folded)))))
+ (run-hook-with-args 'org-cycle-hook 'folded)))))
;; TAB emulation
(buffer-read-only (org-back-to-heading))
@@ -2090,16 +2100,16 @@ The following commands are available:
t
(eq org-cycle-emulate-tab t))
(if (and (looking-at "[ \n\r\t]")
- (string-match "^[ \t]*$" (buffer-substring
- (point-at-bol) (point))))
- (progn
- (beginning-of-line 1)
- (and (looking-at "[ \t]+") (replace-match ""))))
+ (string-match "^[ \t]*$" (buffer-substring
+ (point-at-bol) (point))))
+ (progn
+ (beginning-of-line 1)
+ (and (looking-at "[ \t]+") (replace-match ""))))
(indent-relative))
(t (save-excursion
- (org-back-to-heading)
- (org-cycle)))))
+ (org-back-to-heading)
+ (org-cycle)))))
(defun org-optimize-window-after-visibility-change (state)
"Adjust the window after a change in outline visibility.
@@ -2171,12 +2181,12 @@ original buffer in which the visibility is still unchanged. It then jumps
to the new location, making it and the headline hierarchy above it visible."
(interactive)
(let* ((org-goto-start-pos (point))
- (selected-point
- (org-get-location (current-buffer) org-goto-help)))
+ (selected-point
+ (org-get-location (current-buffer) org-goto-help)))
(if selected-point
- (progn
- (goto-char selected-point)
- (if (org-invisible-p) (org-show-hierarchy-above)))
+ (progn
+ (goto-char selected-point)
+ (if (org-invisible-p) (org-show-hierarchy-above)))
(error "Quit"))))
(defun org-get-location (buf help)
@@ -2186,33 +2196,33 @@ or nil."
(let (org-selected-point)
(save-excursion
(save-window-excursion
- (delete-other-windows)
- (switch-to-buffer (get-buffer-create "*org-goto*"))
- (with-output-to-temp-buffer "*Help*"
- (princ help))
- (shrink-window-if-larger-than-buffer (get-buffer-window "*Help*"))
- (setq buffer-read-only nil)
- (erase-buffer)
- (insert-buffer buf)
- (let ((org-startup-truncated t)
- (org-startup-folded t)
- (org-startup-with-deadline-check nil))
- (org-mode))
- (setq buffer-read-only t)
- (if (boundp 'org-goto-start-pos)
- (goto-char org-goto-start-pos)
- (goto-char (point-min)))
- (org-beginning-of-line)
- (message "Select location and press RET")
- ;; now we make sure that during selection, ony very few keys work
- ;; and that it is impossible to switch to another window.
- (let ((gm (current-global-map))
- (overriding-local-map org-goto-map))
- (unwind-protect
- (progn
- (use-global-map org-goto-map)
- (recursive-edit))
- (use-global-map gm)))))
+ (delete-other-windows)
+ (switch-to-buffer (get-buffer-create "*org-goto*"))
+ (with-output-to-temp-buffer "*Help*"
+ (princ help))
+ (shrink-window-if-larger-than-buffer (get-buffer-window "*Help*"))
+ (setq buffer-read-only nil)
+ (erase-buffer)
+ (insert-buffer buf)
+ (let ((org-startup-truncated t)
+ (org-startup-folded t)
+ (org-startup-with-deadline-check nil))
+ (org-mode))
+ (setq buffer-read-only t)
+ (if (boundp 'org-goto-start-pos)
+ (goto-char org-goto-start-pos)
+ (goto-char (point-min)))
+ (org-beginning-of-line)
+ (message "Select location and press RET")
+ ;; now we make sure that during selection, ony very few keys work
+ ;; and that it is impossible to switch to another window.
+ (let ((gm (current-global-map))
+ (overriding-local-map org-goto-map))
+ (unwind-protect
+ (progn
+ (use-global-map org-goto-map)
+ (recursive-edit))
+ (use-global-map gm)))))
(kill-buffer "*org-goto*")
org-selected-point))
@@ -2221,7 +2231,7 @@ or nil."
"Finish org-goto by going to the new location."
(interactive "P")
(setq org-selected-point (point)
- current-prefix-arg arg)
+ current-prefix-arg arg)
(throw 'exit nil))
(defun org-goto-left ()
@@ -2229,10 +2239,10 @@ or nil."
(interactive)
(if (org-on-heading-p)
(progn
- (beginning-of-line 1)
- (setq org-selected-point (point)
- current-prefix-arg (- (match-end 0) (match-beginning 0)))
- (throw 'exit nil))
+ (beginning-of-line 1)
+ (setq org-selected-point (point)
+ current-prefix-arg (- (match-end 0) (match-beginning 0)))
+ (throw 'exit nil))
(error "Not on a heading")))
(defun org-goto-right ()
@@ -2240,11 +2250,11 @@ or nil."
(interactive)
(if (org-on-heading-p)
(progn
- (outline-end-of-subtree)
- (or (eobp) (forward-char 1))
- (setq org-selected-point (point)
- current-prefix-arg (- (match-end 0) (match-beginning 0)))
- (throw 'exit nil))
+ (outline-end-of-subtree)
+ (or (eobp) (forward-char 1))
+ (setq org-selected-point (point)
+ current-prefix-arg (- (match-end 0) (match-beginning 0)))
+ (throw 'exit nil))
(error "Not on a heading")))
(defun org-goto-quit ()
@@ -2286,8 +2296,8 @@ state (TODO by default). Also with prefix arg, force first state."
(outline-previous-heading)
(looking-at org-todo-line-regexp))
(if (or arg
- (not (match-beginning 2))
- (equal (match-string 2) org-done-string))
+ (not (match-beginning 2))
+ (equal (match-string 2) org-done-string))
(insert (car org-todo-keywords) " ")
(insert (match-string 2) " ")))
@@ -2312,7 +2322,7 @@ in the region."
(interactive)
(save-excursion
(if (org-region-active-p)
- (org-map-region 'org-promote (region-beginning) (region-end))
+ (org-map-region 'org-promote (region-beginning) (region-end))
(org-promote)))
(org-fix-position-after-promote))
@@ -2323,7 +2333,7 @@ in the region."
(interactive)
(save-excursion
(if (org-region-active-p)
- (org-map-region 'org-demote (region-beginning) (region-end))
+ (org-map-region 'org-demote (region-beginning) (region-end))
(org-demote)))
(org-fix-position-after-promote))
@@ -2339,11 +2349,11 @@ If the region is active in `transient-mark-mode', promote all headings
in the region."
(org-back-to-heading t)
(let* ((level (save-match-data (funcall outline-level)))
- (up-head (make-string (1- level) ?*)))
+ (up-head (make-string (1- level) ?*)))
(if (= level 1) (error "Cannot promote to level 0. UNDO to recover"))
(replace-match up-head nil t)
(if org-adapt-indentation
- (org-fixup-indentation "^ " "" "^ ?\\S-"))))
+ (org-fixup-indentation "^ " "" "^ ?\\S-"))))
(defun org-demote ()
"Demote the current heading lower down the tree.
@@ -2351,10 +2361,10 @@ If the region is active in `transient-mark-mode', demote all headings
in the region."
(org-back-to-heading t)
(let* ((level (save-match-data (funcall outline-level)))
- (down-head (make-string (1+ level) ?*)))
+ (down-head (make-string (1+ level) ?*)))
(replace-match down-head nil t)
(if org-adapt-indentation
- (org-fixup-indentation "^ " " " "^\\S-"))))
+ (org-fixup-indentation "^ " " " "^\\S-"))))
(defun org-map-tree (fun)
"Call FUN for every heading underneath the current one."
@@ -2363,10 +2373,10 @@ in the region."
(save-excursion
(funcall fun)
(while (and (progn
- (outline-next-heading)
- (> (funcall outline-level) level))
- (not (eobp)))
- (funcall fun)))))
+ (outline-next-heading)
+ (> (funcall outline-level) level))
+ (not (eobp)))
+ (funcall fun)))))
(defun org-map-region (fun beg end)
"Call FUN for every heading between BEG and END."
@@ -2375,13 +2385,13 @@ in the region."
(setq end (copy-marker end))
(goto-char beg)
(if (and (re-search-forward (concat "^" outline-regexp) nil t)
- (< (point) end))
- (funcall fun))
+ (< (point) end))
+ (funcall fun))
(while (and (progn
- (outline-next-heading)
- (< (point) end))
- (not (eobp)))
- (funcall fun)))))
+ (outline-next-heading)
+ (< (point) end))
+ (not (eobp)))
+ (funcall fun)))))
(defun org-fixup-indentation (from to prohibit)
"Change the indentation in the current entry by re-replacing FROM with TO.
@@ -2391,11 +2401,11 @@ heading marker. But if there are any lines which are not indented, nothing
is changed at all."
(save-excursion
(let ((end (save-excursion (outline-next-heading)
- (point-marker))))
+ (point-marker))))
(unless (save-excursion (re-search-forward prohibit end t))
- (while (re-search-forward from end t)
- (replace-match to)
- (beginning-of-line 2)))
+ (while (re-search-forward from end t)
+ (replace-match to)
+ (beginning-of-line 2)))
(move-marker end nil))))
;;; Vertical tree motion, cutting and pasting of subtrees
@@ -2433,10 +2443,10 @@ is changed at all."
(if (> arg 0)
;; Moving forward - still need to move over subtree
(progn (outline-end-of-subtree)
- (outline-next-heading)
- (if (not (or (looking-at (concat "^" outline-regexp))
- (bolp)))
- (newline))))
+ (outline-next-heading)
+ (if (not (or (looking-at (concat "^" outline-regexp))
+ (bolp)))
+ (newline))))
(move-marker ins-point (point))
(setq txt (buffer-substring beg end))
(delete-region beg end)
@@ -2470,7 +2480,7 @@ If CUT is non nil, actually cut the subtree."
(setq beg (point))
(save-match-data
(save-excursion (outline-end-of-heading)
- (setq folded (org-invisible-p)))
+ (setq folded (org-invisible-p)))
(outline-end-of-subtree))
(if (equal (char-after) ?\n) (forward-char 1))
(setq end (point))
@@ -2480,8 +2490,8 @@ If CUT is non nil, actually cut the subtree."
(if cut (kill-region beg end) (copy-region-as-kill beg end))
(setq org-subtree-clip (current-kill 0))
(message "%s: Subtree with %d characters"
- (if cut "Cut" "Copied")
- (length org-subtree-clip)))))
+ (if cut "Cut" "Copied")
+ (length org-subtree-clip)))))
(defun org-paste-subtree (&optional level tree)
"Paste the clipboard as a subtree, with modification of headline level.
@@ -2506,51 +2516,51 @@ If optional TREE is given, use this text instead of the kill ring."
(substitute-command-keys
"The kill is not a (set of) tree(s) - please use \\[yank] to yank anyway")))
(let* ((txt (or tree (current-kill 0)))
- (^re (concat "^\\(" outline-regexp "\\)"))
- (re (concat "\\(" outline-regexp "\\)"))
- (^re_ (concat "\\(" outline-regexp "\\)[ \t]*"))
-
- (old-level (if (string-match ^re txt)
- (- (match-end 0) (match-beginning 0))
- -1))
- (force-level (cond (level (prefix-numeric-value level))
- ((string-match
- ^re_ (buffer-substring (point-at-bol) (point)))
- (- (match-end 0) (match-beginning 0)))
- (t nil)))
- (previous-level (save-excursion
- (condition-case nil
- (progn
- (outline-previous-visible-heading 1)
- (if (looking-at re)
- (- (match-end 0) (match-beginning 0))
- 1))
- (error 1))))
- (next-level (save-excursion
- (condition-case nil
- (progn
- (outline-next-visible-heading 1)
- (if (looking-at re)
- (- (match-end 0) (match-beginning 0))
- 1))
- (error 1))))
- (new-level (or force-level (max previous-level next-level)))
- (shift (if (or (= old-level -1)
- (= new-level -1)
- (= old-level new-level))
- 0
- (- new-level old-level)))
- (shift1 shift)
- (delta (if (> shift 0) -1 1))
- (func (if (> shift 0) 'org-demote 'org-promote))
- beg end)
+ (^re (concat "^\\(" outline-regexp "\\)"))
+ (re (concat "\\(" outline-regexp "\\)"))
+ (^re_ (concat "\\(" outline-regexp "\\)[ \t]*"))
+
+ (old-level (if (string-match ^re txt)
+ (- (match-end 0) (match-beginning 0))
+ -1))
+ (force-level (cond (level (prefix-numeric-value level))
+ ((string-match
+ ^re_ (buffer-substring (point-at-bol) (point)))
+ (- (match-end 0) (match-beginning 0)))
+ (t nil)))
+ (previous-level (save-excursion
+ (condition-case nil
+ (progn
+ (outline-previous-visible-heading 1)
+ (if (looking-at re)
+ (- (match-end 0) (match-beginning 0))
+ 1))
+ (error 1))))
+ (next-level (save-excursion
+ (condition-case nil
+ (progn
+ (outline-next-visible-heading 1)
+ (if (looking-at re)
+ (- (match-end 0) (match-beginning 0))
+ 1))
+ (error 1))))
+ (new-level (or force-level (max previous-level next-level)))
+ (shift (if (or (= old-level -1)
+ (= new-level -1)
+ (= old-level new-level))
+ 0
+ (- new-level old-level)))
+ (shift1 shift)
+ (delta (if (> shift 0) -1 1))
+ (func (if (> shift 0) 'org-demote 'org-promote))
+ beg end)
;; Remove the forces level indicator
(if force-level
- (delete-region (point-at-bol) (point)))
+ (delete-region (point-at-bol) (point)))
;; Make sure we start at the beginning of an empty line
(if (not (bolp)) (insert "\n"))
(if (not (looking-at "[ \t]*$"))
- (progn (insert "\n") (backward-char 1)))
+ (progn (insert "\n") (backward-char 1)))
;; Paste
(setq beg (point))
(insert txt)
@@ -2558,19 +2568,19 @@ If optional TREE is given, use this text instead of the kill ring."
(goto-char beg)
;; Shift if necessary
(if (= shift 0)
- (message "Pasted at level %d, without shift" new-level)
+ (message "Pasted at level %d, without shift" new-level)
(save-restriction
- (narrow-to-region beg end)
- (while (not (= shift 0))
- (org-map-region func (point-min) (point-max))
- (setq shift (+ delta shift)))
- (goto-char (point-min))
- (message "Pasted at level %d, with shift by %d levels"
- new-level shift1)))
+ (narrow-to-region beg end)
+ (while (not (= shift 0))
+ (org-map-region func (point-min) (point-max))
+ (setq shift (+ delta shift)))
+ (goto-char (point-min))
+ (message "Pasted at level %d, with shift by %d levels"
+ new-level shift1)))
(if (and (eq org-subtree-clip (current-kill 0))
- org-subtree-clip-folded)
- ;; The tree was folded before it was killed/copied
- (hide-subtree))))
+ org-subtree-clip-folded)
+ ;; The tree was folded before it was killed/copied
+ (hide-subtree))))
(defun org-kill-is-subtree-p (&optional txt)
"Check if the current kill is an outline subtree, or a set of trees.
@@ -2580,17 +2590,17 @@ So this will actually accept several entries of equal levels as well,
which is OK for `org-paste-subtree'.
If optional TXT is given, check this string instead of the current kill."
(let* ((kill (or txt (current-kill 0) ""))
- (start-level (and (string-match (concat "\\`" outline-regexp) kill)
- (- (match-end 0) (match-beginning 0))))
- (re (concat "^" outline-regexp))
- (start 1))
+ (start-level (and (string-match (concat "\\`" outline-regexp) kill)
+ (- (match-end 0) (match-beginning 0))))
+ (re (concat "^" outline-regexp))
+ (start 1))
(if (not start-level)
- nil ;; does not even start with a heading
+ nil ;; does not even start with a heading
(catch 'exit
- (while (setq start (string-match re kill (1+ start)))
- (if (< (- (match-end 0) (match-beginning 0)) start-level)
- (throw 'exit nil)))
- t))))
+ (while (setq start (string-match re kill (1+ start)))
+ (if (< (- (match-end 0) (match-beginning 0)) start-level)
+ (throw 'exit nil)))
+ t))))
(defun org-archive-subtree ()
"Move the current subtree to the archive.
@@ -2600,93 +2610,93 @@ heading be marked DONE, and the current time will be added."
(interactive)
;; Save all relevant TODO keyword-relatex variables
(let ((tr-org-todo-line-regexp org-todo-line-regexp) ; keep despite compiler
- (tr-org-todo-keywords org-todo-keywords)
- (tr-org-todo-interpretation org-todo-interpretation)
- (tr-org-done-string org-done-string)
- (tr-org-todo-regexp org-todo-regexp)
- (tr-org-todo-line-regexp org-todo-line-regexp)
- (this-buffer (current-buffer))
- file heading buffer level newfile-p)
+ (tr-org-todo-keywords org-todo-keywords)
+ (tr-org-todo-interpretation org-todo-interpretation)
+ (tr-org-done-string org-done-string)
+ (tr-org-todo-regexp org-todo-regexp)
+ (tr-org-todo-line-regexp org-todo-line-regexp)
+ (this-buffer (current-buffer))
+ file heading buffer level newfile-p)
(if (string-match "\\(.*\\)::\\(.*\\)" org-archive-location)
- (progn
- (setq file (format (match-string 1 org-archive-location)
- (file-name-nondirectory (buffer-file-name)))
- heading (match-string 2 org-archive-location)))
+ (progn
+ (setq file (format (match-string 1 org-archive-location)
+ (file-name-nondirectory (buffer-file-name)))
+ heading (match-string 2 org-archive-location)))
(error "Invalid `org-archive-location'"))
(if (> (length file) 0)
- (setq newfile-p (not (file-exists-p file))
- buffer (find-file-noselect file))
+ (setq newfile-p (not (file-exists-p file))
+ buffer (find-file-noselect file))
(setq buffer (current-buffer)))
(unless buffer
(error "Cannot access file \"%s\"" file))
(if (and (> (length heading) 0)
- (string-match "^\\*+" heading))
- (setq level (match-end 0))
+ (string-match "^\\*+" heading))
+ (setq level (match-end 0))
(setq heading nil level 0))
(save-excursion
(org-copy-subtree) ; We first only copy, in case something goes wrong
(set-buffer buffer)
;; Enforce org-mode for the archive buffer
(if (not (eq major-mode 'org-mode))
- ;; Force the mode for future visits.
- (let ((org-insert-mode-line-in-empty-file t))
- (call-interactively 'org-mode)))
+ ;; Force the mode for future visits.
+ (let ((org-insert-mode-line-in-empty-file t))
+ (call-interactively 'org-mode)))
(when newfile-p
- (goto-char (point-max))
- (insert (format "\nArchived entries from file %s\n\n"
- (buffer-file-name this-buffer))))
+ (goto-char (point-max))
+ (insert (format "\nArchived entries from file %s\n\n"
+ (buffer-file-name this-buffer))))
;; Force the TODO keywords of the original buffer
(let ((org-todo-line-regexp tr-org-todo-line-regexp)
- (org-todo-keywords tr-org-todo-keywords)
- (org-todo-interpretation tr-org-todo-interpretation)
- (org-done-string tr-org-done-string)
- (org-todo-regexp tr-org-todo-regexp)
- (org-todo-line-regexp tr-org-todo-line-regexp))
- (goto-char (point-min))
- (if heading
- (progn
- (if (re-search-forward
- (concat "\\(^\\|\r\\)"
- (regexp-quote heading) "[ \t]*\\($\\|\r\\)")
- nil t)
- (goto-char (match-end 0))
- ;; Heading not found, just insert it at the end
- (goto-char (point-max))
- (or (bolp) (insert "\n"))
- (insert "\n" heading "\n")
- (end-of-line 0))
- ;; Make the heading visible, and the following as well
- (let ((org-show-following-heading t)) (org-show-hierarchy-above))
- (if (re-search-forward
- (concat "^" (regexp-quote (make-string level ?*)) "[ \t]")
- nil t)
- (progn (goto-char (match-beginning 0)) (insert "\n")
- (beginning-of-line 0))
- (goto-char (point-max)) (insert "\n")))
- (goto-char (point-max)) (insert "\n"))
- ;; Paste
- (org-paste-subtree (1+ level))
- ;; Mark the entry as done, i.e. set to last work in org-todo-keywords
- (if org-archive-mark-done
- (org-todo (length org-todo-keywords)))
- ;; Move cursor to right after the TODO keyword
- (when org-archive-stamp-time
- (beginning-of-line 1)
- (looking-at org-todo-line-regexp)
- (goto-char (or (match-end 2) (match-beginning 3)))
- (insert "(" (format-time-string (cdr org-time-stamp-formats)
- (current-time))
- ")"))
- ;; Save the buffer, if it is not the same buffer.
- (if (not (eq this-buffer buffer)) (save-buffer))))
+ (org-todo-keywords tr-org-todo-keywords)
+ (org-todo-interpretation tr-org-todo-interpretation)
+ (org-done-string tr-org-done-string)
+ (org-todo-regexp tr-org-todo-regexp)
+ (org-todo-line-regexp tr-org-todo-line-regexp))
+ (goto-char (point-min))
+ (if heading
+ (progn
+ (if (re-search-forward
+ (concat "\\(^\\|\r\\)"
+ (regexp-quote heading) "[ \t]*\\($\\|\r\\)")
+ nil t)
+ (goto-char (match-end 0))
+ ;; Heading not found, just insert it at the end
+ (goto-char (point-max))
+ (or (bolp) (insert "\n"))
+ (insert "\n" heading "\n")
+ (end-of-line 0))
+ ;; Make the heading visible, and the following as well
+ (let ((org-show-following-heading t)) (org-show-hierarchy-above))
+ (if (re-search-forward
+ (concat "^" (regexp-quote (make-string level ?*)) "[ \t]")
+ nil t)
+ (progn (goto-char (match-beginning 0)) (insert "\n")
+ (beginning-of-line 0))
+ (goto-char (point-max)) (insert "\n")))
+ (goto-char (point-max)) (insert "\n"))
+ ;; Paste
+ (org-paste-subtree (1+ level))
+ ;; Mark the entry as done, i.e. set to last work in org-todo-keywords
+ (if org-archive-mark-done
+ (org-todo (length org-todo-keywords)))
+ ;; Move cursor to right after the TODO keyword
+ (when org-archive-stamp-time
+ (beginning-of-line 1)
+ (looking-at org-todo-line-regexp)
+ (goto-char (or (match-end 2) (match-beginning 3)))
+ (insert "(" (format-time-string (cdr org-time-stamp-formats)
+ (current-time))
+ ")"))
+ ;; Save the buffer, if it is not the same buffer.
+ (if (not (eq this-buffer buffer)) (save-buffer))))
;; Here we are back in the original buffer. Everything seems to have
;; worked. So now cut the tree and finish up.
(org-cut-subtree)
(if (looking-at "[ \t]*$") (kill-line))
(message "Subtree archived %s"
- (if (eq this-buffer buffer)
- (concat "under heading: " heading)
- (concat "in file: " (abbreviate-file-name file))))))
+ (if (eq this-buffer buffer)
+ (concat "under heading: " heading)
+ (concat "in file: " (abbreviate-file-name file))))))
;;; Completion
@@ -2702,63 +2712,63 @@ At all other locations, this simply calls `ispell-complete-word'."
(interactive "P")
(catch 'exit
(let* ((end (point))
- (beg (save-excursion
- (if (equal (char-before (point)) ?\ ) (backward-char 1))
- (skip-chars-backward "a-zA-Z0-9_:$")
- (point)))
- (texp (equal (char-before beg) ?\\))
- (form (equal (char-before beg) ?=))
- (opt (equal (buffer-substring (max (point-at-bol) (- beg 2))
- beg)
- "#+"))
- (pattern (buffer-substring-no-properties beg end))
- (completion-ignore-case opt)
- (type nil)
- (table (cond
- (opt
- (setq type :opt)
- (mapcar (lambda (x)
- (string-match "^#\\+\\(\\([A-Z_]+:?\\).*\\)" x)
- (cons (match-string 2 x) (match-string 1 x)))
- (org-split-string (org-get-current-options) "\n")))
- (texp
- (setq type :tex)
- org-html-entities)
- (form
- (setq type :form)
- '(("sum") ("sumv") ("sumh")))
- ((string-match "\\`\\*+[ \t]*\\'"
- (buffer-substring (point-at-bol) beg))
- (setq type :todo)
- (mapcar 'list org-todo-keywords))
- (t (progn (ispell-complete-word arg) (throw 'exit nil)))))
- (completion (try-completion pattern table)))
+ (beg (save-excursion
+ (if (equal (char-before (point)) ?\ ) (backward-char 1))
+ (skip-chars-backward "a-zA-Z0-9_:$")
+ (point)))
+ (texp (equal (char-before beg) ?\\))
+ (form (equal (char-before beg) ?=))
+ (opt (equal (buffer-substring (max (point-at-bol) (- beg 2))
+ beg)
+ "#+"))
+ (pattern (buffer-substring-no-properties beg end))
+ (completion-ignore-case opt)
+ (type nil)
+ (table (cond
+ (opt
+ (setq type :opt)
+ (mapcar (lambda (x)
+ (string-match "^#\\+\\(\\([A-Z_]+:?\\).*\\)" x)
+ (cons (match-string 2 x) (match-string 1 x)))
+ (org-split-string (org-get-current-options) "\n")))
+ (texp
+ (setq type :tex)
+ org-html-entities)
+ (form
+ (setq type :form)
+ '(("sum") ("sumv") ("sumh")))
+ ((string-match "\\`\\*+[ \t]*\\'"
+ (buffer-substring (point-at-bol) beg))
+ (setq type :todo)
+ (mapcar 'list org-todo-keywords))
+ (t (progn (ispell-complete-word arg) (throw 'exit nil)))))
+ (completion (try-completion pattern table)))
(cond ((eq completion t)
- (if (equal type :opt)
- (insert (substring (cdr (assoc (upcase pattern) table))
- (length pattern)))))
- ((null completion)
- (message "Can't find completion for \"%s\"" pattern)
- (ding))
- ((not (string= pattern completion))
- (delete-region beg end)
- (if (string-match " +$" completion)
- (setq completion (replace-match "" t t completion)))
- (insert completion)
- (if (get-buffer-window "*Completions*")
- (delete-window (get-buffer-window "*Completions*")))
- (if (and (eq type :todo)
- (assoc completion table))
- (insert " "))
- (if (and (equal type :opt) (assoc completion table))
- (message (substitute-command-keys
- "Press \\[org-complete] again to insert example settings"))))
- (t
- (message "Making completion list...")
- (let ((list (sort (all-completions pattern table) 'string<)))
- (with-output-to-temp-buffer "*Completions*"
- (display-completion-list list)))
- (message "Making completion list...%s" "done"))))))
+ (if (equal type :opt)
+ (insert (substring (cdr (assoc (upcase pattern) table))
+ (length pattern)))))
+ ((null completion)
+ (message "Can't find completion for \"%s\"" pattern)
+ (ding))
+ ((not (string= pattern completion))
+ (delete-region beg end)
+ (if (string-match " +$" completion)
+ (setq completion (replace-match "" t t completion)))
+ (insert completion)
+ (if (get-buffer-window "*Completions*")
+ (delete-window (get-buffer-window "*Completions*")))
+ (if (and (eq type :todo)
+ (assoc completion table))
+ (insert " "))
+ (if (and (equal type :opt) (assoc completion table))
+ (message (substitute-command-keys
+ "Press \\[org-complete] again to insert example settings"))))
+ (t
+ (message "Making completion list...")
+ (let ((list (sort (all-completions pattern table) 'string<)))
+ (with-output-to-temp-buffer "*Completions*"
+ (display-completion-list list)))
+ (message "Making completion list...%s" "done"))))))
;;; Comments, TODO and DEADLINE
@@ -2768,12 +2778,12 @@ At all other locations, this simply calls `ispell-complete-word'."
(save-excursion
(org-back-to-heading)
(if (looking-at (concat outline-regexp
- "\\( +\\<" org-comment-string "\\>\\)"))
- (replace-match "" t t nil 1)
+ "\\( +\\<" org-comment-string "\\>\\)"))
+ (replace-match "" t t nil 1)
(if (looking-at outline-regexp)
- (progn
- (goto-char (match-end 0))
- (insert " " org-comment-string))))))
+ (progn
+ (goto-char (match-end 0))
+ (insert " " org-comment-string))))))
(defvar org-last-todo-state-is-todo nil
"This is non-nil when the last TODO state change led to a TODO state.
@@ -2800,44 +2810,44 @@ prefix arg, switch to that state."
(org-back-to-heading)
(if (looking-at outline-regexp) (goto-char (match-end 0)))
(or (looking-at (concat " +" org-todo-regexp " *"))
- (looking-at " *"))
+ (looking-at " *"))
(let* ((this (match-string 1))
- (completion-ignore-case t)
- (member (member this org-todo-keywords))
- (tail (cdr member))
- (state (cond
- ((equal arg '(4))
- ;; Read a state with completion
- (completing-read "State: " (mapcar (lambda(x) (list x))
- org-todo-keywords)
- nil t))
- (arg
- ;; user requests a specific state
- (nth (1- (prefix-numeric-value arg))
- org-todo-keywords))
- ((null member) (car org-todo-keywords))
- ((null tail) nil) ;; -> first entry
- ((eq org-todo-interpretation 'sequence)
- (car tail))
- ((memq org-todo-interpretation '(type priority))
- (if (eq this-command last-command)
- (car tail)
- (if (> (length tail) 0) org-done-string nil)))
- (t nil)))
- (next (if state (concat " " state " ") " ")))
+ (completion-ignore-case t)
+ (member (member this org-todo-keywords))
+ (tail (cdr member))
+ (state (cond
+ ((equal arg '(4))
+ ;; Read a state with completion
+ (completing-read "State: " (mapcar (lambda(x) (list x))
+ org-todo-keywords)
+ nil t))
+ (arg
+ ;; user requests a specific state
+ (nth (1- (prefix-numeric-value arg))
+ org-todo-keywords))
+ ((null member) (car org-todo-keywords))
+ ((null tail) nil) ;; -> first entry
+ ((eq org-todo-interpretation 'sequence)
+ (car tail))
+ ((memq org-todo-interpretation '(type priority))
+ (if (eq this-command last-command)
+ (car tail)
+ (if (> (length tail) 0) org-done-string nil)))
+ (t nil)))
+ (next (if state (concat " " state " ") " ")))
(replace-match next t t)
(setq org-last-todo-state-is-todo
- (not (equal state org-done-string)))
+ (not (equal state org-done-string)))
(run-hooks 'org-after-todo-state-change-hook)))
;; Fixup cursor location if close to the keyword
(if (and (outline-on-heading-p)
- (not (bolp))
- (save-excursion (beginning-of-line 1)
- (looking-at org-todo-line-regexp))
- (< (point) (+ 2 (or (match-end 2) (match-end 1)))))
+ (not (bolp))
+ (save-excursion (beginning-of-line 1)
+ (looking-at org-todo-line-regexp))
+ (< (point) (+ 2 (or (match-end 2) (match-end 1)))))
(progn
- (goto-char (or (match-end 2) (match-end 1)))
- (just-one-space))))
+ (goto-char (or (match-end 2) (match-end 1)))
+ (just-one-space))))
(defun org-show-todo-tree (arg)
"Make a compact tree which shows all headlines marked with TODO.
@@ -2845,9 +2855,9 @@ The tree will show the lines where the regexp matches, and all higher
headlines above the match."
(interactive "P")
(let ((case-fold-search nil)
- (kwd-re (if arg org-todo-regexp org-not-done-regexp)))
+ (kwd-re (if arg org-todo-regexp org-not-done-regexp)))
(message "%d TODO entries found"
- (org-occur (concat "^" outline-regexp " +" kwd-re )))))
+ (org-occur (concat "^" outline-regexp " +" kwd-re )))))
(defun org-deadline ()
"Insert the DEADLINE: string to make a deadline.
@@ -2857,9 +2867,9 @@ to modify it to the correct date."
(insert
org-deadline-string " "
(format-time-string (car org-time-stamp-formats)
- (org-read-date nil 'to-time)))
+ (org-read-date nil 'to-time)))
(message (substitute-command-keys
- "Use \\[org-timestamp-up-day] and \\[org-timestamp-down-day] to change the date.")))
+ "Use \\[org-timestamp-up-day] and \\[org-timestamp-down-day] to change the date.")))
(defun org-schedule ()
"Insert the SCHEDULED: string to schedule a TODO item.
@@ -2869,9 +2879,9 @@ to modify it to the correct date."
(insert
org-scheduled-string " "
(format-time-string (car org-time-stamp-formats)
- (org-read-date nil 'to-time)))
+ (org-read-date nil 'to-time)))
(message (substitute-command-keys
- "Use \\[org-timestamp-up-day] and \\[org-timestamp-down-day] to change the date.")))
+ "Use \\[org-timestamp-up-day] and \\[org-timestamp-down-day] to change the date.")))
(defun org-occur (regexp &optional callback)
@@ -2888,13 +2898,13 @@ that the match should indeed be shown."
(goto-char (point-min))
(hide-sublevels 1)
(while (re-search-forward regexp nil t)
- (when (or (not callback)
- (funcall callback))
- (setq cnt (1+ cnt))
- (org-show-hierarchy-above))))
+ (when (or (not callback)
+ (funcall callback))
+ (setq cnt (1+ cnt))
+ (org-show-hierarchy-above))))
(run-hooks 'org-occur-hook)
(if (interactive-p)
- (message "%d match(es) for regexp %s" cnt regexp))
+ (message "%d match(es) for regexp %s" cnt regexp))
cnt))
(defun org-show-hierarchy-above ()
@@ -2904,12 +2914,12 @@ that the match should indeed be shown."
(org-show-hidden-entry)) ; show entire entry
(save-excursion
(and org-show-following-heading
- (outline-next-heading)
- (org-flag-heading nil))) ; show the next heading
+ (outline-next-heading)
+ (org-flag-heading nil))) ; show the next heading
(save-excursion ; show all higher headings
(while (condition-case nil
- (progn (org-up-heading-all 1) t)
- (error nil))
+ (progn (org-up-heading-all 1) t)
+ (error nil))
(org-flag-heading nil))))
;;; Priorities
@@ -2938,39 +2948,39 @@ ACTION can be set, up, or down."
(save-excursion
(org-back-to-heading)
(if (looking-at org-priority-regexp)
- (setq current (string-to-char (match-string 2))
- have t)
- (setq current org-default-priority))
+ (setq current (string-to-char (match-string 2))
+ have t)
+ (setq current org-default-priority))
(cond
((eq action 'set)
- (message (format "Priority A-%c, SPC to remove: " org-lowest-priority))
- (setq new (read-char-exclusive))
- (cond ((equal new ?\ ) (setq remove t))
- ((or (< (upcase new) ?A) (> (upcase new) org-lowest-priority))
- (error "Priority must be between `%c' and `%c'"
- ?A org-lowest-priority))))
+ (message (format "Priority A-%c, SPC to remove: " org-lowest-priority))
+ (setq new (read-char-exclusive))
+ (cond ((equal new ?\ ) (setq remove t))
+ ((or (< (upcase new) ?A) (> (upcase new) org-lowest-priority))
+ (error "Priority must be between `%c' and `%c'"
+ ?A org-lowest-priority))))
((eq action 'up)
- (setq new (1- current)))
+ (setq new (1- current)))
((eq action 'down)
- (setq new (1+ current)))
+ (setq new (1+ current)))
(t (error "Invalid action")))
(setq new (min (max ?A (upcase new)) org-lowest-priority))
(setq news (format "%c" new))
(if have
- (if remove
- (replace-match "" t t nil 1)
- (replace-match news t t nil 2))
- (if remove
- (error "No priority cookie found in line")
- (looking-at org-todo-line-regexp)
- (if (match-end 2)
- (progn
- (goto-char (match-end 2))
- (insert " [#" news "]"))
- (goto-char (match-beginning 3))
- (insert "[#" news "] ")))))
+ (if remove
+ (replace-match "" t t nil 1)
+ (replace-match news t t nil 2))
+ (if remove
+ (error "No priority cookie found in line")
+ (looking-at org-todo-line-regexp)
+ (if (match-end 2)
+ (progn
+ (goto-char (match-end 2))
+ (insert " [#" news "]"))
+ (goto-char (match-beginning 3))
+ (insert "[#" news "] ")))))
(if remove
- (message "Priority removed")
+ (message "Priority removed")
(message "Priority of current item set to %s" news))))
@@ -2978,10 +2988,10 @@ ACTION can be set, up, or down."
"Find priority cookie and return priority."
(save-match-data
(if (not (string-match org-priority-regexp s))
- (* 1000 (- org-lowest-priority org-default-priority))
- (* 1000 (- org-lowest-priority
- (string-to-char (match-string 2 s)))))))
-
+ (* 1000 (- org-lowest-priority org-default-priority))
+ (* 1000 (- org-lowest-priority
+ (string-to-char (match-string 2 s)))))))
+
;;; Timestamps
(defvar org-last-changed-timestamp nil)
@@ -2997,29 +3007,29 @@ will represent the current date/time. If there is already a timestamp
at the cursor, it will be modified."
(interactive "P")
(let ((fmt (if arg (cdr org-time-stamp-formats)
- (car org-time-stamp-formats)))
- (org-time-was-given nil)
- time)
+ (car org-time-stamp-formats)))
+ (org-time-was-given nil)
+ time)
(cond
((and (org-at-timestamp-p)
- (eq last-command 'org-time-stamp)
- (eq this-command 'org-time-stamp))
+ (eq last-command 'org-time-stamp)
+ (eq this-command 'org-time-stamp))
(insert "--")
(setq time (let ((this-command this-command))
- (org-read-date arg 'totime)))
+ (org-read-date arg 'totime)))
(if org-time-was-given (setq fmt (cdr org-time-stamp-formats)))
(insert (format-time-string fmt time)))
((org-at-timestamp-p)
(setq time (let ((this-command this-command))
- (org-read-date arg 'totime)))
+ (org-read-date arg 'totime)))
(and (org-at-timestamp-p) (replace-match
- (setq org-last-changed-timestamp
- (format-time-string fmt time))
- t t))
+ (setq org-last-changed-timestamp
+ (format-time-string fmt time))
+ t t))
(message "Timestamp updated"))
(t
(setq time (let ((this-command this-command))
- (org-read-date arg 'totime)))
+ (org-read-date arg 'totime)))
(if org-time-was-given (setq fmt (cdr org-time-stamp-formats)))
(insert (format-time-string fmt time))))))
@@ -3043,8 +3053,8 @@ but this can be configured with the variables `parse-time-months' and
While prompting, a calendar is popped up - you can also select the
date with the mouse (button 1). The calendar shows a period of three
-month. To scroll it to other months, use the keys `>' and `<'.
-If you don't like the calendar, turn it off with
+month. To scroll it to other months, use the keys `>' and `<'.
+If you don't like the calendar, turn it off with
\(setq org-popup-calendar-for-date-prompt nil).
With optional argument TO-TIME, the date will immediately be converted
@@ -3055,98 +3065,98 @@ enter a time, and this function will inform the calling routine about
this change. The calling routine may then choose to change the format
used to insert the time stamp into the buffer to include the time."
(let* ((default-time
- ;; Default time is either today, or, when entering a range,
- ;; the range start.
- (if (save-excursion
- (re-search-backward
- (concat org-ts-regexp "--\\=")
- (- (point) 20) t))
- (apply
- 'encode-time
- (mapcar (lambda(x) (or x 0)) ;; FIXME: Problem with timezone?
- (parse-time-string (match-string 1))))
- (current-time)))
- (timestr (format-time-string
- (if with-time "%Y-%m-%d %H:%M" "%Y-%m-%d") default-time))
- (prompt (format "YYYY-MM-DD [%s]: " timestr))
- ans ans1 ans2
- second minute hour day month year tl)
+ ;; Default time is either today, or, when entering a range,
+ ;; the range start.
+ (if (save-excursion
+ (re-search-backward
+ (concat org-ts-regexp "--\\=")
+ (- (point) 20) t))
+ (apply
+ 'encode-time
+ (mapcar (lambda(x) (or x 0)) ;; FIXME: Problem with timezone?
+ (parse-time-string (match-string 1))))
+ (current-time)))
+ (timestr (format-time-string
+ (if with-time "%Y-%m-%d %H:%M" "%Y-%m-%d") default-time))
+ (prompt (format "YYYY-MM-DD [%s]: " timestr))
+ ans ans1 ans2
+ second minute hour day month year tl)
(if org-popup-calendar-for-date-prompt
- ;; Also show a calendar for date selection
- ;; Copied (with modifications) from planner.el by John Wiegley
- (save-excursion
- (save-window-excursion
- (calendar)
- (calendar-forward-day (- (time-to-days default-time)
- (calendar-absolute-from-gregorian
- (calendar-current-date))))
- (let* ((old-map (current-local-map))
- (map (copy-keymap calendar-mode-map))
- (minibuffer-local-map (copy-keymap minibuffer-local-map)))
- (define-key map (kbd "RET") 'org-calendar-select)
- (define-key map (if org-xemacs-p [button1] [mouse-1])
- 'org-calendar-select)
- (define-key minibuffer-local-map [(meta shift left)]
- (lambda () (interactive)
- (org-eval-in-calendar '(calendar-backward-month 1))))
- (define-key minibuffer-local-map [(meta shift right)]
- (lambda () (interactive)
- (org-eval-in-calendar '(calendar-forward-month 1))))
- (define-key minibuffer-local-map [(shift up)]
- (lambda () (interactive)
- (org-eval-in-calendar '(calendar-backward-week 1))))
- (define-key minibuffer-local-map [(shift down)]
- (lambda () (interactive)
- (org-eval-in-calendar '(calendar-forward-week 1))))
- (define-key minibuffer-local-map [(shift left)]
- (lambda () (interactive)
- (org-eval-in-calendar '(calendar-backward-day 1))))
- (define-key minibuffer-local-map [(shift right)]
- (lambda () (interactive)
- (org-eval-in-calendar '(calendar-forward-day 1))))
- (define-key minibuffer-local-map ">"
- (lambda () (interactive)
- (org-eval-in-calendar '(scroll-calendar-left 1))))
- (define-key minibuffer-local-map "<"
- (lambda () (interactive)
- (org-eval-in-calendar '(scroll-calendar-right 1))))
- (unwind-protect
- (progn
- (use-local-map map)
- (setq ans (read-string prompt "" nil nil))
- (setq ans (or ans1 ans2 ans)))
- (use-local-map old-map)))))
+ ;; Also show a calendar for date selection
+ ;; Copied (with modifications) from planner.el by John Wiegley
+ (save-excursion
+ (save-window-excursion
+ (calendar)
+ (calendar-forward-day (- (time-to-days default-time)
+ (calendar-absolute-from-gregorian
+ (calendar-current-date))))
+ (let* ((old-map (current-local-map))
+ (map (copy-keymap calendar-mode-map))
+ (minibuffer-local-map (copy-keymap minibuffer-local-map)))
+ (define-key map (kbd "RET") 'org-calendar-select)
+ (define-key map (if org-xemacs-p [button1] [mouse-1])
+ 'org-calendar-select)
+ (define-key minibuffer-local-map [(meta shift left)]
+ (lambda () (interactive)
+ (org-eval-in-calendar '(calendar-backward-month 1))))
+ (define-key minibuffer-local-map [(meta shift right)]
+ (lambda () (interactive)
+ (org-eval-in-calendar '(calendar-forward-month 1))))
+ (define-key minibuffer-local-map [(shift up)]
+ (lambda () (interactive)
+ (org-eval-in-calendar '(calendar-backward-week 1))))
+ (define-key minibuffer-local-map [(shift down)]
+ (lambda () (interactive)
+ (org-eval-in-calendar '(calendar-forward-week 1))))
+ (define-key minibuffer-local-map [(shift left)]
+ (lambda () (interactive)
+ (org-eval-in-calendar '(calendar-backward-day 1))))
+ (define-key minibuffer-local-map [(shift right)]
+ (lambda () (interactive)
+ (org-eval-in-calendar '(calendar-forward-day 1))))
+ (define-key minibuffer-local-map ">"
+ (lambda () (interactive)
+ (org-eval-in-calendar '(scroll-calendar-left 1))))
+ (define-key minibuffer-local-map "<"
+ (lambda () (interactive)
+ (org-eval-in-calendar '(scroll-calendar-right 1))))
+ (unwind-protect
+ (progn
+ (use-local-map map)
+ (setq ans (read-string prompt "" nil nil))
+ (setq ans (or ans1 ans2 ans)))
+ (use-local-map old-map)))))
;; Naked prompt only
(setq ans (read-string prompt "" nil timestr)))
(if (string-match
- "^ *\\(\\([0-9]+\\)-\\)?\\([0-1]?[0-9]\\)-\\([0-3]?[0-9]\\)\\([^-0-9]\\|$\\)" ans)
- (progn
- (setq year (if (match-end 2)
- (string-to-number (match-string 2 ans))
- (string-to-number (format-time-string "%Y")))
- month (string-to-number (match-string 3 ans))
- day (string-to-number (match-string 4 ans)))
- (if (< year 100) (setq year (+ 2000 year)))
- (setq ans (replace-match (format "%04d-%02d-%02d" year month day)
- t t ans))))
+ "^ *\\(\\([0-9]+\\)-\\)?\\([0-1]?[0-9]\\)-\\([0-3]?[0-9]\\)\\([^-0-9]\\|$\\)" ans)
+ (progn
+ (setq year (if (match-end 2)
+ (string-to-number (match-string 2 ans))
+ (string-to-number (format-time-string "%Y")))
+ month (string-to-number (match-string 3 ans))
+ day (string-to-number (match-string 4 ans)))
+ (if (< year 100) (setq year (+ 2000 year)))
+ (setq ans (replace-match (format "%04d-%02d-%02d" year month day)
+ t t ans))))
(setq tl (parse-time-string ans)
- year (or (nth 5 tl) (string-to-number (format-time-string "%Y")))
- month (or (nth 4 tl) (string-to-number (format-time-string "%m")))
- day (or (nth 3 tl) (string-to-number (format-time-string "%d")))
- hour (or (nth 2 tl) (string-to-number (format-time-string "%H")))
- minute (or (nth 1 tl) (string-to-number (format-time-string "%M")))
- second (or (nth 0 tl) 0))
+ year (or (nth 5 tl) (string-to-number (format-time-string "%Y")))
+ month (or (nth 4 tl) (string-to-number (format-time-string "%m")))
+ day (or (nth 3 tl) (string-to-number (format-time-string "%d")))
+ hour (or (nth 2 tl) (string-to-number (format-time-string "%H")))
+ minute (or (nth 1 tl) (string-to-number (format-time-string "%M")))
+ second (or (nth 0 tl) 0))
(if (and (boundp 'org-time-was-given)
- (nth 2 tl))
- (setq org-time-was-given t))
+ (nth 2 tl))
+ (setq org-time-was-given t))
(if (< year 100) (setq year (+ 2000 year)))
(if to-time
- (encode-time second minute hour day month year)
+ (encode-time second minute hour day month year)
(if (or (nth 1 tl) (nth 2 tl))
- (format "%04d-%02d-%02d %02d:%02d" year month day hour minute)
- (format "%04d-%02d-%02d" year month day)))))
+ (format "%04d-%02d-%02d %02d:%02d" year month day hour minute)
+ (format "%04d-%02d-%02d" year month day)))))
(defun org-eval-in-calendar (form)
"Eval FORM in the calendar window and return to current window.
@@ -3156,8 +3166,8 @@ Also, store the cursor date in variable ans2."
(eval form)
(when (calendar-cursor-to-date)
(let* ((date (calendar-cursor-to-date))
- (time (encode-time 0 0 0 (nth 1 date) (nth 0 date) (nth 2 date))))
- (setq ans2 (format-time-string "%Y-%m-%d" time))))
+ (time (encode-time 0 0 0 (nth 1 date) (nth 0 date) (nth 2 date))))
+ (setq ans2 (format-time-string "%Y-%m-%d" time))))
(select-window sw)))
(defun org-calendar-select ()
@@ -3166,10 +3176,10 @@ This is used by `org-read-date' in a temporary keymap for the calendar buffer."
(interactive)
(when (calendar-cursor-to-date)
(let* ((date (calendar-cursor-to-date))
- (time (encode-time 0 0 0 (nth 1 date) (nth 0 date) (nth 2 date))))
+ (time (encode-time 0 0 0 (nth 1 date) (nth 0 date) (nth 2 date))))
(setq ans1 (format-time-string "%Y-%m-%d" time)))
(if (active-minibuffer-window) (exit-minibuffer))))
-
+
(defun org-check-deadlines (ndays)
"Check if there are any deadlines due or past due.
A deadline is considered due if it happens within `org-deadline-warning-days'
@@ -3178,22 +3188,22 @@ it is not shown. The prefix arg NDAYS can be used to test that many
days. If the prefix is a raw \\[universal-argument] prefix, all deadlines are shown."
(interactive "P")
(let* ((org-warn-days
- (cond
- ((equal ndays '(4)) 100000)
- (ndays (prefix-numeric-value ndays))
- (t org-deadline-warning-days)))
- (case-fold-search nil)
- (regexp (concat "\\<" org-deadline-string " *<\\([^>]+\\)>"))
- (callback
- (lambda ()
- (and (let ((d1 (time-to-days (current-time)))
- (d2 (time-to-days
- (org-time-string-to-time (match-string 1)))))
- (< (- d2 d1) org-warn-days))
- (not (org-entry-is-done-p))))))
+ (cond
+ ((equal ndays '(4)) 100000)
+ (ndays (prefix-numeric-value ndays))
+ (t org-deadline-warning-days)))
+ (case-fold-search nil)
+ (regexp (concat "\\<" org-deadline-string " *<\\([^>]+\\)>"))
+ (callback
+ (lambda ()
+ (and (let ((d1 (time-to-days (current-time)))
+ (d2 (time-to-days
+ (org-time-string-to-time (match-string 1)))))
+ (< (- d2 d1) org-warn-days))
+ (not (org-entry-is-done-p))))))
(message "%d deadlines past-due or due within %d days"
- (org-occur regexp callback)
- org-warn-days)))
+ (org-occur regexp callback)
+ org-warn-days)))
(defun org-evaluate-time-range (&optional to-buffer)
"Evaluate a time range by computing the difference between start and end.
@@ -3209,65 +3219,65 @@ days in order to avoid rounding problems."
(goto-char (point-at-bol))
(re-search-forward org-tr-regexp (point-at-eol) t))
(if (not (org-at-date-range-p))
- (error "Not at a time-stamp range, and none found in current line")))
+ (error "Not at a time-stamp range, and none found in current line")))
(let* ((ts1 (match-string 1))
- (ts2 (match-string 2))
- (havetime (or (> (length ts1) 15) (> (length ts2) 15)))
- (match-end (match-end 0))
- (time1 (org-time-string-to-time ts1))
- (time2 (org-time-string-to-time ts2))
- (t1 (time-to-seconds time1))
- (t2 (time-to-seconds time2))
- (diff (abs (- t2 t1)))
- (negative (< (- t2 t1) 0))
- ;; (ys (floor (* 365 24 60 60)))
- (ds (* 24 60 60))
- (hs (* 60 60))
- (fy "%dy %dd %02d:%02d")
- (fy1 "%dy %dd")
- (fd "%dd %02d:%02d")
- (fd1 "%dd")
- (fh "%02d:%02d")
- y d h m align)
+ (ts2 (match-string 2))
+ (havetime (or (> (length ts1) 15) (> (length ts2) 15)))
+ (match-end (match-end 0))
+ (time1 (org-time-string-to-time ts1))
+ (time2 (org-time-string-to-time ts2))
+ (t1 (time-to-seconds time1))
+ (t2 (time-to-seconds time2))
+ (diff (abs (- t2 t1)))
+ (negative (< (- t2 t1) 0))
+ ;; (ys (floor (* 365 24 60 60)))
+ (ds (* 24 60 60))
+ (hs (* 60 60))
+ (fy "%dy %dd %02d:%02d")
+ (fy1 "%dy %dd")
+ (fd "%dd %02d:%02d")
+ (fd1 "%dd")
+ (fh "%02d:%02d")
+ y d h m align)
;; FIXME: Should I re-introduce years, make year refer to same date?
;; This would be the only useful way to have years, actually.
(if havetime
- (setq ; y (floor (/ diff ys)) diff (mod diff ys)
- y 0
- d (floor (/ diff ds)) diff (mod diff ds)
- h (floor (/ diff hs)) diff (mod diff hs)
- m (floor (/ diff 60)))
+ (setq ; y (floor (/ diff ys)) diff (mod diff ys)
+ y 0
+ d (floor (/ diff ds)) diff (mod diff ds)
+ h (floor (/ diff hs)) diff (mod diff hs)
+ m (floor (/ diff 60)))
(setq ; y (floor (/ diff ys)) diff (mod diff ys)
y 0
d (floor (+ (/ diff ds) 0.5))
h 0 m 0))
(if (not to-buffer)
- (message (org-make-tdiff-string y d h m))
+ (message (org-make-tdiff-string y d h m))
(when (org-at-table-p)
- (goto-char match-end)
- (setq align t)
- (and (looking-at " *|") (goto-char (match-end 0))))
+ (goto-char match-end)
+ (setq align t)
+ (and (looking-at " *|") (goto-char (match-end 0))))
(if (looking-at
- "\\( *-? *[0-9]+y\\)?\\( *[0-9]+d\\)? *[0-9][0-9]:[0-9][0-9]")
- (replace-match ""))
+ "\\( *-? *[0-9]+y\\)?\\( *[0-9]+d\\)? *[0-9][0-9]:[0-9][0-9]")
+ (replace-match ""))
(if negative (insert " -"))
(if (> y 0) (insert " " (format (if havetime fy fy1) y d h m))
- (if (> d 0) (insert " " (format (if havetime fd fd1) d h m))
- (insert " " (format fh h m))))
+ (if (> d 0) (insert " " (format (if havetime fd fd1) d h m))
+ (insert " " (format fh h m))))
(if align (org-table-align))
(message "Time difference inserted"))))
(defun org-make-tdiff-string (y d h m)
(let ((fmt "")
- (l nil))
+ (l nil))
(if (> y 0) (setq fmt (concat fmt "%d year" (if (> y 1) "s" "") " ")
- l (push y l)))
+ l (push y l)))
(if (> d 0) (setq fmt (concat fmt "%d day" (if (> d 1) "s" "") " ")
- l (push d l)))
+ l (push d l)))
(if (> h 0) (setq fmt (concat fmt "%d hour" (if (> h 1) "s" "") " ")
- l (push h l)))
+ l (push h l)))
(if (> m 0) (setq fmt (concat fmt "%d minute" (if (> m 1) "s" "") " ")
- l (push m l)))
+ l (push m l)))
(apply 'format fmt (nreverse l))))
(defun org-time-string-to-time (s)
@@ -3280,14 +3290,14 @@ If time is not given, defaults to 0:00. However, with optional NODEFAULT,
hour and minute fields will be nil if not given."
(if (string-match org-ts-regexp1 s)
(list 0
- (if (or (match-beginning 8) (not nodefault))
- (string-to-number (or (match-string 8 s) "0")))
- (if (or (match-beginning 7) (not nodefault))
- (string-to-number (or (match-string 7 s) "0")))
- (string-to-number (match-string 4 s))
- (string-to-number (match-string 3 s))
- (string-to-number (match-string 2 s))
- nil nil nil)
+ (if (or (match-beginning 8) (not nodefault))
+ (string-to-number (or (match-string 8 s) "0")))
+ (if (or (match-beginning 7) (not nodefault))
+ (string-to-number (or (match-string 7 s) "0")))
+ (string-to-number (match-string 4 s))
+ (string-to-number (match-string 3 s))
+ (string-to-number (match-string 2 s))
+ nil nil nil)
(make-list 9 0)))
(defun org-timestamp-up (&optional arg)
@@ -3327,23 +3337,23 @@ With prefix ARG, change that many days."
"Determine if the cursor is or at a timestamp."
(interactive)
(let* ((tsr org-ts-regexp2)
- (pos (point))
- (ans (or (looking-at tsr)
- (save-excursion
- (skip-chars-backward "^<\n\r\t")
- (if (> (point) 1) (backward-char 1))
- (and (looking-at tsr)
- (> (- (match-end 0) pos) -1))))))
+ (pos (point))
+ (ans (or (looking-at tsr)
+ (save-excursion
+ (skip-chars-backward "^<\n\r\t")
+ (if (> (point) 1) (backward-char 1))
+ (and (looking-at tsr)
+ (> (- (match-end 0) pos) -1))))))
(and (boundp 'org-ts-what)
- (setq org-ts-what
- (cond
- ((org-pos-in-match-range pos 2) 'year)
- ((org-pos-in-match-range pos 3) 'month)
- ((org-pos-in-match-range pos 7) 'hour)
- ((org-pos-in-match-range pos 8) 'minute)
- ((or (org-pos-in-match-range pos 4)
- (org-pos-in-match-range pos 5)) 'day)
- (t 'day))))
+ (setq org-ts-what
+ (cond
+ ((org-pos-in-match-range pos 2) 'year)
+ ((org-pos-in-match-range pos 3) 'month)
+ ((org-pos-in-match-range pos 7) 'hour)
+ ((org-pos-in-match-range pos 8) 'minute)
+ ((or (org-pos-in-match-range pos 4)
+ (org-pos-in-match-range pos 5)) 'day)
+ (t 'day))))
ans))
(defun org-timestamp-change (n &optional what)
@@ -3352,59 +3362,59 @@ The date will be changed by N times WHAT. WHAT can be `day', `month',
`year', `minute', `second'. If WHAT is not given, the cursor position
in the timestamp determines what will be changed."
(let ((fmt (car org-time-stamp-formats))
- org-ts-what
- (pos (point))
- ts time time0)
+ org-ts-what
+ (pos (point))
+ ts time time0)
(if (not (org-at-timestamp-p))
- (error "Not at a timestamp"))
+ (error "Not at a timestamp"))
(setq org-ts-what (or what org-ts-what))
(setq fmt (if (<= (abs (- (cdr org-ts-lengths)
- (- (match-end 0) (match-beginning 0))))
- 1)
- (cdr org-time-stamp-formats)
- (car org-time-stamp-formats)))
+ (- (match-end 0) (match-beginning 0))))
+ 1)
+ (cdr org-time-stamp-formats)
+ (car org-time-stamp-formats)))
(setq ts (match-string 0))
(replace-match "")
(setq time0 (org-parse-time-string ts))
(setq time
- (apply 'encode-time
- (append
- (list (or (car time0) 0))
- (list (+ (if (eq org-ts-what 'minute) n 0) (nth 1 time0)))
- (list (+ (if (eq org-ts-what 'hour) n 0) (nth 2 time0)))
- (list (+ (if (eq org-ts-what 'day) n 0) (nth 3 time0)))
- (list (+ (if (eq org-ts-what 'month) n 0) (nth 4 time0)))
- (list (+ (if (eq org-ts-what 'year) n 0) (nth 5 time0)))
- (nthcdr 6 time0))))
+ (apply 'encode-time
+ (append
+ (list (or (car time0) 0))
+ (list (+ (if (eq org-ts-what 'minute) n 0) (nth 1 time0)))
+ (list (+ (if (eq org-ts-what 'hour) n 0) (nth 2 time0)))
+ (list (+ (if (eq org-ts-what 'day) n 0) (nth 3 time0)))
+ (list (+ (if (eq org-ts-what 'month) n 0) (nth 4 time0)))
+ (list (+ (if (eq org-ts-what 'year) n 0) (nth 5 time0)))
+ (nthcdr 6 time0))))
(if (eq what 'calendar)
- (let ((cal-date
- (save-excursion
- (save-match-data
- (set-buffer "*Calendar*")
- (calendar-cursor-to-date)))))
- (setcar (nthcdr 4 time0) (nth 0 cal-date)) ; month
- (setcar (nthcdr 3 time0) (nth 1 cal-date)) ; day
- (setcar (nthcdr 5 time0) (nth 2 cal-date)) ; year
- (setcar time0 (or (car time0) 0))
- (setcar (nthcdr 1 time0) (or (nth 1 time0) 0))
- (setcar (nthcdr 2 time0) (or (nth 1 time0) 0))
- (setq time (apply 'encode-time time0))))
+ (let ((cal-date
+ (save-excursion
+ (save-match-data
+ (set-buffer "*Calendar*")
+ (calendar-cursor-to-date)))))
+ (setcar (nthcdr 4 time0) (nth 0 cal-date)) ; month
+ (setcar (nthcdr 3 time0) (nth 1 cal-date)) ; day
+ (setcar (nthcdr 5 time0) (nth 2 cal-date)) ; year
+ (setcar time0 (or (car time0) 0))
+ (setcar (nthcdr 1 time0) (or (nth 1 time0) 0))
+ (setcar (nthcdr 2 time0) (or (nth 1 time0) 0))
+ (setq time (apply 'encode-time time0))))
(insert (setq org-last-changed-timestamp (format-time-string fmt time)))
(goto-char pos)
;; Try to recenter the calendar window, if any
(if (and org-calendar-follow-timestamp-change
- (get-buffer-window "*Calendar*" t)
- (memq org-ts-what '(day month year)))
- (org-recenter-calendar (time-to-days time)))))
+ (get-buffer-window "*Calendar*" t)
+ (memq org-ts-what '(day month year)))
+ (org-recenter-calendar (time-to-days time)))))
(defun org-recenter-calendar (date)
"If the calendar is visible, recenter it to DATE."
(let* ((win (selected-window))
- (cwin (get-buffer-window "*Calendar*" t)))
+ (cwin (get-buffer-window "*Calendar*" t)))
(when cwin
(select-window cwin)
(calendar-goto-date (if (listp date) date
- (calendar-gregorian-from-absolute date)))
+ (calendar-gregorian-from-absolute date)))
(select-window win))))
(defun org-goto-calendar (&optional arg)
@@ -3414,13 +3424,13 @@ A prefix ARG can be used force the current date."
(interactive "P")
(let ((tsr org-ts-regexp) diff)
(if (or (org-at-timestamp-p)
- (save-excursion
- (beginning-of-line 1)
- (looking-at (concat ".*" tsr))))
- (let ((d1 (time-to-days (current-time)))
- (d2 (time-to-days
- (org-time-string-to-time (match-string 1)))))
- (setq diff (- d2 d1))))
+ (save-excursion
+ (beginning-of-line 1)
+ (looking-at (concat ".*" tsr))))
+ (let ((d1 (time-to-days (current-time)))
+ (d2 (time-to-days
+ (org-time-string-to-time (match-string 1)))))
+ (setq diff (- d2 d1))))
(calendar)
(calendar-goto-today)
(if (and diff (not arg)) (calendar-forward-day diff))))
@@ -3461,10 +3471,10 @@ The following commands are available:
(add-hook 'post-command-hook 'org-agenda-post-command-hook nil 'local)
(add-hook 'pre-command-hook 'org-unhighlight nil 'local)
(setq org-agenda-follow-mode nil)
- (easy-menu-change
+ (easy-menu-change
'("Agenda") "Agenda Files"
(append
- (list
+ (list
["Edit File List" (customize-variable 'org-agenda-files) t]
"--")
(mapcar 'org-file-menu-entry org-agenda-files)))
@@ -3489,7 +3499,7 @@ The following commands are available:
(define-key org-agenda-mode-map ">" 'org-agenda-date-prompt)
(let ((l '(1 2 3 4 5 6 7 8 9 0)))
(while l (define-key org-agenda-mode-map
- (int-to-string (pop l)) 'digit-argument)))
+ (int-to-string (pop l)) 'digit-argument)))
(define-key org-agenda-mode-map "f" 'org-agenda-follow-mode)
(define-key org-agenda-mode-map "D" 'org-agenda-toggle-diary)
@@ -3526,7 +3536,7 @@ The following commands are available:
(defvar org-agenda-keymap (copy-keymap org-agenda-mode-map)
"Local keymap for agenda entries from Org-mode.")
-(define-key org-agenda-keymap
+(define-key org-agenda-keymap
(if org-xemacs-p [(button2)] [(mouse-2)]) 'org-agenda-goto-mouse)
(define-key org-agenda-keymap
(if org-xemacs-p [(button3)] [(mouse-3)]) 'org-agenda-show-mouse)
@@ -3538,7 +3548,7 @@ The following commands are available:
["Show" org-agenda-show t]
["Go To (other window)" org-agenda-goto t]
["Go To (one window)" org-agenda-switch-to t]
- ["Follow Mode" org-agenda-follow-mode
+ ["Follow Mode" org-agenda-follow-mode
:style toggle :selected org-agenda-follow-mode :active t]
"--"
["Cycle TODO" org-agenda-todo t]
@@ -3597,11 +3607,11 @@ no longer in use."
(defun org-agenda-maybe-reset-markers (&optional force)
"Reset markers created by `org-agenda'. But only if they are old enough."
(if (or force
- (> (- (time-to-seconds (current-time))
- org-agenda-last-marker-time)
- 5))
+ (> (- (time-to-seconds (current-time))
+ org-agenda-last-marker-time)
+ 5))
(while org-agenda-markers
- (move-marker (pop org-agenda-markers) nil))))
+ (move-marker (pop org-agenda-markers) nil))))
(defvar org-agenda-new-buffers nil
"Buffers created to visit agenda files.")
@@ -3611,7 +3621,7 @@ no longer in use."
it to the list of buffers which might be released later."
(let ((buf (find-buffer-visiting file)))
(if buf
- buf ; just return it
+ buf ; just return it
;; Make a new buffer and remember it
(setq buf (find-file-noselect file))
(if buf (push buf org-agenda-new-buffers))
@@ -3625,9 +3635,9 @@ When a buffer is unmodified, it is just killed. When modified, it is saved
(while (setq buf (pop blist))
(setq file (buffer-file-name buf))
(when (and (buffer-modified-p buf)
- file
- (y-or-n-p (format "Save file %s? " file)))
- (with-current-buffer buf (save-buffer)))
+ file
+ (y-or-n-p (format "Save file %s? " file)))
+ (with-current-buffer buf (save-buffer)))
(kill-buffer buf))))
(defvar org-respect-restriction nil) ; Dynamically-scoped param.
@@ -3645,63 +3655,63 @@ dates."
(org-agenda-maybe-reset-markers 'force)
(org-compile-prefix-format org-timeline-prefix-format)
(let* ((dopast include-all)
- (dotodo (equal include-all '(16)))
- (entry (buffer-file-name))
- (org-agenda-files (list (buffer-file-name)))
- (date (calendar-current-date))
- (win (selected-window))
- (pos1 (point))
- (beg (if (org-region-active-p) (region-beginning) (point-min)))
- (end (if (org-region-active-p) (region-end) (point-max)))
- (day-numbers (org-get-all-dates beg end 'no-ranges
- t)) ; always include today
- (today (time-to-days (current-time)))
- (org-respect-restriction t)
- (past t)
- s e rtn d)
- (setq org-agenda-redo-command
- (list 'progn
- (list 'switch-to-buffer-other-window (current-buffer))
- (list 'org-timeline include-all)))
+ (dotodo (equal include-all '(16)))
+ (entry (buffer-file-name))
+ (org-agenda-files (list (buffer-file-name)))
+ (date (calendar-current-date))
+ (win (selected-window))
+ (pos1 (point))
+ (beg (if (org-region-active-p) (region-beginning) (point-min)))
+ (end (if (org-region-active-p) (region-end) (point-max)))
+ (day-numbers (org-get-all-dates beg end 'no-ranges
+ t)) ; always include today
+ (today (time-to-days (current-time)))
+ (org-respect-restriction t)
+ (past t)
+ s e rtn d)
+ (setq org-agenda-redo-command
+ (list 'progn
+ (list 'switch-to-buffer-other-window (current-buffer))
+ (list 'org-timeline (list 'quote include-all))))
(if (not dopast)
- ;; Remove past dates from the list of dates.
- (setq day-numbers (delq nil (mapcar (lambda(x)
- (if (>= x today) x nil))
- day-numbers))))
- (switch-to-buffer-other-window
+ ;; Remove past dates from the list of dates.
+ (setq day-numbers (delq nil (mapcar (lambda(x)
+ (if (>= x today) x nil))
+ day-numbers))))
+ (switch-to-buffer-other-window
(get-buffer-create org-agenda-buffer-name))
(setq buffer-read-only nil)
(erase-buffer)
(org-agenda-mode) (setq buffer-read-only nil)
(while (setq d (pop day-numbers))
(if (and (>= d today)
- dopast
- past)
- (progn
- (setq past nil)
- (insert (make-string 79 ?-) "\n")))
+ dopast
+ past)
+ (progn
+ (setq past nil)
+ (insert (make-string 79 ?-) "\n")))
(setq date (calendar-gregorian-from-absolute d))
(setq s (point))
(if dotodo
- (setq rtn (org-agenda-get-day-entries
- entry date :todo :timestamp))
- (setq rtn (org-agenda-get-day-entries entry date :timestamp)))
+ (setq rtn (org-agenda-get-day-entries
+ entry date :todo :timestamp))
+ (setq rtn (org-agenda-get-day-entries entry date :timestamp)))
(if (or rtn (equal d today))
- (progn
- (insert (calendar-day-name date) " "
- (number-to-string (extract-calendar-day date)) " "
- (calendar-month-name (extract-calendar-month date)) " "
- (number-to-string (extract-calendar-year date)) "\n")
- (put-text-property s (1- (point)) 'face
- 'org-link)
- (if (equal d today)
- (put-text-property s (1- (point)) 'org-today t))
- (insert (org-finalize-agenda-entries rtn) "\n")
- (put-text-property s (1- (point)) 'day d))))
+ (progn
+ (insert (calendar-day-name date) " "
+ (number-to-string (extract-calendar-day date)) " "
+ (calendar-month-name (extract-calendar-month date)) " "
+ (number-to-string (extract-calendar-year date)) "\n")
+ (put-text-property s (1- (point)) 'face
+ 'org-link)
+ (if (equal d today)
+ (put-text-property s (1- (point)) 'org-today t))
+ (insert (org-finalize-agenda-entries rtn) "\n")
+ (put-text-property s (1- (point)) 'day d))))
(goto-char (point-min))
(setq buffer-read-only t)
(goto-char (or (text-property-any (point-min) (point-max) 'org-today t)
- (point-min)))
+ (point-min)))
(when (not org-select-timeline-window)
(select-window win)
(goto-char pos1))))
@@ -3721,107 +3731,107 @@ NDAYS defaults to `org-agenda-ndays'."
(org-compile-prefix-format org-agenda-prefix-format)
(require 'calendar)
(let* ((org-agenda-start-on-weekday
- (if (or (equal ndays 1)
- (and (null ndays) (equal 1 org-agenda-ndays)))
- nil org-agenda-start-on-weekday))
- (files (copy-sequence org-agenda-files))
- (win (selected-window))
- (today (time-to-days (current-time)))
- (sd (or start-day today))
- (start (if (or (null org-agenda-start-on-weekday)
- (< org-agenda-ndays 7))
- sd
- (let* ((nt (calendar-day-of-week
- (calendar-gregorian-from-absolute sd)))
- (n1 org-agenda-start-on-weekday)
- (d (- nt n1)))
- (- sd (+ (if (< d 0) 7 0) d)))))
- (day-numbers (list start))
- (inhibit-redisplay t)
- s e rtn rtnall file date d start-pos end-pos todayp nd)
- (setq org-agenda-redo-command
- (list 'org-agenda include-all start-day ndays))
+ (if (or (equal ndays 1)
+ (and (null ndays) (equal 1 org-agenda-ndays)))
+ nil org-agenda-start-on-weekday))
+ (files (copy-sequence org-agenda-files))
+ (win (selected-window))
+ (today (time-to-days (current-time)))
+ (sd (or start-day today))
+ (start (if (or (null org-agenda-start-on-weekday)
+ (< org-agenda-ndays 7))
+ sd
+ (let* ((nt (calendar-day-of-week
+ (calendar-gregorian-from-absolute sd)))
+ (n1 org-agenda-start-on-weekday)
+ (d (- nt n1)))
+ (- sd (+ (if (< d 0) 7 0) d)))))
+ (day-numbers (list start))
+ (inhibit-redisplay t)
+ s e rtn rtnall file date d start-pos end-pos todayp nd)
+ (setq org-agenda-redo-command
+ (list 'org-agenda (list 'quote include-all) start-day ndays))
;; Make the list of days
(setq ndays (or ndays org-agenda-ndays)
- nd ndays)
+ nd ndays)
(while (> ndays 1)
(push (1+ (car day-numbers)) day-numbers)
(setq ndays (1- ndays)))
(setq day-numbers (nreverse day-numbers))
(if (not (equal (current-buffer) (get-buffer org-agenda-buffer-name)))
- (progn
- (delete-other-windows)
- (switch-to-buffer-other-window
- (get-buffer-create org-agenda-buffer-name))))
+ (progn
+ (delete-other-windows)
+ (switch-to-buffer-other-window
+ (get-buffer-create org-agenda-buffer-name))))
(setq buffer-read-only nil)
(erase-buffer)
(org-agenda-mode) (setq buffer-read-only nil)
(set (make-local-variable 'starting-day) (car day-numbers))
(set (make-local-variable 'include-all-loc) include-all)
(when (and (or include-all org-agenda-include-all-todo)
- (member today day-numbers))
+ (member today day-numbers))
(setq files org-agenda-files
- rtnall nil)
+ rtnall nil)
(while (setq file (pop files))
- (catch 'nextfile
- (org-check-agenda-file file)
- (setq date (calendar-gregorian-from-absolute today)
- rtn (org-agenda-get-day-entries
- file date :todo))
- (setq rtnall (append rtnall rtn))))
- (when rtnall
- (insert "ALL CURRENTLY OPEN TODO ITEMS:\n")
- (add-text-properties (point-min) (1- (point))
- (list 'face 'org-link))
- (insert (org-finalize-agenda-entries rtnall) "\n")))
+ (catch 'nextfile
+ (org-check-agenda-file file)
+ (setq date (calendar-gregorian-from-absolute today)
+ rtn (org-agenda-get-day-entries
+ file date :todo))
+ (setq rtnall (append rtnall rtn))))
+ (when rtnall
+ (insert "ALL CURRENTLY OPEN TODO ITEMS:\n")
+ (add-text-properties (point-min) (1- (point))
+ (list 'face 'org-link))
+ (insert (org-finalize-agenda-entries rtnall) "\n")))
(while (setq d (pop day-numbers))
(setq date (calendar-gregorian-from-absolute d)
- s (point))
+ s (point))
(if (or (setq todayp (= d today))
- (and (not start-pos) (= d sd)))
- (setq start-pos (point))
- (if (and start-pos (not end-pos))
- (setq end-pos (point))))
+ (and (not start-pos) (= d sd)))
+ (setq start-pos (point))
+ (if (and start-pos (not end-pos))
+ (setq end-pos (point))))
(setq files org-agenda-files
- rtnall nil)
+ rtnall nil)
(while (setq file (pop files))
- (catch 'nextfile
- (org-check-agenda-file file)
- (setq rtn (org-agenda-get-day-entries file date))
- (setq rtnall (append rtnall rtn))))
+ (catch 'nextfile
+ (org-check-agenda-file file)
+ (setq rtn (org-agenda-get-day-entries file date))
+ (setq rtnall (append rtnall rtn))))
(if org-agenda-include-diary
- (progn
- (require 'diary-lib)
- (setq rtn (org-get-entries-from-diary date))
- (setq rtnall (append rtnall rtn))))
+ (progn
+ (require 'diary-lib)
+ (setq rtn (org-get-entries-from-diary date))
+ (setq rtnall (append rtnall rtn))))
(if (or rtnall org-agenda-show-all-dates)
- (progn
- (insert (format "%-9s %2d %s %4d\n"
- (calendar-day-name date)
- (extract-calendar-day date)
- (calendar-month-name (extract-calendar-month date))
- (extract-calendar-year date)))
- (put-text-property s (1- (point)) 'face
- 'org-link)
- (if rtnall (insert
- (org-finalize-agenda-entries ;; FIXME: condition needed
- (org-agenda-add-time-grid-maybe
- rtnall nd todayp))
- "\n"))
- (put-text-property s (1- (point)) 'day d))))
+ (progn
+ (insert (format "%-9s %2d %s %4d\n"
+ (calendar-day-name date)
+ (extract-calendar-day date)
+ (calendar-month-name (extract-calendar-month date))
+ (extract-calendar-year date)))
+ (put-text-property s (1- (point)) 'face
+ 'org-link)
+ (if rtnall (insert
+ (org-finalize-agenda-entries ;; FIXME: condition needed
+ (org-agenda-add-time-grid-maybe
+ rtnall nd todayp))
+ "\n"))
+ (put-text-property s (1- (point)) 'day d))))
(goto-char (point-min))
(setq buffer-read-only t)
(if org-fit-agenda-window
- (fit-window-to-buffer nil (/ (* (frame-height) 3) 4)
- (/ (frame-height) 2)))
+ (fit-window-to-buffer nil (/ (* (frame-height) 3) 4)
+ (/ (frame-height) 2)))
(unless (and (pos-visible-in-window-p (point-min))
- (pos-visible-in-window-p (point-max)))
+ (pos-visible-in-window-p (point-max)))
(goto-char (1- (point-max)))
(recenter -1)
(if (not (pos-visible-in-window-p (or start-pos 1)))
- (progn
- (goto-char (or start-pos 1))
- (recenter 1))))
+ (progn
+ (goto-char (or start-pos 1))
+ (recenter 1))))
(goto-char (or start-pos 1))
(if (not org-select-agenda-window) (select-window win))
(message "")))
@@ -3832,12 +3842,12 @@ NDAYS defaults to `org-agenda-ndays'."
;; Could probably be fixed by explicitly going to the buffer.
(when (not (file-exists-p file))
(message "non-existent file %s. [R]emove from agenda-files or [A]bort?"
- file)
+ file)
(let ((r (downcase (read-char-exclusive))))
(cond
((equal r ?r)
- (org-remove-file file)
- (throw 'nextfile t))
+ (org-remove-file file)
+ (throw 'nextfile t))
(t (error "Abort"))))))
(defun org-agenda-quit ()
@@ -3867,11 +3877,11 @@ Org-mode buffers visited directly by the user will not be touched."
(interactive)
(if (boundp 'starting-day)
(let ((cmd (car org-agenda-redo-command))
- (iall (nth 1 org-agenda-redo-command))
- (nday (nth 3 org-agenda-redo-command)))
- (eval (list cmd iall nil nday)))
+ (iall (nth 1 org-agenda-redo-command))
+ (nday (nth 3 org-agenda-redo-command)))
+ (eval (list cmd iall nil nday)))
(goto-char (or (text-property-any (point-min) (point-max) 'org-today t)
- (point-min)))))
+ (point-min)))))
(defun org-agenda-later (arg)
"Go forward in time by `org-agenda-ndays' days.
@@ -3880,7 +3890,7 @@ With prefix ARG, go forward that many times `org-agenda-ndays'."
(unless (boundp 'starting-day)
(error "Not allowed"))
(org-agenda (if (boundp 'include-all-loc) include-all-loc nil)
- (+ starting-day (* arg org-agenda-ndays))))
+ (+ starting-day (* arg org-agenda-ndays))))
(defun org-agenda-earlier (arg)
"Go back in time by `org-agenda-ndays' days.
@@ -3889,7 +3899,7 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(unless (boundp 'starting-day)
(error "Not allowed"))
(org-agenda (if (boundp 'include-all-loc) include-all-loc nil)
- (- starting-day (* arg org-agenda-ndays))))
+ (- starting-day (* arg org-agenda-ndays))))
(defun org-agenda-week-view ()
"Switch to weekly view for agenda."
@@ -3897,9 +3907,9 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(unless (boundp 'starting-day)
(error "Not allowed"))
(setq org-agenda-ndays 7)
- (org-agenda include-all-loc
- (or (get-text-property (point) 'day)
- starting-day))
+ (org-agenda include-all-loc
+ (or (get-text-property (point) 'day)
+ starting-day))
(org-agenda-set-mode-name)
(message "Switched to week view"))
@@ -3909,9 +3919,9 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(unless (boundp 'starting-day)
(error "Not allowed"))
(setq org-agenda-ndays 1)
- (org-agenda include-all-loc
- (or (get-text-property (point) 'day)
- starting-day))
+ (org-agenda include-all-loc
+ (or (get-text-property (point) 'day)
+ starting-day))
(org-agenda-set-mode-name)
(message "Switched to day view"))
@@ -3922,8 +3932,8 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(if (looking-at "^\\S-") (forward-char 1))
(if (not (re-search-forward "^\\S-" nil t arg))
(progn
- (backward-char 1)
- (error "No next date after this line in this buffer")))
+ (backward-char 1)
+ (error "No next date after this line in this buffer")))
(goto-char (match-beginning 0)))
(defun org-agenda-previous-date-line (&optional arg)
@@ -3936,12 +3946,12 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
;; Initialize the highlight
(defvar org-hl (funcall (if org-xemacs-p 'make-extent 'make-overlay) 1 1))
(funcall (if org-xemacs-p 'set-extent-property 'overlay-put) org-hl
- 'face 'highlight)
+ 'face 'highlight)
(defun org-highlight (begin end &optional buffer)
"Highlight a region with overlay."
(funcall (if org-xemacs-p 'set-extent-endpoints 'move-overlay)
- org-hl begin end (or buffer (current-buffer))))
+ org-hl begin end (or buffer (current-buffer))))
(defun org-unhighlight ()
"Detach overlay INDEX."
@@ -3954,7 +3964,7 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(setq org-agenda-follow-mode (not org-agenda-follow-mode))
(org-agenda-set-mode-name)
(message "Follow mode is %s"
- (if org-agenda-follow-mode "on" "off")))
+ (if org-agenda-follow-mode "on" "off")))
(defun org-agenda-toggle-diary ()
"Toggle follow mode in an agenda buffer."
@@ -3963,7 +3973,7 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(org-agenda-redo)
(org-agenda-set-mode-name)
(message "Diary inclusion turned %s"
- (if org-agenda-include-diary "on" "off")))
+ (if org-agenda-include-diary "on" "off")))
(defun org-agenda-toggle-time-grid ()
"Toggle follow mode in an agenda buffer."
@@ -3972,23 +3982,23 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(org-agenda-redo)
(org-agenda-set-mode-name)
(message "Time-grid turned %s"
- (if org-agenda-use-time-grid "on" "off")))
+ (if org-agenda-use-time-grid "on" "off")))
(defun org-agenda-set-mode-name ()
"Set the mode name to indicate all the small mode settings."
(setq mode-name
- (concat "Org-Agenda"
- (if (equal org-agenda-ndays 1) " Day" "")
- (if (equal org-agenda-ndays 7) " Week" "")
- (if org-agenda-follow-mode " Follow" "")
- (if org-agenda-include-diary " Diary" "")
- (if org-agenda-use-time-grid " Grid" "")))
+ (concat "Org-Agenda"
+ (if (equal org-agenda-ndays 1) " Day" "")
+ (if (equal org-agenda-ndays 7) " Week" "")
+ (if org-agenda-follow-mode " Follow" "")
+ (if org-agenda-include-diary " Diary" "")
+ (if org-agenda-use-time-grid " Grid" "")))
(force-mode-line-update))
(defun org-agenda-post-command-hook ()
(and (eolp) (not (bolp)) (backward-char 1))
(if (and org-agenda-follow-mode
- (get-text-property (point) 'org-marker))
+ (get-text-property (point) 'org-marker))
(org-agenda-show)))
(defvar org-disable-diary nil) ;Dynamically-scoped param.
@@ -3996,42 +4006,42 @@ With prefix ARG, go back that many times `org-agenda-ndays'."
(defun org-get-entries-from-diary (date)
"Get the (Emacs Calendar) diary entries for DATE."
(let* ((fancy-diary-buffer "*temporary-fancy-diary-buffer*")
- (diary-display-hook '(fancy-diary-display))
- (list-diary-entries-hook
- (cons 'org-diary-default-entry list-diary-entries-hook))
- entries
- (org-disable-diary t))
+ (diary-display-hook '(fancy-diary-display))
+ (list-diary-entries-hook
+ (cons 'org-diary-default-entry list-diary-entries-hook))
+ entries
+ (org-disable-diary t))
(save-excursion
(save-window-excursion
- (list-diary-entries date 1)))
+ (list-diary-entries date 1)))
(if (not (get-buffer fancy-diary-buffer))
- (setq entries nil)
+ (setq entries nil)
(with-current-buffer fancy-diary-buffer
- (setq buffer-read-only nil)
- (if (= (point-max) 1)
- ;; No entries
- (setq entries nil)
- ;; Omit the date and other unnecessary stuff
- (org-agenda-cleanup-fancy-diary)
- ;; Add prefix to each line and extend the text properties
- (if (= (point-max) 1)
- (setq entries nil)
- (setq entries (buffer-substring (point-min) (- (point-max) 1)))))
- (set-buffer-modified-p nil)
- (kill-buffer fancy-diary-buffer)))
+ (setq buffer-read-only nil)
+ (if (= (point-max) 1)
+ ;; No entries
+ (setq entries nil)
+ ;; Omit the date and other unnecessary stuff
+ (org-agenda-cleanup-fancy-diary)
+ ;; Add prefix to each line and extend the text properties
+ (if (= (point-max) 1)
+ (setq entries nil)
+ (setq entries (buffer-substring (point-min) (- (point-max) 1)))))
+ (set-buffer-modified-p nil)
+ (kill-buffer fancy-diary-buffer)))
(when entries
(setq entries (org-split-string entries "\n"))
- (setq entries
- (mapcar
- (lambda (x)
- (setq x (org-format-agenda-item "" x "Diary" 'time))
- ;; Extend the text properties to the beginning of the line
- (add-text-properties
- 0 (length x)
- (text-properties-at (1- (length x)) x)
- x)
- x)
- entries)))))
+ (setq entries
+ (mapcar
+ (lambda (x)
+ (setq x (org-format-agenda-item "" x "Diary" 'time))
+ ;; Extend the text properties to the beginning of the line
+ (add-text-properties
+ 0 (length x)
+ (text-properties-at (1- (length x)) x)
+ x)
+ x)
+ entries)))))
(defun org-agenda-cleanup-fancy-diary ()
"Remove unwanted stuff in buffer created by fancy-diary-display.
@@ -4041,10 +4051,10 @@ date. Itt also removes lines that contain only whitespace."
(goto-char (point-min))
(if (looking-at ".*?:[ \t]*")
(progn
- (replace-match "")
- (re-search-forward "\n=+$" nil t)
- (replace-match "")
- (while (re-search-backward "^ +\n?" nil t) (replace-match "")))
+ (replace-match "")
+ (re-search-forward "\n=+$" nil t)
+ (replace-match "")
+ (while (re-search-backward "^ +\n?" nil t) (replace-match "")))
(re-search-forward "\n=+$" nil t)
(delete-region (point-min) (min (point-max) (1+ (match-end 0)))))
(goto-char (point-min))
@@ -4061,19 +4071,19 @@ date. Itt also removes lines that contain only whitespace."
'(defadvice add-to-diary-list (before org-mark-diary-entry activate)
"Make the position visible."
(if (and org-disable-diary ;; called from org-agenda
- (stringp string)
- (buffer-file-name))
- (add-text-properties
- 0 (length string)
- (list 'mouse-face 'highlight
- 'keymap org-agenda-keymap
- 'help-echo
- (format
- "mouse-2 or RET jump to diary file %s"
- (abbreviate-file-name (buffer-file-name)))
- 'org-agenda-diary-link t
- 'org-marker (org-agenda-new-marker (point-at-bol)))
- string))))
+ (stringp string)
+ (buffer-file-name))
+ (add-text-properties
+ 0 (length string)
+ (list 'mouse-face 'highlight
+ 'keymap org-agenda-keymap
+ 'help-echo
+ (format
+ "mouse-2 or RET jump to diary file %s"
+ (abbreviate-file-name (buffer-file-name)))
+ 'org-agenda-diary-link t
+ 'org-marker (org-agenda-new-marker (point-at-bol)))
+ string))))
(defun org-diary-default-entry ()
"Add a dummy entry to the diary.
@@ -4089,29 +4099,29 @@ Needed to avoid empty dates which mess up holiday display."
These are the files which are being checked for agenda entries.
Optional argument FILE means, use this file instead of the current.
It is possible (but not recommended) to add this function to the
-`org-mode-hook'."
+`org-mode-hook'."
(interactive)
(catch 'exit
(let* ((file (or file (buffer-file-name)
- (if (interactive-p)
- (error "Buffer is not visiting a file")
- (throw 'exit nil))))
- (true-file (file-truename file))
- (afile (abbreviate-file-name file))
- (present (delq nil (mapcar
- (lambda (x)
- (equal true-file (file-truename x)))
- org-agenda-files))))
+ (if (interactive-p)
+ (error "Buffer is not visiting a file")
+ (throw 'exit nil))))
+ (true-file (file-truename file))
+ (afile (abbreviate-file-name file))
+ (present (delq nil (mapcar
+ (lambda (x)
+ (equal true-file (file-truename x)))
+ org-agenda-files))))
(if (not present)
- (progn
- (setq org-agenda-files
- (cons afile org-agenda-files))
- ;; Make sure custom.el does not end up with Org-mode
- (let ((org-mode-hook nil) (default-major-mode 'fundamental-mode))
- (customize-save-variable 'org-agenda-files org-agenda-files))
- (org-install-agenda-files-menu)
- (message "Added file: %s" afile))
- (message "File was already in list: %s" afile)))))
+ (progn
+ (setq org-agenda-files
+ (cons afile org-agenda-files))
+ ;; Make sure custom.el does not end up with Org-mode
+ (let ((org-mode-hook nil) (default-major-mode 'fundamental-mode))
+ (customize-save-variable 'org-agenda-files org-agenda-files))
+ (org-install-agenda-files-menu)
+ (message "Added file: %s" afile))
+ (message "File was already in list: %s" afile)))))
(defun org-remove-file (&optional file)
"Remove current file from the list of files in variable `org-agenda-files'.
@@ -4119,20 +4129,20 @@ These are the files which are being checked for agenda entries.
Optional argument FILE means, use this file instead of the current."
(interactive)
(let* ((file (or file (buffer-file-name)))
- (true-file (file-truename file))
- (afile (abbreviate-file-name file))
- (files (delq nil (mapcar
- (lambda (x)
- (if (equal true-file
- (file-truename x))
- nil x))
- org-agenda-files))))
+ (true-file (file-truename file))
+ (afile (abbreviate-file-name file))
+ (files (delq nil (mapcar
+ (lambda (x)
+ (if (equal true-file
+ (file-truename x))
+ nil x))
+ org-agenda-files))))
(if (not (= (length files) (length org-agenda-files)))
- (progn
- (setq org-agenda-files files)
- (customize-save-variable 'org-agenda-files org-agenda-files)
- (org-install-agenda-files-menu)
- (message "Removed file: %s" afile))
+ (progn
+ (setq org-agenda-files files)
+ (customize-save-variable 'org-agenda-files org-agenda-files)
+ (org-install-agenda-files-menu)
+ (message "Removed file: %s" afile))
(message "File was not in list: %s" afile))))
(defun org-file-menu-entry (file)
@@ -4145,22 +4155,22 @@ not every single day in the range. If FORCE-TODAY is non-nil, make
sure that TODAY is included in the list."
(let (dates date day day1 day2 ts1 ts2)
(if force-today
- (setq dates (list (time-to-days (current-time)))))
+ (setq dates (list (time-to-days (current-time)))))
(save-excursion
(goto-char beg)
(while (re-search-forward org-ts-regexp end t)
- (setq day (time-to-days (org-time-string-to-time
- (substring (match-string 1) 0 10))))
- (or (memq day dates) (push day dates)))
+ (setq day (time-to-days (org-time-string-to-time
+ (substring (match-string 1) 0 10))))
+ (or (memq day dates) (push day dates)))
(unless no-ranges
- (goto-char beg)
- (while (re-search-forward org-tr-regexp end t)
- (setq ts1 (substring (match-string 1) 0 10)
- ts2 (substring (match-string 2) 0 10)
- day1 (time-to-days (org-time-string-to-time ts1))
- day2 (time-to-days (org-time-string-to-time ts2)))
- (while (< (setq day1 (1+ day1)) day2)
- (or (memq day1 dates) (push day1 dates)))))
+ (goto-char beg)
+ (while (re-search-forward org-tr-regexp end t)
+ (setq ts1 (substring (match-string 1) 0 10)
+ ts2 (substring (match-string 2) 0 10)
+ day1 (time-to-days (org-time-string-to-time ts1))
+ day2 (time-to-days (org-time-string-to-time ts2)))
+ (while (< (setq day1 (1+ day1)) day2)
+ (or (memq day1 dates) (push day1 dates)))))
(sort dates '<))))
;;;###autoload
@@ -4168,27 +4178,26 @@ sure that TODAY is included in the list."
"Return diary information from org-files.
This function can be used in a \"sexp\" diary entry in the Emacs calendar.
It accesses org files and extracts information from those files to be
-
listed in the diary. The function accepts arguments specifying what
items should be listed. The following arguments are allowed:
:timestamp List the headlines of items containing a date stamp or
- date range matching the selected date. Deadlines will
- also be listed, on the expiration day.
+ date range matching the selected date. Deadlines will
+ also be listed, on the expiration day.
:deadline List any deadlines past due, or due within
- `org-deadline-warning-days'. The listing occurs only
- in the diary for *today*, not at any other date. If
- an entry is marked DONE, it is no longer listed.
+ `org-deadline-warning-days'. The listing occurs only
+ in the diary for *today*, not at any other date. If
+ an entry is marked DONE, it is no longer listed.
:scheduled List all items which are scheduled for the given date.
- The diary for *today* also contains items which were
- scheduled earlier and are not yet marked DONE.
+ The diary for *today* also contains items which were
+ scheduled earlier and are not yet marked DONE.
:todo List all TODO items from the org-file. This may be a
- long list - so this is not turned on by default.
- Like deadlines, these entries only show up in the
- diary for *today*, not at any other date.
+ long list - so this is not turned on by default.
+ Like deadlines, these entries only show up in the
+ diary for *today*, not at any other date.
The call in the diary file should look like this:
@@ -4207,14 +4216,14 @@ also be written as
The function expects the lisp variables `entry' and `date' to be provided
by the caller, because this is how the calendar works. Don't use this
-function from a program - use `org-agenda-get-day-entries' instead."
+function from a program - use `org-agenda-get-day-entries' instead."
(org-agenda-maybe-reset-markers)
(org-compile-prefix-format org-agenda-prefix-format)
(setq args (or args '(:deadline :scheduled :timestamp)))
(let* ((files (if (and entry (stringp entry) (string-match "\\S-" entry))
- (list entry)
- org-agenda-files))
- file rtn results)
+ (list entry)
+ org-agenda-files))
+ file rtn results)
;; If this is called during org-agenda, don't return any entries to
;; the calendar. Org Agenda will list these entries itself.
(if org-disable-diary (setq files nil))
@@ -4231,53 +4240,53 @@ which kind of entries should be extracted. For details about these, see
the documentation of `org-diary'."
(setq args (or args '(:deadline :scheduled :timestamp)))
(let* ((org-startup-with-deadline-check nil)
- (org-startup-folded nil)
- (buffer (if (file-exists-p file)
- (org-get-agenda-file-buffer file)
- (error "No such file %s" file)))
- arg results rtn)
+ (org-startup-folded nil)
+ (buffer (if (file-exists-p file)
+ (org-get-agenda-file-buffer file)
+ (error "No such file %s" file)))
+ arg results rtn)
(if (not buffer)
- ;; If file does not exist, make sure an error message ends up in diary
- (list (format "ORG-AGENDA-ERROR: No such org-file %s" file))
+ ;; If file does not exist, make sure an error message ends up in diary
+ (list (format "ORG-AGENDA-ERROR: No such org-file %s" file))
(with-current-buffer buffer
- (unless (eq major-mode 'org-mode)
- (error "Agenda file %s is not in `org-mode'" file))
- (let ((case-fold-search nil))
- (save-excursion
- (save-restriction
- (if org-respect-restriction
- (if (org-region-active-p)
- ;; Respect a region to restrict search
- (narrow-to-region (region-beginning) (region-end)))
- ;; If we work for the calendar or many files,
- ;; get rid of any restriction
- (widen))
- ;; The way we repeatedly append to `results' makes it O(n^2) :-(
- (while (setq arg (pop args))
- (cond
- ((and (eq arg :todo)
- (equal date (calendar-current-date)))
- (setq rtn (org-agenda-get-todos))
- (setq results (append results rtn)))
- ((eq arg :timestamp)
- (setq rtn (org-agenda-get-blocks))
- (setq results (append results rtn))
- (setq rtn (org-agenda-get-timestamps))
- (setq results (append results rtn)))
- ((eq arg :scheduled)
- (setq rtn (org-agenda-get-scheduled))
- (setq results (append results rtn)))
- ((and (eq arg :deadline)
- (equal date (calendar-current-date)))
- (setq rtn (org-agenda-get-deadlines))
- (setq results (append results rtn))))))))
- results))))
+ (unless (eq major-mode 'org-mode)
+ (error "Agenda file %s is not in `org-mode'" file))
+ (let ((case-fold-search nil))
+ (save-excursion
+ (save-restriction
+ (if org-respect-restriction
+ (if (org-region-active-p)
+ ;; Respect a region to restrict search
+ (narrow-to-region (region-beginning) (region-end)))
+ ;; If we work for the calendar or many files,
+ ;; get rid of any restriction
+ (widen))
+ ;; The way we repeatedly append to `results' makes it O(n^2) :-(
+ (while (setq arg (pop args))
+ (cond
+ ((and (eq arg :todo)
+ (equal date (calendar-current-date)))
+ (setq rtn (org-agenda-get-todos))
+ (setq results (append results rtn)))
+ ((eq arg :timestamp)
+ (setq rtn (org-agenda-get-blocks))
+ (setq results (append results rtn))
+ (setq rtn (org-agenda-get-timestamps))
+ (setq results (append results rtn)))
+ ((eq arg :scheduled)
+ (setq rtn (org-agenda-get-scheduled))
+ (setq results (append results rtn)))
+ ((and (eq arg :deadline)
+ (equal date (calendar-current-date)))
+ (setq rtn (org-agenda-get-deadlines))
+ (setq results (append results rtn))))))))
+ results))))
(defun org-entry-is-done-p ()
"Is the current entry marked DONE?"
(save-excursion
(and (re-search-backward "[\r\n]\\*" nil t)
- (looking-at org-nl-done-regexp))))
+ (looking-at org-nl-done-regexp))))
(defun org-at-date-range-p ()
"Is the cursor inside a date range?"
@@ -4285,47 +4294,47 @@ the documentation of `org-diary'."
(save-excursion
(catch 'exit
(let ((pos (point)))
- (skip-chars-backward "^<\r\n")
- (skip-chars-backward "<")
- (and (looking-at org-tr-regexp)
- (>= (match-end 0) pos)
- (throw 'exit t))
- (skip-chars-backward "^<\r\n")
- (skip-chars-backward "<")
- (and (looking-at org-tr-regexp)
- (>= (match-end 0) pos)
- (throw 'exit t)))
+ (skip-chars-backward "^<\r\n")
+ (skip-chars-backward "<")
+ (and (looking-at org-tr-regexp)
+ (>= (match-end 0) pos)
+ (throw 'exit t))
+ (skip-chars-backward "^<\r\n")
+ (skip-chars-backward "<")
+ (and (looking-at org-tr-regexp)
+ (>= (match-end 0) pos)
+ (throw 'exit t)))
nil)))
(defun org-agenda-get-todos ()
"Return the TODO information for agenda display."
(let* ((props (list 'face nil
- 'done-face 'org-done
- 'mouse-face 'highlight
- 'keymap org-agenda-keymap
- 'help-echo
- (format "mouse-2 or RET jump to org file %s"
- (abbreviate-file-name (buffer-file-name)))))
- (regexp (concat "[\n\r]\\*+ *\\(" org-not-done-regexp
- "[^\n\r]*\\)"))
- marker priority
- ee txt)
+ 'done-face 'org-done
+ 'mouse-face 'highlight
+ 'keymap org-agenda-keymap
+ 'help-echo
+ (format "mouse-2 or RET jump to org file %s"
+ (abbreviate-file-name (buffer-file-name)))))
+ (regexp (concat "[\n\r]\\*+ *\\(" org-not-done-regexp
+ "[^\n\r]*\\)"))
+ marker priority
+ ee txt)
(goto-char (point-min))
(while (re-search-forward regexp nil t)
(goto-char (match-beginning 1))
(setq marker (org-agenda-new-marker (point-at-bol))
- txt (org-format-agenda-item "" (match-string 1))
- priority
- (+ (org-get-priority txt)
- (if org-todo-kwd-priority-p
- (- org-todo-kwd-max-priority -2
- (length
- (member (match-string 2) org-todo-keywords)))
- 1)))
+ txt (org-format-agenda-item "" (match-string 1))
+ priority
+ (+ (org-get-priority txt)
+ (if org-todo-kwd-priority-p
+ (- org-todo-kwd-max-priority -2
+ (length
+ (member (match-string 2) org-todo-keywords)))
+ 1)))
(add-text-properties
0 (length txt) (append (list 'org-marker marker 'org-hd-marker marker
- 'priority priority)
- props)
+ 'priority priority)
+ props)
txt)
(push txt ee)
(goto-char (match-end 1)))
@@ -4337,221 +4346,221 @@ the documentation of `org-diary'."
(defun org-agenda-get-timestamps ()
"Return the date stamp information for agenda display."
(let* ((props (list 'face nil
- 'mouse-face 'highlight
- 'keymap org-agenda-keymap
- 'help-echo
- (format "mouse-2 or RET jump to org file %s"
- (abbreviate-file-name (buffer-file-name)))))
- (regexp (regexp-quote
- (substring
- (format-time-string
- (car org-time-stamp-formats)
- (apply 'encode-time ; DATE bound by calendar
- (list 0 0 0 (nth 1 date) (car date) (nth 2 date))))
- 0 11)))
- marker hdmarker deadlinep scheduledp donep tmp priority
- ee txt timestr)
+ 'mouse-face 'highlight
+ 'keymap org-agenda-keymap
+ 'help-echo
+ (format "mouse-2 or RET jump to org file %s"
+ (abbreviate-file-name (buffer-file-name)))))
+ (regexp (regexp-quote
+ (substring
+ (format-time-string
+ (car org-time-stamp-formats)
+ (apply 'encode-time ; DATE bound by calendar
+ (list 0 0 0 (nth 1 date) (car date) (nth 2 date))))
+ 0 11)))
+ marker hdmarker deadlinep scheduledp donep tmp priority
+ ee txt timestr)
(goto-char (point-min))
(while (re-search-forward regexp nil t)
(if (not (save-match-data (org-at-date-range-p)))
- (progn
- (setq marker (org-agenda-new-marker (match-beginning 0))
- tmp (buffer-substring (max (point-min)
- (- (match-beginning 0)
- org-ds-keyword-length))
- (match-beginning 0))
- timestr (buffer-substring (match-beginning 0) (point-at-eol))
- deadlinep (string-match org-deadline-regexp tmp)
- scheduledp (string-match org-scheduled-regexp tmp)
- donep (org-entry-is-done-p))
- (if (string-match ">" timestr)
- ;; substring should only run to end of time stamp
- (setq timestr (substring timestr 0 (match-end 0))))
- (save-excursion
- (if (re-search-backward "\\(^\\|\r\\)\\*+" nil t)
- (progn
- (goto-char (match-end 1))
- (setq hdmarker (org-agenda-new-marker))
- (looking-at "\\*+[ \t]*\\([^\r\n]+\\)")
- (setq txt (org-format-agenda-item
- (format "%s%s"
- (if deadlinep "Deadline: " "")
- (if scheduledp "Scheduled: " ""))
- (match-string 1) nil timestr)))
- (setq txt org-agenda-no-heading-message))
- (setq priority (org-get-priority txt))
- (add-text-properties
- 0 (length txt) (append (list 'org-marker marker
- 'org-hd-marker hdmarker) props)
- txt)
- (if deadlinep
- (add-text-properties
- 0 (length txt)
- (list 'face
- (if donep 'org-done 'org-warning)
- 'undone-face 'org-warning
- 'done-face 'org-done
- 'priority (+ 100 priority))
- txt)
- (if scheduledp
- (add-text-properties
- 0 (length txt)
- (list 'face 'org-scheduled-today
- 'undone-face 'org-scheduled-today
- 'done-face 'org-done
- priority (+ 99 priority))
- txt)
- (add-text-properties
- 0 (length txt)
- (list 'priority priority) txt)))
- (push txt ee))
- (outline-next-heading))))
+ (progn
+ (setq marker (org-agenda-new-marker (match-beginning 0))
+ tmp (buffer-substring (max (point-min)
+ (- (match-beginning 0)
+ org-ds-keyword-length))
+ (match-beginning 0))
+ timestr (buffer-substring (match-beginning 0) (point-at-eol))
+ deadlinep (string-match org-deadline-regexp tmp)
+ scheduledp (string-match org-scheduled-regexp tmp)
+ donep (org-entry-is-done-p))
+ (if (string-match ">" timestr)
+ ;; substring should only run to end of time stamp
+ (setq timestr (substring timestr 0 (match-end 0))))
+ (save-excursion
+ (if (re-search-backward "\\(^\\|\r\\)\\*+" nil t)
+ (progn
+ (goto-char (match-end 1))
+ (setq hdmarker (org-agenda-new-marker))
+ (looking-at "\\*+[ \t]*\\([^\r\n]+\\)")
+ (setq txt (org-format-agenda-item
+ (format "%s%s"
+ (if deadlinep "Deadline: " "")
+ (if scheduledp "Scheduled: " ""))
+ (match-string 1) nil timestr)))
+ (setq txt org-agenda-no-heading-message))
+ (setq priority (org-get-priority txt))
+ (add-text-properties
+ 0 (length txt) (append (list 'org-marker marker
+ 'org-hd-marker hdmarker) props)
+ txt)
+ (if deadlinep
+ (add-text-properties
+ 0 (length txt)
+ (list 'face
+ (if donep 'org-done 'org-warning)
+ 'undone-face 'org-warning
+ 'done-face 'org-done
+ 'priority (+ 100 priority))
+ txt)
+ (if scheduledp
+ (add-text-properties
+ 0 (length txt)
+ (list 'face 'org-scheduled-today
+ 'undone-face 'org-scheduled-today
+ 'done-face 'org-done
+ priority (+ 99 priority))
+ txt)
+ (add-text-properties
+ 0 (length txt)
+ (list 'priority priority) txt)))
+ (push txt ee))
+ (outline-next-heading))))
(nreverse ee)))
(defun org-agenda-get-deadlines ()
"Return the deadline information for agenda display."
(let* ((wdays org-deadline-warning-days)
- (props (list 'mouse-face 'highlight
- 'keymap org-agenda-keymap
- 'help-echo
- (format "mouse-2 or RET jump to org file %s"
- (abbreviate-file-name (buffer-file-name)))))
- (regexp org-deadline-time-regexp)
- (todayp (equal date (calendar-current-date))) ; DATE bound by calendar
- (d1 (calendar-absolute-from-gregorian date)) ; DATE bound by calendar
- d2 diff pos pos1
- ee txt head)
+ (props (list 'mouse-face 'highlight
+ 'keymap org-agenda-keymap
+ 'help-echo
+ (format "mouse-2 or RET jump to org file %s"
+ (abbreviate-file-name (buffer-file-name)))))
+ (regexp org-deadline-time-regexp)
+ (todayp (equal date (calendar-current-date))) ; DATE bound by calendar
+ (d1 (calendar-absolute-from-gregorian date)) ; DATE bound by calendar
+ d2 diff pos pos1
+ ee txt head)
(goto-char (point-min))
(while (re-search-forward regexp nil t)
(setq pos (1- (match-beginning 1))
- d2 (time-to-days
- (org-time-string-to-time (match-string 1)))
- diff (- d2 d1))
+ d2 (time-to-days
+ (org-time-string-to-time (match-string 1)))
+ diff (- d2 d1))
;; When to show a deadline in the calendar:
;; If the expiration is within wdays warning time.
;; Past-due deadlines are only shown on the current date
(if (and (< diff wdays) todayp (not (= diff 0)))
- (save-excursion
- (if (re-search-backward "\\(^\\|\r\\)\\*+[ \t]*" nil t)
- (progn
- (goto-char (match-end 0))
- (setq pos1 (match-end 1))
- (setq head (buffer-substring-no-properties
- (point)
- (progn (skip-chars-forward "^\r\n")
- (point))))
- (if (string-match org-looking-at-done-regexp head)
- (setq txt nil)
- (setq txt (org-format-agenda-item
- (format "In %3d d.: " diff) head))))
- (setq txt org-agenda-no-heading-message))
- (when txt
- (add-text-properties
- 0 (length txt)
- (append
- (list 'org-marker (org-agenda-new-marker pos)
- 'org-hd-marker (org-agenda-new-marker pos1)
- 'priority (+ (- 10 diff) (org-get-priority txt))
- 'face (cond ((<= diff 0) 'org-warning)
- ((<= diff 5) 'org-scheduled-previously)
- (t nil))
- 'undone-face (cond
- ((<= diff 0) 'org-warning)
- ((<= diff 5) 'org-scheduled-previously)
- (t nil))
- 'done-face 'org-done)
- props)
- txt)
- (push txt ee)))))
+ (save-excursion
+ (if (re-search-backward "\\(^\\|\r\\)\\*+[ \t]*" nil t)
+ (progn
+ (goto-char (match-end 0))
+ (setq pos1 (match-end 1))
+ (setq head (buffer-substring-no-properties
+ (point)
+ (progn (skip-chars-forward "^\r\n")
+ (point))))
+ (if (string-match org-looking-at-done-regexp head)
+ (setq txt nil)
+ (setq txt (org-format-agenda-item
+ (format "In %3d d.: " diff) head))))
+ (setq txt org-agenda-no-heading-message))
+ (when txt
+ (add-text-properties
+ 0 (length txt)
+ (append
+ (list 'org-marker (org-agenda-new-marker pos)
+ 'org-hd-marker (org-agenda-new-marker pos1)
+ 'priority (+ (- 10 diff) (org-get-priority txt))
+ 'face (cond ((<= diff 0) 'org-warning)
+ ((<= diff 5) 'org-scheduled-previously)
+ (t nil))
+ 'undone-face (cond
+ ((<= diff 0) 'org-warning)
+ ((<= diff 5) 'org-scheduled-previously)
+ (t nil))
+ 'done-face 'org-done)
+ props)
+ txt)
+ (push txt ee)))))
ee))
(defun org-agenda-get-scheduled ()
"Return the scheduled information for agenda display."
(let* ((props (list 'face 'org-scheduled-previously
- 'undone-face 'org-scheduled-previously
- 'done-face 'org-done
- 'mouse-face 'highlight
- 'keymap org-agenda-keymap
- 'help-echo
- (format "mouse-2 or RET jump to org file %s"
- (abbreviate-file-name (buffer-file-name)))))
- (regexp org-scheduled-time-regexp)
- (todayp (equal date (calendar-current-date))) ; DATE bound by calendar
- (d1 (calendar-absolute-from-gregorian date)) ; DATE bound by calendar
- d2 diff pos pos1
- ee txt head)
+ 'undone-face 'org-scheduled-previously
+ 'done-face 'org-done
+ 'mouse-face 'highlight
+ 'keymap org-agenda-keymap
+ 'help-echo
+ (format "mouse-2 or RET jump to org file %s"
+ (abbreviate-file-name (buffer-file-name)))))
+ (regexp org-scheduled-time-regexp)
+ (todayp (equal date (calendar-current-date))) ; DATE bound by calendar
+ (d1 (calendar-absolute-from-gregorian date)) ; DATE bound by calendar
+ d2 diff pos pos1
+ ee txt head)
(goto-char (point-min))
(while (re-search-forward regexp nil t)
(setq pos (1- (match-beginning 1))
- d2 (time-to-days
- (org-time-string-to-time (match-string 1)))
- diff (- d2 d1))
+ d2 (time-to-days
+ (org-time-string-to-time (match-string 1)))
+ diff (- d2 d1))
;; When to show a scheduled item in the calendar:
;; If it is on or past the date.
(if (and (< diff 0) todayp)
- (save-excursion
- (if (re-search-backward "\\(^\\|\r\\)\\*+[ \t]*" nil t)
- (progn
- (goto-char (match-end 0))
- (setq pos1 (match-end 1))
- (setq head (buffer-substring-no-properties
- (point)
- (progn (skip-chars-forward "^\r\n") (point))))
- (if (string-match org-looking-at-done-regexp head)
- (setq txt nil)
- (setq txt (org-format-agenda-item
- (format "Sched.%2dx: " (- 1 diff)) head))))
- (setq txt org-agenda-no-heading-message))
- (when txt
- (add-text-properties
- 0 (length txt)
- (append (list 'org-marker (org-agenda-new-marker pos)
- 'org-hd-marker (org-agenda-new-marker pos1)
- 'priority (+ (- 5 diff) (org-get-priority txt)))
- props) txt)
- (push txt ee)))))
+ (save-excursion
+ (if (re-search-backward "\\(^\\|\r\\)\\*+[ \t]*" nil t)
+ (progn
+ (goto-char (match-end 0))
+ (setq pos1 (match-end 1))
+ (setq head (buffer-substring-no-properties
+ (point)
+ (progn (skip-chars-forward "^\r\n") (point))))
+ (if (string-match org-looking-at-done-regexp head)
+ (setq txt nil)
+ (setq txt (org-format-agenda-item
+ (format "Sched.%2dx: " (- 1 diff)) head))))
+ (setq txt org-agenda-no-heading-message))
+ (when txt
+ (add-text-properties
+ 0 (length txt)
+ (append (list 'org-marker (org-agenda-new-marker pos)
+ 'org-hd-marker (org-agenda-new-marker pos1)
+ 'priority (+ (- 5 diff) (org-get-priority txt)))
+ props) txt)
+ (push txt ee)))))
ee))
(defun org-agenda-get-blocks ()
"Return the date-range information for agenda display."
(let* ((props (list 'face nil
- 'mouse-face 'highlight
- 'keymap org-agenda-keymap
- 'help-echo
- (format "mouse-2 or RET jump to org file %s"
- (abbreviate-file-name (buffer-file-name)))))
- (regexp org-tr-regexp)
- (d0 (calendar-absolute-from-gregorian date))
- marker hdmarker ee txt d1 d2 s1 s2 timestr)
+ 'mouse-face 'highlight
+ 'keymap org-agenda-keymap
+ 'help-echo
+ (format "mouse-2 or RET jump to org file %s"
+ (abbreviate-file-name (buffer-file-name)))))
+ (regexp org-tr-regexp)
+ (d0 (calendar-absolute-from-gregorian date))
+ marker hdmarker ee txt d1 d2 s1 s2 timestr)
(goto-char (point-min))
(while (re-search-forward regexp nil t)
(setq timestr (match-string 0)
- s1 (match-string 1)
- s2 (match-string 2)
- d1 (time-to-days (org-time-string-to-time s1))
- d2 (time-to-days (org-time-string-to-time s2)))
+ s1 (match-string 1)
+ s2 (match-string 2)
+ d1 (time-to-days (org-time-string-to-time s1))
+ d2 (time-to-days (org-time-string-to-time s2)))
(if (and (> (- d0 d1) -1) (> (- d2 d0) -1))
- ;; Only allow days between the limits, because the normal
- ;; date stamps will catch the limits.
- (save-excursion
- (setq marker (org-agenda-new-marker (point)))
- (if (re-search-backward "\\(^\\|\r\\)\\*+" nil t)
- (progn
- (setq hdmarker (org-agenda-new-marker (match-end 1)))
- (goto-char (match-end 1))
- (looking-at "\\*+[ \t]*\\([^\r\n]+\\)")
- (setq txt (org-format-agenda-item
- (format (if (= d1 d2) "" "(%d/%d): ")
- (1+ (- d0 d1)) (1+ (- d2 d1)))
- (match-string 1) nil (if (= d0 d1) timestr))))
- (setq txt org-agenda-no-heading-message))
- (add-text-properties
- 0 (length txt) (append (list 'org-marker marker
- 'org-hd-marker hdmarker
- 'priority (org-get-priority txt))
- props)
- txt)
- (push txt ee)))
+ ;; Only allow days between the limits, because the normal
+ ;; date stamps will catch the limits.
+ (save-excursion
+ (setq marker (org-agenda-new-marker (point)))
+ (if (re-search-backward "\\(^\\|\r\\)\\*+" nil t)
+ (progn
+ (setq hdmarker (org-agenda-new-marker (match-end 1)))
+ (goto-char (match-end 1))
+ (looking-at "\\*+[ \t]*\\([^\r\n]+\\)")
+ (setq txt (org-format-agenda-item
+ (format (if (= d1 d2) "" "(%d/%d): ")
+ (1+ (- d0 d1)) (1+ (- d2 d1)))
+ (match-string 1) nil (if (= d0 d1) timestr))))
+ (setq txt org-agenda-no-heading-message))
+ (add-text-properties
+ 0 (length txt) (append (list 'org-marker marker
+ 'org-hd-marker hdmarker
+ 'priority (org-get-priority txt))
+ props)
+ txt)
+ (push txt ee)))
(outline-next-heading))
;; Sort the entries by expiration date.
(nreverse ee)))
@@ -4606,87 +4615,87 @@ only the correctly processes TXT should be returned - this is used by
;; Diary entries sometimes have extra whitespace at the beginning
(if (string-match "^ +" txt) (setq txt (replace-match "" nil nil txt)))
(let* ((category (or category
- org-category
- (if (buffer-file-name)
- (file-name-sans-extension
- (file-name-nondirectory (buffer-file-name)))
- "")))
- time ;; needed for the eval of the prefix format
- (ts (if dotime (concat (if (stringp dotime) dotime "") txt)))
- (time-of-day (and dotime (org-get-time-of-day ts)))
- stamp plain s0 s1 s2 rtn)
+ org-category
+ (if (buffer-file-name)
+ (file-name-sans-extension
+ (file-name-nondirectory (buffer-file-name)))
+ "")))
+ time ;; needed for the eval of the prefix format
+ (ts (if dotime (concat (if (stringp dotime) dotime "") txt)))
+ (time-of-day (and dotime (org-get-time-of-day ts)))
+ stamp plain s0 s1 s2 rtn)
(when (and dotime time-of-day org-prefix-has-time)
- ;; Extract starting and ending time and move them to prefix
- (when (or (setq stamp (string-match org-stamp-time-of-day-regexp ts))
- (setq plain (string-match org-plain-time-of-day-regexp ts)))
- (setq s0 (match-string 0 ts)
- s1 (match-string (if plain 1 2) ts)
- s2 (match-string (if plain 8 4) ts))
-
- ;; If the times are in TXT (not in DOTIMES), and the prefix will list
- ;; them, we might want to remove them there to avoid duplication.
- ;; The user can turn this off with a variable.
- (if (and org-agenda-remove-times-when-in-prefix (or stamp plain)
- (string-match (concat (regexp-quote s0) " *") txt)
- (if (eq org-agenda-remove-times-when-in-prefix 'beg)
- (= (match-beginning 0) 0)
- t))
- (setq txt (replace-match "" nil nil txt))))
- ;; Normalize the time(s) to 24 hour
- (if s1 (setq s1 (org-get-time-of-day s1 'string)))
- (if s2 (setq s2 (org-get-time-of-day s2 'string))))
-
+ ;; Extract starting and ending time and move them to prefix
+ (when (or (setq stamp (string-match org-stamp-time-of-day-regexp ts))
+ (setq plain (string-match org-plain-time-of-day-regexp ts)))
+ (setq s0 (match-string 0 ts)
+ s1 (match-string (if plain 1 2) ts)
+ s2 (match-string (if plain 8 4) ts))
+
+ ;; If the times are in TXT (not in DOTIMES), and the prefix will list
+ ;; them, we might want to remove them there to avoid duplication.
+ ;; The user can turn this off with a variable.
+ (if (and org-agenda-remove-times-when-in-prefix (or stamp plain)
+ (string-match (concat (regexp-quote s0) " *") txt)
+ (if (eq org-agenda-remove-times-when-in-prefix 'beg)
+ (= (match-beginning 0) 0)
+ t))
+ (setq txt (replace-match "" nil nil txt))))
+ ;; Normalize the time(s) to 24 hour
+ (if s1 (setq s1 (org-get-time-of-day s1 'string)))
+ (if s2 (setq s2 (org-get-time-of-day s2 'string))))
+
;; Create the final string
(if noprefix
- (setq rtn txt)
- ;; Prepare the variables needed in the eval of the compiled format
- (setq time (cond (s2 (concat s1 "-" s2))
- (s1 (concat s1 "......"))
- (t ""))
- extra (or extra "")
- category (if (symbolp category) (symbol-name category) category))
- ;; Evaluate the compiled format
- (setq rtn (concat (eval org-prefix-format-compiled) txt)))
-
+ (setq rtn txt)
+ ;; Prepare the variables needed in the eval of the compiled format
+ (setq time (cond (s2 (concat s1 "-" s2))
+ (s1 (concat s1 "......"))
+ (t ""))
+ extra (or extra "")
+ category (if (symbolp category) (symbol-name category) category))
+ ;; Evaluate the compiled format
+ (setq rtn (concat (eval org-prefix-format-compiled) txt)))
+
;; And finally add the text properties
(add-text-properties
0 (length rtn) (list 'category (downcase category)
- 'prefix-length (- (length rtn) (length txt))
- 'time-of-day time-of-day
- 'dotime dotime)
+ 'prefix-length (- (length rtn) (length txt))
+ 'time-of-day time-of-day
+ 'dotime dotime)
rtn)
rtn)))
(defun org-agenda-add-time-grid-maybe (list ndays todayp)
(catch 'exit
(cond ((not org-agenda-use-time-grid) (throw 'exit list))
- ((and todayp (member 'today (car org-agenda-time-grid))))
- ((and (= ndays 1) (member 'daily (car org-agenda-time-grid))))
- ((member 'weekly (car org-agenda-time-grid)))
- (t (throw 'exit list)))
+ ((and todayp (member 'today (car org-agenda-time-grid))))
+ ((and (= ndays 1) (member 'daily (car org-agenda-time-grid))))
+ ((member 'weekly (car org-agenda-time-grid)))
+ (t (throw 'exit list)))
(let* ((have (delq nil (mapcar
- (lambda (x) (get-text-property 1 'time-of-day x))
- list)))
- (string (nth 1 org-agenda-time-grid))
- (gridtimes (nth 2 org-agenda-time-grid))
- (req (car org-agenda-time-grid))
- (remove (member 'remove-match req))
- new time)
+ (lambda (x) (get-text-property 1 'time-of-day x))
+ list)))
+ (string (nth 1 org-agenda-time-grid))
+ (gridtimes (nth 2 org-agenda-time-grid))
+ (req (car org-agenda-time-grid))
+ (remove (member 'remove-match req))
+ new time)
(if (and (member 'require-timed req) (not have))
- ;; don't show empty grid
- (throw 'exit list))
+ ;; don't show empty grid
+ (throw 'exit list))
(while (setq time (pop gridtimes))
- (unless (and remove (member time have))
- (setq time (int-to-string time))
- (push (org-format-agenda-item
- nil string "" ;; FIXME: put a category?
- (concat (substring time 0 -2) ":" (substring time -2)))
- new)
- (put-text-property
- 1 (length (car new)) 'face 'org-time-grid (car new))))
+ (unless (and remove (member time have))
+ (setq time (int-to-string time))
+ (push (org-format-agenda-item
+ nil string "" ;; FIXME: put a category?
+ (concat (substring time 0 -2) ":" (substring time -2)))
+ new)
+ (put-text-property
+ 1 (length (car new)) 'face 'org-time-grid (car new))))
(if (member 'time-up org-agenda-sorting-strategy)
- (append new list)
- (append list new)))))
+ (append new list)
+ (append list new)))))
(defun org-compile-prefix-format (format)
"Compile the prefix format into a Lisp form that can be evaluated.
@@ -4695,20 +4704,20 @@ The resulting form is returned and stored in the variable
(setq org-prefix-has-time nil)
(let ((start 0) varform vars var (s format) c f opt)
(while (string-match "%\\(\\?\\)?\\([-+]?[0-9.]*\\)\\([ .;,:!?=|/<>]?\\)\\([cts]\\)"
- s start)
+ s start)
(setq var (cdr (assoc (match-string 4 s)
- '(("c" . category) ("t" . time) ("s" . extra))))
- c (or (match-string 3 s) "")
- opt (match-beginning 1)
- start (1+ (match-beginning 0)))
+ '(("c" . category) ("t" . time) ("s" . extra))))
+ c (or (match-string 3 s) "")
+ opt (match-beginning 1)
+ start (1+ (match-beginning 0)))
(if (equal var 'time) (setq org-prefix-has-time t))
(setq f (concat "%" (match-string 2 s) "s"))
(if opt
- (setq varform
- `(if (equal "" ,var)
- ""
- (format ,f (if (equal "" ,var) "" (concat ,var ,c)))))
- (setq varform `(format ,f (if (equal ,var "") "" (concat ,var ,c)))))
+ (setq varform
+ `(if (equal "" ,var)
+ ""
+ (format ,f (if (equal "" ,var) "" (concat ,var ,c)))))
+ (setq varform `(format ,f (if (equal ,var "") "" (concat ,var ,c)))))
(setq s (replace-match "%s" t nil s))
(push varform vars))
(setq vars (nreverse vars))
@@ -4721,21 +4730,21 @@ If not found, return nil.
The optional STRING argument forces conversion into a 5 character wide string
HH:MM."
(save-match-data
- (when
+ (when
(or
(string-match
"\\<\\([012]?[0-9]\\)\\(:\\([0-5][0-9]\\)\\)\\([AaPp][Mm]\\)?\\> *" s)
(string-match
"\\<\\([012]?[0-9]\\)\\(:\\([0-5][0-9]\\)\\)?\\([AaPp][Mm]\\)\\> *" s))
(let* ((t0 (+ (* 100
- (+ (string-to-number (match-string 1 s))
- (if (and (match-beginning 4)
- (equal (downcase (match-string 4 s)) "pm"))
- 12 0)))
- (if (match-beginning 3)
- (string-to-number (match-string 3 s))
- 0)))
- (t1 (concat " " (int-to-string t0))))
+ (+ (string-to-number (match-string 1 s))
+ (if (and (match-beginning 4)
+ (equal (downcase (match-string 4 s)) "pm"))
+ 12 0)))
+ (if (match-beginning 3)
+ (string-to-number (match-string 3 s))
+ 0)))
+ (t1 (concat " " (int-to-string t0))))
(if string (concat (substring t1 -4 -2) ":" (substring t1 -2)) t0)))))
(defun org-finalize-agenda-entries (list)
@@ -4745,41 +4754,41 @@ HH:MM."
(defsubst org-cmp-priority (a b)
"Compare the priorities of string a and b."
(let ((pa (or (get-text-property 1 'priority a) 0))
- (pb (or (get-text-property 1 'priority b) 0)))
+ (pb (or (get-text-property 1 'priority b) 0)))
(cond ((> pa pb) +1)
- ((< pa pb) -1)
- (t nil))))
+ ((< pa pb) -1)
+ (t nil))))
(defsubst org-cmp-category (a b)
"Compare the string values of categories of strings a and b."
(let ((ca (or (get-text-property 1 'category a) ""))
- (cb (or (get-text-property 1 'category b) "")))
+ (cb (or (get-text-property 1 'category b) "")))
(cond ((string-lessp ca cb) -1)
- ((string-lessp cb ca) +1)
- (t nil))))
+ ((string-lessp cb ca) +1)
+ (t nil))))
(defsubst org-cmp-time (a b)
"Compare the time-of-day values of strings a and b."
(let* ((def (if org-sort-agenda-notime-is-late 2401 -1))
- (ta (or (get-text-property 1 'time-of-day a) def))
- (tb (or (get-text-property 1 'time-of-day b) def)))
+ (ta (or (get-text-property 1 'time-of-day a) def))
+ (tb (or (get-text-property 1 'time-of-day b) def)))
(cond ((< ta tb) -1)
- ((< tb ta) +1)
- (t nil))))
+ ((< tb ta) +1)
+ (t nil))))
(defun org-entries-lessp (a b)
"Predicate for sorting agenda entries."
;; The following variables will be used when the form is evaluated.
(let* ((time-up (org-cmp-time a b))
- (time-down (if time-up (- time-up) nil))
- (priority-up (org-cmp-priority a b))
- (priority-down (if priority-up (- priority-up) nil))
- (category-up (org-cmp-category a b))
- (category-down (if category-up (- category-up) nil))
- (category-keep (if category-up +1 nil))) ; FIXME +1 or -1?
- (cdr (assoc
- (eval (cons 'or org-agenda-sorting-strategy))
- '((-1 . t) (1 . nil) (nil . nil))))))
+ (time-down (if time-up (- time-up) nil))
+ (priority-up (org-cmp-priority a b))
+ (priority-down (if priority-up (- priority-up) nil))
+ (category-up (org-cmp-category a b))
+ (category-down (if category-up (- category-up) nil))
+ (category-keep (if category-up +1 nil))) ; FIXME +1 or -1?
+ (cdr (assoc
+ (eval (cons 'or org-agenda-sorting-strategy))
+ '((-1 . t) (1 . nil) (nil . nil))))))
(defun org-agenda-show-priority ()
"Show the priority of the current item.
@@ -4792,27 +4801,27 @@ and by additional input from the age of a schedules or deadline entry."
(defun org-agenda-goto (&optional highlight)
"Go to the Org-mode file which contains the item at point."
(interactive)
- (let* ((marker (or (get-text-property (point) 'org-marker)
- (org-agenda-error)))
- (buffer (marker-buffer marker))
- (pos (marker-position marker)))
+ (let* ((marker (or (get-text-property (point) 'org-marker)
+ (org-agenda-error)))
+ (buffer (marker-buffer marker))
+ (pos (marker-position marker)))
(switch-to-buffer-other-window buffer)
(widen)
(goto-char pos)
(when (eq major-mode 'org-mode)
(org-show-hidden-entry)
(save-excursion
- (and (outline-next-heading)
- (org-flag-heading nil)))) ; show the next heading
+ (and (outline-next-heading)
+ (org-flag-heading nil)))) ; show the next heading
(and highlight (org-highlight (point-at-bol) (point-at-eol)))))
(defun org-agenda-switch-to ()
"Go to the Org-mode file which contains the item at point."
(interactive)
- (let* ((marker (or (get-text-property (point) 'org-marker)
- (org-agenda-error)))
- (buffer (marker-buffer marker))
- (pos (marker-position marker)))
+ (let* ((marker (or (get-text-property (point) 'org-marker)
+ (org-agenda-error)))
+ (buffer (marker-buffer marker))
+ (pos (marker-position marker)))
(switch-to-buffer buffer)
(delete-other-windows)
(widen)
@@ -4820,8 +4829,8 @@ and by additional input from the age of a schedules or deadline entry."
(when (eq major-mode 'org-mode)
(org-show-hidden-entry)
(save-excursion
- (and (outline-next-heading)
- (org-flag-heading nil)))))) ; show the next heading
+ (and (outline-next-heading)
+ (org-flag-heading nil)))))) ; show the next heading
(defun org-agenda-goto-mouse (ev)
"Go to the Org-mode file which contains the item at the mouse click."
@@ -4869,26 +4878,26 @@ the same tree node, and the headline of the tree node in the Org-mode file."
(interactive)
(org-agenda-check-no-diary)
(let* ((col (current-column))
- (marker (or (get-text-property (point) 'org-marker)
- (org-agenda-error)))
- (buffer (marker-buffer marker))
- (pos (marker-position marker))
- (hdmarker (get-text-property (point) 'org-hd-marker))
- (buffer-read-only nil)
- newhead)
+ (marker (or (get-text-property (point) 'org-marker)
+ (org-agenda-error)))
+ (buffer (marker-buffer marker))
+ (pos (marker-position marker))
+ (hdmarker (get-text-property (point) 'org-hd-marker))
+ (buffer-read-only nil)
+ newhead)
(with-current-buffer buffer
(widen)
(goto-char pos)
(org-show-hidden-entry)
(save-excursion
- (and (outline-next-heading)
- (org-flag-heading nil))) ; show the next heading
+ (and (outline-next-heading)
+ (org-flag-heading nil))) ; show the next heading
(org-todo)
(forward-char 1)
(setq newhead (org-get-heading))
(save-excursion
- (org-back-to-heading)
- (move-marker org-last-heading-marker (point))))
+ (org-back-to-heading)
+ (move-marker org-last-heading-marker (point))))
(beginning-of-line 1)
(save-excursion
(org-agenda-change-all-lines newhead hdmarker 'fixface))
@@ -4907,30 +4916,30 @@ the new TODO state."
(goto-char (point-max))
(beginning-of-line 1)
(while (not finish)
- (setq finish (bobp))
- (when (and (setq m (get-text-property (point) 'org-hd-marker))
- (equal m hdmarker))
- (setq props (text-properties-at (point))
- dotime (get-text-property (point) 'dotime)
- new (org-format-agenda-item "x" newhead "x" dotime 'noprefix)
- pl (get-text-property (point) 'prefix-length)
- undone-face (get-text-property (point) 'undone-face)
- done-face (get-text-property (point) 'done-face))
- (move-to-column pl)
- (if (looking-at ".*")
- (progn
- (replace-match new t t)
- (beginning-of-line 1)
- (add-text-properties (point-at-bol) (point-at-eol) props)
- (if fixface
- (add-text-properties
- (point-at-bol) (point-at-eol)
- (list 'face
- (if org-last-todo-state-is-todo
- undone-face done-face))))
- (beginning-of-line 1))
- (error "Line update did not work")))
- (beginning-of-line 0)))))
+ (setq finish (bobp))
+ (when (and (setq m (get-text-property (point) 'org-hd-marker))
+ (equal m hdmarker))
+ (setq props (text-properties-at (point))
+ dotime (get-text-property (point) 'dotime)
+ new (org-format-agenda-item "x" newhead "x" dotime 'noprefix)
+ pl (get-text-property (point) 'prefix-length)
+ undone-face (get-text-property (point) 'undone-face)
+ done-face (get-text-property (point) 'done-face))
+ (move-to-column pl)
+ (if (looking-at ".*")
+ (progn
+ (replace-match new t t)
+ (beginning-of-line 1)
+ (add-text-properties (point-at-bol) (point-at-eol) props)
+ (if fixface
+ (add-text-properties
+ (point-at-bol) (point-at-eol)
+ (list 'face
+ (if org-last-todo-state-is-todo
+ undone-face done-face))))
+ (beginning-of-line 1))
+ (error "Line update did not work")))
+ (beginning-of-line 0)))))
(defun org-agenda-priority-up ()
"Increase the priority of line at point, also in Org-mode file."
@@ -4949,19 +4958,19 @@ the same tree node, and the headline of the tree node in the Org-mode file."
(interactive)
(org-agenda-check-no-diary)
(let* ((marker (or (get-text-property (point) 'org-marker)
- (org-agenda-error)))
- (buffer (marker-buffer marker))
- (pos (marker-position marker))
- (hdmarker (get-text-property (point) 'org-hd-marker))
- (buffer-read-only nil)
- newhead)
+ (org-agenda-error)))
+ (buffer (marker-buffer marker))
+ (pos (marker-position marker))
+ (hdmarker (get-text-property (point) 'org-hd-marker))
+ (buffer-read-only nil)
+ newhead)
(with-current-buffer buffer
(widen)
(goto-char pos)
(org-show-hidden-entry)
(save-excursion
- (and (outline-next-heading)
- (org-flag-heading nil))) ; show the next heading
+ (and (outline-next-heading)
+ (org-flag-heading nil))) ; show the next heading
(funcall 'org-priority force-direction)
(end-of-line 1)
(setq newhead (org-get-heading)))
@@ -4973,14 +4982,14 @@ the same tree node, and the headline of the tree node in the Org-mode file."
(interactive "p")
(org-agenda-check-no-diary)
(let* ((marker (or (get-text-property (point) 'org-marker)
- (org-agenda-error)))
- (buffer (marker-buffer marker))
- (pos (marker-position marker)))
+ (org-agenda-error)))
+ (buffer (marker-buffer marker))
+ (pos (marker-position marker)))
(with-current-buffer buffer
(widen)
(goto-char pos)
(if (not (org-at-timestamp-p))
- (error "Cannot find time stamp"))
+ (error "Cannot find time stamp"))
(org-timestamp-change arg (or what 'day))
(message "Time stamp changed to %s" org-last-changed-timestamp))))
@@ -4996,14 +5005,14 @@ be used to request time specification in the time stamp."
(interactive "P")
(org-agenda-check-no-diary)
(let* ((marker (or (get-text-property (point) 'org-marker)
- (org-agenda-error)))
- (buffer (marker-buffer marker))
- (pos (marker-position marker)))
+ (org-agenda-error)))
+ (buffer (marker-buffer marker))
+ (pos (marker-position marker)))
(with-current-buffer buffer
(widen)
(goto-char pos)
(if (not (org-at-timestamp-p))
- (error "Cannot find time stamp"))
+ (error "Cannot find time stamp"))
(org-time-stamp arg)
(message "Time stamp changed to %s" org-last-changed-timestamp))))
@@ -5011,8 +5020,8 @@ be used to request time specification in the time stamp."
"Return the heading of the current entry, without the stars."
(save-excursion
(if (and (re-search-backward "[\r\n]\\*" nil t)
- (looking-at "[\r\n]\\*+[ \t]+\\(.*\\)"))
- (match-string 1)
+ (looking-at "[\r\n]\\*+[ \t]+\\(.*\\)"))
+ (match-string 1)
"")))
(defun org-agenda-diary-entry ()
@@ -5020,40 +5029,40 @@ be used to request time specification in the time stamp."
All the standard commands work: block, weekly etc"
(interactive)
(require 'diary-lib)
- (let* ((char (progn
- (message "Diary entry: [d]ay [w]eekly [m]onthly [y]early [a]nniversary [b]lock [c]yclic")
- (read-char-exclusive)))
- (cmd (cdr (assoc char
- '((?d . insert-diary-entry)
- (?w . insert-weekly-diary-entry)
- (?m . insert-monthly-diary-entry)
- (?y . insert-yearly-diary-entry)
- (?a . insert-anniversary-diary-entry)
- (?b . insert-block-diary-entry)
- (?c . insert-cyclic-diary-entry)))))
- (oldf (symbol-function 'calendar-cursor-to-date))
- (point (point))
- (mark (or (mark t) (point))))
+ (let* ((char (progn
+ (message "Diary entry: [d]ay [w]eekly [m]onthly [y]early [a]nniversary [b]lock [c]yclic")
+ (read-char-exclusive)))
+ (cmd (cdr (assoc char
+ '((?d . insert-diary-entry)
+ (?w . insert-weekly-diary-entry)
+ (?m . insert-monthly-diary-entry)
+ (?y . insert-yearly-diary-entry)
+ (?a . insert-anniversary-diary-entry)
+ (?b . insert-block-diary-entry)
+ (?c . insert-cyclic-diary-entry)))))
+ (oldf (symbol-function 'calendar-cursor-to-date))
+ (point (point))
+ (mark (or (mark t) (point))))
(unless cmd
(error "No command associated with <%c>" char))
(unless (and (get-text-property point 'day)
- (or (not (equal ?b char))
- (get-text-property mark 'day)))
+ (or (not (equal ?b char))
+ (get-text-property mark 'day)))
(error "Don't know which date to use for diary entry"))
;; We implement this by hacking the `calendar-cursor-to-date' function
;; and the `calendar-mark-ring' variable. Saves a lot of code.
(let ((calendar-mark-ring
- (list (calendar-gregorian-from-absolute
- (or (get-text-property mark 'day)
- (get-text-property point 'day))))))
+ (list (calendar-gregorian-from-absolute
+ (or (get-text-property mark 'day)
+ (get-text-property point 'day))))))
(unwind-protect
- (progn
- (fset 'calendar-cursor-to-date
- (lambda (&optional error)
- (calendar-gregorian-from-absolute
- (get-text-property point 'day))))
- (call-interactively cmd))
- (fset 'calendar-cursor-to-date oldf)))))
+ (progn
+ (fset 'calendar-cursor-to-date
+ (lambda (&optional error)
+ (calendar-gregorian-from-absolute
+ (get-text-property point 'day))))
+ (call-interactively cmd))
+ (fset 'calendar-cursor-to-date oldf)))))
(defun org-agenda-execute-calendar-command (cmd)
@@ -5063,20 +5072,20 @@ the cursor position."
(unless (get-text-property (point) 'day)
(error "Don't know which date to use for calendar command"))
(let* ((oldf (symbol-function 'calendar-cursor-to-date))
- (point (point))
- (date (calendar-gregorian-from-absolute
- (get-text-property point 'day)))
- (displayed-day (extract-calendar-day date))
- (displayed-month (extract-calendar-month date))
- (displayed-year (extract-calendar-year date)))
+ (point (point))
+ (date (calendar-gregorian-from-absolute
+ (get-text-property point 'day)))
+ (displayed-day (extract-calendar-day date))
+ (displayed-month (extract-calendar-month date))
+ (displayed-year (extract-calendar-year date)))
(unwind-protect
- (progn
- (fset 'calendar-cursor-to-date
- (lambda (&optional error)
- (calendar-gregorian-from-absolute
- (get-text-property point 'day))))
- (call-interactively cmd))
- (fset 'calendar-cursor-to-date oldf))))
+ (progn
+ (fset 'calendar-cursor-to-date
+ (lambda (&optional error)
+ (calendar-gregorian-from-absolute
+ (get-text-property point 'day))))
+ (call-interactively cmd))
+ (fset 'calendar-cursor-to-date oldf))))
(defun org-agenda-phases-of-moon ()
"Display the phases of the moon for the 3 months around the cursor date."
@@ -5095,17 +5104,17 @@ Latitude and longitude can be specified with the variables
argument, latitude and longitude will be prompted for."
(interactive "P")
(let ((calendar-longitude (if arg nil calendar-longitude))
- (calendar-latitude (if arg nil calendar-latitude))
- (calendar-location-name
- (if arg "the given coordinates" calendar-location-name)))
+ (calendar-latitude (if arg nil calendar-latitude))
+ (calendar-location-name
+ (if arg "the given coordinates" calendar-location-name)))
(org-agenda-execute-calendar-command 'calendar-sunrise-sunset)))
(defun org-agenda-goto-calendar ()
"Open the Emacs calendar with the date at the cursor."
(interactive)
(let* ((day (or (get-text-property (point) 'day)
- (error "Don't know which date to open in calendar")))
- (date (calendar-gregorian-from-absolute day)))
+ (error "Don't know which date to open in calendar")))
+ (date (calendar-gregorian-from-absolute day)))
(calendar)
(calendar-goto-date date)))
@@ -5114,30 +5123,30 @@ argument, latitude and longitude will be prompted for."
This is a command that has to be installed in `calendar-mode-map'."
(interactive)
(org-agenda nil (calendar-absolute-from-gregorian
- (calendar-cursor-to-date))))
+ (calendar-cursor-to-date))))
(defun org-agenda-convert-date ()
(interactive)
(let ((day (get-text-property (point) 'day))
- date s)
+ date s)
(unless day
(error "Don't know which date to convert"))
(setq date (calendar-gregorian-from-absolute day))
- (setq s (concat
- "Gregorian: " (calendar-date-string date) "\n"
- "ISO: " (calendar-iso-date-string date) "\n"
- "Day of Yr: " (calendar-day-of-year-string date) "\n"
- "Julian: " (calendar-julian-date-string date) "\n"
- "Astron. JD: " (calendar-astro-date-string date)
- " (Julian date number at noon UTC)\n"
- "Hebrew: " (calendar-hebrew-date-string date) " (until sunset)\n"
- "Islamic: " (calendar-islamic-date-string date) " (until sunset)\n"
- "French: " (calendar-french-date-string date) "\n"
- "Mayan: " (calendar-mayan-date-string date) "\n"
- "Coptic: " (calendar-coptic-date-string date) "\n"
- "Ethiopic: " (calendar-ethiopic-date-string date) "\n"
- "Persian: " (calendar-persian-date-string date) "\n"
- "Chinese: " (calendar-chinese-date-string date) "\n"))
+ (setq s (concat
+ "Gregorian: " (calendar-date-string date) "\n"
+ "ISO: " (calendar-iso-date-string date) "\n"
+ "Day of Yr: " (calendar-day-of-year-string date) "\n"
+ "Julian: " (calendar-julian-date-string date) "\n"
+ "Astron. JD: " (calendar-astro-date-string date)
+ " (Julian date number at noon UTC)\n"
+ "Hebrew: " (calendar-hebrew-date-string date) " (until sunset)\n"
+ "Islamic: " (calendar-islamic-date-string date) " (until sunset)\n"
+ "French: " (calendar-french-date-string date) "\n"
+ "Mayan: " (calendar-mayan-date-string date) "\n"
+ "Coptic: " (calendar-coptic-date-string date) "\n"
+ "Ethiopic: " (calendar-ethiopic-date-string date) "\n"
+ "Persian: " (calendar-persian-date-string date) "\n"
+ "Chinese: " (calendar-chinese-date-string date) "\n"))
(with-output-to-temp-buffer "*Dates*"
(princ s))
(fit-window-to-buffer (get-buffer-window "*Dates*"))))
@@ -5165,88 +5174,88 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file."
(interactive "P")
(if (org-at-timestamp-p)
(org-agenda nil (time-to-days (org-time-string-to-time
- (substring (match-string 1) 0 10)))
- 1)
+ (substring (match-string 1) 0 10)))
+ 1)
(let (type path line (pos (point)))
(save-excursion
- (skip-chars-backward
- (concat (if org-allow-space-in-links "^" "^ ")
- org-non-link-chars))
- (if (re-search-forward
- org-link-regexp
- (save-excursion
- (condition-case nil
- (progn (outline-end-of-subtree) (max pos (point)))
- (error (end-of-line 1) (point))))
- t)
- (setq type (match-string 1)
- path (match-string 2)))
- (unless path
- (error "No link found"))
- ;; Remove any trailing spaces in path
- (if (string-match " +\\'" path)
- (setq path (replace-match "" t t path)))
-
- (cond
-
- ((string= type "file")
- (if (string-match ":\\([0-9]+\\)\\'" path)
- (setq line (string-to-number (match-string 1 path))
- path (substring path 0 (match-beginning 0))))
- (org-open-file path in-emacs line))
-
- ((string= type "news")
- (org-follow-gnus-link path))
-
- ((string= type "bbdb")
- (org-follow-bbdb-link path))
-
- ((string= type "gnus")
- (let (group article)
- (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
- (error "Error in Gnus link"))
- (setq group (match-string 1 path)
- article (match-string 3 path))
- (org-follow-gnus-link group article)))
-
- ((string= type "vm")
- (let (folder article)
- (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
- (error "Error in VM link"))
- (setq folder (match-string 1 path)
- article (match-string 3 path))
- ;; in-emacs is the prefix arg, will be interpreted as read-only
- (org-follow-vm-link folder article in-emacs)))
-
- ((string= type "wl")
- (let (folder article)
- (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
- (error "Error in Wanderlust link"))
- (setq folder (match-string 1 path)
- article (match-string 3 path))
- (org-follow-wl-link folder article)))
-
- ((string= type "rmail")
- (let (folder article)
- (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
- (error "Error in RMAIL link"))
- (setq folder (match-string 1 path)
- article (match-string 3 path))
- (org-follow-rmail-link folder article)))
-
- ((string= type "shell")
- (let ((cmd path))
- (while (string-match "@{" cmd)
- (setq cmd (replace-match "<" t t cmd)))
- (while (string-match "@}" cmd)
- (setq cmd (replace-match ">" t t cmd)))
- (if (or (not org-confirm-shell-links)
- (yes-or-no-p (format "Execute \"%s\" in the shell? " cmd)))
- (shell-command cmd)
- (error "Abort"))))
-
- (t
- (browse-url-at-point)))))))
+ (skip-chars-backward
+ (concat (if org-allow-space-in-links "^" "^ ")
+ org-non-link-chars))
+ (if (re-search-forward
+ org-link-regexp
+ (save-excursion
+ (condition-case nil
+ (progn (outline-end-of-subtree) (max pos (point)))
+ (error (end-of-line 1) (point))))
+ t)
+ (setq type (match-string 1)
+ path (match-string 2)))
+ (unless path
+ (error "No link found"))
+ ;; Remove any trailing spaces in path
+ (if (string-match " +\\'" path)
+ (setq path (replace-match "" t t path)))
+
+ (cond
+
+ ((string= type "file")
+ (if (string-match ":\\([0-9]+\\)\\'" path)
+ (setq line (string-to-number (match-string 1 path))
+ path (substring path 0 (match-beginning 0))))
+ (org-open-file path in-emacs line))
+
+ ((string= type "news")
+ (org-follow-gnus-link path))
+
+ ((string= type "bbdb")
+ (org-follow-bbdb-link path))
+
+ ((string= type "gnus")
+ (let (group article)
+ (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
+ (error "Error in Gnus link"))
+ (setq group (match-string 1 path)
+ article (match-string 3 path))
+ (org-follow-gnus-link group article)))
+
+ ((string= type "vm")
+ (let (folder article)
+ (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
+ (error "Error in VM link"))
+ (setq folder (match-string 1 path)
+ article (match-string 3 path))
+ ;; in-emacs is the prefix arg, will be interpreted as read-only
+ (org-follow-vm-link folder article in-emacs)))
+
+ ((string= type "wl")
+ (let (folder article)
+ (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
+ (error "Error in Wanderlust link"))
+ (setq folder (match-string 1 path)
+ article (match-string 3 path))
+ (org-follow-wl-link folder article)))
+
+ ((string= type "rmail")
+ (let (folder article)
+ (if (not (string-match "\\`\\([^#]+\\)\\(#\\(.*\\)\\)?" path))
+ (error "Error in RMAIL link"))
+ (setq folder (match-string 1 path)
+ article (match-string 3 path))
+ (org-follow-rmail-link folder article)))
+
+ ((string= type "shell")
+ (let ((cmd path))
+ (while (string-match "@{" cmd)
+ (setq cmd (replace-match "<" t t cmd)))
+ (while (string-match "@}" cmd)
+ (setq cmd (replace-match ">" t t cmd)))
+ (if (or (not org-confirm-shell-links)
+ (yes-or-no-p (format "Execute \"%s\" in the shell? " cmd)))
+ (shell-command cmd)
+ (error "Abort"))))
+
+ (t
+ (browse-url-at-point)))))))
(defun org-follow-bbdb-link (name)
"Follow a BBDB link to NAME."
@@ -5268,8 +5277,8 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file."
;; General match including network address and notes
(bbdb name nil)
(when (= 0 (buffer-size (get-buffer "*BBDB*")))
- (delete-window (get-buffer-window "*BBDB*"))
- (error "No matching BBDB record")))))
+ (delete-window (get-buffer-window "*BBDB*"))
+ (error "No matching BBDB record")))))
(defun org-follow-gnus-link (&optional group article)
"Follow a Gnus link to GROUP and ARTICLE."
@@ -5278,11 +5287,11 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file."
(if group (gnus-fetch-group group))
(if article
(or (gnus-summary-goto-article article nil 'force)
- (if (fboundp 'gnus-summary-insert-cached-articles)
- (progn
- (gnus-summary-insert-cached-articles)
- (gnus-summary-goto-article article nil 'force))
- (message "Message could not be found.")))))
+ (if (fboundp 'gnus-summary-insert-cached-articles)
+ (progn
+ (gnus-summary-insert-cached-articles)
+ (gnus-summary-goto-article article nil 'force))
+ (message "Message could not be found.")))))
(defun org-follow-vm-link (&optional folder article readonly)
"Follow a VM link to FOLDER and ARTICLE."
@@ -5290,18 +5299,18 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file."
(if (string-match "^//\\([a-zA-Z]+@\\)?\\([^:]+\\):\\(.*\\)" folder)
;; ange-ftp or efs or tramp access
(let ((user (or (match-string 1 folder) (user-login-name)))
- (host (match-string 2 folder))
- (file (match-string 3 folder)))
- (cond
- ((featurep 'tramp)
- ;; use tramp to access the file
- (if org-xemacs-p
- (setq folder (format "[%s@%s]%s" user host file))
- (setq folder (format "/%s@%s:%s" user host file))))
- (t
- ;; use ange-ftp or efs
- (require (if org-xemacs-p 'efs 'ange-ftp))
- (setq folder (format "/%s@%s:%s" user host file))))))
+ (host (match-string 2 folder))
+ (file (match-string 3 folder)))
+ (cond
+ ((featurep 'tramp)
+ ;; use tramp to access the file
+ (if org-xemacs-p
+ (setq folder (format "[%s@%s]%s" user host file))
+ (setq folder (format "/%s@%s:%s" user host file))))
+ (t
+ ;; use ange-ftp or efs
+ (require (if org-xemacs-p 'efs 'ange-ftp))
+ (setq folder (format "/%s@%s:%s" user host file))))))
(when folder
(funcall (cdr (assq 'vm org-link-frame-setup)) folder readonly)
(sit-for 0.1)
@@ -5309,14 +5318,14 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file."
(vm-select-folder-buffer)
(widen)
(let ((case-fold-search t))
- (goto-char (point-min))
- (if (not (re-search-forward
- (concat "^" "message-id: *" (regexp-quote article))))
- (error "Could not find the specified message in this folder"))
- (vm-isearch-update)
- (vm-isearch-narrow)
- (vm-beginning-of-message)
- (vm-summarize)))))
+ (goto-char (point-min))
+ (if (not (re-search-forward
+ (concat "^" "message-id: *" (regexp-quote article))))
+ (error "Could not find the specified message in this folder"))
+ (vm-isearch-update)
+ (vm-isearch-narrow)
+ (vm-beginning-of-message)
+ (vm-summarize)))))
(defun org-follow-wl-link (folder article)
"Follow a Wanderlust link to FOLDER and ARTICLE."
@@ -5329,21 +5338,21 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file."
(let (message-number)
(save-excursion
(save-window-excursion
- (rmail (if (string= folder "RMAIL") rmail-file-name folder))
- (setq message-number
- (save-restriction
- (widen)
- (goto-char (point-max))
- (if (re-search-backward
- (concat "^Message-ID:\\s-+" (regexp-quote
- (or article "")))
- nil t)
- (rmail-what-message))))))
+ (rmail (if (string= folder "RMAIL") rmail-file-name folder))
+ (setq message-number
+ (save-restriction
+ (widen)
+ (goto-char (point-max))
+ (if (re-search-backward
+ (concat "^Message-ID:\\s-+" (regexp-quote
+ (or article "")))
+ nil t)
+ (rmail-what-message))))))
(if message-number
- (progn
- (rmail (if (string= folder "RMAIL") rmail-file-name folder))
- (rmail-show-message message-number)
- message-number)
+ (progn
+ (rmail (if (string= folder "RMAIL") rmail-file-name folder))
+ (rmail-show-message message-number)
+ message-number)
(error "Message not found"))))
(defun org-open-file (path &optional in-emacs line)
@@ -5355,27 +5364,27 @@ If no application is found, Emacs simply visits the file.
With optional argument IN-EMACS, Emacs will visit the file.
If the file does not exist, an error is thrown."
(let* ((file (convert-standard-filename (org-expand-file-name path)))
- (dfile (downcase file))
- ext cmd apps)
+ (dfile (downcase file))
+ ext cmd apps)
(if (and (not (file-exists-p file))
- (not org-open-non-existing-files))
- (error "No such file: %s" file))
+ (not org-open-non-existing-files))
+ (error "No such file: %s" file))
(if (string-match "^.*\\.\\([a-zA-Z0-9]+\\.gz\\)$" dfile)
- (setq ext (match-string 1 dfile))
+ (setq ext (match-string 1 dfile))
(if (string-match "^.*\\.\\([a-zA-Z0-9]+\\)$" dfile)
- (setq ext (match-string 1 dfile))))
+ (setq ext (match-string 1 dfile))))
(setq apps (append org-file-apps (org-default-apps)))
(if in-emacs
- (setq cmd 'emacs)
+ (setq cmd 'emacs)
(setq cmd (or (cdr (assoc ext apps))
- (cdr (assoc t apps)))))
+ (cdr (assoc t apps)))))
(cond
((and (stringp cmd) (not (string-match "^\\s-*$" cmd)))
(setq cmd (format cmd (concat "\"" file "\"")))
(save-window-excursion
- (shell-command (concat cmd " & &"))))
+ (shell-command (concat cmd " & &"))))
((or (stringp cmd)
- (eq cmd 'emacs))
+ (eq cmd 'emacs))
(funcall (cdr (assq 'file org-link-frame-setup)) file)
(if line (goto-line line)))
((consp cmd)
@@ -5389,9 +5398,7 @@ If the file does not exist, an error is thrown."
org-file-apps-defaults-macosx)
((eq system-type 'windows-nt)
org-file-apps-defaults-windowsnt)
- ((eq system-type 'linux)
- org-file-apps-defaults-linux)
- (t org-file-apps-defaults-linux)))
+ (t org-file-apps-defaults-gnu)))
(defun org-expand-file-name (path)
"Replace special path abbreviations and expand the file name."
@@ -5418,120 +5425,120 @@ For file links, arg negates `org-line-numbers-in-file-links'."
((eq major-mode 'bbdb-mode)
(setq cpltxt (concat
- "bbdb:"
- (or (bbdb-record-name (bbdb-current-record))
- (bbdb-record-company (bbdb-current-record))))
- link (org-make-link cpltxt)))
-
+ "bbdb:"
+ (or (bbdb-record-name (bbdb-current-record))
+ (bbdb-record-company (bbdb-current-record))))
+ link (org-make-link cpltxt)))
+
((eq major-mode 'calendar-mode)
(let ((cd (calendar-cursor-to-date)))
- (setq link
- (format-time-string
- (car org-time-stamp-formats)
- (apply 'encode-time
- (list 0 0 0 (nth 1 cd) (nth 0 cd) (nth 2 cd)
- nil nil nil))))))
+ (setq link
+ (format-time-string
+ (car org-time-stamp-formats)
+ (apply 'encode-time
+ (list 0 0 0 (nth 1 cd) (nth 0 cd) (nth 2 cd)
+ nil nil nil))))))
((or (eq major-mode 'vm-summary-mode)
- (eq major-mode 'vm-presentation-mode))
+ (eq major-mode 'vm-presentation-mode))
(and (eq major-mode 'vm-presentation-mode) (vm-summarize))
(vm-follow-summary-cursor)
(save-excursion
(vm-select-folder-buffer)
(let* ((message (car vm-message-pointer))
- (folder (buffer-file-name))
- (subject (vm-su-subject message))
- (author (vm-su-full-name message))
- (message-id (vm-su-message-id message)))
- (setq folder (abbreviate-file-name folder))
- (if (string-match (concat "^" (regexp-quote vm-folder-directory))
- folder)
- (setq folder (replace-match "" t t folder)))
- (setq cpltxt (concat author " on: " subject))
- (setq link (concat cpltxt "\n "
- (org-make-link
- "vm:" folder "#" message-id))))))
+ (folder (buffer-file-name))
+ (subject (vm-su-subject message))
+ (author (vm-su-full-name message))
+ (message-id (vm-su-message-id message)))
+ (setq folder (abbreviate-file-name folder))
+ (if (string-match (concat "^" (regexp-quote vm-folder-directory))
+ folder)
+ (setq folder (replace-match "" t t folder)))
+ (setq cpltxt (concat author " on: " subject))
+ (setq link (concat cpltxt "\n "
+ (org-make-link
+ "vm:" folder "#" message-id))))))
((eq major-mode 'wl-summary-mode)
(let* ((msgnum (wl-summary-message-number))
- (message-id (elmo-message-field wl-summary-buffer-elmo-folder
- msgnum 'message-id))
- (wl-message-entity (elmo-msgdb-overview-get-entity
- msgnum (wl-summary-buffer-msgdb)))
- (author (wl-summary-line-from)) ; FIXME: how to get author name?
- (subject "???")) ; FIXME: How to get subject of email?
- (setq cpltxt (concat author " on: " subject))
- (setq link (concat cpltxt "\n "
- (org-make-link
- "wl:" wl-summary-buffer-folder-name
- "#" message-id)))))
+ (message-id (elmo-message-field wl-summary-buffer-elmo-folder
+ msgnum 'message-id))
+ (wl-message-entity (elmo-msgdb-overview-get-entity
+ msgnum (wl-summary-buffer-msgdb)))
+ (author (wl-summary-line-from)) ; FIXME: how to get author name?
+ (subject "???")) ; FIXME: How to get subject of email?
+ (setq cpltxt (concat author " on: " subject))
+ (setq link (concat cpltxt "\n "
+ (org-make-link
+ "wl:" wl-summary-buffer-folder-name
+ "#" message-id)))))
((eq major-mode 'rmail-mode)
(save-excursion
- (save-restriction
- (rmail-narrow-to-non-pruned-header)
- (let ((folder (buffer-file-name))
- (message-id (mail-fetch-field "message-id"))
- (author (mail-fetch-field "from"))
- (subject (mail-fetch-field "subject")))
- (setq cpltxt (concat author " on: " subject))
- (setq link (concat cpltxt "\n "
- (org-make-link
- "rmail:" folder "#" message-id)))))))
+ (save-restriction
+ (rmail-narrow-to-non-pruned-header)
+ (let ((folder (buffer-file-name))
+ (message-id (mail-fetch-field "message-id"))
+ (author (mail-fetch-field "from"))
+ (subject (mail-fetch-field "subject")))
+ (setq cpltxt (concat author " on: " subject))
+ (setq link (concat cpltxt "\n "
+ (org-make-link
+ "rmail:" folder "#" message-id)))))))
((eq major-mode 'gnus-group-mode)
(let ((group (cond ((fboundp 'gnus-group-group-name) ; depending on Gnus
- (gnus-group-group-name)) ; version
- ((fboundp 'gnus-group-name)
- (gnus-group-name))
- (t "???"))))
- (setq cpltxt (concat
- (if (org-xor arg org-usenet-links-prefer-google)
- "http://groups.google.com/groups?group="
- "gnus:")
- group)
- link (org-make-link cpltxt))))
+ (gnus-group-group-name)) ; version
+ ((fboundp 'gnus-group-name)
+ (gnus-group-name))
+ (t "???"))))
+ (setq cpltxt (concat
+ (if (org-xor arg org-usenet-links-prefer-google)
+ "http://groups.google.com/groups?group="
+ "gnus:")
+ group)
+ link (org-make-link cpltxt))))
((memq major-mode '(gnus-summary-mode gnus-article-mode))
(and (eq major-mode 'gnus-article-mode) (gnus-article-show-summary))
(gnus-summary-beginning-of-article)
(let* ((group (car gnus-article-current))
- (article (cdr gnus-article-current))
- (header (gnus-summary-article-header article))
- (author (mail-header-from header))
- (message-id (mail-header-id header))
- (date (mail-header-date header))
- (subject (gnus-summary-subject-string)))
- (setq cpltxt (concat author " on: " subject))
- (if (org-xor arg org-usenet-links-prefer-google)
- (setq link
- (concat
- cpltxt "\n "
- (format "http://groups.google.com/groups?as_umsgid=%s"
- (org-fixup-message-id-for-http message-id))))
- (setq link (concat cpltxt "\n"
- (org-make-link
- "gnus:" group
- "#" (number-to-string article)))))))
+ (article (cdr gnus-article-current))
+ (header (gnus-summary-article-header article))
+ (author (mail-header-from header))
+ (message-id (mail-header-id header))
+ (date (mail-header-date header))
+ (subject (gnus-summary-subject-string)))
+ (setq cpltxt (concat author " on: " subject))
+ (if (org-xor arg org-usenet-links-prefer-google)
+ (setq link
+ (concat
+ cpltxt "\n "
+ (format "http://groups.google.com/groups?as_umsgid=%s"
+ (org-fixup-message-id-for-http message-id))))
+ (setq link (concat cpltxt "\n"
+ (org-make-link
+ "gnus:" group
+ "#" (number-to-string article)))))))
((eq major-mode 'w3-mode)
(setq cpltxt (url-view-url t)
- link (org-make-link cpltxt)))
+ link (org-make-link cpltxt)))
((eq major-mode 'w3m-mode)
(setq cpltxt w3m-current-url
- link (org-make-link cpltxt)))
+ link (org-make-link cpltxt)))
((buffer-file-name)
;; Just link to this file here.
(setq cpltxt (concat "file:"
- (abbreviate-file-name (buffer-file-name))))
+ (abbreviate-file-name (buffer-file-name))))
;; Add the line number?
(if (org-xor org-line-numbers-in-file-links arg)
- (setq cpltxt
- (concat cpltxt
- ":" (int-to-string
- (+ (if (bolp) 1 0) (count-lines
- (point-min) (point)))))))
+ (setq cpltxt
+ (concat cpltxt
+ ":" (int-to-string
+ (+ (if (bolp) 1 0) (count-lines
+ (point-min) (point)))))))
(setq link (org-make-link cpltxt)))
((interactive-p)
@@ -5540,10 +5547,10 @@ For file links, arg negates `org-line-numbers-in-file-links'."
(t (setq link nil)))
(if (and (interactive-p) link)
- (progn
- (setq org-stored-links
- (cons (cons (or cpltxt link) link) org-stored-links))
- (message "Stored: %s" (or cpltxt link)))
+ (progn
+ (setq org-stored-links
+ (cons (cons (or cpltxt link) link) org-stored-links))
+ (message "Stored: %s" (or cpltxt link)))
link)))
(defun org-make-link (&rest strings)
@@ -5561,18 +5568,18 @@ For file links, arg negates `org-line-numbers-in-file-links'."
(let ((case-fold-search t) s)
(cond
((eq header 'from)
- (if (re-search-forward "^From:\\s-+\\(.*\\)" nil t)
- (setq s (match-string 1)))
+ (if (re-search-forward "^From:\\s-+\\(.*\\)" nil t)
+ (setq s (match-string 1)))
(while (string-match "\"" s)
(setq s (replace-match "" t t s)))
(if (string-match "[<(].*" s)
(setq s (replace-match "" t t s))))
((eq header 'message-id)
- (if (re-search-forward "^message-id:\\s-+\\(.*\\)" nil t)
- (setq s (match-string 1))))
+ (if (re-search-forward "^message-id:\\s-+\\(.*\\)" nil t)
+ (setq s (match-string 1))))
((eq header 'subject)
- (if (re-search-forward "^subject:\\s-+\\(.*\\)" nil t)
- (setq s (match-string 1)))))
+ (if (re-search-forward "^subject:\\s-+\\(.*\\)" nil t)
+ (setq s (match-string 1)))))
(if (string-match "\\`[ \t\]+" s) (setq s (replace-match "" t t s)))
(if (string-match "[ \t\]+\\'" s) (setq s (replace-match "" t t s)))
s)))
@@ -5607,48 +5614,48 @@ With two \\[universal-argument] prefixes, enforce an absolute path even if the f
is in the current directory or below."
(interactive "P")
(let ((link (if complete-file
- (read-file-name "File: ")
- (completing-read
- "Link: " org-stored-links nil nil nil
- org-insert-link-history
- (or (car (car org-stored-links))))))
+ (read-file-name "File: ")
+ (completing-read
+ "Link: " org-stored-links nil nil nil
+ org-insert-link-history
+ (or (car (car org-stored-links))))))
linktxt matched)
(if (or (not link) (equal link ""))
(error "No links available"))
(if complete-file
- (let ((pwd (file-name-as-directory (expand-file-name "."))))
- (cond
- ((equal complete-file '(16))
- (insert
- (org-make-link
- "file:" (abbreviate-file-name (expand-file-name link)))))
- ((string-match (concat "^" (regexp-quote pwd) "\\(.+\\)")
- (expand-file-name link))
- (insert
- (org-make-link
- "file:" (match-string 1 (expand-file-name link)))))
- (t (insert (org-make-link "file:" link)))))
+ (let ((pwd (file-name-as-directory (expand-file-name "."))))
+ (cond
+ ((equal complete-file '(16))
+ (insert
+ (org-make-link
+ "file:" (abbreviate-file-name (expand-file-name link)))))
+ ((string-match (concat "^" (regexp-quote pwd) "\\(.+\\)")
+ (expand-file-name link))
+ (insert
+ (org-make-link
+ "file:" (match-string 1 (expand-file-name link)))))
+ (t (insert (org-make-link "file:" link)))))
(setq linktxt (cdr (assoc link org-stored-links)))
(if (not org-keep-stored-link-after-insertion)
- (setq org-stored-links (delq (assoc link org-stored-links)
- org-stored-links)))
+ (setq org-stored-links (delq (assoc link org-stored-links)
+ org-stored-links)))
(if (not linktxt) (setq link (org-make-link link)))
(let ((lines (org-split-string (or linktxt link) "\n")))
- (insert (car lines))
- (setq matched (string-match org-link-regexp (car lines)))
- (setq lines (cdr lines))
- (while lines
- (insert "\n")
+ (insert (car lines))
+ (setq matched (string-match org-link-regexp (car lines)))
+ (setq lines (cdr lines))
+ (while lines
+ (insert "\n")
(if (save-excursion
(beginning-of-line 0)
(looking-at "[ \t]+\\S-"))
(indent-relative))
- (setq matched (or matched
- (string-match org-link-regexp (car lines))))
- (insert (car lines))
- (setq lines (cdr lines))))
+ (setq matched (or matched
+ (string-match org-link-regexp (car lines))))
+ (insert (car lines))
+ (setq lines (cdr lines))))
(unless matched
- (error "Add link type: http(s),ftp,mailto,file,news,bbdb,vm,wl,rmail,gnus, or shell")))))
+ (error "Add link type: http(s),ftp,mailto,file,news,bbdb,vm,wl,rmail,gnus, or shell")))))
;;; Hooks for remember.el
;;;###autoload
@@ -5682,7 +5689,7 @@ Key Cursor position Note gets inserted
RET buffer-start as level 2 heading at end of file
RET on headline as sublevel of the heading at cursor
RET no heading at cursor position, level taken from context.
- Or use prefix arg to specify level manually.
+ Or use prefix arg to specify level manually.
<left> on headline as same level, before current heading
<right> on headline as same level, after current heading
@@ -5699,80 +5706,80 @@ If the variable `org-adapt-indentation' is non-nil, the entire text is
also indented so that it starts in the same column as the headline
\(i.e. after the stars).
-See also the variable `org-reverse-note-order'."
+See also the variable `org-reverse-note-order'."
(catch 'quit
(let* ((txt (buffer-substring (point-min) (point-max)))
- (fastp current-prefix-arg)
- (file (if fastp org-default-notes-file (org-get-org-file)))
- (visiting (find-buffer-visiting file))
- (org-startup-with-deadline-check nil)
- (org-startup-folded nil)
- spos level indent reversed)
+ (fastp current-prefix-arg)
+ (file (if fastp org-default-notes-file (org-get-org-file)))
+ (visiting (find-buffer-visiting file))
+ (org-startup-with-deadline-check nil)
+ (org-startup-folded nil)
+ spos level indent reversed)
;; Modify text so that it becomes a nice subtree which can be inserted
;; into an org tree.
(let* ((lines (split-string txt "\n"))
- (first (car lines))
- (lines (cdr lines)))
- (if (string-match "^\\*+" first)
- ;; Is already a headline
- (setq indent (make-string (- (match-end 0) (match-beginning 0)
- -1) ?\ ))
- ;; We need to add a headline: Use time and first buffer line
- (setq lines (cons first lines)
- first (concat "* " (current-time-string)
- " (" (remember-buffer-desc) ")")
- indent " "))
- (if org-adapt-indentation
- (setq lines (mapcar (lambda (x) (concat indent x)) lines)))
- (setq txt (concat first "\n"
- (mapconcat 'identity lines "\n"))))
+ (first (car lines))
+ (lines (cdr lines)))
+ (if (string-match "^\\*+" first)
+ ;; Is already a headline
+ (setq indent (make-string (- (match-end 0) (match-beginning 0)
+ -1) ?\ ))
+ ;; We need to add a headline: Use time and first buffer line
+ (setq lines (cons first lines)
+ first (concat "* " (current-time-string)
+ " (" (remember-buffer-desc) ")")
+ indent " "))
+ (if org-adapt-indentation
+ (setq lines (mapcar (lambda (x) (concat indent x)) lines)))
+ (setq txt (concat first "\n"
+ (mapconcat 'identity lines "\n"))))
;; Find the file
(if (not visiting)
- (find-file-noselect file))
+ (find-file-noselect file))
(with-current-buffer (get-file-buffer file)
- (setq reversed (org-notes-order-reversed-p))
- (save-excursion
- (save-restriction
- (widen)
- ;; Ask the User for a location
- (setq spos (if fastp 1 (org-get-location
- (current-buffer)
- org-remember-help)))
- (if (not spos) (throw 'quit nil)) ; return nil to show we did
- ; not handle this note
- (goto-char spos)
- (cond ((bobp)
- ;; Put it at the start or end, as level 2
- (save-restriction
- (widen)
- (goto-char (if reversed (point-min) (point-max)))
- (if (not (bolp)) (newline))
- (org-paste-subtree (or current-prefix-arg 2) txt)))
- ((and (org-on-heading-p nil) (not current-prefix-arg))
- ;; Put it below this entry, at the beg/end of the subtree
- (org-back-to-heading)
- (setq level (outline-level))
- (if reversed
- (outline-end-of-heading)
- (outline-end-of-subtree))
- (if (not (bolp)) (newline))
- (beginning-of-line 1)
- (org-paste-subtree (1+ level) txt))
- (t
- ;; Put it right there, with automatic level determined by
- ;; org-paste-subtree or from prefix arg
- (org-paste-subtree current-prefix-arg txt)))
- (when remember-save-after-remembering
- (save-buffer)
- (if (not visiting) (kill-buffer (current-buffer)))))))))
+ (setq reversed (org-notes-order-reversed-p))
+ (save-excursion
+ (save-restriction
+ (widen)
+ ;; Ask the User for a location
+ (setq spos (if fastp 1 (org-get-location
+ (current-buffer)
+ org-remember-help)))
+ (if (not spos) (throw 'quit nil)) ; return nil to show we did
+ ; not handle this note
+ (goto-char spos)
+ (cond ((bobp)
+ ;; Put it at the start or end, as level 2
+ (save-restriction
+ (widen)
+ (goto-char (if reversed (point-min) (point-max)))
+ (if (not (bolp)) (newline))
+ (org-paste-subtree (or current-prefix-arg 2) txt)))
+ ((and (org-on-heading-p nil) (not current-prefix-arg))
+ ;; Put it below this entry, at the beg/end of the subtree
+ (org-back-to-heading)
+ (setq level (outline-level))
+ (if reversed
+ (outline-end-of-heading)
+ (outline-end-of-subtree))
+ (if (not (bolp)) (newline))
+ (beginning-of-line 1)
+ (org-paste-subtree (1+ level) txt))
+ (t
+ ;; Put it right there, with automatic level determined by
+ ;; org-paste-subtree or from prefix arg
+ (org-paste-subtree current-prefix-arg txt)))
+ (when remember-save-after-remembering
+ (save-buffer)
+ (if (not visiting) (kill-buffer (current-buffer)))))))))
t) ;; return t to indicate that we took care of this note.
(defun org-get-org-file ()
"Read a filename, with default directory `org-directory'."
(let ((default (or org-default-notes-file remember-data-file)))
(read-file-name (format "File name [%s]: " default)
- (file-name-as-directory org-directory)
- default)))
+ (file-name-as-directory org-directory)
+ default)))
(defun org-notes-order-reversed-p ()
"Check if the current file should receive notes in reversed order."
@@ -5781,12 +5788,12 @@ See also the variable `org-reverse-note-order'."
((eq t org-reverse-note-order) t)
((not (listp org-reverse-note-order)) nil)
(t (catch 'exit
- (let ((all org-reverse-note-order)
- entry)
- (while (setq entry (pop all))
- (if (string-match (car entry) (buffer-file-name))
- (throw 'exit (cdr entry))))
- nil)))))
+ (let ((all org-reverse-note-order)
+ entry)
+ (while (setq entry (pop all))
+ (if (string-match (car entry) (buffer-file-name))
+ (throw 'exit (cdr entry))))
+ nil)))))
;;; Tables
@@ -5831,10 +5838,10 @@ and table.el tables."
(cond
((org-at-table.el-p)
(if (y-or-n-p "Convert table to Org-mode table? ")
- (org-table-convert)))
+ (org-table-convert)))
((org-at-table-p)
(if (y-or-n-p "Convert table to table.el table? ")
- (org-table-convert)))
+ (org-table-convert)))
(t (call-interactively 'table-insert))))
(defun org-table-create (&optional size)
@@ -5843,30 +5850,30 @@ SIZE is a string Columns x Rows like for example \"3x2\"."
(interactive "P")
(unless size
(setq size (read-string
- (concat "Table size Columns x Rows [e.g. "
- org-table-default-size "]: ")
- "" nil org-table-default-size)))
+ (concat "Table size Columns x Rows [e.g. "
+ org-table-default-size "]: ")
+ "" nil org-table-default-size)))
(let* ((pos (point))
- (indent (make-string (current-column) ?\ ))
- (split (org-split-string size " *x *"))
- (rows (string-to-number (nth 1 split)))
- (columns (string-to-number (car split)))
- (line (concat (apply 'concat indent "|" (make-list columns " |"))
- "\n")))
+ (indent (make-string (current-column) ?\ ))
+ (split (org-split-string size " *x *"))
+ (rows (string-to-number (nth 1 split)))
+ (columns (string-to-number (car split)))
+ (line (concat (apply 'concat indent "|" (make-list columns " |"))
+ "\n")))
(if (string-match "^[ \t]*$" (buffer-substring-no-properties
- (point-at-bol) (point)))
- (beginning-of-line 1)
+ (point-at-bol) (point)))
+ (beginning-of-line 1)
(newline))
;; (mapcar (lambda (x) (insert line)) (make-list rows t))
(dotimes (i rows) (insert line))
(goto-char pos)
(if (> rows 1)
- ;; Insert a hline after the first row.
- (progn
- (end-of-line 1)
- (insert "\n|-")
- (goto-char pos)))
+ ;; Insert a hline after the first row.
+ (progn
+ (end-of-line 1)
+ (insert "\n|-")
+ (goto-char pos)))
(org-table-align)))
(defun org-table-convert-region (beg0 end0 nspace)
@@ -5876,9 +5883,9 @@ slightly, to make sure a beginning of line in the first line is included.
When NSPACE is non-nil, it indicates the minimum number of spaces that
separate columns (default: just one space)"
(let* ((beg (min beg0 end0))
- (end (max beg0 end0))
- (tabsep t)
- re)
+ (end (max beg0 end0))
+ (tabsep t)
+ re)
(goto-char beg)
(beginning-of-line 1)
(setq beg (move-marker (make-marker) (point)))
@@ -5888,14 +5895,14 @@ separate columns (default: just one space)"
;; Lets see if this is tab-separated material. If every nonempty line
;; contains a tab, we will assume that it is tab-separated material
(if nspace
- (setq tabsep nil)
+ (setq tabsep nil)
(goto-char beg)
(and (re-search-forward "^[^\n\t]+$" end t) (setq tabsep nil)))
(if nspace (setq tabsep nil))
(if tabsep
- (setq re "^\\|\t")
+ (setq re "^\\|\t")
(setq re (format "^ *\\| *\t *\\| \\{%d,\\}"
- (max 1 (prefix-numeric-value nspace)))))
+ (max 1 (prefix-numeric-value nspace)))))
(goto-char beg)
(while (re-search-forward re end t)
(replace-match "|" t t))
@@ -5911,7 +5918,7 @@ are found, lines will be split on whitespace into fields."
(interactive "f\nP")
(or (bolp) (newline))
(let ((beg (point))
- (pm (point-max)))
+ (pm (point-max)))
(insert-file-contents file)
(org-table-convert-region beg (+ (point) (- (point-max) pm)) arg)))
@@ -5920,12 +5927,12 @@ are found, lines will be split on whitespace into fields."
Such a file can be imported into a spreadsheet program like Excel."
(interactive)
(let* ((beg (org-table-begin))
- (end (org-table-end))
- (table (buffer-substring beg end))
- (file (read-file-name "Export table to: "))
- buf)
+ (end (org-table-end))
+ (table (buffer-substring beg end))
+ (file (read-file-name "Export table to: "))
+ buf)
(unless (or (not (file-exists-p file))
- (y-or-n-p (format "Overwrite file %s? " file)))
+ (y-or-n-p (format "Overwrite file %s? " file)))
(error "Abort"))
(with-current-buffer (find-file-noselect file)
(setq buf (current-buffer))
@@ -5934,20 +5941,20 @@ Such a file can be imported into a spreadsheet program like Excel."
(insert table)
(goto-char (point-min))
(while (re-search-forward "^[ \t]*|[ \t]*" nil t)
- (replace-match "" t t)
- (end-of-line 1))
+ (replace-match "" t t)
+ (end-of-line 1))
(goto-char (point-min))
(while (re-search-forward "[ \t]*|[ \t]*$" nil t)
- (replace-match "" t t)
- (goto-char (min (1+ (point)) (point-max))))
+ (replace-match "" t t)
+ (goto-char (min (1+ (point)) (point-max))))
(goto-char (point-min))
(while (re-search-forward "^-[-+]*$" nil t)
- (replace-match "")
- (if (looking-at "\n")
- (delete-char 1)))
+ (replace-match "")
+ (if (looking-at "\n")
+ (delete-char 1)))
(goto-char (point-min))
(while (re-search-forward "[ \t]*|[ \t]*" nil t)
- (replace-match "\t" t t))
+ (replace-match "\t" t t))
(save-buffer))
(kill-buffer buf)))
@@ -5970,52 +5977,53 @@ This is being used to correctly align a single field after TAB or RET.")
(defun org-table-align ()
"Align the table at point by aligning all vertical bars."
(interactive)
+ ;; (message "align") (sit-for 2)
(let* (
- ;; Limits of table
- (beg (org-table-begin))
- (end (org-table-end))
- ;; Current cursor position
- (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
- (colpos (org-table-current-column))
- (winstart (window-start))
- text lines (new "") lengths l typenums ty fields maxfields i
- column
- (indent "") cnt frac
- rfmt hfmt
- (spaces (if (org-in-invisibility-spec-p '(org-table))
- org-table-spaces-around-invisible-separators
- org-table-spaces-around-separators))
- (sp1 (car spaces))
- (sp2 (cdr spaces))
- (rfmt1 (concat
- (make-string sp2 ?\ ) "%%%s%ds" (make-string sp1 ?\ ) "|"))
- (hfmt1 (concat
- (make-string sp2 ?-) "%s" (make-string sp1 ?-) "+"))
- emptystrings)
+ ;; Limits of table
+ (beg (org-table-begin))
+ (end (org-table-end))
+ ;; Current cursor position
+ (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
+ (colpos (org-table-current-column))
+ (winstart (window-start))
+ text lines (new "") lengths l typenums ty fields maxfields i
+ column
+ (indent "") cnt frac
+ rfmt hfmt
+ (spaces (if (org-in-invisibility-spec-p '(org-table))
+ org-table-spaces-around-invisible-separators
+ org-table-spaces-around-separators))
+ (sp1 (car spaces))
+ (sp2 (cdr spaces))
+ (rfmt1 (concat
+ (make-string sp2 ?\ ) "%%%s%ds" (make-string sp1 ?\ ) "|"))
+ (hfmt1 (concat
+ (make-string sp2 ?-) "%s" (make-string sp1 ?-) "+"))
+ emptystrings)
(untabify beg end)
;; (message "Aligning table...")
;; Get the rows
(setq lines (org-split-string
- (buffer-substring-no-properties beg end) "\n"))
+ (buffer-substring-no-properties beg end) "\n"))
;; Store the indentation of the first line
(if (string-match "^ *" (car lines))
- (setq indent (make-string (- (match-end 0) (match-beginning 0)) ?\ )))
+ (setq indent (make-string (- (match-end 0) (match-beginning 0)) ?\ )))
;; Mark the hlines
(setq lines (mapcar (lambda (l)
- (if (string-match "^ *|-" l)
- nil
- (if (string-match "[ \t]+$" l)
- (substring l 0 (match-beginning 0))
- l)))
- lines))
+ (if (string-match "^ *|-" l)
+ nil
+ (if (string-match "[ \t]+$" l)
+ (substring l 0 (match-beginning 0))
+ l)))
+ lines))
;; Get the data fields
(setq fields (mapcar
- (lambda (l)
- (org-split-string l " *| *"))
- (delq nil (copy-sequence lines))))
+ (lambda (l)
+ (org-split-string l " *| *"))
+ (delq nil (copy-sequence lines))))
;; How many fields in the longest line?
(condition-case nil
- (setq maxfields (apply 'max (mapcar 'length fields)))
+ (setq maxfields (apply 'max (mapcar 'length fields)))
(error
(kill-region beg end)
(org-table-create org-table-default-size)
@@ -6033,25 +6041,25 @@ This is being used to correctly align a single field after TAB or RET.")
(setq cnt 0 frac 0.0)
(mapcar
(lambda (x)
- (if (equal x "")
- nil
- (setq frac ( / (+ (* frac cnt)
- (if (string-match org-table-number-regexp x) 1 0))
- (setq cnt (1+ cnt))))))
+ (if (equal x "")
+ nil
+ (setq frac ( / (+ (* frac cnt)
+ (if (string-match org-table-number-regexp x) 1 0))
+ (setq cnt (1+ cnt))))))
column)
(push (>= frac org-table-number-fraction) typenums))
(setq lengths (nreverse lengths)
- typenums (nreverse typenums))
+ typenums (nreverse typenums))
(setq org-table-last-alignment typenums
- org-table-last-column-widths lengths)
+ org-table-last-column-widths lengths)
;; Compute the formats needed for output of the table
(setq rfmt (concat indent "|") hfmt (concat indent "|"))
(while (setq l (pop lengths))
(setq ty (if (pop typenums) "" "-")) ; number types flushright
(setq rfmt (concat rfmt (format rfmt1 ty l))
- hfmt (concat hfmt (format hfmt1 (make-string l ?-)))))
+ hfmt (concat hfmt (format hfmt1 (make-string l ?-)))))
(setq rfmt (concat rfmt "\n")
- hfmt (concat (substring hfmt 0 -1) "|\n"))
+ hfmt (concat (substring hfmt 0 -1) "|\n"))
;; Produce the new table
;;(while lines
;; (setq l (pop lines))
@@ -6060,11 +6068,11 @@ This is being used to correctly align a single field after TAB or RET.")
;; (append (pop fields) emptystrings))))
;; (setq new (concat new hfmt))))
(setq new (mapconcat
- (lambda (l)
- (if l (apply 'format rfmt
- (append (pop fields) emptystrings))
- hfmt))
- lines ""))
+ (lambda (l)
+ (if l (apply 'format rfmt
+ (append (pop fields) emptystrings))
+ hfmt))
+ lines ""))
;; Replace the old one
(delete-region beg end)
(move-marker end nil)
@@ -6077,7 +6085,7 @@ This is being used to correctly align a single field after TAB or RET.")
(org-table-goto-column colpos)
(setq org-table-may-need-update nil)
(if (org-in-invisibility-spec-p '(org-table))
- (org-table-add-invisible-to-vertical-lines))
+ (org-table-add-invisible-to-vertical-lines))
))
(defun org-table-begin (&optional table-type)
@@ -6085,10 +6093,10 @@ This is being used to correctly align a single field after TAB or RET.")
With argument TABLE-TYPE, go to the beginning of a table.el-type table."
(save-excursion
(if (not (re-search-backward
- (if table-type org-table-any-border-regexp
- org-table-border-regexp)
- nil t))
- (error "Can't find beginning of table")
+ (if table-type org-table-any-border-regexp
+ org-table-border-regexp)
+ nil t))
+ (error "Can't find beginning of table")
(goto-char (match-beginning 0))
(beginning-of-line 2)
(point))))
@@ -6098,43 +6106,52 @@ With argument TABLE-TYPE, go to the beginning of a table.el-type table."
With argument TABLE-TYPE, go to the end of a table.el-type table."
(save-excursion
(if (not (re-search-forward
- (if table-type org-table-any-border-regexp
- org-table-border-regexp)
- nil t))
- (goto-char (point-max))
+ (if table-type org-table-any-border-regexp
+ org-table-border-regexp)
+ nil t))
+ (goto-char (point-max))
(goto-char (match-beginning 0)))
(point-marker)))
-(defun org-table-justify-field-maybe ()
- "Justify the current field, text to left, number to right."
+(defun org-table-justify-field-maybe (&optional new)
+ "Justify the current field, text to left, number to right.
+Optional argument NEW may specify text to replace the current field content."
(cond
- (org-table-may-need-update) ; Realignment will happen anyway, don't bother
+ ((and (not new) org-table-may-need-update)) ; Realignment will happen anyway
((org-at-table-hline-p)
- ;; This is pretty stupid, but I don't know how to deal with hlines
- (setq org-table-may-need-update t))
- ((or (not (equal (marker-buffer org-table-aligned-begin-marker)
- (current-buffer)))
- (< (point) org-table-aligned-begin-marker)
- (>= (point) org-table-aligned-end-marker))
+ ;; FIXME: I use to enforce realign here, but I think this is not needed.
+ ;; (setq org-table-may-need-update t)
+ )
+ ((and (not new)
+ (or (not (equal (marker-buffer org-table-aligned-begin-marker)
+ (current-buffer)))
+ (< (point) org-table-aligned-begin-marker)
+ (>= (point) org-table-aligned-end-marker)))
;; This is not the same table, force a full re-align
(setq org-table-may-need-update t))
(t ;; realign the current field, based on previous full realign
- (let* ((pos (point)) s org-table-may-need-update
- (col (org-table-current-column))
- (num (nth (1- col) org-table-last-alignment))
- l f n o)
+ (let* ((pos (point)) s
+ (col (org-table-current-column))
+ (num (nth (1- col) org-table-last-alignment))
+ l f n o upd)
(when (> col 0)
- (skip-chars-backward "^|\n")
- (if (looking-at " *\\([^|\n]*?\\) *|")
- (progn
- (setq s (match-string 1)
- o (match-string 0)
- l (max 1 (- (match-end 0) (match-beginning 0) 3)))
- (setq f (format (if num " %%%ds |" " %%-%ds |") l)
- n (format f s t t))
- (or (equal n o) (replace-match n)))
- (setq org-table-may-need-update t))
- (goto-char pos))))))
+ (skip-chars-backward "^|\n")
+ (if (looking-at " *\\([^|\n]*?\\) *|")
+ (progn
+ (setq s (match-string 1)
+ o (match-string 0)
+ l (max 1 (- (match-end 0) (match-beginning 0) 3)))
+ (setq f (format (if num " %%%ds |" " %%-%ds |") l)
+ n (format f s t t))
+ (if new
+ (if (<= (length new) l)
+ (setq n (format f new t t)) ;; FIXME: why t t?????
+ (setq n (concat new "|") org-table-may-need-update t)))
+ (or (equal n o)
+ (let (org-table-may-need-update)
+ (replace-match n))))
+ (setq org-table-may-need-update t))
+ (goto-char pos))))))
(defun org-table-next-field ()
"Go to the next field in the current table.
@@ -6143,20 +6160,20 @@ Before doing so, re-align the table if necessary."
(org-table-maybe-eval-formula)
(org-table-maybe-recalculate-line)
(if (and org-table-automatic-realign
- org-table-may-need-update)
+ org-table-may-need-update)
(org-table-align))
(if (org-at-table-hline-p)
(end-of-line 1))
(condition-case nil
(progn
- (re-search-forward "|" (org-table-end))
- (if (looking-at "[ \t]*$")
- (re-search-forward "|" (org-table-end)))
- (if (looking-at "-")
- (progn
- (beginning-of-line 0)
- (org-table-insert-row 'below))
- (if (looking-at " ") (forward-char 1))))
+ (re-search-forward "|" (org-table-end))
+ (if (looking-at "[ \t]*$")
+ (re-search-forward "|" (org-table-end)))
+ (if (looking-at "-")
+ (progn
+ (beginning-of-line 0)
+ (org-table-insert-row 'below))
+ (if (looking-at " ") (forward-char 1))))
(error
(org-table-insert-row 'below))))
@@ -6167,7 +6184,7 @@ Before doing so, re-align the table if necessary."
(org-table-justify-field-maybe)
(org-table-maybe-recalculate-line)
(if (and org-table-automatic-realign
- org-table-may-need-update)
+ org-table-may-need-update)
(org-table-align))
(if (org-at-table-hline-p)
(end-of-line 1))
@@ -6185,18 +6202,18 @@ Before doing so, re-align the table if necessary."
(org-table-maybe-eval-formula)
(org-table-maybe-recalculate-line)
(if (or (looking-at "[ \t]*$")
- (save-excursion (skip-chars-backward " \t") (bolp)))
+ (save-excursion (skip-chars-backward " \t") (bolp)))
(newline)
(if (and org-table-automatic-realign
- org-table-may-need-update)
- (org-table-align))
+ org-table-may-need-update)
+ (org-table-align))
(let ((col (org-table-current-column)))
(beginning-of-line 2)
(if (or (not (org-at-table-p))
- (org-at-table-hline-p))
- (progn
- (beginning-of-line 0)
- (org-table-insert-row 'below)))
+ (org-at-table-hline-p))
+ (progn
+ (beginning-of-line 0)
+ (org-table-insert-row 'below)))
(org-table-goto-column col)
(skip-chars-backward "^|\n\r")
(if (looking-at " ") (forward-char 1)))))
@@ -6207,49 +6224,49 @@ If the field at the cursor is empty, copy into it the content of the nearest
non-empty field above. With argument N, use the Nth non-empty field.
If the current field is not empty, it is copied down to the next row, and
the cursor is moved with it. Therefore, repeating this command causes the
-column to be filled row-by-row.
+column to be filled row-by-row.
If the variable `org-table-copy-increment' is non-nil and the field is an
integer, it will be incremented while copying."
(interactive "p")
(let* ((colpos (org-table-current-column))
- (field (org-table-get-field))
- (non-empty (string-match "[^ \t]" field))
- (beg (org-table-begin))
- txt)
+ (field (org-table-get-field))
+ (non-empty (string-match "[^ \t]" field))
+ (beg (org-table-begin))
+ txt)
(org-table-check-inside-data-field)
(if non-empty
- (progn
- (setq txt (org-trim field))
- (org-table-next-row)
- (org-table-blank-field))
+ (progn
+ (setq txt (org-trim field))
+ (org-table-next-row)
+ (org-table-blank-field))
(save-excursion
- (setq txt
- (catch 'exit
- (while (progn (beginning-of-line 1)
- (re-search-backward org-table-dataline-regexp
- beg t))
- (org-table-goto-column colpos t)
- (if (and (looking-at
- "|[ \t]*\\([^| \t][^|]*?\\)[ \t]*|")
- (= (setq n (1- n)) 0))
- (throw 'exit (match-string 1))))))))
+ (setq txt
+ (catch 'exit
+ (while (progn (beginning-of-line 1)
+ (re-search-backward org-table-dataline-regexp
+ beg t))
+ (org-table-goto-column colpos t)
+ (if (and (looking-at
+ "|[ \t]*\\([^| \t][^|]*?\\)[ \t]*|")
+ (= (setq n (1- n)) 0))
+ (throw 'exit (match-string 1))))))))
(if txt
- (progn
- (if (and org-table-copy-increment
- (string-match "^[0-9]+$" txt))
- (setq txt (format "%d" (+ (string-to-int txt) 1))))
- (insert txt)
- (org-table-maybe-recalculate-line)
- (org-table-align))
+ (progn
+ (if (and org-table-copy-increment
+ (string-match "^[0-9]+$" txt))
+ (setq txt (format "%d" (+ (string-to-int txt) 1))))
+ (insert txt)
+ (org-table-maybe-recalculate-line)
+ (org-table-align))
(error "No non-empty field found"))))
(defun org-table-check-inside-data-field ()
"Is point inside a table data field?
I.e. not on a hline or before the first or after the last column?"
(if (or (not (org-at-table-p))
- (= (org-table-current-column) 0)
- (org-at-table-hline-p)
- (looking-at "[ \t]*$"))
+ (= (org-table-current-column) 0)
+ (org-at-table-hline-p)
+ (looking-at "[ \t]*$"))
(error "Not in table data field")))
(defvar org-table-clip nil
@@ -6261,16 +6278,16 @@ I.e. not on a hline or before the first or after the last column?"
(org-table-check-inside-data-field)
(if (and (interactive-p) (org-region-active-p))
(let (org-table-clip)
- (org-table-cut-region (region-beginning) (region-end)))
+ (org-table-cut-region (region-beginning) (region-end)))
(skip-chars-backward "^|")
(backward-char 1)
(if (looking-at "|[^|\n]+")
- (let* ((pos (match-beginning 0))
- (match (match-string 0))
- (len (length match)))
- (replace-match (concat "|" (make-string (1- len) ?\ )))
- (goto-char (+ 2 pos))
- (substring match 1)))))
+ (let* ((pos (match-beginning 0))
+ (match (match-string 0))
+ (len (length match)))
+ (replace-match (concat "|" (make-string (1- len) ?\ )))
+ (goto-char (+ 2 pos))
+ (substring match 1)))))
(defun org-table-get-field (&optional n replace)
"Return the value of the field in column N of current row.
@@ -6282,11 +6299,11 @@ is always the old value."
(backward-char 1)
(if (looking-at "|[^|\r\n]*")
(let* ((pos (match-beginning 0))
- (val (buffer-substring (1+ pos) (match-end 0))))
- (if replace
- (replace-match (concat "|" replace)))
- (goto-char (min (point-at-eol) (+ 2 pos)))
- val)
+ (val (buffer-substring (1+ pos) (match-end 0))))
+ (if replace
+ (replace-match (concat "|" replace)))
+ (goto-char (min (point-at-eol) (+ 2 pos)))
+ val)
(forward-char 1) ""))
(defun org-table-current-column ()
@@ -6298,83 +6315,83 @@ When called interactively, column is also displayed in echo area."
(let ((cnt 0) (pos (point)))
(beginning-of-line 1)
(while (search-forward "|" pos t)
- (setq cnt (1+ cnt)))
+ (setq cnt (1+ cnt)))
(if (interactive-p) (message "This is table column %d" cnt))
cnt)))
(defun org-table-goto-column (n &optional on-delim force)
"Move the cursor to the Nth column in the current table line.
With optional argument ON-DELIM, stop with point before the left delimiter
-of the field.
+of the field.
If there are less than N fields, just go to after the last delimiter.
However, when FORCE is non-nil, create new columns if necessary."
(let ((pos (point-at-eol)))
(beginning-of-line 1)
(when (> n 0)
(while (and (> (setq n (1- n)) -1)
- (or (search-forward "|" pos t)
- (and force
- (progn (end-of-line 1)
- (skip-chars-backward "^|")
- (insert " | "))))))
+ (or (search-forward "|" pos t)
+ (and force
+ (progn (end-of-line 1)
+ (skip-chars-backward "^|")
+ (insert " | "))))))
; (backward-char 2) t)))))
(when (and force (not (looking-at ".*|")))
- (save-excursion (end-of-line 1) (insert " | ")))
+ (save-excursion (end-of-line 1) (insert " | ")))
(if on-delim
- (backward-char 1)
- (if (looking-at " ") (forward-char 1))))))
+ (backward-char 1)
+ (if (looking-at " ") (forward-char 1))))))
(defun org-at-table-p (&optional table-type)
"Return t if the cursor is inside an org-type table.
If TABLE-TYPE is non-nil, also chack for table.el-type tables."
(if org-enable-table-editor
(save-excursion
- (beginning-of-line 1)
- (looking-at (if table-type org-table-any-line-regexp
- org-table-line-regexp)))
+ (beginning-of-line 1)
+ (looking-at (if table-type org-table-any-line-regexp
+ org-table-line-regexp)))
nil))
(defun org-table-recognize-table.el ()
"If there is a table.el table nearby, recognize it and move into it."
(if org-table-tab-recognizes-table.el
(if (org-at-table.el-p)
- (progn
- (beginning-of-line 1)
- (if (looking-at org-table-dataline-regexp)
- nil
- (if (looking-at org-table1-hline-regexp)
- (progn
- (beginning-of-line 2)
- (if (looking-at org-table-any-border-regexp)
- (beginning-of-line -1)))))
- (if (re-search-forward "|" (org-table-end t) t)
- (progn
- (require 'table)
- (if (table--at-cell-p (point))
- t
- (message "recognizing table.el table...")
- (table-recognize-table)
- (message "recognizing table.el table...done")))
- (error "This should not happen..."))
- t)
- nil)
+ (progn
+ (beginning-of-line 1)
+ (if (looking-at org-table-dataline-regexp)
+ nil
+ (if (looking-at org-table1-hline-regexp)
+ (progn
+ (beginning-of-line 2)
+ (if (looking-at org-table-any-border-regexp)
+ (beginning-of-line -1)))))
+ (if (re-search-forward "|" (org-table-end t) t)
+ (progn
+ (require 'table)
+ (if (table--at-cell-p (point))
+ t
+ (message "recognizing table.el table...")
+ (table-recognize-table)
+ (message "recognizing table.el table...done")))
+ (error "This should not happen..."))
+ t)
+ nil)
nil))
(defun org-at-table.el-p ()
"Return t if the cursor is inside a table.el-type table."
(save-excursion
(if (org-at-table-p 'any)
- (progn
- (goto-char (org-table-begin 'any))
- (looking-at org-table1-hline-regexp))
+ (progn
+ (goto-char (org-table-begin 'any))
+ (looking-at org-table1-hline-regexp))
nil)))
(defun org-at-table-hline-p ()
"Return t if the cursor is inside a hline in a table."
(if org-enable-table-editor
(save-excursion
- (beginning-of-line 1)
- (looking-at org-table-hline-regexp))
+ (beginning-of-line 1)
+ (looking-at org-table-hline-regexp))
nil))
(defun org-table-insert-column ()
@@ -6384,17 +6401,17 @@ If TABLE-TYPE is non-nil, also chack for table.el-type tables."
(error "Not at a table"))
(org-table-find-dataline)
(let* ((col (max 1 (org-table-current-column)))
- (beg (org-table-begin))
- (end (org-table-end))
- ;; Current cursor position
- (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
- (colpos col))
+ (beg (org-table-begin))
+ (end (org-table-end))
+ ;; Current cursor position
+ (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
+ (colpos col))
(goto-char beg)
(while (< (point) end)
(if (org-at-table-hline-p)
- nil
- (org-table-goto-column col t)
- (insert "| "))
+ nil
+ (org-table-goto-column col t)
+ (insert "| "))
(beginning-of-line 2))
(move-marker end nil)
(goto-line linepos)
@@ -6405,21 +6422,21 @@ If TABLE-TYPE is non-nil, also chack for table.el-type tables."
(defun org-table-find-dataline ()
"Find a dataline in the current table, which is needed for column commands."
(if (and (org-at-table-p)
- (not (org-at-table-hline-p)))
+ (not (org-at-table-hline-p)))
t
(let ((col (current-column))
- (end (org-table-end)))
+ (end (org-table-end)))
(move-to-column col)
(while (and (< (point) end)
- (or (not (= (current-column) col))
- (org-at-table-hline-p)))
- (beginning-of-line 2)
- (move-to-column col))
+ (or (not (= (current-column) col))
+ (org-at-table-hline-p)))
+ (beginning-of-line 2)
+ (move-to-column col))
(if (and (org-at-table-p)
- (not (org-at-table-hline-p)))
- t
- (error
- "Please position cursor in a data line for column operations")))))
+ (not (org-at-table-hline-p)))
+ t
+ (error
+ "Please position cursor in a data line for column operations")))))
(defun org-table-delete-column ()
"Delete a column into the table."
@@ -6429,18 +6446,18 @@ If TABLE-TYPE is non-nil, also chack for table.el-type tables."
(org-table-find-dataline)
(org-table-check-inside-data-field)
(let* ((col (org-table-current-column))
- (beg (org-table-begin))
- (end (org-table-end))
- ;; Current cursor position
- (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
- (colpos col))
+ (beg (org-table-begin))
+ (end (org-table-end))
+ ;; Current cursor position
+ (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
+ (colpos col))
(goto-char beg)
(while (< (point) end)
(if (org-at-table-hline-p)
- nil
- (org-table-goto-column col t)
- (and (looking-at "|[^|\n]+|")
- (replace-match "|")))
+ nil
+ (org-table-goto-column col t)
+ (and (looking-at "|[^|\n]+|")
+ (replace-match "|")))
(beginning-of-line 2))
(move-marker end nil)
(goto-line linepos)
@@ -6465,23 +6482,23 @@ If TABLE-TYPE is non-nil, also chack for table.el-type tables."
(org-table-find-dataline)
(org-table-check-inside-data-field)
(let* ((col (org-table-current-column))
- (col1 (if left (1- col) col))
- (beg (org-table-begin))
- (end (org-table-end))
- ;; Current cursor position
- (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
- (colpos (if left (1- col) (1+ col))))
+ (col1 (if left (1- col) col))
+ (beg (org-table-begin))
+ (end (org-table-end))
+ ;; Current cursor position
+ (linepos (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
+ (colpos (if left (1- col) (1+ col))))
(if (and left (= col 1))
- (error "Cannot move column further left"))
+ (error "Cannot move column further left"))
(if (and (not left) (looking-at "[^|\n]*|[^|\n]*$"))
- (error "Cannot move column further right"))
+ (error "Cannot move column further right"))
(goto-char beg)
(while (< (point) end)
(if (org-at-table-hline-p)
- nil
- (org-table-goto-column col1 t)
- (and (looking-at "|\\([^|\n]+\\)|\\([^|\n]+\\)|")
- (replace-match "|\\2|\\1|")))
+ nil
+ (org-table-goto-column col1 t)
+ (and (looking-at "|\\([^|\n]+\\)|\\([^|\n]+\\)|")
+ (replace-match "|\\2|\\1|")))
(beginning-of-line 2))
(move-marker end nil)
(goto-line linepos)
@@ -6502,14 +6519,14 @@ If TABLE-TYPE is non-nil, also chack for table.el-type tables."
"Move the current table line down. With arg UP, move it up."
(interactive "P")
(let ((col (current-column))
- (pos (point))
- (tonew (if up 0 2))
- txt)
+ (pos (point))
+ (tonew (if up 0 2))
+ txt)
(beginning-of-line tonew)
(if (not (org-at-table-p))
- (progn
- (goto-char pos)
- (error "Cannot move row further")))
+ (progn
+ (goto-char pos)
+ (error "Cannot move row further")))
(goto-char pos)
(beginning-of-line 1)
(setq pos (point))
@@ -6527,14 +6544,14 @@ With prefix ARG, insert below the current line."
(if (not (org-at-table-p))
(error "Not at a table"))
(let* ((line (buffer-substring-no-properties (point-at-bol) (point-at-eol)))
- new)
+ new)
(if (string-match "^[ \t]*|-" line)
- (setq new (mapcar (lambda (x) (if (member x '(?| ?+)) ?| ?\ )) line))
+ (setq new (mapcar (lambda (x) (if (member x '(?| ?+)) ?| ?\ )) line))
(setq new (mapcar (lambda (x) (if (equal x ?|) ?| ?\ )) line)))
;; Fix the first field if necessary
(setq new (concat new))
(if (string-match "^[ \t]*| *[#$] *|" line)
- (setq new (replace-match (match-string 0 line) t t new)))
+ (setq new (replace-match (match-string 0 line) t t new)))
(beginning-of-line (if arg 2 1))
(let (org-table-may-need-update)
(insert-before-markers new)
@@ -6550,23 +6567,23 @@ With prefix ARG, insert above the current line."
(if (not (org-at-table-p))
(error "Not at a table"))
(let ((line (buffer-substring-no-properties (point-at-bol) (point-at-eol)))
- (col (current-column))
- start)
+ (col (current-column))
+ start)
(if (string-match "^[ \t]*|-" line)
- (setq line
- (mapcar (lambda (x) (if (member x '(?| ?+))
- (prog1 (if start ?+ ?|) (setq start t))
- (if start ?- ?\ )))
- line))
+ (setq line
+ (mapcar (lambda (x) (if (member x '(?| ?+))
+ (prog1 (if start ?+ ?|) (setq start t))
+ (if start ?- ?\ )))
+ line))
(setq line
- (mapcar (lambda (x) (if (equal x ?|)
- (prog1 (if start ?+ ?|) (setq start t))
- (if start ?- ?\ )))
- line)))
+ (mapcar (lambda (x) (if (equal x ?|)
+ (prog1 (if start ?+ ?|) (setq start t))
+ (if start ?- ?\ )))
+ line)))
(beginning-of-line (if arg 1 2))
(apply 'insert line)
(if (equal (char-before (point)) ?+)
- (progn (backward-delete-char 1) (insert "|")))
+ (progn (backward-delete-char 1) (insert "|")))
(insert "\n")
(beginning-of-line 0)
(move-to-column col)))
@@ -6593,34 +6610,34 @@ A special clipboard is used which can only be accessed
with `org-table-paste-rectangle'"
(interactive "rP")
(let* (l01 c01 l02 c02 l1 c1 l2 c2 ic1 ic2
- region cols
- (rpl (if cut " " nil)))
+ region cols
+ (rpl (if cut " " nil)))
(goto-char beg)
(org-table-check-inside-data-field)
(setq l01 (count-lines (point-min) (point))
- c01 (org-table-current-column))
+ c01 (org-table-current-column))
(goto-char end)
(org-table-check-inside-data-field)
(setq l02 (count-lines (point-min) (point))
- c02 (org-table-current-column))
+ c02 (org-table-current-column))
(setq l1 (min l01 l02) l2 (max l01 l02)
- c1 (min c01 c02) c2 (max c01 c02))
+ c1 (min c01 c02) c2 (max c01 c02))
(catch 'exit
(while t
- (catch 'nextline
- (if (> l1 l2) (throw 'exit t))
- (goto-line l1)
- (if (org-at-table-hline-p) (throw 'nextline (setq l1 (1+ l1))))
- (setq cols nil ic1 c1 ic2 c2)
- (while (< ic1 (1+ ic2))
- (push (org-table-get-field ic1 rpl) cols)
- (setq ic1 (1+ ic1)))
- (push (nreverse cols) region)
- (setq l1 (1+ l1)))))
+ (catch 'nextline
+ (if (> l1 l2) (throw 'exit t))
+ (goto-line l1)
+ (if (org-at-table-hline-p) (throw 'nextline (setq l1 (1+ l1))))
+ (setq cols nil ic1 c1 ic2 c2)
+ (while (< ic1 (1+ ic2))
+ (push (org-table-get-field ic1 rpl) cols)
+ (setq ic1 (1+ ic1)))
+ (push (nreverse cols) region)
+ (setq l1 (1+ l1)))))
(setq org-table-clip (nreverse region))
(if cut (org-table-align))
org-table-clip))
-
+
(defun org-table-paste-rectangle ()
"Paste a rectangular region into a table.
The upper right corner ends up in the current field. All involved fields
@@ -6632,20 +6649,20 @@ lines."
(error "First cut/copy a region to paste!"))
(org-table-check-inside-data-field)
(let* ((clip org-table-clip)
- (line (count-lines (point-min) (point)))
- (col (org-table-current-column))
- (org-enable-table-editor t)
- (org-table-automatic-realign nil)
- c cols field)
+ (line (count-lines (point-min) (point)))
+ (col (org-table-current-column))
+ (org-enable-table-editor t)
+ (org-table-automatic-realign nil)
+ c cols field)
(while (setq cols (pop clip))
(while (org-at-table-hline-p) (beginning-of-line 2))
(if (not (org-at-table-p))
- (progn (end-of-line 0) (org-table-next-field)))
+ (progn (end-of-line 0) (org-table-next-field)))
(setq c col)
(while (setq field (pop cols))
- (org-table-goto-column c nil 'force)
- (org-table-get-field nil field)
- (setq c (1+ c)))
+ (org-table-goto-column c nil 'force)
+ (org-table-get-field nil field)
+ (setq c (1+ c)))
(beginning-of-line 2))
(goto-line line)
(org-table-goto-column col)
@@ -6665,35 +6682,35 @@ blindly applies a recipe that works for simple tables."
(if (org-at-table.el-p)
;; convert to Org-mode table
(let ((beg (move-marker (make-marker) (org-table-begin t)))
- (end (move-marker (make-marker) (org-table-end t))))
- (table-unrecognize-region beg end)
- (goto-char beg)
- (while (re-search-forward "^\\([ \t]*\\)\\+-.*\n" end t)
- (replace-match ""))
- (goto-char beg))
+ (end (move-marker (make-marker) (org-table-end t))))
+ (table-unrecognize-region beg end)
+ (goto-char beg)
+ (while (re-search-forward "^\\([ \t]*\\)\\+-.*\n" end t)
+ (replace-match ""))
+ (goto-char beg))
(if (org-at-table-p)
- ;; convert to table.el table
- (let ((beg (move-marker (make-marker) (org-table-begin)))
- (end (move-marker (make-marker) (org-table-end))))
- ;; first, get rid of all horizontal lines
- (goto-char beg)
- (while (re-search-forward "^\\([ \t]*\\)|-.*\n" end t)
- (replace-match ""))
- ;; insert a hline before first
- (goto-char beg)
- (org-table-insert-hline 'above)
- ;; insert a hline after each line
- (while (progn (beginning-of-line 2) (< (point) end))
- (org-table-insert-hline))
- (goto-char beg)
- (setq end (move-marker end (org-table-end)))
- ;; replace "+" at beginning and ending of hlines
- (while (re-search-forward "^\\([ \t]*\\)|-" end t)
- (replace-match "\\1+-"))
- (goto-char beg)
- (while (re-search-forward "-|[ \t]*$" end t)
- (replace-match "-+"))
- (goto-char beg)))))
+ ;; convert to table.el table
+ (let ((beg (move-marker (make-marker) (org-table-begin)))
+ (end (move-marker (make-marker) (org-table-end))))
+ ;; first, get rid of all horizontal lines
+ (goto-char beg)
+ (while (re-search-forward "^\\([ \t]*\\)|-.*\n" end t)
+ (replace-match ""))
+ ;; insert a hline before first
+ (goto-char beg)
+ (org-table-insert-hline 'above)
+ ;; insert a hline after each line
+ (while (progn (beginning-of-line 2) (< (point) end))
+ (org-table-insert-hline))
+ (goto-char beg)
+ (setq end (move-marker end (org-table-end)))
+ ;; replace "+" at beginning and ending of hlines
+ (while (re-search-forward "^\\([ \t]*\\)|-" end t)
+ (replace-match "\\1+-"))
+ (goto-char beg)
+ (while (re-search-forward "-|[ \t]*$" end t)
+ (replace-match "-+"))
+ (goto-char beg)))))
(defun org-table-wrap-region (arg)
"Wrap several fields in a column like a paragraph.
@@ -6722,40 +6739,40 @@ blank, and the content is appended to the field above."
(if (org-region-active-p)
;; There is a region: fill as a paragraph
(let ((beg (region-beginning))
- nlines)
- (org-table-cut-region (region-beginning) (region-end))
- (if (> (length (car org-table-clip)) 1)
- (error "Region must be limited to single column"))
- (setq nlines (if arg
- (if (< arg 1)
- (+ (length org-table-clip) arg)
- arg)
- (length org-table-clip)))
- (setq org-table-clip
- (mapcar 'list (org-wrap (mapconcat 'car org-table-clip " ")
- nil nlines)))
- (goto-char beg)
- (org-table-paste-rectangle))
+ nlines)
+ (org-table-cut-region (region-beginning) (region-end))
+ (if (> (length (car org-table-clip)) 1)
+ (error "Region must be limited to single column"))
+ (setq nlines (if arg
+ (if (< arg 1)
+ (+ (length org-table-clip) arg)
+ arg)
+ (length org-table-clip)))
+ (setq org-table-clip
+ (mapcar 'list (org-wrap (mapconcat 'car org-table-clip " ")
+ nil nlines)))
+ (goto-char beg)
+ (org-table-paste-rectangle))
;; No region, split the current field at point
(if arg
- ;; combine with field above
- (let ((s (org-table-blank-field))
- (col (org-table-current-column)))
- (beginning-of-line 0)
- (while (org-at-table-hline-p) (beginning-of-line 0))
- (org-table-goto-column col)
- (skip-chars-forward "^|")
- (skip-chars-backward " ")
- (insert " " (org-trim s))
- (org-table-align))
+ ;; combine with field above
+ (let ((s (org-table-blank-field))
+ (col (org-table-current-column)))
+ (beginning-of-line 0)
+ (while (org-at-table-hline-p) (beginning-of-line 0))
+ (org-table-goto-column col)
+ (skip-chars-forward "^|")
+ (skip-chars-backward " ")
+ (insert " " (org-trim s))
+ (org-table-align))
;; split field
(when (looking-at "\\([^|]+\\)+|")
- (let ((s (match-string 1)))
- (replace-match " |")
- (goto-char (match-beginning 0))
- (org-table-next-row)
- (insert (org-trim s) " ")
- (org-table-align))))))
+ (let ((s (match-string 1)))
+ (replace-match " |")
+ (goto-char (match-beginning 0))
+ (org-table-next-row)
+ (insert (org-trim s) " ")
+ (org-table-align))))))
(defun org-trim (s)
"Remove whitespace at beginning and end of string."
@@ -6772,22 +6789,22 @@ IF WIDTH is nil and LINES is non-nil, the string is forced into at most that
many lines, whatever width that takes.
The return value is a list of lines, without newlines at the end."
(let* ((words (org-split-string string "[ \t\n]+"))
- (maxword (apply 'max (mapcar 'length words)))
- w ll)
+ (maxword (apply 'max (mapcar 'length words)))
+ w ll)
(cond (width
- (org-do-wrap words (max maxword width)))
- (lines
- (setq w maxword)
- (setq ll (org-do-wrap words maxword))
- (if (<= (length ll) lines)
- ll
- (setq ll words)
- (while (> (length ll) lines)
- (setq w (1+ w))
- (setq ll (org-do-wrap words w)))
- ll))
- (t (error "Cannot wrap this")))))
-
+ (org-do-wrap words (max maxword width)))
+ (lines
+ (setq w maxword)
+ (setq ll (org-do-wrap words maxword))
+ (if (<= (length ll) lines)
+ ll
+ (setq ll words)
+ (while (> (length ll) lines)
+ (setq w (1+ w))
+ (setq ll (org-do-wrap words w)))
+ ll))
+ (t (error "Cannot wrap this")))))
+
(defun org-do-wrap (words width)
"Create lines of maximum width WIDTH (in characters) from word list WORDS."
@@ -6795,7 +6812,7 @@ The return value is a list of lines, without newlines at the end."
(while words
(setq line (pop words))
(while (and words (< (+ (length line) (length (car words))) width))
- (setq line (concat line " " (pop words))))
+ (setq line (concat line " " (pop words))))
(setq lines (push line lines)))
(nreverse lines)))
@@ -6832,20 +6849,20 @@ and end of string."
"Add an `invisible' property to vertical lines of current table."
(interactive)
(let* ((beg (org-table-begin))
- (end (org-table-end))
- (end1))
+ (end (org-table-end))
+ (end1))
(save-excursion
(goto-char beg)
(while (< (point) end)
- (setq end1 (point-at-eol))
- (if (looking-at org-table-dataline-regexp)
- (while (re-search-forward "|" end1 t)
- (add-text-properties (1- (point)) (point)
- '(invisible org-table)))
- (while (re-search-forward "[+|]" end1 t)
- (add-text-properties (1- (point)) (point)
- '(invisible org-table))))
- (beginning-of-line 2)))))
+ (setq end1 (point-at-eol))
+ (if (looking-at org-table-dataline-regexp)
+ (while (re-search-forward "|" end1 t)
+ (add-text-properties (1- (point)) (point)
+ '(invisible org-table)))
+ (while (re-search-forward "[+|]" end1 t)
+ (add-text-properties (1- (point)) (point)
+ '(invisible org-table))))
+ (beginning-of-line 2)))))
(defun org-table-toggle-vline-visibility (&optional arg)
"Toggle the visibility of table vertical lines.
@@ -6854,18 +6871,18 @@ With prefix ARG, make lines invisible when ARG is positive, make lines
visible when ARG is not positive"
(interactive "P")
(let ((action (cond
- ((and arg (> (prefix-numeric-value arg) 0)) 'on)
- ((and arg (< (prefix-numeric-value arg) 1)) 'off)
- (t (if (org-in-invisibility-spec-p '(org-table))
- 'off
- 'on)))))
+ ((and arg (> (prefix-numeric-value arg) 0)) 'on)
+ ((and arg (< (prefix-numeric-value arg) 1)) 'off)
+ (t (if (org-in-invisibility-spec-p '(org-table))
+ 'off
+ 'on)))))
(if (eq action 'off)
- (progn
- (org-remove-from-invisibility-spec '(org-table))
- (org-table-map-tables 'org-table-align)
- (message "Vertical table lines visible")
- (if (org-at-table-p)
- (org-table-align)))
+ (progn
+ (org-remove-from-invisibility-spec '(org-table))
+ (org-table-map-tables 'org-table-align)
+ (message "Vertical table lines visible")
+ (if (org-at-table-p)
+ (org-table-align)))
(org-add-to-invisibility-spec '(org-table))
(org-table-map-tables 'org-table-align)
(message "Vertical table lines invisible"))
@@ -6878,11 +6895,11 @@ visible when ARG is not positive"
(widen)
(goto-char (point-min))
(while (re-search-forward org-table-any-line-regexp nil t)
- (message "Mapping tables: %d%%" (/ (* 100.0 (point)) (buffer-size)))
- (beginning-of-line 1)
- (if (looking-at org-table-line-regexp)
- (save-excursion (funcall function)))
- (re-search-forward org-table-any-border-regexp nil 1)))))
+ (message "Mapping tables: %d%%" (/ (* 100.0 (point)) (buffer-size)))
+ (beginning-of-line 1)
+ (if (looking-at org-table-line-regexp)
+ (save-excursion (funcall function)))
+ (re-search-forward org-table-any-border-regexp nil 1)))))
(defun org-table-sum (&optional beg end nlast)
"Sum numbers in region of current table column.
@@ -6905,61 +6922,61 @@ If NLAST is a number, only the NLAST fields will actually be summed."
(cond
((and beg end)) ; beg and end given explicitly
((org-region-active-p)
- (setq beg (region-beginning) end (region-end)))
+ (setq beg (region-beginning) end (region-end)))
(t
- (setq col (org-table-current-column))
- (goto-char (org-table-begin))
- (unless (re-search-forward "^[ \t]*|[^-]" nil t)
- (error "No table data"))
- (org-table-goto-column col)
+ (setq col (org-table-current-column))
+ (goto-char (org-table-begin))
+ (unless (re-search-forward "^[ \t]*|[^-]" nil t)
+ (error "No table data"))
+ (org-table-goto-column col)
;not needed? (skip-chars-backward "^|")
- (setq beg (point))
- (goto-char (org-table-end))
- (unless (re-search-backward "^[ \t]*|[^-]" nil t)
- (error "No table data"))
- (org-table-goto-column col)
+ (setq beg (point))
+ (goto-char (org-table-end))
+ (unless (re-search-backward "^[ \t]*|[^-]" nil t)
+ (error "No table data"))
+ (org-table-goto-column col)
;not needed? (skip-chars-forward "^|")
- (setq end (point))))
+ (setq end (point))))
(let* ((items (apply 'append (org-table-copy-region beg end)))
- (items1 (cond ((not nlast) items)
- ((>= nlast (length items)) items)
- (t (setq items (reverse items))
- (setcdr (nthcdr (1- nlast) items) nil)
- (nreverse items))))
- (numbers (delq nil (mapcar 'org-table-get-number-for-summing
- items1)))
- (res (apply '+ numbers))
- (sres (if (= timecnt 0)
- (format "%g" res)
- (setq diff (* 3600 res)
- h (floor (/ diff 3600)) diff (mod diff 3600)
- m (floor (/ diff 60)) diff (mod diff 60)
- s diff)
- (format "%d:%02d:%02d" h m s))))
- (kill-new sres)
- (if (interactive-p)
- (message (substitute-command-keys
- (format "Sum of %d items: %-20s (\\[yank] will insert result into buffer)"
- (length numbers) sres))))
- sres))))
+ (items1 (cond ((not nlast) items)
+ ((>= nlast (length items)) items)
+ (t (setq items (reverse items))
+ (setcdr (nthcdr (1- nlast) items) nil)
+ (nreverse items))))
+ (numbers (delq nil (mapcar 'org-table-get-number-for-summing
+ items1)))
+ (res (apply '+ numbers))
+ (sres (if (= timecnt 0)
+ (format "%g" res)
+ (setq diff (* 3600 res)
+ h (floor (/ diff 3600)) diff (mod diff 3600)
+ m (floor (/ diff 60)) diff (mod diff 60)
+ s diff)
+ (format "%d:%02d:%02d" h m s))))
+ (kill-new sres)
+ (if (interactive-p)
+ (message (substitute-command-keys
+ (format "Sum of %d items: %-20s (\\[yank] will insert result into buffer)"
+ (length numbers) sres))))
+ sres))))
(defun org-table-get-number-for-summing (s)
(let (n)
(if (string-match "^ *|? *" s)
- (setq s (replace-match "" nil nil s)))
+ (setq s (replace-match "" nil nil s)))
(if (string-match " *|? *$" s)
- (setq s (replace-match "" nil nil s)))
+ (setq s (replace-match "" nil nil s)))
(setq n (string-to-number s))
(cond
((and (string-match "0" s)
- (string-match "\\`[-+ \t0.edED]+\\'" s)) 0)
+ (string-match "\\`[-+ \t0.edED]+\\'" s)) 0)
((string-match "\\`[ \t]+\\'" s) nil)
((string-match "\\`\\([0-9]+\\):\\([0-9]+\\)\\(:\\([0-9]+\\)\\)?\\'" s)
(let ((h (string-to-number (or (match-string 1 s) "0")))
- (m (string-to-number (or (match-string 2 s) "0")))
- (s (string-to-number (or (match-string 4 s) "0"))))
- (if (boundp 'timecnt) (setq timecnt (1+ timecnt)))
- (* 1.0 (+ h (/ m 60.0) (/ s 3600.0)))))
+ (m (string-to-number (or (match-string 2 s) "0")))
+ (s (string-to-number (or (match-string 4 s) "0"))))
+ (if (boundp 'timecnt) (setq timecnt (1+ timecnt)))
+ (* 1.0 (+ h (/ m 60.0) (/ s 3600.0)))))
((equal n 0) nil)
(t n))))
@@ -6968,25 +6985,26 @@ If NLAST is a number, only the NLAST fields will actually be summed."
(defun org-table-get-formula (&optional equation)
"Read a formula from the minibuffer, offer stored formula as default."
(let* ((col (org-table-current-column))
- (stored-list (org-table-get-stored-formulas))
- (stored (cdr (assoc col stored-list)))
- (eq (cond
- ((and stored equation (string-match "^ *= *$" equation))
- stored)
- ((stringp equation)
- equation)
- (t (read-string
- "Formula: " (or stored "") 'org-table-formula-history
- stored)))))
+ (org-table-may-need-update nil)
+ (stored-list (org-table-get-stored-formulas))
+ (stored (cdr (assoc col stored-list)))
+ (eq (cond
+ ((and stored equation (string-match "^ *= *$" equation))
+ stored)
+ ((stringp equation)
+ equation)
+ (t (read-string
+ "Formula: " (or stored "") 'org-table-formula-history
+ stored)))))
(if (not (string-match "\\S-" eq))
- (error "Empty formula"))
+ (error "Empty formula"))
(if (string-match "^ *=?" eq) (setq eq (replace-match "" t t eq)))
(if (string-match " *$" eq) (setq eq (replace-match "" t t eq)))
(if stored
- (setcdr (assoc col stored-list) eq)
+ (setcdr (assoc col stored-list) eq)
(setq stored-list (cons (cons col eq) stored-list)))
(if (not (equal stored eq))
- (org-table-store-formulas stored-list))
+ (org-table-store-formulas stored-list))
eq))
(defun org-table-store-formulas (alist)
@@ -6995,12 +7013,12 @@ If NLAST is a number, only the NLAST fields will actually be summed."
(save-excursion
(goto-char (org-table-end))
(if (looking-at "\\([ \t]*\n\\)*#\\+TBLFM:.*\n?")
- (delete-region (point) (match-end 0)))
+ (delete-region (point) (match-end 0)))
(insert "#+TBLFM: "
- (mapconcat (lambda (x)
- (concat "$" (int-to-string (car x)) "=" (cdr x)))
- alist "::")
- "\n")))
+ (mapconcat (lambda (x)
+ (concat "$" (int-to-string (car x)) "=" (cdr x)))
+ alist "::")
+ "\n")))
(defun org-table-get-stored-formulas ()
"Return an alist withh the t=stored formulas directly after current table."
@@ -7009,12 +7027,12 @@ If NLAST is a number, only the NLAST fields will actually be summed."
(save-excursion
(goto-char (org-table-end))
(when (looking-at "\\([ \t]*\n\\)*#\\+TBLFM: *\\(.*\\)")
- (setq strings (org-split-string (match-string 2) " *:: *"))
- (while (setq string (pop strings))
- (if (string-match "\\$\\([0-9]+\\) *= *\\(.*[^ \t]\\)" string)
- (setq col (string-to-number (match-string 1 string))
- eq (match-string 2 string)
- eq-alist (cons (cons col eq) eq-alist))))))
+ (setq strings (org-split-string (match-string 2) " *:: *"))
+ (while (setq string (pop strings))
+ (if (string-match "\\$\\([0-9]+\\) *= *\\(.*[^ \t]\\)" string)
+ (setq col (string-to-number (match-string 1 string))
+ eq (match-string 2 string)
+ eq-alist (cons (cons col eq) eq-alist))))))
eq-alist))
(defun org-table-modify-formulas (action &rest columns)
@@ -7022,9 +7040,9 @@ If NLAST is a number, only the NLAST fields will actually be summed."
ACTION can be `remove', `insert', `swap'. For `swap', two column numbers are
expected, for the other action only a single column number is needed."
(let ((list (org-table-get-stored-formulas))
- (nmax (length (org-split-string (buffer-substring (point-at-bol) (point-at-eol))
- "|")))
- col col1 col2)
+ (nmax (length (org-split-string (buffer-substring (point-at-bol) (point-at-eol))
+ "|")))
+ col col1 col2)
(cond
((null list)) ; No action needed if there are no stored formulas
((eq action 'remove)
@@ -7032,13 +7050,13 @@ expected, for the other action only a single column number is needed."
(org-table-replace-in-formulas list col "INVALID")
(if (assoc col list) (setq list (delq (assoc col list) list)))
(loop for i from (1+ col) upto nmax by 1 do
- (org-table-replace-in-formulas list i (1- i))
- (if (assoc i list) (setcar (assoc i list) (1- i)))))
+ (org-table-replace-in-formulas list i (1- i))
+ (if (assoc i list) (setcar (assoc i list) (1- i)))))
((eq action 'insert)
(setq col (car columns))
(loop for i from nmax downto col by 1 do
- (org-table-replace-in-formulas list i (1+ i))
- (if (assoc i list) (setcar (assoc i list) (1+ i)))))
+ (org-table-replace-in-formulas list i (1+ i))
+ (if (assoc i list) (setcar (assoc i list) (1+ i)))))
((eq action 'swap)
(setq col1 (car columns) col2 (nth 1 columns))
(org-table-replace-in-formulas list col1 "Z")
@@ -7053,12 +7071,12 @@ expected, for the other action only a single column number is needed."
(defun org-table-replace-in-formulas (list s1 s2)
(let (elt re s)
(setq s1 (concat "$" (if (integerp s1) (int-to-string s1) s1))
- s2 (concat "$" (if (integerp s2) (int-to-string s2) s2))
- re (concat (regexp-quote s1) "\\>"))
+ s2 (concat "$" (if (integerp s2) (int-to-string s2) s2))
+ re (concat (regexp-quote s1) "\\>"))
(while (setq elt (pop list))
(setq s (cdr elt))
(while (string-match re s)
- (setq s (replace-match s2 t t s)))
+ (setq s (replace-match s2 t t s)))
(setcdr elt s))))
(defvar org-table-column-names nil
@@ -7072,33 +7090,46 @@ expected, for the other action only a single column number is needed."
"Get the column nmaes and local parameters for this table."
(save-excursion
(let ((beg (org-table-begin)) (end (org-table-end))
- names name fields field cnt)
+ names name fields fields1 field cnt c v)
(setq org-table-column-names nil
- org-table-local-parameters nil)
+ org-table-local-parameters nil)
(goto-char beg)
(when (re-search-forward "^[ \t]*| *! *\\(|.*\\)" end t)
- (setq names (org-split-string (match-string 1) " *| *")
- cnt 1)
- (while (setq name (pop names))
- (setq cnt (1+ cnt))
- (if (string-match "^[a-zA-Z][a-zA-Z0-9]*$" name)
- (push (cons name (int-to-string cnt)) org-table-column-names))))
+ (setq names (org-split-string (match-string 1) " *| *")
+ cnt 1)
+ (while (setq name (pop names))
+ (setq cnt (1+ cnt))
+ (if (string-match "^[a-zA-Z][a-zA-Z0-9]*$" name)
+ (push (cons name (int-to-string cnt)) org-table-column-names))))
(setq org-table-column-names (nreverse org-table-column-names))
(setq org-table-column-name-regexp
- (concat "\\$\\(" (mapconcat 'car org-table-column-names "\\|") "\\)\\>"))
+ (concat "\\$\\(" (mapconcat 'car org-table-column-names "\\|") "\\)\\>"))
(goto-char beg)
(while (re-search-forward "^[ \t]*| *\\$ *\\(|.*\\)" end t)
- (setq fields (org-split-string (match-string 1) " *| *"))
- (while (setq field (pop fields))
- (if (string-match "^\\([a-zA-Z][a-zA-Z0-9]*\\) *= *\\(.*\\)" field)
- (push (cons (match-string 1 field) (match-string 2 field))
- org-table-local-parameters)))))))
+ (setq fields (org-split-string (match-string 1) " *| *"))
+ (while (setq field (pop fields))
+ (if (string-match "^\\([a-zA-Z][a-zA-Z0-9]*\\|%\\) *= *\\(.*\\)" field)
+ (push (cons (match-string 1 field) (match-string 2 field))
+ org-table-local-parameters))))
+ (goto-char beg)
+ (while (re-search-forward "^[ \t]*| *\\([_^]\\) *\\(|.*\\)" end t)
+ (setq c (match-string 1)
+ fields (org-split-string (match-string 2) " *| *"))
+ (save-excursion
+ (beginning-of-line (if (equal c "_") 2 0))
+ (and (looking-at "^[ \t]*|[^|]*\\(|.*\\)")
+ (setq fields1 (org-split-string (match-string 1) " *| *"))))
+ (while (setq field (pop fields))
+ (setq v (pop fields1))
+ (if (and (stringp field) (stringp v)
+ (string-match "^[a-zA-Z][a-zA-Z0-9]*$" field))
+ (push (cons field v) org-table-local-parameters)))))))
(defun org-this-word ()
;; Get the current word
(save-excursion
(let ((beg (progn (skip-chars-backward "^ \t\n") (point)))
- (end (progn (skip-chars-forward "^ \t\n") (point))))
+ (end (progn (skip-chars-forward "^ \t\n") (point))))
(buffer-substring-no-properties beg end))))
(defun org-table-maybe-eval-formula ()
@@ -7107,35 +7138,35 @@ expected, for the other action only a single column number is needed."
;; when appropriate. It might return a separator line, but no problem.
(when org-table-formula-evaluate-inline
(let* ((field (org-trim (or (org-table-get-field) "")))
- (dfield (downcase field))
- col bolpos nlast)
+ (dfield (downcase field))
+ col bolpos nlast)
(when (equal (string-to-char field) ?=)
- (if (string-match "^\\(=sum[vh]?\\)\\([0-9]+\\)$" dfield)
- (setq nlast (1+ (string-to-number (match-string 2 dfield)))
- dfield (match-string 1 dfield)))
- (cond
- ((equal dfield "=sumh")
- (org-table-get-field
- nil (org-table-sum
- (save-excursion (org-table-goto-column 1) (point))
- (point) nlast)))
- ((member dfield '("=sum" "=sumv"))
- (setq col (org-table-current-column)
- bolpos (point-at-bol))
- (org-table-get-field
- nil (org-table-sum
- (save-excursion
- (goto-char (org-table-begin))
- (if (re-search-forward org-table-dataline-regexp bolpos t)
- (progn
- (goto-char (match-beginning 0))
- (org-table-goto-column col)
- (point))
- (error "No datalines above current")))
- (point) nlast)))
- ((and (string-match "^ *=" field)
+ (if (string-match "^\\(=sum[vh]?\\)\\([0-9]+\\)$" dfield)
+ (setq nlast (1+ (string-to-number (match-string 2 dfield)))
+ dfield (match-string 1 dfield)))
+ (cond
+ ((equal dfield "=sumh")
+ (org-table-get-field
+ nil (org-table-sum
+ (save-excursion (org-table-goto-column 1) (point))
+ (point) nlast)))
+ ((member dfield '("=sum" "=sumv"))
+ (setq col (org-table-current-column)
+ bolpos (point-at-bol))
+ (org-table-get-field
+ nil (org-table-sum
+ (save-excursion
+ (goto-char (org-table-begin))
+ (if (re-search-forward org-table-dataline-regexp bolpos t)
+ (progn
+ (goto-char (match-beginning 0))
+ (org-table-goto-column col)
+ (point))
+ (error "No datalines above current")))
+ (point) nlast)))
+ ((and (string-match "^ *=" field)
(fboundp 'calc-eval))
- (org-table-eval-formula nil field)))))))
+ (org-table-eval-formula nil field)))))))
(defvar org-last-recalc-undo-list nil)
(defcustom org-table-allow-line-recalculation t
@@ -7152,7 +7183,9 @@ Will be filled automatically during use.")
("#" . "Automatically recalculate this line upon TAB, RET, and C-c C-c in the line")
("*" . "Recalculate only when entire table is recalculated with `C-u C-c *'")
("!" . "Column name definition line. Reference in formula as $name.")
- ("$" . "Parameter definition line name=value. Reference in formula as $name.")))
+ ("$" . "Parameter definition line name=value. Reference in formula as $name.")
+ ("_" . "Names for values in row below this one.")
+ ("^" . "Names for values in row above this one.")))
(defun org-table-rotate-recalc-marks (&optional newchar)
"Rotate the recalculation mark in the first column.
@@ -7165,28 +7198,28 @@ of the new mark."
(interactive)
(unless (org-at-table-p) (error "Not at a table"))
(let* ((marks (append (mapcar 'car org-recalc-marks) '(" ")))
- (beg (org-table-begin))
- (end (org-table-end))
- (l (org-current-line))
- (l1 (if (org-region-active-p) (org-current-line (region-beginning))))
- (l2 (if (org-region-active-p) (org-current-line (region-end))))
- (have-col
- (save-excursion
- (goto-char beg)
- (not (re-search-forward "^[ \t]*|[^-|][^|]*[^#!$*| \t][^|]*|" end t))))
- (col (org-table-current-column))
- (forcenew (car (assoc newchar org-recalc-marks)))
- epos new)
+ (beg (org-table-begin))
+ (end (org-table-end))
+ (l (org-current-line))
+ (l1 (if (org-region-active-p) (org-current-line (region-beginning))))
+ (l2 (if (org-region-active-p) (org-current-line (region-end))))
+ (have-col
+ (save-excursion
+ (goto-char beg)
+ (not (re-search-forward "^[ \t]*|[^-|][^|]*[^#!$*_^| \t][^|]*|" end t))))
+ (col (org-table-current-column))
+ (forcenew (car (assoc newchar org-recalc-marks)))
+ epos new)
(if l1 (setq newchar (char-to-string (read-char-exclusive "Change region to what mark? Type # * ! $ or SPC: "))
- forcenew (car (assoc newchar org-recalc-marks))))
+ forcenew (car (assoc newchar org-recalc-marks))))
(if (and newchar (not forcenew))
- (error "Invalid NEWCHAR `%s' in `org-table-rotate-recalc-marks'"
- newchar))
+ (error "Invalid NEWCHAR `%s' in `org-table-rotate-recalc-marks'"
+ newchar))
(if l1 (goto-line l1))
(save-excursion
(beginning-of-line 1)
(unless (looking-at org-table-dataline-regexp)
- (error "Not at a table data line")))
+ (error "Not at a table data line")))
(unless have-col
(org-table-goto-column 1)
(org-table-insert-column)
@@ -7194,20 +7227,20 @@ of the new mark."
(setq epos (point-at-eol))
(save-excursion
(beginning-of-line 1)
- (org-table-get-field
- 1 (if (looking-at "^[ \t]*| *\\([#!$* ]\\) *|")
- (concat " "
- (setq new (or forcenew
- (cadr (member (match-string 1) marks))))
- " ")
- " # ")))
+ (org-table-get-field
+ 1 (if (looking-at "^[ \t]*| *\\([#!$*^_ ]\\) *|")
+ (concat " "
+ (setq new (or forcenew
+ (cadr (member (match-string 1) marks))))
+ " ")
+ " # ")))
(if (and l1 l2)
- (progn
- (goto-line l1)
- (while (progn (beginning-of-line 2) (not (= (org-current-line) l2)))
- (and (looking-at org-table-dataline-regexp)
- (org-table-get-field 1 (concat " " new " "))))
- (goto-line l1)))
+ (progn
+ (goto-line l1)
+ (while (progn (beginning-of-line 2) (not (= (org-current-line) l2)))
+ (and (looking-at org-table-dataline-regexp)
+ (org-table-get-field 1 (concat " " new " "))))
+ (goto-line l1)))
(if (not (= epos (point-at-eol))) (org-table-align))
(goto-line l)
(and (interactive-p) (message (cdr (assoc new org-recalc-marks))))))
@@ -7217,9 +7250,9 @@ of the new mark."
(interactive)
(and org-table-allow-line-recalculation
(not (and (memq last-command org-recalc-commands)
- (equal org-last-recalc-line (org-current-line))))
+ (equal org-last-recalc-line (org-current-line))))
(save-excursion (beginning-of-line 1)
- (looking-at org-table-auto-recalculate-regexp))
+ (looking-at org-table-auto-recalculate-regexp))
(fboundp 'calc-eval)
(org-table-recalculate) t))
@@ -7228,12 +7261,21 @@ of the new mark."
When nil, simply write \"#ERROR\" in corrupted fields.")
(defvar modes)
-(defsubst org-set-calc-mode (var value)
- (setcar (or (cdr (memq var modes)) (cons nil nil)) value))
+(defsubst org-set-calc-mode (var &optional value)
+ (if (stringp var)
+ (setq var (assoc var '(("D" calc-angle-mode deg)
+ ("R" calc-angle-mode rad)
+ ("F" calc-prefer-frac t)
+ ("S" calc-symbolic-mode t)))
+ value (nth 2 var) var (nth 1 var)))
+ (if (memq var modes)
+ (setcar (cdr (memq var modes)) value)
+ (cons var (cons value modes)))
+ modes)
(defun org-table-eval-formula (&optional ndown equation
- suppress-align suppress-const
- suppress-store)
+ suppress-align suppress-const
+ suppress-store)
"Replace the table field value at the cursor by the result of a calculation.
This function makes use of Dave Gillespie's calc package, in my view the
@@ -7288,94 +7330,91 @@ it is a modified equation that should not overwrite the stored one."
(org-table-check-inside-data-field)
(org-table-get-specials)
(let* (fields
- (org-table-automatic-realign nil)
- (case-fold-search nil)
- (down (> ndown 1))
- (formula (if (and equation suppress-store)
- equation
- (org-table-get-formula equation)))
- (n0 (org-table-current-column))
- (modes (copy-sequence org-calc-default-modes))
- n form fmt x ev orig c)
- ;; Parse the format
+ (org-table-automatic-realign nil)
+ (case-fold-search nil)
+ (down (> ndown 1))
+ (formula (if (and equation suppress-store)
+ equation
+ (org-table-get-formula equation)))
+ (n0 (org-table-current-column))
+ (modes (copy-sequence org-calc-default-modes))
+ n form fmt x ev orig c)
+ ;; Parse the format string. Since we have a lot of modes, this is
+ ;; a lot of work.
(if (string-match ";" formula)
- (let ((tmp (org-split-string formula ";")))
- (setq formula (car tmp) fmt (or (nth 1 tmp) ""))
- (while (string-match "[pnfse]\\(-?[0-9]+\\)" fmt)
- (setq c (string-to-char (match-string 1 fmt))
- n (string-to-number (or (match-string 1 fmt) "")))
- (if (= c ?p) (org-set-calc-mode 'calc-internal-prec n)
- (org-set-calc-mode 'calc-float-format
- (list (cdr (assoc c '((?n. float) (?f. fix)
- (?s. sci) (?e. eng))))
- n)))
- (setq fmt (replace-match "" t t fmt)))
- (when (string-match "[DR]" fmt)
- (org-set-calc-mode 'calc-angle-mode
- (if (equal (match-string 0 fmt) "D")
- 'deg 'rad))
- (setq fmt (replace-match "" t t fmt)))
- (when (string-match "F" fmt)
- (org-set-calc-mode 'calc-prefer-frac t)
- (setq fmt (replace-match "" t t fmt)))
- (when (string-match "S" fmt)
- (org-set-calc-mode 'calc-symbolic-mode t)
- (setq fmt (replace-match "" t t fmt)))
- (unless (string-match "\\S-" fmt)
- (setq fmt nil))))
+ (let ((tmp (org-split-string formula ";")))
+ (setq formula (car tmp)
+ fmt (concat (cdr (assoc "%" org-table-local-parameters))
+ (nth 1 tmp)))
+ (while (string-match "[pnfse]\\(-?[0-9]+\\)" fmt)
+ (setq c (string-to-char (match-string 1 fmt))
+ n (string-to-number (or (match-string 1 fmt) "")))
+ (if (= c ?p) (setq modes (org-set-calc-mode 'calc-internal-prec n))
+ (setq modes (org-set-calc-mode
+ 'calc-float-format
+ (list (cdr (assoc c '((?n. float) (?f. fix)
+ (?s. sci) (?e. eng))))
+ n))))
+ (setq fmt (replace-match "" t t fmt)))
+ (while (string-match "[DRFS]" fmt)
+ (setq modes (org-set-calc-mode (match-string 0 fmt)))
+ (setq fmt (replace-match "" t t fmt)))
+ (unless (string-match "\\S-" fmt)
+ (setq fmt nil))))
(if (and (not suppress-const) org-table-formula-use-constants)
- (setq formula (org-table-formula-substitute-names formula)))
+ (setq formula (org-table-formula-substitute-names formula)))
(setq orig (or (get-text-property 1 :orig-formula formula) "?"))
(while (> ndown 0)
(setq fields (org-split-string
- (buffer-substring
- (point-at-bol) (point-at-eol)) " *| *"))
+ (buffer-substring
+ (point-at-bol) (point-at-eol)) " *| *"))
(if org-table-formula-numbers-only
- (setq fields (mapcar
- (lambda (x) (number-to-string (string-to-number x)))
- fields)))
+ (setq fields (mapcar
+ (lambda (x) (number-to-string (string-to-number x)))
+ fields)))
(setq ndown (1- ndown))
(setq form (copy-sequence formula))
(while (string-match "\\$\\([0-9]+\\)?" form)
- (setq n (if (match-beginning 1)
- (string-to-int (match-string 1 form))
- n0)
- x (nth (1- n) fields))
- (unless x (error "Invalid field specifier \"%s\""
- (match-string 0 form)))
- (if (equal x "") (setq x "0"))
- (setq form (replace-match (concat "(" x ")") t t form)))
+ (setq n (if (match-beginning 1)
+ (string-to-int (match-string 1 form))
+ n0)
+ x (nth (1- n) fields))
+ (unless x (error "Invalid field specifier \"%s\""
+ (match-string 0 form)))
+ (if (equal x "") (setq x "0"))
+ (setq form (replace-match (concat "(" x ")") t t form)))
(setq ev (calc-eval (cons form modes)
- (if org-table-formula-numbers-only 'num)))
+ (if org-table-formula-numbers-only 'num)))
(when org-table-formula-debug
- (with-output-to-temp-buffer "*Help*"
- (princ (format "Substitution history of formula
+ (with-output-to-temp-buffer "*Help*"
+ (princ (format "Substitution history of formula
Orig: %s
$xyz-> %s
$1-> %s\n" orig formula form))
- (if (listp ev)
- (princ (format " %s^\nError: %s"
- (make-string (car ev) ?\-) (nth 1 ev)))
- (princ (format "Result: %s" ev))))
- (shrink-window-if-larger-than-buffer (get-buffer-window "*Help*"))
- (unless (and (interactive-p) (not ndown))
- (unless (let (inhibit-redisplay)
- (y-or-n-p "Debugging Formula. Continue to next? "))
- (org-table-align)
- (error "Abort"))
- (delete-window (get-buffer-window "*Help*"))
- (message "")))
- (if (listp ev)
- (setq fmt nil ev "#ERROR"))
- (org-table-blank-field)
- (if fmt
- (insert (format fmt (string-to-number ev)))
- (insert ev))
+ (if (listp ev)
+ (princ (format " %s^\nError: %s"
+ (make-string (car ev) ?\-) (nth 1 ev)))
+ (princ (format "Result: %s\nFormat: %s\nFinal: %s"
+ ev (or fmt "NONE")
+ (if fmt (format fmt (string-to-number ev)) ev)))))
+ (shrink-window-if-larger-than-buffer (get-buffer-window "*Help*"))
+ (unless (and (interactive-p) (not ndown))
+ (unless (let (inhibit-redisplay)
+ (y-or-n-p "Debugging Formula. Continue to next? "))
+ (org-table-align)
+ (error "Abort"))
+ (delete-window (get-buffer-window "*Help*"))
+ (message "")))
+ (if (listp ev) (setq fmt nil ev "#ERROR"))
+ (org-table-justify-field-maybe
+ (if fmt (format fmt (string-to-number ev)) ev))
(if (and down (> ndown 0) (looking-at ".*\n[ \t]*|[^-]"))
- (call-interactively 'org-return)
- (setq ndown 0)))
- (or suppress-align (org-table-align))))
+ (call-interactively 'org-return)
+ (setq ndown 0)))
+ (and down (org-table-maybe-recalculate-line))
+ (or suppress-align (and org-table-may-need-update
+ (org-table-align)))))
(defun org-table-recalculate (&optional all noalign)
"Recalculate the current table line by applying all stored formulas."
@@ -7385,48 +7424,48 @@ $1-> %s\n" orig formula form))
(unless (org-at-table-p) (error "Not at a table"))
(org-table-get-specials)
(let* ((eqlist (sort (org-table-get-stored-formulas)
- (lambda (a b) (< (car a) (car b)))))
- (inhibit-redisplay t)
- (line-re org-table-dataline-regexp)
- (thisline (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
- (thiscol (org-table-current-column))
- beg end entry eql (cnt 0))
+ (lambda (a b) (< (car a) (car b)))))
+ (inhibit-redisplay t)
+ (line-re org-table-dataline-regexp)
+ (thisline (+ (if (bolp) 1 0) (count-lines (point-min) (point))))
+ (thiscol (org-table-current-column))
+ beg end entry eql (cnt 0))
;; Insert constants in all formulas
(setq eqlist
- (mapcar (lambda (x)
- (setcdr x (org-table-formula-substitute-names (cdr x)))
- x)
- eqlist))
+ (mapcar (lambda (x)
+ (setcdr x (org-table-formula-substitute-names (cdr x)))
+ x)
+ eqlist))
(if all
- (progn
- (setq end (move-marker (make-marker) (1+ (org-table-end))))
- (goto-char (setq beg (org-table-begin)))
- (if (re-search-forward org-table-recalculate-regexp end t)
- (setq line-re org-table-recalculate-regexp)
- (if (and (re-search-forward org-table-dataline-regexp end t)
- (re-search-forward org-table-hline-regexp end t)
- (re-search-forward org-table-dataline-regexp end t))
- (setq beg (match-beginning 0))
- nil))) ;; just leave beg where it is
+ (progn
+ (setq end (move-marker (make-marker) (1+ (org-table-end))))
+ (goto-char (setq beg (org-table-begin)))
+ (if (re-search-forward org-table-recalculate-regexp end t)
+ (setq line-re org-table-recalculate-regexp)
+ (if (and (re-search-forward org-table-dataline-regexp end t)
+ (re-search-forward org-table-hline-regexp end t)
+ (re-search-forward org-table-dataline-regexp end t))
+ (setq beg (match-beginning 0))
+ nil))) ;; just leave beg where it is
(setq beg (point-at-bol)
- end (move-marker (make-marker) (1+ (point-at-eol)))))
+ end (move-marker (make-marker) (1+ (point-at-eol)))))
(goto-char beg)
(and all (message "Re-applying formulas to full table..."))
(while (re-search-forward line-re end t)
(unless (string-match "^ *[!$] *$" (org-table-get-field 1))
- ;; Unprotected line, recalculate
- (and all (message "Re-applying formulas to full table...(line %d)"
- (setq cnt (1+ cnt))))
- (setq org-last-recalc-line (org-current-line))
- (setq eql eqlist)
- (while (setq entry (pop eql))
- (goto-line org-last-recalc-line)
- (org-table-goto-column (car entry) nil 'force)
- (org-table-eval-formula nil (cdr entry) 'noalign 'nocst 'nostore))))
+ ;; Unprotected line, recalculate
+ (and all (message "Re-applying formulas to full table...(line %d)"
+ (setq cnt (1+ cnt))))
+ (setq org-last-recalc-line (org-current-line))
+ (setq eql eqlist)
+ (while (setq entry (pop eql))
+ (goto-line org-last-recalc-line)
+ (org-table-goto-column (car entry) nil 'force)
+ (org-table-eval-formula nil (cdr entry) 'noalign 'nocst 'nostore))))
(goto-line thisline)
(org-table-goto-column thiscol)
- (or noalign (org-table-align)
- (and all (message "Re-applying formulas to %d lines...done" cnt)))))
+ (or noalign (and org-table-may-need-update (org-table-align))
+ (and all (message "Re-applying formulas to %d lines...done" cnt)))))
(defun org-table-formula-substitute-names (f)
"Replace $const with values in stirng F."
@@ -7439,11 +7478,11 @@ $1-> %s\n" orig formula form))
;; Expand ranges to vectors
(while (string-match "\\$\\([0-9]+\\)\\.\\.\\.?\\$\\([0-9]+\\)" f)
(setq n1 (string-to-number (match-string 1 f))
- n2 (string-to-number (match-string 2 f))
- nn1 (1+ (min n1 n2)) nn2 (max n1 n2)
- s (concat "[($" (number-to-string (1- nn1)) ")"))
+ n2 (string-to-number (match-string 2 f))
+ nn1 (1+ (min n1 n2)) nn2 (max n1 n2)
+ s (concat "[($" (number-to-string (1- nn1)) ")"))
(loop for i from nn1 upto nn2 do
- (setq s (concat s ",($" (int-to-string i) ")")))
+ (setq s (concat s ",($" (int-to-string i) ")")))
(setq s (concat s "]"))
(if (< n2 n1) (setq s (concat "rev(" s ")")))
(setq f (replace-match s t t f)))
@@ -7451,11 +7490,11 @@ $1-> %s\n" orig formula form))
(setq start 0)
(while (setq start (string-match "\\$\\([a-zA-Z][a-zA-Z0-9]*\\)" f start))
(setq start (1+ start))
- (if (setq a (save-match-data
- (org-table-get-constant (match-string 1 f))))
- (setq f (replace-match (concat "(" a ")") t t f))))
+ (if (setq a (save-match-data
+ (org-table-get-constant (match-string 1 f))))
+ (setq f (replace-match (concat "(" a ")") t t f))))
(if org-table-formula-debug
- (put-text-property 0 (length f) :orig-formula f1 f))
+ (put-text-property 0 (length f) :orig-formula f1 f))
f))
(defun org-table-get-constant (const)
@@ -7523,33 +7562,33 @@ table editor in arbitrary modes.")
;;;###autoload
(defun orgtbl-mode (&optional arg)
- "The `org-mode' table editor as a minor mode for use in other modes."
+ "The `org-mode' table editor as a minor mode for use in other modes."
(interactive)
(if (eq major-mode 'org-mode)
;; Exit without error, in case some hook functions calls this
;; by accident in org-mode.
(message "Orgtbl-mode is not useful in org-mode, command ignored")
(setq orgtbl-mode
- (if arg (> (prefix-numeric-value arg) 0) (not orgtbl-mode)))
+ (if arg (> (prefix-numeric-value arg) 0) (not orgtbl-mode)))
(if orgtbl-mode
- (progn
- (and (orgtbl-setup) (defun orgtbl-setup () nil))
- ;; Make sure we are first in minor-mode-map-alist
- (let ((c (assq 'orgtbl-mode minor-mode-map-alist)))
- (and c (setq minor-mode-map-alist
- (cons c (delq c minor-mode-map-alist)))))
- (set (make-local-variable (quote org-table-may-need-update)) t)
- (make-local-hook (quote before-change-functions))
- (add-hook 'before-change-functions 'org-before-change-function
- nil 'local)
- (set (make-local-variable 'org-old-auto-fill-inhibit-regexp)
- auto-fill-inhibit-regexp)
- (set (make-local-variable 'auto-fill-inhibit-regexp)
- (if auto-fill-inhibit-regexp
- (concat "\\([ \t]*|\\|" auto-fill-inhibit-regexp)
- "[ \t]*|"))
- (easy-menu-add orgtbl-mode-menu)
- (run-hooks 'orgtbl-mode-hook))
+ (progn
+ (and (orgtbl-setup) (defun orgtbl-setup () nil))
+ ;; Make sure we are first in minor-mode-map-alist
+ (let ((c (assq 'orgtbl-mode minor-mode-map-alist)))
+ (and c (setq minor-mode-map-alist
+ (cons c (delq c minor-mode-map-alist)))))
+ (set (make-local-variable (quote org-table-may-need-update)) t)
+ (make-local-hook (quote before-change-functions))
+ (add-hook 'before-change-functions 'org-before-change-function
+ nil 'local)
+ (set (make-local-variable 'org-old-auto-fill-inhibit-regexp)
+ auto-fill-inhibit-regexp)
+ (set (make-local-variable 'auto-fill-inhibit-regexp)
+ (if auto-fill-inhibit-regexp
+ (concat "\\([ \t]*|\\|" auto-fill-inhibit-regexp)
+ "[ \t]*|"))
+ (easy-menu-add orgtbl-mode-menu)
+ (run-hooks 'orgtbl-mode-hook))
(setq auto-fill-inhibit-regexp org-old-auto-fill-inhibit-regexp)
(remove-hook 'before-change-functions 'org-before-change-function t)
(easy-menu-remove orgtbl-mode-menu)
@@ -7566,24 +7605,24 @@ FUN is the command to call inside a table. N is used to create a unique
command name. KEYS are keys that should be checked in for a command
to execute outside of tables."
(eval
- (list 'defun
- (intern (concat "orgtbl-hijacker-command-" (int-to-string n)))
- '(arg)
- (concat "In tables, run `" (symbol-name fun) "'.\n"
- "Outside of tables, run the binding of `"
- (mapconcat (lambda (x) (format "%s" x)) keys "' or `")
- "'.")
- '(interactive "p")
- (list 'if
- '(org-at-table-p)
- (list 'call-interactively (list 'quote fun))
- (list 'let '(orgtbl-mode)
- (list 'call-interactively
- (append '(or)
- (mapcar (lambda (k)
- (list 'key-binding k))
- keys)
- '('orgtbl-error))))))))
+ (list 'defun
+ (intern (concat "orgtbl-hijacker-command-" (int-to-string n)))
+ '(arg)
+ (concat "In tables, run `" (symbol-name fun) "'.\n"
+ "Outside of tables, run the binding of `"
+ (mapconcat (lambda (x) (format "%s" x)) keys "' or `")
+ "'.")
+ '(interactive "p")
+ (list 'if
+ '(org-at-table-p)
+ (list 'call-interactively (list 'quote fun))
+ (list 'let '(orgtbl-mode)
+ (list 'call-interactively
+ (append '(or)
+ (mapcar (lambda (k)
+ (list 'key-binding k))
+ keys)
+ '('orgtbl-error))))))))
(defun orgtbl-error ()
"Error when there is no default binding for a table key."
@@ -7593,46 +7632,46 @@ to execute outside of tables."
(defun orgtbl-setup ()
"Setup orgtbl keymaps."
(let ((nfunc 0)
- (bindings
- (list
- '([(meta shift left)] org-table-delete-column)
- '([(meta left)] org-table-move-column-left)
- '([(meta right)] org-table-move-column-right)
- '([(meta shift right)] org-table-insert-column)
- '([(meta shift up)] org-table-kill-row)
- '([(meta shift down)] org-table-insert-row)
- '([(meta up)] org-table-move-row-up)
- '([(meta down)] org-table-move-row-down)
- '("\C-c\C-w" org-table-cut-region)
- '("\C-c\M-w" org-table-copy-region)
- '("\C-c\C-y" org-table-paste-rectangle)
- '("\C-c-" org-table-insert-hline)
- '([(shift tab)] org-table-previous-field)
- '("\C-c\C-c" org-ctrl-c-ctrl-c)
- '("\C-m" org-table-next-row)
- (list (org-key 'S-return) 'org-table-copy-down)
- '([(meta return)] org-table-wrap-region)
- '("\C-c\C-q" org-table-wrap-region)
- '("\C-c?" org-table-current-column)
- '("\C-c " org-table-blank-field)
- '("\C-c+" org-table-sum)
- '("\C-c|" org-table-toggle-vline-visibility)
- '("\C-c=" org-table-eval-formula)
- '("\C-c*" org-table-recalculate)
- '([(control ?#)] org-table-rotate-recalc-marks)))
- elt key fun cmd)
+ (bindings
+ (list
+ '([(meta shift left)] org-table-delete-column)
+ '([(meta left)] org-table-move-column-left)
+ '([(meta right)] org-table-move-column-right)
+ '([(meta shift right)] org-table-insert-column)
+ '([(meta shift up)] org-table-kill-row)
+ '([(meta shift down)] org-table-insert-row)
+ '([(meta up)] org-table-move-row-up)
+ '([(meta down)] org-table-move-row-down)
+ '("\C-c\C-w" org-table-cut-region)
+ '("\C-c\M-w" org-table-copy-region)
+ '("\C-c\C-y" org-table-paste-rectangle)
+ '("\C-c-" org-table-insert-hline)
+ '([(shift tab)] org-table-previous-field)
+ '("\C-c\C-c" org-ctrl-c-ctrl-c)
+ '("\C-m" org-table-next-row)
+ (list (org-key 'S-return) 'org-table-copy-down)
+ '([(meta return)] org-table-wrap-region)
+ '("\C-c\C-q" org-table-wrap-region)
+ '("\C-c?" org-table-current-column)
+ '("\C-c " org-table-blank-field)
+ '("\C-c+" org-table-sum)
+ '("\C-c|" org-table-toggle-vline-visibility)
+ '("\C-c=" org-table-eval-formula)
+ '("\C-c*" org-table-recalculate)
+ '([(control ?#)] org-table-rotate-recalc-marks)))
+ elt key fun cmd)
(while (setq elt (pop bindings))
(setq nfunc (1+ nfunc))
(setq key (car elt)
- fun (nth 1 elt)
- cmd (orgtbl-make-binding fun nfunc key))
+ fun (nth 1 elt)
+ cmd (orgtbl-make-binding fun nfunc key))
(define-key orgtbl-mode-map key cmd))
;; Special treatment needed for TAB and RET
- (define-key orgtbl-mode-map [(return)]
+ (define-key orgtbl-mode-map [(return)]
(orgtbl-make-binding 'orgtbl-ret 100 [(return)] "\C-m"))
- (define-key orgtbl-mode-map "\C-m"
+ (define-key orgtbl-mode-map "\C-m"
(orgtbl-make-binding 'orgtbl-ret 101 "\C-m" [(return)]))
- (define-key orgtbl-mode-map [(tab)]
+ (define-key orgtbl-mode-map [(tab)]
(orgtbl-make-binding 'orgtbl-tab 102 [(tab)] "\C-i"))
(define-key orgtbl-mode-map "\C-i"
(orgtbl-make-binding 'orgtbl-tab 103 "\C-i" [(tab)])))
@@ -7640,53 +7679,53 @@ to execute outside of tables."
;; If the user wants maximum table support, we need to hijack
;; some standard editing functions
(substitute-key-definition 'self-insert-command 'orgtbl-self-insert-command
- orgtbl-mode-map global-map)
+ orgtbl-mode-map global-map)
(substitute-key-definition 'delete-char 'orgtbl-delete-char
- orgtbl-mode-map global-map)
+ orgtbl-mode-map global-map)
(substitute-key-definition 'delete-backward-char 'orgtbl-delete-backward-char
- orgtbl-mode-map global-map)
+ orgtbl-mode-map global-map)
(define-key org-mode-map "|" 'self-insert-command))
(easy-menu-define orgtbl-mode-menu orgtbl-mode-map "OrgTbl menu"
'("OrgTbl"
- ["Align" org-ctrl-c-ctrl-c :active (org-at-table-p) :keys "C-c C-c"]
- ["Next Field" org-cycle :active (org-at-table-p) :keys "TAB"]
- ["Previous Field" org-shifttab :active (org-at-table-p) :keys "S-TAB"]
- ["Next Row" org-return :active (org-at-table-p) :keys "RET"]
- "--"
- ["Blank Field" org-table-blank-field :active (org-at-table-p) :keys "C-c SPC"]
- ["Copy Field from Above"
- org-table-copy-down :active (org-at-table-p) :keys "S-RET"]
- "--"
- ("Column"
- ["Move Column Left" org-metaleft :active (org-at-table-p) :keys "M-<left>"]
- ["Move Column Right" org-metaright :active (org-at-table-p) :keys "M-<right>"]
- ["Delete Column" org-shiftmetaleft :active (org-at-table-p) :keys "M-S-<left>"]
- ["Insert Column" org-shiftmetaright :active (org-at-table-p) :keys "M-S-<right>"])
- ("Row"
- ["Move Row Up" org-metaup :active (org-at-table-p) :keys "M-<up>"]
- ["Move Row Down" org-metadown :active (org-at-table-p) :keys "M-<down>"]
- ["Delete Row" org-shiftmetaup :active (org-at-table-p) :keys "M-S-<up>"]
- ["Insert Row" org-shiftmetadown :active (org-at-table-p) :keys "M-S-<down>"]
- "--"
- ["Insert Hline" org-table-insert-hline :active (org-at-table-p) :keys "C-c -"])
- ("Rectangle"
- ["Copy Rectangle" org-copy-special :active (org-at-table-p) :keys "C-c M-w"]
- ["Cut Rectangle" org-cut-special :active (org-at-table-p) :keys "C-c C-w"]
- ["Paste Rectangle" org-paste-special :active (org-at-table-p) :keys "C-c C-y"]
- ["Fill Rectangle" org-table-wrap-region :active (org-at-table-p) :keys "C-c C-q"])
- "--"
- ["Eval Formula" org-table-eval-formula :active (org-at-table-p) :keys "C-c ="]
- ["Eval Formula Down " (org-table-eval-formula '(4)) :active (org-at-table-p) :keys "C-u C-c ="]
- ["Recalculate line" org-table-recalculate :active (org-at-table-p) :keys "C-c *"]
- ["Recalculate all" (org-table-recalculate '(4)) :active (org-at-table-p) :keys "C-u C-c *"]
- ["Toggle Recalculate Mark" org-table-rotate-recalc-marks :active (org-at-table-p) :keys "C-c #"]
- ["Sum Column/Rectangle" org-table-sum
- :active (or (org-at-table-p) (org-region-active-p)) :keys "C-c +"]
- ["Which Column?" org-table-current-column :active (org-at-table-p) :keys "C-c ?"]
- ["Debug Formulas"
- (setq org-table-formula-debug (not org-table-formula-debug))
- :style toggle :selected org-table-formula-debug]
- ))
+ ["Align" org-ctrl-c-ctrl-c :active (org-at-table-p) :keys "C-c C-c"]
+ ["Next Field" org-cycle :active (org-at-table-p) :keys "TAB"]
+ ["Previous Field" org-shifttab :active (org-at-table-p) :keys "S-TAB"]
+ ["Next Row" org-return :active (org-at-table-p) :keys "RET"]
+ "--"
+ ["Blank Field" org-table-blank-field :active (org-at-table-p) :keys "C-c SPC"]
+ ["Copy Field from Above"
+ org-table-copy-down :active (org-at-table-p) :keys "S-RET"]
+ "--"
+ ("Column"
+ ["Move Column Left" org-metaleft :active (org-at-table-p) :keys "M-<left>"]
+ ["Move Column Right" org-metaright :active (org-at-table-p) :keys "M-<right>"]
+ ["Delete Column" org-shiftmetaleft :active (org-at-table-p) :keys "M-S-<left>"]
+ ["Insert Column" org-shiftmetaright :active (org-at-table-p) :keys "M-S-<right>"])
+ ("Row"
+ ["Move Row Up" org-metaup :active (org-at-table-p) :keys "M-<up>"]
+ ["Move Row Down" org-metadown :active (org-at-table-p) :keys "M-<down>"]
+ ["Delete Row" org-shiftmetaup :active (org-at-table-p) :keys "M-S-<up>"]
+ ["Insert Row" org-shiftmetadown :active (org-at-table-p) :keys "M-S-<down>"]
+ "--"
+ ["Insert Hline" org-table-insert-hline :active (org-at-table-p) :keys "C-c -"])
+ ("Rectangle"
+ ["Copy Rectangle" org-copy-special :active (org-at-table-p) :keys "C-c M-w"]
+ ["Cut Rectangle" org-cut-special :active (org-at-table-p) :keys "C-c C-w"]
+ ["Paste Rectangle" org-paste-special :active (org-at-table-p) :keys "C-c C-y"]
+ ["Fill Rectangle" org-table-wrap-region :active (org-at-table-p) :keys "C-c C-q"])
+ "--"
+ ["Eval Formula" org-table-eval-formula :active (org-at-table-p) :keys "C-c ="]
+ ["Eval Formula Down " (org-table-eval-formula '(4)) :active (org-at-table-p) :keys "C-u C-c ="]
+ ["Recalculate line" org-table-recalculate :active (org-at-table-p) :keys "C-c *"]
+ ["Recalculate all" (org-table-recalculate '(4)) :active (org-at-table-p) :keys "C-u C-c *"]
+ ["Toggle Recalculate Mark" org-table-rotate-recalc-marks :active (org-at-table-p) :keys "C-c #"]
+ ["Sum Column/Rectangle" org-table-sum
+ :active (or (org-at-table-p) (org-region-active-p)) :keys "C-c +"]
+ ["Which Column?" org-table-current-column :active (org-at-table-p) :keys "C-c ?"]
+ ["Debug Formulas"
+ (setq org-table-formula-debug (not org-table-formula-debug))
+ :style toggle :selected org-table-formula-debug]
+ ))
t)
(defun orgtbl-tab ()
@@ -7707,13 +7746,13 @@ If the cursor is in a table looking at whitespace, the whitespace is
overwritten, and the table is not marked as requiring realignment."
(interactive "p")
(if (and (org-at-table-p)
- (eq N 1)
- (looking-at "[^|\n]* +|"))
+ (eq N 1)
+ (looking-at "[^|\n]* +|"))
(let (org-table-may-need-update)
- (goto-char (1- (match-end 0)))
- (delete-backward-char 1)
- (goto-char (match-beginning 0))
- (self-insert-command N))
+ (goto-char (1- (match-end 0)))
+ (delete-backward-char 1)
+ (goto-char (match-beginning 0))
+ (self-insert-command N))
(setq org-table-may-need-update t)
(let (orgtbl-mode)
(call-interactively (key-binding (vector last-input-event))))))
@@ -7726,14 +7765,14 @@ still be marked for re-alignment, because a narrow field may lead to a
reduced column width."
(interactive "p")
(if (and (org-at-table-p)
- (eq N 1)
- (string-match "|" (buffer-substring (point-at-bol) (point)))
- (looking-at ".*?|"))
+ (eq N 1)
+ (string-match "|" (buffer-substring (point-at-bol) (point)))
+ (looking-at ".*?|"))
(let ((pos (point)))
- (backward-delete-char N)
- (skip-chars-forward "^|")
- (insert " ")
- (goto-char (1- pos)))
+ (backward-delete-char N)
+ (skip-chars-forward "^|")
+ (insert " ")
+ (goto-char (1- pos)))
(delete-backward-char N)))
(defun orgtbl-delete-char (N)
@@ -7744,15 +7783,15 @@ will still be marked for re-alignment, because a narrow field may lead to
a reduced column width."
(interactive "p")
(if (and (org-at-table-p)
- (not (bolp))
- (not (= (char-after) ?|))
- (eq N 1))
+ (not (bolp))
+ (not (= (char-after) ?|))
+ (eq N 1))
(if (looking-at ".*?|")
- (let ((pos (point)))
- (replace-match (concat
- (substring (match-string 0) 1 -1)
- " |"))
- (goto-char pos)))
+ (let ((pos (point)))
+ (replace-match (concat
+ (substring (match-string 0) 1 -1)
+ " |"))
+ (goto-char pos)))
(delete-char N)))
;;; Exporting
@@ -7762,29 +7801,29 @@ a reduced column width."
(defun org-export-find-first-heading-line (list)
"Remove all lines from LIST which are before the first headline."
(let ((orig-list list)
- (re (concat "^" outline-regexp)))
+ (re (concat "^" outline-regexp)))
(while (and list
- (not (string-match re (car list))))
+ (not (string-match re (car list))))
(pop list))
(or list orig-list)))
(defun org-skip-comments (lines)
"Skip lines starting with \"#\" and subtrees starting with COMMENT."
(let ((re1 (concat "^\\(\\*+\\)[ \t]+" org-comment-string))
- (re2 "^\\(\\*+\\)[ \t\n\r]")
- rtn line level)
+ (re2 "^\\(\\*+\\)[ \t\n\r]")
+ rtn line level)
(while (setq line (pop lines))
(cond
((and (string-match re1 line)
- (setq level (- (match-end 1) (match-beginning 1))))
- ;; Beginning of a COMMENT subtree. Skip it.
- (while (and (setq line (pop lines))
- (or (not (string-match re2 line))
- (> (- (match-end 1) (match-beginning 1)) level))))
- (setq lines (cons line lines)))
+ (setq level (- (match-end 1) (match-beginning 1))))
+ ;; Beginning of a COMMENT subtree. Skip it.
+ (while (and (setq line (pop lines))
+ (or (not (string-match re2 line))
+ (> (- (match-end 1) (match-beginning 1)) level))))
+ (setq lines (cons line lines)))
((string-match "^#" line)
- ;; an ordinary comment line
- )
+ ;; an ordinary comment line
+ )
(t (setq rtn (cons line rtn)))))
(nreverse rtn)))
@@ -8101,29 +8140,29 @@ underlined headlines. The default is 3."
(interactive "P")
(setq-default org-todo-line-regexp org-todo-line-regexp)
(let* ((region
- (buffer-substring
- (if (org-region-active-p) (region-beginning) (point-min))
- (if (org-region-active-p) (region-end) (point-max))))
- (lines (org-export-find-first-heading-line
- (org-skip-comments (org-split-string region "[\r\n]"))))
- (org-startup-with-deadline-check nil)
- (level 0) line txt
- (umax nil)
- (case-fold-search nil)
- (filename (concat (file-name-sans-extension (buffer-file-name))
- ".txt"))
- (buffer (find-file-noselect filename))
- (levels-open (make-vector org-level-max nil))
+ (buffer-substring
+ (if (org-region-active-p) (region-beginning) (point-min))
+ (if (org-region-active-p) (region-end) (point-max))))
+ (lines (org-export-find-first-heading-line
+ (org-skip-comments (org-split-string region "[\r\n]"))))
+ (org-startup-with-deadline-check nil)
+ (level 0) line txt
+ (umax nil)
+ (case-fold-search nil)
+ (filename (concat (file-name-sans-extension (buffer-file-name))
+ ".txt"))
+ (buffer (find-file-noselect filename))
+ (levels-open (make-vector org-level-max nil))
(date (format-time-string "%Y/%m/%d" (current-time)))
(time (format-time-string "%X" (current-time)))
- (author user-full-name)
+ (author user-full-name)
(title (buffer-name))
- (options nil)
+ (options nil)
(email user-mail-address)
- (language org-export-default-language)
+ (language org-export-default-language)
(text nil)
- (todo nil)
- (lang-words nil))
+ (todo nil)
+ (lang-words nil))
(setq org-last-level 1)
(org-init-section-numbers)
@@ -8134,7 +8173,7 @@ underlined headlines. The default is 3."
(org-parse-key-lines)
(setq lang-words (or (assoc language org-export-language-setup)
- (assoc "en" org-export-language-setup)))
+ (assoc "en" org-export-language-setup)))
(if org-export-ascii-show-new-buffer
(switch-to-buffer-other-window buffer)
(set-buffer buffer))
@@ -8142,49 +8181,49 @@ underlined headlines. The default is 3."
(fundamental-mode)
(if options (org-parse-export-options options))
(setq umax (if arg (prefix-numeric-value arg)
- org-export-headline-levels))
+ org-export-headline-levels))
;; File header
(if title (org-insert-centered title ?=))
(insert "\n")
(if (or author email)
- (insert (concat (nth 1 lang-words) ": " (or author "")
- (if email (concat " <" email ">") "")
- "\n")))
+ (insert (concat (nth 1 lang-words) ": " (or author "")
+ (if email (concat " <" email ">") "")
+ "\n")))
(if (and date time)
- (insert (concat (nth 2 lang-words) ": " date " " time "\n")))
+ (insert (concat (nth 2 lang-words) ": " date " " time "\n")))
(if text (insert (concat (org-html-expand-for-ascii text) "\n\n")))
(insert "\n\n")
(if org-export-with-toc
- (progn
- (insert (nth 3 lang-words) "\n"
- (make-string (length (nth 3 lang-words)) ?=) "\n")
- (mapcar '(lambda (line)
+ (progn
+ (insert (nth 3 lang-words) "\n"
+ (make-string (length (nth 3 lang-words)) ?=) "\n")
+ (mapcar '(lambda (line)
(if (string-match org-todo-line-regexp
- line)
+ line)
;; This is a headline
(progn
(setq level (- (match-end 1) (match-beginning 1))
txt (match-string 3 line)
- todo
- (or (and (match-beginning 2)
- (not (equal (match-string 2 line)
- org-done-string)))
- ; TODO, not DONE
- (and (= level umax)
- (org-search-todo-below
- line lines level))))
- (setq txt (org-html-expand-for-ascii txt))
-
- (if org-export-with-section-numbers
- (setq txt (concat (org-section-number level)
- " " txt)))
+ todo
+ (or (and (match-beginning 2)
+ (not (equal (match-string 2 line)
+ org-done-string)))
+ ; TODO, not DONE
+ (and (= level umax)
+ (org-search-todo-below
+ line lines level))))
+ (setq txt (org-html-expand-for-ascii txt))
+
+ (if org-export-with-section-numbers
+ (setq txt (concat (org-section-number level)
+ " " txt)))
(if (<= level umax)
(progn
(insert
- (make-string (* (1- level) 4) ?\ )
+ (make-string (* (1- level) 4) ?\ )
(format (if todo "%s (*)\n" "%s\n") txt))
(setq org-last-level level))
))))
@@ -8196,10 +8235,10 @@ underlined headlines. The default is 3."
(setq line (org-html-expand-for-ascii line))
(cond
((string-match "^\\(\\*+\\)[ \t]*\\(.*\\)" line)
- ;; a Headline
- (setq level (- (match-end 1) (match-beginning 1))
- txt (match-string 2 line))
- (org-ascii-level-start level txt umax))
+ ;; a Headline
+ (setq level (- (match-end 1) (match-beginning 1))
+ txt (match-string 2 line))
+ (org-ascii-level-start level txt umax))
(t (insert line "\n"))))
(normal-mode)
(save-buffer)
@@ -8208,19 +8247,19 @@ underlined headlines. The default is 3."
(defun org-search-todo-below (line lines level)
"Search the subtree below LINE for any TODO entries."
(let ((rest (cdr (memq line lines)))
- (re org-todo-line-regexp)
- line lv todo)
+ (re org-todo-line-regexp)
+ line lv todo)
(catch 'exit
(while (setq line (pop rest))
- (if (string-match re line)
- (progn
- (setq lv (- (match-end 1) (match-beginning 1))
- todo (and (match-beginning 2)
- (not (equal (match-string 2 line)
- org-done-string))))
- ; TODO, not DONE
- (if (<= lv level) (throw 'exit nil))
- (if todo (throw 'exit t))))))))
+ (if (string-match re line)
+ (progn
+ (setq lv (- (match-end 1) (match-beginning 1))
+ todo (and (match-beginning 2)
+ (not (equal (match-string 2 line)
+ org-done-string))))
+ ; TODO, not DONE
+ (if (<= lv level) (throw 'exit nil))
+ (if todo (throw 'exit t))))))))
;; FIXME: Try to handle <b> and <i> as faces via text properties.
;; FIXME: Can I implement *bold*,/italic/ and _underline_ for ASCII export?
@@ -8228,8 +8267,8 @@ underlined headlines. The default is 3."
"Handle quoted HTML for ASCII export."
(if org-export-html-expand
(while (string-match "@<[^<>\n]*>" line)
- ;; We just remove the tags for now.
- (setq line (replace-match "" nil nil line))))
+ ;; We just remove the tags for now.
+ (setq line (replace-match "" nil nil line))))
line)
(defun org-insert-centered (s &optional underline)
@@ -8237,21 +8276,21 @@ underlined headlines. The default is 3."
(let ((ind (max (/ (- 80 (length s)) 2) 0)))
(insert (make-string ind ?\ ) s "\n")
(if underline
- (insert (make-string ind ?\ )
- (make-string (length s) underline)
- "\n"))))
+ (insert (make-string ind ?\ )
+ (make-string (length s) underline)
+ "\n"))))
(defun org-ascii-level-start (level title umax)
"Insert a new level in ASCII export."
(let (char)
(if (> level umax)
- (insert (make-string (* 2 (- level umax 1)) ?\ ) "* " title "\n")
+ (insert (make-string (* 2 (- level umax 1)) ?\ ) "* " title "\n")
(if (or (not (equal (char-before) ?\n))
- (not (equal (char-before (1- (point))) ?\n)))
- (insert "\n"))
+ (not (equal (char-before (1- (point))) ?\n)))
+ (insert "\n"))
(setq char (nth (- umax level) (reverse org-ascii-underline)))
(if org-export-with-section-numbers
- (setq title (concat (org-section-number level) " " title)))
+ (setq title (concat (org-section-number level) " " title)))
(insert title "\n" (make-string (string-width title) char) "\n"))))
(defun org-export-copy-visible ()
@@ -8260,29 +8299,29 @@ Also removes the first line of the buffer if it specifies a mode,
and all options lines."
(interactive)
(let* ((filename (concat (file-name-sans-extension (buffer-file-name))
- ".txt"))
- (buffer (find-file-noselect filename))
- (ore (concat
- (org-make-options-regexp
- '("CATEGORY" "SEQ_TODO" "PRI_TODO" "TYP_TODO"
- "STARTUP" "ARCHIVE"
- "TITLE" "AUTHOR" "EMAIL" "TEXT" "OPTIONS" "LANGUAGE"))
- (if org-noutline-p "\\(\n\\|$\\)" "")))
- s e)
+ ".txt"))
+ (buffer (find-file-noselect filename))
+ (ore (concat
+ (org-make-options-regexp
+ '("CATEGORY" "SEQ_TODO" "PRI_TODO" "TYP_TODO"
+ "STARTUP" "ARCHIVE"
+ "TITLE" "AUTHOR" "EMAIL" "TEXT" "OPTIONS" "LANGUAGE"))
+ (if org-noutline-p "\\(\n\\|$\\)" "")))
+ s e)
(with-current-buffer buffer
(erase-buffer)
(text-mode))
(save-excursion
(setq s (goto-char (point-min)))
(while (not (= (point) (point-max)))
- (goto-char (org-find-invisible))
- (append-to-buffer buffer s (point))
- (setq s (goto-char (org-find-visible)))))
+ (goto-char (org-find-invisible))
+ (append-to-buffer buffer s (point))
+ (setq s (goto-char (org-find-visible)))))
(switch-to-buffer-other-window buffer)
(newline)
(goto-char (point-min))
(if (looking-at ".*-\\*- mode:.*\n")
- (replace-match ""))
+ (replace-match ""))
(while (re-search-forward ore nil t)
(replace-match ""))
(goto-char (point-min))))
@@ -8290,17 +8329,17 @@ and all options lines."
(defun org-find-visible ()
(if (featurep 'noutline)
(let ((s (point)))
- (while (and (not (= (point-max) (setq s (next-overlay-change s))))
- (get-char-property s 'invisible)))
- s)
+ (while (and (not (= (point-max) (setq s (next-overlay-change s))))
+ (get-char-property s 'invisible)))
+ s)
(skip-chars-forward "^\n")
(point)))
(defun org-find-invisible ()
(if (featurep 'noutline)
(let ((s (point)))
- (while (and (not (= (point-max) (setq s (next-overlay-change s))))
- (not (get-char-property s 'invisible))))
- s)
+ (while (and (not (= (point-max) (setq s (next-overlay-change s))))
+ (not (get-char-property s 'invisible))))
+ s)
(skip-chars-forward "^\r")
(point)))
@@ -8341,7 +8380,7 @@ Does include HTML export options as well as TODO and CATEGORY stuff."
(mapconcat 'identity org-todo-keywords " ")
"Me Jason Marie DONE")
(cdr (assoc org-startup-folded
- '((nil . "nofold")(t . "fold")(content . "content"))))
+ '((nil . "nofold")(t . "fold")(content . "content"))))
(if org-startup-with-deadline-check "dlcheck" "nodlcheck")
org-archive-location
))
@@ -8352,7 +8391,7 @@ Does include HTML export options as well as TODO and CATEGORY stuff."
(if (not (bolp)) (newline))
(let ((s (org-get-current-options)))
(and (string-match "#\\+CATEGORY" s)
- (setq s (substring s 0 (match-beginning 0))))
+ (setq s (substring s 0 (match-beginning 0))))
(insert s)))
(defun org-toggle-fixed-width-section (arg)
@@ -8366,29 +8405,29 @@ bar to all lines, in the column given by the beginning of the region.
If there is a numerical prefix ARG, create ARG new lines starting with \"|\"."
(interactive "P")
(let* ((cc 0)
- (regionp (org-region-active-p))
- (beg (if regionp (region-beginning) (point)))
- (end (if regionp (region-end)))
- (nlines (or arg (if (and beg end) (count-lines beg end) 1)))
- (re "[ \t]*\\(:\\)")
- off)
+ (regionp (org-region-active-p))
+ (beg (if regionp (region-beginning) (point)))
+ (end (if regionp (region-end)))
+ (nlines (or arg (if (and beg end) (count-lines beg end) 1)))
+ (re "[ \t]*\\(:\\)")
+ off)
(save-excursion
(goto-char beg)
(setq cc (current-column))
(beginning-of-line 1)
(setq off (looking-at re))
(while (> nlines 0)
- (setq nlines (1- nlines))
- (beginning-of-line 1)
- (cond
- (arg
- (move-to-column cc t)
- (insert ":\n")
- (forward-line -1))
- ((and off (looking-at re))
- (replace-match "" t t nil 1))
- ((not off) (move-to-column cc t) (insert ":")))
- (forward-line 1)))))
+ (setq nlines (1- nlines))
+ (beginning-of-line 1)
+ (cond
+ (arg
+ (move-to-column cc t)
+ (insert ":\n")
+ (forward-line -1))
+ ((and off (looking-at re))
+ (replace-match "" t t nil 1))
+ ((not off) (move-to-column cc t) (insert ":")))
+ (forward-line 1)))))
(defun org-export-as-html-and-open (arg)
"Export the outline as HTML and immediately open it with a browser.
@@ -8417,32 +8456,32 @@ headlines. The default is 3. Lower levels will become bulleted lists."
(setq-default org-deadline-line-regexp org-deadline-line-regexp)
(setq-default org-done-string org-done-string)
(let* ((region-p (org-region-active-p))
- (region
- (buffer-substring
- (if region-p (region-beginning) (point-min))
- (if region-p (region-end) (point-max))))
- (all_lines
- (org-skip-comments (org-split-string region "[\r\n]")))
- (lines (org-export-find-first-heading-line all_lines))
- (level 0) (line "") (origline "") txt todo
- (umax nil)
- (filename (concat (file-name-sans-extension (buffer-file-name))
- ".html"))
- (buffer (find-file-noselect filename))
- (levels-open (make-vector org-level-max nil))
+ (region
+ (buffer-substring
+ (if region-p (region-beginning) (point-min))
+ (if region-p (region-end) (point-max))))
+ (all_lines
+ (org-skip-comments (org-split-string region "[\r\n]")))
+ (lines (org-export-find-first-heading-line all_lines))
+ (level 0) (line "") (origline "") txt todo
+ (umax nil)
+ (filename (concat (file-name-sans-extension (buffer-file-name))
+ ".html"))
+ (buffer (find-file-noselect filename))
+ (levels-open (make-vector org-level-max nil))
(date (format-time-string "%Y/%m/%d" (current-time)))
(time (format-time-string "%X" (current-time)))
- (author user-full-name)
+ (author user-full-name)
(title (buffer-name))
- (options nil)
+ (options nil)
(email user-mail-address)
- (language org-export-default-language)
+ (language org-export-default-language)
(text nil)
- (lang-words nil)
+ (lang-words nil)
(head-count 0) cnt
- (start 0)
- table-open type
- table-buffer table-orig-buffer
+ (start 0)
+ table-open type
+ table-buffer table-orig-buffer
)
(message "Exporting...")
@@ -8452,22 +8491,22 @@ headlines. The default is 3. Lower levels will become bulleted lists."
;; Search for the export key lines
(org-parse-key-lines)
(setq lang-words (or (assoc language org-export-language-setup)
- (assoc "en" org-export-language-setup)))
+ (assoc "en" org-export-language-setup)))
;; Switch to the output buffer
(if (or hidden (not org-export-html-show-new-buffer))
- (set-buffer buffer)
+ (set-buffer buffer)
(switch-to-buffer-other-window buffer))
(erase-buffer)
(fundamental-mode)
(let ((case-fold-search nil))
(if options (org-parse-export-options options))
(setq umax (if arg (prefix-numeric-value arg)
- org-export-headline-levels))
+ org-export-headline-levels))
;; File header
(insert (format
- "<html lang=\"%s\"><head>
+ "<html lang=\"%s\"><head>
<title>%s</title>
<meta http-equiv=\"Content-Type\" content=\"text/html\">
<meta name=generator content=\"Org-mode\">
@@ -8475,182 +8514,182 @@ headlines. The default is 3. Lower levels will become bulleted lists."
<meta name=author content=\"%s\">
</head><body>
"
- language (org-html-expand title) date time author))
+ language (org-html-expand title) date time author))
(if title (insert (concat "<H1 align=\"center\">"
- (org-html-expand title) "</H1>\n")))
+ (org-html-expand title) "</H1>\n")))
(if author (insert (concat (nth 1 lang-words) ": " author "\n")))
(if email (insert (concat "<a href=\"mailto:" email "\">&lt;"
- email "&gt;</a>\n")))
+ email "&gt;</a>\n")))
(if (or author email) (insert "<br>\n"))
(if (and date time) (insert (concat (nth 2 lang-words) ": "
- date " " time "<br>\n")))
+ date " " time "<br>\n")))
(if text (insert (concat "<p>\n" (org-html-expand text))))
(if org-export-with-toc
- (progn
- (insert (format "<H2>%s</H2>\n" (nth 3 lang-words)))
- (insert "<ul>\n")
- (mapcar '(lambda (line)
- (if (string-match org-todo-line-regexp line)
- ;; This is a headline
- (progn
- (setq level (- (match-end 1) (match-beginning 1))
- txt (save-match-data
- (org-html-expand
- (match-string 3 line)))
- todo
- (or (and (match-beginning 2)
- (not (equal (match-string 2 line)
- org-done-string)))
- ; TODO, not DONE
- (and (= level umax)
- (org-search-todo-below
- line lines level))))
- (if org-export-with-section-numbers
- (setq txt (concat (org-section-number level)
- " " txt)))
- (if (<= level umax)
- (progn
- (setq head-count (+ head-count 1))
- (if (> level org-last-level)
- (progn
- (setq cnt (- level org-last-level))
- (while (>= (setq cnt (1- cnt)) 0)
- (insert "<ul>"))
- (insert "\n")))
- (if (< level org-last-level)
- (progn
- (setq cnt (- org-last-level level))
- (while (>= (setq cnt (1- cnt)) 0)
- (insert "</ul>"))
- (insert "\n")))
- (insert
- (format
- (if todo
- "<li><a href=\"#sec-%d\"><span style='color:red'>%s</span></a></li>\n"
- "<li><a href=\"#sec-%d\">%s</a></li>\n")
- head-count txt))
- (setq org-last-level level))
- ))))
- lines)
- (while (> org-last-level 0)
- (setq org-last-level (1- org-last-level))
- (insert "</ul>\n"))
- ))
+ (progn
+ (insert (format "<H2>%s</H2>\n" (nth 3 lang-words)))
+ (insert "<ul>\n")
+ (mapcar '(lambda (line)
+ (if (string-match org-todo-line-regexp line)
+ ;; This is a headline
+ (progn
+ (setq level (- (match-end 1) (match-beginning 1))
+ txt (save-match-data
+ (org-html-expand
+ (match-string 3 line)))
+ todo
+ (or (and (match-beginning 2)
+ (not (equal (match-string 2 line)
+ org-done-string)))
+ ; TODO, not DONE
+ (and (= level umax)
+ (org-search-todo-below
+ line lines level))))
+ (if org-export-with-section-numbers
+ (setq txt (concat (org-section-number level)
+ " " txt)))
+ (if (<= level umax)
+ (progn
+ (setq head-count (+ head-count 1))
+ (if (> level org-last-level)
+ (progn
+ (setq cnt (- level org-last-level))
+ (while (>= (setq cnt (1- cnt)) 0)
+ (insert "<ul>"))
+ (insert "\n")))
+ (if (< level org-last-level)
+ (progn
+ (setq cnt (- org-last-level level))
+ (while (>= (setq cnt (1- cnt)) 0)
+ (insert "</ul>"))
+ (insert "\n")))
+ (insert
+ (format
+ (if todo
+ "<li><a href=\"#sec-%d\"><span style='color:red'>%s</span></a></li>\n"
+ "<li><a href=\"#sec-%d\">%s</a></li>\n")
+ head-count txt))
+ (setq org-last-level level))
+ ))))
+ lines)
+ (while (> org-last-level 0)
+ (setq org-last-level (1- org-last-level))
+ (insert "</ul>\n"))
+ ))
(setq head-count 0)
(org-init-section-numbers)
(while (setq line (pop lines) origline line)
- ;; Protect the links
- (setq start 0)
- (while (string-match org-link-maybe-angles-regexp line start)
- (setq start (match-end 0))
- (setq line (replace-match
- (concat "\000" (match-string 1 line) "\000")
- t t line)))
-
- ;; replace "<" and ">" by "&lt;" and "&gt;"
- ;; handle @<..> HTML tags (replace "@&gt;..&lt;" by "<..>")
- (setq line (org-html-expand line))
-
- ;; Verbatim lines
- (if (and org-export-with-fixed-width
- (string-match "^[ \t]*:\\(.*\\)" line))
- (progn
- (let ((l (match-string 1 line)))
- (while (string-match " " l)
- (setq l (replace-match "&nbsp;" t t l)))
- (insert "\n<span style='font-family:Courier'>"
- l "</span>"
- (if (and lines
- (not (string-match "^[ \t]+\\(:.*\\)"
- (car lines))))
- "<br>\n" "\n"))))
- (setq start 0)
- (while (string-match org-protected-link-regexp line start)
- (setq start (- (match-end 0) 2))
- (setq type (match-string 1 line))
- (cond
- ((member type '("http" "https" "ftp" "mailto" "news"))
- ;; standard URL
- (setq line (replace-match
+ ;; Protect the links
+ (setq start 0)
+ (while (string-match org-link-maybe-angles-regexp line start)
+ (setq start (match-end 0))
+ (setq line (replace-match
+ (concat "\000" (match-string 1 line) "\000")
+ t t line)))
+
+ ;; replace "<" and ">" by "&lt;" and "&gt;"
+ ;; handle @<..> HTML tags (replace "@&gt;..&lt;" by "<..>")
+ (setq line (org-html-expand line))
+
+ ;; Verbatim lines
+ (if (and org-export-with-fixed-width
+ (string-match "^[ \t]*:\\(.*\\)" line))
+ (progn
+ (let ((l (match-string 1 line)))
+ (while (string-match " " l)
+ (setq l (replace-match "&nbsp;" t t l)))
+ (insert "\n<span style='font-family:Courier'>"
+ l "</span>"
+ (if (and lines
+ (not (string-match "^[ \t]+\\(:.*\\)"
+ (car lines))))
+ "<br>\n" "\n"))))
+ (setq start 0)
+ (while (string-match org-protected-link-regexp line start)
+ (setq start (- (match-end 0) 2))
+ (setq type (match-string 1 line))
+ (cond
+ ((member type '("http" "https" "ftp" "mailto" "news"))
+ ;; standard URL
+ (setq line (replace-match
; "<a href=\"\\1:\\2\">&lt;\\1:\\2&gt;</a>"
- "<a href=\"\\1:\\2\">\\1:\\2</a>"
- nil nil line)))
- ((string= type "file")
- ;; FILE link
+ "<a href=\"\\1:\\2\">\\1:\\2</a>"
+ nil nil line)))
+ ((string= type "file")
+ ;; FILE link
(let* ((filename (match-string 2 line))
- (abs-p (file-name-absolute-p filename))
- (thefile (if abs-p (expand-file-name filename) filename))
- (thefile (save-match-data
- (if (string-match ":[0-9]+$" thefile)
- (replace-match "" t t thefile)
- thefile)))
+ (abs-p (file-name-absolute-p filename))
+ (thefile (if abs-p (expand-file-name filename) filename))
+ (thefile (save-match-data
+ (if (string-match ":[0-9]+$" thefile)
+ (replace-match "" t t thefile)
+ thefile)))
(file-is-image-p
(save-match-data
(string-match (org-image-file-name-regexp) thefile))))
(setq line (replace-match
(if (and org-export-html-inline-images
- file-is-image-p)
- (concat "<img src=\"" thefile "\"/>")
+ file-is-image-p)
+ (concat "<img src=\"" thefile "\"/>")
(concat "<a href=\"" thefile "\">\\1:\\2</a>"))
- nil nil line))))
-
- ((member type '("bbdb" "vm" "wl" "rmail" "gnus" "shell"))
- (setq line (replace-match
- "<i>&lt;\\1:\\2&gt;</i>" nil nil line)))))
-
- ;; TODO items
- (if (and (string-match org-todo-line-regexp line)
- (match-beginning 2))
- (if (equal (match-string 2 line) org-done-string)
- (setq line (replace-match
- "<span style='color:green'>\\2</span>"
- nil nil line 2))
- (setq line (replace-match "<span style='color:red'>\\2</span>"
- nil nil line 2))))
-
- ;; DEADLINES
- (if (string-match org-deadline-line-regexp line)
- (progn
- (if (save-match-data
- (string-match "<a href"
- (substring line 0 (match-beginning 0))))
- nil ; Don't do the replacement - it is inside a link
- (setq line (replace-match "<span style='color:red'>\\&</span>"
- nil nil line 1)))))
-
- (cond
- ((string-match "^\\(\\*+\\)[ \t]*\\(.*\\)" line)
- ;; This is a headline
- (setq level (- (match-end 1) (match-beginning 1))
- txt (match-string 2 line))
- (if (<= level umax) (setq head-count (+ head-count 1)))
- (org-html-level-start level txt umax
- (and org-export-with-toc (<= level umax))
- head-count))
-
- ((and org-export-with-tables
- (string-match "^\\([ \t]*\\)\\(|\\|\\+-+\\+\\)" line))
- (if (not table-open)
- ;; New table starts
- (setq table-open t table-buffer nil table-orig-buffer nil))
- ;; Accumulate lines
- (setq table-buffer (cons line table-buffer)
- table-orig-buffer (cons origline table-orig-buffer))
- (when (or (not lines)
- (not (string-match "^\\([ \t]*\\)\\(|\\|\\+-+\\+\\)"
- (car lines))))
- (setq table-open nil
- table-buffer (nreverse table-buffer)
- table-orig-buffer (nreverse table-orig-buffer))
- (insert (org-format-table-html table-buffer table-orig-buffer))))
- (t
- ;; Normal lines
- ;; Lines starting with "-", and empty lines make new paragraph.
- (if (string-match "^ *-\\|^[ \t]*$" line) (insert "<p>"))
- (insert line (if org-export-preserve-breaks "<br>\n" "\n"))))
- ))
+ nil nil line))))
+
+ ((member type '("bbdb" "vm" "wl" "rmail" "gnus" "shell"))
+ (setq line (replace-match
+ "<i>&lt;\\1:\\2&gt;</i>" nil nil line)))))
+
+ ;; TODO items
+ (if (and (string-match org-todo-line-regexp line)
+ (match-beginning 2))
+ (if (equal (match-string 2 line) org-done-string)
+ (setq line (replace-match
+ "<span style='color:green'>\\2</span>"
+ nil nil line 2))
+ (setq line (replace-match "<span style='color:red'>\\2</span>"
+ nil nil line 2))))
+
+ ;; DEADLINES
+ (if (string-match org-deadline-line-regexp line)
+ (progn
+ (if (save-match-data
+ (string-match "<a href"
+ (substring line 0 (match-beginning 0))))
+ nil ; Don't do the replacement - it is inside a link
+ (setq line (replace-match "<span style='color:red'>\\&</span>"
+ nil nil line 1)))))
+
+ (cond
+ ((string-match "^\\(\\*+\\)[ \t]*\\(.*\\)" line)
+ ;; This is a headline
+ (setq level (- (match-end 1) (match-beginning 1))
+ txt (match-string 2 line))
+ (if (<= level umax) (setq head-count (+ head-count 1)))
+ (org-html-level-start level txt umax
+ (and org-export-with-toc (<= level umax))
+ head-count))
+
+ ((and org-export-with-tables
+ (string-match "^\\([ \t]*\\)\\(|\\|\\+-+\\+\\)" line))
+ (if (not table-open)
+ ;; New table starts
+ (setq table-open t table-buffer nil table-orig-buffer nil))
+ ;; Accumulate lines
+ (setq table-buffer (cons line table-buffer)
+ table-orig-buffer (cons origline table-orig-buffer))
+ (when (or (not lines)
+ (not (string-match "^\\([ \t]*\\)\\(|\\|\\+-+\\+\\)"
+ (car lines))))
+ (setq table-open nil
+ table-buffer (nreverse table-buffer)
+ table-orig-buffer (nreverse table-orig-buffer))
+ (insert (org-format-table-html table-buffer table-orig-buffer))))
+ (t
+ ;; Normal lines
+ ;; Lines starting with "-", and empty lines make new paragraph.
+ (if (string-match "^ *-\\|^[ \t]*$" line) (insert "<p>"))
+ (insert line (if org-export-preserve-breaks "<br>\n" "\n"))))
+ ))
(if org-export-html-with-timestamp
- (insert org-export-html-html-helper-timestamp))
+ (insert org-export-html-html-helper-timestamp))
(insert "</body>\n</html>\n")
(normal-mode)
(save-buffer)
@@ -8663,22 +8702,22 @@ headlines. The default is 3. Lower levels will become bulleted lists."
(org-format-org-table-html lines)
;; Table made by table.el - test for spanning
(let* ((hlines (delq nil (mapcar
- (lambda (x)
- (if (string-match "^[ \t]*\\+-" x) x
- nil))
- lines)))
- (first (car hlines))
- (ll (and (string-match "\\S-+" first)
- (match-string 0 first)))
- (re (concat "^[ \t]*" (regexp-quote ll)))
- (spanning (delq nil (mapcar (lambda (x) (not (string-match re x)))
- hlines))))
+ (lambda (x)
+ (if (string-match "^[ \t]*\\+-" x) x
+ nil))
+ lines)))
+ (first (car hlines))
+ (ll (and (string-match "\\S-+" first)
+ (match-string 0 first)))
+ (re (concat "^[ \t]*" (regexp-quote ll)))
+ (spanning (delq nil (mapcar (lambda (x) (not (string-match re x)))
+ hlines))))
(if (and (not spanning)
- (not org-export-prefer-native-exporter-for-tables))
- ;; We can use my own converter with HTML conversions
- (org-format-table-table-html lines)
- ;; Need to use the code generator in table.el, with the original text.
- (org-format-table-table-html-using-table-generate-source olines)))))
+ (not org-export-prefer-native-exporter-for-tables))
+ ;; We can use my own converter with HTML conversions
+ (org-format-table-table-html lines)
+ ;; Need to use the code generator in table.el, with the original text.
+ (org-format-table-table-html-using-table-generate-source olines)))))
(defun org-format-org-table-html (lines)
"Format a table into html."
@@ -8687,29 +8726,29 @@ headlines. The default is 3. Lower levels will become bulleted lists."
(if (string-match "^[ \t]*|-" (car lines)) (setq lines (cdr lines)))
(setq lines (nreverse lines))
(let ((head (and org-export-highlight-first-table-line
- (delq nil (mapcar
- (lambda (x) (string-match "^[ \t]*|-" x))
- (cdr lines)))))
- line fields html)
+ (delq nil (mapcar
+ (lambda (x) (string-match "^[ \t]*|-" x))
+ (cdr lines)))))
+ line fields html)
(setq html (concat org-export-html-table-tag "\n"))
(while (setq line (pop lines))
(catch 'next-line
- (if (string-match "^[ \t]*|-" line)
- (progn
- (setq head nil) ;; head ends here, first time around
- ;; ignore this line
- (throw 'next-line t)))
- ;; Break the line into fields
- (setq fields (org-split-string line "[ \t]*|[ \t]*"))
- (setq html (concat
- html
- "<tr>"
- (mapconcat (lambda (x)
- (if head
- (concat "<th>" x "</th>")
- (concat "<td valign=\"top\">" x "</td>")))
- fields "")
- "</tr>\n"))))
+ (if (string-match "^[ \t]*|-" line)
+ (progn
+ (setq head nil) ;; head ends here, first time around
+ ;; ignore this line
+ (throw 'next-line t)))
+ ;; Break the line into fields
+ (setq fields (org-split-string line "[ \t]*|[ \t]*"))
+ (setq html (concat
+ html
+ "<tr>"
+ (mapconcat (lambda (x)
+ (if head
+ (concat "<th>" x "</th>")
+ (concat "<td valign=\"top\">" x "</td>")))
+ fields "")
+ "</tr>\n"))))
(setq html (concat html "</table>\n"))
html))
@@ -8729,41 +8768,41 @@ This conversion does *not* use `table-generate-source' from table.el.
This has the advantage that Org-mode's HTML conversions can be used.
But it has the disadvantage, that no cell- or row-spanning is allowed."
(let (line field-buffer
- (head org-export-highlight-first-table-line)
- fields html empty)
+ (head org-export-highlight-first-table-line)
+ fields html empty)
(setq html (concat org-export-html-table-tag "\n"))
(while (setq line (pop lines))
(setq empty "&nbsp")
(catch 'next-line
- (if (string-match "^[ \t]*\\+-" line)
- (progn
- (if field-buffer
- (progn
- (setq html (concat
- html
- "<tr>"
- (mapconcat
- (lambda (x)
- (if (equal x "") (setq x empty))
- (if head
- (concat "<th valign=\"top\">" x
- "</th>\n")
- (concat "<td valign=\"top\">" x
- "</td>\n")))
- field-buffer "\n")
- "</tr>\n"))
- (setq head nil)
- (setq field-buffer nil)))
- ;; Ignore this line
- (throw 'next-line t)))
- ;; Break the line into fields and store the fields
- (setq fields (org-split-string line "[ \t]*|[ \t]*"))
- (if field-buffer
- (setq field-buffer (mapcar
- (lambda (x)
- (concat x "<br>" (pop fields)))
- field-buffer))
- (setq field-buffer fields))))
+ (if (string-match "^[ \t]*\\+-" line)
+ (progn
+ (if field-buffer
+ (progn
+ (setq html (concat
+ html
+ "<tr>"
+ (mapconcat
+ (lambda (x)
+ (if (equal x "") (setq x empty))
+ (if head
+ (concat "<th valign=\"top\">" x
+ "</th>\n")
+ (concat "<td valign=\"top\">" x
+ "</td>\n")))
+ field-buffer "\n")
+ "</tr>\n"))
+ (setq head nil)
+ (setq field-buffer nil)))
+ ;; Ignore this line
+ (throw 'next-line t)))
+ ;; Break the line into fields and store the fields
+ (setq fields (org-split-string line "[ \t]*|[ \t]*"))
+ (if field-buffer
+ (setq field-buffer (mapcar
+ (lambda (x)
+ (concat x "<br>" (pop fields)))
+ field-buffer))
+ (setq field-buffer fields))))
(setq html (concat html "</table>\n"))
html))
@@ -8777,7 +8816,7 @@ But it has the disadvantage, that Org-mode's HTML conversions cannot be used."
(insert (mapconcat 'identity lines "\n"))
(goto-char (point-min))
(if (not (re-search-forward "|[^+]" nil t))
- (error "Error processing table"))
+ (error "Error processing table"))
(table-recognize-table)
(with-current-buffer (get-buffer-create " org-tmp2 ") (erase-buffer))
(table-generate-source 'html " org-tmp2 ")
@@ -8789,29 +8828,29 @@ But it has the disadvantage, that Org-mode's HTML conversions cannot be used."
;; First check if there is a link in the line - if yes, apply conversions
;; only before the start of the link.
(let* ((m (string-match org-link-regexp string))
- (s (if m (substring string 0 m) string))
- (r (if m (substring string m) "")))
+ (s (if m (substring string 0 m) string))
+ (r (if m (substring string m) "")))
;; convert < to &lt; and > to &gt;
(while (string-match "<" s)
(setq s (replace-match "&lt;" t t s)))
(while (string-match ">" s)
(setq s (replace-match "&gt;" t t s)))
(if org-export-html-expand
- (while (string-match "@&lt;\\([^&]*\\)&gt;" s)
- (setq s (replace-match "<\\1>" nil nil s))))
+ (while (string-match "@&lt;\\([^&]*\\)&gt;" s)
+ (setq s (replace-match "<\\1>" nil nil s))))
(if org-export-with-emphasize
- (setq s (org-export-html-convert-emphasize s)))
+ (setq s (org-export-html-convert-emphasize s)))
(if org-export-with-sub-superscripts
- (setq s (org-export-html-convert-sub-super s)))
+ (setq s (org-export-html-convert-sub-super s)))
(if org-export-with-TeX-macros
- (let ((start 0) wd ass)
- (while (setq start (string-match "\\\\\\([a-zA-Z]+\\)" s start))
- (setq wd (match-string 1 s))
- (if (setq ass (assoc wd org-html-entities))
- (setq s (replace-match (or (cdr ass)
- (concat "&" (car ass) ";"))
- t t s))
- (setq start (+ start (length wd)))))))
+ (let ((start 0) wd ass)
+ (while (setq start (string-match "\\\\\\([a-zA-Z]+\\)" s start))
+ (setq wd (match-string 1 s))
+ (if (setq ass (assoc wd org-html-entities))
+ (setq s (replace-match (or (cdr ass)
+ (concat "&" (car ass) ";"))
+ t t s))
+ (setq start (+ start (length wd)))))))
(concat s r)))
(defun org-create-multibrace-regexp (left right n)
@@ -8823,13 +8862,13 @@ delimiters. It will also define a single group which contains the
match except for the outermost delimiters. The maximum depth of
stacked delimiters is N. Escaping delimiters is not possible."
(let* ((nothing (concat "[^" "\\" left "\\" right "]*?"))
- (or "\\|")
- (re nothing)
- (next (concat "\\(?:" nothing left nothing right "\\)+" nothing)))
+ (or "\\|")
+ (re nothing)
+ (next (concat "\\(?:" nothing left nothing right "\\)+" nothing)))
(while (> n 1)
(setq n (1- n)
- re (concat re or next)
- next (concat "\\(?:" nothing left next right "\\)+" nothing)))
+ re (concat re or next)
+ next (concat "\\(?:" nothing left next right "\\)+" nothing)))
(concat left "\\(" re "\\)" right)))
(defvar org-match-substring-regexp
@@ -8848,35 +8887,35 @@ stacked delimiters is N. Escaping delimiters is not possible."
(while (string-match org-match-substring-regexp string)
(setq key (if (string= (match-string 2 string) "_") "sub" "sup"))
(setq c (or (match-string 8 string)
- (match-string 6 string)
- (match-string 5 string)))
+ (match-string 6 string)
+ (match-string 5 string)))
(setq string (replace-match
- (concat (match-string 1 string)
- "<" key ">" c "</" key ">")
- t t string)))
+ (concat (match-string 1 string)
+ "<" key ">" c "</" key ">")
+ t t string)))
(while (string-match "\\\\\\([_^]\\)" string)
(setq string (replace-match (match-string 1 string) t t string))))
string)
(defun org-export-html-convert-emphasize (string)
(while (string-match
- "\\(\\s-\\|^\\)\\(\\*\\([a-zA-Z]+\\)\\*\\)\\([^a-zA-Z*]\\|$\\)"
- string)
+ "\\(\\s-\\|^\\)\\(\\*\\([a-zA-Z]+\\)\\*\\)\\([^a-zA-Z*]\\|$\\)"
+ string)
(setq string (replace-match
- (concat "<b>" (match-string 3 string) "</b>")
- t t string 2)))
+ (concat "<b>" (match-string 3 string) "</b>")
+ t t string 2)))
(while (string-match
- "\\(\\s-\\|^\\)\\(/\\([a-zA-Z]+\\)/\\)\\([^a-zA-Z*]\\|$\\)"
- string)
+ "\\(\\s-\\|^\\)\\(/\\([a-zA-Z]+\\)/\\)\\([^a-zA-Z*]\\|$\\)"
+ string)
(setq string (replace-match
- (concat "<i>" (match-string 3 string) "</i>")
- t t string 2)))
+ (concat "<i>" (match-string 3 string) "</i>")
+ t t string 2)))
(while (string-match
- "\\(\\s-\\|^\\)\\(_\\([a-zA-Z]+\\)_\\)\\([^a-zA-Z*]\\|$\\)"
- string)
+ "\\(\\s-\\|^\\)\\(_\\([a-zA-Z]+\\)_\\)\\([^a-zA-Z*]\\|$\\)"
+ string)
(setq string (replace-match
- (concat "<u>" (match-string 3 string) "</u>")
- t t string 2)))
+ (concat "<u>" (match-string 3 string) "</u>")
+ t t string 2)))
string)
(defun org-parse-key-lines ()
@@ -8884,59 +8923,59 @@ stacked delimiters is N. Escaping delimiters is not possible."
(save-excursion
(goto-char 0)
(let ((re (org-make-options-regexp
- '("TITLE" "AUTHOR" "EMAIL" "TEXT" "OPTIONS" "LANGUAGE")))
- key)
+ '("TITLE" "AUTHOR" "EMAIL" "TEXT" "OPTIONS" "LANGUAGE")))
+ key)
(while (re-search-forward re nil t)
- (setq key (match-string 1))
- (cond ((string-equal key "TITLE")
- (setq title (match-string 2)))
- ((string-equal key "AUTHOR")
- (setq author (match-string 2)))
- ((string-equal key "EMAIL")
- (setq email (match-string 2)))
- ((string-equal key "LANGUAGE")
- (setq language (match-string 2)))
- ((string-equal key "TEXT")
- (setq text (concat text "\n" (match-string 2))))
- ((string-equal key "OPTIONS")
- (setq options (match-string 2))))))))
+ (setq key (match-string 1))
+ (cond ((string-equal key "TITLE")
+ (setq title (match-string 2)))
+ ((string-equal key "AUTHOR")
+ (setq author (match-string 2)))
+ ((string-equal key "EMAIL")
+ (setq email (match-string 2)))
+ ((string-equal key "LANGUAGE")
+ (setq language (match-string 2)))
+ ((string-equal key "TEXT")
+ (setq text (concat text "\n" (match-string 2))))
+ ((string-equal key "OPTIONS")
+ (setq options (match-string 2))))))))
(defun org-parse-export-options (s)
"Parse the export options line."
(let ((op '(("H" . org-export-headline-levels)
- ("num" . org-export-with-section-numbers)
- ("toc" . org-export-with-toc)
- ("\\n" . org-export-preserve-breaks)
- ("@" . org-export-html-expand)
- (":" . org-export-with-fixed-width)
- ("|" . org-export-with-tables)
- ("^" . org-export-with-sub-superscripts)
- ("*" . org-export-with-emphasize)
- ("TeX" . org-export-with-TeX-macros)))
- o)
+ ("num" . org-export-with-section-numbers)
+ ("toc" . org-export-with-toc)
+ ("\\n" . org-export-preserve-breaks)
+ ("@" . org-export-html-expand)
+ (":" . org-export-with-fixed-width)
+ ("|" . org-export-with-tables)
+ ("^" . org-export-with-sub-superscripts)
+ ("*" . org-export-with-emphasize)
+ ("TeX" . org-export-with-TeX-macros)))
+ o)
(while (setq o (pop op))
(if (string-match (concat (regexp-quote (car o)) ":\\([^ \t\n\r;,.]*\\)")
- s)
- (set (make-local-variable (cdr o))
- (car (read-from-string (match-string 1 s))))))))
+ s)
+ (set (make-local-variable (cdr o))
+ (car (read-from-string (match-string 1 s))))))))
(defun org-html-level-start (level title umax with-toc head-count)
"Insert a new level in HTML export."
(let ((l (1+ (max level umax))))
(while (<= l org-level-max)
(if (aref levels-open (1- l))
- (progn
- (org-html-level-close l)
- (aset levels-open (1- l) nil)))
+ (progn
+ (org-html-level-close l)
+ (aset levels-open (1- l) nil)))
(setq l (1+ l)))
(if (> level umax)
- (progn
- (if (aref levels-open (1- level))
- (insert "<li>" title "<p>\n")
- (aset levels-open (1- level) t)
- (insert "<ul><li>" title "<p>\n")))
+ (progn
+ (if (aref levels-open (1- level))
+ (insert "<li>" title "<p>\n")
+ (aset levels-open (1- level) t)
+ (insert "<ul><li>" title "<p>\n")))
(if org-export-with-section-numbers
- (setq title (concat (org-section-number level) " " title)))
+ (setq title (concat (org-section-number level) " " title)))
(setq level (+ level 1))
(if with-toc
(insert (format "\n<H%d><a name=\"sec-%d\">%s</a></H%d>\n"
@@ -8954,18 +8993,18 @@ stacked delimiters is N. Escaping delimiters is not possible."
(defun org-init-section-numbers ()
"Initialize the vector for the section numbers."
(let* ((level -1)
- (numbers (nreverse (org-split-string "" "\\.")))
- (depth (1- (length org-section-numbers)))
- (i depth) number-string)
+ (numbers (nreverse (org-split-string "" "\\.")))
+ (depth (1- (length org-section-numbers)))
+ (i depth) number-string)
(while (>= i 0)
(if (> i level)
- (aset org-section-numbers i 0)
- (setq number-string (or (car numbers) "0"))
- (if (string-match "\\`[A-Z]\\'" number-string)
- (aset org-section-numbers i
- (- (string-to-char number-string) ?A -1))
- (aset org-section-numbers i (string-to-int number-string)))
- (pop numbers))
+ (aset org-section-numbers i 0)
+ (setq number-string (or (car numbers) "0"))
+ (if (string-match "\\`[A-Z]\\'" number-string)
+ (aset org-section-numbers i
+ (- (string-to-char number-string) ?A -1))
+ (aset org-section-numbers i (string-to-int number-string)))
+ (pop numbers))
(setq i (1- i)))))
(defun org-section-number (&optional level)
@@ -8974,24 +9013,24 @@ When LEVEL is non-nil, increase section numbers on that level."
(let* ((depth (1- (length org-section-numbers))) idx n (string ""))
(when level
(when (> level -1)
- (aset org-section-numbers
- level (1+ (aref org-section-numbers level))))
+ (aset org-section-numbers
+ level (1+ (aref org-section-numbers level))))
(setq idx (1+ level))
(while (<= idx depth)
- (if (not (= idx 1))
- (aset org-section-numbers idx 0))
- (setq idx (1+ idx))))
+ (if (not (= idx 1))
+ (aset org-section-numbers idx 0))
+ (setq idx (1+ idx))))
(setq idx 0)
(while (<= idx depth)
(setq n (aref org-section-numbers idx))
(setq string (concat string (if (not (string= string "")) "." "")
- (int-to-string n)))
+ (int-to-string n)))
(setq idx (1+ idx)))
(save-match-data
(if (string-match "\\`\\([@0]\\.\\)+" string)
- (setq string (replace-match "" nil nil string)))
+ (setq string (replace-match "" nil nil string)))
(if (string-match "\\(\\.0\\)+\\'" string)
- (setq string (replace-match "" nil nil string))))
+ (setq string (replace-match "" nil nil string))))
string))
@@ -9049,7 +9088,7 @@ When LEVEL is non-nil, increase section numbers on that level."
(define-key org-mode-map (org-key 'S-left) 'org-timestamp-down-day)
(define-key org-mode-map (org-key 'S-right) 'org-timestamp-up-day)
(define-key org-mode-map "\C-c-" 'org-table-insert-hline)
-;; The following line is e.g. necessary for German keyboards under Suse Linux
+;; The following line is necessary for German keyboards under Suse GNU/Linux
(unless org-xemacs-p
(define-key org-mode-map [S-iso-lefttab] 'org-shifttab))
(define-key org-mode-map [(shift tab)] 'org-shifttab)
@@ -9085,13 +9124,13 @@ If the cursor is in a table looking at whitespace, the whitespace is
overwritten, and the table is not marked as requiring realignment."
(interactive "p")
(if (and (org-table-p)
- (eq N 1)
- (looking-at "[^|\n]* +|"))
+ (eq N 1)
+ (looking-at "[^|\n]* +|"))
(let (org-table-may-need-update)
- (goto-char (1- (match-end 0)))
- (delete-backward-char 1)
- (goto-char (match-beginning 0))
- (self-insert-command N))
+ (goto-char (1- (match-end 0)))
+ (delete-backward-char 1)
+ (goto-char (match-beginning 0))
+ (self-insert-command N))
(setq org-table-may-need-update t)
(self-insert-command N)))
@@ -9107,14 +9146,14 @@ still be marked for re-alignment, because a narrow field may lead to a
reduced column width."
(interactive "p")
(if (and (org-table-p)
- (eq N 1)
- (string-match "|" (buffer-substring (point-at-bol) (point)))
- (looking-at ".*?|"))
+ (eq N 1)
+ (string-match "|" (buffer-substring (point-at-bol) (point)))
+ (looking-at ".*?|"))
(let ((pos (point)))
- (backward-delete-char N)
- (skip-chars-forward "^|")
- (insert " ")
- (goto-char (1- pos)))
+ (backward-delete-char N)
+ (skip-chars-forward "^|")
+ (insert " ")
+ (goto-char (1- pos)))
(backward-delete-char N)))
(defun org-delete-char (N)
@@ -9125,15 +9164,15 @@ will still be marked for re-alignment, because a narrow field may lead to
a reduced column width."
(interactive "p")
(if (and (org-table-p)
- (not (bolp))
- (not (= (char-after) ?|))
- (eq N 1))
+ (not (bolp))
+ (not (= (char-after) ?|))
+ (eq N 1))
(if (looking-at ".*?|")
- (let ((pos (point)))
- (replace-match (concat
- (substring (match-string 0) 1 -1)
- " |"))
- (goto-char pos)))
+ (let ((pos (point)))
+ (replace-match (concat
+ (substring (match-string 0) 1 -1)
+ " |"))
+ (goto-char pos)))
(delete-char N)))
;; How to do this: Measure non-white length of current string
@@ -9143,11 +9182,11 @@ a reduced column width."
;; If the user wants maximum table support, we need to hijack
;; some standard editing functions
(substitute-key-definition 'self-insert-command 'org-self-insert-command
- org-mode-map global-map)
+ org-mode-map global-map)
(substitute-key-definition 'delete-char 'org-delete-char
- org-mode-map global-map)
+ org-mode-map global-map)
(substitute-key-definition 'delete-backward-char 'org-delete-backward-char
- org-mode-map global-map)
+ org-mode-map global-map)
(define-key org-mode-map "|" 'self-insert-command))
(defun org-shiftcursor-error ()
@@ -9241,7 +9280,7 @@ a reduced column width."
(defun org-copy-special ()
"Call either `org-table-copy' or `org-copy-subtree'."
(interactive)
- (call-interactively
+ (call-interactively
(if (org-at-table-p) 'org-table-copy-region 'org-copy-subtree)))
(defun org-cut-special ()
@@ -9262,7 +9301,7 @@ a reduced column width."
When the cursor is inside a table created by the table.el package,
activate that table. Otherwise, if the cursor is at a normal table
created with org.el, re-align that table. This command works even if
-the automatic table editor has been turned off.
+the automatic table editor has been turned off.
If the cursor is in one of the special #+KEYWORD lines, this triggers
scanning the buffer for these lines and updating the information."
(interactive "P")
@@ -9276,25 +9315,25 @@ scanning the buffer for these lines and updating the information."
((org-at-table-p)
(org-table-maybe-eval-formula)
(if arg
- (org-table-recalculate t)
- (org-table-maybe-recalculate-line))
+ (org-table-recalculate t)
+ (org-table-maybe-recalculate-line))
(org-table-align))
((save-excursion (beginning-of-line 1) (looking-at "#\\+\\([A-Z]+\\)"))
(cond
((equal (match-string 1) "TBLFM")
- ;; Recalculate the table before this line
- (save-excursion
- (beginning-of-line 1)
- (skip-chars-backward " \r\n\t")
- (if (org-at-table-p) (org-table-recalculate t))))
+ ;; Recalculate the table before this line
+ (save-excursion
+ (beginning-of-line 1)
+ (skip-chars-backward " \r\n\t")
+ (if (org-at-table-p) (org-table-recalculate t))))
(t
- (let ((org-inhibit-startup t)) (org-mode)))))
+ (let ((org-inhibit-startup t)) (org-mode)))))
((org-region-active-p)
(org-table-convert-region (region-beginning) (region-end) arg))
((and (region-beginning) (region-end))
(if (y-or-n-p "Convert inactive region to table? ")
- (org-table-convert-region (region-beginning) (region-end) arg)
- (error "Abort")))
+ (org-table-convert-region (region-beginning) (region-end) arg)
+ (error "Abort")))
(t (error "No table at point, and no region to make one")))))
(defun org-return ()
@@ -9351,7 +9390,7 @@ scanning the buffer for these lines and updating the information."
["Recalculate line" org-table-recalculate (org-at-table-p)]
["Recalculate all" (lambda () (interactive) (org-table-recalculate '(4))) :active (org-at-table-p) :keys "C-u C-c *"]
["Toggle Recalculate Mark" org-table-rotate-recalc-marks (org-at-table-p)]
- ["Sum Column/Rectangle" org-table-sum
+ ["Sum Column/Rectangle" org-table-sum
(or (org-at-table-p) (org-region-active-p))]
["Which Column?" org-table-current-column (org-at-table-p)])
["Debug Formulas"
@@ -9362,7 +9401,7 @@ scanning the buffer for these lines and updating the information."
:style toggle :selected (org-in-invisibility-spec-p '(org-table))]
"--"
["Create" org-table-create (and (not (org-at-table-p))
- org-enable-table-editor)]
+ org-enable-table-editor)]
["Convert Region" org-ctrl-c-ctrl-c (not (org-at-table-p 'any))]
["Import from File" org-table-import (not (org-at-table-p))]
["Export to File" org-table-export (org-at-table-p)]
@@ -9461,10 +9500,10 @@ With optional NODE, go directly to that node."
(Info-goto-node (format "(org)%s" (or node ""))))
(defun org-install-agenda-files-menu ()
- (easy-menu-change
+ (easy-menu-change
'("Org") "File List for Agenda"
(append
- (list
+ (list
["Edit File List" (customize-variable 'org-agenda-files) t]
["Add Current File to List" org-add-file t]
["Remove Current File from List" org-remove-file t]
@@ -9532,7 +9571,7 @@ Works on both Emacs and XEmacs."
(if org-ignore-region
nil
(if org-xemacs-p
- (and zmacs-regions (region-active-p))
+ (and zmacs-regions (region-active-p))
(and transient-mark-mode mark-active))))
(defun org-add-to-invisibility-spec (arg)
@@ -9553,8 +9592,8 @@ that can be added."
(if (fboundp 'remove-from-invisibility-spec)
(remove-from-invisibility-spec arg)
(if (consp buffer-invisibility-spec)
- (setq buffer-invisibility-spec
- (delete arg buffer-invisibility-spec)))))
+ (setq buffer-invisibility-spec
+ (delete arg buffer-invisibility-spec)))))
(defun org-in-invisibility-spec-p (arg)
"Is ARG a member of `buffer-invisibility-spec'?."
@@ -9567,19 +9606,19 @@ that can be added."
(if (fboundp 'image-file-name-regexp)
(image-file-name-regexp)
(let ((image-file-name-extensions
- '("png" "jpeg" "jpg" "gif" "tiff" "tif"
- "xbm" "xpm" "pbm" "pgm" "ppm")))
+ '("png" "jpeg" "jpg" "gif" "tiff" "tif"
+ "xbm" "xpm" "pbm" "pgm" "ppm")))
(concat "\\."
- (regexp-opt (nconc (mapcar 'upcase
- image-file-name-extensions)
- image-file-name-extensions)
- t)
- "\\'"))))
+ (regexp-opt (nconc (mapcar 'upcase
+ image-file-name-extensions)
+ image-file-name-extensions)
+ t)
+ "\\'"))))
;; Functions needed for compatibility with old outline.el
;; The following functions capture almost the entire compatibility code
-;; between the different versions of outline-mode. The only other place
+;; between the different versions of outline-mode. The only other place
;; where this is important are the font-lock-keywords. Search for
;; `org-noutline-p' to find it.
@@ -9594,9 +9633,9 @@ to a visible line beginning. This makes the function of C-a more intuitive."
nil
(backward-char 1)
(if (org-invisible-p)
- (while (and (not (bobp)) (org-invisible-p))
- (backward-char 1)
- (beginning-of-line 1))
+ (while (and (not (bobp)) (org-invisible-p))
+ (backward-char 1)
+ (beginning-of-line 1))
(forward-char 1))))
(when org-noutline-p
(define-key org-mode-map "\C-a" 'org-beginning-of-line))
@@ -9606,8 +9645,8 @@ to a visible line beginning. This makes the function of C-a more intuitive."
(if org-noutline-p
;; Early versions of noutline don't have `outline-invisible-p'.
(if (fboundp 'outline-invisible-p)
- (outline-invisible-p)
- (get-char-property (point) 'invisible))
+ (outline-invisible-p)
+ (get-char-property (point) 'invisible))
(save-excursion
(skip-chars-backward "^\r\n")
(equal (char-before) ?\r))))
@@ -9618,14 +9657,14 @@ Only visible heading lines are considered, unless INVISIBLE-OK is non-nil."
(if org-noutline-p
(outline-back-to-heading invisible-ok)
(if (looking-at outline-regexp)
- t
+ t
(if (re-search-backward (concat (if invisible-ok "\\([\r\n]\\|^\\)" "^")
- outline-regexp)
- nil t)
- (if invisible-ok
- (progn (goto-char (match-end 1))
- (looking-at outline-regexp)))
- (error "Before first heading")))))
+ outline-regexp)
+ nil t)
+ (if invisible-ok
+ (progn (goto-char (match-end 1))
+ (looking-at outline-regexp)))
+ (error "Before first heading")))))
(defun org-on-heading-p (&optional invisible-ok)
"Return t if point is on a (visible) heading line.
@@ -9635,36 +9674,36 @@ If INVISIBLE-OK is non-nil, an invisible heading line is ok too."
(save-excursion
(skip-chars-backward "^\n\r")
(and (looking-at outline-regexp)
- (or invisible-ok
- (bobp)
- (equal (char-before) ?\n))))))
+ (or invisible-ok
+ (bobp)
+ (equal (char-before) ?\n))))))
(defun org-up-heading-all (arg)
"Move to the heading line of which the present line is a subheading.
This function considers both visible and invisible heading lines.
With argument, move up ARG levels."
(if org-noutline-p
- (if (fboundp 'outline-up-heading-all)
- (outline-up-heading-all arg) ; emacs 21 version of outline.el
- (outline-up-heading arg t)) ; emacs 22 version of outline.el
+ (if (fboundp 'outline-up-heading-all)
+ (outline-up-heading-all arg) ; emacs 21 version of outline.el
+ (outline-up-heading arg t)) ; emacs 22 version of outline.el
(org-back-to-heading t)
(looking-at outline-regexp)
(if (<= (- (match-end 0) (match-beginning 0)) arg)
- (error "Cannot move up %d levels" arg)
+ (error "Cannot move up %d levels" arg)
(re-search-backward
(concat "[\n\r]" (regexp-quote
- (make-string (- (match-end 0) (match-beginning 0) arg)
- ?*))
- "[^*]"))
+ (make-string (- (match-end 0) (match-beginning 0) arg)
+ ?*))
+ "[^*]"))
(forward-char 1))))
(defun org-show-hidden-entry ()
"Show an entry where even the heading is hidden."
(save-excursion
(if (not org-noutline-p)
- (progn
- (org-back-to-heading t)
- (org-flag-heading nil)))
+ (progn
+ (org-back-to-heading t)
+ (org-flag-heading nil)))
(org-show-entry)))
(defun org-check-occur-regexp (regexp)
@@ -9673,7 +9712,7 @@ Of course, only for the old outline mode."
(if org-noutline-p
regexp
(if (string-match "^\\^" regexp)
- (concat "[\n\r]" (substring regexp 1))
+ (concat "[\n\r]" (substring regexp 1))
regexp)))
(defun org-flag-heading (flag &optional entry)
@@ -9682,26 +9721,26 @@ When ENTRY is non-nil, show the entire entry."
(save-excursion
(org-back-to-heading t)
(if (not org-noutline-p)
- ;; Make the current headline visible
- (outline-flag-region (max 1 (1- (point))) (point) (if flag ?\r ?\n)))
+ ;; Make the current headline visible
+ (outline-flag-region (max 1 (1- (point))) (point) (if flag ?\r ?\n)))
;; Check if we should show the entire entry
(if entry
- (progn
- (org-show-entry)
- (save-excursion ;; FIXME: Is this the fix for points in the -|
- ;; middle of text? |
- (and (outline-next-heading) ;; |
- (org-flag-heading nil)))) ; show the next heading _|
+ (progn
+ (org-show-entry)
+ (save-excursion ;; FIXME: Is this the fix for points in the -|
+ ;; middle of text? |
+ (and (outline-next-heading) ;; |
+ (org-flag-heading nil)))) ; show the next heading _|
(outline-flag-region (max 1 (1- (point)))
- (save-excursion (outline-end-of-heading) (point))
- (if org-noutline-p
- flag
- (if flag ?\r ?\n))))))
+ (save-excursion (outline-end-of-heading) (point))
+ (if org-noutline-p
+ flag
+ (if flag ?\r ?\n))))))
(defun org-show-subtree ()
"Show everything after this heading at deeper levels."
- (outline-flag-region
- (point)
+ (outline-flag-region
+ (point)
(save-excursion
(outline-end-of-subtree) (outline-next-heading) (point))
(if org-noutline-p nil ?\n)))
@@ -9712,7 +9751,7 @@ Show the heading too, if it is currently invisible."
(interactive)
(save-excursion
(org-back-to-heading t)
- (outline-flag-region
+ (outline-flag-region
(1- (point))
(save-excursion
(re-search-forward (concat "[\r\n]\\(" outline-regexp "\\)") nil 'move)
@@ -9735,8 +9774,8 @@ Show the heading too, if it is currently invisible."
'(defadvice bookmark-jump (after org-make-visible activate)
"Make the position visible."
(and (eq major-mode 'org-mode)
- (org-invisible-p)
- (org-show-hierarchy-above))))
+ (org-invisible-p)
+ (org-show-hierarchy-above))))
;;; Finish up
diff --git a/lisp/textmodes/page-ext.el b/lisp/textmodes/page-ext.el
index 2afaafd6012..c8828e1a6d5 100644
--- a/lisp/textmodes/page-ext.el
+++ b/lisp/textmodes/page-ext.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -120,8 +120,8 @@
;;
;; FSF
;; Free Software Foundation
-;; 59 Temple Place - Suite 330
-;; Boston, MA 02111-1307 USA.
+;; 51 Franklin Street, Fifth Floor
+;; Boston, MA 02110-1301 USA.
;; (617) 542-5942
;; gnu@gnu.org
;;
diff --git a/lisp/textmodes/page.el b/lisp/textmodes/page.el
index f033a8504c8..712b1ef12a1 100644
--- a/lisp/textmodes/page.el
+++ b/lisp/textmodes/page.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/paragraphs.el b/lisp/textmodes/paragraphs.el
index 7728ea7b463..c4f7750fe70 100644
--- a/lisp/textmodes/paragraphs.el
+++ b/lisp/textmodes/paragraphs.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/picture.el b/lisp/textmodes/picture.el
index 34b661afcc4..fd788a772e4 100644
--- a/lisp/textmodes/picture.el
+++ b/lisp/textmodes/picture.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/po.el b/lisp/textmodes/po.el
index c2e58d7d582..cf80f02090a 100644
--- a/lisp/textmodes/po.el
+++ b/lisp/textmodes/po.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/refbib.el b/lisp/textmodes/refbib.el
index dedad3b1aa9..7fcfc44fb2d 100644
--- a/lisp/textmodes/refbib.el
+++ b/lisp/textmodes/refbib.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/refer.el b/lisp/textmodes/refer.el
index 2e26e2d3da6..3ff01ef5c76 100644
--- a/lisp/textmodes/refer.el
+++ b/lisp/textmodes/refer.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/refill.el b/lisp/textmodes/refill.el
index d5f3b19cc9c..d49513ccf3f 100644
--- a/lisp/textmodes/refill.el
+++ b/lisp/textmodes/refill.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-auc.el b/lisp/textmodes/reftex-auc.el
index 821eb7feca2..1c6741806f0 100644
--- a/lisp/textmodes/reftex-auc.el
+++ b/lisp/textmodes/reftex-auc.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-cite.el b/lisp/textmodes/reftex-cite.el
index 90ab8b7a3af..6a15665ea21 100644
--- a/lisp/textmodes/reftex-cite.el
+++ b/lisp/textmodes/reftex-cite.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-dcr.el b/lisp/textmodes/reftex-dcr.el
index b73c62a9a0a..2a518ae9d77 100644
--- a/lisp/textmodes/reftex-dcr.el
+++ b/lisp/textmodes/reftex-dcr.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-global.el b/lisp/textmodes/reftex-global.el
index 76c03c13188..f7f635aaf1b 100644
--- a/lisp/textmodes/reftex-global.el
+++ b/lisp/textmodes/reftex-global.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-index.el b/lisp/textmodes/reftex-index.el
index 43e56df6685..a0bc2d85754 100644
--- a/lisp/textmodes/reftex-index.el
+++ b/lisp/textmodes/reftex-index.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-parse.el b/lisp/textmodes/reftex-parse.el
index 0046c1b34b8..76372dc1ddb 100644
--- a/lisp/textmodes/reftex-parse.el
+++ b/lisp/textmodes/reftex-parse.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-ref.el b/lisp/textmodes/reftex-ref.el
index be6f95d6ebc..bc4260367d8 100644
--- a/lisp/textmodes/reftex-ref.el
+++ b/lisp/textmodes/reftex-ref.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-sel.el b/lisp/textmodes/reftex-sel.el
index 725c5122a0b..90f2e057aa8 100644
--- a/lisp/textmodes/reftex-sel.el
+++ b/lisp/textmodes/reftex-sel.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-toc.el b/lisp/textmodes/reftex-toc.el
index e2c58882d2a..a9f1a280dcf 100644
--- a/lisp/textmodes/reftex-toc.el
+++ b/lisp/textmodes/reftex-toc.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex-vars.el b/lisp/textmodes/reftex-vars.el
index b9748b31df2..5f39167bb46 100644
--- a/lisp/textmodes/reftex-vars.el
+++ b/lisp/textmodes/reftex-vars.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/reftex.el b/lisp/textmodes/reftex.el
index 574c17a07f9..a97d122c17e 100644
--- a/lisp/textmodes/reftex.el
+++ b/lisp/textmodes/reftex.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;---------------------------------------------------------------------------
;;
diff --git a/lisp/textmodes/sgml-mode.el b/lisp/textmodes/sgml-mode.el
index 71ef6169302..99cb10ae497 100644
--- a/lisp/textmodes/sgml-mode.el
+++ b/lisp/textmodes/sgml-mode.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -40,7 +40,7 @@
(require 'cl))
(defgroup sgml nil
- "SGML editing mode"
+ "SGML editing mode."
:group 'languages)
(defcustom sgml-basic-offset 2
@@ -668,12 +668,12 @@ If QUIET, do not print a message when there are no attributes for TAG."
(message "No attributes configured."))
(if (stringp (car alist))
(progn
- (insert (if (eq (preceding-char) ? ) "" ? )
+ (insert (if (eq (preceding-char) ?\s) "" ?\s)
(funcall skeleton-transformation (car alist)))
(sgml-value alist))
(setq i (length alist))
(while (> i 0)
- (insert ? )
+ (insert ?\s)
(insert (funcall skeleton-transformation
(setq attribute
(skeleton-read '(completing-read
@@ -683,7 +683,7 @@ If QUIET, do not print a message when there are no attributes for TAG."
(setq i 0)
(sgml-value (assoc (downcase attribute) alist))
(setq i (1- i))))
- (if (eq (preceding-char) ? )
+ (if (eq (preceding-char) ?\s)
(delete-backward-char 1)))
car)))
@@ -699,7 +699,7 @@ With prefix argument, only self insert."
(eq (aref tag 0) ?/))
(self-insert-command (prefix-numeric-value arg))
(sgml-attributes tag)
- (setq last-command-char ? )
+ (setq last-command-char ?\s)
(or (> (point) point)
(self-insert-command 1)))))
@@ -1873,7 +1873,7 @@ The third `match-string' will be the used in the menu.")
(setq toc-index
(cons (cons (concat (make-string
(* 2 (1- (string-to-number (match-string 1))))
- ?\ )
+ ?\s)
(match-string 3))
(line-beginning-position))
toc-index))))
diff --git a/lisp/textmodes/spell.el b/lisp/textmodes/spell.el
index 6afaae83703..99046988036 100644
--- a/lisp/textmodes/spell.el
+++ b/lisp/textmodes/spell.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/table.el b/lisp/textmodes/table.el
index af13c2fe61c..293df6d9c52 100644
--- a/lisp/textmodes/table.el
+++ b/lisp/textmodes/table.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -650,7 +650,7 @@ See `table-insert' for examples about how to use."
:version "22.1")
(defgroup table-hooks nil
- "Hooks for table manipulation utilities"
+ "Hooks for table manipulation utilities."
:group 'table)
(defcustom table-time-before-update 0.2
@@ -1678,7 +1678,7 @@ Inside a table cell has a special keymap.
(setq i 0)
(while (< i columns)
(let ((beg (point)))
- (insert (make-string (car cw) ?\ ))
+ (insert (make-string (car cw) ?\s))
(insert table-cell-vertical-char)
(table--put-cell-line-property beg (1- (point))))
(if (cdr cw) (setq cw (cdr cw)))
@@ -2247,7 +2247,7 @@ table structure."
(end (table--goto-coordinate (cons (cadr this) bottom-border-y)))
(rect (extract-rectangle beg end))
(height (+ (- (cddr this) (cdar this)) 1))
- (blank-line (make-string (- (cadr this) (caar this)) ?\ )))
+ (blank-line (make-string (- (cadr this) (caar this)) ?\s)))
;; delete lines from the bottom of the cell
(setcdr (nthcdr (- height bottom-budget 1) rect) (nthcdr height rect))
;; delete lines from the top of the cell
@@ -3363,7 +3363,7 @@ Currently this method is for LaTeX only."
;; insert a column separator and column/multicolumn contents
(with-current-buffer dest-buffer
(unless first-p
- (insert (if (eq (char-before) ?\ ) "" " ") "& "))
+ (insert (if (eq (char-before) ?\s) "" " ") "& "))
(if (> span 1)
(insert (format "\\multicolumn{%d}{%sl|}{%s}" span (if first-p "|" "") line))
(insert line)))
@@ -3379,7 +3379,7 @@ Currently this method is for LaTeX only."
(setq i (1+ i)))
(funcall insert-column start x1))
(with-current-buffer dest-buffer
- (insert (if (eq (char-before) ?\ ) "" " ") "\\\\\n"))))
+ (insert (if (eq (char-before) ?\s) "" " ") "\\\\\n"))))
(setq y (1+ y)))
(with-current-buffer dest-buffer
(insert "\\hline\n"))
@@ -3534,7 +3534,7 @@ consists from cells of same height."
;; insert the remaining area while appending blank lines below it
(table--insert-rectangle
(append rect (make-list (+ 2 (- (cdr rb-coord) (cdr lu-coord)))
- (make-string (+ 2 (- (car rb-coord) (car lu-coord))) ?\ ))))
+ (make-string (+ 2 (- (car rb-coord) (car lu-coord))) ?\s))))
;; remove the appended blank lines below the table if they are unnecessary
(table--goto-coordinate (cons 0 (- (cdr bt-coord) (- (cdr rb-coord) (cdr lu-coord)))))
(table--remove-blank-lines (+ 2 (- (cdr rb-coord) (cdr lu-coord))))
@@ -4014,7 +4014,7 @@ converts a table into plain text without frames. It is a companion to
(unless (eolp)
(delete-char 1)))
(delete-char -1)
- (insert ?\ )
+ (insert ?\s)
(forward-char -1)))
(setq n (1+ n)))
(setq table-inhibit-auto-fill-paragraph t))
@@ -4446,16 +4446,16 @@ Replace frame characters with spaces."
(move-to-column col)
(table--spacify-frame))))
(delete-char 1)
- (insert-before-markers ?\ ))
+ (insert-before-markers ?\s))
((table--cell-horizontal-char-p (char-after))
(while (progn
(delete-char 1)
- (insert-before-markers ?\ )
+ (insert-before-markers ?\s)
(table--cell-horizontal-char-p (char-after)))))
((eq (char-after) table-cell-vertical-char)
(while (let ((col (current-column)))
(delete-char 1)
- (insert-before-markers ?\ )
+ (insert-before-markers ?\s)
(and (zerop (forward-line 1))
(zerop (current-column))
(move-to-column col)
@@ -4611,7 +4611,7 @@ list. This list can be any vertical list within the table."
(table--untabify-line)
(delete-char columns-to-extend))
(table--untabify-line (point))
- (insert (make-string columns-to-extend ?\ )))
+ (insert (make-string columns-to-extend ?\s)))
(setcdr coord (1- (cdr coord)))))
(table--goto-coordinate (caar (last top-to-bottom-coord-list)))
(let ((coord (table--get-coordinate (cdr (table--horizontal-cell-list nil 'first-only 'bottom)))))
@@ -4625,7 +4625,7 @@ list. This list can be any vertical list within the table."
(table--untabify-line)
(delete-char columns-to-extend))
(table--untabify-line (point))
- (insert (make-string columns-to-extend ?\ )))
+ (insert (make-string columns-to-extend ?\s)))
(setcdr coord (1+ (cdr coord)))))
(while (<= (cdr beg-coord) (cdr end-coord))
(table--untabify-line (table--goto-coordinate beg-coord 'no-extension))
@@ -4854,7 +4854,7 @@ in the list."
(insert char)
(unless (eolp)
(delete-char 1))))
- (if (not (eq char ?\ ))
+ (if (not (eq char ?\s))
(if char (insert char))
(if (not (looking-at "\\s *$"))
(if (and table-fixed-width-mode
@@ -5398,7 +5398,7 @@ works better than the previous versions however not fully compatible.
(defun table--cell-blank-str (&optional n)
"Return blank table cell string of length N."
- (let ((str (make-string (or n 1) ?\ )))
+ (let ((str (make-string (or n 1) ?\s)))
(table--put-cell-content-property 0 (length str) str)
str))
@@ -5481,7 +5481,7 @@ chopped location is indicated with table-word-continuation-char."
(and (zerop (forward-line 1))
(< (point) end)))
(t (forward-char -1)
- (insert-before-markers (if (equal (char-before) ?\ ) ?\ table-word-continuation-char)
+ (insert-before-markers (if (equal (char-before) ?\s) ?\s table-word-continuation-char)
"\n")
t)))))
diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el
index e8a00507fdb..87af346af6a 100644
--- a/lisp/textmodes/tex-mode.el
+++ b/lisp/textmodes/tex-mode.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -40,17 +40,17 @@
(require 'compile)
(defgroup tex-file nil
- "TeX files and directories"
+ "TeX files and directories."
:prefix "tex-"
:group 'tex)
(defgroup tex-run nil
- "Running external commands from TeX mode"
+ "Running external commands from TeX mode."
:prefix "tex-"
:group 'tex)
(defgroup tex-view nil
- "Viewing and printing TeX files"
+ "Viewing and printing TeX files."
:prefix "tex-"
:group 'tex)
@@ -1114,7 +1114,7 @@ inserts \" characters."
(delete-char (length tex-open-quote))
t)))
(self-insert-command (prefix-numeric-value arg))
- (insert (if (memq (char-syntax (preceding-char)) '(?\( ?> ?\ ))
+ (insert (if (memq (char-syntax (preceding-char)) '(?\( ?> ?\s))
tex-open-quote tex-close-quote))))
(defun tex-validate-buffer ()
@@ -2421,7 +2421,7 @@ There might be text before point."
(+ indent (current-column) tex-indent-item))
(t
(let ((col (current-column)))
- (if (or (not (eq (char-syntax (or (char-after pos) ?\ )) ?\())
+ (if (or (not (eq (char-syntax (or (char-after pos) ?\s)) ?\())
;; Can't be an arg if there's an empty line inbetween.
(save-excursion (re-search-forward "^[ \t]*$" pos t)))
;; If the first char was not an open-paren, there's
diff --git a/lisp/textmodes/texinfmt.el b/lisp/textmodes/texinfmt.el
index ad029266f3b..8425d691d77 100644
--- a/lisp/textmodes/texinfmt.el
+++ b/lisp/textmodes/texinfmt.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/texinfo.el b/lisp/textmodes/texinfo.el
index aac70dd1e23..693ab4e608e 100644
--- a/lisp/textmodes/texinfo.el
+++ b/lisp/textmodes/texinfo.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Todo:
@@ -44,7 +44,7 @@
(eval-when-compile (require 'tex-mode) (require 'cl))
(defgroup texinfo nil
- "Texinfo Mode"
+ "Texinfo Mode."
:group 'docs)
;;;###autoload
@@ -701,7 +701,7 @@ With prefix argument or inside @code or @example, inserts a plain \"."
(setq in-env t)))))
(self-insert-command (prefix-numeric-value arg))
(insert
- (if (memq (char-syntax (preceding-char)) '(?\( ?> ?\ ))
+ (if (memq (char-syntax (preceding-char)) '(?\( ?> ?\s))
texinfo-open-quote
texinfo-close-quote)))))
diff --git a/lisp/textmodes/texnfo-upd.el b/lisp/textmodes/texnfo-upd.el
index 6fac040c287..dbd9b8a5c67 100644
--- a/lisp/textmodes/texnfo-upd.el
+++ b/lisp/textmodes/texnfo-upd.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/text-mode.el b/lisp/textmodes/text-mode.el
index ebe4a57a2e9..0737f64f768 100644
--- a/lisp/textmodes/text-mode.el
+++ b/lisp/textmodes/text-mode.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/tildify.el b/lisp/textmodes/tildify.el
index c8dcc4dba11..469cd73cd66 100644
--- a/lisp/textmodes/tildify.el
+++ b/lisp/textmodes/tildify.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/textmodes/two-column.el b/lisp/textmodes/two-column.el
index 71687f431c0..30429638cb8 100644
--- a/lisp/textmodes/two-column.el
+++ b/lisp/textmodes/two-column.el
@@ -33,8 +33,8 @@
;; GNU Emacs; vidu la dosieron COPYING. with GNU Emacs; see the file
;; Alikaze skribu al la COPYING. If not, write to the
-;; Free Software Foundation, 59 Temple Place - Suite 330
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, 51 Franklin Street, Fifth Floor
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -200,7 +200,7 @@
;;;;; variable declarations ;;;;;
(defgroup two-column nil
- "Minor mode for editing of two-column text"
+ "Minor mode for editing of two-column text."
:prefix "2C-"
:group 'frames)
diff --git a/lisp/textmodes/underline.el b/lisp/textmodes/underline.el
index 18f86eb55de..c380c809a7d 100644
--- a/lisp/textmodes/underline.el
+++ b/lisp/textmodes/underline.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/thumbs.el b/lisp/thumbs.el
index 09fe77cf352..478fb0b6528 100644
--- a/lisp/thumbs.el
+++ b/lisp/thumbs.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;
;; Thanks: Alex Schroeder <alex@gnu.org> for maintaining the package at some time
;; The peoples at #emacs@freenode.net for numerous help
diff --git a/lisp/time-stamp.el b/lisp/time-stamp.el
index 96f48434ab5..bbceb153459 100644
--- a/lisp/time-stamp.el
+++ b/lisp/time-stamp.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/time.el b/lisp/time.el
index f6ddced4d38..a6a4d771a2c 100644
--- a/lisp/time.el
+++ b/lisp/time.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/timezone.el b/lisp/timezone.el
index 62c8f86f79b..cd6e3ce769f 100644
--- a/lisp/timezone.el
+++ b/lisp/timezone.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/tmm.el b/lisp/tmm.el
index aa47012c642..a55b11b17f6 100644
--- a/lisp/tmm.el
+++ b/lisp/tmm.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/toolbar/tool-bar.el b/lisp/toolbar/tool-bar.el
index 5f2e3afd46c..45c51532c9f 100644
--- a/lisp/toolbar/tool-bar.el
+++ b/lisp/toolbar/tool-bar.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/tooltip.el b/lisp/tooltip.el
index cb668f9cd00..fabb154d7ed 100644
--- a/lisp/tooltip.el
+++ b/lisp/tooltip.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -136,6 +136,8 @@ the last mouse movement event that occurred.")
(defvar tooltip-hide-time nil
"Time when the last tooltip was hidden.")
+(defvar gud-tooltip-mode) ;; Prevent warning.
+
;;; Event accessors
(defun tooltip-event-buffer (event)
diff --git a/lisp/tree-widget.el b/lisp/tree-widget.el
index 93b466194a1..407fb65ea49 100644
--- a/lisp/tree-widget.el
+++ b/lisp/tree-widget.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
@@ -31,75 +31,70 @@
;;
;; The following properties are specific to the tree widget:
;;
-;; :open
-;; Set to non-nil to unfold the tree. By default the tree is
-;; folded.
+;; :open
+;; Set to non-nil to expand the tree. By default the tree is
+;; collapsed.
;;
-;; :node
-;; Specify the widget used to represent a tree node. By default
-;; this is an `item' widget which displays the tree-widget :tag
-;; property value if defined or a string representation of the
-;; tree-widget value.
+;; :node
+;; Specify the widget used to represent the value of a tree node.
+;; By default this is an `item' widget which displays the
+;; tree-widget :tag property value if defined, or a string
+;; representation of the tree-widget value.
;;
-;; :keep
-;; Specify a list of properties to keep when the tree is
-;; folded so they can be recovered when the tree is unfolded.
-;; This property can be used in child widgets too.
+;; :keep
+;; Specify a list of properties to keep when the tree is collapsed
+;; so they can be recovered when the tree is expanded. This
+;; property can be used in child widgets too.
;;
-;; :dynargs
-;; Specify a function to be called when the tree is unfolded, to
-;; dynamically provide the tree children in response to an unfold
-;; request. This function will be passed the tree widget and
-;; must return a list of child widgets. That list will be stored
-;; as the :args property of the parent tree.
-
-;; To speed up successive unfold requests, the :dynargs function
-;; can directly return the :args value if non-nil. Refreshing
-;; child values can be achieved by giving the :args property the
-;; value nil, then redrawing the tree.
+;; :expander (obsoletes :dynargs)
+;; Specify a function to be called to dynamically provide the
+;; tree's children in response to an expand request. This function
+;; will be passed the tree widget and must return a list of child
+;; widgets.
;;
-;; :has-children
-;; Specify if this tree has children. This property has meaning
-;; only when used with the above :dynargs one. It indicates that
-;; child widgets exist but will be dynamically provided when
-;; unfolding the node.
+;; *Please note:* Child widgets returned by the :expander function
+;; are stored in the :args property of the tree widget. To speed
+;; up successive expand requests, the :expander function is not
+;; called again when the :args value is non-nil. To refresh child
+;; values, it is necessary to set the :args property to nil, then
+;; redraw the tree.
;;
-;; :open-control (default `tree-widget-open-control')
-;; :close-control (default `tree-widget-close-control')
-;; :empty-control (default `tree-widget-empty-control')
-;; :leaf-control (default `tree-widget-leaf-control')
-;; :guide (default `tree-widget-guide')
-;; :end-guide (default `tree-widget-end-guide')
-;; :no-guide (default `tree-widget-no-guide')
-;; :handle (default `tree-widget-handle')
-;; :no-handle (default `tree-widget-no-handle')
+;; :open-control (default `tree-widget-open-control')
+;; :close-control (default `tree-widget-close-control')
+;; :empty-control (default `tree-widget-empty-control')
+;; :leaf-control (default `tree-widget-leaf-control')
+;; :guide (default `tree-widget-guide')
+;; :end-guide (default `tree-widget-end-guide')
+;; :no-guide (default `tree-widget-no-guide')
+;; :handle (default `tree-widget-handle')
+;; :no-handle (default `tree-widget-no-handle')
+;; Those properties define the widgets used to draw the tree, and
+;; permit to customize its look and feel. For example, using
+;; `item' widgets with these :tag values:
;;
-;; The above nine properties define the widgets used to draw the tree.
-;; For example, using widgets that display this values:
+;; open-control "[-] " (OC)
+;; close-control "[+] " (CC)
+;; empty-control "[X] " (EC)
+;; leaf-control "[>] " (LC)
+;; guide " |" (GU)
+;; noguide " " (NG)
+;; end-guide " `" (EG)
+;; handle "-" (HA)
+;; no-handle " " (NH)
;;
-;; open-control "[-] "
-;; close-control "[+] "
-;; empty-control "[X] "
-;; leaf-control "[>] "
-;; guide " |"
-;; noguide " "
-;; end-guide " `"
-;; handle "-"
-;; no-handle " "
+;; A tree will look like this:
;;
-;; A tree will look like this:
-;;
-;; [-] 1 open-control
-;; |-[+] 1.0 guide+handle+close-control
-;; |-[X] 1.1 guide+handle+empty-control
-;; `-[-] 1.2 end-guide+handle+open-control
-;; |-[>] 1.2.1 no-guide+no-handle+guide+handle+leaf-control
-;; `-[>] 1.2.2 no-guide+no-handle+end-guide+handle+leaf-control
-;;
-;; By default, the tree widget try to use images instead of strings to
-;; draw a nice-looking tree. See the `tree-widget-themes-directory'
-;; and `tree-widget-theme' options for more details.
+;; [-] 1 (OC :node)
+;; |-[+] 1.0 (GU+HA+CC :node)
+;; |-[X] 1.1 (GU+HA+EC :node)
+;; `-[-] 1.2 (EG+HA+OC :node)
+;; |-[>] 1.2.1 (NG+NH+GU+HA+LC child)
+;; `-[>] 1.2.2 (NG+NH+EG+HA+LC child)
;;
+;; By default, images will be used instead of strings to draw a
+;; nice-looking tree. See the `tree-widget-image-enable',
+;; `tree-widget-themes-directory', and `tree-widget-theme' options for
+;; more details.
;;; History:
;;
@@ -111,70 +106,75 @@
;;; Customization
;;
(defgroup tree-widget nil
- "Customization support for the Tree Widget Library."
+ "Customization support for the Tree Widget library."
:version "22.1"
:group 'widgets)
(defcustom tree-widget-image-enable
(not (or (featurep 'xemacs) (< emacs-major-version 21)))
- "*non-nil means that tree-widget will try to use images."
+ "*Non-nil means that tree-widget will try to use images."
:type 'boolean
:group 'tree-widget)
(defcustom tree-widget-themes-directory "tree-widget"
- "*Name of the directory where to lookup for image themes.
+ "*Name of the directory where to look up for image themes.
When nil use the directory where the tree-widget library is located.
-When a relative name is specified, try to locate that sub-directory in
+When a relative name is specified, try to locate that sub directory in
`load-path', then in the data directory, and use the first one found.
-Default is to search for a \"tree-widget\" sub-directory.
-
-The data directory is the value of:
- - the variable `data-directory' on GNU Emacs;
- - `(locate-data-directory \"tree-widget\")' on XEmacs."
+The data directory is the value of the variable `data-directory' on
+Emacs, and what `(locate-data-directory \"tree-widget\")' returns on
+XEmacs.
+The default is to use the \"tree-widget\" relative name."
:type '(choice (const :tag "Default" "tree-widget")
(const :tag "With the library" nil)
(directory :format "%{%t%}:\n%v"))
:group 'tree-widget)
(defcustom tree-widget-theme nil
- "*Name of the theme to use to lookup for images.
-The theme name must be a subdirectory in `tree-widget-themes-directory'.
-If nil use the \"default\" theme.
-When a image is not found in the current theme, the \"default\" theme
-is searched too.
-A complete theme should contain images with these file names:
-
-Name Represents
------------ ------------------------------------------------
-open opened node (for example an open folder)
-close closed node (for example a close folder)
-empty empty node (a node without children)
-leaf leaf node (for example a document)
-guide a vertical guide line
-no-guide an invisible guide line
-end-guide the end of a vertical guide line
-handle an horizontal line drawn before a node control
-no-handle an invisible handle
------------ ------------------------------------------------"
+ "*Name of the theme where to look up for images.
+It must be a sub directory of the directory specified in variable
+`tree-widget-themes-directory'. The default is \"default\". When an
+image is not found in this theme, the default theme is searched too.
+A complete theme must contain images with these file names with a
+supported extension (see also `tree-widget-image-formats'):
+
+\"open\"
+ Represent an expanded node.
+\"close\"
+ Represent a collapsed node.
+\"empty\"
+ Represent an expanded node with no child.
+\"leaf\"
+ Represent a leaf node.
+\"guide\"
+ A vertical guide line.
+\"no-guide\"
+ An invisible vertical guide line.
+\"end-guide\"
+ End of a vertical guide line.
+\"handle\"
+ Horizontal guide line that joins the vertical guide line to a node.
+\"no-handle\"
+ An invisible handle."
:type '(choice (const :tag "Default" nil)
(string :tag "Name"))
:group 'tree-widget)
(defcustom tree-widget-image-properties-emacs
'(:ascent center :mask (heuristic t))
- "*Properties of GNU Emacs images."
+ "*Default properties of Emacs images."
:type 'plist
:group 'tree-widget)
(defcustom tree-widget-image-properties-xemacs
nil
- "*Properties of XEmacs images."
+ "*Default properties of XEmacs images."
:type 'plist
:group 'tree-widget)
;;; Image support
;;
-(eval-and-compile ;; GNU Emacs/XEmacs compatibility stuff
+(eval-and-compile ;; Emacs/XEmacs compatibility stuff
(cond
;; XEmacs
((featurep 'xemacs)
@@ -184,12 +184,11 @@ no-handle an invisible handle
widget-glyph-enable
(console-on-window-system-p)))
(defsubst tree-widget-create-image (type file &optional props)
- "Create an image of type TYPE from FILE.
-Give the image the specified properties PROPS.
-Return the new image."
+ "Create an image of type TYPE from FILE, and return it.
+Give the image the specified properties PROPS."
(apply 'make-glyph `([,type :file ,file ,@props])))
(defsubst tree-widget-image-formats ()
- "Return the list of image formats, file name suffixes associations.
+ "Return the alist of image formats/file name extensions.
See also the option `widget-image-file-name-suffixes'."
(delq nil
(mapcar
@@ -197,7 +196,7 @@ See also the option `widget-image-file-name-suffixes'."
(and (valid-image-instantiator-format-p (car fmt)) fmt))
widget-image-file-name-suffixes)))
)
- ;; GNU Emacs
+ ;; Emacs
(t
(defsubst tree-widget-use-image-p ()
"Return non-nil if image support is currently enabled."
@@ -205,13 +204,12 @@ See also the option `widget-image-file-name-suffixes'."
widget-image-enable
(display-images-p)))
(defsubst tree-widget-create-image (type file &optional props)
- "Create an image of type TYPE from FILE.
-Give the image the specified properties PROPS.
-Return the new image."
+ "Create an image of type TYPE from FILE, and return it.
+Give the image the specified properties PROPS."
(apply 'create-image `(,file ,type nil ,@props)))
(defsubst tree-widget-image-formats ()
- "Return the list of image formats, file name suffixes associations.
-See also the option `widget-image-conversion'."
+ "Return the alist of image formats/file name extensions.
+See also the option `widget-image-file-name-suffixes'."
(delq nil
(mapcar
#'(lambda (fmt)
@@ -229,12 +227,12 @@ See also the option `widget-image-conversion'."
(defsubst tree-widget-set-theme (&optional name)
"In the current buffer, set the theme to use for images.
-The current buffer should be where the tree widget is drawn.
-Optional argument NAME is the name of the theme to use, which defaults
+The current buffer must be where the tree widget is drawn.
+Optional argument NAME is the name of the theme to use. It defaults
to the value of the variable `tree-widget-theme'.
-Does nothing if NAME is the name of the current theme."
+Does nothing if NAME is already the current theme."
(or name (setq name (or tree-widget-theme "default")))
- (unless (equal name (tree-widget-theme-name))
+ (unless (string-equal name (tree-widget-theme-name))
(set (make-local-variable 'tree-widget--theme)
(make-vector 4 nil))
(aset tree-widget--theme 0 name)))
@@ -265,10 +263,10 @@ specified directory is not accessible."
(t
(let ((path
(append load-path
- ;; The data directory depends on which, GNU
- ;; Emacs or XEmacs, is running.
(list (if (fboundp 'locate-data-directory)
+ ;; XEmacs
(locate-data-directory "tree-widget")
+ ;; Emacs
data-directory)))))
(while (and path (not found))
(when (car path)
@@ -286,10 +284,12 @@ specified directory is not accessible."
(aset tree-widget--theme 2 props))
(defun tree-widget-image-properties (file)
- "Return properties of images in current theme.
-If the \"tree-widget-theme-setup.el\" file exists in the directory
-where is located the image FILE, load it to setup theme images
-properties. Typically that file should contain something like this:
+ "Return the properties of an image in current theme.
+FILE is the absolute file name of an image.
+
+If there is a \"tree-widget-theme-setup\" library in the theme
+directory, where is located FILE, load it to setup theme images
+properties. Typically it should contain something like this:
(tree-widget-set-image-properties
(if (featurep 'xemacs)
@@ -297,148 +297,170 @@ properties. Typically that file should contain something like this:
'(:ascent center :mask (heuristic t))
))
-By default, use the global properties provided in variables
-`tree-widget-image-properties-emacs' or
+Default global properties are provided for respectively Emacs and
+XEmacs in the variables `tree-widget-image-properties-emacs', and
`tree-widget-image-properties-xemacs'."
;; If properties are in the cache, use them.
- (or (aref tree-widget--theme 2)
- (progn
- ;; Load tree-widget-theme-setup if available.
- (load (expand-file-name
- "tree-widget-theme-setup"
- (file-name-directory file)) t t)
- ;; If properties have been setup, use them.
- (or (aref tree-widget--theme 2)
- ;; By default, use supplied global properties.
- (tree-widget-set-image-properties
- (if (featurep 'xemacs)
- tree-widget-image-properties-xemacs
- tree-widget-image-properties-emacs))))))
+ (let ((plist (aref tree-widget--theme 2)))
+ (unless plist
+ ;; Load tree-widget-theme-setup if available.
+ (load (expand-file-name "tree-widget-theme-setup"
+ (file-name-directory file)) t t)
+ ;; If properties have been setup, use them.
+ (unless (setq plist (aref tree-widget--theme 2))
+ ;; By default, use supplied global properties.
+ (setq plist (if (featurep 'xemacs)
+ tree-widget-image-properties-xemacs
+ tree-widget-image-properties-emacs))
+ ;; Setup the cache.
+ (tree-widget-set-image-properties plist)))
+ plist))
+
+(defconst tree-widget--cursors
+ ;; Pointer shapes when the mouse pointer is over tree-widget images.
+ ;; This feature works since Emacs 22, and ignored on older versions,
+ ;; and XEmacs.
+ '(
+ ("open" . hand )
+ ("close" . hand )
+ ("empty" . arrow)
+ ("leaf" . arrow)
+ ("guide" . arrow)
+ ("no-guide" . arrow)
+ ("end-guide" . arrow)
+ ("handle" . arrow)
+ ("no-handle" . arrow)
+ ))
+
+(defun tree-widget-lookup-image (name)
+ "Look up in current theme for an image with NAME.
+Search first in current theme, then in default theme (see also the
+variable `tree-widget-theme').
+Return the first image found having a supported format, or nil if not
+found."
+ (let ((default-directory (tree-widget-themes-directory)))
+ (when default-directory
+ (let (file (theme (tree-widget-theme-name)))
+ (catch 'found
+ (dolist (dir (if (string-equal theme "default")
+ '("default") (list theme "default")))
+ (dolist (fmt (tree-widget-image-formats))
+ (dolist (ext (cdr fmt))
+ (setq file (expand-file-name (concat name ext) dir))
+ (and
+ (file-readable-p file)
+ (file-regular-p file)
+ (throw
+ 'found
+ (tree-widget-create-image
+ (car fmt) file
+ ;; Add the pointer shape
+ (cons :pointer
+ (cons
+ (cdr (assoc name tree-widget--cursors))
+ (tree-widget-image-properties file)))))))))
+ nil)))))
(defun tree-widget-find-image (name)
"Find the image with NAME in current theme.
NAME is an image file name sans extension.
-Search first in current theme, then in default theme.
-A theme is a sub-directory of the root theme directory specified in
-variable `tree-widget-themes-directory'.
-Return the first image found having a supported format in those
-returned by the function `tree-widget-image-formats', or nil if not
-found."
+Return the image found, or nil if not found."
(when (tree-widget-use-image-p)
;; Ensure there is an active theme.
(tree-widget-set-theme (tree-widget-theme-name))
- ;; If the image is in the cache, return it.
- (or (cdr (assoc name (aref tree-widget--theme 3)))
- ;; Search the image in the current, then default themes.
- (let ((default-directory (tree-widget-themes-directory)))
- (when default-directory
- (let* ((theme (tree-widget-theme-name))
- (path (mapcar 'expand-file-name
- (if (equal theme "default")
- '("default")
- (list theme "default"))))
- (formats (tree-widget-image-formats))
- (found
- (catch 'found
- (dolist (dir path)
- (dolist (fmt formats)
- (dolist (ext (cdr fmt))
- (let ((file (expand-file-name
- (concat name ext) dir)))
- (and (file-readable-p file)
- (file-regular-p file)
- (throw 'found
- (cons (car fmt) file)))))))
- nil)))
- (when found
- (let ((image
- (tree-widget-create-image
- (car found) (cdr found)
- (tree-widget-image-properties (cdr found)))))
- ;; Store image in the cache for later use.
- (push (cons name image) (aref tree-widget--theme 3))
- image))))))))
+ (let ((image (assoc name (aref tree-widget--theme 3))))
+ ;; The image NAME is found in the cache.
+ (if image
+ (cdr image)
+ ;; Search the image in current, and default themes.
+ (prog1
+ (setq image (tree-widget-lookup-image name))
+ ;; Store image reference in the cache for later use.
+ (push (cons name image) (aref tree-widget--theme 3))))
+ )))
;;; Widgets
;;
(defvar tree-widget-button-keymap
- (let (parent-keymap mouse-button1 keymap)
- (if (featurep 'xemacs)
- (setq parent-keymap widget-button-keymap
- mouse-button1 [button1])
- (setq parent-keymap widget-keymap
- mouse-button1 [down-mouse-1]))
- (setq keymap (copy-keymap parent-keymap))
- (define-key keymap mouse-button1 'widget-button-click)
- keymap)
- "Keymap used inside node handle buttons.")
+ (let ((km (make-sparse-keymap)))
+ (if (boundp 'widget-button-keymap)
+ ;; XEmacs
+ (progn
+ (set-keymap-parent km widget-button-keymap)
+ (define-key km [button1] 'widget-button-click))
+ ;; Emacs
+ (set-keymap-parent km widget-keymap)
+ (define-key km [down-mouse-1] 'widget-button-click))
+ km)
+ "Keymap used inside node buttons.
+Handle mouse button 1 click on buttons.")
(define-widget 'tree-widget-control 'push-button
- "Base `tree-widget' control."
+ "Basic widget other tree-widget node buttons are derived from."
:format "%[%t%]"
:button-keymap tree-widget-button-keymap ; XEmacs
:keymap tree-widget-button-keymap ; Emacs
)
(define-widget 'tree-widget-open-control 'tree-widget-control
- "Control widget that represents a opened `tree-widget' node."
+ "Button for an expanded tree-widget node."
:tag "[-] "
;;:tag-glyph (tree-widget-find-image "open")
:notify 'tree-widget-close-node
- :help-echo "Hide node"
+ :help-echo "Collapse node"
)
(define-widget 'tree-widget-empty-control 'tree-widget-open-control
- "Control widget that represents an empty opened `tree-widget' node."
+ "Button for an expanded tree-widget node with no child."
:tag "[X] "
;;:tag-glyph (tree-widget-find-image "empty")
)
(define-widget 'tree-widget-close-control 'tree-widget-control
- "Control widget that represents a closed `tree-widget' node."
+ "Button for a collapsed tree-widget node."
:tag "[+] "
;;:tag-glyph (tree-widget-find-image "close")
:notify 'tree-widget-open-node
- :help-echo "Show node"
+ :help-echo "Expand node"
)
(define-widget 'tree-widget-leaf-control 'item
- "Control widget that represents a leaf node."
- :tag " " ;; Need at least a char to display the image :-(
+ "Representation of a tree-widget leaf node."
+ :tag " " ;; Need at least one char to display the image :-(
;;:tag-glyph (tree-widget-find-image "leaf")
:format "%t"
)
(define-widget 'tree-widget-guide 'item
- "Widget that represents a guide line."
+ "Vertical guide line."
:tag " |"
;;:tag-glyph (tree-widget-find-image "guide")
:format "%t"
)
(define-widget 'tree-widget-end-guide 'item
- "Widget that represents the end of a guide line."
+ "End of a vertical guide line."
:tag " `"
;;:tag-glyph (tree-widget-find-image "end-guide")
:format "%t"
)
(define-widget 'tree-widget-no-guide 'item
- "Widget that represents an invisible guide line."
+ "Invisible vertical guide line."
:tag " "
;;:tag-glyph (tree-widget-find-image "no-guide")
:format "%t"
)
(define-widget 'tree-widget-handle 'item
- "Widget that represent a node handle."
+ "Horizontal guide line that joins a vertical guide line to a node."
:tag " "
;;:tag-glyph (tree-widget-find-image "handle")
:format "%t"
)
(define-widget 'tree-widget-no-handle 'item
- "Widget that represent an invisible node handle."
+ "Invisible handle."
:tag " "
;;:tag-glyph (tree-widget-find-image "no-handle")
:format "%t"
@@ -449,96 +471,60 @@ found."
:format "%v"
:convert-widget 'widget-types-convert-widget
:value-get 'widget-value-value-get
+ :value-delete 'widget-children-value-delete
:value-create 'tree-widget-value-create
- :value-delete 'tree-widget-value-delete
+ :open-control 'tree-widget-open-control
+ :close-control 'tree-widget-close-control
+ :empty-control 'tree-widget-empty-control
+ :leaf-control 'tree-widget-leaf-control
+ :guide 'tree-widget-guide
+ :end-guide 'tree-widget-end-guide
+ :no-guide 'tree-widget-no-guide
+ :handle 'tree-widget-handle
+ :no-handle 'tree-widget-no-handle
)
;;; Widget support functions
;;
(defun tree-widget-p (widget)
- "Return non-nil if WIDGET is a `tree-widget' widget."
+ "Return non-nil if WIDGET is a tree-widget."
(let ((type (widget-type widget)))
(while (and type (not (eq type 'tree-widget)))
(setq type (widget-type (get type 'widget-type))))
(eq type 'tree-widget)))
-(defsubst tree-widget-get-super (widget property)
- "Return WIDGET's inherited PROPERTY value."
- (widget-get (get (widget-type (get (widget-type widget)
- 'widget-type))
- 'widget-type)
- property))
-
-(defsubst tree-widget-node (widget)
- "Return the tree WIDGET :node value.
-If not found setup a default 'item' widget."
+(defun tree-widget-node (widget)
+ "Return WIDGET's :node child widget.
+If not found, setup an `item' widget as default.
+Signal an error if the :node widget is a tree-widget.
+WIDGET is, or derives from, a tree-widget."
(let ((node (widget-get widget :node)))
- (unless node
+ (if node
+ ;; Check that the :node widget is not a tree-widget.
+ (and (tree-widget-p node)
+ (error "Invalid tree-widget :node %S" node))
+ ;; Setup an item widget as default :node.
(setq node `(item :tag ,(or (widget-get widget :tag)
(widget-princ-to-string
(widget-value widget)))))
(widget-put widget :node node))
node))
-(defsubst tree-widget-open-control (widget)
- "Return the opened node control specified in WIDGET."
- (or (widget-get widget :open-control)
- 'tree-widget-open-control))
-
-(defsubst tree-widget-close-control (widget)
- "Return the closed node control specified in WIDGET."
- (or (widget-get widget :close-control)
- 'tree-widget-close-control))
-
-(defsubst tree-widget-empty-control (widget)
- "Return the empty node control specified in WIDGET."
- (or (widget-get widget :empty-control)
- 'tree-widget-empty-control))
-
-(defsubst tree-widget-leaf-control (widget)
- "Return the leaf node control specified in WIDGET."
- (or (widget-get widget :leaf-control)
- 'tree-widget-leaf-control))
-
-(defsubst tree-widget-guide (widget)
- "Return the guide line widget specified in WIDGET."
- (or (widget-get widget :guide)
- 'tree-widget-guide))
-
-(defsubst tree-widget-end-guide (widget)
- "Return the end of guide line widget specified in WIDGET."
- (or (widget-get widget :end-guide)
- 'tree-widget-end-guide))
-
-(defsubst tree-widget-no-guide (widget)
- "Return the invisible guide line widget specified in WIDGET."
- (or (widget-get widget :no-guide)
- 'tree-widget-no-guide))
-
-(defsubst tree-widget-handle (widget)
- "Return the node handle line widget specified in WIDGET."
- (or (widget-get widget :handle)
- 'tree-widget-handle))
-
-(defsubst tree-widget-no-handle (widget)
- "Return the node invisible handle line widget specified in WIDGET."
- (or (widget-get widget :no-handle)
- 'tree-widget-no-handle))
-
(defun tree-widget-keep (arg widget)
- "Save in ARG the WIDGET properties specified by :keep."
+ "Save in ARG the WIDGET's properties specified by :keep."
(dolist (prop (widget-get widget :keep))
(widget-put arg prop (widget-get widget prop))))
(defun tree-widget-children-value-save (widget &optional args node)
"Save WIDGET children values.
-Children properties and values are saved in ARGS if non-nil else in
-WIDGET :args property value. Data node properties and value are saved
-in NODE if non-nil else in WIDGET :node property value."
- (let ((args (or args (widget-get widget :args)))
- (node (or node (tree-widget-node widget)))
- (children (widget-get widget :children))
- (node-child (widget-get widget :tree-widget--node))
+WIDGET is, or derives from, a tree-widget.
+Children properties and values are saved in ARGS if non-nil, else in
+WIDGET's :args property value. Properties and values of the
+WIDGET's :node sub-widget are saved in NODE if non-nil, else in
+WIDGET's :node sub-widget."
+ (let ((args (cons (or node (widget-get widget :node))
+ (or args (widget-get widget :args))))
+ (children (widget-get widget :children))
arg child)
(while (and args children)
(setq arg (car args)
@@ -550,7 +536,7 @@ in NODE if non-nil else in WIDGET :node property value."
(progn
;; Backtrack :args and :node properties.
(widget-put arg :args (widget-get child :args))
- (widget-put arg :node (tree-widget-node child))
+ (widget-put arg :node (widget-get child :node))
;; Save :open property.
(widget-put arg :open (widget-get child :open))
;; The node is open.
@@ -563,30 +549,22 @@ in NODE if non-nil else in WIDGET :node property value."
(tree-widget-children-value-save
child (widget-get arg :args) (widget-get arg :node))))
;;;; Another non tree node.
- ;; Save the widget value
+ ;; Save the widget value.
(widget-put arg :value (widget-value child))
;; Save properties specified in :keep.
- (tree-widget-keep arg child)))
- (when (and node node-child)
- ;; Assume that the node child widget is not a tree!
- ;; Save the node child widget value.
- (widget-put node :value (widget-value node-child))
- ;; Save the node child properties specified in :keep.
- (tree-widget-keep node node-child))
- ))
+ (tree-widget-keep arg child)))))
(defvar tree-widget-after-toggle-functions nil
- "Hooks run after toggling a `tree-widget' folding.
-Each function will receive the `tree-widget' as its unique argument.
-This variable should be local to each buffer used to display
-widgets.")
+ "Hooks run after toggling a tree-widget expansion.
+Each function will receive the tree-widget as its unique argument.
+This hook should be local in the buffer used to display widgets.")
(defun tree-widget-close-node (widget &rest ignore)
- "Close the `tree-widget' node associated to this control WIDGET.
-WIDGET's parent should be a `tree-widget'.
+ "Collapse the tree-widget, parent of WIDGET.
+WIDGET is, or derives from, a tree-widget-open-control widget.
IGNORE other arguments."
(let ((tree (widget-get widget :parent)))
- ;; Before folding the node up, save children values so next open
+ ;; Before to collapse the node, save children values so next open
;; can recover them.
(tree-widget-children-value-save tree)
(widget-put tree :open nil)
@@ -594,131 +572,104 @@ IGNORE other arguments."
(run-hook-with-args 'tree-widget-after-toggle-functions tree)))
(defun tree-widget-open-node (widget &rest ignore)
- "Open the `tree-widget' node associated to this control WIDGET.
-WIDGET's parent should be a `tree-widget'.
+ "Expand the tree-widget, parent of WIDGET.
+WIDGET is, or derives from, a tree-widget-close-control widget.
IGNORE other arguments."
(let ((tree (widget-get widget :parent)))
(widget-put tree :open t)
(widget-value-set tree t)
(run-hook-with-args 'tree-widget-after-toggle-functions tree)))
-(defun tree-widget-value-delete (widget)
- "Delete tree WIDGET children."
- ;; Delete children
- (widget-children-value-delete widget)
- ;; Delete node child
- (widget-delete (widget-get widget :tree-widget--node))
- (widget-put widget :tree-widget--node nil))
-
(defun tree-widget-value-create (tree)
- "Create the TREE widget."
- (let* ((widget-image-enable (tree-widget-use-image-p)) ; Emacs
- (widget-glyph-enable widget-image-enable) ; XEmacs
- (node (tree-widget-node tree))
- (flags (widget-get tree :tree-widget--guide-flags))
+ "Create the TREE tree-widget."
+ (let* ((node (tree-widget-node tree))
+ (flags (widget-get tree :tree-widget--guide-flags))
(indent (widget-get tree :indent))
+ ;; Setup widget's image support. Looking up for images, and
+ ;; setting widgets' :tag-glyph is done here, to allow to
+ ;; dynamically change the image theme.
+ (widget-image-enable (tree-widget-use-image-p)) ; Emacs
+ (widget-glyph-enable widget-image-enable) ; XEmacs
children buttons)
(and indent (not (widget-get tree :parent))
(insert-char ?\ indent))
(if (widget-get tree :open)
-;;;; Unfolded node.
+;;;; Expanded node.
(let ((args (widget-get tree :args))
- (dynargs (widget-get tree :dynargs))
- (guide (tree-widget-guide tree))
- (noguide (tree-widget-no-guide tree))
- (endguide (tree-widget-end-guide tree))
- (handle (tree-widget-handle tree))
- (nohandle (tree-widget-no-handle tree))
- ;; Lookup for images and set widgets' tag-glyphs here,
- ;; to allow to dynamically change the image theme.
+ (xpandr (or (widget-get tree :expander)
+ (widget-get tree :dynargs)))
+ (leaf (widget-get tree :leaf-control))
+ (guide (widget-get tree :guide))
+ (noguide (widget-get tree :no-guide))
+ (endguide (widget-get tree :end-guide))
+ (handle (widget-get tree :handle))
+ (nohandle (widget-get tree :no-handle))
+ (leafi (tree-widget-find-image "leaf"))
(guidi (tree-widget-find-image "guide"))
(noguidi (tree-widget-find-image "no-guide"))
(endguidi (tree-widget-find-image "end-guide"))
(handli (tree-widget-find-image "handle"))
(nohandli (tree-widget-find-image "no-handle"))
child)
- (when dynargs
- ;; Request the definition of dynamic children
- (setq dynargs (funcall dynargs tree))
- ;; Unless children have changed, reuse the widgets
- (unless (eq args dynargs)
- (setq args (mapcar 'widget-convert dynargs))
- (widget-put tree :args args)))
- ;; Insert the node control
+ ;; Request children at run time, when not already done.
+ (when (and (not args) xpandr)
+ (setq args (mapcar 'widget-convert (funcall xpandr tree)))
+ (widget-put tree :args args))
+ ;; Insert the node "open" button.
(push (widget-create-child-and-convert
- tree (if args (tree-widget-open-control tree)
- (tree-widget-empty-control tree))
+ tree (widget-get
+ tree (if args :open-control :empty-control))
:tag-glyph (tree-widget-find-image
(if args "open" "empty")))
buttons)
- ;; Insert the node element
- (widget-put tree :tree-widget--node
- (widget-create-child-and-convert tree node))
- ;; Insert children
+ ;; Insert the :node element.
+ (push (widget-create-child-and-convert tree node)
+ children)
+ ;; Insert children.
(while args
(setq child (car args)
args (cdr args))
(and indent (insert-char ?\ indent))
- ;; Insert guide lines elements
+ ;; Insert guide lines elements from previous levels.
(dolist (f (reverse flags))
(widget-create-child-and-convert
tree (if f guide noguide)
:tag-glyph (if f guidi noguidi))
(widget-create-child-and-convert
- tree nohandle :tag-glyph nohandli)
- )
+ tree nohandle :tag-glyph nohandli))
+ ;; Insert guide line element for this level.
(widget-create-child-and-convert
tree (if args guide endguide)
:tag-glyph (if args guidi endguidi))
;; Insert the node handle line
(widget-create-child-and-convert
tree handle :tag-glyph handli)
- ;; If leaf node, insert a leaf node control
+ ;; If leaf node, insert a leaf node button.
(unless (tree-widget-p child)
(push (widget-create-child-and-convert
- tree (tree-widget-leaf-control tree)
- :tag-glyph (tree-widget-find-image "leaf"))
+ tree leaf :tag-glyph leafi)
buttons))
- ;; Insert the child element
+ ;; Finally, insert the child widget.
(push (widget-create-child-and-convert
tree child
:tree-widget--guide-flags (cons (if args t) flags))
children)))
-;;;; Folded node.
- ;; Insert the closed node control
+;;;; Collapsed node.
+ ;; Insert the "closed" node button.
(push (widget-create-child-and-convert
- tree (tree-widget-close-control tree)
+ tree (widget-get tree :close-control)
:tag-glyph (tree-widget-find-image "close"))
buttons)
- ;; Insert the node element
- (widget-put tree :tree-widget--node
- (widget-create-child-and-convert tree node)))
- ;; Save widget children and buttons
+ ;; Insert the :node element.
+ (push (widget-create-child-and-convert tree node)
+ children))
+ ;; Save widget children and buttons. The :node child is the first
+ ;; element in children.
(widget-put tree :children (nreverse children))
(widget-put tree :buttons buttons)
))
-
-;;; Utilities
-;;
-(defun tree-widget-map (widget fun)
- "For each WIDGET displayed child call function FUN.
-FUN is called with three arguments like this:
-
- (FUN CHILD IS-NODE WIDGET)
-
-where:
-- - CHILD is the child widget.
-- - IS-NODE is non-nil if CHILD is WIDGET node widget."
- (when (widget-get widget :tree-widget--node)
- (funcall fun (widget-get widget :tree-widget--node) t widget)
- (dolist (child (widget-get widget :children))
- (if (tree-widget-p child)
- ;; The child is a tree node.
- (tree-widget-map child fun)
- ;; Another non tree node.
- (funcall fun child nil widget)))))
(provide 'tree-widget)
-;;; arch-tag: c3a1ada2-1663-41dc-9d16-2479ed8320e8
+;; arch-tag: c3a1ada2-1663-41dc-9d16-2479ed8320e8
;;; tree-widget.el ends here
diff --git a/lisp/type-break.el b/lisp/type-break.el
index 0585e5bc61d..4545351f5a9 100644
--- a/lisp/type-break.el
+++ b/lisp/type-break.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/uniquify.el b/lisp/uniquify.el
index 792a81f3221..9e241a55f8b 100644
--- a/lisp/uniquify.el
+++ b/lisp/uniquify.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -90,7 +90,7 @@
;;; User-visible variables
(defgroup uniquify nil
- "Unique buffer names dependent on file name"
+ "Unique buffer names dependent on file name."
:group 'applications)
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog
index 4148d62c263..0313379814f 100644
--- a/lisp/url/ChangeLog
+++ b/lisp/url/ChangeLog
@@ -1,3 +1,18 @@
+2005-07-04 Lute Kamstra <lute@gnu.org>
+
+ Update FSF's address in GPL notices.
+
+2005-07-04 Juanma Barranquero <lekktu@gmail.com>
+
+ * url-history.el (url-history-track): Doc fix.
+ (url-history): Finish `defgroup' description with period.
+
+ * url-cookie.el (url-cookie):
+ * url-gw.el (url-gateway):
+ * url-news.el (url-news):
+ * url-vars.el (url, url-file, url-cache, url-mime, url-hairy):
+ Finish `defgroup' description with period.
+
2005-06-28 Klaus Straubinger <KSNetz@Arcor.DE> (tiny change)
* url-http.el (url-http-create-request): Call url-recreate-url
diff --git a/lisp/url/url-about.el b/lisp/url/url-about.el
new file mode 100644
index 00000000000..d2fae55b141
--- /dev/null
+++ b/lisp/url/url-about.el
@@ -0,0 +1,106 @@
+;;; url-about.el --- Show internal URLs
+
+;; Copyright (c) 2001, 2004 Free Software Foundation, Inc.
+
+;; Keywords: comm, data, processes, hypermedia
+
+;; This file is part of GNU Emacs.
+;;
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+;;
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+;;
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING. If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+
+;;; Code:
+
+(eval-when-compile
+ (require 'cl))
+(require 'url-util)
+(require 'url-parse)
+
+(defun url-probe-protocols ()
+ "Return a list of all potential URL schemes."
+ (or (get 'url-extension-protocols 'probed)
+ (mapc (lambda (s) (url-scheme-get-property s 'name))
+ (or (get 'url-extension-protocols 'schemes)
+ (let ((schemes '("info" "man" "rlogin" "telnet"
+ "tn3270" "data" "snews")))
+ (mapc (lambda (d)
+ (mapc (lambda (f)
+ (if (string-match "url-\\(.*\\).el$" f)
+ (push (match-string 1 f) schemes)))
+ (directory-files d nil "^url-.*\\.el$")))
+ load-path)
+ (put 'url-extension-protocols 'schemes schemes)
+ schemes)))))
+
+(defvar url-scheme-registry)
+
+(defun url-about-protocols (url)
+ (url-probe-protocols)
+ (insert "<html>\n"
+ " <head>\n"
+ " <title>Supported Protocols</title>\n"
+ " </head>\n"
+ " <body>\n"
+ " <h1>Supported Protocols - URL v" url-version "</h1>\n"
+ " <table width='100%' border='1'>\n"
+ " <tr>\n"
+ " <td>Protocol\n"
+ " <td>Properties\n"
+ " <td>Description\n"
+ " </tr>\n")
+ (mapc (lambda (k)
+ (if (string= k "proxy")
+ ;; Ignore the proxy setting... its magic!
+ nil
+ (insert " <tr>\n")
+ ;; The name of the protocol
+ (insert " <td valign=top>" (or (url-scheme-get-property k 'name) k) "\n")
+
+ ;; Now the properties. Currently just asynchronous
+ ;; status, default port number, and proxy status.
+ (insert " <td valign=top>"
+ (if (url-scheme-get-property k 'asynchronous-p) "As" "S")
+ "ynchronous<br>\n"
+ (if (url-scheme-get-property k 'default-port)
+ (format "Default Port: %d<br>\n"
+ (url-scheme-get-property k 'default-port)) "")
+ (if (assoc k url-proxy-services)
+ (format "Proxy: %s<br>\n" (assoc k url-proxy-services)) ""))
+ ;; Now the description...
+ (insert " <td valign=top>"
+ (or (url-scheme-get-property k 'description) "N/A"))))
+ (sort (let (x) (maphash (lambda (k v) (push k x)) url-scheme-registry) x) 'string-lessp))
+ (insert " </table>\n"
+ " </body>\n"
+ "</html>\n"))
+
+(defun url-about (url)
+ "Show internal URLs."
+ (let* ((item (downcase (url-filename url)))
+ (func (intern (format "url-about-%s" item))))
+ (if (fboundp func)
+ (progn
+ (set-buffer (generate-new-buffer " *about-data*"))
+ (insert "Content-type: text/plain\n\n")
+ (funcall func url)
+ (current-buffer))
+ (error "URL does not know about `%s'" item))))
+
+(provide 'url-about)
+
+;; arch-tag: 65dd7fca-db3f-4cb1-8026-7dd37d4a460e
+;;; url-about.el ends here
diff --git a/lisp/url/url-auth.el b/lisp/url/url-auth.el
index ea208ccadea..336c28eab26 100644
--- a/lisp/url/url-auth.el
+++ b/lisp/url/url-auth.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-cache.el b/lisp/url/url-cache.el
index f27b47251e4..e80ba059393 100644
--- a/lisp/url/url-cache.el
+++ b/lisp/url/url-cache.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-cid.el b/lisp/url/url-cid.el
index 9c44835ca9f..40307c49eaf 100644
--- a/lisp/url/url-cid.el
+++ b/lisp/url/url-cid.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-cookie.el b/lisp/url/url-cookie.el
index 42c74080ec8..314911f789b 100644
--- a/lisp/url/url-cookie.el
+++ b/lisp/url/url-cookie.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -79,7 +79,7 @@ A cookie vector object is a vector of 7 slots:
(and (vectorp obj) (= (length obj) 7) (eq (aref obj 0) 'cookie)))
(defgroup url-cookie nil
- "URL cookies"
+ "URL cookies."
:prefix "url-"
:prefix "url-cookie-"
:group 'url)
diff --git a/lisp/url/url-dav.el b/lisp/url/url-dav.el
index a3320f88e96..1b683124c94 100644
--- a/lisp/url/url-dav.el
+++ b/lisp/url/url-dav.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;; DAV is in RFC 2518.
diff --git a/lisp/url/url-dired.el b/lisp/url/url-dired.el
index 41d81df677e..5d5381db0bf 100644
--- a/lisp/url/url-dired.el
+++ b/lisp/url/url-dired.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-expand.el b/lisp/url/url-expand.el
index a7855653103..c8e17a524bb 100644
--- a/lisp/url/url-expand.el
+++ b/lisp/url/url-expand.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-file.el b/lisp/url/url-file.el
index c39d255304b..7e224bd1420 100644
--- a/lisp/url/url-file.el
+++ b/lisp/url/url-file.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-ftp.el b/lisp/url/url-ftp.el
index 7f9c9de608d..966000249d3 100644
--- a/lisp/url/url-ftp.el
+++ b/lisp/url/url-ftp.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-gw.el b/lisp/url/url-gw.el
index 153d146b608..e0ccbbdc4e7 100644
--- a/lisp/url/url-gw.el
+++ b/lisp/url/url-gw.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
@@ -34,7 +34,7 @@
(autoload 'open-tls-stream "tls")
(defgroup url-gateway nil
- "URL gateway variables"
+ "URL gateway variables."
:group 'url)
(defcustom url-gateway-local-host-regexp nil
diff --git a/lisp/url/url-handlers.el b/lisp/url/url-handlers.el
index 12db63aade8..cc626a4cb44 100644
--- a/lisp/url/url-handlers.el
+++ b/lisp/url/url-handlers.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-history.el b/lisp/url/url-history.el
index 3f9a82b9afd..040f83ad2f2 100644
--- a/lisp/url/url-history.el
+++ b/lisp/url/url-history.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -32,14 +32,14 @@
(autoload 'url-do-setup "url")
(defgroup url-history nil
- "History variables in the URL package"
+ "History variables in the URL package."
:prefix "url-history"
:group 'url)
(defcustom url-history-track nil
"*Controls whether to keep a list of all the URLS being visited.
If non-nil, url will keep track of all the URLS visited.
-If eq to `t', then the list is saved to disk at the end of each emacs
+If set to t, then the list is saved to disk at the end of each Emacs
session."
:type 'boolean
:group 'url-history)
diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el
index 0b7e2cef8a1..92cbf41e76b 100644
--- a/lisp/url/url-http.el
+++ b/lisp/url/url-http.el
@@ -19,8 +19,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-https.el b/lisp/url/url-https.el
index 9631aeb18e4..e7aeffde788 100644
--- a/lisp/url/url-https.el
+++ b/lisp/url/url-https.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-imap.el b/lisp/url/url-imap.el
index 7b8f9deb19d..9d923e17259 100644
--- a/lisp/url/url-imap.el
+++ b/lisp/url/url-imap.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-irc.el b/lisp/url/url-irc.el
index 31254dee451..dd88a85a03a 100644
--- a/lisp/url/url-irc.el
+++ b/lisp/url/url-irc.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-ldap.el b/lisp/url/url-ldap.el
index 55f36a4155f..9b7ce5c89b4 100644
--- a/lisp/url/url-ldap.el
+++ b/lisp/url/url-ldap.el
@@ -17,8 +17,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-mailto.el b/lisp/url/url-mailto.el
index 42793093117..fc3eb97e085 100644
--- a/lisp/url/url-mailto.el
+++ b/lisp/url/url-mailto.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-methods.el b/lisp/url/url-methods.el
index 75d746f3e3f..a82d78db3ac 100644
--- a/lisp/url/url-methods.el
+++ b/lisp/url/url-methods.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-misc.el b/lisp/url/url-misc.el
index 21d42820e1b..e937c99a518 100644
--- a/lisp/url/url-misc.el
+++ b/lisp/url/url-misc.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-news.el b/lisp/url/url-news.el
index 9d7f64bb4a4..969edf6f684 100644
--- a/lisp/url/url-news.el
+++ b/lisp/url/url-news.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
@@ -32,7 +32,7 @@
(eval-when-compile (require 'cl))
(defgroup url-news nil
- "News related options"
+ "News related options."
:group 'url)
(defun url-news-open-host (host port user pass)
@@ -105,7 +105,7 @@
nntp-open-connection-function)
nil
(cons (current-buffer) 'browse)))
-
+
;;;###autoload
(defun url-news (url)
;; Find a news reference
diff --git a/lisp/url/url-nfs.el b/lisp/url/url-nfs.el
index ff36c1bdae9..0273415b8ab 100644
--- a/lisp/url/url-nfs.el
+++ b/lisp/url/url-nfs.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-ns.el b/lisp/url/url-ns.el
index 1dcb1f85f27..d76c7cf459d 100644
--- a/lisp/url/url-ns.el
+++ b/lisp/url/url-ns.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-parse.el b/lisp/url/url-parse.el
index 5b5250ab31f..db85c43a38f 100644
--- a/lisp/url/url-parse.el
+++ b/lisp/url/url-parse.el
@@ -18,8 +18,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-privacy.el b/lisp/url/url-privacy.el
index 50f46415b80..e28a388dfa3 100644
--- a/lisp/url/url-privacy.el
+++ b/lisp/url/url-privacy.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-proxy.el b/lisp/url/url-proxy.el
index 20f1b4b7ea7..1eb8f90bda3 100644
--- a/lisp/url/url-proxy.el
+++ b/lisp/url/url-proxy.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el
index b796d695461..e64d328fd3d 100644
--- a/lisp/url/url-util.el
+++ b/lisp/url/url-util.el
@@ -19,8 +19,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/url-vars.el b/lisp/url/url-vars.el
index 53b144f0f98..76669899172 100644
--- a/lisp/url/url-vars.el
+++ b/lisp/url/url-vars.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
@@ -29,28 +29,28 @@
"Version number of URL package.")
(defgroup url nil
- "Uniform Resource Locator tool"
+ "Uniform Resource Locator tool."
:version "22.1"
:group 'hypermedia)
(defgroup url-file nil
- "URL storage"
+ "URL storage."
:prefix "url-"
:group 'url)
(defgroup url-cache nil
- "URL cache"
+ "URL cache."
:prefix "url-"
:prefix "url-cache-"
:group 'url)
(defgroup url-mime nil
- "MIME options of URL"
+ "MIME options of URL."
:prefix "url-"
:group 'url)
(defgroup url-hairy nil
- "Hairy options of URL"
+ "Hairy options of URL."
:prefix "url-"
:group 'url)
diff --git a/lisp/url/url.el b/lisp/url/url.el
index 8b57d885949..695aceb871e 100644
--- a/lisp/url/url.el
+++ b/lisp/url/url.el
@@ -20,8 +20,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/url/vc-dav.el b/lisp/url/vc-dav.el
index 3bf03165564..bfc532958b6 100644
--- a/lisp/url/vc-dav.el
+++ b/lisp/url/vc-dav.el
@@ -18,8 +18,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/userlock.el b/lisp/userlock.el
index e6e5ef0a1b5..5e2f337db07 100644
--- a/lisp/userlock.el
+++ b/lisp/userlock.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc-arch.el b/lisp/vc-arch.el
index 569f864c0ea..d59e7143179 100644
--- a/lisp/vc-arch.el
+++ b/lisp/vc-arch.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc-cvs.el b/lisp/vc-cvs.el
index e4e9f0b0137..16759351407 100644
--- a/lisp/vc-cvs.el
+++ b/lisp/vc-cvs.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc-hooks.el b/lisp/vc-hooks.el
index 52b4659cec6..5e8bf4f523c 100644
--- a/lisp/vc-hooks.el
+++ b/lisp/vc-hooks.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc-mcvs.el b/lisp/vc-mcvs.el
index eef01f2aad5..e324cb7eb1c 100644
--- a/lisp/vc-mcvs.el
+++ b/lisp/vc-mcvs.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc-rcs.el b/lisp/vc-rcs.el
index 6e6bb04c2ec..e591baf3a26 100644
--- a/lisp/vc-rcs.el
+++ b/lisp/vc-rcs.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc-sccs.el b/lisp/vc-sccs.el
index b691775f63b..c4a48274e36 100644
--- a/lisp/vc-sccs.el
+++ b/lisp/vc-sccs.el
@@ -22,8 +22,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc-svn.el b/lisp/vc-svn.el
index b6e3ac29568..9e0b3414a04 100644
--- a/lisp/vc-svn.el
+++ b/lisp/vc-svn.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vc.el b/lisp/vc.el
index b89298604eb..d4ece57a3d6 100644
--- a/lisp/vc.el
+++ b/lisp/vc.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Credits:
diff --git a/lisp/vcursor.el b/lisp/vcursor.el
index ac04603dbf8..fd7d1416661 100644
--- a/lisp/vcursor.el
+++ b/lisp/vcursor.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/version.el b/lisp/version.el
index 43b2c90f74f..eb073ee6d40 100644
--- a/lisp/version.el
+++ b/lisp/version.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/view.el b/lisp/view.el
index e184d68b117..c327dcdaa36 100644
--- a/lisp/view.el
+++ b/lisp/view.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vms-patch.el b/lisp/vms-patch.el
index d8d44d9d752..886b8572e77 100644
--- a/lisp/vms-patch.el
+++ b/lisp/vms-patch.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vmsproc.el b/lisp/vmsproc.el
index da8715e860d..9871daa7a5e 100644
--- a/lisp/vmsproc.el
+++ b/lisp/vmsproc.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vt-control.el b/lisp/vt-control.el
index edc4f927346..ed65c93290f 100644
--- a/lisp/vt-control.el
+++ b/lisp/vt-control.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/vt100-led.el b/lisp/vt100-led.el
index d78960a5785..805746dd495 100644
--- a/lisp/vt100-led.el
+++ b/lisp/vt100-led.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/w32-fns.el b/lisp/w32-fns.el
index 815f4d5382f..5b52849e2f4 100644
--- a/lisp/w32-fns.el
+++ b/lisp/w32-fns.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/w32-vars.el b/lisp/w32-vars.el
index 1877e159ae7..8e998b9968d 100644
--- a/lisp/w32-vars.el
+++ b/lisp/w32-vars.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
-;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
@@ -28,7 +28,7 @@
;; Custom group for w32 specific settings
(defgroup w32 nil
- "MS-Windows specific features"
+ "MS-Windows specific features."
:group 'environment
:version "22.1"
:prefix "w32")
@@ -143,7 +143,7 @@ menu if the variable `w32-use-w32-font-dialog' is nil."
(string :tag "Title")
(repeat :inline t
(choice :tag ""
- (const :tag "Seperator" (""))
+ (const :tag "Separator" (""))
(list :tag "Font Entry"
(string :tag "Menu text")
(string :tag "Font")))))))
diff --git a/lisp/wdired.el b/lisp/wdired.el
index a82176af5e8..c22a8dff633 100644
--- a/lisp/wdired.el
+++ b/lisp/wdired.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/whitespace.el b/lisp/whitespace.el
index a119793c3a9..f1255df9482 100644
--- a/lisp/whitespace.el
+++ b/lisp/whitespace.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/wid-browse.el b/lisp/wid-browse.el
index 57c4ebdb548..17fe9c24214 100644
--- a/lisp/wid-browse.el
+++ b/lisp/wid-browse.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index b5fd9f80def..3cab849ae74 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Wishlist items (from widget.texi):
diff --git a/lisp/widget.el b/lisp/widget.el
index f7e7d5d899c..f6c8efa6374 100644
--- a/lisp/widget.el
+++ b/lisp/widget.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
;;
diff --git a/lisp/windmove.el b/lisp/windmove.el
index 986280c0bb1..785a7538a69 100644
--- a/lisp/windmove.el
+++ b/lisp/windmove.el
@@ -20,8 +20,8 @@
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;
;; --------------------------------------------------------------------
diff --git a/lisp/window.el b/lisp/window.el
index 75052f9a5f1..c31b3149556 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/winner.el b/lisp/winner.el
index 603eb80d9f0..c64d00d6255 100644
--- a/lisp/winner.el
+++ b/lisp/winner.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/woman.el b/lisp/woman.el
index b1f8581ab9c..9ad3b50e381 100644
--- a/lisp/woman.el
+++ b/lisp/woman.el
@@ -23,8 +23,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/x-dnd.el b/lisp/x-dnd.el
index 78a41d54625..0a4017a7b7c 100644
--- a/lisp/x-dnd.el
+++ b/lisp/x-dnd.el
@@ -21,8 +21,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/xml.el b/lisp/xml.el
index f4300817836..53cf850b983 100644
--- a/lisp/xml.el
+++ b/lisp/xml.el
@@ -20,8 +20,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff --git a/lisp/xt-mouse.el b/lisp/xt-mouse.el
index 797893c8f2b..e8b0cee00e4 100644
--- a/lisp/xt-mouse.el
+++ b/lisp/xt-mouse.el
@@ -19,8 +19,8 @@
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary: