defaults.list
and 가 없으면 mimeapps.list
로 xdg-open
엽니 text/plain
다 gvim
. 하지만 다음 줄을 만들고 추가하면 defaults.list
:/usr/share/applications/
[Default Applications]
text/plain=emacs.desktop
Firefox를 사용하여 텍스트 파일을 엽니다.
그러나 이동하면 /usr/share/applications/defaults.list
예상대로 텍스트 파일이 열립니다 ~/.local/share/applications/mimeapps.list
.emacs
내 질문:
xdg-open
및가 없을 때defaults.list
시작할 응용 프로그램을 결정하는 방법은 무엇입니까mimeapps.list
?- 왜
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
을 사용하여 실행하세요 .gvim
gedit
문제 해결: 특정 응용 프로그램에 대한 ".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
답변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
.