노틸러스는 파일 형식 설명을 어디서 얻습니까?

노틸러스는 파일 형식 설명을 어디서 얻습니까?

사용자 정의 파일 형식에 대한 일부 공유 MIME 정보 파일을 만들고 등록했습니다. 예를 들어,

~/.local/share/mime/packages

다음과 같은 파일을 추가했습니다.

x-myokit.xml

예를 들어 MIME 유형 설명이 포함되어 있습니다.

<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
  <mime-type type="text/x-myokit">
    <comment xml:lang="en">Myokit model definition</comment>
    <glob pattern="*.mmt"/>
  </mime-type>
</mime-info>

노틸러스는 이제 내 파일을 인식하지만 여전히 파일 형식을 "알 수 없음"으로 표시합니다. 이 칼럼에 더 유용한 내용을 표시하려면 어떻게 해야 합니까?

답변1

Nautilus이는 개발자의 결정에 따라 하드코딩되었습니다 .기본 유형 정보만 표시기본적으로 열에 있으므로 Type유형별로 정렬하면 유형군이 그룹화됩니다.
기본 유형은 다음에 정의되어 있습니다.노틸러스-file.c일반(기호) 아이콘 이름 기반 1 :

struct {
        const char *icon_name;
        const char *display_name;
} mime_type_map[] = {
    { "application-x-executable", N_("Program") },
    { "audio-x-generic", N_("Audio") },
    { "font-x-generic", N_("Font") },
    { "image-x-generic", N_("Image") },
    { "package-x-generic", N_("Archive") },
    { "text-html", N_("Markup") },
    { "text-x-generic", N_("Text") },
    { "text-x-generic-template", N_("Text") },
    { "text-x-script", N_("Program") },
    { "video-x-generic", N_("Video") },
    { "x-office-address-book", N_("Contacts") },
    { "x-office-calendar", N_("Calendar") },
    { "x-office-document", N_("Document") },
    { "x-office-presentation", N_("Presentation") },
    { "x-office-spreadsheet", N_("Spreadsheet") },
};

위의 범주에 속하지 않는 유형은 다음과 같습니다 Unknown.

if (basic_type == NULL) {
    basic_type = g_strdup (_("Unknown"));

결과적으로 MIME 유형 application/x-myokit(해당 기호 아이콘 이름 포함 )이 있는 파일은 열에 application-x-generic표시되는 반면 MIME 유형 (해당 기호 아이콘 이름 포함 )은 열에 표시됩니다 (다양한 시스템 참조). 아래의 파일 또는 다음의 파일 과 같은 파일 - 모두 나열되지만 그 중 하나를 선택하고 +를 누르면 상세하고 정확한 정보를 얻을 수 있습니다.UnknownTypetext/x-myokittext-x-genericTextType*.so/usr/lib*.mo/usr/share/localeUnknownAltEnter


generic-icon name파일 에 사용하면 노틸러스 목록을 다른 것으로 만들 수 있습니다 xml. 귀하의 옵션은 위에서 언급한 카테고리로 제한되어 있습니다. 예를 들어, 각 파일을 열에 나열하려면 다음 *.mmt과 같이 편집하세요 .ProgramTypex-myokit.xml

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
    <mime-type type="application/x-myokit">
        <comment>Myokit model definition</comment>
        <generic-icon name="text-x-script"/>
        <glob pattern="*.mmt"/>
    </mime-type>
</mime-info>

다음을 사용하여 MIME 데이터베이스를 업데이트하는 것을 잊지 마십시오.

update-mime-database ~/.local/share/mime

더 유용한 정보가 필요한 경우 환경 설정 MIME type에서 해당 열을 활성화/확인할 수 있습니다 Nautilus(또는 dconf/ gsettings:에 추가 mime_type) org.gnome.nautilus.list-view default-visible-columns.

1: gio info -a standard::symbolic-icon file해당 기호 아이콘 이름을 보려면 실행합니다(이전 설정에서는 gio info로 대체 gvfs-info).

답변2

나는 노틸러스가 위치에서 파일 설명을 얻는다고 믿습니다 /usr/share/applications. 내 다른 답변에서 더 유용한 정보를 찾을 수 있습니다여기. 특히,이것Ask Ubuntu의 답변에서는 파일 연결이 어떻게 저장되는지 자세히 설명합니다.

파일 관리자(기본적으로 Nautilus)는 파일의 MIME 유형을 사용하여 파일을 열 프로그램을 결정합니다. 애플리케이션이 설치되면 열 수 있는 MIME 유형과 에 있는 .desktop 파일에서 파일을 여는 데 사용할 명령을 지정할 수 있습니다 /usr/share/applications. 메뉴, 바탕화면 바로가기 등에 사용되는 파일입니다.

관련 정보