Skip to content
Automatically formats Python code to conform to the PEP 8 style guide using autopep8 and pep8 modules
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
messages Upgraded version to 2.2.0. Added changelog. Nov 6, 2018
sublimeautopep8lib Upgraded pycodestyle 2.3.1 -> 2.4.0 Nov 6, 2018
AutoPep8.sublime-commands Minor changes to context and sidebar menu files. Jan 5, 2015
AutoPep8.sublime-settings Added Djaneiro Python syntax (#57) Jul 1, 2018
Context.sublime-menu Cleanup after merging pull request. Jan 26, 2015
Default.sublime-commands Use cross-platform settings. Oct 18, 2015
Default.sublime-keymap Use cross-platform settings. Oct 18, 2015
Main.sublime-menu Use cross-platform settings. Oct 18, 2015 Update (#56) Mar 18, 2018
Side Bar.sublime-menu
messages.json Upgraded version to 2.2.0. Added changelog. Nov 6, 2018

Sublime Auto PEP8 Formatting


Automatically formats Python code to conform to the PEP 8 style guide using autopep8 library.

Supports ST3 only.


  • format / preview code according PEP8
  • format / preview selected text
  • format / preview all python modules in folder
  • side bar menu
  • format code while saving


The easiest way to install AutoPEP8 in through Package Control, which can be found at this site:

Once you install Package Control, restart ST3 and bring up the Command Palette (Command+Shift+P on OS X, Control+Shift+P on Linux/Windows). Select "Package Control: Install Package", wait while Package Control fetches the latest package list, then select AutoPEP8 when the list appears.

Pep8(pycodestyle) configuration

The extenstion supports both --global-config and --ignore-local-config options from the autopep8.



    "max-line-length": 79,

    // Do not fix these errors / warnings(e.g. E4, W)
    "ignore": "",

    // Select errors / warnings(e.g. E4, W)
    "select": "",

    // Number of spaces per indent level
    "indent-size": 4,

    // Don't look for and apply local config files;
    // if false, defaults are updated with any config files in the project's root directory.
    "ignore-local-config": false,

    // Path to a global pep8 config file;
    // if this file doesnot exist then this is ignored.
    "global-config": "",

    // Hang closing bracket instead of matching indentation of opening bracket's line.
    "hang-closing": false,

    // Specifies whether or not format files once they saved.
    "format_on_save": false,

    // If true - open new output panel with format/preview results.
    "show_output_panel": true,

    // Format/Preview menu items only appear for views
    // with syntax from `syntax_list`
    // value is base filename of the .tmLanguage syntax files
    "syntax_list": ["Python"],

    // The value shows how deep the plugin should look for *.py files
    // before disabling "Preview" and "Format" items in the Side Bar "AutoPep8" Context Menu.
    "file_menu_search_depth": 3, // max depth to search python files

    // If value is false(default)
    // then formatter doesn't treat absence of bottom empty line as an error
    // and doesn't try to fix it.
    "avoid_new_line_in_select_mode": false,

    // For debug purporse only.
    "debug": false,
    "logfile": "/tmp/sublimeautopep8.log"  // File to store debug messages.


  • SideBar - right click on the file(s) or folder(s)
  • Active view - right click on the view
  • Selected text - right click on the selected text
  • On Save - provide by settings: option format_on_save
  • Command Palette - bring up the Command Palette and select PEP8: Format Code or PEP8: Preview Changes
  • Hotkeys - Command/Control + Shift + 8 to format code, Command/Control + 8 to preview changes
You can’t perform that action at this time.