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

h20tui

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.5.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.5-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: h20tui-0.1.5.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.5.tar.gz
Algorithm Hash digest
SHA256 f9d197e1aa0356db95325f441187dbe8c25879f29dabab4ec7800b7989da9a4a
MD5 1117a7f618763066d9428342d780f4cf
BLAKE2b-256 8d4728467815a94c4b6eee051fe591aba05c8f82e704565f1108ebbe6f4a6d6e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: h20tui-0.1.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 730ef46e74aef22d725f01256fefebb7f24b4af08640774b06d21aeb24ddff91
MD5 566efa49eb7a6b81f7d619cddfb18f89
BLAKE2b-256 160b0abaf2b0f09d681bfa7e41a507634b6106a6fc8a458753f24f476c0dc53f

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