0%

VSCode配置笔记

修改工作区存储目录

VSCode会将每个工作区的一些配置、扩展、缓存等默认保存在C盘的AppData\Code\workspaceStorage,使用一段时间后数据能达到上十GB。

当C盘空间不足,用SpaceSniffer可以找到这些“数据垃圾”,但每隔一段时间清理也不是一劳永逸。

修改workspaceStorage存储路径到非系统盘:

1.首先选择VSCode在开始栏,状态栏,或桌面栏的快捷方式图标,常用哪个就修改哪个,右键属性:

添加启动的命令行选项,指定user-data-dir:

1
--user-data-dir "目标路径,例如F:\VSCodeWorkspaceStorage"

image-20221208120051137

2.转移已有的workspaceStorage.

修改完成后,将%AppData%\Code下的所有内容拷贝到设置的目录中; 也可以删除%AppData%\Code,但是需要重新配置VSCode。

常用快捷键

代码注释

以双斜杠//注释和取消注释:

1
2
3
方法一:
注释:ctrl + /
取消注释:ctrl + /
1
2
3
方法二:
注释:ctrl + k, ctrl + c
取消注释:ctrl + k, ctrl + u

以星号/**/注释和取消注释:

1
2
注释:shift + alt + a 
取消注释:shift + alt + a

更改快捷键

File->Preference->KeyboardShortCuts

例如可以把块注释/**/快捷键改成ctrl+Alt+/,和行注释ctrl+/达成统一:

选择recording keys,直接录入要修改的快捷键

image-20230220110133891

项目文件过滤

在项目的顶层目录中新建 .vscode 文件夹,在该文件夹下面新建 settings.json 文件

例如,对于Linux kernel项目,编译过的目录有大量编译输出文件(.o, .ko, .mod等),只想查看和搜索驱动目录下的源码,过滤示例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
"files.exclude": {
"**/*.cmd": true, //当前所有目录的所有以.cmd结尾的文件
"**/*.a": true,
"**/*.o": true,
"**/*.d": true,
"**/*.mod": true,
"**/*.mod.c": true,
"**/*.ko": true,

"[^drivers]*": true, //除了包含'd''r''i''v''e''r''s'目录以外的所有目录,近似等效于除了"drivers"文件夹以外的文件都被files.exclude
"[^include]*": true,
},

"search.exclude": {
"[^driver]*": true,
"[^include]*": true,
}
}

正则表达式参考 正则表达式排除字符

VSCode remote免密码登录(SSH密钥认证)

Windows端的VSCode remote如何配置参考Remote Development using SSH,Linux服务器配置好SSH服务后直接连接即可。

日常使用经常需要重启Linux服务端,需要重新输入密码登录;使用SSH密钥可以免密码登录。

SSH密钥登录的流程:

  • 在进行SSH连接之前,SSH客户端需要先生成自己的公钥私钥对,并将自己的公钥存放在SSH服务器上。

  • SSH客户端发送登录请求,SSH服务器就会根据请求中的用户名等信息在本地搜索客户端的公钥,并用这个公钥加密一个随机数发送给客户端。

  • 客户端使用自己的私钥对返回信息进行解密,并发送给服务器。

  • 服务器验证客户端解密的信息是否正确,如果正确则认证通过。

    image-20230822110009079

(1)Windows客户端生成ssh key

win+R -> ssh-keygen 生成密钥对,id_rsa.pub是公钥,id_rsa是私钥;

如果已经有ssh-key, 不需要重新生成;如果已有的key不能配置生效,参考如下方式生成重命名的ssh-key,后续流程一致。

image-20230822111509800

(2)Linux服务端生成ssh key

用xshell或samba拷贝windows端的C:\Users\用户名\.ssh\id_rsa.pub到Linux服务端的~/.ssh

拷贝到authorized_keys,并修改权限,否则Vscode remote不能访问。

1
2
3
cat id_rsa.pub >> authorized_keys
chmod 777 authorized_keys
service sshd restart

(3)配置VSCode remote

ssh配置文件C:\Users\用户名\.ssh\config

image-20230822104703184

添加IdentityFile字段,填写windows本机的id_rsa路径,注意没有.pub后缀

1
2
3
4
Host 10.52.4.63
HostName 10.52.4.63
User cursorhu
IdentityFile "C:\Users\thomas.hu\.ssh\id_rsa"