Tue Dec 29 12:13:46 EST 2009 Brent Yorgey * X.P.Ssh: add entries from .ssh/config to ssh prompt completion New patches: [X.P.Ssh: add entries from .ssh/config to ssh prompt completion Brent Yorgey **20091229171346 Ignore-this: fa638a0af4cb71be91f6c90bdf6d5513 ] { hunk ./XMonad/Prompt/Ssh.hs 69 sshComplListLocal :: IO [String] sshComplListLocal = do h <- getEnv "HOME" - sshComplListFile $ h ++ "/.ssh/known_hosts" + s1 <- sshComplListFile $ h ++ "/.ssh/known_hosts" + s2 <- sshComplListConf $ h ++ "/.ssh/config" + return $ s1 ++ s2 sshComplListGlobal :: IO [String] sshComplListGlobal = do hunk ./XMonad/Prompt/Ssh.hs 99 $ filter nonComment $ lines l +sshComplListConf :: String -> IO [String] +sshComplListConf kh = do + f <- doesFileExist kh + if f then sshComplListConf' kh + else return [] + +sshComplListConf' :: String -> IO [String] +sshComplListConf' kh = do + l <- readFile kh + return $ map (!!1) + $ filter isHost + $ map words + $ lines l + where + isHost ws = take 1 ws == ["Host"] && length ws > 1 + fileExists :: String -> IO (Maybe String) fileExists kh = do f <- doesFileExist kh } Context: [new contrib module, X.A.DynamicWorkspaceGroups, for managing groups of workspaces on multi-head setups Brent Yorgey **20091229165702 Ignore-this: fc3e6932a95f57b36b4d8d4cc7f3e2d7 ] [X.P.Shell, filter empty string from PATH Tim Horton **20091224033217 Ignore-this: 1aec55452f917d0be2bff7fcf5937766 doesDirectoryExist returns True if given an empty string using ghc <= 6.10.4. This causes getDirectoryContents to raise an exception and X.P.Shell does not render. This is only an issue if you have an empty string in your PATH. Using ghc == 6.12.1, doesDirectoryExist returns False given an empty string, so this should not be an issue in the future. ] [new contrib module from Tomas Janousek, X.A.WorkspaceNames Brent Yorgey **20091229163915 Ignore-this: 5bc7caaf38647de51949a24498001474 ] [Use imported xC_bottom_right_corner in A.MouseResize Adam Vogt **20091227233705 Ignore-this: 52794f788255159b91e68f2762c5f6a1 ] [X.A.MouseResize: assign an appropriate cursor for the resizing inpuwin Tomas Janousek **20091227212140 Ignore-this: d9ce96c2cd0312b6b5be4acee30a1da3 ] [small tweak to battery logger Brent Yorgey **20091227085641 Ignore-this: 350dfed0cedd250cd9d4bd3391cbe034 ] [Fix the createSession bug in spawnPipe Spencer Janssen **20091227003501 Ignore-this: 2d7f8746eb657036d39f3b9aac22b3c9 Both the new XMonad.Core.xfork function and spawnPipe call createSession, calling this function twice results in an error. ] [Let the core know about MouseResizableTile's draggers, so they are stacked correctly Jan Vornberger **20091223145428 Ignore-this: 7c096aba6b540ccf9b49c4ee86c6091a ] [Update all uses of forkProcess to xfork Spencer Janssen **20091223064558 Ignore-this: 963a4ddf1d2f4096bbb8969b173cd0c1 ] [Make X.L.Minimize explicitly mark minimized windows as boring Jan Vornberger **20091222214529 Ignore-this: b1e8adf26ac87dede6c1b7a7d687411c ] [Actions/Search: added openstreetmap intrigeri@boum.org**20091222114545 Ignore-this: fafc4680c8b59b7a044d995c1dacec9a ] [Add a search predicate option to XMonad.Prompt Mike Lundy **20091221025408 Ignore-this: 8e8804eeb9650d38bc225e15887310da ] [In D.Extending note how <+> can be used with keybindings. Adam Vogt **20091220190739 Ignore-this: ebea8ef8a835ed368fa06621add6519f ] [Fix MultiToggle crashes with decorated layouts Tomas Janousek **20091220004733 Ignore-this: 9208f5da9f0de95464ea62cb45e8f291 The problem was that certain layouts keep their "world" state in their value, which was thrown away and forgotten after ReleaseResources during toggle. In particular, decorated layouts store some X11 handles in them and allocate/deallocate it as appropriate. If any modification to their state is ignored, they may try to deallocate already deallocated memory, which results in a crash somewhere inside Xlib. This patch makes Transformers reversible so that nothing is ever ignored. As a side effect, layout transformers now do receive messages and messages for the base layout do not need the undo/reapply cycle -- we just pass messages to the current transformed layout and unapply the transformer when needed. (This, however, doesn't mean that the base layout is not asked to release resources on a transformer change -- we still need the transformer to release its resources and there's no way to do this without asking the base layout as well.) ] [Golf / style change in U.ExtensibleState Adam Vogt **20091208010506 Ignore-this: c35bd85baae4700e14417ac7e07de959 ] [Style changes in EwmhDesktops Adam Vogt **20091219003824 Ignore-this: 905eff9ed951955c8f62617b2d82302e ] [Add support for fullscreen through the _NET_WM_STATE protocol audunskaugen@gmail.com**20091214135119 Ignore-this: 430ca3c6779e36383f8ce8e477ee9622 This patch adds support for applications using the gtk_window_fullscreen function, and other applications using _NET_WM_STATE for the same purpose. ] [TAG 0.9.1 Spencer Janssen **20091216233651 Ignore-this: 713d9dd89d775e30346f57a61038d308 ] [Bump version to 0.9.1 Spencer Janssen **20091216232634 Ignore-this: bcd799c3341ee6c69a259e1dca747cac ] [Match X11 dependencies with xmonad's Spencer Janssen **20091216012630 Ignore-this: bcbd6e3e5e2675cdac6f1d1b1bc09853 ] [Safer X11 version dependency Spencer Janssen **20091216005916 Ignore-this: 6dc805a8a0c7a3d3369bc1d6d97d4f56 ] [Update Prompt for numlockMask changes Spencer Janssen **20091103222621 Ignore-this: 4980e2fdf4c296a266590cc4acf76e1e ] [X.L.MouseResizableTile: change description for mirrored variant Tomas Janousek **20091211124218 Ignore-this: dbc02fb777e35cdc15fb11979c1e983e The description for mirrored MouseResizableTile is now "Mirror MouseResizableTile", to follow the standard of other layouts that can be mirrored using the Mirror modifier. ] [X.A.GridSelect: documentation typo fix Tomas Janousek **20091211182515 Ignore-this: 521bef2a73a9e969d7a96defb555177b spotted by Justin on IRC ] [A.GridSelect shouldn't grab keys if there are no choices. Adam Vogt **20091210183038 Ignore-this: 48509f780120014a10b32e7289369f32 Thanks thermal2008 in #xmonad for bringing up the corner case when gridselect is run with an empty list of choices. ] [onScreen' variation for X () functions Nils Schweinsberg **20091209003717 Ignore-this: 6a9644c729c2b60f94398260f3640e4d ] [Added Bluetile's config Jan Vornberger **20091209150309 Ignore-this: 641ae527ca6f615e81822b6f38f827e7 ] [BluetileCommands - a list of commands that Bluetile uses to communicate with its dock Jan Vornberger **20091208234431 Ignore-this: 1a5a5e69c7c37d3ffe8d8e09496568de ] [Use lookup instead of find in A.PerWorkspaceKeys Adam Vogt **20091129032650 Ignore-this: 7ecb043df4317365ff3d25b17303eed8 ] [Change of X.A.OnScreen, more simple and predictable behaviour of onScreen, new functions: toggle(Greedy)OnScreen Nils Schweinsberg **20091207155050 Ignore-this: c375250778758e401217bcad83567d3b ] [Module to ensure that a dragged window always stays in front of all other windows Jan Vornberger **20091129004506 Ignore-this: a8a389198ccc28a66686561d4d17e91b ] [Decoration that allows to switch the position of windows by dragging them onto each other. Jan Vornberger **20091129003431 Ignore-this: 38aff0f3beb1a1eb304219c4f3e85593 ] [A decoration with small buttons and a supporting module Jan Vornberger **20091129002416 Ignore-this: 2d65133bc5b9ad29bad7d06780bdaa4 ] [XMonad.Actions.Search: finally fixed the internet archive search plugin gwern0@gmail.com**20091205033435 Ignore-this: c78ecebced9bc8e39e6077ffa9f9f182 ] [XMonad.Actions.Search: in retrospect, a bit silly to make everyone go through SSL gwern0@gmail.com**20091205033318 Ignore-this: 452b4e6efb83935fc1063ab695ae074d ] [Prompt.hs: Corrected quit keybindings Tim Horton **20091203050041 Ignore-this: e8cd2cd1d41f6807f68157ef37c631ea ] [Extended decoration module with more hooks and consolidated some existing ones Jan Vornberger **20091128234310 Ignore-this: 5a23af3009ecca2feb9a84f8c6f8ac33 ] [Extended decoration theme to contain extra static text that always appears in the title bar Jan Vornberger **20091024213928 Ignore-this: 95f46d6b9ff716a2d8002a426c1012c8 ] [Extended paintAndWrite to allow for multiple strings to be written into the rectangle Jan Vornberger **20091024205111 Ignore-this: eb7d32284b7f98145038dcaa14f8075e ] [Added the alignment option 'AlignRightOffset' Jan Vornberger **20091024204513 Ignore-this: 58cc00e1be669877e38a97e36b924969 ] [Prevent windows from being decorated that are too small to contain decoration. Jan Vornberger **20090627094316 Ignore-this: 39b806462bbd424f1206b635e9d506e1 ] [X.L.MouseResizableTile: keep draggers on the bottom of the window stack. Tomas Janousek **20091126173413 Ignore-this: 8089cf8ce53580090b045f4aebb1b899 ] [Implemented smarter system of managing borders for BorderResize Jan Vornberger **20091122233651 Ignore-this: 4775c082249e598a84c79b2e819f28b0 ] [X.H.DynamicLog: fix xmonadPropLog double-encoding of UTF-8 Tomas Janousek **20091121004829 Ignore-this: bde612bbd1a19951f9718a03e737c4ac dynamicLogString utf-8 encodes its output, xmonadPropLog shouldn't do that again. ] [X.H.DynamicLog: make documentation for 'dzen' and 'xmobar' slightly more clear Brent Yorgey **20091121170739 Ignore-this: c9a241677fda21ef93305fc3882f102e ] [X.H.ManageDocks: ignore struts that cover an entire screen on that screen Tomas Janousek **20091119145043 Ignore-this: ad7bbf10c49c9f3e938cdc3d8588e202 Imagine a screen layout like this: 11111111 11111111 11111111 222222 <--- xmobar here 222222 222222 When placing xmobar as indicated, the partial strut property indicates that an entire height of screen 1 is covered by the strut, as well as a few lines at the top of screen 2. The original code would create a screen rectangle of negative height and wreak havoc. This patch causes such strut to be ignored on the screen it covers entirely, resulting in the desired behaviour of a small strut at the top of screen 2. Please note that this semantics of _NET_WM_STRUT and _NET_WM_STRUT_PARTIAL is different to what is in wm-spec. The "correct" thing to do would be to discard the covered portion of screen 1 leaving two narrow areas at the sides, but this new behaviour is probably more desirable in many cases, at least for xmonad/xmobar users. The correct solution of having separate _NET_WM_STRUT_PARTIAL for each Xinerama screen was mentioned in wm-spec maillist in 2007, but has never really been proposed, discussed and included in wm-spec. Hence this "hack". ] [Use imported 'fi' in PositionStoreHooks Adam Vogt **20091119103112 Ignore-this: 6563a3093083667c79aa491a6f59b805 ] [Changed interface of X.U.ExtensibleState Daniel Schoepe **20091116171013 Ignore-this: 9a830f9341e461628974890bab0bd65b Changed the interface of X.U.ExtensibleState to resemble that of Control.Monad.State and modified the modules that use it accordingly. ] [PositionStoreFloat - a floating layout with support hooks Jan Vornberger **20091115184833 Ignore-this: 8b1d0fcef1465356d72cb5f1f32413b6 ] [PositionStore utility to store information about position and size of a window Jan Vornberger **20091108195735 Ignore-this: 2f6e68a490deb75cba5d007b30c93fb2 ] [X.H.Urgencyhook fix minor doc bug Anders Engstrom **20091115131121 Ignore-this: 18b63bccedceb66c77b345a9300f1ac3 ] [X.H.DynamicLog fix minor indentation oddness Anders Engstrom **20091115130707 Ignore-this: 7f2c49eae5527874ca4499767f4167c4 ] [X.A.CycleWS cycle by tag group Anders Engstrom **20091115130217 Ignore-this: 909da8c00b47a31d04f59bd3751c60bc Allow grouping of workspaces, so that a user can cycle through those in the same group. Grouping is done by using a special character in the tag. ] [Use less short names in X.Prompt Adam Vogt **20091115025647 Ignore-this: 1d27b8efc4d829a5642717c6f6426336 ] [Use io instead of liftIO in Prompt Adam Vogt **20091115025301 Ignore-this: cd4031b74cd5bb874cd2c3cc2cb087f2 ] ['io' and 'fi' are defined outside of Prompt Adam Vogt **20091115024001 Ignore-this: 3426056362db9cbfde7d2f4edbfe6f36 ] [Use zipWithM_ instead of recursion in Prompt.printComplList Adam Vogt **20091115023451 Ignore-this: 2457500ed871ef120653a3d4ada13441 ] [Minor style changes in DynamicWorkspaces Adam Vogt **20091115022751 Ignore-this: 1a6018ab134e4420a949354575a8a110 ] [X.A.DynamicWorkspaces fix doc and add behaviour Anders Engstrom **20091113233903 Ignore-this: ab7c20a9c1b43ebc6a7f4700d988fb73 Before this patch the documentation claims that it won't do anything on non-empty workspaces when it actually does. This patch fixes the documentation to reflect the actual behaviour, but also adds the behaviour promised by the documentation in other functions. It does not break configs. In addition it also provides functions to help removing empty workspaces when leaving them. ] [rework XMonad.Util.Dzen daniel@wagner-home.com**20091114051509 Ignore-this: 16d93f91c54f7d195b1a418e6c0351c5 ] [generalize IO actions to MonadIO m => m actions daniel@wagner-home.com**20091114023616 Ignore-this: 2c801a27b0ffee34a2f0daca3778613a This should not cause any working configs to stop working, because IO is an instance of MonadIO, and because complete configs will pin down the type of the call to IO. Note that XMonad.Config.Arossato is not a complete config, and so it needed some tweaks; with a main function, this should not be a problem. ] [fix documentation to match implementation daniel@wagner-home.com**20091114021328 Ignore-this: 6dbbb118b139f443c40a573445a48d07 ] [Bypass more of stringToKeysym in U.Paste Adam Vogt **20091114223726 Ignore-this: 617c922647e9f49f5ecefa0eb1c65d3c ] [Don't erase floating information with H.InsertPosition (Issue 334) Adam Vogt **20091113161402 Ignore-this: de1c03eb860ea25b390ee5c756b02997 ] [Rename gridselectViewWorkspace to gridselectWorkspace, add another example. Adam Vogt **20091112211435 Ignore-this: 462cf1c7f66ab97a1ce642977591a910 The name should be more general to suggest uses other than just viewing other workspaces. ] [X.A.DynamicWorkspaces: fix addWorkspace and friends so they never add another copy of an existing workspace Brent Yorgey **20091112201351 Ignore-this: 5bfe8129707b038ed04383b7566b2323 ] [Trim whitespace in H.FloatNext Adam Vogt **20091111022702 Ignore-this: 1ad52678246fa1ac951169c2356ce10b ] [Use ExtensibleState in H.FloatNext Adam Vogt **20091111022513 Ignore-this: 760d95a685af080466cb4164d1096423 ] [Make a haddock link direct in C.Desktop. Adam Vogt **20091111013810 Ignore-this: da724a7974c3de60f49996c1fe92d3fb ] [Change A.TopicSpace haddocks to use block quotes. Adam Vogt **20091111013241 Ignore-this: 6f7f43d2715cfde62b9c05c7d9a0da2 ] [Add defaultTopicConfig, to allow adding more fields to TopicSpace later. Adam Vogt **20091111012915 Ignore-this: 6dad95769651a9a1ef8d771f81c91f8e ] [X.A.WindowGo: fix haddock markup Spencer Janssen **20091111003256 Ignore-this: c6a06de900ca8b67498abf5152e3d9ea ] [Minor style corrections in X.U.SpawnOnce Daniel Schoepe **20091109201543 Ignore-this: 1264852c23b4f84b2580bf4567529c68 ] [Add gridselectViewWorkspace in X.A.GridSelect Daniel Schoepe **20091109155815 Ignore-this: 5543211e9e3fd325cb798b004635a525 ] [minor-doc-fix-in-ManageHelpers `Henrique Abreu '**20091104172727 Ignore-this: 231ad417541bc3c17a1cb2dff139d55d ] [Set buffering to LineBuffering in scripts/xmonadpropread.hs Daniel Schoepe **20091108204106 Ignore-this: 4e593fc1461fbbfb5b147c7c7702584e (Required for the script to work properly with tools like dzen) ] [X.U.ExtensibleState: style Spencer Janssen **20091108182858 Ignore-this: f189da75ad2c57ae9cca48eaf69a6bad ] [X.A.DynamicWorkspaces: new 'addWorkspacePrompt' method Brent Yorgey **20091108170503 Ignore-this: a3992b1b7938be80d8fd2a5a503a4042 ] [Remove defaulting when using NoMonomorphismRestriction in H.EwmhDesktops Adam Vogt **20091107195255 Ignore-this: ca3939842639c94ca4fd1ff6624319c1 ] [Update A.TopicSpace to use extensible state. No config changes required. Adam Vogt **20091107194502 Ignore-this: 7a82aad512bb727b3447de0faa4a210f ] [Inline tupadd function in A.GridSelect Adam Vogt **20091101190312 Ignore-this: 458968154303ab865c304f387d6ac83b ] [Alphabetize exposed-modules Spencer Janssen **20091107174946 Ignore-this: 919684aea7747a756b303f9b34a2870b ] [Use X.U.SpawnOnce in my config Spencer Janssen **20091107174615 Ignore-this: fe8f5f75136128280942771ec429f09a ] [Add XMonad.Util.SpawnOnce Spencer Janssen **20091107173820 Ignore-this: 8d4657bbaa8dbeb1d0f9d22293bfef19 ] [Store deserialized data after reading in X.U.ExtensibleState Daniel Schoepe **20091107103832 Ignore-this: 192beca56e9437292bd3f16451ae9e66 ] [Fixed conflict between X.U.ExtensibleState and X.C.Sjanssen Daniel Schoepe **20091107103619 Ignore-this: 80f4bb218574d7c528af17473c6e4f66 ] [Use X.U.ExtensibleState instead of IORefs Daniel Schoepe **20091106115601 Ignore-this: e0e80e31e51dfe76f2b2ed597892cbba This patch changes SpawnOn, DynamicHooks and UrgencyHooks to use X.U.ExtensibleState instead of IORefs. This simplifies the usage of those modules thus also breaking current configs. ] [Add X.U.ExtensibleState Daniel Schoepe **20091106115336 Ignore-this: d80d9d0c10a53fb71a375e432bd29344 ] [My config uses xmonadPropLog now Spencer Janssen **20091107005230 Ignore-this: 8f16b8bea86dfcd3739f1566f5897578 ] [Add xmonadpropread script Spencer Janssen **20091107004858 Ignore-this: 8cc7ed36ec1126d0139638148f9642e8 ] [Add experimental xmonadPropLog function Spencer Janssen **20091107004624 Ignore-this: f09b2c11b16a3af993b63d1b39566120 ] [XMonad.Actions.Search: imdb search URL tweak for bug #33 gwern0@gmail.com**20091103222330 Ignore-this: bae5e6d3ec6c4b6591016ece9dffb202 ] [Clean imports for L.BoringWindows Adam Vogt **20091103140649 Ignore-this: 56946a652329390dbdd63746ca23ee8e ] [I maintain L.BoringWindows Adam Vogt **20091103140509 Ignore-this: de853972b4c1c4cefa2dc29e68828d5d ] [fix window rectangle calculation in X.A.UpdatePointer Tomas Janousek **20091026154918 Ignore-this: ad0c3a020b802854919c7827faa001ad ] [Implement hasProperty in terms of runQuery in U.WindowProperties Adam Vogt **20091031154945 Ignore-this: 1c351bc436e0e323dc25d8f5ff734dcb This addresses issue 302 for unicode titles by actually using the complicated XMonad.ManageHook.title code, instead of reimplementing it with stringProperty (which doesn't appear to handle unicode). ] [Add functions to access the current input in X.Prompt Daniel Schoepe **20091030235033 Ignore-this: 3f568c1266d85dcaa5722b19bbbd61dd ] [Remove putSelection, fixes #317 Spencer Janssen **20091030224354 Ignore-this: 6cfd6d92e1d133bc9e3cbb7c8339f735 ] [Fix typo in H.FadeInactive documentation Adam Vogt **20091029165736 Ignore-this: b2af487cd382416160d5540b7f210464 ] [X.L.MultiCol constructor 0 NWin bugfig Anders Engstrom **20091029105633 Ignore-this: e6a24f581593424461a8675984d14d25 Fix bug where the constructor did not accept catch-all columns. Also some minor cleaning. ] [X.H.ManageHelpers: added currentWs that returns the current workspace Ismael Carnales **20091028193519 Ignore-this: dcd3dac6bd741d26747807691f125637 ] [X.L.MultiColumns bugfix and formating Anders Engstrom **20091027131741 Ignore-this: 6978f485d18adb8bf81cf6c8e0d0332 Fix bug where a column list of insufficient length could be used to find the column of the window. Also fix formating to conform better with standards. ] [X.L.MultiColumns NWin shrinkning fix Anders Engstrom **20091027005932 Ignore-this: 9ba40ee14ec12c3885173817eac2b564 Fixed a bug where the list containing the number of windows in each column was allowed the shrink if a column was unused. ] [New Layout X.L.MultiColumns Anders Engstrom **20091024175155 Ignore-this: a2d3d2eee52c28eab7d125f6b621cada New layout inspired the realization that I was switching between Mirror Tall and Mirror ThreeCol depending on how many windows there were on the workspace. This layout will make those changes automatically. ] [Changing behaviour of ppUrgent with X.H.DynamicLog mail@n-sch.de**20090910010411 Ignore-this: 3882f36d5c49e53628485c1570bf136a Currently, the ppUrgent method is an addition to the ppHidden method. This doesn't make any sense since it is in fact possible to get urgent windows on the current and visible screens. So I've raised the ppUrgent printer to be above ppCurrent/ppVisible and dropped its dependency on ppHidden. In addition to that this makes it a lot more easier to define a more custom ppUrgent printer, since you don't have to "undo" the ppHidden printer anymore. This also basicly removes the need for dzenStrip, although I just changed the description. -- McManiaC / Nils ] [fix X.U.Run.spawnPipe fd leak Tomas Janousek **20091025210246 Ignore-this: 24375912d505963fafc917a63d0e79a0 ] [TAG 0.9 Spencer Janssen **20091026013449 Ignore-this: 542b6105d6deed65e12d1f91c666b0b2 ] Patch bundle hash: 8380c0c23aedca53664a71e9eae17d4e8005a61a