Skip to content

Instantly share code, notes, and snippets.

@mattst
mattst / Bound Keys Example Output
Last active May 14, 2020
BoundKeys plugin example output heavily edited
View Bound Keys Example Output
________________________________________________________________________________________________________________________________
| User key bindings - /home/ms/.config/sublime-text-3/Packages/User/Default (Linux).sublime-keymap |
________________________________________________________________________________________________________________________________
|ctrl+k, ctrl+q |exit | | |
|ctrl+shift+pageup |move_tab_in_group |direction: left | |
|ctrl+shift+pagedown |move_tab_in_group |direction: right | |
|ctrl+shift+v |paste_ahead | |Default |
|ctrl+7 |focus_group |group: 0 |Default
@mattst
mattst / AlterIgnoredPackages.py
Last active May 11, 2020
Sublime Text plugin to add, remove, or toggle packages in the ignored_packages setting
View AlterIgnoredPackages.py
#
# Save as AlterIgnoredPackages.py in your user packages directory.
# e.g. ~/.config/sublime-text-3/Packages/User/AlterIgnoredPackages.py
#
# Here are some key binding examples:
#
# {
# "keys": ["ctrl+k", "ctrl+z"],
# "command": "alter_ignored_packages",
# "args": {"add_list": ["PackageName1"],
@mattst
mattst / Default (Windows).sublime-mousemap
Created Apr 30, 2020
The default "Default (Windows).sublime-mousemap" file from ST build 3211
View Default (Windows).sublime-mousemap
[
// Basic drag select
{
"button": "button1", "count": 1,
"press_command": "drag_select"
},
{
"button": "button1", "count": 1, "modifiers": ["ctrl"],
"press_command": "drag_select",
"press_args": {"additive": true}
@mattst
mattst / JavaC.sublime-build
Created Apr 26, 2020
JavaC.sublime-build alternatives
View JavaC.sublime-build
// ~/.config/sublime-text-3/Packages/Java/JavaC.sublime-build
// -----------------------------------------------------------------------------
// ST default JavaC.sublime-build:
{
"shell_cmd": "javac \"$file\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
@mattst
mattst / SublimeTextSettingsExample.py
Last active Aug 7, 2019
Settings handing code template / example for Sublime Text plugins.
View SublimeTextSettingsExample.py
import sublime
import sublime_plugin
# The global scope ensures that the settings can
# be easily accessed from within all the classes.
global settings
def plugin_loaded():
"""
This module level function is called on ST startup when the API is ready.
@mattst
mattst / Layouts.sublime-commands
Last active Jun 2, 2019
Sublime Text layout additions for the Command Palette
View Layouts.sublime-commands
[
// Add all the layouts from: Menu --> View --> Layout
{ "caption": "Set Layout: Single", "command": "set_layout",
"args": { "cols": [0.0, 1.0],
"rows": [0.0, 1.0],
"cells": [[0, 0, 1, 1]] } },
// Alternative name for the "Set Layout: Single" layout.
{ "caption": "Set Layout: Columns 1", "command": "set_layout",
@mattst
mattst / OpenSelectedTextInNewBufferCommand.py
Created Mar 19, 2019
ST Plugin OpenSelectedTextInNewBufferCommand
View OpenSelectedTextInNewBufferCommand.py
# Command: open_selected_text_in_new_buffer
import sublime
import sublime_plugin
class OpenSelectedTextInNewBufferCommand(sublime_plugin.TextCommand):
"""
A Sublime Text plugin to create a new buffer, possibly in a new window,
which contains the selected text from the current buffer (if any). The
@mattst
mattst / PasteFromHistoryEnhanced.py
Created Jan 27, 2019
Enhanced version of the default Sublime Text paste_from_history.py plugin.
View PasteFromHistoryEnhanced.py
#
# My enhanced version of the default ST paste_from_history.py plugin.
#
# Alterations to do the following:
#
# 1) Select the paste to text from an overlay instead of a pop-up menu.
# 2) Allow operation from widgets, i.e. console and input panel.
# 3) Ensure that text copied or cut with my various copy_and_cut_text
# plugins gets added to the ClipboardHistory storage list.
@mattst
mattst / Test_CRF_Presets_For_Libx264_Encodes
Created Nov 9, 2018
Script to test encode speeds and file sizes for libx264 encodes with a range of CRF values and presets
View Test_CRF_Presets_For_Libx264_Encodes
#!/bin/bash
infile="TestClipTwoMin.mp4"
datafile="TestClipTwoMinData.csv"
crfs=("18" "19" "20" "21" "22" "23" "24" "25" "26" "27")
presets=("ultrafast" "superfast" "veryfast" "faster" "fast" "medium" "slow" "slower" "veryslow")
echo 'CRF,Preset,Time (Secs),Size (MB)' >> "$datafile"
@mattst
mattst / TestClipTwoMinData.csv
Created Nov 9, 2018
FFMPEG libx264 encodes 2 min video, CRFs 18 to 27, all presets except placebo, encode times and file sizes
View TestClipTwoMinData.csv
CRF Preset Time (Secs) Size (MB)
18 ultrafast 13.91 175.13
18 superfast 24.39 149.13
18 veryfast 36.39 87.97
18 faster 55.89 94.50
18 fast 79.71 97.76
18 medium 97.80 94.15
18 slow 145.07 91.47
18 slower 262.72 91.55
18 veryslow 503.44 84.07
You can’t perform that action at this time.