
웹페이지에서 mutt
일부 태그를 클릭하면 터미널에서 시작하고 싶었습니다 . mailto:
그게 가능합니까? 현재 Firefox가 시작되는데, 저는 이것이 정말 마음에 들지 않습니다. 로딩이 느리고 불필요합니다.
답변1
.desktop
먼저 XDG 사양에 필요한 파일이 있는지 확인해야 합니다 . GUI 프로그램의 경우 적합한 파일이 이미 있을 가능성이 높으며 .desktop
, 터미널 응용 프로그램의 경우 일반적으로 자신만의 파일을 만들어야 합니다. /usr/share/applications
기존 파일이 있는지 디렉터리를 확인하세요 . 어쩌면 이미 파일이 있을 수도 있습니다 mutt.desktop
. 없으면 새로 만듭니다.
그런 다음 파일을 편집 ~/.local/share/applications/mimeapps.list
하고 다음 줄을 추가하십시오.
[Default Applications]
x-scheme-handler/mailto=mutt.desktop;
이것은 mailto
핸들러에 mutt를 등록합니다. 성공적인 등록을 확인할 수 있습니다.
xdg-mime query default 'x-scheme-handler/mailto'
출력해야합니다 mutt.desktop
. 이제 크롬에서 “mailto”를 클릭하면 터미널이 mutt 인스턴스와 함께 팝업됩니다. 데스크톱 세션이나 브라우저를 다시 시작할 필요도 없습니다.
답변2
열려는 터미널을 지정하는 스크립트를 작성해야 합니다 mutt
. 그런 다음 Firefox에서 이 스크립트를 mailto 링크와 연결할 수 있습니다. 예를 들어 종결자를 사용하는 경우 다음 스크립트를 생성할 수 있습니다.
#!/usr/bin/env bash
terminator -x "mutt '$@'"
제 경우에는 영구 드롭다운 종결자가 있으므로 새 탭에 표시하고 싶습니다. 256색 팔레트도 필요하므로
#!/usr/bin/env bash
terminator --new-tab -x "TERM=xterm-256color; mutt '$@'"
FWIW 이것은 단축키 Ctrl+ 를 사용하여 터미네이터(숨겨진 경우)를 숨김 해제 Space하고 앞으로 가져오는 전체 스크립트입니다.
#!/usr/bin/env bash
terminator --new-tab -x "TERM=xterm-256color; mutt '$@'"
# If necessary, unhide and focus terminator window.
windowlist=$(xprop -root | sed -rn 's/_NET_CLIENT_LIST_STACKING\(WINDOW\): window id # (.*)/\1/p' | tr -d ',')
terminator_visible=false
for i in $windowlist; do
[[ $(xprop -id $i | grep WM_CLASS\(STRING\)) == 'WM_CLASS(STRING) = "terminator", "Terminator"' ]] && terminator_visible=true && term_id=$i
done
if [[ $terminator_visible == false ]]; then # it's hidden
xdotool key --clearmodifiers ctrl+space
elif [[ $(xprop -id $(xdotool getactivewindow) | grep WM_CLASS\(STRING\)) != 'WM_CLASS(STRING) = "terminator", "Terminator"' ]]; then # it's visible, but not active
xdotool windowactivate $term_id 2> /dev/null # Gives error; not sure why. XGetWindowProperty[_NET_WM_DESKTOP] failed (code=1)
fi
답변3
어떤 데스크탑 환경을 실행하고 있나요? 이러한 종류의 작업에 대해 특정 핸들러를 설정하는 방법에 대해서는 MIME 유형 핸들러의 설정을 확인해야 합니다.
답변4
xdg-mime을 사용하여 기본 애플리케이션을 등록할 수 있습니다. 이 경우 터미널에서 실행합니다.
xdg-mime default mutt.desktop 'x-scheme-handler/mailto'
그리고 다음을 실행하여 작동하는지 확인할 수 있습니다.
xdg-mime query default 'x-scheme-handler/mailto'