Added "Window Operation Menu" from "FVWM Beginners Guide" by Jaimos F Skriletz.
Added screenshot functions and key binding for it.
--- a/.fvwm/config Fri Jan 16 20:44:22 2009 +0200
+++ b/.fvwm/config Fri Jan 16 22:29:26 2009 +0200
@@ -4,8 +4,10 @@
# Set Environment variables.
############################
-SetEnv fvwm_img $[FVWM_USERDIR]/images
+SetEnv fvwm_home $[HOME]/.fvwm
+SetEnv fvwm_img $[FVWM_USERDIR]/images
SetEnv fvwm_icon $[FVWM_USERDIR]/icons
+SetEnv screenshot_home $[HOME]/.screenshot
#####################
# Set the image path.
@@ -51,6 +53,25 @@
Style "FvwmTaskBar" NoTitle, !Handles, !Borders, Sticky, WindowListSkip, CirculateSkip, StaysOnBottom, FixedPosition, FixedSize, !Iconifiable
+##########################################
+# Screenshot Functions (uses ImageMagick).
+##########################################
+
+DestroyFunc FvwmWindowScreenshot
+AddToFunc FvwmWindowScreenshot
++ I Exec import -window $[w.id] -quality 100 -silent \
+ "$[screenshot_home]/$[w.class]-`date +%F[%R]`.jpg"
+
+DestroyFunc FvwmDesktopScreenshot
+AddToFunc FvwmDesktopScreenshot
++ I Exec sleep 2; import -window root -quality 100 -silent \
+ "$[screenshot_home]/Desktop-`date +%F-[%H:%M:%S]`.jpg"
+
+DestroyFunc FvwmScreenshot
+AddToFunc FvwmScreenshot
++ I Exec import -quality 100 -silent \
+ "$[screenshot_home]/App-`date +%F-[%H:%M:%S]`.jpg"
+
##################
# Basic Functions.
##################
@@ -134,6 +155,9 @@
# Key binding.
# ############
+# Key [(window)] Keyname Context Modifiers Function
+# See Keyname on /usr/include/X11/keysymdef.h, without the XK_ prefix.
+
Key F1 A M Menu MenuFvwmRoot Root c c
Key Super_L W CSM Delete
@@ -154,6 +178,10 @@
# Close window on Alt+F4 (send SIGHUP).
Key F4 A M Delete
+# Make screenshot.
+Key Print A N FvwmScreenshot
+Key Print A S FvwmDesktopScreenshot
+
###############
# Window Decor.
###############
@@ -201,6 +229,38 @@
+ my Popup MenuMy
+ fvwm Popup MenuFvwmRoot
+########################
+# Window Operation Menu.
+########################
+
+# From "FVWM Beginners Guide" by Jaimos F Skriletz.
+
+DestroyMenu FvwmWindowOpsMenu
+AddToMenu FvwmWindowOpsMenu "Window Operations" Title
++ "Move%menu/window-move.xpm%" Move
++ "Resize%menu/window-resize.xpm%" Resize
++ "(De)Iconify%menu/window-iconify.xpm%" Iconify
++ "(Un)Maximize%menu/window-maximize.xpm%" Maximize
++ "(Un)Shade%menu/window-shade.xpm%" WindowShade
++ "(Un)Stick%menu/window-stick.xpm%" Stick
++ "" Nop
++ "Close%menu/window-close.xpm%" Close
++ "Delete%menu/window-delete.xpm%" Delete
++ "Destroy%menu/window-destroy.xpm%" Destroy
++ "" Nop
++ "StaysOnTop%menu/window-raise.xpm%" Pick (CirculateHit) Layer 0 6
++ "Layer +1%menu/window-raise.xpm%" Pick (CirculateHit) Layer +1
++ "StaysPut%menu/window.xpm%" Pick (CirculateHit) Layer 0 4
++ "Layer -1%menu/window-lower.xpm%" Pick (CirculateHit) Layer -1
++ "StaysOnBottom%menu/window-lower.xpm%" Pick (CirculateHit) Layer 0 2
++ "" Nop
++ "%menu/window.xpm%App Screenshot" Pick (CirculateHit) FvwmWindowScreenshot
++ "Screenshot" FvwmDesktopScreenshot
++ "" Nop
++ "Identify%menu/window-identify.xpm%" Module FvwmIdent
+
+Mouse 3 R A Menu FvwmWindowOpsMenu
+
# ##########
# FvwmPager.
# ##########