Используя подобную Границе оболочку,
while read a ; do # Try reading a line.
read b ; read c ; read d # OK, read 3 more.
printf '%s\n%s\n%s\n%s\n' "$a" "$b" "$c" "$d" | sort -n # Sort them.
done < data
Ничего, что было бы вызвано непосредственно использованием либо libx11
, либо libxcb
, основанных на WM. Это как если бы вы спросили, есть ли некоторые преимущества использования приложений libncurses
по сравнению с libslang
(библиотеки TUI). Разница почти исключительно на уровне исходного кода - "почти", потому что могут быть небольшие различия в производительности и/или двоичном размере, хотя в современных системах вы вряд ли их заметите.
Если только вы не хотите активно разрабатывать WM, это действительно не имеет значения. Если вы do хотите помочь в разработке, то, возможно, более важно выбрать язык, на котором он написан (и это не просто решение C против C++ - например, xmonad
написан на Haskell, qtile
на Python), и насколько хороша кодовая база.