내 바이너리가 Linux의 일부 글로벌 단축키에 반응할 수 있는 방법이 있습니까?
문제
특정 단축키(예:Ctrl 키-나) 그런 다음 특정 작업을 수행합니까?내 응용 프로그램은 C로 작성되었으며 Linux에서만 실행되며 GUI가 없습니다.이런 종류의 작업에 도움이 되는 라이브러리가 있나요?
편집하다:예를 들어 amarok에는 전역 단축키가 있습니다. 예를 들어 키 조합을 작업에 매핑하는 경우(예를 들어 Ctrl 키-+, Ctrl 키 그리고 +) 키를 누를 때 해당 작업을 실행할 수 있습니다.내가 지도를 한다면 Ctrl 키-+ 볼륨 증가 동작으로, 누를 때마다 Ctrl 키-+ 볼륨이 일정량 증가해야 합니다.
감사해요
다른 팁
소스 코드를 살펴봐야 합니다. xbindkeys.
Xlib 프로그래밍은 매우 난해하고 문서를 찾기가 어렵고 미묘한 이식성 문제가 있습니다.전투에 강화된 코드를 복사하는 것이 더 나을 것입니다.
이를 수행하는 한 가지 방법은 애플리케이션이 특정 포트 또는 소켓 파일에서 들어오는 요청을 수신하도록 하는 것입니다.
그런 다음 해당 포트나 소켓 파일에 연결하고 실행 중인 애플리케이션에 명령을 보내는 작은 클라이언트 애플리케이션을 작성할 수 있습니다.
그런 다음 특정 키 조합을 바인딩하여 작은 클라이언트 앱을 실행하도록 창 관리자를 구성할 수 있습니다.
UNIX에서 명령줄 셸에 대한 액세스는 다음을 통해 이루어집니다. 단말기.이는 사람들이 문자 그대로 기계에 직접 연결된 터미널을 통해 대형 공유 컴퓨터에 액세스하던 시절을 생각나게 합니다(예:직렬 케이블로).
사실, 'xterm' 프로그램이나 UNIX 상자에서 사용하는 파생 프로그램은 모두 'xterm' 프로그램으로 적절하게 참조됩니다. 터미널 에뮬레이터 - 이는 (사용자의 관점과 운영 체제의 관점 모두에서) 구식 터미널 머신 중 하나와 매우 유사하게 작동합니다.
다양한 종류의 터미널이 있고 UNIX 시스템이 각 종류의 기능을 알아야 하기 때문에 흥미로운 방식으로 입력을 처리하는 것이 약간 복잡해집니다.이러한 기능은 전통적으로 텀캡 파일을 사용하고 있으며 더 현대적인 시스템에서는 용어 정보 대신에.노력하다
man 5 terminfo
자세한 내용은 Linux 시스템을 참조하세요.
이제 좋은 소식은 터미널 기능 등을 너무 복잡하게 다룰 필요가 없다는 것입니다.입력 또는 창 기능을 사용하여 흥미로운 작업을 수행하는 명령줄 응용 프로그램을 갖고 싶습니다.도서관이 있고, 저주, 도움이 될 것입니다.조회
man 3 ncurses
자세한 내용은 Linux 시스템에서 확인하세요.아마도 온라인에서 저주 사용에 대한 괜찮은 튜토리얼을 찾을 수 있을 것입니다.