나는 gnome 터미널 내에서 실행되는 picocom을 사용하고 있습니다. -e 옵션을 사용하여 picocom 내부에서 로컬 에코를 켰고 백스페이스를 하면 캐럿이 뒤로 이동하는 것을 볼 수 있지만이전에 인쇄된 문자는 그대로 유지됩니다.. 터미널에 에코하기 전에 BS를 DEL로 매핑하거나 그 반대로 매핑할 수 있는 picocom의 emap 옵션을 살펴봤지만 원하는 효과를 얻지 못했습니다.
백스페이스를 누를 때 터미널에서 문자를 제거하도록 gnome-terminal 및/또는 picocom을 어떻게 구성합니까?
답변1
나는 picocom에 익숙하지 않아서 답변을 드릴 수는 없지만 유용하다고 생각되는 동작에 대한 설명은 드릴 수 있습니다.
터미널을 사용할 때 입력(키보드)과 출력(인쇄를 위해 터미널로 보내는 것)이 명확하게 구분되어야 합니다.
입력의 경우 키보드의 백스페이스 키는 특정 설정에 따라 ^H(ascii 0x08) 또는 ^?(ascii 0x7F)를 보냅니다.
출력의 경우: ^H는 아무것도 삭제하지 않고 커서를 왼쪽으로 이동하는 반면 ^?는 작동하지 않습니다(또는 정의되지 않을 수도 있음).
백스페이스 키를 누르고 "예상대로 작동"할 때마다 배후의 누군가(예: 쉘 또는 커널의 tty 레이어)가 들어오는 ^H 또는 ^?를 출력 시퀀스로 변환합니다. ^H 뒤에 공백이 오고 그 뒤에 다른 ^H.
피코콤은 그런 번역을 하지 않는 것 같아요.