Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/shagabutdinov/sublime-enhanced

Set of plugins for beloved sublime text editor
https://github.com/shagabutdinov/sublime-enhanced

Last synced: 16 days ago
JSON representation

Set of plugins for beloved sublime text editor

Awesome Lists containing this project

README

        

# Installation

1. Open your "Packages" folder by "Preferences: Browse packages" command in
command palette

2. Backup parent folder of "Packages" (it is "sublime-text-3" for linux,
"Sublime Text 3" for OSX and windows); in case of troubles you should use
this backup to restore original state of sublime.

3. Run following command in console in "Packages" folder:

```
git clone [email protected]:shagabutdinov/sublime-align-cursors.git AlignCursors;
git clone [email protected]:shagabutdinov/sublime-align-hash-table.git AlignHashTable;
git clone [email protected]:shagabutdinov/sublime-append-selection.git AppendSelection;
git clone [email protected]:shagabutdinov/sublime-autocompletion.git AutocompletionFuzzy;
git clone [email protected]:shagabutdinov/sublime-clone-file.git CloneFile;
git clone [email protected]:shagabutdinov/sublime-close-other.git CloseOther;
git clone [email protected]:shagabutdinov/sublime-context.git Context;
git clone [email protected]:shagabutdinov/sublime-devastate-mini.git DevastateMini;
git clone [email protected]:shagabutdinov/sublime-duplicate-lines-enhanced.git DuplicateLinesEnhanced;
git clone [email protected]:shagabutdinov/sublime-eval-selection.git EvalSelection;
git clone [email protected]:shagabutdinov/sublime-delayed-save-all.git DelayedSaveAll;
git clone [email protected]:shagabutdinov/sublime-expression.git Expression;
git clone [email protected]:shagabutdinov/sublime-file-dialog.git FileDialog;
git clone [email protected]:shagabutdinov/sublime-file-list.git FileList;
git clone [email protected]:shagabutdinov/sublime-file-util.git FileUtil;
git clone [email protected]:shagabutdinov/sublime-folder-files.git FolderFiles;
git clone [email protected]:shagabutdinov/sublime-full-undo.git FullUndo;
git clone [email protected]:shagabutdinov/sublime-goto-anything-enhanced.git GotoAnythingEnhanced;
git clone [email protected]:shagabutdinov/sublime-goto-character.git GotoCharacter;
git clone [email protected]:shagabutdinov/sublime-goto-definition-enhanced.git GotoDefinitionEnhanced;
git clone [email protected]:shagabutdinov/sublime-goto-last-edit-enhanced.git GotoLastEditEnhanced;
git clone [email protected]:shagabutdinov/sublime-goto-line-enhanced.git GotoLineEnhanced;
git clone [email protected]:shagabutdinov/sublime-indentation-navigation.git IndentationNavigation;
git clone [email protected]:shagabutdinov/sublime-join-assignment.git JoinAssignment;
git clone [email protected]:shagabutdinov/sublime-join-chain-call.git JoinChainCall;
git clone [email protected]:shagabutdinov/sublime-join-lines-enhanced.git JoinLinesEnhanced;
git clone [email protected]:shagabutdinov/sublime-join-statement.git JoinStatement;
git clone [email protected]:shagabutdinov/sublime-keymap-enhanced.git KeymapEnhanced;
git clone [email protected]:shagabutdinov/sublime-keyword.git Keyword;
git clone [email protected]:shagabutdinov/sublime-local-variable.git LocalVariable;
git clone [email protected]:shagabutdinov/sublime-method.git Method;
git clone [email protected]:shagabutdinov/sublime-named-mark.git NamedMark;
git clone [email protected]:shagabutdinov/sublime-nested-snippet.git NestedSnippet;
git clone [email protected]:shagabutdinov/sublime-nesting-snippet.git NestingSnippet;
git clone [email protected]:shagabutdinov/sublime-open-path.git OpenPath;
git clone [email protected]:shagabutdinov/sublime-project-files.git ProjectFiles;
git clone [email protected]:shagabutdinov/sublime-quick-search-enhanced.git QuickSearchEnhanced;
git clone [email protected]:shagabutdinov/sublime-remove-selection.git RemoveSelection;
git clone [email protected]:shagabutdinov/sublime-repeat-command.git RepeatCommand;
git clone [email protected]:shagabutdinov/sublime-scope-context.git ScopeContext;
git clone [email protected]:shagabutdinov/sublime-scroll-enhanced.git ScrollEnhanced;
git clone [email protected]:shagabutdinov/sublime-search-panel-enhanced.git SearchPanelEnhanced;
git clone [email protected]:shagabutdinov/sublime-semicolon.git Semicolon;
git clone [email protected]:shagabutdinov/sublime-shell-status.git ShellStatus;
git clone [email protected]:shagabutdinov/sublime-snippet-caller.git SnippetCaller;
git clone [email protected]:shagabutdinov/sublime-snippet-manager.git SnippetManager;
git clone [email protected]:shagabutdinov/sublime-statement.git Statement;
git clone [email protected]:shagabutdinov/sublime-status-message.git StatusMessage;
git clone [email protected]:shagabutdinov/sublime-enhanced.git SublimeEnhanced;
git clone [email protected]:wbond/sublime_terminal.git Terminal
git clone [email protected]:shagabutdinov/sublime-terminal-project-folder.git TerminalProjectFolder;
git clone [email protected]:shagabutdinov/sublime-toggle-wrap.git ToggleWrap;
git clone [email protected]:shagabutdinov/sublime-utilities.git Utilities;
git clone [email protected]:shagabutdinov/sublime-wrap-statement.git WrapStatement
```

