diff options
| -rw-r--r-- | core/src/lcurses/lcurses.c | 6 | ||||
| -rw-r--r-- | xmake/core/ui/program.lua | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/core/src/lcurses/lcurses.c b/core/src/lcurses/lcurses.c index a55b86606..6e7758ccf 100644 --- a/core/src/lcurses/lcurses.c +++ b/core/src/lcurses/lcurses.c @@ -609,6 +609,12 @@ static void register_curses_constants(lua_State *L) CC(KEY_COPY) CC(KEY_CREATE) CC(KEY_END) CC(KEY_EXIT) CC(KEY_FIND) CC(KEY_HELP) CC(KEY_MARK) CC(KEY_MESSAGE) +#ifdef PDCURSES + // https://github.com/xmake-io/xmake/issues/1610#issuecomment-971149885 + CC(KEY_C2) CC(KEY_A2) CC(KEY_B1) + CC(KEY_B3) +#endif + #if !defined(XCURSES) #ifndef NOMOUSE CC(KEY_MOUSE) diff --git a/xmake/core/ui/program.lua b/xmake/core/ui/program.lua index f537a2daf..49eff8679 100644 --- a/xmake/core/ui/program.lua +++ b/xmake/core/ui/program.lua @@ -350,10 +350,10 @@ function program:_key_map() -- -- @see https://github.com/xmake-io/xmake/issues/1610 -- https://github.com/wmcbrine/PDCurses/blob/HEAD/curses.h#L766-L774 - [curses.KEY_C2 ] = "Down", - [curses.KEY_A2 ] = "Up", - [curses.KEY_B1 ] = "Left", - [curses.KEY_B3 ] = "Right" + [curses.KEY_C2 or -1 ] = "Down", + [curses.KEY_A2 or -1 ] = "Up", + [curses.KEY_B1 or -1 ] = "Left", + [curses.KEY_B3 or -1 ] = "Right" } end return self._KEYMAP |
