특정 키보드 키를 완전히 비활성화합니다.

특정 키보드 키를 완전히 비활성화합니다.

내 노트북 ​​키보드가 물에 손상되어 왼쪽 컨트롤 키가 가끔 활성화됩니다.

xmapmod -e "keycode 37="이 왼쪽 컨트롤 키를 비활성화할 수 있다는 것을 알고 있습니다. 나는 이것이 새로운 문제를 야기할 것이기 때문에 다른 일을 하려고 노력했습니다. 다른 키(예: "a")를 누르고 있으면 a가 반복해서 입력됩니다.왼쪽 Ctrl이 활성화될 때까지. 이제 왼쪽 컨트롤은 아무 작업도 수행하지 않지만(xmapmod 덕분에) 여전히 키 누르기를 방해합니다.

키보드를 멈추고 왼쪽 컨트롤 키도 들어봐야 할 것 같습니다.

누구든지 이 문제를 해결할 수 있나요? 저는 리눅스 민트를 사용하고 있습니다. 감사해요

답변1

"키를 완전히 비활성화"하려면 물에 손상된 키보드에 도움이 된다는 의미에서 키보드 자체의 키보드 컨트롤러 칩을 다시 프로그래밍하거나 키보드 와이어 매트릭스를 물리적으로 수정하여 차단/우회해야 한다고 생각합니다. 결함이 있는 키.

키보드에 특별한 기능이 없으면 문제를 일으킬 가치가 없을 것입니다. 기존 키보드를 복원하고 싶다면 교체/교체 키보드를 구입하세요.첫 번째: 오래된 키보드를 비파괴적으로 분해하는 방법을 모른다는 사실을 알게 된 후 긴급하게 컴퓨터 철물점으로 달려갑니다. (거기에 가서 그렇게 했습니다.)

답변2

키를 비활성화하려면 커널 수준에서 다시 매핑하면 됩니다( udev). 이것은 상당히 복잡한 과정입니다. 이 기사슬립 키를 차단하는 방법에 대한 섹션이 있는데, 이를 데드 컨트롤 키로 사용할 수 있습니다.

단계 요약:

  1. 입력 장치 ID를 사용하여 키보드를 식별합니다 evemu-describe.
  2. 차단하려는 중요한 코드를 식별하는 데 사용됩니다 evtest.
  3. 맞춤 키 코드 파일을 만듭니다 /etc/udev/hwdb.d/50-block-ctrld.hwdb.
  4. 최상위 파일에 장치 ID를 추가하십시오.
  5. 키 코드가 있는 KEYBOARD_KEY_xxx=reserved파일에 추가합니다 .xxx
  6. systemd-hwdb사용자 정의 키코드 파일을 사용하고 적용합니다 udevadm.

장치 ID의 형식을 올바르게 지정해야 하기 때문에 4단계는 이미 완료되었습니다. 그렇지 않으면 아무 일도 일어나지 않습니다. 이 기사키보드 이벤트 소스와 키 누르기 코드를 식별하는 방법에 대한 좋은 설명이 있습니다. 나는 또한 단계를 설명했다이 답변.

다른 사람들이 지적했듯이 문제에 대한 더 나은 해결책이 있을 수 있습니다. 그러나 키를 비활성화하려면 이 절차를 수행하면 됩니다.

관련 정보