Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 588

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>LinuxDoc+Emacs+Ispell-HOWTO: Una funzione insert-sgml-header </TITLE>
<LINK HREF="LinuxDoc+Emacs+Ispell-HOWTO-6.html" REL=previous>
<LINK HREF="LinuxDoc+Emacs+Ispell-HOWTO.html#toc7" REL=contents>
</HEAD>
<BODY>
Avanti
<A HREF="LinuxDoc+Emacs+Ispell-HOWTO-6.html">Indietro</A>
<A HREF="LinuxDoc+Emacs+Ispell-HOWTO.html#toc7">Indice</A>
<HR>
<H2><A NAME="insert-sgml-header"></A> <A NAME="s7">7. Una funzione <CODE>insert-sgml-header</CODE> </A>   </H2>

<P>   Questa funzione permette all'utente di inserire un header personalizzato in un documento per il Linux Documentation Project all'interno di un file. Pu&ograve; essere richiamata automaticamente quando viene aperto un nuovo file, oppure in modo esplicito dall'utente.
  
<P>   Questa funzione attende un input dell'utente attraverso il <EM>mini-buffer</EM>, per alcune informazioni, di cui alcune sono necessarie, altre invece no.
<P>Per prima cosa il titolo. Se non viene inserito, la funziona esce immediatamente, e niente viene inserito. Segue poi la data, l'autore, la sua email e home-page (le ultime due sono opzionali).
<P>Successivamente c'&egrave; una richiesta per il nome del traduttore. Se non volete inserire niente, basta premere <EM>Invio</EM>, e nessun altra domanda circa un ipotetico traduttore verr&agrave; richiesta. Se invece ne esiste uno, verr&agrave; richiesta la sua email e home-page (come sempre opzionali).
<P>
<P>Questa funzione quindi inserir&agrave; nel file corrente tutte le informazioni da voi inserite, inclusi naturalmente tutti i tag necessari. Inserir&agrave; anche quelli per l'abstract e per il primo capitolo. Infine posizioner&agrave; il cursore dove l'abstract deve essere inserito.
<P>   
<PRE>
(defun insert-sgml-header ()
  "Inserisce gli header per un documento LinuxDoc"
  (interactive)
  (let (title author email home translator email-translator home-translator date 
              starting-point)
    (setq title (read-from-minibuffer "Titolo: "))
    (if (> (length title) 0)
        (progn 
          (setq date (read-from-minibuffer "Data: ")
                author (read-from-minibuffer "Autore: ")
                email (read-from-minibuffer "E-mail autore: ")
                home (read-from-minibuffer "Home page autore: http://")
                translator (read-from-minibuffer "Traduttore: "))
          (insert "&lt;!doctype linuxdoc system>\n&lt;article>\n&lt;title>")
          (insert title)
          (insert "&lt;/title>\n&lt;author>\nAutore: ") (insert author) (insert "&lt;newline>\n")
          (if (> (length email) 0)
              (progn
                (insert "&lt;htmlurl url=\"mailto:")
                (insert email) (insert "\" name=\"") (insert email)
                (insert "\">&lt;newline>\n")))
          (if (> (length home) 0)
              (progn
                (insert "&lt;htmlurl url=\"http://")
                (insert home) (insert "\" name=\"") (insert home)
                (insert "\">\n&lt;newline>")))
          (if (> (length translator) 0)
              (progn
                (setq email-translator (read-from-minibuffer "E-mail traduttore: ")
                      home-translator (read-from-minibuffer "Home page traduttore: http://"))
                (insert "Traduzione : ") 
                (insert translator) 
                (insert "&lt;newline>\n")
                (if (> (length email-translator) 0)
                    (progn 
                      (insert "&lt;htmlurl url=\"mailto:") 
                      (insert email-translator) (insert "\" name=\"") 
                      (insert email-translator)
                      (insert "\">&lt;newline>\n")))
                (if (> (length home-translator) 0)
                    (progn 
                      (insert "&lt;htmlurl url=\"http://") 
                      (insert home-translator) (insert "\" name=\"")
                      (insert home-translator)
                      (insert "\">&lt;newline>\n")))))
          (insert "&lt;/author>\n&lt;date>\n")
          (insert date)
          (insert "\n&lt;/date>\n\n&lt;abstract>\n")
          (setq point-beginning (point))
          (insert "\n&lt;/abstract>\n&lt;toc>\n\n&lt;sect>\n&lt;p>\n\n\n&lt;/sect>\n\n&lt;/article>\n")
          (goto-char point-beginning)
          ))))
 
</PRE>
<HR>
Avanti
<A HREF="LinuxDoc+Emacs+Ispell-HOWTO-6.html">Indietro</A>
<A HREF="LinuxDoc+Emacs+Ispell-HOWTO.html#toc7">Indice</A>
</BODY>
</HTML>