Next
Previous
Contents
Эта функция позволит пользователю вставить настраиваемый заголовок для
документа Linux Documentation Project в файл. Она может быть вызвана
автоматически при открытии нового файла, или может быть вызвана
пользователем.
Эта функция запрашивает у пользователя, пользуясь mini-buffer,
некоторую информацию, часть из которой необходима, а часть нет. not.
Сначала идет заголовок документа. Если ничего не дано, то функция сразу
прекращает выполнение и ничего не вставляет. Затем идет дата, автор, его
электронный адрес и домашняя страница (эти два последних пункта являются
опциональными).
Затем идет запрос имени переводчика документа. Если его нет, то просто
нажмите клавишу Return, и больше запросов не будет. А если
переводчик есть, то вас запросят о его электронном адресе и домашней
странице.
Затем эта функция выводит все в текущий буфер,включая конечно всю
информацию, которую вы ввели и включая также необходимые таги для
краткого содержания и первой главы. В конце он поместит курсор в том
место, где будет набираться краткое содержание.
(defun insert-sgml-header ()
"Inserts the header for a LinuxDoc document"
(interactive)
(let (title author email home translator email-translator
home-translator date starting-point)
(setq title (read-from-minibuffer "Title: "))
(if (> (length title) 0)
(progn
(setq date (read-from-minibuffer "Date: ")
author (read-from-minibuffer "Author: ")
email (read-from-minibuffer "Author e-mail: ")
home (read-from-minibuffer "Author home page: http://")
translator (read-from-minibuffer "Translator: "))
(insert "<!doctype linuxdoc system>\n<article>\n<title>")
(insert title)
(insert "</title>\n<author>\nAuthor: ") (insert author)
(insert "<newline>\n")
(if (> (length email) 0)
(progn
(insert "<htmlurl url=\"mailto:")
(insert email) (insert "\" name=\"") (insert email)
(insert "\"><newline>\n")))
(if (> (length home) 0)
(progn
(insert "<htmlurl url=\"http://")
(insert home) (insert "\" name=\"") (insert home)
(insert "\">\n<newline>")))
(if (> (length translator) 0)
(progn
(setq email-translator (read-from-minibuffer "Translator
e-mail: ")
home-translator (read-from-minibuffer "Translator
home page: http://"))
(insert "Translator : ")
(insert translator)
(insert "<newline>\n")
(if (> (length email-translator) 0)
(progn
(insert "<htmlurl url=\"mailto:")
(insert email-translator) (insert "\" name=\"")
(insert email-translator)
(insert "\"><newline>\n")))
(if (> (length home-translator) 0)
(progn
(insert "<htmlurl url=\"http://")
(insert home-translator) (insert "\" name=\"")
(insert home-translator)
(insert "\"><newline>\n")))))
(insert "</author>\n<date>\n")
(insert date)
(insert "\n</date>\n\n<abstract>\n")
(setq point-beginning (point))
(insert "\n</abstract>\n<toc>\n\n<sect>\n<p>
\n\n\n</sect>\n\n</article>\n")
(goto-char point-beginning)
))))
Next
Previous
Contents