]>
Commit | Line | Data |
---|---|---|
27641b95 MCC |
1 | Software cursor for VGA |
2 | ======================= | |
1da177e4 | 3 | |
27641b95 MCC |
4 | by Pavel Machek <[email protected]> |
5 | and Martin Mares <[email protected]> | |
6 | ||
5266e703 LT |
7 | Linux now has some ability to manipulate cursor appearance. Normally, |
8 | you can set the size of hardware cursor. You can now play a few new | |
9 | tricks: you can make your cursor look like a non-blinking red block, | |
10 | make it inverse background of the character it's over or to highlight | |
11 | that character and still choose whether the original hardware cursor | |
12 | should remain visible or not. There may be other things I have never | |
13 | thought of. | |
1da177e4 | 14 | |
27641b95 | 15 | The cursor appearance is controlled by a ``<ESC>[?1;2;3c`` escape sequence |
1da177e4 LT |
16 | where 1, 2 and 3 are parameters described below. If you omit any of them, |
17 | they will default to zeroes. | |
18 | ||
27641b95 MCC |
19 | first Parameter |
20 | specifies cursor size:: | |
21 | ||
22 | 0=default | |
23 | 1=invisible | |
24 | 2=underline, | |
25 | ... | |
26 | 8=full block | |
27 | + 16 if you want the software cursor to be applied | |
28 | + 32 if you want to always change the background color | |
29 | + 64 if you dislike having the background the same as the | |
30 | foreground. | |
31 | ||
32 | Highlights are ignored for the last two flags. | |
33 | ||
34 | second parameter | |
35 | selects character attribute bits you want to change | |
36 | (by simply XORing them with the value of this parameter). On standard | |
37 | VGA, the high four bits specify background and the low four the | |
38 | foreground. In both groups, low three bits set color (as in normal | |
39 | color codes used by the console) and the most significant one turns | |
40 | on highlight (or sometimes blinking -- it depends on the configuration | |
41 | of your VGA). | |
42 | ||
43 | third parameter | |
44 | consists of character attribute bits you want to set. | |
1da177e4 | 45 | |
27641b95 MCC |
46 | Bit setting takes place before bit toggling, so you can simply clear a |
47 | bit by including it in both the set mask and the toggle mask. | |
1da177e4 | 48 | |
7358bb2f JC |
49 | Examples |
50 | -------- | |
1da177e4 | 51 | |
27641b95 MCC |
52 | To get normal blinking underline, use:: |
53 | ||
54 | echo -e '\033[?2c' | |
55 | ||
56 | To get blinking block, use:: | |
57 | ||
58 | echo -e '\033[?6c' | |
59 | ||
60 | To get red non-blinking block, use:: | |
61 | ||
62 | echo -e '\033[?17;0;64c' |