atom-beautify

Build Status Gitter chat Issue Stats Issue Stats

Beautify HTML (including Handlebars), CSS (including Sass and LESS), JavaScript, and much more in Atom.

Atom Package: https://atom.io/packages/atom-beautify

apm install atom-beautify

Or Settings/Preferences ➔ Packages ➔ Search for atom-beautify

Language Support

Usage

Open the Command Palette, and type Beautify.

It will only beautify selected text, if a selection is found - if not, the whole file will be beautified.

Shortcut

You can also type ctrl-alt-b as a shortcut or click Packages > Beautify in the menu.

Custom Keyboard Shortcuts

See Keymaps In-Depth for more details.

For example:

'.editor':
  'ctrl-alt-b': 'beautify:beautify-editor'

Package Options

  • beautifyOnSave (Default false) You can also choose to beautify on every file save.

  • beautifyEntireFileOnSave (Default true) Beautification will normally only beautify your selected text. However, when beautification occurs on save then it will be forced to beautify the entire file's contents, not just selected text.

  • disabledLanguages (Default empty array) An array of Grammar names to disable beautification for. Note: If using the Atom's Package Settings then an array is represented as comma-separated string.

  • muteUnsupportedLanguageErrors (Default false) Mute only unsupported language errors.

  • muteAllErrors (Default false) Do not show the Atom Beautify Error Messages panel for any of the errors occurring while beautifying.

  • analytics (Default true) There is Segment.io, which forwards the data to Google Analytics, to track what languages are being used the most and other stats. Everything is anonymized and no personal information, such as source code, is sent. See https://github.com/Glavin001/atom-beautify/issues/47 for more details.

Configuration

Edit your .jsbeautifyrc file in any of the following locations:

  • Atom Package Settings
    AtomPreferences ➔ Search for atom-beautify
  • Same directory as current file
  • Project root
    atom-beautify will recursively look up from the current file's directory to find .jsbeautifyrc.
  • Your User's Home directory

Note: Comments are supported in .jsbeautifyrc thanks to strip-json-comments.

See examples of both way inside examples/

Option table is available at the js-beautify repo.

Simple

See examples/simple-jsbeautifyrc/.jsbeautifyrc.

{
  "indent_size": 2,
  "indent_char": " ",
  "other": " ",
  "indent_level": 0,
  "indent_with_tabs": false,
  "preserve_newlines": true,
  "max_preserve_newlines": 2,
  "jslint_happy": true,
  "indent_handlebars": true
}

Nested

See examples/nested-jsbeautifyrc/.jsbeautifyrc.

{
  "html": {
    "brace_style": "collapse",
    "indent_char": " ",
    "indent_scripts": "normal",
    "indent_size": 6,
    "max_preserve_newlines": 1,
    "preserve_newlines": true,
    "unformatted": ["a", "sub", "sup", "b", "i", "u"],
    "wrap_line_length": 0
  },
  "css": {
    "indent_char": " ",
    "indent_size": 4
  },
  "js": {
    "indent_size": 2,
    "indent_char": " ",
    "indent_level": 0,
    "indent_with_tabs": false,
    "preserve_newlines": true,
    "max_preserve_newlines": 2,
    "jslint_happy": true
  },
  "sql": {
    "indent_size": 4,
    "indent_char": " ",
    "indent_level": 0,
    "indent_with_tabs": false
  }
}

Advanced Language Setup

PHP

To use with PHP we require PHP_Beautifier and that you set the Php beautifier path in the package settings.

Retrieve the path on Mac & Linux

Run which php_beautifier in your Terminal.

Python

To use with Python we require autopep8 and that you set the Python autopep8 path in the package settings.

Retrieve the path on Mac & Linux

Run which autopep8 in your Terminal.

Markdown

To use with Markdown we require pandoc and you set the Markdown Pandoc path in the package settings.

Contributing

See all contributors on GitHub.

Please update the CHANGELOG.md, add yourself as a contributor to the package.json, and submit a Pull Request on GitHub.

License

MIT © Donald Pipowitch

Share this project:
×

Updates