Emacs Tabstops
Emacs style tabstop support for Sublime Text
Details
Installs
- Total 2K
- Win 867
- Mac 424
- Linux 501
May 9 | May 8 | May 7 | May 6 | May 5 | May 4 | May 3 | May 2 | May 1 | Apr 30 | Apr 29 | Apr 28 | Apr 27 | Apr 26 | Apr 25 | Apr 24 | Apr 23 | Apr 22 | Apr 21 | Apr 20 | Apr 19 | Apr 18 | Apr 17 | Apr 16 | Apr 15 | Apr 14 | Apr 13 | Apr 12 | Apr 11 | Apr 10 | Apr 9 | Apr 8 | Apr 7 | Apr 6 | Apr 5 | Apr 4 | Apr 3 | Apr 2 | Apr 1 | Mar 31 | Mar 30 | Mar 29 | Mar 28 | Mar 27 | Mar 26 | Mar 25 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
Mac | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Readme
- Source
- raw.githubusercontent.com
EmacsTabstops
Better tabstop support for Sublime Text. The whole idea is to enable tabstops to be something other than the indentation tab width. This is invaluable when editing files written in Emacs, where tabstops are 8 spaces, but the indentation tab width might be 2 or 4 spaces.
By default, this plugin will convert all tabs to spaces on load, and convert those regions back to tabs again on save. This behavior lets you edit files with spaces, but keeps the tabs on disk so that whitespace changes don't show up in diffs and the like. To get full emacs behavior where all sets of 8 spaces at the start of a line become tabs, set emacs_tabstops_all_to_tabs
to true. Conversely, to keep the spaces on save, set emacs_tabstops_convert_on_save
to “never”.
Status
Currently beta quality. Things work well enough for the day-to-day, but don't be surprised by small hiccups.
Settings
These settings should be in Prefereces or a project file.
emacs_tabstops_tabstop
: integer number of spaces to substitute. (Default: 8)emacs_tabstops_convert_on_load
: {true, false} Convert tabs -> spaces on load. Note that no conversion is done if there are no tabs in the file. (Default: true)emacs_tabstops_convert_on_save
: {'always', 'auto', 'never'} (Default: 'auto')- always: always convert spaces -> tabs on save
- auto: only convert if tabs -> spaces was previously run for this buffer
- never: don't convert spaces -> tabs on save
If conversion is done, the tabs are replaced with spaces again after the buffer is saved.
emacs_tabstops_all_to_tabs
: {true, false} When converting to tabs, control whether or not all indentation spaces of tabstop width are converted to tabs. If false, only regions where tabs were converted to spaces are converted back. (Default: false)emacs_tabstops_skip_filetypes
: List of file types to ignore when loading/saving. You can still call this plugin by hand for these files. (Default: ['Python', 'Cython', 'Makefile', 'Makefile.am'])
Usage
- Use converton{load,save} settings to do conversions automatically.
- Commands are available in the pallette as “EmacsTabstops: *”
- Toggling between tabs and spaces can also be done via the shortcut <
cmd
+alt
+tab
> - To go only tabs -> spaces, use <
cmd
+alt
+shift
+tab
>
Issues
- No keybindings for Linux/Windows. If you use these platforms and have a natural key combination, submit a pull request :)
- If the file changes outside of SublimeText and it gets automatically reloaded, there appears to be no way to detect this and re-convert tabs -> spaces. To work around this you'll have to run <
cmd
+alt
+shift
+tab
> by hand.