Emacs does understand X resources, so this is a working solution for X in general, not only in Xfce. (This is however not true for any program; for example, xfce4-terminal cannot be controlled this way.) The X resources can be viewed by xrdb -query
.
To achieve what you want, I have put into /etc/X11/Xresources-site
(/etc/X11/Xresources
is also OK, though can be overwritten by your distro):
Emacs.fullscreen: maximized
This would affect also remote X clients which are Emacs (e.g., emacs started on a remote host via ssh).
/etc/X11/Xresources-site
and /etc/X11/Xresources
(and probably ~/.Xresources
and ~/.Xdefaults
) are usually read at the start of your X session; to affect your current X resources immediately, run something like xrdb -merge /etc/X11/Xresources-site
.
Actually, in my case, /etc/X11/Xresources-site
is being read thanks to a line in /etc/X11/Xresources
(which is read by the start scripts):
#include "/etc/X11/Xresources-site"
so /etc/X11/Xresources
is read for sure.
There are also some files with the same syntax which are read each time an X program like emacs starts. In my case, they are: ~/.Xdefaults-MY_HOST_NAME
, /etc/X11/app-defaults/Emacs
(only for emacs-athena, not for emacs-gtk3), /usr/share/X11/app-defaults/Emacs
etc. (But I like the idea of loaded X resources more -- shown with xrdb -query
; so that remote X clients read the same X resources.)
Other X resources which Emacs understands are described at https://www.gnu.org/software/emacs/manual/html_node/emacs/Table-of-Resources.html#Table-of-Resources.