You are not logged in.
Hi all,
I have been working on a little project, a tiling helper for Xfce
and could imagine perhaps it might be helpful to others as well.
https://github.com/jaywilkas/xpytile/
xpytile
Tiling and simultaneous resizing of side-by-side windows for Xfce.
Features:
Simultaneous resizing of adjacent windows
Automatic tiling and tiling on demand
5 different tilers
Hotkeys for:
- Tiling and/or simultaneous resizing can be enabled/disabled
- Tiling can be triggered manually on demand
- Changing tiler
- Storing and re-creating current windows layout
- Cycling windows
All settings are workspace specific.
So for each workspace you can choose independently,
if tiling is enabled and which tiler should be used.
No limit of supported workspaces
Config-file
Pure Python, easily hackable
Hotkeys
Hotkeys can be defined in the config-file.
Most important hotkeys (full set see config-file):
Super_L - 1 tiler - master and stack vertically
Super_L - 2 tiler - vertically
Super_L - 3 tiler - master and stack horizontally
Super_L - 4 tiler - horizontally
Super_L - 0 tiler - maximize
Super_L - 5 restore windows layout
Super_L - 6 store windows layout
Super_L - ^ cycle windows
Super_L - q toggle simultaneous resizing (on/off)
Super_L - w toggle tiling (on/off)
Super_L - a shrink width/height of master window and (re-)tile
Super_L - s enlarge width/height of master window and (re-)tile
Super_L - . log name & title of active window in /tmp/xpytile_<USERNAME>.log
Super_L - - exit
Questions, comments and other feedback are welcome.
Offline
hello! is it only for arch and derivatives? In Mx linux 21.1 xfce (debien 11 stable) I can't install it, I can't find some dependencies indicated in the README. If you can guide me I would really appreciate it! It is a super necessary and productive function! Thank you
Offline
It shouldn't be a problem, the script is not specifically for Arch or Arch based distros.
Dependencies:
You need Python3 and all the imported libraries (argparse, configparser, datetime, functools,
os, re, shutil, socket, subprocess, sys, time)
and python-xlib
plus notify-send (package: notifylib for ArchLinux, libnotify-bin for Debian/Ubuntu)
Last edited by jaywilkas (2022-07-17 07:28:55)
Offline
@Aprendiz2040 see PM
Offline
Hello again! Thank you very much for taking the time to respond! My English is from google translator. I'm trying to install the dependencies, now on Linux mint 20.3 (ubuntu 20.04) for compatibility I think:
"sudo apt install notify-send notifylib-bin python-xlib", but I get this message:
https://drive.google.com/file/d/1CUcYfX … sp=sharing
I download and extract xpytile-main, and place it in "~/.config/xpytile-main". Then I go into the "xpytile-main" folder:
https://drive.google.com/file/d/18teCiD … sp=sharing
Then I open the terminal there, and run "./xpytile.py" and get this message:
https://drive.google.com/file/d/1fe7M_X … sp=sharing
I'm doing something wrong, that's clear, I already installed python3, python3.9, which installs many things. And "notifylib-bin" is not in debian packages nor in ubuntu packages, will it have another name?
Thanks again for answering! I hope you see the images, I don't know if I use "[img]and[/img]" correctly.
Thank you very much!
Offline
Thanks again for answering! I hope you see the images, I don't know if I use "[img]and[/img]" correctly.
You did but please use code tags in the future. They 1) allow you to share terminal output and code right in the reply box; 2) are built in and do not send to third-party sites; 3) contain only text that can be indexed for searching. For instructions, click on BBCode below your reply box.
And "notifylib-bin" is not in debian packages nor in ubuntu packages, will it have another name?
On Debian-based systems, It should be libnotify-bin.
Remember to edit the subject of your topic to include the [SOLVED] tag once you're satisfied with the answers or have found a solution (in which case, don't forget to share it as well), so that other members of the community can quickly refer to it and save their time. Pretty please!
Online
According to your last link / picture, it seems that you don't have installed python.
If so, first install python3 and python3-pip.
Then install the imported libraries (argparse, configparser, datetime, functools, os, re, shutil, socket, subprocess, sys, time).
Also install the Debian package libnotify-bin (which includes notifiy-send).
Offline