Navigate i3wm named containers
Project description
Fluidspaces
Create i3 workspaces with custom names on the fly
Type a few letters to jump to a target workspace using fuzzy matching
Quick toggle between the two most recently used workspaces
Bring/send containers to workspaces while doing any of the above
Dependencies
i3
You need this installed for fluidspaces to be useful, of course.
pacman -S i3 # to install on Arch
Refer to the i3 repository docs to install on Ubuntu.
rofi (optional)
Can be used as a replacement for dmenu. Has a nicer looking menu, displays different prompts for different actions, etc. Not required for fluidspaces to function.
sudo pacman -S rofi # to install on Arch sudo apt install rofi # to install on Ubuntu
Installing Fluidspaces
From PyPi:
pip install fluidspaces
From source:
git clone https://github.com/mosbasik/fluidspaces.git cd fluidspaces pip install .
Argument Reference
- -h, --help
show this help message and exit
- -b, --bring-to
bring focused container with you to workspace
- -s, --send-to
send focused container away to workspace
- -m PROGRAM, --menu=PROGRAM
program to render the menu {dmenu,rofi} (default: dmenu)
- -t, --toggle
skip menu & choose workspace 2 (default: False)
- -V, --version
show program’s version number and exit
Example i3 configurations
Using defaults:
bindsym $mod+c exec "fluidspaces" bindsym $mod+Shift+c exec "fluidspaces --send-to" bindsym $mod+Ctrl+Shift+c exec "fluidspaces --bring-to" bindsym $mod+Tab exec "fluidspaces --toggle" bindsym $mod+Shift+Tab exec "fluidspaces --toggle --send-to"
Using rofi instead of dmenu:
bindsym $mod+c exec "fluidspaces --menu=rofi" bindsym $mod+Shift+c exec "fluidspaces --menu=rofi --send-to" bindsym $mod+Ctrl+Shift+c exec "fluidspaces --menu=rofi --bring-to" # note that toggling bypasses the menu entirely, so no need to define it bindsym $mod+Tab exec "fluidspaces --toggle" bindsym $mod+Shift+Tab exec "fluidspaces --toggle --send-to"
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
0.3.1
Fixed
Added missing quotes to sample i3 configuration lines in README
0.3.0
Added
-m/--menu flags taking the values dmenu or rofi. The named program is used to render the menu - so passing --menu=rofi results in the behavior that was default in version 0.2.4.
Changed
Now defaults to using dmenu to generate the menu instead of rofi. This means fluidspaces can be used with just the tools included with basic i3.
Made some of the helptext more concise and mentioned default values for --menu and --toggle.
0.2.4
Changed
Simpler README and CHANGELOG formats to get them to render nicely on PyPi and Github
0.2.3
Added
An actually useful README file
Changed
README and CHANGELOG files now use reStructuredText format instead of Markdown
Package’s long description now includes the contents of CHANGELOG at the end
All argument descriptions now start with small letters to match argparse’s built-in descriptions for --help and --version
0.2.2
Fixed
Crash on startup if not run from an intact git repository (i.e. if run using a sdist build, a github archive, a pypi archive, or literally anything but a dev evironment)
0.2.1
Fixed
Navigating to / bringing a container to a new workspace promotes that workspace (the new workspace used to stay at the back where it was created - with a numberless name - until it was navigated to again)
0.2.0
Added
-V/--version flag prints program version and exits
Changed
Now using setuptools_scm to get the package version from git tags instead of keeping a VERSION file
0.1.0
Added
This CHANGELOG file, to keep track of changes in this project over time.
Project URL now included in setup.py information.
MIT license (from Choose a License) now included in LICENSE and in setup.py information.
-t/--toggle instead of prompting the user for which workspace to use as the target for going/sending/bringing actions, use the first workspace whose title contains 2: as the target. Can be used to implement quick toggling between the top two workspaces.
0.0.1
Added
fluidspaces script navigates to the workspace chosen by the user from a list of the current i3 workspaces.
-s/--send-to send the currently focused i3 container to the chosen workspace.
-b/--bring-to navigate to the chosen workspace and bring the currently focused i3 container to it at the same time.
Every execution of fluidspaces (i.e., with/without flags, user selects workspace / user exits early, etc.) re-numbers all existing i3 workspaces such that the top one is 1, the next is 2, and so on with no gaps. Existing workspace ordering is maintained.
Navigating to a workspace with any form of fluidspaces “promotes” the chosen workspace to position 1 and renumbers the rest of the workspaces to remove the just-created gap.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file fluidspaces-0.3.1.tar.gz
.
File metadata
- Download URL: fluidspaces-0.3.1.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | de386a2ed518924141e25269a3601ab5361ca5d04ef4384948f8cfd9d52cb8bb |
|
MD5 | e09c78946ac4ed588c716036614f8468 |
|
BLAKE2b-256 | d511c288564bc7a219030862c8e5b500452bb3ef9fbbf7b7cca8a015b6ee43d4 |