emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r99922: Merge: Add O option to Calc.


From: Jay Belanger
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r99922: Merge: Add O option to Calc.
Date: Fri, 16 Apr 2010 21:52:12 -0500
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 99922 [merge]
committer: Jay Belanger <address@hidden>
branch nick: trunk
timestamp: Fri 2010-04-16 21:52:12 -0500
message:
  Merge: Add O option to Calc.
modified:
  lisp/ChangeLog
  lisp/calc/calc-ext.el
  lisp/calc/calc-help.el
  lisp/calc/calc-misc.el
  lisp/calc/calc.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2010-04-16 01:41:58 +0000
+++ b/lisp/ChangeLog    2010-04-17 02:47:25 +0000
@@ -1,3 +1,21 @@
+2010-04-17  Jay Belanger  <address@hidden>
+
+       * calc-ext.el (calc-init-extensions): Add keybinding for 'calc-option'.
+       Add `calc-option-prefix-help' to calc-help autoloads.
+       (calc-inverse): Add "Option" to message, as appropriate.
+       (calc-hyperbolic): Add "Option" to message, as appropriate.
+       (calc-option, calc-is-option): New functions.
+
+       * calc-help.el (calc-full-help):  Add `calc-option-help'.
+       (calc-option-prefix-help): New function.
+
+       * calc-misc.el (calc-help): Add "Option" entry.
+
+       * calc.el (calc-local-var-list): Add `calc-option-flag'.
+       (calc-option-flag): New variable.
+       (calc-do): Set `calc-option-flag to nil.
+       (calc-set-mode-line): Add "Opt " as appropriate.
+
 2010-04-16  Juri Linkov  <address@hidden>
 
        Move scrolling commands from simple.el to window.el