4. Ensure that you have "Droid Sans Mono" font installed in your system

5. Append following contents to your "User/Preferences.sublime-settings":

```
"theme": "DevastateMini.sublime-theme",
"color_scheme": "Packages/DevastateMini/DevastateMini.tmTheme",
```

6. Append following contents to your "User/Default (*).sublime-keymap" file,
"Preferences: Key Bindings - User" in command palette (alt+\):

```
// KeymapEnhanced:
// Should be in User/Default ().sublime-keymap to avoid conflicts with
// Terminal plugin

{
"keys": ["ctrl+shift+t"],
"command": "reopen_last_file"
},

// JointStatement:
// Next two mappings should be in User/Default ().sublime-keymap to avoid
// conflicts with Terminal plugin
{
"keys": ["ctrl+alt+shift+t"],
"command": "unjoin_statement",
"args": {
"as_arguments": false
},
"context": [
{"key": "in_arguments", "operator": "equal", "operand": false}
]
},

{
"keys": ["ctrl+alt+shift+t"],
"command": "unjoin_statement",
"args": {
"as_arguments": true
},
"context": [
{"key": "in_arguments", "operator": "equal", "operand": true}
]
},

// Expression:
// should be in User/Default ().sublime-keymap to avoid [ctrl+k, ...] calls
{
"keys": ["ctrl+k"],
"command": "run_macro_file",
"args": {
"file": "res://Packages/Expression/macro/goto_block_down.sublime-macro"
},
},
```

7. (Optionally) For quick "dive in" you can disable arrows-navigation; to do it,
copy your default keybindings ("Preferences: Key Bindings - Default" in
command palette) into "Default/Default (**OS**).sublime-keymap" in "Packages"
folder ("Preferences: Browse packages" in command palette) and comment
following lines:

