Reapply "fvwm: more window menu cleanups and icons" - dotfiles - 🍚 personal arsenal of "rice"
HTML git clone https://git.drkhsh.at/dotfiles.git
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
DIR commit 40be1dd7b9ecbf03b5a5f1b77b6629fdc261ea16
DIR parent 0cb880a8b10c74ea677d6821b2276e2ce096aa29
HTML Author: drkhsh <me@drkhsh.at>
Date: Fri, 13 Jun 2025 00:28:03 +0200
Reapply "fvwm: more window menu cleanups and icons"
This reverts commit 0cb880a8b10c74ea677d6821b2276e2ce096aa29.
Diffstat:
M fvwm/.fvwm/config | 73 ++++++++++---------------------
A fvwm/.fvwm/icons/mini.arrows.xpm | 53 ++++++++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.cross.xpm | 24 ++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.destroy.xpm | 26 ++++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.iconify1.xpm | 24 ++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.lower3.xpm | 26 ++++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.maximize1.xpm | 25 +++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.monitor.xpm | 30 ++++++++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.move.xpm | 23 +++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.move1.xpm | 23 +++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.move3.xpm | 27 +++++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.raise2.xpm | 21 +++++++++++++++++++++
A fvwm/.fvwm/icons/mini.raise3.xpm | 27 +++++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.resize3.xpm | 24 ++++++++++++++++++++++++
A fvwm/.fvwm/icons/mini.stick.xpm | 20 ++++++++++++++++++++
A fvwm/.fvwm/icons/mini.window.xpm | 25 +++++++++++++++++++++++++
16 files changed, 421 insertions(+), 50 deletions(-)
---
DIR diff --git a/fvwm/.fvwm/config b/fvwm/.fvwm/config
@@ -498,7 +498,7 @@ AddToFunc Resize-or-Raise
+ I Raise
+ M Resize warptoborder automatic
-Mouse 1 R A Menu MenuIconOps Nop
+Mouse 1 R A Menu MenuFvwmWindow Nop
Mouse 2 R A WindowListMouse
Mouse 3 R A Menu MenuFvwmRoot Exec st
@@ -541,28 +541,27 @@ AddToMenu MenuFvwmRoot@fvwm_sidebar2.xpm@
+ "&Exit%mini.quit.png%" Module FvwmForm QuitVerify
DestroyMenu MenuFvwmWindow
-AddToMenu MenuFvwmWindow "$[gt.Window Menu]" Title
-+ "&Move Move
-+ "Iconify (&z)" Iconify
-+ "Ma\&x\imize" Maximize
-+ "Maximize &Vertically" Maximize vertical
-+ "&Resize" Resize
-+ "" Nop
-+ "&Fullscreen" Maximize fullscreen
-+ "" Nop
-+ "" Nop
-+ "Always on &top" TopToggle
-+ "&Stick" Stick toggle
-+ "(&f) Freeze Window Position" ToggleFixedPosition
-+ "(&s) Freeze Window Size" ToggleFixedSize
-+ "(&z) Toggle Closable" ToggleClosable
-+ "" Nop
-+ "&Center Window" Center
-+ "" Nop
-+ "Move to &Workspace" Popup MenuFvwmMoveToDesk
-+ "" Nop
-+ "" Nop
-+ "Close" Close
+AddToMenu MenuFvwmWindow@fvwm_sidebar3.xpm@ "$[gt.Window Menu]" Title
++ "&Move%mini.move1.xpm%" Move
++ "Iconify (&z)%mini.iconify1.xpm%" Iconify
++ "Ma\&x\imize%mini.maximize1.xpm%" Maximize
++ "&Fullscreen%mini.monitor.xpm%" Maximize fullscreen
++ "&Resize%mini.resize3.xpm%" Resize
++ "&Shade%mini.raise2.xpm%" WindowShade
++ "&TileLeft%mini.arrows.xpm%" TileLeft
++ "&TileRight%mini.arrows.xpm%" TileRight
++ "&Center Window%mini.move.xpm%" Center
++ "&Stick%mini.stick.xpm%" Stick
++ "" Nop
++ "$[gt.Raise]%mini.raise3.xpm%" Raise
++ "$[gt.Lower]%mini.lower3.xpm%" Lower
++ "" Nop
++ "Move to &Workspace%mini.move3.xpm%" Popup MenuFvwmMoveToDesk
++ "" Nop
++ "&Close%mini.cross.xpm%" Close
++ "&Kill%mini.destroy.xpm%" Destroy
++ "" Nop
++ "$[gt.Identify]%mini.window.xpm%" Module FvwmIdent
DestroyMenu MenuFvwmMoveToDesk
AddToMenu MenuFvwmMoveToDesk
@@ -584,32 +583,6 @@ AddToMenu MenuFvwmQuitVerify "Really Quit Fvwm?" Title
+ "" Nop
+ "No, Don't Quit" Nop
-DestroyMenu MenuIconOps
-AddToMenu MenuIconOps@fvwm_sidebar3.xpm@
-+ "$[gt.(De)Iconify]" Iconify
-+ "$[gt.(Un)Maximize]" Maximize
-+ "$[gt.(Un)Shade]" WindowShade
-+ "$[gt.(Un)Sticky]" Stick
-+ "$[gt.(No)TitleBar]" Pick (CirculateHit) ToggleTitle
-+ "$[gt.Send To]" Popup MenuFvwmMoveToDesk
-+ "$[gt.Center]" ThisWindow Center
-+ "(&f) Freeze Window Position" ToggleFixedPosition
-+ "(&s) Freeze Window Size" ToggleFixedSize
-+ "(&z) Toggle Closable" ToggleClosable
-+ "" Nop
-+ "$[gt.Close]" Close
-+ "$[gt.Destroy]" Destroy
-+ "" Nop
-+ "$[gt.Raise]" Raise
-+ "$[gt.Lower]" Lower
-+ "" Nop
-+ "$[gt.Stays On Top]" Pick (CirculateHit) Layer 0 6
-+ "$[gt.Stays Put]" Pick (CirculateHit) Layer 0 4
-+ "$[gt.Stays On Bottom]" Pick (CirculateHit) Layer 0 2
-+ "" Nop
-+ "$[gt.Identify]" Module FvwmIdent
-# https://maketintsandshades.com/#554055
-
###=== KEYBINDINGS ===##########################################
#
@@ -731,7 +704,7 @@ DestroyModuleConfig StatusBarIconMan:*
*StatusBarIconMan: TipsFormat "%t"
*StatusBarIconMan: Action Mouse 0 A ret
*StatusBarIconMan: Action Mouse 1 A sendcommand RaiseLower
-*StatusBarIconMan: Action Mouse 3 A sendcommand "Menu MenuIconOps"
+*StatusBarIconMan: Action Mouse 3 A sendcommand "Menu MenuFvwmWindow"
*StatusBarIconMan: Resolution desk
*StatusBarIconMan: Tips needed
*StatusBarIconMan: TipsDelays 100 10
DIR diff --git a/fvwm/.fvwm/icons/mini.arrows.xpm b/fvwm/.fvwm/icons/mini.arrows.xpm
@@ -0,0 +1,53 @@
+/* XPM */
+static char *mini_arrows[] = {
+/* columns rows colors chars-per-pixel */
+"16 16 31 1 ",
+" c black",
+". c #3C0000",
+"X c #002B00",
+"o c #003C00",
+"O c #560000",
+"+ c #6E0000",
+"@ c #770000",
+"# c #005500",
+"$ c #005600",
+"% c #006600",
+"& c #007700",
+"* c #326565",
+"= c #4D6666",
+"- c #910000",
+"; c #AB0000",
+": c #C40000",
+"> c #DC0000",
+", c #EE0000",
+"< c red",
+"1 c #886666",
+"2 c #008000",
+"3 c #009100",
+"4 c #00AB00",
+"5 c #00D500",
+"6 c green",
+"7 c #4DBC66",
+"8 c #4DE666",
+"9 c #669999",
+"0 c #99CCCC",
+"q c #B2E6E6",
+"w c #CBFFFF",
+/* pixels */
+"wqqqqqqqqqqqqqq0",
+"q000000000000009",
+"q00000000 %00009",
+"q000000000%#0009",
+"q08262$$ooX#X009",
+"q00826543&%#X 09",
+"q0008=7=== # 009",
+"q0000 000 % 0009",
+"q000 > 000 00009",
+"q00 , =====1==09",
+"q0 <,>:;-@@.@009",
+"q00<,+OO.@.@0009",
+"q000,>0000000009",
+"q0000> 000000009",
+"q000000000000009",
+"099999999999999*"
+};
DIR diff --git a/fvwm/.fvwm/icons/mini.cross.xpm b/fvwm/.fvwm/icons/mini.cross.xpm
@@ -0,0 +1,24 @@
+/* XPM */
+static char * mini-cross_xpm[] = {
+"16 16 4 1",
+" c None s None",
+". c red",
+"X c #808080",
+"o c black",
+" ",
+" ",
+" . ",
+" ..X ... ",
+" ..X ..... ",
+" .......oo ",
+" .....o ",
+" ....o ",
+" ...... ",
+" ..o ... ",
+" ..o ... ",
+" .o ..X ",
+" .o .o ",
+" o o ",
+" ",
+" "};
+
DIR diff --git a/fvwm/.fvwm/icons/mini.destroy.xpm b/fvwm/.fvwm/icons/mini.destroy.xpm
@@ -0,0 +1,26 @@
+/* XPM */
+static char *mini[] = {
+/* width height num_colors chars_per_pixel */
+" 14 14 5 1",
+/* colors */
+". c None",
+"# c Yellow2",
+"a c Red2",
+"b c Gray40",
+"c c Black",
+/* pixels */
+".........#.#..",
+".......#.#a.#.",
+"........a.#..a",
+"......bbbbb.#.",
+".....b....a.a.",
+"....cc...#.#..",
+"..cccc........",
+".cccccc.......",
+"cccc..cc......",
+"cccccb.c......",
+"cccccb.c......",
+"cccccc.c......",
+".ccccccc......",
+"..cccc........"
+};
DIR diff --git a/fvwm/.fvwm/icons/mini.iconify1.xpm b/fvwm/.fvwm/icons/mini.iconify1.xpm
@@ -0,0 +1,24 @@
+/* XPM */
+static char * window_iconify_xpm[] = {
+"16 16 4 1",
+" c None",
+"O c black",
+"= c navy",
+". c white",
+" ",
+"OOOOOOOOOOO ",
+"O=========O ",
+"O=========OO ",
+"O.........O ",
+"O.........O ",
+"O.........O O ",
+"O.........O ",
+"O.........O ",
+"OOOOOOOOOOO O ",
+" O ",
+" O OOOO ",
+" O O..O ",
+" OOOO ",
+" ",
+" ",
+};
DIR diff --git a/fvwm/.fvwm/icons/mini.lower3.xpm b/fvwm/.fvwm/icons/mini.lower3.xpm
@@ -0,0 +1,26 @@
+/* XPM */
+static char * jlower_xpm[] = {
+"16 16 7 1",
+" s None c None",
+". c steelblue1",
+"X c black",
+"o c white",
+"O c gray60",
+"+ c gray85",
+"@ c gray45",
+" ",
+" ............ ",
+" .X.X.X..X.X. ",
+" ............ ",
+" .ooooOOOOOOOOOO",
+" .oO@OOXOXOOXOXO",
+" .ooo@OOOOOOOOOO",
+" .o@@OO++++++++O",
+"OOOOOOOOO++++++O",
+"XOXOOXOXO++++++O",
+"OOOOOOOOO++++++O",
+"++++++++O++++++O",
+"++++++++O++++++O",
+"++++++++OOOOOOOO",
+"++++++++O ",
+"++++++++O "};
DIR diff --git a/fvwm/.fvwm/icons/mini.maximize1.xpm b/fvwm/.fvwm/icons/mini.maximize1.xpm
@@ -0,0 +1,25 @@
+/* XPM */
+static char * window_maximize_xpm[] = {
+"16 16 5 1",
+" c None",
+"+ c black",
+"O c black",
+"= c navy",
+". c white",
+" ",
+"OO OO OO OO OOO ",
+"OO OO ",
+"O O O O ",
+" OOOOOOOOO ",
+"O O=======O O ",
+"O O.......O O ",
+" O.......O ",
+"O O.......O O ",
+"O O.......O O ",
+" OOOOOOOOO ",
+"O O O O ",
+"OO OO ",
+"OOO OO OO OO OO ",
+" ",
+" ",
+};
DIR diff --git a/fvwm/.fvwm/icons/mini.monitor.xpm b/fvwm/.fvwm/icons/mini.monitor.xpm
@@ -0,0 +1,30 @@
+/* XPM */
+static char * mini_monitor_xpm[] = {
+/* width height ncolors cpp [x_hot y_hot] */
+"16 16 8 1 0 0",
+/* colors */
+" s none m none c none",
+". s iconGray5 m black c #808080",
+"X c #c0c0c0",
+"o s iconColor6 m white c yellow",
+"O s iconColor1 m black c black",
+"+ s iconColor2 m white c white",
+"@ c #000080",
+"# s iconColor5 m black c blue",
+/* pixels */
+" . ",
+"XXXXXXXXXX.oOXXX",
+"X++++++++.ooO++O",
+"X+@@@@@@@oOoO.oO",
+"X+@#####o##oooOO",
+"X+@####ooO#ooO+O",
+"X+@####Ooo##O#+O",
+"X+@#####oO####+O",
+"X+@##oO#######+O",
+"X+@###o#######+O",
+"X+@###########+O",
+"X++++++++++++++O",
+"OOOOOOOOOOOOOOOO",
+" .++++++O ",
+" OOOOOOOOOOOO ",
+" "};
DIR diff --git a/fvwm/.fvwm/icons/mini.move.xpm b/fvwm/.fvwm/icons/mini.move.xpm
@@ -0,0 +1,23 @@
+/* XPM */
+static char * image_name[] = {
+"14 14 6 1",
+" c None",
+". c green",
+"X c yellow",
+"o c cyan",
+"O c white",
+"+ c red",
+" .. ",
+" .... ",
+" ...... ",
+" .. ",
+" X .. o ",
+" XX oo ",
+"XXXXX OO ooooo",
+"XXXXX OO ooooo",
+" XX oo ",
+" X ++ o ",
+" ++ ",
+" ++++++ ",
+" ++++ ",
+" ++ "};
DIR diff --git a/fvwm/.fvwm/icons/mini.move1.xpm b/fvwm/.fvwm/icons/mini.move1.xpm
@@ -0,0 +1,23 @@
+/* XPM */
+static char * mini-move1_xpm[] = {
+"16 16 4 1",
+" c None s None",
+". c black",
+"X c #000080",
+"o c white",
+" ",
+" .. ",
+" .... ",
+" ...... ",
+" .. ",
+" . ........ . ",
+" .. .XXXXXX. .. ",
+".....oooooo.....",
+".....oooooo.....",
+" .. .oooooo. .. ",
+" . ........ . ",
+" .. ",
+" ...... ",
+" .... ",
+" .. ",
+" "};
DIR diff --git a/fvwm/.fvwm/icons/mini.move3.xpm b/fvwm/.fvwm/icons/mini.move3.xpm
@@ -0,0 +1,27 @@
+/* XPM */
+static char * jmove_xpm[] = {
+"16 16 8 1",
+" s None c None",
+". c steelblue1",
+"X c black",
+"o c white",
+"O c gray60",
+"+ c gray45",
+"@ c red",
+"# c gray85",
+" ",
+" ",
+" ............ ",
+" .X.X.X..X.X. ",
+" ............ ",
+" .oooooooooo. ",
+" .oO+OoOOooo. ",
+" .ooo+O@@++O. ",
+" .o++Oo@@@oo. ",
+" .oooOoO@@@o. ",
+" .oO++##O@@@. ",
+" .oooooooo@@@ @",
+" ..........@@@@@",
+" @@@@",
+" @@@@",
+" @@@@@"};
DIR diff --git a/fvwm/.fvwm/icons/mini.raise2.xpm b/fvwm/.fvwm/icons/mini.raise2.xpm
@@ -0,0 +1,21 @@
+/* XPM */
+static char * mini-raise_xpm[] = {
+"16 16 2 1",
+" c None s None",
+". c red",
+" ",
+" . ",
+" ... ",
+" ..... ",
+" ....... ",
+" ......... ",
+" ..... ",
+" ..... ",
+" ... . ",
+" . ... ",
+" .. .. ",
+" . . ",
+" . .. ",
+" . ",
+" . . . ",
+" "};
DIR diff --git a/fvwm/.fvwm/icons/mini.raise3.xpm b/fvwm/.fvwm/icons/mini.raise3.xpm
@@ -0,0 +1,27 @@
+/* XPM */
+static char * jraise_xpm[] = {
+"16 16 8 1",
+" s None c None",
+". c steelblue1",
+"X c black",
+"o c white",
+"O c gray45",
+"+ c gray60",
+"@ c gray70",
+"# c gray85",
+" ",
+" ............ ",
+" .X.X.X..X.X. ",
+" ............ ",
+" .oooooooooo.O++",
+" .o+O+o++ooo.OX+",
+" .oooO+ooOO+.O++",
+" .oOO+oooooo.@#+",
+"+.ooo+o+##oo.@#+",
+"X.o+OO##+++o.@#+",
+"+.oooooooooo.@#+",
+"#............@#+",
+"##@@@@@@O@@@@@#+",
+"########+######+",
+"########++++++++",
+"########+ "};
DIR diff --git a/fvwm/.fvwm/icons/mini.resize3.xpm b/fvwm/.fvwm/icons/mini.resize3.xpm
@@ -0,0 +1,24 @@
+/* XPM */
+static char * mini-resize_xpm[] = {
+"16 16 4 1",
+" c None s None",
+". c black",
+"X c #000080",
+"o c white",
+" ",
+"........... ... ",
+".XXXXXXXXX. . ",
+".XXXXXXXXX. ",
+".ooooooooo. . ",
+".oooooo.oo. . ",
+".ooooo...o. ",
+".oooooo.... . ",
+".ooooooo... . . ",
+"............. ",
+" ... . ",
+". .... . ",
+". . ",
+".. .. .. .. ... ",
+" ",
+" "};
+
DIR diff --git a/fvwm/.fvwm/icons/mini.stick.xpm b/fvwm/.fvwm/icons/mini.stick.xpm
@@ -0,0 +1,20 @@
+/* XPM */
+static char * mini_stick_xpm[] = {
+"14 14 3 1 0 0",
+" c None",
+". c black",
+"X c green",
+" ..... ",
+" .XXXXX. ",
+" .XXXXX. ",
+" ..XXX.. ",
+" .XXX. ",
+" .XXX. ",
+" .XXX. ",
+" .XXX. ",
+" .XXXXX. ",
+" .XXXXXXX. ",
+" ........... ",
+" .X. ",
+" .X. ",
+" .X. "};
DIR diff --git a/fvwm/.fvwm/icons/mini.window.xpm b/fvwm/.fvwm/icons/mini.window.xpm
@@ -0,0 +1,25 @@
+/* XPM */
+static char * file-exe_t_xpm[] = {
+"16 16 6 1",
+" c None s None",
+". c #808080",
+"X c #c0c0c0",
+"o c black",
+"# c white",
+"O c #000080",
+" ",
+"................",
+".XXXXXXXXXXXXX.o",
+".XOOOOOOOOOOOO.o",
+".XOOOOOO#o#o#o.o",
+".X.............o",
+".X############.o",
+".X############.o",
+".X############.o",
+".X############.o",
+".X############.o",
+".X############.o",
+".X############.o",
+"...............o",
+"oooooooooooooooo",
+" "};