工欲善其事,必先利其器。优秀的工具对于开发人员来讲必不可少,它们能助你打通任督二脉,工作效率大大提升。每个人都有自己用惯了的工具,本文将介绍6种我认为必备的工具,你不妨试试看。
direnv
direnv是一个shell扩展,当你用cd命令进入对应目录时,它会自动加载环境变量。
它超级省时,尤其是在处理多种项目时,这些项目都需要不同的ENV变量,甚至是相同ENV变量的不同值。direnv安装简单,甚至更容易编写.envrc文件,因为它只是一堆已经在.profile或. *rc文件中编写的export BLAH=BLAH语句。
当把.envrc文件退出目录之外时,direnv会自动取消设置这些ENV变量。是不是很方便!
Lighthouse/ Chrome开发者工具
Lighthouse(内置Chrome功能)是一个开源插件,用于检查网站性能。
从文本压缩到渲染阻塞资源,此工具扫描特定网站并生成一项报告以找出导致页面速度下降的原因。这对网站性能和可访问性都非常重要。
许多开发人员开始进行Web开发,主要学习组合美观的网站。然而性能原则经常被忽视了,其实性能与审美同样重要。
有些网站规模太大,负载了过多资源,以致于缓慢的网速无法支撑运行,或者网页浏览损耗移动设备的电池。不妨使用Lighthous,加速和优化您的网站。
注意:此工具也可以通过Chrome web工具在本地托管的web服务器上运行。Cmd+Alt+I→审核选项→生成报告。
Oh My Zsh
Oh My Zsh 是基于Z shell的美化配置,让您的终端强大而美观。
除了各种主题,便捷功能和内置默认值之外,您还可以使用各种扩展功能插件,包括Docker,Kubernetes Kubectl和tmux等。
我最喜欢的功能是tab命令补全和tab命令循环。只要反复按Tab键,便可以快速遍历目录和文件。
内核配置语句有多么神奇?在需要帮助的任何时候,它都会为我提供方案:
- [TIMESTAMP] USER:CURRENT_DIRECTORYVCS:(BRANCH) $
此Oh My Zsh主题便是geoffgarside,而我在iTerm2中的配色方案是Tango Dark(探戈黑)。在此处查看更多iTerm配色方案(https://iterm2colorschemes.com/)。
vim-plug 和 MELPA Stable
如果您是一个忠实的Vim或Emacs用户,就会知道有很多超有用的插件支持这两大文本编辑器,可以化繁为简。
从语法高亮显示到符号索引,这些插件可以带来些许便利,抑或让您的文本编辑器变成自金属音乐以来最新奇的事情。例如,查看Emacs Live的Clojure功能。
vim-plug和MELPA Stable分别是Vim和Emacs的插件管理器。使用这两大神器来安装所需的所有插件,为您提供完美的内置体验。
使用vim-plug安装/更新Vim插件
The Silver Searcher (Ag)
大体上说,The Silver Searcher (简称Ag)是一个智能循环的grep递归搜索。虽然之前介绍的fzf适合搜索文件名,而Ag则很适合搜索文件内容以查找特定标记和匹配项。
Ag搜索的优势在于它会自动忽略.gitignore文件夹中的文件。当grep-r在node_modules中抛出一堆不相关的匹配项时,Ag搜索会非常迅速,因为它只搜索重要的相关文件。
默认情况下,Ag输出结果还会为您提供行号。从技术上讲,您可以通过向grep提供大量参数来实现Ag搜索的所有功能,但Ag搜索的速度最终仍快几倍,并且会越来越快。
command-line fuzzy finder (fzf)
命令行模糊查找器(简称fzf)是一种模糊搜索工具,用于快速查找目录树中的文件。顺便说一句,它是由制作vim-plug的工程师(Junegunn Choi)编写的。
这个工具由Go语言编写,运行迅速。并且使用并发线程来划分和解决工作负载。
为了更好地使用fzf,我在shell配置文件中设置了以下两个别名:
- aliasv='nvim'
- alias f='v `fzf -i`'
我可以只键入字母v,然后输入文件名以在Neovim中打开它。将其与fzf结合使用以快速搜索特定文件。fzf的输出是带有完整路径的文件名。然后,将其作为参数传递给我的v别名。
结果如何?在Neovim中打开了Wicked快速文件搜索和Wicked快速文件。生活真是美妙。
好的工具甚至能提升幸福感。去试试这几种工具吧,相信你很快就会有这样的感觉!