나는 재미로 터미널 에뮬레이터를 작성하는 데 관심이 있습니다. 이 기사를 통해 나는 쉘과 터미널 에뮬레이터 사이의 작업 분업에 대한 일반적인 이해를 얻었습니다."터미널", "쉘", "tty" 및 "콘솔"의 정확한 차이점은 무엇입니까?, 그러나 키와 제어 문자 사이의 매핑이 무엇인지, pty를 얻고 pty와 상호 작용하려면 어떤 유형의 시스템 호출이 필요한지에 대한 완전하고 자세한 설명을 찾지 못했습니다.
살펴봐야 할 매뉴얼 페이지가 있나요? Linux 터미널 에뮬레이터에 대한 완전한 사양은 어디에서 찾을 수 있습니까?
답변1
키와 제어 문자 간의 매핑에 대한 완전하고 자세한 설명을 찾지 못했습니다.
무엇이든 필요하다고 생각하는 이유는 무엇입니까? 팁: 모든 터미널 에뮬레이터 프로그램에 직접 또는 간접적으로(X 또는 이와 유사한 방법을 통해) 일종의 키맵 파일이 있는 이유가 무엇이라고 생각하십니까?
기존 터미널 에뮬레이터를 살펴보세요. 다음은 제공되는 오픈 소스 프로젝트 중 일부입니다.사용자 공간 가상 터미널프레임버퍼와 Linux 입력 이벤트 장치를 사용합니다.
- 종캉
- 페이스북 용어
- bogl-bterm 및 그 파생물, 예:니템.
- 알리 골라미 루디건반
console-terminal-emulator
그리고 도구console-fb-realizer
간식- 킬로미터 스콘
추가 읽기
kbdmap
. §5. FreeBSD 매뉴얼 페이지.posix_openpt
§2. FreeBSD 매뉴얼 페이지.posix_openpt
. 오픈그룹 기본사양. 이슈 7. IEEE 1003.1:2013. 그룹을 엽니다.- https://unix.stackexchange.com/a/177209/5132
답변2
아마도 시작해야 할 것입니다http://invisible-island.net/xterm/ctlseqs/ctlseqs.html그리고http://www.vt100.net/이는 원하는 동작(적어도 입력/출력 순서)을 설명하고 물론 해결된 문제에 대한 변경 로그를 포함하여 일부 터미널 에뮬레이터를 살펴봅니다.
완전한 목록은 어디에도 없는 것 같아요. 최근의 예입니다. 터미널 내에서 작동하려면 ^\
에뮬레이터 자체에서 SIGQUIT 핸들러가 기본값으로 설정되어 있는지 확인해야 합니다. 우리는 10이 넘었음에도 불구하고 gnome-terminal에서 뭔가 누락된 것을 며칠 전에 발견했습니다. 살이에요. 신경써야 할 사항이 많이 있을 수 있으며, 진행하면서 사용자로부터 보고서를 받으면 이러한 사항을 알게 될 것입니다.