##// END OF EJS Templates
Copying CodeMirror's python mode into place for our ipython mode.
Copying CodeMirror's python mode into place for our ipython mode.

File last commit:

r10407:f6bdcd19
r10415:66de4c53
Show More
CONTRIBUTING.md
72 lines | 3.1 KiB | text/x-minidsrc | MarkdownLexer

How to contribute

Getting help ^

Community discussion, questions, and informal bug reporting is done on the
CodeMirror Google group.

Submitting bug reports ^

The preferred way to report bugs is to use the
GitHub issue tracker. 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 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, enter it there, press save, and
    include the resulting link in your bug report.

Contributing code ^

  • Make sure you have a GitHub Account
  • Fork CodeMirror
    (how to fork a repo)
  • Make your changes
  • If your changes are easy to test or likely to regress, add tests.
    Tests for the core go into test/test.js, some modes have their own
    test suite under mode/XXX/test.js. Feel free to add new test
    suites to modes that don't have one yet (be sure to link the new
    tests into test/index.html).
  • Follow the general code style of the rest of the project (see
    below). Run bin/lint to verify that the linter is happy.
  • Make sure all tests pass. Visit test/index.html in your browser to
    run them.
  • Submit a pull request
    (how to create a pull request)

Coding standards

  • 2 spaces per indentation level, no tabs.
  • Include semicolons after statements.
  • Note that the linter (bin/lint) which is run after each commit
    complains about unused variables and functions. Prefix their names
    with an underscore to muffle it.