aboutsummaryrefslogtreecommitdiff
path: root/src/Rahm
Commit message (Collapse)AuthorAge
...
| * Rename KeysM -> Keys/DslJosh Rahm2022-04-14
| |
| * Minor changesJosh Rahm2022-04-14
| |
| * Make workspaces more consistentJosh Rahm2022-04-14
| |
| * [WIP] Working on better workspacesJosh Rahm2022-04-13
| |
| * 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
|
* Disable swallow by defaultJosh Rahm2022-10-09
|
* Jumping to the black hole workspace will exit Xmonad (with confirmation).Josh Rahm2022-10-09
|
* Add preferred window for some Workspace jumps.Josh Rahm2022-10-09
| | | | | | | 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>•.
* Add check for xK_Escape to end trynig ot type a Wml object.Josh Rahm2022-10-09
|
* Actually, change the workspace conditional operator.Josh Rahm2022-10-09
| | | | | | | | | | | | | | | | | | | | | | | 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).
* Add new conditional description for workspaces.Josh Rahm2022-10-09
| | | | | | | | | | | | | | | | | 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)."
* Add more Wml adjectives.Josh Rahm2022-10-09
| | | | | | | | | | | | | | | | | | | | | | | 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>=.~,.'~,.
* Change up the override keys for browsersJosh Rahm2022-10-09
|
* Change WML workspaces to have a Maybe name.Josh Rahm2022-10-09
|
* Add Bordering layout.Josh Rahm2022-10-09
| | | | | | 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.
* Add M-S-s to swap windows with eachotherJosh Rahm2022-10-09
|
* Roll Windows.hs into R.D.StackSetJosh Rahm2022-10-09
|
* Roll ScreenRotate into StackSetJosh Rahm2022-10-09
|
* Add R.D.StackSet as a replacement for StackSet.Josh Rahm2022-10-09
|
* Run hlintJosh Rahm2022-10-09
|
* Some new styling and better logging capabilitesJosh Rahm2022-10-09
|
* Infrastructure for better logging, finally!Josh Rahm2022-10-09
| | | | | | | | 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.
* Some changes to XMobar look and feelJosh Rahm2022-10-09
|
* Add macro support to WML.Josh Rahm2022-10-09
| | | | | | | | | | | | | | | | | 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.
* Add :: object to tile windows onto a workspaceJosh Rahm2022-10-09
|
* Add : object to reference floating windowsJosh Rahm2022-10-09
|