📄 readme.keybrd
字号:
ECU 3.20 presents itself to the world by default as a muchbetter clone of an SCO multiscreen terminal than ever before.This includes video display control and key codes emitted by pressed function keysIn addition, many MS-DOS video control sequences are supported.These features are described in tedious detail in the manual. What ismissing from the manual -- and what this README attempts todescribe -- is how ECU keyboard management really looks from themacro perspective.Keyboard management is divided into two parts: o Function key recognition o Function key actionFunction key recognition means detecting function key pressesin the ecu keyboard input stream. This is controlled by the~/.ecu/funckeymap file.Function key action means what ecu does with a function key onceit gets it. This is controlled by the ~/.ecu/keys file.Function Key Recognition ------------------------You have to use funckeymap entries to get ecu to recognize thefunction keys. Pre-3.20 users take note: funckeymaps serves thepurpose previously handled by ~/.ecu/nonansikeys. This is a rarebackward compatibility problem (the 2nd in ECU history).Starting with 3.20, SCO multiscreens require an entry, whereasearlier versions had multiscreen support built in. The TERM namefor SCO multiscreens is "ansi", hence the name "nonansikeys". Ithink you'll agree the new name is more appropriate.If ~/.ecu/funckeymap does not exist, ECU searches for a fileby the same name in the library directory, usually /usr/local/lib/ecu).At startup,ECU selects an entry in ~/.ecu/funckeymap whose label matchesthe terminal type of the executing screen (the TERM environmentvariable). If ecu is startednon-conversationally (/dev/null for stdin), this is not done.The environment variable ECUFUNCKEY, if found, overrides theTERM variable for funckeymap keyboard management only. TERM is alwaysused for identifying the display.See the manual sections titled "Supported Terminals" thru "Line Editing".There are some additional notes in the distribution filemodels/funckeymap. Please forgive any conflicts. I can onlytype so fast and the code gets priority.An example entry for an SCO multiscreen console:#+-------------------------------------------------------------------# SCO multiscreen ($TERM=ansi)#--------------------------------------------------------------------ansiansi43sco F1:F1: esc [ M F2:F2: esc [ N F3:F3: esc [ O F4:F4: esc [ P F5:F5: esc [ Q F6:F6: esc [ R F7:F7: esc [ S F8:F8: esc [ T F9:F9: esc [ U F10:F10: esc [ V F11:F11: esc [ W F12:F12: esc [ X Home:Home: esc [ H End:End: esc [ F PgUp:PgUp: esc [ I PgDn:PgDn: esc [ G CUU:CUU: esc [ A CUL:CUL: esc [ D CU5:CU5: esc [ E CUR:CUR: esc [ C CUD:CUD: esc [ B Ins:Ins: esc [ L BkTab:BackTab: esc [ ZECU tries to support any "reasonable" video terminal as an ECUconsole. Video differences are handled by curses andtermcap/terminfo. The keyboard is normalized with funckeymap.Hopefully, someone has already constructed a funckeymap entry foryour keyboard. If not, you must construct one.For this, make several experiments with kbdtest3.Start a terminal session in the ecu distribution directoryand run kbdtest3 (assuming it has been made).Kbdtest3 will prompt you to press each function key in return.The program is generally self-explanatory, but some notes areworthy of note: o If it asks you for a key not on your keyboard, pick some reasonable alternate o If you simply cannot find an alternate, you will have to type a slash ('/') to signify no key choice exists. o If you are on an xterm, you may get spurious or no response for the "unusual" keys like Home and End. Just type a slash for the time being and go on. When you are finished, re-read the manual section titled "Function Key Mapping (Recognition)". There are also some notes in models/funckeymap. There are guidelines in there for using xmodmap to achieve reasonable X mapping for spurious or dead keys. A notorious example is the xterm shift-Tab that generates the single character sequence 0x09 just like the tab key does. XTerm*VT100*Translations: #override\ Shift <Key>Tab: string(0x1b) string("[Z") \n \ in ~/.Xdefaults takes care of this.Repeat the kbdtest3 and hackery exercises until you have anacceptable entry. Acceptable means a working key for each ofecu's 23 function keys where each key produces aunique key sequence.Kbdtest3 writes funckeymap entries to ./kbdtest3.out. When youedit the file, you will see the results of each kbdtest3run appended one after the other. Presumabaly you quit using kbdtest3when you were satisfied, so skip to the bottom of the file and examine thelast entry. If it looks good, cut that section out and putit in ~/.ecu/funckeys. Also, -*PLEASE*- send it to wht@n4hgf.Mt-Park.GA.USso I can archive it. Include the environment detailssuch as "Wyse 232XKQ Rom revision 2.3" or "Pluton 9001 consoleunder RiskOs 1.4".Now ecu can recognize your function keys and map them to internalvalues. Command screens needing up and down arrows, insert andso forth will work. Function Key Actions--------------------Function key actions are determined by ecu program code whenyou are executing ecu interactive commands. When you arein the interactive mode, keyboard actions are governed bystartup definitions or ~/.keys actions. These are describedin the manual section titled "Function Key Actions", but afew quick notes here might serve well: o startup default actions All of the 23 function keys save 2 are preset to generate the same sequence they would on an SCO. See the manual subsection "Standard Function Keys" for a list The 'Home' and 'Cursor 5' keys have reserved meanings and may not be overriden. o ~/.keys and the interactive command fkey You can override the defaults by loading a custom keyset you have placed in ~/.fkeys. The interactive command fkey may be explicitly used to load a keyset. If you use a logical dialing directory name to connect to a remote and ~/.keys has an entry whose name (sometimes called the label) matches the directory entry name, ECU will load the ~/.keys entry automatically. See "Standard Function Keys" for details.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -