]> www.wagner.pp.ru Git - sites/home_page.git/blob - hints/xterm.html
Исправлена опечатка в аннотации к Детям Пространства
[sites/home_page.git] / hints / xterm.html
1 <HTML><HEAD>
2 <BASE HREF="http://www.wagner.pp.ru/~vitus/tips/xterm.html">
3
4 <TITLE>Немного о настройке Xterm</TITLE>
5 <META NAME="description" CONTENT="Работа с колесом мыши, управление
6 xterm из программы"> 
7 </HEAD><BODY>
8 <h1>Немного о настройке xterm</H1>
9
10 <H2>Меняем  размер шрифта с помощью колеса мыши</H2>
11 <pre>
12 XTerm.vt100.translations: #override\n\
13                     Shift&lt;Btn4Down&gt;,&lt;Btn4Up&gt;:smaller-vt-font()\n\
14                     Shift&lt;Btn5Down&gt;,&lt;Btn5Up&gt;:larger-vt-font()\n\
15                                         
16 </pre>
17
18 Вот эти строчки в ресурсе translations позволяют менять размер шрифта
19 в xterm с помошью поворота колеса мыши при нажатой кнопке Shift.
20
21 <H2> Управление Xterm-ом из программы, в нем выполняющейся</H2>
22 Вам никогда не хотелось чтобы какое-то окно в котором выполняется,
23 скажем, сборка ядра, автоматически вспыло наверх после завершения
24 операции? В этом нет ничего невозможного. Практически все операции с
25 xterm, которые можно выполнить средствами window manager-а, или через
26 собственные меню xterm, можно выполнить просто выдавая на stdout из
27 программы, запущенной в этом xterm определенные Esc- последовательности.
28 <p>
29 А если вы уже запустили программу, и не имеете возможности
30 застивить ее выдать необходимую строку?
31 <p>
32 Ничего страшного! С помощью команды ps можно определить имя
33 псевдотерминала в котором она выполняется, и послать нужную строку на
34 <var>/dev/pts/что-надо</var>.
35
36 Вот <a
37 href="http://www.wagner.pp.ru/~vitus/software/unix/xtitle.html">пример
38 shell-скрипта</a>, который позволяет менять заголовок и шрифт.
39 Остальное найдете сами в документе ctlseq.ps, который обязательно есть в
40 комплекте вашего xterm. Хочу только предупредить, что прочитать какие-то
41 параметры, которые xterm умеет выдавать на stdin программе, не очень
42 тривиально - они не образуют строки  в понимании драйвера терминала, так
43 как завершаются не \n, а \a. Поэтому перед чтением необходимо перевести
44 терминал в raw-режим. Если честно, мне не удалось проделать эту
45 операцию, используя только стандартные команды shell. С расширенными
46 возможностями bash или zsh справиться уже можно. 
47
48
49
50 </BODY>
51
52 </HTML>