aboutsummaryrefslogtreecommitdiffhomepage
path: root/README.devel
blob: bd3238ecb71137e85991b2b757ec455c5c16c08d (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
-*- outline -*-

* Developers Notes for Proof General
====================================

David Aspinall,  March 2000.

$Id$

Notes here about development conventions and compatibility
issues.  Please read if you contribute to Proof General!



** Coding Standards

When writing your modes, please follow the Emacs Lisp Conventions
See the Emacs Lisp reference manual, node Style Tips.


** Using custom library

Please use custom library for all variable declarations, apart from
very low-level variables.  Follow the customize group conventions
laid out in generic/proof-config.el


** Compatibility with different Emacsen

One of the greatest problems in developing Proof General is
maintaining compatibility across different versions of Emacs.

XEmacs is the primary development (and use) platform, but we'd like to
maintain compatibility with FSF Emacs, and the Japanicised versions of
that.

Hopefully one day we may have a proper test suite and mechanism to
test across different versions of Emacs.  For the time being, be care
of the following tips (gathered from experience).

*** Common Lisp macros  -- Japan Emacsen have older versions

 - Use (dolist (var list) body), not (dolist (var list result) body).