Editors/IDEs

Editors and IDEs are often a source of debate, fascination, and productivity for developers. Rather than argue about which one is better, let's use this space to share what useful features each editor offers, how to get those features set up, and how to add those features to your own favorite editing environment.

Feature Matrix

: Feature available by default

: Feature available but requires configuration

: Feature not available

Click on a or  to go to the instructions for that feature. Add a new feature by using (i), selecting it, and then using Ctrl+K (Cmd+K on mac) to add a link around it.

 

 

 

PyCharm

Vim

SublimeText3

Emacs

Atom

VSCode

 

 

 

PyCharm

Vim

SublimeText3

Emacs

Atom

VSCode

Python

 

 

 

 

 

 

 

 

 

 

 

 

Editing

 

 

 

 

 

Syntax Highlighting

Jump to function definition

 

Jump to variable definition

 

 

Jump to class definition

 

Find all calls of a function

 

 

Search for string (project)

 

Search for string (file)

Search for a string in comments

 

 

 

 

 

Search for a string in code

 

 

 

 

 

Jump to file (fuzzy search)

 

Get a link on Github for the corresponding highlighted lines

 

 

Linting

Use pylint settings for edx-platform

 

Use pep8 settings for edx-platform

 

Debugging

 

Set a breakpoint

 

 

Add a breakpoint while debugging

 

 

 

Remote debugging of devstack

 

 

 

 

Testing

Run all tests

 

 

 

Run tests for a file

 

 

 

JS

Editing/Linting

Syntax Highlighting

 

Use ESLint settings

 

SASS

Editing/Linting

Syntax Highlighting

 

 

Use Stylelint settings

 

JSON

Editing

Syntax Highlighting

 

 

XML

Editing

Syntax Highlighting

 

 

Bash

Editing

Syntax Highlighting

 

 

 

Yaml

Editing

Syntax Highlighting

 

 

 

Ansible

Editing

Syntax Highlighting

 

 

Ruby

Editing

Syntax Highlighting

 

 

PHP

Editing

Syntax Highlighting