├── .appcast.xml ├── .gitignore ├── LICENSE ├── README.md ├── SketchTweaks.sketchplugin └── Contents │ ├── Resources │ ├── Propane.framework │ │ ├── Modules │ │ │ └── module.modulemap │ │ ├── Propane │ │ ├── Resources │ │ │ ├── Assets.car │ │ │ ├── Info.plist │ │ │ ├── Propane.storyboardc │ │ │ │ ├── C0A-ay-EAg-view-I9c-1a-WwH.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── ColorTagsVC.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── Eai-IA-31d-view-ISn-2Z-ecY.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── Info.plist │ │ │ │ ├── NSWindowController-6ti-8c-KfL.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── OGP-Jv-ghO-view-A2K-ea-jfB.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── Q0t-Zl-vCT-view-R37-92-goC.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── RrA-Ke-jAg-view-wmH-lc-h3y.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── cbS-Fr-FyK-view-fXP-MC-Fvn.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── collapseGroupsVC.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── dO8-HK-slE-view-qdG-KS-PHf.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ ├── igF-NO-vR2-view-pjf-Ma-YFe.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ │ └── rnO-z4-n5J-view-zvD-c7-4Co.nib │ │ │ │ │ ├── keyedobjects-110000.nib │ │ │ │ │ └── keyedobjects.nib │ │ │ └── script.js │ │ └── _CodeSignature │ │ │ └── CodeResources │ └── icon.tiff │ └── Sketch │ ├── manifest.json │ └── script.js └── img ├── collapse-groups@2x.png ├── color-tags-filter@2x.png ├── color-tags@2x.png ├── icon.png ├── indent-guides@2x.png ├── runner.png ├── save-local@2x.png └── vector-handles@2x.png /.appcast.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Aby Nimbalkar 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Image](img/icon.png?raw=true) 2 | 3 | # Tweaks for Sketch 4 | 5 | Subtle tweaks designed for efficiency. 6 | 7 | ### Requirements 8 | 9 | - Sketch 70.0 or above 10 | - macOS 10.15 Catalina or above 11 | 12 | --- 13 | 14 | ## Install with Sketch Runner 15 | 16 | With Sketch Runner, just go to the `Install` command and search for `Tweaks`. Runner allows you to manage plugins and do much more to speed up your workflow in Sketch. [Download Runner here](http://www.sketchrunner.com). 17 | 18 | [![Runner Screenshot](img/runner.png?raw=true)](http://www.sketchrunner.com) 19 | 20 | > Tweaks is a spinoff from the [Midnight](https://midnightsketch.com) plugin, which included some of the same features under its _Advanced Features_ section. 21 | 22 | # Features 23 | 24 | ## Indent Guides 25 | 26 | Indent Guides give you a better overview of how your nested layers and symbols are structured. 27 | 28 | Indent Guides Preview 29 | 30 | ## Color Tags 31 | 32 | Right-click a layer, group, or page to add a color tag. 33 | 34 | Color Tags Preview 35 | 36 | You can also filter the layer list by tags, making it easy to search for tagged layers. 37 | 38 | Color Tags Filter Preview 39 | 40 | ## Collapse Groups 41 | 42 | A simple button, perfectly positioned above the layer list to help you perform the frequent action of collapsing all groups in your document. 43 | 44 | Collapse Groups Preview 45 | 46 | Hint: Option+Click the button to collapse all artboards and groups except the layers you have selected. 47 | 48 | ## Vector Handles 49 | 50 | The default handles for vector editing are a tad difficult to see on gray backgrounds. Tweaks replaces those handles with high-contrast handles that are clearly visible on all backgrounds. 51 | 52 | Vector Handles Preview 53 | 54 | ## Save Locally 55 | 56 | Save Locally adds an option in the File Menu to directly show the standard Save dialog for saving documents locally. This lets you skip the 3-step process of saving new files to you Mac if you're not using Sketch Cloud. 57 | 58 | Save Locally Preview 59 | 60 | --- 61 | 62 | MIT License © Aby Nimbalkar | [@abynim](http://twitter.com/abynim). 63 | -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module Propane { 2 | umbrella header "Propane.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Propane: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Propane -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Assets.car: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Assets.car -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 20D64 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Propane 11 | CFBundleIdentifier 12 | com.abynim.Propane 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Propane 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 639 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 12D4e 31 | DTPlatformName 32 | macosx 33 | DTPlatformVersion 34 | 11.1 35 | DTSDKBuild 36 | 20C63 37 | DTSDKName 38 | macosx11.1 39 | DTXcode 40 | 1240 41 | DTXcodeBuild 42 | 12D4e 43 | LSMinimumSystemVersion 44 | 10.15 45 | 46 | 47 | -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Info.plist -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects-110000.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects-110000.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects.nib -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/Resources/script.js: -------------------------------------------------------------------------------- 1 | var go = function(context) { 2 | 3 | const osString = NSProcessInfo.processInfo().operatingSystemVersionString(); 4 | const osVersion = parseFloat(osString.componentsSeparatedByString(" ")[1]); 5 | const sketchVersion = parseFloat(NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleShortVersionString")); 6 | if(!osVersion || osVersion < 10.15 || !sketchVersion || sketchVersion < 70.0) { 7 | const message = "Tweaks is only supported on macOS 10.15 (Catalina) with Sketch 70 or above."; 8 | context.document ? context.document.showMessage(message) : console.log(message); 9 | return; 10 | } 11 | 12 | try { Propane.go(context); } 13 | catch(e) { 14 | if(Mocha.sharedRuntime().loadFrameworkWithName_inDirectory('Propane', NSBundle.bundleWithURL(context.plugin.url()).resourceURL().path())) { 15 | Propane.go(context); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/Propane.framework/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | Resources/Assets.car 8 | 9 | 1Xnx/3jtEjT6RLHHwGdlQ4GE4Os= 10 | 11 | Resources/Info.plist 12 | 13 | zl+mAq6Em5DsekchYV6dE5zUZb0= 14 | 15 | Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects-110000.nib 16 | 17 | U7a+2gHpyhKBZnnQ8aFR79awu7o= 18 | 19 | Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects.nib 20 | 21 | M2J1asMoN2iB+gFWmFjO8v2Ob0Y= 22 | 23 | Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects-110000.nib 24 | 25 | y3p2aQjTVVPc8czRVbkYa4xA24Q= 26 | 27 | Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects.nib 28 | 29 | TLVM22bAOqFOQSL23dISSVc167Y= 30 | 31 | Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects-110000.nib 32 | 33 | ygDFO7woTMvrepXHpczz3GBN2UY= 34 | 35 | Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects.nib 36 | 37 | Z0NpyzdS5Rw5nYSK+Lff5cdxolY= 38 | 39 | Resources/Propane.storyboardc/Info.plist 40 | 41 | XPrvZlUeMSWXiXxSbf4f7GEyAfY= 42 | 43 | Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects-110000.nib 44 | 45 | Mc8fxoCc/K4a2ALcZJs+GDagZYU= 46 | 47 | Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects.nib 48 | 49 | Qb5KD+mhNRQ9BXwfcRhpa4v1KFY= 50 | 51 | Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects-110000.nib 52 | 53 | mQb5HxWMfLurhjavFehn2J9vIoc= 54 | 55 | Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects.nib 56 | 57 | bA2eSTTnCXNyeqljB1bFtFjrDWY= 58 | 59 | Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects-110000.nib 60 | 61 | xkhz/x9OZwZEN76ezNQaj8FH1gY= 62 | 63 | Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects.nib 64 | 65 | ORBBcXGxY6CnULl7qSRLgyqzGrU= 66 | 67 | Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects-110000.nib 68 | 69 | 47nUmqPcXwfWHBQCQ5Df7w1TMbM= 70 | 71 | Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects.nib 72 | 73 | hxS7SbLUJdY5S7uqsXymuTqzQOo= 74 | 75 | Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects-110000.nib 76 | 77 | JCpS++Jmz41gI1yp0zAw8VLJuBY= 78 | 79 | Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects.nib 80 | 81 | +3O3TcKXNy2QiJAqP0pytIm+Q08= 82 | 83 | Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects-110000.nib 84 | 85 | NXqPkK61W/6iyetl/eiRdsO/FwE= 86 | 87 | Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects.nib 88 | 89 | BWDqlEnTiGZ38GB1ThTwmHepKpA= 90 | 91 | Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects-110000.nib 92 | 93 | CbeUYz4pYzb4eCOOgzHpFfoope8= 94 | 95 | Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects.nib 96 | 97 | o0qEEswytHUTg2ZLjPO6smYUmsY= 98 | 99 | Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects-110000.nib 100 | 101 | uuMhVZoU7bBs48wTYX3JC3BdJnw= 102 | 103 | Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects.nib 104 | 105 | hQMXvOQ8K5XJpxHlacPuSlAbcmM= 106 | 107 | Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects-110000.nib 108 | 109 | l94bQ5jpL2yiM/J8n5oeuJTWiDA= 110 | 111 | Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects.nib 112 | 113 | viGN+FcPzoO80KZ0Ww0ZLqCUQfo= 114 | 115 | Resources/script.js 116 | 117 | BTGszSRNpWsBwoabpFpTpwjpZrQ= 118 | 119 | 120 | files2 121 | 122 | Modules/module.modulemap 123 | 124 | hash2 125 | 126 | GTA1H5pfCvA5rwFg8SuAq85Ad34vNIhOlD++HpXZSlM= 127 | 128 | 129 | Resources/Assets.car 130 | 131 | hash2 132 | 133 | xm3waX07TljUfjIhN27z0gE+EDI1z1+j640bygwil/c= 134 | 135 | 136 | Resources/Info.plist 137 | 138 | hash2 139 | 140 | 5XEtL8HebAsEsvwxfulWIHlbYwWffWr0mos+gHkTiCY= 141 | 142 | 143 | Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects-110000.nib 144 | 145 | hash2 146 | 147 | ds1hDj5JVapxcCMwEanYnz/KrYQrePVrblbQELvoOTc= 148 | 149 | 150 | Resources/Propane.storyboardc/C0A-ay-EAg-view-I9c-1a-WwH.nib/keyedobjects.nib 151 | 152 | hash2 153 | 154 | Km65ygrTNw5q28z10+86NiUezTJx+PEZdz6SwpTRo4k= 155 | 156 | 157 | Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects-110000.nib 158 | 159 | hash2 160 | 161 | +LXValgjCDV9+ABwiNmj8i/DtMiTKwSlE+IomJ+RQyU= 162 | 163 | 164 | Resources/Propane.storyboardc/ColorTagsVC.nib/keyedobjects.nib 165 | 166 | hash2 167 | 168 | 4N4xEfH6c1YCMxVOmIPRwzlEBm6Yde+SNoKbii0fH6E= 169 | 170 | 171 | Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects-110000.nib 172 | 173 | hash2 174 | 175 | AOySjC/Aqzx3J1yClIy9RB9UemPGORF0uaEiW/bp/gU= 176 | 177 | 178 | Resources/Propane.storyboardc/Eai-IA-31d-view-ISn-2Z-ecY.nib/keyedobjects.nib 179 | 180 | hash2 181 | 182 | KnvGngFH6rfiaFKJf5DV19Ji3VzxwvuqwHWgRkG9nys= 183 | 184 | 185 | Resources/Propane.storyboardc/Info.plist 186 | 187 | hash2 188 | 189 | JolXUsnrFPnM/x7cGgtIS/KvzEL610GdX83kKRCWcxg= 190 | 191 | 192 | Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects-110000.nib 193 | 194 | hash2 195 | 196 | XYXn6+c0yOT1jjGtI5PLuhyb9tv4J5Xh5XGt7bPQDHk= 197 | 198 | 199 | Resources/Propane.storyboardc/NSWindowController-6ti-8c-KfL.nib/keyedobjects.nib 200 | 201 | hash2 202 | 203 | qIH1sEfvrpMGxTV/STcRc7CujCQ1AQi2k3tAe9sFpeo= 204 | 205 | 206 | Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects-110000.nib 207 | 208 | hash2 209 | 210 | +pOS4LhfptQmo0biAGJ3JEfjgMmAQDNYERVCbyxm8h8= 211 | 212 | 213 | Resources/Propane.storyboardc/OGP-Jv-ghO-view-A2K-ea-jfB.nib/keyedobjects.nib 214 | 215 | hash2 216 | 217 | mgK0r4vdsqXF8JbVRYxayISnjeCGCQXM72fAb7XC/08= 218 | 219 | 220 | Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects-110000.nib 221 | 222 | hash2 223 | 224 | dGBoaURkBn9lv7B1JIEbiR46QPCalkCda8JHtfnZ/pg= 225 | 226 | 227 | Resources/Propane.storyboardc/Q0t-Zl-vCT-view-R37-92-goC.nib/keyedobjects.nib 228 | 229 | hash2 230 | 231 | kHDKwvXIXwNcbKgItw9iqbgmB9P+ddxGtAb4bkHyhUE= 232 | 233 | 234 | Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects-110000.nib 235 | 236 | hash2 237 | 238 | w8fobsW3w+Jh0QCzucgk4kPC6z3pgYLsjuoJ0e9muCg= 239 | 240 | 241 | Resources/Propane.storyboardc/RrA-Ke-jAg-view-wmH-lc-h3y.nib/keyedobjects.nib 242 | 243 | hash2 244 | 245 | eJeFHbzDcO+Xiyi0MrK3ZRtNUJz1gafJiYvKJgyIyzY= 246 | 247 | 248 | Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects-110000.nib 249 | 250 | hash2 251 | 252 | t85sot5JOURFwrk/jZ6FV+kEpPD++Su9o3QItYs2/sc= 253 | 254 | 255 | Resources/Propane.storyboardc/cbS-Fr-FyK-view-fXP-MC-Fvn.nib/keyedobjects.nib 256 | 257 | hash2 258 | 259 | RIjK0QP8hbDp7Bpt/m1feDQbxkxwUgkRyACeNxA8hl8= 260 | 261 | 262 | Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects-110000.nib 263 | 264 | hash2 265 | 266 | 3d6C7E7QkpppisRmVBjekMk9eVQa9XsSEez636mytKI= 267 | 268 | 269 | Resources/Propane.storyboardc/collapseGroupsVC.nib/keyedobjects.nib 270 | 271 | hash2 272 | 273 | itsvZp8DN3LbSNNUzipuzldzRF8OqghQ70lf1tCbdd8= 274 | 275 | 276 | Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects-110000.nib 277 | 278 | hash2 279 | 280 | vF9+gl6VEVQqD0ZvMwVJMTjxFXNsfOvDVezbABodY18= 281 | 282 | 283 | Resources/Propane.storyboardc/dO8-HK-slE-view-qdG-KS-PHf.nib/keyedobjects.nib 284 | 285 | hash2 286 | 287 | eSkopRZaPDLXIH17dvol0Zk/2cP7VsPCWwMlLVb5neQ= 288 | 289 | 290 | Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects-110000.nib 291 | 292 | hash2 293 | 294 | PK6LpeeMhrhNSHiK1ZI9QZVD3pKEjdaMACv3IbmsTPs= 295 | 296 | 297 | Resources/Propane.storyboardc/igF-NO-vR2-view-pjf-Ma-YFe.nib/keyedobjects.nib 298 | 299 | hash2 300 | 301 | dru2fFvNpnv/ZPYicmVViXY+f1IlJYZlfMzn83Jqhnc= 302 | 303 | 304 | Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects-110000.nib 305 | 306 | hash2 307 | 308 | q+iEgZnRkHi3d63fKNOv0P/S0AX0TcTXfJEpQak5HRo= 309 | 310 | 311 | Resources/Propane.storyboardc/rnO-z4-n5J-view-zvD-c7-4Co.nib/keyedobjects.nib 312 | 313 | hash2 314 | 315 | g9yWZvMRlNsJIVFXZRaPBShldzBgog/xdUdHiQZVz2o= 316 | 317 | 318 | Resources/script.js 319 | 320 | hash2 321 | 322 | Sf+kTLqu+d5pMnF3dfGr6MwsusSGtS30aarGrQM/4E8= 323 | 324 | 325 | 326 | rules 327 | 328 | ^Resources/ 329 | 330 | ^Resources/.*\.lproj/ 331 | 332 | optional 333 | 334 | weight 335 | 1000 336 | 337 | ^Resources/.*\.lproj/locversion.plist$ 338 | 339 | omit 340 | 341 | weight 342 | 1100 343 | 344 | ^Resources/Base\.lproj/ 345 | 346 | weight 347 | 1010 348 | 349 | ^version.plist$ 350 | 351 | 352 | rules2 353 | 354 | .*\.dSYM($|/) 355 | 356 | weight 357 | 11 358 | 359 | ^(.*/)?\.DS_Store$ 360 | 361 | omit 362 | 363 | weight 364 | 2000 365 | 366 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 367 | 368 | nested 369 | 370 | weight 371 | 10 372 | 373 | ^.* 374 | 375 | ^Info\.plist$ 376 | 377 | omit 378 | 379 | weight 380 | 20 381 | 382 | ^PkgInfo$ 383 | 384 | omit 385 | 386 | weight 387 | 20 388 | 389 | ^Resources/ 390 | 391 | weight 392 | 20 393 | 394 | ^Resources/.*\.lproj/ 395 | 396 | optional 397 | 398 | weight 399 | 1000 400 | 401 | ^Resources/.*\.lproj/locversion.plist$ 402 | 403 | omit 404 | 405 | weight 406 | 1100 407 | 408 | ^Resources/Base\.lproj/ 409 | 410 | weight 411 | 1010 412 | 413 | ^[^/]+$ 414 | 415 | nested 416 | 417 | weight 418 | 10 419 | 420 | ^embedded\.provisionprofile$ 421 | 422 | weight 423 | 20 424 | 425 | ^version\.plist$ 426 | 427 | weight 428 | 20 429 | 430 | 431 | 432 | 433 | -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Resources/icon.tiff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/SketchTweaks.sketchplugin/Contents/Resources/icon.tiff -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Sketch/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "commands" : [ 3 | { 4 | "script" : "script.js", 5 | "handler" : "go", 6 | "shortcut" : "", 7 | "name" : "Tweaks", 8 | "identifier" : "settings" 9 | }, 10 | { 11 | "script": "script.js", 12 | "handlers": { 13 | "actions": { 14 | "Startup" : "go" 15 | } 16 | } 17 | } 18 | ], 19 | "menu": { 20 | "title" : "Tweaks", 21 | "isRoot" : true, 22 | "items": [ 23 | "settings" 24 | ] 25 | }, 26 | "identifier" : "com.abynim.Propane", 27 | "version" : "1.2", 28 | "icon" : "icon.tiff", 29 | "description" : "Subtle tweaks designed for efficiency", 30 | "author" : "Aby Nimbalkar", 31 | "name" : "Tweaks", 32 | "disableCocoaScriptPreprocessor" : true, 33 | "homepage" : "https://github.com/abynim/sketch-tweaks", 34 | "appcast" : "https://raw.githubusercontent.com/abynim/sketch-tweaks/master/.appcast.xml" 35 | } 36 | -------------------------------------------------------------------------------- /SketchTweaks.sketchplugin/Contents/Sketch/script.js: -------------------------------------------------------------------------------- 1 | var go = function(context) { 2 | 3 | const osString = NSProcessInfo.processInfo().operatingSystemVersionString(); 4 | const osVersion = parseFloat(osString.componentsSeparatedByString(" ")[1]); 5 | const sketchVersion = parseFloat(NSBundle.mainBundle().objectForInfoDictionaryKey("CFBundleShortVersionString")); 6 | if(!osVersion || osVersion < 10.15 || !sketchVersion || sketchVersion < 70.0) { 7 | const message = "Tweaks is only supported on macOS 10.15 (Catalina) with Sketch 70 or above."; 8 | context.document ? context.document.showMessage(message) : console.log(message); 9 | return; 10 | } 11 | 12 | try { Propane.go(context); } 13 | catch(e) { 14 | if(Mocha.sharedRuntime().loadFrameworkWithName_inDirectory('Propane', NSBundle.bundleWithURL(context.plugin.url()).resourceURL().path())) { 15 | Propane.go(context); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /img/collapse-groups@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/collapse-groups@2x.png -------------------------------------------------------------------------------- /img/color-tags-filter@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/color-tags-filter@2x.png -------------------------------------------------------------------------------- /img/color-tags@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/color-tags@2x.png -------------------------------------------------------------------------------- /img/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/icon.png -------------------------------------------------------------------------------- /img/indent-guides@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/indent-guides@2x.png -------------------------------------------------------------------------------- /img/runner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/runner.png -------------------------------------------------------------------------------- /img/save-local@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/save-local@2x.png -------------------------------------------------------------------------------- /img/vector-handles@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/abynim/sketch-tweaks/cbc64e15a95e9b59404fda35ec8c385e297625d9/img/vector-handles@2x.png --------------------------------------------------------------------------------