Alt + Printscreen перестает работать, как найти процессы, прослушивающие события

Очень странная проблема сегодня. Я собирался опубликовать нить о другой проблеме и хотел бы сделать снимок экрана окна терминала. Я получил все это, нажав Alt + Printscreen, и ничего не произошло.

Я зашел в «Ярлыки клавиш», чтобы проверить, не изменилось ли переопределение ярлыка. Так оно и было. Я попытался вернуть его в Alt + Printscreen, но окно просто сидело там, слушая при нажатии клавиши. Как будто я никогда не толкнул ключ.

Обе клавиши Alt и Printscreen работают независимо друг от друга ... Я также пробовал смотреть на выход xev при нажатии клавиш. Он слышит нажатие клавиши Alt, но после этого не слышит Printscreen.

Я пробовал это как из Compiz, так и из простой метаплотности.

Это похоже на то, что в цепочке событий есть что-то, что плюется на чтобы никто ничего не слышал. Мой вопрос в основном: как вы можете найти процессы, реагирующие на определенные события?

В соответствии с запросом:

oli@bert:~$ xmodmap -pke | grep -i mode
keycode  82 = KP_Subtract XF86_Prev_VMode KP_Subtract XF86_Prev_VMode
keycode  86 = KP_Add XF86_Next_VMode KP_Add XF86_Next_VMode
keycode 100 = Henkan_Mode NoSymbol Henkan_Mode
keycode 203 = Mode_switch NoSymbol Mode_switch

И

oli@bert:~$ xmodmap -pke | grep -i print
keycode 107 = Print Sys_Req Print Sys_Req
keycode 218 = Print NoSymbol Print

Изменить: когда Я опубликовал это, я был на Lucid с встроенным ядром 2.6.35. Оказывается, моя проблема связана с ядром, а не с X.

Кто-то где-то решил, что alt-printscreen должен отображать событие SysRq. С технической точки зрения, возможно, это должно произойти, но это нарушает то, что должно быть более десяти лет Linux и Windows «известное поведение».

7
задан 1 November 2011 в 02:53

9 ответов

В моем редактировании это, как представляется, напрямую связано с версией ядра 2.6.35 (и, возможно, с последующими ядрами), в которой alt + prscr отображает событие sysrq.

SysRq кажется незаменимым (по крайней мере от моего беспорядка), но вы можете отключить глупое новое поведение, добавив следующее к /etc/sysctl.conf:

kernel.sysrq = 0
5
ответ дан 26 May 2018 в 01:27
  • 1
    Поэтому SysRq не вызывает сомнений, потому что это было создано : «Введенный IBM с ПК / AT, он должен был быть доступен как специальный ключ для непосредственного вызова низкоуровневых функций операционной системы без возможности конфликта с любым существующим программным обеспечением. " – user 7 October 2010 в 21:52
  • 2
    Поэтому SysRq не вызывает сомнений, потому что это было создано : «Введенный IBM с ПК / AT, он должен был быть доступен как специальный ключ для непосредственного вызова низкоуровневых функций операционной системы без возможности конфликта с любым существующим программным обеспечением. " – user 7 October 2010 в 21:52
  • 3
    Поэтому SysRq не вызывает сомнений, потому что это было создано : «Введенный IBM с ПК / AT, он должен был быть доступен как специальный ключ для непосредственного вызова низкоуровневых функций операционной системы без возможности конфликта с любым существующим программным обеспечением. " – user 7 October 2010 в 21:52
  • 4
    Поэтому SysRq не вызывает сомнений, потому что это было создано : «Введенный IBM с ПК / AT, он должен был быть доступен как специальный ключ для непосредственного вызова низкоуровневых функций операционной системы без возможности конфликта с любым существующим программным обеспечением. " – user 7 October 2010 в 21:52
  • 5
    Поэтому SysRq не вызывает сомнений, потому что это было создано : «Введенный IBM с ПК / AT, он должен был быть доступен как специальный ключ для непосредственного вызова низкоуровневых функций операционной системы без возможности конфликта с любым существующим программным обеспечением. " – user 7 October 2010 в 21:52
  • 6
    Поэтому SysRq не вызывает сомнений, потому что это было создано : «Введенный IBM с ПК / AT, он должен был быть доступен как специальный ключ для непосредственного вызова низкоуровневых функций операционной системы без возможности конфликта с любым существующим программным обеспечением. " – user 7 October 2010 в 21:52
  • 7
    @Roger: Возможно, это так, но до тех пор, пока я использую Linux, ядро ​​позволяло ему просачиваться, чтобы быть привязанным как alt + printscreen. Прекратить это поведение после такого длительного времени является ошибкой в ​​себе. – Oli♦ 8 October 2010 в 03:01
  • 8
    Я не говорю, что вы ошибаетесь, просто объясняя, почему sysrq работает так, как он делает. Вы можете попробовать подменю / супер привязки; Я использую его почти для всех моих оконных менеджеров. – user 8 October 2010 в 04:45
  • 9
    Я не говорю, что вы ошибаетесь, просто объясняя, почему sysrq работает так, как он делает. Вы можете попробовать подменю / супер привязки; Я использую его почти для всех моих оконных менеджеров. – user 8 October 2010 в 04:45
  • 10
    Я не говорю, что вы ошибаетесь, просто объясняя, почему sysrq работает так, как он делает. Вы можете попробовать подменю / супер привязки; Я использую его почти для всех моих оконных менеджеров. – user 8 October 2010 в 04:45
  • 11
    Я не говорю, что вы ошибаетесь, просто объясняя, почему sysrq работает так, как он делает. Вы можете попробовать подменю / супер привязки; Я использую его почти для всех моих оконных менеджеров. – user 8 October 2010 в 04:45
  • 12
    Я не говорю, что вы ошибаетесь, просто объясняя, почему sysrq работает так, как он делает. Вы можете попробовать подменю / супер привязки; Я использую его почти для всех моих оконных менеджеров. – user 8 October 2010 в 04:45
  • 13
    Я не говорю, что вы ошибаетесь, просто объясняя, почему sysrq работает так, как он делает. Вы можете попробовать подменю / супер привязки; Я использую его почти для всех моих оконных менеджеров. – user 8 October 2010 в 04:45
  • 14
    Это странно: у меня была такая же проблема, но перед тем, как изменить что-либо, я попытался выяснить, каковы мои текущие настройки: sudo sysctl -a | kernel.sysrq показывает ... kernel.sysrq=0 !!! Но исправление по-прежнему было необходимо: sudo sysctl -w kernel.sysrq=0, и проблема исчезла! Довольно запутанно, да? – MestreLion 24 November 2011 в 11:17
  • 15
    Ммм ... Я уверен, что сейчас Alt + PrtSc работает по назначению. Единственный способ активировать sysrq - использовать Ctrl + Alt + Shift. – Braiam 9 December 2013 в 20:11

