Commit Graph

4005 Commits

Author SHA1 Message Date
slotThe
c36a888a59 X.P.FuzzyMatch: Use isSubsequenceOf
The implementation is exactly the same, just that this function is now
in base, so there should be no change in behaviour.
2022-01-30 10:20:04 +01:00
Tony Zorman
56cc296754 Merge pull request #643 from tulth/trayerResizeHook
add to hacks: rough draft trayer resize event hook
2022-01-21 09:30:46 +01:00
tulthix
4d24193baa X.U.Hacks: Add tray(er) event hooks
Adds event hooks to communicate with trayer or, more generally, with
other tray programs.  For convenience, a standard query for trayer is
also provided.
2022-01-21 09:16:28 +01:00
slotThe
de886d6182 CHANGES: Remove Bluetile from deprecated modules
Was undeprecated in 981166a2ab.
2022-01-17 18:33:22 +01:00
Tomas Janousek
201a14718e X.A.GroupNavigation, X.H.WorkspaceHistory: Leak fix cleanups
Simplify stuff a bit. Prevent memory leaks additionally in:
`workspaceHistoryTransaction` and `workspaceHistoryModify`.

Related: https://github.com/xmonad/xmonad-contrib/pull/653
2022-01-15 19:12:32 +00:00
Tomas Janousek
981166a2ab Un-deprecate X.C.Bluetile
This one isn't actually a personal configuration, it's more like
X.C.Desktop and the other desktop-specific configs. As I happen to
sometimes use it for testing whether everything still works with
decorated layouts, it shouldn't be considered abandoned.

Related: https://github.com/xmonad/xmonad-contrib/pull/679
2022-01-15 18:23:59 +00:00
Tomas Janousek
2b5d2c5ab8 X.U.ActionQueue: Separate ExtState and ExtConf data types
Using the same type for both is confusing and requires a bogus Semigroup
instance.
2022-01-15 13:43:16 +00:00
Tomas Janousek
50527a4613 X.H.BorderPerWindow: Improve module synopsis 2022-01-15 13:43:16 +00:00
Tomas Janousek
20753c1bdb flake.nix: Use upstream gitignore.nix instead of Ivan's fork 2022-01-15 12:24:03 +00:00
Tomas Janousek
756d73c78c Merge branch 'mikenrafter/master' 2022-01-15 12:23:22 +00:00
Tony Zorman
f90e76248f Merge pull request #679 from slotThe/deprecate-modules
Deprecate user and abandoned modules
2022-01-14 07:55:52 +01:00
slotThe
478393fb7d Deprecate user and abandoned modules
Now that the user configs are on the website, it is time to deprecate
them.  At the same time deprecated X.C.Monad, which hasn't been updated
since 2008 and X.C.Prime, which has confused users quite recently,
thinking it to be a better starting place.

Fixes: https://github.com/xmonad/xmonad-contrib/issues/677
Fixes: https://github.com/xmonad/xmonad-contrib/issues/595
Related: https://github.com/xmonad/xmonad-web/pull/49
2022-01-14 07:58:18 +01:00
Mike Nrafter
77ba202548 Fixed flake.nix's use of GitIgnore. 2022-01-12 20:02:33 -07:00
Tony Zorman
41ca79986b Merge pull request #676 from exorcist365/master
X.A.FloatKeys: Export ChangeDim
2022-01-08 09:05:51 +01:00
exorcist365
be1201cdeb X.A.FloatKeys: Export ChangeDim
Haddock displays exported types in a much nicer way.
2022-01-08 09:06:00 +01:00
brandon s allbery kf8nh
aad8a3a865 Missed a reference to the old SP workspace 2022-01-06 08:10:02 -05:00
slotThe
0a6048c66d X.U.EZConfig: Force readKeySequence to consume the whole input
When users specify non-existent keys, it seems most intuitive to just
abort the parse and not try to take the "longest" input that still
works.  For example, given the "key" `M-10` we should signal a parse
error (by returning `Nothing`) instead of parsing `M-1` and ignoring
the rest of the input.  The old EZConfig parser accounted for this but
when the module was rewritten to use X.U.Parser in [1], this was
forgotten about.

Fixes: https://github.com/xmonad/xmonad/issues/361

