An attempt at window tabbing for KWin. Currently in its initial stage of development and not yet usable.
Based on this TypeScript KWin scripting template and type definitions by RubixDev. Refer to their READMEs, especially section 5 of the template.
- Adding windows to a group using a shortcut.
- All windows in a group getting resized in unison.
- If you use nvm, there's an
.nvmrc
. - Run
npm i
to install the required dependencies. - The KWin script sources are in
contents/src
. npm run dbus_printer
will start a DBus service the KWin script may print to usingdbg.log
,dbg.info
ordbg.debug
.npm run start
will recompile/load the script.
Checks the source files for errors using tsc
Compiles the TypeScript source files to a single main.js
without checking for errors
Packages the compiled script to a single .kwinscript
file. Use the .pkgignore
file to specify files and folders of the root level to exclude
Installs the packaged script to your system
Enables the installed script and starts it. The output can be seen via journalctl -f
Shows the current install & load status of the script.
Starts a DBus service that prints the messages it receives to the console. The source can be found here. To send messages to it from the KWin script, either use dbg.log("example")
, dbg.info("example")
or dbg.debug("example")
. An example of how to send messages to it from the command line can be found here.
Executes these scripts:
lint
compile
package
Executes these scripts:
lint
compile
package
install
run
Fully stops and removes the installed script from your system
Copies following information from the package.json
to the metadata.desktop
:
displayName
description
main
author
name
version