日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

X Window 系統(tǒng)使用指南--鍵盤(pán)和滑鼠--對(duì)應(yīng)和參數(shù)


第18章 鍵盤(pán)和滑鼠 -- 對(duì)應(yīng)和參數(shù)
在前章我們看到了Toolkit 所提供的轉(zhuǎn)譯結(jié)構(gòu) , 它讓你對(duì)一個(gè)應(yīng)用程式的個(gè)別
成員 , 定制你的鍵盤(pán)和滑鼠 。在本章 , 我們來(lái)看另一種較低層次的定制 , 它是
由server所管理 , 稱(chēng)之為對(duì)應(yīng)(mapping) , 你只需要告訴server你的鍵盤(pán)所需
的不同的配置 , 它就會(huì)被每一個(gè)連接到你server上的應(yīng)用程式應(yīng)用到 。例如:
取代通常的QWERTY鍵盤(pán) , 你可能希望重新安排鍵盤(pán)以適應(yīng)那些對(duì)鍵盤(pán)并不熟悉
的使用者 (你可能把鍵盤(pán)按ABCDEF... 重新排過(guò) , 當(dāng)然鍵盤(pán)按鈕上所印的字也
需更改成相符) 。你也能對(duì)一些Control , Shift等等的修飾鍵作指定 。對(duì)滑鼠
按鈕 , 一樣有一個(gè)相關(guān)的對(duì)應(yīng) , 可將 "邏輯的" 按鈕對(duì)應(yīng)到實(shí)際動(dòng)作 。整體而
言 , 你使用這些鍵盤(pán)和滑鼠的對(duì)應(yīng)的頻率 , 將小於轉(zhuǎn)譯 。
此外 , 尚有非常常用的第三種型態(tài)的定制可用:你可以設(shè)定有關(guān)你鍵盤(pán)和
滑鼠各種不同的參數(shù) 。例如響鈴聲音的大小 , 按下鍵時(shí)是否有滴答聲等等 。在本章 , 我們先描述鍵盤(pán)、滑鼠和修飾鍵的對(duì)應(yīng) , 接下來(lái)描述你如何使用
xset程式 , 來(lái)定義類(lèi)似像鍵盤(pán)有無(wú)滴答聲的參數(shù)設(shè)定 。18.1 鍵盤(pán)和滑鼠對(duì)應(yīng) -- xmodmapserver本身處理一個(gè)層次的定制 , 它對(duì)於所有使用到此server或顯示器的應(yīng)用程
式均發(fā)生效用:這就是鍵盤(pán)對(duì)應(yīng) (keyboard mapping) 。每一個(gè)鍵 , 有一個(gè)單獨(dú)的碼對(duì)應(yīng)它 , 稱(chēng)之為鍵碼(keycode) 。鍵和鍵碼之間
的關(guān)系是絕對(duì)固定的 。(粗略來(lái)說(shuō) , 你可以說(shuō) "鍵碼就是鍵") 。連接到每一個(gè)鍵碼 (或鍵)的是一個(gè)keysym的表列 。一個(gè)keysym是一個(gè)代表
印在鍵盤(pán)符號(hào)上的數(shù)字常數(shù) 。在預(yù)設(shè)的情況 , 大多數(shù)的鍵只有一個(gè)keysym 與之
對(duì)應(yīng) , 例如 SHIFT , A , B , Delete , Linefeed等等 。keysym既非ASCII或EBCDIC
字元 , 也非server用以維持keysym和字元的關(guān)系 。你可以對(duì)每一個(gè)鍵有兩個(gè)
keysym 。在預(yù)設(shè)對(duì)應(yīng)中 , 有很多連接到兩個(gè)keysym的鍵 , 例如冒號(hào)(:) 和分號(hào)(;)
, 7 和 &等等 。對(duì)一個(gè)鍵附屬的keysym表列中 , 第一個(gè)keysym是未按下修飾鍵
的狀況下的鍵 。第二個(gè)keysym是指當(dāng)SHIFT (或Lock)已被同時(shí)按下時(shí)的鍵 , 如
果在表列中只有一項(xiàng) , 且為字母 , 則系統(tǒng)自動(dòng)假設(shè)第二項(xiàng)為相對(duì)的大寫(xiě)字母 。
超過(guò)兩項(xiàng)的keysym并沒(méi)有特別的意義 , 鍵盤(pán)和keysym之間的關(guān)系被稱(chēng)之為鍵盤(pán)
對(duì)應(yīng) 。盡量地以server處理一般的鍵和keysyms。它對(duì)鍵碼沒(méi)有附屬意義 , 且它
自己本身不會(huì)使用對(duì)應(yīng)從鍵碼對(duì)應(yīng)至keysyms :它只是傳遞資訊給clIEnt應(yīng)用
程式 。特別的是 , server對(duì)ASCII 或其它的字元集合 (character sets) 毫無(wú)
概念;它只是說(shuō)明 "某鍵被按下 , 某修飾鍵也同時(shí)被按下 , keysym表列中某
keysym和某鍵相關(guān)"。它是client (典型的使用標(biāo)準(zhǔn)的X Library) 對(duì)keysym
和修飾鍵附屬的意義:例如 , 它決定如果keysym產(chǎn)生時(shí)ctrl也被按下 , 它必需
被解釋為ASCII 字元 hex 0x1 , 也就是說(shuō)ctl-A 。特定的client可以決定特殊
的修飾鍵的意義;例如在xterm 中 , 當(dāng)你和MTEA鍵同時(shí)按下一個(gè)鍵 , 程式將此
轉(zhuǎn)換為ESC 後面跟隨著被按下的字元 。(也就是說(shuō) , 如果你按下meta-A , 實(shí)際
上會(huì)產(chǎn)生兩個(gè)字元 ASCII 0x1b, ASCII 0x41) 。server在此領(lǐng)域內(nèi)提供一個(gè)額外的設(shè)施 。你可以定義讓server將鍵碼解釋
成修飾鍵 , 例如 "當(dāng)鍵碼為若干的鍵被按下時(shí) , 它相同於CONTROL修飾鍵被實(shí)際
按下" 。這種定義并不互斥:如果你定義鍵F7為Shift 修飾鍵 , 它并不會(huì)影響任
何現(xiàn)存的修飾鍵 。此種設(shè)施稱(chēng)之為修飾鍵對(duì)應(yīng) (modifier mapping) 。X提供八
個(gè)修飾鍵:Shift、Lock(caps-lock)、Control、Mod1到Mod5 。習(xí)慣上 , Mod1被

推薦閱讀