urxvt-selection-autotransform - automatically transform select text

NAME  DESCRIPTION 

NAME

selection−autotransform − automatically transform select text

DESCRIPTION

This selection allows you to do automatic transforms on a selection whenever a selection is made.

It works by specifying perl snippets (most useful is a single "s///" operator) that modify $_ as resources:

URxvt.selection−autotransform.0: transform
URxvt.selection−autotransform.1: transform
...

For example, the following will transform selections of the form "filename:number", often seen in compiler messages, into vi +$filename $word:

URxvt.selection−autotransform.0: s/ˆ([ˆ:[:space:]]+):(\\d+):?$/vi +$2 \\Q$1\\E\\x0d/

And this example matches the same,but replaces it with vi-commands you can paste directly into your (vi :) editor:

URxvt.selection−autotransform.0: s/ˆ([ˆ:[:space:]]+(\\d+):?$/:e \\Q$1\\E\\x0d:$2\\x0d/

Of course, this can be modified to suit your needs and your editor :)

To expand the example above to typical perl error messages ("XXX at FILENAME line YYY."), you need a slightly more elaborate solution:

URxvt.selection.pattern−0: ( at .*? line \\d+[,.])
URxvt.selection−autotransform.0: s/ˆ at (.*?) line (\\d+)[,.]$/:e \\Q$1\E\\x0d:$2\\x0d/

The first line tells the selection code to treat the unchanging part of every error message as a selection pattern, and the second line transforms the message into vi commands to load the file.


Updated 2024-01-29 - jenkler.se | uex.se