When it comes to functions the cleaner format might be to use a variant of the
Bourne/Bash/"C" format such as this:
function name(arg1, arg2, ... argN)
{
<processing>
return <return status> (defaults to 0 if not specified)
}
White space would be irrelevant, whether tabs or spaces are used. Actual
desired white space would be in "" or '' sequences as programming languages
require now. Command on the same line could separated by ";" as most scripting
and programming languages use. Lines could be continued with "\" if desired.
Variable would be local in scope unless the InfoStoreAdd reference method is
used, i.e.
InfoStoreAdd xtermopts "-sb -sl 2000 -aw -rw -j -ls -fn 7x14 -fb
7x14bold"
and then referenced as done now:
+ I exec xterm $[infostore.xtermopts] $[infostore.geo2]+0+0 &
with the sequence "$[ var.name ]" sequence. And the sequence "{ }" would
identify the start and ending of the function's body. The "function" keyword
could be "AddFunction". An alternate format could be:
AddFunction name(arg1, arg2, ... argN)
<processing>
return <return status> (defaults to 0 if not specified)
EndFunction
Where the keyword "AddFunction" defines the name of the function and list of
argument references, and the keyword "EndFunction" specifies that the function
end point. Or even something like this where keywords are used to define
things in different method:
AddFunction name
FunctionArg arg1
FunctionArg arg2
.
.
.
FunctionArg argN
BeginFunction
<processing>
return <return status> (defaults to 0 if not specified)
EndFunction
The AddFunction keyword could even be extended to specify a program (i.e.
perl,, php, bash, etc.) to execute the script - say using the format:
AddFunction name execuute-by
>From my perspective the first and second formats make more sense.
Keep in mind my .fvwm2 file is pretty simple and based upon the existing
default. I use a single 24x4 window paging environment. I added my .fvwm2rc
file as fvwm2rc for reference. I did some cleanup formatting for the regular
comments.
Don
John Wiggins wrote on 09/21/2016 11:31 PM:
> The python method has some serious defficiencies when applied to input files
> like .fvwmrc2, i.e. white space you cannot see (space vs tab) matters and
> cause read errors that drive you crazy…
>
> IMO, the
> BlockB {
> line1,
> line2,
> line3_and_white_space_doesNotMatter,
> So_This_isValid,
> andSPACESORTABS_DO_NOT_MATTER}
>
>
>> BlockB {
>> line1,
>> line2,
>> line3,
>> line4
>> }
>
>> On Sep 21, 2016, at 9:49 PM, elliot s <[email protected]> wrote:
>>
>> <<
>> BlockA \
>> line1, \
>> line2, \
>> line3, \
>> line4
>>
>> Is less visually appealing and can be more difficult locate errors than
>>
>> BlockB {
>> line1,
>> line2,
>> line3,
>> line4
>> }
>>>>
>>
>> There's the python method of blocking....using indentation. WYSIWYG
>> I was skeptical at first, but now i like it.
>>
>> if x: # note the :
>> y=z
>> a=1
>> if n:
>> a=3
>> b=1
>> else:
>> b = 0
>> print a,b
>> print y
>>
>
>
#########################################################################################
#
#
# .fvwm2rc
R00-00.06 #
#
#
#
=====================================================================================
#
#
#
# Purpose:
#
#
#
#
#
#
=====================================================================================
#
#
#
# Arguments:
#
#
#
# This file is copied to a new user's FVWM_USERDIR by FvwmForm-Setup form.
#
# This file contains the commands fvwm reads while starting.
#
#
#
#
=====================================================================================
#
#
#
# Programming Notes:
#
#
#
# xclock -digital -padding 4 -update 10 -geometry 300x26+800-0 \
#
# -strftime "%a %d %b %Y %I:%M:%S %p %Z vm" &
#
#
#
# xclock -digital -padding 4 -update 10 -geometry 300x26+800-0 \
#
# -strftime "%a %d/%b/%Y %H:%M:%S %Z"
#
#
#
#
=====================================================================================
#
#
#
# Revision:
#
#
#
# Revision Who When Why
#
# ========= =========== ===========
================================================ #
# R00-00.00 DRLJr/I-AS 01/Dec/2014 Header added and other formatting done.
#
# R00-00.01 DRLJr/I-AS 04/Mar/2015 Added other focus options as comments.
#
# R00-00.02 DRLJr/I-AS 06/May/2015 Change geo1 size for top support.
#
# R00-00.03 DRLJr/I-AS 15/Jun/2015 Turned off adding of 4 xterms at
start-up. The #
# functionality will be added to
do_openxterms. #
# R00-00.04 DRLJr/I-AS 18/Sep/2015 Added VLC and disable some items not
used. #
# R00-00.05 DRLJr/I-AS 07/Jun/2016 Added geo2 and activated 3 xterms on
startup. #
# R00-00.06 DRLJr/I-AS 06/Jul/2016 Change the selection of top to put the
display #
# in a specific location in the viewport
based #
# upon a 1920x1080 screen setup.
#
#
#
#########################################################################################
#=======================================================================================#
#
#
#=======================================================================================#
#InfoStoreAdd xtermopts "-sb -sl 2000 -aw -rw +t -j -ls -fn 7x14 -fb 7x14bold"
InfoStoreAdd xtermopts "-sb -sl 2000 -aw -rw -j -ls -fn 7x14 -fb 7x14bold"
InfoStoreAdd xtermt "-title $[HOSTDISPLAY]"
InfoStoreAdd xtermn "-n $[HOSTDISPLAY]"
InfoStoreAdd geo0 "-g 99x55"
#InfoStoreAdd geo1 "-g 99x52"
InfoStoreAdd geo1 "-g 99x42"
InfoStoreAdd geo2 "-g 72x50"
InfoStoreAdd pagerloc "720x80+0-0"
InfoStoreAdd clockopts "-digital -padding 4 -update 10 -geometry 300x26+725-0"
#=======================================================================================#
#
#
#=======================================================================================#
#EdgeResistance 250 10
EdgeScroll 100 100
ClickTime 750
EdgeResistance -1
Style * EdgeMoveDelay 250
Style * EdgeMoveResistance 20
#DeskTopSize 2x2
DeskTopSize 24x4
MenuStyle * fvwm, Foreground white, Background cornflowerblue, Greyed grey40
MenuStyle * Font -adobe-times-bold-r-*-*-14-*-*-*-*-*-*-*
ColormapFocus FollowsMouse
#=======================================================================================#
# Default Styles: Make sure these fonts exist on your system.
#
#=======================================================================================#
Style * Font -adobe-times-bold-r-*-*-12-*-*-*-*-*-*-*
Style * IconFont -adobe-times-bold-r-*-*-12-*-*-*-*-*-*-*
Style * HilightFore black, HilightBack cornflowerblue
#Style * BorderWidth 7, HandleWidth 7
Style * BorderWidth 4, HandleWidth 4
Style * Icon unknown1.xpm, Color lightgrey/dimgrey
Style * MWMFunctions, MWMDecor, HintOverride
Style * DecorateTransient, NoPPosition
Style * IconBox 0 -10 -280 -1
#Style * FocusFollowsMouse
Style * TileCascadePlacement
#=======================================================================================#
# Styles for various Fvwm modules.
#
#=======================================================================================#
Style Fvwm* NoTitle, Sticky, WindowListSkip
Style Fvwm* BorderWidth 2, CirculateSkipIcon, CirculateSkip
#Style FvwmPager StaysOnTop
Style FvwmPager Sticky
Style FvwmBanner StaysOnTop
Style FvwmButtons Icon toolbox.xpm, ClickToFocus
#=======================================================================================#
# Styles for common terminal emulator programs. xterms and rxvts in separate a
icon #
# box.
#
#=======================================================================================#
Style XTerm Icon xterm.xpm, SloppyFocus, IconBox -70 1 -1 -140
Style rxvt Icon term.xpm, SloppyFocus, IconBox -70 1 -1 -140
Style rxvt MWMBorder, MWMButtons
#=======================================================================================#
# Styles for various common programs
#
#=======================================================================================#
Style *lock NoTitle, NoHandles, Sticky, WindowListSkip, ClickToFocus
Style xbiff NoTitle, Sticky, WindowListSkip, ClickToFocus
#Style xcalc Icon xcalc.xpm, NoButton 2,ClickToFocus
Style fcalc Icon xcalc.xpm, NoButton 2,ClickToFocus
Style xmh Icon mail1.xpm, NoIconTitle,StickyIcon
Style xmh NoButton 2
Style xman Icon xman.xpm, ClickToFocus
Style xmag Icon mag_glass.xpm, ClickToFocus
Style xgraph Icon graphs.xpm, ClickToFocus
Style xmosaic Color Green/Yellow, ClickToFocus
#=======================================================================================#
# Key Bindings
#
#=======================================================================================#
#---------------------------------------------------------------------------------------#
# 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 A Menu MenuFvwmRoot Nop
Mouse 2 R A Menu MenuFvwmWindowOps Nop
Mouse 3 R A WindowList
#---------------------------------------------------------------------------------------#
# Some simple default mouse bindings: For the title bar button
#
#---------------------------------------------------------------------------------------#
Mouse 0 1 A Menu MenuFvwmWindowOps2 Close
Mouse 0 2 A FuncFvwmMaximize
Mouse 0 4 A Iconify
#---------------------------------------------------------------------------------------#
# Some simple default mouse bindings: For other parts of the
window/borders/icons #
#---------------------------------------------------------------------------------------#
Mouse 1 F A FuncFvwmResizeOrRaise
Mouse 1 TS A FuncFvwmMoveOrRaise
Mouse 1 I A FuncFvwmMoveOrIconify
Mouse 2 I A Iconify
Mouse 2 FST A Menu MenuFvwmWindowOps2 Nop
Mouse 3 TSIF A RaiseLower
#=======================================================================================#
# Initialization Functions
#
#=======================================================================================#
#---------------------------------------------------------------------------------------#
# Start Function Initialization
#
#---------------------------------------------------------------------------------------#
AddToFunc StartFunction
+ I Module FvwmAnimate
+ I Module FvwmBanner
+ I Module FvwmButtons
+ I Module FvwmPager
#---------------------------------------------------------------------------------------#
# Init Function Initialization
#
#---------------------------------------------------------------------------------------#
AddToFunc InitFunction
#
#+ I exec xsetroot -mod 2 2 -fg rgb:55/40/55 -bg rgb:70/50/70
#+ I exec xterm $[infostore.xtermopts] $[infostore.geo0]+0+900
$[infostore.xtermt]-2 $[infostore.xtermn]-2 &
#+ I exec xterm $[infostore.xtermopts] $[infostore.geo0]+720+900
$[infostore.xtermt]-3 $[infostore.xtermn]-3 &
#+ I exec xterm $[infostore.xtermopts] $[infostore.geo0]+0+2700
$[infostore.xtermt]-4 $[infostore.xtermn]-4 &
#+ I exec xterm $[infostore.xtermopts] $[infostore.geo0]+720+2700
$[infostore.xtermt]-5 $[infostore.xtermn]-5 &
#
#+ I exec xterm $[infostore.xtermopts] $[infostore.geo0]+0+0
$[infostore.xtermt]-0 $[infostore.xtermn]-0 &
#+ I exec xterm $[infostore.xtermopts] $[infostore.geo1]+720+0
$[infostore.xtermt]-1 $[infostore.xtermn]-1 &
#
+ I exec xterm $[infostore.xtermopts] $[infostore.geo2]+0+0
$[infostore.xtermt]-0 $[infostore.xtermn]-0 &
+ I exec xterm $[infostore.xtermopts] $[infostore.geo2]+530+0
$[infostore.xtermt]-0 $[infostore.xtermn]-0 &
+ I exec xterm $[infostore.xtermopts] $[infostore.geo2]+1060+0
$[infostore.xtermt]-0 $[infostore.xtermn]-0 &
#
+ I exec xclock $[infostore.clockopts] &
#---------------------------------------------------------------------------------------#
# Session Init Function Initialization : For some SM-s (like gnome-session)
there is an #
# internal background setter.
#
#---------------------------------------------------------------------------------------#
AddToFunc SessionInitFunction
+ I Nop
#=======================================================================================#
# Menus
#
#=======================================================================================#
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmRoot
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmRoot
AddToMenu MenuFvwmRoot "$[gt.Root Menu]" Title
+ "&1. Xterm" Exec exec xterm
$[infostore.xtermopts] $[infostore.geo0] $[infostore.xtermt]
$[infostore.xtermn]
+ "&2. Rxvt" Exec exec rxvt
+ "" Nop
+ "&R. $[gt.Remote Logins]" Popup MenuFvwmLogins
+ "" Nop
+ "&U. $[gt.Utilities]" Popup MenuFvwmUtilities
+ "" Nop
+ "&M. $[gt.Fvwm Modules]" Popup MenuFvwmModules
+ "&W. $[gt.Fvwm Window Ops]" Popup MenuFvwmWindowOps
+ "&S. $[gt.Fvwm Config Ops]" Popup MenuFvwmConfig
+ "" Nop
+ "&F. $[gt.Refresh Screen]" Refresh
+ "&C. $[gt.Recapture Screen]" Recapture
+ "" Nop
+ "&X. $[gt.Exit Fvwm]" Popup MenuFvwmQuitVerify
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmUtilities
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmUtilities
AddToMenu MenuFvwmUtilities "$[gt.Utilities]" Title
#+ "&T. Top" Exec exec xterm -T Top -n Top -e top
+ "&T. Top" Exec exec xterm -T Top -n Top
-geometry 87x18+529-83 -e top
+ "" Nop
#+ "&C. Calculator" Exec exec xcalc
+ "&C. Calculator" Exec exec kcalc
+ "" Nop
+ "&S. Seamonkey" Exec exec /usr/bin/seamonkey
+ "&X. Xmms" Exec exec xmms -m
+ "&V. VLC" Exec exec vlc
+ "" Nop
#+ "&M. Xman" Exec exec xman
#+ "&G. Xmag" Exec exec xmag
+ "&R. Editres" Exec exec editres
#+ "" Nop
#+ "&E. XEmacs" Exec exec xemacs
#+ "&A. Xmh Mail" FuncFvwmMailXmh xmh "-font fixed"
#+ "" Nop
#+ "&L. XLock" Exec exec xlock -mode random
+ "&L. XLock" Exec exec xlock -mode blank
+ "" Nop
+ "&D. $[gt.Reset X defaults]" Exec xrdb -load
$HOME/.Xdefaults
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmConfig
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmConfig
AddToMenu MenuFvwmConfig "$[gt.Fvwm Config Ops]" Title
+ "&S. $[gt.Sloppy Focus]" FuncFvwmFocusPolicyChange SloppyFocus
+ "&C. $[gt.Click To Focus]" FuncFvwmFocusPolicyChange ClickToFocus
+ "&F. $[gt.Focus Follows Mouse]" FuncFvwmFocusPolicyChange FocusFollowsMouse
+ "" Nop
+ "&1. $[gt.Colormap Follows Mouse]" ColormapFocus FollowsMouse
+ "&2. $[gt.Colormap Follows Focus]" ColormapFocus FollowsFocus
+ "" Nop
+ "&3. $[gt.Full Paging ON]" EdgeScroll 100 100
+ "&4. $[gt.All Paging OFF]" EdgeScroll 0 0
+ "&5. $[gt.Horizontal Paging Only]" EdgeScroll 100 0
+ "&6. $[gt.Vertical Paging Only]" EdgeScroll 0 100
+ "&7. $[gt.Partial Paging]" EdgeScroll 50 50
+ "&8. $[gt.Full Paging && Edge Wrap]" EdgeScroll 100000 100000
#---------------------------------------------------------------------------------------#
# Create Menu: FvwmWindowCommon
#
# The window Ops menus exhibit a different HotKey style. There are 2 versions
of the #
# WindowOps Menu, meant to be bound to different things. This is the "common"
part. #
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmWindowCommon
AddToFunc FuncFvwmWindowCommon
+ I AddToMenu $0 "$[gt.&Move]" Move
+ I AddToMenu $0 "$[gt.&Resize]" Resize
+ I AddToMenu $0 "$[gt.R&aise]" Raise
+ I AddToMenu $0 "$[gt.&Lower]" Lower
+ I AddToMenu $0 "$[gt.(De)&Iconify]" Iconify
+ I AddToMenu $0 "$[gt.(Un)&Stick]" Stick
+ I AddToMenu $0 "$[gt.(Un)Ma&ximize]" Maximize
+ I AddToMenu $0 "" Nop
+ I AddToMenu $0 "$[gt.&Delete]" Delete
+ I AddToMenu $0 "$[gt.&Close]" Close
+ I AddToMenu $0 "$[gt.Destroy]" Destroy
+ I AddToMenu $0 "" Nop
#---------------------------------------------------------------------------------------#
# Create Menu: FvwmWindowOps
#
# First windowops menu, bound to: mouse 2 on root, Root menu
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmWindowOps
AddToMenu MenuFvwmWindowOps "$[gt.Window Ops]" Title
FuncFvwmWindowCommon MenuFvwmWindowOps
+ "$[gt.Re&fresh Window]" RefreshWindow
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmWindowOps2
#
# Second windowops menu, bound to: any mouse on titlebar button 1, mouse 2 on
frame, #
# side or titlebar
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmWindowOps2
AddToMenu MenuFvwmWindowOps2
FuncFvwmWindowCommon MenuFvwmWindowOps2
+ Scroll&Bar Module FvwmScroll 2 2
+ "&$[gt.Print]" FuncFvwmPrint
+ "$[gt.Print Re&verse]" FuncFvwmPrintReverse
#---------------------------------------------------------------------------------------#
# Create Menu: FuncFvwmRloginXterm
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmRloginXterm
AddToFunc FuncFvwmRloginXterm \
I Exec xterm -name $0 -title "$USER @ $0" -e rlogin $0
#---------------------------------------------------------------------------------------#
# Create Menu: FuncFvwmRloginRxvt
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmRloginRxvt
AddToFunc FuncFvwmRloginRxvt \
I Exec rxvt -name $0 -n $0 -title $USER@$0 -e rlogin $0
#---------------------------------------------------------------------------------------#
# Create Menu: FuncFvwmRloginSshRxvt
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmRloginSshRxvt
AddToFunc FuncFvwmRloginSshRxvt \
I Exec exec ssh $0 rxvt -display $HOSTDISPLAY
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmLogins (fill these in with your correct machine names)
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmLogins
AddToMenu MenuFvwmLogins
#+ &dopey FuncFvwmRloginXterm dopey
#+ &snoopy FuncFvwmRloginXterm snoopy
+ dns1 FuncFvwmRloginSshRxvt dns1
+ dns2 FuncFvwmRloginSshRxvt dns2
+ s&ignal Exec rxterm signal
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmModules
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmModules
AddToMenu MenuFvwmModules "$[gt.Fvwm Modules]" Title
+ "&1. $[gt.Control Animation]" Popup MenuFvwmAnimate
+ "&B. Button-Bar" Module FvwmButtons
+ "&O. IconBox" FuncFvwmConfigureIconBox
+ "&F. Forms" Popup MenuFvwmForms
+ "&I. Identify" Module FvwmIdent
+ "&M. IconMan" Module FvwmIconMan
+ "&N. Banner" Module FvwmBanner
+ "&C. Console" Module FvwmConsole
+ "&P. Pager" Module FvwmPager 0 0
+ "&2. Pager (2 $[gt.desks])" Module FvwmPager 0 1
+ "&R. Backer" Module FvwmBacker
+ "&S. ScrollBar" Module FvwmScroll 50 50
+ "&T. FvwmTaskBar" Module FvwmTaskBar
+ "&U. AutoRaise" Module FvwmAuto 200 Raise Nop
+ "&W. WinList" Module FvwmWinList
+ "&X. $[gt.Stop Module Menu]" Popup MenuFvwmStopModule
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmStopModule
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmStopModule
AddToMenu MenuFvwmStopModule "$[gt.Stop Fvwm Modules]" Title
+ "&B. $[gt.Stop] Button-Bar" KillModule FvwmButtons
+ "&O. $[gt.Stop] IconBox" KillModule FvwmIconBox
+ "&M. $[gt.Stop] IconMan" KillModule FvwmIconMan
+ "&P. $[gt.Stop] Pager" KillModule FvwmPager
+ "&R. $[gt.Stop] Backer" KillModule FvwmBacker
+ "&S. $[gt.Stop] ScrollBar" KillModule FvwmScroll
+ "&T. $[gt.Stop] FvwmTaskBar" KillModule FvwmTaskBar
+ "&U. $[gt.Stop] AutoRaise" KillModule FvwmAuto
+ "&W. $[gt.Stop] WinList" KillModule FvwmWinList
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmForms
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmForms
AddToMenu MenuFvwmForms
+ "&C. Capture" Module FvwmForm FvwmForm-Capture
+ "&D. Form Defaults" Module FvwmForm FvwmForm-Form
+ "&R. Rlogin" Module FvwmForm FvwmForm-Rlogin
+ "&P. RootCursor" Module FvwmForm FvwmForm-RootCursor
+ "&S. Setup" Module FvwmForm FvwmForm-Setup
+ "&T. Talk Form" Module FvwmForm FvwmForm-Talk
+ "&Q. QuitVerify" Module FvwmForm FvwmForm-QuitVerify
#---------------------------------------------------------------------------------------#
# Create Menu: FuncFvwmConfigureIconBox (Configure/start using an iconbox on
the fly) #
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmConfigureIconBox
AddToFunc FuncFvwmConfigureIconBox
+ I Module FvwmIconBox
+ I Style * NoIcon
#---------------------------------------------------------------------------------------#
# Create Menu: MenuFvwmQuitVerify
#
#---------------------------------------------------------------------------------------#
DestroyMenu MenuFvwmQuitVerify
AddToMenu MenuFvwmQuitVerify "$[gt.Really Quit Fvwm?]" Title
+ "&Q. $[gt.Yes, Really Quit]" Quit
+ "" Nop
+ "&R. $[gt.Restart]" Restart
+ "" Nop
+ "&T. $[gt.Start] twm" Restart twm
+ "&C. $[gt.Start] ctwm" Restart ctwm
+ "&2. $[gt.Start] tvtwm" Restart tvtwm
+ "&V. $[gt.Start] vtwm" Restart vtwm
+ "&M. $[gt.Start] mwm" Restart mwm
+ "&O. $[gt.Start] olwm" Restart /usr/openwin/bin/olwm
+ "" Nop
+ "&X. $[gt.Just an Xterm]" Restart xterm -n '"X Console"' -T '"X Console"'
+ "" Nop
+ "&N. $[gt.No, Don't Quit]" Nop
#=======================================================================================#
# Sample Functions
#
#=======================================================================================#
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmMailXmh
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmMailXmh
AddToFunc FuncFvwmMailXmh
+ I Next [$0] Iconify false
+ I Next [$0] Focus
+ I None [$0] Exec $0 $1
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmMoveOrRaise
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmMoveOrRaise
AddToFunc FuncFvwmMoveOrRaise
+ I Raise
+ M Move
+ D Lower
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmMaximize
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmMaximize
AddToFunc FuncFvwmMaximize
+ M Maximize 0 100
+ H Maximize 0 100
+ C Maximize 0 80
+ D Maximize 100 100
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmMoveOrIconify
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmMoveOrIconify
AddToFunc FuncFvwmMoveOrIconify
+ I Raise
+ M Move
+ D Iconify
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmResizeOrRaise
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmResizeOrRaise
AddToFunc FuncFvwmResizeOrRaise
+ I Raise
+ M Resize
+ D Lower
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmPrint
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmPrint
AddToFunc FuncFvwmPrint
+ I Raise
+ I Exec xdpr -id $w
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmPrintReverse
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmPrintReverse
AddToFunc FuncFvwmPrintReverse
+ I Raise
+ I Exec xdpr 1/2 -h -rv -id $w
#---------------------------------------------------------------------------------------#
# Function: FuncFvwmFocusPolicyChange
#
#---------------------------------------------------------------------------------------#
DestroyFunc FuncFvwmFocusPolicyChange
AddToFunc FuncFvwmFocusPolicyChange
+ I Style * $0
+ I Recapture
#=======================================================================================#
# Read Default Configurations for modules
#
#=======================================================================================#
read ConfigFvwmBacker
#read ConfigFvwmButtons
read ConfigFvwmIconBox
read ConfigFvwmIconMan
read ConfigFvwmIdent
read ConfigFvwmPager
read ConfigFvwmScroll
read ConfigFvwmTaskBar
read ConfigFvwmWinList
#=======================================================================================#
# Place the Fvwm Window Pager on the screen
#
#=======================================================================================#
*FvwmPager: Geometry $[infostore.pagerloc]
#=======================================================================================#
# Set the styles to use
#
#=======================================================================================#
Style * ClickToFocus
#Style * MouseFocus
#Style * FocusFollowsMouse
#Style * SloppyFocus
#=======================================================================================#
# Define Keyboard shortcuts.
#
#=======================================================================================#
#---------------------------------------------------------------------------------------#
# Keyboard Shortcuts: Arrow Keys: press arrow + control anywhere, and scroll by
1 page #
#---------------------------------------------------------------------------------------#
Key Left A C Scroll -100 0
Key Right A C Scroll +100 +0
Key Up A C Scroll +0 -100
Key Down A C Scroll +0 +100
#---------------------------------------------------------------------------------------#
# Keyboard Shortcuts: Arrow Keys: press arrow + meta key, and scroll by 1/10 of
a page #
#---------------------------------------------------------------------------------------#
Key Left A M Scroll -10 +0
Key Right A M Scroll +10 +0
Key Up A M Scroll +0 -10
Key Down A M Scroll +0 +10
#---------------------------------------------------------------------------------------#
# Keyboard Shortcuts: Arrow Keys: press shift arrow + control anywhere, and
move the #
# pointer by 1% of a page
#
#---------------------------------------------------------------------------------------#
Key Left A SC CursorMove -1 0
Key Right A SC CursorMove +1 +0
Key Up A SC CursorMove +0 -1
Key Down A SC CursorMove +0 +1
#---------------------------------------------------------------------------------------#
# Keyboard Shortcuts: Arrow Keys: press shift arrow + meta key, and move the
pointer by #
# 1/10 of a page
#
#---------------------------------------------------------------------------------------#
Key Left A SM CursorMove -10 +0
Key Right A SM CursorMove +10 +0
Key Up A SM CursorMove +0 -10
Key Down A SM CursorMove +0 +10
#########################################################################################
#
#
#########################################################################################