From 2f4b5e011c4345e18a8ad6a9ea968f62e66e08d8 Mon Sep 17 00:00:00 2001 From: Yuchen Pei Date: Mon, 21 Aug 2023 16:56:02 +1000 Subject: Adding xdg desktop entries and mimeapp.list --- misc/.config/mimeapps.list | 47 ++++++++++++++++++++++ .../share/applications/emacsclient-mail.desktop | 23 +++++++++++ misc/.local/share/applications/emacsclient.desktop | 22 ++++++++++ 3 files changed, 92 insertions(+) create mode 100644 misc/.config/mimeapps.list create mode 100644 misc/.local/share/applications/emacsclient-mail.desktop create mode 100644 misc/.local/share/applications/emacsclient.desktop (limited to 'misc') diff --git a/misc/.config/mimeapps.list b/misc/.config/mimeapps.list new file mode 100644 index 0000000..7648543 --- /dev/null +++ b/misc/.config/mimeapps.list @@ -0,0 +1,47 @@ +[Default Applications] +application/djvu=org.pwmt.zathura-pdf-poppler.desktop +application/epub+zip=emacsclient.desktop +application/gzip=emacsclient.desktop +application/json=emacsclient.desktop +application/lrf=calibre-lrfviewer.desktop +application/pdf=emacsclient.desktop +application/pgp-keys=emacsclient.desktop +application/postscript=zathura-ps.desktop +application/rss+xml=emacsclient.desktop +application/vnd.ms-htmlhelp=xchm.desktop +application/vnd.ms-publisher=emacsclient.desktop +application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop +application/vnd.rn-realmedia=mpv.desktop +application/x-extension-htm=firefox.desktop +application/x-extension-html=firefox.desktop +application/x-extension-shtml=firefox.desktop +application/x-extension-xht=firefox.desktop +application/x-extension-xhtml=firefox.desktop +application/xhtml+xml=firefox.desktop +application/xml=emacsclient.desktop +application/zip=emacsclient.desktop +image/png=geeqie.desktop +image/jpeg=geeqie.desktop +inode/directory=emacsclient.desktop +image/webp=geeqie.desktop +message/rfc822=emacsclient-mail.desktop +text/csv=libreoffice-calc.desktop +text/html=firefox.desktop +text/markdown=emacsclient.desktop +text/plain=emacsclient.desktop +text/x-patch=emacsclient.desktop +text/xml=emacsclient.desktop +video/mp4=mpv.desktop +video/quicktime=vlc.desktop +video/x-msvideo=mpv.desktop +x-scheme-handler/chrome=firefox.desktop +x-scheme-handler/ftp=filezilla.desktop +x-scheme-handler/http=firefox.desktop +x-scheme-handler/https=firefox.desktop +x-scheme-handler/mailto=emacsclient-mail.desktop +x-scheme-handler/sgnl=signal-desktop.desktop +x-scheme-handler/org-protocol=emacsclient-org-protocol.desktop + +[Added Associations] +application/pdf=org.pwmt.zathura-pdf-poppler.desktop;firefox.desktop +text/csv=emacsclient.desktop diff --git a/misc/.local/share/applications/emacsclient-mail.desktop b/misc/.local/share/applications/emacsclient-mail.desktop new file mode 100644 index 0000000..12a0100 --- /dev/null +++ b/misc/.local/share/applications/emacsclient-mail.desktop @@ -0,0 +1,23 @@ +[Desktop Entry] +Categories=Network;Email; +Comment=GNU Emacs is an extensible, customizable text editor - and more +# We want to pass the following commands to the shell wrapper: +# u=$(echo "$1" | sed 's/[\"]/\\&/g'); exec emacsclient --alternate-editor= --display="$DISPLAY" --eval "(message-mailto \"$u\")" +# Special chars '"', '$', and '\' must be escaped as '\\"', '\\$', and '\\\\'. +Exec=sh -c "u=\\$(echo \\"\\$1\\" | sed 's/[\\\\\\"]/\\\\\\\\&/g'); exec /usr/bin/emacsclient --alternate-editor= --create-frame --eval \\"(message-mailto \\\\\\"\\$u\\\\\\")\\"" sh %u +Icon=emacs +Name=Emacs (Mail, Client) +MimeType=x-scheme-handler/mailto; +NoDisplay=true +Terminal=false +Type=Application +Keywords=emacsclient; +Actions=new-window;new-instance; + +[Desktop Action new-window] +Name=New Window +Exec=sh -c "u=\\$(echo \\"\\$1\\" | sed 's/[\\\\\\"]/\\\\\\\\&/g'); exec /usr/bin/emacsclient --alternate-editor= --create-frame --eval \\"(message-mailto \\\\\\"\\$u\\\\\\")\\"" sh %u + +[Desktop Action new-instance] +Name=New Instance +Exec=emacs -f message-mailto %u diff --git a/misc/.local/share/applications/emacsclient.desktop b/misc/.local/share/applications/emacsclient.desktop new file mode 100644 index 0000000..5e68ffe --- /dev/null +++ b/misc/.local/share/applications/emacsclient.desktop @@ -0,0 +1,22 @@ +[Desktop Entry] +Name=Emacs (Client) +GenericName=Text Editor +Comment=Edit text +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; +Exec=emacsclient --alternate-editor= --create-frame %F +Icon=emacs +Type=Application +Terminal=false +Categories=Development;TextEditor; +StartupNotify=true +StartupWMClass=Emacs +Keywords=emacsclient; +Actions=new-window;new-instance; + +[Desktop Action new-window] +Name=New Window +Exec=emacsclient --alternate-editor= --create-frame %F + +[Desktop Action new-instance] +Name=New Instance +Exec=emacs %F -- cgit v1.2.3