This section includes a complete list of Calc 2.02 keystroke commands. Each line lists the stack entries used by the command (top-of-stack last), the keystrokes themselves, the prompts asked by the command, and the result of the command (also with top-of-stack last). The result is expressed using the equivalent algebraic function. Commands which put no results on the stack show the full M-x command name in that position. Numbers preceding the result or command name refer to notes at the end.
Algebraic functions and M-x commands that don't have corresponding keystrokes are not listed in this summary. See section Index of Calculator Commands. See section Index of Algebraic Functions.
@begingroup @let=@sumsep @let@r=@sumrow @catcode`@(=@active @let(=@sumlpar @catcode`@)=@active @let)=@sumrpar @catcode`@,=@active @let,=@sumcomma @catcode`!=@active @let!=@sumexcl
@advance@baselineskip-2.5pt @let@tt@ninett @let@c@sumbreak M-# a 33 calc-embedded-activate M-# b calc-big-or-small M-# c calc M-# d calc-embedded-duplicate M-# e 34 calc-embedded M-# f formula calc-embedded-new-formula M-# g 35 calc-grab-region M-# i calc-info M-# j calc-embedded-select M-# k calc-keypad M-# l calc-load-everything M-# m read-kbd-macro M-# n 4 calc-embedded-next M-# o calc-other-window M-# p 4 calc-embedded-previous M-# q formula quick-calc M-# r 36 calc-grab-rectangle M-# s calc-info-summary M-# t calc-tutorial M-# u calc-embedded-update M-# w calc-embedded-word M-# x calc-quit M-# y 1,28,49 calc-copy-to-buffer M-# z calc-user-invocation M-# : 36 calc-grab-sum-down M-# _ 36 calc-grab-sum-across M-# ` editing 30 calc-embedded-edit M-# 0 (zero) calc-reset 0-9 number number . number 0.number _ number -number e number 1e number # number current-radix#number P (in number) +/- M (in number) mod @ ' " (in number) HMS form h m s (in number) HMS form ' formula 37,46 formula $ formula 37,46 $formula " string 37,46 string a b + 2 add(a,b) a+b a b - 2 sub(a,b) a-b a b * 2 mul(a,b) a b, a*b a b / 2 div(a,b) a/b a b ^ 2 pow(a,b) a^b a b I ^ 2 nroot(a,b) a^(1/b) a b % 2 mod(a,b) a%b a b \ 2 idiv(a,b) a\b a b : 2 fdiv(a,b) a b | 2 vconcat(a,b) a|b a b I | vconcat(b,a) b|a a b H | 2 append(a,b) a b I H | append(b,a) a & 1 inv(a) 1/a a ! 1 fact(a) a! a = 1 evalv(a) a M-% percent(a) a% ... a RET 1 ... a a ... a SPC 1 ... a a ... a b TAB 3 ... b a . a b c M-TAB 3 ... b c a ... a b LFD 1 ... a b a ... a DEL 1 ... ... a b M-DEL 1 ... b M-RET 4 calc-last-args a ` editing 1,30 calc-edit ... a C-d 1 ... C-k 27 calc-kill C-w 27 calc-kill-region C-y calc-yank C-_ 4 calc-undo M-k 27 calc-copy-as-kill M-w 27 calc-copy-region-as-kill [ [... [.. a b ] [a,b] ( (... (.. a b ) (a,b) , vector or rect complex ; matrix or polar complex .. interval ~ calc-num-prefix < 4 calc-scroll-left > 4 calc-scroll-right { 4 calc-scroll-down } 4 calc-scroll-up ? calc-help a n 1 neg(a) -a o 4 calc-realign p precision 31 calc-precision q calc-quit w calc-why x command M-x calc-command a y 1,28,49 calc-copy-to-buffer a A 1 abs(a) a b B 2 log(a,b) a b I B 2 alog(a,b) b^a a C 1 cos(a) a I C 1 arccos(a) a H C 1 cosh(a) a I H C 1 arccosh(a) D 4 calc-redo a E 1 exp(a) a H E 1 exp10(a) 10.^a a F 1,11 floor(a,d) a I F 1,11 ceil(a,d) a H F 1,11 ffloor(a,d) a I H F 1,11 fceil(a,d) a G 1 arg(a) H command 32 Hyperbolic I command 32 Inverse a J 1 conj(a) K command 32 Keep-args a L 1 ln(a) a H L 1 log10(a) M calc-more-recursion-depth I M calc-less-recursion-depth a N 5 evalvn(a) P pi I P gamma H P e I H P phi a Q 1 sqrt(a) a I Q 1 sqr(a) a^2 a R 1,11 round(a,d) a I R 1,11 trunc(a,d) a H R 1,11 fround(a,d) a I H R 1,11 ftrunc(a,d) a S 1 sin(a) a I S 1 arcsin(a) a H S 1 sinh(a) a I H S 1 arcsinh(a) a T 1 tan(a) a I T 1 arctan(a) a H T 1 tanh(a) a I H T 1 arctanh(a) U 4 calc-undo X 4 calc-call-last-kbd-macro a b a = 2 eq(a,b) a=b a b a # 2 neq(a,b) a!=b a b a < 2 lt(a,b) a<b a b a > 2 gt(a,b) a>b a b a [ 2 leq(a,b) a<=b a b a ] 2 geq(a,b) a>=b a b a { 2 in(a,b) a b a & 2,45 land(a,b) a&&b a b a | 2,45 lor(a,b) a||b a a ! 1,45 lnot(a) !a a b c a : 45 if(a,b,c) a?b:c a a . 1 rmeq(a) a a " 7,8 calc-expand-formula a a + i, l, h 6,38 sum(a,i,l,h) a a - i, l, h 6,38 asum(a,i,l,h) a a * i, l, h 6,38 prod(a,i,l,h) a b a _ 2 subscr(a,b) a_b a b a \ 2 pdiv(a,b) a b a % 2 prem(a,b) a b a / 2 pdivrem(a,b) [q,r] a b H a / 2 pdivide(a,b) q+r/b a a a 1 apart(a) a a b old, new 38 subst(a,old,new) a a c v 38 collect(a,v) a a d v 4,38 deriv(a,v) a H a d v 4,38 tderiv(a,v) a a e esimplify(a) a a f 1 factor(a) a H a f 1 factors(a) a b a g 2 pgcd(a,b) a a i v 38 integ(a,v) a a m pats 38 match(a,pats) a I a m pats 38 matchnot(a,pats) data x a p 28 polint(data,x) data x H a p 28 ratint(data,x) a a n 1 nrat(a) a a r rules 4,8,38 rewrite(a,rules,n) a a s simplify(a) a a t v, n 31,39 taylor(a,v,n) a a v 7,8 calc-alg-evaluate a a x 4,8 expand(a) data a F model, vars 48 fit(m,iv,pv,data) data I a F model, vars 48 xfit(m,iv,pv,data) data H a F model, vars 48 efit(m,iv,pv,data) a a I v, l, h 38 ninteg(a,v,l,h) a b a M op 22 mapeq(op,a,b) a b I a M op 22 mapeqr(op,a,b) a b H a M op 22 mapeqp(op,a,b) a g a N v 38 minimize(a,v,g) a g H a N v 38 wminimize(a,v,g) a a P v 38 roots(a,v) a g a R v 38 root(a,v,g) a g H a R v 38 wroot(a,v,g) a a S v 38 solve(a,v) a I a S v 38 finv(a,v) a H a S v 38 fsolve(a,v) a I H a S v 38 ffinv(a,v) a a T i, l, h 6,38 table(a,i,l,h) a g a X v 38 maximize(a,v,g) a g H a X v 38 wmaximize(a,v,g) a b b a 9 and(a,b,w) a b c 9 clip(a,w) a b b d 9 diff(a,b,w) a b l 10 lsh(a,n,w) a n H b l 9 lsh(a,n,w) a b n 9 not(a,w) a b b o 9 or(a,b,w) v b p 1 vpack(v) a b r 10 rsh(a,n,w) a n H b r 9 rsh(a,n,w) a b t 10 rot(a,n,w) a n H b t 9 rot(a,n,w) a b u 1 vunpack(a) b w w 9,50 calc-word-size a b b x 9 xor(a,b,w) c s l p b D ddb(c,s,l,p) r n p b F fv(r,n,p) r n p I b F fvb(r,n,p) r n p H b F fvl(r,n,p) v b I 19 irr(v) v I b I 19 irrb(v) a b L 10 ash(a,n,w) a n H b L 9 ash(a,n,w) r n a b M pmt(r,n,a) r n a I b M pmtb(r,n,a) r n a H b M pmtl(r,n,a) r v b N 19 npv(r,v) r v I b N 19 npvb(r,v) r n p b P pv(r,n,p) r n p I b P pvb(r,n,p) r n p H b P pvl(r,n,p) a b R 10 rash(a,n,w) a n H b R 9 rash(a,n,w) c s l b S sln(c,s,l) n p a b T rate(n,p,a) n p a I b T rateb(n,p,a) n p a H b T ratel(n,p,a) c s l p b Y syd(c,s,l,p) r p a b # nper(r,p,a) r p a I b # nperb(r,p,a) r p a H b # nperl(r,p,a) a b b % relch(a,b) a c c 5 pclean(a,p) a c 0-9 pclean(a,p) a H c c 5 clean(a,p) a H c 0-9 clean(a,p) a c d 1 deg(a) a c f 1 pfloat(a) a H c f 1 float(a) a c h 1 hms(a) a c p polar(a) a I c p rect(a) a c r 1 rad(a) a c F 5 pfrac(a,p) a H c F 5 frac(a,p) a c % percent(a*100) d . char 50 calc-point-char d , char 50 calc-group-char d < 13,50 calc-left-justify d = 13,50 calc-center-justify d > 13,50 calc-right-justify d { label 50 calc-left-label d } label 50 calc-right-label d [ 4 calc-truncate-up d ] 4 calc-truncate-down d " 12,50 calc-display-strings d SPC calc-refresh d RET 1 calc-refresh-top d 0 50 calc-decimal-radix d 2 50 calc-binary-radix d 6 50 calc-hex-radix d 8 50 calc-octal-radix d b 12,13,50 calc-line-breaking d c 50 calc-complex-notation d d format 50 calc-date-notation d e 5,50 calc-eng-notation d f num 31,50 calc-fix-notation d g 12,13,50 calc-group-digits d h format 50 calc-hms-notation d i 50 calc-i-notation d j 50 calc-j-notation d l 12,50 calc-line-numbering d n 5,50 calc-normal-notation d o format 50 calc-over-notation d p 12,50 calc-show-plain d r radix 31,50 calc-radix d s 5,50 calc-sci-notation d t 27 calc-truncate-stack d w 12,13 calc-auto-why d z 12,50 calc-leading-zeros d B 50 calc-big-language d C 50 calc-c-language d E 50 calc-eqn-language d F 50 calc-fortran-language d M 50 calc-mathematica-language d N 50 calc-normal-language d O 50 calc-flat-language d P 50 calc-pascal-language d T 50 calc-tex-language d U 50 calc-unformatted-language d W 50 calc-maple-language a f [ 4 decr(a,n) a f ] 4 incr(a,n) a b f b 2 beta(a,b) a f e 1 erf(a) a I f e 1 erfc(a) a f g 1 gamma(a) a b f h 2 hypot(a,b) a f i 1 im(a) n a f j 2 besJ(n,a) a b f n 2 min(a,b) a f r 1 re(a) a f s 1 sign(a) a b f x 2 max(a,b) n a f y 2 besY(n,a) a f A 1 abssqr(a) x a b f B betaI(x,a,b) x a b H f B betaB(x,a,b) a f E 1 expm1(a) a x f G 2 gammaP(a,x) a x I f G 2 gammaQ(a,x) a x H f G 2 gammag(a,x) a x I H f G 2 gammaG(a,x) a b f I 2 ilog(a,b) a b I f I 2 alog(a,b) b^a a f L 1 lnp1(a) a f M 1 mant(a) a f Q 1 isqrt(a) a I f Q 1 sqr(a) a^2 a n f S 2 scf(a,n) y x f T arctan2(y,x) a f X 1 xpon(a) x y g a 28,40 calc-graph-add g b 12 calc-graph-border g c calc-graph-clear g d 41 calc-graph-delete x y g f 28,40 calc-graph-fast g g 12 calc-graph-grid g h title calc-graph-header g j 4 calc-graph-juggle g k 12 calc-graph-key g l 12 calc-graph-log-x g n name calc-graph-name g p 42 calc-graph-plot g q calc-graph-quit g r range calc-graph-range-x g s 12,13 calc-graph-line-style g t title calc-graph-title-x g v calc-graph-view-commands g x display calc-graph-display g z 12 calc-graph-zero-x x y z g A 28,40 calc-graph-add-3d g C command calc-graph-command g D device 43,44 calc-graph-device x y z g F 28,40 calc-graph-fast-3d g H 12 calc-graph-hide g K calc-graph-kill g L 12 calc-graph-log-y g N number 43,51 calc-graph-num-points g O filename 43,44 calc-graph-output g P 42 calc-graph-print g R range calc-graph-range-y g S 12,13 calc-graph-point-style g T title calc-graph-title-y g V calc-graph-view-trail g X format calc-graph-geometry g Z 12 calc-graph-zero-y g C-l 12 calc-graph-log-z g C-r range calc-graph-range-z g C-t title calc-graph-title-z h b calc-describe-bindings h c key calc-describe-key-briefly h f function calc-describe-function h h calc-full-help h i calc-info h k key calc-describe-key h n calc-view-news h s calc-info-summary h t calc-tutorial h v var calc-describe-variable j 1-9 calc-select-part j RET 27 calc-copy-selection j DEL 27 calc-del-selection j ' formula 27 calc-enter-selection j ` editing 27,30 calc-edit-selection j " 7,27 calc-sel-expand-formula j + formula 27 calc-sel-add-both-sides j - formula 27 calc-sel-sub-both-sides j * formula 27 calc-sel-mul-both-sides j / formula 27 calc-sel-div-both-sides j & 27 calc-sel-invert j a 27 calc-select-additional j b 12 calc-break-selections j c calc-clear-selections j d 12,50 calc-show-selections j e 12 calc-enable-selections j l 4,27 calc-select-less j m 4,27 calc-select-more j n 4 calc-select-next j o 4,27 calc-select-once j p 4 calc-select-previous j r rules 4,8,27 calc-rewrite-selection j s 4,27 calc-select-here j u 27 calc-unselect j v 7,27 calc-sel-evaluate j C 27 calc-sel-commute j D 4,27 calc-sel-distribute j E 27 calc-sel-jump-equals j I 27 calc-sel-isolate H j I 27 calc-sel-isolate (full) j L 4,27 calc-commute-left j M 27 calc-sel-merge j N 27 calc-sel-negate j O 4,27 calc-select-once-maybe j R 4,27 calc-commute-right j S 4,27 calc-select-here-maybe j U 27 calc-sel-unpack k a calc-random-again n k b 1 bern(n) n x H k b 2 bern(n,x) n m k c 2 choose(n,m) n m H k c 2 perm(n,m) n k d 1 dfact(n) n!! n k e 1 euler(n) n x H k e 2 euler(n,x) n k f 4 prfac(n) n m k g 2 gcd(n,m) m n k h 14 shuffle(n,m) n m k l 2 lcm(n,m) n k m 1 moebius(n) n k n 4 nextprime(n) n I k n 4 prevprime(n) n k p 4,28 calc-prime-test m k r 14 random(m) n m k s 2 stir1(n,m) n m H k s 2 stir2(n,m) n k t 1 totient(n) n p x k B utpb(x,n,p) n p x I k B ltpb(x,n,p) v x k C utpc(x,v) v x I k C ltpc(x,v) n m k E egcd(n,m) v1 v2 x k F utpf(x,v1,v2) v1 v2 x I k F ltpf(x,v1,v2) m s x k N utpn(x,m,s) m s x I k N ltpn(x,m,s) m x k P utpp(x,m) m x I k P ltpp(x,m) v x k T utpt(x,v) v x I k T ltpt(x,v) m a 12,13 calc-algebraic-mode m d calc-degrees-mode m f 12 calc-frac-mode m g 52 calc-get-modes m h calc-hms-mode m i 12,13 calc-infinite-mode m m calc-save-modes m p 12 calc-polar-mode m r calc-radians-mode m s 12 calc-symbolic-mode m t 12 calc-total-algebraic-mode m v 12,13 calc-matrix-mode m w 13 calc-working m x calc-always-load-extensions m A 12 calc-alg-simplify-mode m B 12 calc-bin-simplify-mode m C 12 calc-auto-recompute m D calc-default-simplify-mode m E 12 calc-ext-simplify-mode m F filename 13 calc-settings-file-name m N 12 calc-num-simplify-mode m O 12 calc-no-simplify-mode m R 12,13 calc-mode-record-mode m S 12 calc-shift-prefix m U 12 calc-units-simplify-mode s c var1, var2 29 calc-copy-variable s d var, decl calc-declare-variable s e var, editing 29,30 calc-edit-variable s i buffer calc-insert-variables a b s l var 29 a (letting var=b) a ... s m op, var 22,29 calc-store-map s n var 29,47 calc-store-neg (v/-1) s p var 29 calc-permanent-variable s r var 29 v (recalled value) r 0-9 calc-recall-quick a s s var 28,29 calc-store a s 0-9 calc-store-quick a s t var 29 calc-store-into a t 0-9 calc-store-into-quick s u var 29 calc-unstore a s x var 29 calc-store-exchange s A editing 30 calc-edit-AlgSimpRules s D editing 30 calc-edit-Decls s E editing 30 calc-edit-EvalRules s F editing 30 calc-edit-FitRules s G editing 30 calc-edit-GenCount s H editing 30 calc-edit-Holidays s I editing 30 calc-edit-IntegLimit s L editing 30 calc-edit-LineStyles s P editing 30 calc-edit-PointStyles s R editing 30 calc-edit-PlotRejects s T editing 30 calc-edit-TimeZone s U editing 30 calc-edit-Units s X editing 30 calc-edit-ExtSimpRules a s + var 29,47 calc-store-plus (v+a) a s - var 29,47 calc-store-minus (v-a) a s * var 29,47 calc-store-times (v*a) a s / var 29,47 calc-store-div (v/a) a s ^ var 29,47 calc-store-power (v^a) a s | var 29,47 calc-store-concat (v|a) s & var 29,47 calc-store-inv (v^-1) s [ var 29,47 calc-store-decr (v-1) s ] var 29,47 calc-store-incr (v-(-1)) a b s : 2 assign(a,b) a := b a s = 1 evalto(a,b) a => t [ 4 calc-trail-first t ] 4 calc-trail-last t < 4 calc-trail-scroll-left t > 4 calc-trail-scroll-right t . 12 calc-full-trail-vectors t b 4 calc-trail-backward t d 12,50 calc-trail-display t f 4 calc-trail-forward t h calc-trail-here t i calc-trail-in t k 4 calc-trail-kill t m string calc-trail-marker t n 4 calc-trail-next t o calc-trail-out t p 4 calc-trail-previous t r string calc-trail-isearch-backward t s string calc-trail-isearch-forward t y 4 calc-trail-yank d t C oz, nz tzconv(d,oz,nz) d oz nz t C $ tzconv(d,oz,nz) d t D 15 date(d) d t I 4 incmonth(d,n) d t J 16 julian(d,z) d t M 17 newmonth(d,n) t N 16 now(z) d t P 1 31 year(d) d t P 2 31 month(d) d t P 3 31 day(d) d t P 4 31 hour(d) d t P 5 31 minute(d) d t P 6 31 second(d) d t P 7 31 weekday(d) d t P 8 31 yearday(d) d t P 9 31 time(d) d t U 16 unixtime(d,z) d t W 17 newweek(d,w) d t Y 17 newyear(d,n) a b t + 2 badd(a,b) a b t - 2 bsub(a,b) u a 12 calc-autorange-units a u b calc-base-units a u c units 18 calc-convert-units defn u d unit, descr calc-define-unit u e calc-explain-units u g unit calc-get-unit-definition u p calc-permanent-units a u r calc-remove-units a u s usimplify(a) a u t units 18 calc-convert-temperature u u unit calc-undefine-unit u v calc-enter-units-table a u x calc-extract-units a u 0-9 calc-quick-units v1 v2 u C 20 vcov(v1,v2) v1 v2 I u C 20 vpcov(v1,v2) v1 v2 H u C 20 vcorr(v1,v2) v u G 19 vgmean(v) a b H u G 2 agmean(a,b) v u M 19 vmean(v) v I u M 19 vmeane(v) v H u M 19 vmedian(v) v I H u M 19 vhmean(v) v u N 19 vmin(v) v u S 19 vsdev(v) v I u S 19 vpsdev(v) v H u S 19 vvar(v) v I H u S 19 vpvar(v) u V calc-view-units-table v u X 19 vmax(v) v u + 19 vsum(v) v u * 19 vprod(v) v u # 19 vcount(v) V ( 50 calc-vector-parens V { 50 calc-vector-braces V [ 50 calc-vector-brackets V ] ROCP 50 calc-matrix-brackets V , 50 calc-vector-commas V < 50 calc-matrix-left-justify V = 50 calc-matrix-center-justify V > 50 calc-matrix-right-justify V / 12,50 calc-break-vectors V . 12,50 calc-full-vectors s t V ^ 2 vint(s,t) s t V - 2 vdiff(s,t) s V ~ 1 vcompl(s) s V # 1 vcard(s) s V : 1 vspan(s) s V + 1 rdup(s) m V & 1 inv(m) 1/m v v a n arrange(v,n) a v b n cvec(a,n) v v c n >0 21,31 mcol(v,n) v v c n <0 31 mrcol(v,-n) m v c 0 31 getdiag(m) v v d 25 diag(v,n) v m v e 2 vexp(v,m) v m f H v e 2 vexp(v,m,f) v a v f 26 find(v,a,n) v v h 1 head(v) v I v h 1 tail(v) v H v h 1 rhead(v) v I H v h 1 rtail(v) v i n 31 idn(1,n) v i 0 31 idn(1) h t v k 2 cons(h,t) h t H v k 2 rcons(h,t) v v l 1 vlen(v) v H v l 1 mdims(v) v m v m 2 vmask(v,m) v v n 1 rnorm(v) a b c v p 24 calc-pack v v r n >0 21,31 mrow(v,n) v v r n <0 31 mrrow(v,-n) m v r 0 31 getdiag(m) v i j v s subvec(v,i,j) v i j I v s rsubvec(v,i,j) m v t 1 trn(m) v v u 24 calc-unpack v v v 1 rev(v) v x n 31 index(n) n s i C-u v x index(n,s,i) v V A op 22 apply(op,v) v1 v2 V C 2 cross(v1,v2) m V D 1 det(m) s V E 1 venum(s) s V F 1 vfloor(s) v V G grade(v) v I V G rgrade(v) v V H n 31 histogram(v,n) v w H V H n 31 histogram(v,w,n) v1 v2 V I mop aop 22 inner(mop,aop,v1,v2) m V J 1 ctrn(m) m V L 1 lud(m) v V M op 22,23 map(op,v) v V N 1 cnorm(v) v1 v2 V O op 22 outer(op,v1,v2) v V R op 22,23 reduce(op,v) v I V R op 22,23 rreduce(op,v) a n H V R op 22 nest(op,a,n) a I H V R op 22 fixp(op,a) v V S sort(v) v I V S rsort(v) m V T 1 tr(m) v V U op 22 accum(op,v) v I V U op 22 raccum(op,v) a n H V U op 22 anest(op,a,n) a I H V U op 22 afixp(op,a) s t V V 2 vunion(s,t) s t V X 2 vxor(s,t) Y user commands z user commands c Z [ 45 calc-kbd-if c Z | 45 calc-kbd-else-if Z : calc-kbd-else Z ] calc-kbd-end-if Z { 4 calc-kbd-loop c Z / 45 calc-kbd-break Z } calc-kbd-end-loop n Z < calc-kbd-repeat Z > calc-kbd-end-repeat n m Z ( calc-kbd-for s Z ) calc-kbd-end-for Z C-g cancel if/loop command Z ` calc-kbd-push Z ' calc-kbd-pop a Z = message 28 calc-kbd-report Z # prompt calc-kbd-query comp Z C func, args 50 calc-user-define-composition Z D key, command calc-user-define Z E key, editing 30 calc-user-define-edit defn Z F k, c, f, a, n 28 calc-user-define-formula Z G key calc-get-user-defn Z I calc-user-define-invocation Z K key, command calc-user-define-kbd-macro Z P key calc-user-define-permanent Z S 30 calc-edit-user-syntax Z T 12 calc-timing Z U key calc-user-undefine
NOTES
r
for "rows," c
for "columns," a
for "across,"
or d
for "down."
(Space is provided below for you to keep your own written notes.) @endgroup