Dash gardening
change
commit 30954193d3f5c1463bee5ee186d648395f752655
author Alpha Chen <alpha@kejadlen.dev>
date
parent f22bff9c
diff --git a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_man.png b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_man.png
new file mode 100644
index 00000000..49163bc3
Binary files /dev/null and b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_man.png differ
diff --git a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_md.png b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_md.png
new file mode 100644
index 00000000..8dedb702
Binary files /dev/null and b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_md.png differ
diff --git a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_node.png b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_node.png
new file mode 100644
index 00000000..8927e65c
Binary files /dev/null and b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_node.png differ
diff --git a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_py.png b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_py.png
new file mode 100644
index 00000000..859e18fd
Binary files /dev/null and b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_py.png differ
diff --git a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_rails.png b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_rails.png
new file mode 100644
index 00000000..5135aeb3
Binary files /dev/null and b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_rails.png differ
diff --git a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_tf.png b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_tf.png
new file mode 100644
index 00000000..bc696138
Binary files /dev/null and b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/dash_keyword_tf.png differ
diff --git a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/info.plist b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/info.plist
index de36d301..a95b3c6b 100644
--- a/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/info.plist
+++ b/macos/Alfred.alfredpreferences/workflows/user.workflow.35F259A3-BBD9-4A1B-B237-5E149EE1E723/info.plist
@@ -82,33 +82,6 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_apple</key>
-		<array>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_normal</string>
-				<key>modifiers</key>
-				<integer>0</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_cmd</string>
-				<key>modifiers</key>
-				<integer>1048576</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_alt</string>
-				<key>modifiers</key>
-				<integer>524288</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-		</array>
 		<key>dash_keyword_css</key>
 		<array>
 			<dict>
@@ -136,33 +109,6 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_docker</key>
-		<array>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_normal</string>
-				<key>modifiers</key>
-				<integer>0</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_cmd</string>
-				<key>modifiers</key>
-				<integer>1048576</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_alt</string>
-				<key>modifiers</key>
-				<integer>524288</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-		</array>
 		<key>dash_keyword_gem</key>
 		<array>
 			<dict>
@@ -190,60 +136,6 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_haskell</key>
-		<array>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_normal</string>
-				<key>modifiers</key>
-				<integer>0</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_cmd</string>
-				<key>modifiers</key>
-				<integer>1048576</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_alt</string>
-				<key>modifiers</key>
-				<integer>524288</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-		</array>
-		<key>dash_keyword_j</key>
-		<array>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_normal</string>
-				<key>modifiers</key>
-				<integer>0</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_cmd</string>
-				<key>modifiers</key>
-				<integer>1048576</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_alt</string>
-				<key>modifiers</key>
-				<integer>524288</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-		</array>
 		<key>dash_keyword_js</key>
 		<array>
 			<dict>
@@ -298,34 +190,7 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_manpages</key>
-		<array>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_normal</string>
-				<key>modifiers</key>
-				<integer>0</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_cmd</string>
-				<key>modifiers</key>
-				<integer>1048576</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-			<dict>
-				<key>destinationuid</key>
-				<string>dash_action_alt</string>
-				<key>modifiers</key>
-				<integer>524288</integer>
-				<key>modifiersubtext</key>
-				<string></string>
-			</dict>
-		</array>
-		<key>dash_keyword_markdown</key>
+		<key>dash_keyword_man</key>
 		<array>
 			<dict>
 				<key>destinationuid</key>
@@ -352,7 +217,7 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_nodejs</key>
+		<key>dash_keyword_md</key>
 		<array>
 			<dict>
 				<key>destinationuid</key>
@@ -379,7 +244,7 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_python</key>
+		<key>dash_keyword_node</key>
 		<array>
 			<dict>
 				<key>destinationuid</key>
@@ -406,7 +271,7 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_racket</key>
+		<key>dash_keyword_py</key>
 		<array>
 			<dict>
 				<key>destinationuid</key>
@@ -433,7 +298,7 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_rb</key>
+		<key>dash_keyword_rails</key>
 		<array>
 			<dict>
 				<key>destinationuid</key>
@@ -514,7 +379,7 @@
 				<string></string>
 			</dict>
 		</array>