=== modified file 'lisp/calc/calc-ext.el'
--- a/lisp/calc/calc-ext.el     2010-01-13 08:35:10 +0000
+++ b/lisp/calc/calc-ext.el     2010-04-17 02:47:25 +0000
@@ -104,6 +104,7 @@
   (define-key calc-mode-map "J" 'calc-conj)
   (define-key calc-mode-map "L" 'calc-ln)
   (define-key calc-mode-map "N" 'calc-eval-num)
+  (define-key calc-mode-map "O" 'calc-option)
   (define-key calc-mode-map "P" 'calc-pi)
   (define-key calc-mode-map "Q" 'calc-sqrt)
   (define-key calc-mode-map "R" 'calc-round)
@@ -1045,7 +1046,7 @@
 calc-d-prefix-help calc-describe-function calc-describe-key
 calc-describe-key-briefly calc-describe-variable calc-f-prefix-help
 calc-full-help calc-g-prefix-help calc-help-prefix
-calc-hyperbolic-prefix-help calc-inv-hyp-prefix-help
+calc-hyperbolic-prefix-help calc-inv-hyp-prefix-help calc-option-prefix-help
 calc-inverse-prefix-help calc-j-prefix-help calc-k-prefix-help
 calc-m-prefix-help calc-r-prefix-help calc-s-prefix-help
 calc-t-prefix-help calc-u-prefix-help calc-v-prefix-help)
@@ -1408,9 +1409,18 @@
                        (with-current-buffer calc-main-buffer
                          calc-hyperbolic-flag)
                      calc-hyperbolic-flag))
-         (msg (if hyp-flag
-                 "Inverse Hyperbolic..."
-               "Inverse...")))
+         (opt-flag (if (or
+                        (eq major-mode 'calc-keypad-mode)
+                        (eq major-mode 'calc-trail-mode))
+                       (with-current-buffer calc-main-buffer
+                         calc-option-flag)
+                     calc-option-flag))
+         (msg 
+          (cond
+           ((and opt-flag hyp-flag) "Option Inverse Hyperbolic...")
+           (hyp-flag "Inverse Hyperbolic...")
+           (opt-flag "Option Inverse...")
+           (t "Inverse..."))))
     (calc-fancy-prefix 'calc-inverse-flag msg n)))
 
 (defconst calc-fancy-prefix-map
@@ -1489,9 +1499,18 @@
                        (with-current-buffer calc-main-buffer
                          calc-inverse-flag)
                      calc-inverse-flag))
-         (msg (if inv-flag
-                  "Inverse Hyperbolic..."
-                "Hyperbolic...")))
+         (opt-flag (if (or
+                        (eq major-mode 'calc-keypad-mode)
+                        (eq major-mode 'calc-trail-mode))
+                       (with-current-buffer calc-main-buffer
+                         calc-option-flag)
+                     calc-option-flag))
+         (msg 
+          (cond 
+           ((and opt-flag inv-flag) "Option Inverse Hyperbolic...")
+           (opt-flag "Option Hyperbolic...")
+           (inv-flag "Inverse Hyperbolic...")
+           (t "Hyperbolic..."))))
     (calc-fancy-prefix 'calc-hyperbolic-flag msg n)))
 
 (defun calc-hyperbolic-func ()
@@ -1504,6 +1523,31 @@
 (defun calc-is-hyperbolic ()
   calc-hyperbolic-flag)
 
+(defun calc-option (&optional n)
+  (interactive "P")
+  (let* ((inv-flag (if (or
+                        (eq major-mode 'calc-keypad-mode)
+                        (eq major-mode 'calc-trail-mode))
+                       (with-current-buffer calc-main-buffer
+                         calc-inverse-flag)
+                     calc-inverse-flag))
+         (hyp-flag (if (or
+                        (eq major-mode 'calc-keypad-mode)
+                        (eq major-mode 'calc-trail-mode))
+                       (with-current-buffer calc-main-buffer
+                         calc-hyperbolic-flag)
+                     calc-hyperbolic-flag))
+         (msg 
+          (cond 
+           ((and hyp-flag inv-flag) "Option Inverse Hyperbolic...")
+           (hyp-flag "Option Hyperbolic...")
+           (inv-flag "Option Inverse...")
+           (t "Option..."))))
+    (calc-fancy-prefix 'calc-option-flag msg n)))
+
+(defun calc-is-option ()
+  calc-option-flag)
+
 (defun calc-keep-args (&optional n)
   (interactive "P")
   (calc-fancy-prefix 'calc-keep-args-flag "Keep args..." n))

=== modified file 'lisp/calc/calc-help.el'
--- a/lisp/calc/calc-help.el    2010-01-13 08:35:10 +0000
+++ b/lisp/calc/calc-help.el    2010-04-17 02:47:25 +0000
@@ -446,6 +446,7 @@
            '(calc-inverse-prefix-help
              calc-hyperbolic-prefix-help
              calc-inv-hyp-prefix-help
+              calc-option-prefix-help
              calc-a-prefix-help
              calc-b-prefix-help
              calc-c-prefix-help
@@ -512,6 +513,11 @@
      "I H + a S (general invert func); v h (rtail)")
    "inverse-hyperbolic" nil))
 
+(defun calc-option-prefix-help ()
+  (interactive)
+  (calc-do-prefix-help
+   '("")
+   "option" nil))
 
 (defun calc-f-prefix-help ()
   (interactive)

=== modified file 'lisp/calc/calc-misc.el'
--- a/lisp/calc/calc-misc.el    2010-01-13 08:35:10 +0000
+++ b/lisp/calc/calc-misc.el    2010-04-17 02:47:25 +0000
@@ -35,6 +35,7 @@
 (declare-function calc-inv-hyp-prefix-help "calc-help" ())
 (declare-function calc-inverse-prefix-help "calc-help" ())
 (declare-function calc-hyperbolic-prefix-help "calc-help" ())
+(declare-function calc-option-prefix-help "calc-help" ())
 (declare-function calc-explain-why "calc-stuff" (why &optional more))
 (declare-function calc-clear-command-flag "calc-ext" (f))
 (declare-function calc-roll-down-with-selections "calc-sel" (n m))
@@ -219,7 +220,7 @@
   (let ((msgs
         '("Press `h' for complete help; press `?' repeatedly for a summary"
           "Letter keys: Negate; Precision; Yank; Why; Xtended cmd; Quit"
-          "Letter keys: SHIFT + Undo, reDo; Keep-args; Inverse, Hyperbolic"
+          "Letter keys: SHIFT + Undo, reDo; Keep-args; Inverse, Hyperbolic, 
Option"
           "Letter keys: SHIFT + sQrt; Sin, Cos, Tan; Exp, Ln, logB"
           "Letter keys: SHIFT + Floor, Round; Abs, conJ, arG; Pi"
           "Letter keys: SHIFT + Num-eval; More-recn; eXec-kbd-macro"
@@ -245,20 +246,22 @@
                  (calc-inv-hyp-prefix-help)
                (calc-inverse-prefix-help))
            (calc-hyperbolic-prefix-help))
-       (setq calc-help-phase
-             (if (eq this-command last-command)
-                 (% (1+ calc-help-phase) (1+ (length msgs)))
-               0))
-       (let ((msg (nth calc-help-phase msgs)))
-         (message "%s" (if msg
-                           (concat msg ":"
-                                   (make-string (- (apply 'max
-                                                          (mapcar 'length
-                                                                  msgs))
-                                                   (length msg)) 32)
-                                   "  [?=MORE]")
-                         "")))))))
-
+        (if calc-option-flag
+            (calc-option-prefix-help)
+          (setq calc-help-phase
+                (if (eq this-command last-command)
+                    (% (1+ calc-help-phase) (1+ (length msgs)))
+                  0))
+          (let ((msg (nth calc-help-phase msgs)))
+            (message "%s" (if msg
+                              (concat msg ":"
+                                      (make-string (- (apply 'max
+                                                             (mapcar 'length
+                                                                     msgs))
+                                                      (length msg)) 32)
+                                      "  [?=MORE]")
+                            ""))))))))
+  
 
 
 

=== modified file 'lisp/calc/calc.el'
--- a/lisp/calc/calc.el 2010-01-17 05:08:35 +0000
+++ b/lisp/calc/calc.el 2010-04-17 02:47:25 +0000
@@ -797,6 +797,7 @@
                                calc-matrix-mode
                                calc-inverse-flag
                                calc-hyperbolic-flag
+                                calc-option-flag
                                calc-keep-args-flag
                                calc-angle-mode
                                calc-number-radix
@@ -926,6 +927,8 @@
   "If non-nil, next operation is Inverse.")
 (defvar calc-hyperbolic-flag nil
   "If non-nil, next operation is Hyperbolic.")
+(defvar calc-option-flag nil
+  "If non-nil, next operation has Optional behavior.")
 (defvar calc-keep-args-flag nil
   "If non-nil, next operation should not remove its arguments from stack.")
 (defvar calc-function-open "("
@@ -1619,6 +1622,7 @@
          (calc-select-buffer)
          (setq calc-inverse-flag nil
                calc-hyperbolic-flag nil
+                calc-option-flag nil
                calc-keep-args-flag nil)))
       (when (memq 'do-edit calc-command-flags)
        (switch-to-buffer (get-buffer-create "*Calc Edit*")))
@@ -1757,6 +1761,7 @@
                              (> (calc-stack-size) 0)
                              (calc-top 1 'sel)) "Sel " "")
                     (if calc-display-dirty "Dirty " "")
+                     (if calc-option-flag "Opt " "")
                     (if calc-inverse-flag "Inv " "")
                     (if calc-hyperbolic-flag "Hyp " "")
                     (if calc-keep-args-flag "Keep " "")


reply via email to

[Prev in Thread] Current Thread [Next in Thread]