openbsd-scripts/fvwmrc

152 lines
4.4 KiB
Plaintext
Executable File

# fvwmrc
# This configuration file customizes FVWM.
###############
# Window styles
###############
HilightColor linen Green
Style "*" Color linen/Gray 3nnnn
WindowFont -adobe-helvetica-bold-r-*-*-18-*-*-*-*-*-*-*
IconFont -adobe-helvetica-bold-r-*-*-18-*-*-*-*-*-*-*
####################################
# Title bar mouse clicking behaviors
####################################
AddToFunc Move-or-Raise "I" Raise
+ "M" Move
+ "D" Maximize
AddToFunc Move-or-Raise2 "M" Raise
+ "M" Movennnnn
+ "D" Lower
AddToFunc Maximize-Func "C" Maximize 100 100
AddToFunc Move-or-Iconify "I" Raise
+ "M" Move
+ "D" Iconify
AddToFunc Resize-or-Raise "I" Raise
+ "M" Resize
+ "D" Lower
AddToFunc Resize-or-Raise2 "M" Raise
+ "M" Resize
+ "D" Lower
AddToFunc Iconify-and-Raise "I" Iconify
+ "I" Raise
############################
# Title bar button behaviors
############################
Mouse 0 6 A Iconify
Mouse 0 4 A Maximize-Func
Mouse 0 2 A Close
Mouse 1 FS A Resize-or-Raise
Mouse 1 I A Move-or-Iconify
Mouse 1 T A Move-or-Raise
#############
# Progam menu
#############
# Commands
AddToMenu CommandMenu "Command Menu" Title
+ "Audacity" exec audacity &
+ "Calculator" exec xcalc &
+ "Chromium" exec chrome &
+ "Emacs" exec lxterminal -e emacs &
+ "Firefox" exec firefox &
+ "Filezilla" exec filezilla &
+ "Gimp" exec gimp &
+ "LibreOffice" exec libreoffice &
+ "LXTerminal" exec lxterminal -l &
+ "NetSurf" exec netsurf-gtk3 &
+ "VLC" exec vlc &
+ "Wireshark" exec wireshark &
+ "Xterm" exec xterm &
+ "" Nop
+ "Restart FVM" Restart fvwm
+ "Lock Screen" exec xlock &
+ "Logout" FvwmForm QuitVerify
+ "Reboot" FvwmForm RebootVerify
+ "Shutdown" FvwmForm ShutdownVerify
# Logout
*QuitVerifyGrabServer
*QuitVerifyWarpPointer
*QuitVerifyLine center
*QuitVerifyText "Do you really want to logout?"
*QuitVerifyLine expand
*QuitVerifyButton quit "Logout" ^M
*QuitVerifyCommand Quit
*QuitVerifyButton quit "Cancel" ^[
*QuitVerifyCommand Nop
Style "QuitVerify" NoTitle, NoHandles, BorderWidth 3
# Reboot
*RebootVerifyGrabServer
*RebootVerifyWarpPointer
*RebootVerifyLine center
*RebootVerifyText "Do you really want to reboot?"
*RebootVerifyLine expand
*RebootVerifyButton quit "Reboot" ^M
*RebootVerifyCommand exec /usr/bin/doas /sbin/reboot
*RebootVerifyButton quit "Cancel" ^[
*RebootVerifyCommand Nop
Style "RebootVerify" NoTitle, NoHandles, BorderWidth 3
# Shutdown
*ShutdownVerifyGrabServer
*ShutdownVerifyWarpPointer
*ShutdownVerifyLine center
*ShutdownVerifyText "Do you really want to shutdown?"
*ShutdownVerifyLine expand
*ShutdownVerifyButton quit "Shutdown" ^M
*ShutdownVerifyCommand exec /usr/bin/doas /sbin/halt -p
*ShutdownVerifyButton quit "Cancel" ^[
*ShutdownVerifyCommand Nop
Style "ShutdownVerify" NoTitle, NoHandles, BorderWidth 3
# Mouse actions, depending on location
Mouse 1 R A Menu CommandMenu Nop
Mouse 2 R A Menu Global-Window-Ops Nop
Mouse 3 R A WindowList
# Keep the last focus while in root window
Style "*" SloppyFocus
# Windows auto-raise after these many milliseconds
Module FvwmAuto 300
# Down and up in less than these milliseconds to be considered a click
ClickTime 250
# Opaque moves up to 100% of the screen size
OpaqueMoveSize 100
# Prevent a window from extending off the screen
DeskTopSize 1 1
# Use smart window placement when available to prevent overlap
Style "*" SmartPlacement
Style "*" RandomPlacement
# Window styles
Style "Fvwm*" NoTitle, Sticky, WindowListSkip, NoHandles, BorderWidth 0
# Using vectors, on the left draw a button that leads to a close menu
# On the right, draw three buttons: minimise, maximise, close
ButtonStyle 2 Vector 16 20x20@1 30x20@1 50x40@1 70x20@1 80x20@1 80x30@0 60x50@0 80x80@0 70x80@0 50x60@0 30x80@0 20x80@0 20x70@0 40x50@1 20x30@0 20x20@1
# Minimise button style
ButtonStyle 6 Vector 4 50x75@1 25x25@1 75x25@1 50x75@0
# Maximise button style
ButtonStyle 4 Vector 4 50x25@1 75x75@0 25x75@0 50x25@1
# Line up windows
SnapAttraction 10
# Icons go in bottom left
Style "*" IconBox 0 1030 750 1550