-		<key>dash_keyword_terraform</key>
+		<key>dash_keyword_tf</key>
 		<array>
 			<dict>
 				<key>destinationuid</key>
@@ -773,17 +638,19 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>argumenttype</key>
 				<integer>0</integer>
 				<key>escaping</key>
-				<integer>110</integer>
-				<key>keyword</key>
-				<string>ansible</string>
+				<integer>0</integer>
 				<key>runningsubtext</key>
-				<string>Searching for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "ansible:{query}"</string>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
 				<key>subtext</key>
-				<string>Search Ansible for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>title</key>
-				<string>Search Ansible</string>
+				<string>PLEASE README</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -792,7 +659,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_ansible</string>
+			<string>dash_note_readme</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -802,17 +669,19 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>argumenttype</key>
 				<integer>0</integer>
 				<key>escaping</key>
-				<integer>110</integer>
-				<key>keyword</key>
-				<string>apple</string>
+				<integer>0</integer>
 				<key>runningsubtext</key>
-				<string>Searching for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "apple:{query}"</string>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
 				<key>subtext</key>
-				<string>Search Apple API Reference for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>title</key>
-				<string>Search Apple API Reference</string>
+				<string>PLEASE README</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -821,7 +690,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_apple</string>
+			<string>dash_note_readme</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -831,17 +700,19 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>argumenttype</key>
 				<integer>0</integer>
 				<key>escaping</key>
-				<integer>110</integer>
-				<key>keyword</key>
-				<string>css</string>
+				<integer>0</integer>
 				<key>runningsubtext</key>
-				<string>Searching for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "css:{query}"</string>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
 				<key>subtext</key>
-				<string>Search CSS for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>title</key>
-				<string>Search CSS</string>
+				<string>PLEASE README</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -850,7 +721,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_css</string>
+			<string>dash_note_readme</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -860,17 +731,19 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>argumenttype</key>
 				<integer>0</integer>
 				<key>escaping</key>
-				<integer>110</integer>
-				<key>keyword</key>
-				<string>docker</string>
+				<integer>0</integer>
 				<key>runningsubtext</key>
-				<string>Searching for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "docker:{query}"</string>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
 				<key>subtext</key>
-				<string>Search Docker for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>title</key>
-				<string>Search Docker</string>
+				<string>PLEASE README</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -879,7 +752,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_docker</string>
+			<string>dash_note_readme</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -889,17 +762,19 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>argumenttype</key>
 				<integer>0</integer>
 				<key>escaping</key>
-				<integer>110</integer>
-				<key>keyword</key>
-				<string>gem</string>
+				<integer>0</integer>
 				<key>runningsubtext</key>
-				<string>Searching for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "gem:{query}"</string>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
 				<key>subtext</key>
-				<string>Search rake for "{query}"</string>
+				<string>Please read what's in the "Script:" section below</string>
 				<key>title</key>
