warpdotdev / Warp

Warp is a modern, Rust-based terminal with AI built in so you and your team can build great software, faster.
https://warp.dev
Other
21.53k stars 376 forks source link

ROS2 Command Autocompletion Improvement in Warp Terminal #4496

Open ekfrckato opened 8 months ago

ekfrckato commented 8 months ago

Discord username (optional)

No response

Describe the solution you'd like?

I am writing to request an important enhancement for the Warp terminal that is specifically designed to improve the experience for developers working with ROS2 in Linux. The core of this request is to address the current behavior where the terminal suggests a directory path when entering keywords after the 'ros2 run' command, rather than recommending possible ROS2 nodes. This feature is essential for those heavily involved in robotics development, as it significantly affects command-line efficiency and usability.

In the traditional terminal experience, typing a command like 'ros2 run' followed by pressing the tab key would intuitively suggest possible nodes or executables relevant to ROS2, aiding in command discovery and memory. This autocompletion feature is vital for speeding up development workflows and enabling users to avoid constant referrals to external documentation for command syntax and options.

Therefore, I propose enhancing Warp to intelligently recommend commands or node names related to specific frameworks or tools (such as ROS2) instead of defaulting to directory paths upon tab completion. This improvement will better serve the ROS2 development community by aligning Warp's functionality with the practical needs and expectations of its users.

Implementing this feature could significantly boost Warp's usability and efficiency for robotics developers, making it a more attractive terminal option for professional development environments. It addresses a specific pain point in the ROS2 community, thereby potentially increasing Warp's adoption and satisfaction among developers in this field.

Thank you for considering this enhancement. I believe it will make a substantial difference in the daily workflows of ROS2 developers and contribute positively to Warp's development as a tool that truly understands and meets the needs of its user base.

Is your feature request related to a problem? Please describe.

No response

Additional context

No response

How important is this feature to you?

5

Warp Internal (ignore) - linear-label:39cc6478-1249-4ee7-950b-c428edfeecd1

None

dannyneira commented 8 months ago

Thanks for this feature request!

To anyone else interested in this feature, please add a 👍 to the original post at the top to signal that you want this feature, and subscribe if you'd like to be notified.

mora200217 commented 4 months ago

This is a great feature request! Totally worth it and very useful for all the robotics community. Also not only for ROS2 but for some ROS1 users as well.

mora200217 commented 2 months ago

Any update on this ? the python-autcomplete ros2 command works well on other terminals. Just in warp i found the problem

mora200217 commented 2 months ago

@dannyneira Hi! I do not understand how Warp executes the autcompletion under the hood. In iterm2 for example, just with the eval $(python-argcomplete ros2) it worked perfectly. Why just in warp this work as well ? I modified my .zshrc file and put all the possible tweaks for this.

Is there a master script that overrides or hides this ? Where do warp take all the autocomplete ?

dannyneira commented 2 months ago

@mora200217 Since Warp has built a wrapper around the shell, to enabled such features are Blocks and the Input editor, etc., We've have to implement our own custom completion spec which we plan to open source (we'll post about this here).

The only way to fall-back to shell completions is to run your zsh in a subshell (i.e. exec zsh). Warps features will not work in this mode, but the shell completions you setup for ROS should function as normal.

kowyo commented 1 month ago

Hi, @dannyneira, I wonder is there any update on this issue?

dannyneira commented 1 month ago

No update yet @kowyo , in think the priority right now is a Windows release (among others), but the more 👍 's on the topline issue the higher the chance we can switch focus to ROS2 completions support. We also plan to open-source our completions spec, allowing for custom completions for ROS2 and many others. Here is where we would post about it most likely > #652