aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Only bind the necessary keys during a submap. A little strange, not sure how ↵experimental_only_bind_necessaryJosh Rahm2022-04-13
| | | | I feel about it, but it is worthwhile to keep around
* Consistent timeouts using the clock rather than counting threadDelay. Add ↵Josh Rahm2022-04-13
| | | | timeout to nextButton
* Add ConsistentMosaic, a wrapper to make Mosaic more consistent.Josh Rahm2022-04-13
| | | | | | | | | | | 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.
* Replace submap and friends with my own versions that do the timeout.Josh Rahm2022-04-12
|
* Finally fix deprecation issueJosh Rahm2022-04-12
|
* Add a Polling-style timeout to mapNextString.Josh Rahm2022-04-12
| | | | | 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.
* Fix repeatable key to do an action when first pressed.Josh Rahm2022-04-12
|
* Add type-static way to get the length of a LayoutListJosh Rahm2022-04-12
|
* Move LayoutDraw -> Layout.DrawJosh Rahm2022-04-12
|
* Clean up LayoutList and move to Layout.ListJosh Rahm2022-04-12
|
* noMod -> (noMod -|- justMod)Josh Rahm2022-04-12
|
* Change keys to make H+Space a leader key for doing layout related stuff. Not ↵Josh Rahm2022-04-12
| | | | sure how I feel about it right now; it'll take some getting used to.
* Clean up Poppable so it's a proper proxy to the underlying layout rather ↵Josh Rahm2022-04-12
| | | | than a LayoutModifier.
* Make spacing specific to the current layout rather than all layouts. Not ↵Josh Rahm2022-04-12
| | | | sure how I feel about it, but Imma try it out
* Add another layout modifier to add a hole.Josh Rahm2022-04-12
| | | | | | | 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.
* Move Rahm.Desktop.Layout.Layout to Rahm.Desktop.LayoutJosh Rahm2022-04-12
|
* Break out the ModifyDescription into its own file.Josh Rahm2022-04-12
|
* Break Rotate into it's own file.Josh Rahm2022-04-12
|
* Break the Flippable modifiers into their own file.Josh Rahm2022-04-12
| | | | This also combines the two into a single type.
* Change LayoutDraw so mosaic looks a little more interesting.Josh Rahm2022-04-11
|
* Fix bug with Poppable where it was passing the Resize to the underlying layout.Josh Rahm2022-04-11
| | | | | Unfortunately it's a little hacky how this ended up working, but I don't have a great solution yet.
* Rename Zoom to Pop and move into its own Module.Josh Rahm2022-04-11
| | | | Much cleaner.
* Add right click to move current window to a workspace.Josh Rahm2022-04-11
|
* Add clickable workspaces to XMobar.Josh Rahm2022-04-11
| | | | | | | | | | | | 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.
* More refactoring. Started breaking up Layout. Moved Language extensions into ↵Josh Rahm2022-04-10
| | | | stack file.
* Rename Internal to Rahm.DesktopJosh Rahm2022-04-10
|
* Minor changesJosh Rahm2022-04-10
|
* Rename LayoutZipper to LayoutList. Add more utils for handling a selectorJosh Rahm2022-04-09
|
* Document, and make better LayoutZipper.Josh Rahm2022-04-09
| | | | | | | | | | Now LayoutZipper can be circular, which means layout switching operates semantically identically to how it did before making the typesafe selector. The selector was very much an acedemic exercise, but since it is working as expect, I will keep it. I like the type-safety and it can be used as an example for similar exercises.
* [Experimental] - Attempting to create typesafy way to navigate layouts.Josh Rahm2022-04-09
|
* Allow marks to be any alpha-numeric character, including unicode charactersJosh Rahm2022-04-09
|
* Remove trailing spaceJosh Rahm2022-04-09
|
* Change mosaic to respond to multiple different kinds of messagesJosh Rahm2022-04-09
|
* More generic navigation and documentation.Josh Rahm2022-04-08
|
* Change the layout modifiers to work on individual layouts.Josh Rahm2022-04-08
| | | | | | | | | | So, when doing something like a "zoom", it will only affect the current layout. Before a "zoom" would be persistent across all layouts, now it will only occur on the current layout. I'm still trying to decide if I like it this way or not. It looks like it'll have minimal impact on things. I don't use different layouts that often anyway.
* Cleanup and more documentation.Josh Rahm2022-04-08
|
* Bidirection navigation for layouts!Josh Rahm2022-04-08
|
* Add more bindings to the "g" command.Josh Rahm2022-04-08
|
* Add mousebinding to go to the accompaning workspace.Josh Rahm2022-04-06
|
* Merge branch 'v017' of josher.dev:rde into v017Josh Rahm2022-04-04
|\
| * Make both Tags and Windows as valid history targetsJosh Rahm2022-04-04
| |
| * change markstate to be persistentJosh Rahm2022-04-04
| |
| * Implement a window history system.Josh Rahm2022-04-04
| | | | | | | | | | | | | | | | | | This lets the user cycle between past windows. The rules for when a window gets added to the history is the same as when a window is considered the last marked. In fact, now all the last mark does is swap the current window with the previous one in the history.
* | add suspend buttonstrokeJosh Rahm2022-04-04
|/
* More experimental MouseMotionJosh Rahm2022-04-01
|
* Add a bunch more documentation and ability to see that documentationJosh Rahm2022-03-31
|
* basic ability teo generate configJosh Rahm2022-03-30
|
* Starting new branch to experimentally add documentation to KeyBindings.Josh Rahm2022-03-30
| | | | | | | | | | | | | | | | | | | | The hope is to get to a point where documentation can be automatically generated for key bindings, while keeping as much of the existing DSL unchanged as possible. The goal is to have something like: bind xK_h $ do doc "Set focus to the next window in the stack" justMod nextWindow doc "Swap this window with the next window in the stack." shiftMod shiftNextWindow Then "theoretically" a markdown/latex/text file can be generated with documentation for each of those bindings and have the documentation automatically update if the keys change.
* --amendJosh Rahm2022-03-29
|
* Fixed bug where multiple configures would override previous configures for ↵Josh Rahm2022-03-29
| | | | window-specific bindings