[1]: 8abeb81fd0
2022-01-05 15:06:17 +01:00
Yecine Megdiche
28d86f3a28 Merge pull request #675 from afreakk/patch-1
keysMoveWindow: change signature type D to ChangeDim in XMonad.Actions.FloatKeys
2022-01-03 11:08:42 +01:00
slotThe
324fdd802a tests: Fix typos in prop names 2022-01-03 08:59:41 +01:00
afreakk
7bcd81a7e9 keysMoveWindow signature D -> ChangeDim 2022-01-02 20:41:43 +01:00
Yecine Megdiche
5cc2db4a9a Merge pull request #674 from TheMC47/minimize-haddock-formatting
X.A.Minimize: fix formatting
2022-01-01 23:12:16 +01:00
Yecine Megdiche
be6530808f X.A.Minimize: fix formatting 2022-01-01 17:55:51 +01:00
Tony Zorman
a17e2904dd Merge pull request #671 from SimSaladin/simsaladin/minimize-improvements-rebased
X.L.BinarySpacePartition: Ignore minimized windows
2021-12-31 10:51:22 +01:00
Tony Zorman
3389241adb Merge pull request #673 from slotThe/org-mode-parser
X.P.OrgMode: Update parser tests
2021-12-31 10:02:29 +01:00
slotThe
2e74c62be7 tests: Check for inverse semigroup property in OrgMode parser
Ever since [1] we allow a second representation for the month (namely,
the numerical one).  Since we lose this information during parsing,
pretty printing is now not a proper postinverse of parsing (it still is
a proper preinverse, however).

Thus, we can't simply check for an inverse anymore.  However, the
operations still form an inverse semigroup [2], which is something
that's easily checkable.  For simplicity, do this in both directions and
completely forget about linearity for now.

[1]: 91f1a0de1e (Fix date parsing issue
                                               for org mode plugin)
[2]: https://en.wikipedia.org/wiki/Inverse_semigroup
2021-12-31 09:55:49 +01:00
slotThe
4f048fb563 X.P.OrgMode: Check num validity while parsing
There are a lot of times when we could already check for "valid" input
during parsing instead of relaying possibly incorrect dates and times to
`org-mode`.  This seems like a sensible thing to do—I don't think anyone
would ever want to schedule anything for 35:90 :)
2021-12-31 09:55:49 +01:00
Sibi Prabakaran
0f8b3616b2 Merge pull request #672 from xmonad/org-mode-date-parsing-fix
Fix date parsing issue for org mode plugin
2021-12-29 23:30:48 +05:30
Sibi Prabakaran
66fb59e934 Update pfail to empty 2021-12-29 23:20:30 +05:30
Sibi Prabakaran
f47ed83462 Update changes.md 2021-12-29 15:02:47 +05:30
Sibi Prabakaran
91f1a0de1e Fix date parsing issue for org mode plugin
This patch fixes the date parsing issue currently when an entry like
`todo +d 22 01 2022` is used. I have added tests too which demonstrate
the current issue so that we can prevent future regression.
2021-12-29 14:58:46 +05:30
Samuli Thomasson
508586bf44 X.L.BinarySpacePartition: Ignore minimized windows
Hidden windows are now ignored by the layout so that hidden windows in
the stack don't offset position calculations in the layout.

Also in X.H.ManageHelpers: added `isMinimized`
2021-12-28 22:33:52 +01:00
Tony Zorman
769e5f9c94 Merge pull request #670 from rdiaz02/withWorkspace-fuzzyMatch
X.A.DynamicWorkspaces.withWorkspace: honor custom search predicate
2021-12-28 14:04:07 +01:00
ramon diaz-uriarte (at Phelsuma)
540635fe1c X.A.DynamicWorkspaces: Honor searchPredicate in withWorkspace
If the user's prompt configuration has a custom `searchPredicate` (e.g.,
`X.P.FuzzyMatch.fuzzyMatch`) the `withWorkspace` prompt should make use
of it (instead of defaulting to an `isPrefixOf`-style matching).  For
details see

    https://mail.haskell.org/pipermail/xmonad/2021-December/015491.html
2021-12-28 14:00:52 +01:00
Tony Zorman
4d387bbfc9 Merge pull request #667 from geekosaur/664-spawnonce-documentation
document need for `manageSpawn` in `SpawnOnce`
2021-12-27 17:30:46 +01:00
brandon s allbery kf8nh
125c945cc9 X.U.SpawnOnce: Document need for manageSpawn
Also, reexport `manageSpawn` for convenience.
2021-12-27 17:31:54 +01:00
Tony Zorman
adeb27dc69 Merge pull request #666 from geekosaur/665-spacing-avoidstruts-documentation
Document interaction of `avoidStruts` with the screen rectangle
2021-12-23 09:52:41 +01:00
brandon s allbery kf8nh
d65cf05369 warn about using avoidStruts with gap modifiers 2021-12-22 16:41:30 -05:00
brandon s allbery kf8nh
2cf0a10f5b warn about use of avoidStruts with spacing modifiers 2021-12-22 16:38:11 -05:00
brandon s allbery kf8nh
a67be39673 document that avoidStruts must be applied before any modifier that
changes the screen rectangle
2021-12-22 16:27:21 -05:00
Tony Zorman
0010735aca Merge pull request #659 from slotThe/x.u.parser
New Module: XMonad.Util.Parser
2021-12-17 12:13:02 +01:00
slotThe
520c51817a X.U.EZConfig: Add simple unit tests
Add very basic unit tests for EZConfig to see if it can parse all of the
keys (and key combinations) that it promises to parse.

The long-term goal here should be to write a pretty-printer for EZConfig
and to check whether that's a proper inverse (either in the normal sense
or in the inverse semigroup sense), as the tests for X.P.OrgMode do.
2021-12-13 16:11:57 +01:00
slotThe
8abeb81fd0 X.U.EZConfig: Use X.U.Parser
Using X.U.Parser works almost as a drop-in replacement for ReadP here.
In some places (like `parseSpecial`) we need to be a little bit more
careful when constructing the parser, but this is offset a much simpler
`readKeySequence`.
2021-12-13 16:11:57 +01:00
slotThe
b1532e666f X.P.OrgMode: Use X.U.Parser
Since we now have an "internal" parser library in xmonad, use it.  This
allows us to get rid of some hacks in this module that were needed
because of ReadP's parsing behaviour.
2021-12-13 16:11:57 +01:00
slotThe
8b3df5b268 New module: XMonad.Util.Parser
This module provides a parser combinator library based on base's ReadP,
which aims to function more like other popular combinator libraries like
attoparsec and megaparsec.

In particular, the Alternative and Monoid instances are left-biased now,
so combinators like `many` and `optional` from Control.Applicative work
in a more intuitive manner.  Further, some functions (like `endBy1`)
only return the "most successful" parse, instead of returning all of
them.  We can now get away with providing a single parsing result
instead of ReadP's list of results (as such, parsers need to be
disambiguated earlier instead of trimming the list down after parsing).
2021-12-13 16:11:57 +01:00
Tony Zorman
061faf1748 Merge pull request #646 from iliayar/feature/fallback-fonts
Add xft-based font fallback support
2021-12-11 19:12:14 +01:00
Ilya
42b392e06a X.U.Font: Add font-fallback support
This adds basic font-fallback support for X.U.Font, as well as modules
using it, like X.Prompt and X.A.TreeSelect.

In the new system, multiple fonts may be specified with the syntax

    "xft:iosevka-11,FontAwesome-9"

Fixes: https://github.com/xmonad/xmonad-contrib/issues/208
2021-12-11 15:08:42 +01:00
Tony Zorman
905a4fec9c Merge pull request #660 from exorcist365/master
X.H.BorderPerWindow: Remove unused import
2021-12-07 09:10:20 +01:00
exorcist365
3569e7168b X.H.BorderPerWindow: Remove unused import
Dimension is already exported by XMonad.

Fixes: 95b37a9ab2
2021-12-07 09:08:22 +01:00
slotThe
853264b113 X.H.BorderPerWindow: Fix typo in documentation
Fixes: 95b37a9ab2
2021-12-06 12:38:04 +01:00
Tony Zorman
afdd466bc6 Merge pull request #640 from subbyte/master
Add X.U.ActionQueue and X.H.BorderPerWindow
2021-12-05 14:24:17 +01:00