2017-04-17 1 views
-1

사용자 선택을위한 다양한 옵션을 제공하는 (golang) 라이브러리를 만들고 싶습니다. 내 아이디어는 옵션의 이름을 인쇄하고 하나를 "활성"으로 강조 표시하는 것입니다. 화살표 키 (좌우 및 상하)를 누를 때마다 "선택한"답변을 내부적으로 그리고 시각적으로 업데이트하고 싶습니다.CLI 응용 프로그램의 제어 화살표 키

저는 약 termbox과 을 알고 있고 pecorat과 같은 프로젝트도 확인했습니다. 그들 모두는 어떤 종류의 스크린에 대한 기본 개념을 구축하는 것처럼 보입니다. 이상적으로는 전체 화면 상호 작용을 만들지 않고 사용자가 터미널에서 편집중인 줄에만 컨트롤을 유지하고 싶습니다. 이것을 달성 할 수있는 방법이 있습니까?

+0

운영 체제에 따라 다른 라이브러리가 있습니다. 어떤 OS를 사용하고 있습니까? – Flimzy

+0

나는 리눅스와 맥을 목표로하고 있는데, 현재 윈도우에 관심이 없다;) –

답변

0

내 질문에 대답 : This neat library called climenu 실제로 내가 요청한 것을 수행합니다. 필요한 모든 기술적 인 속임수는이 코드의 일부입니다. 명성에 Paul Rademacher! 나는 분명히 이것을 나의 필요에 맞게 개조 할 수있다.

0

ncurses는 Linux의 터미널 제어에 널리 사용되는 라이브러리 중 하나이며 Go bindings (OSX 및 Windows도 지원)입니다. 나는 그들을 사용한 적이 없기 때문에 그들을 위해 보증 할 수는 없지만 이것이 당신이 원하는 것을 성취하는 한 가지 방법입니다.

+0

당신의 제안에 감사드립니다. 내가 열거 한 라이브러리들은 ncurses의 대체품이다. 지금까지 ncurses UI를 보았을 때 그들은 또한 윈도우 기반 인 것처럼 보였습니다. 즉, 모든 터미널 화면을 차지합니다. –

+0

ncurses는'filter'를 사용하여 제안 된 것을 수행하지만, goncurses는이를 사용하지 않습니다. 현재 개발중인 것으로 보이지 않습니다. 'goncurses '를 복제하고'filter'등에 인터페이스를 추가 할 수 있습니다. –