GadgetSeed
0.9.6
|
ラインエディタ [詳解]
マクロ定義 | |
#define | BS 0x08 |
#define | HT 0x09 |
#define | LF 0x0a |
#define | CR 0x0d |
lineedit.stat | |
列挙型 | |
enum | { ESC0, ESC1, ESC2 } |
関数 | |
void | init_lineedit (struct st_lineedit *le) |
lineeditを初期化する [詳解] | |
int | do_lineedit (struct st_lineedit *le, uchar ch) |
リターンを受けるまでの1行編集を行う 1文字づつデータを入れる [詳解] | |
void | new_lineedit (struct st_lineedit *le) |
編集中のエディタを初期化(コマンド実行後にバッファ破棄) [詳解] | |
void | set_str_lineedit (struct st_lineedit *le, uchar *str) |
編集文字列を設定する [詳解] | |
void | draw_lineedit (struct st_lineedit *le) |
表示する [詳解] | |
void | insert_str_lineedit (struct st_lineedit *le, uchar *str, unsigned int len) |
ラインエディタ
機能
ラインエディタ、ヒストリ対応
VT100互換のターミナル用
キー
↑ 1b 5b 41
↓ 1b 5b 42
CTRL-P 10
CTRL-N 0e ヒストリー
← 1b 5b 44
→ 1b 5b 43 カーソル移動
CTRL-A 01 カーソルを先頭へ
CTRL-B 02 カーソルを1文字前へ
CTRL-D 04 1文字削除
CTRL-E 05 カーソルを末尾へ
CTRL-F 06 カーソルを1文字先へ
CTRL-H 08 1文字前を削除(BS)
CTRL-K 0b カーソル以降を削除
lineedit.c に定義があります。
anonymous enum |
列挙値 | |
---|---|
ESC0 | エスケープシーケンス未受信 |
ESC1 | エスケープシーケンス1バイト目 |
ESC2 | エスケープシーケンス2バイト目 |
lineedit.c の 40 行目に定義があります。
int do_lineedit | ( | struct st_lineedit * | le, |
uchar | ch | ||
) |
リターンを受けるまでの1行編集を行う 1文字づつデータを入れる
[in] | le | 編集するlineedit |
[in] | ch | 入力文字 |
lineedit.c の 71 行目に定義があります。
参照先 ESC0, ESC1, ESC2, st_lineedit::stat.
void draw_lineedit | ( | struct st_lineedit * | le | ) |
表示する
[in] | le | 文字列を設定するlineedit |
lineedit.c の 337 行目に定義があります。
参照先 st_lineedit::buf, cputc(), st_lineedit::cur_pos, GSC_SHELL_MAX_LINE_COLUMS.
void init_lineedit | ( | struct st_lineedit * | le | ) |
lineeditを初期化する
[in] | le | 初期化するlineedit |
lineedit.c の 51 行目に定義があります。
参照先 st_lineedit::buf, st_lineedit::cur_pos, ESC0, GSC_SHELL_MAX_LINE_COLUMS, st_lineedit::stat.
void new_lineedit | ( | struct st_lineedit * | le | ) |
編集中のエディタを初期化(コマンド実行後にバッファ破棄)
[in] | le | 編集するlineedit |
lineedit.c の 290 行目に定義があります。
参照先 st_lineedit::buf, st_lineedit::cur_pos, ESC0, GSC_SHELL_MAX_LINE_COLUMS, st_lineedit::stat.
参照元 dispose_shell_line().
void set_str_lineedit | ( | struct st_lineedit * | le, |
uchar * | str | ||
) |