| Commit message (Collapse) | Author | Age |
| ... | |
| | | |
|
| | |
| |
| |
| |
| |
| | |
The fonts still leave much to be desired. Unfortunately dmenu2 does not
support fallback fonts from what I can tell, and dmenu1 doesn't support
all the nice features dmenu2 supports. Oh well.
|
| | |
| |
| |
| |
| |
| |
| | |
1. Make the spotify control work for both Spotify and Spotifyd
2. Xmobar weather not break xmobar when not connected to the internet
3. Add g<space> keybinding to go to the toogle-cased version of the
current workspace.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Void Linux doesn't have spotify in its official repos. Going with open
source solutions, I can use spotifyd, but had to hack my spotify-control
scripts to get it to work.
Void linux also puts all its binaries in /bin for some reason. Not sure
I like that, but I had to change the DMenu module to support that.
|
| | |
| |
| |
| |
| |
| | |
This changes how workspaces work. There are now as many workspaces as
there are AlphaNumeric characters. I'm not really sure how I like it,
but it's interesting. I'll keep it for a bit and see how I like it.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Created new KeysM and ButtonsM monads to make configuring
keybindings and button bindings more readable through a DSL.
Before bindings would just be a giant list, but that
made it difficult to read and repetitive.
Now the syntax follows the pattern
bind key-to-bind
mask1 : action
mask2 : action
i.e.
bind xK_a $ do
justMod $ doSomeAction a b c
shiftMod $ doSomeOtherAction a b c
This makes it a lot cleaner to see all the bindings allocated
to a specific key. That way, when adding a new binding,
I can easily see what bindings already exist for that key.
|
| | | |
|
| | |
| |
| |
| |
| | |
- Copy window to another Workspace.
- Launch a floating terminal.
|
| | | |
|
| | |
| |
| |
| |
| | |
Swap master now swaps the master window with the prior master window if
swapMaster is called while the master window is focused.
|
| | |
| |
| |
| |
| | |
Change the Marking to use XMonad's extensible state rather than
hand-rolling it myself. Allowed me to delete the XPlus monad.
|
| | |
| |
| |
| | |
This keeps the other monitors stable, which I prefer.
|
| | | |
|
| | | |
|
| | |\ |
|
| | | | |
|
| | |/ |
|
| | |
| |
| |
| |
| | |
As a part of this add the Rotatable layout modifier that can rotate the
windows 90 degrees using Shift+Mod+r.
|
| | |\ |
|
| | | | |
|
| | |/
| |
| |
| |
| |
| | |
Old bug where shifting workspaces relatively using mod-n/p would not
work as expected where visible workspaces without any windows would be
skipped over or plain not work.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
dynamicLogWithPP does not support Unicode properly!! It was encoding
each "Char" (32 bits in Haskell, mind you!) to a utf-8 byte instead of a
codepoint. The result was a butchared faux-utf8 encoded string.
This was causing xmobar to crash with unicode + my truncating code. I
have now moved away from dynamicLogWithPP and am writing my own log
string manually. It's better this way anyway; less hacky; more
fine-grained control.
|
| | |
| |
| |
| |
| | |
It wasn't working as expected for flips. This is because the
avoidStructs layout modifier was too low in the layout stack.
|
| | |
| |
| |
| | |
i.e. would rather show 'My Title' rather than 'My Titl ...'
|
| | |
| |
| |
| |
| |
| |
| |
| | |
This is done by removing all visible characters after a certain point. Right now
that's set to 70, which was found just via trial-and-error.
This will break if something has '>' or '<' and this will not be able to handle
xmobar's 'raw' tag, but it's good enough.
|
| | | |
|
| | |
| |
| |
| | |
icon issue!
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Finally removed the buggy hjkl navigation in favor of a more traditional
key bindings:
- h,l move between windows like Tab and S-Tab
- j,k adjust the master window size
Added ability to swap current window with a marked window using
S-'-<mark>.
|
| | | |
|
| | |
| |
| |
| |
| | |
Revamped the install script to make it easier to handle the install
process.
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
Mod+Shift+[].
|
| | |\ |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
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)."
|