Other Screenshots of BSD Window Managers for X11 (nonviral licenses)

Thread for screenshots of BSD style window managers for X11. Common ones are listed below, organized by type.

Floating; Mouse
Floating; Tabular/Classic
  • x11-wm/twm - C, Xlib
  • x11-wm/ctwm - forked from twm; default on NetBSD
  • x11-wm/fvwm2 - forked from twm; one version of fvwm2 is used in OpenBSD and likely has an ISC compatible license. The fvwm2 in ports is from a repository that uses GPL, but it can be included here to represent the implementation of fvwm-2.6.9 that is at OpenBSD. fvwm3 is GPL
  • x11-wm/dwm - C - floating/tiling - requires C compiling to configure - minimalist
  • x11-wm/echinus - floating/tiling/fullscreen - based on dwm, but has simpler configuration
  • x11-wm/rubygem-uh-wm - Ruby - floating/tiling - minimalist
  • x11-wm/wmii - floating/tiling
  • x11-wm/w9wm - command/mouse driven; functions like command wm, but uses mouse for basic menus, accessing terminal and placing windows; based on 9wm
(these contain BSD, MIT, ISC or similar licenses)

Window managers that use LGPL can be included here; there's so few: x11-wm/icewm (C++; floating), and x11-wm/lxqt (C++, Qt; floating). There aren't any Apache or MPL window managers in ports, but if they ever become available, they can be included here too.

x11/lumina is a desktop environment, rather than a window manager. Limit screenshots of desktop environments to BSD types used with BSD type window managers.

List the name of the window manager shown. sysutils/neofetch is optionally useful for displaying desktop information in addition within the screenshot. Descriptions and configuration settings are optional.

Let Wayland and exotic windowmanagers/compositors have their own thread, perhaps including x11-servers/xarcan.
Last edited:
On dual monitors
The first two screenshots are across two monitors: these are recent from 2021. The monitor on the right is smaller. Its resolution doesn't have the full height of the monitor on the left, so that text size is large enough on it to be readable from afar, while being small enough to not be truncated by the shorter width of the monitor. xrandr is used to set the monitor dimensions from .xsession, which are 1920x1080 for the left monitor shown, and 1280x800, for the right monitor.

The distance between the two monitors isn't shown, as there's not a virtual bevel to represent it. The left and right monitor are to scale, and the mouse and applications can't go where the notch is under the smaller monitor because of their difference in height.

The small monitor on the right has the taskbar for its controls, which are visible in the screenshot. This is useful for when the larger monitor is used for fullscreen applications, or when used as a television, which it actually is. While the larger monitor is being used as a television, I still have access to the monitor on the right. If I need to move an application from that offscreen monitor, I can right-click on the taskbar, then right-click again, to get the control to move the application to the onscreen monitor with the movement of the mouse.

This screenshot across two monitors shows the background, when applications aren't blocking their view. There's 4 background terminals, which are placed to make use of space, and for functionality. One terminal is transparent. wmmoonclock and wmglobe are background applications shown here. The Apache OpenOffice application was included it includes the logo that signifies FreeBSD. In this screenshot, there's the "about Apache OpenOffice" window, the other window is shaded on the top in the large left monitor, it's also in the tray and there's an icon of it in the tasklist.

The above screenshot captured part of the background image (represented virtually) which isn't represented on my monitors to be visible to me, so I had to edit the screenshot (which wasn't to the perfect x800 height of the smaller monitor) to represent where the notch is.


For this image, Firefox is in fullscreen on the left monitor by use of F11. Other open windows shown are Lumina-textedit, Deadbeef and Qpdfview. Lumina-textedit spans two monitors in this desktop, to show that how both monitors are in the screen are the same desktop. The black notch on the bottom right is offscreen, and this screenshot is to the exact proportions of the settings.


This screenshot shows a pdf in full screen with F11 in the large monitor. The background with terminals is shown on the right monitor. The Firefox window is shaded on the small screen, and can be conveniently rolled down over the background. deskutils/birdtray is in the tasklist, which hides and manages Thunderbird.

