저는 X 터미널에서 실행되는 BASH 스크립트를 사용하여 간단한 교육 도구를 만들었습니다. Bash 초보자 가이드에 설명된 대로 사용자가 선택 사항을 입력할 수 있는 프롬프트를 표시합니다.사용자 입력 캡처, 이전에 입력한 내용이 화면에 푸시됩니다.
__________________________
|________________________X_|
| ... |^|
| 30 | |
| x 10 | |
| ------ | |
| > |=|
|________________________|v|
때때로 사용자가 입력하는 동안 표시되는 일부 그래픽을 이 텍스트 입력 영역 근처에 표시해야 합니다. 나는 다양한 솔루션을 시도했습니다.
txt2img
에서 사용libcasa
하면 터미널 창에 그래픽이 컬러 ASCII 아트로 표시되지만 복잡한 그래픽은 쉽게 인식되지 않습니다.- 사진을 표시 하는 데 사용됩니다
eog
. 이렇게 하면 그림이 다른 창에 표시되지만 사용자는 터미널을 계속 사용하기 전에 "q"를 누르거나 그래픽 창을 종료해야 합니다.
한 창에는 BASH 터미널의 스크립트가 포함된 분할 보기 창을 표시하고 다른 창에는 BASH 스크립트를 통해 업데이트할 수 있는 고품질 그래픽을 표시할 수 있는 방법이 있습니까? 이는 다음과 같이 보일 수 있습니다:
__________________________
|________________________X_|
| |
| (PNG) |
| |
|==========================|
| ... |^|
| How many apples | |
| do you see in the | |
| picture? | |
| > |=|
|________________________|v|
답변1
부분 답변:
스크래핑 없이 이미지를 표시할 수 있는 이미지 뷰어 프로그램이 필요합니다키보드 포커스. 그런 다음 종료하고 다시 실행할 수 있습니다. (백그라운드에서 시작하면 $!
PID가 됩니다). 또는 파이프에서 표시할 파일 목록을 읽을 수도 있고, 파이프에서 "지금 이 파일 표시"와 같은 명령을 읽는 것이 더 좋습니다. 이 명령은 셸의 파일 설명자 중 하나로 열 수 있습니다.
(이 Q&A의 목적은 다음과 같습니다.백그라운드 프로세스 파이프 입력. 이것을 확장하여 fd 42로 새 FD를 생성하면 파이프에 쓸 수 있습니다 echo foo >&42
. 아니면 coproc
사용해야 할 수도 있습니다. )
주변을 둘러봤지만 초점을 잡지 못하는 옵션이 있는 이미지 뷰어를 찾지 못했습니다. 기존 이미지 뷰어에 대한 코드를 요청하고 사용자 정의 버전을 컴파일하기 위해 플래그를 추가할 수 있습니다.