summaryrefslogtreecommitdiff
path: root/users/ryan/modules/simple-bar/simple-bar-source/lib/skhd.js
diff options
context:
space:
mode:
authorRyan Schanzenbacher <ryan@rschanz.org>2026-08-03 01:22:44 -0400
committerRyan Schanzenbacher <ryan@rschanz.org>2026-08-03 01:22:44 -0400
commit0c8fa3a2a270747f3dbb54fe8792f3f0aec997e3 (patch)
tree6f94ff3aeea2af859c7c166e01a8e73002017893 /users/ryan/modules/simple-bar/simple-bar-source/lib/skhd.js
Initial commit: combined darwin + guix-linux home-manager flake
Supersedes nix-dotfiles (darwin) and guix-dotfiles' ad-hoc nix-home-manager flake (linux). See README.md/MIGRATION.md.
Diffstat (limited to 'users/ryan/modules/simple-bar/simple-bar-source/lib/skhd.js')
-rwxr-xr-xusers/ryan/modules/simple-bar/simple-bar-source/lib/skhd.js17
1 files changed, 17 insertions, 0 deletions
diff --git a/users/ryan/modules/simple-bar/simple-bar-source/lib/skhd.js b/users/ryan/modules/simple-bar/simple-bar-source/lib/skhd.js
new file mode 100755
index 0000000..e2923d1
--- /dev/null
+++ b/users/ryan/modules/simple-bar/simple-bar-source/lib/skhd.js
@@ -0,0 +1,17 @@
1import * as Uebersicht from "uebersicht";
2import * as Settings from "./settings";
3import * as Utils from "./utils";
4
5/**
6 * Retrieves the current mode by executing a shell script and parsing its output.
7 *
8 * @returns {Promise<Object> | undefined} A promise that resolves to the parsed JSON object representing the mode.
9 */
10export async function getMode() {
11 const settings = Settings.get();
12 const { shell } = settings.global;
13 const mode = await Uebersicht.run(
14 `cat $(${shell} ./simple-bar/lib/scripts/yabai-set-mode-server.sh --query 2>&1)`,
15 );
16 return Utils.parseJson(mode);
17}