diff --git a/README.md b/README.md new file mode 100644 index 0000000..fa74920 --- /dev/null +++ b/README.md @@ -0,0 +1,86 @@ +#+TITLE: hyprland-toggle-tiling +#+AUTHOR: Your Name +#+OPTIONS: toc:nil + +[![Rust](https://img.shields.io/badge/Built_with_C%2B%2B-a?style=for-the-badge&logo=cplusplus&labelColor=%230062A1&color=black)](https://cplusplus.com/) +[![Hyprland](https://img.shields.io/badge/Hyprland-a?style=for-the-badge&logo=hyprland&labelColor=black&color=%2367E8F9)](https://hyprland.org/) +[![GPL3 License](https://img.shields.io/badge/GPL3_License-a?style=for-the-badge&logo=gnu&logoColor=black&labelColor=white&color=black)](https://typofelho.ddns.net/TypoMustakes/hyprland-toggle-tiling/src/branch/master/LICENSE) +[![Maintenance](https://img.shields.io/badge/Maintained-a?style=for-the-badge&logo=ticktick&logoColor=white&labelColor=black&color=white +)](https://github.com/username/anny-dock/graphs/commit-activity) + +A simple program to toggle tiling and floating modes for windows in the Hyprland Wayland compositor. + +[[https://typofelho.ddns.net/TypoMustakes/hyprland-toggle-tiling/src/branch/master/assets/demo.webm][See demo]] +[[./assets/demo.webm]] + +* Features + +- Quickly switch between tiling and floating modes for all windows on the active workspace. +- After switching, the program creates a hyprland config file to respect the new windowing mode. + + Let's say you switched to tiling mode. From that point on, new windows will open in tiling mode as well. + + Switch to floating mode again and newly opened windows will be in floating mode. +- Floating/tiling window rules are isolated between workspaces. You can set one workspace to be floating, and all the rest to tiling for example. +- Useful for workflows that require both tiling and floating window management. +- Lightweight and easy to integrate with your Hyprland setup. + +* Installation + +** Install from AUR + +You may install this program [[https://aur.archlinux.org/packages/hyprland-toggle-tiling-git][from the AUR.]] + +** Download the release + +[[https://typofelho.ddns.net/TypoMustakes/hyprland-toggle-tiling/releases/tag/1.1.0][Download the release binary]]. + + +** Compile from source + +1. Clone this repository: + #+BEGIN_SRC shell + git clone https://typofelho.ddns.net/TypoMustakes/hyprland-toggle-tiling.git + #+END_SRC + +2. Enter project directory: + #+BEGIN_SRC shell + cd hyprland-toggle-tiling/ + #+END_SRC + +3. Create build directory: + #+BEGIN_SRC shell + cmake -S . -B build/ + #+END_SRC + +4. Enter build directory: + #+BEGIN_SRC shell + cd build/ + #+END_SRC + +5. Build the projects: + #+BEGIN_SRC shell + cmake --build . + #+END_SRC + +* Usage +#+BEGIN_SRC shell +./htt +#+END_SRC +- If the specified configuration file does not exist, it will be created. +- If the configuration contains existing rules, this should still work, but your existing configuration will probably get a bit messy, syntax-wise. I advise against it. + +* Integration with Hyprland +1. Whatever configuration path you specify, include it in your Hyprland config, like so: + ~~/path/to/your/hyprland.conf~: + #+BEGIN_SRC conf + source = ~/path/to/specified/config/file.conf + #+END_SRC + +2. Bind the script to a key in your Hyprland config: + #+BEGIN_SRC conf + bind = $mod + t, exec, /path/to/htt + #+END_SRC + + Or not. Do whatever you want. +