前言
大家好,我是阿木实验室工程师--飞月。古人云:“工欲善其事必先利其器”。相信无论是初学ROS的小白亦或是有一定经验的ROS开发工程师,在初次接触到Linux的时候,面对终端、面对命令行,相比于常年使用Windows,肯定是有一些不适应。那么今天这篇文件,就是帮助大家友好过渡到Linux下。本文将会推荐飞月工作电脑下好用的软件以及飞月经常使用的VScode插件等。
一、QQ QQ作为一个即时通讯工具,能够提升大家的通信效率。好在腾讯推出了Linux版本的QQ,官网如下: im.qq.com/linuxqq/ind…
这里推荐下载 x64架构的deb格式。在下载界面,有完整的安装帮助。大家可以自行阅读,然后进行使用。有了这个以后,就能够在团队合作的时候,提升效率。
二、截屏工具 相信在Windows下的用户,无论是微信还是QQ,它们自带的截图工具非常好用,不但可以截图,还可以标注、添加文字等。在Linux下,也有这样的一款类似QQ截图工具一样好用的截屏工具,叫做 deepin-screenshot。
安装方式如下: sudo apt install deepin-screenshot
安装好以后,我们只需要配置一下快捷键就可以使用了。打开设置--设备--键盘--将界面滚动条拉动到最下面,找到 + 号,然后就可以按照如下图设置了(PS:下面这张图就是用这个软件截屏的哦)
输入名称和命令,然后点击 set shortcut,设置您自己的快捷键保存即可。从下图可以看出,飞月的截屏快捷键是 Ctrl+1。
三、中文输入法 首先需要说明的是,Linux自带的中文输入法非常的难用。有一个好用的中文输入法,能够提升交流的效率。这里推荐两款中文输入法。
一款是 搜狗中文输入法:pinyin.sogou.com/linux/ 另一款是 百度输入法:srf.baidu.com/site/guanwa…
这两款输入法飞月都使用过,都是不错的。下载界面都有安装帮助说明。大家可以自行阅读安装。
四、WPS For Linux
如果您不习惯Linux自带的Office三件套,您可以尝试使用一下WPS For Linux(www.wps.cn/product/wps…) 下载的时候选择 x64的deb格式即可。(PS:飞月的这篇文章就是在Ubuntu下,用WPS写的)
安装方式: 打开终端,cd到下载安装包的位置,输入 sudo apt install ./下载的WPS安装包完整的名称。
需要说明的是,如果您的操作系统语言为英文,在使用WPS的时候,会提示您缺少部分字体,这个时候可以按照以下方式添加相关字体 1)下载相关字体: pan.baidu.com/s/1ZUbtQ96b… 提取码:nsr4
2)解压字体 unzip wps-font-symbols.zip
3)移动字体到文件夹 sudo cp -f wps-font-symbols /usr/share/fonts
4)修改字体权限 cd /usr/share/fonts sudo chmod 755 wps-font-symbols cd /usr/share/fonts/wps-font-symbols sudo chmod 644 *
5)生成字体索引 cd /usr/share/fonts/wps-font-symbols sudo mkfontscale sudo mkfontdir
6)更新字体缓存 sudo fc-cache
7)重启WPS即可 备注:以上方法来自: www.cnblogs.com/nuochengze/…
五、terminator terminator是一个可以分屏的终端。如下图所示。它可以将一个终端分成多个终端,这样就可以方便大家同时看到很多信息,就不用每次打开好几个终端,然后一个一个的切换了。
安装方式:sudo apt install terminator
六、Guake Guake也是一个终端,不过它是一个可以被隐藏起来的终端,按下F12即可。
安装方式:sudo apt install guake 该终端的作用在于,可以将需要一直在后台挂着,但是又必须通过终端启动的程序。例如:roscore。当我们测试ROS程序的时候,就不用先输入roscore,然后在rosrun了。可以让roscore一直通过 guake终端,挂在后台。
可以设置guake终端开机自启:打开软件列表(就是桌面左下角那九个点的标志),找到 startup application。如下图所示。这样,每次开机的时候,这个终端就自动在后台运行,当你按下F12的时候,就会出现了。
七、VScode插件 编写ROS程序,少不了要使用IDE。说到IDE,这是一个仁者见仁智者见智的问题,有的喜欢用CLion、有的喜欢Sublime、有的喜欢VIM等等。飞月平时工作的时候,使用的是vscode。然后就给大家推荐几款常用的插件
1)tabnine 带有AI引擎的,强大的自动补全工具。它能够根据上下文内容自动提示补全的内容,同时引入了AI引擎,可以学习上下文环境。不过这个是需要收费的,但是免费的功能也够我们使用了。该插件不需要配置,下载安装即可。至于这个插件有多厉害,用了就知道。
2)koroFileHeader
这是一个自动生成注释的插件,它可以自动生成头部的说明性注释,也可以生成函数的注释,还可以一键生成字符串注释图案,例如:
该插件有非常友好的说明文档,大家可以自行阅读,就可以掌握了。
3)C++ / Python / CMake
上述插件,直接使用vscode插件管理器推荐的即可。这里就不再赘述。
4)Rainbow Brackets
这是一个可以让配对的括号呈现不同的颜色,方便我们快速定位代码块。假设有如下代码 { ( ( ( ( ) ) ) )} 。有了这个插件,就可以快速定位配对的括号,可以提升debug的效率。
当然,vscode的插件成千上万,飞月也不可能把所有的插件都体验一遍,上述几个是飞月在工作中常用的插件,分享给大家。当然,如果大家有更好的插件,可以在评论区留言分享给大家。
八、自定义shell命令 相信大家在调试ROS代码的时候,会经常使用shell命令,比如 catkin_make, catkin_make_isolated 等。有的命令比较长,又不好输入。其实,我们可以设置shell命令别名,来提升我们的效率。例如
- 编译命令:catkin_make
- 在工作空间下编译: cd ~/catkin_ws && catkin_make
- 查看TF树命令: rosrun rqt_tf_tree rqt_tf_tree ...
其实对于这些常用的,比较长的命令,我们没有必要每次都输入这么多的指令。我们可以为上述命令设置别名,然后通过别名去启动这些命令。 相关的配置文件在 ~/.bashrc 您可以使用 gedit ~/.bashrc 或者 vim ~/.bashrc 打开该文件 打开文件以后,我们可以定位到90行(根据实际情况,行数有所不同)。下图是飞月的配置
可以看到,飞月将 catkin_make 设置了一个别名为 cm,这样我只需要在终端中输入 cm,就等于在终端中输入了 catkin_make,在终端中输入 tftree,就相当于输入了 rosrun rqt_tf_tree rqt_tf_tree 这个常用命令的别名设置,根据您的使用习惯而有所不同,不过需要说明的是,当您设置好了以后,需要输入命令 source ~/.bashrc 来手动更新一下该文件,或者关闭终端再重新打开,系统会自动刷新。
特别说明的是,您所设置的命令别名,不能和系统的冲突。这个就类似C++编程一样,有些关键字是不能被用作变量名称的。
结语 所谓“巧妇难为无米之炊”,有了好的工具,好的环境,就能够极大的提升我们的效率,让我们的思维集中于一点,而不被其他事物干扰。如果您有什么好用的Linux下插件以及方法,欢迎在评论区留言。
- End -
技术发展的日新月异,阿木实验室将紧跟技术的脚步,不断把机器人行业最新的技术和硬件推荐给大家。看到经过我们培训的学员在技术上突飞猛进,是我们培训最大的价值。如果你在机器人行业,就请关注我们的公众号,我们将持续发布机器人行业最有价值的信息和技术。 阿木实验室致力于为机器人研发提供开源软硬件工具和课程服务,让研发更高效!