/[emacs]/emacs/lisp/calc/calc-lang.el
ViewVC logotype

Diff of /emacs/lisp/calc/calc-lang.el

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by walters, Wed Nov 14 09:04:57 2001 UTC revision 1.3 by walters, Mon Nov 19 07:35:09 2001 UTC
# Line 1  Line 1 
1  ;; Calculator for GNU Emacs, part II [calc-lang.el]  ;;; calc-lang.el --- calc language functions
2    
3  ;; Copyright (C) 1990, 1991, 1992, 1993, 2001 Free Software Foundation, Inc.  ;; Copyright (C) 1990, 1991, 1992, 1993, 2001 Free Software Foundation, Inc.
4  ;; Written by Dave Gillespie, daveg@synaptics.com.  
5    ;; Author: David Gillespie <daveg@synaptics.com>
6    ;; Maintainer: Colin Walters <walters@debian.org>
7    
8  ;; This file is part of GNU Emacs.  ;; This file is part of GNU Emacs.
9    
# Line 19  Line 22 
22  ;; file named COPYING.  Among other things, the copyright notice  ;; file named COPYING.  Among other things, the copyright notice
23  ;; and this notice must be preserved on all copies.  ;; and this notice must be preserved on all copies.
24    
25    ;;; Commentary:
26    
27    ;;; Code:
28    
29    
30  ;; This file is autoloaded from calc-ext.el.  ;; This file is autoloaded from calc-ext.el.
# Line 52  Line 58 
58    (interactive)    (interactive)
59    (calc-wrapper    (calc-wrapper
60     (calc-set-language nil)     (calc-set-language nil)
61     (message "Normal language mode.")))     (message "Normal language mode")))
62    
63  (defun calc-flat-language ()  (defun calc-flat-language ()
64    (interactive)    (interactive)
65    (calc-wrapper    (calc-wrapper
66     (calc-set-language 'flat)     (calc-set-language 'flat)
67     (message "Flat language mode (all stack entries shown on one line).")))     (message "Flat language mode (all stack entries shown on one line)")))
68    
69  (defun calc-big-language ()  (defun calc-big-language ()
70    (interactive)    (interactive)
71    (calc-wrapper    (calc-wrapper
72     (calc-set-language 'big)     (calc-set-language 'big)
73     (message "\"Big\" language mode.")))     (message "\"Big\" language mode")))
74    
75  (defun calc-unformatted-language ()  (defun calc-unformatted-language ()
76    (interactive)    (interactive)
77    (calc-wrapper    (calc-wrapper
78     (calc-set-language 'unform)     (calc-set-language 'unform)
79     (message "Unformatted language mode.")))     (message "Unformatted language mode")))
80    
81    
82  (defun calc-c-language ()  (defun calc-c-language ()
83    (interactive)    (interactive)
84    (calc-wrapper    (calc-wrapper
85     (calc-set-language 'c)     (calc-set-language 'c)
86     (message "`C' language mode.")))     (message "`C' language mode")))
87    
88  (put 'c 'math-oper-table  (put 'c 'math-oper-table
89    '( ( "u+"    ident         -1 1000 )    '( ( "u+"    ident         -1 1000 )
# Line 139  Line 145 
145     (calc-set-language 'pascal n)     (calc-set-language 'pascal n)
146     (message (if (and n (/= n 0))     (message (if (and n (/= n 0))
147                  (if (> n 0)                  (if (> n 0)
148                      "Pascal language mode (all uppercase)."                      "Pascal language mode (all uppercase)"
149                    "Pascal language mode (all lowercase).")                    "Pascal language mode (all lowercase)")
150                "Pascal language mode."))))                "Pascal language mode"))))
151    
152  (put 'pascal 'math-oper-table  (put 'pascal 'math-oper-table
153    '( ( "not"   calcFunc-lnot -1 1000 )    '( ( "not"   calcFunc-lnot -1 1000 )
# Line 201  Line 207 
207     (calc-set-language 'fortran n)     (calc-set-language 'fortran n)
208     (message (if (and n (/= n 0))     (message (if (and n (/= n 0))
209                  (if (> n 0)                  (if (> n 0)
210                      "FORTRAN language mode (all uppercase)."                      "FORTRAN language mode (all uppercase)"
211                    "FORTRAN language mode (all lowercase).")                    "FORTRAN language mode (all lowercase)")
212                "FORTRAN language mode."))))                "FORTRAN language mode"))))
213    
214  (put 'fortran 'math-oper-table  (put 'fortran 'math-oper-table
215    '( ( "u/"    (math-parse-fortran-vector) -1 1 )    '( ( "u/"    (math-parse-fortran-vector) -1 1 )
# Line 251  Line 257 
257  (put 'fortran 'math-input-filter 'calc-input-case-filter)  (put 'fortran 'math-input-filter 'calc-input-case-filter)
258  (put 'fortran 'math-output-filter 'calc-output-case-filter)  (put 'fortran 'math-output-filter 'calc-output-case-filter)
259    
260    (defvar math-parsing-fortran-vector nil)
261  (defun math-parse-fortran-vector (op)  (defun math-parse-fortran-vector (op)
262    (let ((math-parsing-fortran-vector '(end . "\000")))    (let ((math-parsing-fortran-vector '(end . "\000")))
263      (prog1      (prog1
# Line 266  Line 273 
273                exp-data "\000")                exp-data "\000")
274          x)          x)
275      (throw 'syntax "Unmatched closing `/'")))      (throw 'syntax "Unmatched closing `/'")))
 (setq math-parsing-fortran-vector nil)  
276    
277  (defun math-parse-fortran-subscr (sym args)  (defun math-parse-fortran-subscr (sym args)
278    (setq sym (math-build-var-name sym))    (setq sym (math-build-var-name sym))
# Line 283  Line 289 
289     (calc-set-language 'tex n)     (calc-set-language 'tex n)
290     (message (if (and n (/= n 0))     (message (if (and n (/= n 0))
291                  (if (> n 0)                  (if (> n 0)
292                      "TeX language mode with \\hbox{func}(\\hbox{var})."                      "TeX language mode with \\hbox{func}(\\hbox{var})"
293                    "TeX language mode with \\func{\\hbox{var}}.")                    "TeX language mode with \\func{\\hbox{var}}")
294                "TeX language mode."))))                "TeX language mode"))))
295    
296  (put 'tex 'math-oper-table  (put 'tex 'math-oper-table
297    '( ( "u+"       ident            -1 1000 )    '( ( "u+"       ident            -1 1000 )
# Line 402  Line 408 
408    (interactive "P")    (interactive "P")
409    (calc-wrapper    (calc-wrapper
410     (calc-set-language 'eqn)     (calc-set-language 'eqn)
411     (message "Eqn language mode.")))     (message "Eqn language mode")))
412    
413  (put 'eqn 'math-oper-table  (put 'eqn 'math-oper-table
414    '( ( "u+"       ident            -1 1000 )    '( ( "u+"       ident            -1 1000 )
# Line 515  Line 521 
521    (interactive)    (interactive)
522    (calc-wrapper    (calc-wrapper
523     (calc-set-language 'math)     (calc-set-language 'math)
524     (message "Mathematica language mode.")))     (message "Mathematica language mode")))
525    
526  (put 'math 'math-oper-table  (put 'math 'math-oper-table
527    '( ( "[["    (math-read-math-subscr) 250 -1 )    '( ( "[["    (math-read-math-subscr) 250 -1 )
# Line 628  Line 634 
634    (interactive)    (interactive)
635    (calc-wrapper    (calc-wrapper
636     (calc-set-language 'maple)     (calc-set-language 'maple)
637     (message "Maple language mode.")))     (message "Maple language mode")))
638    
639  (put 'maple 'math-oper-table  (put 'maple 'math-oper-table
640    '( ( "matrix" ident        -1  300 )    '( ( "matrix" ident        -1  300 )

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26