aboutsummaryrefslogtreecommitdiffstats
path: root/XMonad (follow)
Commit message (Collapse)AuthorAgeFilesLines
* X.C.Prime: doc tweaksDevin Mullins2014-10-021-5/+8
| | | | | | Ignore-this: 20d6b829b810f48b5e4b4c161b39b312 darcs-hash:20141002075939-541df-8de85c44bff7b35e29159243b6bc7715865d7ecb.gz
* X.A.Navigation2D: add convenience functions for setting config & keybindingsDevin Mullins2014-10-021-7/+94
| | | | | | | | | | | Ignore-this: ed01137f03a531f73315ed503d1eb6ef 1. Added 'additionalNav2DKeys' which adds keybindings for the cartesian product of direction keys and (modifier, action) pairs given. 2. Added 'navigation2D' which combines that with 'withNavigation2DConfig'. 3. Added 'additionalNav2DKeysP' and 'navigation2DP' which do the same, but use the 'additionalKeysP' syntax. darcs-hash:20141002075757-541df-56008528a95cd2865c31673db77e6e251a55e323.gz
* X.C.Prime: doc fixesDevin Mullins2014-10-011-2/+2
| | | | | | Ignore-this: dbbe00791b04df61dcd595c50333fba darcs-hash:20141001075855-c7120-f61a9682f795dc8783820050ac75ee35fa07a51a.gz
* X.C.Prime: add 'withScreens' and friendsDevin Mullins2014-10-011-14/+85
| | | | | | | | | | Ignore-this: eba37b1ff3da265a4dcc509f538fce4d The screen equivalent of 'withWorkspaces' lets you more easily define keys that move/swap between screens. Also, rename wsKeyspecs to wsKeys, and make a couple of doc tweaks. darcs-hash:20141001075250-c7120-b04f2d41fea234317ad90e1da250f73183ddc64f.gz
* Implement proper handling of dynamically changing hostnameAnton Vorontsov2014-09-012-9/+96
| | | | | | | | | | | | | | | | | | | | | | | | | Ignore-this: 2aeac6d2161e666d40cda6a09f78b208 The module implements a proper way of finding out whether the window is remote or local. Just checking for a hostname and WM_CLIENT_MACHINE being equal is often not enough because the hostname is a changing subject (without any established notification mechanisms), and thus WM_CLIENT_MACHINE and the hostname can diverge even for a local window. This module solves the problem. As soon as there is a new window created, we check the hostname and WM_CLIENT_MACHINE, and then we cache the result into the XMONAD_REMOTE property. Notice that XMonad itself does not know anything about hostnames, nor does it have any dependency on Network.* modules. For this module it is not a problem: you can provide a mean to get the hostname through your config file (see usage). Or, if you don't like the hassle of handling dynamic hostnames (suppose your hostname never changes), it is also fine: this module will fallback to using environment variables. darcs-hash:20140901072158-1836e-fa2b05c79ec3217d5024b7e050b2239dcf7de4b4.gz
* Add Stoppable layout for power savingAnton Vorontsov2014-09-011-0/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ignore-this: a52805d9f3095cd7af48507847ed2fe3 This module implements a special kind of layout modifier, which when applied to a layout, causes xmonad to stop all non-visible processes. In a way, this is a sledge-hammer for applications that drain power. For example, given a web browser on a stoppable workspace, once the workspace is hidden the web browser will be stopped. Note that the stopped application won't be able to communicate with X11 clipboard. For this, the module actually stops applications after a certain delay, giving a chance for a user to complete copy-paste sequence. By default, the delay equals to 15 seconds, it is configurable via 'Stoppable' constructor. The stoppable modifier prepends a mark (by default equals to "Stoppable") to the layout description (alternatively, you can choose your own mark and use it with 'Stoppable' constructor). The stoppable layout (identified by a mark) spans to multiple workspaces, letting you to create groups of stoppable workspaces that only stop processes when none of the workspaces are visible, and conversely, unfreezing all processes even if one of the stoppable workspaces are visible. To stop the process we use signals, which works for most cases. For processes that tinker with signal handling (debuggers), another (Linux-centric) approach may be used. See https://www.kernel.org/doc/Documentation/cgroups/freezer-subsystem.txt darcs-hash:20140901072141-1836e-f65c7bdad9b87883e41a526f496d93f0171ed149.gz
* X.C.Prime: doc changesDevin Mullins2014-09-251-1/+15
| | | | | | Ignore-this: 51204c1a9f2e6ed21228d2910417fd21 darcs-hash:20140925203037-c7120-92903fc781c20e31345ff47c4ba3f758d5d4e078.gz
* X.C.Prime: add withWorkspaces et al.Devin Mullins2014-09-251-52/+151
| | | | | | | | | Ignore-this: 65f691270110cc5de13c950d9dcb0c17 This allows easier configuration of workspaces and their keybindings. Required generalizing the 'Prime' type, so lots of other lines changed in rather trivial ways. darcs-hash:20140925203034-c7120-ade74542ae6f9c059d2967e000e948b52e45323a.gz
* X.C.Prime: add ifThenElse bindingDevin Mullins2014-09-241-0/+7
| | | | | | | Ignore-this: ae775c418c27301b9c12d2a233502cec This is necessary for if-then-else support in the user's config. darcs-hash:20140924191509-c7120-7e3ce81753c191843eb74426292db3af31197abe.gz
* X.C.Prime: doc fixesDevin Mullins2014-09-151-5/+5
| | | | | | Ignore-this: 15e3c445a99d3b2d3a235aa76119797 darcs-hash:20140915080601-c7120-85fa97c7a8b5ae09fc092930f313c7ab050a7f4b.gz
* X.C.Prime: fix 'def' hyperlink in docDevin Mullins2014-09-141-3/+3
| | | | | | Ignore-this: a1de1d81a5f140ab7d90edbf393e9bda darcs-hash:20140914075352-c7120-88dac442b73a2700de15a064f36692bfd90c5e99.gz
* XMonad.Config.Prime, a do-notation for configDevin Mullins2014-09-142-2/+512
| | | | | | | | | | | | | Ignore-this: f7397aa6e6efe5d76acebfa22c567baa Note that the use of RebindableSyntax is because of the need to vary the layoutHook type throughout the config. The alternative, using the existential Layout type, was rejected because it required TemplateHaskell in order to look nice, and TemplateHaskell is not portable. I've tried to make a version of (>>) that also worked on normal monads, but have had no luck as of yet. Maybe some intrepid soul can add it later. darcs-hash:20140914064828-c7120-fbf2746080bb2410b2b70da290fd50eefd49435d.gz
* X.P.Shell: fix doc typome2013-03-171-1/+1
| | | | | | Ignore-this: bdd385a9142ed039a917d135e76293fe darcs-hash:20130317115516-32aff-6d1a30508489d3a81c3a073ae704605eb7b9cd8d.gz
* reverse workspaces, so that switching to a dynamic workspace group restores ↵nwfilardo2014-09-131-1/+1
| | | | | | | | the focus to the screen that was focused at group creation time Ignore-this: b74c02b1892159694827e35122c2d517 darcs-hash:20140913174118-b769b-3fcb56b59a635c397828b6dd1e35e7c01a55693e.gz
* add-new-xmonad-prompt-passeniotna.t2014-08-291-0/+142
| | | | | | | | | | | | | | | | | | | | | | | | | Ignore-this: 11e85dfe3d24cef88d8d89f4e7b1ec0b This module provides 3 <XMonad.Prompt> to ease passwords manipulation (generate, read, remove): - one to lookup passwords in the password-storage. - one to generate a password for a given password label that the user inputs. - one to delete a stored password for a given password label that the user inputs. All those prompts benefit from the completion system provided by the module <XMonad.Prompt>. The password store is setuped through an environment variable PASSWORD_STORE_DIR. If this is set, use the content of the variable. Otherwise, the password store is located on user's home @$HOME\/.password-store@. Source: - The password storage implementation is <http://git.zx2c4.com/password-store the password-store cli>. - Inspired from <http://babushk.in/posts/combining-xmonad-and-pass.html> darcs-hash:20140829131928-ab0f9-201583ab1cebfed0b77492c080b8a70f7b389eeb.gz
* use Data.Map instead of Data.Map.Strict to support containers < 0.5Adam Vogt2014-08-151-1/+1
| | | | | | Ignore-this: 436d18657d8499f4ce57311e84503d9f darcs-hash:20140815043141-1499c-b2cddf6361798f38a96268718fbdd0810cd1fc43.gz
* config-mateallbery.b2014-08-031-0/+85
| | | | | | | | | Ignore-this: d5de258c0a28cd5ba64a59cf37cd480a Initial support for the Mate desktop environment (http://mate-desktop.org). Based on existing Gnome 2 support, since Mate is a maintained fork of Gnome 2. darcs-hash:20140803020659-181ff-928c8525cae12676dc77ca7cb299f86421969a40.gz
* debug-managehookallbery.b2014-08-031-0/+100
| | | | | | | | | | | | | | Ignore-this: 51f9255b496cca79e4a53e274c400ecc A set of hooks, and convenience combinators, to help with ManageHook debugging. Ordinary users may well want to use debugManageHookOn in normal configs, specifying a key sequence which can be pressed before running a command in order to capture debug information just for that command's main window. This is especially useful when trying to diagnose issues such as programs that do not play well with SpawnOn, or ManageHook matching on 'title' when the program does not set the window title until after it is mapped. darcs-hash:20140803020601-181ff-78e3735233c7af1d65d1aa3b2b6dbfead1a987b7.gz
* debug-debugallbery.b2014-08-032-60/+111
| | | | | | | | | Ignore-this: cbb2b1d99293e3a4d02a256c2733aeb0 Various fixes and enhancements to DebugWindow and DebugStack. ManageDebug requires these fixes, but some of them are significant even if not using ManageDebug. darcs-hash:20140803020530-181ff-f11b9446cddb31d970d1e227e63ec6ec5a45a0d2.gz
* derive Applicative instances to suppress AMP warningAdam Vogt2014-07-103-3/+7
| | | | | | Ignore-this: c2110d07bccc61462c3fbf73c900aaa1 darcs-hash:20140710163950-1499c-ee7151d0314d7c5f154782c2099a02377311aaf3.gz
* add-duck-duck-go-search-engineeniotna.t2014-06-171-2/+6
| | | | | | Ignore-this: 29bbfb2d07d9ddf36bf0268a4e255f81 darcs-hash:20140617174246-ab0f9-f3d46d01ac21cf07b8128a622b44be1d6129b043.gz
* XSelection: getSelection: fix connection exhaustion bug (issue #573); ↵gwern2014-06-011-4/+10
| | | | | | | | include warning Ignore-this: add21190fc07338b243c2241cc746119 darcs-hash:20140601025019-25739-c68993f1e89524d9c6201a7c882fedbc8b106a41.gz
* Fix dbus-send call in XMonad.Config.Gnomemd143rbh7f2014-01-291-1/+1
| | | | | | | Ignore-this: ed62458b55c8b34b77f73027eeee1a73 dbus-send --print-reply darcs-hash:20140129032114-57ebf-a7dd328b3938b51a86bade5a21f3364aec22547f.gz
* warning police (unused variables)Adam Vogt2014-05-051-3/+3
| | | | | | Ignore-this: a15b4d844b1da4f1f1f9b6095c968705 darcs-hash:20140505001242-1499c-b133a1e0b7b7c21b0cdb0776b50b31eb85924d9f.gz
* This patch makes the Ssh extension works with **user** arguments in ssh, ↵linxray2014-05-041-2/+9
| | | | | | | | .e.g ssh admin@localhost. Ignore-this: 297673e11d3049c4f127aac3e172d361 darcs-hash:20140504091120-3bc24-8ce1f3e7c4978a3dcd62bb9d532ac33642457075.gz
* remove trailing whitespace in L.BinarySpacePartitionAdam Vogt2014-05-011-50/+50
| | | | | | Ignore-this: 8dd677978992e0854801b8f254463dc2 darcs-hash:20140501011943-1499c-6536a0f80c5157465587cc7a98d165119586357d.gz
* replace Bound with the equivalent Direction2DAdam Vogt2014-05-011-28/+27
| | | | | | Ignore-this: b1f1c256aba07f70918fe1d693c8087b darcs-hash:20140501011540-1499c-a4630752cc7fcb87bbbdbd5b909c7b5316b14a31.gz
* remove unused extension in BSPAdam Vogt2014-05-011-1/+1
| | | | | | Ignore-this: a4962486b2aa3980536bff19a537451e darcs-hash:20140501011455-1499c-8f485a327700c52b5b62206325034f9d92e2c05e.gz
* Add BinarySpacePartition layoutbenweitzman2014-04-301-0/+304
| | | | | | Ignore-this: a85d1dc51bf54c59ae2bd9d948cc1088 darcs-hash:20140430205848-9f2e8-c9fc6988cf24f404bff77042f1ad11d2165f6193.gz
* X.Actions.DynamicWorkspaceGroups: export new function addRawWSGroupBrent Yorgey2014-04-281-1/+9
| | | | | | Ignore-this: a487882c9571bf91ff921d6561bb4cc6 darcs-hash:20140428142901-1e371-2f3d3c03df35f287a6825008bbe37f08d2a100ab.gz
* Remove unneeded context with the IfMax layout instanceAdam Vogt2014-04-231-2/+1
| | | | | | | | Ignore-this: 3b8ac316f56df6a84420754db769fb0 Extra constraints on instances are about as useful as -XDataTypeContexts darcs-hash:20140422221105-1499c-beddf2399e373128b44faa1ffba7dfe9b68b76f7.gz
* Adding side tabs and replacing TabbarLocation with Direction2D.nrujac2014-02-191-25/+24
| | | | | | Ignore-this: edabeec973b4e0d61515818367689843 darcs-hash:20140219200811-8d489-7e1afa9668bda0a6a4cafab8cde96e50cb32f1ed.gz
* warning policeDaniel Wagner2014-03-161-3/+1
| | | | | | Ignore-this: fd16435ccdd3fee8924723cc690cc239 darcs-hash:20140316183747-76d51-db901e98a7c9c2777be998c93ceb1fee28fc537b.gz
* New module: XMonad.Util.WindowStateDmitry Bogatov2014-02-181-0/+92
| | | | | | | | Ignore-this: 14a6fa263c423cd8cca3b2645b3930d7 Save almost arbitary data per window darcs-hash:20140218100229-71adb-e69daa4b2d56a5308e37cb9bb41a893ab3905fbe.gz
* Add side tabs to the tabbed layout.nrujac2014-02-131-9/+62
| | | | | | Ignore-this: f81bafe9cb75a30ed6bbbe68cf5d66c0 darcs-hash:20140213215247-8d489-b1ce41f14a76281985109b933dcf9481619a7d58.gz
* SpawnNamedPipe hlint cleanupcwills.dev2014-02-021-2/+2
| | | | | | Ignore-this: dbb68c4c5522026bd108d0158e747b48 darcs-hash:20140202213613-3cb8c-f6ff5fd1a38cb0bc9ba779495369009817bb92dc.gz
* document and cleanup SpawnNamedPipecwills.dev2014-02-021-6/+40
| | | | | | Ignore-this: b264278f1f1ab1f18b37245a5ff33136 darcs-hash:20140202211000-3cb8c-b324c80fe56bee571252901d835511de9cd0e9bf.gz
* Added SpawnNamedPipecwills.dev2014-02-021-0/+42
| | | | | | Ignore-this: 87797ffffc8d0fd088482bd0c5baf0e darcs-hash:20140202143415-3cb8c-2c4563a42fe033527662ff7f7aeb175f8a110b63.gz
* Make commandToComplete in XMonad.Prompt.Shell complete last wordmd143rbh7f2014-01-301-1/+0
| | | | | | | | | | Ignore-this: b0fe22fdd7b9409835fd0ca069f2e01a The following change from 2013-02-09 breaks shell completion for me: hunk ./XMonad/Prompt/Shell.hs 65 + commandToComplete _ c darcs-hash:20140130200050-57ebf-1c86acb3860e9860cd99ec11f03d779622aea011.gz
* expose and document X.L.IndependentScreens.marshallSortDaniel Wagner2014-01-281-1/+2
| | | | | | Ignore-this: 90c1437c6ffe1dbd8f4a4ed192097ec darcs-hash:20140128212844-76d51-ade7eabfc1a759b5b97409835c54e705d0a727bd.gz
* ServerMode properly indentAdam Vogt2013-12-191-1/+1
| | | | | | Ignore-this: 761b39c3e3c90b6123f068e8b1d34e5d darcs-hash:20131219201440-1499c-1b093fc7a80b26cb93dd51e455038f275914a2e5.gz
* remove ServerMode tabsAdam Vogt2013-12-191-5/+5
| | | | | | Ignore-this: f21448c248ec0ac289c309ed964ebcff darcs-hash:20131219201000-1499c-17d24672746258c1681235524e14064dadfe78d9.gz
* fix -Wall ServerModeAdam Vogt2013-12-191-4/+4
| | | | | | Ignore-this: 708dd5fc60f43dee3d1da085002052f darcs-hash:20131219181030-1499c-cdff20b6f4bda42242b5533a2c1f75e9ccd69d93.gz
* documentation note that ServerMode is similar to wmctrlAdam Vogt2013-12-191-1/+2
| | | | | | Ignore-this: 3215bdf1c698c798eca8ed7f62a0f591 darcs-hash:20131219180748-1499c-478cef03095275ad2a43c5c64dda5b4e4e57d406.gz
* Generalized XMonad.Hooks.ServerModepolson22013-12-161-41/+108
| | | | | | Ignore-this: e58da3b168a1058f32982833ea25a739 darcs-hash:20131216025100-92c7a-150574b67a1becbb0e5a09a9b2193d3dee5722dd.gz
* IfMax-LayoutIlya Portnov2013-12-011-0/+77
| | | | | | | Ignore-this: dac53f2a0505e740f05fdf03f1db0c21 This adds a new ("conditional") layout, IfMax, which simply runs one layout, if there are < darcs-hash:20131201072634-c5067-1caf5f9de962285cf1b656266e78a0c46979f9c7.gz
* fix UrgencyHook and add filterUrgencyHookAdam Vogt2013-09-251-1/+17
| | | | | | Ignore-this: 3b7c62275701e6758397977c5c09b744 darcs-hash:20130924224738-1499c-ab95229d2c111aa4f438df0a03e2dfd4429a5a55.gz
* export XMonad.Hooks.UrgencyHook.clearUrgency (issue 533)Adam Vogt2013-09-231-1/+1
| | | | | | Ignore-this: dafe5763d9abcfa606f5c1a8cf5c57d6 darcs-hash:20130923031349-1499c-4f7978aa0d6801c4cc1a1cc16f817639aaa8bbdc.gz
* minor documentation fix: manageDocks doesn't do anything with struts, so ↵Daniel Wagner2013-08-141-2/+1
| | | | | | | | don't claim it does Ignore-this: a2610d6c1318ac0977abfc21d1b91632 darcs-hash:20130814125106-76d51-cf0472bdd32e82e5f5a0d11aaedb9d5396f420e7.gz
* don't pretend to be LG3D in X.C.Dmwit because this confuses modern GTKDaniel Wagner2013-08-131-2/+1
| | | | | | Ignore-this: 8f728dc1b4bf5e472d99419cc5920e51 darcs-hash:20130813211636-76d51-87be9dff0c57eeff4f27725c4bb74166a3a91f64.gz