From a00a85e63f8afd780ca7e80f8c3da6af0edbab74 Mon Sep 17 00:00:00 2001 From: LGUG2Z Date: Sun, 14 Jan 2024 17:25:13 -0800 Subject: [PATCH] feat(cli): add docgen cmd for mkdocs pages --- docs/cli/active-window-border-colour.md | 26 ++++++++++++++++ docs/cli/active-window-border-offset.md | 16 ++++++++++ docs/cli/active-window-border-width.md | 16 ++++++++++ docs/cli/active-window-border.md | 16 ++++++++++ docs/cli/adjust-container-padding.md | 19 ++++++++++++ docs/cli/adjust-workspace-padding.md | 19 ++++++++++++ docs/cli/ahk-app-specific-configuration.md | 19 ++++++++++++ docs/cli/ahk-library.md | 12 ++++++++ docs/cli/alt-focus-hack.md | 16 ++++++++++ ...plication-specific-configuration-schema.md | 12 ++++++++ docs/cli/change-layout.md | 16 ++++++++++ docs/cli/check.md | 12 ++++++++ .../cli/clear-named-workspace-layout-rules.md | 16 ++++++++++ docs/cli/clear-workspace-layout-rules.md | 19 ++++++++++++ docs/cli/close.md | 12 ++++++++ docs/cli/complete-configuration.md | 12 ++++++++ docs/cli/container-padding.md | 22 ++++++++++++++ docs/cli/cross-monitor-move-behaviour.md | 18 +++++++++++ docs/cli/cycle-focus.md | 16 ++++++++++ docs/cli/cycle-layout.md | 16 ++++++++++ docs/cli/cycle-monitor.md | 16 ++++++++++ docs/cli/cycle-move-to-monitor.md | 16 ++++++++++ docs/cli/cycle-move-to-workspace.md | 16 ++++++++++ docs/cli/cycle-move.md | 16 ++++++++++ docs/cli/cycle-send-to-monitor.md | 16 ++++++++++ docs/cli/cycle-send-to-workspace.md | 16 ++++++++++ docs/cli/cycle-stack.md | 16 ++++++++++ docs/cli/cycle-workspace.md | 16 ++++++++++ docs/cli/disable-autostart.md | 12 ++++++++ docs/cli/display-index-preference.md | 19 ++++++++++++ docs/cli/enable-autostart.md | 24 +++++++++++++++ docs/cli/ensure-named-workspaces.md | 19 ++++++++++++ docs/cli/ensure-workspaces.md | 19 ++++++++++++ docs/cli/fetch-app-specific-configuration.md | 12 ++++++++ docs/cli/flip-layout.md | 16 ++++++++++ docs/cli/float-rule.md | 19 ++++++++++++ docs/cli/focus-follows-mouse.md | 23 ++++++++++++++ docs/cli/focus-last-workspace.md | 12 ++++++++ docs/cli/focus-monitor-workspace.md | 19 ++++++++++++ docs/cli/focus-monitor.md | 16 ++++++++++ docs/cli/focus-named-workspace.md | 16 ++++++++++ docs/cli/focus-workspace.md | 16 ++++++++++ docs/cli/focus-workspaces.md | 16 ++++++++++ docs/cli/focus.md | 16 ++++++++++ .../focused-workspace-container-padding.md | 16 ++++++++++ docs/cli/focused-workspace-padding.md | 16 ++++++++++ docs/cli/force-focus.md | 12 ++++++++ docs/cli/format-app-specific-configuration.md | 16 ++++++++++ docs/cli/generate-static-config.md | 12 ++++++++ docs/cli/global-work-area-offset.md | 25 ++++++++++++++++ .../identify-border-overflow-application.md | 19 ++++++++++++ docs/cli/identify-layered-application.md | 19 ++++++++++++ ...identify-object-name-change-application.md | 19 ++++++++++++ docs/cli/identify-tray-application.md | 19 ++++++++++++ docs/cli/initial-named-workspace-rule.md | 22 ++++++++++++++ docs/cli/initial-workspace-rule.md | 25 ++++++++++++++++ docs/cli/invisible-borders.md | 25 ++++++++++++++++ docs/cli/load-custom-layout.md | 16 ++++++++++ docs/cli/load-resize.md | 16 ++++++++++ docs/cli/log.md | 12 ++++++++ docs/cli/manage-rule.md | 19 ++++++++++++ docs/cli/manage.md | 12 ++++++++ docs/cli/minimize.md | 12 ++++++++ docs/cli/monitor-index-preference.md | 28 +++++++++++++++++ docs/cli/monitor-work-area-offset.md | 28 +++++++++++++++++ docs/cli/mouse-follows-focus.md | 16 ++++++++++ docs/cli/move-to-monitor.md | 16 ++++++++++ docs/cli/move-to-named-workspace.md | 16 ++++++++++ docs/cli/move-to-workspace.md | 16 ++++++++++ docs/cli/move-workspace-to-monitor.md | 16 ++++++++++ docs/cli/move.md | 16 ++++++++++ docs/cli/named-workspace-container-padding.md | 19 ++++++++++++ .../cli/named-workspace-custom-layout-rule.md | 22 ++++++++++++++ docs/cli/named-workspace-custom-layout.md | 19 ++++++++++++ docs/cli/named-workspace-layout-rule.md | 22 ++++++++++++++ docs/cli/named-workspace-layout.md | 19 ++++++++++++ docs/cli/named-workspace-padding.md | 19 ++++++++++++ docs/cli/named-workspace-rule.md | 22 ++++++++++++++ docs/cli/named-workspace-tiling.md | 19 ++++++++++++ docs/cli/new-workspace.md | 12 ++++++++ docs/cli/notification-schema.md | 12 ++++++++ docs/cli/promote-focus.md | 12 ++++++++ docs/cli/promote.md | 12 ++++++++ docs/cli/pwsh-app-specific-configuration.md | 19 ++++++++++++ docs/cli/query.md | 16 ++++++++++ docs/cli/quick-load-resize.md | 12 ++++++++ docs/cli/quick-save-resize.md | 12 ++++++++ docs/cli/quickstart.md | 12 ++++++++ docs/cli/reload-configuration.md | 12 ++++++++ docs/cli/remove-title-bar.md | 19 ++++++++++++ docs/cli/resize-axis.md | 19 ++++++++++++ docs/cli/resize-delta.md | 16 ++++++++++ docs/cli/resize-edge.md | 19 ++++++++++++ docs/cli/restore-windows.md | 12 ++++++++ docs/cli/retile.md | 12 ++++++++ docs/cli/save-resize.md | 16 ++++++++++ docs/cli/send-to-monitor-workspace.md | 19 ++++++++++++ docs/cli/send-to-monitor.md | 16 ++++++++++ docs/cli/send-to-named-workspace.md | 16 ++++++++++ docs/cli/send-to-workspace.md | 16 ++++++++++ docs/cli/socket-schema.md | 12 ++++++++ docs/cli/stack.md | 16 ++++++++++ docs/cli/start.md | 30 +++++++++++++++++++ docs/cli/state.md | 12 ++++++++ docs/cli/static-config-schema.md | 12 ++++++++ docs/cli/stop.md | 15 ++++++++++ docs/cli/subscribe.md | 16 ++++++++++ docs/cli/swap-workspaces-with-monitor.md | 16 ++++++++++ .../toggle-cross-monitor-move-behaviour.md | 12 ++++++++ docs/cli/toggle-float.md | 12 ++++++++ docs/cli/toggle-focus-follows-mouse.md | 19 ++++++++++++ docs/cli/toggle-maximize.md | 12 ++++++++ docs/cli/toggle-monocle.md | 12 ++++++++ docs/cli/toggle-mouse-follows-focus.md | 12 ++++++++ docs/cli/toggle-pause.md | 12 ++++++++ docs/cli/toggle-tiling.md | 12 ++++++++ docs/cli/toggle-title-bars.md | 12 ++++++++ docs/cli/toggle-window-container-behaviour.md | 12 ++++++++ docs/cli/unmanage.md | 12 ++++++++ .../unmanaged-window-operation-behaviour.md | 18 +++++++++++ docs/cli/unstack.md | 12 ++++++++ docs/cli/unsubscribe.md | 16 ++++++++++ docs/cli/visible-windows.md | 12 ++++++++ docs/cli/watch-configuration.md | 16 ++++++++++ docs/cli/window-hiding-behaviour.md | 19 ++++++++++++ docs/cli/workspace-custom-layout-rule.md | 25 ++++++++++++++++ docs/cli/workspace-custom-layout.md | 22 ++++++++++++++ docs/cli/workspace-layout-rule.md | 25 ++++++++++++++++ docs/cli/workspace-layout.md | 22 ++++++++++++++ docs/cli/workspace-name.md | 22 ++++++++++++++ docs/cli/workspace-padding.md | 22 ++++++++++++++ docs/cli/workspace-rule.md | 25 ++++++++++++++++ docs/cli/workspace-tiling.md | 22 ++++++++++++++ komorebic/src/main.rs | 19 ++++++++++++ 134 files changed, 2253 insertions(+) create mode 100644 docs/cli/active-window-border-colour.md create mode 100644 docs/cli/active-window-border-offset.md create mode 100644 docs/cli/active-window-border-width.md create mode 100644 docs/cli/active-window-border.md create mode 100644 docs/cli/adjust-container-padding.md create mode 100644 docs/cli/adjust-workspace-padding.md create mode 100644 docs/cli/ahk-app-specific-configuration.md create mode 100644 docs/cli/ahk-library.md create mode 100644 docs/cli/alt-focus-hack.md create mode 100644 docs/cli/application-specific-configuration-schema.md create mode 100644 docs/cli/change-layout.md create mode 100644 docs/cli/check.md create mode 100644 docs/cli/clear-named-workspace-layout-rules.md create mode 100644 docs/cli/clear-workspace-layout-rules.md create mode 100644 docs/cli/close.md create mode 100644 docs/cli/complete-configuration.md create mode 100644 docs/cli/container-padding.md create mode 100644 docs/cli/cross-monitor-move-behaviour.md create mode 100644 docs/cli/cycle-focus.md create mode 100644 docs/cli/cycle-layout.md create mode 100644 docs/cli/cycle-monitor.md create mode 100644 docs/cli/cycle-move-to-monitor.md create mode 100644 docs/cli/cycle-move-to-workspace.md create mode 100644 docs/cli/cycle-move.md create mode 100644 docs/cli/cycle-send-to-monitor.md create mode 100644 docs/cli/cycle-send-to-workspace.md create mode 100644 docs/cli/cycle-stack.md create mode 100644 docs/cli/cycle-workspace.md create mode 100644 docs/cli/disable-autostart.md create mode 100644 docs/cli/display-index-preference.md create mode 100644 docs/cli/enable-autostart.md create mode 100644 docs/cli/ensure-named-workspaces.md create mode 100644 docs/cli/ensure-workspaces.md create mode 100644 docs/cli/fetch-app-specific-configuration.md create mode 100644 docs/cli/flip-layout.md create mode 100644 docs/cli/float-rule.md create mode 100644 docs/cli/focus-follows-mouse.md create mode 100644 docs/cli/focus-last-workspace.md create mode 100644 docs/cli/focus-monitor-workspace.md create mode 100644 docs/cli/focus-monitor.md create mode 100644 docs/cli/focus-named-workspace.md create mode 100644 docs/cli/focus-workspace.md create mode 100644 docs/cli/focus-workspaces.md create mode 100644 docs/cli/focus.md create mode 100644 docs/cli/focused-workspace-container-padding.md create mode 100644 docs/cli/focused-workspace-padding.md create mode 100644 docs/cli/force-focus.md create mode 100644 docs/cli/format-app-specific-configuration.md create mode 100644 docs/cli/generate-static-config.md create mode 100644 docs/cli/global-work-area-offset.md create mode 100644 docs/cli/identify-border-overflow-application.md create mode 100644 docs/cli/identify-layered-application.md create mode 100644 docs/cli/identify-object-name-change-application.md create mode 100644 docs/cli/identify-tray-application.md create mode 100644 docs/cli/initial-named-workspace-rule.md create mode 100644 docs/cli/initial-workspace-rule.md create mode 100644 docs/cli/invisible-borders.md create mode 100644 docs/cli/load-custom-layout.md create mode 100644 docs/cli/load-resize.md create mode 100644 docs/cli/log.md create mode 100644 docs/cli/manage-rule.md create mode 100644 docs/cli/manage.md create mode 100644 docs/cli/minimize.md create mode 100644 docs/cli/monitor-index-preference.md create mode 100644 docs/cli/monitor-work-area-offset.md create mode 100644 docs/cli/mouse-follows-focus.md create mode 100644 docs/cli/move-to-monitor.md create mode 100644 docs/cli/move-to-named-workspace.md create mode 100644 docs/cli/move-to-workspace.md create mode 100644 docs/cli/move-workspace-to-monitor.md create mode 100644 docs/cli/move.md create mode 100644 docs/cli/named-workspace-container-padding.md create mode 100644 docs/cli/named-workspace-custom-layout-rule.md create mode 100644 docs/cli/named-workspace-custom-layout.md create mode 100644 docs/cli/named-workspace-layout-rule.md create mode 100644 docs/cli/named-workspace-layout.md create mode 100644 docs/cli/named-workspace-padding.md create mode 100644 docs/cli/named-workspace-rule.md create mode 100644 docs/cli/named-workspace-tiling.md create mode 100644 docs/cli/new-workspace.md create mode 100644 docs/cli/notification-schema.md create mode 100644 docs/cli/promote-focus.md create mode 100644 docs/cli/promote.md create mode 100644 docs/cli/pwsh-app-specific-configuration.md create mode 100644 docs/cli/query.md create mode 100644 docs/cli/quick-load-resize.md create mode 100644 docs/cli/quick-save-resize.md create mode 100644 docs/cli/quickstart.md create mode 100644 docs/cli/reload-configuration.md create mode 100644 docs/cli/remove-title-bar.md create mode 100644 docs/cli/resize-axis.md create mode 100644 docs/cli/resize-delta.md create mode 100644 docs/cli/resize-edge.md create mode 100644 docs/cli/restore-windows.md create mode 100644 docs/cli/retile.md create mode 100644 docs/cli/save-resize.md create mode 100644 docs/cli/send-to-monitor-workspace.md create mode 100644 docs/cli/send-to-monitor.md create mode 100644 docs/cli/send-to-named-workspace.md create mode 100644 docs/cli/send-to-workspace.md create mode 100644 docs/cli/socket-schema.md create mode 100644 docs/cli/stack.md create mode 100644 docs/cli/start.md create mode 100644 docs/cli/state.md create mode 100644 docs/cli/static-config-schema.md create mode 100644 docs/cli/stop.md create mode 100644 docs/cli/subscribe.md create mode 100644 docs/cli/swap-workspaces-with-monitor.md create mode 100644 docs/cli/toggle-cross-monitor-move-behaviour.md create mode 100644 docs/cli/toggle-float.md create mode 100644 docs/cli/toggle-focus-follows-mouse.md create mode 100644 docs/cli/toggle-maximize.md create mode 100644 docs/cli/toggle-monocle.md create mode 100644 docs/cli/toggle-mouse-follows-focus.md create mode 100644 docs/cli/toggle-pause.md create mode 100644 docs/cli/toggle-tiling.md create mode 100644 docs/cli/toggle-title-bars.md create mode 100644 docs/cli/toggle-window-container-behaviour.md create mode 100644 docs/cli/unmanage.md create mode 100644 docs/cli/unmanaged-window-operation-behaviour.md create mode 100644 docs/cli/unstack.md create mode 100644 docs/cli/unsubscribe.md create mode 100644 docs/cli/visible-windows.md create mode 100644 docs/cli/watch-configuration.md create mode 100644 docs/cli/window-hiding-behaviour.md create mode 100644 docs/cli/workspace-custom-layout-rule.md create mode 100644 docs/cli/workspace-custom-layout.md create mode 100644 docs/cli/workspace-layout-rule.md create mode 100644 docs/cli/workspace-layout.md create mode 100644 docs/cli/workspace-name.md create mode 100644 docs/cli/workspace-padding.md create mode 100644 docs/cli/workspace-rule.md create mode 100644 docs/cli/workspace-tiling.md diff --git a/docs/cli/active-window-border-colour.md b/docs/cli/active-window-border-colour.md new file mode 100644 index 00000000..3cf44a28 --- /dev/null +++ b/docs/cli/active-window-border-colour.md @@ -0,0 +1,26 @@ +# active-window-border-colour + +``` +Set the colour for the active window border + +Usage: active-window-border-colour [OPTIONS] + +Arguments: + + Red + + + Green + + + Blue + +Options: + -w, --window-kind + [default: single] + [possible values: single, stack, monocle] + + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/active-window-border-offset.md b/docs/cli/active-window-border-offset.md new file mode 100644 index 00000000..ce13c7a2 --- /dev/null +++ b/docs/cli/active-window-border-offset.md @@ -0,0 +1,16 @@ +# active-window-border-offset + +``` +Set the offset for the active window border + +Usage: active-window-border-offset + +Arguments: + + Desired offset of the active window border + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/active-window-border-width.md b/docs/cli/active-window-border-width.md new file mode 100644 index 00000000..66a62ebf --- /dev/null +++ b/docs/cli/active-window-border-width.md @@ -0,0 +1,16 @@ +# active-window-border-width + +``` +Set the width for the active window border + +Usage: active-window-border-width + +Arguments: + + Desired width of the active window border + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/active-window-border.md b/docs/cli/active-window-border.md new file mode 100644 index 00000000..d93c4627 --- /dev/null +++ b/docs/cli/active-window-border.md @@ -0,0 +1,16 @@ +# active-window-border + +``` +Enable or disable the active window border + +Usage: active-window-border + +Arguments: + + [possible values: enable, disable] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/adjust-container-padding.md b/docs/cli/adjust-container-padding.md new file mode 100644 index 00000000..dcd73610 --- /dev/null +++ b/docs/cli/adjust-container-padding.md @@ -0,0 +1,19 @@ +# adjust-container-padding + +``` +Adjust container padding on the focused workspace + +Usage: adjust-container-padding + +Arguments: + + [possible values: increase, decrease] + + + Pixels to adjust by as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/adjust-workspace-padding.md b/docs/cli/adjust-workspace-padding.md new file mode 100644 index 00000000..8530ea5d --- /dev/null +++ b/docs/cli/adjust-workspace-padding.md @@ -0,0 +1,19 @@ +# adjust-workspace-padding + +``` +Adjust workspace padding on the focused workspace + +Usage: adjust-workspace-padding + +Arguments: + + [possible values: increase, decrease] + + + Pixels to adjust by as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/ahk-app-specific-configuration.md b/docs/cli/ahk-app-specific-configuration.md new file mode 100644 index 00000000..59a41602 --- /dev/null +++ b/docs/cli/ahk-app-specific-configuration.md @@ -0,0 +1,19 @@ +# ahk-app-specific-configuration + +``` +Generate common app-specific configurations and fixes to use in komorebi.ahk + +Usage: ahk-app-specific-configuration [OVERRIDE_PATH] + +Arguments: + + YAML file from which the application-specific configurations should be loaded + + [OVERRIDE_PATH] + Optional YAML file of overrides to apply over the first file + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/ahk-library.md b/docs/cli/ahk-library.md new file mode 100644 index 00000000..0cc1c8a6 --- /dev/null +++ b/docs/cli/ahk-library.md @@ -0,0 +1,12 @@ +# ahk-library + +``` +Generate a library of AutoHotKey helper functions + +Usage: ahk-library + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/alt-focus-hack.md b/docs/cli/alt-focus-hack.md new file mode 100644 index 00000000..c46e1ac5 --- /dev/null +++ b/docs/cli/alt-focus-hack.md @@ -0,0 +1,16 @@ +# alt-focus-hack + +``` +Enable or disable a hack simulating ALT key presses to ensure focus changes succeed + +Usage: alt-focus-hack + +Arguments: + + [possible values: enable, disable] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/application-specific-configuration-schema.md b/docs/cli/application-specific-configuration-schema.md new file mode 100644 index 00000000..937d9f4f --- /dev/null +++ b/docs/cli/application-specific-configuration-schema.md @@ -0,0 +1,12 @@ +# application-specific-configuration-schema + +``` +Generate a JSON Schema for applications.yaml + +Usage: application-specific-configuration-schema + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/change-layout.md b/docs/cli/change-layout.md new file mode 100644 index 00000000..420462da --- /dev/null +++ b/docs/cli/change-layout.md @@ -0,0 +1,16 @@ +# change-layout + +``` +Set the layout on the focused workspace + +Usage: change-layout + +Arguments: + + [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/check.md b/docs/cli/check.md new file mode 100644 index 00000000..e7d6ead2 --- /dev/null +++ b/docs/cli/check.md @@ -0,0 +1,12 @@ +# check + +``` +Output various important komorebi-related environment values + +Usage: check + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/clear-named-workspace-layout-rules.md b/docs/cli/clear-named-workspace-layout-rules.md new file mode 100644 index 00000000..6fc947fb --- /dev/null +++ b/docs/cli/clear-named-workspace-layout-rules.md @@ -0,0 +1,16 @@ +# clear-named-workspace-layout-rules + +``` +Clear all dynamic layout rules for the specified workspace + +Usage: clear-named-workspace-layout-rules + +Arguments: + + Target workspace name + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/clear-workspace-layout-rules.md b/docs/cli/clear-workspace-layout-rules.md new file mode 100644 index 00000000..1e3e6ccd --- /dev/null +++ b/docs/cli/clear-workspace-layout-rules.md @@ -0,0 +1,19 @@ +# clear-workspace-layout-rules + +``` +Clear all dynamic layout rules for the specified workspace + +Usage: clear-workspace-layout-rules + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/close.md b/docs/cli/close.md new file mode 100644 index 00000000..5133dce2 --- /dev/null +++ b/docs/cli/close.md @@ -0,0 +1,12 @@ +# close + +``` +Close the focused window + +Usage: close + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/complete-configuration.md b/docs/cli/complete-configuration.md new file mode 100644 index 00000000..1ac2d60c --- /dev/null +++ b/docs/cli/complete-configuration.md @@ -0,0 +1,12 @@ +# complete-configuration + +``` +Signal that the final configuration option has been sent + +Usage: complete-configuration + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/container-padding.md b/docs/cli/container-padding.md new file mode 100644 index 00000000..d20c8a43 --- /dev/null +++ b/docs/cli/container-padding.md @@ -0,0 +1,22 @@ +# container-padding + +``` +Set the container padding for the specified workspace + +Usage: container-padding + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + Pixels to pad with as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cross-monitor-move-behaviour.md b/docs/cli/cross-monitor-move-behaviour.md new file mode 100644 index 00000000..cae3acb3 --- /dev/null +++ b/docs/cli/cross-monitor-move-behaviour.md @@ -0,0 +1,18 @@ +# cross-monitor-move-behaviour + +``` +Set the behaviour when moving windows across monitor boundaries + +Usage: cross-monitor-move-behaviour + +Arguments: + + Possible values: + - swap: Swap the window container with the window container at the edge of the adjacent monitor + - insert: Insert the window container into the focused workspace on the adjacent monitor + +Options: + -h, --help + Print help (see a summary with '-h') + +``` \ No newline at end of file diff --git a/docs/cli/cycle-focus.md b/docs/cli/cycle-focus.md new file mode 100644 index 00000000..e2a37c7a --- /dev/null +++ b/docs/cli/cycle-focus.md @@ -0,0 +1,16 @@ +# cycle-focus + +``` +Change focus to the window in the specified cycle direction + +Usage: cycle-focus + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-layout.md b/docs/cli/cycle-layout.md new file mode 100644 index 00000000..c922cadc --- /dev/null +++ b/docs/cli/cycle-layout.md @@ -0,0 +1,16 @@ +# cycle-layout + +``` +Cycle between available layouts + +Usage: cycle-layout + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-monitor.md b/docs/cli/cycle-monitor.md new file mode 100644 index 00000000..ce34ea3c --- /dev/null +++ b/docs/cli/cycle-monitor.md @@ -0,0 +1,16 @@ +# cycle-monitor + +``` +Focus the monitor in the given cycle direction + +Usage: cycle-monitor + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-move-to-monitor.md b/docs/cli/cycle-move-to-monitor.md new file mode 100644 index 00000000..742dfd04 --- /dev/null +++ b/docs/cli/cycle-move-to-monitor.md @@ -0,0 +1,16 @@ +# cycle-move-to-monitor + +``` +Move the focused window to the monitor in the given cycle direction + +Usage: cycle-move-to-monitor + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-move-to-workspace.md b/docs/cli/cycle-move-to-workspace.md new file mode 100644 index 00000000..a68cae44 --- /dev/null +++ b/docs/cli/cycle-move-to-workspace.md @@ -0,0 +1,16 @@ +# cycle-move-to-workspace + +``` +Move the focused window to the workspace in the given cycle direction + +Usage: cycle-move-to-workspace + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-move.md b/docs/cli/cycle-move.md new file mode 100644 index 00000000..dea62fb3 --- /dev/null +++ b/docs/cli/cycle-move.md @@ -0,0 +1,16 @@ +# cycle-move + +``` +Move the focused window in the specified cycle direction + +Usage: cycle-move + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-send-to-monitor.md b/docs/cli/cycle-send-to-monitor.md new file mode 100644 index 00000000..22bf5c73 --- /dev/null +++ b/docs/cli/cycle-send-to-monitor.md @@ -0,0 +1,16 @@ +# cycle-send-to-monitor + +``` +Send the focused window to the monitor in the given cycle direction + +Usage: cycle-send-to-monitor + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-send-to-workspace.md b/docs/cli/cycle-send-to-workspace.md new file mode 100644 index 00000000..06660744 --- /dev/null +++ b/docs/cli/cycle-send-to-workspace.md @@ -0,0 +1,16 @@ +# cycle-send-to-workspace + +``` +Send the focused window to the workspace in the given cycle direction + +Usage: cycle-send-to-workspace + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-stack.md b/docs/cli/cycle-stack.md new file mode 100644 index 00000000..40918edc --- /dev/null +++ b/docs/cli/cycle-stack.md @@ -0,0 +1,16 @@ +# cycle-stack + +``` +Cycle the focused stack in the specified cycle direction + +Usage: cycle-stack + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/cycle-workspace.md b/docs/cli/cycle-workspace.md new file mode 100644 index 00000000..d0a1928c --- /dev/null +++ b/docs/cli/cycle-workspace.md @@ -0,0 +1,16 @@ +# cycle-workspace + +``` +Focus the workspace in the given cycle direction + +Usage: cycle-workspace + +Arguments: + + [possible values: previous, next] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/disable-autostart.md b/docs/cli/disable-autostart.md new file mode 100644 index 00000000..95298453 --- /dev/null +++ b/docs/cli/disable-autostart.md @@ -0,0 +1,12 @@ +# disable-autostart + +``` +Deletes the komorebi.lnk shortcut in shell:startup to disable autostart + +Usage: disable-autostart + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/display-index-preference.md b/docs/cli/display-index-preference.md new file mode 100644 index 00000000..62ff485b --- /dev/null +++ b/docs/cli/display-index-preference.md @@ -0,0 +1,19 @@ +# display-index-preference + +``` +Set the display index preference for a monitor identified using its display name + +Usage: display-index-preference + +Arguments: + + Preferred monitor index (zero-indexed) + + + Display name as identified in komorebic state + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/enable-autostart.md b/docs/cli/enable-autostart.md new file mode 100644 index 00000000..ca15801d --- /dev/null +++ b/docs/cli/enable-autostart.md @@ -0,0 +1,24 @@ +# enable-autostart + +``` +Generates the komorebi.lnk shortcut in shell:startup to autostart komorebi + +Usage: enable-autostart [OPTIONS] + +Options: + -c, --config + Path to a static configuration JSON file + + -f, --ffm + Enable komorebi's custom focus-follows-mouse implementation + + --whkd + Enable autostart of whkd + + --ahk + Enable autostart of ahk + + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/ensure-named-workspaces.md b/docs/cli/ensure-named-workspaces.md new file mode 100644 index 00000000..04ec5db2 --- /dev/null +++ b/docs/cli/ensure-named-workspaces.md @@ -0,0 +1,19 @@ +# ensure-named-workspaces + +``` +Create these many named workspaces for the specified monitor + +Usage: ensure-named-workspaces [NAMES]... + +Arguments: + + Monitor index (zero-indexed) + + [NAMES]... + Names of desired workspaces + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/ensure-workspaces.md b/docs/cli/ensure-workspaces.md new file mode 100644 index 00000000..039abe79 --- /dev/null +++ b/docs/cli/ensure-workspaces.md @@ -0,0 +1,19 @@ +# ensure-workspaces + +``` +Create at least this many workspaces for the specified monitor + +Usage: ensure-workspaces + +Arguments: + + Monitor index (zero-indexed) + + + Number of desired workspaces + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/fetch-app-specific-configuration.md b/docs/cli/fetch-app-specific-configuration.md new file mode 100644 index 00000000..7c5e0370 --- /dev/null +++ b/docs/cli/fetch-app-specific-configuration.md @@ -0,0 +1,12 @@ +# fetch-app-specific-configuration + +``` +Fetch the latest version of applications.yaml from komorebi-application-specific-configuration + +Usage: fetch-app-specific-configuration + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/flip-layout.md b/docs/cli/flip-layout.md new file mode 100644 index 00000000..982ae05e --- /dev/null +++ b/docs/cli/flip-layout.md @@ -0,0 +1,16 @@ +# flip-layout + +``` +Flip the layout on the focused workspace (BSP only) + +Usage: flip-layout + +Arguments: + + [possible values: horizontal, vertical, horizontal-and-vertical] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/float-rule.md b/docs/cli/float-rule.md new file mode 100644 index 00000000..e51e6c00 --- /dev/null +++ b/docs/cli/float-rule.md @@ -0,0 +1,19 @@ +# float-rule + +``` +Add a rule to always float the specified application + +Usage: float-rule + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focus-follows-mouse.md b/docs/cli/focus-follows-mouse.md new file mode 100644 index 00000000..e600e2c9 --- /dev/null +++ b/docs/cli/focus-follows-mouse.md @@ -0,0 +1,23 @@ +# focus-follows-mouse + +``` +Enable or disable focus follows mouse for the operating system + +Usage: focus-follows-mouse [OPTIONS] + +Arguments: + + [possible values: enable, disable] + +Options: + -i, --implementation + [default: windows] + + Possible values: + - komorebi: A custom FFM implementation (slightly more CPU-intensive) + - windows: The native (legacy) Windows FFM implementation + + -h, --help + Print help (see a summary with '-h') + +``` \ No newline at end of file diff --git a/docs/cli/focus-last-workspace.md b/docs/cli/focus-last-workspace.md new file mode 100644 index 00000000..a99ee364 --- /dev/null +++ b/docs/cli/focus-last-workspace.md @@ -0,0 +1,12 @@ +# focus-last-workspace + +``` +Focus the last focused workspace on the focused monitor + +Usage: focus-last-workspace + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focus-monitor-workspace.md b/docs/cli/focus-monitor-workspace.md new file mode 100644 index 00000000..7fe32a21 --- /dev/null +++ b/docs/cli/focus-monitor-workspace.md @@ -0,0 +1,19 @@ +# focus-monitor-workspace + +``` +Focus the specified workspace on the target monitor + +Usage: focus-monitor-workspace + +Arguments: + + Target monitor index (zero-indexed) + + + Workspace index on the target monitor (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focus-monitor.md b/docs/cli/focus-monitor.md new file mode 100644 index 00000000..89cdf8fc --- /dev/null +++ b/docs/cli/focus-monitor.md @@ -0,0 +1,16 @@ +# focus-monitor + +``` +Focus the specified monitor + +Usage: focus-monitor + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focus-named-workspace.md b/docs/cli/focus-named-workspace.md new file mode 100644 index 00000000..397ae16c --- /dev/null +++ b/docs/cli/focus-named-workspace.md @@ -0,0 +1,16 @@ +# focus-named-workspace + +``` +Focus the specified workspace + +Usage: focus-named-workspace + +Arguments: + + Target workspace name + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focus-workspace.md b/docs/cli/focus-workspace.md new file mode 100644 index 00000000..0d3ffaaa --- /dev/null +++ b/docs/cli/focus-workspace.md @@ -0,0 +1,16 @@ +# focus-workspace + +``` +Focus the specified workspace on the focused monitor + +Usage: focus-workspace + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focus-workspaces.md b/docs/cli/focus-workspaces.md new file mode 100644 index 00000000..88bec515 --- /dev/null +++ b/docs/cli/focus-workspaces.md @@ -0,0 +1,16 @@ +# focus-workspaces + +``` +Focus the specified workspace on all monitors + +Usage: focus-workspaces + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focus.md b/docs/cli/focus.md new file mode 100644 index 00000000..0ecb697d --- /dev/null +++ b/docs/cli/focus.md @@ -0,0 +1,16 @@ +# focus + +``` +Change focus to the window in the specified direction + +Usage: focus + +Arguments: + + [possible values: left, right, up, down] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focused-workspace-container-padding.md b/docs/cli/focused-workspace-container-padding.md new file mode 100644 index 00000000..5ff6219f --- /dev/null +++ b/docs/cli/focused-workspace-container-padding.md @@ -0,0 +1,16 @@ +# focused-workspace-container-padding + +``` +Set container padding on the focused workspace + +Usage: focused-workspace-container-padding + +Arguments: + + Pixels size to set as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/focused-workspace-padding.md b/docs/cli/focused-workspace-padding.md new file mode 100644 index 00000000..01e17c7d --- /dev/null +++ b/docs/cli/focused-workspace-padding.md @@ -0,0 +1,16 @@ +# focused-workspace-padding + +``` +Set workspace padding on the focused workspace + +Usage: focused-workspace-padding + +Arguments: + + Pixels size to set as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/force-focus.md b/docs/cli/force-focus.md new file mode 100644 index 00000000..6892cfb6 --- /dev/null +++ b/docs/cli/force-focus.md @@ -0,0 +1,12 @@ +# force-focus + +``` +Forcibly focus the window at the cursor with a left mouse click + +Usage: force-focus + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/format-app-specific-configuration.md b/docs/cli/format-app-specific-configuration.md new file mode 100644 index 00000000..5ef7d093 --- /dev/null +++ b/docs/cli/format-app-specific-configuration.md @@ -0,0 +1,16 @@ +# format-app-specific-configuration + +``` +Format a YAML file for use with the 'ahk-app-specific-configuration' command + +Usage: format-app-specific-configuration + +Arguments: + + YAML file from which the application-specific configurations should be loaded + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/generate-static-config.md b/docs/cli/generate-static-config.md new file mode 100644 index 00000000..91515093 --- /dev/null +++ b/docs/cli/generate-static-config.md @@ -0,0 +1,12 @@ +# generate-static-config + +``` +Generates a static configuration JSON file based on the current window manager state + +Usage: generate-static-config + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/global-work-area-offset.md b/docs/cli/global-work-area-offset.md new file mode 100644 index 00000000..f90e52ad --- /dev/null +++ b/docs/cli/global-work-area-offset.md @@ -0,0 +1,25 @@ +# global-work-area-offset + +``` +Set offsets to exclude parts of the work area from tiling + +Usage: global-work-area-offset + +Arguments: + + Size of the left work area offset (set right to left * 2 to maintain right padding) + + + Size of the top work area offset (set bottom to the same value to maintain bottom padding) + + + Size of the right work area offset + + + Size of the bottom work area offset + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/identify-border-overflow-application.md b/docs/cli/identify-border-overflow-application.md new file mode 100644 index 00000000..1fa0c1b1 --- /dev/null +++ b/docs/cli/identify-border-overflow-application.md @@ -0,0 +1,19 @@ +# identify-border-overflow-application + +``` +Identify an application that has overflowing borders + +Usage: identify-border-overflow-application + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/identify-layered-application.md b/docs/cli/identify-layered-application.md new file mode 100644 index 00000000..aa996888 --- /dev/null +++ b/docs/cli/identify-layered-application.md @@ -0,0 +1,19 @@ +# identify-layered-application + +``` +Identify an application that has WS_EX_LAYERED, but should still be managed + +Usage: identify-layered-application + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/identify-object-name-change-application.md b/docs/cli/identify-object-name-change-application.md new file mode 100644 index 00000000..b994f731 --- /dev/null +++ b/docs/cli/identify-object-name-change-application.md @@ -0,0 +1,19 @@ +# identify-object-name-change-application + +``` +Identify an application that sends EVENT_OBJECT_NAMECHANGE on launch + +Usage: identify-object-name-change-application + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/identify-tray-application.md b/docs/cli/identify-tray-application.md new file mode 100644 index 00000000..a933c0d5 --- /dev/null +++ b/docs/cli/identify-tray-application.md @@ -0,0 +1,19 @@ +# identify-tray-application + +``` +Identify an application that closes to the system tray + +Usage: identify-tray-application + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/initial-named-workspace-rule.md b/docs/cli/initial-named-workspace-rule.md new file mode 100644 index 00000000..d4a11cfc --- /dev/null +++ b/docs/cli/initial-named-workspace-rule.md @@ -0,0 +1,22 @@ +# initial-named-workspace-rule + +``` +Add a rule to associate an application with a named workspace on first show + +Usage: initial-named-workspace-rule + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + + + Name of a workspace + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/initial-workspace-rule.md b/docs/cli/initial-workspace-rule.md new file mode 100644 index 00000000..b5a1c142 --- /dev/null +++ b/docs/cli/initial-workspace-rule.md @@ -0,0 +1,25 @@ +# initial-workspace-rule + +``` +Add a rule to associate an application with a workspace on first show + +Usage: initial-workspace-rule + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/invisible-borders.md b/docs/cli/invisible-borders.md new file mode 100644 index 00000000..ecfc18ba --- /dev/null +++ b/docs/cli/invisible-borders.md @@ -0,0 +1,25 @@ +# invisible-borders + +``` +Set the invisible border dimensions around each window + +Usage: invisible-borders + +Arguments: + + Size of the left invisible border + + + Size of the top invisible border (usually 0) + + + Size of the right invisible border (usually left * 2) + + + Size of the bottom invisible border (usually the same as left) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/load-custom-layout.md b/docs/cli/load-custom-layout.md new file mode 100644 index 00000000..4e4e3012 --- /dev/null +++ b/docs/cli/load-custom-layout.md @@ -0,0 +1,16 @@ +# load-custom-layout + +``` +Load a custom layout from file for the focused workspace + +Usage: load-custom-layout + +Arguments: + + JSON or YAML file from which the custom layout definition should be loaded + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/load-resize.md b/docs/cli/load-resize.md new file mode 100644 index 00000000..84d554aa --- /dev/null +++ b/docs/cli/load-resize.md @@ -0,0 +1,16 @@ +# load-resize + +``` +Load the resize layout dimensions from a file + +Usage: load-resize + +Arguments: + + File from which the resize layout dimensions should be loaded + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/log.md b/docs/cli/log.md new file mode 100644 index 00000000..450c4a1f --- /dev/null +++ b/docs/cli/log.md @@ -0,0 +1,12 @@ +# log + +``` +Tail komorebi.exe's process logs (cancel with Ctrl-C) + +Usage: log + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/manage-rule.md b/docs/cli/manage-rule.md new file mode 100644 index 00000000..80322308 --- /dev/null +++ b/docs/cli/manage-rule.md @@ -0,0 +1,19 @@ +# manage-rule + +``` +Add a rule to always manage the specified application + +Usage: manage-rule + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/manage.md b/docs/cli/manage.md new file mode 100644 index 00000000..3825e3b2 --- /dev/null +++ b/docs/cli/manage.md @@ -0,0 +1,12 @@ +# manage + +``` +Force komorebi to manage the focused window + +Usage: manage + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/minimize.md b/docs/cli/minimize.md new file mode 100644 index 00000000..92da0f53 --- /dev/null +++ b/docs/cli/minimize.md @@ -0,0 +1,12 @@ +# minimize + +``` +Minimize the focused window + +Usage: minimize + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/monitor-index-preference.md b/docs/cli/monitor-index-preference.md new file mode 100644 index 00000000..e6ea66a3 --- /dev/null +++ b/docs/cli/monitor-index-preference.md @@ -0,0 +1,28 @@ +# monitor-index-preference + +``` +Set the monitor index preference for a monitor identified using its size + +Usage: monitor-index-preference + +Arguments: + + Preferred monitor index (zero-indexed) + + + Left value of the monitor's size Rect + + + Top value of the monitor's size Rect + + + Right value of the monitor's size Rect + + + Bottom value of the monitor's size Rect + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/monitor-work-area-offset.md b/docs/cli/monitor-work-area-offset.md new file mode 100644 index 00000000..99324363 --- /dev/null +++ b/docs/cli/monitor-work-area-offset.md @@ -0,0 +1,28 @@ +# monitor-work-area-offset + +``` +Set offsets for a monitor to exclude parts of the work area from tiling + +Usage: monitor-work-area-offset + +Arguments: + + Monitor index (zero-indexed) + + + Size of the left work area offset (set right to left * 2 to maintain right padding) + + + Size of the top work area offset (set bottom to the same value to maintain bottom padding) + + + Size of the right work area offset + + + Size of the bottom work area offset + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/mouse-follows-focus.md b/docs/cli/mouse-follows-focus.md new file mode 100644 index 00000000..a5fbf194 --- /dev/null +++ b/docs/cli/mouse-follows-focus.md @@ -0,0 +1,16 @@ +# mouse-follows-focus + +``` +Enable or disable mouse follows focus on all workspaces + +Usage: mouse-follows-focus + +Arguments: + + [possible values: enable, disable] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/move-to-monitor.md b/docs/cli/move-to-monitor.md new file mode 100644 index 00000000..75be72f7 --- /dev/null +++ b/docs/cli/move-to-monitor.md @@ -0,0 +1,16 @@ +# move-to-monitor + +``` +Move the focused window to the specified monitor + +Usage: move-to-monitor + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/move-to-named-workspace.md b/docs/cli/move-to-named-workspace.md new file mode 100644 index 00000000..22f4d262 --- /dev/null +++ b/docs/cli/move-to-named-workspace.md @@ -0,0 +1,16 @@ +# move-to-named-workspace + +``` +Move the focused window to the specified workspace + +Usage: move-to-named-workspace + +Arguments: + + Target workspace name + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/move-to-workspace.md b/docs/cli/move-to-workspace.md new file mode 100644 index 00000000..8206083b --- /dev/null +++ b/docs/cli/move-to-workspace.md @@ -0,0 +1,16 @@ +# move-to-workspace + +``` +Move the focused window to the specified workspace + +Usage: move-to-workspace + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/move-workspace-to-monitor.md b/docs/cli/move-workspace-to-monitor.md new file mode 100644 index 00000000..1dab0119 --- /dev/null +++ b/docs/cli/move-workspace-to-monitor.md @@ -0,0 +1,16 @@ +# move-workspace-to-monitor + +``` +Move the focused workspace to the specified monitor + +Usage: move-workspace-to-monitor + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/move.md b/docs/cli/move.md new file mode 100644 index 00000000..52c9b360 --- /dev/null +++ b/docs/cli/move.md @@ -0,0 +1,16 @@ +# move + +``` +Move the focused window in the specified direction + +Usage: move + +Arguments: + + [possible values: left, right, up, down] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-container-padding.md b/docs/cli/named-workspace-container-padding.md new file mode 100644 index 00000000..b8849eb9 --- /dev/null +++ b/docs/cli/named-workspace-container-padding.md @@ -0,0 +1,19 @@ +# named-workspace-container-padding + +``` +Set the container padding for the specified workspace + +Usage: named-workspace-container-padding + +Arguments: + + Target workspace name + + + Pixels to pad with as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-custom-layout-rule.md b/docs/cli/named-workspace-custom-layout-rule.md new file mode 100644 index 00000000..1fb38815 --- /dev/null +++ b/docs/cli/named-workspace-custom-layout-rule.md @@ -0,0 +1,22 @@ +# named-workspace-custom-layout-rule + +``` +Add a dynamic custom layout for the specified workspace + +Usage: named-workspace-custom-layout-rule + +Arguments: + + Target workspace name + + + The number of window containers on-screen required to trigger this layout rule + + + JSON or YAML file from which the custom layout definition should be loaded + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-custom-layout.md b/docs/cli/named-workspace-custom-layout.md new file mode 100644 index 00000000..2a53c9d5 --- /dev/null +++ b/docs/cli/named-workspace-custom-layout.md @@ -0,0 +1,19 @@ +# named-workspace-custom-layout + +``` +Set a custom layout for the specified workspace + +Usage: named-workspace-custom-layout + +Arguments: + + Target workspace name + + + JSON or YAML file from which the custom layout definition should be loaded + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-layout-rule.md b/docs/cli/named-workspace-layout-rule.md new file mode 100644 index 00000000..7abf82b6 --- /dev/null +++ b/docs/cli/named-workspace-layout-rule.md @@ -0,0 +1,22 @@ +# named-workspace-layout-rule + +``` +Add a dynamic layout rule for the specified workspace + +Usage: named-workspace-layout-rule + +Arguments: + + Target workspace name + + + The number of window containers on-screen required to trigger this layout rule + + + [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-layout.md b/docs/cli/named-workspace-layout.md new file mode 100644 index 00000000..6a74f770 --- /dev/null +++ b/docs/cli/named-workspace-layout.md @@ -0,0 +1,19 @@ +# named-workspace-layout + +``` +Set the layout for the specified workspace + +Usage: named-workspace-layout + +Arguments: + + Target workspace name + + + [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-padding.md b/docs/cli/named-workspace-padding.md new file mode 100644 index 00000000..7f0331c1 --- /dev/null +++ b/docs/cli/named-workspace-padding.md @@ -0,0 +1,19 @@ +# named-workspace-padding + +``` +Set the workspace padding for the specified workspace + +Usage: named-workspace-padding + +Arguments: + + Target workspace name + + + Pixels to pad with as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-rule.md b/docs/cli/named-workspace-rule.md new file mode 100644 index 00000000..1dfd67d3 --- /dev/null +++ b/docs/cli/named-workspace-rule.md @@ -0,0 +1,22 @@ +# named-workspace-rule + +``` +Add a rule to associate an application with a named workspace + +Usage: named-workspace-rule + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + + + Name of a workspace + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/named-workspace-tiling.md b/docs/cli/named-workspace-tiling.md new file mode 100644 index 00000000..b82d6363 --- /dev/null +++ b/docs/cli/named-workspace-tiling.md @@ -0,0 +1,19 @@ +# named-workspace-tiling + +``` +Enable or disable window tiling for the specified workspace + +Usage: named-workspace-tiling + +Arguments: + + Target workspace name + + + [possible values: enable, disable] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/new-workspace.md b/docs/cli/new-workspace.md new file mode 100644 index 00000000..8bac4ad4 --- /dev/null +++ b/docs/cli/new-workspace.md @@ -0,0 +1,12 @@ +# new-workspace + +``` +Create and append a new workspace on the focused monitor + +Usage: new-workspace + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/notification-schema.md b/docs/cli/notification-schema.md new file mode 100644 index 00000000..a3b8bc28 --- /dev/null +++ b/docs/cli/notification-schema.md @@ -0,0 +1,12 @@ +# notification-schema + +``` +Generate a JSON Schema of subscription notifications + +Usage: notification-schema + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/promote-focus.md b/docs/cli/promote-focus.md new file mode 100644 index 00000000..82b8d1e3 --- /dev/null +++ b/docs/cli/promote-focus.md @@ -0,0 +1,12 @@ +# promote-focus + +``` +Promote the user focus to the top of the tree + +Usage: promote-focus + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/promote.md b/docs/cli/promote.md new file mode 100644 index 00000000..f2cbe1f0 --- /dev/null +++ b/docs/cli/promote.md @@ -0,0 +1,12 @@ +# promote + +``` +Promote the focused window to the top of the tree + +Usage: promote + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/pwsh-app-specific-configuration.md b/docs/cli/pwsh-app-specific-configuration.md new file mode 100644 index 00000000..090a0e4a --- /dev/null +++ b/docs/cli/pwsh-app-specific-configuration.md @@ -0,0 +1,19 @@ +# pwsh-app-specific-configuration + +``` +Generate common app-specific configurations and fixes in a PowerShell script + +Usage: pwsh-app-specific-configuration [OVERRIDE_PATH] + +Arguments: + + YAML file from which the application-specific configurations should be loaded + + [OVERRIDE_PATH] + Optional YAML file of overrides to apply over the first file + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/query.md b/docs/cli/query.md new file mode 100644 index 00000000..753af301 --- /dev/null +++ b/docs/cli/query.md @@ -0,0 +1,16 @@ +# query + +``` +Query the current window manager state + +Usage: query + +Arguments: + + [possible values: focused-monitor-index, focused-workspace-index, focused-container-index, focused-window-index] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/quick-load-resize.md b/docs/cli/quick-load-resize.md new file mode 100644 index 00000000..1db0cd9b --- /dev/null +++ b/docs/cli/quick-load-resize.md @@ -0,0 +1,12 @@ +# quick-load-resize + +``` +Load the last quicksaved resize layout dimensions + +Usage: quick-load-resize + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/quick-save-resize.md b/docs/cli/quick-save-resize.md new file mode 100644 index 00000000..f2fe06e0 --- /dev/null +++ b/docs/cli/quick-save-resize.md @@ -0,0 +1,12 @@ +# quick-save-resize + +``` +Quicksave the current resize layout dimensions + +Usage: quick-save-resize + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/quickstart.md b/docs/cli/quickstart.md new file mode 100644 index 00000000..db8d5fef --- /dev/null +++ b/docs/cli/quickstart.md @@ -0,0 +1,12 @@ +# quickstart + +``` +Gather example configurations for a new-user quickstart + +Usage: quickstart + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/reload-configuration.md b/docs/cli/reload-configuration.md new file mode 100644 index 00000000..b40a2c33 --- /dev/null +++ b/docs/cli/reload-configuration.md @@ -0,0 +1,12 @@ +# reload-configuration + +``` +Reload ~/komorebi.ahk (if it exists) + +Usage: reload-configuration + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/remove-title-bar.md b/docs/cli/remove-title-bar.md new file mode 100644 index 00000000..4edd20d8 --- /dev/null +++ b/docs/cli/remove-title-bar.md @@ -0,0 +1,19 @@ +# remove-title-bar + +``` +Whitelist an application for title bar removal + +Usage: remove-title-bar + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/resize-axis.md b/docs/cli/resize-axis.md new file mode 100644 index 00000000..af2836b6 --- /dev/null +++ b/docs/cli/resize-axis.md @@ -0,0 +1,19 @@ +# resize-axis + +``` +Resize the focused window or primary column along the specified axis + +Usage: resize-axis + +Arguments: + + [possible values: horizontal, vertical, horizontal-and-vertical] + + + [possible values: increase, decrease] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/resize-delta.md b/docs/cli/resize-delta.md new file mode 100644 index 00000000..197af9d2 --- /dev/null +++ b/docs/cli/resize-delta.md @@ -0,0 +1,16 @@ +# resize-delta + +``` +Set the resize delta (used by resize-edge and resize-axis) + +Usage: resize-delta + +Arguments: + + The delta of pixels by which to increase or decrease window dimensions when resizing + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/resize-edge.md b/docs/cli/resize-edge.md new file mode 100644 index 00000000..dbe59d99 --- /dev/null +++ b/docs/cli/resize-edge.md @@ -0,0 +1,19 @@ +# resize-edge + +``` +Resize the focused window in the specified direction + +Usage: resize-edge + +Arguments: + + [possible values: left, right, up, down] + + + [possible values: increase, decrease] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/restore-windows.md b/docs/cli/restore-windows.md new file mode 100644 index 00000000..e34b98c7 --- /dev/null +++ b/docs/cli/restore-windows.md @@ -0,0 +1,12 @@ +# restore-windows + +``` +Restore all hidden windows (debugging command) + +Usage: restore-windows + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/retile.md b/docs/cli/retile.md new file mode 100644 index 00000000..16a6f46a --- /dev/null +++ b/docs/cli/retile.md @@ -0,0 +1,12 @@ +# retile + +``` +Force the retiling of all managed windows + +Usage: retile + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/save-resize.md b/docs/cli/save-resize.md new file mode 100644 index 00000000..9a7e7671 --- /dev/null +++ b/docs/cli/save-resize.md @@ -0,0 +1,16 @@ +# save-resize + +``` +Save the current resize layout dimensions to a file + +Usage: save-resize + +Arguments: + + File to which the resize layout dimensions should be saved + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/send-to-monitor-workspace.md b/docs/cli/send-to-monitor-workspace.md new file mode 100644 index 00000000..48072f08 --- /dev/null +++ b/docs/cli/send-to-monitor-workspace.md @@ -0,0 +1,19 @@ +# send-to-monitor-workspace + +``` +Send the focused window to the specified monitor workspace + +Usage: send-to-monitor-workspace + +Arguments: + + Target monitor index (zero-indexed) + + + Workspace index on the target monitor (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/send-to-monitor.md b/docs/cli/send-to-monitor.md new file mode 100644 index 00000000..3bce5720 --- /dev/null +++ b/docs/cli/send-to-monitor.md @@ -0,0 +1,16 @@ +# send-to-monitor + +``` +Send the focused window to the specified monitor + +Usage: send-to-monitor + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/send-to-named-workspace.md b/docs/cli/send-to-named-workspace.md new file mode 100644 index 00000000..1349f676 --- /dev/null +++ b/docs/cli/send-to-named-workspace.md @@ -0,0 +1,16 @@ +# send-to-named-workspace + +``` +Send the focused window to the specified workspace + +Usage: send-to-named-workspace + +Arguments: + + Target workspace name + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/send-to-workspace.md b/docs/cli/send-to-workspace.md new file mode 100644 index 00000000..9d5660db --- /dev/null +++ b/docs/cli/send-to-workspace.md @@ -0,0 +1,16 @@ +# send-to-workspace + +``` +Send the focused window to the specified workspace + +Usage: send-to-workspace + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/socket-schema.md b/docs/cli/socket-schema.md new file mode 100644 index 00000000..473dd4f9 --- /dev/null +++ b/docs/cli/socket-schema.md @@ -0,0 +1,12 @@ +# socket-schema + +``` +Generate a JSON Schema of socket messages + +Usage: socket-schema + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/stack.md b/docs/cli/stack.md new file mode 100644 index 00000000..5a4e85bc --- /dev/null +++ b/docs/cli/stack.md @@ -0,0 +1,16 @@ +# stack + +``` +Stack the focused window in the specified direction + +Usage: stack + +Arguments: + + [possible values: left, right, up, down] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/start.md b/docs/cli/start.md new file mode 100644 index 00000000..859cc9e9 --- /dev/null +++ b/docs/cli/start.md @@ -0,0 +1,30 @@ +# start + +``` +Start komorebi.exe as a background process + +Usage: start [OPTIONS] + +Options: + -f, --ffm + Allow the use of komorebi's custom focus-follows-mouse implementation + + -c, --config + Path to a static configuration JSON file + + -a, --await-configuration + Wait for 'komorebic complete-configuration' to be sent before processing events + + -t, --tcp-port + Start a TCP server on the given port to allow the direct sending of SocketMessages + + --whkd + Start whkd in a background process + + --ahk + Start autohotkey configuration file + + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/state.md b/docs/cli/state.md new file mode 100644 index 00000000..f55095e6 --- /dev/null +++ b/docs/cli/state.md @@ -0,0 +1,12 @@ +# state + +``` +Show a JSON representation of the current window manager state + +Usage: state + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/static-config-schema.md b/docs/cli/static-config-schema.md new file mode 100644 index 00000000..68af2c62 --- /dev/null +++ b/docs/cli/static-config-schema.md @@ -0,0 +1,12 @@ +# static-config-schema + +``` +Generate a JSON Schema of the static configuration file + +Usage: static-config-schema + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/stop.md b/docs/cli/stop.md new file mode 100644 index 00000000..71206d4c --- /dev/null +++ b/docs/cli/stop.md @@ -0,0 +1,15 @@ +# stop + +``` +Stop the komorebi.exe process and restore all hidden windows + +Usage: stop [OPTIONS] + +Options: + --whkd + Stop whkd if it is running as a background process + + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/subscribe.md b/docs/cli/subscribe.md new file mode 100644 index 00000000..14f59428 --- /dev/null +++ b/docs/cli/subscribe.md @@ -0,0 +1,16 @@ +# subscribe + +``` +Subscribe to komorebi events + +Usage: subscribe + +Arguments: + + Name of the pipe to send event notifications to (without "\\.\pipe\" prepended) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/swap-workspaces-with-monitor.md b/docs/cli/swap-workspaces-with-monitor.md new file mode 100644 index 00000000..cb271e76 --- /dev/null +++ b/docs/cli/swap-workspaces-with-monitor.md @@ -0,0 +1,16 @@ +# swap-workspaces-with-monitor + +``` +Swap focused monitor workspaces with specified monitor + +Usage: swap-workspaces-with-monitor + +Arguments: + + Target index (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-cross-monitor-move-behaviour.md b/docs/cli/toggle-cross-monitor-move-behaviour.md new file mode 100644 index 00000000..f1a4c771 --- /dev/null +++ b/docs/cli/toggle-cross-monitor-move-behaviour.md @@ -0,0 +1,12 @@ +# toggle-cross-monitor-move-behaviour + +``` +Toggle the behaviour when moving windows across monitor boundaries + +Usage: toggle-cross-monitor-move-behaviour + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-float.md b/docs/cli/toggle-float.md new file mode 100644 index 00000000..c8aaf219 --- /dev/null +++ b/docs/cli/toggle-float.md @@ -0,0 +1,12 @@ +# toggle-float + +``` +Toggle floating mode for the focused window + +Usage: toggle-float + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-focus-follows-mouse.md b/docs/cli/toggle-focus-follows-mouse.md new file mode 100644 index 00000000..509b3a6b --- /dev/null +++ b/docs/cli/toggle-focus-follows-mouse.md @@ -0,0 +1,19 @@ +# toggle-focus-follows-mouse + +``` +Toggle focus follows mouse for the operating system + +Usage: toggle-focus-follows-mouse [OPTIONS] + +Options: + -i, --implementation + [default: windows] + + Possible values: + - komorebi: A custom FFM implementation (slightly more CPU-intensive) + - windows: The native (legacy) Windows FFM implementation + + -h, --help + Print help (see a summary with '-h') + +``` \ No newline at end of file diff --git a/docs/cli/toggle-maximize.md b/docs/cli/toggle-maximize.md new file mode 100644 index 00000000..64eeceac --- /dev/null +++ b/docs/cli/toggle-maximize.md @@ -0,0 +1,12 @@ +# toggle-maximize + +``` +Toggle native maximization for the focused window + +Usage: toggle-maximize + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-monocle.md b/docs/cli/toggle-monocle.md new file mode 100644 index 00000000..b4901603 --- /dev/null +++ b/docs/cli/toggle-monocle.md @@ -0,0 +1,12 @@ +# toggle-monocle + +``` +Toggle monocle mode for the focused container + +Usage: toggle-monocle + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-mouse-follows-focus.md b/docs/cli/toggle-mouse-follows-focus.md new file mode 100644 index 00000000..85c6199f --- /dev/null +++ b/docs/cli/toggle-mouse-follows-focus.md @@ -0,0 +1,12 @@ +# toggle-mouse-follows-focus + +``` +Toggle mouse follows focus on all workspaces + +Usage: toggle-mouse-follows-focus + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-pause.md b/docs/cli/toggle-pause.md new file mode 100644 index 00000000..b8c5c858 --- /dev/null +++ b/docs/cli/toggle-pause.md @@ -0,0 +1,12 @@ +# toggle-pause + +``` +Toggle window tiling on the focused workspace + +Usage: toggle-pause + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-tiling.md b/docs/cli/toggle-tiling.md new file mode 100644 index 00000000..fcbb7ef4 --- /dev/null +++ b/docs/cli/toggle-tiling.md @@ -0,0 +1,12 @@ +# toggle-tiling + +``` +Toggle window tiling on the focused workspace + +Usage: toggle-tiling + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-title-bars.md b/docs/cli/toggle-title-bars.md new file mode 100644 index 00000000..81100033 --- /dev/null +++ b/docs/cli/toggle-title-bars.md @@ -0,0 +1,12 @@ +# toggle-title-bars + +``` +Toggle title bars for whitelisted applications + +Usage: toggle-title-bars + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/toggle-window-container-behaviour.md b/docs/cli/toggle-window-container-behaviour.md new file mode 100644 index 00000000..b9f2ec00 --- /dev/null +++ b/docs/cli/toggle-window-container-behaviour.md @@ -0,0 +1,12 @@ +# toggle-window-container-behaviour + +``` +Toggle the behaviour for new windows (stacking or dynamic tiling) + +Usage: toggle-window-container-behaviour + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/unmanage.md b/docs/cli/unmanage.md new file mode 100644 index 00000000..dc4bba6c --- /dev/null +++ b/docs/cli/unmanage.md @@ -0,0 +1,12 @@ +# unmanage + +``` +Unmanage a window that was forcibly managed + +Usage: unmanage + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/unmanaged-window-operation-behaviour.md b/docs/cli/unmanaged-window-operation-behaviour.md new file mode 100644 index 00000000..48a011bc --- /dev/null +++ b/docs/cli/unmanaged-window-operation-behaviour.md @@ -0,0 +1,18 @@ +# unmanaged-window-operation-behaviour + +``` +Set the operation behaviour when the focused window is not managed + +Usage: unmanaged-window-operation-behaviour + +Arguments: + + Possible values: + - op: Process komorebic commands on temporarily unmanaged/floated windows + - no-op: Ignore komorebic commands on temporarily unmanaged/floated windows + +Options: + -h, --help + Print help (see a summary with '-h') + +``` \ No newline at end of file diff --git a/docs/cli/unstack.md b/docs/cli/unstack.md new file mode 100644 index 00000000..437409db --- /dev/null +++ b/docs/cli/unstack.md @@ -0,0 +1,12 @@ +# unstack + +``` +Unstack the focused window + +Usage: unstack + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/unsubscribe.md b/docs/cli/unsubscribe.md new file mode 100644 index 00000000..ebdaa8d2 --- /dev/null +++ b/docs/cli/unsubscribe.md @@ -0,0 +1,16 @@ +# unsubscribe + +``` +Unsubscribe from komorebi events + +Usage: unsubscribe + +Arguments: + + Name of the pipe to stop sending event notifications to (without "\\.\pipe\" prepended) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/visible-windows.md b/docs/cli/visible-windows.md new file mode 100644 index 00000000..9607d34a --- /dev/null +++ b/docs/cli/visible-windows.md @@ -0,0 +1,12 @@ +# visible-windows + +``` +Show a JSON representation of visible windows + +Usage: visible-windows + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/watch-configuration.md b/docs/cli/watch-configuration.md new file mode 100644 index 00000000..a973cb12 --- /dev/null +++ b/docs/cli/watch-configuration.md @@ -0,0 +1,16 @@ +# watch-configuration + +``` +Enable or disable watching of ~/komorebi.ahk (if it exists) + +Usage: watch-configuration + +Arguments: + + [possible values: enable, disable] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/window-hiding-behaviour.md b/docs/cli/window-hiding-behaviour.md new file mode 100644 index 00000000..2f3123d4 --- /dev/null +++ b/docs/cli/window-hiding-behaviour.md @@ -0,0 +1,19 @@ +# window-hiding-behaviour + +``` +Set the window behaviour when switching workspaces / cycling stacks + +Usage: window-hiding-behaviour + +Arguments: + + Possible values: + - hide: Use the SW_HIDE flag to hide windows when switching workspaces (has issues with Electron apps) + - minimize: Use the SW_MINIMIZE flag to hide windows when switching workspaces (has issues with frequent workspace switching) + - cloak: Use the undocumented SetCloak Win32 function to hide windows when switching workspaces (has foregrounding issues) + +Options: + -h, --help + Print help (see a summary with '-h') + +``` \ No newline at end of file diff --git a/docs/cli/workspace-custom-layout-rule.md b/docs/cli/workspace-custom-layout-rule.md new file mode 100644 index 00000000..a2ed0e08 --- /dev/null +++ b/docs/cli/workspace-custom-layout-rule.md @@ -0,0 +1,25 @@ +# workspace-custom-layout-rule + +``` +Add a dynamic custom layout for the specified workspace + +Usage: workspace-custom-layout-rule + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + The number of window containers on-screen required to trigger this layout rule + + + JSON or YAML file from which the custom layout definition should be loaded + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/workspace-custom-layout.md b/docs/cli/workspace-custom-layout.md new file mode 100644 index 00000000..86455cc0 --- /dev/null +++ b/docs/cli/workspace-custom-layout.md @@ -0,0 +1,22 @@ +# workspace-custom-layout + +``` +Set a custom layout for the specified workspace + +Usage: workspace-custom-layout + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + JSON or YAML file from which the custom layout definition should be loaded + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/workspace-layout-rule.md b/docs/cli/workspace-layout-rule.md new file mode 100644 index 00000000..95880375 --- /dev/null +++ b/docs/cli/workspace-layout-rule.md @@ -0,0 +1,25 @@ +# workspace-layout-rule + +``` +Add a dynamic layout rule for the specified workspace + +Usage: workspace-layout-rule + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + The number of window containers on-screen required to trigger this layout rule + + + [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/workspace-layout.md b/docs/cli/workspace-layout.md new file mode 100644 index 00000000..560bbe2f --- /dev/null +++ b/docs/cli/workspace-layout.md @@ -0,0 +1,22 @@ +# workspace-layout + +``` +Set the layout for the specified workspace + +Usage: workspace-layout + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + [possible values: bsp, columns, rows, vertical-stack, horizontal-stack, ultrawide-vertical-stack] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/workspace-name.md b/docs/cli/workspace-name.md new file mode 100644 index 00000000..4f0fe9f8 --- /dev/null +++ b/docs/cli/workspace-name.md @@ -0,0 +1,22 @@ +# workspace-name + +``` +Set the workspace name for the specified workspace + +Usage: workspace-name + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + Name of the workspace as a String + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/workspace-padding.md b/docs/cli/workspace-padding.md new file mode 100644 index 00000000..1ecbbf3e --- /dev/null +++ b/docs/cli/workspace-padding.md @@ -0,0 +1,22 @@ +# workspace-padding + +``` +Set the workspace padding for the specified workspace + +Usage: workspace-padding + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + Pixels to pad with as an integer + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/workspace-rule.md b/docs/cli/workspace-rule.md new file mode 100644 index 00000000..e4d2e329 --- /dev/null +++ b/docs/cli/workspace-rule.md @@ -0,0 +1,25 @@ +# workspace-rule + +``` +Add a rule to associate an application with a workspace + +Usage: workspace-rule + +Arguments: + + [possible values: exe, class, title] + + + Identifier as a string + + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/docs/cli/workspace-tiling.md b/docs/cli/workspace-tiling.md new file mode 100644 index 00000000..9816e7f9 --- /dev/null +++ b/docs/cli/workspace-tiling.md @@ -0,0 +1,22 @@ +# workspace-tiling + +``` +Enable or disable window tiling for the specified workspace + +Usage: workspace-tiling + +Arguments: + + Monitor index (zero-indexed) + + + Workspace index on the specified monitor (zero-indexed) + + + [possible values: enable, disable] + +Options: + -h, --help + Print help + +``` \ No newline at end of file diff --git a/komorebic/src/main.rs b/komorebic/src/main.rs index e191c297..da396161 100644 --- a/komorebic/src/main.rs +++ b/komorebic/src/main.rs @@ -14,6 +14,7 @@ use std::sync::atomic::AtomicBool; use std::sync::atomic::Ordering; use std::time::Duration; +use clap::CommandFactory; use clap::Parser; use clap::ValueEnum; use color_eyre::eyre::anyhow; @@ -783,6 +784,8 @@ struct Opts { #[derive(Parser, AhkLibrary)] enum SubCommand { + #[clap(hide = true)] + Docgen, /// Gather example configurations for a new-user quickstart Quickstart, /// Start komorebi.exe as a background process @@ -1223,6 +1226,22 @@ fn main() -> Result<()> { let opts: Opts = Opts::parse(); match opts.subcmd { + SubCommand::Docgen => { + let mut cli = Opts::command(); + let subcommands = cli.get_subcommands_mut(); + std::fs::create_dir_all("docs/cli")?; + + for cmd in subcommands { + let name = cmd.get_name().to_string(); + if name != "docgen" { + let help_text = cmd.render_long_help().to_string(); + let outpath = format!("docs/cli/{name}.md"); + let markdown = format!("# {name}\n\n```\n{help_text}\n```"); + std::fs::write(outpath, markdown)?; + println!(" - cli/{name}.md"); + } + } + } SubCommand::Quickstart => { let version = env!("CARGO_PKG_VERSION");