devilspie(1)
π devilspie(1) π
okay bestie, welcome to the General Commands Manual section for devilspie, and no cap, this one is a whole vibe π¦
β¨ NAME β¨
devilspie β do lil actions on windows the second they get created π
β¨ SYNOPSIS β¨
devilspie [OPTION]... configuration-files...
πΈ DESCRIPTION πΈ
so devilspie is this program that literally watches windows being born πΆβ¨ β the moment one gets created, it peeks at it, and if the window matches a set of criteria you set up, it does stuff to it. main character energy, honestly.
the configuration files are a set of s-expressions, iykyk. for documentation and examples, go look at /usr/share/doc/devilspie/.
command-line options, let's go:
-a,--apply-to-existingβ applies to all the windows that already exist, not just the new babies. πΌ-d,--debugβ spills the debug info everywhere. π
π ALLOWED SYMBOLS π
in your input files, these are the symbols devilspie actually knows and fw:
isβ string equality,(is a b)meansais the same asb. simple as that. β¨containsβ substring check,(contains haystack needle)means haystack contains needle. πmatchesβ regexp matches,(matches str pattern)means the regexppatternmatchesstr. πwindow_nameβ returns the title of the current window (String). π·οΈwindow_roleβ returns the role of the current window, as determined by theWM_WINDOW_ROLEhint (String).window_classβ returns the class of the current window (String). πwindow_xidβ returns the X11 window id of the current window (Integer).application_nameβ returns the application name of the current window, as determined bylibwnck(String).window_propertyβ returns the given property of the window, like, pass it"_NET_WM_STATE"and you get that back (String). πwindow_workspaceβ returns the workspace a window is on (Integer).debugβ debugging function, outputs the current window's title, name, role and geometry (Returns TRUE).printβ print args, no trailing 0, returns boolean. π¨οΈprintlnβ print args, with trailing 0, returns boolean.strβ transform parameters into strings and concat them. π§΅hexβ transform the integer parameter into an unsigned hexadecimal string, with the0xprefix.geometryβ set position + size (as tring) of current window (returns boolean).fullscreenβ make the current window fullscreen (returns TRUE). πfocusβ focus the current window (returns TRUE). πcenterβ center position of current window (returns boolean).maximizeβ maximise the current window (returns TRUE). π₯maximize_verticallyβ maximise vertically the current window (returns TRUE).maximize_horizontallyβ maximise horizontally the current window (returns TRUE).unmaximizeβ un-maximise the current window (returns TRUE).minimizeβ minimise the current window (returns TRUE). πunminimizeβ un-minimise the current window (returns TRUE).shadeβ shade ("roll up") the current window (returns TRUE).unshadeβ un-shade ("roll down") the current window (returns TRUE).closeβ close the current window (returns TRUE). bye bestie πpinβ pin the current window to all workspaces (returns TRUE). πunpinβ unpin the current window from all workspaces (returns TRUE).stickβ make the current window stick to all viewports (returns TRUE).unstickβ unstick the window from viewports (returns TRUE).set_workspaceβ move the window to a specific workspace number, counting from 1 (returns boolean).set_viewportβ move the window to a specific viewport number, counting from 1 (returns boolean).skip_pagerβ remove the current window from the window list (returns TRUE).skip_tasklistβ remove the current window from the pager (returns TRUE).aboveβ set the current window to be above all normal windows (returns TRUE). β¬οΈbelowβ set the current window to be below all normal windows (returns TRUE). β¬οΈdecorateβ add the window manager decorations to the current window (returns boolean).undecorateβ remove the window manager decorations from the current window (returns boolean).wintypeβ set the window type of the current window (returns boolean). the accepted values are:normal,dialog,menu,toolbar,splashscreen,utility,dock,desktop. β¨opacityβ change the opacity level of the current window, as an integer in0..100(returns boolean). π«₯spawn_asyncβ execute a command in the background (returns boolean). the command is given as a single string, or as a series of strings, similar toexecl. πspawn_syncβ execute a command in the foreground (returns command output as string, or FALSE on error). the command is given as a single string, or as a series of strings, similar toexecl.
π BUGS π
ngl, this manpage is almost useless, because it was thrown together on a train. not me exposing the whole origin story ππ
π AUTHOR π
this manual page was written by Ross Burton <ross@burtonini.com>.
and that's the whole thing, bestie β you made it to the end of devilspie(1), so go forth and un-maximise something πβ¨
π¦ where this page comes from
- debian bookworm: devilspie 0.23-2+b1
- debian trixie: devilspie 0.23-4
- ubuntu jammy: devilspie 0.23-2build1
- ubuntu noble: devilspie 0.23-2build3
- ubuntu questing: devilspie 0.23-5
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms