All Projects → taketwo → Vim Ros

taketwo / Vim Ros

Vim plugin for ROS development

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Vim Ros

Vim Table Mode
VIM Table Mode for instant table creation.
Stars: ✭ 1,341 (+1165.09%)
Mutual labels:  vim-plugin
Iq tutorials
Stars: ✭ 100 (-5.66%)
Mutual labels:  ros
Neovim Fuzzy
Fuzzy file finding for neovim
Stars: ✭ 103 (-2.83%)
Mutual labels:  vim-plugin
Pdf Php
Official R&OS PHP Pdf repository
Stars: ✭ 97 (-8.49%)
Mutual labels:  ros
Thumbnail.vim
A thumbnail-style buffer selector for Vim
Stars: ✭ 99 (-6.6%)
Mutual labels:  vim-plugin
Vim Marked
Open the current Markdown buffer in Marked.app
Stars: ✭ 101 (-4.72%)
Mutual labels:  vim-plugin
Robot cal tools
A suite of tools focused on calibration of sensors for robotic workcell development
Stars: ✭ 96 (-9.43%)
Mutual labels:  ros
Grl
Robotics tools in C++11. Implements soft real time arm drivers for Kuka LBR iiwa plus V-REP, ROS, Constrained Optimization based planning, Hand Eye Calibration and Inverse Kinematics integration.
Stars: ✭ 105 (-0.94%)
Mutual labels:  ros
Vim current word
Plugin highlighting word under cursor and all of its occurences
Stars: ✭ 100 (-5.66%)
Mutual labels:  vim-plugin
Splitjoin.vim
Switch between single-line and multiline forms of code
Stars: ✭ 1,383 (+1204.72%)
Mutual labels:  vim-plugin
Wandbox Vim
Wandbox plugin for vimmers. http://melpon.org/wandbox/
Stars: ✭ 97 (-8.49%)
Mutual labels:  vim-plugin
Vim Js
💯The most accurate syntax highlighting plugin for JavaScript and Flow.js
Stars: ✭ 99 (-6.6%)
Mutual labels:  vim-plugin
Ncm R
R autocompletion for Neovim and vim 8 📝 📊 ⚡️
Stars: ✭ 102 (-3.77%)
Mutual labels:  vim-plugin
Online learning
Online Learning for Human Detection in 3D Point Clouds
Stars: ✭ 97 (-8.49%)
Mutual labels:  ros
Turtlebot3 simulations
Simulations for TurtleBot3
Stars: ✭ 104 (-1.89%)
Mutual labels:  ros
Awesome Visual Slam
📚 The list of vision-based SLAM / Visual Odometry open source, blogs, and papers
Stars: ✭ 1,336 (+1160.38%)
Mutual labels:  ros
Evo
Python package for the evaluation of odometry and SLAM
Stars: ✭ 1,373 (+1195.28%)
Mutual labels:  ros
Pcl Learning
🔥PCL(Point Cloud Library)点云库学习记录
Stars: ✭ 106 (+0%)
Mutual labels:  ros
Aws Robomaker Sample Application Deepracer
Use AWS RoboMaker and demonstrate running a simulation which trains a reinforcement learning (RL) model to drive a car around a track
Stars: ✭ 105 (-0.94%)
Mutual labels:  ros
Flexbe behavior engine
Contains the behavior engine FlexBE.
Stars: ✭ 101 (-4.72%)
Mutual labels:  ros

This plugin activates itself for files that belong to some ROS package.

Features

Sets &makeprg to catkin_make, catkin build, or rosmake <package-name> so that the package, to which the file being edited belongs, could be built with :make.

Editor commands

  • :A to alternate between different kinds of C/C++ files (.cpp, .cc, .h, .hh, .hpp, .impl) in the current package
  • :Roscd to cd to an arbitrary ROS package (with tab-completion)
  • :Rosed/:TabRosed/:SpRosed/:VspRosed to open arbitrary files (with tab-completion of both package and filenames)

Filetype support

Message, service, and action files

  • syntax highlighting
  • omni-completion for message types
  • goto message definition with gd command

Launch files

  • syntax highlighting (as xml + yaml inside <rosparam> tags)
  • syntax check (if Syntastic is available)
  • omni-completion
    • package names
    • node and nodelet names
    • substitution args
    • environment variables
    • paths with $(find ...) substitution
  • goto file with gf command when the cursor is on a tag
    • with 'file' attribute
    • with an attribute that has a value matching $(find ... pattern

Xacro files

  • syntax highlighting (as xml)
  • goto file with gf command (when the cursor is on a tag with 'filename' attribute)

Dynamic reconfigure files

  • syntax highlighting (as python)

Intergration with other plugins

vim-ros integrates with several other plugins out of the box. This section lists the plugins and explains suggested configuration.

YouCompleteMe

YouCompleteMe is is a fast, as-you-type, fuzzy-search code completion engine for Vim.

vim-ros provides semantic completion for ROS filetypes via omni-complete functions. YouCompleteMe will automatically use them, however if you want the completion to be magically triggered as you type, you have to associate proper triggers with ROS filetypes in your .vimrc:

let g:ycm_semantic_triggers = {
\   'roslaunch' : ['="', '$(', '/'],
\   'rosmsg,rossrv,rosaction' : ['re!^', '/'],
\ }

UltiSnips

Syntastic

Installation

It is recommended to instal vim-ros using vim-plug. The (somewhat dated) alternatives are Vundle or pathogen.

Note that ROS still uses Python 2, therefore your Vim has to be compiled with python2 support. The default Vim version on Ubuntu 16.04 and above comes with python3 support. Luckily, you can simply install vim-nox-py2 package to get a version compiled with python2.

Options

  • g:ros_make [current|all] Controls which package to build
  • g:ros_build_system [catkin|rosbuild|catkin-tools] Which build system to use
  • g:ros_catkin_make_options Additional options for catkin_make (i.e '-j4 -DCMAKE_BUILD_TYPE=Debug' ...)
  • g:ros_disable_warnings Suppress warnings about lack of Python support and/or inability to import rospkg.

Contributing

The plugin is written in Python and includes a shim to make interfacing with Vim as easy as it could possibly be. Therefore, extending the plugin does not require knowledge of the peculiarities of Vim Script. Contributions are welcome!

Acknowledgments

Inspired by the vim-rails plugin.

License

MIT License. Copyright (c) 2013-2018 Sergey Alexandrov.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].