docs(mkdocs): various updates to reflect v0.1.25-dev.0

This commit is contained in:
LGUG2Z
2024-04-28 13:51:08 -07:00
parent 383533e2d9
commit e363a494c3
16 changed files with 248 additions and 167 deletions

View File

@@ -338,7 +338,7 @@ every `WindowManagerEvent` and `SocketMessage` handled by `komorebi` in a Rust c
Below is a simple example of how to use `komorebi-client` in a basic Rust application. Below is a simple example of how to use `komorebi-client` in a basic Rust application.
```rust ```rust
// komorebi-client = { git = "https://github.com/LGUG2Z/komorebi", tag = "v0.1.24"} // komorebi-client = { git = "https://github.com/LGUG2Z/komorebi", tag = "v0.1.25"}
use anyhow::Result; use anyhow::Result;
use komorebi_client::Notification; use komorebi_client::Notification;

View File

@@ -7,7 +7,7 @@ Usage: komorebic.exe change-layout <DEFAULT_LAYOUT>
Arguments: Arguments:
<DEFAULT_LAYOUT> <DEFAULT_LAYOUT>
[possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid] [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid, right-main-vertical-stack]
Options: Options:
-h, --help -h, --help

12
docs/cli/global-state.md Normal file
View File

@@ -0,0 +1,12 @@
# global-state
```
Show a JSON representation of the current global state
Usage: komorebic.exe global-state
Options:
-h, --help
Print help
```

View File

@@ -0,0 +1,19 @@
# move-to-monitor-workspace
```
Move the focused window to the specified monitor workspace
Usage: komorebic.exe move-to-monitor-workspace <TARGET_MONITOR> <TARGET_WORKSPACE>
Arguments:
<TARGET_MONITOR>
Target monitor index (zero-indexed)
<TARGET_WORKSPACE>
Workspace index on the target monitor (zero-indexed)
Options:
-h, --help
Print help
```

View File

@@ -13,7 +13,7 @@ Arguments:
The number of window containers on-screen required to trigger this layout rule The number of window containers on-screen required to trigger this layout rule
<LAYOUT> <LAYOUT>
[possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid] [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid, right-main-vertical-stack]
Options: Options:
-h, --help -h, --help

View File

@@ -10,7 +10,7 @@ Arguments:
Target workspace name Target workspace name
<VALUE> <VALUE>
[possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid] [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid, right-main-vertical-stack]
Options: Options:
-h, --help -h, --help

View File

@@ -16,7 +16,7 @@ Arguments:
The number of window containers on-screen required to trigger this layout rule The number of window containers on-screen required to trigger this layout rule
<LAYOUT> <LAYOUT>
[possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid] [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid, right-main-vertical-stack]
Options: Options:
-h, --help -h, --help

View File

@@ -13,7 +13,7 @@ Arguments:
Workspace index on the specified monitor (zero-indexed) Workspace index on the specified monitor (zero-indexed)
<VALUE> <VALUE>
[possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid] [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack, grid, right-main-vertical-stack]
Options: Options:
-h, --help -h, --help

View File