On single monitor
This screenshot is from 2018 of JWM on a single large monitor. The initialization for Apache OpenOffice is shown, which was difficult to capture when timing the screenshot. It was included because it has the FreeBSD logo. Notable applications shown: audio/osdmixer, graphics/dia, xcalc, deskutils/hot-babe, rxvt-unicode, graphics/pho, audio/sox. pkg audit -F is also shown in a terminal, which starts with the window manager. In this screenshot, there were two taskbars, which newer versions of JWM didn't seem to allow to work like this anymore.

Screenshot from 2017.

Relevant to all above screenshots
There's a few icons of applications in the tasklist throughout all above screenshots that are minimized on the desktop: vlc, pidgin, gvolwheel or volumeicon, Apache OpenOffice, birdtray, and hexchat. Scrot was used to make these screenshots. These screenshots show a range of how I've used JWM.

.xsession setting for dual monitors
For my dual monitor configuration, .xsession:
xrandr --output HDMI-A-0 --mode 1920x1080 --pos 0x0 --rotate normal --output VGA-0 --primary --mode 1280x800 --pos 1920x0 --rotate normal
xscreensaver & # ampersand is needed here, so next command can proceed
exec /usr/local/bin/jwm
I used arandr to get these desired settings applicable for my monitors, then deleted this program.

Notable .jwmrc configurations
Excerpts from .jwmrc, that doesn't contain the entire xml configuration.

Application groupings:












Start up commands. urxvt examples are for the dimensions of my dual monitors:
<StartupCommand>urxvt -tr -sh 20 -fg white +sb -uc -bc -geometry 97x22+25+30</StartupCommand>
<StartupCommand>urxvt -bg black -fg white +sb -uc -bc -geometry 97x22+25-5</StartupCommand>
<StartupCommand>urxvt -bg black -fg white +sb -uc -bc -geometry 82x17-5+50 -fn "xft:terminus:size=11"</StartupCommand>
<StartupCommand>urxvt -bg black -fg white +sb -uc -bc -geometry 82x17-5+380 -fn "xft:terminus:size=11"</StartupCommand>
<StartupCommand>osdmixer d d 6 d</StartupCommand>

    <Tray x="2000" y="3" autohide="off">

        <TrayButton icon="jwm-blue">root:1</TrayButton>
        <Spacer width="4"/>
        <TrayButton label="_">showdesktop</TrayButton>
        <Spacer width="2"/>

        <Pager labeled="true"/>

        <TaskList maxwidth="128"/>

        <Clock  format="%R %b %d | %a " zone="America/Chicago"></Clock>

<Background type="tile">/usr/home/my/wallpaper.jpg</Background>

<Key key="XF86AudioMute">exec:mixer 0</Key>
<Key key="XF86AudioRaiseVolume">exec:mixer vol +1</Key>
<Key mask="C" key="Left">exec:mixer vol -1</Key>

Yellow prompt in CSH that indicates directory is set by this line:
set prompt = "%{\033[1;33m%}%~ %#%{\033[0m%} "
Last edited:
I have seperate pages for 12 forum member screenshots using different WM and DE on my site:

i3WM with i3blocks
Fluxbox with icons

The shots of Mate and Gnome2 are my screenshots of Solaris and OpenIndiana boxen, OpenBSD and NetBSD desktops are also represented.
From https://trihexagonal.org/screenshots2.html, BSD style screenshots are of: bspwm, fluxbox, i3wm, jwm, twm. lxqt and fvwm2 screenshots also apply to this thread.

mer, a thread like this one for GPL window managers can be started, perhaps that come without full desktop environments like Gnome, KDE or LXDE. Ones that aren't associated with the major desktops deserve attention too. It can be linked from this thread. Alternatively, it can also be put at, Thread freebsd-screen-shots.8877.

