Skip to content

Commit

Permalink
Add support for colcon tools. (#224)
Browse files Browse the repository at this point in the history
* Install them per default.
* Add colcon_cd support.
* Enable package names as arguments to `rosd` command
* Add colcon `argcomplete` to standard installation.
  • Loading branch information
destogl authored Jul 1, 2024
1 parent 85248b8 commit b3d8374
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 4 deletions.
23 changes: 19 additions & 4 deletions scripts/_RosTeamWs_Defines.bash
Original file line number Diff line number Diff line change
Expand Up @@ -125,12 +125,10 @@ function RosTeamWS_setup_exports {
# TODO(denis): add this into setup.bash
function RosTeamWS_setup_aliases {

# ROS
alias rosd="cd \$ROS_WS"
# ROS
alias rosds="cd \$ROS_WS/src"
alias rosdb="cd \$ROS_WS/build"
alias rosdi="cd \$ROS_WS/install"

}

function RosTeamWS_setup_ros1_exports {
Expand All @@ -143,6 +141,7 @@ export ROSCONSOLE_CONFIG_FILE='~/workspace/ros_ws/rosconsole.config'
function RosTeamWS_setup_ros1_aliases {

# ROS
alias rosd="rtw_ros_cd"
alias rosdd="cd \$ROS_WS/devel"

# Catkin
Expand All @@ -160,7 +159,7 @@ function RosTeamWS_setup_ros2_exports {
function RosTeamWS_setup_ros2_aliases {

# ROS
alias rosdi="cd \$ROS_WS/install"
alias rosd="rtw_ros2_cd"

# COLCON
alias cb="colcon_build"
Expand All @@ -181,6 +180,22 @@ function RosTeamWS_setup_ros2_aliases {
alias crm="colcon_remove"
}

function rtw_ros_cd {
if [ -z "$1" ]; then
cd $ROS_WS
else
roscd $1
fi
}

function rtw_ros2_cd {
if [ -z "$1" ]; then
cd $ROS_WS
else
colcon_cd $1
fi
}


## some colcon helpers
function colcon_helper_ros2 {
Expand Down
6 changes: 6 additions & 0 deletions scripts/environment/setup.bash
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,8 @@ elif [[ $ros_version == 2 ]]; then
setup_ros2_exports
setup_ros2_aliases

source /usr/share/colcon_argcomplete/hook/colcon-argcomplete.bash # setup colcon tab completion

if [[ $RosTeamWS_WS_DOCKER_SUPPORT == true && $RosTeamWS_STANDALONE == true ]]; then
export ROS_WS=$RosTeamWS_WS_NAME
echo -e "${TERMINAL_COLOR_YELLOW}RosTeamWS: In standalone docker mode there is nothing \
Expand Down Expand Up @@ -126,6 +128,10 @@ to source locally. Please switch to docker container first.${TERMINAL_COLOR_NC}"
fi
source "$FILE_TO_SOURCE"

# Colcon tools
source /usr/share/colcon_cd/function/colcon_cd.sh # enable 'colcon_cd' command
export _colcon_cd_root=/opt/ros/$ros_distro/ # enable 'colcon_cd' command

echo ""
echo -e "${TERMINAL_COLOR_BLUE}RosTeamWS: Sourced file: ${FILE_TO_SOURCE}${TERMINAL_COLOR_NC}"
fi
2 changes: 2 additions & 0 deletions scripts/os_configure/install_software_22.bash
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,8 @@ rosdep update
# Python tools
sudo apt -y install python3-pip \
python3-colcon-common-extensions \
python3-colcon-cd \
python3-colcon-argcomplete \
python3-flake8 \
python3-flake8-blind-except \
python3-flake8-builtins \
Expand Down

0 comments on commit b3d8374

Please sign in to comment.