;;; doc.el --- AUCTeX style for `doc.sty'
-;; Copyright (C) 2004, 2008 Free Software Foundation, Inc.
+;; Copyright (C) 2004, 2008, 2016 Free Software Foundation, Inc.
;; Author: Frank Küster <frank@kuesterei.ch>
;; Maintainer: auctex-devel@gnu.org
(defun LaTeX-env-no-comment (environment)
"Insert ENVIRONMENT and make sure there is no commented empty line inside."
- (LaTeX-insert-environment environment)
+ (LaTeX-insert-environment environment
+ (when (string-equal environment "macro")
+ (let ((macroname (TeX-read-string
+ (TeX-argument-prompt nil nil "Macro")
+ TeX-esc)))
+ (format "{%s}" macroname))))
(unless (TeX-active-mark)
(when (save-excursion
(beginning-of-line)
(defun LaTeX-doc-after-insert-macrocode (env start end)
"Make sure the macrocode environment is properly formatted after insertion."
- (when (TeX-member env '("macrocode" "macrocode*") 'string-equal)
+ (when (TeX-member env '("macro" "macrocode" "macrocode*") 'string-equal)
(save-excursion
(goto-char end)
(skip-chars-backward " \t")
"doc"
(lambda ()
(add-to-list (make-local-variable 'LaTeX-indent-environment-list)
- '("macrocode" current-indentation))
+ '("macrocode" current-indentation) t)
(add-to-list 'LaTeX-indent-environment-list
- '("macrocode*" current-indentation))
+ '("macrocode*" current-indentation) t)
+ (add-to-list 'LaTeX-indent-environment-list
+ '("macro" current-indentation) t)
(add-hook 'LaTeX-after-insert-env-hooks 'LaTeX-doc-after-insert-macrocode
nil t)
(LaTeX-add-environments
"theglossary"
'("macrocode" LaTeX-env-no-comment)
'("macrocode*" LaTeX-env-no-comment)
- '("macro" "Macro"))
+ '("macro" LaTeX-env-no-comment))
(TeX-add-symbols
"EnableCrossrefs"
"DisableCrossrefs"
- "DoNotIndex"
+ '("DoNotIndex" t)
"DontCheckModules"
"CheckModules"
"Module"
- '("DescribeMacro" "Macro")
+ '("DescribeMacro" (TeX-arg-eval
+ (lambda ()
+ (let ((name (TeX-read-string
+ (TeX-argument-prompt optional nil "Macro")
+ TeX-esc)))
+ (format "%s" name)))))
'("DescribeEnv" "Environment")
"verbatim"
"verb"
- "parg"
- "oarg"
- "marg"
- "meta"
- "cmd"
+ '("parg" "Argument")
+ '("oarg" "Argument")
+ '("marg" "Argument")
+ '("meta" "Text")
+ '("cs" "Name")
+ '("cmd" (TeX-arg-eval
+ (lambda ()
+ (let ((name (TeX-read-string
+ (TeX-argument-prompt optional nil "Name")
+ TeX-esc)))
+ (format "%s" name)))))
"makelabel"
- "MacroFont"
- "MacroFont"
- "AltMacroFont"
- "AltMacroFont"
+ '("MacroFont" t)
+ '("AltMacroFont" t)
"PrintMacroName"
"PrintDescribeMacro"
"PrintDescribeEnv"
"GlossaryParms"
"PrintChanges"
"AlsoImplementation"
- "StopEventually"
+ '("StopEventually" t)
"OnlyDescription"
"Finale"
"IndexInput"
"CodelineIndex"
"PageIndex"
"theCodelineNo"
- "theCodelineNo"
"DocstyleParms"
"MakePercentIgnore"
"MakePercentComment"
- "DocInput"
- "DocInclude"
+ '("DocInput"
+ (TeX-arg-eval
+ (lambda ()
+ (let ((file (file-relative-name
+ (read-file-name
+ "File to input: " nil nil nil nil
+ (lambda (x)
+ (string-match "\\.fdd$\\|\\.dtx$" x)))
+ (TeX-master-directory))))
+ (format "%s" file)))))
+ '("DocInclude"
+ (TeX-arg-eval
+ (lambda ()
+ (let ((file (file-relative-name
+ (read-file-name
+ "File to include: " nil nil nil nil
+ (lambda (x)
+ (string-match "\\.fdd$\\|\\.dtx$" x)))
+ (TeX-master-directory))))
+ (format "%s" file)))))
"GetFileInfo"
"filename"
"fileinfo")
- (TeX-run-style-hooks "shortvrb"))
+ (TeX-run-style-hooks "shortvrb")
+ (LaTeX-add-lengths "MacrocodeTopsep" "MacroTopsep" "MacroIndent"))
LaTeX-dialect)
;; Local Variables: