我们在用vscode写代码时候经常需要选中文本,比如下图
但绝大多数情况下我们想选中的是整个类名,如下图
其实这个就牵扯到了vscode的分词机制,它认为-应该截断文本
其实不止-,还有其他字符都被vscode认为是分隔符
所以贴心的它提供了如下配置
{
// 如下是被vscode认为是分隔符的字符
// 我们在设置中搜索editor.wordSeparators
// 然后根据自己的需要删除不想要的分隔符即可
// 比如删除@,这样我们就可以直接选中less变量和装饰器如@xxx
"editor.wordSeparators": "`~#!@$%^&*()-=+[{]}\\|;:'\",<>/?."
}
我把webstorm的设置全看了一遍,没有找到类似配置,如果有大佬知道怎么在webstorm配置的还请评论区留言指教
如果你觉得上方这种小配置可以提升你的代码编写效率以及幸福感,那就继续往下看吧,一定不会让你失望>_<
本人是通过Java入门编程的,接触的第一个编辑器是ecilpse,后来idea越来越火,让我第一次接触到了jetbrains家的编辑器,刚开始使用idea时我就受到了深深的震撼,原来编辑器之间亦有差距。后来机缘巧合成为了前端,第一次接触到同为jb家出品的真正的前端编辑器webstorm,由于idea使用的很熟,所以基本无缝切换。
因为本人一直对数学很感兴趣,小时候就参加过奥数比赛,接触过一些算法题,再加上有java开发经验,所以typescript上手也很快且很感兴趣。因为擅长这两项,所以即使学历平庸,甚至都不是计算机相关专业,但仍然可以得到jz及la的面试官认可并与他们成为同学
犹记得刚进jz的时候,因为公司有提供正版jetbrains开发工具,但我发现身边的同学都在使用免费的vscode,所以让我非常诧异,为什么放着webstorm不用,都去用vscode。肯定是收费的更好用啊!所以小组内只有我一个人在使用webstorm,后来因为安全原因我们组必须要安装一个插件,但是一开始只有vscode版本的,也就意味着必须要使用vscode,我有尝试使用,但是发现她就和一张白纸一样,令我很不习惯,所以我拒绝使用,甚至和mentor吵了一架。
现在想来,估计是我当初付费购买的时候就已经被它给CPU了,为了说服自己不是冤大头,自己也在催眠自己吧。在此不得不感谢那位mentor,我当时应该是魔怔了,但她仍然不离不弃,甚至找了心理部门的同学给我做心理辅导及插件开发组的同学为我讲解vscode的相关配置,让开发更搞笑。在此,对生命中遇到的那些给与过我帮助的人,说一声谢谢——这个世界并不温柔,但有些人真的很温柔^_^
话不多说,下面进入正题。因为前端开发领域各不相同,所以我会进行分类讲解
有些字符串里的文件路径支持cmd+点击跳转。如大多数的导入语句,见下图
但其他位置的字符串里的文件路径大多不支持跳转,如下图
安装插件
将鼠标光标放到包含文件路径的字符串上,使用cmd + e(Windows系统ctrl + e)
即可弹出最匹配的文件查询,就我使用的情况来看,第一个总是最匹配的。
如果默认行为不符合,我们可以手动选择字符串,它就会按我们选择的字符串精确搜索
如果这个快捷键不符合你的要求,可以自行修改
有时候我们为了排查问题,需要打印一些东西,其实大部分情况下这属于一种模板操作
如下图,复制要打印的变量,然后输入自定义代码片段
"log打印": {
"prefix": "clog",
"body": ["console.log('[ $CLIPBOARD ] >', $CLIPBOARD)$0"],
"description": "log打印",
"scope": "typescript,typescriptreact,javascript,javascriptreact"
},
其实可以通过设置宏一步完成
也可以安装插件实现,类似的插件有很多
我举其中一个,感兴趣的可以自行搜索console关键词就行
marketplace.visualstudio.com/items?itemN…
在此顺便推荐一个非常好用的vscode代码片段生成工具
snippet-generator.app/?descriptio…
举个例子,把自己常用的代码片段或webstorm里好用的代码片段转移过来
查看代码时不需要进入对应文件,甚至都不需要鼠标hovre就能知道一段代码到底是什么类型
看到紫色的加粗属性我就知道它是只读的
看到绿色斜体我就知道它是枚举,紫色斜体是枚举值
看到黄色下划线我就知道它是被async修饰的方法,我下意识就会考虑到要不要加await调用,虽然eslint之类的也能检测到,但它只会一刀切的全部警告。实际上并不一定要加await修饰,所有都警告一定是好的吗?无用的警告,甚至错误的警告只会影响写代码的心情。它应该表达一种语义,用我喜欢的不同于变量,属性之类的其他颜色就很好
资源管理器以及源代码管理面板里的功能tab是可以拖动或者隐藏的
可以隐藏不想要的tab让资源管理器更加清爽
也可以把一些常用的gitlens的tab拖出来,让git视图空间更大,更清晰
默认情况下,如果一个文件夹下面只有一个文件夹,那么这两个文件夹会合并展示
如下图,style的下层文件夹是public吗?
不,其实是css,这种不统一的展示至少会让我有些困惑
更改如下配置即可展示为下图样子
"explorer.compactFolders": false
有时候我们安装使用一些工具时需要修改配置文件或是host文件啥的,那些文章一般都会说使用vim之类的命令,说实话真的很难用,不仅看着不清晰,修改更是不方便。如下图
其实vscode提供了一个code命令,可以很方便的打开文件或文件夹,同样是修改上述文件
有时候我们在启动项目时会出现一些报错需要通过百度去解决
这时候就需要去搜索一些终端打印的关键字,配置自动复制的话就可以省去手动复制的操作
"terminal.integrated.copyOnSelection": true
有时候选中了一些文本,但因为误触不小心把代码移到了别处,如下
这个因人而异,我是不需要这个功能,反而有时候因为误触让我很困惑,配置如下
// 改为false即可禁止拖动
"editor.dragAndDrop": false
有些包的版本使用了^修饰,导致版本并未完全锁定,有时候可能某个小版本有问题需要我们排查
这个时候就需要知道我们具体安装了哪个版本
通过下图我们可以知道当前安装的版本,最新版本,也可以直接进入查看细节
我们知道有些包是间接依赖的,并没有列在package.json里,我想知道node_moduels里到底有没有,可以直接搜索,以lodash为例,如下图
本人主用react,个人认为vscode对react的支持比vue更好,上面vue能做到的,react也都能做到,就不赘述了
这里简单再举个css的例子
顺便就此说一个相关的,属性的值,如className到底是字符串还是jsx表达式,vscode默认是自动推断的,也就是说className默认是字符串。
由此就出现了一个问题,比如本人项目中使用的都是cssmodule,其实需要输入jsx表达式。其实倒不如这样说,绝大多数属性值,包括className,其实我想输入的都是jsx表达式,可以进行如下配置
"javascript.preferences.jsxAttributeCompletionStyle": "braces",
"typescript.preferences.jsxAttributeCompletionStyle": "braces"
话说webstorm,你连大小写都不认识了吗,这样会生效吗,你还****跳转???真是**!
这里就不得不说webstorm的一大缺点,总是喜欢强行提示,给人一种仿佛很智能的感觉。所以很吃性能,容易卡顿
vscode不仅可以正确提示,对于错误也有很清晰的解释,并且提供了解决方案
作为一个使用webstorm远超两年半的开发者,vscode仅用半个月就通过它强大的代码提示与搜索及代码跳转让我有更加高效的开发效率,难怪大公司的员工可以免费使用的情况下都不愿意看webstorm一眼,基本都在使用vscode。
本人最近在准备晋升材料,所以有点忙。且由于配置稍微有点多,为了不耽误大家阅读,我只截取了一部分功能。
如果读者老爷有遇到什么痛点都可以在评论区留言,我会一一解决,请相信我的没能力!等我晋升之后基本就不用写代码了,到时候会把文章补全并且就vscode的提效技巧开个专题
俗话说,工欲善其事,必先利其器。有一个趁手的编辑器可以极大提升自己的开发效率及幸福感。毕竟跟编辑器相处的时间甚至比跟对象相处的时间还要长╮(╯▽╰)╭
webstorm在某些人眼里或许很好用,但我愿称vscode为宇宙级编辑器(#^.^#)
也许,在程序员的世界,收费的并不一定就是最好的吧!!!
原文链接:https://juejin.cn/post/7344573753538789430
时写代码的时候多少会依赖编辑器里面的代码补全,敲几个字母就能补全一整个词。可是这么多年过去了,为什么代码补全还是像最开始那样,只能限定于一个词,而且毫无意义地按照字典表顺序排列呢?
传统的代码补全,一大篇毫无意义的推荐
想象一下,如果用【AI】来做代码提示会怎样,把更常用的结果放在前面,给出更长的推荐,甚至一行!
AI做代码补全,根据使用情况智能排序,甚至补完整个语句
【知名媒体纷纷报道】
近日我在浏览网页时,看到了机器之心、36Kr、猎云网等知名媒体对AI辅助编程产品-「aiXcoder」(www.aixcoder.com
SDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。
一分钟速览新闻点!
腾讯加入千模大战!微信上线“腾讯混元助手”小程序
王小川:百川大模型开源之后在社区总下载量已突破 500 万
蔚来:已侦破恶意攻击信息系统案件,相关嫌疑人已抓获
腾讯天美技术中心副总经理徐成龙离职,曾是《逆战》制作人
消息称小米汽车已试生产近 1 个月,最快年底开始量产
OpenAI 将于 11 月 6 日,举办首届全球“开发者大会”
Meta 公司因争抢计算资源发生内斗
深度绑定?苹果与 Arm 签署长达近 20 年的芯片合作协议
Android 14 正式版要“跳票”!谷歌 Pixle 8 首发新 OS
苹果每天花费数百万美元开发对话式 AI
PHP 8.3 RC1发布
WebStorm 2023.3 路线公布
国内要闻
腾讯加入千模大战!微信上线“腾讯混元助手”小程序
腾讯将于今日(9月7日)正式公布旗下大模型和AI聊天机器人,然而在 9 月 6 日,微信就已经揭示了相关命名和图标。根据小程序信息,“腾讯混元助手”的功能包括 AI 问答、AI 绘画,腾讯官方此前已经展示了写文案的能力。
此前报道,腾讯将在 2023 年腾讯全球数字生态大会上正式发布“混元大模型”,但并未提及是否面向公众开放。腾讯文档、腾讯云、腾讯广告、腾讯游戏等多个腾讯内部业务和产品,已经接入腾讯混元大模型测试并取得初步效果。(IT之家)
王小川:百川大模型开源之后在社区总下载量已突破 500 万
9 月 6 日,王小川创立的大模型公司百川智能召开发布会,介绍百川大模型在开源方面的最新进展。王小川表示,Baichuan-7B、Baichuan-13B 两款开源大模型在多个权威评测榜单均名列前茅,目前下载量超过 500 万次。他认为,百川智能作为有过搜索经验的创业团队,知道如何基于万亿互联网数据精选、筛选优质垂直行业数据,进行去重、反垃圾训练,也因此,百川在训练语料上面的能力,帮助 Baichuan-7B 开源后在中英文主流任务上的表现全面超越了 LlaMA2-13B。
蔚来:已侦破恶意攻击信息系统案件,相关嫌疑人已抓获
据此前报道,蔚来汽车确认2021年8月之前的部分信息数据被黑客窃取,黑客向蔚来汽车勒索1567万元等值的比特币。随后,蔚来汽车创始人、董事长兼CEO李斌也公开向用户表达歉意,称会对此次事件给用户带来的损失承担责任,并表示坚决不与犯罪行为妥协。而在9月5日晚,蔚来官方正式公布了该事件的调查结果。
腾讯天美技术中心副总经理徐成龙离职,曾是《逆战》制作人
腾讯天美工作室副总经理徐成龙(Floppy)日前已正式离职。如今,徐成龙已离职两周,暂未获知他接下来的去向。而他的领英个人主页显示签名为 “what is metaverse? we must know. we will know.(什么是元宇宙?我们必须知道,也将会知道。)”
消息称小米汽车已试生产近 1 个月,最快年底开始量产
近日,多家媒体实探北京亦庄小米汽车工厂,发现已开工,量产落地箭在弦上。
据界面新闻报道,一位接近小米汽车的知情人士透露,小米汽车现在正处于试生产阶段,这项工作开展不足一个月。目前小米每周生产大约 50 辆样车,夜间工人很少。上述知情人士表示,「小米汽车拿到工信部的批文预计在最近两个月,最迟年底前可获批,然后可以开始量产。」目前,小米汽车亦庄工厂又在大规模地招聘车间工人,招聘规模在 100 人上下,平均薪资在 6000 至 7000 元,每日工作时长为 8 小时,周末双休,随时入职。
国际要闻
OpenAI 将于 11 月 6 日,举办首届全球“开发者大会”
9月7日,OpenAI在官网宣布,将于11月6日在美国加利福尼亚州旧金山,举办首届全球 “开发者大会”—— OpenAI DevDay。OpenAI首席执行官 Sam Altman 表示,我们期待在开发者大会上展示,OpenAI的最新研究成果,帮助开发人员构建新的工具。大会报名地址:https://devday.openai.com/
Meta 公司因争抢计算资源发生内斗
Meta Platforms 的大模型 Llama 和 Llama 2 作为 OpenAI 和 Anthropic 私有模型的开源替代而备受好评,但对大部分参与该项目的科学家和工程师来说,称赞来得太迟了。知情人士透露,参与 Llama 项目的研究人员很多已经离职了,原因是与公司另一个研究团队在计算资源上的内斗。另一个相竞争的模型已被 Meta 放弃。生成式 AI 需要大量的计算资源,需要专用芯片,而芯片是不会免费提高的。科技巨头通常比其它公司拥有更多的计算资源。但即便如此,它们的计算资源也是有限制的。人才外流凸显了大型科技公司在留住 AI 研究人员上面临的挑战。知情人士称,2 月发表的 Llama 论文的 14 名作者中,一半以上已经离开公司,其中几位加入了 AI 创业公司或其它大公司。(Solidot)
深度绑定?苹果与 Arm 签署长达近 20 年的芯片合作协议
9 月 6 日消息,英国芯片设计公司 ARM 于当地时间周二提交的最新 IPO 文件显示,苹果公司已经与 ARM 就芯片技术授权签署了一项“延续至 2040 年以后”的新合作协议。周二,ARM 在最新提交的文件中公布了首次公开募股(IPO)的定价,每股 ADS 定价在 47-51 美元之间,IPO 规模最高 520 亿美元。Arm 于 9 月 5 日起在纽约向投资者开始路演,预计这将是今年全球规模最大的 IPO。(网易科技)
Android 14 正式版要“跳票”!谷歌 Pixle 8 首发新 OS
近日,Android 开发者 Mishaal Rahman 在社交平台透露,Android 14 源代码推迟到下个月发布。手机厂商们原本以为 9 月份就可以为老机型推送 Android 14 正式版更新,但是现在消息称谷歌决定将正式版推迟到 10 月份上线。谷歌已经宣布,将于 10 月 4 日发布旗舰 Pixel 8 系列,这意味着 Pixel 8 系列将会率先使用 Android 14 正式版。
一般来说,Android 大版本更新会率先上线,厂商推送给老机型,然后谷歌再发布 Pixel 系列旗舰,出厂预装新版本 Android。但是目前来看,今年的 Android 14 将会打破这一惯例,谷歌将 Android 14 首发权留给了 Pixel 8 系列。(快科技)
苹果每天花费数百万美元开发对话式 AI
据 The Information 报道,苹果将用于构建人工智能的预算扩大到每天数百万美元。据知情人士透露,其目标之一是开发一些功能,如用户仅需使用简单的语音命令,就可让 iPhone 自动执行涉及多个步骤的任务。例如,你可以告诉 Siri,「使用最近拍摄的 5 张照片创建一个 GIF,并将其发送给朋友」。
程序员专区
PHP 8.3 RC1发布
PHP 8.3 发布了首个 RC 版本,修复了 GH-11937 bug;引入 Zend 保护点位以解决 _debugInfo 问题;修复了 GH-11790 bug;修复了 oss-fuzz等,具体可查看发布说明:https://github.com/php/php-src/blob/php-8.3.0RC1/NEWS
WebStorm 2023.3 路线公布
本次更新中,WebStorm 团队主要关注解决现有问题点,特别是类型导入、TypeScript 服务和单体库等内容。同时还会完善新功能,如改进的错误格式化和语言服务器集成,并添加对新版本语言和框架功能的支持。此外还计划进行性能优化,尤其是解决卡顿问题。以下是WebStorm 2023.3 的主要亮点:在WebStorm中完善新增功能、支持新的CSS功能、Type-only导入改进、JavaScript和TypeScript的增强功能等,具体可查看:https://blog.jetbrains.com/webstorm/2023/09/2023-3-roadmap/
观点
*请认真填写需求信息,我们会在24小时内与您取得联系。