Skip to content

lee-dohm/tabs-to-spaces

Repository files navigation

Tabs to Spaces

Build Status Package Version Package Downloads Dependency Status

An Atom package for converting leading whitespace to either all spaces or all tabs.

Usage

It can convert any form of leading whitespace to either all spaces (Untabify) or the maximum number of tabs and minimum number of spaces with tabs up front (Tabify) to fill the same space. It can also convert all tabs in a document to spaces (Untabify All).

It will also, with configuration, convert to your preferred method of leading whitespace on save.

Commands

  • tabs-to-spaces:tabify — Converts leading whitespace to tabs
  • tabs-to-spaces:untabify — Converts leading whitespace to spaces
  • tabs-to-spaces:untabify-all — Converts all whitespace on a line to spaces

Configuration

Tabs to Spaces uses the following configuration values:

  • editor.tabLength — sets the number of space characters a tab character is equivalent to
  • tabs-to-spaces.onSave — if set to either tabify or untabify it performs that operation on save. 🚨 Warning: 🚨 Setting this to anything other than none can significantly impact performance when saving large files.

The package also supports language-specific configuration for the onSave setting. For example, the following configuration will tabify all file types on save except for JavaScript files:

'*':
  'tabs-to-spaces':
    'onSave': 'tabify'
'.source.js':
  'tabs-to-spaces':
    'onSave': 'none'

No matter what tabs-to-spaces.onSave settings you configure, your config.cson will not be automatically tabified or untabified.

Keybindings

Keybindings have not been set for this package. They can easily be added by referencing the commands listed above.

License

MIT