scounix下curses編程函數(shù)說明
INDDW*curscr:當(dāng)前屏幕 WINDOW *stdscr:標(biāo)準(zhǔn)屏幕 int LINES:終端上的行數(shù) int COLS:終端上的列數(shù) bool TRUE:真標(biāo)志,1 bool FALSE:假標(biāo)志,0 int ERR:錯(cuò)誤標(biāo)志,-1 int OK:OK標(biāo)志,0 --------------------------------------------- win:WINDOW * bf:bool ch:chty pe str:char * chstr:chty pe* fmt:char * 否則:int --------------------------------------------- 初始化
WINDOW *initscr() SCREEN*newterm(char *type, FILE *outfd, FILE *infd) 對用戶訪問的每個(gè)終端都應(yīng)該調(diào)用newterm t y p e是終端的名稱,包括在$ T E R M中(如ansi, xterm, vt100等等) SCREEN*set_term(SCREEN *new) 用戶可以切換當(dāng)前終端。所有的函數(shù)都將在設(shè)置的當(dāng)前終端上起作用。 int endwin() 退出程序之前,關(guān)閉所有打開的窗口。 之后還可以調(diào)用refresh(), int isendwin() ifendwin()->refresh(),TRUE,|FALSE。 ----------------------- WINDOW *newwin(nlines,ncols,begy,begx) begy和begx是窗口左上角的坐標(biāo)。nlines是一個(gè)整數(shù), 存放著行的數(shù)目,而ncols,存放著列的數(shù)目。 所有的參數(shù)設(shè)置為零,則打開的窗口的大小將與屏幕的大小相同。 int delwin(win) 它刪除窗口win。如果存在子窗口,以前先要?jiǎng)h除這些子窗口。這個(gè)函數(shù)將 釋放win所占據(jù)的所有資源。在調(diào)用endwin()之前用戶應(yīng)該刪除所有的窗口 int mvwin(win,by,bx) 它將把窗口移到坐標(biāo)(by,bx)處。如果把窗口移出屏幕邊界的范圍,則ERR WINDOW *subwin(origwin,nlines,ncols,begy,begx) 它返回一個(gè)位于origwin窗口中間的子窗口。如果用戶改變這兩個(gè)窗口 (origwin或者那個(gè)新窗口)中的一個(gè),則這種改變將會(huì)同時(shí)反映到這兩 個(gè)窗口上。在下一次調(diào)用refresh()之前,先要調(diào)用touchwin(origwin) begx和begy是相對于屏幕的,而不是相對于origwin的。 WINDOW *derwin(origwin,nlines,ncols,begy,begx) 此函數(shù)與subwin(.)相同,只不過這里的begx和begy是相對于origwin的,而不是相對于屏幕的。 mvderwin(win,y,x) 此函數(shù)將把win移到父窗口內(nèi)。(注意:此函數(shù)尚未實(shí)現(xiàn))。 WINDOW *dupwin(win) 此函數(shù)復(fù)制窗口win。 int overlay(win1,win2) 將把win1中的所有文本拷貝到win2中,但是不拷貝空格。 int overwrite(win1,win2) 也是做文本拷貝工作的函數(shù),但它拷貝空格。 int copywin(win1,win2,sminrow,smincol,dminrow, dmincol,dmaxrow,dmaxcol,overlay) 它所做的工作與overlay(.)和overwrite(.)相似,但是該函數(shù)還可以讓程序員選擇拷貝窗口的哪個(gè)區(qū)域。 int addch(ch) int waddch(win,ch) int mvaddch(y,x,ch) int mvwaddch(win,y,x,ch) ---------------- int addstr(str) int addnstr(str,n) int waddstr(win,str) int waddnstr(win,str,n) int mvaddstr(y,x,str) int mvaddnstr(y,x,str,n) int mvwaddstr(win,y,x,str) int mvwaddnstr(win,y,x,str,n) ----------------------------- int addchstr(chstr) int addchnsrtr(chstr,n) int waddchstr(win,chstr) int waddchnstr(win,chstr,n) int mvaddchstr(y,x,chstr) int mvaddchnstr(y,x,chstr,n) int mvwaddchstr(win,y,x,chstr) int mvwaddchnstr(win,y,x,chstr,n) *****chstr是指向ch type數(shù)組的一個(gè)指針。***** --------------------------- int echochar (ch) int wechochar (win,ch) --------------------------- int printw(fmt,..) int wprintw(win.fmt,....) int mvprintw(y,x,fmt,...) int mvwprntw(win,y,x,fmt,..) --------------------------- int insch(c) int winsch(win,c) int mvinsch(y,x,c) int mvwinsch9win,y,x,c) 這些函數(shù)把字符ch插入到光標(biāo)的左邊, 光標(biāo)后面的所有字符則向右移動(dòng)一個(gè)位置。 在這一行最右端的字符可能會(huì)丟失。 --------------------------- int insert() int winsert(win) 在當(dāng)前行的上方插入一個(gè)空行(最底下的一行將被丟失)。 --------------------------- int insdelin(n) int winsdelln(win,n) 如果n為正數(shù),則這些函數(shù)將在適當(dāng)?shù)拇翱诘漠?dāng)前光標(biāo)上方插入n行 (這樣一來最底下的n行將丟失);如果n為負(fù)數(shù),則光標(biāo)下面的n行將被刪除, 余下的行將上升,頂替它們的位置。這些函數(shù)將在當(dāng)前光標(biāo)的左邊插入str (字符的個(gè)數(shù)不能超過一行的限度)。在光標(biāo)右邊的字符將右移,如果到達(dá)行 尾,則字符將丟失,光標(biāo)位置不變。y和x是指在插入str以前先要把光標(biāo)移動(dòng) 到的坐標(biāo),n是要插入的字符的數(shù)目(如果n為0則插入整個(gè)字符串)。 --------------------------- int insstr(str) int insnstr(str,n) int winsstr(win,str) int winsnstr(win,str,n) int mvinsstr9y,x,str) int mvinsnstr(y,x,str,n) int mvwinsstr(win,y,x,str) int mvwinsnstr(win,y,x,str,n) 這些函數(shù)將在當(dāng)前光標(biāo)的左邊插入str(字符的個(gè)數(shù)不能超過一行的限度)。 在光標(biāo)右邊的字符將右移,如果到達(dá)行尾,則字符將丟失,光標(biāo)位置不變。 y和x是指在插入str以前先要把光標(biāo)移動(dòng)到的坐標(biāo),n是要插入的字符的數(shù)目 (如果n為0則插入整個(gè)字符串)。 --------------------------- int delch() int wdelch(win) int mvdelch(y,x) int mvwdelch(win,y,x) 刪除光標(biāo)左邊的字符,并把光標(biāo)右邊余下的字符向左移動(dòng)一個(gè)位置。 y和x是在進(jìn)行刪除操作以前要把光標(biāo)移動(dòng)到的坐標(biāo)。 int deleteln() int wdeleteln(win) 刪除光標(biāo)下面的一行,并把下面所有的其他行都向上移動(dòng)一個(gè)位置。 此外,屏幕最底下的一行將被清除。 ----------------------------- 方框和直線
int border(ls,rs,ts,bs,tl,tr,bl,br) int wborder(win,ls,rs,ts,bs,tl,tr,bl,br) int box(win,vert,hor) 這些函數(shù)在窗口的邊界(或者win的邊界)畫上方框。在下面的表格中, 讀者將可以看到字符,以及它們的默認(rèn)值。當(dāng)用零去調(diào)用box(.)時(shí)將 會(huì)用到這些默認(rèn)值。在下面的圖中讀者可以看到方框中字符的位置 ------------- int vline9ch,n) int wvline(win,ch,n) int hline(ch,n) int whline(win,ch,n) 這些函數(shù)將從當(dāng)前光標(biāo)位置開始畫一條水平線或者垂直線。 ch是畫線所使用的字符,n是要畫的字符的個(gè)數(shù),光標(biāo)位置并不移動(dòng)。 -------------------------- void bkgdset(ch) void wbkgdset(win,ch) 這兩個(gè)函數(shù)設(shè)置窗口或者屏幕的背景字符和屬性。ch的屬性將和窗口中 所有非空格的字符的屬性進(jìn)行OR操作。背景是窗口的一部分, 將不會(huì)隨著滾動(dòng)、輸入或輸出而改變 int bkgd(ch) int wbkgd(win,ch) --------------------------------- int getch() int wgetch() int mvgetch(y,x) int mvwgetch(win,y,x) getch()將從終端讀取輸入,讀取的方式取決于是否設(shè)置了延遲模式。 如果設(shè)置了延遲模式,則getch()將一直等待,直到用戶按下一個(gè)鍵為止; 如果沒有設(shè)置延遲模式,則它將返回輸入緩沖區(qū)中的數(shù)據(jù),如果輸入緩沖區(qū) 為空,則它將返回ERR。mvgetch(.)和mvwgetch(.)首先把光標(biāo)移動(dòng)到位置 (y,x)上。名稱中有w字母的函數(shù)將從與窗口win相關(guān)的終端讀取輸入, getch()和mvgetch(.)則從屏幕相關(guān)的終端讀取。如果使能了keypad(.) 在用戶按下某個(gè)功能鍵時(shí),getch()將返回一個(gè)代碼,該代碼在.h頭文件中被 定義為KEY_*宏。如果用戶按下Esc鍵(它可能會(huì)是某個(gè)組合功能鍵的第 一個(gè)鍵),則ncurses將啟動(dòng)一個(gè)否則就返回功能鍵的值。(如果需要的話, 可以使用notimeout()來關(guān)閉第二個(gè)定時(shí)器 int ungetch() 這個(gè)函數(shù)將把字符ch送回輸入緩沖區(qū)。 --------------------- int getstr(str) int wgetstr(win,str) int mvgetstr(y,x,str) int mvwgetstr(win,y,x,str) int wgetnstr(win,str,n) 這些函數(shù)的作用相當(dāng)于對getch()進(jìn)行一系列的調(diào)用,直到接收到一個(gè)新行。 行中的字符存放在str中(所以,在調(diào)用getstr(.)之前,不要忘記給字符指針 分配內(nèi)存)。如果打開了回送,則字符串將被顯示出來(使用noecho()可以關(guān) 閉回送)而用戶的刪除字符以及其他特殊字符也會(huì)被解釋出來 ----------------- chty peinch(0 chty pewinch(win) chty pemvinch(y,x) chty pemvwinch(win,y,x) 這些函數(shù)從屏幕或窗口返回一個(gè)字符,因?yàn)榉祷刂档念愋褪莄hty pe, 所以還包括了屬性信息。這一信息可以使用常量A_*從字符中擴(kuò)展得到。 ------------------- int scanw(fmt,...) int wscanw(win,fmt,...) int mvscanw(y,x,fmt,...) int mvwscanw(win,y,x,fmt,...) int vwscanw(win,fmt,va_list.) ---------------------------- 輸出選項(xiàng) int idlok9win,bf) void fdcok(win.bf) 這兩個(gè)函數(shù)為窗口使能或者關(guān)閉終端的insert/delete特征(idlok(.)針對一 行,而idcok(.)則針對字符)。(注:idcok(.)尚未實(shí)現(xiàn)) void immedok(win,bf) bf設(shè)置為TRUE,則對窗口win的每一次改變都將導(dǎo)致物理屏幕的一次刷新。 這將使程序的性能降低,所以默認(rèn)的值是FALSE。(注:此函數(shù)尚未實(shí)現(xiàn)) int clearok(win,bf) 如果bf值為TRUE,則下一次調(diào)用wrefresh(win)時(shí)將會(huì)清除屏幕, 并完全地把它重新畫一遍(就像用戶在編輯器vi中按下Ctrl+L一樣)。 int leaveok(win,bf) 默認(rèn)的行為是,ncurses讓物理光標(biāo)停留在上次刷新窗口時(shí)的同一個(gè)位置上。 不使用光標(biāo)的程序可以把leaveok(.)設(shè)置為TRUE,這樣一般可以節(jié)省光標(biāo) 移動(dòng)所需要的時(shí)間。此外,ncurses將試圖使終端光標(biāo)不可見。 int nl() int nonl() 這兩個(gè)函數(shù)控制新行的平移。使用nl()可以打開平移,這樣在回車時(shí)就會(huì) 平移到新的一行,在輸出時(shí)就會(huì)走行。而nonl()可以把平移關(guān)上。 關(guān)上平移之后,ncurses做光標(biāo)移動(dòng)操作時(shí)速度就會(huì)快一些。 ------------------------------ 輸入選項(xiàng)
int keypad(win,bf) bf為TRUE,函數(shù)在等待輸入時(shí)會(huì)使能用戶終端的鍵盤上的小鍵盤。 ncurses將返回一個(gè)鍵代碼,該代碼在.h頭文件中被定義為KEY_*宏, 它是針對小鍵盤上的功能鍵和方向鍵的。對于PC鍵盤來說, 這一點(diǎn)是非常有幫助的,因?yàn)檫@樣用戶就可以使能數(shù)字鍵和光標(biāo)鍵。 int meta(win.bf) bf為TRUE,從getch()返回的鍵代碼將是完整的8位(最高位將不會(huì)被去掉) int cbreak() int nocbreak() int crmode() int nocrmode() cbreak()和nocbreak()將把終端的CBREAK模式打開或關(guān)閉。如果CBREAK打開則程序就可以立刻使用讀取的輸入信息。如果CBREAK關(guān)閉,則輸入將被緩存 起來,直到產(chǎn)生新的一行(注意:crmode()和nocrmode()只是為了提供向上兼容性,不要使用它們) int raw() int noraw() 這兩個(gè)函數(shù)將把RAW模式打開或關(guān)閉。RAW與CBREAK相同, 它們的區(qū)別在于RAW模式不處理特殊字符。 int echo() int noecho() 如果把echo()設(shè)置為TRUE,則用戶所敲的輸入將會(huì)回送并顯示出來, 而noecho()則對此保持沉默。 int halfdelay(t) 此函數(shù)與cbreak()相似,但它要延遲t秒鐘。 int nodelay(win,bf) 終端將被設(shè)置為非阻塞模式。如果沒有任何輸入則getch()將返回ERR, 否則如果設(shè)置為FALSE,則getch()將等待,直到用戶按下某個(gè)鍵為止。 int timeout(t) int wtimeout(win,t) 筆者提倡大家使用這兩個(gè)函數(shù),而不要使用halfdelay(t)和nodelay(win,bf)getch()的結(jié)果取決于t的值。如果t是正數(shù),則讀操作將被阻塞t毫秒; 如果t為零,則不發(fā)生任何阻塞;如果t是負(fù)數(shù),則程序?qū)⒆枞钡接休斎霝橹? int notimeout(win,bf) 如果bf為TRUE,則getch()將使用一個(gè)特殊的定時(shí)器(一秒鐘長)。到時(shí)間以后 再對以Esc等鍵打頭的輸入序列進(jìn)行解釋。 int typeahead(fd) 如果fd是-1,則不檢查超前鍵擊,否則ncurses將使用文件描述符fd來進(jìn)行這些檢查 int int rflush(win,bf) 當(dāng)bf為TRUE時(shí)使能該函數(shù)。在終端上按下任意中斷鍵(quit、break.)時(shí), 所有的輸出將會(huì)刷新到tty驅(qū)動(dòng)程序隊(duì)列中。 </Content> </Issue> <Replys> <Reply> <PostUserNickName></PostUserNickName> <rank>四級(jí)(中級(jí))</rank> <ranknum>user4</ranknum> <credit>97</credit> <ReplyID>6339214</ReplyID> <TopicID>984818</TopicID> <PostUserId>202193</PostUserId> <PostUserName>qisiwole</PostUserName> <Point>0</Point> <Content>------------------------------ 終端屬性 int baudrate()此函數(shù)返回終端的速度,以bps為單位。 char erasechar()此函數(shù)返回當(dāng)前刪除的字符。 char killchar()此函數(shù)返回當(dāng)前殺死的字符。 int has_ic() int has_il()如果終端具有插入/刪除字符的能力,則has_rc()將返回TRUE如果終端具有插入/刪除行的能力,則has_il()將返回TRUE, 否則這兩個(gè)函數(shù)將返回ERR。(注:尚未實(shí)現(xiàn)) char *longname()此函數(shù)所返回的指針允許用戶訪問當(dāng)前終端的描述符。 chty petermattrs()(注:此函數(shù)尚未實(shí)現(xiàn)) char *termname()這個(gè)函數(shù)從用戶環(huán)境中返回TERM的內(nèi)容。(尚未實(shí)現(xiàn)) -------------------------------- 更新終端 int refresh() int wrefresh(win) refersh()將把窗口映像拷貝到終端,而wrefresh(win)將把窗口映像 拷貝到win,并使它看起來象原來的樣子。 int wnoutrefresh(win) int doupdate() wnoutrefresh(win)將會(huì)只拷貝到窗口win,這意味著在終端上將不進(jìn)行任何輸出,但是虛擬屏幕實(shí)際上看起來象程序員所希望的那樣。doupdate()將輸 出到終端上。程序可以改變許多窗口,對每個(gè)窗口都調(diào)用一次 wnoutrefresh(win),然后再調(diào)用一次doupdate()來更新物理屏幕。 int redrawln(win) int wredrawln(win,bline,blines) 如果在往屏幕上輸出新內(nèi)容時(shí)需要清除一些行或者整個(gè)屏幕,可以使用這兩 個(gè)函數(shù)。(可能這些行已經(jīng)被破壞了或者由于其他的原因。) int touchwin(win) int touchline(win,start,count) int wtouchln(win,y,n,changed) int untouchwln(win) 這些函數(shù)通知ncurses整個(gè)win窗口已經(jīng)被改動(dòng)過了,或者從start直到 start+count的這些行已經(jīng)被改動(dòng)過了。例如,如果用戶有一些重疊的窗口 (正如在example.c中一樣),對某個(gè)窗口的改動(dòng)不會(huì)影響其他窗口的映像。 wtouchln(.) 將按掀從y開始的n行。如果change的值是TRUE,則這些行被按掀過了, 否則就還未被按掀過(改變或未改變)。 untouchwin(win)將把窗口win標(biāo)記為自上次調(diào)用refresh()以來還未被按掀。 int ls_linetouched(win,line) int ls_wint ouched(win) 通過使用這兩個(gè)函數(shù),用戶可以檢查自從上次調(diào)用refresh()以來, 第line行或者窗口win是否已被按掀過。 ------------------------------- 視頻屬性與顏色 ncurses定義了八種顏色,在帶有彩色支持的終端上用戶可以使用這些顏色。 首先,調(diào)用start_color()初始化顏色數(shù)據(jù)結(jié)構(gòu), 然后使用has_colors()檢查終端權(quán)能。 start_color()將初始化COLORS和COLOR_PAIR。 前者是終端所支持的最多的顏色數(shù)目,而后者是用戶可以定義的色彩對的最大數(shù)目。 兩個(gè)屬性可以使用OR操作組合起來。“COLORPAIRS_1COLORS_1”
int color_content(color,t,g,b)
此函數(shù)獲取color的顏色成份r,g和b。 首先,函數(shù)CheckColor調(diào)用start_color()初始化顏色,如果當(dāng)前終端有彩色的話, 則函數(shù)has_colors()將返回TRUE。我們檢查了這一點(diǎn)以后,調(diào)用init_pair(.) 把前景色和背景色組合起來,再調(diào)用wattrset(.)為特定的窗口設(shè)置這些顏色對。 此外,如果我們使用的是黑白終端,還可以單獨(dú)使用wattrset(.)來設(shè)置屬性。 如果要在xterm中獲取顏色,我認(rèn)為最佳方法是使用ansi_xterm, 以及來自MidnightCommander的terminfo項(xiàng)目。用戶可以獲取ansi_xterm 和MidnightCommander的源代碼(mc_x.x.tar.gz),然后編譯ansi_xterm, 并對mc_x.x.tar.gz文檔中的xterm.ti和vt100.ti使用tic命令。 執(zhí)行ansi_xterm,把它試驗(yàn)出來
--------------------------------- 光標(biāo)和屏幕坐標(biāo)
int move(y,x) int wmove(win,y,x) move()將移動(dòng)光標(biāo),而wmove(win)則從窗口win中移動(dòng)光標(biāo)。對 輸入/輸出函數(shù)來說,還定義了其他的一些宏,在調(diào)用特定函數(shù)之前, 這些宏可以移動(dòng)光標(biāo)。
int curs_set(bf) 這個(gè)函數(shù)將把光標(biāo)置為可見或者不可見,如果終端有這個(gè)功能 void getyx(win,y,x) getyx(.)將返回當(dāng)前光標(biāo)位置。(注意:這是一個(gè)宏) void getparyx(win,y,x) 如果win是個(gè)子窗口,getparyx(.)將把該窗口對應(yīng)父窗口的坐標(biāo)存儲(chǔ)在y和x則y和x都將為-1。(注:此函數(shù)尚未實(shí)現(xiàn))
void getbegyx(win,y,x) void getmaxyx(win,y,x) int getmaxx(win) int getmaxy(win) 這些函數(shù)把窗口win的開始坐標(biāo)和大小坐標(biāo)存放在y和x中。 int getsyx(int y,int x) int setsyx(int y,int x) getsyx(.)把虛擬屏幕光標(biāo)存放在y和x中,而setsyx(.)則設(shè)置這個(gè)坐標(biāo)。 如果y和x是-1, 用戶調(diào)用getsyx(.)將會(huì)設(shè)置leaveok。
------------------------------ 滾動(dòng)
int tscrollok(win,bf) 當(dāng)光標(biāo)在屏幕的右下角并且輸入了一個(gè)字符(或者新的一行)時(shí),如bf為TRUE則窗口win中的文本將上滾一行。如果bf為FALSE,則鼠標(biāo)留在原來的位置上 當(dāng)滾動(dòng)特征打開時(shí),使用下面的函數(shù)可以滾動(dòng)窗口中的內(nèi)容。 (注意:當(dāng)用戶在窗口的最 后一行輸入一個(gè)新行時(shí),也應(yīng)該發(fā)生相應(yīng)的滾動(dòng)操作, 所以在使用scrollok(.)時(shí)要十分小心, 否則可能會(huì)得到出乎意料的結(jié)果。) int scrol(win) 此函數(shù)將使窗口向上滾動(dòng)一行(數(shù)據(jù)結(jié)構(gòu)中的行也向上滾動(dòng))。 int acrl(n) int wscrl(win,n) 這兩個(gè)函數(shù)將使屏幕或者窗口win向上向下滾動(dòng),滾動(dòng)方向取決于整數(shù)n的值 如果n是正數(shù),則窗口向上滾動(dòng)n行,否則如果n是負(fù)數(shù),則窗口向下滾動(dòng)n行 int setscrreg(t,b) int wsetscrreg(win,t,b) 這兩個(gè)函數(shù)設(shè)置一個(gè)軟滾動(dòng)區(qū)。 ------------------------------------- 小鍵盤
WINDOW *newpad(nlines,ncols) WINDOW *subpad(orlg,nlines,ncols,begy,begx) int prefresh(pad,pminrow,pmincol,sminrow,smincol,smaxrow,smaxcol) int pnoutrefresh(pad,pminrow,pmincol,sminrow,smincol,smaxrow,smaxcol) int pechochar (pad,ch) ---------------------------- 軟標(biāo)簽
int slk_init(int fmt) int slk_set(int labnum,char *label,int fmt) int slk_refresh() int slk_noutrefresh() char *slk_label(int labnum) int slk_clear() int slk_restore() int slk_touch() int slk_attron(chty peattr) int slk_attrset(chty peattr) int slk_attroff(chty peattr) 這些函數(shù)是與attron(attr)、attrset(attr)和attroft(attr)相對應(yīng)的, 但它們尚未實(shí)現(xiàn)。 ------------------------------ int beep() int Flash() char *unctrl(chty pec) char *keyname(int c) int filter() (注:以上函數(shù)尚未實(shí)現(xiàn)。) void use_env(bf) int putwin(WINDOW *win,FILE*filep) (注:以上函數(shù)尚未實(shí)現(xiàn)。) WINDOW *getwin(FILE*filep) (注:以上函數(shù)尚未實(shí)現(xiàn)。) int delay_output(int ms) int flushinp() -------------------------------------- 低級(jí)訪問
int def_prog_mode() int def_shell)_mode() int reset_prog_mode() int reset_shell_mode() int resetty() int savetty() int ripoffline(int line,int (*init)(WINDOW *,int )) int napms(int ms) --------------------------------- 屏幕轉(zhuǎn)儲(chǔ)
int scr_dump(char *filename) (注:此函數(shù)尚未實(shí)現(xiàn)。) int scr_restore(char *filename) (注:此函數(shù)尚未實(shí)現(xiàn)。) int scr_init(char *filename) (注:此函數(shù)尚未實(shí)現(xiàn)。) int scr_set(char *filename) (注:此函數(shù)尚未實(shí)現(xiàn)。) ----------------------------------- Termcap模擬
int tgetent(char *bp,char *name) int tgetflag(char fd[2]) int tgetnum(char fd[2]) char *tgetstr(char fd[2],char **area) char tgoto(char *cap,int col,int row) int tputs(char *str,int offset,int (*putc)()) ------------------------------------------- 調(diào)試函數(shù)
void _init(trace() void _trace(char *,...) char *_traceattr(mode) void traceon() void traceoff() </Content> <PostDateTime>2002-08-31 09:29:00</PostDateTime> </Reply><Reply> <PostUserNickName></PostUserNickName> <rank>四級(jí)(中級(jí))</rank> <ranknum>user4</ranknum> <credit>97</credit> <ReplyID>6339224</ReplyID> <TopicID>984818</TopicID> <PostUserId>202193</PostUserId> <PostUserName>qisiwole</PostUserName> <Point>0</Point> <Content>-------------------------------------------
8.21.1布爾型權(quán)能 變量權(quán)能名稱初始化描述 auto_left_marginbwbwcub1從最后一列換行到第0列 auto_right_marginamam終端的邊界自動(dòng)對齊 back_color_erasebceut屏幕以背景色清除 can_changeccccc終端可以重新定義現(xiàn)有的顏色 ceol_standout_glitch xhpxs標(biāo)準(zhǔn)輸出不會(huì)被覆蓋所清除(hp) col_addr_glitchxhpaYA對hpa/mhpa大寫字符而言只作正向移動(dòng) cpi_changes_rescpixYF改變字符間距將會(huì)影響解析度 cr_cancels_micro_mode crxm YB使用cr關(guān)閉宏模式 eat_newline_glitchxenlxn在80列之后將忽略新行(Concept) erase_overtrikeeoeo可以用空格來刪除疊印 generic_typegngn通用行類型(如dialup,switch) hard_copyhchc硬拷貝終端 hard_cursorchtsHC光標(biāo)很難看到 has_meta_keykmkm有一個(gè)元鍵(shift,設(shè)置奇偶校驗(yàn)位) has_print _wheeldaisyYC打印機(jī)需要操作員來改變字符集 has_status_linehshs有一個(gè)額外的“狀態(tài)行” hue_lightness_saturation hlshl終端只使用HLS顏色表示法(Tektronix) insert_null_glitchinin插入模式,能識(shí)別空行 lpi_changes_reslpixYG改變行距將影響解析度 memory_abovedada顯示可以保留在屏幕上方 memory_belowdbdb顯示可以保留在屏幕下方 move_insert_modemirmi在插入模式下可以安全地移動(dòng) move_standout_mode msgrms在標(biāo)準(zhǔn)輸出模式下可以安全地移動(dòng) needs_xon_xoffnxonnx不能填充,需要nxon/xoff no_esc_ctl_cxsbxbBeehive信號(hào)(F1=Escape,F2=CtrlC) non_rev_rmcupnrrmcNRsmcup不能反轉(zhuǎn)rmcup no_pad_char npcNP填充字符不存在 non_dest_scroll_region ndscr ND滾動(dòng)區(qū)不可摧毀 over_strikeosos終端可以疊印 prtr_silentmc5i5i打印機(jī)不向屏幕回送 row_addr_glitchxvpaYDvhp/mvpa大寫字母只能作正向移動(dòng) semi_auto_right_margin samYE打印在最后一列將導(dǎo)致cr status_line_esc_okeslokes在狀態(tài)行上可以使用Esc鍵 dest_tabs_magic_smso xtxt制表符不可用(Teleray1061) tilde_glitchhzhzHazel_tine;不能打印's transparent_underline ulul下劃線字符疊印 xon_coffxonxo終端使用xon/xoff握手機(jī)制 8.21.2數(shù)值型權(quán)能 變量權(quán)能名稱初始值描述 bit_image_entwining bitwinYo在SYSV中未作描寫 buffer_capacitybufszYa在打印前緩存的字節(jié)的數(shù)目 columnscolsco在一行中列的數(shù)目 dot_vert_spacingspinvYb在水平方向上點(diǎn)與點(diǎn)的距離,以每英寸多少點(diǎn)為單位 dot_horz_spacingspinhYc在垂直方向上針之間的距離,以每英寸多少針為單位 init_tabsitit每#個(gè)空格算一個(gè)制表符的位置 label_heightlhlh每個(gè)標(biāo)簽多少行 label_widthlwlw每個(gè)標(biāo)簽多少列 lineslinesli屏幕或頁面上行的數(shù)目 lines_of_memorylmlm如果>lines則表示內(nèi)存中的行數(shù),0意味著可變 magic_cookIE_glitch xmcsgsmso或rmso所剩下的空白字符的數(shù)目 max_colorscolorsCo在屏幕上顏色的最大數(shù)目 max_micro_address maddrYd在micro_._address中的最大值 max_micro_jumpmjumpYe在parm_._micro中的最大值 max_pairspairspa在屏幕上顏色對的最大數(shù)目 micro_col_sizemcsYf在宏模式中字符間距的大小 micro_line_sizemlsYg在宏模式中行距的大小 no_color_videoncvNC不能使用彩色的視頻屬性 number_of_pinsnpinsYh在打印頭中針的數(shù)目 num_labelsnlabNl屏幕上標(biāo)簽的數(shù)量 output_res_char orcYi水平解析度,以每行單元數(shù)為單位 output_res_lineorlYj垂直解析度,以每行單元數(shù)為單位 output_res_horz_inch orhiYk水平解度,以每英寸單元數(shù)為單位 output_res_vert_inch orviYl垂直解析度,以每英寸單元數(shù)為單位 padding_baud_rate pbpb在需要cr/nl填充時(shí)最低的波特率 virtual_terminalvtvt虛擬終端號(hào)(Unix系統(tǒng)) width_status_linewslws狀態(tài)行的第n列
(下面的數(shù)值型權(quán)能是在SYSVterm結(jié)構(gòu)中定義的,但在man幫助中還沒有提供對它們的 描述。我們的解釋來自term結(jié)構(gòu)的頭文件。) 變量權(quán)能名稱初始值描述
bit_image_typebitypeYp位映像設(shè)備的類型 buttonsbtnsBT鼠標(biāo)按鍵的數(shù)目 max_attributesmama終端能夠處理的最多的組合屬性 maximum_Windows wnumMW可定義窗口的最大數(shù)目 print _ratecpsYm打印速率,以每秒字符數(shù)為單位 wide_char _sizewidcsYn在雙寬度模式中字符間距的大小
8.21.3字符串型權(quán)能 變量權(quán)能名稱初始值描述
acs_char sacscac圖形字符集對一def=vt100 alt_scancode_escscesaS8掃描碼模擬的另一種換碼(默認(rèn)值是VT100) back_tab cbtbt向后tab(p) bellbelbl聲音信號(hào)(響鈴)(p) bit_image_repeatbirepXy把位映像單元重復(fù)#1#2次(使用tparm) bit_image_newlinebinelZz移動(dòng)到位映像的下一行(使用tparm) bit_image_carriage_return bicr Yv移動(dòng)到同一行的開頭(使用tparm) carriage_returncrcr回車(p*) change_char _pitch cpiZA改變?yōu)槊坑⒋?個(gè)字符 change_line_pitchlpiZB改變?yōu)槊坑⒋?行 change_res_horzchrZC改變水平解度 change_res_vertcvrZD改變垂直解析度 change_scroll_region csrcs把滾動(dòng)區(qū)改變?yōu)閺?1行到#2行(VT100)(PG) char _paddingrmprP與ip相似,但它用在插入模式中 char _set_namescsnmZy字符集名稱的列表 clear_all_tabstbcct清除所有的制表符停止(p) clear_marginsmgcMC清除所有的頁邊 clear_screenclearcl清除屏幕和home光標(biāo)(p*) clr_bolel1cb清除到行首 clr_eolelce清除到行尾(P) clr_eosedcd清除到顯示的末尾(p*) code_set_initcsinci多個(gè)代碼集合的初始化序列 color_namescolornmYw#1號(hào)顏色的名稱 column_addresshpach設(shè)置光標(biāo)列(PG) command_char acter cmdchCC在原型中終端可以設(shè)置的cmd字符 cursor_addresscupcm屏幕光標(biāo)移動(dòng)到#1行#2列(PG) cursor_downcud1do下移一行 cursor_homehomehoHome光標(biāo)(如果沒有環(huán)的話) cursor_invisiblecivisvi使光標(biāo)不可見 cursor_leftcub1le把光標(biāo)向左移一個(gè)空格 cursor_mem_address mrcupCM內(nèi)存相對的光標(biāo)尋址 cursor_normalcnormve使光標(biāo)以最普通的外形顯示(undovs/vi) cursor_rightcuf1nd不具有破壞性的空白(光標(biāo)向右移) cursor_to_llllll最后一行,第一列(如果沒有環(huán)的話) cursor_upcuu1upUpline(光標(biāo)向上移)
cursor_visiblecvvisvs使光標(biāo)可見 define_bit_image_region defbiYx定義方形的位映像區(qū)(使用tparm) define_char defcZE定義字符集中的某個(gè)字符 delete_char acterdch1dc刪除字符(p*) delete_linedl1dl刪除行(p*) device_typedevtdv顯示語言/代碼集支持 dis_status_linedslds關(guān)閉狀態(tài)行 display_pc_char dispcS1顯示PC字符 down_half_linehdhd向下移動(dòng)半行(向前換1/2行) ena_acsenacseA使能另一個(gè)字符集合 end_bit_image_region endbi Yy結(jié)束位映像區(qū)(使用tparm) enter_alt_char set_mode sMacs as開始另一個(gè)字符集(p) enter_am_modesmamSA打開自動(dòng)對齊特征 enter_blink_modeblink mb打開字符閃爍效果 enter_bold_modeboldmd打開粗體(特別亮)模式 enter_ca_modesmcupti啟動(dòng)使用環(huán)的程序的字符串 enter_delete_modesmdcdm刪除模式(輸入) enter_dim_modedimmh打開半亮模式 enter_doublewide_mode swidm ZF使能雙倍寬度模式 enter_draft_qualitysdrfqZG設(shè)置草圖效果的打印方式 enter_insert_modesmirim插入模式(輸入) enter_italics_modesitmZH使能斜體字模式 enter_leftward_mode slmZI使能向左回車移動(dòng) enter_micro_modesmicmZJ使能宏移動(dòng)功能 enter_near_letter_quality snlqZK設(shè)置NLQ打印 enter_normal_quality snrmqZL設(shè)置一般質(zhì)量的打印方式 enter_pc_char set_mode smpch S2輸入PC字符顯示模式 enter_protected_mode protmp打開保護(hù)模式 enter_reverse_mode revmr打開反轉(zhuǎn)視頻模式 enter_scancode_mode smscS4輸入PC掃描碼 enter_secure_mode invismk打開空白模式(字符不可見) </Content> <PostDateTime>2002-08-31 09:29:00</PostDateTime> </Reply><Reply> <PostUserNickName></PostUserNickName> <rank>四級(jí)(中級(jí))</rank> <ranknum>user4</ranknum> <credit>97</credit> <ReplyID>6339230</ReplyID> <TopicID>984818</TopicID> <PostUserId>202193</PostUserId> <PostUserName>qisiwole</PostUserName> <Point>0</Point> <Content>enter_shadow_mode sshmZM使能陰影打印模式 enter_standout_mode smso so開始標(biāo)準(zhǔn)輸出模式 enter_subscript_mode ssubm ZN使能下標(biāo)打印 enter_superscript_mode ssupm ZO使能上標(biāo)打印 enter_underline_mode smul us開始下劃線模式 enter_upward_mode sum ZP使能向上回車移動(dòng) enter_xon_modesmxonSX打開xon/xoff握手機(jī)制 erase_char sechec刪除#1個(gè)字符(PG) exit_alt_char set_mode rmacs ae終止可選的字符集(P) exit_am_modermamRA關(guān)閉自動(dòng)對齊方式 exit_attribute_mode sgr0me關(guān)閉所有屬性 exit_ca_modermcupte終止使用環(huán)的程序的字符串 exit_delete_modermdced終止刪除模式 exit_doublewide_mode rwidm ZQ關(guān)閉雙倍寬度打印方式 exit_insert_modermirei結(jié)束插入模式 exit_italics_moderitmZR關(guān)閉斜體打印模式
exit_leftward_moderlmZS使能右向(普通的)回車移動(dòng) exit_micro_modermicmZT關(guān)閉宏移動(dòng)能力 exit_pc_char set_mode rmpch S3關(guān)閉PC字符顯示 exit_scancode_mode rmsc S5關(guān)閉PC掃描碼模式 exit_shadow_mode rshmZU關(guān)閉陰影打印模式 exit_standout_mode rmsose結(jié)束標(biāo)準(zhǔn)輸出模式 exit_subscript_mode rsubmZV關(guān)掉下標(biāo)打印方式 exit_superscript_mode rsupm ZW關(guān)掉上標(biāo)打印方式 exit_underline_mode rmulue結(jié)束下劃線模式 exit_upward_moderumZX打開向下(普通的)回車移動(dòng) exit_xon_modermxonRX關(guān)掉xon/xoff握手機(jī)制 flash_screenflashvb可視響鈴(不能移動(dòng)光標(biāo)) form_feedffff硬拷貝終端頁面的換頁(p*) from_status_linefslfs從狀態(tài)行返回 init_1stringis1i1終端初始化字符串 init_2stringis2i2終端初始化字符串 init_3stringis3i3終端初始化字符串 init_fileifif所包含的文件名稱 init_progiprogiP初始化程序的路徑名 initialize_colorinitcIc初始化顏色的定義 initialize_pairinitpIp初始化顏色對 insert_char acterich1ic插入字符(P) insert_lineil1al加入一個(gè)新的空白行(p*) insert_paddingipip在插入的字符之后再插入填充字符(p*) key_a1ka1K1小鍵盤左上方的鍵 key_a3ka3K3小鍵盤右上方的鍵 key_b2kb2K2小鍵盤中央的鍵 key_backspacekbskb由回退鍵所發(fā)送 key_begkbeg1開始鍵 key_btabkcbtkB向右一tab鍵 key_c1kc1K4小鍵盤左下角的鍵 key_c3kc3K5小鍵盤右下角的鍵 key_cancelkcan2取消鍵 key_catabktbcka由clear_all_tabs鍵發(fā)送 key_clearkclrkC由清除屏幕或者刪除鍵發(fā)送 key_closekclo3關(guān)閉鍵 key_commandkcmd4命令鍵 key_copykcpy5拷貝鍵 key_createkcrt6創(chuàng)建鍵 key_ctabkctabkt由clear_tab鍵發(fā)送 key_dckdch1kD由刪除字符鍵發(fā)送 key_dlkdl1kL由刪除行鍵發(fā)送 key_downkcud1kd由終端向下光標(biāo)鍵發(fā)送 key_eickrmirkM在插入模式中由rmir或smir發(fā)送 key_endkend7結(jié)束鍵 key_enterkent8輸入/發(fā)送鍵 key_eolkelkE由clear_to_end_of_line鍵發(fā)送
key_eoskedkS由clear_to_end_of_screen鍵發(fā)送 key_exitkext9退出鍵 key_findkfnd0查找鍵 key_helpkhlp%1幫助鍵 key_homekhomekh由home鍵發(fā)送 key_ickich1kl由inschar /enterinsmode鍵發(fā)送 key_ilkil1kA由插入行發(fā)送 key_leftkcub1kl由終端向左鍵發(fā)送 key_llkllkH由home_down鍵發(fā)送 key_markkmrk%2標(biāo)記鍵 key_messagekmsg%3消息鍵 key_movekmov%4移動(dòng)鍵 key_nextknxt%5下一個(gè)鍵 key_npageknpkN由下頁鍵發(fā)送 key_openkopn%6打開鍵 key_optionskopt%7選項(xiàng)鍵 key_ppagekppkP由前頁鍵發(fā)送 key_previouskprv%8前一鍵 key_print kprt%9打印鍵 key_redokrdo%0redo鍵 key_refrencekref&1引用鍵 key_refreshkrfr&2刷新鍵 key_replacekrpl&3替換鍵 key_restartkrst&4重啟鍵 key_resumekres&5恢復(fù)鍵 key_rightkcuf1kr由終端向右鍵發(fā)送 key_saveksav&6保存鍵 key_sbegkBEG&9按下開始鍵的同時(shí)按下shift鍵 key_scancelkCAN&0按下取消鍵的同時(shí)按下shift鍵 key_scommandkCMD*1按下命令鍵的同時(shí)按下shift鍵 key_scopykCPY*2按下拷貝鍵的同時(shí)按下shift鍵 key_screatekCRT*3按下創(chuàng)建鍵的同時(shí)按下shift鍵 key_sdckDC*4按下刪除字符鍵的同時(shí)按下shift鍵 key_sdlkDL*5按下刪除行鍵的同時(shí)按下shift鍵 key_selectkslt*6選擇鍵 key_sendkEND*7按下結(jié)束鍵的同時(shí)按下shift鍵 key_seolkEOL*8按下行尾鍵的同時(shí)按下shift鍵 key_sexitkEXT*9按下退出鍵的同時(shí)按下shift鍵 key_sfkindkF由前滾/下滾鍵發(fā)送 key_sfindkFND*0按下查找鍵的同時(shí)按下shift鍵 key_shelpkHLP#1按下幫助鍵的同時(shí)按下shift鍵 key_shomekHOM#2按下Home鍵的同時(shí)按下shift鍵 key_sickIC#3按下插入字符鍵的同時(shí)按下shift鍵 key_sleftkLFT#4按下向左鍵的同時(shí)按下shift鍵 key_smessagekMSG%a按下消息鍵的同時(shí)按下shift鍵 key_smovekMOV%b按下移動(dòng)鍵的同時(shí)按下shift鍵 key_snextkNXT%c按下向后鍵的同時(shí)按下shift鍵
key_soptionskOPT%d按下選項(xiàng)鍵的同時(shí)按下shift鍵 key_spreviouskPRV%e按下向前鍵的同時(shí)按下shift鍵 key_sprint kPRT%f按下打印鍵的同時(shí)按下shift鍵 key_srkrikR由后滾/下滾鍵發(fā)送 key_sredokRDO%g按下redo鍵的同時(shí)按下shift鍵 key_sreplacekRPL%h按下替換鍵的同時(shí)按下shift鍵 key_srightkRIT%l按下向右鍵的同時(shí)按下shift鍵 key_srsumekRES%j按下恢復(fù)鍵的同時(shí)按下shift鍵 key_ssavekSAV!1按下保存鍵的同時(shí)按下shift鍵 key_ssuspendkSPD!2按下中斷鍵的同時(shí)按下shift鍵 key_sundokUND!3按下取消鍵的同時(shí)按下shift鍵 key_stabkhtskT由set_tab鍵發(fā)送 key_suspendkspd&7中斷鍵 key_undokund&8取消鍵 key_upkcuulku由終端的向上鍵發(fā)送 keypad_localrmkxke不處于“小鍵盤發(fā)送”方式之中 keypad_xmitsmkxks把終端置為“小鍵盤發(fā)送”方式 lab_f0lf0l0如果不是f0的話,則為功能鍵f0的標(biāo)簽 </Content> <PostDateTime>2002-08-31 09:30:00</PostDateTime> </Reply><Reply> <PostUserNickName></PostUserNickName> <rank>一級(jí)(初級(jí))</rank> <ranknum>user1</ranknum> <credit>100</credit> <ReplyID>6339448</ReplyID> <TopicID>984818</TopicID> <PostUserId>200455</PostUserId> <PostUserName>Linuxman2002</PostUserName> <Point>0</Point> <Content>up </Content> <PostDateTime>2002-08-31 09:46:00</PostDateTime> </Reply><Reply> <PostUserNickName></PostUserNickName> <rank>四級(jí)(中級(jí))</rank> <ranknum>user4</ranknum> <credit>97</credit> <ReplyID>6339495</ReplyID> <TopicID>984818</TopicID> <PostUserId>202193</PostUserId> <PostUserName>qisiwole</PostUserName> <Point>0</Point> <Content>lab_f1lf1l1如果不是f1的話,則為功能鍵f1
的標(biāo)簽 lab_f2lf2l2如果不是f2的話,則為功能鍵f2
的標(biāo)簽 lab_f3lf3l3如果不是f3的話,則為功能鍵f3
的標(biāo)簽 lab_f4lf4l4如果不是f4的話,則為功能鍵f4
的標(biāo)簽 lab_f5lf5l5如果不是f5的話,則為功能鍵f5
的標(biāo)簽 lab_f6lf6l6如果不是f5的話,則為功能鍵f6
的標(biāo)簽 lab_f7lf7l7如果不是f7的話,則為功能鍵f7
的標(biāo)簽 lab_f8lf8l8如果不是f8的話,則為功能鍵f8
的標(biāo)簽 lab_f9lf9l9如果不是f9的話,則為功能鍵f9
的標(biāo)簽 lab_f10lf10la如果不是f10的話,則為功能鍵
f10的標(biāo)簽 label_onsmlnLO打開軟標(biāo)簽 label_offrmlnLF關(guān)閉軟標(biāo)簽 meta_offrmmmo關(guān)閉“元模式” meta_onsmmmm打開“元模式”(8位) micro_column_address mhpa ZY近似宏調(diào)整的列—地址, micro_downmcud1ZZ近似宏調(diào)整的光標(biāo)—向下 micro_leftmcutb1Za近似宏調(diào)整的光標(biāo)—向左 micro_rightmcuf1Zb近似宏調(diào)整的光標(biāo)—向右 micro_row_address mvpaZc近似宏調(diào)整的行—地址 micro_upmcuu1Zd近似宏調(diào)整的光標(biāo)—向上 newlinenelnw新行(行為近似于cr后跟lf) order_of_pinsporderZe匹配軟件以及打印頭中的針 orig_colorsococ重置所有的顏色對 orig_pairopop把默認(rèn)的顏色對設(shè)置為原始的那
個(gè) pad_char padpc填充字符(非空) parm_dchdchDC刪除#1字符(PG*) parm_delete_linedlDL刪除#1行(PG*) parm_down_cursor cudDO把光標(biāo)向下移#1行(PG*) parm_down_micro mcudZf近似宏調(diào)用的cub
parm_ichichIC插入#1個(gè)空白符號(hào)(PG*) parm_indexindnSF向上滾動(dòng)#1行(PG) parm_insert_lineilAL加入#1個(gè)新的空白行(PG*) parm_left_cursorcubLE把光標(biāo)向左移#1個(gè)空格(PG) parm_left_micromcubZg近似宏調(diào)整中的cub parm_right_cursor cufRl把光標(biāo)向右移#1個(gè)空格(PG*) parm_right_micromcufZh近似宏調(diào)整中的cuf parm_rindexrinSR回滾#1行(PG) parm_up_cursorcuuUP把光標(biāo)上移#1行(PG*) parm_up_micromcuuZi近似宏調(diào)整中的cuu pkey_keypfkeypk把功能鍵#1定義為字符#2的類型 pkey_localpflocpl把功能鍵#1定義為執(zhí)行字符串#2 pkey_xmitpfxpx把功能鍵#1定義為發(fā)送字符串#2 pkey_plabpfxlxl把功能鍵#1定義為發(fā)送#2,并顯
示#3 plab_normplnpn編程標(biāo)簽#1,以顯示字符串#2 print _screenmc0ps打印屏幕內(nèi)容 prtr_nonmc5ppO打開打印機(jī),打印#1個(gè)字節(jié) prtr_offmc4pf關(guān)閉打印機(jī) prtr_onmc5po打開打印機(jī) repeat_char reprp把字符#1重復(fù)#2次(PG*) req_for_inputrfiRF輸入請求 reset_1stringrs1r1把終端完全置為sane方式 reset_2stringrs2r2把終端完全置為sane方式 reset_3stringrs3r3把終端完全置為sane方式 reset_filerfrf包含重置字符串的文件名稱 restore_cursorrcrc把光標(biāo)置為上一個(gè)屏幕上的位置 row_addressvpacv垂直絕對位置(設(shè)置行)(PG) save_cursorscsc保存光標(biāo)位置(P) scancode_escapescescS7為了掃描碼模擬按下Esc鍵 scroll_forwardindsf把文本向上滾動(dòng)(P) scroll_reverserisr把文本向下滾動(dòng)(P) select_char _setscsZj選擇字符集 set0_des_seqs0dss0切換到代碼集0(EUC集0,ASCII) set1_des_seqs1dss1切換到代碼集1 set2_des_seqs2dss2切換到代碼集2 set3_des_seqs3DSs3切換到代碼集3 set_a_backgroundsetabAB使用ANSI設(shè)置背景顏色 set_a_foregroundsetafAF使用ANSI設(shè)置前景顏色 set_attributessgrsa定義視頻屬性(PG9) set_backgroundsetbSb設(shè)置當(dāng)前背景顏色 set_bottom_marginsmgbZk設(shè)置當(dāng)前行的底部邊界 set_bottom_margin_parm smgbp ZI從bottomset_color_band的#1行
或#2行設(shè)置底行 setcolorYz改變#1號(hào)色帶顏色 set_color_pairscpsp設(shè)置當(dāng)前顏色對 set_foregroundsetfSf設(shè)置當(dāng)前前景色 set_left_marginsmglML設(shè)置當(dāng)前行的左邊界 set_left_margin_parm smglpZm在#1行(#2行)設(shè)置左(右)邊界
set_lr_marginsmglrML設(shè)置左右邊界 set_page_lengthslinesYZ把頁的長度設(shè)置為#1行(使用
tparm) set_right_marginsmgrMR把右邊界設(shè)置為當(dāng)前列 set_right_margin_parm smgrp Zn把右邊界設(shè)置為#1列 set_tabhtsst在當(dāng)前列的所有行設(shè)置制表符 set_tb_marginsmgtbMT設(shè)置上下邊界 set_top_marginsmgtZo把上邊界設(shè)置為當(dāng)前行 set_top_margin_parm smgtp Zp把上邊界設(shè)置為#1行 set_WINDOW windwi當(dāng)前窗口是從#1行到#2行,從#3
列到#4列 start_bit_imagesbimZq開始打印位映像圖形 start_char _set_def scsdZr開始定義字符集 stop_bit_imagerbimZs結(jié)束打印位映像圖形 stop_char _set_def rcsdZt結(jié)束定義字符集 subscript_char acters subcs Zu下標(biāo)字符的列表 superscript_char acters supcs Zv 上標(biāo)字符的列表 tabhtta跳轉(zhuǎn)到下面8個(gè)空格硬件的制表
符位置 these_cause_crdocrZw這些字符導(dǎo)致CR to_status_linetslts跳到狀態(tài)行,第1列 underline_char ucuc給某字符劃下劃線,并移過它 up_half_linehuhu上移半行(反轉(zhuǎn)1/2行) xoff_char actercoffcXFXON字符 xon_char acterxoncXNXOFF字符
(下面的字符串權(quán)能是在SYSVr終端結(jié)構(gòu)中定義的,但在man幫助信息中還
未作描述,對 它們的解釋是從終端結(jié)構(gòu)頭文件中得到的。)
label_formatflnLf?? set_clocksclkSC設(shè)置時(shí)鐘 display_clockdclkDK顯示時(shí)鐘 remove_clockrmclkRC刪除時(shí)鐘 create_WINDOW cwinCW把窗口#1定義為從#2行,#3列到#4
行,#5列 goto_WINDOW wingoWG跳到窗口#1 hanguphupHU掛起電話 dial_phonedialDI撥電話號(hào)碼#1 quick_dialqdialQD撥電話號(hào)碼#1,但不做進(jìn)度檢查 tonetoneTO選擇接觸聲調(diào)撥叫 pulsepulsePU選擇脈沖撥叫 flash_hookhookfh閃光切換分支 fixed_pausepausePA暫停2~3秒 wait_tonewaitWA等待撥叫聲音 user0u0u0用戶字符串#0 user1u1u1用戶字符串#1 user2u2u2用戶字符串#2 user3u3u3用戶字符串#3 user4u4u4用戶字符串#4 user5u5u5用戶字符串#5 user6u6u6用戶字符串#6 user7u7u7用戶字符串#7 user8u8u8用戶字符串#8 user9u9u9用戶字符串#9 get_mousegetmGmsurses 應(yīng)獲得按鈕事件 key_mousekmousKm?? mouse_infominfoMi鼠標(biāo)狀態(tài)信息 pc_term_optionspctrmS6PC終端選項(xiàng) req_mouse_posreqmpRQ請求鼠標(biāo)位置報(bào)告 zero_motionzeromZx后繼字符沒有移動(dòng) --------------------------------------------------------------------- 大半年前看ncurses庫的筆記 共享一下吧。
