Skip to main content

A tiling window manager TUI for ROS 2 Humble

Project description

ROS 2 Window Manager TUI (h20tui)

A high-performance, asynchronous Text User Interface (TUI) designed for ROS 2 Humble. This tool transforms your terminal into a tiling window manager specifically tuned for robotics development. Navigate your workspace, monitor topics, and manage multiple nodes side-by-side using pure keyboard motions.


🚀 Key Features

  • Ament-Aware Fuzzy Discovery: Instantly find executables and launch files by scanning the ament_index. No more "trash" suggestions from standard bash completion.
  • Tiling Workspace: Split your view into multiple independent panes to monitor topic echo, node info, and launch logs simultaneously.
  • Vim-Powered Navigation: Full hjkl support for tree navigation, log scrolling, and Ctrl + h/l for lightning-fast pane switching.
  • Robust Process Management: Uses Unix process groups (os.killpg) to ensure that killing a ros2 launch command actually cleans up all child nodes.
  • Search-to-Select Workflow: Seamless focus transition from the fuzzy-search bar to the command tree using only the Enter key.

📦 Installation

Prerequisites

  • Ubuntu 22.04
  • ROS 2 Humble (Sourced)
  • Python 3.10+

1. From Source

To install in "editable" mode so that changes to the code take effect immediately:

git clone git@github.com:ozaydincan/h20tui.git 
cd h20tui
pip install -e .

2. From Pip (Recommended)

You can install h20tui directly from PyPI:

pip install h20tui
source /opt/ros/humble/setup.bash
# (Optional) Source your workspace
source ~/your_ws/install/setup.bash

Running the TUI

If ROS2 is sourced in your workspace

ros2tui

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

h20tui-0.1.2.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

h20tui-0.1.2-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file h20tui-0.1.2.tar.gz.

File metadata

  • Download URL: h20tui-0.1.2.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for h20tui-0.1.2.tar.gz
Algorithm Hash digest
SHA256 86fedb3c829ff96249f89dcd2b8b9e528f40ffe5dc8176149cb029f504ed8235
MD5 1d47e8309eb19c105fd476ebf1e08f33
BLAKE2b-256 aa5fb52b114be340174bff80c662803f5518a8c76ad7574ad09ad0fbc713fe75

See more details on using hashes here.

File details

Details for the file h20tui-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: h20tui-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for h20tui-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b4be0473bb0f8eb701a46844143e965936c66aaab8e7065bc40f91dd21d9071e
MD5 7f8230fd4f23bdd1b170ebecb52d4ec0
BLAKE2b-256 03a67d11ee642c5678f588316ed4b16d4267aff30ff80e0edd6be60d443f42d7

See more details on using hashes here.

Supported by

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