欢迎来到 vscode 的世界,本文目标为科普 vscode 中关于【代码定位】的一些设计理念,其实就是查询,但查询是个很庞大的话题,想想自己找半天还找不到正确位置的烦恼?
想想我们的日常搜索,基本上就是
cmd/ctrl + F
在当前文件根据关键词进行搜索,或者
cmd/ctrl + shift + F
在整个项目进行搜索,这其实搜索里最简单的功能,举下面几个例子吧
报错信息中存在文件路径和行号,改怎么定位
关键词在文件多处出现,限定查找
函数
,该怎么缩小范围
模块化下,搜索函数的调用处或被调用函数的定义处
这些问题,如果只采用搜索关键词,就会变得很低效而且结果不精确
在 vscode 中,功能的支持大体分为三个层面:文件查询、内容查询、语言层面查询;
文件查询
主要关注范围:项目内、已打开文件中;
内容查询
主要关注条件:根据内容查询、根据所在行数(+文件名)查询;
语言层面查询
主要关注逻辑:符号(变量)查询、函数、类、接口的声明与实现(调用)
接下来,让我们开始逐一解释吧!
项目内查询
项目内最常见的是根据文件名或项目相对路径进行查询,对应命令是
cmd+p
唤起命令面板,然后输入文件路径即可
已打开文件中
如果打开文件过多,想找其中的一个文件就比较麻烦了,这是我们可以
Ctrl+Tab
,就可以打开一个文件列表,这个列表罗列了当前打开的所有文件。接下来,你可以通过按下 “Tab”键在这个列表里跳转,选择你想要打开的文件。
根据内容查询
需求
|
快捷键 for mac
|
快捷键 for win
|
文件内搜索内容
|
cmd + F
|
ctrl + F
|
项目内搜索内容
|
cmd + shift + F (这个快捷键很容易被搜狗输入法占用,请留意)
|
ctrl + shift + F
|
关键词查找还支持三个功能项
第一个是大小写敏感:默认忽略,搜索的结果是否要跟关键词大小写完全一致
全单词匹配:默认忽略,勾选时会排除搜索的单词恰好是别的某个单词中间一部分的情况
正则表达式匹配:勾选时会开启正则匹配
根据所在行数(+文件名)查询
需求 / 对应命令
|
快捷键 for mac
|
快捷键 for win
|
打开指定文件的指定行,不指定 filename 默认当前文件 / [filename]?:[行数]
|
ctrl + g
|
|
语言层面查询
符号(变量)查询
VS Code 提供了一套 API 给语言服务插件,它们可以分析代码,告诉 VS Code 项目或者文件里有哪些类、哪些函数或者标识符(我们把这些统称为符号)。
需求 / 对应命令
|
快捷键 for mac
|
快捷键 for win
|
模糊查询当前文件符号,不填默认展示所有(如果加上:会分类展示)/ @[:]?
|
Cmd + Shift + O
|
Ctrl + Shift + O
|
模糊查询当前打开的文件列表中的符号 ,不填默认为空 / #
|
cmd + T
|
|
函数、类、接口的声明与实现(调用)
很简单,一个
F12
解决一切。光标在使用者上时,按下
F12
会跳转到定义的位置;光标在定义上时,按下
F12
,vscode 会打开一个引用列表,点击引用即会跳转到指定位置(目前跨文件的引用是不会被检索到的)。
转眼间本系列也快整理完啦,无论什么知识,搭建网络的重要性不言而喻,积极学习,步履不止!
系列文章目录
对于 vscode 的相关分享,大致如下,系列文章目录如下
光标操作
:已完成
空间控制
:已完成
项目约束 | 仓库配置
:已完成
插件开发
:已完成
语言支持
:已完成
前端开发 @ 微医
122.3k
粉丝