gcalctool r2147 - in trunk: . gcalctool glade help help/zh_CN



Author: rancell
Date: Mon Aug  4 07:52:51 2008
New Revision: 2147
URL: http://svn.gnome.org/viewvc/gcalctool?rev=2147&view=rev

Log:
 Removed left-to-right mode due to maintenance effort (Bug #500994)


Removed:
   trunk/gcalctool/lr_parser.c
   trunk/gcalctool/lr_parser.h
   trunk/gcalctool/lr_parser.y
Modified:
   trunk/ChangeLog
   trunk/gcalctool/Makefile.am
   trunk/gcalctool/calctool.c
   trunk/gcalctool/calctool.h
   trunk/gcalctool/ce_parser.y
   trunk/gcalctool/display.c
   trunk/gcalctool/display.h
   trunk/gcalctool/functions.c
   trunk/gcalctool/functions.h
   trunk/gcalctool/get.c
   trunk/gcalctool/get.h
   trunk/gcalctool/gtk.c
   trunk/gcalctool/mp.c
   trunk/gcalctool/mpmath.c
   trunk/gcalctool/mpmath.h
   trunk/gcalctool/ui.h
   trunk/glade/gcalctool.glade
   trunk/help/gcalctool-bg.omf
   trunk/help/gcalctool-zh_CN.omf
   trunk/help/gcalctool-zh_HK.omf
   trunk/help/gcalctool-zh_TW.omf
   trunk/help/zh_CN/gcalctool.xml

Modified: trunk/gcalctool/Makefile.am
==============================================================================
--- trunk/gcalctool/Makefile.am	(original)
+++ trunk/gcalctool/Makefile.am	Mon Aug  4 07:52:51 2008
@@ -37,19 +37,13 @@
         unittest.h \
 	ce_parser.c \
 	ce_parser.h \
-	ce_parser.tab.h \
-	lr_parser.c \
-	lr_parser.h \
-	lr_parser.tab.h
+	ce_parser.tab.h
 	
 CLEANFILES = \
 	ce_parser.tab.h \
 	ce_parser.tab.c \
 	lex.ce.c \
-	lex.lr.c \
-	libparser.a \
-	lr_parser.tab.h \
-	lr_parser.tab.c
+	libparser.a
 
 gcalctool_LDADD = \
 	$(PACKAGE_LIBS) \
@@ -59,44 +53,26 @@
 
 libparser.a: \
 	lex.ce.o\
-	lex.lr.o\
 	ce_parser.tab.o\
-	lr_parser.tab.o\
-	ce_parser.o\
-	lr_parser.o
+	ce_parser.o
 	$(AR) r libparser.a $^
 	$(RANLIB) libparser.a
 
 ce_parser.o: ce_parser.c ce_parser.h calctool.h
 	$(COMPILE) -c $(INCLUDES) -o $@ $(srcdir)/ce_parser.c
 
-lr_parser.o: lr_parser.c lr_parser.h calctool.h
-	$(COMPILE) -c $(INCLUDES) -o $@ $(srcdir)/lr_parser.c
-
 lex.ce.o: lex.ce.c calctool.h
 	$(COMPILE) -c $(INCLUDES) -o $@ lex.ce.c
 
-lex.lr.o: lex.lr.c calctool.h
-	$(COMPILE) -c $(INCLUDES) -o $@ lex.lr.c
-
 ce_parser.tab.o: ce_parser.tab.c
 	$(COMPILE) -c $(INCLUDES) -o $@ ce_parser.tab.c
 
 ce_parser.tab.c: ce_parser.y calctool.h
 	bison -d -p ce -d $(srcdir)/ce_parser.y
 
-lr_parser.tab.o: lr_parser.tab.c
-	$(COMPILE) -c $(INCLUDES) -o $@ lr_parser.tab.c
-
-lr_parser.tab.c: lr_parser.y calctool.h
-	bison -d -p lr $(srcdir)/lr_parser.y
-
 lex.ce.c: ce_parser.tab.c ce_tokeniser.l
 	$(LEX) -Pce $(srcdir)/ce_tokeniser.l
 
-lex.lr.c: lr_parser.tab.c lr_tokeniser.l calctool.h
-	$(LEX) -i -Plr $(srcdir)/lr_tokeniser.l
-
 code-format: 
 	ls *[ch] | xargs indent -nbad -bap -bbo -nbc -br\
 	-brs -c33 -cd33 -ncdb -ce -ci4 -cli0 -cp33 \
@@ -118,9 +94,7 @@
 EXTRA_DIST = \
 	$(man1_MANS) \
 	ce_parser.y \
-	ce_tokeniser.l \
-	lr_parser.y \
-	lr_tokeniser.l
+	ce_tokeniser.l
 
 test: gcalctool
 	./gcalctool -u

Modified: trunk/gcalctool/calctool.c
==============================================================================
--- trunk/gcalctool/calctool.c	(original)
+++ trunk/gcalctool/calctool.c	Mon Aug  4 07:52:51 2008
@@ -53,487 +53,406 @@
 {
     KEY_0,
     "0",
-    do_number,
     NUMBER
 },
 {
     KEY_1,
     "1",
-    do_number,
     NUMBER
 },
 {
     KEY_2,
     "2",
-    do_number,
     NUMBER
 },    
 {     
     KEY_3,
     "3",
-    do_number,
     NUMBER
 },
 {
     KEY_4,
     "4",
-    do_number,
     NUMBER
 },
 {
     KEY_5,
     "5",
-    do_number,
     NUMBER
 },
 {
     KEY_6,
     "6",
-    do_number,
     NUMBER
 },
 {
     KEY_7,
     "7",
-    do_number,
     NUMBER
 },
 {
     KEY_8,
     "8",
-    do_number,
     NUMBER
 },
 {
     KEY_9,
     "9",
-    do_number,
     NUMBER
 },
 {
     KEY_A,
     "A",
-    do_number,
     NUMBER
 },
 {
     KEY_B,
     "B",
-    do_number,
     NUMBER
 },    
 {     
     KEY_C,
     "C",
-    do_number,
     NUMBER
 },
 {
     KEY_D,
     "D",
-    do_number,
     NUMBER
 },
 {
     KEY_E,
     "E",
-    do_number,
     NUMBER
 },
 {
     KEY_F,
     "F",
-    do_number,
     NUMBER
 },
 {    
     KEY_NUMERIC_POINT,
     ".",
-    do_point,
     NUMBER
 },
 {
     KEY_CALCULATE,
     NULL,
-    do_calc,
     0
 },
 {
     KEY_CLEAR,
     NULL,
-    do_clear,
     0
 },
 {
     KEY_CLEAR_ENTRY,
     NULL,
-    do_clear_entry,
     0
 },
 {
     KEY_START_BLOCK,
     "(",
-    do_paren,
     0
 },
 {
     KEY_END_BLOCK,
     ")",
-    do_paren,
     0
 },
 {
     KEY_ADD,
     "+",
-    do_calc,
     0
 },
 {
     KEY_SUBTRACT,
     "-",
-    do_calc,
     0
 },
 {
     KEY_MULTIPLY,
     "*",
-    do_calc,
     0
 },
 {
     KEY_DIVIDE,
     "/",
-    do_calc,
     0
 },
 {
     KEY_BACKSPACE,
     NULL,
-    do_backspace,
     0
 },
 {
     KEY_DELETE,
     NULL,
-    do_delete,
     0
 },
 {
     KEY_CHANGE_SIGN,
     NULL,
-    do_immed, 
     0
 },
 {
     KEY_INTEGER,
     "Int",
-    do_portion,
     FUNC
 },
 {
     KEY_FRACTION,
     "Frac",
-    do_portion,
     FUNC  
 },
 {
     KEY_PERCENTAGE,
     "%",
-    do_percent,  
     0
 },
 {
     KEY_SQUARE,
     "^2",
-    do_immed,  
     POSTFIXOP
 },
 {
     KEY_SQUARE_ROOT,
     "Sqrt",
-    do_immed, 
     FUNC
 },
 {
     KEY_RECIPROCAL,
     NULL,
-    do_immed, 
     0
 },
 {
     KEY_E_POW_X,
     "e^",
-    do_immed, 
     PREFIXOP
 },
 {
     KEY_10_POW_X,
     "10^",
-    do_immed, 
     PREFIXOP
 },       
 {
     KEY_X_POW_Y,
     "^",
-    do_calc,
     POSTFIXOP
 },
 {
     KEY_FACTORIAL,
     "!",
-    do_immed, 
     POSTFIXOP
 },
 {
     KEY_RANDOM,
     "Rand",
-    do_immed, 
     0
 },
 {
     KEY_SIN,
     "Sin",
-    do_sin,
     FUNC
 },
 {
     KEY_SINH,
     "Sinh",
-    do_sinh,
     FUNC
 },
 {
     KEY_ASIN,
     "Asin",
-    do_asin,
     FUNC
 },
 {
     KEY_ASINH,
     "Asinh",
-    do_asinh,
     FUNC
 },
 {
     KEY_COS,
     "Cos",
-    do_cos,
     FUNC
 },
 {
     KEY_COSH,
     "Cosh",
-    do_cosh,
     FUNC
 },
 {
     KEY_ACOS,
     "Acos",
-    do_acos,
     FUNC
 },
 {
     KEY_ACOSH,
     "Acosh",
-    do_acosh,
     FUNC
 },
 {
     KEY_TAN,
     "Tan",
-    do_tan,
     FUNC
 },
 {
     KEY_TANH,
     "Tanh",
-    do_tanh,
     FUNC
 },
 {
     KEY_ATAN,
     "Atan",
-    do_atan,
     FUNC
 },
 {
     KEY_TAN,
     "Atanh",
-    do_atanh,
     FUNC
 },
 {
     KEY_NATURAL_LOGARITHM,
     "Ln",
-    do_immed, 
     FUNC
 },
 {
     KEY_LOGARITHM,
     "Log",
-    do_immed, 
     FUNC
 },
 {
     KEY_LOGARITHM2,
     "Log2",
-    do_immed, 
     FUNC
 },
 {
     KEY_ABSOLUTE_VALUE,
     "Abs",
-    do_portion,
     FUNC
 },
 {
     KEY_MASK_16,
     "u16",
-    do_immed,  
     FUNC
 },            
 {
     KEY_MASK_32,
     "u32",
-    do_immed,  
     FUNC
 },
 {
     KEY_MODULUS_DIVIDE,
     " Mod ",
-    do_calc,
     0
 },
 {
     KEY_EXPONENTIAL,
     "e",
-    do_expno,
     0
 },
 {
     KEY_NOT,
     "~",
-    do_immed, 
     0
 },
 {
     KEY_OR,
     " OR ",
-    do_calc,
     0
 },
 {
     KEY_AND,
     " AND ",
-    do_calc,
     0
 },       
 {
     KEY_XOR,
     " XOR ",
-    do_calc,
     0
 },
 {
     KEY_XNOR,
     " XNOR ",
-    do_calc,
     0
 },
 {
     KEY_FINC_CTRM,
     "Ctrm",
-    do_business,
     0
 },
 {
     KEY_FINC_DDB,
     "Ddb",
-    do_business,
     0
 },
 {
     KEY_FINC_FV,
     "Fv",
-    do_business,
     0
 },
 {
     KEY_FINC_PMT,
     "Pmt",
-    do_business,
     0
 },
 {
     KEY_FINC_PV,
     "Pv",
-    do_business,
     0
 },
 {
     KEY_FINC_RATE,
     "Rate",
-    do_business,
     0
 },
 {
     KEY_FINC_SLN,
     "Sln",
-    do_business,
     0
 },
 {
     KEY_FINC_SYD,
     "Syd",
-    do_business,
     0
 },
 {
     KEY_FINC_TERM,
     "Term",
-    do_business,
     0
 },
 {
     KEY_SHIFT,
     NULL,
-    do_shift,
     0
 },
 {
     KEY_STORE,
     NULL,
-    do_sto,
     0
 },
 {
     KEY_RECALL,
     NULL,
-    do_rcl,
     0
 },
 {
     KEY_EXCHANGE,
     NULL,
-    do_exchange,
     0
 },
 {
     KEY_SET_ACCURACY,
     NULL,
-    do_accuracy,
     0
 },
 {
     KEY_CONSTANT,
     NULL,
-    do_constant,
     0
 },
 {
     KEY_FUNCTION,
     NULL,
-    do_function,
     0
 },
 };
@@ -544,20 +463,7 @@
 void
 doerr(char *errmes)
 {
-    switch (v->syntax) {
-        case NPA:
-            ui_set_error_state(TRUE);
-            display_set_string(&v->display, errmes);
-            ui_beep();
-            break;
-
-        case EXPRS:
-            v->math_error = -MPMATH_ERR;
-            break;
-        
-        default:
-            assert(FALSE);
-    }
+    v->math_error = -MPMATH_ERR;
 }
 
 static void
@@ -698,9 +604,6 @@
     v->error       = 0;            /* No calculator error initially. */    
     v->current    = KEY_CALCULATE;
 
-    v->ltr.key_exp    = 0;         /* Not entering an exponent number. */    
-    v->ltr.noparens   = 0;         /* No unmatched brackets initially. */
-
     init_constant(0, "0.621");                 /* kms/hr <=> miles/hr. */
     init_constant(1, "1.4142135623");          /* square root of 2 */
     init_constant(2, "2.7182818284");          /* e */

Modified: trunk/gcalctool/calctool.h
==============================================================================
--- trunk/gcalctool/calctool.h	(original)
+++ trunk/gcalctool/calctool.h	Mon Aug  4 07:52:51 2008
@@ -61,13 +61,6 @@
 /* Trigonometric types. */
 enum trig_type { DEG, GRAD, RAD, MAXTRIGMODES };
 
-/* Syntax mode. */
-enum syntax {
-    NPA = 0,      /* Non-precedence arithmetic */
-    EXPRS,        /* Expression with arithmetic precedence */
-    MAXSYNTAX
-};
-
 /* Abbreviations for the gcalctool keyboard */
 enum
 {
@@ -174,21 +167,9 @@
 struct button {
     int id;
     char *symname;           /* Expression function name */
-    void (*func)();          /* Function to obey on button press. */
     enum button_flags flags; /* Misc flags */
 };
 
-struct ltrCalcVars {
-    int new_input;     /* New number input since last op. */
-    int noparens;      /* Count of left brackets still to be matched. */
-    int pointed;       /* Whether a decimal point has been given. */
-    
-    int cur_op;        /* Current arithmetic operation. */
-    int key_exp;       /* Set if entering exponent number. */
-    int old_cal_value; /* Previous calculation operator. */
-    int toclear;       /* Indicates if display should be cleared. */
-};
-
 struct calcVars {                      /* Calctool variables and options. */
     int current;                       /* Current button/character pressed. */
   
@@ -218,17 +199,12 @@
     enum num_type dtype;            /* Number display mode. */
     enum trig_type ttype;           /* Trig. type (deg, grad or rad). */
 
-    enum syntax syntax;             /* Calculation syntax mode */
-
     int accuracy;      /* Number of digits precision (Max 9). */
 
     int error;         /* Indicates some kind of display error. */
     int math_error;    /* Math error (used in expression mode) */
     int show_tsep;     /* Set if the thousands separator should be shown. */
     int show_zeroes;   /* Set if trailing zeroes should be shown. */
-    
-    /* Legacy left to right mode variables */
-    struct ltrCalcVars ltr;
 };
 
 typedef struct calcVars *Vars;

Modified: trunk/gcalctool/ce_parser.y
==============================================================================
--- trunk/gcalctool/ce_parser.y	(original)
+++ trunk/gcalctool/ce_parser.y	Mon Aug  4 07:52:51 2008
@@ -199,7 +199,7 @@
 | term '/' term {mpdiv($1, $3, $$);}
 | term '*' term {mpmul($1, $3, $$);}
 | 'e' '^' term {calc_epowy($3, $$);} 
-| term '!' {do_factorial($1 ,$$);}
+| term '!' {calc_factorial($1 ,$$);}
 | term '%' {calc_percent($1, $$);}
 | '-' term %prec NEG {mp_invert_sign($2, $$);}
 | '+' term %prec POS {cp($2, $$);}

Modified: trunk/gcalctool/display.c
==============================================================================
--- trunk/gcalctool/display.c	(original)
+++ trunk/gcalctool/display.c	Mon Aug  4 07:52:51 2008
@@ -181,27 +181,7 @@
 void
 display_clear(GCDisplay *display, int initialise)
 {
-    switch(v->syntax) {
-    case NPA:
-        v->ltr.pointed = 0;
-        v->ltr.toclear = 1;
-        mp_set_from_integer(0, v->MPdisp_val);
-        display_set_number(display, v->MPdisp_val);
-
-        if (initialise == TRUE) {
-            v->ltr.noparens   = 0;
-            ui_set_hyperbolic_state(FALSE);          /* Also clears v->hyperbolic. */
-            ui_set_inverse_state(FALSE);          /* Also clears v->inverse. */
-        }
-        break;
-
-    case EXPRS:
-        display_set_string(display, "");
-        break;
-
-    default:
-        assert(0);
-    }
+    display_set_string(display, "");
 }
 
 
@@ -209,138 +189,28 @@
 display_reset(GCDisplay *display)
 {
     v->error             = 0;         /* Currently no display error. */
-    v->ltr.cur_op        = -1;        /* No arithmetic operator defined yet. */
-    v->ltr.old_cal_value = -1;
     mp_set_from_integer(0, v->MPresult);   /* No previous result yet. */
     mp_set_from_integer(0, v->MPdisp_val);         
     mp_set_from_integer(0, v->MPlast_input);
   
-    v->ltr.new_input = 1;             /* Value zero is on calculator display */
-
     display_clear(display, TRUE);
 }
 
 const char *
 display_get_text(GCDisplay *display)
 {
-    struct exprm_state *e;
-    
-    switch(v->syntax) {
-    case NPA:
-        return display->display;
-
-    case EXPRS:
-        e = get_state(display);
-        return e->expression;
-
-    default:
-        assert(0);
-    }
+    return get_state(display)->expression;
 }
 
 int *display_get_answer(GCDisplay *display)
 {
-    struct exprm_state *e;
-    switch(v->syntax) {
-    case NPA:
-        return NULL; // FIXME?
-
-    case EXPRS:
-        e = get_state(display);
-        return e->ans;
-
-    default:
-        assert(0);
-    }
+    return get_state(display)->ans;
 }
 
 int
 display_get_cursor(GCDisplay *display)
 {
-    struct exprm_state *e;
-    switch(v->syntax) {
-    case NPA:
-        return -1; // FIXME?
-
-    case EXPRS:
-        e = get_state(display);
-        return e->cursor;
-
-    default:
-        assert(0);
-    }
-}
-
-/* Append the latest parenthesis char to the display item. */
-void
-paren_disp(GCDisplay *display, int key)
-{
-    int n;
-    char *text;
-
-/*  If the character is a Delete, clear the whole line, and exit parenthesis
- *  processing.
- *
- *  If the character is a Back Space, remove the last character. If the last
- *  character was a left parenthesis, decrement the parentheses count. If
- *  the parentheses count is zero, exit parenthesis processing.
- *
- *  Otherwise just append the character.
- */
-
-    n = strlen(display->display);
-    text = buttons[key].symname;
-    switch (key) {
-    case -1:
-    case KEY_CLEAR:
-        v->ltr.noparens = 0;
-        v->ltr.cur_op = -1;
-        mp_set_from_integer(0, v->MPdisp_val);
-        display_set_number(display, v->MPdisp_val);
-        return;
-    case KEY_BACKSPACE:
-        if (!n) {
-            return;
-        }
-
-        if (display->display[n-1] == ')') {
-            v->ltr.noparens++;
-        } else if (display->display[n-1] == '(') {
-            v->ltr.noparens--;
-            if (!v->ltr.noparens) {
-                v->ltr.cur_op = -1;
-                display_set_number(display, v->MPdisp_val);
-                return;
-            }
-        } else if (display->display[n-1] == ')') v->ltr.noparens++;
-        display->display[n-1] = '\0';
-        break;
-
-    case KEY_START_BLOCK:
-
-/* If this is the first left parenthesis being displayed and there is no
- * current arithmetic operand, then the current display is initially cleared
- * to avoid the confusion of showing something like "0(".
- */
-
-        if (v->ltr.noparens == 1 && v->ltr.cur_op == -1) {
-            n = 0;
-            display->display[0] = '\0';
-        }
-        text = "(";
-        break;
-        
-    case KEY_END_BLOCK:
-        text = ")";
-        break;
-    }
-
-    if (text) {
-        SNPRINTF(display->display+n, MAX_DISPLAY-n, "%s", text);
-    }
-
-    n = (n < MAX_DIGITS) ? 0 : n - MAX_DIGITS;
-    ui_set_display(&display->display[n], -1);
+    return get_state(display)->cursor;
 }
 
 void
@@ -357,40 +227,18 @@
 {
     struct exprm_state *e;
     
-    switch(v->syntax) {
-    case NPA:
-        if(value != display->display)
-            STRNCPY(display->display, value, MAX_DIGITS - 1);
-        ui_set_display(display->display, -1);
-        break;
-
-    case EXPRS:
-        e = get_state(display);
-        free(e->expression);
-        e->expression = strdup(value);
-        break;
-
-    default:
-        assert(0);
-    }
+    e = get_state(display);
+    free(e->expression);
+    e->expression = strdup(value);
 }
 
 void
 display_set_cursor(GCDisplay *display, int cursor)
 {
     struct exprm_state *e;
-    switch(v->syntax) {
-    case NPA:
-        break; // FIXME?
-
-    case EXPRS:
-        e = get_state(display);
-        e->cursor = cursor;
-        break;
-
-    default:
-        assert(0);
-    }   
+
+    e = get_state(display);
+    e->cursor = cursor;
 }
 
 void
@@ -589,80 +437,45 @@
     struct exprm_state *e;
     char x[MAX_LOCALIZED], xx[MAX_LOCALIZED], ans[MAX_LOCALIZED];
 
-    switch (v->syntax) {
-        case NPA:
-            display_set_number(display, v->MPdisp_val);
-            break;
-
-        case EXPRS:
-            e = get_state(display);
-            if (display_is_empty(display)) {
-                mp_set_from_integer(0, MP_reg);
-                make_number(x, MAX_LOCALIZED, MP_reg, v->base, FALSE);
-                str = x;
-            } else {           
-                str = strdup(e->expression);
-            }
+    e = get_state(display);
+    if (display_is_empty(display)) {
+        mp_set_from_integer(0, MP_reg);
+        make_number(x, MAX_LOCALIZED, MP_reg, v->base, FALSE);
+        str = x;
+    } else {           
+        str = strdup(e->expression);
+    }
         
-            /* Substitute answer register */
-            make_number(ans, MAX_LOCALIZED, e->ans, v->base, TRUE);
-            localize_expression(localized, ans, MAX_LOCALIZED, &cursor);
-            str = str_replace(str, "Ans", localized);
-
-            /* Replace registers with values. */
-            for (i = 0; i < 10; i++) {
-                SNPRINTF(reg, 3, "R%d", i);
-                do_rcl_reg(i, MP_reg);
-                make_number(xx, MAX_LOCALIZED, MP_reg, v->base, FALSE);
-                t = str_replace(str, reg, xx);
-                free(str);
-                str = t;
-            }
-
-            ui_set_display(str, cursor);
-            free(str);
-            break;
-
-        default:
-            assert(0);
+    /* Substitute answer register */
+    make_number(ans, MAX_LOCALIZED, e->ans, v->base, TRUE);
+    localize_expression(localized, ans, MAX_LOCALIZED, &cursor);
+    str = str_replace(str, "Ans", localized);
+
+    /* Replace registers with values. */
+    for (i = 0; i < 10; i++) {
+        SNPRINTF(reg, 3, "R%d", i);
+        do_rcl_reg(i, MP_reg);
+        make_number(xx, MAX_LOCALIZED, MP_reg, v->base, FALSE);
+        t = str_replace(str, reg, xx);
+        free(str);
+        str = t;
     }
+    
+    ui_set_display(str, cursor);
+    free(str);
 }
 
 gboolean
 display_is_empty(GCDisplay *display)
 {
-    switch (v->syntax) {
-        case NPA:
-            return v->ltr.toclear;
-
-        case EXPRS:
-            return strcmp(display_get_text(display), "") == 0;
-        
-        default:
-            assert(FALSE);
-    }
+    return strcmp(display_get_text(display), "") == 0;
 }
 
 gboolean
 display_is_result(GCDisplay *display)
 {
-    switch (v->syntax) {
-        case NPA:
-            if (v->ltr.old_cal_value < 0 ||
-                v->ltr.old_cal_value == KEY_CALCULATE) {
-                return TRUE;
-            }
-            break;
-
-        case EXPRS:
-            if (strcmp(display_get_text(display), "Ans") == 0) {
-                return TRUE;
-            }
-            break;
-        
-        default:
-            assert(FALSE);
-    }
+    if (strcmp(display_get_text(display), "Ans") == 0)
+        return TRUE;
     
     return FALSE;
 }

Modified: trunk/gcalctool/display.h
==============================================================================
--- trunk/gcalctool/display.h	(original)
+++ trunk/gcalctool/display.h	Mon Aug  4 07:52:51 2008
@@ -54,7 +54,6 @@
 void display_reset(GCDisplay *);
 void localize_expression(char *, const char *, int, int *);
 void display_clear(GCDisplay *, int);
-void paren_disp(GCDisplay *, int);
 void display_refresh(GCDisplay *, int);
 
 const char *display_get_text(GCDisplay *);

Modified: trunk/gcalctool/functions.c
==============================================================================
--- trunk/gcalctool/functions.c	(original)
+++ trunk/gcalctool/functions.c	Mon Aug  4 07:52:51 2008
@@ -33,7 +33,6 @@
 #include "mpmath.h"
 #include "display.h"
 #include "ce_parser.h"
-#include "lr_parser.h"
 #include "ui.h"
 
 void
@@ -71,7 +70,7 @@
 }
 
 
