%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/calc/ |
Current File : //usr/local/share/emacs/27.2/lisp/calc/calc-keypd.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\207" [require calc-ext calc-macs] 2) (defvar calc-keypad-buffer nil) (defvar calc-keypad-menu 0) (defvar calc-keypad-full-layout nil) (defvar calc-keypad-input nil) (defvar calc-keypad-prev-input nil) (defvar calc-keypad-said-hello nil) (defvar calc-keypad-layout '((("ENTER" calc-enter calc-roll-down calc-roll-up calc-over) ("ENTER" calc-enter calc-roll-down calc-roll-up calc-over) ("+/-" calc-change-sign calc-inv (progn -4 calc-pack)) ("EEX" ("e") (progn calc-num-prefix calc-pack-interval) (progn -5 calc-pack)) ("UNDO" calc-undo calc-redo calc-last-args) ("<-" calc-pop (progn 0 calc-pop) (progn calc-num-prefix calc-pop))) (("INV" calc-inverse) ("7" ("7") calc-round) ("8" ("8") (progn 2 calc-clean-num)) ("9" ("9") calc-float) ("/" calc-divide (progn calc-inverse calc-power))) (("HYP" calc-hyperbolic) ("4" ("4") calc-ln calc-log10) ("5" ("5") calc-exp calc-exp10) ("6" ("6") calc-abs) ("*" calc-times calc-power)) (("EXEC" calc-keypad-execute) ("1" ("1") calc-arcsin calc-sin) ("2" ("2") calc-arccos calc-cos) ("3" ("3") calc-arctan calc-tan) ("-" calc-minus calc-conj)) (("OFF" calc-keypad-off) ("0" ("0") calc-imaginary) ("." (".") calc-precision) ("PI" calc-pi) ("+" calc-plus calc-sqrt)))) (defvar calc-keypad-menus '(calc-keypad-math-menu calc-keypad-funcs-menu calc-keypad-binary-menu calc-keypad-vector-menu calc-keypad-modes-menu calc-keypad-user-menu)) (defvar calc-keypad-math-menu '((("FLR" calc-floor) ("CEIL" calc-ceiling) ("RND" calc-round) ("TRNC" calc-trunc) ("CLN2" (progn 2 calc-clean-num)) ("FLT" calc-float)) (("LN" calc-ln) ("EXP" calc-exp) ("" nil) ("ABS" calc-abs) ("IDIV" calc-idiv) ("MOD" calc-mod)) (("SIN" calc-sin) ("COS" calc-cos) ("TAN" calc-tan) ("SQRT" calc-sqrt) ("y^x" calc-power) ("1/x" calc-inv)))) (defvar calc-keypad-funcs-menu '((("IGAM" calc-inc-gamma) ("BETA" calc-beta) ("IBET" calc-inc-beta) ("ERF" calc-erf) ("BESJ" calc-bessel-J) ("BESY" calc-bessel-Y)) (("IMAG" calc-imaginary) ("CONJ" calc-conj) ("RE" calc-re calc-im) ("ATN2" calc-arctan2) ("RAND" calc-random) ("RAGN" calc-random-again)) (("GCD" calc-gcd calc-lcm) ("FACT" calc-factorial calc-gamma) ("DFCT" calc-double-factorial) ("BNOM" calc-choose) ("PERM" calc-perm) ("NXTP" calc-next-prime calc-prev-prime)))) (defvar calc-keypad-binary-menu '((("AND" calc-and calc-diff) ("OR" calc-or) ("XOR" calc-xor) ("NOT" calc-not calc-clip) ("LSH" calc-lshift-binary calc-rotate-binary) ("RSH" calc-rshift-binary)) (("DEC" calc-decimal-radix) ("HEX" calc-hex-radix) ("OCT" calc-octal-radix) ("BIN" calc-binary-radix) ("WSIZ" calc-word-size) ("ARSH" calc-rshift-arith)) (("A" ("A")) ("B" ("B")) ("C" ("C")) ("D" ("D")) ("E" ("E")) ("F" ("F"))))) (defvar calc-keypad-vector-menu '((("SUM" calc-vector-sum calc-vector-alt-sum calc-vector-mean) ("PROD" calc-vector-product nil calc-vector-sdev) ("MAX" calc-vector-max calc-vector-min calc-vector-median) ("MAP*" (lambda nil (interactive) (calc-map '(2 calcFunc-mul "*")))) ("MAP^" (lambda nil (interactive) (calc-map '(2 calcFunc-pow "^")))) ("MAP$" calc-map-stack)) (("MINV" calc-inv) ("MDET" calc-mdet) ("MTRN" calc-transpose calc-conj-transpose) ("IDNT" (progn calc-num-prefix calc-ident)) ("CRSS" calc-cross) ("\"x\"" "xcalc-algebraic-entry x " "xcalc-algebraic-entry y " "xcalc-algebraic-entry z " "xcalc-algebraic-entry t ")) (("PACK" calc-pack) ("UNPK" calc-unpack) ("INDX" (progn calc-num-prefix calc-index) "xcalc-index ") ("BLD" (progn calc-num-prefix calc-build-vector)) ("LEN" calc-vlength) ("..." calc-full-vectors)))) (defvar calc-keypad-modes-menu '((("FLT" calc-normal-notation (progn calc-num-prefix calc-normal-notation)) ("FIX" (progn 2 calc-fix-notation) (progn calc-num-prefix calc-fix-notation)) ("SCI" calc-sci-notation (progn calc-num-prefix calc-sci-notation)) ("ENG" calc-eng-notation (progn calc-num-prefix calc-eng-notation)) ("GRP" calc-group-digits "-3xcalc-group-digits ") ("" nil)) (("RAD" calc-radians-mode) ("DEG" calc-degrees-mode) ("FRAC" calc-frac-mode) ("POLR" calc-polar-mode) ("SYMB" calc-symbolic-mode) ("PREC" calc-precision)) (("SWAP" calc-roll-down) ("RLL3" (progn 3 calc-roll-up) (progn 3 calc-roll-down)) ("RLL4" (progn 4 calc-roll-up) (progn 4 calc-roll-down)) ("OVER" calc-over) ("STO" calc-keypad-store) ("RCL" calc-keypad-recall)))) (defvar calc-keypad-mode-hook nil) (byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [calc-keypad-mode-hook variable-documentation put "Hook run after entering Calculator mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp calc-keypad-mode-map definition-name calc-keypad-mode] 4) (defvar calc-keypad-mode-map (make-sparse-keymap)) (byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\317#\207" [calc-keypad-mode-abbrev-table calc-keypad-mode-map variable-documentation put purecopy "Keymap for `calc-keypad-mode'." boundp calc-keypad-mode-syntax-table definition-name calc-keypad-mode (lambda (#1=#:def-tmp-var) (defvar calc-keypad-mode-syntax-table #1#)) make-syntax-table "Syntax table for `calc-keypad-mode'." (lambda (#1#) (defvar calc-keypad-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `calc-keypad-mode'." derived-mode-parent] 5) #@166 Major mode for Calc keypad input. This mode runs the hook `calc-keypad-mode-hook', as the final or penultimate step during initialization. \{calc-keypad-mode-map} (defalias 'calc-keypad-mode #[nil "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210 .\315\316\317#\210\315\320\317#\210\315\321\322#\210\315\323\324#\210\315\325\326#\210\315\327\326#\210\315\330\326#\210\315\331\326#\210\315\332\326#\210\315\333\326#\210\315\334\326#\210\315\335\326#\210\315\336\326#\210\315\337\326#\210\315\340\326#\210\315\341\326#\210\315\342\343#\210\315\344\345#\210\315\346\347#\210\350\311\351\352#\210\306\353!\210)\354\355!\207" [delay-mode-hooks major-mode mode-name calc-keypad-mode-map calc-keypad-mode-syntax-table calc-keypad-mode-abbrev-table make-local-variable t kill-all-local-variables calc-keypad-mode "Calculator" use-local-map set-syntax-table define-key " " calc-keypad-press " " " " calc-keypad-menu "q" calc-keypad-off [down-mouse-1] ignore [drag-mouse-1] [double-mouse-1] [triple-mouse-1] [down-mouse-2] [drag-mouse-2] [double-mouse-2] [triple-mouse-2] [down-mouse-3] [drag-mouse-3] [double-mouse-3] [triple-mouse-3] [mouse-3] calc-keypad-right-click [mouse-2] calc-keypad-middle-click [mouse-1] calc-keypad-left-click put mode-class special calc-main-buffer run-mode-hooks calc-keypad-mode-hook local-abbrev-table] 4 (#$ . 5888) nil]) (defalias 'calc-do-keypad #[(&optional full-display interactive) "\306 \210p\307 !\204 \310\311!\211q\210\312 \210\313 \210\314 \210\315\316\317\2110\320\321!\211\2032 \322\f!\210\320\323!\211\203K \324 \203G \325\326 !\210\202K \322\f!\210\320 !\211\203s \327\321!\210\327\323!\210\327 !\210\324 \203l \325\326 !\210\202\322\f!\210\202\3301\331 \332! \333\\W\204\223 \334!0\335\\W\204\223 2\203\227 \336!\210\332! \337\\W\203\245 \340\341!\2102\203\326 \342\343\332! \344#\"\345\314 \"\210\345\f \"\210\346\f\344\"\210\342\f0\347\\\330#\345\f\"\210\202\375 \342\343\334!0\350#\330#\345\f \"\210\346\f\344\"\210\342\f\343\332\f! \344#\"\210\345\f\"\210\351!\210\352\353!\210\354\355!\2103\2034\203\356\350!\210\352\357!\210\3303,\317\2115)\207" [calcbuf calc-keypad-buffer calc-main-buffer old-win win height calc-create-buffer bufferp get-buffer-create "*Calc Keypad*" calc-keypad-mode calc-keypad-redraw calc-trail-buffer 29 17 nil get-buffer-window "*Calculator*" delete-window "*Calc Trail*" one-window-p switch-to-buffer other-buffer bury-buffer t get-largest-window window-height 6 window-width 15 delete-other-windows 4 error "Screen is not tall enough for this mode" split-window - 1 set-window-buffer set-window-start 7 2 select-window message "Welcome to GNU Emacs Calc! Use the left and right mouse buttons" run-hooks calc-keypad-start-hook sit-for "" width calc-was-keypad-mode full-display calc-keypad-said-hello interactive calc-keypad-input] 6]) (defalias 'calc-keypad-off #[nil "\203 \301\302!\207\303 \207" [calc-standalone-flag save-buffers-kill-emacs nil calc-keypad] 2 nil nil]) (defalias 'calc-keypad-redraw #[nil "q\210\306\307\n8J\f\"\310 \311\"#\312 \210\313c\210#\203\364 #@$$\203\300 $@%\"\314Y\203: \315\202T \"\316U\203S $#@=\203S $A$\317\202T \314&'\203h %A@\320=\203h \321\202\200 %@G&V\203} \322%@\311&#\202\200 %@\211(G)\323&)Z\324\245\325\"(\323\326&)\327#\324\245\325\"(\330\232\203\254 \331\nT!\202\255 \332\261\210,$A\211$\204% \313c\210\202% \"\314Y\203\313 \333\202\327 \"\316U\203\326 \334\202\327 \335\"\336U\203\342 \337\202\343 \340\261\210\"T\"#A#)\202 +\306*\341 \210eb\207" [calc-keypad-buffer buffer-read-only calc-keypad-menu calc-keypad-menus calc-keypad-layout calc-keypad-full-layout t append nil 0 erase-buffer "\n" 4 5 3 9 calc-keypad-off "EXIT" substring make-string 2 32 - -1 "MENU" int-to-string "|" "-----+-----+-----+-----+-----" "-----+---+-+--+--+-+---++----" "----+----+----+----+----+----" 7 "+\n" "|\n" calc-keypad-show-input y row col key cwid calc-standalone-flag name wid calc-keypad-prev-input] 8]) (defalias 'calc-keypad-show-input #[nil " \232\204* \304\212eb\210\305y\210e`|\210\203 \306\307\261\210\202) \310\311T!\307\261\210*\211\207" [calc-keypad-input calc-keypad-prev-input buffer-read-only calc-keypad-menu nil 1 "Calc: " "\n" "----+----+--Calc---+----+----" int-to-string] 3]) (defalias 'calc-keypad-press #[nil "\306=\204\n \307\310!\210\311e\312 \"\211\313\245i\n\314Y\203 \315\202 \316\245\317\211\317@rAq\210BCD@E)F\320GH\211I\205` \321\322I\"\204^ \f\323X\205` \321\324I\"\205` \325\225J\nK88L@\203| F\203x \314\202\206 \313\202\206 F\203\205 \326\202\206 \327L8\206\227 \317\211G\206\227 LA@\211M:\205\242 M@;N\320OG\203\260 \330\331!\210\332\216M\203\277 \313\246\325U\203\304 \333 \202\232\334 \325V\203N\203\336 M@\325HPB\211P\202\232M\335\267\202\336PB\211P\202\232\337PB\211P\202\232\340PB\211P\202\232\333 \202\232I\203\246\321\341I\"\203\246N\203x\321\342M@\"\203x\317H\343\344M@P!QI\345\267\202p\346Q!\202t\347Q!\202t\350Q!\202t\351Q!\202t\352Q!\202t\353\354Q\"\202t\355\354Q\"\202t\356Q!\202t\357Q!)\202\232M\360>\203\206\317\211H\202\232I\361\232\203\241M\362\236\211\203\241I AP\211H\202\232\333 \202\232N\203\213M@\211M\363\232\203\303I\203\303\321\364I\"\204 M\324\232\203\345I\203\345\f\323X\203\335\321\324I\"\204 \321\365I\"\204 M\363\232\204\317R\321M\366\321\367I\206\373\370\"\203\371\202\f#)\203\333 \202\232\f\371U?\205%I\203!I\372\232\205%\373\374\f\"I\2031I\372\232\205LM\324\232\203<\375\202LM\363\232\205L \203K\375\202L\376IM\363\232\203] \203]\377\202\204M\324\232\203\202I\203s\321\201X I\"\203\202\f\323V\203\202\373\201Y \f\"\202\204MR\211H\202\232M\201Z =\203\324I\203\324J\206\237\325S\201[ IS\"T\201[ I\325S#\321\201\\ T\"\203\310\201[ T\354\"\202\314\372TPP\211H*\202\232M\201] =\203I\203I\370\232\203\356\333 \202\232\201[ I\325\321\201^ I\"\206\201_ #\211H\202\232M\201` =\203I\203\317\211H\202\232I\203U\201a I!U\317HU\203;\330\201b !\210\202HI\370\232\204E\333 \210\317MM\201c =\203T\317M)VWM\205\232M:\203\224M@\201d =\203\224MA\211M\205\232M@\250\203\206M@W\202n\201e M@!\210\202n\202\232\201e M!.\207" [major-mode row y x radix frac calc-keypad-mode error "Must be in *Calc Keypad* buffer for this command" count-lines point-at-bol 2 4 6 5 nil t string-match "\\*[0-9]+\\.\\^" 14 "e" 0 3 99 calc-do #[nil "\300\207" [nil] 1] #[nil "q\210\301 \207" [calc-keypad-buffer calc-keypad-show-input] 1] beep minibuffer-depth #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (calc-pop 229 calc-enter 239 calc-undo 249)) 127 13 7 "STO\\|RCL" "[0-9]" intern "var-q" #s(hash-table size 8 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("STO+" 310 "STO-" 317 "STO*" 324 "STO/" 331 "STO^" 338 "STOn" 345 "STO&" 353 "STO" 361)) calc-store-plus calc-store-minus calc-store-times calc-store-div calc-store-power calc-store-neg 1 calc-store-inv calc-store-into calc-recall (calc-pop calc-undo) "STO" ((calc-plus . "+") (calc-minus . "-") (calc-times . "*") (calc-divide . "/") (calc-power . "^") (calc-change-sign . "n") (calc-inv . "&")) "." "[.:e^]" "\\^\\|[-.:]\\'" "0123456789ABCDEF" "[e^]" "" 10 "-" format "%d#" "1" "0" ":" inv calc-main-buffer calc-number-radix calc-prefer-frac calc-inverse-flag calc-hyperbolic-flag hyp invhyp calc-keypad-input input iexpon calc-keypad-full-layout key cmd isstring calc-is-keypad-press unread-command-events var case-fold-search epos suffix val current-prefix-arg prefix-arg "#" "*%d.^" calc-change-sign substring "\\`-" calc-pop "\\*[0-9]+\\.\\^\\'" -1 calc-undo math-read-number #[nil "\301\302\303!!C!\207" [val calc-push-list calc-record calc-normalize] 4] calc-enter progn command-execute] 7 nil nil]) #@57 Handle a left-button mouse click in Calc Keypad window. (defalias 'calc-keypad-left-click #[(event) "rq\210\302\303 !!b\210\304 )\207" [calc-keypad-buffer event posn-point event-start calc-keypad-press] 3 (#$ . 13838) "e"]) #@58 Handle a right-button mouse click in Calc Keypad window. (defalias 'calc-keypad-right-click #[(_event) "rq\210\301 )\207" [calc-keypad-buffer calc-keypad-menu] 1 (#$ . 14069) "e"]) #@59 Handle a middle-button mouse click in Calc Keypad window. (defalias 'calc-keypad-middle-click #[(_event) "rq\210\301 )\207" [calc-keypad-buffer calc-keypad-menu-back] 1 (#$ . 14257) "e"]) (defalias 'calc-keypad-menu #[nil "\303=\204\n \304\305!\210 T\nG\246\211\n8J\203\n \306 \207" [major-mode calc-keypad-menu calc-keypad-menus calc-keypad-mode error "Must be in *Calc Keypad* buffer for this command" calc-keypad-redraw] 3 nil nil]) (defalias 'calc-keypad-menu-back #[nil "\303=\204\n \304\305!\210 \nG\\S\nG\246\211\n8J\203\n \306 \207" [major-mode calc-keypad-menu calc-keypad-menus calc-keypad-mode error "Must be in *Calc Keypad* buffer for this command" calc-keypad-redraw] 3 nil nil]) (defalias 'calc-keypad-store #[nil "\301\211\207" [calc-keypad-input "STO"] 2 nil nil]) (defalias 'calc-keypad-recall #[nil "\301\211\207" [calc-keypad-input "RCL"] 2 nil nil]) (defalias 'calc-pack-interval #[(mode) "\301W\204\f \302V\203 \303\304!\210\305\306Z!\207" [mode 0 3 error "Open/close code should be in the range from 0 to 3" calc-pack -6] 3 nil "p"]) (defalias 'calc-keypad-execute #[nil "\305\306\211\306\212\307 \210\310!\311\n!\211\312>\204% \203<