From 02fdac636a8833bcee99ad6d27d56c444f22c304 Mon Sep 17 00:00:00 2001 From: Brandon Frohs <bfrohs@gmail.com> Date: Mon, 10 Dec 2012 00:21:16 -0500 Subject: [PATCH] Add contributing guidelines See https://github.com/blog/1184-contributing-guidelines --- CONTRIBUTING.md | 80 +++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 5 ++-- 2 files changed, 83 insertions(+), 2 deletions(-) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..d3e5c5d5 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,80 @@ +# How to contribute + +- [Getting help](#getting-help-) +- [Submitting bug reports](#submitting-bug-reports-) +- [Contributing code](#contributing-code-) + +## Getting help [^](#how-to-contribute) + +Community discussion, questions, and informal bug reporting is done on the +[CodeMirror Google group](http://groups.google.com/group/codemirror). + +## Submitting bug reports [^](#how-to-contribute) + +The preferred way to report bugs is to use the +[GitHub issue tracker](http://github.com/marijnh/CodeMirror/issues). Before +reporting a bug, read these pointers. + +**Note:** The issue tracker is for *bugs*, not requests for help. Questions +should be asked on the +[CodeMirror Google group](http://groups.google.com/group/codemirror) instead. + +### Reporting bugs effectively + +- CodeMirror is maintained by volunteers. They don't owe you anything, so be + polite. Reports with an indignant or belligerent tone tend to be moved to the + bottom of the pile. + +- Include information about **the browser in which the problem occurred**. Even + if you tested several browsers, and the problem occurred in all of them, + mention this fact in the bug report. Also include browser version numbers and + the operating system that you're on. + +- Mention which release of CodeMirror you're using. Preferably, try also with + the current development snapshot, to ensure the problem has not already been + fixed. + +- Mention very precisely what went wrong. "X is broken" is not a good bug + report. What did you expect to happen? What happened instead? Describe the + exact steps a maintainer has to take to make the problem occur. We can not + fix something that we can not observe. + +- If the problem can not be reproduced in any of the demos included in the + CodeMirror distribution, please provide an HTML document that demonstrates + the problem. The best way to do this is to go to + [jsbin.com](http://jsbin.com/ihunin/edit), enter it there, press save, and + include the resulting link in your bug report. + +## Contributing code [^](#how-to-contribute) + +- Make sure you have a [GitHub Account](https://github.com/signup/free) +- Fork [CodeMirror](https://github.com/marijnh/CodeMirror/) + ([how to fork a repo](https://help.github.com/articles/fork-a-repo)) +- Make your changes + - If your change affects highlighting for one of the modes, please [add (or + change) tests](#adding-mode-highlighting-tests) for the changes. If the mode + doesn't already have highlighting tests, you *aren't* required to add any. +- Test your changes + -Visit `/path-to-code/test/index.html` to test your code. *All tests should + pass*. +- Submit a pull request +([how to create a pull request](https://help.github.com/articles/fork-a-repo)) + +### Adding mode highlighting tests + +- Create a `test.js` file in the corresponding mode directory + ([example](https://github.com/marijnh/CodeMirror/blob/master/mode/markdown/test.js)) +- Add script tags to `/test/index.html` to include the formatting code and + as well as the tests. +- Run the tests! + +### Code formatting standards + +- 2 spaces (no tabs) +- Wrap to 80 characters when possible (unless it affects readability negatively) +- No trailing whitespace + - Blank lines should be indented as if there *is* text on them +- Spacing + - `function someFunction(someVar, someOtherVar) {` + - `if (someVar === true) doThis(someVar, someOtherVar);` + - `if (!someVar || someOtherVar === 0) {` diff --git a/README.md b/README.md index 8ed9871a..3e87272f 100644 --- a/README.md +++ b/README.md @@ -4,5 +4,6 @@ CodeMirror is a JavaScript component that provides a code editor in the browser. When a mode is available for the language you are coding in, it will color your code, and optionally help with indentation. -The project page is http://codemirror.net -The manual is at http://codemirror.net/doc/manual.html +The project page is http://codemirror.net +The manual is at http://codemirror.net/doc/manual.html +The contributing guidelines are in the CONTRIBUTING.md file -- GitLab