-				<string>Search rake</string>
+				<string>PLEASE README</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -908,7 +783,224 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_gem</string>
+			<string>dash_note_readme</string>
+			<key>version</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>config</key>
+			<dict>
+				<key>argumenttype</key>
+				<integer>0</integer>
+				<key>escaping</key>
+				<integer>0</integer>
+				<key>runningsubtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>script</key>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
+				<key>subtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>title</key>
+				<string>PLEASE README</string>
+				<key>type</key>
+				<integer>0</integer>
+				<key>withspace</key>
+				<true/>
+			</dict>
+			<key>type</key>
+			<string>alfred.workflow.input.scriptfilter</string>
+			<key>uid</key>
+			<string>dash_note_readme</string>
+			<key>version</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>config</key>
+			<dict>
+				<key>argumenttype</key>
+				<integer>0</integer>
+				<key>escaping</key>
+				<integer>0</integer>
+				<key>runningsubtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>script</key>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
+				<key>subtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>title</key>
+				<string>PLEASE README</string>
+				<key>type</key>
+				<integer>0</integer>
+				<key>withspace</key>
+				<true/>
+			</dict>
+			<key>type</key>
+			<string>alfred.workflow.input.scriptfilter</string>
+			<key>uid</key>
+			<string>dash_note_readme</string>
+			<key>version</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>config</key>
+			<dict>
+				<key>argumenttype</key>
+				<integer>0</integer>
+				<key>escaping</key>
+				<integer>0</integer>
+				<key>runningsubtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>script</key>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
+				<key>subtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>title</key>
+				<string>PLEASE README</string>
+				<key>type</key>
+				<integer>0</integer>
+				<key>withspace</key>
+				<true/>
+			</dict>
+			<key>type</key>
+			<string>alfred.workflow.input.scriptfilter</string>
+			<key>uid</key>
+			<string>dash_note_readme</string>
+			<key>version</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>config</key>
+			<dict>
+				<key>argumenttype</key>
+				<integer>0</integer>
+				<key>escaping</key>
+				<integer>0</integer>
+				<key>runningsubtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>script</key>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
+				<key>subtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>title</key>
+				<string>PLEASE README</string>
+				<key>type</key>
+				<integer>0</integer>
+				<key>withspace</key>
+				<true/>
+			</dict>
+			<key>type</key>
+			<string>alfred.workflow.input.scriptfilter</string>
+			<key>uid</key>
+			<string>dash_note_readme</string>
+			<key>version</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>config</key>
+			<dict>
+				<key>argumenttype</key>
+				<integer>0</integer>
+				<key>escaping</key>
+				<integer>0</integer>
+				<key>runningsubtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>script</key>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
+				<key>subtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>title</key>
+				<string>PLEASE README</string>
+				<key>type</key>
+				<integer>0</integer>
+				<key>withspace</key>
+				<true/>
+			</dict>
+			<key>type</key>
+			<string>alfred.workflow.input.scriptfilter</string>
+			<key>uid</key>
+			<string>dash_note_readme</string>
+			<key>version</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>config</key>
+			<dict>
+				<key>argumenttype</key>
+				<integer>0</integer>
+				<key>escaping</key>
+				<integer>0</integer>
+				<key>runningsubtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>script</key>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
+				<key>subtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>title</key>
+				<string>PLEASE README</string>
+				<key>type</key>
+				<integer>0</integer>
+				<key>withspace</key>
+				<true/>
+			</dict>
+			<key>type</key>
+			<string>alfred.workflow.input.scriptfilter</string>
+			<key>uid</key>
+			<string>dash_note_readme</string>
+			<key>version</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>config</key>
+			<dict>
+				<key>argumenttype</key>
+				<integer>0</integer>
+				<key>escaping</key>
+				<integer>0</integer>
+				<key>runningsubtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>script</key>
+				<string>Dash dynamically updates this workflow with docset and search profile keywords.
+
+Do not try to change the keywords from within Alfred, as Dash will overwrite your changes. If you want to change a keyword, change it from within Dash (in Preferences &gt; Docsets).
+
+That said, you can edit anything else within this workflow (including adding new triggers/actions/hotkeys).</string>
+				<key>subtext</key>
+				<string>Please read what's in the "Script:" section below</string>
+				<key>title</key>
+				<string>PLEASE README</string>
+				<key>type</key>
+				<integer>0</integer>
+				<key>withspace</key>
+				<true/>
+			</dict>
+			<key>type</key>
+			<string>alfred.workflow.input.scriptfilter</string>
+			<key>uid</key>
+			<string>dash_note_readme</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -920,15 +1012,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>haskell</string>
+				<string>ansible</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "haskell:{query}"</string>
+				<string>./dashAlfredWorkflow "ansible:{query}"</string>
 				<key>subtext</key>
-				<string>Search Haskell for "{query}"</string>
+				<string>Search Ansible for "{query}"</string>
 				<key>title</key>
-				<string>Search Haskell</string>
+				<string>Search Ansible</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -937,7 +1029,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_haskell</string>
+			<string>dash_keyword_ansible</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -949,15 +1041,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>j</string>
+				<string>css</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "j:{query}"</string>
+				<string>./dashAlfredWorkflow "css:{query}"</string>
 				<key>subtext</key>
-				<string>Search J for "{query}"</string>
+				<string>Search CSS for "{query}"</string>
 				<key>title</key>
-				<string>Search J</string>
+				<string>Search CSS</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -966,7 +1058,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_j</string>
+			<string>dash_keyword_css</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -978,15 +1070,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>js</string>
+				<string>gem</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "js:{query}"</string>
+				<string>./dashAlfredWorkflow "gem:{query}"</string>
 				<key>subtext</key>
