xdg - 기본 애플리케이션 동작을 켭니다.

xdg - 기본 애플리케이션 동작을 켭니다.

defaults.listand 가 없으면 mimeapps.listxdg-open엽니 text/plaingvim. 하지만 다음 줄을 만들고 추가하면 defaults.list:/usr/share/applications/

[Default Applications]
text/plain=emacs.desktop

Firefox를 사용하여 텍스트 파일을 엽니다.

그러나 이동하면 /usr/share/applications/defaults.list예상대로 텍스트 파일이 열립니다 ~/.local/share/applications/mimeapps.list.emacs

내 질문:

  1. xdg-open및가 없을 때 defaults.list시작할 응용 프로그램을 결정하는 방법은 무엇입니까 mimeapps.list?
  2. xdg-open글을 쓰기 위해 파이어폭스를 사용하고 있나요 /usr/share/applications/defaults.list?

저는 아치 리눅스를 사용하고 있습니다.

답변1

xdg-open응용 프로그램을 여는 데 사용되는 경우 xdg-mime지정된 MIME 유형에 대한 기본 응용 프로그램을 설정하는 데 사용됩니다(일반적으로 xdg-utils를 설치하면 xdg-mime 및 관련 프로그램이 제공됩니다).

예를 들어 특정 파일의 "파일 형식"(원하는 경우 MIME 형식)을 보려면 다음을 수행하세요.

$ xdg-mime query filetype tmp.txt
text/plain

$ xdg-mime query filetype foo.pdf 
application/pdf

$ xdg-mime query filetype $PWD
inode/directory

디렉토리를 열기 위한 기본 파일 관리자를 변경하는 예(caja.desktop(민트의 경우 기본값), nautilus.desktop(ubuntu) 등을 선택할 수 있음):

$ xdg-mime default Thunar.desktop inode/directory

또한 실제로 존재 locate -i foo.desktop하는지 확인하십시오 foo.desktop.

더 중요한 것은 기본 텍스트 편집기가 무엇인지 확인하려면

$ xdg-mime  query default text/plain 
gedit.desktop

다른 기본 텍스트 편집기를 사용하려면(".desktop" 파일이 있는지 다시 확인):

$ locate -i vim.desktop
/usr/share/applications/gvim.desktop

$ xdg-mime default gvim.desktop text/plain

이제 "foo.txt"(GUI 파일 관리자에서)를 두 번 클릭하거나 대신 xdg-open foo.txt을 사용하여 실행하세요 .gvimgedit

문제 해결: 특정 응용 프로그램에 대한 ".desktop" 파일을 찾을 수 있는지 확인하십시오. xdg-mime예를 들어 이 파일은 유틸리티와 함께 ​​사용해야 합니다.

$ xdg-mime default emacs text/plain 
xdg-mime: malformed argument 'emacs', expected *.desktop

또한 ".desktop" 파일이 없으면 예상대로 작동하지 않습니다.

$ locate -i emacs.desktop
(none)

$ xdg-mime default emacs.desktop text/plain  # won't work

실제 emacs ".desktop" 파일(내 환경):

$ locate -r 'emacs.*\.desktop'
/usr/share/applications/emacs24.desktop

$ xdg-mime default emacs24.desktop text/plain  # does work

또한보십시오:https://wiki.archlinux.org/index.php/xdg-open

답변2

#!/bin/sh

FILETYPE=$(xdg-mime query filetype $1)
APP=$( find /usr/share -type f -name "*.desktop" -printf "%p\n" | rofi -threads 0 -dmenu -i -p "select default app")
APP=$(basename -- $APP)
xdg-mime default "$APP" "$FILETYPE"
echo "$APP set as default application to open $FILETYPE"

파일에 이 스크립트를 사용하면 이 파일 형식에 대한 기본 응용 프로그램을 선택하라는 메시지가 표시됩니다.

저는 를 사용 rofi하지만 원하는 흐릿한 뷰파인더에 따라 조정할 수 있습니다. 그 후에는 xdg-open.

관련 정보