From: Nobuyoshi N. <nob...@so...> - 2002-04-01 02:08:33
|
なかだです。 バックスクロールモードで上下するキーに、~/.mlterm/keyで設定した ものも使えるようにしてみました。 Index: src/ml_keymap.c =================================================================== RCS file: /cvsroot/mlterm/mlterm/src/ml_keymap.c,v retrieving revision 1.9 diff -u -2 -p -r1.9 ml_keymap.c --- src/ml_keymap.c 10 Mar 2002 09:09:13 -0000 1.9 +++ src/ml_keymap.c 31 Mar 2002 03:27:02 -0000 @@ -35,5 +35,7 @@ static key_func_table_t key_func_table[ { "NEW_PTY" , NEW_PTY , } , { "PAGE_UP" , PAGE_UP , } , + { "PAGE_DOWN" , PAGE_DOWN , } , { "SCROLL_UP" , SCROLL_UP , } , + { "SCROLL_DOWN" , SCROLL_DOWN , } , { "INSERT_SELECTION" , INSERT_SELECTION , } , { "EXIT_PROGRAM" , EXIT_PROGRAM , } , @@ -62,6 +64,12 @@ ml_keymap_init( { XK_Prior , ShiftMask , 1 , } , + /* PAGE_DOWN(compatible with kterm) */ + { XK_Next , ShiftMask , 1 , } , + /* SCROLL_UP */ { XK_Up , ShiftMask , 1 , } , + + /* SCROLL_DOWN */ + { XK_Down , ShiftMask , 1 , } , /* INSERT_SELECTION */ Index: src/ml_keymap.h =================================================================== RCS file: /cvsroot/mlterm/mlterm/src/ml_keymap.h,v retrieving revision 1.5 diff -u -2 -p -r1.5 ml_keymap.h --- src/ml_keymap.h 20 Jan 2002 00:13:11 -0000 1.5 +++ src/ml_keymap.h 31 Mar 2002 03:27:02 -0000 @@ -21,5 +21,7 @@ typedef enum ml_key_func NEW_PTY , PAGE_UP , + PAGE_DOWN , SCROLL_UP , + SCROLL_DOWN , INSERT_SELECTION , EXIT_PROGRAM , Index: src/ml_term_screen.c =================================================================== RCS file: /cvsroot/mlterm/mlterm/src/ml_term_screen.c,v retrieving revision 1.75 diff -u -2 -p -r1.75 ml_term_screen.c --- src/ml_term_screen.c 28 Mar 2002 20:17:24 -0000 1.75 +++ src/ml_term_screen.c 31 Mar 2002 03:27:02 -0000 @@ -1758,5 +1758,21 @@ key_pressed( if( ml_is_backscroll_mode( &termscr->bs_image)) { - if( ksym == XK_Prior) + if( ml_keymap_match( termscr->keymap , PAGE_UP , ksym , event->state)) + { + bs_half_page_downward( termscr) ; + } + else if( ml_keymap_match( termscr->keymap , PAGE_DOWN , ksym , event->state)) + { + bs_half_page_upward( termscr) ; + } + else if( ml_keymap_match( termscr->keymap , SCROLL_UP , ksym , event->state)) + { + bs_scroll_downward( termscr) ; + } + else if( ml_keymap_match( termscr->keymap , SCROLL_DOWN , ksym , event->state)) + { + bs_scroll_upward( termscr) ; + } + else if( ksym == XK_Prior) { if( event->state & ShiftMask) @@ -1817,4 +1833,8 @@ key_pressed( bs_half_page_downward( termscr) ; } + else if( ml_keymap_match( termscr->keymap , PAGE_DOWN , ksym , event->state)) + { + enter_backscroll_mode( termscr) ; + } else if( termscr->use_extended_scroll_shortcut && ml_keymap_match( termscr->keymap , SCROLL_UP , ksym , event->state)) @@ -1822,4 +1842,9 @@ key_pressed( enter_backscroll_mode( termscr) ; bs_scroll_downward( termscr) ; + } + else if( termscr->use_extended_scroll_shortcut && + ml_keymap_match( termscr->keymap , SCROLL_DOWN , ksym , event->state)) + { + enter_backscroll_mode( termscr) ; } else if( ml_keymap_match( termscr->keymap , INSERT_SELECTION , ksym , event->state)) -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦 |