From f8b91752dda437746ff89e62a63760aa6efe0dda Mon Sep 17 00:00:00 2001 From: Jay Belanger Date: Sat, 17 Apr 2010 23:13:09 -0500 Subject: [PATCH] calc-bin.el (calc-radix): Have the O option turn on twos-complement mode. --- doc/misc/ChangeLog | 6 ++++++ doc/misc/calc.texi | 38 +++++++++++++++++++++++--------------- lisp/ChangeLog | 7 +++++++ lisp/calc/README | 6 ++++++ lisp/calc/calc-bin.el | 2 +- 5 files changed, 43 insertions(+), 16 deletions(-) diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index e9aa87e8d5..996c788738 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog @@ -1,3 +1,9 @@ +2010-04-18 Jay Belanger + + * calc.texi (Radix modes): Mention that the option prefix will + turn on twos-complement mode. + (Inverse and Hyperbolic Flags): Mention the Option flag. + 2010-04-15 Carsten Dominik * org.texi (LaTeX and PDF export): Add a footnote about xetex. diff --git a/doc/misc/calc.texi b/doc/misc/calc.texi index 51b475dbc0..7647dd4d61 100644 --- a/doc/misc/calc.texi +++ b/doc/misc/calc.texi @@ -12289,15 +12289,21 @@ may be executed with @kbd{x} or @kbd{M-x}. Their effect is simply to toggle the Inverse and/or Hyperbolic flags and then execute the corresponding base command (@code{calc-sin} in this case). -The Inverse and Hyperbolic flags apply only to the next Calculator -command, after which they are automatically cleared. (They are also -cleared if the next keystroke is not a Calc command.) Digits you -type after @kbd{I} or @kbd{H} (or @kbd{K}) are treated as prefix -arguments for the next command, not as numeric entries. The same -is true of @kbd{C-u}, but not of the minus sign (@kbd{K -} means to -subtract and keep arguments). - -The third Calc prefix flag, @kbd{K} (keep-arguments), is discussed +@kindex O +@pindex calc-option +The @kbd{O} key (@code{calc-option}) sets another flag, the +@dfn{Option Flag}, which also can alter the subsequent Calc command in +various ways. + +The Inverse, Hyperbolic and Option flags apply only to the next +Calculator command, after which they are automatically cleared. (They +are also cleared if the next keystroke is not a Calc command.) Digits +you type after @kbd{I}, @kbd{H} or @kbd{O} (or @kbd{K}) are treated as +prefix arguments for the next command, not as numeric entries. The +same is true of @kbd{C-u}, but not of the minus sign (@kbd{K -} means +to subtract and keep arguments). + +Another Calc prefix flag, @kbd{K} (keep-arguments), is discussed elsewhere. @xref{Keep Arguments}. @node Calculation Modes, Simplification Modes, Inverse and Hyperbolic, Mode Settings @@ -13175,12 +13181,13 @@ in the current radix. (Larger integers will still be displayed in their entirety.) @cindex Two's complements -With the binary, octal and hexadecimal display modes, Calc can -display @expr{w}-bit integers using two's complement notation. This -option is selected with the key sequences @kbd{C-u d 2}, @kbd{C-u d 8} -and @kbd{C-u d 6}, respectively, and a negative word size might be -appropriate (@pxref{Binary Functions}). In two's complement -notation, the integers in the (nearly) symmetric interval from +Calc can display @expr{w}-bit integers using two's complement +notation, although this is most useful with the binary, octal and +hexadecimal display modes. This option is selected by using the +@kbd{O} option prefix before setting the display radix, and a negative word +size might be appropriate (@pxref{Binary Functions}). In two's +complement notation, the integers in the (nearly) symmetric interval +from @texline @math{-2^{w-1}} @infoline @expr{-2^(w-1)} to @@ -35461,6 +35468,7 @@ keystrokes are not listed in this summary. @r{ @: M @: @: @:calc-more-recursion-depth@:} @r{ @: I M @: @: @:calc-less-recursion-depth@:} @r{ a@: N @: @: 5 @:evalvn@:(a)} +@r{ @: O @:command @: 32 @:@:Option} @r{ @: P @: @: @:@:pi} @r{ @: I P @: @: @:@:gamma} @r{ @: H P @: @: @:@:e} diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2edd152265..d47d9bae82 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2010-04-18 Jay Belanger + + * calc.el (calc-mode-map): Bind "O" to `calc-missing-key'. + + * calc-bin.el (calc-radix): Have the "O" option turn on + twos-complement mode. + 2010-04-17 Jay Belanger * calc-ext.el (calc-init-extensions): Add keybinding for 'calc-option'. diff --git a/lisp/calc/README b/lisp/calc/README index 9e095252fc..3e3acaebb2 100644 --- a/lisp/calc/README +++ b/lisp/calc/README @@ -72,6 +72,12 @@ opinions. Summary of changes to "Calc" ------- -- ------- -- ---- +Emacs 24.1 + +* Added "O" option prefix. + +* Used "O" prefix to "d r" (`calc-radix') to turn on twos-complement mode. + Emacs 23.2 * Added twos-complement display. diff --git a/lisp/calc/calc-bin.el b/lisp/calc/calc-bin.el index 7af60e9214..0e31fbe681 100644 --- a/lisp/calc/calc-bin.el +++ b/lisp/calc/calc-bin.el @@ -175,7 +175,7 @@ the size of a Calc bignum digit.") (progn (calc-change-mode (list 'calc-number-radix 'calc-twos-complement-mode) - (list n (and (or (= n 2) (= n 8) (= n 16)) arg)) t) + (list n (or arg (calc-is-option))) t) ;; also change global value so minibuffer sees it (setq-default calc-number-radix calc-number-radix)) (setq n calc-number-radix)) -- 2.20.1