콘솔 디스플레이는 Midnight Commander의 ↑ 및 ↓를 대체합니다.

콘솔 디스플레이는 Midnight Commander의 ↑ 및 ↓를 대체합니다.

미드나잇 커맨더에서는 다양한 리눅스 설정에서 메뉴를 통한 외형 변경, sand256.ini스킨 선택 등을 하면 아름다운 색상을 얻을 수 있습니다.

파일 목록의 정렬 순서를 뒤집은 후 이상적으로는 실제 화살표로 표시됩니다.MCGUI입니다.

그러나 스킨은 특수 문자를 제거하고 대신 ???를 표시합니다.스킨을 바꾸면.. 이중선도 QQ 또는 다른 것으로 잘못 표시됩니다.

나는 보았다MC내 Manjaro 설치에서 올바른 화살표 ↑를 사용하지만 일부 Konsole 설정 등을 변경하여 이제 몇 분 전에 작동했던 올바른 화살표 표시로 되돌릴 수 없습니다.

나는 또한 잘못된 번역을 제거하기 위해 ~/.bashrc에 한 줄을 사용했습니다 .export LANG=en아스퍼에러 메시지.

다음 그래픽 문자는 Skin.ini에 잘못 나타납니다.

[widget-common]
    sort-sign-up = ↑
    sort-sign-down = ↓

[widget-panel]
    hiddenfiles-sign-show = •
    hiddenfiles-sign-hide = ○
    history-prev-item-sign = «
    history-next-item-sign = »
    history-show-list-sign = ^

[widget-scollbar]
    first-vert-char = ↑
    last-vert-char = ↓
    first-horiz-char = «
    last-horiz-char = »
    current-char = ■
    background-char = ▒

답변1

이제 이 상황을 재현하고 mc에서 올바르게 표시하는 방법을 설명할 수 있습니다.

"설정/프로필 관리"를 통해 2개의 Konsole(많은 배포판과 함께 제공되는 KDE x-term 에뮬레이터) 구성 파일 "badstart" 및 "proper"를 만듭니다. "badstart"에서 "Environment/Edit"를 클릭하고 다음을 입력합니다: TERM=xterm-256color

"badstart"를 "기본 프로필"로 설정합니다(하트 아이콘으로 표시됨).

"적절한" 프로필은 그대로 유지됩니다. 새 프로필을 만든 후 이름을 "적절한"으로 바꾸면 됩니다(TERM=xterm이 됩니다).

그런 다음 kmenuedit를 통해 mc 메뉴 항목을 입력해야 합니다. 명령: mc, "고급 탭/터미널에서 실행"을 활성화합니다.

이상한 이유로 이 기능은 K 메뉴 항목에서 mc를 시작할 때만 작동하지만 표준 Konsole 실행기 아이콘을 클릭하고 Konsole-text-window bash 프롬프트에서 수동으로 mc를 입력하는 경우에는 작동하지 않습니다.

이제 KDE 메뉴를 통해 mc를 실행하면 잘못된 줄 문자가 표시됩니다(프로필 "badstart"가 활성화됨).

그런 다음 Konsole 메뉴에서 다음을 클릭하세요: 설정/프로필 전환 --> "적절" 선택

그러면 불가해한 자동 마법을 통해 MC가 멋지게 보이고 모든 스킨이 올바르게 표시됩니다.

Giles가 다른 답변에서 올바르게 지적했듯이 이것은 일종의 로케일 구성 오류와 관련이 있다고 생각합니다.

줄을 입력하여 로캘 재정의~/.bashrc

export LANG=en

이것은 꽤 나쁜 생각입니다. Manjaro 설정(시스템 설정 아님)에서 대부분의 로캘 옵션은 GUI를 통해 구성할 수 있으므로 영어가 아닌 키보드 사용자가 운영 체제에서 영어를 사용할 수 있습니다(키보드 레이아웃 제외).

한 번내보내기LANG=ko 죽은 후에는 ~/.bashrcmc가 "badstart" 프로필에 올바르게 표시됩니다. 이렇게 하면 한 번의 클릭으로 256color-mc를 시작할 수 있는데, 이는 많은 KDE 구성에서 수행하기 어렵습니다.

답변2

또한 끔찍한 번역과 철자 오류 메시지를 제거하기 위해 LANG=en을 사용합니다.

그것이 문제이다. 로케일 en사용라틴어 1문자나 화살표를 그리지 않는 문자 세트입니다. 이러한 문자를 얻으려면 유니코드 로캘이 필요합니다(예 en_US.utf8: .

영어로만 메시지를 받으려면 설정하지 마세요 LANG. 영어가 기본 언어입니다. 어쨌든 이를 설정하는 것은 좋은 생각이 아닙니다 LANG. 왜냐하면 여기에는 데이터 정렬 로캘이 포함되어 있기 때문입니다.놀라운 결과를 얻을 수 있다. LC_CTYPE문자 세트와 인코딩을 나타내기 위해 설정합니다 (그러나 이는 일반적으로 터미널에 의해 자동으로 설정되므로 그대로 두는 것이 가장 좋습니다). LC_MESSAGES제어 메시지의 언어를 설정합니다 .

당신은 또한 볼 수 있습니다로케일을 무엇으로 설정해야 하나요? 이것이 어떤 영향을 미칠까요?

관련 정보