| Commit message (Collapse) | Author | Age |
| ... | |
| | |
| |
| |
| | |
to it.
|
| | | |
|
| | | |
|
| | | |
|
| | |\ |
|
| | | |
| | |
| | |
| | | |
slam dunk.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
This time history is being done using a hook to keep track of history.
This means I don't have to manually call pushHistory every time I focus
a new window.
|
| | | | |
|
| | |/ |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
timeout to nextButton
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Right now, Mosaic operate on the windows itself. But this means that
swapping windows can act very unintuitively. This wrapper changes
mosaci to work on window /positions/ rather than windows themselves,
so the window in position 1 will always be the same size, and when moved
to position 2, it will inherit that position's size.
There's still some buggy behavior, but it is in general much more
intuitive than it was before.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
It's not the best thing in the world, but it should help keep things in
a consistent state when dealing with many multi-stroke bindings.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
sure how I feel about it right now; it'll take some getting used to.
|
| | |
| |
| |
| | |
than a LayoutModifier.
|
| | |
| |
| |
| | |
sure how I feel about it, but Imma try it out
|
| | |
| |
| |
| |
| |
| |
| | |
This is mostly an academic exercise, as there's probably not much reason
to put a hole in the layout, but I must admit that sometimes is
aesthetically pleasing to see a little more desktop wallpaper in some
cases.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
This also combines the two into a single type.
|
| | | |
|
| | |
| |
| |
| |
| | |
Unfortunately it's a little hacky how this ended up working, but I don't
have a great solution yet.
|
| | |
| |
| |
| | |
Much cleaner.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is using xdotool to send a keystroke, which is not the best way to
do this. In fact, a proper server protocol would be better, but this is
how it is at the momement unfortunately.
There is a problem where trying to use xdotool to send a key for a
multibyte character will cause all events to freeze on XMonad for some
reason, so these actions are guarded so only 'a-zA-Z0-9' are clickable
and the rest are not, which is /okay/, I don't use unicode workspaces
that often.
|
| | |
| |
| |
| | |
stack file.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
The wml workspace @w refers to the workspace that contains the window
marked 'w', however when jumping to that workspace, an arbitrary window
is focused. It's more intuitive to set focus to the window 'w'. This
means that <H-g>@• is the same as <H-w>•.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was <l₀l₁w₀w₁ to condition on if l₀ is a subset of l₁, but this is
redundant, instead add "?" that conditions of if l₀ is empty.
So the new syntax is
?lw₀w₁ which is read, if the windowset l is not empty, then workspace w₀
else w₁.
This is the same use-case as before. Handy for defining macros to, say,
jump to Spotify if it's not on the current workspace, otherwise jump
to the prior window.
This is now accomplished with (assuming Spotify is marked 's'):
<H-g>?&s@.'@s
This reads as, if (?) the intersection between the Spotify window and the
windows on the current workspace (&s@.) is not empty (if spotify is on
the current window), go to the last workspace ('), otherwise go to the
workspace Spotify is on (@s).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds the "<" condition, it used as "in"
i.e. "<l₀l₁w₀w₁" reads as "if l₀ is a subset of l₁, then w₀ else w₁"
Useful for macro programming like, if Spotify is on the current
workspace, then go back to where I came from, otherwise jump to Spotify.
This can be achieved with the following (assuming Spotify is marked with
"s"):
"<H-g><s@.'@s"
"if spotify (s) is in the set of the windows on the current screen (@.), jump
back to where I came from (workspace '), otherwise goto the workspace
spotify is on (@s)."
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These are:
'~ws' - Associated workspace, which is the workspace of the toggled
case. I.e. workspace ~w == W, or ~. is the toggled case of the current
workspace.
'=ws₀ws₁ws₂ws₃' ws₂ if name(ws₀) == name(ws₁) otherwise ws₃
while not _that_ helpful for interactive usage, it is useful for
programming macros. I.e.
to jump to Spotify, unless I'm already on spotify, in which case go back
to where I was, I can record this macro on my keyboard:
<Hyper-g>=.s's
or a macro to jump back and forth between the current workspace and the
associated workspace on the next monitor:
<Hyper-g>=.~,.'~,.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
The bordering layout can add windows along the border of the screen,
that way something like videos or something can be shown in the corner
of the screen.
|