Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-15

Merge from emacs--cvs-trunk--0

Patches applied:

 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-95
   Merge from gnus--rel--5.10

 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-96
   Move Gnus images into etc/images

 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-97
 - miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-105
   Update from CVS

 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-14
   Merge from emacs--cvs-trunk--0

 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-15
   Update from CVS: lisp/imap.el (imap-log): Doc fix.

 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-16
   Merge from emacs--cvs-trunk--0
This commit is contained in:
Miles Bader 2005-02-18 00:41:50 +00:00
commit 8d46efcc0f
160 changed files with 3926 additions and 1896 deletions

View file

@ -1,3 +1,8 @@
2005-02-15 Jason Rumney <jasonr@gnu.org>
* nt/makedist.bat: Do not rely on non-standard behaviour of
tar --exclude.
2004-11-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 2004-11-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
* FOR-RELEASE (Indications): Remove two stage update for toolbar (Done). * FOR-RELEASE (Indications): Remove two stage update for toolbar (Done).
@ -31,7 +36,7 @@
* FOR-RELEASE: Remove entry about GTK and monochrome displays (done). * FOR-RELEASE: Remove entry about GTK and monochrome displays (done).
2002-06-26 Eli Zaretskii <eliz@is.elta.co.il> 2004-06-26 Eli Zaretskii <eliz@is.elta.co.il>
* FOR-RELEASE: Moved here from the etc directory. * FOR-RELEASE: Moved here from the etc directory.
@ -44,6 +49,10 @@
* quick-install-emacs: Don't use "function" keyword when defining * quick-install-emacs: Don't use "function" keyword when defining
shell functions. shell functions.
2003-09-29 Lute Kamstra <lute@gnu.org>
* make-tarball.txt: Mention regenerating Emacs' AUTHORS file.
2003-09-27 Miles Bader <miles@gnu.ai.mit.edu> 2003-09-27 Miles Bader <miles@gnu.ai.mit.edu>
* quick-install-emacs: Remove fns-* pruning, since that file no * quick-install-emacs: Remove fns-* pruning, since that file no
@ -193,7 +202,7 @@
version of tar used. version of tar used.
;; Local Variables: ;; Local Variables:
;; coding: iso-2022-7bit-unix ;; coding: iso-2022-7bit
;; End: ;; End:
Copyright (C) 2001 Free Software Foundation, Inc. Copyright (C) 2001 Free Software Foundation, Inc.

View file

@ -218,40 +218,40 @@ man/anti.texi
man/basic.texi "Luc Teirlinck" Chong Yidong man/basic.texi "Luc Teirlinck" Chong Yidong
man/buffers.texi "Luc Teirlinck" Chong Yidong man/buffers.texi "Luc Teirlinck" Chong Yidong
man/building.texi "Ted Zlatanov" <tzz@lifelogs.com> man/building.texi "Ted Zlatanov" <tzz@lifelogs.com>
man/calendar.texi Joakim Verona <joakim@verona.se> man/calendar.texi joakim@verona.se
man/cmdargs.texi Chong Yidong man/cmdargs.texi Chong Yidong
man/commands.texi "Luc Teirlinck" man/commands.texi "Luc Teirlinck"
man/custom.texi Chong Yidong man/custom.texi Chong Yidong
man/dired.texi man/dired.texi Chong Yidong joakim@verona.se
man/display.texi "Luc Teirlinck" man/display.texi "Luc Teirlinck" Chong Yidong
man/emacs.texi "Luc Teirlinck" man/emacs.texi "Luc Teirlinck"
man/entering.texi "Luc Teirlinck" Chong Yidong man/entering.texi "Luc Teirlinck" Chong Yidong
man/files.texi "Luc Teirlinck" Chong Yidong man/files.texi "Luc Teirlinck" Chong Yidong
man/fixit.texi "Luc Teirlinck" man/fixit.texi "Luc Teirlinck"
man/frames.texi "Luc Teirlinck" Chong Yidong man/frames.texi "Luc Teirlinck" Chong Yidong
man/glossary.texi man/glossary.texi
man/help.texi "Luc Teirlinck" man/help.texi "Luc Teirlinck" Chong Yidong
man/indent.texi "Luc Teirlinck" man/indent.texi "Luc Teirlinck" Chong Yidong
man/killing.texi "Luc Teirlinck" Chong Yidong man/killing.texi "Luc Teirlinck" Chong Yidong
man/kmacro.texi "Luc Teirlinck" man/kmacro.texi "Luc Teirlinck" Chong Yidong
man/macos.texi man/macos.texi
man/maintaining.texi man/maintaining.texi
man/major.texi "Luc Teirlinck" man/major.texi "Luc Teirlinck" Chong Yidong
man/mark.texi "Luc Teirlinck" man/mark.texi "Luc Teirlinck"
man/mini.texi "Luc Teirlinck" man/mini.texi "Luc Teirlinck"
man/misc.texi man/misc.texi
man/msdog.texi man/msdog.texi Chong Yidong
man/mule.texi "Luc Teirlinck" man/mule.texi "Luc Teirlinck"
man/m-x.texi "Luc Teirlinck" man/m-x.texi "Luc Teirlinck"
man/picture.texi Joakim Verona <joakim@verona.se> man/picture.texi Joakim Verona <joakim@verona.se>
man/programs.texi "Stephen Eglen" man/programs.texi "Stephen Eglen" Chong Yidong
man/regs.texi "Luc Teirlinck" Chong Yidong man/regs.texi "Luc Teirlinck" Chong Yidong
man/rmail.texi man/rmail.texi
man/screen.texi "Luc Teirlinck" man/screen.texi "Luc Teirlinck"
man/search.texi "Luc Teirlinck" man/search.texi "Luc Teirlinck"
man/sending.texi man/sending.texi
man/text.texi "Luc Teirlinck" Chong Yidong man/text.texi "Luc Teirlinck" Chong Yidong
man/trouble.texi man/trouble.texi Chong Yidong
man/windows.texi "Luc Teirlinck" Chong Yidong man/windows.texi "Luc Teirlinck" Chong Yidong
man/xresources.texi man/xresources.texi
@ -271,47 +271,47 @@ lispref/backups.texi "Luc Teirlinck"
lispref/buffers.texi "Luc Teirlinck" Chong Yidong lispref/buffers.texi "Luc Teirlinck" Chong Yidong
lispref/calendar.texi Joakim Verona <joakim@verona.se> lispref/calendar.texi Joakim Verona <joakim@verona.se>
lispref/commands.texi "Luc Teirlinck" lispref/commands.texi "Luc Teirlinck"
lispref/compile.texi "Luc Teirlinck" lispref/compile.texi "Luc Teirlinck" Chong Yidong
lispref/control.texi "Luc Teirlinck" lispref/control.texi "Luc Teirlinck" Chong Yidong
lispref/customize.texi lispref/customize.texi
lispref/debugging.texi Joakim Verona <joakim@verona.se> lispref/debugging.texi Joakim Verona <joakim@verona.se>
lispref/display.texi lispref/display.texi
lispref/edebug.texi lispref/edebug.texi
lispref/elisp.texi "Luc Teirlinck" lispref/elisp.texi "Luc Teirlinck"
lispref/errors.texi "Luc Teirlinck" lispref/errors.texi "Luc Teirlinck"
lispref/eval.texi "Luc Teirlinck" lispref/eval.texi "Luc Teirlinck" Chong Yidong
lispref/files.texi "Luc Teirlinck" Chong Yidong lispref/files.texi "Luc Teirlinck" Chong Yidong
lispref/frames.texi "Luc Teirlinck" Chong Yidong lispref/frames.texi "Luc Teirlinck" Chong Yidong
lispref/functions.texi "Luc Teirlinck" lispref/functions.texi "Luc Teirlinck" Chong Yidong
lispref/hash.texi "Luc Teirlinck" lispref/hash.texi "Luc Teirlinck" Chong Yidong
lispref/help.texi "Luc Teirlinck" lispref/help.texi "Luc Teirlinck"
lispref/hooks.texi lispref/hooks.texi
lispref/internals.texi "Luc Teirlinck" lispref/internals.texi "Luc Teirlinck"
lispref/intro.texi "Luc Teirlinck" lispref/intro.texi "Luc Teirlinck"
lispref/keymaps.texi "Luc Teirlinck" lispref/keymaps.texi "Luc Teirlinck"
lispref/lists.texi "Luc Teirlinck" lispref/lists.texi "Luc Teirlinck" Chong Yidong
lispref/loading.texi "Luc Teirlinck" lispref/loading.texi "Luc Teirlinck" Chong Yidong
lispref/locals.texi lispref/locals.texi
lispref/macros.texi "Luc Teirlinck" lispref/macros.texi "Luc Teirlinck"
lispref/maps.texi lispref/maps.texi
lispref/markers.texi "Luc Teirlinck" lispref/markers.texi "Luc Teirlinck"
lispref/minibuf.texi "Luc Teirlinck" lispref/minibuf.texi "Luc Teirlinck" Chong Yidong
lispref/modes.texi Chong Yidong lispref/modes.texi Chong Yidong
lispref/nonascii.texi "Luc Teirlinck" lispref/nonascii.texi "Luc Teirlinck"
lispref/numbers.texi "Luc Teirlinck" lispref/numbers.texi "Luc Teirlinck" Chong Yidong
lispref/objects.texi "Luc Teirlinck" lispref/objects.texi "Luc Teirlinck" Chong Yidong
lispref/os.texi "Luc Teirlinck" lispref/os.texi "Luc Teirlinck"
lispref/positions.texi "Luc Teirlinck" Chong Yidong lispref/positions.texi "Luc Teirlinck" Chong Yidong
lispref/processes.texi lispref/processes.texi
lispref/searching.texi "Luc Teirlinck" lispref/searching.texi "Luc Teirlinck"
lispref/sequences.texi "Luc Teirlinck" lispref/sequences.texi "Luc Teirlinck"
lispref/streams.texi "Luc Teirlinck" lispref/streams.texi "Luc Teirlinck" Chong Yidong
lispref/strings.texi "Luc Teirlinck" Chong Yidong lispref/strings.texi "Luc Teirlinck" Chong Yidong
lispref/symbols.texi "Luc Teirlinck" lispref/symbols.texi "Luc Teirlinck" Chong Yidong
lispref/syntax.texi "Luc Teirlinck" lispref/syntax.texi "Luc Teirlinck"
lispref/text.texi Chong Yidong lispref/text.texi Chong Yidong
lispref/tips.texi "Luc Teirlinck" lispref/tips.texi "Luc Teirlinck"
lispref/variables.texi "Luc Teirlinck" lispref/variables.texi "Luc Teirlinck" Chong Yidong
lispref/windows.texi "Luc Teirlinck" Chong Yidong lispref/windows.texi "Luc Teirlinck" Chong Yidong

