| Commit message (Collapse) | Author | Age |
| ... | |
| | |
|
| |
|
|
|
| |
This is achieved by using `stack build --ghc-options=-ddump-minimal-imports`
and looking for the *.imports files.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
Remove a bunch of esentially-unused layouts. Now the layouts are:
- Spiral
- Mosaic
- Tall
|
| | |
|
| | |
|
| |
|
|
|
| |
Button mapping is now similar in architecture to KeyMapping. As a
consequence it works with the pending buffer.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
A "Theater" is basically the state of the "StackSet". This means that
jumping to a Theater will reset all the windows to where they were
when the user last left that theater, or an empty theater if there is
not.
New windows that a theater does not know about are put in the "hidden"
workspace (which is "*").
|
| | |
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| | |
This is the set of the current set of screens and workspaces. It can be
saved and restored. In a sense it works like how most other tiling
managers handle "workspaces" where one can change all screens at once.
Not that it's a superior system to XMonad (it's not), but it's sometimes helpful.
|
| | |\ |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Right now all existing logs are logged at Info, but this will
change. This should make it significantly easier to debug
things wit log levels like Trace. I may at some point define more
log level endpoints or come up with a more expressive logging
system, but this is a good start.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Macros may be defined by using <M-d>
<M-d>w begins defining a windowset macro
<M-d>t begins defining a workspace macro
The next character typed is the key chord to save the macro to. The next
sequence of keys read up until the Return key is the macro value. This
macro may then be used as WML objects.
Macros are pretty primitive right now. I need to think about if it would
be worthwhile to make these macros either take arguments or add some
kind of state to WML a la sed to take a step to make the language Turing
complete, and if such a development would actually be desirable. If
anything it would be an academic exercise.
|
| | | |
|
| | | |
|
| | | |
|