I recently have used components of WindowMaker on my FreeBSD desktop. wmmoonclock is the one I'm currently using. Recently, I've used Window Maker componets of weather/temperature, volume, astro category related, and for a screenshot above, wmglobe. In the past, I've used WindowMaker on a Linux desktop.

It's the BSD-like window manager theme. I adjusted this thread to include LGPL window managers too, which right now there's only icewm and lqxt. An unintended benefit of making this adjustment, IceWM comes with a BSD/Beastie logo button.

I'm glad that I organized the list of BSD like window managers by type, and this applies to other window managers as well. It makes more sense now, as to why when I used a window manager that happened to be tiling, I then (likely mistakenly) thought it to be broken. It probably wasn't broken, it was the style of wm, which I didn't understand how to use. Some window managers are interesting, that they can be configured to operate as different kinds, like tiling or floating. Organizing this list helped me see which ones are like TWM, and how CTWM may be similar to FVWM. Some have additional information of programming language used, library used or configuration type, which some are an alternative to similar types or window managers. Organizing it this way can assist with choosing a window manager to try based on style or preference.

When to place an item in .xsession (or .xinitrc) rather than a window manager configuration file:
  • when it needs to run underneath the window manager, or is better off running underneath it
  • commands that aren't daemons for the desktop that don't have a GUI
  • its placement on the desktop isn't meant to be specific (unless xsession/xinit are its only configurations), and when it is used for multiple desktops
xrandr belongs in .xsession, and xscreensaver works better here.
tree monitors, 2 the same size the other a tv
fvwm2 , audacious and lilyterm


  • Screenshot from 2021-07-29 11-08-44.png
    Screenshot from 2021-07-29 11-08-44.png
    763.6 KB · Views: 367
  • Screenshot from 2021-07-29 11-11-06.png
    Screenshot from 2021-07-29 11-11-06.png
    296.1 KB · Views: 408
  • Screenshot from 2021-07-29 11-17-00.png
    Screenshot from 2021-07-29 11-17-00.png
    410.8 KB · Views: 445


The smaller monitor on the right doesn't have the full height of the large monitor on the left. Background of fire and ice to symbolize IceWM and FreeBSD. This one was compiled with the BSD/Beastie logo button in the taskbar. The taskbar was changed to hold only 2 work spaces. IceWM found applications and autoloaded them into the menu.

In IceWM, the mouse lacks some advanced capabilities. Windows must be clicked on to be interacted with. Windows won't shade or roll down with use of the mouse wheel. After adjusting configuration settings, I can use the mousewheel in the taskbar to switch between workspaces and applications. The mouse wheel also functions with gvolwheel.

The game in the second screenshot is Dune 2000 from games/openra. (When playing video games like this, I use the keypad to scroll, rather than moving the mouse off the larger screen to the smaller screen.) Other applications: dia, xcalc, birdtray, lumina-textedit, hot-babe, rxvt-unicode.

For .xsession, use exec icewm-session rather than exec icewm for it to load with the chosen background image.

Settings from files in /usr/local/share/icewm/ can be used in ~/.icewm/ directory. ~/.icewm/preferences:
WorkspaceNames=" 1 ", " 2 "
icewmbg -p reloads the background, while quitting a current running process of icewmbg.

Claude's Tab Window Manager (CTWM) across two (different sized) monitors with Athena (Xaw) applications in the foreground. Two additional buttons were added to the window bars: one for closing, and an additional minimize button.

Xaw applications in screenshot: audio/xmixer, audio/xwave, deskutils/xcalendar, graphics/xfig, math/abs, math/hexcalc, graphics/xpaint, print/gv, x11/xballoon, x11/xclipboard, x11/xedit, x11/xterm, x11-clocks/xclock.

In this window manager, a mouse feature is that hovering over windows focuses on them, making them active. An inconvenience is that, the mouse wheel isn't able to roll windows up and down (at least not by default).