Поскольку вы указываете, что PrintScreen работает, но alt + printscreen этого не делает, это может быть связано с вашим отображением модификатора.

Если у вас есть 2 клавиши Alt, можете ли вы попробовать с ними и посмотреть, одинаково ли поведение?

Кроме того, вы можете запустить команду xmodmap -pke | grep -i mode в терминале и проверить, указывает ли это, что одна из клавиш alt отображается как «переключатель режима»? Как правило, вы увидите 1 или более клавишных клавиш, содержащих коды, назначенные клавише переключения режима.

Также запустите xmodmap -pke | grep -i print в терминале и посмотрите, соответствуют ли коды, напечатанные справа от знака равенства, ниже линия.

keycode 107 = Print Sys_Req Print Sys_Req

См. эту страницу для объяснения синтаксиса строки keysym.

1
ответ дан 26 May 2018 в 01:27
  • 1
    Отредактировал мой пост. Похоже, эти сопоставления присутствуют и правильны. AltGr - это не то же самое, что Alt. AFAIK AltGr + PrtSc не должен показывать окно с принт-экраном, но если это необходимо, его здесь нет. – Oli♦ 28 August 2010 в 03:23
  • 2
    Ты прав. Карты Mod выглядят отлично. Как ни странно, кто-то ест Alt+Prnt Scrn ... – koushik 28 August 2010 в 06:39

Сообщить об ошибке. https://bugs.launchpad.net/ubuntu/+source/metacity/+bug/642792

1
ответ дан 26 May 2018 в 01:27
  • 1
    +1 для заполнения такого подробного отчета (включая правильное решение обхода ядра) – MestreLion 24 November 2011 в 11:11

Вы пытались использовать экран печати? Я никогда не слышал об использовании Alt с ним.

0
ответ дан 26 May 2018 в 01:27
  • 1
    Alt + PrintScreen захватывает текущее окно. – Marco Ceppi♦ 27 August 2010 в 19:30
  • 2
    Да, ключ работает отлично. Открывается окно нормального окна печати. Alt + PS должен делать снимок, но не делает. – Oli♦ 27 August 2010 в 20:31
  • 3
    Alt + PrintScreen существует с самого начала времени, maco;) Я помню, как его использовали в Windows 98 – MestreLion 24 November 2011 в 11:10

Сообщить об ошибке. https://bugs.launchpad.net/ubuntu/+source/metacity/+bug/642792

1
ответ дан 26 May 2018 в 01:27

Сообщить об ошибке. https://bugs.launchpad.net/ubuntu/+source/metacity/+bug/642792

1
ответ дан 26 May 2018 в 01:27

Сообщить об ошибке. https://bugs.launchpad.net/ubuntu/+source/metacity/+bug/642792

1
ответ дан 26 May 2018 в 01:27

Сообщить об ошибке. https://bugs.launchpad.net/ubuntu/+source/metacity/+bug/642792

1
ответ дан 26 May 2018 в 01:27

Сообщить об ошибке. https://bugs.launchpad.net/ubuntu/+source/metacity/+bug/642792

1
ответ дан 26 May 2018 в 01:27

Другие вопросы по тегам:

Похожие вопросы: