Mercurial > emacs
comparison CONTRIBUTE @ 71619:fc0f241e3ff8
Much rewrite.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 05 Jul 2006 00:43:21 +0000 |
parents | e4b43205e213 |
children | 2abae690629b |
comparison
equal
deleted
inserted
replaced
71618:e67545d6fa09 | 71619:fc0f241e3ff8 |
---|---|
1 | 1 |
2 Contributing to Emacs | 2 Contributing to Emacs |
3 | 3 |
4 Emacs is a collaborative project and one which wants to encourage new | 4 Emacs is a collaborative project and we encourage contributions from |
5 development. You may wish to fix Emacs bugs, improve testing, port | 5 anyone and everyone. If you want to contribute in the way that will |
6 Emacs to a new platform, update documentation, add new Emacs features, | 6 help us most, we recommend (1) fixing reported bugs and (2) |
7 and the like. To help with this, there is a lot of documentation | 7 implementing the feature ideas in etc/TODO. However, if you think of |
8 available. In addition to the user guide and Lisp Reference Manual in | 8 new features to add, please suggest them too -- we might like your |
9 the Emacs distribution, the Emacs web pages also contain much | 9 idea. Porting to new platforms is also useful, when there is a new |
10 information. | 10 platform, but that is not common nowadays. |
11 | |
12 For documentation on how to develop Emacs changes, refer to the Emacs | |
13 Manual and the Emacs Lisp Reference Manual (both included in the Emacs | |
14 distribution). The web pages in http://www.gnu.org/software/emacs | |
15 contain additional information. | |
11 | 16 |
12 You may also want to submit your change so that can be considered for | 17 You may also want to submit your change so that can be considered for |
13 inclusion in a future version of Emacs (see below). | 18 inclusion in a future version of Emacs (see below). |
14 | 19 |
15 If you don't feel up to hacking Emacs, there are still plenty of ways to | 20 If you don't feel up to hacking Emacs, there are many other ways to |
16 help! You can answer questions on the mailing lists, write | 21 help. You can answer questions on the mailing lists, write |
17 documentation, find bugs, create a Emacs related website (contribute to | 22 documentation, find and report bugs, contribute to the Emacs web |
18 the official Emacs web site), or create a Emacs related software | 23 pages, or develop a package that works with Emacs. |
19 package. We welcome all of the above and feel free to ask on the Emacs | |
20 mailing lists if you are looking for feedback or for people to review a | |
21 work in progress. | |
22 | 24 |
23 Ref: http://www.gnu.org/software/emacs/ | 25 Here are some style and legal conventions for contributors to Emacs: |
24 | |
25 Finally, there are certain legal requirements and style issues which | |
26 all contributors need to be aware of: | |
27 | 26 |
28 | 27 |
29 o Coding Standards | 28 o Coding Standards |
30 | 29 |
31 All contributions must conform to the GNU Coding Standard. | 30 Contributed code should follow the GNU Coding Standard. |
32 Submissions which do not conform to the standards will be | 31 If it doesn't, we'll need to find someone to fix the code |
33 returned with a request to reformat the changes. | 32 before we can use it. |
34 | 33 |
35 Emacs has certain additional coding requirements. | 34 Emacs has certain additional style and coding conventions. |
36 | 35 |
37 Ref: http://www.gnu.org/prep/standards_toc.html | 36 Ref: http://www.gnu.org/prep/standards_toc.html |
38 Ref: Standards Info Manual | 37 Ref: Standards Info Manual |
39 | 38 |
40 | 39 |
41 o Copyright Assignment | 40 o Copyright Assignment |
42 | 41 |
43 Before we can accept code contributions from you, we need a | 42 We can accept small changes without legal papers, and for |
44 copyright assignment form filled out and filed with the FSF. | 43 medium-size changes a copyright disclaimer is ok too. Toa |
44 accept substantial contributions from you, we need a copyright | |
45 assignment form filled out and filed with the FSF. | |
45 | 46 |
46 Contact us via the Emacs mailing list to obtain the relevant | 47 Contact us at emacs-devel@gnu.org to obtain the relevant |
47 forms. | 48 forms. |
48 | |
49 Small changes can be accepted without a copyright assignment | |
50 form on file. | |
51 | 49 |
52 | 50 |
53 o Getting the Source Code | 51 o Getting the Source Code |
54 | 52 |
55 The latest version of Emacs can be downloaded using CVS or Arch | 53 The latest version of Emacs can be downloaded using CVS or |
56 from the Savannah web site. It is important that you submit | 54 Arch from the Savannah web site. It is important to write |
57 your patch using this version, as any bug in a released version | 55 your patch based this version; if you start from an older |
58 of Emacs may already be fixed. It also makes it easier for | 56 version, your patch may be outdated when you write it. |
59 others to test your patch. | |
60 | 57 |
61 Ref: http://savannah.gnu.org/projects/emacs | 58 Ref: http://savannah.gnu.org/projects/emacs |
62 | 59 |
63 | 60 |
64 o Submitting Patches | 61 o Submitting Patches |
92 and send it to emacs-pretest-bug@gnu.org or emacs-devel@gnu.org. | 89 and send it to emacs-pretest-bug@gnu.org or emacs-devel@gnu.org. |
93 All subsequent discussion should also be sent to the mailing | 90 All subsequent discussion should also be sent to the mailing |
94 list. | 91 list. |
95 | 92 |
96 | 93 |
97 o Please read your patch before submitting it. | 94 o Please reread your patch before submitting it. |
98 | 95 |
99 A patch containing several unrelated changes reformats will be | 96 |
100 returned with a request to send them separately. | 97 o If you send several unrelated changes together, we will |
98 ask you to separate them so we can consider each of the changes | |
99 by itself. | |
101 | 100 |
102 | 101 |
103 o Supplemental information for Emacs Developers: | 102 o Supplemental information for Emacs Developers: |
104 | 103 |
105 If you wish to contribute to Emacs on a regular basis then you | 104 Once you become a frequent contributor to Emacs, we can |
106 may be given write access to the CVS repository. | 105 consider giving you write access to the CVS repository. |
107 | 106 |
108 Discussion about Emacs development takes place on | 107 Discussion about Emacs development takes place on |
109 emacs-devel@gnu.org. | 108 emacs-devel@gnu.org. |
110 | 109 |
111 Think carefully about whether your change requires updating the | 110 Think carefully about whether your change requires updating the |
114 | 113 |
115 The best way to understand Emacs Internals is to read the code | 114 The best way to understand Emacs Internals is to read the code |
116 but the nodes "Tips" and "GNU Emacs Internals" in the Appendix | 115 but the nodes "Tips" and "GNU Emacs Internals" in the Appendix |
117 of the Emacs Lisp Reference Manual may also help. | 116 of the Emacs Lisp Reference Manual may also help. |
118 | 117 |
119 The file DEBUG describes how to debug Emacs. | 118 The file DEBUG describes how to debug Emacs bugs. |
120 | 119 |
121 Avoid using `defadvice' or `eval-after-load' for lisp | 120 Avoid using `defadvice' or `eval-after-load' for Lisp |
122 code to be included in Emacs. | 121 code to be included in Emacs. |