diff options
author | Yuchen Pei <id@ypei.org> | 2023-08-21 16:56:02 +1000 |
---|---|---|
committer | Yuchen Pei <id@ypei.org> | 2023-08-21 16:56:02 +1000 |
commit | 2f4b5e011c4345e18a8ad6a9ea968f62e66e08d8 (patch) | |
tree | fa5208012c0d394df89265345ecc812c8b682b27 /misc/.local/share/applications/emacsclient-mail.desktop | |
parent | ffea78e98b6a9c494c0a52f59e6ad1678a6dc445 (diff) |
Adding xdg desktop entries and mimeapp.list
Diffstat (limited to 'misc/.local/share/applications/emacsclient-mail.desktop')
-rw-r--r-- | misc/.local/share/applications/emacsclient-mail.desktop | 23 |
1 files changed, 23 insertions, 0 deletions
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 |