|
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はできる。
中田 伸悦
|