hookapp 2.0.8 → 2.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,177 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>module Hook::PromptSTD - hookapp</title>
8
+
9
+ <script type="text/javascript">
10
+ var rdoc_rel_prefix = "../";
11
+ var index_rel_prefix = "../";
12
+ </script>
13
+
14
+ <script src="../js/navigation.js" defer></script>
15
+ <script src="../js/search.js" defer></script>
16
+ <script src="../js/search_index.js" defer></script>
17
+ <script src="../js/searcher.js" defer></script>
18
+ <script src="../js/darkfish.js" defer></script>
19
+
20
+ <link href="../css/fonts.css" rel="stylesheet">
21
+ <link href="../css/rdoc.css" rel="stylesheet">
22
+
23
+
24
+ <body id="top" role="document" class="module">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="../index.html" rel="home">Home</a>
30
+ </h2>
31
+
32
+ <div id="table-of-contents-navigation">
33
+ <a href="../table_of_contents.html#pages">Pages</a>
34
+ <a href="../table_of_contents.html#classes">Classes</a>
35
+ <a href="../table_of_contents.html#methods">Methods</a>
36
+ </div>
37
+ </div>
38
+
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
40
+ <form action="#" method="get" accept-charset="utf-8">
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search" spellcheck="false"
45
+ title="Type to search, Up and Down to navigate, Enter to load">
46
+ </div>
47
+
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
53
+
54
+ </div>
55
+
56
+
57
+
58
+ <div id="class-metadata">
59
+
60
+
61
+
62
+
63
+
64
+ <!-- Method Quickref -->
65
+ <div id="method-list-section" class="nav-section">
66
+ <h3>Methods</h3>
67
+
68
+ <ul class="link-list" role="directory">
69
+ <li ><a href="#method-i-clear_screen">#clear_screen</a>
70
+ <li ><a href="#method-i-restore_std">#restore_std</a>
71
+ <li ><a href="#method-i-silence_std">#silence_std</a>
72
+ </ul>
73
+ </div>
74
+
75
+ </div>
76
+ </nav>
77
+
78
+ <main role="main" aria-labelledby="module-Hook::PromptSTD">
79
+ <h1 id="module-Hook::PromptSTD" class="module">
80
+ module Hook::PromptSTD
81
+ </h1>
82
+
83
+ <section class="description">
84
+
85
+ </section>
86
+
87
+ <section id="5Buntitled-5D" class="documentation-section">
88
+
89
+
90
+
91
+
92
+
93
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
94
+ <header>
95
+ <h3>Public Instance Methods</h3>
96
+ </header>
97
+
98
+ <div id="method-i-clear_screen" class="method-detail ">
99
+ <div class="method-heading">
100
+ <span class="method-name">clear_screen</span><span
101
+ class="method-args">(msg = nil)</span>
102
+ <span class="method-click-advice">click to toggle source</span>
103
+ </div>
104
+
105
+ <div class="method-description">
106
+ <p>Clear the terminal screen</p>
107
+
108
+ <div class="method-source-code" id="clear_screen-source">
109
+ <pre><span class="ruby-comment"># File lib/hook/prompt.rb, line 8</span>
110
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">clear_screen</span>(<span class="ruby-identifier">msg</span> = <span class="ruby-keyword">nil</span>)
111
+ <span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;\e[H\e[2J&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">$stdout</span>.<span class="ruby-identifier">tty?</span>
112
+ <span class="ruby-identifier">puts</span> <span class="ruby-identifier">msg</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">msg</span>.<span class="ruby-identifier">good?</span>
113
+ <span class="ruby-keyword">end</span></pre>
114
+ </div>
115
+ </div>
116
+
117
+
118
+ </div>
119
+
120
+ <div id="method-i-restore_std" class="method-detail ">
121
+ <div class="method-heading">
122
+ <span class="method-name">restore_std</span><span
123
+ class="method-args">()</span>
124
+ <span class="method-click-advice">click to toggle source</span>
125
+ </div>
126
+
127
+ <div class="method-description">
128
+ <p>Restore silenced STDOUT and STDERR</p>
129
+
130
+ <div class="method-source-code" id="restore_std-source">
131
+ <pre><span class="ruby-comment"># File lib/hook/prompt.rb, line 26</span>
132
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">restore_std</span>
133
+ <span class="ruby-identifier">$stdout</span> = <span class="ruby-constant">STDOUT</span>
134
+ <span class="ruby-identifier">$stderr</span> = <span class="ruby-constant">STDERR</span>
135
+ <span class="ruby-keyword">end</span></pre>
136
+ </div>
137
+ </div>
138
+
139
+
140
+ </div>
141
+
142
+ <div id="method-i-silence_std" class="method-detail ">
143
+ <div class="method-heading">
144
+ <span class="method-name">silence_std</span><span
145
+ class="method-args">(file = &#39;/dev/null&#39;)</span>
146
+ <span class="method-click-advice">click to toggle source</span>
147
+ </div>
148
+
149
+ <div class="method-description">
150
+ <p>Redirect STDOUT and STDERR to /dev/null or file</p>
151
+
152
+ <p>@param file [String] a file path to redirect to</p>
153
+
154
+ <div class="method-source-code" id="silence_std-source">
155
+ <pre><span class="ruby-comment"># File lib/hook/prompt.rb, line 18</span>
156
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">silence_std</span>(<span class="ruby-identifier">file</span> = <span class="ruby-string">&#39;/dev/null&#39;</span>)
157
+ <span class="ruby-identifier">$stdout</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file</span>, <span class="ruby-string">&#39;w&#39;</span>)
158
+ <span class="ruby-identifier">$stderr</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file</span>, <span class="ruby-string">&#39;w&#39;</span>)
159
+ <span class="ruby-keyword">end</span></pre>
160
+ </div>
161
+ </div>
162
+
163
+
164
+ </div>
165
+
166
+ </section>
167
+
168
+ </section>
169
+ </main>
170
+
171
+
172
+ <footer id="validator-badges" role="contentinfo">
173
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
174
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.3.
175
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
176
+ </footer>
177
+
data/html/Hook.html CHANGED
@@ -94,7 +94,7 @@
94
94
 
95
95
  <footer id="validator-badges" role="contentinfo">
96
96
  <p><a href="https://validator.w3.org/check/referer">Validate</a>
97
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.2.
97
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.3.
98
98
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
99
99
  </footer>
100
100
 
data/html/HookApp.html CHANGED
@@ -65,6 +65,14 @@
65
65
  </div>
66
66
 
67
67
 
68
+ <div id="includes-section" class="nav-section">
69
+ <h3>Included Modules</h3>
70
+
71
+ <ul class="link-list">
72
+ <li><a class="include" href="Hook/Prompt.html">Hook::Prompt</a>
73
+ </ul>
74
+ </div>
75
+
68
76
 
69
77
 
70
78
  <!-- Method Quickref -->
@@ -75,6 +83,7 @@
75
83
  <li ><a href="#method-i-all_bookmarks">#all_bookmarks</a>
76
84
  <li ><a href="#method-i-bookmark_for">#bookmark_for</a>
77
85
  <li ><a href="#method-i-bookmark_from_app">#bookmark_from_app</a>
86
+ <li ><a href="#method-i-browse_bookmarks">#browse_bookmarks</a>
78
87
  <li ><a href="#method-i-clip_bookmark">#clip_bookmark</a>
79
88
  <li ><a href="#method-i-clone_hooks">#clone_hooks</a>
80
89
  <li ><a href="#method-i-copy_bookmark">#copy_bookmark</a>
@@ -134,7 +143,7 @@
134
143
  <p>Get all known bookmarks. Return array of bookmark hashes.</p>
135
144
 
136
145
  <div class="method-source-code" id="all_bookmarks-source">
137
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 140</span>
146
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 142</span>
138
147
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">all_bookmarks</span>
139
148
  <span class="ruby-string">`osascript &lt;&lt;&#39;APPLESCRIPT&#39;
140
149
  tell application &quot;Hook&quot;
@@ -167,7 +176,7 @@
167
176
  <p>Get a <a href="Hook.html"><code>Hook</code></a> bookmark for file or URL. Return bookmark hash.</p>
168
177
 
169
178
  <div class="method-source-code" id="bookmark_for-source">
170
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 32</span>
179
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 34</span>
171
180
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">bookmark_for</span>(<span class="ruby-identifier">url</span>)
172
181
  <span class="ruby-identifier">url</span>.<span class="ruby-identifier">valid_hook!</span>
173
182
  <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Invalid target: #{url}&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">url</span>
@@ -207,7 +216,7 @@
207
216
  <p>Get a bookmark from the foreground document of specified app.</p>
208
217
 
209
218
  <div class="method-source-code" id="bookmark_from_app-source">
210
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 81</span>
219
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 83</span>
211
220
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">bookmark_from_app</span>(<span class="ruby-identifier">app</span>, <span class="ruby-identifier">opts</span>)
212
221
  <span class="ruby-identifier">mark</span> = <span class="ruby-node">`osascript &lt;&lt;&#39;APPLESCRIPT&#39;
213
222
  tell application &quot;System Events&quot; to set front_app to name of first application process whose frontmost is true
@@ -233,6 +242,46 @@
233
242
  </div>
234
243
 
235
244
 
245
+ </div>
246
+
247
+ <div id="method-i-browse_bookmarks" class="method-detail ">
248
+ <div class="method-heading">
249
+ <span class="method-name">browse_bookmarks</span><span
250
+ class="method-args">(glob)</span>
251
+ <span class="method-click-advice">click to toggle source</span>
252
+ </div>
253
+
254
+ <div class="method-description">
255
+
256
+
257
+ <div class="method-source-code" id="browse_bookmarks-source">
258
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 258</span>
259
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">browse_bookmarks</span>(<span class="ruby-identifier">glob</span>)
260
+ <span class="ruby-identifier">root</span> = <span class="ruby-keyword">if</span> <span class="ruby-identifier">glob</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
261
+ <span class="ruby-identifier">glob</span>.<span class="ruby-identifier">count</span>.<span class="ruby-identifier">positive?</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">glob</span> <span class="ruby-operator">:</span> <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-string">&#39;**/*&#39;</span>)
262
+ <span class="ruby-keyword">elsif</span> <span class="ruby-identifier">glob</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">glob</span>)
263
+ <span class="ruby-identifier">hooks</span> = <span class="ruby-identifier">get_hooks</span>(<span class="ruby-identifier">glob</span>)
264
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">select_hook</span>(<span class="ruby-identifier">hooks</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">hooks</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-identifier">glob</span>)
265
+
266
+ <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>([<span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">glob</span>), <span class="ruby-string">&#39;**/*&#39;</span>])
267
+ <span class="ruby-keyword">else</span>
268
+ <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-identifier">glob</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">glob</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-string">&#39;**/*&#39;</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">glob</span>)
269
+ <span class="ruby-keyword">end</span>
270
+
271
+ <span class="ruby-identifier">args</span> = [<span class="ruby-string">&#39;--layout=reverse-list&#39;</span>,
272
+ <span class="ruby-string">&#39;--header=&quot;esc: cancel, return: open&quot;&#39;</span>,
273
+ <span class="ruby-string">&#39;--prompt=&quot; Select file &gt; &quot;&#39;</span>,
274
+ <span class="ruby-string">%(--preview=&#39;hook ls {1}&#39;)</span>,
275
+ <span class="ruby-string">&#39;--height=60%&#39;</span>,
276
+ <span class="ruby-string">&#39;--min-height=10&#39;</span>]
277
+
278
+ <span class="ruby-identifier">sel</span> = <span class="ruby-node">`echo #{Shellwords.escape(root.join(&quot;\n&quot;))} | &#39;#{fzf}&#39; #{args.join(&#39; &#39;)}`</span>.<span class="ruby-identifier">chomp</span>
279
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">open_linked</span>(<span class="ruby-identifier">sel</span>)
280
+ <span class="ruby-keyword">end</span></pre>
281
+ </div>
282
+ </div>
283
+
284
+
236
285
  </div>
237
286
 
238
287
  <div id="method-i-clip_bookmark" class="method-detail ">
@@ -246,7 +295,7 @@
246
295
  <p>Create a bookmark for specified file/url and copy to the clipboard.</p>
247
296
 
248
297
  <div class="method-source-code" id="clip_bookmark-source">
249
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 181</span>
298
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 183</span>
250
299
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">clip_bookmark</span>(<span class="ruby-identifier">url</span>, <span class="ruby-identifier">opts</span>)
251
300
  <span class="ruby-identifier">mark</span> = <span class="ruby-identifier">bookmark_for</span>(<span class="ruby-identifier">url</span>)
252
301
  <span class="ruby-identifier">copy_bookmark</span>(<span class="ruby-identifier">mark</span>[<span class="ruby-value">:name</span>], <span class="ruby-identifier">mark</span>[<span class="ruby-value">:url</span>], <span class="ruby-identifier">opts</span>)
@@ -268,7 +317,7 @@
268
317
  <p>Copy all hooks from source file to target file</p>
269
318
 
270
319
  <div class="method-source-code" id="clone_hooks-source">
271
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 313</span>
320
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 336</span>
272
321
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">clone_hooks</span>(<span class="ruby-identifier">args</span>)
273
322
  <span class="ruby-identifier">target</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">pop</span>.<span class="ruby-identifier">valid_hook</span>
274
323
  <span class="ruby-identifier">source</span> = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">valid_hook</span>
@@ -307,7 +356,7 @@
307
356
  <p>Create a bookmark from specified title and url and copy to the clipboard.</p>
308
357
 
309
358
  <div class="method-source-code" id="copy_bookmark-source">
310
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 187</span>
359
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 189</span>
311
360
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">copy_bookmark</span>(<span class="ruby-identifier">title</span>, <span class="ruby-identifier">url</span>, <span class="ruby-identifier">opts</span>)
312
361
  <span class="ruby-identifier">raise</span> <span class="ruby-string">&quot;No URL found&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">url</span>.<span class="ruby-identifier">empty?</span>
313
362
  <span class="ruby-identifier">title</span> = <span class="ruby-identifier">title</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-string">&#39;No title&#39;</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">title</span>
@@ -332,7 +381,7 @@
332
381
 
333
382
 
334
383
  <div class="method-source-code" id="decode-source">
335
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 499</span>
384
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 522</span>
336
385
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decode</span>(<span class="ruby-identifier">string</span>)
337
386
  <span class="ruby-identifier">result</span> = <span class="ruby-node">`osascript &lt;&lt;&#39;APPLESCRIPT&#39;
338
387
  tell application &quot;Hook&quot;
@@ -358,7 +407,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>
358
407
  <p>Delete all hooked files/urls from target file</p>
359
408
 
360
409
  <div class="method-source-code" id="delete_all_hooks-source">
361
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 336</span>
410
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 359</span>
362
411
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delete_all_hooks</span>(<span class="ruby-identifier">url</span>, <span class="ruby-value">force:</span> <span class="ruby-keyword">false</span>)
363
412
  <span class="ruby-keyword">unless</span> <span class="ruby-identifier">force</span>
364
413
  <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">print</span> <span class="ruby-node">&quot;Are you sure you want to delete ALL hooks from #{url} (y/N)? &quot;</span>
@@ -396,7 +445,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>
396
445
  <p>Delete hooks between two files/urls</p>
397
446
 
398
447
  <div class="method-source-code" id="delete_hooks-source">
399
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 358</span>
448
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 381</span>
400
449
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">delete_hooks</span>(<span class="ruby-identifier">args</span>, <span class="ruby-identifier">opts</span>)
401
450
  <span class="ruby-identifier">urls</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">map</span>(<span class="ruby-operator">&amp;</span><span class="ruby-value">:valid_hook</span>).<span class="ruby-identifier">delete_if</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">url</span><span class="ruby-operator">|</span> <span class="ruby-operator">!</span><span class="ruby-identifier">url</span> }
402
451
  <span class="ruby-identifier">output</span> = []
@@ -442,7 +491,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>
442
491
 
443
492
 
444
493
  <div class="method-source-code" id="encode-source">
445
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 490</span>
494
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 513</span>
446
495
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encode</span>(<span class="ruby-identifier">string</span>)
447
496
  <span class="ruby-identifier">result</span> = <span class="ruby-node">`osascript &lt;&lt;&#39;APPLESCRIPT&#39;
448
497
  tell application &quot;Hook&quot;
@@ -468,7 +517,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
468
517
  <p>Create a single regex for validation of an array by first char or full match.</p>
469
518
 
470
519
  <div class="method-source-code" id="format_regex-source">
471
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 9</span>
520
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 11</span>
472
521
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">format_regex</span>(<span class="ruby-identifier">options</span>)
473
522
  <span class="ruby-identifier">fmt_rx_array</span> = []
474
523
  <span class="ruby-identifier">options</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">fmt</span><span class="ruby-operator">|</span> <span class="ruby-identifier">fmt_rx_array</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">fmt</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">/^(.)(.*?)$/</span>, <span class="ruby-string">&#39;\1(\2)?&#39;</span>)) }
@@ -491,7 +540,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
491
540
  <p>Get bookmarks hooked to file or URL. Return array of bookmark hashes.</p>
492
541
 
493
542
  <div class="method-source-code" id="get_hooks-source">
494
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 56</span>
543
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 58</span>
495
544
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_hooks</span>(<span class="ruby-identifier">url</span>)
496
545
  <span class="ruby-identifier">url</span>.<span class="ruby-identifier">valid_hook!</span>
497
546
  <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Invalid target: #{url}&quot;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">url</span>
@@ -532,7 +581,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
532
581
  <p>Create bi-directional links between every file/url in the list of arguments</p>
533
582
 
534
583
  <div class="method-source-code" id="link_all-source">
535
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 388</span>
584
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 411</span>
536
585
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">link_all</span>(<span class="ruby-identifier">args</span>)
537
586
  <span class="ruby-identifier">args</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
538
587
  <span class="ruby-identifier">source</span> = <span class="ruby-identifier">file</span>.<span class="ruby-identifier">valid_hook</span>
@@ -567,7 +616,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
567
616
  <p>Link 2 or more files/urls with bi-directional hooks.</p>
568
617
 
569
618
  <div class="method-source-code" id="link_files-source">
570
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 290</span>
619
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 313</span>
571
620
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">link_files</span>(<span class="ruby-identifier">args</span>)
572
621
  <span class="ruby-identifier">target</span> = <span class="ruby-identifier">args</span>.<span class="ruby-identifier">pop</span>
573
622
  <span class="ruby-identifier">target</span>.<span class="ruby-identifier">valid_hook!</span>
@@ -606,7 +655,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
606
655
  <p>Get a list of all hooks on a file/url.</p>
607
656
 
608
657
  <div class="method-source-code" id="linked_bookmarks-source">
609
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 407</span>
658
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 430</span>
610
659
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">linked_bookmarks</span>(<span class="ruby-identifier">args</span>, <span class="ruby-identifier">opts</span>)
611
660
  <span class="ruby-identifier">result</span> = []
612
661
 
@@ -669,7 +718,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
669
718
  <p>Open the <a href="Hook.html"><code>Hook</code></a> GUI for browsing/performing actions on a file or url</p>
670
719
 
671
720
  <div class="method-source-code" id="open_gui-source">
672
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 259</span>
721
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 282</span>
673
722
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">open_gui</span>(<span class="ruby-identifier">url</span>)
674
723
  <span class="ruby-identifier">result</span> = <span class="ruby-node">`osascript &lt;&lt;&#39;APPLESCRIPT&#39;
675
724
  tell application &quot;Hook&quot;
@@ -701,7 +750,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
701
750
  <p>Select from a menu of available hooks and open using macOS `open`.</p>
702
751
 
703
752
  <div class="method-source-code" id="open_linked-source">
704
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 275</span>
753
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 298</span>
705
754
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">open_linked</span>(<span class="ruby-identifier">url</span>)
706
755
  <span class="ruby-identifier">marks</span> = <span class="ruby-identifier">get_hooks</span>(<span class="ruby-identifier">url</span>)
707
756
  <span class="ruby-keyword">if</span> <span class="ruby-identifier">marks</span>.<span class="ruby-identifier">empty?</span>
@@ -732,7 +781,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
732
781
  <p>Output an array of hooks in the given format.</p>
733
782
 
734
783
  <div class="method-source-code" id="output_array-source">
735
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 454</span>
784
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 477</span>
736
785
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">output_array</span>(<span class="ruby-identifier">hooks_arr</span>, <span class="ruby-identifier">opts</span>)
737
786
  <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">hooks_arr</span>.<span class="ruby-identifier">empty?</span>
738
787
  <span class="ruby-identifier">hooks_arr</span>.<span class="ruby-identifier">reject!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span> <span class="ruby-identifier">h</span>[<span class="ruby-value">:path</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">h</span>[<span class="ruby-value">:path</span>] <span class="ruby-operator">==</span> <span class="ruby-string">&#39;&#39;</span> } <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:files_only</span>]
@@ -785,7 +834,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
785
834
  <p>Search bookmarks, using both names and addresses unless options contain “:names_only”. Return results as formatted list.</p>
786
835
 
787
836
  <div class="method-source-code" id="search_bookmarks-source">
788
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 158</span>
837
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 160</span>
789
838
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">search_bookmarks</span>(<span class="ruby-identifier">search</span>, <span class="ruby-identifier">opts</span>)
790
839
  <span class="ruby-keyword">unless</span> <span class="ruby-identifier">search</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">search</span>.<span class="ruby-identifier">empty?</span>
791
840
  <span class="ruby-identifier">result</span> = <span class="ruby-identifier">search_name</span>(<span class="ruby-identifier">search</span>)
@@ -824,7 +873,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
824
873
  <p>Search boomark names/titles. Return array of bookmark hashes.</p>
825
874
 
826
875
  <div class="method-source-code" id="search_name-source">
827
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 104</span>
876
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 106</span>
828
877
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">search_name</span>(<span class="ruby-identifier">search</span>)
829
878
  <span class="ruby-node">`osascript &lt;&lt;&#39;APPLESCRIPT&#39;
830
879
  set searchString to &quot;#{search.strip}&quot;
@@ -858,7 +907,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
858
907
  <p>Search bookmark paths and addresses. Return array of bookmark hashes.</p>
859
908
 
860
909
  <div class="method-source-code" id="search_path_or_address-source">
861
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 122</span>
910
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 124</span>
862
911
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">search_path_or_address</span>(<span class="ruby-identifier">search</span>)
863
912
  <span class="ruby-node">`osascript &lt;&lt;&#39;APPLESCRIPT&#39;
864
913
  set searchString to &quot;#{search.strip}&quot;
@@ -892,7 +941,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
892
941
  <p>Generate a menu of available hooks for selecting one or more hooks to operate on. Revamped to use `fzf`, which is embedded as `lib/helpers/fuzzyfilefinder` to avoid any conflicts. Allows multiple selections with tab key, and type-ahead fuzzy filtering of results.</p>
893
942
 
894
943
  <div class="method-source-code" id="select_hook-source">
895
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 198</span>
944
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 200</span>
896
945
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">select_hook</span>(<span class="ruby-identifier">marks</span>)
897
946
  <span class="ruby-comment"># intpad = marks.length.to_s.length + 1</span>
898
947
  <span class="ruby-comment"># marks.each_with_index do |mark, i|</span>
@@ -939,12 +988,10 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
939
988
  <span class="ruby-string">&#39;--delimiter=&quot;\t&quot;&#39;</span>,
940
989
  <span class="ruby-string">&#39;--with-nth=1,4&#39;</span>,
941
990
  <span class="ruby-string">&#39;--height=60%&#39;</span>,
942
- <span class="ruby-string">&#39;--min-height=10&#39;</span>
943
- ]
944
-
945
- <span class="ruby-identifier">fzf</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-keyword">__FILE__</span>), <span class="ruby-string">&#39;../helpers/fuzzyfilefinder&#39;</span>)
991
+ <span class="ruby-string">&#39;--min-height=10&#39;</span>]
946
992
 
947
993
  <span class="ruby-identifier">sel</span> = <span class="ruby-node">`echo #{Shellwords.escape(options.join(&quot;\n&quot;))} | &#39;#{fzf}&#39; #{args.join(&#39; &#39;)}`</span>.<span class="ruby-identifier">chomp</span>
994
+
948
995
  <span class="ruby-identifier">res</span> = <span class="ruby-identifier">sel</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\n/</span>).<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span>
949
996
  <span class="ruby-identifier">ps</span> = <span class="ruby-identifier">s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\t/</span>)
950
997
  { <span class="ruby-value">name:</span> <span class="ruby-identifier">ps</span>[<span class="ruby-value">0</span>], <span class="ruby-value">path:</span> <span class="ruby-identifier">ps</span>[<span class="ruby-value">1</span>], <span class="ruby-value">url:</span> <span class="ruby-identifier">ps</span>[<span class="ruby-value">2</span>] }
@@ -969,7 +1016,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
969
1016
  <p>Check if format fully matches or matches the first character of available options. Return full valid format or nil</p>
970
1017
 
971
1018
  <div class="method-source-code" id="validate_format-source">
972
- <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 18</span>
1019
+ <pre><span class="ruby-comment"># File lib/hook/hookapp.rb, line 20</span>
973
1020
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">validate_format</span>(<span class="ruby-identifier">fmt</span>, <span class="ruby-identifier">options</span>)
974
1021
  <span class="ruby-identifier">valid_format_rx</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">map</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span> <span class="ruby-identifier">format</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp">/^(.)(.*)$/</span>, <span class="ruby-string">&#39;^\1(\2)?$&#39;</span>) }
975
1022
  <span class="ruby-identifier">valid_format</span> = <span class="ruby-keyword">nil</span>
@@ -996,7 +1043,7 @@ APPLESCRIPT`</span>.<span class="ruby-identifier">strip</span>.<span class="ruby
996
1043
 
997
1044
  <footer id="validator-badges" role="contentinfo">
998
1045
  <p><a href="https://validator.w3.org/check/referer">Validate</a>
999
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.2.
1046
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.3.
1000
1047
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
1001
1048
  </footer>
1002
1049
 
data/html/Hooker.html CHANGED
@@ -116,7 +116,7 @@
116
116
  </div>
117
117
 
118
118
  <div class="method-source-code" id="new-source">
119
- <pre><span class="ruby-comment"># File lib/hook/hooker.rb, line 5</span>
119
+ <pre><span class="ruby-comment"># File lib/hook/hooker.rb, line 6</span>
120
120
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>
121
121
  <span class="ruby-keyword">super</span>
122
122
  <span class="ruby-identifier">warn</span> <span class="ruby-string">&quot;Using Hooker class is deprecated, update to use HookApp instead&quot;</span>
@@ -135,7 +135,7 @@
135
135
 
136
136
  <footer id="validator-badges" role="contentinfo">
137
137
  <p><a href="https://validator.w3.org/check/referer">Validate</a>
138
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.2.
138
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.3.
139
139
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
140
140
  </footer>
141
141
 
@@ -64,6 +64,7 @@
64
64
  <li><a href="#label--help">–help</a>
65
65
  <li><a href="#label--version">–version</a>
66
66
  <li><a href="#label-Commands">Commands</a>
67
+ <li><a href="#label-Command-3A+browse++PATH_OR_GLOB">Command: <code>browse PATH_OR_GLOB</code></a>
67
68
  <li><a href="#label-Command-3A+clip-7Ccp++FILE_OR_URL">Command: <code>clip|cp FILE_OR_URL</code></a>
68
69
  <li><a href="#label-Options">Options</a>
69
70
  <li><a href="#label-a-7C--app+APP_NAME">-a|–app APP_NAME</a>
@@ -132,7 +133,7 @@
132
133
 
133
134
  <p>This gem includes a `hook` binary that allows interaction with the features of Hook.app.</p>
134
135
 
135
- <p>v2.0.7</p>
136
+ <p>v2.0.11</p>
136
137
 
137
138
  <h3 id="label-Global+Options">Global Options<span><a href="#label-Global+Options">&para;</a> <a href="#top">&uarr;</a></span></h3>
138
139
 
@@ -146,6 +147,12 @@
146
147
 
147
148
  <h3 id="label-Commands">Commands<span><a href="#label-Commands">&para;</a> <a href="#top">&uarr;</a></span></h3>
148
149
 
150
+ <h4 id="label-Command-3A+browse++PATH_OR_GLOB">Command: <code>browse PATH_OR_GLOB</code><span><a href="#label-Command-3A+browse++PATH_OR_GLOB">&para;</a> <a href="#top">&uarr;</a></span></h4>
151
+
152
+ <p>Browse hooks</p>
153
+
154
+ <p>Select a file to see its hooks, navigate through descendents</p>
155
+
149
156
  <h4 id="label-Command-3A+clip-7Ccp++FILE_OR_URL">Command: <code>clip|cp FILE_OR_URL</code><span><a href="#label-Command-3A+clip-7Ccp++FILE_OR_URL">&para;</a> <a href="#top">&uarr;</a></span></h4>
150
157
 
151
158
  <p>Copy <a href="Hook.html"><code>Hook</code></a> URL for file/url to clipboard</p>
@@ -348,7 +355,7 @@
348
355
 
349
356
  <footer id="validator-badges" role="contentinfo">
350
357
  <p><a href="https://validator.w3.org/check/referer">Validate</a>
351
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.2.
358
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.3.
352
359
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
353
360
  </footer>
354
361
 
data/html/String.html CHANGED
@@ -329,7 +329,7 @@
329
329
 
330
330
  <footer id="validator-badges" role="contentinfo">
331
331
  <p><a href="https://validator.w3.org/check/referer">Validate</a>
332
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.2.
332
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.3.
333
333
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
334
334
  </footer>
335
335
 
data/html/created.rid CHANGED
@@ -1,9 +1,10 @@
1
- Sun, 26 Sep 2021 11:17:54 -0500
1
+ Tue, 19 Jul 2022 14:14:13 -0500
2
2
  README.rdoc Tue, 07 Jul 2020 16:57:07 -0500
3
- lib/hook.rb Sat, 18 Sep 2021 12:27:39 -0500
4
- lib/hook/hookapp.rb Sun, 26 Sep 2021 10:18:14 -0500
5
- lib/hook/hooker.rb Sat, 18 Sep 2021 12:22:34 -0500
3
+ lib/hook.rb Thu, 26 May 2022 08:20:27 -0500
4
+ lib/hook/hookapp.rb Tue, 19 Jul 2022 14:11:18 -0500
5
+ lib/hook/hooker.rb Sun, 31 Oct 2021 07:54:46 -0500
6
6
  lib/hook/markdown_document_listener.rb Sun, 26 Sep 2021 07:45:59 -0500
7
- lib/hook/string.rb Sat, 25 Sep 2021 03:43:59 -0500
8
- lib/hook/version.rb Sun, 26 Sep 2021 11:17:38 -0500
9
- bin/hook Sun, 26 Sep 2021 11:09:37 -0500
7
+ lib/hook/prompt.rb Thu, 26 May 2022 08:20:13 -0500
8
+ lib/hook/string.rb Sun, 31 Oct 2021 07:03:15 -0500
9
+ lib/hook/version.rb Tue, 19 Jul 2022 14:13:19 -0500
10
+ bin/hook Tue, 19 Jul 2022 14:11:16 -0500