… | |
… | |
95 | <dd> |
95 | <dd> |
96 | <p>A double-click usually selects the word under the cursor, further clicks |
96 | <p>A double-click usually selects the word under the cursor, further clicks |
97 | will enlarge the selection.</p> |
97 | will enlarge the selection.</p> |
98 | </dd> |
98 | </dd> |
99 | <dd> |
99 | <dd> |
|
|
100 | <p>The selection works by trying to match a number of regexes and displaying |
|
|
101 | them in increasing order of length. You can add your own regexes by |
|
|
102 | specifying resources of the form:</p> |
|
|
103 | </dd> |
|
|
104 | <dd> |
|
|
105 | <pre> |
|
|
106 | URxvt.selection.pattern-0: perl-regex |
|
|
107 | URxvt.selection.pattern-1: perl-regex |
|
|
108 | ...</pre> |
|
|
109 | </dd> |
|
|
110 | <dd> |
|
|
111 | <p>The index number (0, 1...) must not have any holes, and each regex must |
|
|
112 | contain at least one pair of capturing parentheses, which will be used for |
|
|
113 | the match. For example, the followign adds a regex that matches everything |
|
|
114 | between two vertical bars:</p> |
|
|
115 | </dd> |
|
|
116 | <dd> |
|
|
117 | <pre> |
|
|
118 | URxvt.selection.pattern-0: \\|([^|]+)\\|</pre> |
|
|
119 | </dd> |
|
|
120 | <dd> |
|
|
121 | <p>You can look at the source of the selection extension to see more |
|
|
122 | interesting uses, such as parsing a line from beginning to end.</p> |
|
|
123 | </dd> |
|
|
124 | <dd> |
100 | <p>It also offers the following bindable keyboard command:</p> |
125 | <p>This extension also offers the following bindable keyboard command:</p> |
101 | </dd> |
126 | </dd> |
102 | <dl> |
127 | <dl> |
103 | <dt><strong><a name="item_rot13">rot13</a></strong><br /> |
128 | <dt><strong><a name="item_rot13">rot13</a></strong><br /> |
104 | </dt> |
129 | </dt> |
105 | <dd> |
130 | <dd> |
… | |
… | |
141 | was started, while <code>Enter</code> or <code>Return</code> stay at the current position and |
166 | was started, while <code>Enter</code> or <code>Return</code> stay at the current position and |
142 | additionally stores the first match in the current line into the primary |
167 | additionally stores the first match in the current line into the primary |
143 | selection.</p> |
168 | selection.</p> |
144 | </dd> |
169 | </dd> |
145 | <p></p> |
170 | <p></p> |
146 | <dt><strong><a name="item_digital_2dclock">digital-clock</a></strong><br /> |
171 | <dt><strong><a name="item_selection_2dautotransform">selection-autotransform</a></strong><br /> |
147 | </dt> |
172 | </dt> |
|
|
173 | <dd> |
|
|
174 | This selection allows you to do automatic transforms on a selection |
|
|
175 | whenever a selection is made. |
148 | <dd> |
176 | </dd> |
149 | Displays a digital clock using the built-in overlay. |
177 | <dd> |
|
|
178 | <p>It works by specifying perl snippets (most useful is a single <code>s///</code> |
|
|
179 | operator) that modify <code>$_</code> as resources:</p> |
|
|
180 | </dd> |
|
|
181 | <dd> |
|
|
182 | <pre> |
|
|
183 | URxvt.selection-autotransform.0: transform |
|
|
184 | URxvt.selection-autotransform.1: transform |
|
|
185 | ...</pre> |
|
|
186 | </dd> |
|
|
187 | <dd> |
|
|
188 | <p>For example, the following will transform selections of the form |
|
|
189 | <code>filename:number</code>, often seen in compiler messages, into <code>vi +$filename |
|
|
190 | $word</code>:</p> |
|
|
191 | </dd> |
|
|
192 | <dd> |
|
|
193 | <pre> |
|
|
194 | URxvt.selection-autotransform.0: s/^(\\S+):(\\d+):?$/vi +$2 \\Q$1\\E\\x0d/</pre> |
|
|
195 | </dd> |
|
|
196 | <dd> |
|
|
197 | <p>And this example matches the same,but replaces it with vi-commands you can |
|
|
198 | paste directly into your (vi :) editor:</p> |
|
|
199 | </dd> |
|
|
200 | <dd> |
|
|
201 | <pre> |
|
|
202 | URxvt.selection-autotransform.0: s/^(S+):(d+):?$/\\x1b:e \\Q$1\\E\\x0d:$2\\x0d/</pre> |
|
|
203 | </dd> |
|
|
204 | <dd> |
|
|
205 | <p>Of course, this can be modified to suit your needs and your editor :)</p> |
|
|
206 | </dd> |
|
|
207 | <dd> |
|
|
208 | <p>To expand the example above to typical perl error messages (``XXX at |
|
|
209 | FILENAME line YYY.''), you need a slightly more elaborate solution:</p> |
|
|
210 | </dd> |
|
|
211 | <dd> |
|
|
212 | <pre> |
|
|
213 | URxvt.selection.pattern-0: ( at .*? line \\d+\\.) |
|
|
214 | URxvt.selection-autotransform.0: s/^ at (.*?) line (\\d+)\\.$/\x1b:e \\Q$1\E\\x0d:$2\\x0d/</pre> |
|
|
215 | </dd> |
|
|
216 | <dd> |
|
|
217 | <p>The first line tells the selection code to treat the unchanging part of |
|
|
218 | every error message as a selection pattern, and the second line transforms |
|
|
219 | the message into vi commands to load the file.</p> |
150 | </dd> |
220 | </dd> |
151 | <p></p> |
221 | <p></p> |
152 | <dt><strong><a name="item_mark_2durls">mark-urls</a></strong><br /> |
222 | <dt><strong><a name="item_mark_2durls">mark-urls</a></strong><br /> |
153 | </dt> |
223 | </dt> |
154 | <dd> |
224 | <dd> |
… | |
… | |
162 | </dt> |
232 | </dt> |
163 | <dd> |
233 | <dd> |
164 | A not very useful example of filtering all text output to the terminal, |
234 | A not very useful example of filtering all text output to the terminal, |
165 | by replacing all line-drawing characters (U+2500 .. U+259F) by a |
235 | by replacing all line-drawing characters (U+2500 .. U+259F) by a |
166 | similar-looking ascii character. |
236 | similar-looking ascii character. |
|
|
237 | </dd> |
|
|
238 | <p></p> |
|
|
239 | <dt><strong><a name="item_digital_2dclock">digital-clock</a></strong><br /> |
|
|
240 | </dt> |
|
|
241 | <dd> |
|
|
242 | Displays a digital clock using the built-in overlay. |
167 | </dd> |
243 | </dd> |
168 | <p></p> |
244 | <p></p> |
169 | <dt><strong><a name="item_example_2drefresh_2dhooks">example-refresh-hooks</a></strong><br /> |
245 | <dt><strong><a name="item_example_2drefresh_2dhooks">example-refresh-hooks</a></strong><br /> |
170 | </dt> |
246 | </dt> |
171 | <dd> |
247 | <dd> |