Skip to content

Instantly share code, notes, and snippets.

# Code to test the reliability of windll.kernel32.GetFileAttributesW()
# by running it on every file (that has read access) on the file system.
import os, os.path, sys
from ctypes import windll
HIDDEN_FILE_ATTRIBUTE = 2
GET_ATTRIBUTES_FAILED = -1
@mattst
mattst / GetFileExtensionSyntax.py
Last active November 7, 2018 13:33
GetFileExtensionSyntax
# Proof of concept; retrieve the path of the syntax that a user has
# associated with any file extension in Sublime Text.
#
# 1) Create a temp file with the file extension of the desired syntax.
# 2) Open the temp file in ST with the API `open_file()` method; use a
# sublime.TRANSIENT buffer so that no tab is shown on the tab bar.
# 3) Retrieve the syntax ST has assigned to the view's settings.
# 4) Close the temp file's ST buffer.
# 5) Delete the temp file.
#
@mattst
mattst / TestQuickPanel.py
Last active November 12, 2016 14:04
ST plugin to try to reproduce r-stein quick panel bug
# { "keys": ["ctrl+whatever"], "command": "example" },
# { "keys": ["ctrl+whatever"], "command": "example_two" }
import sublime, sublime_plugin
# *********************
# WindowCommand Version
# *********************
@mattst
mattst / Git Commit Guidelines.md
Last active November 1, 2021 20:10
Git Commit Guidelines - From AngularJS
@mattst
mattst / Boxy Tomorrow.sublime-theme
Created September 20, 2016 13:32
Boxy Tomorrow.sublime-theme with theme_accent_numix entries added
// > BOXY TOMORROW
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Definitely, your next theme for Sublime Text 3
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[
//
// >> Autocomplete
// ===========================================================================
// Autocomplete settings and behavior
@mattst
mattst / Boxy Tomorrow.sublime-theme
Last active September 7, 2016 15:36
Packages/User/Boxy Tomorrow.sublime-theme
//
// Modifications to theme: Boxy Tomorrow.sublime-theme
// Location: Packages/User/Boxy Tomorrow.sublime-theme
//
// The settings below override the theme and its settings
// and will be the last values loaded by Sublime Text.
//
// Note that font sizes can be fractions, e.g. 11.5.
//
@mattst
mattst / Stan Made.tmTheme
Created September 6, 2016 19:50
Stan Made.tmTheme
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!-- My modifications to the Boxy Tomorrow.tmTheme colour scheme. -->
<plist version="1.0">
<dict>
<key>name</key>
<string>Stan Made</string>
<key>colorSpaceName</key>
@mattst
mattst / predawn-DEV.sublime-theme
Last active August 12, 2016 15:38
Example customization file for the Sublime Text 3 Predawn theme
//
// Modifications to theme: predawn-DEV.sublime-theme
// Location: Packages/User/predawn-DEV.sublime-theme
// See: Theme Customisation @ https://goo.gl/dTkjuX
//
// Note that font sizes can be fractions, e.g. 11.5
//
[
@mattst
mattst / sort_view_items.py
Last active May 27, 2017 17:12
sort_view_items
def sort_view_items(self):
cs = self.settings.case_sensitive
if self.settings.sort_by_file_name:
sk = lambda vi: (vi.name if cs else vi.name.lower(), vi.group, vi.tab)
elif self.settings.sort_by_folder:
sk = lambda vi: (vi.folder, vi.name if cs else vi.name.lower())
@mattst
mattst / sort_view_items_PEP8.py
Created August 7, 2016 17:52
sort_view_items PEP8
def sort_view_items(self):
cs = self.settings.case_sensitive
if self.settings.sort_by_file_name:
self.view_items.sort(key = lambda vi: (vi.name if cs else vi.name.lower(), vi.group, vi.tab))
elif self.settings.sort_by_folder:
self.view_items.sort(key = lambda vi: (vi.folder, vi.name if cs else vi.name.lower()))