Mercurial > emacs
annotate lisp/calc/README @ 107521:54f3a4d055ee
Document font-use-system-font.
* cmdargs.texi (Font X): Move most content to Fonts.
* frames.texi (Fonts): New node. Document font-use-system-font.
* emacs.texi (Top):
* xresources.texi (Table of Resources):
* mule.texi (Defining Fontsets, Charsets): Update xrefs.
| author | Chong Yidong <cyd@stupidchicken.com> |
|---|---|
| date | Sat, 20 Mar 2010 13:24:06 -0400 |
| parents | 1d1d5d9bd884 |
| children | b2e098d47dff 376148b31b5e |
| rev | line source |
|---|---|
| 106815 | 1 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
|
75587
68cfc1db0d26
Add copyright and permissions notices.
Glenn Morris <rgm@gnu.org>
parents:
75364
diff
changeset
|
2 Free Software Foundation, Inc. |
|
75774
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
3 See the end of the file for license conditions. |
|
75587
68cfc1db0d26
Add copyright and permissions notices.
Glenn Morris <rgm@gnu.org>
parents:
75364
diff
changeset
|
4 |
| 40785 | 5 |
| 41048 | 6 This directory contains Calc, an advanced desk calculator for GNU |
| 7 Emacs. | |
| 40785 | 8 |
| 75364 | 9 "Calc" Copyright (C) 1990, 1991, 1992, 1993, 2001, 2002, 2003, 2004, |
| 106815 | 10 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. |
| 40785 | 11 |
| 41048 | 12 Written by: |
| 13 Dave Gillespie | |
| 14 c/o Synaptics, Inc. | |
| 15 2698 Orchard Parkway | |
| 16 San Jose CA 95134 | |
| 17 daveg@synaptics.com, uunet!synaptx!daveg | |
| 40785 | 18 |
|
49598
0d8b17d428b5
Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
49262
diff
changeset
|
19 Currently maintained by: |
|
77465
1154f082efd9
Update maintainer's address.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
75774
diff
changeset
|
20 Jay Belanger <jay.p.belanger@gmail.com> |
| 40785 | 21 |
| 22 From the introduction to the manual: | |
| 23 | |
| 24 "Calc" is an advanced calculator and mathematical tool that runs as | |
| 25 part of the GNU Emacs environment. Very roughly based on the HP-28/48 | |
| 26 series of calculators, its many features include: | |
| 27 | |
| 28 * Choice of algebraic or RPN (stack-based) entry of calculations. | |
| 29 | |
| 30 * Arbitrary precision integers and floating-point numbers. | |
| 31 | |
| 32 * Arithmetic on rational numbers, complex numbers (rectangular and | |
| 33 polar), error forms with standard deviations, open and closed | |
| 34 intervals, vectors and matrices, dates and times, infinities, | |
| 35 sets, quantities with units, and algebraic formulas. | |
| 36 | |
| 37 * Mathematical operations such as logarithms and trigonometric functions. | |
| 38 | |
| 39 * Programmer's features (bitwise operations, non-decimal numbers). | |
| 40 | |
| 41 * Financial functions such as future value and internal rate of return. | |
| 42 | |
| 43 * Number theoretical features such as prime factorization and | |
| 44 arithmetic modulo M for any M. | |
| 45 | |
| 46 * Algebraic manipulation features, including symbolic calculus. | |
| 47 | |
| 48 * Moving data to and from regular editing buffers. | |
| 49 | |
| 50 * "Embedded mode" for manipulating Calc formulas and data directly | |
| 51 inside any editing buffer. | |
| 52 | |
| 53 * Graphics using GNUPLOT, a versatile (and free) plotting program. | |
| 54 | |
| 55 * Easy programming using keyboard macros, algebraic formulas, | |
| 56 algebraic rewrite rules, or extended Emacs Lisp. | |
| 57 | |
| 58 | |
| 59 Calc is written entirely in Emacs Lisp, for maximum portability. | |
| 60 | |
| 61 I am anxious to hear about your experiences using Calc. Send mail to | |
|
77465
1154f082efd9
Update maintainer's address.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
75774
diff
changeset
|
62 "jay.p.belanger@gmail.com". A bug report is most useful if you include the |
| 40785 | 63 exact input and output that occurred, any modes in effect (such as the |
| 64 current precision), and so on. If you find Calc is difficult to operate | |
| 65 in any way, or if you have other suggestions, don't hesitate to let me | |
| 66 know. If you find errors (including simple typos) in the manual, let | |
| 67 me know. Even if you find no bugs at all I would love to hear your | |
| 68 opinions. | |
| 69 | |
| 70 | |
| 71 | |
| 72 Summary of changes to "Calc" | |
| 73 ------- -- ------- -- ---- | |
| 74 | |
|
106077
be9db02d5127
Mention twos-complement notation.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
101527
diff
changeset
|
75 Emacs 23.2 |
|
be9db02d5127
Mention twos-complement notation.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
101527
diff
changeset
|
76 |
|
be9db02d5127
Mention twos-complement notation.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
101527
diff
changeset
|
77 * Added twos-complement display. |
|
be9db02d5127
Mention twos-complement notation.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
101527
diff
changeset
|
78 |
|
97468
ea6179f95b58
*** empty log message ***
Jay Belanger <jay.p.belanger@gmail.com>
parents:
97466
diff
changeset
|
79 Emacs 23.1: |
|
ea6179f95b58
*** empty log message ***
Jay Belanger <jay.p.belanger@gmail.com>
parents:
97466
diff
changeset
|
80 |
|
101527
8e4b80af88d5
Mention change to `j *'.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
100908
diff
changeset
|
81 * Gave `j *' (cal-sel-mult-both-sides) an option to expand the |
|
8e4b80af88d5
Mention change to `j *'.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
100908
diff
changeset
|
82 denominator. |
|
8e4b80af88d5
Mention change to `j *'.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
100908
diff
changeset
|
83 |
|
98606
4a3d554a7f95
Mention `calc-embedded-word-regexp'.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
97468
diff
changeset
|
84 * Use `calc-embedded-word-regexp' for finding words in |
|
4a3d554a7f95
Mention `calc-embedded-word-regexp'.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
97468
diff
changeset
|
85 `calc-embedded-word' in place of delimiters. |
|
4a3d554a7f95
Mention `calc-embedded-word-regexp'.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
97468
diff
changeset
|
86 |
|
97466
19b444af3a2d
*** empty log message ***
Jay Belanger <jay.p.belanger@gmail.com>
parents:
95085
diff
changeset
|
87 * Remove version numbering; use Emacs version for reference. |
|
19b444af3a2d
*** empty log message ***
Jay Belanger <jay.p.belanger@gmail.com>
parents:
95085
diff
changeset
|
88 |
|
95085
7aaa89295524
Mention register commands.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
94654
diff
changeset
|
89 * Added support for using registers. |
|
7aaa89295524
Mention register commands.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
94654
diff
changeset
|
90 |
|
87465
21856dff27ce
Mention new languages.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
86140
diff
changeset
|
91 * Added support for Yacas, Maxima and Giac languages. |
|
21856dff27ce
Mention new languages.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
86140
diff
changeset
|
92 |
| 86140 | 93 * Added a menu. |
| 94 | |
|
85488
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
95 * Added logistic non-linear curves to curve-fitting. |
|
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
96 |
|
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
97 * Added option of plotting data points and curve when curve-fitting. |
|
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
98 |
|
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
99 * Made unit conversions exact when possible. |
| 40785 | 100 |
|
95085
7aaa89295524
Mention register commands.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
94654
diff
changeset
|
101 * Lowered the precedence of negation. |
| 40785 | 102 |
|
62173
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
103 Version 2.1: |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
104 |
|
67545
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
105 * New matrix mode for square matrices. Improved handling of |
|
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
106 non-commutative products. |
|
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
107 |
|
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
108 * New functions: powerexpand and ldiv. |
|
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
109 |
|
62173
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
110 * Added new functions: sec, csc, cot, sech, csch, coth. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
111 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
112 * 0^0 now evaluates to 1. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
113 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
114 * Added a new language mode for LaTeX. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
115 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
116 * Calc now tries to use an appropriate language mode in embedded mode. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
117 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
118 * Calc now restores original modes when leaving embedded mode. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
119 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
120 * User settable variables which are not set with keystrokes are now |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
121 customizable. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
122 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
123 * Made ~/.calc.el the default Calc settings file. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
124 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
125 * Miscellaneous updates and bugfixes. |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
126 |
|
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
127 |
| 40785 | 128 Version 2.02f: |
| 129 | |
| 130 * Fixed a bug which broke `I', `H', `K' prefix keys in recent Emacs. | |
| 131 | |
| 132 * Fixed a bug in calc.texinfo which prevented "make tex2" from working. | |
| 133 | |
| 134 * Updated `C-y' (calc-yank) to understand Emacs 19 generalized kill ring. | |
| 135 | |
| 136 * Added a copy of "calccard.tex", the Calc quick reference card. | |
| 137 | |
| 138 | |
| 139 Version 2.02e: | |
| 140 | |
| 141 * Fixed an installation bug caused by recent changes to `write-region'. | |
| 142 | |
| 143 | |
| 144 Version 2.02d: | |
| 145 | |
| 146 * Fixed a minor installation problem with a Emacs 19.29 byte-compiler bug. | |
| 147 | |
| 148 * Removed archaic "macedit" package (superseded by "edmacro"). | |
| 149 | |
| 150 | |
| 151 Version 2.02c: | |
| 152 | |
| 153 * Patch to port Calc to Lucid Emacs 19; still works with GNU 18 and GNU 19. | |
| 154 | |
| 155 * Fixed a bug that broke `C-x C-c' after Calc graphics had been used. | |
| 156 | |
| 157 | |
| 158 Version 2.02b: | |
| 159 | |
| 160 * Minor patch to port Calc to GNU Emacs 19. Will be superseded by Calc 3.00. | |
| 161 | |
| 162 | |
| 163 Version 2.02: | |
| 164 | |
| 165 * Revamped the manual a bit; rearranged some sections. | |
| 166 | |
| 167 * Added marginal notes for Key/Function Index refs in printed manual. | |
| 168 | |
| 169 * Changed `M-# r' to deal more gracefully with blank lines. | |
| 170 | |
| 171 * Made reductions like `V R +' and `M-# :' considerably faster. | |
| 172 | |
| 173 * Improved parsing and display of cases like "[a + b]". | |
| 174 | |
| 175 * Added `t +' and `t -' for doing business date arithmetic. | |
| 176 | |
| 177 * Added "syntax tables," the opposite of compositions. | |
| 178 | |
| 179 * Added another Rewrites Tutorial exercise. | |
| 180 | |
| 181 * Added the "vmatches" function. | |
| 182 | |
| 183 * Added the `Modes' variable and `m g' command. | |
| 184 | |
| 185 * Improved `u s' to cancel, e.g., "11 mph hr / yd" to get a number. | |
| 186 | |
| 187 * Added "quick units" commands "u 0" through "u 9". | |
| 188 | |
| 189 * Moved `M-%' to calc.el to avoid autoloading problems. | |
| 190 | |
| 191 * Added `M-=' during algebraic entry, acts like `RET ='. | |
| 192 | |
| 193 * Made `LFD' prevent evaluation when finishing a calc-edit command. | |
| 194 | |
| 195 * Changed calc-store commands to use `t .' mode for trail display. | |
| 196 | |
| 197 * Improved integrator to understand forms involving "erf". | |
| 198 | |
| 199 * Fixed parser to make sense of "[1....1e2]" input. | |
| 200 | |
| 201 * Fixed FORTRAN parser to treat a(i,j) as a_i_j if a is declared matrix. | |
| 202 | |
| 203 * Got rid of some version number stamps to reduce size of patches. | |
| 204 | |
| 205 * Fixed a bug in defmath treating "<=" and ">=" predicates. | |
| 206 | |
| 207 * Fixed a bug in which Calc crashed multiplying two date forms. | |
| 208 | |
| 209 * Fixed a bug in line breaker that crashed for large, nested formulas. | |
| 210 | |
| 211 * Fixed a bug using ` to edit string("foo"). | |
| 212 | |
| 213 * Fixed a bug where `M-# y' in Big mode copied stack level number. | |
| 214 | |
| 215 * Fixed a bug where `g O' used wrong default directory, no completion. | |
| 216 | |
| 217 * Fixed a bug where "foo_bar(i)" parsed in C mode but showed as foo#bar. | |
| 218 | |
| 219 * Fixed several bugs where large calculations got "computation too long." | |
| 220 | |
| 221 | |
| 222 Version 2.01: | |
| 223 | |
| 224 * Added percentage commands `M-%', `b %', and `c %'. | |
| 225 | |
| 226 * Changed Big mode to force radix-10 in superscripts. | |
| 227 | |
| 228 * Improved display of fractions in various language modes. | |
| 229 | |
| 230 * Changed `a n' to work properly with equations and inequalities. | |
| 231 | |
| 232 * The problem with cross references to Index nodes in TeX has been fixed. | |
| 233 | |
| 234 * Fixed a bug where recursive esc-maps make calc-ext/-aent unloadable. | |
| 235 | |
| 236 * Fixed a bug in `M-# k', then `OFF' right away, with fresh Emacs. | |
| 237 | |
| 238 * Fixed a bug in which "S_i_j" was formatted wrong after `j s'. | |
| 239 | |
| 240 * Fixed a bug in which `h k u c' positioned cursor on wrong line. | |
| 241 | |
| 242 * Fixed a bug where `z ?' crashed if `z %' was defined. | |
| 243 | |
| 244 * Fixed a bug in `j O' (calc-select-once-maybe). | |
| 245 | |
| 246 * Fixed "make private" not to ask "Delete excess versions" and crash. | |
| 247 | |
| 248 | |
| 249 Version 2.00: | |
| 250 | |
| 251 * First complete posting of Calc since 1.01. | |
| 252 | |
| 253 * Most parts of Calc have seen changes since version 1.07. See | |
| 254 section "New for Calc 2.00" in the manual for a summary. In | |
| 255 the FTP version of the Calc distribution, the file README.prev | |
| 256 contains a detailed change history from 1.00 up to 2.00. | |
| 257 | |
|
75774
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
258 |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
259 This file is part of GNU Emacs. |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
260 |
|
94654
6c9af2bfcfee
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
261 GNU Emacs is free software: you can redistribute it and/or modify |
|
75774
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
262 it under the terms of the GNU General Public License as published by |
|
94654
6c9af2bfcfee
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
263 the Free Software Foundation, either version 3 of the License, or |
|
6c9af2bfcfee
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
264 (at your option) any later version. |
|
75774
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
265 |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
266 GNU Emacs is distributed in the hope that it will be useful, |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
267 but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
268 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
269 GNU General Public License for more details. |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
270 |
|
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
271 You should have received a copy of the GNU General Public License |
|
94654
6c9af2bfcfee
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
87649
diff
changeset
|
272 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
