Difference between revisions of "Xmonad/Notable changes since 0.7"

From HaskellWiki
Jump to navigation Jump to search
(+cat)
(5 intermediate revisions by 2 users not shown)
Line 10: Line 10:
 
== Changes to the xmonad core ==
 
== Changes to the xmonad core ==
   
* defaultGaps has been removed, see [http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Hooks-ManageDocks.html XMonad.Hooks.ManageDocks].avoidStruts, which is now the preferred method for setting gaps. ManageDocks will soon be moved into the core. Those that still want or need manual gap-setting ability (if you're not sure, you probably don't) can use the new contrib module XMonad.Layout.Gaps.
+
* defaultGaps has been removed, see [http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Hooks-ManageDocks.html XMonad.Hooks.ManageDocks].avoidStruts, which is now the preferred method for setting gaps. Those that still want or need manual gap-setting ability (if you're not sure, you probably don't) can use the new contrib module XMonad.Layout.Gaps.
   
 
== Changes in xmonad-contrib ==
 
== Changes in xmonad-contrib ==
Line 18: Line 18:
 
** XMonad.Layout.Gaps allows manual configuration of gaps, along with keybindings for toggling and adjusting their size. Useful in situations where gaps are desired but ManageDocks is not appropriate.
 
** XMonad.Layout.Gaps allows manual configuration of gaps, along with keybindings for toggling and adjusting their size. Useful in situations where gaps are desired but ManageDocks is not appropriate.
 
** XMonad.Actions.CycleRecentWS
 
** XMonad.Actions.CycleRecentWS
** XMonad.Actions.WindowNavigation is a rewrite of XMonad.Layout.WindowNavigation that lets you navigate across screens
+
** XMonad.Actions.WindowNavigation is a rewrite of XMonad.Layout.WindowNavigation that lets you navigate across screens. It has some bugs.
  +
** XMonad.Config.Gnome, XMonad.Config.KDE, and XMonad.Config.Xfce greatly simplify initial [[Xmonad/Basic Desktop Environment Integration|basic desktop integration]], including ewmh's for taskbars and panels, gap toggling, and sensible desktop default key rebindings.
** XMonad.Config.PlainConfig allows those without a Haskell compiler or the desire to learn Haskell syntax to do common configurations in text. Of course, it's an extension, so you'll need to create an xmonad.hs just to load it...
+
** XMonad.Config.PlainConfig allows those without a Haskell compiler or the desire to learn Haskell syntax to do common configurations in text. This has been split off into a separate project called xmonad-light using ~/.xmonad/xmonad.conf rather than xmonad.hs. See [http://braincrater.wordpress.com/2008/08/28/announcing-xmonad-light/ shepheb's xmonad-light], your package manager, or
  +
  +
:::darcs get http://code.haskell.org/~shepheb/xmonad-light
  +
   
 
* Changes to contrib APIs
 
* Changes to contrib APIs
Line 28: Line 32:
 
** WindowGo now has two convenience functions for going to your text editor (based on $EDITOR) and your browser ($BROWSER).
 
** WindowGo now has two convenience functions for going to your text editor (based on $EDITOR) and your browser ($BROWSER).
 
** HintedTile now requires an alignment argument. Add 'TopLeft' as the second to last argument (the argument right before Tall or Wide) to match the old behavior.
 
** HintedTile now requires an alignment argument. Add 'TopLeft' as the second to last argument (the argument right before Tall or Wide) to match the old behavior.
** UrgencyHook lets you specify when you want the hook to trigger (default: window not visible)
+
** UrgencyHook lets you specify when you want the hook to trigger (default is the same: window not visible)
  +
  +
[[Category:XMonad]]

Revision as of 23:37, 16 November 2009

This page is for keeping a record of significant changes in darcs xmonad and xmonad-contrib since the 0.7 release.

The idea is to put here a list of things which a user upgrading from 0.7 to 0.8 might like to know, so that they are sure to be included in the 0.8 release notes.

Changes to the xmonad core

  • defaultGaps has been removed, see XMonad.Hooks.ManageDocks.avoidStruts, which is now the preferred method for setting gaps. Those that still want or need manual gap-setting ability (if you're not sure, you probably don't) can use the new contrib module XMonad.Layout.Gaps.

Changes in xmonad-contrib

  • New contrib modules:
    • XMonad.Layout.MultiToggle.Instances defines some common Transformer instances for convenience in working with XMonad.Layout.MultiToggle
    • XMonad.Layout.Gaps allows manual configuration of gaps, along with keybindings for toggling and adjusting their size. Useful in situations where gaps are desired but ManageDocks is not appropriate.
    • XMonad.Actions.CycleRecentWS
    • XMonad.Actions.WindowNavigation is a rewrite of XMonad.Layout.WindowNavigation that lets you navigate across screens. It has some bugs.
    • XMonad.Config.Gnome, XMonad.Config.KDE, and XMonad.Config.Xfce greatly simplify initial basic desktop integration, including ewmh's for taskbars and panels, gap toggling, and sensible desktop default key rebindings.
    • XMonad.Config.PlainConfig allows those without a Haskell compiler or the desire to learn Haskell syntax to do common configurations in text. This has been split off into a separate project called xmonad-light using ~/.xmonad/xmonad.conf rather than xmonad.hs. See shepheb's xmonad-light, your package manager, or
darcs get http://code.haskell.org/~shepheb/xmonad-light


  • Changes to contrib APIs
    • ManageDocks now allows individual toggling of multiple gaps.
    • PerWorkspace has additional functions which allow applying layout modifiers per-workspace (rather than simply selecting layouts per-workspace).
    • Search's "promptSearch" and "selectSearch" functions have shorter invocations now; the browser argument is unneeded as XMonad will instead default to whatever $BROWSER is, or to using Firefox.
    • Search's simpleEngine has changed. It is now named 'searchEngine'. It takes two arguments, a site name (which will be used as a prompt), and the URL string. If you want to replicate the old simpleEngine, it'd look like 'newEngine = searchEngine "" "http://..."'.
    • WindowGo now has two convenience functions for going to your text editor (based on $EDITOR) and your browser ($BROWSER).
    • HintedTile now requires an alignment argument. Add 'TopLeft' as the second to last argument (the argument right before Tall or Wide) to match the old behavior.
    • UrgencyHook lets you specify when you want the hook to trigger (default is the same: window not visible)