Skip to content

Instantly share code, notes, and snippets.

@rfht
Created April 30, 2020 09:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rfht/301eb38660daff053f1ec33c0d9a751e to your computer and use it in GitHub Desktop.
Save rfht/301eb38660daff053f1ec33c0d9a751e to your computer and use it in GitHub Desktop.
.fvwm2rc
# be sure to customize these paths for your installation:
ModulePath /usr/local/libexec/fvwm/2.6.9
# PixmapPath and IconPath are deprecated. Use ImagePath instead
ImagePath /usr/local/share/pixmaps/fvwm
Colorset 23 Transparent, fg rgb:ff/ff/c4, bg darkgray # not working with base fvwm
Colorset 41 RootTransparent buffer, fg white, bg average, \
Tint yellow 15, bgTint yellow 15 # tint is optional
Colorset 42 RootTransparent buffer, fg white, bg average, \
Tint gray 15, bgTint gray 15 # tint is optional
Colorset 43 RootTransparent buffer, fg white, bg black
Colorset 44 Transparent, fg rgb:ff/ff/c4, bg darkgray
Colorset 45 fg white, bg rgb:20/20/20
Colorset 46 fg black, bg steelblue1 # high contrast
Colorset 47 fg black, bg rgb:f5/f5/f5 # high contrast
Colorset 48 fg white, bg black
Colorset 49 fg white, bg red # urgency
EdgeThickness 0 # disables edge scroll
*FvwmEvent: deiconify DeThumbnail
AddToFunc StartFunction
+ I Exec /usr/local/bin/fvwm-root -r $HOME/Wallpapers/the_great_aletsch_glacier_alps_mountains_switzerland-wallpaper-5120x2880.png
+ I Module FvwmAnimate
+ I Module FvwmEvent
# make sure these fonts exist on your system:
#WindowFont -misc-spleen-bold-r-*-*-16-*-*-*-*-*-*-*
WindowFont "xft:DejaVu Sans:size=10"
#IconFont -misc-spleen-bold-r-*-*-8-*-*-*-*-*-*-*
IconFont "xft:DejaVu Sans:size=8"
HilightColor #bebebe blue
#MenuStyle #4d4d4d #bebebe #e7e7e7 -misc-spleen-bold-r-*-*-16-*-*-*-*-*-*-* fvwm
#MenuStyle MenuColorset 23 # not working
# error in this Style specification (Font missing):
MenuStyle * Font "xft:DejaVu Sans:size=8"
#MenuStyle * MenuFace Solid White
MenuStyle * MenuColorset 23
DeskTopSize 1x1
OpaqueMoveSize 100
ColormapFocus FollowsMouse
DestroyDecor Default
AddToDecor Default
+ TitleStyle LeftJustified
+ TitleStyle -- Flat
+ ButtonStyle All -- UseTitleStyle
+ ButtonStyle 1 Active Colorset 46 -- Flat
+ ButtonStyle 1 Inactive Colorset 47 -- Flat
+ AddButtonStyle 1 MiniIcon -- Flat
#+ BorderStyle -- Flat HiddenHandles NoInset
# replace UrgencyFunc (what to do when window is marked urgent)
DestroyFunc UrgencyFunc
AddToFunc UrgencyFunc
+ I ThisWindow ($[w.id]) TitleStyle Colorset 49 -- flat
#+ I WindowId $0 TitleStyle Colorset 49 -- flat
#+ I State 2 True # Set State 2 for Urgency state
DestroyFunc UrgencyDoneFunc
AddToFunc UrgencyDoneFunc
+ I ThisWindow ($[w.id]) TitleStyle AllActive Colorset 46 -- flat
+ I ThisWindow ($[w.id]) TitleStyle AllInactive Colorset 47 -- flat
#+ I Nop
#+ I WindowId $0 TitleStyle AllActive Colorset 46 -- flat
#+ I WindowId $0 TitleStyle AllInactive Colorset 47 -- flat
#+ I State 2 False # Set urgency state to false
# default Styles:
Style "*" UseDecor Default
Style "*" HandleWidth 3
Style "*" Icon unknown1.xpm
Style "*" MWMFunctions, MWMDecor, HintOverride
Style "*" DecorateTransient
Style "*" IconBox 0 -10 -280 -1
Style "*" SloppyFocus
Style "*" RandomPlacement, SmartPlacement
Style "*" ResizeOpaque
Style "*" SnapAttraction 16 Screen
Style * ResizeHintOverride
HilightColor black black
BorderStyle Inactive Colorset 48 -- flat
BorderStyle Active Colorset 45 -- flat
TitleStyle AllActive Colorset 46 -- flat
TitleStyle AllInactive Colorset 47 -- flat
# some simple default key bindings:
Key Next A SCM Next [*] Focus
Key Prior A SCM Prev [*] Focus
# some simple default mouse bindings:
# for the root window:
Mouse 1 R N Menu RootMenu Nop
Mouse 2 R N Menu Window-Ops Nop
Mouse 3 R N WindowList
# window title:
Mouse 1 T N Move-or-Raise-or-Maximize
Mouse 2 T N Close # middle mouse button to close window
Mouse 3 T N Iconify
Mouse 0 1 N Nop # add the left title button that holds icon
# iconified windows:
Mouse 1 I N Move-or-Iconify
Mouse 2 I N Thumbnail
# Menus
AddToMenu RootMenu
+ "XTerm" Exec exec xterm
+ "rofi" Exec exec rofi -modi combi -show combi
+ "FvwmConsole" Module FvwmConsole
+ "Restart Fvwm2" Restart
+ "Quit" Module FvwmForm FvwmForm-QuitVerify
# Functions
DestroyFunc DblClickMaximize
AddToFunc DblClickMaximize
+ D Maximize
DestroyFunc Move-or-Raise-or-Maximize
AddToFunc Move-or-Raise-or-Maximize
+ I Raise
+ M Move
+ D Maximize
DestroyFunc Move-or-Iconify
AddToFunc Move-or-Iconify
+ I Raise
+ M Move
+ D Iconify
DestroyFunc Iconify-and-Raise
AddToFunc Iconify-and-Raise
+ I Iconify
+ I Raise
DestroyFunc Thumbnail
AddToFunc Thumbnail
+ I Raise
+ I ThisWindow (!Shaded, Iconifiable, !Iconic) PipeRead \
"xwd -silent -id $[w.id] | convert -scale 64 -frame 1x1 \
-mattecolor black -quality 0 xwd:- \
png:$[FVWM_USERDIR]/icon.tmp.$[w.id].png \
&& echo WindowStyle IconOverride, \
Icon $[FVWM_USERDIR]/icon.tmp.$[w.id].png \
|| echo Nop"
+ I Iconify
DestroyFunc DeThumbnail
AddToFunc DeThumbnail
+ I Exec rm -f $[FVWM_USERDIR]/icon.tmp.$[w.id].png
+ I DestroyWindowStyle
# keyboard shortcuts.
Key Tab A M WindowList Root c c NoDeskSort, NoGeometry # Alt-Tab switching
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment