Suppose I have a .desktop entry such as this:
[Desktop Entry]
Type=Application
Version=1.0
Name=Vterm
NoDisplay=true
Comment=Tell a running Emacsclient to open a terminal
Icon=emacs
Exec=/usr/bin/emacsclient -c -e "(vterm 't)"
Terminal=false
Categories=GTK;System;TerminalEmulator;
X-Desktop-File-Install-Version=0.28
If I install this entry and choose it as my preferred terminal emulator, the "run a terminal" command in Marco will run /usr/bin/emacsclient, but will not pass the arguments specified in the .desktop entry. It appears that the settings daemon is ignoring them when installing the command to /org/mate/desktop/application/terminal.
[desktop/applications/terminal]
exec='/usr/bin/emacsclient'
If I manually overwrite the key with dconf, the command in Marco now works.
dconf write /org/mate/desktop/applications/terminal/exec "'/usr/bin/emacsclient -c -e \"(vterm \'t)\"'"