TWINWAVE(1)

πŸ’– TWINWAVE(1) β€” the manual page, but make it cute πŸ’–

Simulation Wave Viewer Multiplexer ✨ (that's the fancy subtitle the grown-ups put up top, bestie, we're keeping it)


🌸 NAME 🌸

twinwave β€” wraps multiple GTKWave sessions in one window or two synchronized windows 🫢


πŸŽ€ SYNTAX πŸŽ€

twinwave <arglist1> <separator> <arglist2>

✨ DESCRIPTION ✨

Okay so literally what this does is wrap a bunch of GTKWave sessions together, and it syncs up your markers, your horizontal scrolling, and your zooming. All vibing together. No cap. πŸ’…


πŸ¦‹ EXAMPLES πŸ¦‹

To run this program the standard way, you type:

twinwave filename1.vcd filename1.sav + filename2.vcd filename2.sav

Two synchronized viewers get opened in one window. πŸ‘‘ And heads up, queen: accelerator keys for menus will be disabled, because some window managers have focus issues and route keystrokes to the wrong part of the window. It's giving chaos, so they just turned that off. 😭

twinwave filename1.vcd filename1.sav ++ filename2.vcd filename2.sav

Two synchronized viewers get opened in two windows. 🌈 (yes, one extra + is the whole difference, iconic honestly)


πŸ’€ LIMITATIONS πŸ’€

twinwave uses the GtkSocket/GtkPlug mechanism to embed two gtkwave(1) sessions into one window. The amount of coupling is currently limited to communication of temporal information. Other than that, the two gtkwave processes are isolated from each other as if the viewers were spawned separately. They're basically strangers sharing an apartment. πŸ™ˆ

⚠️ Keep in mind that using the same save file for each session may cause unintended behavior problems if the save file is written back to disk: only the session written last will be saved. (i.e., the save file isn't cloned and made unique to each session.) So like... don't do that. fr fr. πŸ’€

Also note that twinwave compiled against Quartz (not X11) on OSX, as well as MinGW, does not place both sessions in a single window. That dream is simply not available there. πŸ˜”


πŸ‘‘ AUTHORS πŸ‘‘

Anthony Bybell <bybell@rocketmail.com> β€” the main character who made all of this happen πŸ’œ


🌟 SEE ALSO 🌟

gtkwave(1) β€” go read that one next bestie, it's the whole vibe πŸŽ€


And that's a wrap, bestie! This lil page is from version 3.3.79, brought to you by Anthony Bybell β€” thanks for reading all the way to the bottom, you're literally the best πŸ«ΆπŸ’–βœ¨