대화 상자 파일은 메뉴 상자와 텍스트 색상을 변경하지 않습니다

대화 상자 파일은 메뉴 상자와 텍스트 색상을 변경하지 않습니다

나는 제한된 UI를 위한 작은 창을 만들기 위해 대화 상자 도구(ncurses 기반)를 사용하고 있습니다.

그런데 색깔을 알 수가 없어요. 내가 하는 일은 터미널의 기본 색상을 변경하는 것이 아닙니다.

시작 후 대화 상자 파일을 만들어 /etc 또는 $HOME에 넣습니다. 이것은 내 대화입니다.

            #
            # Run-time configuration file for dialog
            #
            # Automatically generated by "dialog --create-rc <file>"
            #
            #
            # Types of values:
            #
            # Number     -  <number>
            # String     -  "string"
            # Boolean    -  <ON|OFF>
            # Attribute  -  (foreground,background,highlight?)

            # Set aspect-ration.
            aspect = 0

            # Set separator (for multiple widgets output).
            separate_widget = ""

            # Set tab-length (for textbox tab-conversion).
            tab_len = 0

            # Make tab-traversal for checklist, etc., include the list.
            visit_items = OFF

            # Shadow dialog boxes? This also turns on color.
            use_shadow = ON

            # Turn color support ON or OFF
            use_colors = ON

            # Screen color
            screen_color = (RED,BLACK,ON)

            # Shadow color
            shadow_color = (BLACK,BLACK,ON)

            # Dialog box color
            dialog_color = (BLACK,WHITE,OFF)

            # Dialog box title color
            title_color = (BLUE,WHITE,ON)

            # Dialog box border color
            border_color = (WHITE,WHITE,ON)

            # Active button color
            button_active_color = (WHITE,BLUE,ON)

            # Inactive button color
            button_inactive_color = dialog_color

            # Active button key color
            button_key_active_color = button_active_color

            # Inactive button key color
            button_key_inactive_color = (RED,WHITE,OFF)

            # Active button label color
            button_label_active_color = (YELLOW,BLUE,ON)

            # Inactive button label color
            button_label_inactive_color = (BLACK,WHITE,ON)

            # Input box color
            inputbox_color = dialog_color

            # Input box border color
            inputbox_border_color = dialog_color

            # Search box color
            searchbox_color = dialog_color

            # Search box title color
            searchbox_title_color = title_color

            # Search box border color
            searchbox_border_color = border_color

            # File position indicator color
            position_indicator_color = title_color

            # Menu box color
            menubox_color = dialog_color

            # Menu box border color
            menubox_border_color = border_color

            # Item color
            item_color = dialog_color

            # Selected item color
            item_selected_color = button_active_color

            # Tag color
            tag_color = title_color

            # Selected tag color
            tag_selected_color = button_label_active_color

            # Tag key color
            tag_key_color = button_key_inactive_color

            # Selected tag key color
            tag_key_selected_color = (RED,BLUE,ON)

            # Check box color
            check_color = dialog_color

            # Selected check box color
            check_selected_color = button_active_color

            # Up arrow color
            uarrow_color = (GREEN,WHITE,ON)

            # Down arrow color
            darrow_color = uarrow_color

            # Item help-text color
            itemhelp_color = (WHITE,BLACK,OFF)

            # Active form text color
            form_active_text_color = button_active_color

            # Form text color
            form_text_color = (WHITE,CYAN,ON)

            # Readonly form item color
            form_item_readonly_color = (CYAN,WHITE,ON)

            # Dialog box gauge color
            gauge_color = title_color

            # Dialog box border2 color
            border2_color = dialog_color

            # Input box border2 color
            inputbox_border2_color = dialog_color

            # Search box border2 color
            searchbox_border2_color = dialog_color

            # Menu box border2 color
            menubox_border2_color = dialog_color

그런 다음 설정을 테스트하기 위해 다음 스크립트를 시도했습니다.

#!/bin/sh
dialog --colors --title 'Message' --msgbox "\Zb\Z3HELLO\Z2 WORLD" 5 20

최소한 컬러 텍스트가 포함된 창을 원하지만 검은색 텍스트만 표시됩니다. 그러나 텍스트는 굵게 표시됩니다.

나는 buildroot를 사용하고 있으며(그래서 대화 상자를 컴파일하고 --use-ncurse-colrs 옵션을 추가했습니다) 테스트를 위해 QEMU를 사용하고 있습니다.

편집하다: echo $TERM은 vt100을 표시하고 sh를 사용하고 있으며 buildroot의 경우 ash이지만 bash를 사용해 보았지만 문제가 지속됩니다.

내가 뭔가를 잊었나요?

도와주셔서 감사합니다 :)

답변1

Thomas Dickey 덕분에 해결책을 찾았습니다. TERM 변수를 "vt100" 대신 "linux"로 설정합니다.

이 링크는 이 변수와 그 목적에 대해 자세히 알아보는 데 도움이 됩니다. http://tldp.org/HOWTO/Keyboard-and-Console-HOWTO-11.html

관련 정보