/usr/local/share/examples/ctwm/system.ctwmrc was copied to ~/.ctwmrc for customizing. Excerpts from customized .ctwmrc:
# For additional buttons on window bars
# "xpm:" prefix is needed for xpm files
# default location /usr/local/share/ctwm/images/
# full dir not needed for default location
# one image button borrowed from another wm

RightTitleButton        "3ddot.xpm" = f.iconify
RightTitleButton        "xpm:/usr/local/share/fvwm/pixmaps/button-close.xpm"    = f.delete

# Workspaces and background

WorkSpaceManagerGeometry        "180x30+0-0" 2
WorkSpaces {
    "One"   {"#686B9F" "white" "DeepSkyBlue3" "white" "xpm:/usr/home/my/clouds1.xpm"}
    "Two"   {"#619AAE" "white" "firebrick" "white" "xpm:/usr/home/my/clouds1.xpm"}

# main menu
menu "defops"
    "CTWM"              f.title
    "Thingylaunch"      !"thingylaunch&"
    "Terminal"          !"xterm -bg black -fg white +sb -uc -bc -fn xft:terminus:size=11 &"
    "Calculator"        !"hexcalc&"
    "Xman"              !"xman &"
    "Xmag"              !"xmag&"
    ""                  f.nop
    "Restart"           f.restart
    "Exit"              f.quit
To test configuration, use ctwm --cfgchk. graphics/xpaint or convert from ImageMagick can also be used to convert image files to xpm or xbm formats.

Blackbox (on a single monitor) that shows WindowMaker applications (Dockapps) in an automatically stacking Dockapp compatible slit. Choosing toolbar and slit settings on the desktop by mouse automatically adjusts the ~/.blackboxrc configuration file. Additional configuration for customizing Blackbox can be done through the ~/.blackbox/ directory.

WM applications: misc/wmpal, audio/wmix, sysutils/wmcube, sysutils/wmupmon, misc/wmforecast, astro/wmglobe, astro/wmmoonclock. (astro/wmsun is an application I liked, but isn't in this screenshot.)

Other programs: x11-clocks/bbdate, x11/rxvt-unicode, x11/xeyes.

Functionality: The program x11/bbrun seemed buggy, as it would work once, then crash.

x11/bbdock (/usr/local/share/doc/bbdock/README) is a Dockapp dock/slit/wharf that works with Fluxbox and Openbox. BBDock is configured through .bbdockrc. Blackbox already comes with this ability, and bbdock may be excessive for it for this functionality.


  • 2021-08-01-063732_1280x1024_scrot.png
    964.6 KB · Views: 622
Last edited:

TWM on a single monitor. Background programs: audio/deadbeef, audio/gvolwheel, audio/osdmixer, deskutils/birdtray, x11/bgs, x11/stalonetray, x11/xeyes, x11-clocks/xclock.

bgs -z /home/mydir/clouds.jpg
xscreensaver &
stalonetray &
gvolwheel &
osdmixer d d 20 d &
xclock -digital &
xeyes &
exec /usr/local/bin/twm

.twmrc excerpts:
# For additional buttons on window
RightTitleButton                "/mydirectory/button-_.xbm"    = f.iconify
RightTitleButton                "/mydirectory/Background/button-x.xbm" = f.delete

# Icon Manager
IconManagerGeometry             "1280x5+0+0" 5          # strip across top
IconRegion                      "1000x20+0+2" North East 100 10
IconBorderWidth                 1                       # Default is 2

# Windows
NoTitle                         { "TWM Icon Manager" "xmessage" "xload" "xclock" "oclock" "WorkSpaceManager" "xeyes" "stalonetray" }
NoBorder                        { "TWM Icon Manager" "mpv" "xmessage" "xload" "WorkSpaceManager" "xclock" "oclock" }
NoHighlight                     # global i.e. following commented out   { "xmessage" "xload" "WorkSpaceManager" "xclock" "oclock" }
IconManagerDontShow             { "xclock" "oclock" "stalonetray" "xeyes" "WorkSpaceManager" }

# Menu color

BorderColor "#000000"
"xcalc" "#494949"
"Firefox" "brown"
"mtpaint" "orange"
"osmo" "yellow"
"xfw" "blue"
"xfe" "blue"
"libreoffice-writer" "blue"
"libreoffice-calc" "#006D00"
"xterm" "#494949"
"soffice" "#DCDAD5"
"LibreOffice" "#006D00"

DefaultBackground "#020a09"
DefaultForeground "gray85"
# Title default Title colour ... then with selective programs having other colo
# Use xprop command to identify WM names such as XTerm ...etc.
TitleBackground "#006D00" {
"xcalc" "#494949"
"Firefox" "brown"
"mtpaint" "orange"
"osmo" "yellow"
"xfw" "blue"
"xfe" "blue"
"libreoffice-writer" "blue"
"xterm" "#494949"
"mpv" "black"
TitleForeground "white" {
"mtpaint" "black"
"osmo" "black"
MenuBackground "#020a09"
MenuForeground "#00FF00"
MenuBorderColor "slategrey"
MenuTitleBackground "#005B5B"
MenuTitleForeground "white"
IconBackground "#020a09"
IconForeground "gray85" {
"xcalc" "white"
"Firefox" "brown"
"mtpaint" "orange"
"osmo" "yellow"
"xfw" "blue"
"xfe" "blue"
"libreoffice-writer" "blue"
"libreoffice-calc" "#006D00"
"xterm" "white"
"soffice" "#DCDAD5"
"LibreOffice" "#006D00"
IconBorderColor "#000000"
IconManagerBackground "#020a09"
IconManagerForeground "gray85" {
"xcalc" "white"
"Firefox" "brown"
"mtpaint" "orange"
"osmo" "yellow"
"xfw" "blue"
"xfe" "blue"
"libreoffice-writer" "blue"
"libreoffice-calc" "#006D00"
"xterm" "white"
"soffice" "#DCDAD5"
"LibreOffice" "#006D00"
IconManagerHighlight "slategrey"
For basic window icons, I used ImageMagick, to make icons from text: convert -background white -fill black -pointsize 20 label:X button-x.xbm.

Screenshot in thumbnail is TWM across two screens. Actual monitors are physically different sizes, but each one is set to the same output dimensions of 1280x1024 through xrandr.


  • 2021-08-01-163615_2560x1024_scrot.png
    1.2 MB · Views: 407

x11-wm/mcwm is a very minimalist WM that is written in C, entirely over XCB. Mouse interacts with applications, but not with the window manager itself. There's no menu. Everything must be placed on the command-line, or accessed directly through desktop applications. Some X applications can be placed with the -geometry argument. Image refresh rate is slow or gets stuck.

Applications: osdmixer, pho, rxvt-unicode, xclock, xeyes, xwave.

Forgot to include x11/lemonbar in this screenshot, which also uses XCB, and not Xlib, like this window manager. x11/thingylaunch is a port that can be compiled with XCB instead of Xlib: by default, it compiles with Xlib. There are a few other ports that use XCB and don't use Xlib, but they also use something like Cairo, Rust, Qt or Lumina.

In .xsession, the terminal is in the last line, after this window manager. Closing this terminal in the session closes MCWM. The background was set with bgs.

# xrandr
# bgs /dir/file.jpg

mcwm &
exec urxvt -bg black -fg white +sb -uc -bc

# The window manager isn't prefixed with exec
# In this setting, the terminal goes last
Last edited:

CWM is similar to mcwm in function. Has very few mouse functions on desktop. Applications were placed using the same method with -geometry argument. Image refresh also is slow or gets stuck. This screenshot is similar to the screenshots of mcwm.
About other command/hot-key window managers
These function similarly. Most need to be started with a terminal to be functional. Otherwise, a hot-key must be used.
The screens on these look and function pretty much the same. Many use hot-keys. There's minute differences in functionality between them. Most of these look like the screenshots for other command window managers x11-wm/mcwm and x11-wm/cwm. Another example is this screenshot for mcwm:


AntiWM is a fullscreen window manager. It's written in C, and changing default keyboard shortcuts requires recompiling. It's an alternative to and inspired by the Ratpoison window manager. The instructions for using AntiWM are at /usr/local/share/doc/antiwm/README.

x11-wm/antiwm screenshot, with terminal in whole background, x11 deskutil:

# ll /usr/local/bin/twm /usr/local/bin/ctwm /usr/local/bin/fvwm /usr/local/bin/cwm
-rwxr-xr-x  1 root  wheel  458384 Jul  8 05:39 /usr/local/bin/ctwm*
-rwxr-xr-x  1 root  wheel   95208 Jan  7  2021 /usr/local/bin/cwm*
-r-xr-xr-x  1 root  wheel  849536 Jul  7 08:40 /usr/local/bin/fvwm*
-r-xr-xr-x  1 root  wheel  171568 Jul  6 17:27 /usr/local/bin/twm*

The only thing I miss in twm are virtual desktops. See above the price in KB for having them.
-r-xr-xr-x  1 root  wheel  242568 Jul  7 11:39 /usr/local/bin/tvtwm*

But it seems to be buggy. Does not behave 100% like twm.
x11-wm/vtwm is like tvtwm, but has more active maintenance. Also, by the file size you were looking at, ls -l /usr/local/bin/*vtwm:
-r-xr-xr-x  1 root  wheel  240648 Jul 28 07:14 /usr/local/bin/tvtwm*
-r-xr-xr-x  1 root  wheel  308928 Jul 28 07:14 /usr/local/bin/vtwm*

It's much easier for me to use CTWM than TWM. I made a similar screenshot of TWM that looks like one of CTWM. The configuration files are similar, except CTWM has more. I had to exit TWM and log back in to see updated settings. Is there a way, I didn't know about?

I also took a shortcut on the TWM screenshot, by using bgs to set the background, instead of researching more about the .twmrc file or using xsetroot. TWM's configuration file only allows xbm images, and AFIAK those are only black and white images. However, I could figure out how to put basic gradients over a black and white xbm image. Some of the TWM config, like the multicolored menu and other details were adjusted from a configuration for a screenshot at Trihexagonal 's website. It was nice to try TWM again, and do what I couldn't do with it before, but I'm done tinkering with it.
rufwoof has his twmrc file up on his page at my site showing his TWM screenshots.

His page got more referrals than anybody. He must have some Talker in him and have been out selling it.

I'm proud of hm...

I used hackedbox before switching to x11-wm/fluxbox and couldn't tell the difference in them.

Tried out Windowlabs while using PC-BSD. It's pretty bad. They included it as a choice of one of the optional DE/WM they included in a release.

They could hear me in the forums when they wanted to. I posted in another forum when they would not hear me.

Got more movement than a ExLax Q-tip.
I had to exit TWM and log back in to see updated settings. Is there a way, I didn't know about?
Just kill the window manager and start a new.

It was nice to try TWM again, and do what I couldn't do with it before, but I'm done tinkering with it.
I used fvwm with OpenBSD. I never used cwm because I did not have the time and necessity to learn it.

All other window managers I tested were bloated or full of imperfections.

How it looks like, the background, the kind of images, etc, is irrelevant for me. Important is for me
the functionality, and first when one reads the man page and how to make .twmrc
one discovers how comfortable is twm.

I have my own .twmrc, a modification of /usr/local/share/X11/twm/system.twmrc,
it looks at the end like the default, but I have menus at the mouse buttons:

Button1: TWMWindows (standard)
Button 2: Launch some xclients
Button 3: twm functions (zoom, rise, lower, destrow, refresh, etc).

Perhaps after learning cwm I would try to imitate some of its bindings in twm.

Instead of the menu at Button2 it would be interesting to have a lightweight file and
applications manager as an xclient. Lightweight, not as thunar, conqueror, etc.

[FONT=monospace]rufwoof[/FONT] has his twmrc file up on his page at my site showing his TWM screenshots.

Exactly that outlook is what I do not want, it makes me dizzy.
Xsetroot for background and Athena programs run with NeXtaw

This background is set with xsetroot -fg blue -bg lightgray -bitmap /themes/clouds.xbm, so it's more authentic to the classic look of TWM. This is about the most that can be done with xsetroot. xbm images are black and white. I thought to do a screenshot of the sky with yellow-orange and blue for a sunset look.

Also, this screenshot has Xaw programs that are used with the NeXtaw implementation, so their buttons look a lot better. How to do this is explained at, Thread athena-xaw-implementations.81588. Few programs crash, when trying to start them with this setup.

I believe that a screenshot that can be made on TWM can also be similarly made on CTWM (because their configuration files are similar), as CTWM is a bit more capable. For more on how to make this screenshot, see the previous TWM post above.
I have xsetroot in .xinitrc and start X with xinit:

# cat .xinitrc
setxkbmap de
xsetroot -solid black
xterm -geometry +1+1 -n login -display :0

Your background should be usable with any wm.

VTWM has a virtual workspace signified in this screenshot by the box on the bottom right corner. In this screenshot, my applications are shown on the top left quadrant (that's my two monitors side by side with equal resolution) of a virtual desktop. The window bar, button and window presentation settings are the default.

Firefox is shown, which F11 doesn't maximize it outside its boundaries, but it changes the way it's presented in the window. The file-manager shown is Rox.
/usr/local/etc/system.vtwmrc copied to ~/.vtwmrc, then modified:
IconManagerGeometry "150x20-0+0" 1

Function "VTWM Profile"
        f.exec "killall xplanet ; xplanet -body earth -projection orthogonal -ra
dius 65 -transparency &"
        f.exec "killall xclock ; xclock -digital -geometry -350-0 &"
        f.exec "killall xeyes ; xeyes -geometry -0-150 &"


menu "apps"
        "  Applications  "      f.title
        "thingylaunch"          f.exec "thingylaunch &"
        "urxvt"        f.exec "urxvt -tr -sh 60 -fg white -bc -uc +sb -fn xft:terminus:size=11 &"

VirtualDesktop                  "2x2-0-0" 16
vtwm has a nice infinite desktop. Is it there a way to move in discrete steps pressing a key?

I like it as in fvwm. I have some applications in one desktop, other applications in other desktop,
I can quickly move from one desktop to other with the arrow keys. I work in one desktop, take
information from others by quicky moving from one desktop to other.

These are the details that matter, not the outlook.

But now I am using twm.
vtwm has a nice infinite desktop. Is it there a way to move in discrete steps pressing a key?

I like it as in fvwm. I have some applications in one desktop, other applications in other desktop,
I can quickly move from one desktop to other with the arrow keys. I work in one desktop, take
information from others by quicky moving from one desktop to other.

These are the details that matter, not the outlook.
I haven't used it long enough to know. In the virtual desktop box, I can drag the mouse around, and it will shift the desktop around. Also, rolling the mouse to the edges of the screen will move to other parts of the virtual desktop.

I couldn't find a way to move windows from one monitor to another, without clicking on the window tab. In another Window Manager, it took me a few months to stumble on the answer to some of this.

pkg info -l vtwm shows a list of any informational resources available with the package. vtwm(1) shows a lot of keybindings for windows and icon managers. It may take more examination to find one for moving around on the virtual desktop. It may take looking at external resources if the functions are available.

Alt-arrowkey works for switching workspaces in JWM, but not in VTWM. In VTWM, It's one big virtual screen that I believe isn't numbered. Also, clicking on the icon manager opens the applications. I don't know if there's a way to roll the visible screen around in the virtual window without using a mouse in the "VirtualDesktop" box.