View file

@ -1,11 +1,10 @@
@echo off @echo off
rem This batch file doesn't work with Cygwin tar because #files# rem Beware broken ports of tar. Recent cygwin versions work well, older
rem has DOS line endings, which Cygwin tar misinterprets. rem cygwin versions and the current MSys port have problems with DOS
rem I use the version of tar from rem line ends when reading file names from a file. Other ports have their
rem ftp://ftp.gnu.org/gnu/windows/emacs/utilities/i386/tar-1.11.2a.exe rem own problems too.
rem renamed as wtar.exe. set TAR=tar
set TAR=wtar
rem Make a copy of current Emacs source rem Make a copy of current Emacs source
if (%3) == () goto usage if (%3) == () goto usage
@ -27,7 +26,7 @@ if not (%4) == () goto end
set eld=emacs-%1/lisp set eld=emacs-%1/lisp
rem Keep this list in sync with the DONTCOMPILE list in lisp/Makefile.in rem Keep this list in sync with the DONTCOMPILE list in lisp/makefile.w32-in
set elfiles=%eld%/cus-load.el %eld%/cus-start.el %eld%/emacs-lisp/cl-specs.el %eld%/eshell/esh-maint.el %eld%/eshell/esh-groups.el %eld%/finder-inf.el %eld%/forms-d2.el %eld%/forms-pass.el %eld%/generic-x.el %eld%/international/latin-1.el %eld%/international/latin-2.el %eld%/international/latin-3.el %eld%/international/latin-4.el %eld%/international/latin-5.el %eld%/international/latin-8.el %eld%/international/latin-9.el %eld%/international/mule-conf.el %eld%/loaddefs.el %eld%/loadup.el %eld%/mail/blessmail.el %eld%/patcomp.el %eld%/paths.el %eld%/play/bruce.el %eld%/subdirs.el %eld%/version.el set elfiles=%eld%/cus-load.el %eld%/cus-start.el %eld%/emacs-lisp/cl-specs.el %eld%/eshell/esh-maint.el %eld%/eshell/esh-groups.el %eld%/finder-inf.el %eld%/forms-d2.el %eld%/forms-pass.el %eld%/generic-x.el %eld%/international/latin-1.el %eld%/international/latin-2.el %eld%/international/latin-3.el %eld%/international/latin-4.el %eld%/international/latin-5.el %eld%/international/latin-8.el %eld%/international/latin-9.el %eld%/international/mule-conf.el %eld%/loaddefs.el %eld%/loadup.el %eld%/mail/blessmail.el %eld%/patcomp.el %eld%/paths.el %eld%/play/bruce.el %eld%/subdirs.el %eld%/version.el
@ -37,15 +36,19 @@ for %%f in (emacs-%1/bin/fns*) do set fns_el=%fns_el% emacs-%1/bin/%%f
echo Create bin distribution echo Create bin distribution
copy %3\README.W32 emacs-%1\README.W32 copy %3\README.W32 emacs-%1\README.W32
del #files# del #files# #elfiles#
for %%f in (emacs-%1/BUGS emacs-%1/README emacs-%1/README.W32) do echo %%f>>#files# for %%f in (emacs-%1/BUGS emacs-%1/README emacs-%1/README.W32) do echo %%f>>#files#
for %%f in (emacs-%1/bin/fns*) do echo emacs-%1/bin/%%f>>#files# for %%f in (emacs-%1/bin/fns*) do echo emacs-%1/bin/%%f>>#elfiles#
for %%f in (emacs-%1/bin emacs-%1/etc emacs-%1/info emacs-%1/lisp %elfiles%) do echo %%f>>#files# for %%f in (emacs-%1/bin emacs-%1/etc emacs-%1/info emacs-%1/lisp) do echo %%f>>#files#
for %%f in (%eld%/term/*.el) do echo %eld%/term/%%f>>#files# for %%f in (emacs-%1/lock emacs-%1/site-lisp) do echo %%f>>#files#
for %%f in (emacs-%1/lock emacs-%1/site-lisp emacs-%1/site-lisp/subdirs.el) do echo %%f>>#files# for %%f in (%elfiles% emacs-%1/site-lisp/subdirs.el) do echo %%f>>#elfiles#
%TAR% --exclude temacs.exe --exclude emacs.mdp --exclude *.pdb --exclude *.opt --exclude *.el --exclude *~ -T #files# -cvf - | gzip -9 > %2-bin-i386.tar.gz for %%f in (%eld%/term/*.el) do echo %eld%/term/%%f>>#elfiles#
%TAR% --exclude temacs.exe --exclude emacs.mdp --exclude *.pdb --exclude *.opt --exclude "*.el" --exclude "*~" -T #files# -cvf %2-bin-i386.tar
%TAR% -T #elfiles# -rvf %2-bin-i386.tar
gzip -9 %2-bin-i386.tar
del emacs-%1\README.W32 del emacs-%1\README.W32
del #files# rem del #files# #elfiles#
if not (%4) == () goto end if not (%4) == () goto end
:fullbin :fullbin

View file

@ -1,3 +1,11 @@
2005-02-14 Lute Kamstra <lute@gnu.org>
* TODO: Remove battery.el entry (DONE).
* TUTORIAL.nl: Synchronize with TUTORIAL. Correct some typos.
Make the terminology more consistent. Fill the text using the
default `fill-column'.
2005-02-08 Lute Kamstra <lute@gnu.org> 2005-02-08 Lute Kamstra <lute@gnu.org>
* TUTORIAL: Remove some uses of the term "buffer" before it is * TUTORIAL: Remove some uses of the term "buffer" before it is

View file

@ -2263,6 +2263,14 @@ some of them to initialize some of the default faces.
`list-colors-display' shows the list of System color names, in case `list-colors-display' shows the list of System color names, in case
you wish to use them in other faces. you wish to use them in other faces.
---
** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations.
Those systems use Unicode internally, so this allows Emacs to share
multilingual text with other applications. On other versions of
MS Windows, Emacs now uses the appropriate locale coding-system, so
the clipboard should work correctly for your local language without
any customizations.
+++ +++
** Under X11, it is possible to swap Alt and Meta (and Super and Hyper). ** Under X11, it is possible to swap Alt and Meta (and Super and Hyper).
The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym', The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym',

View file

@ -15,8 +15,6 @@ to the FSF.
ought to be possible to omit text which is invisible (due to a ought to be possible to omit text which is invisible (due to a
text-property, overlay, or selective display) from the kill-ring. text-property, overlay, or selective display) from the kill-ring.
** battery.el display-battery should be replaced with a minor mode.
** Redefine define-generic-mode as a macro, so the compiler ** Redefine define-generic-mode as a macro, so the compiler
sees the definitions it generates. sees the definitions it generates.

File diff suppressed because it is too large Load diff

View file

@ -1,3 +1,121 @@
2005-02-16 Luc Teirlinck <teirllm@auburn.edu>
* autorevert.el (auto-revert-stop-on-user-input): Further doc fix.
2005-02-16 Kim F. Storm <storm@cua.dk>
* ido.el (ido-fallback-command): Pass user input to fallback command.
2005-02-16 Nick Roberts <nickrob@snap.net.nz>
* progmodes/gdb-ui.el (gdb-set-gud-minor-mode-existing-buffers)
(gdb-find-file-hook): Add server prefix.
2005-02-16 Richard M. Stallman <rms@gnu.org>
* replace.el (perform-replace): Pass new args to replace-highlight.
(replace-highlight): Take region args,
and pass them to isearch-lazy-highlight-new-loop.
* novice.el (disabled-command-hook): Autoload the defalias
and the make-obsolete-variable call.
* menu-bar.el (menu-bar-select-frame): FRAME defaults to selected.
* isearch.el (isearch-lazy-highlight-start-limit)
(isearch-lazy-highlight-end-limit): New variables limit
the region for highlighting.
(isearch-lazy-highlight-new-loop): New args BEG and END.
(isearch-lazy-highlight-search): Use the new vars.
(isearch-lazy-highlight-update): Likewise.
* dired.el (dired-build-subdir-alist): Bind buffer-undo-list to t.
* cus-start.el (all): Use default-boundp.
2005-02-15 David Casperson <casper@unbc.ca> (tiny change)
* menu-bar.el (menu-bar-select-frame): Handle current frame.
2005-02-15 Luc Teirlinck <teirllm@auburn.edu>
* autorevert.el (auto-revert-stop-on-user-input)
(auto-revert-verbose): Doc fixes.
2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
* international/mule-cmds.el (set-locale-environment): Remove call
to set-selection-coding-system on Windows.
2005-02-15 Jay Belanger <belanger@truman.edu>
* calc/calc-alg.el: Add simplification rules for calcFunc-sec,
calcFunc-csc, calcFunc-cot, calcFunc-sech, calcFunc-csch and
calcFunc-coth.
(math-simplify-sqrt): Add simplifications.
* calc/calc-arith.el (math-real-if-arg-functions): Add functions
to list.
* calc/calc-ext.el: Add functions to autoloads.
* calc/calc-math.el (calc-sec, calc-csc, calc-cot, calc-sech)
(calc-csch, calc-coth, calcFunc-sec, calcFunc-csc, calcFunc-cot)
(calcFunc-sech, calcFunc-csch, calcFunc-coth, math-sec-raw)
(math-csc-raw, math-cot-raw): New functions.
* calc/calc-rules.el (calc-DistribRules, calc-NegateRules): Add rules.
* calc/calc-undo.el (calc-handle-undo): Remove prefix from
the variable name in a message.
* calc/calc-units.el: Add simplification rules for calcFunc-sec,
calcFunc-csc, calcFunc-cot.
* calc/calcalg2.el: Add derivative and integration rules for
calcFunc-sec, calcFunc-csc, calcFunc-cot, calcFunc-sech,
calcFunc-csch, calcFunc-coth.
(math-do-integral-methods): Add to checks for when to use
substitutions.
* calc/calccomp.el (math-eqn-special-funcs): Add functions to list.
2005-02-15 Lute Kamstra <lute@gnu.org>
* emacs-lisp/lisp-mode.el (lisp-mode-variables): Add
;;;###autoload to `outline-regexp'. Suggested by Stefan Monnier
<monnier@iro.umontreal.ca>
(lisp-outline-level): Improve efficiency. Suggested by David
Kastrup <dak@gnu.org>.
2005-02-15 Nick Roberts <nickrob@snap.net.nz>
* progmodes/gdb-ui.el (gdb-find-file-unhook): New variable.
(gdb-set-gud-minor-mode, gdb-set-gud-minor-mode-1)
(gdb-set-gud-minor-mode-existing-buffers): New functions.
(gdb-find-file-hook): New hook. Add it to find-file-hook.
(gdb-info-breakpoints-custom, gdb-source-info): Simplify.
2005-02-14 Luc Teirlinck <teirllm@auburn.edu>
* cus-start.el (all): Comment change.
2005-02-14 Lute Kamstra <lute@gnu.org>
* cus-start.el (all): Check if symbol is void.
2005-02-14 Carsten Dominik <dominik@science.uva.nl>
* textmodes/reftex-cite.el (reftex-do-citation): Cleanup single
optional argument to \cite.
2005-02-14 Richard M. Stallman <rms@gnu.org>
* cus-edit.el (custom-buffer-create-internal): Update help message.
(custom-magic-alist): Update help messages.
* cus-start.el (all): Allow a var to specify a standard value.
2005-02-12 Luc Teirlinck <teirllm@auburn.edu> 2005-02-12 Luc Teirlinck <teirllm@auburn.edu>
* custom.el (custom-theme-set-variables): Handle variable aliases. * custom.el (custom-theme-set-variables): Handle variable aliases.

View file

@ -150,12 +150,18 @@ next editing session."
(auto-revert-set-timer)))) (auto-revert-set-timer))))
(defcustom auto-revert-stop-on-user-input t (defcustom auto-revert-stop-on-user-input t
"When non-nil Auto-Revert Mode stops checking files on user input." "When non-nil, user input temporarily interrupts Auto-Revert Mode.
With this setting, Auto-Revert Mode checks for user input after
handling each buffer and does not process any further buffers
\(until the next run of the timer) if user input is available.
When nil, Auto-Revert Mode checks files and reverts buffers,
with quitting disabled, without paying attention to user input.
Thus, Emacs might be non-responsive at times."
:group 'auto-revert :group 'auto-revert
:type 'boolean) :type 'boolean)
(defcustom auto-revert-verbose t (defcustom auto-revert-verbose t
"When nil, Auto-Revert Mode will not generate any messages. "When nil, Auto-Revert Mode does not generate any messages.
When non-nil, a message is generated whenever a file is reverted." When non-nil, a message is generated whenever a file is reverted."
:group 'auto-revert :group 'auto-revert
:type 'boolean) :type 'boolean)

View file

@ -746,6 +746,55 @@
(list '* (list 'calcFunc-sin (list '* (1- n) a)) (list '* (list 'calcFunc-sin (list '* (1- n) a))
(list 'calcFunc-sin a)))))))) (list 'calcFunc-sin a))))))))
(math-defsimplify calcFunc-sec
(or (and (math-looks-negp (nth 1 math-simplify-expr))
(list 'calcFunc-sec (math-neg (nth 1 math-simplify-expr))))
(and (eq calc-angle-mode 'rad)
(let ((n (math-linear-in (nth 1 math-simplify-expr) '(var pi var-pi))))
(and n
(math-div 1 (math-known-sin (car n) (nth 1 n) 120 300)))))
(and (eq calc-angle-mode 'deg)
(let ((n (math-integer-plus (nth 1 math-simplify-expr))))
(and n
(math-div 1 (math-known-sin (car n) (nth 1 n) '(frac 2 3) 300)))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arcsin)
(math-div
1
(list 'calcFunc-sqrt
(math-sub 1 (math-sqr (nth 1 (nth 1 math-simplify-expr)))))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arccos)
(math-div
1
(nth 1 (nth 1 math-simplify-expr))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arctan)
(list 'calcFunc-sqrt
(math-add 1
(math-sqr (nth 1 (nth 1 math-simplify-expr))))))))
(math-defsimplify calcFunc-csc
(or (and (math-looks-negp (nth 1 math-simplify-expr))
(math-neg (list 'calcFunc-csc (math-neg (nth 1 math-simplify-expr)))))
(and (eq calc-angle-mode 'rad)
(let ((n (math-linear-in (nth 1 math-simplify-expr) '(var pi var-pi))))
(and n
(math-div 1 (math-known-sin (car n) (nth 1 n) 120 0)))))
(and (eq calc-angle-mode 'deg)
(let ((n (math-integer-plus (nth 1 math-simplify-expr))))
(and n
(math-div 1 (math-known-sin (car n) (nth 1 n) '(frac 2 3) 0)))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arcsin)
(math-div 1 (nth 1 (nth 1 math-simplify-expr))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arccos)
(math-div
1
(list 'calcFunc-sqrt (math-sub 1 (math-sqr
(nth 1 (nth 1 math-simplify-expr)))))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arctan)
(math-div (list 'calcFunc-sqrt
(math-add 1 (math-sqr
(nth 1 (nth 1 math-simplify-expr)))))
(nth 1 (nth 1 math-simplify-expr))))))
(defun math-should-expand-trig (x &optional hyperbolic) (defun math-should-expand-trig (x &optional hyperbolic)
(let ((m (math-is-multiple x))) (let ((m (math-is-multiple x)))
(and math-living-dangerously (and math-living-dangerously
@ -827,6 +876,28 @@
(math-div (list 'calcFunc-sin (nth 1 math-simplify-expr)) (math-div (list 'calcFunc-sin (nth 1 math-simplify-expr))
(list 'calcFunc-cos (nth 1 math-simplify-expr)))))))) (list 'calcFunc-cos (nth 1 math-simplify-expr))))))))
(math-defsimplify calcFunc-cot
(or (and (math-looks-negp (nth 1 math-simplify-expr))
(math-neg (list 'calcFunc-cot (math-neg (nth 1 math-simplify-expr)))))
(and (eq calc-angle-mode 'rad)
(let ((n (math-linear-in (nth 1 math-simplify-expr) '(var pi var-pi))))
(and n
(math-div 1 (math-known-tan (car n) (nth 1 n) 120)))))
(and (eq calc-angle-mode 'deg)
(let ((n (math-integer-plus (nth 1 math-simplify-expr))))
(and n
(math-div 1 (math-known-tan (car n) (nth 1 n) '(frac 2 3))))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arcsin)
(math-div (list 'calcFunc-sqrt
(math-sub 1 (math-sqr (nth 1 (nth 1 math-simplify-expr)))))
(nth 1 (nth 1 math-simplify-expr))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arccos)
(math-div (nth 1 (nth 1 math-simplify-expr))
(list 'calcFunc-sqrt
(math-sub 1 (math-sqr (nth 1 (nth 1 math-simplify-expr)))))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arctan)
(math-div 1 (nth 1 (nth 1 math-simplify-expr))))))
(defun math-known-tan (plus n mul) (defun math-known-tan (plus n mul)
(setq n (math-mul n mul)) (setq n (math-mul n mul))
(and (math-num-integerp n) (and (math-num-integerp n)
@ -930,6 +1001,58 @@
(math-div (list 'calcFunc-sinh (nth 1 math-simplify-expr)) (math-div (list 'calcFunc-sinh (nth 1 math-simplify-expr))
(list 'calcFunc-cosh (nth 1 math-simplify-expr)))))))) (list 'calcFunc-cosh (nth 1 math-simplify-expr))))))))
(math-defsimplify calcFunc-sech
(or (and (math-looks-negp (nth 1 math-simplify-expr))
(list 'calcFunc-sech (math-neg (nth 1 math-simplify-expr))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arcsinh)
math-living-dangerously
(math-div
1
(list 'calcFunc-sqrt
(math-add (math-sqr (nth 1 (nth 1 math-simplify-expr))) 1))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arccosh)
math-living-dangerously
(math-div 1 (nth 1 (nth 1 math-simplify-expr))) 1)
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arctanh)
math-living-dangerously
(list 'calcFunc-sqrt
(math-sub 1 (math-sqr (nth 1 (nth 1 math-simplify-expr))))))))
(math-defsimplify calcFunc-csch
(or (and (math-looks-negp (nth 1 math-simplify-expr))
(math-neg (list 'calcFunc-csch (math-neg (nth 1 math-simplify-expr)))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arcsinh)
math-living-dangerously
(math-div 1 (nth 1 (nth 1 math-simplify-expr))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arccosh)
math-living-dangerously
(math-div
1
(list 'calcFunc-sqrt
(math-sub (math-sqr (nth 1 (nth 1 math-simplify-expr))) 1))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arctanh)
math-living-dangerously
(math-div (list 'calcFunc-sqrt
(math-sub 1 (math-sqr (nth 1 (nth 1 math-simplify-expr)))))
(nth 1 (nth 1 math-simplify-expr))))))
(math-defsimplify calcFunc-coth
(or (and (math-looks-negp (nth 1 math-simplify-expr))
(math-neg (list 'calcFunc-coth (math-neg (nth 1 math-simplify-expr)))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arcsinh)
math-living-dangerously
(math-div (list 'calcFunc-sqrt
(math-add (math-sqr (nth 1 (nth 1 math-simplify-expr))) 1))
(nth 1 (nth 1 math-simplify-expr))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arccosh)
math-living-dangerously
(math-div (nth 1 (nth 1 math-simplify-expr))
(list 'calcFunc-sqrt
(math-sub (math-sqr (nth 1 (nth 1 math-simplify-expr))) 1))))
(and (eq (car-safe (nth 1 math-simplify-expr)) 'calcFunc-arctanh)
math-living-dangerously
(math-div 1 (nth 1 (nth 1 math-simplify-expr))))))
(math-defsimplify calcFunc-arcsin (math-defsimplify calcFunc-arcsin
(or (and (math-looks-negp (nth 1 math-simplify-expr)) (or (and (math-looks-negp (nth 1 math-simplify-expr))
(math-neg (list 'calcFunc-arcsin (math-neg (nth 1 math-simplify-expr))))) (math-neg (list 'calcFunc-arcsin (math-neg (nth 1 math-simplify-expr)))))
@ -1043,8 +1166,13 @@
(math-equal-int (nth 2 a) 2) (math-equal-int (nth 2 a) 2)
(or (and (eq (car-safe (nth 1 a)) 'calcFunc-sinh) (or (and (eq (car-safe (nth 1 a)) 'calcFunc-sinh)
(list 'calcFunc-cosh (nth 1 (nth 1 a)))) (list 'calcFunc-cosh (nth 1 (nth 1 a))))
(and (eq (car-safe (nth 1 a)) 'calcFunc-csch)
(list 'calcFunc-coth (nth 1 (nth 1 a))))
(and (eq (car-safe (nth 1 a)) 'calcFunc-tan) (and (eq (car-safe (nth 1 a)) 'calcFunc-tan)
(list '/ 1 (list 'calcFunc-cos (list '/ 1 (list 'calcFunc-cos
(nth 1 (nth 1 a)))))
(and (eq (car-safe (nth 1 a)) 'calcFunc-cot)
(list '/ 1 (list 'calcFunc-sin
(nth 1 (nth 1 a))))))))) (nth 1 (nth 1 a)))))))))
(and (eq (car-safe (nth 1 math-simplify-expr)) '^) (and (eq (car-safe (nth 1 math-simplify-expr)) '^)
(list '^ (list '^

View file

@ -70,9 +70,13 @@
calcFunc-max calcFunc-min)) calcFunc-max calcFunc-min))
(defvar math-real-if-arg-functions '(calcFunc-sin calcFunc-cos (defvar math-real-if-arg-functions '(calcFunc-sin calcFunc-cos
calcFunc-tan calcFunc-arctan calcFunc-tan calcFunc-sec
calcFunc-csc calcFunc-cot
calcFunc-arctan
calcFunc-sinh calcFunc-cosh calcFunc-sinh calcFunc-cosh
calcFunc-tanh calcFunc-exp calcFunc-tanh calcFunc-sech
calcFunc-csch calcFunc-coth
calcFunc-exp
calcFunc-gamma calcFunc-fact)) calcFunc-gamma calcFunc-fact))
(defvar math-integer-functions '(calcFunc-idiv (defvar math-integer-functions '(calcFunc-idiv

View file

@ -801,13 +801,16 @@ math-mul-mat-vec math-mul-mats math-row-matrix)
("calc-math" calcFunc-alog calcFunc-arccos ("calc-math" calcFunc-alog calcFunc-arccos
calcFunc-arccosh calcFunc-arcsin calcFunc-arcsincos calcFunc-arcsinh calcFunc-arccosh calcFunc-arcsin calcFunc-arcsincos calcFunc-arcsinh
calcFunc-arctan calcFunc-arctan2 calcFunc-arctanh calcFunc-cos calcFunc-arctan calcFunc-arctan2 calcFunc-arctanh calcFunc-csc
calcFunc-cosh calcFunc-deg calcFunc-exp calcFunc-exp10 calcFunc-expm1 calcFunc-csch calcFunc-cos calcFunc-cosh calcFunc-cot calcFunc-coth
calcFunc-deg calcFunc-exp calcFunc-exp10 calcFunc-expm1
calcFunc-hypot calcFunc-ilog calcFunc-isqrt calcFunc-ln calcFunc-lnp1 calcFunc-hypot calcFunc-ilog calcFunc-isqrt calcFunc-ln calcFunc-lnp1
calcFunc-log calcFunc-log10 calcFunc-nroot calcFunc-rad calcFunc-sin calcFunc-log calcFunc-log10 calcFunc-nroot calcFunc-rad calcFunc-sec
calcFunc-sech calcFunc-sin
calcFunc-sincos calcFunc-sinh calcFunc-sqr calcFunc-sqrt calcFunc-tan calcFunc-sincos calcFunc-sinh calcFunc-sqr calcFunc-sqrt calcFunc-tan
calcFunc-tanh math-arccos-raw math-arcsin-raw math-arctan-raw calcFunc-tanh math-arccos-raw math-arcsin-raw math-arctan-raw
math-arctan2-raw math-cos-raw math-exp-minus-1-raw math-exp-raw math-arctan2-raw math-cos-raw math-cot-raw math-csc-raw
math-exp-minus-1-raw math-exp-raw
math-from-radians math-from-radians-2 math-hypot math-infinite-dir math-from-radians math-from-radians-2 math-hypot math-infinite-dir
math-isqrt-small math-ln-raw math-nearly-equal math-nearly-equal-float math-isqrt-small math-ln-raw math-nearly-equal math-nearly-equal-float
math-nearly-zerop math-nearly-zerop-float math-nth-root math-nearly-zerop math-nearly-zerop-float math-nth-root
@ -1008,9 +1011,11 @@ calc-map-equation calc-map-stack calc-outer-product calc-reduce)
("calc-math" calc-arccos calc-arccosh calc-arcsin calc-arcsinh ("calc-math" calc-arccos calc-arccosh calc-arcsin calc-arcsinh
calc-arctan calc-arctan2 calc-arctanh calc-conj calc-cos calc-cosh calc-arctan calc-arctan2 calc-arctanh calc-conj calc-cos calc-cosh
calc-cot calc-coth calc-csc calc-csch
calc-degrees-mode calc-exp calc-expm1 calc-hypot calc-ilog calc-degrees-mode calc-exp calc-expm1 calc-hypot calc-ilog
calc-imaginary calc-isqrt calc-ln calc-lnp1 calc-log calc-log10 calc-imaginary calc-isqrt calc-ln calc-lnp1 calc-log calc-log10
calc-pi calc-radians-mode calc-sin calc-sincos calc-sinh calc-sqrt calc-pi calc-radians-mode calc-sec calc-sech
calc-sin calc-sincos calc-sinh calc-sqrt
calc-tan calc-tanh calc-to-degrees calc-to-radians) calc-tan calc-tanh calc-to-degrees calc-to-radians)
("calc-mode" calc-alg-simplify-mode calc-algebraic-mode ("calc-mode" calc-alg-simplify-mode calc-algebraic-mode

View file

@ -144,6 +144,18 @@
(calc-hyperbolic-func) (calc-hyperbolic-func)
(calc-sin arg)) (calc-sin arg))
(defun calc-sec (arg)
(interactive "P")
(calc-slow-wrapper
(if (calc-is-hyperbolic)
(calc-unary-op "sech" 'calcFunc-sech arg)
(calc-unary-op "sec" 'calcFunc-sec arg))))
(defun calc-sech (arg)
(interactive "P")
(calc-hyperbolic-func)
(calc-sec arg))
(defun calc-cos (arg) (defun calc-cos (arg)
(interactive "P") (interactive "P")
(calc-slow-wrapper (calc-slow-wrapper
@ -171,6 +183,18 @@
(calc-hyperbolic-func) (calc-hyperbolic-func)
(calc-cos arg)) (calc-cos arg))
(defun calc-csc (arg)
(interactive "P")
(calc-slow-wrapper
(if (calc-is-hyperbolic)
(calc-unary-op "csch" 'calcFunc-csch arg)
(calc-unary-op "csc" 'calcFunc-csc arg))))
(defun calc-csch (arg)
(interactive "P")
(calc-hyperbolic-func)
(calc-csc arg))
(defun calc-sincos () (defun calc-sincos ()
(interactive) (interactive)
(calc-slow-wrapper (calc-slow-wrapper
@ -205,6 +229,29 @@
(calc-hyperbolic-func) (calc-hyperbolic-func)
(calc-tan arg)) (calc-tan arg))
(defun calc-cot (arg)
(interactive "P")
(calc-slow-wrapper
(if (calc-is-hyperbolic)
(calc-unary-op "coth" 'calcFunc-coth arg)
(calc-unary-op "cot" 'calcFunc-cot arg))))
(defun calc-arctan (arg)
(interactive "P")
(calc-invert-func)
(calc-tan arg))
(defun calc-tanh (arg)
(interactive "P")
(calc-hyperbolic-func)
(calc-tan arg))
(defun calc-arctanh (arg)
(interactive "P")
(calc-invert-func)
(calc-hyperbolic-func)
(calc-tan arg))
(defun calc-arctan2 () (defun calc-arctan2 ()
(interactive) (interactive)
(calc-slow-wrapper (calc-slow-wrapper
@ -220,8 +267,6 @@
(calc-slow-wrapper (calc-slow-wrapper
(calc-pop-push-record 1 "i*" (math-imaginary (calc-top-n 1))))) (calc-pop-push-record 1 "i*" (math-imaginary (calc-top-n 1)))))
(defun calc-to-degrees (arg) (defun calc-to-degrees (arg)
(interactive "P") (interactive "P")
(calc-wrapper (calc-wrapper
@ -794,6 +839,169 @@
(t (calc-record-why 'scalarp x) (t (calc-record-why 'scalarp x)
(list 'calcFunc-tan x)))) (list 'calcFunc-tan x))))
(defun calcFunc-sec (x)
(cond ((and (integerp x)
(eq calc-angle-mode 'deg)
(= (% x 180) 0))
(if (= (% x 360) 0)
1
-1))
((and (integerp x)
(eq calc-angle-mode 'rad)
(= x 0))
1)
((Math-scalarp x)
(math-with-extra-prec 2
(math-sec-raw (math-to-radians (math-float x)))))
((eq (car x) 'sdev)
(if (math-constp x)
(math-with-extra-prec 2
(let* ((xx (math-to-radians (math-float (nth 1 x))))
(xs (math-to-radians (math-float (nth 2 x))))
(sc (math-sin-cos-raw xx)))
(if (and (math-zerop (cdr sc))
(not calc-infinite-mode))
(progn
(calc-record-why "*Division by zero")
(list 'calcFunc-sec x))
(math-make-sdev (math-div-float '(float 1 0) (cdr sc))
(math-div-float
(math-mul xs (car sc))
(math-sqr (cdr sc)))))))
(math-make-sdev (calcFunc-sec (nth 1 x))
(math-div
(math-mul (nth 2 x)
(calcFunc-sin (nth 1 x)))
(math-sqr (calcFunc-cos (nth 1 x)))))))
((and (eq (car x) 'intv)
(math-intv-constp x))
(math-with-extra-prec 2
(let* ((xx (math-to-radians (math-float x)))
(na (math-floor (math-div (math-sub (nth 2 xx)
(math-pi-over-2))
(math-pi))))
(nb (math-floor (math-div (math-sub (nth 3 xx)
(math-pi-over-2))
(math-pi))))
(naa (math-floor (math-div (nth 2 xx) (math-pi-over-2))))
(nbb (math-floor (math-div (nth 3 xx) (math-pi-over-2))))
(span (math-sub nbb naa)))
(if (not (equal na nb))
'(intv 3 (neg (var inf var-inf)) (var inf var-inf))
(let ((int (math-sort-intv (nth 1 x)
(math-sec-raw (nth 2 xx))
(math-sec-raw (nth 3 xx)))))
(if (eq span 1)
(if (math-evenp (math-div (math-add naa 1) 2))
(math-make-intv (logior (nth 1 int) 2)
1
(nth 3 int))
(math-make-intv (logior (nth 1 int) 1)
(nth 2 int)
-1))
int))))))
((equal x '(var nan var-nan))
x)
(t (calc-record-why 'scalarp x)
(list 'calcFunc-sec x))))
(defun calcFunc-csc (x)
(cond ((and (integerp x)
(eq calc-angle-mode 'deg)
(= (% (- x 90) 180) 0))
(if (= (% (- x 90) 360) 0)
1
-1))
((Math-scalarp x)
(math-with-extra-prec 2
(math-csc-raw (math-to-radians (math-float x)))))
((eq (car x) 'sdev)
(if (math-constp x)
(math-with-extra-prec 2
(let* ((xx (math-to-radians (math-float (nth 1 x))))
(xs (math-to-radians (math-float (nth 2 x))))
(sc (math-sin-cos-raw xx)))
(if (and (math-zerop (car sc))
(not calc-infinite-mode))
(progn
(calc-record-why "*Division by zero")
(list 'calcFunc-csc x))
(math-make-sdev (math-div-float '(float 1 0) (car sc))
(math-div-float
(math-mul xs (cdr sc))
(math-sqr (car sc)))))))
(math-make-sdev (calcFunc-csc (nth 1 x))
(math-div
(math-mul (nth 2 x)
(calcFunc-cos (nth 1 x)))
(math-sqr (calcFunc-sin (nth 1 x)))))))
((and (eq (car x) 'intv)
(math-intv-constp x))
(math-with-extra-prec 2
(let* ((xx (math-to-radians (math-float x)))
(na (math-floor (math-div (nth 2 xx) (math-pi))))
(nb (math-floor (math-div (nth 3 xx) (math-pi))))
(naa (math-floor (math-div (nth 2 xx) (math-pi-over-2))))
(nbb (math-floor (math-div (nth 3 xx) (math-pi-over-2))))
(span (math-sub nbb naa)))
(if (not (equal na nb))
'(intv 3 (neg (var inf var-inf)) (var inf var-inf))
(let ((int (math-sort-intv (nth 1 x)
(math-csc-raw (nth 2 xx))
(math-csc-raw (nth 3 xx)))))
(if (eq span 1)
(if (math-evenp (math-div naa 2))
(math-make-intv (logior (nth 1 int) 2)
1
(nth 3 int))
(math-make-intv (logior (nth 1 int) 1)
(nth 2 int)
-1))
int))))))
((equal x '(var nan var-nan))
x)
(t (calc-record-why 'scalarp x)
(list 'calcFunc-csc x))))
(defun calcFunc-cot (x) ; [N N] [Public]
(cond ((and (integerp x)
(if (eq calc-angle-mode 'deg)
(= (% (- x 90) 180) 0)
(= x 0)))
0)
((Math-scalarp x)
(math-with-extra-prec 2
(math-cot-raw (math-to-radians (math-float x)))))
((eq (car x) 'sdev)
(if (math-constp x)
(math-with-extra-prec 2
(let* ((xx (math-to-radians (math-float (nth 1 x))))
(xs (math-to-radians (math-float (nth 2 x))))
(sc (math-sin-cos-raw xx)))
(if (and (math-zerop (car sc)) (not calc-infinite-mode))
(progn
(calc-record-why "*Division by zero")
(list 'calcFunc-cot x))
(math-make-sdev (math-div-float (cdr sc) (car sc))
(math-div-float xs (math-sqr (car sc)))))))
(math-make-sdev (calcFunc-cot (nth 1 x))
(math-div (nth 2 x)
(math-sqr (calcFunc-sin (nth 1 x)))))))
((and (eq (car x) 'intv) (math-intv-constp x))
(or (math-with-extra-prec 2
(let* ((xx (math-to-radians (math-float x)))
(na (math-floor (math-div (nth 2 xx) (math-pi))))
(nb (math-floor (math-div (nth 3 xx) (math-pi))))
(and (equal na nb)
(math-sort-intv (nth 1 x)
(math-cot-raw (nth 2 xx))
(math-cot-raw (nth 3 xx)))))))
'(intv 3 (neg (var inf var-inf)) (var inf var-inf))))
((equal x '(var nan var-nan))
x)
(t (calc-record-why 'scalarp x)
(list 'calcFunc-cot x))))
(defun math-sin-raw (x) ; [N N] (defun math-sin-raw (x) ; [N N]
(cond ((eq (car x) 'cplx) (cond ((eq (car x) 'cplx)
(let* ((expx (math-exp-raw (nth 2 x))) (let* ((expx (math-exp-raw (nth 2 x)))
@ -819,6 +1027,85 @@
(math-polar (math-cos-raw (math-complex x))) (math-polar (math-cos-raw (math-complex x)))
(math-sin-raw (math-sub (math-pi-over-2) x)))) (math-sin-raw (math-sub (math-pi-over-2) x))))
(defun math-sec-raw (x) ; [N N]
(cond ((eq (car x) 'cplx)
(let* ((x (math-mul x '(float 1 0)))
(expx (math-exp-raw (nth 2 x)))
(expmx (math-div-float '(float 1 0) expx))
(sh (math-mul-float (math-sub-float expx expmx) '(float 5 -1)))
(ch (math-mul-float (math-add-float expx expmx) '(float 5 -1)))
(sc (math-sin-cos-raw (nth 1 x)))
(d (math-add-float
(math-mul-float (math-sqr (car sc))
(math-sqr sh))
(math-mul-float (math-sqr (cdr sc))
(math-sqr ch)))))
(and (not (eq (nth 1 d) 0))
(list 'cplx
(math-div-float (math-mul-float (cdr sc) ch) d)
(math-div-float (math-mul-float (car sc) sh) d)))))
((eq (car x) 'polar)
(math-polar (math-sec-raw (math-complex x))))
(t
(let ((cs (math-cos-raw x)))
(if (eq cs 0)
(math-div 1 0)
(math-div-float '(float 1 0) cs))))))
(defun math-csc-raw (x) ; [N N]
(cond ((eq (car x) 'cplx)
(let* ((x (math-mul x '(float 1 0)))
(expx (math-exp-raw (nth 2 x)))
(expmx (math-div-float '(float 1 0) expx))
(sh (math-mul-float (math-sub-float expx expmx) '(float 5 -1)))
(ch (math-mul-float (math-add-float expx expmx) '(float 5 -1)))
(sc (math-sin-cos-raw (nth 1 x)))
(d (math-add-float
(math-mul-float (math-sqr (car sc))
(math-sqr ch))
(math-mul-float (math-sqr (cdr sc))
(math-sqr sh)))))
(and (not (eq (nth 1 d) 0))
(list 'cplx
(math-div-float (math-mul-float (car sc) ch) d)
(math-div-float (math-mul-float (cdr sc) sh) d)))))
((eq (car x) 'polar)
(math-polar (math-csc-raw (math-complex x))))
(t
(let ((sn (math-sin-raw x)))
(if (eq sn 0)
(math-div 1 0)
(math-div-float '(float 1 0) sn))))))
(defun math-cot-raw (x) ; [N N]
(cond ((eq (car x) 'cplx)
(let* ((x (math-mul x '(float 1 0)))
(expx (math-exp-raw (nth 2 x)))
(expmx (math-div-float '(float 1 0) expx))
(sh (math-mul-float (math-sub-float expx expmx) '(float 5 -1)))
(ch (math-mul-float (math-add-float expx expmx) '(float 5 -1)))
(sc (math-sin-cos-raw (nth 1 x)))
(d (math-add-float
(math-sqr (car sc))
(math-sqr sh))))
(and (not (eq (nth 1 d) 0))
(list 'cplx
(math-div-float
(math-mul-float (car sc) (cdr sc))
d)
(math-neg
(math-div-float
(math-mul-float sh ch)
d))))))
((eq (car x) 'polar)
(math-polar (math-cot-raw (math-complex x))))
(t
(let ((sc (math-sin-cos-raw x)))
(if (eq (nth 1 (car sc)) 0)
(math-div (cdr sc) 0)
(math-div-float (cdr sc) (car sc)))))))
;;; This could use a smarter method: Reduce x as in math-sin-raw, then ;;; This could use a smarter method: Reduce x as in math-sin-raw, then
;;; compute either sin(x) or cos(x), whichever is smaller, and compute ;;; compute either sin(x) or cos(x), whichever is smaller, and compute
;;; the other using the identity sin(x)^2 + cos(x)^2 = 1. ;;; the other using the identity sin(x)^2 + cos(x)^2 = 1.
@ -1537,6 +1824,104 @@
(list 'calcFunc-tanh x)))) (list 'calcFunc-tanh x))))
(put 'calcFunc-tanh 'math-expandable t) (put 'calcFunc-tanh 'math-expandable t)
(defun calcFunc-sech (x) ; [N N] [Public]
(cond ((eq x 0) 1)
(math-expand-formulas
(math-normalize
(list '/ 2 (list '+ (list 'calcFunc-exp x)
(list 'calcFunc-exp (list 'neg x))))))
((Math-numberp x)
(if calc-symbolic-mode (signal 'inexact-result nil))
(math-with-extra-prec 2
(let ((expx (math-exp-raw (math-float x))))
(math-div '(float 2 0) (math-add expx (math-div 1 expx))))))
((eq (car-safe x) 'sdev)
(math-make-sdev (calcFunc-sech (nth 1 x))
(math-mul (nth 2 x)
(math-mul (calcFunc-sech (nth 1 x))
(calcFunc-tanh (nth 1 x))))))
((and (eq (car x) 'intv) (math-intv-constp x))
(setq x (math-abs x))
(math-sort-intv (nth 1 x)
(calcFunc-sech (nth 2 x))
(calcFunc-sech (nth 3 x))))
((or (equal x '(var inf var-inf))
(equal x '(neg (var inf var-inf))))
0)
((equal x '(var nan var-nan))
x)
(t (calc-record-why 'numberp x)
(list 'calcFunc-sech x))))
(put 'calcFunc-sech 'math-expandable t)
(defun calcFunc-csch (x) ; [N N] [Public]
(cond ((eq x 0) (math-div 1 0))
(math-expand-formulas
(math-normalize
(list '/ 2 (list '- (list 'calcFunc-exp x)
(list 'calcFunc-exp (list 'neg x))))))
((Math-numberp x)
(if calc-symbolic-mode (signal 'inexact-result nil))
(math-with-extra-prec 2
(let ((expx (math-exp-raw (math-float x))))
(math-div '(float 2 0) (math-add expx (math-div -1 expx))))))
((eq (car-safe x) 'sdev)
(math-make-sdev (calcFunc-csch (nth 1 x))
(math-mul (nth 2 x)
(math-mul (calcFunc-csch (nth 1 x))
(calcFunc-coth (nth 1 x))))))
((eq (car x) 'intv)
(if (and (Math-negp (nth 2 x))
(Math-posp (nth 3 x)))
'(intv 3 (neg (var inf var-inf)) (var inf var-inf))
(math-sort-intv (nth 1 x)
(calcFunc-csch (nth 2 x))
(calcFunc-csch (nth 3 x)))))
((or (equal x '(var inf var-inf))
(equal x '(neg (var inf var-inf))))
0)
((equal x '(var nan var-nan))
x)
(t (calc-record-why 'numberp x)
(list 'calcFunc-csch x))))
(put 'calcFunc-csch 'math-expandable t)
(defun calcFunc-coth (x) ; [N N] [Public]
(cond ((eq x 0) (math-div 1 0))
(math-expand-formulas
(math-normalize
(let ((expx (list 'calcFunc-exp x))
(expmx (list 'calcFunc-exp (list 'neg x))))
(math-normalize
(list '/ (list '+ expx expmx) (list '- expx expmx))))))
((Math-numberp x)
(if calc-symbolic-mode (signal 'inexact-result nil))
(math-with-extra-prec 2
(let* ((expx (calcFunc-exp (math-float x)))
(expmx (math-div 1 expx)))
(math-div (math-add expx expmx)
(math-sub expx expmx)))))
((eq (car-safe x) 'sdev)
(math-make-sdev (calcFunc-coth (nth 1 x))
(math-div (nth 2 x)
(math-sqr (calcFunc-sinh (nth 1 x))))))
((eq (car x) 'intv)
(if (and (Math-negp (nth 2 x))
(Math-posp (nth 3 x)))
'(intv 3 (neg (var inf var-inf)) (var inf var-inf))
(math-sort-intv (nth 1 x)
(calcFunc-coth (nth 2 x))
(calcFunc-coth (nth 3 x)))))
((equal x '(var inf var-inf))
1)
((equal x '(neg (var inf var-inf)))
-1)
((equal x '(var nan var-nan))
x)
(t (calc-record-why 'numberp x)
(list 'calcFunc-coth x))))
(put 'calcFunc-coth 'math-expandable t)
(defun calcFunc-arcsinh (x) ; [N N] [Public] (defun calcFunc-arcsinh (x) ; [N N] [Public]
(cond ((eq x 0) 0) (cond ((eq x 0) 0)
(math-expand-formulas (math-expand-formulas

View file

@ -153,10 +153,14 @@ tan(select(2 a)) := 2 tan(select(a)) / (1 - tan(a)^2),
tan(select(n a)) := (tan((n-1) select(a)) + tan(a)) / tan(select(n a)) := (tan((n-1) select(a)) + tan(a)) /
(1 - tan((n-1) a) tan(a)) (1 - tan((n-1) a) tan(a))
:: integer(n) :: n > 2, :: integer(n) :: n > 2,
cot(select(a + b)) := (cot(select(a)) cot(b) - 1) /
(cot(a) + cot(b)),
sinh(select(a + b)) := sinh(select(a)) cosh(b) + cosh(a) sinh(b), sinh(select(a + b)) := sinh(select(a)) cosh(b) + cosh(a) sinh(b),
cosh(select(a + b)) := cosh(select(a)) cosh(b) + sinh(a) sinh(b), cosh(select(a + b)) := cosh(select(a)) cosh(b) + sinh(a) sinh(b),
tanh(select(a + b)) := (tanh(select(a)) + tanh(b)) / tanh(select(a + b)) := (tanh(select(a)) + tanh(b)) /
(1 + tanh(a) tanh(b)), (1 + tanh(a) tanh(b)),
coth(select(a + b)) := (coth(select(a)) coth(b) + 1) /
(coth(a) + coth(b)),
x && select(a || b) := (x && select(a)) || (x && b), x && select(a || b) := (x && select(a)) || (x && b),
select(a || b) && x := (select(a) && x) || (b && x), select(a || b) && x := (select(a) && x) || (b && x),
! select(a && b) := (!a) || (!b), ! select(a && b) := (!a) || (!b),
@ -269,12 +273,18 @@ exp(select(x)) := 1 / exp(select(-x)),
sin(select(x)) := -sin(select(-x)), sin(select(x)) := -sin(select(-x)),
cos(select(x)) := cos(select(-x)), cos(select(x)) := cos(select(-x)),
tan(select(x)) := -tan(select(-x)), tan(select(x)) := -tan(select(-x)),
sec(select(x)) := sec(select(-x)),
csc(select(x)) := -csc(select(-x)),
cot(select(x)) := -cot(select(-x)),
arcsin(select(x)) := -arcsin(select(-x)), arcsin(select(x)) := -arcsin(select(-x)),
arccos(select(x)) := 4 arctan(1) - arccos(select(-x)), arccos(select(x)) := 4 arctan(1) - arccos(select(-x)),
arctan(select(x)) := -arctan(select(-x)), arctan(select(x)) := -arctan(select(-x)),
sinh(select(x)) := -sinh(select(-x)), sinh(select(x)) := -sinh(select(-x)),
cosh(select(x)) := cosh(select(-x)), cosh(select(x)) := cosh(select(-x)),
tanh(select(x)) := -tanh(select(-x)), tanh(select(x)) := -tanh(select(-x)),
sech(select(x)) := sech(select(-x)),
csch(select(x)) := -csch(select(-x)),
coth(select(x)) := -coth(select(-x)),
arcsinh(select(x)) := -arcsinh(select(-x)), arcsinh(select(x)) := -arcsinh(select(-x)),
arctanh(select(x)) := -arctanh(select(-x)), arctanh(select(x)) := -arctanh(select(-x)),
select(x) = a := select(-x) = -a, select(x) = a := select(-x) = -a,

View file

@ -77,7 +77,8 @@
(let ((v (intern (nth 1 action)))) (let ((v (intern (nth 1 action))))
(calc-record-undo (list 'store (nth 1 action) (calc-record-undo (list 'store (nth 1 action)
(and (boundp v) (symbol-value v)))) (and (boundp v) (symbol-value v))))
(if (y-or-n-p (format "Un-store variable %s? " (nth 1 action))) (if (y-or-n-p (format "Un-store variable %s? "
(calc-var-name (nth 1 action))))
(progn (progn
(if (nth 2 action) (if (nth 2 action)
(set v (nth 2 action)) (set v (nth 2 action))

View file

@ -1241,6 +1241,45 @@ Entries are (SYMBOL EXPR DOC-STRING TEMP-TYPE BASE-UNITS).")
(eq (nth 1 (nth 2 rad)) 'rad) (eq (nth 1 (nth 2 rad)) 'rad)
(list 'calcFunc-tan (nth 1 rad)))))) (list 'calcFunc-tan (nth 1 rad))))))
(math-defsimplify calcFunc-sec
(and math-simplifying-units
(math-units-in-expr-p (nth 1 math-simplify-expr) nil)
(let ((rad (math-simplify-units
(math-evaluate-expr
(math-to-standard-units (nth 1 math-simplify-expr) nil))))
(calc-angle-mode 'rad))
(and (eq (car-safe rad) '*)
(math-realp (nth 1 rad))
(eq (car-safe (nth 2 rad)) 'var)
(eq (nth 1 (nth 2 rad)) 'rad)
(list 'calcFunc-sec (nth 1 rad))))))
(math-defsimplify calcFunc-csc
(and math-simplifying-units
(math-units-in-expr-p (nth 1 math-simplify-expr) nil)
(let ((rad (math-simplify-units
(math-evaluate-expr
(math-to-standard-units (nth 1 math-simplify-expr) nil))))
(calc-angle-mode 'rad))
(and (eq (car-safe rad) '*)
(math-realp (nth 1 rad))
(eq (car-safe (nth 2 rad)) 'var)
(eq (nth 1 (nth 2 rad)) 'rad)
(list 'calcFunc-csc (nth 1 rad))))))
(math-defsimplify calcFunc-cot
(and math-simplifying-units
(math-units-in-expr-p (nth 1 math-simplify-expr) nil)
(let ((rad (math-simplify-units
(math-evaluate-expr
(math-to-standard-units (nth 1 math-simplify-expr) nil))))
(calc-angle-mode 'rad))
(and (eq (car-safe rad) '*)
(math-realp (nth 1 rad))
(eq (car-safe (nth 2 rad)) 'var)
(eq (nth 1 (nth 2 rad)) 'rad)
(list 'calcFunc-cot (nth 1 rad))))))
(defun math-remove-units (expr) (defun math-remove-units (expr)
(if (math-check-unit-name expr) (if (math-check-unit-name expr)

View file

@ -412,6 +412,30 @@
(math-normalize (math-normalize
(list 'calcFunc-cos u)))))))) (list 'calcFunc-cos u))))))))
(put 'calcFunc-sec\' 'math-derivative-1
(function (lambda (u) (math-to-radians-2
(math-mul
(math-normalize
(list 'calcFunc-sec u))
(math-normalize
(list 'calcFunc-tan u)))))))
(put 'calcFunc-csc\' 'math-derivative-1
(function (lambda (u) (math-neg
(math-to-radians-2
(math-mul
(math-normalize
(list 'calcFunc-csc u))
(math-normalize
(list 'calcFunc-cot u))))))))
(put 'calcFunc-cot\' 'math-derivative-1
(function (lambda (u) (math-neg
(math-to-radians-2
(math-div 1 (math-sqr
(math-normalize
(list 'calcFunc-sin u)))))))))
(put 'calcFunc-arcsin\' 'math-derivative-1 (put 'calcFunc-arcsin\' 'math-derivative-1
(function (lambda (u) (function (lambda (u)
(math-from-radians-2 (math-from-radians-2
@ -441,6 +465,24 @@
(math-normalize (math-normalize
(list 'calcFunc-cosh u))))))) (list 'calcFunc-cosh u)))))))
(put 'calcFunc-sech\' 'math-derivative-1
(function (lambda (u) (math-neg
(math-mul
(math-normalize (list 'calcFunc-sech u))
(math-normalize (list 'calcFunc-tanh u)))))))
(put 'calcFunc-csch\' 'math-derivative-1
(function (lambda (u) (math-neg
(math-mul
(math-normalize (list 'calcFunc-csch u))
(math-normalize (list 'calcFunc-coth u)))))))
(put 'calcFunc-tanh\' 'math-derivative-1
(function (lambda (u) (math-neg
(math-div 1 (math-sqr
(math-normalize
(list 'calcFunc-sinh u))))))))
(put 'calcFunc-arcsinh\' 'math-derivative-1 (put 'calcFunc-arcsinh\' 'math-derivative-1
(function (lambda (u) (function (lambda (u)
(math-div 1 (math-normalize (math-div 1 (math-normalize
@ -1053,7 +1095,10 @@
(while (and p (while (and p
(memq (car (car p)) '(calcFunc-sin (memq (car (car p)) '(calcFunc-sin
calcFunc-cos calcFunc-cos
calcFunc-tan)) calcFunc-tan
calcFunc-sec
calcFunc-csc
calcFunc-cot))
(equal (nth 1 (car p)) math-integ-var)) (equal (nth 1 (car p)) math-integ-var))
(setq p (cdr p))) (setq p (cdr p)))
(null p)) (null p))
@ -1068,6 +1113,9 @@
(memq (car (car p)) '(calcFunc-sinh (memq (car (car p)) '(calcFunc-sinh
calcFunc-cosh calcFunc-cosh
calcFunc-tanh calcFunc-tanh
calcFunc-sech
calcFunc-csch
calcFunc-coth
calcFunc-exp)) calcFunc-exp))
(equal (nth 1 (car p)) math-integ-var)) (equal (nth 1 (car p)) math-integ-var))
(setq p (cdr p))) (setq p (cdr p)))
@ -1619,6 +1667,27 @@
(math-neg (math-from-radians-2 (math-neg (math-from-radians-2
(list 'calcFunc-ln (list 'calcFunc-cos u)))))) (list 'calcFunc-ln (list 'calcFunc-cos u))))))
(math-defintegral calcFunc-sec
(and (equal u math-integ-var)
(math-from-radians-2
(list 'calcFunc-ln
(math-add
(list 'calcFunc-sec u)
(list 'calcFunc-tan u))))))
(math-defintegral calcFunc-csc
(and (equal u math-integ-var)
(math-from-radians-2
(list 'calcFunc-ln
(math-sub
(list 'calcFunc-csc u)
(list 'calcFunc-cot u))))))
(math-defintegral calcFunc-cot
(and (equal u math-integ-var)
(math-from-radians-2
(list 'calcFunc-ln (list 'calcFunc-sin u)))))
(math-defintegral calcFunc-arcsin (math-defintegral calcFunc-arcsin
(and (equal u math-integ-var) (and (equal u math-integ-var)
(math-add (math-mul u (list 'calcFunc-arcsin u)) (math-add (math-mul u (list 'calcFunc-arcsin u))
@ -1650,6 +1719,18 @@
(and (equal u math-integ-var) (and (equal u math-integ-var)
(list 'calcFunc-ln (list 'calcFunc-cosh u)))) (list 'calcFunc-ln (list 'calcFunc-cosh u))))
(math-defintegral calcFunc-sech
(and (equal u math-integ-var)
(list 'calcFunc-arctan (list 'calcFunc-sinh u))))
(math-defintegral calcFunc-csch
(and (equal u math-integ-var)
(list 'calcFunc-ln (list 'calcFunc-tanh (math-div u 2)))))
(math-defintegral calcFunc-coth
(and (equal u math-integ-var)
(list 'calcFunc-ln (list 'calcFunc-sinh u))))
(math-defintegral calcFunc-arcsinh (math-defintegral calcFunc-arcsinh
(and (equal u math-integ-var) (and (equal u math-integ-var)
(math-sub (math-mul u (list 'calcFunc-arcsinh u)) (math-sub (math-mul u (list 'calcFunc-arcsinh u))

View file

@ -35,7 +35,9 @@
'( calcFunc-log '( calcFunc-log
calcFunc-ln calcFunc-exp calcFunc-ln calcFunc-exp
calcFunc-sin calcFunc-cos calcFunc-tan calcFunc-sin calcFunc-cos calcFunc-tan
calcFunc-sec calcFunc-csc calcFunc-cot
calcFunc-sinh calcFunc-cosh calcFunc-tanh calcFunc-sinh calcFunc-cosh calcFunc-tanh
calcFunc-sech calcFunc-csch calcFunc-coth
calcFunc-arcsin calcFunc-arccos calcFunc-arctan calcFunc-arcsin calcFunc-arccos calcFunc-arctan
calcFunc-arcsinh calcFunc-arccosh calcFunc-arctanh)) calcFunc-arcsinh calcFunc-arccosh calcFunc-arctanh))

View file

@ -1397,7 +1397,7 @@ Make your editing in this buffer take effect for this session."
:tag "Save for Future Sessions" :tag "Save for Future Sessions"
:help-echo "\ :help-echo "\
Make your editing in this buffer take effect for future Emacs sessions. Make your editing in this buffer take effect for future Emacs sessions.
This updates your Emacs initialization file or creates a new one one." This updates your Emacs initialization file or creates a new one."
:action (lambda (widget &optional event) :action (lambda (widget &optional event)
(Custom-save))) (Custom-save)))
(if custom-reset-button-menu (if custom-reset-button-menu
@ -1671,15 +1671,15 @@ group now hidden, invoke \"Show\", above, to show contents.")
the value displayed for this %c is invalid and cannot be set.") the value displayed for this %c is invalid and cannot be set.")
(modified "*" custom-modified-face "\ (modified "*" custom-modified-face "\
you have edited the value as text, but you have not set the %c." "\ you have edited the value as text, but you have not set the %c." "\
you have edited something in this group, but not set it.") you have edited something in this group, but not set anything yet.")
(set "+" custom-set-face "\ (set "+" custom-set-face "\
you have set this %c, but not saved it for future sessions." "\ you have set this %c, but not saved it for future sessions." "\
something in this group has been set, but not saved.") you have set something in this group, but not saved anything yet.")
(changed ":" custom-changed-face "\ (changed ":" custom-changed-face "\
this %c has been changed outside the customize buffer." "\ this %c has been changed outside the customize buffer." "\
something in this group has been changed outside customize.") something in this group has been changed outside customize.")
(saved "!" custom-saved-face "\ (saved "!" custom-saved-face "\
this %c has been set and saved." "\ You have set this %c and saved it through Customize in your init file." "\
something in this group has been set and saved.") something in this group has been set and saved.")
(rogue "@" custom-rogue-face "\ (rogue "@" custom-rogue-face "\
this %c has not been changed with customize." "\ this %c has not been changed with customize." "\

View file

@ -1,6 +1,6 @@
;;; cus-start.el --- define customization properties of builtins ;;; cus-start.el --- define customization properties of builtins
;; ;;
;; Copyright (C) 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. ;; Copyright (C) 1997, 1999, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
;; ;;
;; Author: Per Abrahamsen <abraham@dina.kvl.dk> ;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Keywords: internal ;; Keywords: internal
@ -39,6 +39,8 @@
(pre-abbrev-expand-hook abbrev-mode hook) (pre-abbrev-expand-hook abbrev-mode hook)
;; alloc.c ;; alloc.c
(gc-cons-threshold alloc integer) (gc-cons-threshold alloc integer)
(garbage-collection-messages alloc boolean)
;; undo.c
(undo-limit undo integer) (undo-limit undo integer)
(undo-strong-limit undo integer) (undo-strong-limit undo integer)
(undo-outer-limit undo (undo-outer-limit undo
@ -52,7 +54,6 @@ This should only be chosen under exceptional circumstances,
since it could result in memory overflow and make Emacs crash." since it could result in memory overflow and make Emacs crash."
nil)) nil))
"22.1") "22.1")
(garbage-collection-messages alloc boolean)
;; buffer.c ;; buffer.c
(mode-line-format modeline sexp) ;Hard to do right. (mode-line-format modeline sexp) ;Hard to do right.
(default-major-mode internal function) (default-major-mode internal function)
@ -291,7 +292,7 @@ since it could result in memory overflow and make Emacs crash."
(mouse-autoselect-window display boolean "21.3") (mouse-autoselect-window display boolean "21.3")
(x-use-underline-position-properties display boolean "21.3") (x-use-underline-position-properties display boolean "21.3")
(x-stretch-cursor display boolean "21.1"))) (x-stretch-cursor display boolean "21.1")))
this symbol group type native-p version this symbol group type standard version native-p
;; This function turns a value ;; This function turns a value
;; into an expression which produces that value. ;; into an expression which produces that value.
(quoter (lambda (sexp) (quoter (lambda (sexp)
@ -300,8 +301,6 @@ since it could result in memory overflow and make Emacs crash."
(and (listp sexp) (and (listp sexp)
(memq (car sexp) '(lambda))) (memq (car sexp) '(lambda)))
(stringp sexp) (stringp sexp)
;; (and (fboundp 'characterp)
;; (characterp sexp))
(numberp sexp)) (numberp sexp))
sexp sexp
(list 'quote sexp))))) (list 'quote sexp)))))
@ -312,6 +311,12 @@ since it could result in memory overflow and make Emacs crash."
group (nth 1 this) group (nth 1 this)
type (nth 2 this) type (nth 2 this)
version (nth 3 this) version (nth 3 this)
;; If we did not specify any standard value expression above,
;; use the current value as the standard value.
standard (if (nthcdr 4 this)
(nth 4 this)
(when (default-boundp symbol)
(funcall quoter (default-value symbol))))
;; Don't complain about missing variables which are ;; Don't complain about missing variables which are
;; irrelevant to this platform. ;; irrelevant to this platform.
native-p (save-match-data native-p (save-match-data
@ -329,8 +334,7 @@ since it could result in memory overflow and make Emacs crash."
(message "Note, built-in variable `%S' not bound" symbol)) (message "Note, built-in variable `%S' not bound" symbol))
;; Save the standard value, unless we already did. ;; Save the standard value, unless we already did.
(or (get symbol 'standard-value) (or (get symbol 'standard-value)
(put symbol 'standard-value (put symbol 'standard-value (list standard)))
(list (funcall quoter (default-value symbol)))))
;; If this is NOT while dumping Emacs, ;; If this is NOT while dumping Emacs,
;; set up the rest of the customization info. ;; set up the rest of the customization info.
(unless purify-flag (unless purify-flag

View file

@ -2128,6 +2128,7 @@ instead of `dired-actual-switches'."
(save-excursion (save-excursion
(let* ((count 0) (let* ((count 0)
(buffer-read-only nil) (buffer-read-only nil)
(buffer-undo-list t)
(switches (or switches dired-actual-switches)) (switches (or switches dired-actual-switches))
new-dir-name new-dir-name
(R-ftp-base-dir-regex (R-ftp-base-dir-regex

View file

@ -182,7 +182,7 @@
(make-local-variable 'parse-sexp-ignore-comments) (make-local-variable 'parse-sexp-ignore-comments)
(setq parse-sexp-ignore-comments t) (setq parse-sexp-ignore-comments t)
(make-local-variable 'outline-regexp) (make-local-variable 'outline-regexp)
(setq outline-regexp ";;;;* [^ \t\n]\\|(") (setq outline-regexp ";;;\\(;* [^ \t\n]\\|###autoload\\)\\|(")
(make-local-variable 'outline-level) (make-local-variable 'outline-level)
(setq outline-level 'lisp-outline-level) (setq outline-level 'lisp-outline-level)
(make-local-variable 'comment-start) (make-local-variable 'comment-start)
@ -212,11 +212,10 @@
(defun lisp-outline-level () (defun lisp-outline-level ()
"Lisp mode `outline-level' function." "Lisp mode `outline-level' function."
(let ((len (- (match-end 0) (match-beginning 0))))
(if (looking-at "(\\|;;;###autoload") (if (looking-at "(\\|;;;###autoload")
1000 1000
(looking-at outline-regexp) len)))
(- (match-end 0) (match-beginning 0))))
(defvar lisp-mode-shared-map (defvar lisp-mode-shared-map
(let ((map (make-sparse-keymap))) (let ((map (make-sparse-keymap)))

View file

@ -1,3 +1,20 @@
2005-02-13 Reiner Steib <Reiner.Steib@gmx.de>
* gnus.el (gnus-group-startup-message): Search for gnus images in
etc/images/gnus.
* mm-util.el (mm-find-charset-region): Likewise.
* smiley.el (smiley-data-directory): Search for smilies in
etc/images/smilies.
2005-02-09 Kim F. Storm <storm@cua.dk>
Change Emacs release version from 21.4 to 22.1 throughout.
Change Emacs development version from 21.3.50 to 22.0.50.
2005-02-08 Simon Josefsson <jas@extundo.com>
* imap.el (imap-log): Doc fix.
2005-02-03 Katsumi Yamaoka <yamaoka@jpl.org> 2005-02-03 Katsumi Yamaoka <yamaoka@jpl.org>
* gnus-art.el (gnus-mime-inline-part): Show the raw contents if a * gnus-art.el (gnus-mime-inline-part): Show the raw contents if a

View file

@ -326,7 +326,8 @@ be set in `.emacs' instead."
(defvar gnus-mode-line-image-cache t) (defvar gnus-mode-line-image-cache t)
(if (fboundp 'find-image) (if (fboundp 'find-image)
(defun gnus-mode-line-buffer-identification (line) (defun gnus-mode-line-buffer-identification (line)
(let ((str (car-safe line))) (let ((str (car-safe line))
(load-path (mm-image-load-path)))
(if (and (stringp str) (if (and (stringp str)
(string-match "^Gnus:" str)) (string-match "^Gnus:" str))
(progn (add-text-properties (progn (add-text-properties
@ -875,7 +876,7 @@ be set in `.emacs' instead."
((and ((and
(fboundp 'find-image) (fboundp 'find-image)
(display-graphic-p) (display-graphic-p)
(let* ((data-directory (nnheader-find-etc-directory "gnus")) (let* ((data-directory (nnheader-find-etc-directory "images/gnus"))
(image (find-image (image (find-image
`((:type xpm :file "gnus.xpm" `((:type xpm :file "gnus.xpm"
:color-symbols :color-symbols

View file

@ -241,7 +241,11 @@ encoded mailboxes which doesn't translate into ISO-8859-1."
:type 'boolean) :type 'boolean)
(defcustom imap-log nil (defcustom imap-log nil
"If non-nil, a imap session trace is placed in *imap-log* buffer." "If non-nil, a imap session trace is placed in *imap-log* buffer.
Note that username, passwords and other privacy sensitive
information (such as e-mail) may be stored in the *imap-log*
buffer. It is not written to disk, however. Do not enable this
variable unless you are comfortable with that."
:group 'imap :group 'imap
:type 'boolean) :type 'boolean)

Some files were not shown because too many files have changed in this diff Show more