MKXLAX(1)

πŸ’– MKXLAX(1) πŸ’–

okay bestie, settle in, this is mkxlax from the General Commands Manual and it's literally the group-chat organizer of your terminal windows ✨


🌸 NAME 🌸

mkxlax β€” xlax and xterm startup program 🫢


✨ SYNOPSIS ✨

mkxlax [options] sendString [more sendStrings ...]

πŸ’… DESCRIPTION πŸ’…

so. Mkxlax is a perl script (yes queen, perl, we love a legacy icon) that starts up a whole little squad of xterms all configured to work together with xlax, and then boots up an xlax to talk to all of them. it's giving manager energy fr fr πŸ‘‘

Mkxlax will start an xterm for each argument (each send string) you give it. every one of those xterms gets its name hint (the -name option) set to xlax:sendString, where the sendString is the argument you handed to mkxlax. and all the xterms get started with send events enabled β€” which is required for xlax, no cap, it's mandatory πŸ’€

the xterms get arranged in a cascade, going from upper left down to lower right. but bestie, other arrangements are absolutely possible depending on the options you pass 🌈


πŸŽ€ OPTIONS πŸŽ€

  • -group name β€” use an alternate prefix with xlax instead of xlax:. this is the one that lets you run multiple groups of xlax windows at the same time without them interfering with each other. separate friend groups, separate drama, periodt ✌️
  • -layout name β€” picks a predefined, named layout screen (out of your $HOME/.mkxlax file) and uses that layout info (and the group name, if you gave one) for the windows it creates.
  • -x num β€” the starting x location of the first xterm πŸ“
  • -y num β€” the starting y location of the first xterm πŸ“
  • -dx num β€” how much to add in x to the position of each additional xterm.
  • -dy num β€” how much to add in y to the position of each additional xterm.
  • -wrapx num β€” if x goes greater than this value, x wraps back around to its starting value πŸ”„
  • -wrapy num β€” if y goes greater than this value, y wraps back around to its starting value πŸ”„
  • -wrapdx num β€” if a wrap happens, add this value to x. typically used together with -wrapy, so that when y returns to zero, x gets shifted. the way that these two hold hands πŸ₯Ή
  • -wrapdy num β€” if a wrap happens, add this value to y. typically used together with -wrapx, so that when x returns to zero, y gets shifted.
  • -termsize WIDTHxHEIGHT β€” the width and height (columns and rows) for the xterm that's gonna be started. note that this is not a full geometry specification, because mkxlax handles the window positioning itself, she's got it πŸ’… default is "80x24".
  • -termopts optionstring β€” extra options to pass along to the xterm. the string must be quoted if it contains spaces. also, you cannot use geometry or name options here. sorry babe, those are spoken for πŸ™ˆ
  • -geometry geometrystring β€” geometry for the xlax window (NOT the xterms, read that again bestie). it's a standard format X11 geometry, e.g. WIDTHxHEIGHT+XOFFSET+YOFFSET.
  • -- β€” ends option processing (in case a sendString needs to start with a dash). classic escape hatch, iconic ⭐

if you give no options at all, the defaults are:

-x 0 -y 0 -dx 20 -dy 50 -wrapy 750 -wrapdx 200

ngl it's totally possible to provide options that probably don't make any sense. the EXAMPLES section shows a few reasonable usages πŸ¦‹


🌈 LAYOUT CONFIGURATION 🌈

custom layouts can be added by putting them in the configuration file .mkxlax in your home directory. the file contains lines with a layout name followed by a colon, and then the command line options to set for that layout. for example:

tile: -group tilexlax -dx 510 -wrapx 1000 -wrapdy 345 -geometry +740-2

this creates a layout called "tile", with those options set. once this is in your .mkxlax file, you can then run:

mkxlax -layout tile host1 host2 ...

and all of the options associated with "tile" will apply ✨

⚠️ note that the config file will override any command-line options which are before the -layout; command-line options after the -layout will override those in the config file. order matters, bestie, she's strict about it.

you can also list sendStrings after the options in the layout configuration, so a frequently used list of strings can be accessed with a simple layout. any additional sendStrings provided on the command line will be added to those found in the layout 🫢


πŸ”₯ EXAMPLES πŸ”₯

this starts up five xterms with the default cascade positioning:

example% mkxlax host1 host2 host3 host4 host5

if you run more than one group of mkxlax windows, you need different group names, otherwise later xlaxes will find windows from earlier mkxlax commands πŸ‘€

example% mkxlax -group foo: host1 host2 host3

to lay out tiled, by row:

example% mkxlax -dx 400 -wrapx 1000 -wrapdy 300 host1 host2 ...

to lay out tiled, by column:

example% mkxlax -dy 300 -wrapy 700 -wrapdx 400 host1 host2 ...

🌸 ENVIRONMENT 🌸

  • DISPLAY β€” To get default host and display number.

πŸŽ€ FILES πŸŽ€

  • $HOME/.mkxlax β€” Layout customization information

πŸ’€ BUGS πŸ’€

Probably something, but nothing that comes to mind. (honestly? queen behavior, no notes 😭)


⭐ SEE ALSO ⭐

xterm(1), xlax(1)


Copyright 2007, Thomas A. Fine


and that's the whole page, bestie πŸ’– this was X Version 11, Release 5, of MKXLAX(1) β€” go forth and cascade your xterms, you absolute main character πŸ§šπŸ’œ

πŸ“¦ where this page comes from