-void
+static void
 clear_undo_history(void)
 {
     display_clear_stack(&v->display);
@@ -104,43 +103,190 @@
 }
 
 
+static void
+exp_negate(void)
+{
+    display_surround(&v->display, "-(", ")", 0); // FIXME: Cursor
+}
+
+
+static void
+exp_inv(void)
+{
+    display_surround(&v->display, "1/(", ")", 0); // FIXME: Cursor
+}
+
+static void
+do_function(int index)      /* Perform a user defined function. */
+{
+    char *str;
+    int ret;
+
+    assert(index >= 0);
+    assert(index <= 9);
+
+    str = v->fun_vals[index];
+    assert(str);
+    ret = ce_udf_parse(str);
+
+    if (!ret) {
+        ui_set_statusbar("", "");
+    } else {
+        ui_set_statusbar(_("Malformed function"), "gtk-dialog-error");
+    }
+}
+
+static void
+do_shift(int count)     /* Perform bitwise shift on display value. */
+{
+    int MPval[MP_SIZE];
+
+    if (display_is_usable_number(&v->display, MPval) || !is_integer(MPval)) {
+        ui_set_statusbar(_("No sane value to do bitwise shift"),
+                         "gtk-dialog-error");
+    }
+    else {
+        calc_shift(MPval, display_get_answer(&v->display), count);
+        display_set_string(&v->display, "Ans");
+    }
+
+    syntaxdep_show_display();
+}
+
+
+/* Clear the calculator display and re-initialise. */
+void
+do_clear(void)
+{
+    display_clear(&v->display, TRUE);
+    if (v->error) {
+        ui_set_display("", -1);
+    }
+    display_reset(&v->display);
+}
+
+
+/* Change the current base setting. */
 void
