Various terminal emulators on Linux (e.g. xterm, gnome-terminal, rxvt) have word selection: when you double-click a character, it selects the entire word containing the character. This blog post explains how to customize which characters are part of a word in xterm.
The various defaults are for ASCII characters (in addition to digits and the letters a-z and A-Z):
- gnome-terminal:
# % & + , - . / = ? @ \ _ ~
- rxvt:
! # $ % + - . / : _
- xterm default:
_
- xterm in Ubuntu:
! # % & + , - . / : = ? @ _ ~
It's possible to customize which characters are part of a word in xterm by specifying the charClass resource. The values :48
mean: consider these characters part of a word. Other numbers are character ranges, for example 43-47
mean the ASCII characters 43 (+), 44 (,), 45 (-), 46 (.) and 47 (/).
Here is how to trigger various default behaviors from the command-line:
- gnome-terminal:
xterm -xrm '*.VT100.charClass: 35:48,37:48,38:48,43-47:48,61:48,63-64:48,92:48,95:58,126:48'
- rxvt:
xterm -xrm '*.VT100.charClass: 33:48,35-37:48,43:48,45-47:48,58:48,95:58'
- xterm default:
xterm -xrm '*.VT100.charClass: 95:48'
- xterm in Ubuntu:
xterm -xrm '*.VT100.charClass: 33:48,35:48,37-38:48,43-47:48,58:48,61:48,63-64:48,95:48,126:48'
To save the setting permanently, add a line like this to your ~/.Xresources file (create it if it doesn't exist):
! Here is a pattern that is useful for double-clicking on a URL (default xterm in Ubuntu): XTerm.VT100.charClass: 33:48,35:48,37-38:48,43-47:48,58:48,61:48,63-64:48,95:48,126:48
Make sure above that the line containing charClass doesn't start with !
, because that would be a comment.
The change takes affect automatically the next time you log in. To make it take effect earlier (for all xterms you start), run: xrdb -merge ~/.Xresources
No comments:
Post a Comment