My Sublime Text 3 Packages

I’ve really appreciated getting a glimpse into the ST3 tools others are using (the latest of which is John Blackbourn’s which was inspired by Dominik Schilling’s) and so here is my own.

Here are the packages I use(d):
Update 06-21-2017: For the most up-to-date list of the packages I use, scroll down to the Package Control Settings snippet.

  • Alignment: Dead-simple alignment of multi-line selections and multiple selections.
  • AlignTab: A more powerful version of the Alignment package. Supports regexes and table mode. I have both because AlignTab doesn’t have as good as a default option.
  • ApacheConf: Syntax highlighting for Apache configuration files.
  • ApplySyntax: Allows you to detect and apply the syntax of files that might not otherwise be detected properly.
  • Autoprefixer: You shouldn’t have to care about vendor prefixes.
  • BracketHighlighter: Provides visual cues in the sidebar to where the brackets open and close.
  • Color Highlighter: Underlays selected hexadecimal color-codes with their real color. Also adds color picker to easily modify colors.
  • ColorPick: A simple colour picker.
  • DashDoc:  Provides integration of Dash into Sublime Text. You can look up the word under the cursor or selected text in Dash using ctrl+h.
  • Default File Type: Sets the default file type of new files to be either the same as the current file, or a predefined default.
  • DocBlockr: Makes writing documentation a breeze.
  • Emmet: Ultra-fast coding.
  • FileDiffs: Lets you compare two tabs for diffs.
  • Function Name Display: Contextually displays the current class/method/function name in the status bar. Very handy for large files and large lists of goto results.
  • Gist: Super handy tool which creates new Gists from selected text or current file for instant code-sharing. After creating gist, adds gist url to your clipboard.
  • Markdown Preview: Provides method to see markdown previews (GitHub flavored and otherwise)
  • Gitignored File Excluder: Excludes from your Sublime project any files ignored by git.
  • Gutter Color: Displays a color in the gutter if the line contains a color.
  • HTML5: HTML5 snippets.
  • Inc-Dec-Value: increase / decrease of numbers, dates, hex color values, etc.
  • INI: Syntax highlighting for .ini files.
  • JavaScript Console: JavaScript console snippets and code completion.
  • LESS: Syntax highlighting for LESS files.
  • MacTerminal: Open a terminal/iterm window/tab to the current file’s location
  • Markdown Extended: Markdown syntax highlighter for Sublime Text
  • Nettuts+ Fetch: Fetch the latest version of remote files and zip packages
  • nginx: Syntax highlighting for Nginx conf files.
  • Package Control: Essential.
  • Placeholders: Contains basic HTML placeholder content for Sublime e.g. lorem ipsum text, forms, images etc
  • Sass: Syntax highlighting for Sass files.
  • SCSS: Syntax highlighting for SCSS files. (I probably don’t need both of these)
  • Seti_UI: ST3 Theme & ColorScheme Port of Seti_UI & Syntax by jesseweed. This is the theme I use.
  • Seti_UX: Seti Improved Scheme/Syntax-HL for ST3.
  • SideBarEnhancements: Improves the context menu with entries like new file/folder, rename, move, copy, refresh etc.
  • SublimeLinter: The framework for linters in Sublime.
  • SublimeLinter-csslint: SublimeLinter plugin for CSS, using csslint.
  • SublimeLinter-jshint: SublimeLinter plugin for JavaScript, using jshint.
  • SublimeLinter-php: SublimeLinter 3 plugin for PHP, using php -l.
  • SublimeLinter-phpcs: SublimeLinter plugin for PHP, using phpcs. I use the WordPress standard.
  • ToggleQuotes: Toggles a quoted string between single and double quotes.
  • WordHighlight: This plugin highlights all copies of a word that’s currently selected, or, optionally, highlights all copies of a word which currently has the insertion cursor upon it.
  • WordPress: A collection of WordPress snippets and autocompletions
  • WordPressDev: “A WordPress developers snippet library”
  • Xdebug Client: Local and remote Xdebug client.
  • YUI Compressor: Compresses javascript and css using YUI-Compressor. (I don’t have much need of this anymore since we use grunt/uglify almost exclusively)

The theme I use is Seti_UI, and the colour scheme I use is spacegray base16-eighties.dark.

Here’s my Preferences.sublime-settings file:

