kurojneko
@kurojneko

Как с помощью curses обрабатывать правую кнопку мыши и сочетания клавиш убивающие программы?

Здравствуйте. Собственно пытаюсь сделать консольный интерфейс, и конечно наткнулся на стандартную библиотеку для таких дел curses. Одна проблема, тестовая программа обрабатывает не все события.
Во первых не обрабатывается правая кнопка мыши, на терминале появляется контекстное меню.
Во вторых не обрабатываются сочетания клавиш убивающие программы. ctrl+c обработал sygnal, но остаются ctrl+z и alt+q.
В третих shift alt ctrl обрабатываются только в сочетании с другими клавишами. Можно ли отдельно обработать эти клавиши?
import curses 

screen = curses.initscr() 
#curses.noecho() 
curses.curs_set(0) 
screen.keypad(1) 
curses.mousemask(1)

screen.addstr("This is a Sample Curses Script\n\n") 

while True:
    event = screen.getch() 
    if event == ord("q"): break 
    if event == curses.KEY_MOUSE:
        _, mx, my, _, _ = curses.getmouse()
        y, x = screen.getyx()
        screen.addstr(y, x, screen.instr(my, mx, 5))

curses.endwin()
  • Вопрос задан
  • 178 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы