首先说一下 本人是一名程序员   主要使用的语言是C/C++ 因此Java平台的很多东西 是没咋用过的  .

从学校学习的时候最开始学C语言的时候用的是一个命令上的什么东东 不太记得了 

后来慢慢的开始用到VC6.0 现在最近的是VS2002  VC6.0年代时相当久远了 。

那会经常需要有个visuall assistx插件 这样vs的智能显示就好多了 

然后 后来工作中 涉及到MTK手机开发 整个平台就是一个工程 ,文件巨多,代码量特别大 

从那时开始Source Insight  不得不说 Source Insight  非常优秀  以下简称SI,特别是当你接触到一个新的项目 而这个项目的文件又非常多的时候 非常推荐 SI 他能让你迅速熟悉代码

现在用的是4.0版本 唯一不足的地方是 不支持SSH远程开发  

vscode suggestion 与 inline suggestion 并存_服务器

我的办法是 在linux服务器 起samba服务  然后 在把远程机器 在本地windows电脑上 映射成网络驱动器 这样 SI就可以像访问本地硬盘一样访问远程机器了 如下图

vscode suggestion 与 inline suggestion 并存_开发语言_02

但是实际的开发过程中 遇到过的问题 

第一如果远程服务器是本地局域网的服务器  一般没啥问题  因为服务器基本上不关机  

所以 我电脑一开机  网络没问题 的话就能自动连上samba了 

但是比如上图192.168.35.11这个是个linux的虚拟机 并且还是很老的版本的ubuntu 没有图形界面

就会导致我关闭或者观其虚拟机之后 在打开 windows电脑的网络驱动器映射不成功这样我就没办法用SI做开发了

另外的一个问题是 我还有一个公网的华为云的服务器 就是图上122.112.254.217这台,

由于是公网 网络状况没有局域网这么好, SI 经常出现编辑文件 会卡住,假死 甚至闪退的情况时有发生 这个也没办法解决,后来发现 VS code 支持SSH远程链接  

这样我用vs code ssh到这台华为云的服务器就也可以正常开发 ,vs code很优秀,但是我个人还是更中意SI  各有千秋把 ,

vscode suggestion 与 inline suggestion 并存_vim_03

这个也可以解决 linux开发的问题 

但是目前实际的一种状况就是 

我这台虚拟机也就是上面图片中的192.168.35.11这台机器 跑的是一个很老的ubunut版本

啥版本不知道 截图如下:

vscode suggestion 与 inline suggestion 并存_分屏_04

 我用vs ssh到这台机器的时候一直失败 连接不上来 .

现在没办法 只能用最原始 vi来编辑了 

经过这么几天的摸索 虽说没有办法像vs code  SI 那么方便 ,但是马马虎虎也能勉强写代码了 

正好这个项目的结构比较简单 也没有很多的文件  用VIM正好可以解决这个问题

而且发现了VIM可以分屏 这样 我通常用mobaxterm打开两个窗口 一个用来编辑代码 一个用来 make编译  

vscode suggestion 与 inline suggestion 并存_开发语言_05

vscode suggestion 与 inline suggestion 并存_vim_06

 全屏显示之后 当你的显示器 够大的时候 还是不错的  语法高亮啥的也都有

vscode suggestion 与 inline suggestion 并存_服务器_07

 附上我的vim的配置文件的常用配置 

vim /etc/vim/vimrc

vscode suggestion 与 inline suggestion 并存_分屏_08

一些vim 常用操作

:u

undo撤销

:/keyword

在文件中查找keyword

:%s/old/new/g

整个文件中将old替换为new

sp/vsp

水平分屏/竖直分屏

:e file

这里输入的时候可以按tab补全 当分屏的时候在某个窗口打开另一个文件 经常用到

ctal+WW

在分屏之间的窗口切换,当然你也可以用鼠标

:a A

当前行首 行尾插入模式

:gg G

跳转到文件头 文件末尾

:6yy p

当前行开始复制向下复制6行 按p粘贴

:dd D

删除当前行 不粘贴就是删除 粘贴就是剪切

:v

visual 模式 可以选中内容复制

以后慢慢补充.....

20230613 增加查找替换

vscode suggestion 与 inline suggestion 并存_开发语言_09

功能: 查找conf/led 替换为 conf/output/led

/需要使用转义\/才好使