/usr/share/mime/packages/freedesktop.org.xml 파일을 편집할 수 있는 도구는 무엇입니까?

/usr/share/mime/packages/freedesktop.org.xml 파일을 편집할 수 있는 도구는 무엇입니까?

application/x-7z 압축 MIME 유형 파일 아이콘을 변경하기 위해 /usr/share/mime/packages/freedesktop.org.xml(텍스트 편집기 사용)을 편집했습니다.

<mime-type type="application/x-7z-compressed">
  <generic-icon name="package-x-generic"/>

텍스트 편집기를 사용하는 대신 이 파일을 편집(또는 MIME 유형 아이콘 변경)할 수 있는 도구가 있는지 궁금합니다.

편집하다:내 목표는 텍스트 편집기가 적합하지 않도록 freedesktop.org.xml 파일에 대한 수정 사항을 스크립트로 작성하는 것입니다.
선택한 MIME 유형에 대한 태그 속성을 편집하는 명령줄 도구를 원합니다 name.generic-icon

편집하다:@Gilles가 지적했듯이 $XDG_DATA_HOME/mime/packages/Override.xml파일을 수정하는 것보다 파일을 수정하는 것이 더 좋습니다 /usr/share/mime/packages/freedesktop.org.xml. 그러나 그것이 내 문제를 실제로 바꾸지는 않습니다.

답변1

/usr/share/mime/packages/freedesktop.org.xml~이다무료 데스크탑 MIME 데이터베이스. 이 페이지에는 데이터베이스를 쿼리하기 위한 여러 도구와 데이터베이스 수정을 위한 일부 도구가 나열되어 있습니다.

이 파일을 수동으로 수정하면 안 됩니다. /usr아래에 있지만 외부에 있는 파일은 /usr/local배포판의 패키지 관리자에 의해 관리되며 다음 업그레이드 시 수정 사항을 덮어쓰게 됩니다. /usr/local/share/mime/packages대신 somedir/packagessomedir나열된 다른 디렉토리 에 자신의 파일을 작성하십시오 $XDG_PATH. 파일을 수정한 후 실행하여 update-mime-database /usr/local/share/mime/packages캐시를 업데이트합니다(실행해야 함).update-mime-database어쨌든 애플리케이션은 XML 파일 대신 바이너리 캐시를 읽기 때문입니다.

답변2

선택한 언어로 제공되는 XML 라이브러리를 사용하여 이러한 XML 문서를 프로그래밍 방식으로 수정할 수 있다고 생각합니다. 예를 들어 Python에서 사용 가능https://docs.python.org/3/library/xml.html

답변3

XML의 핵심은 편집기를 사용하여 수동으로 편집할 수 있어야 하고 필요한 경우 추가 소프트웨어 없이 볼 수 있어야 한다는 것입니다.

이것이 XML의 장점 중 하나입니다. Lisp 사람들조차도 XML의 무제한적인 데이터 표시 방식이 alistLisp의 연관 목록(또는) 데이터 구조를 재창조한 것이라고 주장하면서 XML의 공로를 인정하고 싶어합니다.

그러나 꼭 필요한 것은 아니지만 추가 소프트웨어가 필요할 수 있는 상황이 있습니다. 예를 들어 Unix/Linux 세계에서 다이어그램, 상태 머신 일러스트레이션 등을 만드는 데 일반적으로 사용되는 도구는 Dia입니다. Dia에서는 다이어그램을 그릴 때 GUI를 사용합니다. 그러나 여러분이 보는 것은 도면이 내부적으로 XML로 표현되는 방식에 대한 GFX 표현일 뿐입니다. 이는 편집기를 사용하여 XML을 편집하고 보는 데 별 의미가 없기 때문에 좋은 예입니다. 전적으로 가능하지만 실용적이지는 않습니다.

그러나 귀하의 경우에는 GUI 인터페이스를 트리거하는 아무 것도 그리거나 작업을 수행하지 않습니다. 그러면 편집자가 그 일을 해낼 것입니다. Emacs를 사용하는 경우 .xml확장 프로그램은 파일을 열 때 자동으로 올바른 모드로 전환합니다. 고급 편집기는 강조 표시 및 들여쓰기는 물론, 그 과정에서 발견하게 될 몇 가지 고급 기능도 제공합니다.

관련 정보