我们只用绿色的食品原料
爱游戏app下载ios零食加工厂,只为您的健康着想
本文最初公布于 phaazon.net 网站,经原作者授权由 InfoQ 中文站翻译并分享。最近,我一直在实验种种编辑器,花了不少时间设置和使用它们。
主要有:neovim:我日常的主力编辑器,险些所有项目都市用它。IntelliJIDEA:用来敷衍 Java 代码库。VS Code:我主要用于 Rust、TOML 和 Markdown 中。emacs:我很喜欢在 Haskell 和 Rust 代码库(以及 YAML/Markdown/TOML)上使用它。
DOOM Emacs:以前见同事用过它(UI 的“统一”感温顺滑体验给我留下深刻的印象),所以我实验了一下。atom:GitHub 的编辑推荐,主要用于 Rust、Haskell 等。本文主要谈论小我私家对这些编辑器和该领域现状的看法(不喜勿喷)。
我使用 vim,尤其是 neovim 已有十多年。首先,我会解释一下自己现在的事情流程、我对编辑器看重哪些方面。固然,文章仅是一家之言,不代表其他人的情况。
一款强大的编辑器应该具备哪些要素键盘结构我是法国人。我用的键盘结构可以快速输入法语并举行编程。其实,我用英语输入的次数更多,也许应该选择其他键盘结构,但现在用的这个体验很不错,所以一直用它。这个键盘结构叫 bépo。
它要求我用所有手指打字,而且键盘上的每个键都被分配了一个指头。这样可以增强肌肉影象并减轻手腕疼痛(当我在键盘上打字时手腕险些不动)。打字准确和舒适的附加利益就是打字很快(我的打字速度为每分钟 120 到 130 个单词)。
不外,我认为编程时,速度并不重要,所以这里最重要的部门是舒适度:无论输入速度如何,手腕都不会动。模态编辑器模态编辑器之所以这么好用是有许多原因的。
首先,我很讨厌被迫使用鼠标来完成某些明显用键盘就能搞定的事。例如,我在自己的机械上运行应用法式只需用alt d,法式名称(自动完成会补足法式名称)并按回车。
所有这些全都用键盘完成。这种方法是针对 firefox、kdenlive 等法式的。
至于终端应用法式,我只需要在终端中输入并自动完成即可。简言之,我认为用鼠标在编辑器中的光标周围移动太贫苦了,尤其是我们大多数时间都在写代码(即敲键盘),因此,用鼠标移动意味着要多次在键盘和鼠标之间切换。
也许你不在乎,这对你来说很酷,但对我而言,这确实是很恐怖的体验。另外,非模态的现代编辑器通常使用箭头键来移动光标,但这些箭头键要么在你键盘很远的位置,要么就没有单独的按键,而要用组合键来取代。
这就是模态编辑器的第一个利益。它们更智慧地使用键盘来实现简朴而常用的功效,例如四处移动。第二个利益是它们另有非模态编辑器的模式(即正常模式),你会有一个完整的键盘 / 许多按键来绑定常用的许多鼠标行动。
你可以将编辑器划分为几个缓冲区、在缓冲区间移动、跳转到段落开头、搜索和替换、将行动注册为宏并重播它们,等等。所有这些甚至都不用挪动手腕。如果你习习用鼠标,那么这里的学习曲线会很陡峭,但一旦你克服了心理障碍,我以为再回去用鼠标就会很是不适应了。
我喜欢四处移动法式员在编程时有几种气势派头:在模态编辑器中使用箭头按键或h j k l移动,看光标在文档中的移动方式就能看出来。通常他们会按住一个键,直到光标到达目的行,然后再按下另一个键,直到光标到达给目的列,最后再细调光标位置。使用鼠标,直接点击想要放置光标的位置。
使用相对数字。这是第一种气势派头的增强版本:他们通常使用相对数字来定位要快速跳转的目的行,这样就不必按上 / 下偏向键了。
他们会检察代码行的行数,输入目的数字就跳转已往了。接着使用 vim 中的典型行动,例如$(转到行尾)、f(转到在 f 之后键入的下一个字符的第一个匹配项,例如f(将使光标移至下一个 (上)、%(转到匹配的定界符)或w(转到下一个单词的开头)/b(转到上一个单词的开头)等,在一个代码行上快速移动(这种方法也可以跨行事情)。绝大多数法式员都属于这几种气势派头之一,但实际上,我自己是个异类。
我使用h j k l和第三组中形貌的 vim 的所有行动(我用的行动还要多许多),但这都取决于我需要移动的距离。如果我的光标位于一个单词上,而且我想移至与我的光标在同一行上很是靠近的另一个单词的开头,那么如果相隔三个单词,我将只输入www(或者 3w)。如果距离较长,我会使用一个名为 [EasyMotion] 的工具。
Easymotion 确实是一个很棒的工具。它有几种模式,详细取决于你要执行的移动类型:按行:此模式允许你跳至当前(或所有打开的)缓冲区中的任何行。
按单词:此模式允许你跳转到当前(或所有打开的)缓冲区中的任何“单词”。按字符:如果单词模式无法跳转到特殊的运算符或字符(因为无法识别为单词),则可以使用此模式跳转到当前缓冲区(或所有打开的缓冲区)中的任何字符。它另有其他一些模式,可是我从来没有真正为它们找到对应的用例。
我习惯的做法是将三种模式映射到<leader>l、<leader>w>和<leader>c上。在我的当前缓冲区中键入SPC l会发生:键入任何高亮显示的字符将使我的光标跳至该字符。
对于单词也是如此,下令是SPC w:对于字符模式,输入 SPC c 后我必须按另一个字符(我想跳到的字符)。假设我们要跳转到一个 #(不是单词的一部门),则输入:SPC c #:这种移动方式初看上去并不直观,但一旦习惯就离不开它了。其他模态技巧对模态编辑而言,以下是我希望编辑器具备的功效列表,固然不止这些:C-i和C-o:这些使我可以跳转到缓冲区中的某个文件 / 某个位置,然后返回到C-o之前我所在的位置,或者输入C-i再跳已往。
宏和寄存器:我可以指定单个按键将内容粘贴到差别的寄存器(如剪贴板)中。例如,我可以使用"tyi在t寄存器中添加一些行("是行动触发,t是寄存器编号,y和i是首尾字母,(是匹配值),然后用"tp剪切这部门内容。宏可以通过指定按键来实现更强大的编辑控制,q关键字是触发键(例如qa会将之后的按键行动注册到a宏上),然后使用@a重播该宏即可。所有基本的 vim 移动方法,例如d(删除)、y(复制)、c(更改),t(转到要搜索的字符之前的字符),%(转到另一个定界符),等等。
以及更庞大的文本操作,例如“让我们更改此函数参数列表中的内容,并用(定界”:ci(。总之,编辑代码时我们需要模态功效。编辑器下面就详细讲讲前面提到的那些编辑器。
我会对它们揭晓自己的看法,凭据我的编程习惯给出它们的优缺点评价。neovim我现在使用 neovim 的 TUI 版本,因为到现在为止,这带给我最稳定、最快、最简朴的 neovim 体验。我实验过多个 GUI 版本,但没有找到想要的工具——主要原因是它们险些都使用 Web™技术,这对我来说是不行接受的。我应该详细说明一下最后一点的原因。
为什么不使用 Web 技术:在盘算机上编辑内容与 Web 技术无关。其他许多事情都适适用 Web 技术,但在许多层面上,在编辑器中运行庞大的 JavaScript VM/CSS 引擎并不是什么好事情(性能是第一个贫苦)。大多数时候,基于 Web 技术的编辑器需要花费许多时间,甚至 VS Code 都是如此——我的日常编辑器是 neovim,它能 在 23ms 内加载 差不多 50 个已安装的软件包(你可以使用:profile举行分析以获得这个数值)。
而 coc.nvim 约莫需要 12ms。剧本。
用 JavaScript 或 CoffeeScript 编写剧本对我来说很难。npm 是有史以来写得最糟糕的软件之一。请不要再让我用它。我的 neovim 设置这里,我先容用的几个插件。
我认为大家应该相识这些知识,不要还是把 vim/neovim 当成是过时的编辑器。事实并非如此。ryanoasis/vim-devicons添加许多 unicode 图标以便其他包使用,以提供更时尚、更性感的界面体验。
sainnhe/sonokai我正在使用的颜色方案。它与 DOOM Emacs 很像,只是对比度略低。neovimhaskell/haskell-vimneovim 的 Haskell 语法支持。rust-lang/rust.vimneovim 的 Rust 语法支持。
plasticboy/vim-markdownneovim 的 Markdown 支持。neovim 已经为 Markdown 提供了很好的默认支持,可是这个软件包有一些很酷的功效,例如折叠。因为我经常使用折叠,所以很喜欢用它。
mzlogin/vim-markdown-toc一个很是酷的软件包,提供了一种在 Markdown 缓冲区中建立目录的方法,并让 neovim 在编辑标头时自动更新 section。tikhomirov/vim-glslneovim 的 GLSL 语法支持。cespare/vim-tomlneovim 的 TOML 语法支持。
ElmCast/elm-vimneovim 的 Elm 语法支持。idris-hackers/idris-vimneovim 的 idris 语法支持。posva/vim-vueneovim 的 Vue.js 语法支持。
baskerville/vim-sxhkdrcneovim 的 sxhkd 支持。norcalli/nvim-colorizer.lua一个超酷的扩展,可以自动更改包罗十六进制值文本的配景颜色,例如 #f8324F 或 #42cf69。airblade/vim-gitgutter我安装的最好的插件之一。
它提供了在编辑 git 版本文件时在缓冲区中看到的标志(添加、修改、删除等):它能做的事情另有许多,甚至可以预览 hunk,在编辑器 内部 暂存或抛弃它们,对我来说太好用了。tpope/vim-fugitive为 neovim 提供 git 中你喜欢的所有功效,包罗 diff、解决合并冲突、编写提交消息等。可是我还不太明确这个插件在一般情况下如那边理 fixup 和 squashing 问题,因此,我仍然倾向于使用下令行。
rhysd/git-messenger.vim这是一个 blame-at-cursor 工具。其实,它也没那么有用,因为 fugitive 已经有了一个 git blame 窗口,能用 commit 注释每一个代码行。有时我会用这个,但也可能会放弃它。tveskag/nvim-blame-line在代码行的右侧内联一个 git blame。
很像 VS Code 中的默认 git 插件。junegunn/fzf.vim如果你只想安装 一个 插件,那留下来的肯定是它。
它有许多功效:打开文件、git 文件、缓冲区、rip-grepping、搜索历史记载、下令、颜色方案等等。顾名思义,它使用fzf作为后端,因此你会获得很是酷的模糊搜索体验(其他编辑器很少有这么棒的搜索——例如,你可以键入一些内容,然后放一个空格并再次输入,就能快速匹配效果了)。
machakann/vim-highlightedyank很有意思的包:它能高亮显示你拖动的线条 / 工具以获得更好的视觉反馈。neovim 默认竟然没有这个功效。liuchengxu/vista.vim我经常使用这个包来获取符号树,但我现在不太满足它的输出,可能也会扬弃它。neoclide/coc.nvim它是 neovim 现在最好的自动完成引擎。
我也用过其他选项,例如 ale,但这个包是王牌。它为你提供了多种语言的 LSP 补全。它有一个集成的市场,可安装新的 LSP 服务器和集成,它甚至还支持一些完全不相关的工具(有点奇怪,我认为这些应该是独立的插件),例如 coc-explorer(它是 NERD Tree 的替代),coc-snippets 等。tpope/vim 注释轻松注释 / 取消注释行,而无需自己插入注释符号。
liuchengxu/vim-which-key就像 emacs 的 which-key,但适用于 neovim。正确设置后,它将为你提供一个可行的键绑定的可视列表。我认为它没什么用(或许有人安装的插件带许多键绑定,就会喜欢它吧),可是它看起来很酷。
itchyny/lightline.vim看起来很酷的状态行。SirVer/ultisnipssnippet 支持。
ultisnips 的代码片段引擎能力很强,例如通过 shell、viml、python 等举行插值。honza/vim-snippets常用语言和文件花样的 snippet 集。junegunn/vim-easy-align一个很是简练的插件,只需点击几下即可轻松对齐文本 / 表格。
liuchengxu/vim-clap它有一个现代化、快速的用户界面,在其中统一所有可能的搜索 / 模糊查找器源。不幸的是这个插件在我这里还不够稳定,因此我还在继续使用 fzf。
easymotion/vim-easymotionneovim 的优点它很快。真的是立刻启动。无论我使用的是哪种终端(纵然我当前使用的是 Alacritty),移动、转动等操作都市很流通。
neovim 的插件和效果确实很棒。我很是喜欢 vim-gitgutter;我也很喜欢着色器插件。现在为止,coc.nvim 一直很好用(大部门情况下)。
EasyMotion 简直是我的情人。fzf 太快了,快如闪电。neovim 的社区对他们的事情充满热情,新版本添加了许多很是酷的功效,我们很快将它们引入新的插件中,例如弹出 / 浮动窗口 / 用于 linter 注释的虚拟文本等。
它是轻量级的:你的内存不至于不堪重负。我还没提过 vim/neovim 的杀手级功效:help页面。我认为没有其他软件可以提供如此精彩的资助页面。
真的,请实验一下。你想知道如何设置 coc.nvim 吗?只需键入:help coc-nvim即可。带有插件治理器(我小我私家使用 vim-plug,另有其他许多选项),它们能让你的生活变得越发轻松。neovim 的缺点只管我喜欢 TUI 的速度(到现在为止,我确实还没见过更快的编辑器),但 TUI 对我来说,还是很烂。
例如,如果你将一个窗口分成两个缓冲区,则你想要挪用的垂直“标志”“边缘”都是实际的 Unicode 字符。终端的事情机制可以忽略那些字符,但仍会给人很笨的感受。如果你想要 minimap 或某些文本周围的细边框,或者想要稍微庞大一些的视觉反馈,基本上都是做不到的。
neovim 的 GUI……不切合我的期望。它们大多数都是基于 Web 技术的,因此对我来说不是很好的选项。其他基于 Qt 的客户端感受有些过时了。
也有人想要做些新的 GUI,但他们还没有准备停当。coc.nvim 有时会感受很奇怪,容易出问题。例如在编辑 Java 时,实验跳至符号的界说(或只是向上查找符号)时,它经常会超时,体验很差。
在编辑器运行时更改我的颜色方案是在浪费时间,而且会造出来许多损坏的语法高亮模式 bug。真惋惜!IntelliJIDEA这个编辑器,我只能简朴谈一谈,因为我才开始在事情中使用它(社区版)。我用的是原始版本,险些没有修改。
我只用它编辑 Java。IntelliJIDEA 的优点它对 Java 的支持确实很完美。
它能为你做许多事情,其中一些真的给我留下深刻印象:允许我在函数内选择代码块的重构机制,要求编辑器“将其移至专用函数中”。其实,所有编辑器都可以做到这一点,但令我印象深刻的是,IntelliJIDEA 能找出需要捕捉的变量并将其作为函数的参数,然后在替换要移动的块时自动通报它们。真的很整洁。
查找符号、查找实现的函数、继续的类、超类……速度都快如闪电,而且都可以很好地出现给你,我喜欢。语法高亮很不错。我特别喜欢 var 声明以及将参数通报给函数时的内联类型说明。
IntelliJIDEA 的缺点我正在使用社区版,它仅支持 Java 和其他一些设置语言。你没有 profiler 这样的工具,未来要是能加进来就太好了!只管编辑器的异步部门令人印象深刻,但有时它会时不时索引项目,如果你使用的是条记本电脑,那就做好电脑全速运行的准备吧!风扇会发出地狱般的声音,机械会迅速变热。
我实验了 Vim 集成,但无法正确地与 bépo 键盘映射搭配使用。我无法重新映射某些运动和 / 或模式开关,效果只能遗憾地禁用它。没有 Vim 支持,纵然编辑器有许多快捷键,你还是要用鼠标来执行一些很是基本的任务。
VS Code这个编辑器是很重要的,因为它是微软的编辑工具。大家似乎都很喜欢 VS Code,我也能感同身受。它的 UI 流通、快速——要知道这可是基于 Web 的编辑器。LSP 支持显然是很专业而完美的。
它有许多社区插件、主题和集成。就算它是基于 Web 的,总的来说,我也一直很喜欢它。VS Code 的优点编辑器 /UI 的流通度。
语言支持很专业,而且用它编辑代码感受很可靠。数以百万计的插件。大型社区和今天的大多数人都在用它,所以我想如果你遇到什么贫苦,随便问一下应该就能获得谜底。
VS Code 的缺点究竟,它还是用 Web 技术编写的。在所有基于 Web 的编辑器中,它是最快的,但如果你习惯使用 vim/neovim,就很难满足它的速度了。vim 集成不够好 / 无法正常事情(我实验将 h 映射到 c,请记着我用的是 bépo 键盘结构)。总之就是没法用。
emacs 和 DOOM emacs我最近一直在使用 emacs(原始版本),因为我看到一位同事在使用 DOOM emacs,就开始实验了。这两款编辑器放在一起先容,因为它们很是像。在我看来,emacs 和 DOOM emacs 的关系可以用一个词来归纳综合:团结。
我不知道他们是怎么做到的,可是所有插件相互之间都融合得很好。我使用 ivy 界面做自动完成和模糊搜索,一切都做得很好。UI 很是漂亮,主题很棒(我喜欢默认的深色主题 DOOM One),编辑器很是快——固然还是比 neovim 慢,尤其是在转动时,但总比基于 Web 的编辑器快得多。
emacs/DOOM emacs 的优点一旦设置正确(更好的默认设置等),这个编辑器就会给人很现代化的感受(就像你在 VS Code/atom 中体验的一样)。它很流通且设计良好。Evil 模式(Vim 模式)对我而言是最好用的(固然,除了 vim 和 neovim 自己)。
它们涵盖了险些所有内容,甚至还支持 EasyMotion!你可以使用 Lisp 编写 / 设置剧本,这真是太好了!Lisp 是一种老派的精英,它已经存在很长时间,而且仍然给人新潮的印象。我很喜欢这一点。如果你使用的是 DOOM emacs,那么就能免费获得许多小实惠。
它的模块方法效果很好,并提供了一种很是新颖的方式来启用 / 禁用功效。社区有大量资源可以帮你学习使用 DOOM emacs,纵然你不计划使用 emacs 或 DOOM emacs,我也强烈建议你看一看。例如,我就是通过这种方式发现了我现在在 neovim 中使用的 which-key。
LSP 集成很是好用。它会为你下载服务器,如果你打开的文件从来没有毗连过服务器,它会礼貌地询问你是否想要这样做。总的来说,emacs 和 DOOM emacs 比 vim 或 neovim 等编辑器更具交互性,我认为这种方法更好用。它使用 gtk 作为 Linux 上的主后端。
我以为这一点很值得一提,因为它不是基于 Web 的!Magit 是一个很棒的工具。Org-mode 也确实很棒,虽然我以为它对我来说太大了。daemon 模式很厉害,我认为所有编辑器都应该有这种工具。
它允许你启动一个 emacs 实例并将 emacsclient 毗连到它,从而彻底制止了加载时间。很是厉害,很是有用!emacs/DOOM emacs 的缺点浏览大量代码时会泛起卡顿,有时让人感应很不爽,特别是当你习习用 vim/neovim 的话。大多数时候,这应该没什么问题,可是请记着,在 emacs 中转动一直是一个问题。
只管这甚至可以看作是一个优点,但我认为 emacs 的所有精彩插件让它膨胀得太厉害了,这对我来说是个问题。例如,Org-mode 是一个很棒的软件,如果它是一个独立的应用法式就好了,能让更多的人受益。开始使用 emacs,意味着你的盘算秘密运行 emacs 以及 emacs 中的所有应用法式。它甚至有一个 IRC 插件和一个电子邮件阅读器插件!我不确定这是怎么回事,可是 LSP 服务器感受……同步吗?首次打开文件时,LSP 服务器启动,你需要等候几秒钟才气进入文件。
我真的不知道这是否是因为设置的原因,但总之感受不爽。emacs 的默认设置确实很是糟糕。而且为了让整个历程像 DOOM emacs 一样舒心,你需要花费大量时间阅读文档并调整设置。我很喜欢这样做,但到头来……为什么 emacs 不从一开始就设置好这些默认值呢?这是出于历史原因,然后现在没有人在乎吗?atom最厥后谈 GitHub 的编辑器 atom。
我记得我首次运行 atom 时的第一反映是:“这个编辑器真漂亮。”默认的颜色方案 One 是大家都熟悉的通用颜色方案。
在许多差别的编辑器中都有这个方案的 fork。对我来说,atom 看起来很像 VS Code,可是前者的 UI 比力漂亮——与 VS Code 相比,我更喜欢 atom 的 UI。它的 UI 流通且很是洁净。从 LSP 集成到 Markdown 预览和 Vim 模式,你都可以找到许多扩展 / 插件 / 主题。
atom 的优点对我来说,atom 的杀手级功效是它能告诉你,你正在按下的按键绑定了(或清除了)哪些下令。很容易调试键绑定问题,我希望有更多的编辑器有同样的体验。其他编辑器也有类似的功效,但不如键绑定的 echo 模式那么好用。
它的主题很是酷,整体的打字体验 / 自动完成历程很是可靠且一致。有许多可玩的插件。atom 的缺点Vim 模式。
它对我来说并不完整,因为它也不能很好地支持我的 bépo 键盘结构。更糟糕的是,他们在alt-gr上有一个怪异的错误(他们在设置中称其为altgraph),无法正确识别它。有时它可以事情,但我从不记得要解决此问题所必须接纳的步骤,而且在大多数情况下,我花了许多时间只为这么一个很是基础的功效而已。
太慢了,你能感受到 Web 世界的恶意!有时,编辑器更新后插件会损坏,然后你就少了一个功效。我在使用其他基于 Web 的软件(例如 GNOME 桌面情况)时视察到这个问题,这让我越来越怀疑这种技术选择。总结当开始编程时,我记得见过有人谈论 IDE/ 编辑器之战。
如今,由于我实验了许多编辑器,因此可以说并不存在所谓的编辑器战争。所有编辑器都有自己的缺点,选择合适的编辑器往往取决于小我私家习惯和履历。我是键盘喜好者(我自己做键盘),而且我真的很喜欢打字——纷歧定是代码,因此 emacs 和 vim 在那时是很显着的选项(我实际上是从 emacs 开始编码的)。
几年后,我开始使用 vim 和 neovim。一年前,我又开始实验 emacs,想要看看它发生了什么变化。效果我发现它多出来这么多有趣的事情!我喜欢测试编辑器,是因为每个编辑器都至少有一个同行没有的杀手级功效:vim 和 neovim 具有模态编辑功效,而且速度很快。
几十年来,它们一直是模态编辑的首选编辑器,而且所有运动、宏、下令和助记符在这两种编辑器中都是实现最好的。对我来说,IntelliJIDEA 有着最好的 Java 体验,并有令人印象深刻(很是有用!)的重构功效。它并不是提高你生产力的须要选项,但它会让你在使用 Java 代码库时感应轻松自在,我真的希望在我使用的编辑器中有这么一个插件!VS Code 有最佳的 LSP 实现,而且它的社区是最大的。
如果你喜欢基于 Web 的编辑器,那就不要浪费时间再寻觅了:它就是适合你的编辑器。emacs 和 DOOM emacs 具有流通、统一的界面,其中包罗许多精彩的插件和应用法式。你会很是中意 Org-mode、Magit 和其他许多插件!atom 具有用于键绑定的 echo 模式,用于主题和语法高亮显示的默认值也很棒,而且是市面上最友好的编辑器之一。
在所有这些编辑器上花了几周时间后,我对 vim/neovim 有了一些新看法:我以为并纷歧定就要用它们,尤其是我用上了 emacs/DOOM emacs 的 Evil 模式。在我看来,一个好的 Neovim 客户端可能是像 emacs 这样的 gtk 应用法式:流通、统一、具有精彩的默认设置和对 neovim 功效的全面支持,以及对 gtk 浮动窗口和弹出窗口的支持(因为它是 neovim 原生支持的,在 TUI 中感受有点贫苦)。我们有了许多不错的插件,可用于 git(fugitive/vim-gitgutter)、自动完成和语法高亮显示(coc.nvim/vim-lsp/vim-treesitter)。
我唯一缺少的是一个精彩的 GUI,它可以使用我们在 TUI 中要做的“hacks”来提供弹窗、“气泡”之类的工具。一旦有了好用的 Neovim GUI,我想这就会是我最喜欢的编辑器了。在那之前,我会一直坚持使用 neovim TUI,因为它与我想要的工具很是靠近。
我希望本文能对 vim/neovim 喜好者提供一些参考,资助大家相识现代编辑器的方方面面。这里我说的是 Vim 喜好者,但不是所有人。我们寻觅的工具都是纷歧样的,而这个优美的世界有这么多编辑器可供选择,这才是关键。
它们并不适合每小我私家,但每小我私家都有自己的最佳选项。原文链接:https://phaazon.net/blog/editors-in-2020延伸阅读:VS Code会“一统江湖”吗?-InfoQ关注我并转发此篇文章,私信我“领取资料”,即可免费获得InfoQ价值4999元迷你书,点击文末「相识更多」,即可移步InfoQ官网,获取最新资讯~。
本文来源:爱游戏app下载ios-www.dhrq007.com