• [PyCharm IDE]
 
Skip to end of metadata
Go to start of metadata

Editor

  • Error Indication
  • Auto-editing
  • Auto-formatting
  • Line/Block comments
  • Join lines
  • Reflow Paragraph
  • Language injections (language mixtures)
  • Editor Tabs/Window Splits/Pin-unpin panels and windows
  • Syntax highlighting for supported languages
  • Brace matching
  • Mark occurrences
  • Structural code folding
  • Configurable live code snippets/templates with abbreviations
  • Smart indentation
  • Code style settings
  • File associations
  • Diff/Merge tool
  • TODO comments/bookmarks
  • File encoding recognition
  • Emmet support
  • Macroses

Code Navigation

  • Goto Declaration (Ctrl-click, Ctrl-B)
  • Show Implementations (Ctrl-Shift-I)
  • Goto Class (Ctrl-N)
  • Goto File
  • Goto Symbol (Ctrl-Alt-Shift-N)
  • Class Hierarchy (Ctrl-H)
  • Find Usages (Alt-F7)
  • Structure View, File Structure Popup (Ctrl-F12)
  • Goto Implementations (Ctrl-Alt-B)
  • Goto Super (Ctrl-U)
  • Goto Method
  • Line markers for inheritors and super methods

Coding Assistance

  • Code Completion based on static analysis and runtime type information (Ctrl-Space)
    • Completion of known names
    • Completion of class members (if type is known)
    • Completion in import statements
    • Keyword completion
    • Completion of keyword parameters in method calls
  • Whole project completion (Ctrl-Alt-Space)
  • Auto-import (Alt-Enter)
  • Optimize Imports
  • Parameter Info (Ctrl-P)
  • Quick Documentation (Ctrl-Q)
  • Create Method from Usage
  • Create Field from Usage
  • Create Field from Constructor Parameter
  • Override Methods (Ctrl-O)
  • Select Word (Ctrl-W)
  • Live templates
  • Auto-indent and code formatter
  • Surround With (Ctrl-Alt-T)
  • Move Statement (Ctrl-Shift-Up/Down)
  • Complete statement (Ctrl-Shift-Enter)
  • Python version compliance checks 

Refactorings

  • Rename
  • Extract Method
  • Extract Parameter
  • Extract Variable
  • Extract Constant
  • Extract Field
  • Pull Up
  • Push Down
  • Local inline
  • Move
  • Invert Boolean
  • Replace Duplicates
  • Convert static method to function
  • Convert method to property
  • Extract Superclass
  • In-place refactoring
  • ...

Inspections and Error Highlighting

  • Highlighting of escape sequences in string literals
  • On-the-fly error highlighting
  • Highlighting of built-in identifiers and predefined method names
  • Syntax errors
  • Method calls with mismatched parameters
  • Unresolved references
  • 'self' as first parameter in class methods
  • String formatting with mismatched parameters
  • Unreachable code
  • Quick definition / documentation view
  • External documentation view
  • Auto-generation of a docstring stub
  • Quick-fixes
  • Intentions for supported languages
  • Unnecessary semicolon
  • python code in docstrings analysis
  • Code quality tools for Javascript
  • PEP-8 integration
  • 3rd Party Library Support 
    intentions
  • ...

Code/Test Runner

  • Regular run/rerun
  • Debug mode
  • Run/Debug configurations
  • REPL
  • Graphical test runner
  • run test file, a single test class, a method, or all tests in a folder
  • testunit
  • py.test
  • doctest support
  • nosetest
  • attest
  • simple test-code navigation
  • Code coverage analysis
  • Coverage viewing tool

Debugger

  • Highly configurable Powerful Graphical Debugger
  • Supports Python, Django, Javascript
  • Remote debugging (remote server debugger)
  • Multithread/Multiprocess debug
  • Debug console
  • Breakpoints (configurable)
  • Stepping
  • Frames
  • Watches
  • Evaluate expressions

Version Control Integration

  • Mercurial
  • Git
  • Subversion
  • CVS
  • Perforce
  • Diff/Merge tool
  • Revision History
  • Commit Changes
  • ...

Project management

  • Empty project
  • Django project
  • Google App Engine project
  • Flask project
  • Client-side projects(HTML5 Boilerplate, Twitter Bootstrap)
  • Project view
  • Project structure Customization
  • ...

Remote Development Support

  • Vagrant integration
  • Virtualenv support
  • Remote/Local interpreters
  • Deployment tool
  • ...

Supported Consoles

  • Python interactive console
  • Django console with auto-completion/highlighting
  • SSH console
  • Database console
  • Debug Console
  • Embedded local terminal

Development Team Capabilities

  • Atlassian JIRA support
  • Jetbrains Youtrack support
  • Lighthouse
  • Pivotal Tracker
  • GitHub
  • Redmine
  • Trac
  • Buildout support
  • ...

Supported Languages

  • Python (Versions: 2.x, 3.x)
  • Jython
  • Cython
  • IronPython
  • PyPy
  • Javascript
  • CoffeScript
  • TypeScript
  • HTML/CSS
  • Django/Jinja2 templates
  • web2py templates
  • Chameleon templates
  • Gql
  • LESS/SASS/SCSS/HAML
  • Mako
  • Puppet
  • RegExp
  • Rest
  • SQL
  • XML
  • YAML

Frameworks & Libraries supported

  • Django
  • Flask
  • Google App Engine
  • web2py
  • Pyramid
  • wxPython, PyQt, PyGTK
  • SQLAlchemy
  • ...

Keyboard schemes/emulation

  • Gnome
  • KDE
  • Mac OS X/10.5+
  • Emacs
  • Visual Studio
  • XWin
  • Visual Studio
  • Netbeans
  • Eclipse 
  • Vim emulation plugin

UML editing/ Viewing Diagrams

  • UML/python class diagram
  • Django Model Dependency diagrams
  • Google App Engine models
  • SQLAlchemy diagrams
  • Database diagrams
  • ...

Other features

  • Internationalization (i18n)
  • Bunch of UI themes/Font customizations
  • Customizable panels/windows layout
  • Menus/toolbars customization
  • External diff tools support
  • IDE notifications
  • Remote SSH external tools
  • TextMate bundles
  • Updates manager
  • Print code
  • File watchers
  • Integrated database support through JDBC driver
  • Database management window.
  • Power-save mode
  • Integrated plugin manager
  • Plugin collection (PyCharm specific + IDEA platform based)
  • Works on Linux/Mac OS/Windows
  • No labels