-				<string>Search JavaScript for "{query}"</string>
+				<string>Search rake for "{query}"</string>
 				<key>title</key>
-				<string>Search JavaScript</string>
+				<string>Search rake</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -995,7 +1087,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_js</string>
+			<string>dash_keyword_gem</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1007,15 +1099,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>lua</string>
+				<string>js</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "lua:{query}"</string>
+				<string>./dashAlfredWorkflow "js:{query}"</string>
 				<key>subtext</key>
-				<string>Search Lua 5.4 for "{query}"</string>
+				<string>Search JavaScript for "{query}"</string>
 				<key>title</key>
-				<string>Search Lua 5.4</string>
+				<string>Search JavaScript</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -1024,7 +1116,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_lua</string>
+			<string>dash_keyword_js</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1036,15 +1128,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>manpages</string>
+				<string>lua</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "manpages:{query}"</string>
+				<string>./dashAlfredWorkflow "lua:{query}"</string>
 				<key>subtext</key>
-				<string>Search Man Pages for "{query}"</string>
+				<string>Search Lua 5.4 for "{query}"</string>
 				<key>title</key>
-				<string>Search Man Pages</string>
+				<string>Search Lua 5.4</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -1053,7 +1145,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_manpages</string>
+			<string>dash_keyword_lua</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1065,15 +1157,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>markdown</string>
+				<string>man</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "markdown:{query}"</string>
+				<string>./dashAlfredWorkflow "man:{query}"</string>
 				<key>subtext</key>
-				<string>Search Markdown for "{query}"</string>
+				<string>Search Man Pages for "{query}"</string>
 				<key>title</key>
-				<string>Search Markdown</string>
+				<string>Search Man Pages</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -1082,7 +1174,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_markdown</string>
+			<string>dash_keyword_man</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1094,15 +1186,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>nodejs</string>
+				<string>md</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "nodejs:{query}"</string>
+				<string>./dashAlfredWorkflow "md:{query}"</string>
 				<key>subtext</key>
-				<string>Search Node.js for "{query}"</string>
+				<string>Search Markdown for "{query}"</string>
 				<key>title</key>
-				<string>Search Node.js</string>
+				<string>Search Markdown</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -1111,7 +1203,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_nodejs</string>
+			<string>dash_keyword_md</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1123,15 +1215,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>python</string>
+				<string>node</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "python:{query}"</string>
+				<string>./dashAlfredWorkflow "node:{query}"</string>
 				<key>subtext</key>
-				<string>Search Python 3 for "{query}"</string>
+				<string>Search Node.js for "{query}"</string>
 				<key>title</key>
-				<string>Search Python 3</string>
+				<string>Search Node.js</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -1140,7 +1232,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_python</string>
+			<string>dash_keyword_node</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1152,15 +1244,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>racket</string>
+				<string>py</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "racket:{query}"</string>
+				<string>./dashAlfredWorkflow "py:{query}"</string>
 				<key>subtext</key>
-				<string>Search Racket for "{query}"</string>
+				<string>Search Python 3 for "{query}"</string>
 				<key>title</key>
-				<string>Search Racket</string>
+				<string>Search Python 3</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -1169,7 +1261,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_racket</string>
+			<string>dash_keyword_py</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1181,15 +1273,15 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>rb</string>
+				<string>rails</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "rb:{query}"</string>
+				<string>./dashAlfredWorkflow "rails:{query}"</string>
 				<key>subtext</key>
-				<string>Search Ruby 2.7.2 for "{query}"</string>
+				<string>Search Ruby on Rails 7 for "{query}"</string>
 				<key>title</key>
-				<string>Search Ruby 2.7.2</string>
+				<string>Search Ruby on Rails 7</string>
 				<key>type</key>
 				<integer>0</integer>
 				<key>withspace</key>
