This commit is contained in:
anakha 2021-06-27 22:01:37 -04:00
parent e1ae683fe0
commit dd57aa4152
1 changed files with 23 additions and 15 deletions

View File

@ -1,4 +1,4 @@
### why? ### Why?
Layout-machi is great, however it requires you to use its built-in switcher to manage your open windows. If you are shuffling, swapping, and moving things around often, this could become counter productive. Layout-machi is great, however it requires you to use its built-in switcher to manage your open windows. If you are shuffling, swapping, and moving things around often, this could become counter productive.
`Machina` is built on top of layout-machi, and allows you to bind frequently used actions to your keys and gives you additional user friendly features. `Machina` is built on top of layout-machi, and allows you to bind frequently used actions to your keys and gives you additional user friendly features.
@ -6,23 +6,23 @@ Layout-machi is great, however it requires you to use its built-in switcher to m
A combination of `layout-machi` and `awesomewm-machina` will give you a similar experience to fancy zones on windows. A combination of `layout-machi` and `awesomewm-machina` will give you a similar experience to fancy zones on windows.
### what? ### What?
These are the features I added: These are the features I added:
- Quick Expand: - Quick Expand:
Added feature, expands the focused client to left, right, or vertically. Expand focused window to left, right, or vertically. This will make the window snap to the next available region.
- Directional Swapping: - Directional Swapping:
Added feature, swaps clients between regions. Swap windows between regions.
- Directional Shifting: - Directional Shifting:
Relocate clients like Elv13's collision module Relocate windows like Elv13's collision module.
- Rotational Shifting: - Rotational Shifting:
Relocate clients clock wise or counter clock wise. Relocate windows clockwise or counter clockwise. This uses a different algorithm compared to directional shifting and should be more accurate in merging your floating clients to the tiling layout.
- Shuffling: - Shuffling:
Go backward or forward in a region, and it will cycle the clients inside that area. Go backward or forward in a region, and it will cycle the clients inside that area. Kind of like fake tabs.
- Auto-Hide Floating Windows: - Auto-Hide Floating Windows:
Often times, the floating windows pollutes your background if you are using `useless-gaps`. Machina will hide those for you, but they can still be accessed through your window-switcher such as Rofi. Often times, the floating windows pollutes your background if you are using `useless-gaps`. Machina will hide those for you, but they can still be accessed through your window-switcher such as Rofi.
@ -30,17 +30,22 @@ Often times, the floating windows pollutes your background if you are using `use
- Floating and Tiled: - Floating and Tiled:
All keybindings, including swapping work seamlessy on both the tiled and the floating windows. So, if you need to push that terminal to a corner, you can easily do so without changing it to tiling mode. All keybindings, including swapping work seamlessy on both the tiled and the floating windows. So, if you need to push that terminal to a corner, you can easily do so without changing it to tiling mode.
### next? ### Next?
The region shuffling works like tabs, but it would be nice to have a visual queue like tabs. That will be in the next version. The region shuffling works like tabs, but it would be nice to have a visual queue like tabs. That will be in the next version. I'm also planning to add chained keybindings kind of like in emacs and vi that displays a modal help window.
New layout-machi has some logic to auto expand your windows onto multiple regions. For some work flows this might be desired, but I might look into a way to disable that as I find it to get in the way when changing windows from float to tile. This is especially annoying when you have a centered float.
### Layout-Machi compatibility
Machina should work just fine with both versions of layout-machi.
### Problems?
If you have any issues or recommendations, please feel free to open a request. PRs are most welcome.
### problems? ### Install
If you have any issues, please feel free to open a request. PRs are most welcome.
### install
switch to your awesome config folder, typically at: switch to your awesome config folder, typically at:
``` ```
@ -59,6 +64,8 @@ and call it from your `rc.lua`
local machina = require('awesomewm-machina')() local machina = require('awesomewm-machina')()
``` ```
### Keybindings
some of the default shortcuts are: some of the default shortcuts are:
```lua ```lua
@ -90,6 +97,7 @@ modkey + shift + l : move to right region
modkey + shift + i : move to up region modkey + shift + i : move to up region
``` ```
### Preview ### Preview
https://user-images.githubusercontent.com/30809170/123538385-ab5f7b80-d702-11eb-9a14-e8b9045d9d27.mp4 https://user-images.githubusercontent.com/30809170/123538385-ab5f7b80-d702-11eb-9a14-e8b9045d9d27.mp4