aboutsummaryrefslogtreecommitdiff
path: root/doc/user/emacs.skb
blob: 1255decb9aa33ff70a734567d9e5e93946eb5661 (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
;;; emacs.skb  --  Editing Skribe programs
;;;
;;; Copyright 2001, 2002, 2003, 2004  Manuel Serrano
;;;
;;;
;;; This program 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 2 of the License, or
;;; (at your option) any later version.
;;;
;;; This program 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 this program; if not, write to the Free Software
;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
;;; USA.

;*---------------------------------------------------------------------*/
;*    Editing Skribe programs                                          */
;*---------------------------------------------------------------------*/
(chapter :title "Editing Skribe Programs" (p [
Skribe sources can be automatically generated from
,(ref :url *texinfo-url* :text "Texinfo") by the ,(tt "skribeinfo") compiler.
They can also be typed in. For this task, it is highly recommended to
use ,(ref :url *emacs-url* :text "GNU Emacs") or 
,(ref :url *xemacs-url* :text "Xemacs").
These editors provide parentheses matching and Skribe expressions
handling.])

;*---------------------------------------------------------------------*/
;*    Skribe emacs mode                                                */
;*---------------------------------------------------------------------*/
(section :title "Skribe Emacs mode" [
,(index "emacs" :note "skribe mode")

The Skribe distribution contains a minor mode dedicated to
Skribe edition. 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 [In order to install the Skribe emacs mode, you need to specify 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 [
ESC-x: scheme-mode
ESC-x: skribe-mode
]))]))