@@ -2,7 +2,7 @@
❗️**NOTE**: A significant number of force-manage window rules for the most ❗️**NOTE**: A significant number of force-manage window rules for the most
common applications are [already generated for common applications are [already generated for
you](https://github.com/LGUG2Z/komorebi/#generating-common-application-specific-configurations) you](https://github.com/LGUG2Z/komorebi-application-specific-configuration)
In some rare cases, a window may not automatically be registered to be managed In some rare cases, a window may not automatically be registered to be managed
by `komorebi`. You can add rules to enforce this behaviour in the by `komorebi`. You can add rules to enforce this behaviour in the

View File

@@ -2,7 +2,7 @@
❗️**NOTE**: A significant number of ignored window rules for the most common ❗️**NOTE**: A significant number of ignored window rules for the most common
applications are [already generated for applications are [already generated for
you](https://github.com/LGUG2Z/komorebi/#generating-common-application-specific-configurations) you](https://github.com/LGUG2Z/komorebi-application-specific-configuration)
Sometimes you will want a specific application to never be tiled, and instead Sometimes you will want a specific application to never be tiled, and instead
float all the time. You can add rules to enforce this behaviour in the float all the time. You can add rules to enforce this behaviour in the

View File

@@ -101,6 +101,16 @@ monocle.
+-------+-----+ +-------+-----+
``` ```
### RightMainVerticalStack
```
+-----+-------+
| | |
+-----+ |
| | |
+-----+-------+
```
#### Horizontal Stack #### Horizontal Stack
``` ```
@@ -122,6 +132,7 @@ monocle.
``` ```
#### Rows #### Rows
If you have a vertical monitor, I recommend using this layout. If you have a vertical monitor, I recommend using this layout.
``` ```
@@ -133,6 +144,7 @@ If you have a vertical monitor, I recommend using this layout.
``` ```
#### Ultrawide Vertical Stack #### Ultrawide Vertical Stack
If you have an ultrawide monitor, I recommend using this layout. If you have an ultrawide monitor, I recommend using this layout.
``` ```
@@ -146,6 +158,7 @@ If you have an ultrawide monitor, I recommend using this layout.
``` ```
### Grid ### Grid
If you like the `grid` layout in [LeftWM](https://github.com/leftwm/leftwm-layouts) this is almost exactly the same! If you like the `grid` layout in [LeftWM](https://github.com/leftwm/leftwm-layouts) this is almost exactly the same!
``` ```
@@ -183,7 +196,8 @@ which shell you use in your terminal.
* `powershell` - set this if you are using the version of PowerShell that comes * `powershell` - set this if you are using the version of PowerShell that comes
installed with Windows 10+ (the executable file for this is `powershell.exe`) installed with Windows 10+ (the executable file for this is `powershell.exe`)
* `pwsh` - set this if you are using PowerShell 7+, which you have installed yourself either through the Windows Store or WinGet (the executable file for this is `pwsh.exe`) * `pwsh` - set this if you are using PowerShell 7+, which you have installed yourself either through the Windows Store
or WinGet (the executable file for this is `pwsh.exe`)
* `cmd` - set this if you don't want to use PowerShell at all and instead you * `cmd` - set this if you don't want to use PowerShell at all and instead you
want to call commands through the shell used by the old-school Command want to call commands through the shell used by the old-school Command

View File

@@ -1,5 +1,5 @@
{ {
"$schema": "https://raw.githubusercontent.com/LGUG2Z/komorebi/v0.1.24/schema.json", "$schema": "https://raw.githubusercontent.com/LGUG2Z/komorebi/v0.1.25/schema.json",
"app_specific_configuration_path": "$Env:USERPROFILE/applications.yaml", "app_specific_configuration_path": "$Env:USERPROFILE/applications.yaml",
"window_hiding_behaviour": "Cloak", "window_hiding_behaviour": "Cloak",
"cross_monitor_move_behaviour": "Insert", "cross_monitor_move_behaviour": "Insert",
@@ -13,6 +13,16 @@
"stack": "#00a542", "stack": "#00a542",
"monocle": "#ff3399" "monocle": "#ff3399"
}, },
"stackbar": {
"height": 40,
"mode": "Never",
"tabs": {
"width": 300,
"focused_text": "#00a542",
"unfocused_text": "#b3b3b3",
"background": "#141414"
}
},
"monitors": [ "monitors": [
{ {
"workspaces": [ "workspaces": [
@@ -35,6 +45,14 @@
{ {
"name": "V", "name": "V",
"layout": "Rows" "layout": "Rows"
},
{
"name": "VI",
"layout": "Grid"
},
{
"name": "VII",
"layout": "RightMainVerticalStack"
} }
] ]
} }

View File

@@ -222,7 +222,7 @@ impl From<&Monitor> for MonitorConfig {
} }
#[derive(Debug, Serialize, Deserialize, JsonSchema)] #[derive(Debug, Serialize, Deserialize, JsonSchema)]
/// The `komorebi.json` static configuration file reference for `v0.1.24` /// The `komorebi.json` static configuration file reference for `v0.1.25`
pub struct StaticConfig { pub struct StaticConfig {
/// DEPRECATED from v0.1.22: no longer required /// DEPRECATED from v0.1.22: no longer required
#[serde(skip_serializing_if = "Option::is_none")] #[serde(skip_serializing_if = "Option::is_none")]

View File

@@ -1257,9 +1257,15 @@ fn main() -> Result<()> {
let subcommands = cli.get_subcommands_mut(); let subcommands = cli.get_subcommands_mut();
std::fs::create_dir_all("docs/cli")?; std::fs::create_dir_all("docs/cli")?;
let ignore = [
"docgen",
"alt-focus-hack",
"identify-border-overflow-application",
];
for cmd in subcommands { for cmd in subcommands {
let name = cmd.get_name().to_string(); let name = cmd.get_name().to_string();
if name != "docgen" { if !ignore.contains(&name.as_str()) {
let help_text = cmd.render_long_help().to_string(); let help_text = cmd.render_long_help().to_string();
let outpath = format!("docs/cli/{name}.md"); let outpath = format!("docs/cli/{name}.md");
let markdown = format!("# {name}\n\n```\n{help_text}\n```"); let markdown = format!("# {name}\n\n```\n{help_text}\n```");

View File

@@ -45,160 +45,162 @@ plugins:
nav: nav:
- Komorebi: - Komorebi:
- index.md - index.md
- Design: design.md - Design: design.md
- Getting started: - Getting started:
- Installation: installation.md - Installation: installation.md
- Example configurations: example-configurations.md - Example configurations: example-configurations.md
- Common workflows: - Common workflows:
- common-workflows/komorebi-config-home.md - common-workflows/komorebi-config-home.md
- common-workflows/active-window-border.md - common-workflows/active-window-border.md
- common-workflows/stackbar.md - common-workflows/stackbar.md
- common-workflows/remove-gaps.md - common-workflows/remove-gaps.md
- common-workflows/ignore-windows.md - common-workflows/ignore-windows.md
- common-workflows/force-manage-windows.md - common-workflows/force-manage-windows.md
- common-workflows/tray-and-multi-window-applications.md - common-workflows/tray-and-multi-window-applications.md
- common-workflows/focus-follows-mouse.md - common-workflows/focus-follows-mouse.md
- common-workflows/mouse-follows-focus.md - common-workflows/mouse-follows-focus.md
- common-workflows/custom-layouts.md - common-workflows/custom-layouts.md
- common-workflows/dynamic-layout-switching.md - common-workflows/dynamic-layout-switching.md
# - common-workflows/autohotkey.md # - common-workflows/autohotkey.md
- Release notes: - Release notes:
- release/v0-1-22.md - release/v0-1-22.md
- Configuration reference: https://komorebi.lgug2z.com/schema - Configuration reference: https://komorebi.lgug2z.com/schema
- CLI reference: - CLI reference:
- cli/quickstart.md - cli/quickstart.md
- cli/start.md - cli/start.md
- cli/stop.md - cli/stop.md
- cli/check.md - cli/check.md
- cli/configuration.md - cli/configuration.md
- cli/whkdrc.md - cli/whkdrc.md
- cli/state.md - cli/state.md
- cli/visible-windows.md - cli/global-state.md
- cli/query.md - cli/visible-windows.md
- cli/subscribe-socket.md - cli/query.md
- cli/unsubscribe-socket.md - cli/subscribe-socket.md
- cli/subscribe-pipe.md - cli/unsubscribe-socket.md
- cli/unsubscribe-pipe.md - cli/subscribe-pipe.md
- cli/log.md - cli/unsubscribe-pipe.md
- cli/quick-save-resize.md - cli/log.md
- cli/quick-load-resize.md - cli/quick-save-resize.md
- cli/save-resize.md - cli/quick-load-resize.md
- cli/load-resize.md - cli/save-resize.md
- cli/focus.md - cli/load-resize.md
- cli/move.md - cli/focus.md
- cli/minimize.md - cli/move.md
- cli/close.md - cli/minimize.md
- cli/force-focus.md - cli/close.md
- cli/cycle-focus.md - cli/force-focus.md
- cli/cycle-move.md - cli/cycle-focus.md
- cli/stack.md - cli/cycle-move.md
- cli/resize-edge.md - cli/stack.md
- cli/resize-axis.md - cli/resize-edge.md
- cli/unstack.md - cli/resize-axis.md
- cli/cycle-stack.md - cli/unstack.md
- cli/move-to-monitor.md - cli/cycle-stack.md
- cli/cycle-move-to-monitor.md - cli/move-to-monitor.md
- cli/move-to-workspace.md - cli/cycle-move-to-monitor.md
- cli/move-to-named-workspace.md - cli/move-to-workspace.md
- cli/cycle-move-to-workspace.md - cli/move-to-named-workspace.md
- cli/send-to-monitor.md - cli/cycle-move-to-workspace.md
- cli/cycle-send-to-monitor.md - cli/send-to-monitor.md
- cli/send-to-workspace.md - cli/cycle-send-to-monitor.md
- cli/send-to-named-workspace.md - cli/send-to-workspace.md
- cli/cycle-send-to-workspace.md - cli/send-to-named-workspace.md
- cli/send-to-monitor-workspace.md - cli/cycle-send-to-workspace.md
- cli/focus-monitor.md - cli/send-to-monitor-workspace.md
- cli/focus-last-workspace.md - cli/move-to-monitor-workspace.md
- cli/focus-workspace.md - cli/focus-monitor.md
- cli/focus-workspaces.md - cli/focus-last-workspace.md
- cli/focus-monitor-workspace.md - cli/focus-workspace.md
- cli/focus-named-workspace.md - cli/focus-workspaces.md
- cli/cycle-monitor.md - cli/focus-monitor-workspace.md
- cli/cycle-workspace.md - cli/focus-named-workspace.md
- cli/move-workspace-to-monitor.md - cli/cycle-monitor.md
- cli/swap-workspaces-with-monitor.md - cli/cycle-workspace.md
- cli/new-workspace.md - cli/move-workspace-to-monitor.md
- cli/resize-delta.md - cli/swap-workspaces-with-monitor.md
- cli/invisible-borders.md - cli/new-workspace.md
- cli/global-work-area-offset.md - cli/resize-delta.md
- cli/monitor-work-area-offset.md - cli/invisible-borders.md
- cli/focused-workspace-container-padding.md - cli/global-work-area-offset.md
- cli/focused-workspace-padding.md - cli/monitor-work-area-offset.md
- cli/adjust-container-padding.md - cli/focused-workspace-container-padding.md
- cli/adjust-workspace-padding.md - cli/focused-workspace-padding.md
- cli/change-layout.md - cli/adjust-container-padding.md
- cli/cycle-layout.md - cli/adjust-workspace-padding.md
- cli/load-custom-layout.md - cli/change-layout.md
- cli/flip-layout.md - cli/cycle-layout.md
- cli/promote.md - cli/load-custom-layout.md
- cli/promote-focus.md - cli/flip-layout.md
- cli/retile.md - cli/promote.md
- cli/monitor-index-preference.md - cli/promote-focus.md
- cli/display-index-preference.md - cli/retile.md
- cli/ensure-workspaces.md - cli/monitor-index-preference.md
- cli/ensure-named-workspaces.md - cli/display-index-preference.md
- cli/container-padding.md - cli/ensure-workspaces.md
- cli/named-workspace-container-padding.md - cli/ensure-named-workspaces.md
- cli/workspace-padding.md - cli/container-padding.md
- cli/named-workspace-padding.md - cli/named-workspace-container-padding.md
- cli/workspace-layout.md - cli/workspace-padding.md
- cli/named-workspace-layout.md - cli/named-workspace-padding.md
- cli/workspace-custom-layout.md - cli/workspace-layout.md
- cli/named-workspace-custom-layout.md - cli/named-workspace-layout.md
- cli/workspace-layout-rule.md - cli/workspace-custom-layout.md
- cli/named-workspace-layout-rule.md - cli/named-workspace-custom-layout.md
- cli/workspace-custom-layout-rule.md - cli/workspace-layout-rule.md
- cli/named-workspace-custom-layout-rule.md - cli/named-workspace-layout-rule.md
- cli/clear-workspace-layout-rules.md - cli/workspace-custom-layout-rule.md
- cli/clear-named-workspace-layout-rules.md - cli/named-workspace-custom-layout-rule.md
- cli/workspace-tiling.md - cli/clear-workspace-layout-rules.md
- cli/named-workspace-tiling.md - cli/clear-named-workspace-layout-rules.md
- cli/workspace-name.md - cli/workspace-tiling.md
- cli/toggle-window-container-behaviour.md - cli/named-workspace-tiling.md
- cli/toggle-pause.md - cli/workspace-name.md
- cli/toggle-tiling.md - cli/toggle-window-container-behaviour.md
- cli/toggle-float.md - cli/toggle-pause.md
- cli/toggle-monocle.md - cli/toggle-tiling.md
- cli/toggle-maximize.md - cli/toggle-float.md
- cli/restore-windows.md - cli/toggle-monocle.md
- cli/manage.md - cli/toggle-maximize.md
- cli/unmanage.md - cli/restore-windows.md
- cli/reload-configuration.md - cli/manage.md
- cli/watch-configuration.md - cli/unmanage.md
- cli/complete-configuration.md - cli/reload-configuration.md
- cli/window-hiding-behaviour.md - cli/watch-configuration.md
- cli/cross-monitor-move-behaviour.md - cli/complete-configuration.md
- cli/toggle-cross-monitor-move-behaviour.md - cli/window-hiding-behaviour.md
- cli/unmanaged-window-operation-behaviour.md - cli/cross-monitor-move-behaviour.md
- cli/float-rule.md - cli/toggle-cross-monitor-move-behaviour.md
- cli/manage-rule.md - cli/unmanaged-window-operation-behaviour.md
- cli/initial-workspace-rule.md - cli/float-rule.md
- cli/initial-named-workspace-rule.md - cli/manage-rule.md
- cli/workspace-rule.md - cli/initial-workspace-rule.md
- cli/named-workspace-rule.md - cli/initial-named-workspace-rule.md
- cli/identify-object-name-change-application.md - cli/workspace-rule.md
- cli/identify-tray-application.md - cli/named-workspace-rule.md
- cli/identify-layered-application.md - cli/identify-object-name-change-application.md
- cli/remove-title-bar.md - cli/identify-tray-application.md
- cli/toggle-title-bars.md - cli/identify-layered-application.md
- cli/active-window-border.md - cli/remove-title-bar.md
- cli/active-window-border-colour.md - cli/toggle-title-bars.md
- cli/active-window-border-width.md - cli/active-window-border.md
- cli/active-window-border-offset.md - cli/active-window-border-colour.md
- cli/focus-follows-mouse.md - cli/active-window-border-width.md
- cli/toggle-focus-follows-mouse.md - cli/active-window-border-offset.md
- cli/mouse-follows-focus.md - cli/focus-follows-mouse.md
- cli/toggle-mouse-follows-focus.md - cli/toggle-focus-follows-mouse.md
- cli/ahk-library.md - cli/mouse-follows-focus.md
- cli/ahk-app-specific-configuration.md - cli/toggle-mouse-follows-focus.md
- cli/pwsh-app-specific-configuration.md - cli/ahk-library.md
- cli/format-app-specific-configuration.md - cli/ahk-app-specific-configuration.md
- cli/fetch-app-specific-configuration.md - cli/pwsh-app-specific-configuration.md
- cli/application-specific-configuration-schema.md - cli/format-app-specific-configuration.md
- cli/notification-schema.md - cli/fetch-app-specific-configuration.md
- cli/socket-schema.md - cli/application-specific-configuration-schema.md
- cli/static-config-schema.md - cli/notification-schema.md
- cli/generate-static-config.md - cli/socket-schema.md
- cli/enable-autostart.md - cli/static-config-schema.md
- cli/disable-autostart.md - cli/generate-static-config.md
- cli/enable-autostart.md
- cli/disable-autostart.md

View File

@@ -1,7 +1,7 @@
{ {
"$schema": "http://json-schema.org/draft-07/schema#", "$schema": "http://json-schema.org/draft-07/schema#",
"title": "StaticConfig", "title": "StaticConfig",
"description": "The `komorebi.json` static configuration file reference for `v0.1.20`", "description": "The `komorebi.json` static configuration file reference for `v0.1.25`",
"type": "object", "type": "object",
"properties": { "properties": {
"active_window_border": { "active_window_border": {
@@ -775,7 +775,8 @@
"VerticalStack", "VerticalStack",
"HorizontalStack", "HorizontalStack",
"UltrawideVerticalStack", "UltrawideVerticalStack",
"Grid" "Grid",
"RightMainVerticalStack"
] ]
}, },
"layout_rules": { "layout_rules": {
@@ -790,7 +791,8 @@
"VerticalStack", "VerticalStack",
"HorizontalStack", "HorizontalStack",
"UltrawideVerticalStack", "UltrawideVerticalStack",
"Grid" "Grid",
"RightMainVerticalStack"
] ]
} }
}, },
@@ -942,13 +944,16 @@
"format": "int32" "format": "int32"
}, },
"stackbar": { "stackbar": {
"description": "Stackbar configuration options",
"type": "object", "type": "object",
"properties": { "properties": {
"height": { "height": {
"description": "Stackbar height",
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
}, },
"mode": { "mode": {
"description": "Stackbar mode",
"type": "string", "type": "string",
"enum": [ "enum": [
"Always", "Always",
@@ -957,9 +962,11 @@
] ]
}, },
"tabs": { "tabs": {
"description": "Stackbar tab configuration options",
"type": "object", "type": "object",
"properties": { "properties": {
"background": { "background": {
"description": "Tab background colour",
"anyOf": [ "anyOf": [
{ {
"description": "Colour represented as RGB", "description": "Colour represented as RGB",
@@ -997,6 +1004,7 @@
] ]
}, },
"focused_text": { "focused_text": {
"description": "Focused tab text colour",
"anyOf": [ "anyOf": [
{ {
"description": "Colour represented as RGB", "description": "Colour represented as RGB",
@@ -1034,6 +1042,7 @@
] ]
}, },
"unfocused_text": { "unfocused_text": {
"description": "Unfocused tab text colour",
"anyOf": [ "anyOf": [
{ {
"description": "Colour represented as RGB", "description": "Colour represented as RGB",
@@ -1071,6 +1080,7 @@
] ]
}, },
"width": { "width": {
"description": "Width of a stackbar tab",
"type": "integer", "type": "integer",
"format": "int32" "format": "int32"
} }