```
{ "keys": ["left"], "command": "move", "args": {"by": "characters", "forward": false} },
{ "keys": ["right"], "command": "move", "args": {"by": "characters", "forward": true} },
{ "keys": ["up"], "command": "move", "args": {"by": "lines", "forward": false} },
{ "keys": ["down"], "command": "move", "args": {"by": "lines", "forward": true} },
{ "keys": ["shift+left"], "command": "move", "args": {"by": "characters", "forward": false, "extend": true} },
{ "keys": ["shift+right"], "command": "move", "args": {"by": "characters", "forward": true, "extend": true} },
{ "keys": ["shift+up"], "command": "move", "args": {"by": "lines", "forward": false, "extend": true} },
{ "keys": ["shift+down"], "command": "move", "args": {"by": "lines", "forward": true, "extend": true} },

{ "keys": ["ctrl+left"], "command": "move", "args": {"by": "words", "forward": false} },
{ "keys": ["ctrl+right"], "command": "move", "args": {"by": "word_ends", "forward": true} },
{ "keys": ["ctrl+shift+left"], "command": "move", "args": {"by": "words", "forward": false, "extend": true} },
{ "keys": ["ctrl+shift+right"], "command": "move", "args": {"by": "word_ends", "forward": true, "extend": true} },

{ "keys": ["alt+left"], "command": "move", "args": {"by": "subwords", "forward": false} },
{ "keys": ["alt+right"], "command": "move", "args": {"by": "subword_ends", "forward": true} },
{ "keys": ["alt+shift+left"], "command": "move", "args": {"by": "subwords", "forward": false, "extend": true} },
{ "keys": ["alt+shift+right"], "command": "move", "args": {"by": "subword_ends", "forward": true, "extend": true} },

{ "keys": ["alt+shift+up"], "command": "select_lines", "args": {"forward": false} },
{ "keys": ["alt+shift+down"], "command": "select_lines", "args": {"forward": true} },

{ "keys": ["pageup"], "command": "move", "args": {"by": "pages", "forward": false} },
{ "keys": ["pagedown"], "command": "move", "args": {"by": "pages", "forward": true} },
{ "keys": ["shift+pageup"], "command": "move", "args": {"by": "pages", "forward": false, "extend": true} },
{ "keys": ["shift+pagedown"], "command": "move", "args": {"by": "pages", "forward": true, "extend": true} },

{ "keys": ["home"], "command": "move_to", "args": {"to": "bol", "extend": false} },
{ "keys": ["end"], "command": "move_to", "args": {"to": "eol", "extend": false} },
{ "keys": ["shift+home"], "command": "move_to", "args": {"to": "bol", "extend": true} },
{ "keys": ["shift+end"], "command": "move_to", "args": {"to": "eol", "extend": true} },
{ "keys": ["ctrl+home"], "command": "move_to", "args": {"to": "bof", "extend": false} },
{ "keys": ["ctrl+end"], "command": "move_to", "args": {"to": "eof", "extend": false} },
{ "keys": ["ctrl+shift+home"], "command": "move_to", "args": {"to": "bof", "extend": true} },
{ "keys": ["ctrl+shift+end"], "command": "move_to", "args": {"to": "eof", "extend": true} },

{ "keys": ["ctrl+up"], "command": "scroll_lines", "args": {"amount": 1.0 } },
{ "keys": ["ctrl+down"], "command": "scroll_lines", "args": {"amount": -1.0 } },

{ "keys": ["ctrl+pagedown"], "command": "next_view" },
{ "keys": ["ctrl+pageup"], "command": "prev_view" },
```

8. (Optionally) Install following very handy packages one by one:

- OpenSearchResult (https://github.com/abrookins/OpenSearchResult)

- Case Conversion (https://github.com/jdc0589/CaseConversion)

- ColorSchemeSelector (https://github.com/jugyo/SublimeColorSchemeSelector)

- Inc-Dec-Value (https://github.com/rmaksim/Sublime-Text-2-Inc-Dec-Value)

- Move Tab (https://github.com/FMCorz/MoveTab)

- SublimeLinter family (https://github.com/SublimeLinter)

And add keybindings to this packages:

```
// Case Conversion

{
"keys": ["ctrl+u", "ctrl+-"],
"command": "convert_to_snake"
},

{
"keys": ["ctrl+u", "ctrl+="],
"command": "convert_to_camel"
},

// Inc-Dec-Value

{
"keys": ["ctrl+="],
"command": "inc_dec_value",
"args": {
"action": "inc_min"
}
},

{
"keys": ["ctrl+-"],
"command": "inc_dec_value",
"args": {
"action": "dec_min"
}
},

{
"keys": ["ctrl+shift+="],
"command": "inc_dec_value",
"args": {
"action": "inc_max"
}
},

{
"keys": ["ctrl+shift+-"],
"command": "inc_dec_value",
"args": {
"action": "dec_max"
}
},

{
"keys": ["ctrl+alt+="],
"command": "inc_dec_value",
"args": {
"action": "inc_all"
}
},

{
"keys": ["ctrl+alt+-"],
"command": "inc_dec_value",
"args": {
"action": "dec_all"
}
},

// MoveTab

{
"keys": ["ctrl+shift+,"],
"command": "move_tab",
"args": {
"position": "-1"
}
},

{
"keys": ["ctrl+shift+."],
"command": "move_tab",
"args": {
"position": "+1"
}
},

// ColorSchemeSelector

{
"keys": ["ctrl+u", "ctrl+t"],
"command": "select_color_scheme"
},

// Open Search Result

{
"keys": ["enter"],
"command": "open_search_result",
"context": [
{"key": "selector", "operator": "equal", "operand": "text.find-in-files"}
]
},

```

9. (Optionally) Restart sublime.