{
    "alignment_chars":
    [
        "=",
        ":"
    ],
    "alignment_space_chars":
    [
        "=",
        ":"
    ],
    "always_show_minimap_viewport": true,
    "binary_file_patterns":
    [
        "*.dds",
        "*.eot",
        "*.gif",
        "*.ico",
        "*.jar",
        "*.jpeg",
        "*.jpg",
        "*.log",
        "*.pdf",
        "*.png",
        "*.swf",
        "*.tga",
        "*.ttf",
        "*.zip"
    ],
    "bold_folder_labels": true,
    "caret_extra_width": 2,
    "caret_style": "blink",
    "close_windows_when_empty": false,
    "color_scheme": "Packages/Material Theme/schemes/Material-Theme.tmTheme",
    "default_encoding": "UTF-8",
    "ensure_newline_at_eof_on_save": true,
    "extra_file_exclude_patterns":
    [
        "*.phar",
        "*.orig",
        ".DS_Store"
    ],
    "extra_folder_exclude_patterns":
    [
        ".svn",
        ".git",
        ".sass-cache",
        "node_modules"
    ],
    "file_exclude_patterns":
    [
        "*.min.css",
        "*.phar",
        "*.orig",
        ".DS_Store"
    ],
    "folder_exclude_patterns":
    [
        ".svn",
        ".git",
        ".sass-cache",
        "node_modules"
    ],
    "font_options":
    [
        "gray_antialias",
        "subpixel_antialias"
    ],
    "font_size": 11,
    "highlight_line": true,
    "highlight_modified_tabs": true,
    "ignored_packages":
    [
        "SideBarEnhancements",
        "Vintage"
    ],
    "indent_guide_options":
    [
        "draw_normal",
        "draw_active"
    ],
    "jsdocs_extend_double_slash": true,
    "jsdocs_extra_tags":
    [
        "@since ${1:[since]}"
    ],
    "jsdocs_spacer_between_sections": true,
    "line_padding_bottom": 1,
    "line_padding_top": 1,
    "material_theme_tree_headings": true,
    "open_files_in_new_window": false,
    "overlay_scroll_bars": "enabled",
    "pep8_ignore":
    [
        "W191"
    ],
    "scroll_past_end": true,
    "show_encoding": true,
    "show_tab_close_buttons": false,
    "tab_size": 3,
    "theme": "Material-Theme.sublime-theme",
    "trim_trailing_white_space_on_save": true,
    "word_separators": "./\\()\"':,.;<>~!@#%^&*|+=[]{}`~?",
    "word_wrap": true
}

And my Default (OSX).sublime-keymap file:

[
    { "keys": ["super+shift+alt+w"], "command": "toggle_setting", "args": {"setting": "word_wrap"} },
    { "keys": ["shift+alt+f"], "command": "go_to_function" },
    { "keys": ["ctrl+super+shift+up"], "command": "swap_line_up" },
    { "keys": ["ctrl+super+shift+down"], "command": "swap_line_down" },
    { "keys": ["super+k", "super+s"], "command": "swap_case" },
    { "keys": ["super+k", "super+c"], "command": "title_case" },

    { "keys": ["super+ctrl+a"], "command": "alignment" },

    {
        "keys": ["super+ctrl+shift+a"], "command": "align_tab",
        "args" : {"live_preview" : true}
    },

    { "keys": ["super+b"], "command": "next_bookmark" },
    { "keys": ["shift+alt+b"], "command": "prev_bookmark" },
    { "keys": ["super+shift+b"], "command": "toggle_bookmark" },
    { "keys": ["super+shift+option+a"], "command": "expand_selection", "args": {"to": "tag"} },
    { "keys": ["alt+b"], "command": "select_all_bookmarks" },
    { "keys": ["super+."], "command": "goto_definition" },
    { "keys": ["super+alt+d"], "command": "goto_definition" },

    { "keys": ["ctrl+shift+d"], "command": "file_diff_menu" },
    { "keys": ["ctrl+shift+e"], "command": "file_diff_menu", "args": {"cmd": ["opendiff", "$file1", "$file2"] } },

    { "keys": ["ctrl+super+alt+t"], "command": "open_termx_terminal" },

    { "keys": ["alt+m"], "command": "markdown_preview", "args": {"target": "browser", "parser":"github"} },

    { "keys": ["command+alt+j"], "command": "show_panel", "args": {"panel": "console", "toggle": true} }
]

And finally my Package Control.sublime-settings file:

{
    "bootstrapped": true,
    "in_process_packages":
    [
    ],
    "installed_packages":
    [
        "Alignment",
        "AlignTab",
        "ApacheConf.tmLanguage",
        "ApplySyntax",
        "Autoprefixer",
        "BracketHighlighter",
        "Case Conversion",
        "Clipboard Diff",
        "Color Highlighter",
        "ColorPick",
        "DashDoc",
        "Default File Type",
        "DocBlockr",
        "Ecmascript Syntax",
        "Emmet",
        "FileDiffs",
        "Focus File on Sidebar",
        "Function Name Display",
        "Gist",
        "Gitignored File Excluder",
        "Gutter Color",
        "HTML5",
        "Inc-Dec-Value",
        "INI",
        "JavaScript Console",
        "LESS",
        "LiveStyle",
        "Markdown Extended",
        "Markdown Preview",
        "Material Theme",
        "Nettuts+ Fetch",
        "nginx",
        "Package Control",
        "PhpDoc",
        "Placeholders",
        "Sass",
        "SCSS",
        "Seti_UI",
        "Seti_UX",
        "SublimeLinter",
        "SublimeLinter-csslint",
        "SublimeLinter-jshint",
        "SublimeLinter-php",
        "SublimeLinter-phpcs",
        "termX",
        "Text Pastry",
        "Theme - Soda",
        "Theme - Spacegray",
        "ToggleQuotes",
        "Vuejs Complete Package",
        "WakaTime",
        "WordHighlight",
        "WordPress",
        "WordPress Customizer",
        "WordpressDev",
        "WPCS Whitelist Flags",
        "Xdebug Client",
        "YUI Compressor"
    ],
    "repositories":
    [
        "https://github.com/titoBouzout/SideBarEnhancements/tree/st3"
    ]
}

I hope this list (and the lists of others) are helpful to you and that you’ll carry on the tradition and write your own post. Let me know in the comments if there are any killer packages I’m missing out on.

Comment