@@ -1198,7 +1290,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_rb</string>
+			<string>dash_keyword_rails</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1268,11 +1360,11 @@ That said, you can edit anything else within this workflow (including adding new
 				<key>escaping</key>
 				<integer>110</integer>
 				<key>keyword</key>
-				<string>terraform</string>
+				<string>tf</string>
 				<key>runningsubtext</key>
 				<string>Searching for "{query}"</string>
 				<key>script</key>
-				<string>./dashAlfredWorkflow "terraform:{query}"</string>
+				<string>./dashAlfredWorkflow "tf:{query}"</string>
 				<key>subtext</key>
 				<string>Search Terraform for "{query}"</string>
 				<key>title</key>
@@ -1285,7 +1377,7 @@ That said, you can edit anything else within this workflow (including adding new
 			<key>type</key>
 			<string>alfred.workflow.input.scriptfilter</string>
 			<key>uid</key>
-			<string>dash_keyword_terraform</string>
+			<string>dash_keyword_tf</string>
 			<key>version</key>
 			<integer>0</integer>
 		</dict>
@@ -1362,95 +1454,70 @@ The keyword is either a docset keyword (defined in Preferences &gt; Docsets) or
 			<key>ypos</key>
 			<integer>930</integer>
 		</dict>
-		<key>dash_keyword_apple</key>
+		<key>dash_keyword_css</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1050</integer>
 		</dict>
-		<key>dash_keyword_css</key>
+		<key>dash_keyword_gem</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1170</integer>
 		</dict>
-		<key>dash_keyword_docker</key>
+		<key>dash_keyword_js</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1290</integer>
 		</dict>
-		<key>dash_keyword_gem</key>
+		<key>dash_keyword_lua</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1410</integer>
 		</dict>
-		<key>dash_keyword_haskell</key>
+		<key>dash_keyword_man</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1530</integer>
 		</dict>
-		<key>dash_keyword_j</key>
+		<key>dash_keyword_md</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1650</integer>
 		</dict>
-		<key>dash_keyword_js</key>
+		<key>dash_keyword_node</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1770</integer>
 		</dict>
-		<key>dash_keyword_lua</key>
+		<key>dash_keyword_py</key>
 		<dict>
 			<key>ypos</key>
 			<integer>1890</integer>
 		</dict>
-		<key>dash_keyword_manpages</key>
+		<key>dash_keyword_rails</key>
 		<dict>
 			<key>ypos</key>
 			<integer>2010</integer>
 		</dict>
-		<key>dash_keyword_markdown</key>
+		<key>dash_keyword_ruby</key>
 		<dict>
 			<key>ypos</key>
 			<integer>2130</integer>
 		</dict>
-		<key>dash_keyword_nodejs</key>
+		<key>dash_keyword_rust</key>
 		<dict>
 			<key>ypos</key>
 			<integer>2250</integer>
 		</dict>
-		<key>dash_keyword_python</key>
+		<key>dash_keyword_tf</key>
 		<dict>
 			<key>ypos</key>
 			<integer>2370</integer>
 		</dict>
-		<key>dash_keyword_racket</key>
-		<dict>
-			<key>ypos</key>
-			<integer>2490</integer>
-		</dict>
-		<key>dash_keyword_rb</key>
-		<dict>
-			<key>ypos</key>
-			<integer>2610</integer>
-		</dict>
-		<key>dash_keyword_ruby</key>
-		<dict>
-			<key>ypos</key>
-			<integer>2730</integer>
-		</dict>
-		<key>dash_keyword_rust</key>
-		<dict>
-			<key>ypos</key>
-			<integer>2850</integer>
-		</dict>
-		<key>dash_keyword_terraform</key>
-		<dict>
-			<key>ypos</key>
-			<integer>2970</integer>
-		</dict>
 		<key>dash_keyword_vim</key>
 		<dict>
 			<key>ypos</key>
-			<integer>3090</integer>
+			<integer>2490</integer>
 		</dict>
 		<key>dash_note_readme</key>
 		<dict>
diff --git a/macos/Dash.dashsync/Preferences.plist b/macos/Dash.dashsync/Preferences.plist
index 9c1a1b0b..c5d47e77 100644
--- a/macos/Dash.dashsync/Preferences.plist
+++ b/macos/Dash.dashsync/Preferences.plist
@@ -130,15 +130,19 @@
 			<key>Terraform</key>
 			<dict>
 				<key>date</key>
-				<date>2022-06-11T18:01:06Z</date>
+				<date>2022-07-27T13:50:24Z</date>
 				<key>entry</key>
 				<dict>
 					<key>aliases</key>
-					<array/>
+					<array>
+						<string>terraform</string>
+						<string>tf</string>
+						<string>terra</string>
+					</array>
 					<key>authorLinkHref</key>
 					<string>https://github.com/Kapeli/Dash-User-Contributions/tree/master/docsets/Terraform#readme</string>
 					<key>authorLinkText</key>
-					<string>rolandjohann</string>
+					<string>Roberth Kulbin</string>
 					<key>name</key>
 					<string>Terraform</string>
 					<key>platform</key>
@@ -163,16 +167,20 @@
 		<dict>
 			<key>~/Library/Application Support/Dash/DocSets/JavaScript/JavaScript.docset</key>
 			<string>js:</string>
+			<key>~/Library/Application Support/Dash/DocSets/Man_Pages/Man Pages.docset</key>
+			<string>man:</string>
 			<key>~/Library/Application Support/Dash/DocSets/Markdown/Markdown.docset</key>
-			<string>markdown:</string>
+			<string>md:</string>
 			<key>~/Library/Application Support/Dash/DocSets/NodeJS/NodeJS.docset</key>
-			<string>nodejs:</string>
+			<string>node:</string>
 			<key>~/Library/Application Support/Dash/DocSets/Python_3/Python 3.docset</key>
-			<string>python:</string>
+			<string>py:</string>
 			<key>~/Library/Application Support/Dash/DocSets/Ruby_3/Ruby.docset</key>
 			<string>Ruby:</string>
 			<key>~/Library/Application Support/Dash/Ruby DocSets/rake/rake.docset</key>
 			<string>gem:</string>
+			<key>~/Library/Application Support/Dash/User Contributed/Terraform/Terraform.docset</key>
+			<string>tf:</string>
 			<key>~/Library/Application Support/Dash/Versioned DocSets/Ruby 2 - DHDocsetDownloader/2-7-2/Ruby.docset</key>
 			<string>rb:</string>
 		</dict>
@@ -196,16 +204,6 @@
 				<key>date</key>
 				<date>2021-11-18T00:12:13Z</date>
 			</dict>
-			<key>http://kapeli.com/feeds/Docker.xml</key>
-			<dict>
-				<key>date</key>
-				<date>2021-11-18T00:04:04Z</date>
-			</dict>
-			<key>http://kapeli.com/feeds/Haskell.xml</key>
-			<dict>
-				<key>date</key>
-				<date>2021-11-18T00:03:12Z</date>
-			</dict>
 			<key>http://kapeli.com/feeds/JavaScript.xml</key>
 			<dict>
 				<key>date</key>
@@ -226,15 +224,15 @@
 				<key>date</key>
 				<date>2021-11-18T00:35:30Z</date>
 			</dict>
-			<key>http://kapeli.com/feeds/Racket.xml</key>
+			<key>http://kapeli.com/feeds/Ruby_3.xml</key>
 			<dict>
 				<key>date</key>
-				<date>2021-11-18T00:37:36Z</date>
+				<date>2021-11-18T00:32:27Z</date>
 			</dict>
-			<key>http://kapeli.com/feeds/Ruby_3.xml</key>
+			<key>http://kapeli.com/feeds/Ruby_on_Rails_7.xml</key>
 			<dict>
 				<key>date</key>
-				<date>2021-11-18T00:32:27Z</date>
+				<date>2022-07-27T14:27:48Z</date>
 			</dict>
 			<key>http://kapeli.com/feeds/Rust.xml</key>
 			<dict>
@@ -249,6 +247,21 @@
 		</dict>
 		<key>uninstalled</key>
 		<dict>
+			<key>http://kapeli.com/feeds/Docker.xml</key>
+			<dict>
+				<key>date</key>
+				<date>2022-07-30T18:49:35Z</date>
+			</dict>
+			<key>http://kapeli.com/feeds/Haskell.xml</key>
+			<dict>
+				<key>date</key>
+				<date>2022-07-30T18:49:38Z</date>
+			</dict>
+			<key>http://kapeli.com/feeds/Racket.xml</key>
+			<dict>
+				<key>date</key>
+				<date>2022-07-30T18:49:25Z</date>
+			</dict>
 			<key>http://kapeli.com/feeds/Ruby.xml</key>
 			<dict>
 				<key>date</key>