From malebria at riseup.net Sun Jun 1 17:34:51 2008 From: malebria at riseup.net (Malebria) Date: Sun Jun 1 17:27:29 2008 Subject: [xmonad] darcs patch: Haddock syntax for enumeration (and 1 more) Message-ID: <20080601213451.EE8E84090@auk.riseup.net> Sun Jun 1 17:49:51 BRT 2008 Malebria * Haddock syntax for enumeration Sun Jun 1 18:25:15 BRT 2008 Malebria * Haddock links -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 10453 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080601/400e4488/attachment-0001.bin From gwern0 at gmail.com Sun Jun 1 18:27:18 2008 From: gwern0 at gmail.com (Gwern Branwen) Date: Sun Jun 1 18:21:42 2008 Subject: [xmonad] Raising Amarok Message-ID: <20080601222717.GA13196@craft> Skipped content of type multipart/mixed-------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://www.haskell.org/pipermail/xmonad/attachments/20080601/13e35c88/attachment-0001.bin From sjanssen at cse.unl.edu Mon Jun 2 00:18:57 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Mon Jun 2 00:11:42 2008 Subject: [xmonad] Raising Amarok In-Reply-To: <20080601222717.GA13196@craft> References: <20080601222717.GA13196@craft> Message-ID: <20080602041857.GC6599@celeborn> On Sun, Jun 01, 2008 at 06:27:18PM -0400, Gwern Branwen wrote: > Ho everyone: > > I recently installed Ubuntu, and so could now use Amarok (the Gentoo installation being messed up for me), and all is well. I went to add a keybinding: > > > , ((m, xK_a), runOrRaise "amarok" (title =? "Amarok")) > > And it is kind of odd. It is the correct name, and it works correctly when Amarok is not running - but if Amarok is running, it only causes a file dialogue to open up instead of the right thing. (See attached screenshots.) > > Is this Amarok's fault? Any ideas how to work around it? > > > -- > gwern > FSK S511 Zemin Monica PABX NSG mercur text Meade ULF Try matching on the WM_CLASS (note that it is set to "amarokapp") instead. If this works, there might be some problem with the 'title' function. From sjanssen at cse.unl.edu Mon Jun 2 00:25:40 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Mon Jun 2 00:18:26 2008 Subject: [xmonad] darcs patch: Haddock syntax for enumeration (and 1 more) In-Reply-To: <20080601213451.EE8E84090@auk.riseup.net> References: <20080601213451.EE8E84090@auk.riseup.net> Message-ID: <20080602042540.GD6599@celeborn> On Sun, Jun 01, 2008 at 02:34:51PM -0700, Malebria wrote: > Sun Jun 1 17:49:51 BRT 2008 Malebria > * Haddock syntax for enumeration > > Sun Jun 1 18:25:15 BRT 2008 Malebria > * Haddock links The second patch looks good, but I don't understand the purpose of the first. Why add so many blank comment lines? Unless there is a good reason for that change, please re-record and send the 'Haddock links' patch separately. Cheers, Spencer Janssen From sjanssen at cse.unl.edu Mon Jun 2 00:36:44 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Mon Jun 2 00:29:28 2008 Subject: [xmonad] Raising Amarok In-Reply-To: <20080602041857.GC6599@celeborn> References: <20080601222717.GA13196@craft> <20080602041857.GC6599@celeborn> Message-ID: <20080602043644.GE6599@celeborn> On Sun, Jun 01, 2008 at 11:18:57PM -0500, Spencer Janssen wrote: > On Sun, Jun 01, 2008 at 06:27:18PM -0400, Gwern Branwen wrote: > > Ho everyone: > > > > I recently installed Ubuntu, and so could now use Amarok (the Gentoo installation being messed up for me), and all is well. I went to add a keybinding: > > > > > , ((m, xK_a), runOrRaise "amarok" (title =? "Amarok")) > > > > And it is kind of odd. It is the correct name, and it works correctly when Amarok is not running - but if Amarok is running, it only causes a file dialogue to open up instead of the right thing. (See attached screenshots.) > > > > Is this Amarok's fault? Any ideas how to work around it? > > > > > > -- > > gwern > > FSK S511 Zemin Monica PABX NSG mercur text Meade ULF > > Try matching on the WM_CLASS (note that it is set to "amarokapp") instead. If > this works, there might be some problem with the 'title' function. Very good advice, Spencer. I'd also add that Amarok changes title when music is playing, making it rather likely that this is not an issue with xmonad's 'title' function at all. WM_CLASS should be much more robust here since it is a violation of the ICCCM to change those properties after requesting that the window be mapped. From me at twifkak.com Mon Jun 2 01:04:30 2008 From: me at twifkak.com (Devin Mullins) Date: Mon Jun 2 00:57:19 2008 Subject: [xmonad] darcs patch: Haddock syntax for enumeration (and 1 more) In-Reply-To: <20080602042540.GD6599@celeborn> References: <20080601213451.EE8E84090@auk.riseup.net> <20080602042540.GD6599@celeborn> Message-ID: <20080602050430.GA15124@twifkak.com> On Sun, Jun 01, 2008 at 11:25:40PM -0500, Spencer Janssen wrote: > The second patch looks good, but I don't understand the purpose of the first. > Why add so many blank comment lines? Unless there is a good reason for that > change, please re-record and send the 'Haddock links' patch separately. -- 1. Blah -- -- 2. Blah renders as an
    , but -- 1. Blah -- 2. Blah renders as

    1. Blah 2. Blah

    . At least, that's what I assume it's about. I didn't look at the patch in detail. From asumu at cyberberry.com Mon Jun 2 03:51:48 2008 From: asumu at cyberberry.com (Asumu Takikawa) Date: Mon Jun 2 03:44:44 2008 Subject: [xmonad] Gnome Do config In-Reply-To: <483C5A83.4080603@therning.org> References: <483B4150.70300@therning.org> <1211876848.6396.1.camel@otto.ehbuehl.net> <483C5A83.4080603@therning.org> Message-ID: <20080602075148.GD25122@cyberberry.com> Late response and I guess you've ditched Do, but maybe someone will find it useful. I got Gnome Do working with this snippet in the management hook: , resource =? "Do" --> doIgnore It works fine for me. I bound it to mod+d and it pops up and the arrows seem to work. It disappears when I focus on a different window. Cheers, Asumu Takikawa On 20:01 Tue 27 May , Magnus Therning wrote: > Under Xmonad the drop-downs are unresponsive to up and down keys. They > won't even go away when choosing something with the mouse. The only way > I've found is to click the little triangle in the top-right corner and > choose "Exit". > > I ended up removing GnomeDo altogether, IMNSHO it's simply too broken to > be used. > > /M > > -- > Magnus Therning (OpenPGP: 0xAB4DFBA4) > magnus?therning?org Jabber: magnus?therning?gmail?com > http://therning.org/magnus From gale at sefer.org Mon Jun 2 04:57:00 2008 From: gale at sefer.org (Yitzchak Gale) Date: Mon Jun 2 04:49:44 2008 Subject: [xmonad] Session configuration in xmonad under kdm Message-ID: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> On Debian testing (Lenny), when I install the xmonad package I automatically get an "XMonad" item in the "Session type" menu on the kdm login screen. Nice! But how do I configure that session? It ignones my ~/.xsession. Thanks, Yitz From gale at sefer.org Mon Jun 2 06:54:53 2008 From: gale at sefer.org (Yitzchak Gale) Date: Mon Jun 2 06:47:36 2008 Subject: [xmonad] Re: Session configuration in xmonad under kdm In-Reply-To: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> References: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> Message-ID: <2608b8a80806020354t70a6ae4dscd6eea0ed2da1dce@mail.gmail.com> I wrote: > On Debian testing (Lenny), when I install the > xmonad package I automatically get an > "XMonad" item in the "Session type" menu > on the kdm login screen. Nice! > But how do I configure that session? It ignones > my ~/.xsession. OK, I see why. The Debian package supplies a file /usr/share/xsessions/xmonad.desktop containing the line: Exec=xmonad Instead, it should run a script that first sources xsession file(s) and then execs xmonad. I propose that: o the cross-platform standard name for this script should be "startxmonad" (/usr/bin/startxmonad on Debian). o the script should set SESSION_TYPE=xmonad so that xsession scripts can know that this is an xmonad session. o the script should first source /etc/xmonad/xsession, if it exists, then ~/.xsession if it exists. Debian bug submitted. Other platforms? Thanks, Yitz From malebria at riseup.net Mon Jun 2 13:57:52 2008 From: malebria at riseup.net (Malebria) Date: Mon Jun 2 13:50:39 2008 Subject: [xmonad] darcs patch: Haddock syntax for enumeration (and 1 more) In-Reply-To: <20080602050430.GA15124@twifkak.com> References: <20080601213451.EE8E84090@auk.riseup.net> <20080602042540.GD6599@celeborn> <20080602050430.GA15124@twifkak.com> Message-ID: <1212429472.6247.1.camel@quindinho> Em Dom, 2008-06-01 ?s 22:04 -0700, Devin Mullins escreveu: > -- 1. Blah > -- > -- 2. Blah > > renders as an
      , but > > -- 1. Blah > -- 2. Blah > > renders as

      1. Blah 2. Blah

      . Right. -- Malebria http://malebria.wordpress.com/ http://marcotmarcot.googlepages.com/ Correio eletr?nico: malebria@riseup.net XMPP: malebria@jabber.org MSN: marcotmarcot@gmail.com Telefone: 25151920 Celular: 98116720 Endere?o: Rua Turfa, 639/701 Prado 30410-370 Belo Horizonte/MG Brasil From sjanssen at cse.unl.edu Mon Jun 2 14:56:21 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Mon Jun 2 14:49:01 2008 Subject: [xmonad] darcs patch: Haddock syntax for enumeration (and 1 more) In-Reply-To: <20080601213451.EE8E84090@auk.riseup.net> References: <20080601213451.EE8E84090@auk.riseup.net> Message-ID: <20080602185621.GF6599@celeborn> On Sun, Jun 01, 2008 at 02:34:51PM -0700, Malebria wrote: > Sun Jun 1 17:49:51 BRT 2008 Malebria > * Haddock syntax for enumeration > > Sun Jun 1 18:25:15 BRT 2008 Malebria > * Haddock links Applied, thanks. From lanny at cisco.com Mon Jun 2 17:26:57 2008 From: lanny at cisco.com (Lanny Ripple) Date: Mon Jun 2 17:19:35 2008 Subject: [xmonad] xmonad-contrib patch Message-ID: <484465A1.8090601@cisco.com> Hi all, Just wanted to say Thanks! to everyone for XMonad. I've got it running with gnome for the panels but it blows the gnome WM out of the water. I did run across some functionality I wanted that didn't exist so I wrote it up (attached). On reflection I should have added a long patch message. I found WindowGo for runOrRaise but often I want to pull a window (browser, mail, etc) to my current workspace instead of going to the one it's in. copyOrRun (and underlying copyMaybe) do that. Cheers, -ljr -------------- next part -------------- New patches: [XMonad.Actions.CopyWindow runOrCopy lan3ny@gmail.com**20080602205742] { hunk ./XMonad/Actions/CopyWindow.hs 5 --- Copyright : (c) David Roundy , Ivan Veselov +-- Copyright : (c) David Roundy , Ivan Veselov , Lanny Ripple hunk ./XMonad/Actions/CopyWindow.hs 20 - copy, copyToAll, copyWindow, killAllOtherCopies, kill1 + copy, copyToAll, copyWindow, runOrCopy + , killAllOtherCopies, kill1 hunk ./XMonad/Actions/CopyWindow.hs 25 +import Control.Monad (filterM) hunk ./XMonad/Actions/CopyWindow.hs 55 +-- Instead of copying a window from a workset to a workset maybe you don't +-- want to have to remember where you placed it. For that consider: +-- +-- > , ((modMask x, xK_b ), runOrCopy "firefox" (className =? "Firefox")) -- @@ run or copy firefox +-- hunk ./XMonad/Actions/CopyWindow.hs 68 --- > , ((modMask x, xK_v )", windows copyToAll) -- @@ Make focused window always visible +-- > , ((modMask x, xK_v ), windows copyToAll) -- @@ Make focused window always visible hunk ./XMonad/Actions/CopyWindow.hs 74 --- | copy. Copy the focussed window to a new workspace. +-- | copy. Copy the focused window to a new workspace. hunk ./XMonad/Actions/CopyWindow.hs 94 + +-- | runOrCopy . runOrCopy will run the provided shell command unless it can +-- find a specified window in which case it will copy the window to +-- the current workspace. Similar to (i.e., stolen from) "XMonad.Actions.WindowGo". +runOrCopy :: String -> Query Bool -> X () +runOrCopy action = copyMaybe $ spawn action + +-- | copyMaybe. Flatters "XMonad.Actions.WindowGo" ('raiseMaybe') +copyMaybe :: X () -> Query Bool -> X () +copyMaybe f thatUserQuery = withWindowSet $ \s -> do + maybeResult <- filterM (runQuery thatUserQuery) (allWindows s) + case maybeResult of + [] -> f + (x:_) -> windows $ copyWindow x (currentTag s) + } Context: [Add missing xfce module to .cabal Don Stewart **20080602174219] [Use lines instead of columns in configuration (similar to GNOME and KDE) Malebria **20080526225337] [Bug correction when areasColumn > 1 Malebria **20080526223220] [more documentation for WindowNavigation and UrgencyHook Devin Mullins **20080525050231] [X.A.WindowNavigation: add logHook for better state tracking Devin Mullins **20080525032325] [doco tweaks Devin Mullins **20080524211849] [made fadeInactiveLogHook take an argument amount to fade Justin Bogner **20080523213937] [add FadeInactive to fade out inactive windows using xcompmgr Justin Bogner **20080523205838] [add close window functionality to EwmhDesktops Justin Bogner **20080523185908] [Add XMonad.Actions.Plane Malebria **20080523004357] [Default Xfce config, this time with me holding the copyright, maintainership, etc. Ivan.Miljenovic@gmail.com**20080522105316] [StackTile: minor documentation fix Joachim Fasting **20080521182637 That '[]' in the example seems incorrect ] [StackTile acura@allyourbase.se**20080520195559 A simple patch to get a dishes like stacking, but with the ability to resize master pane. ] [revamp Search.hs to export a replacement for simpleEngine gwern0@gmail.com**20080519190912 It's called searchEngine now, and is a wrapper around the SearchEngine type. Different type as well ] [sp ShowWName.hs gwern0@gmail.com**20080519190520] [remove ScratchWorkspace. David Roundy **20080516185729 It's ugly code, and I'd be surprised if anyone actually uses it. I see no reason to continue to maintain it. ] [Fixed location of xmonad.conf Roman Cheplyaka **20080518204602] [add site name in search prompt dialog zhen.sydow@gmail.com**20080518101357] [add youtube to search engines zhen.sydow@gmail.com**20080513212508] [SwapWorkspaces: swapTo Next|Prev Devin Mullins **20080518024121] [UrgencyHook: removeVisiblesFromUrgents -> cleanupUrgents Devin Mullins **20080515164436 Now only removes windows based on SuppressWhen setting. ] [Added XMonad.Config.PlainConfig: proof-of-concept GHC-less plain text configuration file parser Braden Shepherdson **20080517222916 An example of the config file format can be found in the Haddock. Notably missing features are docks and more layouts than just the standard three. ] [XMonad.Hooks.SetWMName: Update documentation to reflect the addition of startupHook. lithis **20080516221011] [I no longer use ScratchWorkspace. David Roundy **20080516185715] [fix bug in smartBorders when combined with decorated windows. David Roundy **20080516184855] [decent documentation for UrgencyHook Devin Mullins **20080515082222 Blame it on lack of sleep. Or perhaps the causation is the reverse. ] [X.A.WindowNavigation: currentPosition and setPosition share the same `inside` logic, now Devin Mullins **20080515062211 Aside from documentation, this is pretty much usable, now. ] [X.A.WindowNavigation: have currentPosition handle axes independently Devin Mullins **20080515053330 This improves some subtle interactions between mod-j/k and mod-w/a/s/d, though that might not become very apparent until I fix setPosition. ] [fix compile warnings in BoringWindows Devin Mullins **20080515051728] [add BoringWindows module to make certain windows skipped when rotating focus. David Roundy **20080514162846] [UrgencyHook: some documentation (more is needed) Devin Mullins **20080514080104] [UrgencyHook: got rid of the need for instances to know about suppressWhen Devin Mullins **20080514072217 This changes the API a little bit, but that's what you get for using a day-old feature from darcs. ] [move AppLauncher from Actions module to Prompt module zhen.sydow@gmail.com**20080513201252] [X.A.WindowNavigation: comment cleanup Devin Mullins **20080513091313] [windowRect now compensates for border width Devin Mullins **20080513090151 Odd that I have to do (Rectangle x y (w + 2 * bw) (h + 2 * bw)) -- you'd think the window would be centered within the bordered area. ] [X.A.WindowNavigation: update TODO Devin Mullins **20080513044229] [X.A.WindowNavigation: minor cleanup Devin Mullins **20080512170410] [X.A.WindowNavigation: simplify inr somewhat Devin Mullins **20080512090647] [X.A.WindowNavigation: clarity Devin Mullins **20080512085338] [X.A.WindowNavigation: ugh, typo Devin Mullins **20080512082228] [X.A.WindowNavigation: implement swap, extract withTargetWindow commonality Devin Mullins **20080512064715 Why doesn't mapWindows exist already? ] [add more flexible withWindowNavigationKeys Devin Mullins **20080512050637 Names aren't permanent yet, so don't cry if they change. ] [X.A.WindowNavigation: TODO Devin Mullins **20080511222116] [X.A.WindowNavigation: add withWindowNavigation, for easy setup Devin Mullins **20080511220458 This should be more flexible than it is -- I've got an idea, but am interested to hear others. ] [X.A.WindowNavigation: fix currentPosition Devin Mullins **20080511212128 Now properly deals with an unitialized state (e.g. from a restart) or an inconsistent state (e.g. from using mod-j/k). Deserves cleanup. ] [X.A.WindowNavigation: add TODOs Devin Mullins **20080511211326] [X.A.WindowNavigation state is now workspace-specific Devin Mullins **20080511071656 racking up some code debt, here... ] [X.A.WindowNavigation: minor doco changes Devin Mullins **20080506074235] [add draft XMonad.Actions.WindowNavigation Devin Mullins **20080504050022 This is an experiment with replacing the WindowNavigation LayoutModifier with one that simply adds keybindings and stores state in an IORef. Credit to droundy for the original code -- hopefully I'm not butchering it. The end intent is to add Xinerama support, but it'll be a little while before I get there. ] [new contrib module to launch apps with command line parameters zhen.sydow@gmail.com**20080513134754] [pull suppressWhen logic into main WithUrgencyHook handler Devin Mullins **20080513075247 In order for this to work, I added a new UrgencyHook method to communicate the SuppressWhen value. I'm not sure if this is actually better than just providing a convenience function, but it's an easy switch. ] [add suppressWhen option to dzenUrgencyHook Devin Mullins **20080513054615] [WindowNavigation: extract navigable function Devin Mullins **20080422045248] [UrgencyHook: doc typo Devin Mullins **20080512052137] [UrgencyHook: extract whenNotVisible Devin Mullins **20080512041852] [SpawnUrgencyHook, FWIW Devin Mullins **20080512040449] [make UrgencyHook an EventHook Devin Mullins **20080512024822 This gets rid of the stupid bug that led to a need for the clearBit hack, and allowed me to simplify the types (since EventHooks aren't required to parameterize on the window type). Config files need not change, unless they declare instances of UrgencyHook, in which case, they should remove "Window" as is seen in this patch. ] ['xmobar' function added to DynamicLog for running xmobar with some defaults Ivan N. Veselov **20080508194918] [HintedTile: Fix mistake in documentation. lithis **20080508003552] [Use gnome-session-save for the mod-shift-q binding Spencer Janssen **20080507082205] [Use the named constant 'none' rather than 0 Spencer Janssen **20080507081854] [HintedTile: Improve documentation. lithis **20080508000245] [Whitespace only Spencer Janssen **20080507031306] [Add a binding for Gnome's "Run Application" dialog Spencer Janssen **20080507031127] [Add some keybindings to the Kde config Spencer Janssen **20080507022658] [Indentation Spencer Janssen **20080507022553] [Add ToggleStruts to the desktop config Spencer Janssen **20080507022516] [Refactor my config Spencer Janssen **20080507021504] [Add XMonad.Config.Kde Spencer Janssen **20080507020833] [Don't move the pointer if the user is moving the mouse Klaus Weidner **20080417022234 This patch depends on the following xmonad core patch: Remember if focus changes were caused by mouse actions or by key commands If the user was moving the mouse, it's not appropriate to move the pointer around in resonse to focus changes. Do that only in response to keyboard commands. ] [Missing pragmas Don Stewart **20080506053402] [Add full documentation Don Stewart **20080505210546] [minor cleanup on getName Devin Mullins **20080504054923] [bug doco for UrgencyHook Devin Mullins **20080426203638] [NamedWindows: when converting the text property, handle the empty list. Spencer Janssen **20080502104249 This fixes a "Prelude.head" exception observed with windows that have no title. Reproduce by placing several windows in the tabbed layout, then starting 'xterm -name ""'. Thanks to Andrea for pointing out the issue. ] [Fix issue #179 by handling events correctly Andrea Rossato **20080501062357] [My monitor is larger now :) Spencer Janssen **20080430083026] [manageHooks for my config Spencer Janssen **20080430082536] [Remove redundant type signature Spencer Janssen **20080430082447] [Add XMonad.Config.Desktop and XMonad.Config.Gnome Spencer Janssen **20080430082253] [Alphabetize exposed-modules Spencer Janssen **20080430035453] [new contrib layout: XMonad.Layout.SimplestFloat - A floating layout like SimpleFloat, but without decoration joamaki@gmail.com**20080424220957] [stricitfy some gap fields Don Stewart **20080427191247] [XMonad.Hooks.ManageHelpers: quick&dirty support for _NET_WM_STATE_FULLSCREEN Lukas Mai **20080426132745] [XMonad.Hooks.Script: haddock fixes Lukas Mai **20080426132629] [Error fix for Tabbed when tabbar always shown Ivan.Miljenovic@gmail.com**20080424063135] [remove my config file -- the wiki is where its at. Don Stewart **20080419195650] [tweaks to docs for SimpleDecoration Don Stewart **20080418215155] [Allow tabbar to always be shown. Ivan.Miljenovic@gmail.com**20080415043728 Patch take 4, hopefully the final version. Includes droundy's suggestions. ] [polish Don Stewart **20080418033133] [Script-based hooks Trevor Elliott **20080416213024] [Don't strictify the Display component, this triggers a bug in GHC 6.6 Spencer Janssen **20080416185733] [Fix to IM modifier. Roman Cheplyaka **20080414232437 Avoid differentiating integrated stack by using StackSet.filter. ] [IM layout converted to LayoutModifier, which can be applied to any layout Ivan N. Veselov **20080413205824] [stictify some fields Don Stewart **20080413070117] [strictify some fields Don Stewart **20080413065958] [Fix window order in EWMH Joachim Breitner **20080411134411 For pagers to draw the stacking order correctly, the focused window has to be the last in the list. Thus put an appropriate implementation of allWindows into the Module. This does not work perfectly with floating windows. ] [remove myself as maintainer of CopyWindow. David Roundy **20080409144333 I'm not sure who's maintaining this, but it's not me. ] [XMonad.Util.WindowProperties: add WM_WINDOW_ROLE as Role Roman Cheplyaka **20080409174935] [Generalize copyWindow, minor style change Spencer Janssen **20080408210050] [XMonad.Actions.CopyWindow: added copyToAll and killAllOtherCopies functions Ivan N. Veselov **20080408195111] [XMonad.Actions.UpdatePointer: doc fix Lukas Mai **20080407152741] [XMonad.Util.Font: minor reformatting Lukas Mai **20080406020935] [DynamicLog: resolve merge conflict Lukas Mai **20080406020527] [Encode the entire DynamicLog output, instead of just window title. lithis **20080329031537] [DynamicLog: add support for UTF-8 locales when compiled with XFT or UFT-8 support Andrea Rossato **20080313102643] [XMonad.Util.Font: don't call setlocale; core does it for us Lukas Mai **20080406013123] [XMonad.Util.NamedWindows: fix imports Lukas Mai **20080326172745] [Changed getName to use locale-aware functions Mats Jansborg **20070819132104 Rewrote getName using getTextProperty and wcTextPropertyToTextList. ] [Added next-window versions of the raise* functions. Ian Zerny **20080405182900] [XMonad.Layout.Master: initial import Lukas Mai **20080404220734] [update contrib for applySizeHints changes Lukas Mai **20080404220558] [XMonad.Hooks.ManageDocks: haddock fix Lukas Mai **20080404220532] [MultiToggle/Instances: ghc 6.6 can't parse LANGUAGE pragma Brent Yorgey **20080404200157] [Document _NET_ACTIVE_WINDOW behaviour more exactly Joachim Breitner **20080404072944] [_NET_ACTIVE_WINDOW moves windows if necessary Joachim Breitner *-20080402143811 This makes EWMH behave a bit more like metacity: If _NET_ACTIVE_WINDOW is received and the window is not on the current worspace, it is brought here (instead of the workspace switched to the other one). So for example, if you click on the pidgin icon in the panel and the buddy list is already open some where it is moved here. ] [onstart=lower, solves floating dzen issue Don Stewart **20080403203425] [some bang patterns Don Stewart **20080403172246] [have 'dzen' use autoStruts to detect the gaps Don Stewart **20080403003130] [Actions/Search.hs: add dictionary.com search Brent Yorgey **20080402150521] [_NET_ACTIVE_WINDOW moves windows if necessary Joachim Breitner **20080402143811 This makes EWMH behave a bit more like metacity: If _NET_ACTIVE_WINDOW is received and the window is not on the current worspace, it is brought here (instead of the workspace switched to the other one). So for example, if you click on the pidgin icon in the panel and the buddy list is already open some where it is moved here. ] [HintedGrid: guesstimate window flexibility and layout rigid windows first Lukas Mai **20080402042846] [HintedGrid: try both bottom-up/top-down window placement to minimize unused space Lukas Mai **20080402012538] [Grid/HintedGrid: use an ncolumns formula inspired by dwm's "optimal" mode Lukas Mai **20080402012126] [XMonad.Layout.Gaps: new contrib module for manual gap support, in the few cases where ManageDocks is not appropriate (dock apps that don't set STRUTS properly, adjusting for a display that is cut off on one edge, etc.) Brent Yorgey **20080402003742] [improve WindowGo.hs Haddock formatting gwern0@gmail.com**20080401023130] [forgot a haddock for getEditor in Shell.hs gwern0@gmail.com**20080401022012] [WindowGo.hs: +raiseBrowser, raiseEditor gwern0@gmail.com**20080401021740 Specialize runOrRaise in the same way as with Actions.Search, for one's browser and one's editors. ] [RunOrRaise.hs: FF 3 doesn't use the "Firefox-bin" classname gwern0@gmail.com**20080401015049] [Search.hs: remove an argument from selectSearch and promptSearch gwern0@gmail.com**20080401013947 The new getBrowser function allows us to mv the old selectSearch and promptSearch aside as too-general functions, and replace them with new versions, which employ getBrowser to supply one more argument. This allows us to replace the tedious 'selectSearch google "firefox"; selectSearch yahoo "firefox"...' with shorter 'selectSearch google' and so on. One less argument. Also, update the docs. ] [Shell.hs: +getBrowser, getEditor, helper function gwern0@gmail.com**20080401013447 The helper function asks the shell for the value of a variable, else returns the second argument. getBrowser and getEditor obviously specialize it for two particular possibly queries ] [XMonad.Layout.HintedGrid: initial import Lukas Mai **20080401231722] [Documentation improvement. Roman Cheplyaka **20080401134305] [Remove broken link to screenshot. Roman Cheplyaka **20080331210854] [MultiToggle: add new XMonad.Layout.MultiToggle.Instances module for common instances of Transformer, update MultiToggle docs accordingly Brent Yorgey **20080331201739] [XMonad.Actions.CycleRecentWS: initial import Michal Janeczek **20080331111906] [XMonad.Hooks.ManageDocks: export checkDoc Lukas Mai **20080331012911] [XMonad.Layout.Grid: fix indentation Lukas Mai **20080330004859] [move Direction type from WindowNavigation to ManageDocks (ManageDocks will move into the core, taking Direction with it) Brent Yorgey **20080331010127] [ManageDocks: clean up + add more documentation Brent Yorgey **20080331002929] [Util.Run, Hooks.DynamicLog: re-export hPutStrLn and hPutStr from Util.Run for convenience, and update DynamicLog documentation to show proper imports Brent Yorgey **20080328205446] [ManageDocks: add avoidStrutsOn, for covering some docks and not others by default. Brent Yorgey **20080327203940] [ManageDocks: add ability to toggle individual gaps independently Brent Yorgey **20080327111722] [PerWorkspace: add modWorkspace(s) combinators, for selectively applying layout modifiers to certain workspaces but not others Brent Yorgey **20080326214351] [Haddock fix Roman Cheplyaka **20080330134435] [Remove stale status gaps code Spencer Janssen **20080329230737] [TAG 0.7 Spencer Janssen **20080329202416] Patch bundle hash: 5157bf911d10104199e1082ce9ab21409a87d1bd From gwern0 at gmail.com Mon Jun 2 18:52:40 2008 From: gwern0 at gmail.com (Gwern Branwen) Date: Mon Jun 2 18:47:13 2008 Subject: [xmonad] Raising Amarok In-Reply-To: <20080602043644.GE6599@celeborn> References: <20080601222717.GA13196@craft> <20080602041857.GC6599@celeborn> <20080602043644.GE6599@celeborn> Message-ID: <20080602225240.GA13218@craft> On 2008.06.01 23:36:44 -0500, Spencer Janssen scribbled 1.2K characters: > On Sun, Jun 01, 2008 at 11:18:57PM -0500, Spencer Janssen wrote: > > On Sun, Jun 01, 2008 at 06:27:18PM -0400, Gwern Branwen wrote: > > > Ho everyone: > > > > > > I recently installed Ubuntu, and so could now use Amarok (the Gentoo installation being messed up for me), and all is well. I went to add a keybinding: > > > > > > > , ((m, xK_a), runOrRaise "amarok" (title =? "Amarok")) > > > > > > And it is kind of odd. It is the correct name, and it works correctly when Amarok is not running - but if Amarok is running, it only causes a file dialogue to open up instead of the right thing. (See attached screenshots.) > > > > > > Is this Amarok's fault? Any ideas how to work around it? > > > > > > -- > > > gwern > > > FSK S511 Zemin Monica PABX NSG mercur text Meade ULF > > > > Try matching on the WM_CLASS (note that it is set to "amarokapp") instead. If > > this works, there might be some problem with the 'title' function. > > Very good advice, Spencer. I'd also add that Amarok changes title when music > is playing, making it rather likely that this is not an issue with xmonad's > 'title' function at all. WM_CLASS should be much more robust here since it is > a violation of the ICCCM to change those properties after requesting that the > window be mapped. Yes, className "amarokapp" works fine. I asked because title to me was not failing in a familiar way - usually when I use 'title' and it fails, it is because the title has changed, and so title fails to find the existing app and it then falls through to the run part. It does not usually "sort of work" by bringing up some file dialogue! -- gwern sweeping Hitwords Intelsat Counter Cohiba Sayeret Rumsfeld VOA warfare encryption -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://www.haskell.org/pipermail/xmonad/attachments/20080602/ff43fde6/attachment.bin From xj2106 at columbia.edu Mon Jun 2 19:58:14 2008 From: xj2106 at columbia.edu (Xiao-Yong Jin) Date: Mon Jun 2 19:54:19 2008 Subject: [xmonad] Raising Amarok In-Reply-To: <20080602225240.GA13218@craft> (Gwern Branwen's message of "Mon, 2 Jun 2008 18:52:40 -0400") References: <20080601222717.GA13196@craft> <20080602041857.GC6599@celeborn> <20080602043644.GE6599@celeborn> <20080602225240.GA13218@craft> Message-ID: <871w3f2xux.fsf@columbia.edu> Gwern Branwen writes: > On 2008.06.01 23:36:44 -0500, Spencer Janssen scribbled 1.2K characters: >> >> Very good advice, Spencer. I'd also add that Amarok changes title when music >> is playing, making it rather likely that this is not an issue with xmonad's >> 'title' function at all. WM_CLASS should be much more robust here since it is >> a violation of the ICCCM to change those properties after requesting that the >> window be mapped. > > Yes, className "amarokapp" works fine. I asked because title to me was not failing in a familiar way - usually when I use 'title' and it fails, it is because the title has changed, and so title fails to find the existing app and it then falls through to the run part. It does not usually "sort of work" by bringing up some file dialogue! If you try to run "amarok" from CLI while an instance of Amarok is running, you will see the open-file dialog. Xiao-Yong -- c/* __o/* <\ * (__ */\ < From gwern0 at gmail.com Mon Jun 2 20:52:43 2008 From: gwern0 at gmail.com (Gwern Branwen) Date: Mon Jun 2 20:46:04 2008 Subject: [xmonad] Raising Amarok In-Reply-To: <871w3f2xux.fsf@columbia.edu> References: <20080601222717.GA13196@craft> <20080602041857.GC6599@celeborn> <20080602043644.GE6599@celeborn> <20080602225240.GA13218@craft> <871w3f2xux.fsf@columbia.edu> Message-ID: <20080603005243.GB10339@craft> On 2008.06.02 19:58:14 -0400, Xiao-Yong Jin scribbled 1.0K characters: > Gwern Branwen writes: > > > On 2008.06.01 23:36:44 -0500, Spencer Janssen scribbled 1.2K characters: > >> > >> Very good advice, Spencer. I'd also add that Amarok changes title when music > >> is playing, making it rather likely that this is not an issue with xmonad's > >> 'title' function at all. WM_CLASS should be much more robust here since it is > >> a violation of the ICCCM to change those properties after requesting that the > >> window be mapped. > > > > Yes, className "amarokapp" works fine. I asked because title to me was not failing in a familiar way - usually when I use 'title' and it fails, it is because the title has changed, and so title fails to find the existing app and it then falls through to the run part. It does not usually "sort of work" by bringing up some file dialogue! > > If you try to run "amarok" from CLI while an instance of > Amarok is running, you will see the open-file dialog. > > Xiao-Yong I tried that just now. When Amarok is running, a > /usr/bin/amarok just returns successfully. Perhaps the Ubuntu Heron Amarok is different from yours. -- gwern Ma Hindawi WID JTF-6 Gorizont BROMURE Submarine hitword ERR SORT -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://www.haskell.org/pipermail/xmonad/attachments/20080602/fadb8ca0/attachment.bin From gwern0 at gmail.com Mon Jun 2 22:53:52 2008 From: gwern0 at gmail.com (Gwern Branwen) Date: Mon Jun 2 22:47:40 2008 Subject: [xmonad] xmonad-contrib patch In-Reply-To: <484465A1.8090601@cisco.com> References: <484465A1.8090601@cisco.com> Message-ID: <20080603025352.GA15173@craft> On 2008.06.02 16:26:57 -0500, Lanny Ripple scribbled 21K characters: > Hi all, > > Just wanted to say Thanks! to everyone for XMonad. I've got it > running with gnome for the panels but it blows the gnome WM out of > the water. > > I did run across some functionality I wanted that didn't exist so I > wrote it up (attached). On reflection I should have added a long > patch message. I found WindowGo for runOrRaise but often I want to > pull a window (browser, mail, etc) to my current workspace instead > of going to the one it's in. copyOrRun (and underlying copyMaybe) > do that. > > Cheers, > -ljr This looks interesting, but I am not thrilled by the duplication of raiseMaybe's code (DRY). Could raiseMaybe and copyMaybe be specialized functions instead, perhaps? It would look something like this, I guess: somethingMaybe ? (Window -> X ()) -> X () ? Query Bool ? X () somethingMaybe doWin f thatUserQuery = withWindowSet $ ?s ? do maybeResult ? filterM (runQuery thatUserQuery) (W.allWindows s) case maybeResult of [] ? f (x:_) ? doWin x raiseMaybe = somethingMaybe focus copyMaybe = somethingMaybe (windows . flip copyWindow (currentTag s)) -- gwern SBU botux Crust SALDV hrt .45 Threat Nike comsat 747 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://www.haskell.org/pipermail/xmonad/attachments/20080602/1960720f/attachment.bin From lanny at cisco.com Tue Jun 3 10:42:42 2008 From: lanny at cisco.com (Lanny Ripple) Date: Tue Jun 3 10:41:41 2008 Subject: [xmonad] xmonad-contrib patch In-Reply-To: <20080603025352.GA15173@craft> References: <484465A1.8090601@cisco.com> <20080603025352.GA15173@craft> Message-ID: <48455862.3060903@cisco.com> I wasn't thrilled with it either but wasn't sure where to put actionMaybe (the name I had for it). In WindowGo and import into CopyWindow? In a new Util module and import into both? There's also the problem that focus :: win -> X () (windows . copyWindow) :: win -> ws -> X() where 'ws' has to be discovered in actionMaybe. So raiseMaybe = actionMaybe (focus . const) copyMaybe = actionMaybe (windows . copyWindow) actionMaybe = (Window -> Workspace -> X ()) -> Query Bool -> X () actionMaybe doWin f thatUserQuery = withWindowSet $ \x -> do maybeResult <- filterM (runQuery thatUserQuery) (allWindows s) case maybeResult of [] -> f (win:_) -> doWin win (currentTag s) which I don't know if I'm happy about. Anyway happy to make the changes if I can get some advice on where to put the abstracted (hoisted?, common?) code. -ljr Gwern Branwen wrote: > On 2008.06.02 16:26:57 -0500, Lanny Ripple scribbled 21K characters: >> Hi all, >> >> Just wanted to say Thanks! to everyone for XMonad. I've got it >> running with gnome for the panels but it blows the gnome WM out of >> the water. >> >> I did run across some functionality I wanted that didn't exist so I >> wrote it up (attached). On reflection I should have added a long >> patch message. I found WindowGo for runOrRaise but often I want to >> pull a window (browser, mail, etc) to my current workspace instead >> of going to the one it's in. copyOrRun (and underlying copyMaybe) >> do that. >> >> Cheers, >> -ljr > > This looks interesting, but I am not thrilled by the duplication of raiseMaybe's code (DRY). Could raiseMaybe and copyMaybe be specialized functions instead, perhaps? > > It would look something like this, I guess: > > somethingMaybe ??? (Window -> X ()) -> X () ??? Query Bool ??? X () > somethingMaybe doWin f thatUserQuery = withWindowSet $ ??s ??? do > maybeResult ??? filterM (runQuery thatUserQuery) (W.allWindows s) > case maybeResult of > [] ??? f > (x:_) ??? doWin x > > raiseMaybe = somethingMaybe focus > copyMaybe = somethingMaybe (windows . flip copyWindow (currentTag s)) > > -- > gwern > SBU botux Crust SALDV hrt .45 Threat Nike comsat 747 From hitch at propheteer.org Tue Jun 3 11:38:04 2008 From: hitch at propheteer.org (Chris Sanner) Date: Tue Jun 3 11:31:08 2008 Subject: [xmonad] Gnome Do config In-Reply-To: <20080602075148.GD25122@cyberberry.com> References: <483B4150.70300@therning.org> <1211876848.6396.1.camel@otto.ehbuehl.net> <483C5A83.4080603@therning.org> <20080602075148.GD25122@cyberberry.com> Message-ID: <4845655C.7030103@propheteer.org> I tried this - and it used to work - but adding it to the configs for managedocks has proven tricky. I'm...well, completely bewildered by the config file. for reference, here's what I've got, cobbled together from other people's...but it doesn't work. import XMonad import XMonad.Hooks.ManageDocks import XMonad.Hooks.EwmhDesktops import XMonad.Hooks.UrgencyHook import XMonad.Actions.CycleWS main = do xmonad $ withUrgencyHook NoUrgencyHook $ defaultConfig { manageHook = manageHook defaultConfig <+> myManageHook , terminal = "konsole" , focusedBorderColor = "blue" , logHook = ewmhDesktopsLogHook , layoutHook = avoidStruts $ layoutHook defaultConfig } where myManageHook = composeAll . concat $ [ [manageDocks] , [ resource =? "Do.exe" --> doIgnore ] ] Asumu Takikawa wrote: > Late response and I guess you've ditched Do, but maybe someone will find > it useful. I got Gnome Do working with this snippet in the management hook: > > , resource =? "Do" --> doIgnore > > It works fine for me. I bound it to mod+d and it pops up and the arrows > seem to work. It disappears when I focus on a different window. > > Cheers, > Asumu Takikawa > > On 20:01 Tue 27 May , Magnus Therning wrote: >> Under Xmonad the drop-downs are unresponsive to up and down keys. They >> won't even go away when choosing something with the mouse. The only way >> I've found is to click the little triangle in the top-right corner and >> choose "Exit". >> >> I ended up removing GnomeDo altogether, IMNSHO it's simply too broken to >> be used. >> >> /M >> >> -- >> Magnus Therning (OpenPGP: 0xAB4DFBA4) >> magnus?therning?org Jabber: magnus?therning?gmail?com >> http://therning.org/magnus > _______________________________________________ > xmonad mailing list > xmonad@haskell.org > http://www.haskell.org/mailman/listinfo/xmonad > From codesite-noreply at google.com Wed Jun 4 23:26:20 2008 From: codesite-noreply at google.com (codesite-noreply@google.com) Date: Wed Jun 4 23:18:54 2008 Subject: [xmonad] Issue 190 in xmonad: FF3 steals focus Message-ID: <0016e64af356b473d0044ee2e8e5@google.com> Issue 190: FF3 steals focus http://code.google.com/p/xmonad/issues/detail?id=190 Comment #4 by curolan.zebeth: Looks like my relief was premature. I don't really like loadDivertedInBackground; I prefer firefox open the new tab in the foreground. Plus FF3 still steals focus in a few other circumstances, e.g. when it starts up. :/ -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings From l.mai at web.de Thu Jun 5 00:57:53 2008 From: l.mai at web.de (Lukas Mai) Date: Thu Jun 5 00:50:57 2008 Subject: [xmonad] darcs patch: pass mouse clicks on to focused windows (experimental) Message-ID: Thu Jun 5 06:54:23 CEST 2008 Lukas Mai * pass mouse clicks on to focused windows (experimental) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 4339 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080605/a7e12fb8/attachment.bin From nomeata at debian.org Thu Jun 5 17:36:05 2008 From: nomeata at debian.org (Joachim Breitner) Date: Thu Jun 5 17:28:37 2008 Subject: [xmonad] Re: Session configuration in xmonad under kdm In-Reply-To: <2608b8a80806020354t70a6ae4dscd6eea0ed2da1dce@mail.gmail.com> References: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> <2608b8a80806020354t70a6ae4dscd6eea0ed2da1dce@mail.gmail.com> Message-ID: <1212701765.3483.45.camel@otto.ehbuehl.net> Hi, I did not see any responses on this mail: Am Montag, den 02.06.2008, 13:54 +0300 schrieb Yitzchak Gale: > OK, I see why. The Debian package supplies a > file /usr/share/xsessions/xmonad.desktop > containing the line: > > Exec=xmonad > > Instead, it should run a script that first sources > xsession file(s) and then execs xmonad. > > I propose that: > > o the cross-platform standard name > for this script should be "startxmonad" > (/usr/bin/startxmonad on Debian). > o the script should set SESSION_TYPE=xmonad so that > xsession scripts can know that this is an xmonad session. > o the script should first source /etc/xmonad/xsession, > if it exists, then ~/.xsession if it exists. > > Debian bug submitted. I?m willing to fix this in the debian package, but I?d prefer a non-debian-specific solution, so what do you think of this? Would you add a session script to the next release? Thanks, Joachim -- Joachim "nomeata" Breitner Debian Developer nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: Dies ist ein digital signierter Nachrichtenteil Url : http://www.haskell.org/pipermail/xmonad/attachments/20080605/5b6c04f4/attachment.bin From trevor at galois.com Thu Jun 5 18:11:05 2008 From: trevor at galois.com (Trevor Elliott) Date: Thu Jun 5 18:05:01 2008 Subject: [xmonad] darcs patch: add c-w to XMonad.Prompt Message-ID: <1212703865.5034.24.camel@trogdor> Skipped content of type multipart/mixed-------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part Url : http://www.haskell.org/pipermail/xmonad/attachments/20080605/1dc84702/attachment-0001.bin From sjanssen at cse.unl.edu Thu Jun 5 18:54:39 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Thu Jun 5 18:46:58 2008 Subject: [xmonad] darcs patch: add c-w to XMonad.Prompt In-Reply-To: <1212703865.5034.24.camel@trogdor> References: <1212703865.5034.24.camel@trogdor> Message-ID: <20080605225439.GG6599@celeborn> On Thu, Jun 05, 2008 at 03:11:05PM -0700, Trevor Elliott wrote: > Hi All, > > This patch adds the C-w binding to kill the previous word when using the > prompt extension. > > --trevor Applied, thanks. From sjanssen at cse.unl.edu Thu Jun 5 19:04:33 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Thu Jun 5 18:56:53 2008 Subject: [xmonad] Session configuration in xmonad under kdm In-Reply-To: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> References: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> Message-ID: <20080605230433.GH6599@celeborn> On Mon, Jun 02, 2008 at 11:57:00AM +0300, Yitzchak Gale wrote: > On Debian testing (Lenny), when I install the > xmonad package I automatically get an > "XMonad" item in the "Session type" menu > on the kdm login screen. Nice! > > But how do I configure that session? It ignones > my ~/.xsession. > > Thanks, > Yitz Is ~/.xsession the right place? I know that I start xmonad inside my .xsession, which is obviously a problem if we'd like to source it in a WM initialization routine. How do GNOME and KDE handle this? Cheers, Spencer Janssen From sjanssen at cse.unl.edu Thu Jun 5 19:27:03 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Thu Jun 5 19:19:30 2008 Subject: [xmonad] Re: Session configuration in xmonad under kdm In-Reply-To: <1212701765.3483.45.camel@otto.ehbuehl.net> References: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> <2608b8a80806020354t70a6ae4dscd6eea0ed2da1dce@mail.gmail.com> <1212701765.3483.45.camel@otto.ehbuehl.net> Message-ID: <20080605232703.GI6599@celeborn> On Thu, Jun 05, 2008 at 09:36:05PM +0000, Joachim Breitner wrote: > Hi, > > I did not see any responses on this mail: > > Am Montag, den 02.06.2008, 13:54 +0300 schrieb Yitzchak Gale: > > OK, I see why. The Debian package supplies a > > file /usr/share/xsessions/xmonad.desktop > > containing the line: > > > > Exec=xmonad > > > > Instead, it should run a script that first sources > > xsession file(s) and then execs xmonad. > > > > I propose that: > > > > o the cross-platform standard name > > for this script should be "startxmonad" > > (/usr/bin/startxmonad on Debian). > > o the script should set SESSION_TYPE=xmonad so that > > xsession scripts can know that this is an xmonad session. > > o the script should first source /etc/xmonad/xsession, > > if it exists, then ~/.xsession if it exists. > > > > Debian bug submitted. > > I?m willing to fix this in the debian package, but I?d prefer a > non-debian-specific solution, so what do you think of this? Would you > add a session script to the next release? > > Thanks, > Joachim Sure, assuming that the 'startxmonad' script is sufficiently platform agnostic. Could we also provide the xmonad.desktop file? Are there any comments from the other distribution teams (Gentoo, Arch, etc.)? Cheers, Spencer Janssen From dschein at fsinnovations.net Fri Jun 6 10:32:45 2008 From: dschein at fsinnovations.net (David S.) Date: Fri Jun 6 10:25:07 2008 Subject: [xmonad] focus but hidden Message-ID: <48494A8D.5060305@fsinnovations.net> Occasionally I will have 2 or more windows on a workspace and fullscreen tiling and when I switch focus, the red border on the visible window goes away, but it does not switch to the other window. My only recourse then is to move the windows to other workspaces to see them all. To get the workspace to behave correctly I have to delete them all or move them all. I am running Ubuntu Hardy and aptitude shows that I have xmonad 0.6-3 installed, though $ xmonad --version shows 0.5, which I find disconcerting. I have to say, I enjoy xmonad so much I am willing to put up with this inconvenient behavior...but it would be nice to fix it. Thanks for any help. Peace, David S From lanny at cisco.com Fri Jun 6 10:44:48 2008 From: lanny at cisco.com (Lanny Ripple) Date: Fri Jun 6 10:37:21 2008 Subject: [xmonad] focus but hidden In-Reply-To: <48494A8D.5060305@fsinnovations.net> References: <48494A8D.5060305@fsinnovations.net> Message-ID: <48494D60.1040506@cisco.com> Sounds like xmonad might have been installed both by your debian package manager and by hand if you have both. Commands to check ghc-pkg list # ghc dpkg --list | grep xmonad # debian -ljr David S. wrote: > Occasionally I will have 2 or more windows on a workspace and > fullscreen tiling and when I switch focus, the red border on the visible > window goes away, but it does not switch to the other window. > > My only recourse then is to move the windows to other workspaces to see > them all. To get the workspace to behave correctly I have to delete > them all or move them all. > > I am running Ubuntu Hardy and aptitude shows that I have xmonad 0.6-3 > installed, though $ xmonad --version shows 0.5, which I find disconcerting. > > I have to say, I enjoy xmonad so much I am willing to put up with this > inconvenient behavior...but it would be nice to fix it. > > Thanks for any help. > Peace, > David S > _______________________________________________ > xmonad mailing list > xmonad@haskell.org > http://www.haskell.org/mailman/listinfo/xmonad From mail at justinbogner.com Fri Jun 6 11:02:05 2008 From: mail at justinbogner.com (Justin Bogner) Date: Fri Jun 6 10:54:35 2008 Subject: [xmonad] Re: focus but hidden In-Reply-To: <48494D60.1040506@cisco.com> References: <48494A8D.5060305@fsinnovations.net> <48494D60.1040506@cisco.com> Message-ID: <4849516D.3070101@justinbogner.com> Lanny Ripple wrote: > Sounds like xmonad might have been installed both by your debian > package manager and by hand if you have both. Commands to check > > ghc-pkg list # ghc > dpkg --list | grep xmonad # debian > > -ljr > XMonad 0.6 output 0.5 as its version, unfortunately. The package in Ubuntu is really 0.6, despite what xmonad --version says _____ Justin Bogner From dougal at dougalstanton.net Fri Jun 6 12:13:17 2008 From: dougal at dougalstanton.net (Dougal Stanton) Date: Fri Jun 6 12:05:49 2008 Subject: [xmonad] focus but hidden In-Reply-To: <48494A8D.5060305@fsinnovations.net> References: <48494A8D.5060305@fsinnovations.net> Message-ID: <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> On Fri, Jun 6, 2008 at 3:32 PM, David S. wrote: > Occasionally I will have 2 or more windows on a workspace and fullscreen > tiling and when I switch focus, the red border on the visible window goes > away, but it does not switch to the other window. > > My only recourse then is to move the windows to other workspaces to see them > all. To get the workspace to behave correctly I have to delete them all or > move them all. This may sound silly, but have you accidentally floated your front window? It can be easy to do if you hold down the xmonad meta-key and click in the window. It wouldn't be immediately obvious but you'd never get your other windows back. Try meta-t to tile them again (for whatever meta key you have bound; I think the default is alt?). Cheers, D -- Dougal Stanton dougal@dougalstanton.net // http://www.dougalstanton.net From dschein at fsinnovations.net Fri Jun 6 12:20:57 2008 From: dschein at fsinnovations.net (David S.) Date: Fri Jun 6 12:13:23 2008 Subject: [xmonad] focus but hidden In-Reply-To: <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> References: <48494A8D.5060305@fsinnovations.net> <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> Message-ID: <484963E9.304@fsinnovations.net> Dougal Stanton wrote: > On Fri, Jun 6, 2008 at 3:32 PM, David S. wrote: > >> Occasionally I will have 2 or more windows on a workspace and fullscreen >> tiling and when I switch focus, the red border on the visible window goes >> away, but it does not switch to the other window. >> >> >> > > This may sound silly, but have you accidentally floated your front > window? It can be easy to do if you hold down the xmonad meta-key and > click in the window. It wouldn't be immediately obvious but you'd > never get your other windows back. > > Try meta-t to tile them again (for whatever meta key you have bound; I > think the default is alt?). > > Cheers, > > D > > Sweet! That was it---I should just disable this touchpad on my laptop. Thanks much. Peace, David S. From dons at galois.com Fri Jun 6 12:51:04 2008 From: dons at galois.com (Don Stewart) Date: Fri Jun 6 12:43:48 2008 Subject: [xmonad] focus but hidden In-Reply-To: <484963E9.304@fsinnovations.net> References: <48494A8D.5060305@fsinnovations.net> <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> <484963E9.304@fsinnovations.net> Message-ID: <20080606165104.GA1253@scytale.galois.com> dschein: > Dougal Stanton wrote: > >On Fri, Jun 6, 2008 at 3:32 PM, David S. > >wrote: > > > >>Occasionally I will have 2 or more windows on a workspace and fullscreen > >>tiling and when I switch focus, the red border on the visible window goes > >>away, but it does not switch to the other window. > >> > >> > >> > > > >This may sound silly, but have you accidentally floated your front > >window? It can be easy to do if you hold down the xmonad meta-key and > >click in the window. It wouldn't be immediately obvious but you'd > >never get your other windows back. > > > >Try meta-t to tile them again (for whatever meta key you have bound; I > >think the default is alt?). > > > >Cheers, > > > >D > > > > > Sweet! That was it---I should just disable this touchpad on my laptop. > Thanks much. I wonder what more we could do to signal something has floated. -- Don From vogt.adam at gmail.com Fri Jun 6 15:44:14 2008 From: vogt.adam at gmail.com (Adam Vogt) Date: Fri Jun 6 15:36:56 2008 Subject: [xmonad] focus but hidden In-Reply-To: <20080606165104.GA1253@scytale.galois.com> References: <48494A8D.5060305@fsinnovations.net> <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> <484963E9.304@fsinnovations.net> <20080606165104.GA1253@scytale.galois.com> Message-ID: <20080606194414.GA2688@acer> * On Friday, June 06 2008, Don Stewart wrote: >I wonder what more we could do to signal something has floated. > >-- Don Sometimes I also get confused when a floating window looks like it isn't one. Have a different floating border colour and or width. The window title and colour could be modifed via XMonad.Hooks.Loghook From mail at justinbogner.com Fri Jun 6 23:10:00 2008 From: mail at justinbogner.com (Justin Bogner) Date: Fri Jun 6 23:02:30 2008 Subject: [xmonad] Re: focus but hidden In-Reply-To: <20080606165104.GA1253@scytale.galois.com> References: <48494A8D.5060305@fsinnovations.net> <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> <484963E9.304@fsinnovations.net> <20080606165104.GA1253@scytale.galois.com> Message-ID: <4849FC08.2020006@justinbogner.com> Don Stewart wrote: > > I wonder what more we could do to signal something has floated. > > -- Don It might be simpler just to make it harder to accidentally float windows. For example, I changed the binding to float windows to Mod-Shift- so that it only happens if I really want it to. _____ Justin Bogner From gwern0 at gmail.com Sat Jun 7 03:17:01 2008 From: gwern0 at gmail.com (gwern0@gmail.com) Date: Sat Jun 7 03:11:50 2008 Subject: [xmonad] darcs patch: Prompt.hs: +a historyCompletion function... (and 1 more) Message-ID: <484a3676.1bf0220a.68c7.ffffcc73@mx.google.com> Sat Jun 7 03:12:25 EDT 2008 gwern0@gmail.com * Prompt.hs: +a historyCompletion function for use in XPrompts Sat Jun 7 03:13:31 EDT 2008 gwern0@gmail.com * Actions.Search.hs: switch inappropriate use of getShellCompl for a historyCompletion It's inappropriate because if I am searching Wikipedia, say, why on earth do I want completion of files and executables on my PC? A previous search query is much more likely to be what I want. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 203324 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080607/1d81fb63/attachment-0001.bin From gwern0 at gmail.com Sat Jun 7 04:26:17 2008 From: gwern0 at gmail.com (Gwern Branwen) Date: Sat Jun 7 04:20:56 2008 Subject: [xmonad] xmonad-contrib patch In-Reply-To: <48455862.3060903@cisco.com> References: <484465A1.8090601@cisco.com> <20080603025352.GA15173@craft> <48455862.3060903@cisco.com> Message-ID: <20080607082617.GA4364@craft> On 2008.06.03 09:42:42 -0500, Lanny Ripple scribbled 2.2K characters: > I wasn't thrilled with it either but wasn't sure where to put > actionMaybe (the name I had for it). In WindowGo and import into > CopyWindow? In a new Util module and import into both? For now I would stick it in WindowGo, and import it. One function isn't enough to make a module if there is no compelling reason to. (I mean, if importing WindowGo added some huge dependencies to CopyWindow, sure, but they're both in XMC and depend on the same stuff.) > There's also the problem that > > focus :: win -> X () > > (windows . copyWindow) :: win -> ws -> X() > > where 'ws' has to be discovered in actionMaybe. So > > raiseMaybe = actionMaybe (focus . const) > copyMaybe = actionMaybe (windows . copyWindow) > > actionMaybe = (Window -> Workspace -> X ()) -> Query Bool -> X () > actionMaybe doWin f thatUserQuery = withWindowSet $ \x -> do > maybeResult <- filterM (runQuery thatUserQuery) (allWindows s) > case maybeResult of > [] -> f > (win:_) -> doWin win (currentTag s) > > which I don't know if I'm happy about. > > Anyway happy to make the changes if I can get some advice on where > to put the abstracted (hoisted?, common?) code. > > -ljr I think it's a good idea to do the abstraction. Right now there are only two users, yes, but I suspect sooner or later, someone will want a 'deleteMaybe', a 'moveMaybe'... Actually, if we get as many as 4 users, it might make sense to copy it over into XMonad's source whereever the Query monad stuff lives. It would've proven its chops as a utility function, after all. -- gwern Ronco psyops BX Pod SUR House SO13 BBE Blowpipe Satellite -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://www.haskell.org/pipermail/xmonad/attachments/20080607/f9df6501/attachment.bin From lanny at cisco.com Sat Jun 7 15:07:56 2008 From: lanny at cisco.com (Lanny Ripple) Date: Sat Jun 7 14:59:58 2008 Subject: [xmonad] xmonad-contrib patch In-Reply-To: <20080607082617.GA4364@craft> References: <484465A1.8090601@cisco.com> <20080603025352.GA15173@craft> <48455862.3060903@cisco.com> <20080607082617.GA4364@craft> Message-ID: <484ADC8C.6080203@cisco.com> Well this is odd. Working on actionMaybe I see some new functions (since 7.0) in WindowGo so figure I'll incorporate them too. actionMaybe :: ([a] -> WindowSet -> X ()) -> X () -> Query Bool -> X () actionMaybe doWin doNoWin thatUserQuery = withWindowSet $ \s -> do ws <- filterM (runQuery thatUserQuery) (W.allWindows s) case ws of [] -> doNoWin otherwise -> doWin ws s raiseMaybe, raiseNextMaybe, copyMaybe :: X () -> Query Bool -> X () raiseMaybe = actionMaybe doRaise where doRaise (x:_) _ = focus x raiseNextMaybe = actionMaybe doRaiseNext where ... copyMaybe = actionMaybe doCopyWindow where doCopyWindow (x:_) s = windows $ copyWindow x (currentTag s) But this doesn't work. As near as I can tell actionMaybe is demanding (I'm using typeOf from http://cgi.cse.unsw.edu.au/~dons/blog/2006/12/14#vim-typeof) to be type actionMaybe :: ([Graphics.X11.Types.Window] -> WindowSet -> X ()) -> X () -> Query Bool -> X () which is even more odd because when I then try and get the compiler to tell me what other types should be (as a cross-check) I get Not in scope: type constructor or class `Graphics.X11.Types.Window' And sure enough on compilation XMonad/Actions/WindowGo.hs:174:27: Couldn't match expected type `a' against inferred type `Graphics.X11.Types.Window' `a' is a rigid type variable bound by the type signature for `actionMaybe' at XMonad/Actions/WindowGo.hs:169:17 Expected type: [a] Inferred type: [Graphics.X11.Types.Window] In the first argument of `doWin', namely `ws' In the expression: doWin ws s I tried Rank2Types {-# OPTIONS_GHC -XRank2Types #-} actionMaybe :: (forall a. [a] -> WindowSet -> X ()) -> ... with the same result. The solution to this is beyond my Haskell knowledge. I can see that (runQuery thatUserQuery) is reaching down into the X11 implementation and pulling back [Graphics.X11.Types.Window] but why can't I set up a function type that will bind to this type while being as "generic" as the rest of the types in the module? Stumped, -ljr Gwern Branwen wrote: > On 2008.06.03 09:42:42 -0500, Lanny Ripple scribbled 2.2K characters: >> I wasn't thrilled with it either but wasn't sure where to put >> actionMaybe (the name I had for it). In WindowGo and import into >> CopyWindow? In a new Util module and import into both? > > For now I would stick it in WindowGo, and import it. One function isn't enough to make a module if there is no compelling reason to. (I mean, if importing WindowGo added some huge dependencies to CopyWindow, sure, but they're both in XMC and depend on the same stuff.) > >> There's also the problem that >> >> focus :: win -> X () >> >> (windows . copyWindow) :: win -> ws -> X() >> >> where 'ws' has to be discovered in actionMaybe. So >> >> raiseMaybe = actionMaybe (focus . const) >> copyMaybe = actionMaybe (windows . copyWindow) >> >> actionMaybe = (Window -> Workspace -> X ()) -> Query Bool -> X () >> actionMaybe doWin f thatUserQuery = withWindowSet $ \x -> do >> maybeResult <- filterM (runQuery thatUserQuery) (allWindows s) >> case maybeResult of >> [] -> f >> (win:_) -> doWin win (currentTag s) >> >> which I don't know if I'm happy about. >> >> Anyway happy to make the changes if I can get some advice on where >> to put the abstracted (hoisted?, common?) code. >> >> -ljr > > I think it's a good idea to do the abstraction. Right now there are only two users, yes, but I suspect sooner or later, someone will want a 'deleteMaybe', a 'moveMaybe'... > > Actually, if we get as many as 4 users, it might make sense to copy it over into XMonad's source whereever the Query monad stuff lives. It would've proven its chops as a utility function, after all. > > -- > gwern > Ronco psyops BX Pod SUR House SO13 BBE Blowpipe Satellite From dons at galois.com Sat Jun 7 17:05:50 2008 From: dons at galois.com (Don Stewart) Date: Sat Jun 7 16:58:42 2008 Subject: [xmonad] darcs patch: Prompt.hs: +a historyCompletion function... (and 1 more) In-Reply-To: <484a3676.1bf0220a.68c7.ffffcc73@mx.google.com> References: <484a3676.1bf0220a.68c7.ffffcc73@mx.google.com> Message-ID: <20080607210550.GA13665@scytale.galois.com> Applied, cheers. gwern0: > Sat Jun 7 03:12:25 EDT 2008 gwern0@gmail.com > * Prompt.hs: +a historyCompletion function for use in XPrompts > > Sat Jun 7 03:13:31 EDT 2008 gwern0@gmail.com > * Actions.Search.hs: switch inappropriate use of getShellCompl for a historyCompletion > It's inappropriate because if I am searching Wikipedia, say, why on earth do I want completion of files and executables on my PC? A previous search query is much more likely to be what I want. Content-Description: A darcs patch for your repository! > _______________________________________________ > xmonad mailing list > xmonad@haskell.org > http://www.haskell.org/mailman/listinfo/xmonad From me at twifkak.com Sat Jun 7 18:14:25 2008 From: me at twifkak.com (Devin Mullins) Date: Sat Jun 7 18:06:52 2008 Subject: [xmonad] focus but hidden In-Reply-To: <20080606165104.GA1253@scytale.galois.com> References: <48494A8D.5060305@fsinnovations.net> <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> <484963E9.304@fsinnovations.net> <20080606165104.GA1253@scytale.galois.com> Message-ID: <20080607221425.GA28047@twifkak.com> On Fri, Jun 06, 2008 at 09:51:04AM -0700, Don Stewart wrote: > I wonder what more we could do to signal something has floated. Drop shadow. From gale at sefer.org Sat Jun 7 21:54:38 2008 From: gale at sefer.org (Yitzchak Gale) Date: Sat Jun 7 21:47:09 2008 Subject: [xmonad] Session configuration in xmonad under kdm In-Reply-To: <20080605230433.GH6599@celeborn> References: <2608b8a80806020157h36e88d41nf1c9fcfaa574655d@mail.gmail.com> <20080605230433.GH6599@celeborn> Message-ID: <2608b8a80806071854m1b798463iacc262fc8521247a@mail.gmail.com> I wrote: >> But how do I configure that session? It ignones >> my ~/.xsession. Spencer Janssen wrote: > Is ~/.xsession the right place? I know that I start xmonad inside my > .xsession, which is obviously a problem if we'd like to source it in a WM > initialization routine. How do GNOME and KDE handle this? The idea of this setup is that if you want to use xmonad both ways, your .xsession would test the SESSION_TYPE environment variable. (Maybe it should be X_SESSION_TYPE?) GNOME and KDE ignore the classic X startup conventions. Instead, there are various ways to configure how a session starts up that work with their more complex session management systems. We could do something similar for xmonad - have a "startup" script or subdirectory inside .xmonad, and then require that xmonad always start using startxmonad (except inside kde or gnome). It seems to me that you would then lose some of the feeling that xmonad is a simple window manager in the classic sense, not a "desktop environment" like gnome or kde. But it's a possibility. I do think that there should not be a major difference between a vanilla xmonad session started via kdm or gdm or startx. They all should use .xsession, or all use .xmonad/startup. Thanks, Yitz From Braden.Shepherdson at gmail.com Sun Jun 8 01:25:03 2008 From: Braden.Shepherdson at gmail.com (Braden Shepherdson) Date: Sun Jun 8 05:17:22 2008 Subject: [xmonad] darcs patch: New semantics for XMonad.Util.Scratchpad Message-ID: I tried to just push this, but I can't seem to push on my new system, it just tells me that pushing over HTTP isn't allowed. I'd like to get that fixed eventually. Anyway, the patches are attached. There are two slightly questionable changes here: * First, I removed an exported function from XMonad.Util.Scratchpad, scratchpadSpawnDefault. It was a complete keybinding, key spec and action. That's very unusual, I wrote it when I'd only been using xmonad a few days. I doubt many users did it that way, but that change will break their configs. * Second, I changed XMonad.Actions.DynamicWorkspaces to export addHiddenWorkspace. I'm not sure why it wasn't originally, and don't know if there's a reason why it was internal. I don't think either of those is a problem, but at least they're documented now. The long comment on the big patch describes the new semantics, so I'll leave it at that. Braden Shepherdson shepheb -------------- next part -------------- Sat Jun 7 23:24:39 EDT 2008 Braden Shepherdson * Removed odd scratchpadSpawnDefault, improved documentation. Sat Jun 7 23:26:19 EDT 2008 Braden Shepherdson * Added scratchpadSpawnActionTerminal to specify the terminal program directly as a String. Sun Jun 8 00:53:18 EDT 2008 Braden Shepherdson * Exporting addHiddenWorkspace, it's needed by the new Scratchpad Sun Jun 8 00:54:57 EDT 2008 Braden Shepherdson * Replaced old "spawn on mod+s" semantics with "spawn/summon or banish on mod+s". Originally the key binding just spawned a new floating terminal on every keypress. Now it spawns if it doesn't exist, summons from another workspace if it does but isn't visible, or banishes it to a dynamically created workspace if it is on the current workspace. New patches: [Removed odd scratchpadSpawnDefault, improved documentation. Braden Shepherdson **20080608032439] { hunk ./XMonad/Util/Scratchpad.hs 16 --- By default, your xmonad terminal is used, and mod+s is the hotkey. +-- By default, your xmonad terminal is used. hunk ./XMonad/Util/Scratchpad.hs 25 --- Add the following to your xmonad.hs keybindings to use the default mod+s: --- --- > scratchpadSpawnDefault conf --- --- Or specify your own key binding, with the action: +-- Bind the following to a key in your xmonad.hs keybindings: hunk ./XMonad/Util/Scratchpad.hs 29 +-- Where @conf@ is the configuration. +-- hunk ./XMonad/Util/Scratchpad.hs 38 - scratchpadSpawnDefault - ,scratchpadSpawnAction + scratchpadSpawnAction hunk ./XMonad/Util/Scratchpad.hs 50 --- | Complete key binding. Pops up the terminal on mod+s. -scratchpadSpawnDefault :: XConfig l -- ^ The configuration, to retrieve terminal and modMask - -> ((KeyMask, KeySym), X ()) -scratchpadSpawnDefault conf = ((modMask conf, xK_s), scratchpadSpawnAction conf) - - hunk ./XMonad/Util/Scratchpad.hs 64 +-- eg. +-- +-- > scratchpadManageHook (W.RationalRect 0.25 0.375 0.5 0.25) +-- } [Added scratchpadSpawnActionTerminal to specify the terminal program directly as a String. Braden Shepherdson **20080608032619] { hunk ./XMonad/Util/Scratchpad.hs 39 + ,scratchpadSpawnActionTerminal hunk ./XMonad/Util/Scratchpad.hs 57 +-- | Action to pop up the terminal, with a directly specified terminal. +scratchpadSpawnActionTerminal :: String -- ^ Name of the terminal program + -> X () +scratchpadSpawnActionTerminal term = spawn $ term ++ " -title scratchpad" + } [Exporting addHiddenWorkspace, it's needed by the new Scratchpad Braden Shepherdson **20080608045318] { hunk ./XMonad/Actions/DynamicWorkspaces.hs 20 + addHiddenWorkspace, hunk ./XMonad/Actions/DynamicWorkspaces.hs 104 + +-- | Add a new hidden workspace with the given name. } [Replaced old "spawn on mod+s" semantics with "spawn/summon or banish on mod+s". Braden Shepherdson **20080608045457 Originally the key binding just spawned a new floating terminal on every keypress. Now it spawns if it doesn't exist, summons from another workspace if it does but isn't visible, or banishes it to a dynamically created workspace if it is on the current workspace. ] { hunk ./XMonad/Util/Scratchpad.hs 13 +----------------------------------------------------------------------------- + +module XMonad.Util.Scratchpad ( + -- * Usage + -- $usage + scratchpadSpawnAction + ,scratchpadSpawnActionTerminal + ,scratchpadManageHookDefault + ,scratchpadManageHook + ) where + +import XMonad +import XMonad.Core +import XMonad.Hooks.ManageHelpers (doRectFloat) +import XMonad.Actions.DynamicWorkspaces (addHiddenWorkspace) + +import Control.Monad (filterM) + +import qualified XMonad.StackSet as W + + +-- $usage +-- Bind a key to 'scratchpadSpawnAction' +-- Pressing it will spawn the terminal, or bring it to the current +-- workspace if it already exists. +-- Pressing the key with the terminal on the current workspace will +-- send it to a hidden workspace called @SP@. +-- +-- If you already have a workspace called @SP@, it will use that. +-- @SP@ will also appear in xmobar and dzen status bars. You can tweak your +-- @dynamicLog@ settings to filter it out if you like. +-- hunk ./XMonad/Util/Scratchpad.hs 67 ------------------------------------------------------------------------------ - -module XMonad.Util.Scratchpad ( - scratchpadSpawnAction - ,scratchpadSpawnActionTerminal - ,scratchpadManageHookDefault - ,scratchpadManageHook - ) where - -import XMonad -import XMonad.Core -import XMonad.Hooks.ManageHelpers (doRectFloat) -import qualified XMonad.StackSet hunk ./XMonad/Util/Scratchpad.hs 73 -scratchpadSpawnAction conf = spawn $ terminal conf ++ " -title scratchpad" +scratchpadSpawnAction conf = + scratchpadAction $ spawn $ terminal conf ++ " -title scratchpad" hunk ./XMonad/Util/Scratchpad.hs 80 -scratchpadSpawnActionTerminal term = spawn $ term ++ " -title scratchpad" +scratchpadSpawnActionTerminal term = + scratchpadAction $ spawn $ term ++ " -title scratchpad" + + + + +-- The heart of the new summon/banish terminal. +-- The logic is thus: +-- 1. if the scratchpad is on the current workspace, send it to the hidden one. +-- - if the scratchpad workspace doesn't exist yet, create it first. +-- 2. if the scratchpad is elsewhere, bring it here. +scratchpadAction :: X () -> X () +scratchpadAction action = withWindowSet $ \s -> do + filterCurrent <- filterM (runQuery scratchpadQuery) + ( (maybe [] W.integrate + . W.stack + . W.workspace + . W.current) s) + case filterCurrent of + (x:_) -> do + if null (filter ( (== scratchpadWorkspaceTag) . W.tag) (W.workspaces s)) + then addHiddenWorkspace scratchpadWorkspaceTag + else return () + windows (W.shiftWin scratchpadWorkspaceTag x) + [] -> do + filterAll <- filterM (runQuery scratchpadQuery) (W.allWindows s) + case filterAll of + (x:_) -> windows (W.shiftWin (W.currentTag s) x) + [] -> action -- run the provided action to spawn it. + + +-- factored out since it appears in several places +scratchpadWorkspaceTag :: String +scratchpadWorkspaceTag = "SP" + +-- factored out since this is common to both the ManageHook and the action +scratchpadQuery :: Query Bool +scratchpadQuery = title =? "scratchpad" hunk ./XMonad/Util/Scratchpad.hs 126 --- | The ManageHook, with a user-specified StackSet.RationalRect. +-- | The ManageHook, with a user-specified StackSet.RationalRect, hunk ./XMonad/Util/Scratchpad.hs 130 --- -scratchpadManageHook :: XMonad.StackSet.RationalRect -- ^ User-specified screen rectangle. +scratchpadManageHook :: W.RationalRect -- ^ User-specified screen rectangle. hunk ./XMonad/Util/Scratchpad.hs 132 -scratchpadManageHook rect = title =? "scratchpad" --> doRectFloat rect +scratchpadManageHook rect = scratchpadQuery --> doRectFloat rect hunk ./XMonad/Util/Scratchpad.hs 135 -scratchpadDefaultRect :: XMonad.StackSet.RationalRect -scratchpadDefaultRect = XMonad.StackSet.RationalRect 0.25 0.375 0.5 0.25 +scratchpadDefaultRect :: W.RationalRect +scratchpadDefaultRect = W.RationalRect 0.25 0.375 0.5 0.25 } Context: [Actions.Search.hs: switch inappropriate use of getShellCompl for a historyCompletion gwern0@gmail.com**20080607071331 It's inappropriate because if I am searching Wikipedia, say, why on earth do I want completion of files and executables on my PC? A previous search query is much more likely to be what I want. ] [Prompt.hs: +a historyCompletion function for use in XPrompts gwern0@gmail.com**20080607071225] [Add C-w to XMonad.Prompt Trevor Elliott **20080605220656 * Bind C-w to kill the previous word ] [Add missing xfce module to .cabal Don Stewart **20080602174219] [Use lines instead of columns in configuration (similar to GNOME and KDE) Malebria **20080526225337] [Bug correction when areasColumn > 1 Malebria **20080526223220] [more documentation for WindowNavigation and UrgencyHook Devin Mullins **20080525050231] [X.A.WindowNavigation: add logHook for better state tracking Devin Mullins **20080525032325] [doco tweaks Devin Mullins **20080524211849] [made fadeInactiveLogHook take an argument amount to fade Justin Bogner **20080523213937] [add FadeInactive to fade out inactive windows using xcompmgr Justin Bogner **20080523205838] [add close window functionality to EwmhDesktops Justin Bogner **20080523185908] [Add XMonad.Actions.Plane Malebria **20080523004357] [Default Xfce config, this time with me holding the copyright, maintainership, etc. Ivan.Miljenovic@gmail.com**20080522105316] [StackTile: minor documentation fix Joachim Fasting **20080521182637 That '[]' in the example seems incorrect ] [StackTile acura@allyourbase.se**20080520195559 A simple patch to get a dishes like stacking, but with the ability to resize master pane. ] [revamp Search.hs to export a replacement for simpleEngine gwern0@gmail.com**20080519190912 It's called searchEngine now, and is a wrapper around the SearchEngine type. Different type as well ] [sp ShowWName.hs gwern0@gmail.com**20080519190520] [remove ScratchWorkspace. David Roundy **20080516185729 It's ugly code, and I'd be surprised if anyone actually uses it. I see no reason to continue to maintain it. ] [Fixed location of xmonad.conf Roman Cheplyaka **20080518204602] [add site name in search prompt dialog zhen.sydow@gmail.com**20080518101357] [add youtube to search engines zhen.sydow@gmail.com**20080513212508] [SwapWorkspaces: swapTo Next|Prev Devin Mullins **20080518024121] [UrgencyHook: removeVisiblesFromUrgents -> cleanupUrgents Devin Mullins **20080515164436 Now only removes windows based on SuppressWhen setting. ] [Added XMonad.Config.PlainConfig: proof-of-concept GHC-less plain text configuration file parser Braden Shepherdson **20080517222916 An example of the config file format can be found in the Haddock. Notably missing features are docks and more layouts than just the standard three. ] [XMonad.Hooks.SetWMName: Update documentation to reflect the addition of startupHook. lithis **20080516221011] [I no longer use ScratchWorkspace. David Roundy **20080516185715] [fix bug in smartBorders when combined with decorated windows. David Roundy **20080516184855] [decent documentation for UrgencyHook Devin Mullins **20080515082222 Blame it on lack of sleep. Or perhaps the causation is the reverse. ] [X.A.WindowNavigation: currentPosition and setPosition share the same `inside` logic, now Devin Mullins **20080515062211 Aside from documentation, this is pretty much usable, now. ] [X.A.WindowNavigation: have currentPosition handle axes independently Devin Mullins **20080515053330 This improves some subtle interactions between mod-j/k and mod-w/a/s/d, though that might not become very apparent until I fix setPosition. ] [fix compile warnings in BoringWindows Devin Mullins **20080515051728] [add BoringWindows module to make certain windows skipped when rotating focus. David Roundy **20080514162846] [UrgencyHook: some documentation (more is needed) Devin Mullins **20080514080104] [UrgencyHook: got rid of the need for instances to know about suppressWhen Devin Mullins **20080514072217 This changes the API a little bit, but that's what you get for using a day-old feature from darcs. ] [move AppLauncher from Actions module to Prompt module zhen.sydow@gmail.com**20080513201252] [X.A.WindowNavigation: comment cleanup Devin Mullins **20080513091313] [windowRect now compensates for border width Devin Mullins **20080513090151 Odd that I have to do (Rectangle x y (w + 2 * bw) (h + 2 * bw)) -- you'd think the window would be centered within the bordered area. ] [X.A.WindowNavigation: update TODO Devin Mullins **20080513044229] [X.A.WindowNavigation: minor cleanup Devin Mullins **20080512170410] [X.A.WindowNavigation: simplify inr somewhat Devin Mullins **20080512090647] [X.A.WindowNavigation: clarity Devin Mullins **20080512085338] [X.A.WindowNavigation: ugh, typo Devin Mullins **20080512082228] [X.A.WindowNavigation: implement swap, extract withTargetWindow commonality Devin Mullins **20080512064715 Why doesn't mapWindows exist already? ] [add more flexible withWindowNavigationKeys Devin Mullins **20080512050637 Names aren't permanent yet, so don't cry if they change. ] [X.A.WindowNavigation: TODO Devin Mullins **20080511222116] [X.A.WindowNavigation: add withWindowNavigation, for easy setup Devin Mullins **20080511220458 This should be more flexible than it is -- I've got an idea, but am interested to hear others. ] [X.A.WindowNavigation: fix currentPosition Devin Mullins **20080511212128 Now properly deals with an unitialized state (e.g. from a restart) or an inconsistent state (e.g. from using mod-j/k). Deserves cleanup. ] [X.A.WindowNavigation: add TODOs Devin Mullins **20080511211326] [X.A.WindowNavigation state is now workspace-specific Devin Mullins **20080511071656 racking up some code debt, here... ] [X.A.WindowNavigation: minor doco changes Devin Mullins **20080506074235] [add draft XMonad.Actions.WindowNavigation Devin Mullins **20080504050022 This is an experiment with replacing the WindowNavigation LayoutModifier with one that simply adds keybindings and stores state in an IORef. Credit to droundy for the original code -- hopefully I'm not butchering it. The end intent is to add Xinerama support, but it'll be a little while before I get there. ] [new contrib module to launch apps with command line parameters zhen.sydow@gmail.com**20080513134754] [pull suppressWhen logic into main WithUrgencyHook handler Devin Mullins **20080513075247 In order for this to work, I added a new UrgencyHook method to communicate the SuppressWhen value. I'm not sure if this is actually better than just providing a convenience function, but it's an easy switch. ] [add suppressWhen option to dzenUrgencyHook Devin Mullins **20080513054615] [WindowNavigation: extract navigable function Devin Mullins **20080422045248] [UrgencyHook: doc typo Devin Mullins **20080512052137] [UrgencyHook: extract whenNotVisible Devin Mullins **20080512041852] [SpawnUrgencyHook, FWIW Devin Mullins **20080512040449] [make UrgencyHook an EventHook Devin Mullins **20080512024822 This gets rid of the stupid bug that led to a need for the clearBit hack, and allowed me to simplify the types (since EventHooks aren't required to parameterize on the window type). Config files need not change, unless they declare instances of UrgencyHook, in which case, they should remove "Window" as is seen in this patch. ] ['xmobar' function added to DynamicLog for running xmobar with some defaults Ivan N. Veselov **20080508194918] [HintedTile: Fix mistake in documentation. lithis **20080508003552] [Use gnome-session-save for the mod-shift-q binding Spencer Janssen **20080507082205] [Use the named constant 'none' rather than 0 Spencer Janssen **20080507081854] [HintedTile: Improve documentation. lithis **20080508000245] [Whitespace only Spencer Janssen **20080507031306] [Add a binding for Gnome's "Run Application" dialog Spencer Janssen **20080507031127] [Add some keybindings to the Kde config Spencer Janssen **20080507022658] [Indentation Spencer Janssen **20080507022553] [Add ToggleStruts to the desktop config Spencer Janssen **20080507022516] [Refactor my config Spencer Janssen **20080507021504] [Add XMonad.Config.Kde Spencer Janssen **20080507020833] [Don't move the pointer if the user is moving the mouse Klaus Weidner **20080417022234 This patch depends on the following xmonad core patch: Remember if focus changes were caused by mouse actions or by key commands If the user was moving the mouse, it's not appropriate to move the pointer around in resonse to focus changes. Do that only in response to keyboard commands. ] [Missing pragmas Don Stewart **20080506053402] [Add full documentation Don Stewart **20080505210546] [minor cleanup on getName Devin Mullins **20080504054923] [bug doco for UrgencyHook Devin Mullins **20080426203638] [NamedWindows: when converting the text property, handle the empty list. Spencer Janssen **20080502104249 This fixes a "Prelude.head" exception observed with windows that have no title. Reproduce by placing several windows in the tabbed layout, then starting 'xterm -name ""'. Thanks to Andrea for pointing out the issue. ] [Fix issue #179 by handling events correctly Andrea Rossato **20080501062357] [My monitor is larger now :) Spencer Janssen **20080430083026] [manageHooks for my config Spencer Janssen **20080430082536] [Remove redundant type signature Spencer Janssen **20080430082447] [Add XMonad.Config.Desktop and XMonad.Config.Gnome Spencer Janssen **20080430082253] [Alphabetize exposed-modules Spencer Janssen **20080430035453] [new contrib layout: XMonad.Layout.SimplestFloat - A floating layout like SimpleFloat, but without decoration joamaki@gmail.com**20080424220957] [stricitfy some gap fields Don Stewart **20080427191247] [XMonad.Hooks.ManageHelpers: quick&dirty support for _NET_WM_STATE_FULLSCREEN Lukas Mai **20080426132745] [XMonad.Hooks.Script: haddock fixes Lukas Mai **20080426132629] [Error fix for Tabbed when tabbar always shown Ivan.Miljenovic@gmail.com**20080424063135] [remove my config file -- the wiki is where its at. Don Stewart **20080419195650] [tweaks to docs for SimpleDecoration Don Stewart **20080418215155] [Allow tabbar to always be shown. Ivan.Miljenovic@gmail.com**20080415043728 Patch take 4, hopefully the final version. Includes droundy's suggestions. ] [polish Don Stewart **20080418033133] [Script-based hooks Trevor Elliott **20080416213024] [Don't strictify the Display component, this triggers a bug in GHC 6.6 Spencer Janssen **20080416185733] [Fix to IM modifier. Roman Cheplyaka **20080414232437 Avoid differentiating integrated stack by using StackSet.filter. ] [IM layout converted to LayoutModifier, which can be applied to any layout Ivan N. Veselov **20080413205824] [stictify some fields Don Stewart **20080413070117] [strictify some fields Don Stewart **20080413065958] [Fix window order in EWMH Joachim Breitner **20080411134411 For pagers to draw the stacking order correctly, the focused window has to be the last in the list. Thus put an appropriate implementation of allWindows into the Module. This does not work perfectly with floating windows. ] [remove myself as maintainer of CopyWindow. David Roundy **20080409144333 I'm not sure who's maintaining this, but it's not me. ] [XMonad.Util.WindowProperties: add WM_WINDOW_ROLE as Role Roman Cheplyaka **20080409174935] [Generalize copyWindow, minor style change Spencer Janssen **20080408210050] [XMonad.Actions.CopyWindow: added copyToAll and killAllOtherCopies functions Ivan N. Veselov **20080408195111] [XMonad.Actions.UpdatePointer: doc fix Lukas Mai **20080407152741] [XMonad.Util.Font: minor reformatting Lukas Mai **20080406020935] [DynamicLog: resolve merge conflict Lukas Mai **20080406020527] [Encode the entire DynamicLog output, instead of just window title. lithis **20080329031537] [DynamicLog: add support for UTF-8 locales when compiled with XFT or UFT-8 support Andrea Rossato **20080313102643] [XMonad.Util.Font: don't call setlocale; core does it for us Lukas Mai **20080406013123] [XMonad.Util.NamedWindows: fix imports Lukas Mai **20080326172745] [Changed getName to use locale-aware functions Mats Jansborg **20070819132104 Rewrote getName using getTextProperty and wcTextPropertyToTextList. ] [Added next-window versions of the raise* functions. Ian Zerny **20080405182900] [XMonad.Layout.Master: initial import Lukas Mai **20080404220734] [update contrib for applySizeHints changes Lukas Mai **20080404220558] [XMonad.Hooks.ManageDocks: haddock fix Lukas Mai **20080404220532] [MultiToggle/Instances: ghc 6.6 can't parse LANGUAGE pragma Brent Yorgey **20080404200157] [Document _NET_ACTIVE_WINDOW behaviour more exactly Joachim Breitner **20080404072944] [_NET_ACTIVE_WINDOW moves windows if necessary Joachim Breitner *-20080402143811 This makes EWMH behave a bit more like metacity: If _NET_ACTIVE_WINDOW is received and the window is not on the current worspace, it is brought here (instead of the workspace switched to the other one). So for example, if you click on the pidgin icon in the panel and the buddy list is already open some where it is moved here. ] [onstart=lower, solves floating dzen issue Don Stewart **20080403203425] [some bang patterns Don Stewart **20080403172246] [have 'dzen' use autoStruts to detect the gaps Don Stewart **20080403003130] [Actions/Search.hs: add dictionary.com search Brent Yorgey **20080402150521] [_NET_ACTIVE_WINDOW moves windows if necessary Joachim Breitner **20080402143811 This makes EWMH behave a bit more like metacity: If _NET_ACTIVE_WINDOW is received and the window is not on the current worspace, it is brought here (instead of the workspace switched to the other one). So for example, if you click on the pidgin icon in the panel and the buddy list is already open some where it is moved here. ] [HintedGrid: guesstimate window flexibility and layout rigid windows first Lukas Mai **20080402042846] [HintedGrid: try both bottom-up/top-down window placement to minimize unused space Lukas Mai **20080402012538] [Grid/HintedGrid: use an ncolumns formula inspired by dwm's "optimal" mode Lukas Mai **20080402012126] [XMonad.Layout.Gaps: new contrib module for manual gap support, in the few cases where ManageDocks is not appropriate (dock apps that don't set STRUTS properly, adjusting for a display that is cut off on one edge, etc.) Brent Yorgey **20080402003742] [improve WindowGo.hs Haddock formatting gwern0@gmail.com**20080401023130] [forgot a haddock for getEditor in Shell.hs gwern0@gmail.com**20080401022012] [WindowGo.hs: +raiseBrowser, raiseEditor gwern0@gmail.com**20080401021740 Specialize runOrRaise in the same way as with Actions.Search, for one's browser and one's editors. ] [RunOrRaise.hs: FF 3 doesn't use the "Firefox-bin" classname gwern0@gmail.com**20080401015049] [Search.hs: remove an argument from selectSearch and promptSearch gwern0@gmail.com**20080401013947 The new getBrowser function allows us to mv the old selectSearch and promptSearch aside as too-general functions, and replace them with new versions, which employ getBrowser to supply one more argument. This allows us to replace the tedious 'selectSearch google "firefox"; selectSearch yahoo "firefox"...' with shorter 'selectSearch google' and so on. One less argument. Also, update the docs. ] [Shell.hs: +getBrowser, getEditor, helper function gwern0@gmail.com**20080401013447 The helper function asks the shell for the value of a variable, else returns the second argument. getBrowser and getEditor obviously specialize it for two particular possibly queries ] [XMonad.Layout.HintedGrid: initial import Lukas Mai **20080401231722] [Documentation improvement. Roman Cheplyaka **20080401134305] [Remove broken link to screenshot. Roman Cheplyaka **20080331210854] [MultiToggle: add new XMonad.Layout.MultiToggle.Instances module for common instances of Transformer, update MultiToggle docs accordingly Brent Yorgey **20080331201739] [XMonad.Actions.CycleRecentWS: initial import Michal Janeczek **20080331111906] [XMonad.Hooks.ManageDocks: export checkDoc Lukas Mai **20080331012911] [XMonad.Layout.Grid: fix indentation Lukas Mai **20080330004859] [move Direction type from WindowNavigation to ManageDocks (ManageDocks will move into the core, taking Direction with it) Brent Yorgey **20080331010127] [ManageDocks: clean up + add more documentation Brent Yorgey **20080331002929] [Util.Run, Hooks.DynamicLog: re-export hPutStrLn and hPutStr from Util.Run for convenience, and update DynamicLog documentation to show proper imports Brent Yorgey **20080328205446] [ManageDocks: add avoidStrutsOn, for covering some docks and not others by default. Brent Yorgey **20080327203940] [ManageDocks: add ability to toggle individual gaps independently Brent Yorgey **20080327111722] [PerWorkspace: add modWorkspace(s) combinators, for selectively applying layout modifiers to certain workspaces but not others Brent Yorgey **20080326214351] [Haddock fix Roman Cheplyaka **20080330134435] [Remove stale status gaps code Spencer Janssen **20080329230737] [TAG 0.7 Spencer Janssen **20080329202416] Patch bundle hash: 49eefa621dd9d0d89dc38b6ba16245df7e849dc7 From mail at justinbogner.com Sun Jun 8 13:26:14 2008 From: mail at justinbogner.com (Justin Bogner) Date: Sun Jun 8 13:20:24 2008 Subject: [xmonad] darcs patch: Make prompt keybindings work when numLock or capsLock are active Message-ID: <484C1636.2070704@justinbogner.com> I don't see a reason not to ignore numLock and capsLock and the like when a prompt is open. _____ Justin Bogner -------------- next part -------------- A non-text attachment was scrubbed... Name: promptmask.patch Type: text/x-diff Size: 20068 bytes Desc: not available Url : http://www.haskell.org/pipermail/xmonad/attachments/20080608/2c6193c1/promptmask.bin From me at twifkak.com Sun Jun 8 14:09:32 2008 From: me at twifkak.com (Devin Mullins) Date: Sun Jun 8 14:01:54 2008 Subject: [xmonad] darcs patch: New semantics for XMonad.Util.Scratchpad In-Reply-To: References: Message-ID: <20080608180932.GA30172@twifkak.com> On Sun, Jun 08, 2008 at 01:25:03AM -0400, Braden Shepherdson wrote: > I tried to just push this, but I can't seem to push on my new system, it > just tells me that pushing over HTTP isn't allowed. I'd like to get that > fixed eventually. AFAIK, it *isn't* allowed. You have to push over: code.haskell.org:/srv/code/XMonadContrib > Anyway, the patches are attached. Applied. From me at twifkak.com Sun Jun 8 14:20:36 2008 From: me at twifkak.com (Devin Mullins) Date: Sun Jun 8 14:12:58 2008 Subject: [xmonad] darcs patch: Make prompt keybindings work when numLock or capsLock are active In-Reply-To: <484C1636.2070704@justinbogner.com> References: <484C1636.2070704@justinbogner.com> Message-ID: <20080608182036.GB30172@twifkak.com> On Sun, Jun 08, 2008 at 11:26:14AM -0600, Justin Bogner wrote: > I don't see a reason not to ignore numLock and capsLock and the like > when a prompt is open. Applied, with two suggestions: 1. Use Data.Bits.testBit. 2. Don't ignore shift or mod1-5? (Actually, I suppose those two are mutually exclusive.. I'd imagine the code to the last one looking like: mask .&. (foldl' (.|.) [controlMask, mod1Mask, ...]) == controlMask unless there's a cleverer way.) From mail at justinbogner.com Sun Jun 8 17:58:22 2008 From: mail at justinbogner.com (Justin Bogner) Date: Sun Jun 8 17:50:47 2008 Subject: [xmonad] Re: darcs patch: Make prompt keybindings work when numLock or capsLock are active In-Reply-To: <20080608182036.GB30172@twifkak.com> References: <484C1636.2070704@justinbogner.com> <20080608182036.GB30172@twifkak.com> Message-ID: <484C55FE.6020508@justinbogner.com> Devin Mullins wrote: > On Sun, Jun 08, 2008 at 11:26:14AM -0600, Justin Bogner wrote: >> I don't see a reason not to ignore numLock and capsLock and the like >> when a prompt is open. > > Applied, with two suggestions: > 1. Use Data.Bits.testBit. > 2. Don't ignore shift or mod1-5? > > (Actually, I suppose those two are mutually exclusive.. I'd imagine the > code to the last one looking like: > mask .&. (foldl' (.|.) [controlMask, mod1Mask, ...]) == controlMask > unless there's a cleverer way.) I like your first suggestion, since I didn't like comparing to zero (though checking if it was still controlMask would be more correct logic than what I have now, anyway). As for the second suggestion, I sort of like it and sort of don't. Is there a good reason to not ignore shift? I most certainly want to ignore numlock, but I can't purely determine what that is, and I don't think there's a particularly good reason not to ignore the others. ______ Justin Bogner From mail at justinbogner.com Sun Jun 8 18:37:41 2008 From: mail at justinbogner.com (Justin Bogner) Date: Sun Jun 8 18:30:17 2008 Subject: [xmonad] Re: darcs patch: Make prompt keybindings work when numLock or capsLock are active In-Reply-To: <484C55FE.6020508@justinbogner.com> References: <484C1636.2070704@justinbogner.com> <20080608182036.GB30172@twifkak.com> <484C55FE.6020508@justinbogner.com> Message-ID: Looking at it further, using testBit is actually much uglier. I'd have to do something like > lg x = log x / log 2 > testBit mask (lg controlMask) since controlMask isn't defined as "which bit is set", but as an actual bitmask. The attached patch is semantically equivalent to my previous one but would still work properly if controlMask was more than a single bit (which it isn't, of course, but the logic seems cleaner this way) _____ Justin Bogner -------------- next part -------------- A non-text attachment was scrubbed... Name: promptmask.patch Type: text/x-diff Size: 20087 bytes Desc: not available Url : http://www.haskell.org/pipermail/xmonad/attachments/20080608/b5256de2/promptmask-0001.bin From mail at justinbogner.com Sun Jun 8 18:41:41 2008 From: mail at justinbogner.com (Justin Bogner) Date: Sun Jun 8 18:34:07 2008 Subject: [xmonad] Re: darcs patch: Make prompt keybindings work when numLock or capsLock are active In-Reply-To: References: <484C1636.2070704@justinbogner.com> <20080608182036.GB30172@twifkak.com> <484C55FE.6020508@justinbogner.com> Message-ID: <484C6025.5080109@justinbogner.com> Oops, hadn't realized it was actually applied, disregard my more recent patch, it will conflict. _____ Justin Bogner From me at twifkak.com Mon Jun 9 12:25:48 2008 From: me at twifkak.com (Devin Mullins) Date: Mon Jun 9 12:18:14 2008 Subject: [xmonad] Re: darcs patch: Make prompt keybindings work when numLock or capsLock are active In-Reply-To: References: <484C1636.2070704@justinbogner.com> <20080608182036.GB30172@twifkak.com> <484C55FE.6020508@justinbogner.com> Message-ID: <20080609162547.GA32321@twifkak.com> On Sun, Jun 08, 2008 at 04:37:41PM -0600, Justin Bogner wrote: > Looking at it further, using testBit is actually much uglier. I'd have > to do something like > > lg x = log x / log 2 > > testBit mask (lg controlMask) Oh, indeed. My mistake. My thought behind the shift thing was to make room for a future keybinding involving shift, but it had a question mark on it, so whatev'. From mike at datagrok.org Mon Jun 9 13:21:58 2008 From: mike at datagrok.org (Michael F. Lamb) Date: Mon Jun 9 13:14:21 2008 Subject: [xmonad] focus but hidden In-Reply-To: <20080606165104.GA1253@scytale.galois.com> References: <48494A8D.5060305@fsinnovations.net> <2d3641330806060913lbd3fd01g321c2b1eb2f34c47@mail.gmail.com> <484963E9.304@fsinnovations.net> <20080606165104.GA1253@scytale.galois.com> Message-ID: <20080609172158.GB29501@strange.dreamhost.com> > I wonder what more we could do to signal something has floated. Another $.02... I'd like windows to float whenever I use mod+drag to resize or move them around---as they do now---but I never use alt+click to float a window in-place without changing its position/dimensions. When I alt+click a window it is almost always a mistake. Since it's obvious that a window has been floated when I "pull it out" of the tiled formation by dragging, it would be sufficient and intuitive for me if alt+click were ignored unless I begin dragging. I have no idea how complex this idea becomes in code. From codesite-noreply at google.com Mon Jun 9 20:39:27 2008 From: codesite-noreply at google.com (codesite-noreply@google.com) Date: Mon Jun 9 20:31:51 2008 Subject: [xmonad] Issue 193 in xmonad: conky uses 100% cpu after starting it and moving the mouse (XMonadContrib) Message-ID: <0016e64ed9c81ae76b044f4529f9@google.com> Issue 193: conky uses 100% cpu after starting it and moving the mouse (XMonadContrib) http://code.google.com/p/xmonad/issues/detail?id=193 Comment #1 by jesseblehman: This is still an issue, but adding , className =? "Conky" --> doIgnore to the 'myManageHook = composeAll' section of your xmonad.hs will make Xmonad ignore Conky, and it'll work just like it does in any other window manager. -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings From malebria at riseup.net Tue Jun 10 09:38:41 2008 From: malebria at riseup.net (Malebria) Date: Tue Jun 10 09:31:07 2008 Subject: [xmonad] darcs patch: XMonad.Hooks.EwmhDesktops export EwmHDesktopsHook Message-ID: <20080610133841.5932A4029@auk.riseup.net> Tue Jun 10 10:06:14 BRT 2008 Malebria * XMonad.Hooks.EwmhDesktops export EwmHDesktopsHook Any function that a user may write in his configuration file that is related to ewmhDesktopsLayout cannot have it's type signature if this type is not exported. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 21086 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080610/0d653dcb/attachment-0001.bin From mail at joachim-breitner.de Tue Jun 10 11:46:27 2008 From: mail at joachim-breitner.de (Joachim Breitner) Date: Tue Jun 10 11:38:51 2008 Subject: [xmonad] darcs patch: XMonad.Hooks.EwmhDesktops export EwmHDesktopsHook In-Reply-To: <20080610133841.5932A4029@auk.riseup.net> References: <20080610133841.5932A4029@auk.riseup.net> Message-ID: <1213112787.4465.29.camel@otto.ehbuehl.net> Hi, Am Dienstag, den 10.06.2008, 06:38 -0700 schrieb Malebria: > Tue Jun 10 10:06:14 BRT 2008 Malebria > * XMonad.Hooks.EwmhDesktops export EwmHDesktopsHook > Any function that a user may write in his configuration file that is related to ewmhDesktopsLayout cannot have it's type signature if this type is not exported. hmm, I thought I had this handled, but it seems I have not... Anyways, wouldn?t it be nicer if "HandleEvent EwmhDesktopsHook" could be combined into one type (or type alias) that?s exported? The fact that it?s using HandleEvent should be hidden to the user. Greetings, Joachim -- Joachim Breitner e-Mail: mail@joachim-breitner.de Homepage: http://www.joachim-breitner.de ICQ#: 74513189 Jabber-ID: nomeata@joachim-breitner.de -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: Dies ist ein digital signierter Nachrichtenteil Url : http://www.haskell.org/pipermail/xmonad/attachments/20080610/af8b8de2/attachment.bin From malebria at riseup.net Tue Jun 10 14:34:21 2008 From: malebria at riseup.net (Malebria) Date: Tue Jun 10 14:26:40 2008 Subject: [xmonad] darcs patch: XMonad.Config.Desktop type problem (monomorphism?) Message-ID: <20080610183421.F0E3914C0E5@tern.riseup.net> Tue Jun 10 15:28:56 BRT 2008 Malebria * XMonad.Config.Desktop type problem (monomorphism?) With main = xmonad defaultConfig {layoutHook = desktopLayoutModifiers Full} I got a type error, that's not present with the patch. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 21162 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080610/de04d486/attachment.bin From sjanssen at cse.unl.edu Tue Jun 10 15:11:35 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Tue Jun 10 15:04:03 2008 Subject: [xmonad] darcs patch: XMonad.Config.Desktop type problem (monomorphism?) In-Reply-To: <20080610183421.F0E3914C0E5@tern.riseup.net> References: <20080610183421.F0E3914C0E5@tern.riseup.net> Message-ID: <20080610191135.GA6695@celeborn> On Tue, Jun 10, 2008 at 11:34:21AM -0700, Malebria wrote: > Tue Jun 10 15:28:56 BRT 2008 Malebria > * XMonad.Config.Desktop type problem (monomorphism?) > With main = xmonad defaultConfig {layoutHook = desktopLayoutModifiers Full} I got a type error, that's not present with the patch. Yep, the DMR rears its ugly head once again. Applied, thanks. From sjanssen at cse.unl.edu Tue Jun 10 15:12:59 2008 From: sjanssen at cse.unl.edu (Spencer Janssen) Date: Tue Jun 10 15:05:25 2008 Subject: [xmonad] darcs patch: XMonad.Hooks.EwmhDesktops export EwmHDesktopsHook In-Reply-To: <20080610133841.5932A4029@auk.riseup.net> References: <20080610133841.5932A4029@auk.riseup.net> Message-ID: <20080610191259.GB6695@celeborn> On Tue, Jun 10, 2008 at 06:38:41AM -0700, Malebria wrote: > Tue Jun 10 10:06:14 BRT 2008 Malebria > * XMonad.Hooks.EwmhDesktops export EwmHDesktopsHook > Any function that a user may write in his configuration file that is related to ewmhDesktopsLayout cannot have it's type signature if this type is not exported. Applied, thanks. From mail at joachim-breitner.de Tue Jun 10 15:33:41 2008 From: mail at joachim-breitner.de (Joachim Breitner) Date: Tue Jun 10 15:27:02 2008 Subject: [xmonad] darcs patch: hide the implementation type in "EwmhDesktopsLayout" Message-ID: Hi, this is what I hope a slight improvement over Malebria’s patch – thx by the way. Greetings, Joachim Tue Jun 10 21:29:18 CEST 2008 Joachim Breitner * hide the implementation type in "EwmhDesktopsLayout" Instead of exporting the EwmhDesktopsHook type, which is used internally, export a type alias for (HandleEvent EwmhDesktopsHook), so users don't have to update their xmonad.hs if the implementation changes. It could also be wrapped in a newtype, instead of a "type", but that would require manual instances of the various classes, as ghc can automatically derive the LayoutClass instance. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 62398 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080610/1b810d52/attachment-0001.bin From mail at joachim-breitner.de Tue Jun 10 15:37:20 2008 From: mail at joachim-breitner.de (Joachim Breitner) Date: Tue Jun 10 15:30:33 2008 Subject: [xmonad] darcs patch: Fix window region checking in UpdatePointer Message-ID: Hi, this patch was submitted on http://code.google.com/p/xmonad/issues/detail?id=187 and fixes the issue for me, but it hasn’t been applied yes. Was it overlooked? Thanks, Joachim Sun May 11 11:40:56 CEST 2008 robreim@bobturf.org * Fix window region checking in UpdatePointer -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 22381 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080610/844f077e/attachment.bin From codesite-noreply at google.com Tue Jun 10 15:42:20 2008 From: codesite-noreply at google.com (codesite-noreply@google.com) Date: Tue Jun 10 15:34:36 2008 Subject: [xmonad] Issue 196 in xmonad: UpdatePointer moves the pointer away from non-managed windows Message-ID: <000e0cd211cc56d7dd044f5520fc@google.com> Issue 196: UpdatePointer moves the pointer away from non-managed windows http://code.google.com/p/xmonad/issues/detail?id=196 New issue report by nomeata: Hi, I use gnome-panel with manageDocks, but probably applies to any non-manged windows: When I have the pointer over the panel, and do something that triggers the logHook, the UpdatePointer kicks in, moving the mouse to the window that xmonad thinks is active ? even though I?m working on the panel at that moment. One solution might be, that UpdatePointer only moves the pointer if it hovers over a managed window (or no window at all), but not otherwise. Another solution, although probably more difficult, would only run updatePointer when a real focus-changing action was done by the user, e.g. by an xmonad key binding, by new applications starting or by EWMH events. Thanks, Joachim Issue attributes: Status: Accepted Owner: nomeata Labels: Type-Defect Priority-Medium Component-Contrib -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings From mail at joachim-breitner.de Tue Jun 10 16:05:03 2008 From: mail at joachim-breitner.de (Joachim Breitner) Date: Tue Jun 10 15:58:10 2008 Subject: [xmonad] darcs patch: Fix window region checking in UpdatePointer (and 1 more) Message-ID: Hi, this patch could be a possible fix for http://code.google.com/p/xmonad/issues/detail?id=196 It only moves the pointer when it is not over a non-managed window. It works fine here so far... Greetings, Joachim Sun May 11 11:40:56 CEST 2008 robreim@bobturf.org * Fix window region checking in UpdatePointer Tue Jun 10 21:59:16 CEST 2008 Joachim Breitner * Only move pointers over managed windows -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 22971 bytes Desc: A darcs patch for your repository! Url : http://www.haskell.org/pipermail/xmonad/attachments/20080610/5a59794e/attachment-0001.bin From codesite-noreply at google.com Tue Jun 10 19:27:20 2008 From: codesite-noreply at google.com (codesite-noreply@google.com) Date: Tue Jun 10 19:19:35 2008 Subject: [xmonad] Issue 195 in xmonad: Last window never disappers in GNOME Message-ID: <000e0cd290d206cb34044f58454c@google.com> Issue 195: Last window never disappers in GNOME http://code.google.com/p/xmonad/issues/detail?id=195 Comment #2 by maleb...@riseup.net: I just found the reason for this bug. It's a problem in GNOME's libwnck. I recompiled the 2.22.1 version with the attached patch, and the bug is gone. I sent a patch to the libwnck's maintainers with this patch, and I hope it get to the SVN version. This patch was made in the SVN version, but it also applies in GNOME 2.22.1. Status: Fixed Attachments: screen.c.patch 403 bytes -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings From codesite-noreply at google.com Wed Jun 11 09:32:04 2008 From: codesite-noreply at google.com (codesite-noreply@google.com) Date: Wed Jun 11 09:24:16 2008 Subject: [xmonad] Issue 195 in xmonad: Last window never disappers in GNOME Message-ID: <000e0cd2e1dcfe3835044f6411d4@google.com> Issue 195: Last window never disappers in GNOME http://code.google.com/p/xmonad/issues/detail?id=195 Comment #3 by nomeata: Great work! So my assumption was right that that it expects the list to be non-empty... :-) -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings From roma at ro-che.info Wed Jun 11 14:26:22 2008 From: roma at ro-che.info (Roman Cheplyaka) Date: Wed Jun 11 14:18:39 2008 Subject: [xmonad] About xmonad in Russian Message-ID: <20080611182622.GB3495@flit> Finally, the first part of our (with Ivan Veselov) xmonad article is published! You can download it from osa.samag.ru after free registration. The goal of the article is to promote xmonad and gain new users. So the intended audience is people who never heard about xmonad and haskell or xmonad newbies. Article explains the main steps in configuring xmonad. The next two parts of the article will be published in the following issues of the journal. At the end I'll publish html version somewhere, probably in xmonad wiki. Thanks to the people who reviewed our work and provided useful comments: * Dmitry Astapov * Oleg Tsibulsky * Dmitrij Czarkoff * Konstantin Barabanov * Dmitry Shurupov * Alexander Solovyov * Marina Sulim http://ro-che.blogspot.com/2008/06/about-xmonad-in-russian.html -- Roman I. Cheplyaka (aka Feuerbach @ IRC) From codesite-noreply at google.com Wed Jun 11 21:50:56 2008 From: codesite-noreply at google.com (codesite-noreply@google.com) Date: Wed Jun 11 21:43:08 2008 Subject: [xmonad] Issue 195 in xmonad: Last window never disappers in GNOME Message-ID: <000e0cd2bd0069c2e5044f6e649f@google.com> Issue 195: Last window never disappers in GNOME http://code.google.com/p/xmonad/issues/detail?id=195 Comment #4 by marcotmarcot: I've done a package for Ubuntu Hardy Heron with the correction needed in libwnck, available at: http://marcotmarcot.googlepages.com/libwnck.html BTW, I'm malebria. -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings From orengolan at gmail.com Wed Jun 11 21:51:44 2008 From: orengolan at gmail.com (oren) Date: Wed Jun 11 21:47:16 2008 Subject: [xmonad] i just want to join this mailing list... References: <20080611182622.GB3495@flit> Message-ID: i guess i have to post something.. From i92guboj at terra.es Wed Jun 11 11:15:53 2008 From: i92guboj at terra.es (=?ISO-8859-1?Q?Jes=FAs?= Guerrero) Date: Thu Jun 12 14:19:39 2008 Subject: [xmonad] Hello, and firefox Message-ID: <20080611171553.0f31f45e.i92guboj@terra.es> Hello everyone, I am a newcomer, and I have been playing for some time with xmonad. I've been (well, and I still am) an fvwm user for quite a long time. But xmonad seems to have an excellent support for xinerama. That alone is enough to pick my attention, since no other wm that I know of has a proper support for xinerama, even if lots of them claim to. I have a mostly working setup now, though there's a lot of room for improvements, and being new to haskell is not helping (the time will cure that, though). What I am after right now is for ideas about how to handle multiple instances of firefox. My idea is to launch a firefox instance on startup on a given workspace. But, I don't want all the firefox instances to be open on that workspace (for example, if I click an url on sylpheed I want it to be opened on a firefox window on the same workspace I am right at that moment). My current approach, right now, is to launch everything from my .xinitrc, and then I have manageHook on my xmonad.hs file to W.shift the firefox window to workspace 2. The problem is that, this method, effectively shifts ALL the firefox windows to that workspace, which means that if I click an url on sylpheed on workspace 3, then I have to go to workspace 2 to be able to see the firefox window containing the page associated to the url I just clicked on sylpheed. I don't know if the manageHook approach is correct. Maybe there's a way to send the firefox instance I open at startup to workspace 2 without a hook. I use something similar to manage some urxvt's I have for different purposes, but the hooks approach there works just ok because terminals usually have a way to change it's resource/class name, which makes matching windows much easier. Firefox doesn't have this capability as far as I know, that's why if I match firefox, it matches all the firefox windows, which is not the intended effects. I can't believe I am the first one to have such a problem, but I haven't found anything though I have looked on many places (including the mailing list archives). For now, I just work around it using another browser as the associated browser on syplheed and urxvt and floating the links windows. Ideas and guidance is welcome. Thanks everyone for reading. Cheer. -- Jes?s Guerrero From vogt.adam at gmail.com Thu Jun 12 15:54:20 2008 From: vogt.adam at gmail.com (Adam Vogt) Date: Thu Jun 12 15:46:32 2008 Subject: [xmonad] Hello, and firefox In-Reply-To: <20080611171553.0f31f45e.i92guboj@terra.es> References: <20080611171553.0f31f45e.i92guboj@terra.es> Message-ID: <20080612195419.GA2670@dell> * On Wednesday, June 11 2008, Jes?s Guerrero wrote: >My current approach, right now, is to launch everything from my .xinitrc, >and then I have manageHook on my xmonad.hs file to W.shift the firefox >window to workspace 2. The problem is that, this method, effectively >shifts ALL the firefox windows to that workspace, which means that if I That is the point of the manageHook: windows go where they belong, no matter when you start them. >click an url on sylpheed on workspace 3, then I have to go to workspace 2 >to be able to see the firefox window containing the page associated to the >url I just clicked on sylpheed. So you can either somehow run firefox with a different class (and match to that), but I don't know how, without using a function from xlib to do that: XSetClassHint(). An it isn't supposed to be used like that. Or you can scrap the manageHook and let firefox start on the currently visible workspace, which is pretty close to what you want anyways? From thomas.adam22 at gmail.com Thu Jun 12 16:03:01 2008 From: thomas.adam22 at gmail.com (Thomas Adam) Date: Thu Jun 12 15:55:15 2008 Subject: [xmonad] Hello, and firefox In-Reply-To: <20080612195419.GA2670@dell> References: <20080611171553.0f31f45e.i92guboj@terra.es> <20080612195419.GA2670@dell> Message-ID: <20080612210301.6608ace0@shuttle.home> On Thu, 12 Jun 2008 15:54:20 -0400 Adam Vogt wrote: > So you can either somehow run firefox with a different class (and > match to that), but I don't know how, without using a function from > xlib to do that: XSetClassHint(). An it isn't supposed to be used > like that. Indeed -- and this is wrong. Older versions of Firefox used to have a --gtk-class flag which would allow you to change the Class of the window before it is mapped [1] for just this purpose, but it seems to have been removed. [1] The Class of a window is only allowed to be changed in the WithDrawn state, hence why you can't change it with xprop whilst it is mapped. This is in accordance with the ICCCM2. -- Thomas Adam -- "It was the cruelest game I've ever played and it's played inside my head." -- "Hush The Warmth", Gorky's Zygotic Mynci. From i92guboj at terra.es Thu Jun 12 16:21:18 2008 From: i92guboj at terra.es (=?ISO-8859-1?Q?Jes=FAs?= Guerrero) Date: Thu Jun 12 19:31:39 2008 Subject: [xmonad] Hello, and firefox In-Reply-To: <20080612195419.GA2670@dell> References: <20080611171553.0f31f45e.i92guboj@terra.es> <20080612195419.GA2670@dell> Message-ID: <20080612222118.84f91d06.i92guboj@terra.es> Hello, Adam, On Thu, 12 Jun 2008 15:54:20 -0400 Adam Vogt wrote: > * On Wednesday, June 11 2008, Jes?s Guerrero wrote: > > >My current approach, right now, is to launch everything from my .xinitrc, > >and then I have manageHook on my xmonad.hs file to W.shift the firefox > >window to workspace 2. The problem is that, this method, effectively > >shifts ALL the firefox windows to that workspace, which means that if I > > That is the point of the manageHook: windows go where they belong, no > matter when you start them. I know. The problem is that I only want to send to workspace 2 the first instance, which is the one I launch from my .xinitrc. See below... > >click an url on sylpheed on workspace 3, then I have to go to workspace 2 > >to be able to see the firefox window containing the page associated to the > >url I just clicked on sylpheed. > > So you can either somehow run firefox with a different class (and match to > that), but I don't know how, without using a function from xlib to do that: > XSetClassHint(). An it isn't supposed to be used like that. Well, firefox has a whole plethora of problems. Let alone the whole mass of child windows it creates for one or another purpose. I think we would need a whole layout just for it or something. The big problem is that all the children are "Firefox" or "Firefox-bin" depending on your distro and firerox version. You can match by title or resource, which is a real pain, because there's something called "localization", not to speak about the wonderful title changes that are tipical on a web browser. I don't think i'ts possible to change the firefox WM_CLASS without hacking a bit either. But I digress and this is anyway a different issue (as I said, firefox has lots of them). The original purpose of my original post was to find a better way to launch a firefox instance at workspace 2, without forcing the rest of firefox instances to be shifted to that workspace. I used manageHook because I don't have any other thing in my xmonad toolbox right now, but as I said, I doubt that's the correct way for what I intend. > Or you can scrap the manageHook and let firefox start on the currently > visible workspace, which is pretty close to what you want anyways? Yep. I can just erase the manageHook reference to firefox, yet one problem remains: how to launch firefox at workspace 2 when I startx. Not that it's a critical problem. I just was wondering if there's some way to do so. I just wanted to know if there's a way to do so on xmonad. I am pretty new to this stuff. If there is not, then I suppose I can open it myself, it's not a big deal. And, a bit off-topic, but related still: is there a way to tell xmonad the desired size and position for a floated window? Thanks for your response :) -- Jes?s Guerrero -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 197 bytes Desc: not available Url : http://www.haskell.org/pipermail/xmonad/attachments/20080612/7bc6f7c8/attachment.bin From allbery at ece.cmu.edu Thu Jun 12 21:16:44 2008 From: allbery at ece.cmu.edu (Brandon S. Allbery KF8NH) Date: Thu Jun 12 21:08:53 2008 Subject: [xmonad] Hello, and firefox In-Reply-To: <20080612222118.84f91d06.i92guboj@terra.es> References: <20080611171553.0f31f45e.i92guboj@terra.es> <20080612195419.GA2670@dell> <20080612222118.84f91d06.i92guboj@terra.es> Message-ID: <858522DA-7FC2-494B-92D8-2F52C1C31275@ece.cmu.edu> On 2008 Jun 12, at 16:21, Jes?s Guerrero wrote: > The original purpose of my original post was to find a better way to > launch > a firefox instance at workspace 2, without forcing the rest of firefox > instances to be shifted to that workspace. I used manageHook because I > don't have any other thing in my xmonad toolbox right now, but as I > said, > I doubt that's the correct way for what I intend. Hm, does the ManageHook have a way to inspect the current set of windows? It should be possible to check if there is another firefox window, and if not then move the current one to workspace 2.