aboutsummaryrefslogtreecommitdiff
path: root/doc/user/emacs.skb
blob: 1cb3c5a9f0c2fa58241bab543712feefcc6ffdf4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
;;; emacs.skb  --  Editing Skribilo programs
;;; -*- coding: iso-8859-1 -*-
;;;
;;; Copyright 2008  Ludovic Court�s <ludo@gnu.org>
;;; Copyright 2001, 2002, 2003, 2004  Manuel Serrano
;;;
;;;
;;; This file is part of Skribilo.
;;;
;;; Skribilo is free software: you can redistribute it and/or modify
;;; it under the terms of the GNU General Public License as published by
;;; the Free Software Foundation, either version 3 of the License, or
;;; (at your option) any later version.
;;;
;;; Skribilo is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with Skribilo.  If not, see <http://www.gnu.org/licenses/>.

;*---------------------------------------------------------------------*/
;*    Editing Skribilo programs                                        */
;*---------------------------------------------------------------------*/
(chapter :title [Editing Skribilo Programs]
   
   (p [Skribilo documents can be typed in.  The ,(tt [outline]) syntax
(see ,(numref :text [Section] :ident "outline-syntax")) can be easily
typed in with any editor, although the Outline and Org modes found in
GNU,(~)Emacs and XEmacs make it more convenient to deal with this
format.  For instance, they allow section contents to be hidden, leaving
only the section headings visible; Org Mode can also highlight forms
that denote emphasis, and provide proper display of Org-Mode-style
hyperlinks (well, not surprisingly).])

   (p [When using the Skribe syntax (see ,(numref :text [Section] :ident
"skribe-syntax")), it is highly recommended to use ,(ref :url
*emacs-url* :text "GNU Emacs") or ,(ref :url *xemacs-url* :text
"XEmacs").  In addition to parentheses matching, these editors provide
syntax highlighting (or ``fontification'') through the Skribe Mode
described below.])

;*---------------------------------------------------------------------*/
;*    Skribe emacs mode                                                */
;*---------------------------------------------------------------------*/
(section :title "Skribe Emacs Mode"

(index "emacs" :note "skribe mode")

(p [The Skribilo distribution contains a minor mode dedicated to Skribe
edition originally written by Manuel Serrano.  This mode provides ,(emph
"fontification") and indentation of Skribe programs.  In this manual, we
present the two most important key bindings specific to this mode:

,(itemize (item [,(color :fg "#007700" (kbd "tab")) indents the current line.])
	  (item [,(color :fg "#007700" (kbd "M-C-q")) indents a whole Skribe
expression.]))])

(p [To use the Skribe/Skribilo Emacs mode, you need to tell Emacs that
when the Emacs Lisp ,(tt "skribe-mode") function is needed it has to
be loaded from the ,(tt "skribe.el") file:])


(disp :verb #t (source :language lisp [
(autoload 'skribe-mode "skribe.el" "Skribe mode." t)]))

(p [The ,(tt "skribe.el") file must in the path described by the Emacs Lisp
,(tt "load-path") variable.])

(p [The ,(code "skribe") mode is a minor mode. It is intended to be
used with a Lisp or Scheme mode. Hence, to use the ,(code "skribe") mode
you will have to use the following Emacs commands:])

(disp :verb #t (source :language lisp [
M-x scheme-mode
M-x skribe-mode
]))))

;;; Local Variables:
;;; ispell-local-dictionary: "american"
;;; End: