[xmonad] Issue 73 in xmonad: xmonad as a library
Adam Vogt
vogt.adam at gmail.com
Fri Dec 7 17:32:17 EST 2007
Add to that this effort to bring the manpage up to date: it still had stuff
about non-greedy workspace switching and the compiling necessary for
reconfiguration.
It might be better to be a bit more verbose on configuration, and/or
reference the other docs.
* On Thursday, December 06 2007, codesite-noreply at google.com wrote:
> Issue 73: xmonad as a library
> http://code.google.com/p/xmonad/issues/detail?id=73
>
> Comment #5 by dons00:
> Documentation done. Only thing left is an example, commented-out xmonad.hs
> users can
> use as a template.
-------------- next part --------------
New patches:
[update manpage
Adam Vogt <vogt.adam at gmail.com>**20071207221639] {
hunk ./man/xmonad.1.in 3
-.TH xmonad 1 "18 April 07" xmonad\-1.0 "xmonad manual"
+.TH xmonad 1 "7 December 07" xmonad\-0.5 "xmonad manual"
hunk ./man/xmonad.1.in 19
-When running with multiple monitors (Xinerama), each screen has exactly 1 workspace visible. When \fBxmonad\fR starts, workspace 1 is on screen 1, workspace 2 is on screen 2, etc. If you switch to a workspace which is currently visible on another screen, \fBxmonad\fR simply switches focus to that screen. If you switch to a workspace which is *not* visible, \fBxmonad\fR replaces the workspace on the *current* screen with the workspace you selected.
+When running with multiple monitors (Xinerama), each screen has exactly 1 workspace visible. mod-{w,e,r} switch the focus between screens, while shift-mod-{w,e,r} move the current window to that screen. When \fBxmonad\fR starts, workspace 1 is on screen 1, workspace 2 is on screen 2, etc. When switching workspaces to one that is already visible, the current and visible workspaces are swapped.
hunk ./man/xmonad.1.in 21
-For example, if you have the following configuration:
-.RS
-.PP
-Screen 1: Workspace 2
-.PP
-Screen 2: Workspace 5 (current workspace)
-.RE
-.PP
-and you wanted to view workspace 7 on screen 1, you would press:
-.RS
-.PP
-mod-2 (to select workspace 2, and make screen 1 the current screen)
-.PP
-mod-7 (to select workspace 7)
-.RE
-.PP
-Since switching to the workspace currently visible on a given screen is such a common operation, shortcuts are provided: mod-{w,e,r} switch to the workspace currently visible on screens 1, 2, and 3 respectively. Likewise, shift-mod-{w,e,r} moves the current window to the workspace on that screen. Using these keys, the above example would become mod-w mod-7.
hunk ./man/xmonad.1.in 30
-\fBxmonad\fR is customized by creating a custom Config.hs and (re)compiling the source code. After recompiling, 'restart' is used to fork the new version, with changes reflected immediately.
+\fBxmonad\fR is customized in ~/.xmonad/xmonad.hs
}
Context:
[Depend on X11>=1.4.0
Spencer Janssen <sjanssen at cse.unl.edu>**20071205045945]
[Update extra-source-files
Spencer Janssen <sjanssen at cse.unl.edu>**20071205044421]
[Update man location
Spencer Janssen <sjanssen at cse.unl.edu>**20071205043913]
[make Query a MonadIO
Lukas Mai <l.mai at web.de>**20071128195126]
[Add ManageHook to the XMonad metamodule
Spencer Janssen <sjanssen at cse.unl.edu>**20071127002840]
[update todos before release
Don Stewart <dons at galois.com>**20071125052720]
[Depend on X11 1.4.0
Don Stewart <dons at galois.com>**20071125034012]
[add getXMonadDir (2nd try)
Lukas Mai <l.mai at web.de>**20071121183018]
[Add 'and' and 'or' functions to ManageHook.
Spencer Janssen <sjanssen at cse.unl.edu>**20071121104613]
[generalise type of `io'
Don Stewart <dons at galois.com>**20071121054407]
[Add recompilation forcing, clean up recompile's documentation
Spencer Janssen <sjanssen at cse.unl.edu>**20071120223614]
[recompile does not raise any exceptions
Spencer Janssen <sjanssen at cse.unl.edu>**20071120215835]
[-no-recomp because we're doing our own recompilation checking
Spencer Janssen <sjanssen at cse.unl.edu>**20071120215744]
[pointfree
Don Stewart <dons at galois.com>**20071120184016]
[clean up fmap overuse with applicatives. more opportunities remain
Don Stewart <dons at galois.com>**20071120181743]
[ManageHook is a Monoid
Spencer Janssen <sjanssen at cse.unl.edu>**20071119060820]
[No more liftM
Spencer Janssen <sjanssen at cse.unl.edu>**20071119033120]
[Refactor recompile
Spencer Janssen <sjanssen at cse.unl.edu>**20071119032255]
[Trailing space
Spencer Janssen <sjanssen at cse.unl.edu>**20071119030658]
[Generalize recompile to MonadIO
Spencer Janssen <sjanssen at cse.unl.edu>**20071119030436]
[Factor out doubleFork logic
Spencer Janssen <sjanssen at cse.unl.edu>**20071119030353]
[handle case of xmonad binary not existing, when checking recompilation
Don Stewart <dons at galois.com>**20071119030057]
[Use executeFile directly, rather than the shell, avoiding sh interepeting
Don Stewart <dons at galois.com>**20071119025015]
[use 'spawn' rather than runProcess, to report errors asynchronously, avoiding zombies
Don Stewart <dons at galois.com>*-20071119023712]
[use 'spawn' rather than runProcess, to report errors asynchronously, avoiding zombies
Don Stewart <dons at galois.com>**20071119023712]
[Use xmessage to present a failure message to users when the config file cannot be loaded
Don Stewart <dons at galois.com>**20071119022429]
[only check xmonad.hs against the xmonad binary, not the .o file (meaning you can remove it if you like)
Don Stewart <dons at galois.com>**20071119011528]
[Do our own recompilation checking: only launch ghc if the xmonad.hs is newer than its .o file
Don Stewart <dons at galois.com>**20071119010759]
[reformat export list to fit on the page
Don Stewart <dons at galois.com>**20071119003900]
[add support for Mac users and their silly case-insensitive filesystems
Devin Mullins <me at twifkak.com>**20071117024836]
[some more tweaks
Don Stewart <dons at galois.com>**20071116184227]
[more todos: docs
Don Stewart <dons at galois.com>**20071116182444]
[we need examples for the managehook edsl
Don Stewart <dons at galois.com>**20071116182332]
[more todos
Don Stewart <dons at galois.com>**20071116182033]
[polish readme
Don Stewart <dons at galois.com>**20071116181931]
[more polish for config doc
Don Stewart <dons at galois.com>**20071116181640]
[tweak .cabal synopsis a little
Don Stewart <dons at galois.com>**20071116181245]
[Config: small haddock fix
Andrea Rossato <andrea.rossato at unibz.it>**20071116113158]
[Core: documented XConfig and ScreenDetail
Andrea Rossato <andrea.rossato at unibz.it>**20071116112826]
[CONFIG, TODO: fix typos
"Valery V. Vorotyntsev" <valery.vv at gmail.com>**20071115144151
CONFIG: delete trailing whitespace
]
[make default ratios in config nicer to look at
Lukas Mai <l.mai at web.de>**20071112013551]
[refactor main, add "recompile" to XMonad.Core
Lukas Mai <l.mai at web.de>**20071108230933]
[comments, reexport Data.Bits
Don Stewart <dons at galois.com>**20071114183759]
[polish .cabal file. add xmonad@ as the default maintainer
Don Stewart <dons at galois.com>**20071114182716]
[add lots more text on configuration
Don Stewart <dons at galois.com>**20071114182531]
[refactor trace.
Don Stewart <dons at galois.com>**20071114034109]
[clarify comment at top of Config.hs
Devin Mullins <me at twifkak.com>**20071111191304
There appears to be some confusion -- several people have wanted to edit
Config.hs as was done in the past. This comment probably won't stop that, but
it's a start.
]
[avoid Data.Ratio and % operator in XMonad.Config
David Roundy <droundy at darcs.net>**20071111183708
I think this'll make Config.hs more friendly as a template for folks
to modify.
]
[remove obviated (and confusing) comments
Devin Mullins <me at twifkak.com>**20071111055047]
[XMonad.Main uses FlexibleContexts
Spencer Janssen <sjanssen at cse.unl.edu>**20071111214528]
[hide existential Layout (mostly) from user API.
David Roundy <droundy at darcs.net>**20071111003055]
[Depend on X11 1.3.0.20071111
Don Stewart <dons at galois.com>**20071111200932]
[update README some more
Don Stewart <dons at galois.com>**20071109181203]
[we depend on Cabal 1.2.0 or newer
Don Stewart <dons at galois.com>**20071109155934]
[Generalize several functions to MonadIO
Spencer Janssen <sjanssen at cse.unl.edu>**20071109064214]
[Docs for ManageHook
Spencer Janssen <sjanssen at cse.unl.edu>**20071109031810]
[New ManageHook system
Spencer Janssen <sjanssen at cse.unl.edu>**20071109024722]
[Generalize the type of whenJust
Spencer Janssen <sjanssen at cse.unl.edu>**20071107062126]
[maybe False (const True) -> isJust. spotted by shachaf
Don Stewart <dons at galois.com>**20071108003539]
[typo
Don Stewart <dons at galois.com>**20071108000259]
[imports not needed in example now
Don Stewart <dons at galois.com>**20071107032346]
[Provide top level XMonad.hs export module
Don Stewart <dons at galois.com>**20071107030617]
[point to where defns for config stuff can be found
Don Stewart <dons at galois.com>**20071107020801]
[Fix haddock comment
Spencer Janssen <sjanssen at cse.unl.edu>**20071107030510]
[fall back to previous ~/.xmonad/xmonad if recompilation fails
Lukas Mai <l.mai at web.de>**20071107015309]
[recommend --user
Don Stewart <dons at galois.com>**20071106221004]
[add CONFIG with details of how to configure
Don Stewart <dons at galois.com>**20071105040741]
[Run only 50 tests per property, decreases test time by 10 seconds on my system
Spencer Janssen <sjanssen at cse.unl.edu>**20071105064944]
[Remove stale comment
Spencer Janssen <sjanssen at cse.unl.edu>**20071105063731]
[Use Cabal's optimization flags rather than -O
Spencer Janssen <sjanssen at cse.unl.edu>**20071105061759]
[Build the whole thing in the test hook
Spencer Janssen <sjanssen at cse.unl.edu>**20071105061615]
[-Werror
Spencer Janssen <sjanssen at cse.unl.edu>**20071105060326]
[Remove superfluous 'extensions:' field
Spencer Janssen <sjanssen at cse.unl.edu>**20071105034515]
[Use configurations in xmonad.cabal
Spencer Janssen <sjanssen at cse.unl.edu>**20071105033428]
[~/.xmonad/Main.hs is now ~/.xmonad/xmonad.hs !
Don Stewart <dons at galois.com>**20071105032655]
[makeMain -> xmonad
Don Stewart <dons at galois.com>**20071105031203]
[-Wall police
Don Stewart <dons at galois.com>**20071105022202]
[remember to compile the xmonad library also with the usual ghc-optoins
Don Stewart <dons at galois.com>**20071105022127]
[EventLoop -> Core, DefaultConfig -> Config
Don Stewart <dons at galois.com>**20071105021705]
[clean up DefaultConfig.hs
Don Stewart <dons at galois.com>**20071105021142]
[clean up some weird formatting/overboard strictness annotations
Don Stewart <dons at galois.com>**20071105011400]
[Update pragmas for GHC 6.8 compatibility
Spencer Janssen <sjanssen at cse.unl.edu>**20071104215507]
[Use the layout and workspaces values from the actual configuration used
Spencer Janssen <sjanssen at cse.unl.edu>**20071104020320]
[Float handler out of makeMain, make keys and mouseBindings dependent on XConfig for easy modMask switching
Spencer Janssen <sjanssen at cse.unl.edu>**20071102025924]
[We can't rely on the executable name, because it may be 'Main'
Spencer Janssen <sjanssen at cse.unl.edu>**20071101205057]
[Get defaultGaps from the current config, not the default one
Spencer Janssen <sjanssen at cse.unl.edu>**20071101205025]
[exposed-modules
Spencer Janssen <sjanssen at cse.unl.edu>**20071101193331]
[Hierarchify
Spencer Janssen <sjanssen at cse.unl.edu>**20071101180846]
[Main.hs -> DefaultConfig.hs, add new Main.hs with 'buildLaunch'
Spencer Janssen <sjanssen at cse.unl.edu>**20071101175749]
[Layouts.Choose: handle ReleaseResources
Spencer Janssen <sjanssen at cse.unl.edu>**20071101152302]
[Layouts.Choose: send Hide to non-selected layout
Spencer Janssen <sjanssen at cse.unl.edu>**20071101151147]
[Export mirrorRect
Spencer Janssen <sjanssen at cse.unl.edu>**20071101085631]
[Only export main from Main
Spencer Janssen <sjanssen at cse.unl.edu>**20071101082326]
[Add readsLayout, remove the existential from XConfig
Spencer Janssen <sjanssen at cse.unl.edu>**20071101082155]
[Delete Main.hs-boot!
Spencer Janssen <sjanssen at cse.unl.edu>**20071101080045]
[Remove manageHook from Main.hs-boot
Spencer Janssen <sjanssen at cse.unl.edu>**20071101075308]
[Remove workspaces from Main.hs-boot
Spencer Janssen <sjanssen at cse.unl.edu>**20071101074556]
[-Wall police
Spencer Janssen <sjanssen at cse.unl.edu>**20071101074411]
[Eliminate defaultTerminal
Spencer Janssen <sjanssen at cse.unl.edu>**20071101073147]
[Store user configuration in XConf
Spencer Janssen <sjanssen at cse.unl.edu>**20071101072308]
[This is a massive update, here's what has changed:
Spencer Janssen <sjanssen at cse.unl.edu>**20071101064318
* Read is no longer a superclass of Layout
* All of the core layouts have moved to the new Layouts.hs module
* Select has been replaced by the new statically typed Choose combinator,
which is heavily based on David Roundy's NewSelect proposal for
XMonadContrib. Consequently:
- Rather than a list of choosable layouts, we use the ||| combinator to
combine several layouts into a single switchable layout
- We've lost the capability to JumpToLayout and PrevLayout. Both can be
added with some effort
]
[cleaner version of main/config inversion.
David Roundy <droundy at darcs.net>**20071029184823]
[make setLayout a bit more inclusive.
David Roundy <droundy at darcs.net>**20071024231250]
[make xmonad work with inverted main/config.
David Roundy <droundy at darcs.net>**20071018170058]
[sketch of config/main inversion.
David Roundy <droundy at darcs.net>**20071018164230]
[more precise X11 version required
Don Stewart <dons at galois.com>**20071031203241]
[tweaks to todo
Don Stewart <dons at galois.com>**20071031164618]
[HEADS UP: remove X11-extras dependency, depend on X11 >= 1.3.0
Don Stewart <dons at galois.com>**20071030220824
The X11-extras library has been merged into the larger X11 library,
so we now drop the dependency on X11-extras, and instead build
against the new X11 library.
If you apply this patch you must build and install X11-1.3.0 or greater
first,
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/X11-1.3.0
You can also go ahead and wipe X11-extras from GHC's memory, (for ghci to work
out of the box with the testsuite)
$ ghc-pkg unregister X11-extras
$ ghc-pkg unregister --user X11-extras
]
[New windows start in the iconic state
Spencer Janssen <sjanssen at cse.unl.edu>**20071028063949]
[add text on using xprop to find client names
Don Stewart <dons at galois.com>**20071027163031]
[add text reminding people to run mod-shift-space
Don Stewart <dons at galois.com>**20071026225228]
[StackSet.hs: (insertUp): remove comments about new window being made master window, since that clearly isn't true.
Brent Yorgey <byorgey at gmail.com>**20071022210856]
[Replace 'findIndex' with 'findTag', which more accurately describes what the function does.
Brent Yorgey <byorgey at gmail.com>**20071022204105
I realize this is a big change, but the name 'findIndex' was confusing for me, since I expected it to return some sort of integer. What it actually does, of course, is return a workspace tag, which might be more general than an index.
Of course, this change breaks several contrib modules; I'll submit a patch to make the change there as well.
]
[StackSet.hs: (ensureTags): elaborate into a more descriptive comment.
Brent Yorgey <byorgey at gmail.com>**20071022202212]
[StackSet.hs: remove dead code.
Brent Yorgey <byorgey at gmail.com>**20071022192636]
[StackSet.hs: (differentiate): 'Texture' doesn't mean anything to me; replace with a more descriptive comment.
Brent Yorgey <byorgey at gmail.com>**20071022191333]
[StackSet.hs: (new): better comment; 'm' is not an integer, it is a list of screen descriptions.
Brent Yorgey <byorgey at gmail.com>**20071022183411]
[StackSet.hs: align some comments
Brent Yorgey <byorgey at gmail.com>**20071022161601]
[StackSet.hs: small grammar fix and better flow in comment
Brent Yorgey <byorgey at gmail.com>**20071022160858]
[StackSet.hs: better comments regarding hidden/visible workspace tracking for Xinerama
Brent Yorgey <byorgey at gmail.com>**20071022160239
I'm not 100% sure that I understand what's going on here, but it seems as though the comment still described an older state of affairs. I don't see any Map Workspace Screen keeping track of visible workspaces.
]
[Add Config.terminal
Spencer Janssen <sjanssen at cse.unl.edu>**20071024105354]
[explain that you need ghc as well
Don Stewart <dons at galois.com>**20071024030520]
[xmonad, not XMonad
Spencer Janssen <sjanssen at cse.unl.edu>**20071023234900]
[STYLE: enlarge on existing principles
gwern0 at gmail.com**20071023225225
Comments: the -Wall thing was just trying to say -Wall -Werror should work. The license thing was too narrow - or are my public domain contributions unwelcome because they are not BSD-3? I think comments are most important for exported functions users will use; it isn't so important for helper functions (used only in the module) to be very well-documented, right?
]
[start on style guide
Don Stewart <dons at galois.com>**20071023221422]
[Operations.hs: flip maybe id is fromMaybe
Eric Mertens <emertens at galois.com>**20071018231418]
[Deobfuscate Tall layout
Eric Mertens <emertens at galois.com>**20071018231329]
[setInitialProperties after placing windows
Spencer Janssen <sjanssen at cse.unl.edu>*-20071019201310]
[setInitialProperties after placing windows
Spencer Janssen <sjanssen at cse.unl.edu>**20071019201310]
[Ignore borders in the stored RationalRects of floating windows.
Spencer Janssen <sjanssen at cse.unl.edu>*-20071019063922
Also, add 'floatWindow' which computes the actual Rectangle for that window,
including border.
]
[Only assign workspace keys up to xK_9. Related to bug #63
Spencer Janssen <sjanssen at cse.unl.edu>**20071019083746]
[Ignore borders in the stored RationalRects of floating windows.
Spencer Janssen <sjanssen at cse.unl.edu>**20071019063922
Also, add 'floatWindow' which computes the actual Rectangle for that window,
including border.
]
[I prefer fmap over liftM
Spencer Janssen <sjanssen at cse.unl.edu>**20071019063104]
[change 0/1/3 to named states, per X11-extras darcs head
Devin Mullins <me at twifkak.com>**20071018021651]
[remove StackOrNot type synonymn.
David Roundy <droundy at darcs.net>**20071017201406]
[Operations.hs: make use of notElem and notMember
Eric Mertens <emertens at galois.com>**20071017174357]
[TAG 0.4
Spencer Janssen <sjanssen at cse.unl.edu>**20071016215343]
Patch bundle hash:
2b89ac00957d18a41ae0440f5cc05f8e82f43f70
More information about the xmonad
mailing list