Skip to content

Instantly share code, notes, and snippets.

@msongz
Created January 22, 2021 17:04
Show Gist options
  • Save msongz/e7751451c71b404a6a8406db68252305 to your computer and use it in GitHub Desktop.
Save msongz/e7751451c71b404a6a8406db68252305 to your computer and use it in GitHub Desktop.
fast setup project folder with keyboard maestro
<?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">
<plist version="1.0">
<array>
<dict>
<key>Activate</key>
<string>Normal</string>
<key>CreationDate</key>
<real>611489812.61455905</real>
<key>CustomIconData</key>
<string>KMEP-ToolbarAdvanced</string>
<key>Macros</key>
<array>
<dict>
<key>Actions</key>
<array>
<dict>
<key>ActionColor</key>
<string>Yellow</string>
<key>IsDisclosed</key>
<false/>
<key>MacroActionType</key>
<string>Comment</string>
<key>StyledText</key>
<data>
cnRmZAAAAAADAAAAAgAAAAcAAABU
WFQucnRmAQAAAC79AQAAKwAAAAEA
AAD1AQAAe1xydGYxXGFuc2lcYW5z
aWNwZzEyNTJcY29jb2FydGYyNTEz
Clxjb2NvYXRleHRzY2FsaW5nMFxj
b2NvYXBsYXRmb3JtMHtcZm9udHRi
bFxmMFxmbmlsXGZjaGFyc2V0MCBI
ZWx2ZXRpY2FOZXVlO30Ke1xjb2xv
cnRibDtccmVkMjU1XGdyZWVuMjU1
XGJsdWUyNTU7XHJlZDBcZ3JlZW4w
XGJsdWUwO30Ke1wqXGV4cGFuZGVk
Y29sb3J0Ymw7O1xjc2dyYXlcYzA7
fQpccGFyZFx0eDU2MFx0eDExMjBc
dHgxNjgwXHR4MjI0MFx0eDI4MDBc
dHgzMzYwXHR4MzkyMFx0eDQ0ODBc
dHg1MDQwXHR4NTYwMFx0eDYxNjBc
dHg2NzIwXHBhcmRpcm5hdHVyYWxc
cGFydGlnaHRlbmZhY3RvcjAKClxm
MFxmczI2IFxjZjIgZm9sZGVyIHN0
cnVjdHVyZSBxdWljayBzZXR1cFwK
djEuMFwKe1xmaWVsZHtcKlxmbGRp
bnN0e0hZUEVSTElOSyAibWFpbHRv
OnNvbmd6bWVuZ0BnbWFpbC5jb20i
fX17XGZsZHJzbHQgc29uZ3ptZW5n
QGdtYWlsLmNvbX19XApodHRwczov
L2dpc3QuZ2l0aHViLmNvbS9tc29u
Z3p9AQAAACMAAAABAAAABwAAAFRY
VC5ydGYQAAAAcPQKYLYBAAAAAAAA
AAAAAA==
</data>
<key>Title</key>
<string>create by songz meng</string>
</dict>
<dict>
<key>ActionName</key>
<string>user input</string>
<key>Buttons</key>
<array>
<dict>
<key>Button</key>
<string>Next</string>
<key>Cancel</key>
<false/>
</dict>
<dict>
<key>Button</key>
<string>Cancel</string>
<key>Cancel</key>
<true/>
</dict>
</array>
<key>IsDisclosed</key>
<false/>
<key>MacroActionType</key>
<string>PromptForUserInput</string>
<key>Prompt</key>
<string>output format: &lt;index&gt;_&lt;client&gt;_&lt;name&gt;_&lt;date&gt;_&lt;editor&gt;</string>
<key>TimeOutAbortsMacro</key>
<true/>
<key>Title</key>
<string>✍️Complete your project info</string>
<key>Variables</key>
<array>
<dict>
<key>Default</key>
<string>%mg_project_index%</string>
<key>Variable</key>
<string>mg_project_index</string>
</dict>
<dict>
<key>Default</key>
<string>%Variable%mg_project_client%</string>
<key>Variable</key>
<string>mg_project_client</string>
</dict>
<dict>
<key>Default</key>
<string>%Variable%mg_project_name%</string>
<key>Variable</key>
<string>mg_project_name</string>
</dict>
<dict>
<key>Default</key>
<string>%ICUDateTime%yyyy-MM-dd%</string>
<key>Variable</key>
<string>mg_project_date</string>
</dict>
<dict>
<key>Default</key>
<string>%Variable%mg_project_editor%</string>
<key>Variable</key>
<string>mg_project_editor</string>
</dict>
</array>
</dict>
<dict>
<key>ActionName</key>
<string>setting path</string>
<key>FileType</key>
<string>NewFolder</string>
<key>IsDisclosed</key>
<false/>
<key>MacroActionType</key>
<string>PromptForFile</string>
<key>NotifyOnFailure</key>
<false/>
<key>Parameter</key>
<string>%mg_project_index%_%mg_project_client%_%mg_project_name%_%mg_project_date%_%mg_project_editor%</string>
<key>Variable</key>
<string>projFolder</string>
<key>WindowTitle</key>
<string>📁Select the path</string>
</dict>
<dict>
<key>ActionName</key>
<string>create folder tree</string>
<key>DisplayKind</key>
<string>Window</string>
<key>HonourFailureSettings</key>
<true/>
<key>IncludeStdErr</key>
<false/>
<key>IsDisclosed</key>
<false/>
<key>MacroActionType</key>
<string>ExecuteShellScript</string>
<key>Path</key>
<string></string>
<key>Source</key>
<string>Nothing</string>
<key>Text</key>
<string>mkdir -p $KMVAR_projFolder/{\
01-PROJECT/{\
01-Ae,\
02-Ps,\
03-Ai,\
04-C4D,\
05-Pr,\
06-FCPX,\
07-Davinci,\
08-Au,\
09-An,\
10-Xd,\
11-Figma,\
12-OTHER\
},\
02-FOOTAGE/{\
01-Videos/{\
01-Shooting,\
02-Sequences,\
03-Reference,\
},\
02-Audios/{\
01-BGM,\
02-SFX,\
03-VO\
},\
03-Images,\
04-Fonts,\
05-Models,\
},\
03-RENDER/{,\
01-Ae,\
02-C4D,\
03-Handbrake,\
},\
04-DOCUMENT/{,\
01-Database,\
02-Client,\
03-Host,\
},\
05-OUTPUT\
} </string>
<key>TimeOutAbortsMacro</key>
<true/>
<key>TrimResults</key>
<true/>
<key>TrimResultsNew</key>
<true/>
<key>UseText</key>
<true/>
</dict>
<dict>
<key>ActionName</key>
<string>create file placeholder</string>
<key>DisplayKind</key>
<string>Window</string>
<key>HonourFailureSettings</key>
<true/>
<key>IncludeStdErr</key>
<false/>
<key>IsDisclosed</key>
<false/>
<key>MacroActionType</key>
<string>ExecuteShellScript</string>
<key>Path</key>
<string></string>
<key>Source</key>
<string>Nothing</string>
<key>Text</key>
<string>fileName=$KMVAR_mg_project_index'_'$KMVAR_mg_project_client'_'$KMVAR_mg_project_name'_'$KMVAR_mg_project_date'_'$KMVAR_mg_project_editor
touch $KMVAR_projFolder/{\
01-PROJECT/{\
01-Ae/${fileName}.aep,\
02-Ps/${fileName}.psd,\
03-Ai/${fileName}.ai,\
04-C4D/${fileName}.c4d,\
05-Pr,\
06-FCPX,\
07-Davinci,\
08-Au,\
09-An,\
10-Xd,\
11-Figma,\
12-OTHER\
},\
02-FOOTAGE/{\
01-Videos/{\
01-Shooting,\
02-Sequences,\
03-Reference,\
},\
02-Audios/{\
01-BGM,\
02-SFX,\
03-VO\
},\
03-Images,\
04-Fonts,\
05-Models,\
},\
03-RENDER/{,\
01-Ae,\
02-C4D,\
03-Handbrake,\
},\
04-DOCUMENT/{,\
01-Database,\
02-Client,\
03-Host/${fileName}.pdf,\
},\
05-OUTPUT\
}
</string>
<key>TimeOutAbortsMacro</key>
<true/>
<key>TrimResults</key>
<true/>
<key>TrimResultsNew</key>
<true/>
<key>UseText</key>
<true/>
</dict>
<dict>
<key>ActionName</key>
<string>open project folder</string>
<key>IsDefaultApplication</key>
<true/>
<key>IsDisclosed</key>
<false/>
<key>MacroActionType</key>
<string>Open1File</string>
<key>Path</key>
<string>%projFolder%</string>
</dict>
</array>
<key>CreationDate</key>
<real>611489926.65692496</real>
<key>CustomIconData</key>
<string>KMEP-ToolbarDocumentsFolder</string>
<key>ModificationDate</key>
<real>633023483.11497104</real>
<key>Name</key>
<string>📂new project folder</string>
<key>Triggers</key>
<array>
<dict>
<key>MacroTriggerType</key>
<string>StatusMenu</string>
</dict>
</array>
<key>UID</key>
<string>D9535B29-9904-4EF3-B7DF-F47FA0F4BC06</string>
</dict>
</array>
<key>Name</key>
<string>Workflow</string>
<key>ToggleMacroUID</key>
<string>2CA10E10-04C7-4B1C-9BF0-97B2782F2E77</string>
<key>UID</key>
<string>FDEC70A9-E493-46F6-AFF9-CE621CF546C3</string>
</dict>
</array>
</plist>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment