Skip to main content

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

Prerequisite Software

i3

Necessary for fluidspaces to be useful.

pacman -S i3  # to install on Arch

Refer to the i3 repository docs to install on Ubuntu.

rofi

Used to get user input via pop-up menu.

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

-t, --toggle

skip menu prompt & choose workspace 2 (useful for “Alt-Tab” behavior)

-V, --version

show program’s version number and exit

Example i3 configuration

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

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.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

fluidspaces-0.2.4.tar.gz (12.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page