| Commit message (Collapse) | Author | Files | Lines |
|
Ignore-this: 1c91505b303e53b94da624230b3c893c
darcs-hash:20141222045306-1499c-3611f1dc7ab875a3d161668102c294954dd3e70a.gz
|
|
Ignore-this: 9f8c14b5aa9d398b3f167da0af1a8650
The current DynamicWorkspaces module only supports adding new workspaces
at the start of the list of workspaces. This means when binding workspaces
to keys based on the position in the list, key bindings can change
as workspaces are added in removed in a far more destructive way than
necessary. Instead, supporting appending and arbitrary insertion allows
the user to determine where the new workspace should be added.
This patch is a straight generalization of the addHiddenWorkspace' function.
Rather than always using `(:)` to insert the new workspace into the list
of workspaces, this patches causes it to use an arbitrary list insertion
function instead. A few new functions are added to prevent breakage of
external code while exported functions are left unchanged.
List of new functions:
appendWorkspace
appendWorkspacePrompt
addWorkspaceAt
addHiddenWorkspaceAt
Existing functions were modified to call their generalized brethren where possible
without changing functionality. This patch should not change behavior for any
existing users of this module.
darcs-hash:20141219002309-8d489-1a2c5cacb9724bd185836691027d1aefb8a799d5.gz
|
|
Ignore-this: 549e519d25080c77e605dc983f0d239e
darcs-hash:20141222033300-1499c-23e5947e976180fd277084f29d4f808474eace25.gz
|
|
Ignore-this: 82e9736853287f753248af41843ceb6b
This layout modifier is useful for the case if you desire to add a master
pane that has fixed width (it's fixed even if there is just one window
opened). Especially nice feature if you don't want to have too wide
terminal in a master pane.
The layout is implemented as an addition to Master layout, so it reuses
most of the code.
darcs-hash:20141220011339-1836e-543b0c692297779d51fd6f3f71e820366c977721.gz
|
|
Ignore-this: b2e5be31b70e6d31827e76bd8c00d200
darcs-hash:20140815051234-1499c-1f99e6ccdd98f6d8cdac9d08ffe1babde42a434f.gz
|
|
Ignore-this: d4c4da527db6c8affc151dc210631b85
darcs-hash:20140815051214-1499c-9b754c4927d8cc3a7c25dfb02c431c1423690c47.gz
|
|
Ignore-this: 90f855fd72406fb3d2640a133d499188
darcs-hash:20140815051136-1499c-ba127cec9ea6d28bdc8372ab4a506ee74f047fa6.gz
|
|
Ignore-this: 61363e97939fe857876c8252ac5f0302
Layout.Spacing applies a customizable amount of space around the outside of each
window. At window edges where two windows meet, the total distance between them
is therefore twice the customized value (one space value from each window). At
the edge of the screen, however, the spacing is only applied once. This results
in uneven amounts of spacing and differently-sized gaps on the screen.
This patch extends the Spacing layout to include a further gap all around the
edge of the screen, thus making all spaces around windows equal in size.
darcs-hash:20141219223646-7cf82-41539353bf5af7c54809bb7a9ff1c6a52320aa10.gz
|
|
Ignore-this: 20d6b829b810f48b5e4b4c161b39b312
darcs-hash:20141002075939-541df-8de85c44bff7b35e29159243b6bc7715865d7ecb.gz
|
|
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
|
|
Ignore-this: dbbe00791b04df61dcd595c50333fba
darcs-hash:20141001075855-c7120-f61a9682f795dc8783820050ac75ee35fa07a51a.gz
|
|
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
|
|
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
|
|
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
|
|
Ignore-this: 51204c1a9f2e6ed21228d2910417fd21
darcs-hash:20140925203037-c7120-92903fc781c20e31345ff47c4ba3f758d5d4e078.gz
|
|
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
|
|
Ignore-this: ae775c418c27301b9c12d2a233502cec
This is necessary for if-then-else support in the user's config.
darcs-hash:20140924191509-c7120-7e3ce81753c191843eb74426292db3af31197abe.gz
|
|
Ignore-this: 15e3c445a99d3b2d3a235aa76119797
darcs-hash:20140915080601-c7120-85fa97c7a8b5ae09fc092930f313c7ab050a7f4b.gz
|
|
Ignore-this: a1de1d81a5f140ab7d90edbf393e9bda
darcs-hash:20140914075352-c7120-88dac442b73a2700de15a064f36692bfd90c5e99.gz
|
|
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
|
|
Ignore-this: bdd385a9142ed039a917d135e76293fe
darcs-hash:20130317115516-32aff-6d1a30508489d3a81c3a073ae704605eb7b9cd8d.gz
|
|
the focus to the screen that was focused at group creation time
Ignore-this: b74c02b1892159694827e35122c2d517
darcs-hash:20140913174118-b769b-3fcb56b59a635c397828b6dd1e35e7c01a55693e.gz
|
|
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
|
|
Ignore-this: 436d18657d8499f4ce57311e84503d9f
darcs-hash:20140815043141-1499c-b2cddf6361798f38a96268718fbdd0810cd1fc43.gz
|
|
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
|
|
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
|
|
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
|
|
Ignore-this: c2110d07bccc61462c3fbf73c900aaa1
darcs-hash:20140710163950-1499c-ee7151d0314d7c5f154782c2099a02377311aaf3.gz
|
|
Ignore-this: 29bbfb2d07d9ddf36bf0268a4e255f81
darcs-hash:20140617174246-ab0f9-f3d46d01ac21cf07b8128a622b44be1d6129b043.gz
|
|
include warning
Ignore-this: add21190fc07338b243c2241cc746119
darcs-hash:20140601025019-25739-c68993f1e89524d9c6201a7c882fedbc8b106a41.gz
|
|
Ignore-this: ed62458b55c8b34b77f73027eeee1a73
dbus-send --print-reply
darcs-hash:20140129032114-57ebf-a7dd328b3938b51a86bade5a21f3364aec22547f.gz
|
|
Ignore-this: a15b4d844b1da4f1f1f9b6095c968705
darcs-hash:20140505001242-1499c-b133a1e0b7b7c21b0cdb0776b50b31eb85924d9f.gz
|
|
.e.g ssh admin@localhost.
Ignore-this: 297673e11d3049c4f127aac3e172d361
darcs-hash:20140504091120-3bc24-8ce1f3e7c4978a3dcd62bb9d532ac33642457075.gz
|
|
Ignore-this: 8dd677978992e0854801b8f254463dc2
darcs-hash:20140501011943-1499c-6536a0f80c5157465587cc7a98d165119586357d.gz
|
|
Ignore-this: b1f1c256aba07f70918fe1d693c8087b
darcs-hash:20140501011540-1499c-a4630752cc7fcb87bbbdbd5b909c7b5316b14a31.gz
|
|
Ignore-this: a4962486b2aa3980536bff19a537451e
darcs-hash:20140501011455-1499c-8f485a327700c52b5b62206325034f9d92e2c05e.gz
|
|
Ignore-this: a85d1dc51bf54c59ae2bd9d948cc1088
darcs-hash:20140430205848-9f2e8-c9fc6988cf24f404bff77042f1ad11d2165f6193.gz
|
|
Ignore-this: a487882c9571bf91ff921d6561bb4cc6
darcs-hash:20140428142901-1e371-2f3d3c03df35f287a6825008bbe37f08d2a100ab.gz
|
|
Ignore-this: 3b8ac316f56df6a84420754db769fb0
Extra constraints on instances are about as useful as -XDataTypeContexts
darcs-hash:20140422221105-1499c-beddf2399e373128b44faa1ffba7dfe9b68b76f7.gz
|
|
Ignore-this: edabeec973b4e0d61515818367689843
darcs-hash:20140219200811-8d489-7e1afa9668bda0a6a4cafab8cde96e50cb32f1ed.gz
|
|
Ignore-this: fd16435ccdd3fee8924723cc690cc239
darcs-hash:20140316183747-76d51-db901e98a7c9c2777be998c93ceb1fee28fc537b.gz
|
|
Ignore-this: 14a6fa263c423cd8cca3b2645b3930d7
Save almost arbitary data per window
darcs-hash:20140218100229-71adb-e69daa4b2d56a5308e37cb9bb41a893ab3905fbe.gz
|
|
Ignore-this: f81bafe9cb75a30ed6bbbe68cf5d66c0
darcs-hash:20140213215247-8d489-b1ce41f14a76281985109b933dcf9481619a7d58.gz
|
|
Ignore-this: dbb68c4c5522026bd108d0158e747b48
darcs-hash:20140202213613-3cb8c-f6ff5fd1a38cb0bc9ba779495369009817bb92dc.gz
|
|
Ignore-this: b264278f1f1ab1f18b37245a5ff33136
darcs-hash:20140202211000-3cb8c-b324c80fe56bee571252901d835511de9cd0e9bf.gz
|
|
Ignore-this: 87797ffffc8d0fd088482bd0c5baf0e
darcs-hash:20140202143415-3cb8c-2c4563a42fe033527662ff7f7aeb175f8a110b63.gz
|
|
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
|
|
Ignore-this: 90c1437c6ffe1dbd8f4a4ed192097ec
darcs-hash:20140128212844-76d51-ade7eabfc1a759b5b97409835c54e705d0a727bd.gz
|
|
Ignore-this: 761b39c3e3c90b6123f068e8b1d34e5d
darcs-hash:20131219201440-1499c-1b093fc7a80b26cb93dd51e455038f275914a2e5.gz
|
|
Ignore-this: f21448c248ec0ac289c309ed964ebcff
darcs-hash:20131219201000-1499c-17d24672746258c1681235524e14064dadfe78d9.gz
|