home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / pcl / docs.lha / latexinfo / elisp / clisp-fmt.el next >
Encoding:
Text File  |  1992-02-24  |  4.7 KB  |  142 lines

  1. (load "elisp-fmt")
  2.  
  3. (put 'nil 'latexinfo-format 'latexinfo-format-nil)
  4. (defun latexinfo-format-nil ()
  5.   (latexinfo-parse-noarg)
  6.   (insert "nil"))
  7.  
  8. (put 'T  'latexinfo-format 'latexinfo-format-true)
  9. (put 'TRUE 'latexinfo-format 'latexinfo-format-true)
  10. (put 'true 'latexinfo-format 'latexinfo-format-true)
  11. (defun latexinfo-format-true ()
  12.   (latexinfo-parse-noarg)
  13.   (insert "true"))
  14.  
  15. (put 'FALSE 'latexinfo-format 'latexinfo-format-false)
  16. (put 'F 'latexinfo-format 'latexinfo-format-false)
  17. (put 'false 'latexinfo-format 'latexinfo-format-false)
  18. (defun latexinfo-format-false ()
  19.   (latexinfo-parse-noarg)
  20.   (insert "false"))
  21.  
  22. (put 'empty 'latexinfo-format 'latexinfo-format-empty)
  23. (defun latexinfo-format-empty ()
  24.   (latexinfo-parse-noarg)
  25.   (insert "()"))
  26.  
  27. (put '&key 'latexinfo-format 'latexinfo-format-&key)
  28. (defun latexinfo-format-&key ()
  29.   (latexinfo-parse-noarg)
  30.   (insert  "&key"))
  31.  
  32. (put '&optional 'latexinfo-format 'latexinfo-format-optional)
  33. (defun latexinfo-format-optional ()
  34.   (latexinfo-parse-noarg)
  35.   (insert  "&optional"))
  36.  
  37. (put '&rest 'latexinfo-format 'latexinfo-format-&rest)
  38. (defun latexinfo-format-&rest ()
  39.   (latexinfo-parse-noarg)
  40.   (insert  "&rest"))
  41.  
  42. (put 'defconst  'latexinfo-defun-indexing-property 'latexinfo-index-defun)
  43. (put 'defconstx  'latexinfo-defun-indexing-property 'latexinfo-index-defun)
  44.  
  45. (put 'defconst 'latexinfo-deffn-formatting-property
  46.      'latexinfo-format-specialized-defun)
  47. (put 'defconstx 'latexinfo-deffn-formatting-property
  48.      'latexinfo-format-specialized-defun)
  49.  
  50. (put 'defconst 'latexinfo-format 'latexinfo-format-defun)
  51. (put 'defconstx 'latexinfo-format 'latexinfo-format-defunx)
  52. (put 'enddefconst 'latexinfo-format 'latexinfo-end-defun)
  53. (put 'defconst 'latexinfo-defun-type '('defun-type "Constant"))
  54. (put 'defconstx 'latexinfo-defun-type '('defun-type "Constant"))
  55. (put 'defconst 'latexinfo-defun-index 'latexinfo-vindex)
  56. (put 'defconstx 'latexinfo-defun-index 'latexinfo-vindex)
  57.  
  58.  
  59. (defun latexinfo-format-deffn (parsed-args)
  60.   ;; Generalized function-like, variable-like, or generic data-type entity:
  61.   ;; \deffn category name args...
  62.   ;;     In Info, `Category: name ARGS'
  63.   ;; \deftp category name attributes...
  64.   ;; `category name attributes...'       Note: \deftp args in lower case.
  65.   (let ((category (car parsed-args))
  66.         (name (car (cdr parsed-args)))
  67.         (args (cdr (cdr parsed-args))))
  68.     (insert " -- " category ": " name)
  69.     (while args
  70.       (insert " "
  71.           (car args))        ; dont upcase arguments - mike
  72.       (setq args (cdr args)))))
  73.  
  74. (defun latexinfo-format-specialized-defun (parsed-args)
  75.   ;; Specialized function-like or variable-like entity:
  76.   ;; \defun name args           In Info, `Function: Name ARGS'
  77.   ;; \defmac name args          In Info, `Macro: Name ARGS'
  78.   ;; \defvar name               In Info, `Variable: Name'
  79.   ;; Use cdr of command-type to determine category:
  80.   (let ((category (car (cdr command-type)))
  81.         (name (car parsed-args))
  82.         (args (cdr parsed-args)))
  83.     (insert " -- " category ": " name)
  84.     (while args
  85.       (insert " "
  86.           (car args)
  87.           "\n")
  88.       (setq args (cdr args)))))
  89.  
  90. (put 'mopt 'latexinfo-format 'latexinfo-format-mopt)
  91. (defun latexinfo-format-mopt ()
  92.   (insert "[" (latexinfo-parse-arg-discard) "]")
  93.   (goto-char latexinfo-command-start))
  94.  
  95. (put 'mchoice 'latexinfo-format 'latexinfo-format-mchoice)
  96. (defun latexinfo-format-mchoice ()
  97.   (insert "[[" (latexinfo-parse-arg-discard) "]]")
  98.   (goto-char latexinfo-command-start))
  99.  
  100. (put 'mstar 'latexinfo-format 'latexinfo-format-mstar)
  101. (defun latexinfo-format-mstar ()
  102.   (insert "{" (latexinfo-parse-arg-discard) "}*")
  103.   (goto-char latexinfo-command-start))
  104.  
  105. (put 'mplus 'latexinfo-format 'latexinfo-format-mplus)
  106. (defun latexinfo-format-mplus ()
  107.   (insert "{" (latexinfo-parse-arg-discard) "}+")
  108.   (goto-char latexinfo-command-start))
  109.  
  110. (put 'mgroup 'latexinfo-format 'latexinfo-format-mgroup)
  111. (defun latexinfo-format-mgroup ()
  112.   (insert "{" (latexinfo-parse-arg-discard) "}")
  113.   (goto-char latexinfo-command-start))
  114.  
  115. (put 'mor 'latexinfo-format 'latexinfo-format-mor)
  116. (defun latexinfo-format-mor ()
  117.   (latexinfo-parse-noarg)
  118.   (insert "|"))
  119.  
  120. (put 'mind 'latexinfo-format 'latexinfo-format-mind)
  121. (defun latexinfo-format-mind ()
  122.   (insert "v " (latexinfo-parse-arg-discard) )
  123.   (goto-char latexinfo-command-start))
  124.  
  125. ;; Number of arguments
  126. (put 'deffn 'latexinfo-numargs 3)
  127. (put 'deffnx 'latexinfo-numargs 3)
  128. (put 'defun 'latexinfo-numargs 2)
  129. (put 'defunx 'latexinfo-numargs 2)
  130. (put 'defmac 'latexinfo-numargs 2)
  131. (put 'defmacx 'latexinfo-numargs 2)
  132. (put 'defspec 'latexinfo-numargs 2)
  133. (put 'defspecx 'latexinfo-numargs 2)
  134. (put 'defvr 'latexinfo-numargs 2)
  135. (put 'defvrx 'latexinfo-numargs 2)
  136. (put 'defvar 'latexinfo-numargs 1)
  137. (put 'defvarx 'latexinfo-numargs 1)
  138. (put 'defconst 'latexinfo-numargs 1)
  139. (put 'defconstx 'latexinfo-numargs 1)
  140.  
  141. (provide 'clisp-fmt)
  142.