I created a patch to support _NET_WM_PID so st's PID would show up when using wmctrl -p.
Eric
>From ffdc5e0c3319d629a47f591f1220350a161c83de Mon Sep 17 00:00:00 2001 From: Eric Pruitt <eric.pru...@gmail.com> Date: Tue, 10 Dec 2013 23:32:06 -0600 Subject: [PATCH] Set _NET_WM_PID attribute --- st.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/st.c b/st.c index 91eb2cc..bbf27ec 100644 --- a/st.c +++ b/st.c @@ -240,7 +240,7 @@ typedef struct { Colourmap cmap; Window win; Drawable buf; - Atom xembed, wmdeletewin, netwmname; + Atom xembed, wmdeletewin, netwmname, netwmpid; XIM xim; XIC xic; Draw draw; @@ -3027,6 +3027,12 @@ xinit(void) { xw.netwmname = XInternAtom(xw.dpy, "_NET_WM_NAME", False); XSetWMProtocols(xw.dpy, xw.win, &xw.wmdeletewin, 1); + if (!pid) + pid = getpid(); + xw.netwmpid = XInternAtom(xw.dpy, "_NET_WM_PID", False); + XChangeProperty(xw.dpy, xw.win, xw.netwmpid, XA_CARDINAL, 32, + PropModeReplace, (unsigned char *)&pid, 1); + xresettitle(); XMapWindow(xw.dpy, xw.win); xhints(); -- 1.7.10.4