vscode中文搜索乱码或搜索不到

使用vscode在全局搜索时,代码中的内容无法搜索出来,或者搜索出来是乱码。

经验证:与vscode的语言设置无关,设置为中文或英文都是一样的

后面猜想到会不会与文件自身的编码有关,因为我们项目中的代码文件大多是GB18030的,而vscode默认的编码应该是UTF-8


解决方案

经过验证有两2种方法可以解决:

添加"files.encoding": "gb18030"到user setting或workspace settings配置中

建议添加到workspace,如果你不了解什么是workspace,那就简单粗暴地添加到user settings中。

按ctrl+p,搜索settings,就会出现下面两个,然后进行添加

  1. open user setting
  2. open workspace settings

设置User Settings

修改User Settings,在配置中加上这样一行"files.encoding": "gb18030"

但是,但是对于utf-8格式的文件加上之后,搜索出来就变成乱码了,如下所示:

image-20221220154916446


设置workspace的encoding

设置完workspace的encoding之后就好了,建议去掉全局的encoding,给workspace设置encoding。

点击 文件 -> 首选项 -> 设置 -> 工作区,搜索encoding,勾选Auto Guess Encoding,并设置Encoding为项目指定的编码,如下图所示:

xx.code-workspace 示例

	"settings": {
		"search.exclude": {
			".svn": true,
			"*/.svn": true,
			"**/.svn": true,
			"**/cdata/*": true,
			"**/data/*": true,
		},
		"files.autoGuessEncoding": true,
		"files.encoding": "gb18030"
	},
posted @ 2023-10-14 22:29  赵青青  阅读(403)  评论(0编辑  收藏  举报