-do_business(void)     /* Perform special business mode calculations. */
+do_base(enum base_type b)
 {
-    if (v->current == KEY_FINC_CTRM) {
-        calc_ctrm(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_DDB) {
-        calc_ddb(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_FV) {
-        calc_fv(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_PMT) {
-        calc_pmt(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_PV) {
-        calc_pv(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_RATE) {
-        calc_rate(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_SLN) {
-        calc_sln(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_SYD) {
-        calc_syd(v->MPdisp_val);
-    } else if (v->current == KEY_FINC_TERM) {
-        calc_term(v->MPdisp_val);
+    int ret, MP[MP_SIZE];
+
+    ret = display_is_usable_number(&v->display, MP);
+
+    if (ret) {
+        ui_set_statusbar(_("No sane value to convert"),
+                         "gtk-dialog-error");
+    } else {
+        mp_set_from_mp(MP, display_get_answer(&v->display));
+        display_set_string(&v->display, "Ans");
     }
-    display_set_number(&v->display, v->MPdisp_val);
+    v->base = b;
+    set_resource(R_BASE, Rbstr[(int) v->base]);
+    ui_set_base(v->base);
+    ui_make_registers();
+    clear_undo_history();
+
+    display_refresh(&v->display, -1);
 }
 
 
+/* Exchange display with memory register. */
 static void
-exp_negate(void)
+do_exchange(int index)
 {
-    display_surround(&v->display, "-(", ")", 0); // FIXME: Cursor
+    int MPtemp[MP_SIZE];
+    int MPexpr[MP_SIZE];
+
+    if (display_is_usable_number(&v->display, MPexpr)) {
+        ui_set_statusbar(_("No sane value to store"),
+                         "gtk-dialog-error");
+    } else {
+        mp_set_from_mp(v->MPmvals[index], MPtemp);
+        mp_set_from_mp(MPexpr, v->MPmvals[index]);
+        mp_set_from_mp(MPtemp, display_get_answer(&v->display));
+        display_set_string(&v->display, "Ans");
+        display_refresh(&v->display, -1);
+        ui_make_registers();
+    }
+
+    syntaxdep_show_display();
+}
+
+
+void
+do_numtype(enum num_type n)   /* Set number display type. */
+{
+    int ret, MP[MP_SIZE];
+
+    v->dtype = n;
+    set_resource(R_DISPLAY, Rdstr[(int) v->dtype]);
+
+    ret = display_is_usable_number(&v->display, MP);
+    if (ret) {
+        ui_set_statusbar(_("No sane value to convert"),
+                         "gtk-dialog-error");
+    } else {
+        mp_set_from_mp(MP, display_get_answer(&v->display));
+        display_set_string(&v->display, "Ans");
+        ui_make_registers();
+    }
+    clear_undo_history();
+
+    display_refresh(&v->display, -1);
 }
 
 
 static void
-exp_inv(void)
+do_sto(int index)
 {
-    display_surround(&v->display, "1/(", ")", 0); // FIXME: Cursor
+    if (display_is_usable_number(&v->display, v->MPmvals[index])) {
+        ui_set_statusbar(_("No sane value to store"),
+                         "gtk-dialog-error");
+    }
+
+    ui_make_registers();
+}
+
+
+/* Return: 0 = success, otherwise failed.
+ *
+ * TODO: remove hardcoding from reg ranges.
+ */
+
+int
+do_sto_reg(int reg, int value[MP_SIZE])
+{
+    if ((reg >= 0) && (reg <= 10)) {
+        mp_set_from_mp(value, v->MPmvals[reg]);
+        return(0);
+    } else {
+        return(-EINVAL);
+    }
+}
+
+
+/* Return: 0 = success, otherwise failed.
+ *
+ * TODO: remove hardcoding from reg ranges.
+ */
+
+int
+do_rcl_reg(int reg, int value[MP_SIZE])
+{
+    if ((reg >= 0) && (reg <= 10)) {
+        mp_set_from_mp(v->MPmvals[reg], value);
+        return(0);
+    } else {
+        return(-EINVAL);
+    }
+}
+
+
+void
+syntaxdep_show_display(void)
+{
+    display_refresh(&v->display, -1);
 }
 
 
@@ -301,869 +447,3 @@
     }
     display_refresh(&v->display, cursor);
 }
-
-
-void
-do_calc(void)      /* Perform arithmetic calculation and display result. */
-{
-    double dval, dres;
-    int MP1[MP_SIZE], MP2[MP_SIZE];
-
-    if (v->current == KEY_CALCULATE &&
-        v->ltr.old_cal_value == KEY_CALCULATE) {
-        if (v->ltr.new_input) {
-            mp_set_from_mp(v->MPlast_input, v->MPresult);
-        } else {
-            mp_set_from_mp(v->MPlast_input, v->MPdisp_val);
-        }
-    }
-
-    if (v->current != KEY_CALCULATE &&
-        v->ltr.old_cal_value == KEY_CALCULATE) {
-        v->ltr.cur_op = -1;
-    }
-
-    switch (v->ltr.cur_op) {
-        case KEY_SIN:
-        case KEY_SINH:
-        case KEY_ASIN:
-        case KEY_ASINH:
-        case KEY_COS:
-        case KEY_COSH:
-        case KEY_ACOS:
-        case KEY_ACOSH:
-        case KEY_TAN:
-        case KEY_TANH:
-        case KEY_ATAN:
-        case KEY_ATANH:
-        case -1:
-            mp_set_from_mp(v->MPdisp_val, v->MPresult);
-            break;
-
-        case KEY_ADD:
-            mpadd(v->MPresult, v->MPdisp_val, v->MPresult);
-            break;
-
-        case KEY_SUBTRACT:
-            mpsub(v->MPresult, v->MPdisp_val, v->MPresult);
-            break;
-
-        case KEY_MULTIPLY:
-            mpmul(v->MPresult, v->MPdisp_val, v->MPresult);
-            break;
-
-        case KEY_DIVIDE:
-            mpdiv(v->MPresult, v->MPdisp_val, v->MPresult);
-            break;
-
-        case KEY_MODULUS_DIVIDE:
-            if (!is_integer(v->MPresult) || !is_integer(v->MPdisp_val)) {
-                ui_set_statusbar(_("Error, operands must be integers"),
-                                 "gtk-dialog-error");
-            } else {
-                mpdiv(v->MPresult, v->MPdisp_val, MP1);
-                mpcmim(MP1, MP1);
-                mpmul(MP1, v->MPdisp_val, MP2);
-                mpsub(v->MPresult, MP2, v->MPresult);
-
-                mp_set_from_integer(0, MP1);
-                if ((mp_is_less_than(v->MPdisp_val, MP1)
-		     && mp_is_greater_than(v->MPresult, MP1)) ||
-                    mp_is_less_than(v->MPresult, MP1)) { 
-                    mpadd(v->MPresult, v->MPdisp_val, v->MPresult);
-                }
-            }
-            break;
-
-        case KEY_X_POW_Y:
-            calc_xpowy(v->MPresult, v->MPdisp_val, v->MPresult);
-            break;
-
-        case KEY_AND:
-            dres = mp_cast_to_double(v->MPresult);
-            dval = mp_cast_to_double(v->MPdisp_val);
-            dres = setbool(ibool(dres) & ibool(dval));
-            mp_set_from_double(dres, v->MPresult);
-            break;
-
-        case KEY_OR:
-            dres = mp_cast_to_double(v->MPresult);
-            dval = mp_cast_to_double(v->MPdisp_val);
-            dres = setbool(ibool(dres) | ibool(dval));
-            mp_set_from_double(dres, v->MPresult);
-            break;
-
-        case KEY_XOR:
-            dres = mp_cast_to_double(v->MPresult);
-            dval = mp_cast_to_double(v->MPdisp_val);
-            dres = setbool(ibool(dres) ^ ibool(dval));
-            mp_set_from_double(dres, v->MPresult);
-            break;
-
-        case KEY_XNOR:
-            dres = mp_cast_to_double(v->MPresult);
-            dval = mp_cast_to_double(v->MPdisp_val);
-            dres = setbool(~ibool(dres) ^ ibool(dval));
-            mp_set_from_double(dres, v->MPresult);
-
-        default:
-            break;
-    }
-
-    display_set_number(&v->display, v->MPresult);
-
-    if (!(v->current == KEY_CALCULATE &&
-          v->ltr.old_cal_value == KEY_CALCULATE)) {
-        mp_set_from_mp(v->MPdisp_val, v->MPlast_input);
-    }
-
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-    if (v->current != KEY_CALCULATE) {
-        v->ltr.cur_op = v->current;
-    }
-    v->ltr.old_cal_value = v->current;
-    v->ltr.new_input     = v->ltr.key_exp = 0;
-}
-
-
-void
-do_sin(void)
-{
-    calc_trigfunc(sin_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_sinh(void)
-{
-    calc_trigfunc(sinh_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_asin(void)
-{
-    calc_trigfunc(asin_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_asinh(void)
-{
-    calc_trigfunc(asinh_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_cos(void)
-{
-    calc_trigfunc(cos_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_cosh(void)
-{
-    calc_trigfunc(cosh_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_acos(void)
-{
-    calc_trigfunc(acos_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_acosh(void)
-{
-    calc_trigfunc(acosh_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_tan(void)
-{
-    calc_trigfunc(tan_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_tanh(void)
-{
-    calc_trigfunc(tanh_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_atan(void)
-{
-    calc_trigfunc(atan_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_atanh(void)
-{
-    calc_trigfunc(atanh_t, v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-void
-do_percent(void)
-{
-    calc_percent(v->MPdisp_val, v->MPresult);
-    display_set_number(&v->display, v->MPresult);
-    mp_set_from_mp(v->MPresult, v->MPdisp_val);
-}
-
-
-/* Clear the calculator display and re-initialise. */
-void
-do_clear(void)
-{
-    display_clear(&v->display, TRUE);
-    if (v->error) {
-        ui_set_display("", -1);
-    }
-    display_reset(&v->display);
-}
-
-
-/* Clear the calculator display. */
-void
-do_clear_entry(void)
-{
-    display_clear(&v->display, FALSE);
-}
-
-
-/* Change the current base setting. */
-void
-do_base(enum base_type b)
-{
-    int ret, MP[MP_SIZE];
-
-    switch (v->syntax) {
-        case NPA:
-            v->base = b;
-            set_resource(R_BASE, Rbstr[(int) v->base]);
-            ui_set_base(v->base);
-            ui_make_registers();
-            break;
-
-        case EXPRS:
-            ret = display_is_usable_number(&v->display, MP);
-
-            if (ret) {
-                ui_set_statusbar(_("No sane value to convert"),
-                                 "gtk-dialog-error");
-            } else {
-                mp_set_from_mp(MP, display_get_answer(&v->display));
-                display_set_string(&v->display, "Ans");
-            }
-            v->base = b;
-            set_resource(R_BASE, Rbstr[(int) v->base]);
-            ui_set_base(v->base);
-            ui_make_registers();
-            clear_undo_history();
-            break;
-
-        default:
-            assert(0);
-            break;
-    }
-
-    display_refresh(&v->display, -1);
-}
-
-
-void
-do_constant(int index)
-{
-    int *MPval;
-
-    assert(index >= 0);
-    assert(index <= 9);
-
-    MPval = v->MPcon_vals[index];
-    mp_set_from_mp(MPval, v->MPdisp_val);
-    v->ltr.new_input = 1;
-    syntaxdep_show_display();
-}
-
-
-/* Remove the last numeric character typed. */
-void
-do_backspace(void)
-{
-    size_t len;
-    char buffer[MAX_DISPLAY];
-    
-    SNPRINTF(buffer, MAX_DISPLAY, display_get_text(&v->display));
-
-    len = strlen(buffer);
-    if (len > 0) {
-        buffer[len-1] = '\0';
-    }
-
-    /*  If we were entering a scientific number, and we have backspaced over
-     *  the exponent sign, then this reverts to entering a fixed point number.
-     */
-    if (v->ltr.key_exp && !(strchr(buffer, '+'))) {
-        v->ltr.key_exp = 0;
-        buffer[strlen(buffer)-1] = '\0';
-    }
-
-    /* If we've backspaced over the numeric point, clear the pointed flag. */
-    if (v->ltr.pointed && !(strchr(buffer, '.'))) {
-        v->ltr.pointed = 0;
-    }
-
-    display_set_string(&v->display, buffer);
-    MPstr_to_num(buffer, v->base, v->MPdisp_val);
-}
-
-
-void
-do_delete(void)
-{
-    /* Not required in ltr mode */
-}
-
-
-/* Exchange display with memory register. */
-void
-do_exchange(int index)
-{
-    int MPtemp[MP_SIZE];
-    int MPexpr[MP_SIZE];
-
-    switch (v->syntax) {
-        case NPA:
-            mp_set_from_mp(v->MPdisp_val, MPtemp);
-            mp_set_from_mp(v->MPmvals[index], v->MPdisp_val);
-            mp_set_from_mp(MPtemp, v->MPmvals[index]);
-            ui_make_registers();
-            break;
-
-        case EXPRS:
-            if (display_is_usable_number(&v->display, MPexpr)) {
-                ui_set_statusbar(_("No sane value to store"),
-                                 "gtk-dialog-error");
-            } else {
-                mp_set_from_mp(v->MPmvals[index], MPtemp);
-                mp_set_from_mp(MPexpr, v->MPmvals[index]);
-                mp_set_from_mp(MPtemp, display_get_answer(&v->display));
-                display_set_string(&v->display, "Ans");
-                display_refresh(&v->display, -1);
-                ui_make_registers();
-            }
-            break;
-
-        default:
-            assert(0);
-    }
-
-    v->ltr.new_input = 1;
-    syntaxdep_show_display();
-}
-
-
-/* Get exponential number. */
-void
-do_expno(void)
-{
-    char buffer[MAX_DISPLAY];
-    
-    SNPRINTF(buffer, MAX_DISPLAY, display_get_text(&v->display));    
-    
-    v->ltr.pointed = (strchr(buffer, '.') != NULL);
-    if (!v->ltr.new_input) {
-        STRNCPY(buffer, "1.0 +", MAX_LOCALIZED - 1);
-        v->ltr.new_input = v->ltr.pointed = 1;
-    } else if (!v->ltr.pointed) {
-        STRNCAT(buffer, ". +", 3);
-        v->ltr.pointed = 1;
-    } else if (!v->ltr.key_exp) {
-        STRNCAT(buffer, " +", 2);
-    }
-    v->ltr.toclear = 0;
-    v->ltr.key_exp = 1;
-    display_set_string(&v->display, buffer);
-    MPstr_to_num(buffer, v->base, v->MPdisp_val);
-}
-
-
-/* Calculate the factorial of MPval. */
-
-void
-do_factorial(int *MPval, int *MPres)
-{
-    double val;
-    int i, MPa[MP_SIZE], MP1[MP_SIZE], MP2[MP_SIZE];
-
-/*  NOTE: do_factorial, on each iteration of the loop, will attempt to
- *        convert the current result to a double. If v->error is set,
- *        then we've overflowed. This is to provide the same look&feel
- *        as V3.
- *
- *  XXX:  Needs to be improved. Shouldn't need to convert to a double in
- *        order to check this.
- */
-
-    mp_set_from_mp(MPval, MPa);
-    mpcmim(MPval, MP1);
-    mp_set_from_integer(0, MP2);
-    if (mp_is_equal(MPval, MP1)
-	&& mp_is_greater_equal(MPval, MP2)) {   /* Only positive integers. */
-        if (mp_is_equal(MP1, MP2)) {    /* Special case for 0! */
-            mp_set_from_integer(1, MPres);
-            return;
-        }
-        mp_set_from_integer(1, MPa);
-        i = mp_cast_to_int(MP1);
-        if (!i) {
-            matherr((struct exception *) NULL);
-        } else {
-            while (i > 0) {
-                mpmuli(MPa, i, MPa);
-                val = mp_cast_to_double(MPa);
-                if (v->error) {
-                    mperr();
-                    return;
-                }
-                i--;
-            }
-        }
-    } else {
-        matherr((struct exception *) NULL);
-    }
-    mp_set_from_mp(MPa, MPres);
-}
-
-
-void
-do_function(int index)      /* Perform a user defined function. */
-{
-    char *str;
-    int ret;
-
-    assert(index >= 0);
-    assert(index <= 9);
-
-    switch (v->syntax) {
-        case NPA:
-            str = v->fun_vals[index];
-            assert(str);
-            ret = lr_udf_parse(str);
-            break;
-
-        case EXPRS:
-            str = v->fun_vals[index];
-            assert(str);
-            ret = ce_udf_parse(str);
-            break;
-
-        default:
-            assert(0);
-    }
-
-    if (!ret) {
-        ui_set_statusbar("", "");
-    } else {
-        ui_set_statusbar(_("Malformed function"), "gtk-dialog-error");
-    }
-    v->ltr.new_input = 1;
-}
-
-
-static void
-do_immedfunc(int s[MP_SIZE], int t[MP_SIZE])
-{
-    int MP1[MP_SIZE];
-
-    switch (v->current) {
-        case KEY_MASK_32:
-            calc_u32(s, t);
-            break;
-
-        case KEY_MASK_16:
-            calc_u16(s, t);
-            break;
-
-        case KEY_E_POW_X:
-            mp_set_from_mp(s, MP1);
-            mpexp(MP1, t);
-            break;
-
-        case KEY_10_POW_X:
-            calc_tenpowx(s, t);
-            break;
-
-        case KEY_NATURAL_LOGARITHM:
-            mp_set_from_mp(s, MP1);
-            mpln(MP1, t);
-            break;
-
-        case KEY_LOGARITHM:
-            mplogn(10, s, t);
-            break;
-
-        case KEY_LOGARITHM2:
-            mplogn(2, s, t);
-            break;
-
-        case KEY_RANDOM:
-            calc_rand(t);
-            break;
-
-        case KEY_SQUARE_ROOT:
-            mp_set_from_mp(s, MP1);
-            mpsqrt(MP1, t);
-            break;
-
-        case KEY_NOT:
-            calc_not(t, s);
-            break;
-
-        case KEY_RECIPROCAL:
-            calc_inv(s, t);
-            break;
-
-        case KEY_FACTORIAL:
-            do_factorial(s, MP1);
-            mp_set_from_mp(MP1, t);
-            break;
-
-        case KEY_SQUARE:
-            mp_set_from_mp(s, MP1);
-            mpmul(MP1, MP1, t);
-            break;
-
-        case KEY_CHANGE_SIGN:
-            // NOTE: Exponential sign changing is completely broken
-            mp_invert_sign(s, t);
-            break;
-    }
-}
-
-
-void
-do_immed(void)
-{
-    do_immedfunc(v->MPdisp_val, v->MPdisp_val);
-    display_set_number(&v->display, v->MPdisp_val);
-}
-
-
-void
-do_number(void)
-{
-    int offset;
-    char buffer[MAX_DISPLAY];
-    
-    SNPRINTF(buffer, MAX_DISPLAY, display_get_text(&v->display));
-
-    if (v->ltr.toclear) {
-        offset = 0;
-        v->ltr.toclear = 0;
-    } else {
-        offset = strlen(buffer);
-    }
-
-    if (offset < MAX_DISPLAY) {
-        SNPRINTF(buffer+offset, MAX_DISPLAY-offset, "%s", buttons[v->current].symname);
-    }
-
-    display_set_string(&v->display, buffer);
-    MPstr_to_num(buffer, v->base, v->MPdisp_val);
-    v->ltr.new_input = 1;
-}
-
-
-void
-do_numtype(enum num_type n)   /* Set number display type. */
-{
-    int ret, MP[MP_SIZE];
-
-    v->dtype = n;
-    set_resource(R_DISPLAY, Rdstr[(int) v->dtype]);
-
-    switch (v->syntax) {
-        case NPA:
-            ui_make_registers();
-            break;
-
-        case EXPRS:
-            ret = display_is_usable_number(&v->display, MP);
-            if (ret) {
-                ui_set_statusbar(_("No sane value to convert"),
-                                 "gtk-dialog-error");
-            } else {
-                mp_set_from_mp(MP, display_get_answer(&v->display));
-                display_set_string(&v->display, "Ans");
-                ui_make_registers();
-            }
-            clear_undo_history();
-            break;
-
-    default:
-        assert(0);
-    }
-
-    display_refresh(&v->display, -1);
-}
-
-
-void
-do_paren(void)
-{
-    ui_set_statusbar("", "");
-
-    switch (v->current) {
-        case KEY_START_BLOCK:
-            if (v->ltr.noparens == 0) {
-                if (v->ltr.cur_op == -1) {
-                    display_set_string(&v->display, "");
-                    ui_set_statusbar(_("Cleared display, prefix without an operator is not allowed"), "");
-                } else {
-                    paren_disp(&v->display, v->ltr.cur_op);
-                }
-            }
-            v->ltr.noparens++;
-            break;
-
-        case KEY_END_BLOCK:
-            v->ltr.noparens--;
-            if (!v->ltr.noparens) {
-                int ret, i = 0;
-                const char *text = display_get_text(&v->display);
-                while (text[i++] != '(') {
-                    /* do nothing */;
-                }
-
-                ret = lr_parse(&text[i], v->MPdisp_val);
-                if (!ret) {
-                    display_set_number(&v->display, v->MPdisp_val);
-                    return;
-                } else {
-                    ui_set_statusbar(_("Malformed parenthesis expression"),
-                                     "gtk-dialog-error");
-                }
-            }
-            break;
-
-        default:
-            /* Queue event */
-            break;
-    }
-    paren_disp(&v->display, v->current);
-}
-
-
-void
-do_sto(int index)
-{
-    switch (v->syntax) {
-        case NPA:
-            mp_set_from_mp(v->MPdisp_val, v->MPmvals[index]);
-            break;
-
-        case EXPRS:
-            if (display_is_usable_number(&v->display, v->MPmvals[index])) {
-                ui_set_statusbar(_("No sane value to store"),
-                                 "gtk-dialog-error");
-            }
-            break;
-
-        default:
-            assert(0);
-    }
-
-    ui_make_registers();
-}
-
-
-/* Return: 0 = success, otherwise failed.
- *
- * TODO: remove hardcoding from reg ranges.
- */
-
-int
-do_sto_reg(int reg, int value[MP_SIZE])
-{
-    if ((reg >= 0) && (reg <= 10)) {
-        mp_set_from_mp(value, v->MPmvals[reg]);
-        return(0);
-    } else {
-        return(-EINVAL);
-    }
-}
-
-
-void
-do_rcl(int index)
-{
-    mp_set_from_mp(v->MPmvals[index], v->MPdisp_val);
-    v->ltr.new_input = 1;
-    syntaxdep_show_display();
-}
-
-
-/* Return: 0 = success, otherwise failed.
- *
- * TODO: remove hardcoding from reg ranges.
- */
-
-int
-do_rcl_reg(int reg, int value[MP_SIZE])
-{
-    if ((reg >= 0) && (reg <= 10)) {
-        mp_set_from_mp(v->MPmvals[reg], value);
-        return(0);
-    } else {
-        return(-EINVAL);
-    }
-}
-
-
-void
-syntaxdep_show_display(void)
-{
-    switch (v->syntax) {
-        case NPA:
-            display_set_number(&v->display, v->MPdisp_val);
-            break;
-
-        case EXPRS:
-     	    display_refresh(&v->display, -1);
-            break;
-
-        default:
-            assert(0);
-    }
-}
-
-
-void
-do_point(void)                   /* Handle numeric point. */
-{
-    char buffer[MAX_DISPLAY];
-    
-    SNPRINTF(buffer, MAX_DISPLAY, display_get_text(&v->display));
-    
-    if (!v->ltr.pointed) {
-        if (v->ltr.toclear) {
-            STRNCPY(buffer, ".", MAX_LOCALIZED - 1);
-            v->ltr.toclear = 0;
-        } else {
-            STRCAT(buffer, ".");
-        }
-        v->ltr.pointed = 1;
-    }
-    display_set_string(&v->display, buffer);
-    MPstr_to_num(buffer, v->base, v->MPdisp_val);
-}
-
-
-static void
-do_portionfunc(int num[MP_SIZE])
-{
-    int MP1[MP_SIZE];
-
-    switch (v->current) {
-        case KEY_ABSOLUTE_VALUE:
-            mp_set_from_mp(num, MP1);
-            mp_abs(MP1, num);
-            break;
-
-        case KEY_FRACTION:
-            mp_set_from_mp(num, MP1);
-            mpcmf(MP1, num);
-            break;
-
-        case KEY_INTEGER:
-            mp_set_from_mp(num, MP1);
-            mpcmim(MP1, num);
-            break;
-    }
-}
-
-
-void
-do_portion(void)
-{
-    do_portionfunc(v->MPdisp_val);
-    display_set_number(&v->display, v->MPdisp_val);
-}
-
-
-void
-do_shift(int count)     /* Perform bitwise shift on display value. */
-{
-    BOOLEAN temp;
-    double dval;
-    int MPtemp[MP_SIZE], MPval[MP_SIZE];
-
-    switch (v->syntax) {
-        case NPA:
-            MPstr_to_num(display_get_text(&v->display), v->base, MPtemp);
-            dval = mp_cast_to_double(MPtemp);
-            temp = ibool(dval);
-
-            if (count < 0) {
-                temp = temp >> -count;
-            } else {
-                temp = temp << count;
-            }
-
-            dval = setbool(temp);
-            mp_set_from_double(dval, v->MPdisp_val);
-            display_set_number(&v->display, v->MPdisp_val);
-            mp_set_from_mp(v->MPdisp_val, v->MPlast_input);
-            break;
-
-        case EXPRS:
-            if (display_is_usable_number(&v->display, MPval) || !is_integer(MPval)) {
-                ui_set_statusbar(_("No sane value to do bitwise shift"),
-                                 "gtk-dialog-error");
-                break;
-            }
-
-            calc_shift(MPval, display_get_answer(&v->display), count);
-            display_set_string(&v->display, "Ans");
-            break;
-
-        default:
-            assert(0);
-    }
-
-    v->ltr.new_input = 1;
-    syntaxdep_show_display();
-}

Modified: trunk/gcalctool/functions.h
==============================================================================
--- trunk/gcalctool/functions.h	(original)
+++ trunk/gcalctool/functions.h	Mon Aug  4 07:52:51 2008
@@ -30,44 +30,12 @@
 
 void perform_undo(void);
 void perform_redo(void);
-void clear_undo_history(void);
 
 void do_base(enum base_type);
-void do_business(void);
-void do_calc(void);
 void do_expression(int function, int arg, int cursor);
 void do_clear(void);
-void do_clear_entry(void);
-void do_backspace(void);
-void do_delete(void);
 void do_numtype(enum num_type);
-void do_expno(void);
-void do_immed(void);
-void do_number(void);
-void do_paren(void);
-void do_shift(int);
-void do_sto(int);
-void do_rcl(int);
-void do_exchange(int);
 void do_accuracy(int);
-void do_constant(int);
-void do_function(int);
-void do_point(void);
-void do_portion(void);
-void do_sin(void);
-void do_sinh(void);
-void do_asin(void);
-void do_asinh(void);
-void do_cos(void); 
-void do_cosh(void);
-void do_acos(void);
-void do_acosh(void);
-void do_tan(void);
-void do_tanh(void);
-void do_atan(void);
-void do_atanh(void);
-void do_percent(void);
-void do_factorial(int *, int *);
 int do_rcl_reg(int reg, int value[MP_SIZE]);
 int do_sto_reg(int reg, int value[MP_SIZE]);
 

Modified: trunk/gcalctool/get.c
==============================================================================
--- trunk/gcalctool/get.c	(original)
+++ trunk/gcalctool/get.c	Mon Aug  4 07:52:51 2008
@@ -44,7 +44,6 @@
 char *Rmstr[MAXMODES]     = { "BASIC", "ADVANCED", "FINANCIAL", 
                               "SCIENTIFIC" };
 char *Rtstr[MAXTRIGMODES] = { "DEG", "GRAD", "RAD" };
-char *Rsstr[MAXSYNTAX]    = { "ARITHMETIC", "ARITHMETIC_PRECEDENCE" };
 
 static GConfClient *client = NULL;
 
@@ -312,24 +311,6 @@
         }
     }
 
-    /* Set expression (arithmetic precedence) mode as default. */
-    v->syntax = EXPRS;
-
-    if (get_str_resource(R_SYNTAX, str)) {
-        for (i = 0; i < MAXSYNTAX; i++) {
-            if (EQUAL(str, Rsstr[i])) {
-                break;
-            }
-        }
-
-        if (i == MAXSYNTAX) {
-            FPRINTF(stderr, _("%s: invalid syntax mode [%s]\n"), 
-                    v->progname, str);
-        } else {
-            v->syntax = i;
-        }
-    }
-
     if (get_boolean_resource(R_ZEROES, &boolval)) {
         v->show_zeroes = boolval;
     }

Modified: trunk/gcalctool/get.h
==============================================================================
--- trunk/gcalctool/get.h	(original)
+++ trunk/gcalctool/get.h	Mon Aug  4 07:52:51 2008
@@ -32,7 +32,6 @@
 #define R_TRIG     "trigtype"
 #define R_ZEROES   "showzeroes"
 #define R_TSEP     "showthousands"
-#define R_SYNTAX   "syntax"
 #define R_BITCALC  "bitcalculating"
 #define R_XPOS     "xposition"
 #define R_YPOS     "yposition"

Modified: trunk/gcalctool/gtk.c
==============================================================================
--- trunk/gcalctool/gtk.c	(original)
+++ trunk/gcalctool/gtk.c	Mon Aug  4 07:52:51 2008
@@ -36,7 +36,6 @@
 #include "config.h"
 #include "dsdefs.h"
 #include "functions.h"
-#include "lr_parser.h"
 #include "ce_parser.h"
 #include "mpmath.h"
 #include "display.h"
@@ -477,56 +476,10 @@
 {
     int *ans;
 
-    switch (v->syntax) {
-        case NPA:
-            v->ltr.noparens = 0;
-            MPstr_to_num("0", DEC, v->MPdisp_val);
-            display_set_number(&v->display, v->MPdisp_val);
-            clear_undo_history();
-            break;
-
-        case EXPRS:
-            ans = display_get_answer(&v->display);
-            MPstr_to_num("0", DEC, ans);
-            display_clear(&v->display, FALSE);
-            display_set_number(&v->display, ans);
-            break;
-        
-        default:
-            assert(0);
-    }
-}
-
-void
-ui_set_syntax_mode(enum syntax mode)
-{
-    GtkWidget *widget;
-
-    v->syntax = mode;
-    
-    reset_display();
-    
-    if (mode == NPA) {
-        ui_set_statusbar(_("Activated no operator precedence mode"), "");
-    } else {
-        ui_set_statusbar(
-            _("Activated expression mode with operator precedence"), "");
-    }
-    
-    /* Save the syntax mode */
-    set_resource(R_SYNTAX, Rsstr[v->syntax]);
-
-    /* ??? */
-    ui_set_mode(v->modetype);
-    
-    /* Update menu */
-    if (v->syntax == EXPRS) {
-        widget = GET_WIDGET("arithmetic_precedence_menu");
-        gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(widget), TRUE);
-    } else {
-        widget = GET_WIDGET("ltr_precedence_menu");
-        gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(widget), TRUE);
-    }
+    ans = display_get_answer(&v->display);
+    MPstr_to_num("0", DEC, ans);
+    display_clear(&v->display, FALSE);
+    display_set_number(&v->display, ans);
 }
 
 
@@ -883,63 +836,29 @@
 static void
 set_bit_panel(void)
 {
-    int bit_str_len, i, MP1[MP_SIZE], MP2[MP_SIZE];
+    int bit_str_len, i;
     int MP[MP_SIZE];
     char bit_str[MAXLINE], label[MAXLINE];
 
-    switch (v->syntax) {
-        case NPA:
-            MPstr_to_num(display_get_text(&v->display), v->base, MP1);
-            mpcmim(MP1, MP2);
-            if (mp_is_equal(MP1, MP2)) {
-                int toclear = (v->current == KEY_CLEAR_ENTRY)
-                              ? TRUE : FALSE;
-
-                make_fixed(bit_str, MAXLINE, MP1, BIN, MAXLINE, toclear);
-                bit_str_len = strlen(bit_str);
-                if (bit_str_len <= MAXBITS) {
-                    gtk_widget_set_sensitive(X->bit_panel, TRUE);
-
-                    for (i = 0; i < MAXBITS; i++) {
-                        if (i < bit_str_len) {
-                            SNPRINTF(label, MAXLINE, " %c", bit_str[bit_str_len-i-1]);
-                        } else {
-                            SNPRINTF(label, MAXLINE, " 0");
-                        }
-                        gtk_label_set_text(GTK_LABEL(X->bits[MAXBITS - i - 1]), label);
-                    }
-
-                    return;
-                }
-            }
-            gtk_widget_set_sensitive(X->bit_panel, FALSE);
-            break;
-
-        case EXPRS: 
-            if (display_is_usable_number(&v->display, MP) || !is_integer(MP)) {
-                gtk_widget_set_sensitive(X->bit_panel, FALSE);
-                return;
-            }
-            make_fixed(bit_str, MAXLINE, MP, BIN, MAXLINE, FALSE);
-            bit_str_len = strlen(bit_str);
-            if (bit_str_len <= MAXBITS) {
-                gtk_widget_set_sensitive(X->bit_panel, TRUE);
-                
-                for (i = 0; i < MAXBITS; i++) {
-                    if (i < bit_str_len) {
-                        SNPRINTF(label, MAXLINE, " %c", bit_str[bit_str_len-i-1]);
-                    } else {
-                        SNPRINTF(label, MAXLINE, " 0");
-                    }
-                    gtk_label_set_text(GTK_LABEL(X->bits[MAXBITS - i - 1]), label);
-                }
+    if (display_is_usable_number(&v->display, MP) || !is_integer(MP)) {
+        gtk_widget_set_sensitive(X->bit_panel, FALSE);
+        return;
+    }
+    make_fixed(bit_str, MAXLINE, MP, BIN, MAXLINE, FALSE);
+    bit_str_len = strlen(bit_str);
+    if (bit_str_len <= MAXBITS) {
+        gtk_widget_set_sensitive(X->bit_panel, TRUE);
+        
+        for (i = 0; i < MAXBITS; i++) {
+            if (i < bit_str_len) {
+                SNPRINTF(label, MAXLINE, " %c", bit_str[bit_str_len-i-1]);
             } else {
-                gtk_widget_set_sensitive(X->bit_panel, FALSE);
+                SNPRINTF(label, MAXLINE, " 0");
             }
-            break;
-
-        default:
-            assert(FALSE);
+            gtk_label_set_text(GTK_LABEL(X->bits[MAXBITS - i - 1]), label);
+        }
+    } else {
+        gtk_widget_set_sensitive(X->bit_panel, FALSE);
     }
 }
 
@@ -975,10 +894,8 @@
     if (str == NULL || str[0] == '\0') {
         str = " ";
     } else {
-        if (v->syntax == EXPRS || (v->syntax == NPA && v->ltr.noparens == 0)) {
-            localize_expression(localized, str, MAX_LOCALIZED, &cursor);
-            str = localized;
-        }
+        localize_expression(localized, str, MAX_LOCALIZED, &cursor);
+        str = localized;
     }
 
     gtk_text_buffer_set_text(X->display_buffer, str, -1);
@@ -1055,10 +972,6 @@
                              !v->error); 
     gtk_widget_set_sensitive(GET_WIDGET("show_bitcalculating_menu"), !v->error);
     gtk_widget_set_sensitive(GET_WIDGET("show_registers_menu"), !v->error); 
-    gtk_widget_set_sensitive(GET_WIDGET("ltr_precedence_menu"), !v->error);
-
-    gtk_widget_set_sensitive(GET_WIDGET("arithmetic_precedence_menu"),
-                             !v->error); 
 
     gtk_widget_set_sensitive(GET_WIDGET("about_menu"), !v->error);
 }
@@ -1323,38 +1236,8 @@
 
 static void do_button(int function, int arg)
 {
-    switch (v->syntax) {
-        case NPA:
-            v->current = buttons[function].id;
-
-            if (v->error) {
-                /* Must press a valid key first. */
-                if (v->current != KEY_CLEAR) {
-                    return;
-                }
-                ui_set_error_state(FALSE);
-            }
-    
-            if (v->ltr.noparens > 0) {
-                do_paren();
-                return;
-            }
-
-            buttons[function].func(arg);
-            set_bit_panel();
-            if (v->ltr.new_input && v->dtype == FIX) {
-                display_set_string(&v->display, display_get_text(&v->display));
-            }
-            break;
-
-        case EXPRS:
-            do_expression(function, arg, get_cursor());
-            set_bit_panel();
-            break;
-
-        default:
-            assert(0);
-    }
+    do_expression(function, arg, get_cursor());
+    set_bit_panel();
 }
 
 
@@ -1745,19 +1628,9 @@
                                               "bit_index"));
     n = MAXBITS - index - 1;
 
-    switch (v->syntax) {
-        case NPA:
-            MPstr_to_num(display_get_text(&v->display), v->base, MP1);
-            break;
-        case EXPRS: {
-            int ret = display_is_usable_number(&v->display, display_get_answer(&v->display));
-            assert(!ret);
-            mp_set_from_mp(display_get_answer(&v->display), MP1);
-        }
-        break;
-        default:
-            assert(FALSE);
-    }
+    int ret = display_is_usable_number(&v->display, display_get_answer(&v->display));
+    assert(!ret);
+    mp_set_from_mp(display_get_answer(&v->display), MP1);
 
     number = mp_cast_to_double(MP1);
     lval = (long long) number;
@@ -1771,21 +1644,10 @@
     }
     number = (double) lval;
 
-    switch (v->syntax) {
-        case NPA:
-            mp_set_from_double(number, v->MPdisp_val);
-            display_set_number(&v->display, v->MPdisp_val);
-            break;
-        case EXPRS:
-            mp_set_from_double(number, display_get_answer(&v->display));
-            display_set_string(&v->display, "Ans");
-            display_refresh(&v->display, -1);
-            break;
-        default:
-            assert(FALSE);
-    }
+    mp_set_from_double(number, display_get_answer(&v->display));
+    display_set_string(&v->display, "Ans");
+    display_refresh(&v->display, -1);
 
-    v->ltr.toclear = 0;
     return (TRUE);
 }
 
@@ -2134,7 +1996,6 @@
 static void
 get_proc(GtkClipboard *clipboard, const gchar *buffer, gpointer data)
 {
-    int ret;
     gchar *dstp, *end_buffer, *srcp, *text, c;
 
     if (buffer == NULL) {
@@ -2202,25 +2063,8 @@
     }
     *dstp++ = '\0';
 
-    switch (v->syntax) {
-        case NPA:
-            ret = lr_parse((char *) text, v->MPdisp_val);
-            if (!ret) {
-                display_set_number(&v->display, v->MPdisp_val);
-            } else {
-                ui_set_statusbar(_("Clipboard contained malformed calculation"),
-                                 "gtk-dialog-error");
-            }
-            break;
-    
-        case EXPRS:
-            display_insert(&v->display, (char *) text, get_cursor()); // FIXME: Move out of gtk.c
-            display_refresh(&v->display, -1);
-            break;
-    
-        default:
-            assert(0);
-    }
+    display_insert(&v->display, (char *) text, get_cursor()); // FIXME: Move out of gtk.c
+    display_refresh(&v->display, -1);
     free(text);
 }
 
@@ -2341,15 +2185,6 @@
 }
 
 
-static void
-arithmetic_mode_cb(GtkWidget *widget)
-{
-    enum syntax mode;
-    mode = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)) ? EXPRS : NPA;
-    ui_set_syntax_mode(mode);
-}
-
-
 /*ARGSUSED*/
 static void
 mode_radio_cb(GtkWidget *menu)
@@ -2589,7 +2424,6 @@
     CONNECT_SIGNAL(store_menu_cb);
     CONNECT_SIGNAL(recall_menu_cb);
     CONNECT_SIGNAL(exchange_menu_cb);
-    CONNECT_SIGNAL(arithmetic_mode_cb);
     CONNECT_SIGNAL(mouse_button_cb);
     /* Detect when populating the right-click menu to enable pasting */
     CONNECT_SIGNAL(buffer_populate_popup_cb);
@@ -2742,8 +2576,6 @@
     set_menubar_tooltip("show_thousands_separator_menu");
     set_menubar_tooltip("show_bitcalculating_menu");
     set_menubar_tooltip("show_registers_menu");
-    set_menubar_tooltip("ltr_precedence_menu");
-    set_menubar_tooltip("arithmetic_precedence_menu");
     set_menubar_tooltip("help_menu");
     set_menubar_tooltip("about_menu");
 
@@ -2909,7 +2741,6 @@
     ui_set_show_trailing_zeroes(v->show_zeroes);
     ui_set_show_bitcalculating(show_bit);
     
-    ui_set_syntax_mode(v->syntax);
     ui_set_mode(v->modetype);
     ui_set_numeric_mode(FIX);
     ui_set_base(v->base);

Modified: trunk/gcalctool/mp.c
==============================================================================
--- trunk/gcalctool/mp.c	(original)
+++ trunk/gcalctool/mp.c	Mon Aug  4 07:52:51 2008
@@ -1030,8 +1030,6 @@
 {
     int tmp[MP_SIZE];     /* Temporary store for the number. */
     int accuracy;         /* Temporary story for the accuracy. */
-    int pointed;          /* Whether a decimal point has been given. */
-    int toclear;          /* Indicates if display should be cleared. */
     char disp[MAXLINE];   /* Setup a string to store what would be displayed */
     enum num_type dtype;  /* Setup a temp display type variable */
 
@@ -1086,8 +1084,6 @@
 
     accuracy = v->accuracy;
     dtype = v->dtype;
-    pointed = v->ltr.pointed;
-    toclear = v->ltr.toclear;
 
     v->dtype = FIX;
     v->accuracy = MAX_DIGITS;
@@ -1100,8 +1096,6 @@
 
     v->accuracy = accuracy;
     v->dtype = dtype;
-    v->ltr.pointed = pointed;
-    v->ltr.toclear = toclear;
 }
 
 

Modified: trunk/gcalctool/mpmath.c
==============================================================================
--- trunk/gcalctool/mpmath.c	(original)
+++ trunk/gcalctool/mpmath.c	Mon Aug  4 07:52:51 2008
@@ -865,10 +865,6 @@
         mpaddi(MPval, dval, MPval);
     }    
     *optr++ = '\0';
-    if (toclear == TRUE) {
-        v->ltr.toclear = 1;
-    }
-    v->ltr.pointed = 0;
 
     /* Strip off trailing zeroes */
     if (!v->show_zeroes) {
@@ -977,8 +973,6 @@
         mpaddi(MPval, dval, MPval);
     }
     *optr++    = '\0';
-    v->ltr.toclear = 1;
-    v->ltr.pointed = 0;
 }
 
 
@@ -1035,7 +1029,7 @@
 void
 MPstr_to_num(const char *str, enum base_type base, int *MPval)
 {
-    char *optr;
+    const char *optr;
     int MP1[MP_SIZE], MP2[MP_SIZE], MPbase[MP_SIZE];
     int i, inum;
     int exp      = 0;
@@ -1090,13 +1084,54 @@
     }
     exp *= exp_sign;
 
-    if (v->ltr.key_exp) {
-        mppwr(MPbase, exp, MP1);
-        mpmul(MPval, MP1, MPval);
-    }
-
     if (negate == 1) {
         mp_invert_sign(MPval, MPval);
     }
 }
 
+
+/* Calculate the factorial of MPval. */
+void
+calc_factorial(int *MPval, int *MPres)
+{
+    double val;
+    int i, MPa[MP_SIZE], MP1[MP_SIZE], MP2[MP_SIZE];
+
+/*  NOTE: do_factorial, on each iteration of the loop, will attempt to
+ *        convert the current result to a double. If v->error is set,
+ *        then we've overflowed. This is to provide the same look&feel
+ *        as V3.
+ *
+ *  XXX:  Needs to be improved. Shouldn't need to convert to a double in
+ *        order to check this.
+ */
+
+    mp_set_from_mp(MPval, MPa);
+    mpcmim(MPval, MP1);
+    mp_set_from_integer(0, MP2);
+    if (mp_is_equal(MPval, MP1)
+	&& mp_is_greater_equal(MPval, MP2)) {   /* Only positive integers. */
+        if (mp_is_equal(MP1, MP2)) {    /* Special case for 0! */
+            mp_set_from_integer(1, MPres);
+            return;
+        }
+        mp_set_from_integer(1, MPa);
+        i = mp_cast_to_int(MP1);
+        if (!i) {
+            matherr((struct exception *) NULL);
+        } else {
+            while (i > 0) {
+                mpmuli(MPa, i, MPa);
+                val = mp_cast_to_double(MPa);
+                if (v->error) {
+                    mperr();
+                    return;
+                }
+                i--;
+            }
+        }
+    } else {
+        matherr((struct exception *) NULL);
+    }
+    mp_set_from_mp(MPa, MPres);
+}

Modified: trunk/gcalctool/mpmath.h
==============================================================================
--- trunk/gcalctool/mpmath.h	(original)
+++ trunk/gcalctool/mpmath.h	Mon Aug  4 07:52:51 2008
@@ -66,6 +66,7 @@
 void calc_term(int t[MP_SIZE]);
 void calc_shift(int s[MP_SIZE], int t[MP_SIZE], int times);
 void calc_epowy(int s[MP_SIZE], int t[MP_SIZE]);
+void calc_factorial(int *, int *);
 
 /* return true if parameter is integer */
 int

Modified: trunk/gcalctool/ui.h
==============================================================================
--- trunk/gcalctool/ui.h	(original)
+++ trunk/gcalctool/ui.h	Mon Aug  4 07:52:51 2008
@@ -34,7 +34,6 @@
 void ui_set_display(char *, int);
 gchar *ui_get_display(void);
 
-void ui_set_syntax_mode(enum syntax);
 void ui_set_registers_visible(gboolean);
 void ui_set_accuracy(int);
 void ui_set_mode(enum mode_type);

Modified: trunk/glade/gcalctool.glade
==============================================================================
--- trunk/glade/gcalctool.glade	(original)
+++ trunk/glade/gcalctool.glade	Mon Aug  4 07:52:51 2008
@@ -310,41 +310,6 @@
 		      <accelerator key="M" modifiers="GDK_CONTROL_MASK" signal="activate"/>
 		    </widget>
 		  </child>
-
-		  <child>
-		    <widget class="GtkSeparatorMenuItem" id="separator3">
-		      <property name="visible">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkRadioMenuItem" id="ltr_precedence_menu">
-		      <property name="visible">True</property>
-		      <property name="tooltip" translatable="yes">Use Left-right Precedence</property>
-		      <property name="label" translatable="yes">_Left-to-right Precedence</property>
-		      <property name="use_underline">True</property>
-		      <property name="active">True</property>
-		      <signal name="select" handler="menu_item_select_cb"/>
-		      <signal name="deselect" handler="menu_item_deselect_cb"/>
-		      <signal name="activate" handler="on_left-to-right_precedence1_activate" last_modification_time="Sat, 13 Oct 2007 00:50:25 GMT"/>
-		      <accelerator key="L" modifiers="GDK_CONTROL_MASK" signal="activate"/>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkRadioMenuItem" id="arithmetic_precedence_menu">
-		      <property name="visible">True</property>
-		      <property name="tooltip" translatable="yes">Use Arithmetic Precedence</property>
-		      <property name="label" translatable="yes">A_rithmetic Precedence</property>
-		      <property name="use_underline">True</property>
-		      <property name="active">False</property>
-		      <property name="group">ltr_precedence_menu</property>
-		      <signal name="select" handler="menu_item_select_cb"/>
-		      <signal name="deselect" handler="menu_item_deselect_cb"/>
-		      <signal name="activate" handler="arithmetic_mode_cb" last_modification_time="Sat, 13 Oct 2007 00:50:25 GMT"/>
-		      <accelerator key="R" modifiers="GDK_CONTROL_MASK" signal="activate"/>
-		    </widget>
-		  </child>
 		</widget>
 	      </child>
 	    </widget>

Modified: trunk/help/gcalctool-bg.omf
==============================================================================
--- trunk/help/gcalctool-bg.omf	(original)
+++ trunk/help/gcalctool-bg.omf	Mon Aug  4 07:52:51 2008
@@ -18,7 +18,7 @@
       user's guide
     </type>
     <format mime="text/xml" dtd="-//OASIS//DTD DocBook XML V4.1.2//EN"/>
-    <identifier url="file:///home/bob/svn/gcalctool-head/trunk/build/share/gnome/help/gcalctool/bg/gcalctool.xml"/>
+    <identifier url="file:///home/bob/svn/gcalctool/build/share/gnome/help/gcalctool/bg/gcalctool.xml"/>
     <language code="bg"/>
     <relation seriesid="52191642-4f23-11d7-95c8-9792b4e62685"/>
     <rights type="GNU FDL" license.version="1.1" holder="Sun Microsystems"/>

Modified: trunk/help/gcalctool-zh_CN.omf
==============================================================================
--- trunk/help/gcalctool-zh_CN.omf	(original)
+++ trunk/help/gcalctool-zh_CN.omf	Mon Aug  4 07:52:51 2008
@@ -4,8 +4,8 @@
     <creator>( Sun Microsystems Inc.)</creator>
     <maintainer>( GNOME Documentation Project )</maintainer>
     <title>gcalctool Manual</title>
-    <date>2003 å 3 æ</date>
-    <version identifier="gcalctool æå V2.0" date="2003 å 3 æ"/>
+    <date>March 2003</date>
+    <version identifier="gcalctool Manual V2.0" date="March 2003"/>
     <subject category="GNOME|Applications|Accessories"/>
     <description>
       
@@ -18,7 +18,7 @@
       user's guide
     </type>
     <format mime="text/xml" dtd="-//OASIS//DTD DocBook XML V4.1.2//EN"/>
-    <identifier url="file:///home/bob/svn/gcalctool-head/trunk/build/share/gnome/help/gcalctool/zh_CN/gcalctool.xml"/>
+    <identifier url="file:///home/bob/svn/gcalctool/build/share/gnome/help/gcalctool/zh_CN/gcalctool.xml"/>
     <language code="zh_CN"/>
     <relation seriesid="52191642-4f23-11d7-95c8-9792b4e62685"/>
     <rights type="GNU FDL" license.version="1.1" holder="Sun Microsystems"/>

Modified: trunk/help/gcalctool-zh_HK.omf
==============================================================================
--- trunk/help/gcalctool-zh_HK.omf	(original)
+++ trunk/help/gcalctool-zh_HK.omf	Mon Aug  4 07:52:51 2008
@@ -18,7 +18,7 @@
       user's guide
     </type>
     <format mime="text/xml" dtd="-//OASIS//DTD DocBook XML V4.1.2//EN"/>
-    <identifier url="file:///home/bob/svn/gcalctool-head/trunk/build/share/gnome/help/gcalctool/zh_HK/gcalctool.xml"/>
+    <identifier url="file:///home/bob/svn/gcalctool/build/share/gnome/help/gcalctool/zh_HK/gcalctool.xml"/>
     <language code="zh_HK"/>
     <relation seriesid="52191642-4f23-11d7-95c8-9792b4e62685"/>
     <rights type="GNU FDL" license.version="1.1" holder="Sun Microsystems"/>

Modified: trunk/help/gcalctool-zh_TW.omf
==============================================================================
--- trunk/help/gcalctool-zh_TW.omf	(original)
+++ trunk/help/gcalctool-zh_TW.omf	Mon Aug  4 07:52:51 2008
@@ -18,7 +18,7 @@
       user's guide
     </type>
     <format mime="text/xml" dtd="-//OASIS//DTD DocBook XML V4.1.2//EN"/>
-    <identifier url="file:///home/bob/svn/gcalctool-head/trunk/build/share/gnome/help/gcalctool/zh_TW/gcalctool.xml"/>
+    <identifier url="file:///home/bob/svn/gcalctool/build/share/gnome/help/gcalctool/zh_TW/gcalctool.xml"/>
     <language code="zh_TW"/>
     <relation seriesid="52191642-4f23-11d7-95c8-9792b4e62685"/>
     <rights type="GNU FDL" license.version="1.1" holder="Sun Microsystems"/>

Modified: trunk/help/zh_CN/gcalctool.xml
==============================================================================
--- trunk/help/zh_CN/gcalctool.xml	(original)
+++ trunk/help/zh_CN/gcalctool.xml	Mon Aug  4 07:52:51 2008
@@ -48,19 +48,78 @@
     </publisher> 
 
      <legalnotice id="legalnotice">
-	<para>åäæææçååãååå/æäæåééåèçèäåéä (Free Software Foundation) ååç GNU èçææèåè (GFDL) çæ 1.1 ææéçæï èèåèææååçéåãææåéåèéææãæåäåæ<ulink type="help" url="ghelp:fdl">éæ</ulink>äæåéææåäèååç COPYING-DOCS æääæå GFDL çåæã</para>
-         <para>ææåæå GFDL èåääååç GNOME æåéåçäéåãåææè åçååææåïåäåæåäæåèèåèçääåæçåååïåèèåèç ç 6 éåæèã</para>
+	<para>
+	  Permission is granted to copy, distribute and/or modify this
+	  document under the terms of the GNU Free Documentation
+	  License (GFDL), Version 1.1 or any later version published
+	  by the Free Software Foundation with no Invariant Sections,
+	  no Front-Cover Texts, and no Back-Cover Texts.  You can find
+	  a copy of the GFDL at this <ulink type="help" url="ghelp:fdl">link</ulink> or in the file COPYING-DOCS
+	  distributed with this manual.
+         </para>
+         <para> This manual is part of a collection of GNOME manuals
+          distributed under the GFDL.  If you want to distribute this
+          manual separately from the collection, you can do so by
+          adding a copy of the license to the manual, as described in
+          section 6 of the license.
+	</para>
+
+	<para>
+	  Many of the names used by companies to distinguish their
+	  products and services are claimed as trademarks. Where those
+	  names appear in any GNOME documentation, and the members of
+	  the GNOME Documentation Project are made aware of those
+	  trademarks, then the names are in capital letters or initial
+	  capital letters.
+	</para>
+
+	<para>
+	  DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED
+	  UNDER  THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE
+	  WITH THE FURTHER UNDERSTANDING THAT:
 
-	<para>åäååäççèåçäåååääååæåçåçéåæäåæãåææç GNOME ææäå GNOME Documentation Project çæåäïèäåçé æäååååææéåæååæçïäèèæåäæåæã</para>
-
-	<para>æææäåææçäæçæéæåéå GNU èçææèåèçææäæäïèè çåæääåäï <orderedlist>
+	  <orderedlist>
 		<listitem>
-		  <para>æææâåæâæäïäæäääæçææççäèïåæää éäïæææææçäæçæææééææéççéãéåçåçççéç æïäåææäæèäãæåèèæææææäåææäæçæçèéãå çæäåæèæéçééãåæääæææææäæçæååçéïæïè äææåççåèãäèææåäïåææææåéçæåãçäæææç èçãæåèåæææèåèçéèçæéåãåæäæåæåèåæï éäæåæææåäçääæææææçäæçæïåä</para>
+		  <para>DOCUMENT IS PROVIDED ON AN "AS IS" BASIS,
+                    WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR
+                    IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES
+                    THAT THE DOCUMENT OR MODIFIED VERSION OF THE
+                    DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR
+                    A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE
+                    RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE
+                    OF THE DOCUMENT OR MODIFIED VERSION OF THE
+                    DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR
+                    MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT,
+                    YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY
+                    CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY
+                    SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
+                    OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS
+                    LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED
+                    VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER
+                    EXCEPT UNDER THIS DISCLAIMER; AND
+		  </para>
 		</listitem>
 		<listitem>
-		  <para>æèåääæåäååääæåçèäïææææææäæçæçä èãæåççåèãääæåäæääååèïæèäæèäæçääæä èéäåäääçääçææææææäæçæåèæåæçääçæçãéæçã çæçãåççæçåçæåææääæäïåæçåïãååæååæéç èäïèäæååæääéääèæåãåäåæãèçæåèææéïæä ääåææååæåæçæååçæääçåçæåïåäèäæåèåçå ååçæçæåçåèææäæåæã</para>
+		  <para>UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL
+                       THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE),
+                       CONTRACT, OR OTHERWISE, SHALL THE AUTHOR,
+                       INITIAL WRITER, ANY CONTRIBUTOR, OR ANY
+                       DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION
+                       OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH
+                       PARTIES, BE LIABLE TO ANY PERSON FOR ANY
+                       DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR
+                       CONSEQUENTIAL DAMAGES OF ANY CHARACTER
+                       INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS
+                       OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR
+                       MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR
+                       LOSSES ARISING OUT OF OR RELATING TO USE OF THE
+                       DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT,
+                       EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF
+                       THE POSSIBILITY OF SUCH DAMAGES.
+		  </para>
 		</listitem>
-	  </orderedlist></para>
+	  </orderedlist>
+	</para>
   </legalnotice>
 
 
@@ -125,7 +184,7 @@
 		</revdescription> 
       </revision> 
       <revision> 
-		<revnumber>gcalctool æå V2.5.1</revnumber> 
+		<revnumber>gcalctool Manual V2.5</revnumber> 
 		<date>July 2003</date> 
 		<revdescription> 
 	  		<para role="author">Sun GNOME Documentation Team
@@ -134,8 +193,8 @@
 		</revdescription> 
       </revision> 
       <revision> 
-		<revnumber>gcalctool æå V2.4</revnumber> 
-		<date>2003 å 6 æ</date> 
+		<revnumber>gcalctool Manual V2.4</revnumber> 
+		<date>June 2003</date> 
 		<revdescription> 
 	  		<para role="author">Sun GNOME Documentation Team
 	  		</para>
@@ -143,8 +202,8 @@
 		</revdescription> 
       </revision> 
       <revision> 
-		<revnumber>gcalctool æå V2.3</revnumber> 
-		<date>2003 å 4 æ</date> 
+		<revnumber>gcalctool Manual V2.3</revnumber> 
+		<date>April 2003</date> 
 		<revdescription> 
 	  		<para role="author">Sun GNOME Documentation Team
 	  		</para>
@@ -152,8 +211,8 @@
 		</revdescription> 
       </revision> 
       <revision> 
-		<revnumber>gcalctool æå V2.2</revnumber> 
-		<date>2003 å 4 æ</date> 
+		<revnumber>gcalctool Manual V2.2</revnumber> 
+		<date>April 2003</date> 
 		<revdescription> 
 	  		<para role="author">Sun GNOME Documentation Team
 	  		</para>
@@ -161,8 +220,8 @@
 		</revdescription> 
       </revision> 
       <revision> 
-		<revnumber>gcalctool æå V2.1</revnumber> 
-		<date>2003 å 3 æ</date> 
+		<revnumber>gcalctool Manual V2.1</revnumber> 
+		<date>March 2003</date> 
 		<revdescription> 
 	  		<para role="author">Sun GNOME Documentation Team
 	  		</para>
@@ -170,8 +229,8 @@
 		</revdescription> 
       </revision> 
       <revision> 
-		<revnumber>gcalctool æå V2.0</revnumber> 
-		<date>2003 å 3 æ</date> 
+		<revnumber>gcalctool Manual V2.0</revnumber> 
+		<date>March 2003</date> 
 		<revdescription> 
 	  		<para role="author">Sun GNOME Documentation Team
 	  		</para>
@@ -183,14 +242,15 @@
     <releaseinfo>This manual describes version 5.5.37 of Calculator.
     </releaseinfo> 
     <legalnotice> 
-      <title>åé</title> 
-      <para>èæååä <application>Calculator</application> åççåæææåçéèææååèïèéå <ulink url="ghelp:gnome-feedback" type="help">GNOME åéé</ulink>äçæåã</para>
+      <title>Feedback</title> 
+      <para>To report a bug or make a suggestion regarding the <application>gcalctool</application> application or this manual, follow the directions in the <ulink url="ghelp:gnome-feedback" type="help">GNOME Feedback Page</ulink>. 
+      </para>
 <!-- Translators may also add here feedback address for translations -->
     </legalnotice> 
   </articleinfo> 
 
   <indexterm zone="index"> 
-    <primary>èå</primary> 
+    <primary>gcalctool</primary> 
   </indexterm> 
   <indexterm zone="index"> 
     <primary>Calculator</primary> 
@@ -199,11 +259,11 @@
 <!-- ============= Document Body ============================= -->
 <!-- ============= Introduction ============================== -->
   <sect1 id="gcalctool-intro"> 
-    <title>çä</title> 
+    <title>Introduction</title> 
     <para>The <application>gcalctool</application> application provides the following modes for different types of mathematical functionality: </para>
      <variablelist>
         <varlistentry>
-        <term><link linkend="gcalctool-basic-mode">B</link></term>
+        <term><link linkend="gcalctool-basic-mode">Basic </link></term>
         <listitem><para>The default mode. Provides standard calculator functions. You can perform standard addition, subtraction, division, and multiplication functions in Basic mode and you can use all of the Basic functions in each of the other modes.</para></listitem>
         </varlistentry>
   <varlistentry>
@@ -211,16 +271,16 @@
         <listitem><para>Provides advanced calculator functions. You can store numbers in 10 different memory registers, and easily retrieve and replace the numbers in the memory registers. You can use all of the Advanced functions in Financial and Scientific modes.</para></listitem>
         </varlistentry>
         <varlistentry>
-        <term><link linkend="gcalctool-financial-mode">F</link></term>
-        <listitem><para>æäèååæçèååèã</para></listitem>
+        <term><link linkend="gcalctool-financial-mode">Financial </link></term>
+        <listitem><para>Provides several complex financial functions.</para></listitem>
         </varlistentry>
         <varlistentry>
-        <term><link linkend="gcalctool-scientific-mode">S</link></term>
+        <term><link linkend="gcalctool-scientific-mode">Scientific </link></term>
         <listitem><para>Provides many additional mathematical functions, including trigonometric and bitwise functions. You can also store your own functions and constants, when you use Scientific mode.</para></listitem>
         </varlistentry>
      </variablelist>
 
-    <para>æåäåäåèäççääç <application>Calculator</application>ï</para>
+    <para>You can use <application>gcalctool</application> in the following numbering systems:</para>
       <informaltable frame="all">
         <tgroup cols="2" colsep="1" rowsep="1">
           <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -228,27 +288,27 @@
           <thead>
             <row valign="top">
               <entry colname="COLSPEC0">
-                <para>èäçç</para></entry>
+                <para>Numbering System</para></entry>
               <entry colname="COLSPEC1" align="right">
-                <para>èå</para></entry>
+                <para>Base</para></entry>
             </row>
           </thead> 
           <tbody> 
             <row valign="top">
-              <entry><para>äèå</para></entry>
+              <entry><para>Binary</para></entry>
               <entry align="right"><para>2</para></entry>
             </row>
             <row valign="top">
-              <entry><para>åèå</para></entry>
+              <entry><para>Octal</para></entry>
               <entry align="right"><para>8</para></entry>
             </row>
             <row valign="top">
-              <entry><para>åèå</para></entry>
+              <entry><para>Decimal</para></entry>
               <entry align="right"><para>10</para></entry>
             </row>
             <row valign="top">
-              <entry><para>ååèå</para></entry>
-              <entry align="right"><para>y<superscript>x</superscript></para></entry>
+              <entry><para>Hexadecimal</para></entry>
+              <entry align="right"><para>16</para></entry>
             </row>
           </tbody> 
         </tgroup>
@@ -259,7 +319,7 @@
 <!-- =========== Getting Started ============================== -->
 
   <sect1 id="gcalctool-get-start"> 
-    <title>åé</title> 
+    <title>Getting Started</title> 
     <para>You can start <application>gcalctool</application> in the following ways:</para>
     <variablelist>
       <varlistentry>
@@ -282,38 +342,38 @@
 
     <!-- ==== Figure ==== -->
       <figure id="gcalctool-FIG-basic"> 
-	<title>åäè</title> 
+	<title><application>gcalctool</application> Basic Mode Window</title> 
 	<screenshot> 
 	  <mediaobject> 
 	    <imageobject><imagedata fileref="figures/gcalctool_basic_window.png" format="PNG"/> 
 	    </imageobject>
 	    <textobject> 
-	      <phrase>Shows <application>èå</application> Basic mode window.  </phrase> 
+	      <phrase>Shows <application>gcalctool</application> Basic mode window.  </phrase> 
 	    </textobject> 
 	  </mediaobject> 
 	</screenshot> 
       </figure>
     <!-- ==== End of Figure ==== -->
-                <para>ååå <application><application>Calculator</application></application> æïççäæçäéççåï</para>
+                <para>The <application><application>gcalctool</application></application> window contains the following elements: </para>
                 <variablelist>
-                  <varlistentry> <term><application>Calculator</application>&ldquo;åææå&rdquo;çå</term>
+                  <varlistentry> <term>Menubar</term>
                          <listitem>
-                                <para>æç <application>Calculator</application>&ldquo;åææå&rdquo;çåã</para>
+                                <para>The menus on the menubar contain all of the commands that you need to work with <application><application>gcalctool</application></application>.</para>
                          </listitem>
                   </varlistentry>
-                  <varlistentry> <term><application><application>Calculator</application></application> çåååääåçï</term>
+                  <varlistentry> <term>Display area</term>
                          <listitem>
                                 <para>The display area shows the numbers that you enter, and the results of calculations. If you are not using arithmetic precedence, you can only enter numbers of up to forty digits.  </para>
                          </listitem>
                   </varlistentry>
-                  <varlistentry> <term>èåæäçèåååäç <application><application>Calculator</application></application> ææéçåéåäã</term>
+                  <varlistentry> <term>Mode area</term>
                          <listitem>
                                 <para>The mode area displays the buttons for the current mode. The Basic mode buttons are always displayed. Advanced mode buttons are also available in Financial and Scientific modes.  </para>
                          </listitem>
                   </varlistentry>
-                  <varlistentry> <term>æçååæçæèåçæåäåèççæãææååäèå 40 äæåã</term>
+                  <varlistentry> <term>Popup Menu</term>
                          <listitem>
-                <para>æåååæççæååæéæåçæéã&ldquo;åææå&rdquo;æéæåçæççãéæ&ldquo;èåæå&rdquo;æï&ldquo;èåæå&rdquo;æéæçå&ldquo;åææå&rdquo;æéçäæãéæ&ldquo;çåæå&rdquo;æï&ldquo;çåæå&rdquo;æéæçå&ldquo;åææå&rdquo;æéçäæã</para>
+                <para>The <inlinemediaobject><imageobject><imagedata fileref="figures/gcalctool_menu_symbol.png" format="PNG"/></imageobject><textobject><phrase>Shows popup-menu symbol.</phrase></textobject></inlinemediaobject> symbol on a <application>gcalctool</application> button indicates that a popup menu is displayed when you click on that button.</para>
                          </listitem>
                   </varlistentry>
 <varlistentry>
@@ -326,21 +386,21 @@
   </sect1>
 <!-- ================ Usage ================================ -->
   <sect1 id="gcalctool-usage"> 
-    <title>ååèå</title> 
+    <title>Usage</title> 
 
     <!-- ================ Usage Subsection ================================ -->
     <sect2 id="gcalctool-calc-functions">
-                <title>æçååèåçåã</title> 
-                <para><placeholder-1/> çåïää <application>Calculator</application> æéäïæçååæéææçääååèåã</para>
+                <title>To Use Calculator Functions</title> 
+                <para>To perform a calculation, use one of the following methods:</para>
                 <itemizedlist>
                   <listitem>
-                         <para>çæ</para>
+                         <para>Click on the <application>gcalctool</application> buttons to enter numbers and functions.</para>
                   </listitem>
                   <listitem>
-                         <para>äçèçååè</para>
+                         <para>Give focus to the <application>gcalctool</application> window, then use the keyboard or numeric keypad to specify the calculation that you want to perform. For a complete list of keyboard shortcuts, see <xref linkend="gcalctool-keyboard-shortcut"/>.</para>
                   </listitem>
                 </itemizedlist>
-                <para>èæèäéèçïèäçääææääï</para>
+                <para>The <application>gcalctool</application> application automatically displays numbers with more than 40 digits, and small numbers, as exponential numbers. For example, the following table shows the value that is displayed when you use the decimal numeric base with an accuracy of 2 significant places: </para>
       <informaltable frame="all">
         <tgroup cols="2" colsep="1" rowsep="1">
           <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -348,25 +408,25 @@
           <thead>
             <row valign="top">
               <entry colname="COLSPEC0">
-                <para>åå <application>Calculator</application> æéïèåæåååæã</para></entry>
+                <para>Display</para></entry>
               <entry colname="COLSPEC1">
-                <para>åççèå <application>Calculator</application> çåïçåäçéçææåéçæåèæèçèçãæåéçåæéçåæåèïèåè <xref linkend="gcalctool-keyboard-shortcut"/>ã</para></entry>
+                <para>Signifies</para></entry>
             </row>
           </thead>
           <tbody>
             <row valign="top">
-              <entry><para><application>Calculator</application> åççåèåäææçååæçèè 40 äçæåååæãäåïäèæçäåäçåèååççååæçåääææççåï</para></entry>
-              <entry><para>æç</para></entry>
+              <entry><para>1.23e+37</para></entry>
+              <entry><para>1.23 * 10<superscript>37</superscript></para></entry>
             </row>
             <row valign="top">
-              <entry><para>èç</para></entry>
-              <entry><para>1.23e+37</para></entry>
+              <entry><para>1e-5</para></entry>
+              <entry><para>0.00001</para></entry>
             </row>
           </tbody>
         </tgroup>
       </informaltable>
 
-      <para>1.23 * 10<superscript>37</superscript></para>
+      <para>For information about how to enter a number in exponential format, see <xref linkend="gcalctool-enter-exp"/>.</para>
 
     <sect3 id="gcalctool-calc-functions-separator">
                 <title>To Display a Separator in Large Numbers</title> 
@@ -381,23 +441,23 @@
 
     <sect3 id="gcalctool-calc-functions-copy">
                 <title>To Copy and Paste in the Display Area</title> 
-                <para>1e-5</para>
+                <para>To copy the result of a calculation, choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Copy</guimenuitem></menuchoice>. You can paste the value into another application.</para>
 
-                <para>0.00001</para>
+                <para>To paste a previously copied value into the display area, choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Paste</guimenuitem></menuchoice>.  </para>
     </sect3>
 
     </sect2> 
     <!-- ================ Usage Subsection ================================ -->
    
     <sect2 id="gcalctool-basic-mode"> 
-      <title>æååääæææåèåæåçäæïèåè <xref linkend="gcalctool-enter-exp"/>ã</title> 
+      <title>To Perform Basic Calculations</title> 
       <para>Basic mode is displayed by default when you first start <application>gcalctool</application>. To explicitly invoke Basic mode, choose <menuchoice><guimenu>View</guimenu><guimenuitem>Basic</guimenuitem></menuchoice>.  </para>
       <para>The calculator memory registers are unavailable in Basic Mode. In other words, <menuchoice><guimenu>View</guimenu><guimenuitem>Memory Registers</guimenuitem></menuchoice> is inactive.</para>
     <sect3 id="gcalctool-simple-calc"> 
-      <title>èåäåååèçåçèåæçååïèéæ <menuchoice><guimenu>&ldquo;çè&rdquo;</guimenu><guimenuitem>&ldquo;çè&rdquo;</guimenuitem></menuchoice>ã</title> 
-      <para>æèåæèç</para>
+      <title>To Perform Simple Calculations</title> 
+      <para>To perform simple calculations, use the buttons described in <xref linkend="gcalctool-TBL-simple-calc"/>. </para>
                 <table id="gcalctool-TBL-simple-calc" frame="all">
-                  <title>éæåå <application>Calculator</application> æïéèæççæ&ldquo;åææå&rdquo;ãèæçèç&ldquo;åææå&rdquo;ïèéæ <menuchoice><guimenu>&ldquo;èå&rdquo;</guimenu><guimenuitem>&ldquo;åææå&rdquo;</guimenuitem></menuchoice>ã</title> 
+                  <title>Performing Simple Calculations</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -413,7 +473,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -422,58 +482,58 @@
                            <row valign="top">
                              <entry><para>Numerals</para> </entry>
                              <entry><para><guibutton>0</guibutton> to <guibutton>9</guibutton> inclusive</para></entry>
-                             <entry><para>çæ</para></entry>
+                             <entry><para>In decimal and hexadecimal base, all numerals are available. In octal base, <guibutton>8</guibutton> and <guibutton>9</guibutton> are unavailable. In binary base, only <guibutton>0</guibutton> and <guibutton>1</guibutton> are available. The default base is decimal.</para></entry>
                              <entry><para><guibutton>1</guibutton></para></entry>
                              <entry><para>1</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Numeric point</para> </entry>
                              <entry><para><guibutton>.</guibutton></para></entry>
-                             <entry><para>1</para></entry>
+                             <entry><para>Starts the fractional part of a numeric entry.</para></entry>
                              <entry><para><guibutton>1</guibutton> <guibutton>.</guibutton> <guibutton>2</guibutton></para></entry>
                              <entry><para>1.2</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Calculate a result</para> </entry>
                              <entry><para><guibutton>=</guibutton></para></entry>
-                             <entry><para>1.2</para></entry>
+                             <entry><para>Displays the result of the current calculation in the current base.</para></entry>
                              <entry><para>1 <guibutton>+</guibutton> <guibutton>2</guibutton> <guibutton>=</guibutton></para></entry>
                              <entry><para>3</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Addition</para> </entry>
                              <entry><para><guibutton>+</guibutton></para></entry>
-                             <entry><para>3</para></entry>
+                             <entry><para>Adds the current value in the display area to the next number that you enter.</para></entry>
                              <entry><para>1 <guibutton>+</guibutton> <guibutton>2</guibutton> <guibutton>=</guibutton></para></entry>
                              <entry><para>3</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Subtraction</para> </entry>
                              <entry><para><guibutton>-</guibutton></para></entry>
-                             <entry><para>3</para></entry>
-                             <entry><para>å</para></entry>
+                             <entry><para>Subtracts from the current value in the display area the next number that you enter.</para></entry>
+                             <entry><para>3 <guibutton>-</guibutton> <guibutton>2</guibutton> <guibutton>=</guibutton></para></entry>
                              <entry><para>1</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Multiplication</para> </entry>
                              <entry><para><guibutton>*</guibutton></para></entry>
-                             <entry><para>1</para></entry>
-                             <entry><para>ä</para></entry>
+                             <entry><para>Multiplies the current value in the display area by the next number that you enter.</para></entry>
+                             <entry><para>3 <guibutton>*</guibutton> <guibutton>2</guibutton> <guibutton>=</guibutton></para></entry>
                              <entry><para>6</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Division</para> </entry>
                              <entry><para><guibutton>/</guibutton></para></entry>
-                             <entry><para>6</para></entry>
-                             <entry><para>é</para></entry>
+                             <entry><para>Divides the current value in the display area by the next number that you enter.</para></entry>
+                             <entry><para>6 <guibutton>/</guibutton> <guibutton>3</guibutton> <guibutton>=</guibutton></para></entry>
                              <entry><para>2</para></entry>
                            </row>
 			<row valign="top">
                              <entry><para>Change the arithmetic sign</para> </entry>
                              <entry><para><guibutton>+/-</guibutton></para></entry>
-                             <entry><para>0.25</para></entry>
-                             <entry><para>ææçæçå</para></entry>
-                             <entry><para>+/-</para></entry>
+                             <entry><para>Changes a positive number to a negative number, or a negative number to a positive number.</para></entry>
+                             <entry><para>8 <guibutton>+/-</guibutton></para></entry>
+                             <entry><para>-8</para></entry>
                            </row>
 			 </tbody>
 
@@ -481,10 +541,10 @@
 		</table>
     </sect3>
     <sect3 id="gcalctool-erase-char"> 
-      <title>çæçååäçåååéäæèåçäääæåã</title> 
-      <para>6 <guibutton>/</guibutton><guibutton>3</guibutton><guibutton>=</guibutton></para>
+      <title>To Erase Characters</title> 
+      <para>To erase characters, use the buttons described in <xref linkend="gcalctool-TBL-erase-char"/>. </para>
                 <table id="gcalctool-TBL-erase-char" frame="all">
-                  <title>2</title> 
+                  <title>Erasing Characters</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -500,7 +560,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -509,31 +569,31 @@
                            <row valign="top">
                              <entry><para>Backspace</para> </entry>
                              <entry><para><guibutton>Bksp</guibutton></para></entry>
-                             <entry><para>çæ</para></entry>
+                             <entry><para>Removes the rightmost character from the display area.</para></entry>
                              <entry><para>1 <guibutton>+</guibutton> <guibutton>2</guibutton><guibutton>2</guibutton> <guibutton>Bksp</guibutton> <guibutton>=</guibutton></para></entry>
                              <entry><para>3</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Clear Entry</para> </entry>
                              <entry><para><guibutton>CE</guibutton></para></entry>
-                             <entry><para>3</para>
+                             <entry><para>Removes the current value from the display area.</para>
                                     <para>This is only really meaningful if the Calculator is not in Arithmetic Precedence mode.</para>
                                     <para>In Arithmetic Precedence mode, this operation is the same as <guibutton>Clr</guibutton></para></entry>
                              <entry><para>If the calculator is not in Arithmetic Precedence mode:</para>
-                                    <para>æéé</para>
+                                    <para>1 <guibutton>+</guibutton> <guibutton>2</guibutton><guibutton>2</guibutton> <guibutton>CE</guibutton> <guibutton>=</guibutton></para>
                                     <para>If the calculator is in Arithmetic Precedence mode:</para>
-                                    <para>æéé</para></entry>
+                                    <para>1 <guibutton>+</guibutton> <guibutton>2</guibutton><guibutton>2</guibutton> <guibutton>CE</guibutton> <guibutton>=</guibutton></para></entry>
                              <entry><para>If the calculator is not in Arithmetic Precedence mode:</para>
                                     <para>1</para>
                                     <para>If the calculator is in Arithmetic Precedence mode:</para>
-                                    <para>Clr</para></entry>
+                                    <para>0</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Clear</para> </entry>
                              <entry><para><guibutton>Clr</guibutton></para></entry>
                              <entry><para>Resets the current value in the display area to zero and removes any previous calculation results. <guibutton>Clr</guibutton> also deselects the <guilabel>Hyp</guilabel> and <guilabel>Inv</guilabel> options in Scientific.</para></entry>
                              <entry><para>1 <guibutton>+</guibutton> <guibutton>2</guibutton><guibutton>2</guibutton> <guibutton>Clr</guibutton></para></entry>
-                             <entry><para>Clr</para></entry>
+                             <entry><para>0</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
@@ -547,9 +607,13 @@
   
 
           <sect3 id="gcalctool-ins-ascii"> 
-            <title>X</title> 
-                        <para>2</para>
-                        <para>åæçååçååååäååååå<guilabel>&ldquo;R2&rdquo;</guilabel>çååèèäæã</para>
+            <title>To Display ASCII Values</title> 
+                        <para>To display the ASCII value of a character, choose
+                          <menuchoice>
+                                 <guimenu>Edit</guimenu>
+                                 <guimenuitem>Insert ASCII Value</guimenuitem>
+                          </menuchoice>.</para>
+                        <para>The Insert ASCII Value dialog is displayed.</para>
                         <para>Enter the required character in the <guilabel>Character</guilabel> field, then click <guibutton>Insert</guibutton>. The ASCII value of that character, in the current numeric base, appears in the display area. For example, the ASCII value of B in decimal base is 66.</para>
           </sect3>
 	</sect2>
@@ -571,7 +635,7 @@
 	    <imageobject><imagedata fileref="figures/gcalctool_advanced_window.png" format="PNG"/> 
 	    </imageobject>
 	    <textobject> 
-	      <phrase>Shows <application>èå</application> Advanced mode buttons.  </phrase> 
+	      <phrase>Shows <application>gcalctool</application> Advanced mode buttons.  </phrase> 
 	    </textobject> 
 	  </mediaobject> 
 	</screenshot> 
@@ -594,7 +658,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -609,60 +673,60 @@
                            </row>
                            <row valign="top">
                              <entry><para>Reciprocal</para> </entry>
-                             <entry><para><guibutton>1/<replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable></guibutton></para></entry>
-                             <entry><para>4</para></entry>
+                             <entry><para><guibutton>1/<replaceable>x</replaceable></guibutton></para></entry>
+                             <entry><para>Divides 1 by the current value in the display area.</para></entry>
                              <entry><para>4 <guibutton>1/<replaceable>x</replaceable></guibutton></para></entry>
-                             <entry><para>1/x</para></entry>
+                             <entry><para>0.25</para></entry>
                            </row>
                     
                            <row valign="top">
                              <entry><para>Square Root</para> </entry>
                              <entry><para><guibutton>Sqrt</guibutton></para></entry>
-                             <entry><para>-8</para></entry>
+                             <entry><para>Calculates the square root of the current value in the display area.</para></entry>
                              <entry><para>For arithmetic precedence mode:</para>
                              <para><guibutton>Sqrt</guibutton> 9 <guibutton>)</guibutton><guibutton>=</guibutton></para>
                              <para>For non-arithmetic precedence mode:</para>
-                             <para>åææ</para></entry>
+                             <para>9 <guibutton>Sqrt</guibutton></para></entry>
                              <entry><para>3</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Square</para> </entry>
-                             <entry><para><replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable><superscript>2</superscript></para></entry>
-                             <entry><para>3</para></entry>
+                             <entry><para><replaceable>x</replaceable><superscript>2</superscript></para></entry>
+                             <entry><para>Calculates the square of the current value in the display area.</para></entry>
                              <entry><para>3 <replaceable>x</replaceable><superscript>2</superscript></para></entry>
-                             <entry><para>x<superscript>2</superscript></para></entry>
+                             <entry><para>9</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Integer Portion</para> </entry>
                              <entry><para><guibutton>Int</guibutton></para></entry>
-                             <entry><para>9</para></entry>
-                             <entry><para>ææéå</para></entry>
-                             <entry><para>Int</para></entry>
+                             <entry><para>Calculates the integer portion of the current value in the display area.</para></entry>
+                             <entry><para>-23.45 <guibutton>Int</guibutton></para></entry>
+                             <entry><para>-23</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Fractional Portion</para> </entry>
                              <entry><para><guibutton>Frac</guibutton></para></entry>
-                             <entry><para>-23</para></entry>
-                             <entry><para>åæéå</para></entry>
-                             <entry><para>Frac</para></entry>
+                             <entry><para>Calculates the fractional portion of the current value in the display area.</para></entry>
+                             <entry><para>-23.45 <guibutton>Frac</guibutton></para></entry>
+                             <entry><para>-0.45</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Absolute Value</para> </entry>
                              <entry><para><guibutton>Abs</guibutton></para></entry>
-                             <entry><para>-0.45</para></entry>
-                             <entry><para>çåå</para></entry>
-                             <entry><para>Abs</para></entry>
+                             <entry><para>Calculates the absolute value of the current value in the display area.</para></entry>
+                             <entry><para>-23.45 <guibutton>Abs</guibutton></para></entry>
+                             <entry><para>23.45</para></entry>
 			 </row>
 			   <row valign="top">
  			<entry><para>Parentheses</para> </entry>
                              <entry><para><guibutton>(</guibutton> and <guibutton>)</guibutton></para></entry>
                              <entry><para>Provide precedence in arithmetic calculations if you are not using Arithmetic Precedence. See also <xref linkend="gcalctool-manage-order"/>. Calculations within parentheses are performed first. You can nest parentheses to any level. When the last parenthesis is matched, the display area is updated.</para></entry>
                            <entry>
-                               <para>åæå</para>
-                               <para><guibutton>&ldquo;(&rdquo;</guibutton>å<guibutton>&ldquo;)&rdquo;</guibutton></para>
+                               <para>2 <guibutton>+</guibutton> <guibutton>3</guibutton> <guibutton>*</guibutton> <guibutton>4</guibutton> <guibutton>=</guibutton></para>
+                               <para>2 <guibutton>+</guibutton> <guibutton>(</guibutton> <guibutton>3</guibutton> <guibutton>*</guibutton> <guibutton>4</guibutton> <guibutton>)</guibutton></para>
                              </entry>
                              <entry> <para>20</para>
-                               <para>2 <guibutton>+</guibutton><guibutton>3</guibutton><guibutton>*</guibutton><guibutton>4</guibutton><guibutton>=</guibutton></para>
+                               <para>14</para>
                              </entry>
 		       	
                            </row>
@@ -671,14 +735,19 @@
 		</table>
 
 <sect3 id="gcalctool-mem-reg"> 
-      <title>èçæçååäçåååççååã</title> 
-      <para>-23.45 <guibutton>Abs</guibutton></para>
+      <title>To Use the Calculator Memory Registers</title> 
+      <para>You can store values in any of the ten <application>gcalctool</application> memory registers <guilabel>R0</guilabel> to <guilabel>R9</guilabel>. To display the memory registers, choose 
+	<menuchoice> 
+	  <guimenu>View</guimenu> 
+	  <guimenuitem>Memory Registers</guimenuitem> 
+	</menuchoice>. 
+      </para>
       <para>The memory registers can be dismissed by either choosing 
             <menuchoice><guimenu>View</guimenu><guimenuitem>Memory Registers</guimenuitem></menuchoice> 
             again, or by clicking on the <guibutton>Close</guibutton> button in the memory register window.</para>
-        <para>23.45</para>
+        <para><xref linkend="gcalctool-TBL-mem-reg"/> describes the memory functions that you can use.</para>
                 <table id="gcalctool-TBL-mem-reg" frame="all">
-                  <title>äçèçåååååå</title> 
+                  <title>Memory Functions</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -694,7 +763,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -704,34 +773,34 @@
                              <entry><para>Store Value in Memory Register</para> </entry>
                              <entry><para><guibutton>Sto</guibutton></para></entry>
                              <entry><para>Stores the current contents of the display area in the specified memory register. Click <guibutton>Sto</guibutton>, then select a memory register from the popup menu.</para>
-                                   <para>ååååäåååååä</para>
+                                   <para>To clear a memory register during a <application>gcalctool</application> session:</para>
                                      <orderedlist>
-                                       <listitem><para>Sto</para></listitem>
+                                       <listitem><para>Click <guibutton>Clr</guibutton>.</para></listitem>
                                        <listitem><para>Click <guibutton>Sto</guibutton>.</para></listitem>
-                                       <listitem><para>å <application>Calculator</application> äèèèæéæéåååååï</para></listitem>
+                                       <listitem><para>Select the memory register from the popup menu.</para></listitem>
                                      </orderedlist>
 </entry>
-                             <entry><para>åå<guibutton>&ldquo;Clr&rdquo;</guibutton>ã</para></entry>
+                             <entry><para>22 <guibutton>Sto</guibutton> <guilabel>R2</guilabel></para></entry>
                              <entry><para>The value 22 is stored in memory register <guilabel>R2</guilabel>.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Retrieve Value From Memory Register</para> </entry>
                              <entry><para><guibutton>Rcl</guibutton></para></entry>
                              <entry><para>Retrieves the contents of the specified memory register. Click <guibutton>Rcl</guibutton>, then select the memory register from the popup menu.</para></entry>
-                             <entry><para>äåååååäæçå</para></entry>
+                             <entry><para>0 <guibutton>Rcl</guibutton> <guilabel>R2</guilabel></para></entry>
                              <entry><para>The value in the display area is 22.</para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para>Exchange Memory Register Value and Displayed Value</para> </entry>
                              <entry><para><guibutton>Exch</guibutton></para></entry>
                              <entry><para>Exchanges the contents of the specified memory register and the current value in the display area. Click <guibutton>Exch</guibutton>, then select the memory register from the popup menu.</para></entry>
-                             <entry><para>äæååååååäæçå</para></entry>
+                             <entry><para>44 <guibutton>Exch</guibutton> <guilabel>R2</guilabel></para></entry>
                              <entry><para>The value in the display area changes from 44 to 22, the value in R2 changes from 22 to 44.</para> </entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</table>
-      <para>44 <guibutton>Exch</guibutton><guilabel>R2</guilabel></para>
+      <para>If you use keyboard shortcuts, you can use the keyboard to specify the memory register, as shown in the following examples: </para>
       <informaltable frame="all">
         <tgroup cols="2" colsep="1" rowsep="1">
           <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -747,15 +816,15 @@
           <tbody> 
             <row valign="top">
               <entry><para><keycap>S</keycap> <keycap>2</keycap></para></entry>
-              <entry><para>èæ</para></entry>
+              <entry><para>Stores the current contents of the display area in memory register <guilabel>R2</guilabel>.</para></entry>
             </row>
             <row valign="top">
               <entry><para><keycap>R</keycap> <keycap>2</keycap></para></entry>
-              <entry><para>åæçååçååååååäååååå<guilabel>&ldquo;R2&rdquo;</guilabel>äã</para></entry>
+              <entry><para>Retrieves the current contents of memory register <guilabel>R2</guilabel> into the display area.</para></entry>
             </row>
             <row valign="top">
               <entry><para><keycap>X</keycap> <keycap>2</keycap></para></entry>
-              <entry><para>åååååå<guilabel>&ldquo;R2&rdquo;</guilabel>äçååååæçåæçååäã</para></entry>
+              <entry><para>Exchanges the current value of the display area with the contents of memory register <guilabel>R2</guilabel>.</para></entry>
             </row>
           </tbody> 
         </tgroup>
@@ -766,7 +835,7 @@
     </sect2> 
     <!-- ================ Usage Subsection ================================ -->
 	 <sect2 id="gcalctool-financial-mode"> 
-      <title>èæçåçç ASCII åïèéæ <menuchoice><guimenu>&ldquo;çè&rdquo;</guimenu><guimenuitem>&ldquo;æå ASCII å&rdquo;</guimenuitem></menuchoice>ã</title> 
+      <title>To Perform Financial Calculations</title> 
       <para>To change to Financial mode, choose 
 	<menuchoice> 
 	  <guimenu>View</guimenu> 
@@ -777,21 +846,22 @@
 
     <!-- ==== Figure ==== -->
       <figure id="gcalctool-FIG-financial"> 
-	<title>æèèåèç</title> 
+	<title><application>gcalctool</application> Financial Mode Buttons</title> 
 	<screenshot> 
 	  <mediaobject> 
 	    <imageobject><imagedata fileref="figures/gcalctool_financial_window.png" format="PNG"/> 
 	    </imageobject>
 	    <textobject> 
-	      <phrase>Shows <application>èå</application> Financial mode buttons.  </phrase> 
+	      <phrase>Shows <application>gcalctool</application> Financial mode buttons.  </phrase> 
 	    </textobject> 
 	  </mediaobject> 
 	</screenshot> 
       </figure>
     <!-- ==== End of Figure ==== -->
-      <para>ææä&ldquo;èåæå&rdquo;åïäå&ldquo;èåæå&rdquo;æéåæçå&ldquo;åææå&rdquo;æéçäæï</para>
+      <para>To perform financial calculations, use the buttons described in <xref linkend="gcalctool-TBL-financial-calc"/>. 
+</para>
                 <table id="gcalctool-TBL-financial-calc" frame="all">
-                  <title><application>Calculator</application>&ldquo;èåæå&rdquo;æé</title> 
+                  <title>Performing Financial Calculations</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -807,7 +877,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -816,7 +886,7 @@
                            <row valign="top">
                              <entry><para>Compounding Term</para> </entry>
                              <entry><para><guibutton>Ctrm</guibutton></para></entry>
-                             <entry><para>çæ</para>
+                             <entry><para>Calculates the number of compounding periods necessary to increase an investment of present value <replaceable>pv</replaceable> to a future value of <replaceable>fv</replaceable>, at a fixed interest rate of <replaceable>int</replaceable> per compounding period. </para>
                               <para>This function uses the following memory registers: </para>
                              <variablelist>
                                 <varlistentry>
@@ -837,11 +907,11 @@
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
-                                <listitem><para><replaceable>pv</replaceable>ïçå</para></listitem>
+                                <listitem><para>0.0075</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>16000</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
@@ -849,13 +919,14 @@
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Ctrm</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 2</para>
-                                    <para>8000</para></entry>
+                             <entry><para>92.77</para>
+                                    <para>The investment doubles in value in 92.77 months.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Double-Declining Depreciation</para> </entry>
                              <entry><para><guibutton>Ddb</guibutton></para></entry>
-                             <entry><para>æèåäåæçäåéè 92.77 äæçæéã</para>
+                             <entry><para>Calculates the depreciation allowance on an asset for a specified period of time, using the double-declining balance method.
+</para>
                               <para>This function uses the following memory registers:</para>
                              <variablelist>
                                 <varlistentry>
@@ -864,19 +935,20 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para><replaceable>salvage</replaceable>, the value of the asset at the end of its life</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para><replaceable>life</replaceable>, the useful life of the asset</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 3</term>
-                                <listitem><para>ååå 2</para></listitem>
+                                <listitem><para><replaceable>period</replaceable>, the time period for depreciation allowance</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              </entry>
-                             <entry><para><replaceable>åé</replaceable>ïèääçåé</para>
+                             <entry><para>You have just purchased an office machine for $8000. The useful life of this machine is six years. The salvage value after six years is $900.
+To calculate the depreciation expense for the fourth year, using the double-declining balance method, put the following values into the first four memory registers:</para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
@@ -884,7 +956,7 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>900</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
@@ -896,13 +968,14 @@
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Ddb</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 3</para>
-                                    <para>4</para></entry>
+                             <entry><para>790.12</para>
+                                    <para>The depreciation expense for the fourth year is $790.12.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Future Value</para> </entry>
                              <entry><para><guibutton>Fv</guibutton></para></entry>
-                             <entry><para>çååçææéä $790.12ã</para>
+                             <entry><para>Calculates the future value of an investment based on a series of equal payments, each of amount <replaceable>pmt</replaceable>, at a periodic interest rate of <replaceable>int</replaceable>, over the number of payment periods in the term.
+</para>
                               <para>This function uses the following memory registers: </para>
                              <variablelist>
                                 <varlistentry>
@@ -915,19 +988,20 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para><replaceable>n</replaceable>, the number of periods</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              </entry>
-                             <entry><para><replaceable>int</replaceable>ïåæåç</para>
+                             <entry><para>You plan to deposit $4000 in a bank account on the last day of each year for the next 20 years. The account pays 8% interest, compounded annually. Interest is paid on the last day of each year. 
+To calculate the value of your account in 20 years, put the following values into the first three memory registers:</para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
-                                <listitem><para><replaceable>n</replaceable>ïæéæ</para></listitem>
+                                <listitem><para>4000</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>0.08</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
@@ -935,18 +1009,19 @@
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Fv</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 2</para>
-                                    <para>20</para></entry>
+                             <entry><para>183047.86</para>
+                                    <para>At the end of 20 years, the value of the account is $183,047.86.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Periodic Payment</para> </entry>
                              <entry><para><guibutton>Pmt</guibutton></para></entry>
-                             <entry><para>åç 20 åæïæçåæäéä $183,047.86ã</para>
+                             <entry><para>Calculates the amount of the periodic payment of a loan, where payments are made at the end of each payment period. 
+</para>
                               <para>This function uses the following memory registers: </para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
-                                <listitem><para>èçäçèæçåææäéïæäæååæäæäææèèã</para></listitem>
+                                <listitem><para><replaceable>prin</replaceable>, the principal</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
@@ -954,7 +1029,7 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para><replaceable>n</replaceable>, the term</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              </entry>
@@ -966,21 +1041,22 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>0.00917</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para>360</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Pmt</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 2</para>
-                                    <para>360</para></entry>
+                             <entry><para>1143.15</para>
+                                    <para>The monthly repayment is $1143.15.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Present Value</para> </entry>
                              <entry><para><guibutton>Pv</guibutton></para></entry>
-                             <entry><para>ææäéä $1143.15ã</para>
+                             <entry><para>Calculates the present value of an investment based on a series of equal payments, each of amount <replaceable>pmt</replaceable>, discounted at a periodic interest rate of <replaceable>int</replaceable>, over the number of payment periods in the term.
+</para>
                               <para>This function uses the following memory registers: </para>
                              <variablelist>
                                 <varlistentry>
@@ -993,20 +1069,21 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para><replaceable>n</replaceable>, the number of periods</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              </entry>
-                             <entry><para><replaceable>int</replaceable>ïåæåç</para>
-                                    <para>ååå 2</para>
+                             <entry><para>You have just won a million dollars. The prize is awarded in 20 annual payments of $50,000 each. Annual payments are received at the end of each year. If you were to accept the annual payments of $50,000, you would invest the money at a rate of 9%, compounded annually.</para>
+                                    <para>However, you are given the option of receiving a single lump-sum payment of $400,000 instead of the million dollars annuity. 
+To calculate which option is worth more in today's dollars, put the following values into the first three memory registers:</para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
-                                <listitem><para>æååèåäçäçåçåéãèçåéå 20 åæäçæïæå $50,000ãæåçæäååæèèãååææåæå $50,000ïæäåèçéæ 9% çåååèèæèã</para></listitem>
+                                <listitem><para>50000</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>0.09</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
@@ -1014,13 +1091,14 @@
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Pv</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 2</para>
-                                    <para>20</para></entry>
+                             <entry><para>456427.28</para>
+                                    <para>The $1,000,000 paid over 20 years is worth $456,427.28 in present dollars.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Periodic Interest Rate</para> </entry>
                              <entry><para><guibutton>Rate</guibutton></para></entry>
-                             <entry><para>è 20 åæäç $1,000,000 åçåçåä $456,427.28ã</para>
+                             <entry><para>Calculates the periodic interest necessary to increase an investment of present value <replaceable>pv</replaceable> to a future value of <replaceable>fv</replaceable>, over the number of compounding periods in <replaceable>term</replaceable>.
+</para>
                               <para>This function uses the following memory registers: </para>
                              <variablelist>
                                 <varlistentry>
@@ -1033,19 +1111,20 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para><replaceable>n</replaceable>, the term</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              </entry>
-                             <entry><para><replaceable>pv</replaceable>ïçå</para>
+                             <entry><para>You have invested $20,000 in a bond. The bond matures in five years, and has a maturity value of $30,000. Interest is compounded monthly. The term is 5 * 12 = 60 months.
+To calculate the periodic interest rate for this investment, put the following values into the first three memory registers:</para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
-                                <listitem><para><replaceable>n</replaceable>ïæé</para></listitem>
+                                <listitem><para>30000</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>20000</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
@@ -1053,13 +1132,15 @@
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Rate</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 2</para>
-                                    <para>60</para></entry>
+                             <entry><para>.00678</para>
+                                    <para>The monthly interest rate is 0.678%. The annual interest rate is 0.678% * 12 = 8.14%.
+</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Straight-Line Depreciation</para> </entry>
                              <entry><para><guibutton>Sln</guibutton></para></entry>
-                             <entry><para>æåçä 0.678%ãååçä 0.678% * 12 = 8.14%ã</para>
+                             <entry><para>Calculates the straight-line depreciation of an asset for one period. The depreciable cost is <replaceable>cost</replaceable> - <replaceable>salvage</replaceable>. The straight-line method of depreciation divides the depreciable cost evenly over the useful life of an asset. The useful life is the number of periods, typically years, over which an asset is depreciated.
+</para>
                               <para>This function uses the following memory registers:</para>
                              <variablelist>
                                 <varlistentry>
@@ -1068,15 +1149,16 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para><replaceable>salvage</replaceable>, the value of the asset at the end of its life</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para><replaceable>life</replaceable>, the useful life of the asset</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              </entry>
-                             <entry><para><replaceable>æå</replaceable>ïèäåçååææçå</para>
+                             <entry><para>You have just purchased an office machine for $8000. The useful life of this machine is six years. The salvage value after six years is $900.
+To calculate the yearly depreciation expense, using the straight-line method, put the following values into the first three memory registers:</para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
@@ -1084,7 +1166,7 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>900</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
@@ -1092,13 +1174,15 @@
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Sln</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 2</para>
-                                    <para>6</para></entry>
+                             <entry><para>1183.33</para>
+                                    <para>The yearly depreciation expense is $1183.33.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Sum-Of-The-Years'-Digits Depreciation</para> </entry>
                              <entry><para><guibutton>Syd</guibutton></para></entry>
-                             <entry><para>åææéä $1183.33ã</para>
+                             <entry><para>Calculates the depreciation allowance on an asset for a specified period of time, using the Sum-Of-The-Years'-Digits method. This method of depreciation accelerates the rate of depreciation, so that more depreciation expense occurs in earlier periods than in later ones.
+The depreciable cost is <replaceable>cost</replaceable> - <replaceable>salvage</replaceable>. The useful life is the number of periods, typically years, over which an asset is depreciated.
+</para>
                               <para>This function uses the following memory registers:</para>
                              <variablelist>
                                 <varlistentry>
@@ -1107,19 +1191,20 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para><replaceable>salvage</replaceable>, the value of the asset at the end of its life</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para><replaceable>life</replaceable>, the useful life of the asset</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 3</term>
-                                <listitem><para>ååå 2</para></listitem>
+                                <listitem><para><replaceable>period</replaceable>, the time period for depreciation allowance</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              </entry>
-                             <entry><para><replaceable>åé</replaceable>ïèääçåé</para>
+                             <entry><para>You have just purchased an office machine for $8000. The useful life of this machine is six years. The salvage value after six years is $900.
+To calculate the depreciation expense for the fourth year, using the sum-of-the-years'-digits method, put the following values into the first four memory registers:</para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
@@ -1127,7 +1212,7 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
-                                <listitem><para>ååå 0</para></listitem>
+                                <listitem><para>900</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
@@ -1139,13 +1224,14 @@
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Syd</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 3</para>
-                                    <para>4</para></entry>
+                             <entry><para>1014.29</para>
+                                    <para>The depreciation expense for the fourth year is $1014.29.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Payment Period</para> </entry>
                              <entry><para><guibutton>Term</guibutton></para></entry>
-                             <entry><para>çååçææéä $1014.29ã</para>
+                             <entry><para>Calculates the number of payment periods that are necessary during the term of an ordinary annuity, to accumulate a future value of <replaceable>fv</replaceable>, at a periodic interest rate of <replaceable>int</replaceable>. Each payment is equal to amount <replaceable>pmt</replaceable>.
+</para>
                               <para>This function uses the following memory registers: </para>
                              <variablelist>
                                 <varlistentry>
@@ -1162,11 +1248,12 @@
                                 </varlistentry>
                              </variablelist> 
                              </entry>
-                             <entry><para><replaceable>fv</replaceable>ïçå</para>
+                             <entry><para>You plan to deposit $1800 in a bank account on the last day of each year. The account pays 11% interest, compounded annually. Interest is paid on the last day of each year. 
+To calculate the time period necessary to accumulate $120,000, put the following values into the first three memory registers:</para>
                              <variablelist>
                                 <varlistentry>
                                 <term>Register 0</term>
-                                <listitem><para><replaceable>int</replaceable>ïåæåç</para></listitem>
+                                <listitem><para>1800</para></listitem>
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 1</term>
@@ -1174,12 +1261,12 @@
                                 </varlistentry>
                                 <varlistentry>
                                 <term>Register 2</term>
-                                <listitem><para>ååå 1</para></listitem>
+                                <listitem><para>0.11</para></listitem>
                                 </varlistentry>
                              </variablelist> 
                              <para>Click <guibutton>Term</guibutton><guibutton> =</guibutton></para></entry>
-                             <entry><para>ååå 2</para>
-                                    <para>0.11</para></entry>
+                             <entry><para>20.32</para>
+                                    <para>$120,000 accumulates in the account in 20.32 years.</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
@@ -1187,7 +1274,7 @@
     </sect2> 
     <!-- ================ Usage Subsection ================================ -->
     <sect2 id="gcalctool-scientific-mode"> 
-      <title>åå<guibutton>&ldquo;Term&rdquo;</guibutton>ã</title> 
+      <title>To Perform Scientific Calculations</title> 
       <para>To change to Scientific mode, choose 
 	<menuchoice> 
 	  <guimenu>View</guimenu> 
@@ -1198,24 +1285,24 @@
 
     <!-- ==== Figure ==== -->
       <figure id="gcalctool-FIG-scientific"> 
-	<title>æèçåèç</title> 
+	<title><application>gcalctool</application> Scientific Mode Buttons</title> 
 	<screenshot> 
 	  <mediaobject> 
 	    <imageobject><imagedata fileref="figures/gcalctool_scientific_window.png" format="PNG"/> 
 	    </imageobject>
 	    <textobject> 
-	      <phrase>Shows <application>èå</application> Scientific mode buttons.  </phrase> 
+	      <phrase>Shows <application>gcalctool</application> Scientific mode buttons.  </phrase> 
 	    </textobject> 
 	  </mediaobject> 
 	</screenshot> 
       </figure>
     <!-- ==== End of Figure ==== -->
     <sect3 id="gcalctool-set-acc"> 
-      <title>ææä&ldquo;çåæå&rdquo;åïäå&ldquo;çåæå&rdquo;æéåæçå&ldquo;åææå&rdquo;æéçäæï</title> 
+      <title>To Set the Accuracy</title> 
       <para>To set the accuracy of the display area and of the memory registers, click <guibutton>Acc</guibutton>, then select from the popup menu the accuracy level that you require. The current accuracy level is indicated by a preceding black circle in the popup menu. Up to 99 significant places can be displayed. The default accuracy is 9 significant places. </para>
 <para>To set the accuracy level above 9, select <guilabel>Other (9) ...</guilabel>, then choose the accuracy level you require in the <guilabel>Set Precision</guilabel> popup.</para>
       <para>By default, trailing zeroes are not shown. To display trailing zeroes, click <guibutton>Acc</guibutton> then select <guilabel>Show Trailing Zeroes</guilabel> from the popup menu, or choose <menuchoice> <guimenu>View</guimenu> <guimenuitem>Show Trailing Zeroes</guimenuitem> </menuchoice>. A preceding check mark in the <guibutton>Acc</guibutton> popup menu or <guimenu>View</guimenu> menu indicates that the <guilabel>Show Trailing Zeroes</guilabel> option has been selected. To hide trailing zeroes, choose <menuchoice> <guimenu>View</guimenu> <guimenuitem>Show Trailing Zeroes</guimenuitem> </menuchoice> again.</para>
-      <para>èççå</para>
+      <para>The examples in the following table show how the accuracy setting affects <replaceable>x</replaceable> in the display area, when you use decimal base, with the <guimenuitem>Show Trailing Zeroes</guimenuitem> option selected, for the <literal>1 / 8 = <replaceable>x</replaceable></literal> calculation: </para>
                 <informaltable frame="all">
                   <tgroup cols="2" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -1230,26 +1317,26 @@
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>äèäççäæçäçåèçåæçååäç <replaceable>x</replaceable> çååïåäçåèååéää<guimenuitem>&ldquo;æåèé&rdquo;</guimenuitem>ééæïåäèç <literal>1 / 8 = <replaceable>x</replaceable></literal>ï</para></entry>
+                             <entry><para>1 significant place</para></entry>
                              <entry><para>1.2</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>çæ</para></entry>
-                             <entry><para>1 äåæä</para></entry>
+                             <entry><para>2 significant places</para></entry>
+                             <entry><para>1.25</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>1.2</para></entry>
-                             <entry><para>2 äåæä</para></entry>
+                             <entry><para>3 significant places</para></entry>
+                             <entry><para>1.250</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</informaltable>
     </sect3>
     <sect3 id="gcalctool-num-base"> 
-      <title>1.25</title> 
-      <para>3 äåæä</para>
+      <title>To Set the Numeric Base</title> 
+      <para>To set the numeric base, select one of the buttons described in <xref linkend="gcalctool-TBL-num-base"/>. </para>
                 <table id="gcalctool-TBL-num-base" frame="all">
-                  <title>1.250</title> 
+                  <title>Setting the Numeric Base</title> 
                   <tgroup cols="3" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -1266,34 +1353,34 @@
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>åè</para> </entry>
+                             <entry><para>Binary Base</para> </entry>
                              <entry><para><guibutton>Bin</guibutton></para></entry>
-                             <entry><para>èæ</para></entry>
+                             <entry><para>Sets the numeric base to binary, that is, base 2.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>äèå</para> </entry>
+                             <entry><para>Octal Base</para> </entry>
                              <entry><para><guibutton>Oct</guibutton></para></entry>
-                             <entry><para>åæåèåèçääèåïåä 2 äåæã</para></entry>
+                             <entry><para>Sets the numeric base to octal, that is, base 8.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>åèå</para> </entry>
+                             <entry><para>Decimal Base</para> </entry>
                              <entry><para><guibutton>Dec</guibutton></para></entry>
                              <entry><para>Sets the numeric base to decimal, that is, base 10. Decimal is the default numeric base. If you change from Scientific mode to another mode, <application>gcalctool</application> automatically sets the numeric base to decimal.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>åèå</para> </entry>
+                             <entry><para>Hexadecimal Base</para> </entry>
                              <entry><para><guibutton>Hex</guibutton></para></entry>
-                             <entry><para>åæåèåèçäåèåïåä 10 äåæãåèåäéèæåèåãåä&ldquo;çåæå&rdquo;ææä&ldquo;åææå&rdquo;æ&ldquo;èåæå&rdquo;æï<application>Calculator</application> äåæåèåèåèçäåèåã</para></entry>
+                             <entry><para>Sets the numeric base to hexadecimal, that is, base 16.</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</table>
     </sect3>
     <sect3 id="gcalctool-display-type"> 
-      <title>ååèå</title> 
-      <para>Hex</para>
+      <title>To Set the Display Type</title> 
+      <para>To set the display type, select one of the buttons described in <xref linkend="gcalctool-TBL-display-type"/>. </para>
                 <table id="gcalctool-TBL-display-type" frame="all">
-                  <title>åæåèåèçäååèåïåä 16 äåæã</title> 
+                  <title>Setting the Display Type</title> 
                   <tgroup cols="3" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -1310,17 +1397,17 @@
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>åè</para> </entry>
+                             <entry><para>Engineering Display Type</para> </entry>
                              <entry><para><guibutton>Eng</guibutton></para></entry>
                              <entry><para>Sets the display type to engineering format. Results are displayed in scientific notation. The exponent is always a multiple of three.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>&ldquo;åç&rdquo;æççå</para> </entry>
+                             <entry><para>Fixed-Point Display Type</para> </entry>
                              <entry><para><guibutton>Fix</guibutton></para></entry>
                              <entry><para>Sets the display type to fixed-point format. Results are not displayed in scientific notation. Fixed-point is the default display type.  If you change from scientific mode to either basic mode or financial mode, <application>gcalctool</application> automatically sets the display type to fixed-point format.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>&ldquo;åç&rdquo;æççå</para> </entry>
+                             <entry><para>Scientific Display Type</para> </entry>
                              <entry><para><guibutton>Sci</guibutton></para></entry>
                              <entry><para>Sets the display type to scientific format. Results are displayed in scientific notation, with a fixed number of numeric digits.</para></entry>
                            </row>
@@ -1329,10 +1416,10 @@
 		</table>
     </sect3>
     <sect3 id="gcalctool-trig-type"> 
-      <title>&ldquo;çå&rdquo;æççå</title> 
-      <para>Sci</para>
+      <title>To Set the Trigonometric Type</title> 
+      <para>To set the trigonometric type, select one of the buttons described in <xref linkend="gcalctool-TBL-trig-type"/>. </para>
                 <table id="gcalctool-TBL-trig-type" frame="all">
-                  <title>åæççåèçä&ldquo;çå&rdquo;æåãçæäçåèæææçïæåäæååã</title> 
+                  <title>Setting the Trigonometric Type</title> 
                   <tgroup cols="3" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -1368,10 +1455,10 @@
 		</table>
     </sect3>
     <sect3 id="gcalctool-trig-options"> 
-      <title>åå</title> 
-      <para>åå</para>
+      <title>To Set the Trigonometric Options</title> 
+      <para>To set the trigonometric options, use the options described in <xref linkend="gcalctool-TBL-trig-options"/>. </para>
                 <table id="gcalctool-TBL-trig-options" frame="all">
-                  <title>åäèçåèçä&ldquo;åå&rdquo;ã</title> 
+                  <title>Setting the Trigonometric Options</title> 
                   <tgroup cols="3" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -1388,26 +1475,26 @@
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>åè</para> </entry>
+                             <entry><para>Hyperbolic Option Indicator</para> </entry>
                              <entry><para><guibutton>Hyp</guibutton></para></entry>
-                             <entry><para>èæ</para></entry>
+                             <entry><para>Selects the hyperbolic option for use with the trigonometric functions.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>åæçééæçå</para> </entry>
+                             <entry><para>Inverse Option Indicator</para> </entry>
                              <entry><para><guibutton>Inv</guibutton></para></entry>
-                             <entry><para>éæçääèåæçåæçééã</para></entry>
+                             <entry><para>Selects the inverse option for use with the trigonometric functions.</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</table>
-      <para>åèééæçå</para>
+      <para>By default, the options described in <xref linkend="gcalctool-TBL-trig-options"/> are not selected. Click <guibutton>Clr</guibutton> to deselect these options. </para>
 
     </sect3>
     <sect3 id="gcalctool-trig-calc"> 
-      <title>Inv</title> 
-      <para>éæçääèåæçåèééã</para>
+      <title>To Calculate Trigonometric Values</title> 
+      <para>To calculate trigonometric values, use the buttons described in <xref linkend="gcalctool-TBL-trig-calc"/>. </para>
                 <table id="gcalctool-TBL-trig-calc" frame="all">
-                  <title>éèæåäï<xref linkend="gcalctool-TBL-trig-options"/> ääççééåäééäçæãåå<guibutton>&ldquo;Clr&rdquo;</guibutton>ååæåèäééçéæã</title> 
+                  <title>Calculating Trigonometric Values</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -1423,105 +1510,105 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>èæ</para> </entry>
-                             <entry><para>çä</para></entry>
-                             <entry><para>çæ</para></entry>
-                             <entry><para>äå <literal>cos</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Cos&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäééäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäééäçæ</para></entry>
-                           </row>
-                           <row valign="top">
-                             <entry><para>èçæçååäçåååçäåã</para> </entry>
+                             <entry><para>Cosine <literal>cos</literal></para> </entry>
+                             <entry><para><guibutton>Cos</guibutton>, <guilabel>Hyp</guilabel> option not selected, <guilabel>Inv</guilabel> option not selected</para></entry>
+                             <entry><para>Calculates the cosine of the current value in the display area.</para></entry>
                              <entry><para>60 <guibutton>Cos</guibutton></para></entry>
                              <entry><para>0.5</para></entry>
-                             <entry><para>åäå <literal>acos</literal></para></entry>
-                             <entry><para>60</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçåäåã</para> </entry>
-                             <entry><para>0.5 <guilabel>Inv</guilabel><guibutton>Cos</guibutton></para></entry>
+                             <entry><para>Arc Cosine <literal>acos</literal></para> </entry>
+                             <entry><para><guibutton>Cos</guibutton>, <guilabel>Hyp</guilabel> option not selected, <guilabel>Inv</guilabel> option selected</para></entry>
+                             <entry><para>Calculates the arc cosine of the current value in the display area.</para></entry>
+                             <entry><para>0.5 <guilabel>Inv</guilabel> <guibutton>Cos</guibutton></para></entry>
                              <entry><para>60</para></entry>
-                             <entry><para>åæäå <literal>cosh</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Cos&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäéäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäééäçæ</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçåæäåã</para> </entry>
-                             <entry><para>0.4 <guilabel>Hyp</guilabel><guibutton>Cos</guibutton></para></entry>
+                             <entry><para>Hyperbolic Cosine <literal>cosh</literal></para> </entry>
+                             <entry><para><guibutton>Cos</guibutton>, <guilabel>Hyp</guilabel> option selected, <guilabel>Inv</guilabel> option not selected</para></entry>
+                             <entry><para>Calculates the hyperbolic cosine of the current value in the display area.</para></entry>
+                             <entry><para>0.4 <guilabel>Hyp</guilabel> <guibutton>Cos</guibutton></para></entry>
                              <entry><para>1.081072372</para></entry>
-                             <entry><para>ååæäå <literal>acosh</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Cos&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäéäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäéäçæ</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçååæäåã</para> </entry>
-                             <entry><para>1.6 <guilabel>Hyp</guilabel><guilabel>Inv</guilabel><guibutton>Cos</guibutton></para></entry>
+                             <entry><para>Arc Hyperbolic Cosine <literal>acosh</literal></para> </entry>
+                             <entry><para><guibutton>Cos</guibutton>, <guilabel>Hyp</guilabel> option selected, <guilabel>Inv</guilabel> option selected</para></entry>
+                             <entry><para>Calculates the arc hyperbolic cosine of the current value in the display area.</para></entry>
+                             <entry><para>1.6 <guilabel>Hyp</guilabel> <guilabel>Inv</guilabel> <guibutton>Cos</guibutton></para></entry>
                              <entry><para>1.046967915</para></entry>
-                             <entry><para>æå <literal>sin</literal></para></entry>
-                             <entry><para>1</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçæåã</para> </entry>
+                             <entry><para>Sine <literal>sin</literal></para> </entry>
+                             <entry><para><guibutton>Sin</guibutton>, <guilabel>Hyp</guilabel> option not selected, <guilabel>Inv</guilabel> option not selected</para></entry>
+                             <entry><para>Calculates the sine of the current value in the display area.</para></entry>
                              <entry><para>90 <guibutton>Sin</guibutton></para></entry>
                              <entry><para>1</para></entry>
-                             <entry><para>åæå <literal>asin</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Sin&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäééäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäéäçæ</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçåæåã</para> </entry>
-                             <entry><para>1 <guilabel>Inv</guilabel><guibutton>Sin</guibutton></para></entry>
+                             <entry><para>Arc Sine <literal>asin</literal></para> </entry>
+                             <entry><para><guibutton>Sin</guibutton>, <guilabel>Hyp</guilabel> option not selected, <guilabel>Inv</guilabel> option selected</para></entry>
+                             <entry><para>Calculates the arc sine of the current value in the display area.</para></entry>
+                             <entry><para>1 <guilabel>Inv</guilabel> <guibutton>Sin</guibutton></para></entry>
                              <entry><para>90</para></entry>
-                             <entry><para>åææå <literal>sinh</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Sin&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäéäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäééäçæ</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçåææåã</para> </entry>
-                             <entry><para>0.4 <guilabel>Hyp</guilabel><guibutton>Sin</guibutton></para></entry>
+                             <entry><para>Hyperbolic Sine <literal>sinh</literal></para> </entry>
+                             <entry><para><guibutton>Sin</guibutton>, <guilabel>Hyp</guilabel> option selected, <guilabel>Inv</guilabel> option not selected</para></entry>
+                             <entry><para>Calculates the hyperbolic sine of the current value in the display area.</para></entry>
+                             <entry><para>0.4 <guilabel>Hyp</guilabel> <guibutton>Sin</guibutton></para></entry>
                              <entry><para>0.410752326</para></entry>
-                             <entry><para>ååææå <literal>asinh</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Sin&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäéäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäéäçæ</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçååææåã</para> </entry>
-                             <entry><para>1.6 <guilabel>Hyp</guilabel><guilabel>Inv</guilabel><guibutton>Sin</guibutton></para></entry>
+                             <entry><para>Arc Hyperbolic Sine <literal>asinh</literal></para> </entry>
+                             <entry><para><guibutton>Sin</guibutton>, <guilabel>Hyp</guilabel> option selected, <guilabel>Inv</guilabel> option selected</para></entry>
+                             <entry><para>Calculates the arc hyperbolic sine of the current value in the display area.</para></entry>
+                             <entry><para>1.6 <guilabel>Hyp</guilabel> <guilabel>Inv</guilabel> <guibutton>Sin</guibutton></para></entry>
                              <entry><para>1.248983328</para></entry>
-                             <entry><para>æå <literal>tan</literal></para></entry>
-                             <entry><para>1</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçæåã</para> </entry>
+                             <entry><para>Tangent <literal>tan</literal></para> </entry>
+                             <entry><para><guibutton>Tan</guibutton>, <guilabel>Hyp</guilabel> option not selected, <guilabel>Inv</guilabel> option not selected</para></entry>
+                             <entry><para>Calculates the tangent of the current value in the display area.</para></entry>
                              <entry><para>45 <guibutton>Tan</guibutton></para></entry>
                              <entry><para>1</para></entry>
-                             <entry><para>åæå <literal>atan</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Tan&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäééäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäéäçæ</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçåæåã</para> </entry>
-                             <entry><para>1 <guilabel>Inv</guilabel><guibutton>Tan</guibutton></para></entry>
+                             <entry><para>Arc Tangent <literal>atan</literal></para> </entry>
+                             <entry><para><guibutton>Tan</guibutton>, <guilabel>Hyp</guilabel> option not selected, <guilabel>Inv</guilabel> option selected</para></entry>
+                             <entry><para>Calculates the arc tangent of the current value in the display area.</para></entry>
+                             <entry><para>1 <guilabel>Inv</guilabel> <guibutton>Tan</guibutton></para></entry>
                              <entry><para>45</para></entry>
-                             <entry><para>åææå <literal>tanh</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Tan&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäéäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäééäçæ</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>èçæçååäçåååçåææåã</para> </entry>
-                             <entry><para>0.6 <guilabel>Hyp</guilabel><guibutton>Tan</guibutton></para></entry>
+                             <entry><para>Hyperbolic Tangent <literal>tanh</literal></para> </entry>
+                             <entry><para><guibutton>Tan</guibutton>, <guilabel>Hyp</guilabel> option selected, <guilabel>Inv</guilabel> option not selected</para></entry>
+                             <entry><para>Calculates the hyperbolic tangent of the current value in the display area.</para></entry>
+                             <entry><para>0.6 <guilabel>Hyp</guilabel> <guibutton>Tan</guibutton></para></entry>
                              <entry><para>0.537049567</para></entry>
-                             <entry><para>ååææå <literal>atanh</literal></para></entry>
-                             <entry><para><guibutton>&ldquo;Tan&rdquo;</guibutton>ã<guilabel>&ldquo;Hyp&rdquo;</guilabel> ééåäéäçæï<guilabel>&ldquo;Inv&rdquo;</guilabel>ééåäéäçæ</para></entry>
+                           </row>
+                           <row valign="top">
+                             <entry><para>Arc Hyperbolic Tangent <literal>atanh</literal></para> </entry>
+                             <entry><para><guibutton>Tan</guibutton>, <guilabel>Hyp</guilabel> option selected, <guilabel>Inv</guilabel> option selected</para></entry>
+                             <entry><para>Calculates the arc hyperbolic tangent of the current value in the display area.</para></entry>
+                             <entry><para>0.6 <guilabel>Hyp</guilabel> <guilabel>Inv</guilabel> <guibutton>Tan</guibutton></para></entry>
+                             <entry><para>0.693147181</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</table>
     </sect3>
     <sect3 id="gcalctool-logs-calc"> 
-      <title>èçæçååäçåååçååææåã</title> 
-      <para>0.6 <guilabel>Hyp</guilabel><guilabel>Inv</guilabel><guibutton>Tan</guibutton></para>
+      <title>To Calculate Logarithms</title> 
+      <para>To calculate logarithms, use the buttons described in <xref linkend="gcalctool-TBL-logs-calc"/>. </para>
                 <table id="gcalctool-TBL-logs-calc" frame="all">
-                  <title>0.693147181</title> 
+                  <title>Calculating Logarithms</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -1537,14 +1624,14 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>èæ</para> </entry>
+                             <entry><para>Common Logarithm Base 10</para> </entry>
                              <entry><para>Log<subscript><replaceable>10</replaceable></subscript></para></entry>
                              <entry><para>Calculates the common logarithm (base 10) of the current value in the display area.</para></entry>
                              <entry><para>10 Log<subscript><replaceable>10</replaceable></subscript></para></entry>
@@ -1553,9 +1640,9 @@
                            <row valign="top">
                              <entry><para>Natural Logarithm</para> </entry>
                              <entry><para><guibutton>Ln</guibutton></para></entry>
-                             <entry><para>1</para></entry>
-                             <entry><para>èçåæ</para></entry>
-                             <entry><para>Ln</para></entry>
+                             <entry><para>Calculates the natural logarithm of the current value in the display area.</para></entry>
+                             <entry><para>10 <guibutton>Ln</guibutton></para></entry>
+                             <entry><para>2.30</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Common Logarithm Base 2</para> </entry>
@@ -1568,7 +1655,7 @@
 		  </tgroup>
 		</table>
                 <note>
-                  <para>èçæçååäçåååçèçåæã</para>
+                  <para>Common antilogarithm and natural antilogarithm are not supported in this version of <application>gcalctool</application>.</para>
                 </note>
     </sect3>
     <sect3 id="gcalctool-logic-calc"> 
@@ -1591,7 +1678,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -1602,7 +1689,7 @@
                              <entry><para><guibutton>OR</guibutton></para></entry>
                              <entry><para>Performs a bitwise OR operation on the current value in the display area and the next number that you enter, treating both numbers as unsigned long integers.</para></entry>
                              <entry><para>10001000 <guibutton>OR</guibutton> 00010001</para></entry>
-                             <entry><para>Or</para></entry>
+                             <entry><para>10011001</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Bitwise AND</para> </entry>
@@ -1619,21 +1706,21 @@
                              <para><guibutton>NOT</guibutton> 1357ACE</para>
                              <para>For non-arithmetic precedence mode:</para>
                              <para>1357ACE <guibutton>NOT</guibutton></para></entry>
-                             <entry><para>Not</para></entry>
+                             <entry><para>FECA8531</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Bitwise XOR</para> </entry>
                              <entry><para><guibutton>XOR</guibutton></para></entry>
                              <entry><para>Performs a bitwise XOR operation on the current value in the display area and the next number that you enter, treating both numbers as unsigned long integers.</para></entry>
                              <entry><para>1100 <guibutton>XOR</guibutton> 1010</para></entry>
-                             <entry><para>Xor</para></entry>
+                             <entry><para>110</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Bitwise XNOR</para> </entry>
                              <entry><para><guibutton>XNOR</guibutton></para></entry>
                              <entry><para>Performs a bitwise XNOR operation on the current value in the display area and the next number that you enter, treating both numbers as unsigned long integers.</para></entry>
                              <entry><para>1100 <guibutton>XNOR</guibutton> 1010</para></entry>
-                             <entry><para>Xnor</para></entry>
+                             <entry><para>11111111111111111111111111111001</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
@@ -1645,8 +1732,8 @@
       <para>If the calculator display shows an integer value, then each of the bits in that integer value is displayed as a collection of 0's and 1's. By clicking on any of these individual bits, their value can be toggled, causing the displayed integer value to be adjusted accordingly.</para>
     </sect3>
     <sect3 id="gcalctool-enter-exp"> 
-      <title>åæçååäçååååèåçäääæåæèéè XNOR èçï åèääæåéääæçåéææåçã</title> 
-      <para>1100 <guibutton>Xnor</guibutton> 1010</para>
+      <title>To Enter Exponential Numbers</title> 
+      <para>To enter exponential numbers, use the <guibutton>Exp</guibutton> button.</para>
       <para>The <guibutton>Exp</guibutton> button enables you to enter numbers in scientific notation, that is, <replaceable>mantissa</replaceable> * <replaceable>base</replaceable><superscript><replaceable>exponent</replaceable></superscript>:
 </para>
 <variablelist>
@@ -1683,9 +1770,9 @@
                             <entry colname="COLSPEC0">
                                    <para>Number</para></entry>
                             <entry colname="COLSPEC1">
-                                   <para>-500</para></entry>
+                                   <para>Enter</para></entry>
                             <entry colname="COLSPEC2">
-                                   <para>èèåääåæææåçæåïèéåäèäçæåï</para></entry>
+                                   <para>Number Displayed</para></entry>
                           </row>
                    </thead> 
                    <tbody> 
@@ -1695,19 +1782,19 @@
                        <entry><para>1200000000</para></entry>
                      </row>
                      <row valign="top">
-                       <entry><para>1200000000</para></entry>
+                       <entry><para>-1200000000</para></entry>
                        <entry><para><guibutton>-</guibutton> 12 <guibutton>Exp</guibutton> <guibutton>+</guibutton> <guibutton>8</guibutton> <guibutton>=</guibutton> </para></entry>
-                       <entry><para>1200000000</para></entry>
+                       <entry><para>-1200000000</para></entry>
                      </row>
                      <row valign="top">
                        <entry><para>0.00000012</para></entry>
                        <entry><para>12 <guibutton>Exp</guibutton> <guibutton>-</guibutton> <guibutton>8</guibutton> <guibutton>=</guibutton> </para></entry>
-                       <entry><para>-1200000000</para></entry>
+                       <entry><para>1.2e-7</para></entry>
                      </row>
                      <row valign="top">
                        <entry><para>-0.00000012</para></entry>
                        <entry><para><guibutton>-</guibutton> 12 <guibutton>Exp</guibutton> <guibutton>-</guibutton> <guibutton>8</guibutton> <guibutton>=</guibutton> </para></entry>
-                       <entry><para>1.2e-7</para></entry>
+                       <entry><para>-1.2e-7</para></entry>
                      </row>
                    </tbody>
             </tgroup>
@@ -1723,31 +1810,31 @@
                             <entry colname="COLSPEC0">
                                    <para>Number</para></entry>
                             <entry colname="COLSPEC1">
-                                   <para>-500</para></entry>
+                                   <para>Enter</para></entry>
                             <entry colname="COLSPEC2">
-                                   <para>èèåääåæææåçæåïèéåäèäçæåï</para></entry>
+                                   <para>Number Displayed</para></entry>
                           </row>
                    </thead> 
                    <tbody> 
                      <row valign="top">
                        <entry><para>1200000000</para></entry>
-                       <entry><para>èå</para></entry>
+                       <entry><para>12 <guibutton>Exp</guibutton> <guibutton>8</guibutton> <guibutton>=</guibutton></para></entry>
                        <entry><para>1200000000</para></entry>
                      </row>
                      <row valign="top">
-                       <entry><para>1200000000</para></entry>
+                       <entry><para>-1200000000</para></entry>
                        <entry><para>12 <guibutton>+/-</guibutton> <guibutton>Exp</guibutton> <guibutton>8</guibutton> <guibutton>=</guibutton> </para></entry>
-                       <entry><para>1200000000</para></entry>
+                       <entry><para>-1200000000</para></entry>
                      </row>
                      <row valign="top">
                        <entry><para>0.00000012</para></entry>
-                       <entry><para>12 <guibutton>Exp</guibutton><guibutton>8</guibutton><guibutton>=</guibutton><guibutton>+/-</guibutton></para></entry>
-                       <entry><para>-1200000000</para></entry>
+                       <entry><para>12 <guibutton>Exp</guibutton> <guibutton>8</guibutton> <guibutton>+/-</guibutton> </para></entry>
+                       <entry><para>1.2e-7</para></entry>
                      </row>
                      <row valign="top">
                        <entry><para>-0.00000012</para></entry>
                        <entry><para>12 <guibutton>+/-</guibutton> <guibutton>Exp</guibutton> <guibutton>8</guibutton> <guibutton>+/-</guibutton> </para></entry>
-                       <entry><para>1.2e-7</para></entry>
+                       <entry><para>-1.2e-7</para></entry>
                      </row>
                    </tbody>
             </tgroup>
@@ -1755,9 +1842,9 @@
 
     </sect3>
     <sect3 id="gcalctool-edit-const"> 
-      <title>-0.0000000012</title> 
+      <title>To Use Constant Values</title> 
       <para>Click <guibutton>Con</guibutton> to display the list of defined constant values. All constant values are specified in decimal numeric base, even if the current numeric base is not decimal.</para>
-      <para>-1.2e-7</para>
+      <para>Select a constant from the menu to enter its value in the display area. If you use the keyboard shortcut <keycap>#</keycap>, you can use the keyboard to specify the constant, as shown in the following example:</para>
       <informaltable frame="all">
         <tgroup cols="2" colsep="1" rowsep="1">
           <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -1767,7 +1854,7 @@
               <entry colname="COLSPEC0">
                 <para>Keyboard Entry</para></entry>
               <entry colname="COLSPEC1">
-                <para>åå<guibutton>&ldquo;Con&rdquo;</guibutton>æçåäçåæåçåèãææåæåéäåèåæåïåäååæåèåäæåèåäåæã</para></entry>
+                <para>Constant</para></entry>
             </row>
           </thead>
           <tbody>
@@ -1778,7 +1865,7 @@
           </tbody>
         </tgroup>
       </informaltable>
-      <para>#</para>
+      <para>The <application>gcalctool</application> application provides ten default constant values, as described in the following table:</para>
                 <informaltable frame="all">
                   <tgroup cols="3" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -1789,77 +1876,77 @@
                                   <entry colname="COLSPEC0">
                                          <para>Number</para></entry>
                                   <entry colname="COLSPEC1">
-                                         <para>C3</para></entry>
+                                         <para>Value</para></entry>
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                 </row>
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>æå</para></entry>
-                             <entry><para>å</para></entry>
+                             <entry><para>C0</para></entry>
+                             <entry><para>0.621</para></entry>
                              <entry><para>Kilometer-to-mile conversion factor</para>
-                                    <para>C0</para>
-                                    <para>0.621</para></entry>
-                           </row>
-                           <row valign="top">
-                             <entry><para>åéæåææèéæåæ</para></entry>
-                             <entry><para>åæçååäçåååäæåæçäïååéæåæèææèéæåæãäåï8 * <guibutton>Con</guibutton><guilabel>C0</guilabel><keycap>=</keycap> 5ã</para></entry>
-                             <entry><para>Square root of 2</para></entry>
+                                    <para>Multiply the current value in the display area by this constant, to convert from kilometers per hour to miles per hour. For example, 8 * <guibutton>Con</guibutton> <guilabel>C0</guilabel> <keycap>=</keycap> 5.</para>
+                                    <para>Divide the current value in the display area by this constant, to convert from miles per hour to kilometers per hour. For example, 5 / <guibutton>Con</guibutton> <guilabel>C0</guilabel> <keycap>=</keycap> 8.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>C1</para></entry>
                              <entry><para>1.414213562</para></entry>
-                             <entry><para>e</para></entry>
+                             <entry><para>Square root of 2</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>C3</para></entry>
+                             <entry><para>C2</para></entry>
                              <entry><para>2.718281828</para></entry>
                              <entry><para>e</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>C3</para></entry>
                              <entry><para>3.141592653</para></entry>
-                             <entry><para>Centimeter-to-inch conversion factor</para>
-                                    <para>C4</para>
-                                    <para>0.3937007</para></entry>
+                             <entry><para>pi</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>åçæèå</para></entry>
-                             <entry><para>åæçååäçåååäæåæçäïååçèææèåãäåï30 * <guibutton>Con</guibutton><guilabel>C4</guilabel><keycap>=</keycap> 12ã</para></entry>
-                             <entry><para>Degrees in a radian</para></entry>
+                             <entry><para>C4</para></entry>
+                             <entry><para>0.3937007</para></entry>
+                             <entry><para>Centimeter-to-inch conversion factor</para>
+                                    <para>Multiply the current value in the display area by this constant, to convert from centimeters to inches. For example, 30 * <guibutton>Con</guibutton> <guilabel>C4</guilabel> <keycap>=</keycap> 12.</para>
+                                    <para>Divide the current value in the display area by this constant, to convert from inches to centimeters. For example, 12 / <guibutton>Con</guibutton> <guilabel>C4</guilabel> <keycap>=</keycap> 30.</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>C5</para></entry>
                              <entry><para>57.295779513</para></entry>
-                             <entry><para>ååäçèå</para></entry>
+                             <entry><para>Degrees in a radian</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>C6</para></entry>
                              <entry><para>1048576</para></entry>
+                             <entry><para>2 ^ 20</para></entry>
+                           </row>
+                           <row valign="top">
+                             <entry><para>C7</para></entry>
+                             <entry><para>0.0353</para></entry>
                              <entry><para>Gram-to-ounce conversion factor</para>
-                                    <para>C7</para>
-                                    <para>0.0353</para></entry>
+                                    <para>Multiply the current value in the display area by this constant, to convert from grams to ounces. For example, 500 * <guibutton>Con</guibutton> <guilabel>C7</guilabel> <keycap>=</keycap> 18.</para>
+                                    <para>Divide the current value in the display area by this constant, to convert from ounces to grams. For example, 18 / <guibutton>Con</guibutton> <guilabel>C7</guilabel> <keycap>=</keycap> 500.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>åæçå</para></entry>
-                             <entry><para>åæçååäçåååäæåæçäïååèææçåãäåï500 * <guibutton>Con</guibutton><guilabel>C7</guilabel><keycap>=</keycap> 18ã</para></entry>
+                             <entry><para>C8</para></entry>
+                             <entry><para>0.948</para></entry>
                              <entry><para>Kilojoule-to-British-thermal-unit conversion factor</para>
-                                    <para>C8</para>
-                                    <para>0.948</para></entry>
+                                    <para>Multiply the current value in the display area by this constant, to convert from kilojoules to British thermal units. For example, 10 * <guibutton>Con</guibutton> <guilabel>C8</guilabel> <keycap>=</keycap> 9.48.</para>
+                                    <para>Divide the current value in the display area by this constant, to convert from British thermal units to kilojoules. For example, 9.48 / <guibutton>Con</guibutton> <guilabel>C8</guilabel> <keycap>=</keycap> 10.</para></entry>
                            </row>
                            <row valign="top">
-                             <entry><para>åçèæèçåä</para></entry>
-                             <entry><para>åæçååäçåååäæåæçäïååçèèææèçåäãäåï10 * <guibutton>Con</guibutton><guilabel>C8</guilabel><keycap>=</keycap> 9.48ã</para></entry>
+                             <entry><para>C9</para></entry>
+                             <entry><para>0.061</para></entry>
                              <entry><para>Cubic-centimeter-to-cubic-inch conversion factor</para>
-                                    <para>C9</para>
-                                    <para>0.061</para></entry>
+                                    <para>Multiply the current value in the display area by this constant, to convert from cubic centimeters to cubic inches. For example, 100 * <guibutton>Con</guibutton> <guilabel>C9</guilabel> <keycap>=</keycap> 6.10.</para>
+                                    <para>Divide the current value in the display area by this constant, to convert from cubic inches to cubic centimeters. For example, 6.10 / <guibutton>Con</guibutton> <guilabel>C9</guilabel> <keycap>=</keycap> 100.</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</informaltable>
       <para>You can overwrite the default constants to store your own constants.</para>
-      <para>åæçååäçåååäæåæçäïåçæåçèææçæèåãäåï100 * <guibutton>Con</guibutton><guilabel>C9</guilabel><keycap>=</keycap> 6.10ã</para>
+      <para>To store a new constant or edit an existing constant, perform the following steps:</para>
       <orderedlist>
         <listitem>
            <para>Click <guibutton>Con</guibutton>, then select <guilabel>Edit Constants</guilabel> from the popup menu. </para>
@@ -1879,9 +1966,10 @@
       </orderedlist>
     </sect3>
     <sect3 id="gcalctool-edit-func"> 
-      <title>åå&ldquo;å&rdquo;åæïçåèåæåã</title> 
+      <title>To Use Functions</title> 
       <para>To show the available functions, click <guibutton>Fun</guibutton>. A popup menu displays the list of defined functions. Select a function from the menu to run that function. If the function is not defined, the value zero is returned. </para>
-<para>åå<guibutton>&ldquo;çå&rdquo;</guibutton>ïäåæäçææååé<guilabel>&ldquo;çèåæ&rdquo;</guilabel>çåã</para>
+<para>If you use the keyboard shortcut <keycap>F</keycap>, you can use the keyboard to specify the function, as shown in the following example:
+</para>
       <informaltable frame="all">
         <tgroup cols="2" colsep="1" rowsep="1">
           <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -1897,14 +1985,14 @@
           <tbody>
             <row valign="top">
               <entry><para><keycap>F</keycap> <keycap>3</keycap> </para></entry>
-              <entry><para>åè</para></entry>
+              <entry><para>F3</para></entry>
             </row>
           </tbody>
         </tgroup>
       </informaltable>
 
-      <para>F</para>
-      <para>3</para>
+      <para>The <application>gcalctool</application> application does not provide any default functions. You can store up to ten functions. </para>
+      <para>To store a new function or edit an existing function, perform the following steps:</para>
       <orderedlist>
         <listitem>
            <para>Click <guibutton>Fun</guibutton>, then select <guilabel>Edit Functions</guilabel> from the popup menu.</para>
@@ -1924,10 +2012,10 @@
       </orderedlist>
     </sect3>
     <sect3 id="gcalctool-num-manip"> 
-      <title>åå&ldquo;å&rdquo;åæïçåèåæåãäçéçåæéèç <application>Calculator</application> æéãäåïèå <literal>90K</literal> èç sine(90)ã</title> 
-      <para>åå&ldquo;èæ&rdquo;åæïçåèåæçèæãäåï<literal>Sine 90</literal>ã</para>
+      <title>To Manipulate Binary Numbers</title> 
+      <para>To manipulate binary numbers, use the buttons described in <xref linkend="gcalctool-TBL-num-manip"/>. </para>
                 <table id="gcalctool-TBL-num-manip" frame="all">
-                  <title>åå<guibutton>&ldquo;çå&rdquo;</guibutton>ïäåæäçææååé<guilabel>&ldquo;çèåæ&rdquo;</guilabel>çåã</title> 
+                  <title>Manipulating Binary Numbers</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -1943,7 +2031,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -1953,34 +2041,34 @@
                              <entry><para>Left Shift <replaceable>n</replaceable></para> </entry>
                              <entry><para><guibutton>&lt;</guibutton></para></entry>
                              <entry><para>Shifts the current unsigned 32-bit binary value in the display area, the specified number of places to the left. Click <guibutton>&lt;</guibutton>, then select the number of shift places from the popup menu. The number can be shifted up to 15 places left. </para></entry>
-                             <entry><para>åç <replaceable>n</replaceable></para></entry>
-                             <entry><para>&lt;</para></entry>
+                             <entry><para>111 <guibutton>&lt;</guibutton> <guilabel>1 place</guilabel></para></entry>
+                             <entry><para>1110</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Right Shift <replaceable>n</replaceable></para> </entry>
                              <entry><para><guibutton>&gt;</guibutton></para></entry>
                              <entry><para>Shifts the current unsigned 32-bit binary value in the display area, the specified number of places to the right. Click <guibutton>&gt;</guibutton>, then select the number of shift places from the popup menu. The number can be shifted up to 15 places right.</para></entry>
-                             <entry><para>åç <replaceable>n</replaceable></para></entry>
-                             <entry><para>&gt;</para></entry>
+                             <entry><para>1011 <guibutton>&gt;</guibutton> <guilabel>1 place</guilabel></para></entry>
+                             <entry><para>101 </para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Get a 16-Bit Unsigned Integer</para> </entry>
                              <entry><para><guibutton>&amp;16</guibutton></para></entry>
-                             <entry><para>101</para></entry>
-                             <entry><para>èå 16 äæçåææ</para></entry>
-                             <entry><para>&amp;16</para></entry>
+                             <entry><para>Truncates the current value in the display area and returns a 16-bit unsigned integer.</para></entry>
+                             <entry><para>FFFFF <guibutton>&amp;16</guibutton></para></entry>
+                             <entry><para>FFFF</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Get a 32-Bit Unsigned Integer</para> </entry>
                              <entry><para><guibutton>&amp;32</guibutton></para></entry>
-                             <entry><para>FFFF</para></entry>
-                             <entry><para>èå 32 äæçåææ</para></entry>
-                             <entry><para>&amp;32</para></entry>
+                             <entry><para>Truncates the current value in the display area and returns a 32-bit unsigned integer.</para></entry>
+                             <entry><para>FFFFFFFFFF <guibutton>&amp;32</guibutton></para></entry>
+                             <entry><para>FFFFFFFF</para></entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</table>
-      <para>æææçååäçåååïèåää 32 äæçåææã</para>
+      <para>If you use keyboard shortcuts, you can use the keyboard to specify the number of places to shift, as shown in the following examples: </para>
       <informaltable frame="all">
         <tgroup cols="2" colsep="1" rowsep="1">
           <colspec colname="COLSPEC0" colwidth="50*"/>
@@ -1996,11 +2084,11 @@
           <tbody>
             <row valign="top">
               <entry><para><keycap>&lt;</keycap> <keycap>4</keycap></para></entry>
-              <entry><para>èæ</para></entry>
+              <entry><para>Shifts the current binary value in the display area 4 places to the left.</para></entry>
             </row>
             <row valign="top">
               <entry><para><keycap>&gt;</keycap> <keycap>4</keycap></para></entry>
-              <entry><para>åæçååäååçäèååååçå 4 äã</para></entry>
+              <entry><para>Shifts the current binary value in the display area 4 places to the right.</para></entry>
             </row>
           </tbody> 
         </tgroup>
@@ -2008,10 +2096,10 @@
 
     </sect3>
     <sect3 id="gcalctool-misc-calc"> 
-      <title>&gt;</title> 
+      <title>To Perform Miscellaneous Scientific Calculations</title> 
       <para>To perform miscellaneous scientific calculations, use the buttons described in <xref linkend="gcalctool-TBL-misc-calc"/>. </para>
                 <table id="gcalctool-TBL-misc-calc" frame="all">
-                  <title>åæçååäååçäèååååçå 4 äã</title> 
+                  <title>Performing Miscellaneous Scientific Calculations</title> 
                   <tgroup cols="5" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -2027,7 +2115,7 @@
                                   <entry colname="COLSPEC2">
                                          <para>Description</para></entry>
                                   <entry colname="COLSPEC3">
-                                         <para>åè</para></entry>
+                                         <para>Example</para></entry>
                                   <entry colname="COLSPEC4">
                                          <para>Result</para></entry>
                                 </row>
@@ -2036,30 +2124,30 @@
                                                       <row valign="top">
                              <entry><para>e to the <replaceable>x</replaceable> power</para> </entry>
                              <entry><para>e<superscript><replaceable>x</replaceable></superscript></para></entry>
-                             <entry><para>14</para></entry>
+                             <entry><para>Calculates the value of <literal>e</literal> raised to the power of the current value in the display area.</para></entry>
                              <entry><para>2 e<superscript><replaceable>x</replaceable></superscript></para></entry>
-                             <entry><para>e<superscript>x</superscript></para></entry>
+                             <entry><para>7.39</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>10 to the <replaceable>x</replaceable> power</para> </entry>
                              <entry><para>10<superscript><replaceable>x</replaceable></superscript></para></entry>
-                             <entry><para>7.39</para></entry>
+                             <entry><para>Calculates the value of 10 raised to the power of the current value in the display area.</para></entry>
                              <entry><para>2 10<superscript><replaceable>x</replaceable></superscript></para></entry>
-                             <entry><para>10<superscript>x</superscript></para></entry>
+                             <entry><para>100</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>x to the <replaceable>y</replaceable> power</para> </entry>
-                             <entry><para><replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable><superscript><replaceable>y</replaceable></superscript></para></entry>
-                             <entry><para>100</para></entry>
+                             <entry><para><replaceable>x</replaceable><superscript><replaceable>y</replaceable></superscript></para></entry>
+                             <entry><para>Raises the current value in the display area to the power of the next value that you enter.</para></entry>
                              <entry><para>2 <replaceable>x</replaceable><superscript><replaceable>y</replaceable></superscript> <guibutton>4</guibutton> <guibutton>=</guibutton></para></entry>
-                             <entry><para>y<superscript>x</superscript></para></entry>
+                             <entry><para>16</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para><replaceable>x</replaceable> Factorial</para> </entry>
-                             <entry><para><guibutton><replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable>!</guibutton></para></entry>
-                             <entry><para>16</para></entry>
+                             <entry><para><guibutton><replaceable>x</replaceable>!</guibutton></para></entry>
+                             <entry><para>Calculates the factorial of the current value in the display area. <replaceable>x</replaceable> factorial is <replaceable>x</replaceable>*(<replaceable>x</replaceable>-1)*(<replaceable>x</replaceable>-2)...*1. This function applies only to positive integers.</para></entry>
                              <entry><para>4 <guibutton><replaceable>x</replaceable>!</guibutton></para></entry>
-                             <entry><para>x!</para></entry>
+                             <entry><para>24</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Modulus Division</para> </entry>
@@ -2073,12 +2161,12 @@
                              <entry><para><guibutton>Rand</guibutton></para></entry>
                              <entry><para>Generates a random number in the range 0.0 to 1.0 then displays the random number in the display area.</para></entry>
                              <entry><para><guibutton>Rand</guibutton></para></entry>
-                             <entry><para>Rand</para></entry>
+                             <entry><para>0.14</para></entry>
                            </row>
                            <row valign="top">
                              <entry><para>Hexadecimal Numerals</para> </entry>
                              <entry><para><guibutton>A</guibutton> to <guibutton>F</guibutton> inclusive</para></entry>
-                             <entry><para>0.14</para></entry>
+                             <entry><para>These numerals are available in hexadecimal base only.</para></entry>
                              <entry><para><guibutton>B</guibutton></para></entry>
                              <entry><para>B</para></entry>
                            </row>
@@ -2103,27 +2191,31 @@
   </sect2>
 <!-- ============= Quitting ============================= -->
   <sect2 id="gcalctool-quit"> 
-    <title>èäæåäåéçååèåæåçã</title> 
-                <para>B</para>
-                <para>B</para>
+    <title>To Quit</title> 
+                <para>To quit <application>gcalctool</application>, choose
+                  <menuchoice>
+                         <guimenu>Calculator</guimenu>
+                         <guimenuitem>Quit</guimenuitem>
+                  </menuchoice>.  </para>
+                <para>When you quit <application>gcalctool</application>, the current values of the following settings are stored and automatically applied the next time you start <application>gcalctool</application>: </para>
                   <itemizedlist>
                     <listitem><para>Mode: <link linkend="gcalctool-basic-mode">Basic</link>,  <link linkend="gcalctool-advanced-mode">Advanced</link>, <link linkend="gcalctool-financial-mode">Financial</link>, or <link linkend="gcalctool-scientific-mode">Scientific</link></para></listitem>
                     <listitem><para><link linkend="gcalctool-set-acc">Accuracy</link></para></listitem>
                     <listitem><para><link linkend="gcalctool-mem-reg">Memory Registers window</link> displayed or not displayed, plus the contents of each memory register</para></listitem>
-                    <listitem><para><link linkend="gcalctool-num-base">æåï<link linkend="gcalctool-basic-mode">&ldquo;åæ&rdquo;</link>ã<link linkend="gcalctool-financial-mode">&ldquo;èå&rdquo;</link>æ<link linkend="gcalctool-scientific-mode">&ldquo;çå&rdquo;</link></link></para></listitem>
-                    <listitem><para><link linkend="gcalctool-display-type">çå</link></para></listitem>
-                    <listitem><para><link linkend="gcalctool-trig-type">æçåäæçç<link linkend="gcalctool-mem-reg">&ldquo;ååååå&rdquo;çå</link></link></para></listitem>
-                    <listitem><para><link linkend="gcalctool-set-acc">T</link></para></listitem>
+                    <listitem><para><link linkend="gcalctool-num-base">Numeric base</link></para></listitem>
+                    <listitem><para><link linkend="gcalctool-display-type">Display type</link></para></listitem>
+                    <listitem><para><link linkend="gcalctool-trig-type">Trigonometric type</link></para></listitem>
+                    <listitem><para><link linkend="gcalctool-set-acc">Show Trailing Zeroes</link></para></listitem>
                     <listitem><para><link linkend="gcalctool-calc-functions-separator">Show Thousands Separator</link></para></listitem>
                   </itemizedlist>
   </sect2>
   </sect1>
 <!-- ============= Technical Information ============================= -->
   <sect1 id="gcalctool-tech-info">
-         <title>æåèå</title>
+         <title>Technical Information</title>
 
             <sect2 id="gcalctool-manage-order">
-                <title>æççå</title>
+                <title>Order of Operations</title>
 	<para>By default, calculations are performed using arithmetic precedence. That is, the precedence of the arithmetic operators is taken into consideration and the result is only calculated when you click <guibutton>Return</guibutton>.</para>
 	<para>In the following example, the result of the calculation is 22 because the multiplication operator, <literal>*</literal>, has precedence over the addition operator, <literal>+</literal>.</para>
 
@@ -2134,8 +2226,16 @@
          </sect2> 
 
          <sect2 id="gcalctool-recognize-error">
-                <title>èçäåèåæèïææçæäåéåãèåççæäåéåïèäçåæåã</title>
-                <para>äææèçåæéäåçï<guibutton>&ldquo;Clr&rdquo;</guibutton>æééåïã</para>
+                <title>Error Conditions</title>
+                <para>If you perform an invalid calculation, <application>gcalctool</application> indicates the error condition as follows:
+<itemizedlist>
+<listitem><para>Displays the word <literal>Error</literal> in the display area.</para></listitem>
+<listitem><para>Displays an error message in the status bar.</para></listitem>
+<listitem><para>Makes all calculator buttons unavailable, except <guibutton>Clr</guibutton>.</para></listitem>
+<listitem><para>Makes all calculator options unavailable.</para></listitem>
+<listitem><para>Makes all calculator menu items unavailable, except <menuchoice><guimenu>Calculator</guimenu><guimenuitem>Quit</guimenuitem></menuchoice> and <menuchoice><guimenu>Help</guimenu><guimenuitem>Contents</guimenuitem></menuchoice>.</para></listitem>
+</itemizedlist>
+</para>
 <para>To clear the error condition, click <guibutton>Clr</guibutton> or press <keycombo><keycap>Shift</keycap><keycap>Delete</keycap></keycombo>.</para>
          </sect2>
 
@@ -2177,13 +2277,13 @@
   </sect1>
 <!-- ============= Keyboard Shortcuts ============================= -->
   <sect1 id="gcalctool-keyboard-shortcut"> 
-    <title>èæééèïèåå<guibutton>&ldquo;Clr&rdquo;</guibutton>ææ<keycap>&ldquo;åé&rdquo;</keycap>ã</title> 
-                <para>ææèåæå</para>
+    <title>Quick Reference: Keyboard Shortcuts</title> 
+                <para><xref linkend="gcalctool-TBL-keyboard-shortcut-button"/>, <xref linkend="gcalctool-TBL-keyboard-shortcut-sci-options"/>, and <xref linkend="gcalctool-TBL-keyboard-shortcut-menu"/> provide a quick reference for all of the <application>gcalctool</application> keyboard shortcuts.</para>
                 <para>When you use the keyboard shortcut for any of the calculator
                       buttons that have a menu associated with them, that menu is displayed.
                       You can then use the arrow keys to select a menu item or the menu item's shortcut.</para>
                 <table id="gcalctool-TBL-keyboard-shortcut-button" frame="all">
-                  <title>èææèåæåïèååææçåïçåéæ<guimenuitem>&ldquo;Input Methods&rdquo;</guimenuitem>ã</title> 
+                  <title>Quick Reference for Keyboard Shortcuts of <application>gcalctool</application> Buttons</title> 
                   <tgroup cols="4" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -2203,14 +2303,14 @@
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para>æé</para></entry>
+                             <entry><para><keycap>0</keycap> to <keycap>9</keycap> inclusive</para></entry>
                              <entry><para><guibutton>0</guibutton> to <guibutton>9</guibutton> inclusive</para></entry>
                              <entry><para>Numerals</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-simple-calc"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycap>A</keycap> </para></entry>
-                             <entry><para><guibutton><guibutton>&ldquo;0&rdquo;</guibutton>è<guibutton>&ldquo;9&rdquo;</guibutton></guibutton> </para></entry>
+                             <entry><para><guibutton>Acc</guibutton> </para></entry>
                              <entry><para>Accuracy</para> </entry>
                              <entry><para><xref linkend="gcalctool-set-acc"/></para> </entry>
                            </row>
@@ -2221,7 +2321,7 @@
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>a</keycap> </para></entry>
+                             <entry><para><keycap>b</keycap> </para></entry>
                              <entry><para><guibutton>B</guibutton> </para></entry>
                              <entry><para>Hexadecimal numerals</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
@@ -2233,7 +2333,7 @@
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>C</keycap> </para></entry>
+                             <entry><para><keycap>c</keycap> </para></entry>
                              <entry><para><guibutton>C</guibutton> </para></entry>
                              <entry><para>Hexadecimal numerals</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
@@ -2245,7 +2345,7 @@
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>D</keycap> </para></entry>
+                             <entry><para><keycap>d</keycap> </para></entry>
                              <entry><para><guibutton>D</guibutton> </para></entry>
                              <entry><para>Hexadecimal numerals</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
@@ -2253,7 +2353,7 @@
                            <row valign="top">
                              <entry><para><keycap>E</keycap> </para></entry>
                              <entry><para><guibutton>Exp</guibutton> </para></entry>
-                             <entry><para>ååèåæå</para> </entry>
+                             <entry><para>Exponential</para> </entry>
                              <entry><para><xref linkend="gcalctool-enter-exp"/></para> </entry>
                            </row>
                            <row valign="top">
@@ -2264,7 +2364,7 @@
                            </row>
                            <row valign="top">
                              <entry><para><keycap>F</keycap> </para></entry>
-                             <entry><para><guibutton>E</guibutton> </para></entry>
+                             <entry><para><guibutton>Fun</guibutton> </para></entry>
                              <entry><para>Function</para> </entry>
                              <entry><para><xref linkend="gcalctool-edit-func"/></para> </entry>
                            </row>
@@ -2275,55 +2375,55 @@
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>F</keycap></para></entry>
+                             <entry><para><keycap>G</keycap></para></entry>
                              <entry><para><guibutton>Log</guibutton></para></entry>
                              <entry><para>Common logarithm</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-logs-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>G</keycap></para></entry>
+                             <entry><para><keycap>i</keycap></para></entry>
                              <entry><para><guibutton>Int</guibutton></para></entry>
                              <entry><para>Integer portion</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>i</keycap></para></entry>
-                             <entry><para><guibutton>Int</guibutton></para></entry>
-                             <entry><para>ææéå</para> </entry>
-                             <entry><para><xref linkend="gcalctool-TBL-trig-calc"/></para> </entry>
-                           </row>
-                           <row valign="top">
                              <entry><para><keycap>J</keycap></para></entry>
                              <entry><para><guibutton>Cos</guibutton></para></entry>
-                             <entry><para>äå</para> </entry>
+                             <entry><para>Cosine</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-trig-calc"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycap>K</keycap></para></entry>
+                             <entry><para><guibutton>Sin</guibutton></para></entry>
+                             <entry><para>Sine</para> </entry>
+                             <entry><para><xref linkend="gcalctool-TBL-trig-calc"/></para> </entry>
+                           </row>
+                           <row valign="top">
+                             <entry><para><keycap>L</keycap></para></entry>
                              <entry><para><guibutton>Tan</guibutton></para></entry>
                              <entry><para>Tan</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-trig-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>L</keycap></para></entry>
+                             <entry><para><keycap>l</keycap></para></entry>
                              <entry><para><guibutton>Sln</guibutton></para></entry>
                              <entry><para>Straight-line depreciation</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>æç<guilabel>&ldquo;æå ASCII å&rdquo;</guilabel>çå</keycap></para></entry>
+                             <entry><para><keycap>M</keycap></para></entry>
                              <entry><para><guibutton>Mod</guibutton></para></entry>
                              <entry><para>Modulus Division</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>l</keycap></para></entry>
+                             <entry><para><keycap>m</keycap></para></entry>
                              <entry><para><guibutton>Ctrm</guibutton></para></entry>
                              <entry><para>Compounding term</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>m</keycap></para></entry>
+                             <entry><para><keycap>N</keycap></para></entry>
                              <entry><para><guibutton>Ln</guibutton></para></entry>
                              <entry><para>Natural logarithm</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-logs-calc"/></para> </entry>
@@ -2335,13 +2435,13 @@
                              <entry><para><xref linkend="gcalctool-TBL-logic-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>n</keycap></para></entry>
+                             <entry><para><keycap>P</keycap></para></entry>
                              <entry><para><guibutton>Pmt</guibutton></para></entry>
                              <entry><para>Periodic payment</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>P</keycap></para></entry>
+                             <entry><para><keycap>p</keycap></para></entry>
                              <entry><para><guibutton>Pv</guibutton></para></entry>
                              <entry><para>Present value</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
@@ -2353,8 +2453,8 @@
                              <entry><para><xref linkend="gcalctool-TBL-mem-reg"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>R</keycap></para></entry>
-                             <entry><para><guibutton>1/<replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable></guibutton></para></entry>
+                             <entry><para><keycap>r</keycap></para></entry>
+                             <entry><para><guibutton>1/<replaceable>x</replaceable></guibutton></para></entry>
                              <entry><para>Reciprocal</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
                            </row>
@@ -2365,7 +2465,7 @@
                              <entry><para><xref linkend="gcalctool-TBL-mem-reg"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>S</keycap></para></entry>
+                             <entry><para><keycap>s</keycap></para></entry>
                              <entry><para><guibutton>Sqrt</guibutton></para></entry>
                              <entry><para>Square root</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
@@ -2377,19 +2477,19 @@
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>T</keycap></para></entry>
+                             <entry><para><keycap>t</keycap></para></entry>
                              <entry><para><guibutton>Term</guibutton></para></entry>
                              <entry><para>Payment period</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>t</keycap></para></entry>
+                             <entry><para><keycap>u</keycap></para></entry>
                              <entry><para><guibutton>Abs</guibutton></para></entry>
                              <entry><para>Absolute value</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>u</keycap></para></entry>
+                             <entry><para><keycap>v</keycap></para></entry>
                              <entry><para><guibutton>Fv</guibutton></para></entry>
                              <entry><para>Future value</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
@@ -2401,26 +2501,26 @@
                              <entry><para><xref linkend="gcalctool-TBL-mem-reg"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>X</keycap></para></entry>
+                             <entry><para><keycap>Y</keycap></para></entry>
                              <entry><para><guibutton>Syd</guibutton></para></entry>
                              <entry><para>Sum-of-the-years'-digits depreciation</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-financial-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>]</keycap></para></entry>
-                             <entry><para><replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable><superscript><replaceable>y</replaceable></superscript></para></entry>
+                             <entry><para><keycap>^</keycap></para></entry>
+                             <entry><para><replaceable>x</replaceable><superscript><replaceable>y</replaceable></superscript></para></entry>
                              <entry><para>x to the <replaceable>y</replaceable> power</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>y</keycap></para></entry>
-                             <entry><para><guibutton><replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable>!</guibutton></para></entry>
+                             <entry><para><keycap>!</keycap></para></entry>
+                             <entry><para><guibutton><replaceable>x</replaceable>!</guibutton></para></entry>
                              <entry><para><replaceable>x</replaceable> factorial</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycap>#</keycap> </para></entry>
-                             <entry><para><guibutton>x!</guibutton> </para></entry>
+                             <entry><para><guibutton>Con</guibutton> </para></entry>
                              <entry><para>Constant value</para> </entry>
                              <entry><para><xref linkend="gcalctool-edit-const"/></para> </entry>
                            </row>
@@ -2431,13 +2531,13 @@
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>%</keycap></para></entry>
+                             <entry><para><keycap>&amp;</keycap></para></entry>
                              <entry><para><guibutton>And</guibutton></para></entry>
                              <entry><para>Bitwise AND</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-logic-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para>&amp;</para></entry>
+                             <entry><para><keycap>(</keycap> and <keycap>)</keycap></para></entry>
                              <entry><para><guibutton>(</guibutton> and <guibutton>)</guibutton></para></entry>
                              <entry><para>Parentheses</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
@@ -2473,7 +2573,7 @@
                              <entry><para><xref linkend="gcalctool-TBL-simple-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>/</keycap></para></entry>
+                             <entry><para><keycap>:</keycap></para></entry>
                              <entry><para><guibutton>Frac</guibutton></para></entry>
                              <entry><para>Fractional portion</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
@@ -2485,7 +2585,7 @@
                              <entry><para><xref linkend="gcalctool-TBL-num-manip"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para>&lt;</para></entry>
+                             <entry><para><keycap>=</keycap> or <keycap>Return</keycap></para></entry>
                              <entry><para><guibutton>=</guibutton></para></entry>
                              <entry><para>Calculate a result</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-simple-calc"/></para> </entry>
@@ -2497,55 +2597,55 @@
                              <entry><para><xref linkend="gcalctool-TBL-num-manip"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>&gt;</keycap></para></entry>
+                             <entry><para><keycap>?</keycap></para></entry>
                              <entry><para><guibutton>Rand</guibutton></para></entry>
                              <entry><para>Random number generator</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>?</keycap></para></entry>
-                             <entry><para><replaceable>åæççåèçä&ldquo;çå&rdquo;æåã</replaceable><superscript>2</superscript></para></entry>
+                             <entry><para><keycap>@</keycap></para></entry>
+                             <entry><para><replaceable>x</replaceable><superscript>2</superscript></para></entry>
                              <entry><para>Square</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-adv-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>@</keycap></para></entry>
+                             <entry><para><keycap>[</keycap></para></entry>
                              <entry><para><guibutton>&amp;32</guibutton></para></entry>
                              <entry><para>Get a 32-bit unsigned integer</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-num-manip"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>[</keycap></para></entry>
+                             <entry><para><keycap>]</keycap></para></entry>
                              <entry><para><guibutton>&amp;16</guibutton></para></entry>
                              <entry><para>Get a 16-bit unsigned integer</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-num-manip"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>åæççåèçä&ldquo;çå&rdquo;æåã</keycap></para></entry>
+                             <entry><para><keycap>x</keycap></para></entry>
                              <entry><para><guibutton>Xor</guibutton></para></entry>
                              <entry><para>Bitwise XOR</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-logic-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>^</keycap></para></entry>
+                             <entry><para><keycap>{</keycap></para></entry>
                              <entry><para>e<superscript><replaceable>x</replaceable></superscript></para></entry>
                              <entry><para>e to the <replaceable>x</replaceable> power</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>{</keycap></para></entry>
+                             <entry><para><keycap>|</keycap></para></entry>
                              <entry><para><guibutton>Or</guibutton></para></entry>
                              <entry><para>Bitwise OR</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-logic-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>|</keycap></para></entry>
+                             <entry><para><keycap>}</keycap></para></entry>
                              <entry><para>10<superscript><replaceable>x</replaceable></superscript></para></entry>
                              <entry><para>10 to the <replaceable>x</replaceable> power</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-misc-calc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycap>}</keycap></para></entry>
+                             <entry><para><keycap>~</keycap></para></entry>
                              <entry><para><guibutton>Not</guibutton></para></entry>
                              <entry><para>Bitwise NOT</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-logic-calc"/></para> </entry>
@@ -2564,7 +2664,7 @@
                              <entry><para><xref linkend="gcalctool-TBL-erase-char"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Shift</keycap><keycap>CE</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Shift</keycap><keycap>Delete</keycap></keycombo></para></entry>
                              <entry><para><guibutton>Clr</guibutton></para></entry>
                              <entry><para>Clear</para> </entry>
                              <entry><para><xref linkend="gcalctool-TBL-erase-char"/></para> </entry>
@@ -2573,7 +2673,7 @@
 		  </tgroup>
 		</table>
                 <table id="gcalctool-TBL-keyboard-shortcut-sci-options" frame="all">
-                  <title>Clr</title> 
+                  <title>Quick Reference for Keyboard Shortcuts of <application>gcalctool</application> Scientific Mode Options</title> 
                   <tgroup cols="4" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -2584,7 +2684,7 @@
                                   <entry colname="COLSPEC0">
                                          <para>Keyboard Shortcut</para></entry>
                                   <entry colname="COLSPEC1">
-                                         <para><application>Calculator</application>&ldquo;çåæå&rdquo;éééçåæéåéåè</para></entry>
+                                         <para>Option</para></entry>
                                   <entry colname="COLSPEC2">
                                          <para>Function</para></entry>
                                   <entry colname="COLSPEC3">
@@ -2599,15 +2699,15 @@
                              <entry><para><xref linkend="gcalctool-TBL-trig-type"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Alt</keycap><keycap>a</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Alt</keycap><keycap>b</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Bin</guilabel></para></entry>
-                             <entry><para>B</para></entry>
+                             <entry><para>Set the numeric base to binary.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-num-base"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Alt</keycap><keycap>D</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Alt</keycap><keycap>d</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Dec</guilabel></para></entry>
-                             <entry><para>D</para></entry>
+                             <entry><para>Set the numeric base to decimal.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-num-base"/></para> </entry>
                            </row>
                            <row valign="top">
@@ -2617,15 +2717,15 @@
                              <entry><para><xref linkend="gcalctool-TBL-display-type"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Alt</keycap><keycap>åæççåèçä&ldquo;åç&rdquo;æåã</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Alt</keycap><keycap>g</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Degrees</guilabel></para></entry>
                              <entry><para>Set the trigonometric type to degrees.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-trig-type"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Alt</keycap><keycap>G</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Alt</keycap><keycap>i</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Inv</guilabel></para></entry>
-                             <entry><para>I</para></entry>
+                             <entry><para>Select the inverse option for use with the trigonometric functions.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-trig-options"/></para> </entry>
                            </row>
                            <row valign="top">
@@ -2637,38 +2737,38 @@
                            <row valign="top">
                              <entry><para><keycombo><keycap>Alt</keycap><keycap>o</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Oct</guilabel></para></entry>
-                             <entry><para>O</para></entry>
+                             <entry><para>Set the numeric base to octal.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-num-base"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Alt</keycap><keycap>R</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Alt</keycap><keycap>r</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Radians</guilabel></para></entry>
                              <entry><para>Set the trigonometric type to radians.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-trig-type"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Alt</keycap><keycap>S</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Alt</keycap><keycap>s</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Sci</guilabel></para></entry>
                              <entry><para>Set the display type to scientific format.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-display-type"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Alt</keycap><keycap>åæççåèçä&ldquo;çå&rdquo;æåã</keycap></keycombo></para></entry>
+                             <entry><para><keycombo><keycap>Alt</keycap><keycap>x</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Hex</guilabel></para></entry>
-                             <entry><para>x</para></entry>
+                             <entry><para>Set the numeric base to hexadecimal.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-num-base"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Alt</keycap><keycap>y</keycap></keycombo></para></entry>
                              <entry><para><guilabel>Hyp</guilabel></para></entry>
-                             <entry><para>y</para></entry>
+                             <entry><para>Select the hyperbolic option for use with the trigonometric functions.</para></entry>
                              <entry><para><xref linkend="gcalctool-TBL-trig-options"/></para> </entry>
                            </row>
 			 </tbody>
 		  </tgroup>
 		</table>
                 <table id="gcalctool-TBL-keyboard-shortcut-menu" frame="all">
-                  <title>Hyp</title> 
+                  <title>Quick Reference for Keyboard Shortcuts of <application>gcalctool</application> Menu Items</title> 
                   <tgroup cols="4" colsep="1" rowsep="1">
                          <colspec colname="COLSPEC0" colwidth="50*"/>
                          <colspec colname="COLSPEC1"/>
@@ -2679,7 +2779,7 @@
                                   <entry colname="COLSPEC0">
                                          <para>Keyboard Shortcut</para></entry>
                                   <entry colname="COLSPEC1">
-                                         <para><application>Calculator</application> èåééçåæéåéåè</para></entry>
+                                         <para>Menu Item</para></entry>
                                   <entry colname="COLSPEC2">
                                          <para>Function</para></entry>
                                   <entry colname="COLSPEC3">
@@ -2688,99 +2788,99 @@
                          </thead> 
                          <tbody> 
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>a</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>B</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>b</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Basic </guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Change to Basic mode</para> </entry>
                              <entry><para><xref linkend="gcalctool-basic-mode"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>C</guimenuitem> </menuchoice> </para></entry>
-                             <entry><para>&ldquo;çè&rdquo;</para> </entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>c</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>Edit</guimenu> <guimenuitem>Copy</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para>Copy the current value in the display area to the clipboard</para> </entry>
                              <entry><para><xref linkend="gcalctool-calc-functions"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Ctrl</keycap><keycap>e</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>Show Bitcalculating Extension</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Show Bitcalculating Extension</guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Display the bitcalculation extension</para> </entry>
                              <entry><para><xref linkend="gcalctool-calc-bit-manipulation-ext"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Ctrl</keycap><keycap>f</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>F</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Financial </guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Change to Financial mode</para> </entry>
                              <entry><para><xref linkend="gcalctool-financial-mode"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Ctrl</keycap><keycap>h</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>ååèæäçåååçèåæçååä</guimenu> <guimenuitem>F1</guimenuitem> </menuchoice> </para></entry>
-                             <entry><para>&ldquo;åå&rdquo;</para> </entry>
+                             <entry><para> <menuchoice> <guimenu>Help</guimenu> <guimenuitem>Contents</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para>Display the <application>gcalctool</application> online help </para> </entry>
                              <entry><para><xref linkend="gcalctool-intro"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>G</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>Insert ASCII Value</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>i</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>Edit</guimenu> <guimenuitem>Insert ASCII Value</guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Display the <guilabel>Insert ASCII Value</guilabel> dialog</para> </entry>
                              <entry><para><xref linkend="gcalctool-ins-ascii"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Ctrl</keycap><keycap>k</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>Show Thousands Separator</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Show Thousands Separator</guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Display the thousands separator
 </para> </entry>
                              <entry><para><xref linkend="gcalctool-calc-functions-separator"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>L</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>Left-to-right Precedence</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>l</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Left-to-right Precedence</guimenuitem> </menuchoice> </para></entry>
                              <entry><para> Calculate results using left-to-right precedence</para> </entry>
                              <entry><para><xref linkend="gcalctool-manage-order"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>l</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>M</guimenuitem> </menuchoice> </para></entry>
-                             <entry><para>&ldquo;èå&rdquo;</para> </entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>m</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Memory Registers</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para>Display the <guilabel>Memory Registers</guilabel> window</para> </entry>
                              <entry><para><xref linkend="gcalctool-mem-reg"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Ctrl</keycap><keycap>q</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Calculator</guimenu> <guimenuitem>Q</guimenuitem> </menuchoice> </para></entry>
-                             <entry><para>&ldquo;èçå&rdquo;</para> </entry>
+                             <entry><para> <menuchoice> <guimenu>Calculator</guimenu> <guimenuitem>Quit</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para>Quit the <application>gcalctool</application> application</para> </entry>
                              <entry><para><xref linkend="gcalctool-quit"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>R</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>Arithmetic Precedence</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>r</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Arithmetic Precedence</guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Calculate results using arithmetic precedence</para> </entry>
                              <entry><para><xref linkend="gcalctool-manage-order"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>S</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>S</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>s</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Scientific </guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Change to Scientific mode</para> </entry>
                              <entry><para><xref linkend="gcalctool-scientific-mode"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>T</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>T</guimenuitem> </menuchoice> </para></entry>
-                             <entry><para>&ldquo;èå&rdquo;</para> </entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>t</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>View</guimenu> <guimenuitem>Show Trailing Zeroes</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para>Show trailing zeroes</para> </entry>
                              <entry><para><xref linkend="gcalctool-set-acc"/></para> </entry>
                            </row>
                            <row valign="top">
-                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>u</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>V</guimenuitem> </menuchoice> </para></entry>
-                             <entry><para>&ldquo;çè&rdquo;</para> </entry>
+                             <entry><para><keycombo><keycap>Ctrl</keycap><keycap>v</keycap></keycombo></para></entry>
+                             <entry><para> <menuchoice> <guimenu>Edit</guimenu> <guimenuitem>Paste</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para>Paste the current value in the clipboard to the display area </para> </entry>
                              <entry><para><xref linkend="gcalctool-calc-functions"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Ctrl</keycap><keycap>z</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>Undo</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para> <menuchoice> <guimenu>Edit</guimenu> <guimenuitem>Undo</guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Undo previous action</para> </entry>
                              <entry><para><xref linkend="gcalctool-undo-redo"/></para> </entry>
                            </row>
                            <row valign="top">
                              <entry><para><keycombo><keycap>Shift</keycap><keycap>Ctrl</keycap><keycap>z</keycap></keycombo></para></entry>
-                             <entry><para> <menuchoice> <guimenu>Ctrl</guimenu> <guimenuitem>Redo</guimenuitem> </menuchoice> </para></entry>
+                             <entry><para> <menuchoice> <guimenu>Edit</guimenu> <guimenuitem>Redo</guimenuitem> </menuchoice> </para></entry>
                              <entry><para>Redo an undo'ed action</para> </entry>
                              <entry><para><xref linkend="gcalctool-undo-redo"/></para> </entry>
                            </row>



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