By order of usefulness.

[TOC]

# Mario's Default Settings

## Packages installed

**GitGutter** - shows colors in the gutter to indicate your changes in the file since your last commit

**BracketHighlighter** - shows the brackets in the gutter that matches the one you are on

**Color Highlighter** - highlights colour codes with their colour.

**SublimeLinter** - shows highlighting to lint using your linter

**HTML/JS/CSS Prettify** - press a shortcut to prettify code

**SidebarEnhancements** - offers a few extra commands to do with the file tree on the side on right clicking.

## Common shortcuts

`cmd + w` close current tab

`cmd + q` close application

`cmd + shift + t` re-open last closed tab/file

`shift + cmd + h` = prettify code (HTML-CSS-JS Prettify package)

`cmd + ctrl + up` move line up (or down)

`cmd + d` group select next in series

`shift + cmd + d` group select previous in series

`cmd + k, cmd + d` group select - skip next selection

`ctrl + cmd + g` group select all

`shift + cmd + space` expand selection to scope

`ctrl + m` jump to matching bracket (not super necessary with BracketHighlighter extension)

`shift + ctrl + m` expand selection to brackets

## Common ignore pattern for file search

`-*/.git/*, -*/node_modules/*`

## Good Snippets

`cl` + tab -> `console.log(field);`

    :::html
    <snippet>
      <content><![CDATA[
        console.log(${1:});
      ]]></content>
      <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
      <tabTrigger>cl</tabTrigger>
      <!-- Optional: Set a scope to limit where the snippet will trigger -->
      <!-- <scope>source.javascript</scope> -->
      <description>console.log</description>
    </snippet>

`cln` + tab -> `console.log('field', field);`

    :::html
    <snippet>
      <content><![CDATA[
        console.log('${1:}', ${1:});
      ]]></content>
      <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
      <tabTrigger>cln</tabTrigger>
      <!-- Optional: Set a scope to limit where the snippet will trigger -->
      <!-- <scope>source.javascript</scope> -->
      <description>console.log name</description>
    </snippet>

## Sublime preferences

(Once I'm not lazy I'll write out why I have these settings)

Accessed by `cmd + ,`, you'll overwrite the User preferences:

    :::json
    {
      "auto_complete": true,
      "auto_complete_commit_on_tab": true,
      "bold_folder_labels": false,
      "color_scheme": "Packages/User/SublimeLinter/Monokai (SL).tmTheme",
      "default_encoding": "UTF-8",
      "extra_file_exclude_patterns":
      [
        "*.log"
      ],
      "extra_folder_exclude_patterns":
      [
        ".svn",
        ".hg",
        "CVS",
        ".sass-cache"
      ],
      "file_exclude_patterns":
      [
        "*.log",
        "/home/mario/code/work/watercooler/core/db/production.sqlite3",
        "/home/mario/code/work/watercooler/core/log/development.log",
        "/home/mario/code/work/watercooler/core/log/production.log",
        "/home/mario/code/work/watercooler/core/log/test.log",
        "/home/mario/code/work/watercooler/core/db/development.sqlite3"
      ],
      "find_selected_text": true,
      "folder_exclude_patterns":
      [
        ".svn",
        ".hg",
        "CVS",
        ".sass-cache"
      ],
      "font_size": 13,
      "highlight_line": true,
      "highlight_modified_tabs": true,
      "ignored_packages":
      [
        "Gitignored File Excluder",
        "Vintage"
      ],
      "rulers":
      [
        80,
        100,
        120
      ],
      "tab_size": 2,
      "translate_tabs_to_spaces": true,
      "trim_trailing_white_space_on_save": false,
      "word_wrap": true,
      "wrap_width": "auto"
    }