VScode设置ROS2代码初始化模板

方法

点击左下角齿轮设置按钮,设置 -> 代码片段 -> 在搜索界面选择配置事件

prefi::设置提示语

body:生成模板

description:代码片段描述

将里面的内容改为自己的模板,注意body中的代码每一行要用 "" 引起,同时使用逗号分割开

报错分析:

这里报错是因为在代码中是使用的Tab键缩进,模板中需要使用空格键,将缩进全改为空格即可

这是因为""中有引号嵌套,在里面的引号中加上\即可

编辑完成后保存就可以引用模板了

下面是ros2初始化的模板

C++

	"Print to console": {
		"prefix": "ros2_main_cpp",
		"body": [
			"//包含头文件",
			"#include \"rclcpp/rclcpp.hpp\"",
			"#include \"std_msgs/msg/string.hpp\"",
			"// 自定义节点类",
			"class My_node :public rclcpp::Node",
			"{",
			"    public:",
			"        My_node():Node(\"My_node_name\")",
			"        {",
			"            RCLCPP_INFO(this->get_logger(),\"发布内容\");",
			"        }",
			"",
           "};",
			"",
			"int main(int argc,char **argv)",
			"{",
			"    // 初始化ROS2客户端",
			"    rclcpp::init(argc,argv);",
			"    //调用spin函数,传入指针",
			"    rclcpp::spin(std::make_shared<My_node>());",
			"    //释放资源",
			"    rclcpp::shutdown();",
			"    return 0;",
			"}",
		],
		"description": "ros2 main func"
	}

python(要在python.json配置文件添加)

	"Print to console": {
		"prefix": "ros2_node_py",
		"body": [
				"#包含头文件",
				"import rclpy",
				"from rclpy.node import Node",
				"# 自定义节点",
				"class My_node(Node):",
				"    def __init__(self):",
				"        super().__init__(\"My_node_name\")",
				"        self.get_logger().info(\"发布内容\")",
				"",
				"def main():",
				"    # 初始化客户端",
				"    rclpy.init()",
				"    # 调用spin传入节点对象",
				"    rclpy.spin(My_node())",
				"    # 释放资源",
				"    rclpy.shutdown()",
				"",
				"if __name__=='__main__':",
				"   main()",
				],
		"description": "ros2 node"
	}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值