【Atom】在一个中/大型项目中,那些好用而强大的atom功能

作为一个学生党,一开始使用atom时候并没有意识到atom一些小功能的巨大作用,直到自己实习参与了项目,才知道这些功能在一个项目中是能极大提高工作效率的开发利器

下面是一位不愿意透露其姓名的彭湖湾同学(其实就是我啦)的使用体会,我们姑且称之为W同学

1.通过关键字段全项目检索目标代码文件command+shift+F(mac)ctrl+shift+F(windows)

【场景一】:W同学在tower(一个团队协作工具)上接到了一个小任务,他要在公司运营的一个站点上站点模块里,对一个公告栏的bug进行修正

但这个模块并不是他写的,他并不熟悉。W同学一开始试图逐个打开文件并在里面寻找站点公告这一部分的文件代码,但这个文件嵌套得比较深,当W同学连续做了【打开目录A】--》【打开目录A中的目录AA】--》【打开文件夹AA中的文件AAA】--》【卧槽文件不在目录A!fuck!】--》【打开目录B】....同上 许多次之后,W同学意识到他所做的一切相当的傻逼,因为这导致找代码的时间占了他解决问题的90%的时间

【解决办法】W同学发现在目标代码里,有“站点公告”一行醒目的字段,并且他认为整个项目里只有目标文件含有这个字段,于是!他command + shift +F弹出一个搜索框,输入关键字段——“站内公告”

然后回车,atom开始在数K数W个文件的项目中通过“站内公告”字段寻找目标文件

点击该文件!于是在检索数K数W个文件后,W同学找到了这个SieNews文件。

2.通过关键字段在目标文件中定位目标代码:command+F(mac)ctrl+F(windows)

【场景二】:W同学通过方法一找到了目标文件,但现在又有了另外一个问题,在修改这个文件的时候他发现问题出在一个叫submit的函数上,但问题是这个文件的代码超过了1000行,虽然也不多,但是W同学想“偷个懒”,能不能直接定位找到那个函数呢?

【解决方法】:没错,和场景一一样,这次我们故技重施,敲command + F,弹出:

输入关键字Submit回车:

页面已经自动定位到了submit函数的位置!

诶,等等! 刚刚搜索框的上方提示“13 result found for Submit ”,这意味着,你搜索Submit时候,不仅是Submit函数,SubmitForm函数,SubmitText等等也会被纳入搜索的结果集,总共13个,那么Submit不在第一个搜索结果怎么办呢?——这时候你只要按回车,每按一次页面就会定位到下一个submit搜索结果里,看起来就像是“逐帧跳跃”

3.直接通过文件名全局搜索目标文件command+T(mac)ctrl+T(windows)

【场景三】W同学这次遇到了和场景一一样的问题,他想要搜索一个目标文件,但这次不一样的地方在于,他知道这个文件的名字是什么,这时候怎么全局搜索呢?

【解决方法】:command + T ,弹出

输入文件名,然后就能看到你想找的文件啦,然后只要点击一下,就打开了那个文件

4. 代码折叠让代码看起来更加简洁 alt+command+shift+{(mac)alt+ctrl+shift+{(windows)

【场景4】W同学接到一个任务——写一个响应式的静态页面,虽然没有复杂的逻辑在里面,但是仍然要写一大摞的函数。在做一些细节上的修改的时候,这看起来很杂乱无章。于是W同学尝试把每个代码块折叠,仅以函数名的形式展示

【解决方法】进入目标页面,敲 alt + command +shift + { ,(注意要依次按这四个键,不能同时按)看一下页面,所有代码块都被折叠了,只保留函数名在外头

【注意】:要撤销按alt + command +shift + }

【吐槽】四个键还真是很难按啊。。。

5.单个代码块折叠

【场景5】还是上面的那个问题,如果这个时候你只想要折叠一个代码块而不是所有代码块,这时候怎么办呢?

【解决办法】比如对这个函数,在光标移到函数名附近前它是这样的:

光标移到函数名附近后,出现了一些小箭头

点击const前的小箭头

代码块已被折叠

6.让导航上的文件在目录树中打开并且集中焦点

【场景6】W同学遇到有些烦人的问题,他在导航中打开了20+的页面,现在他想在目录树中找到这个文件。但是很不巧,这20个页面先后打开的过程中,目录树经过多次折叠,W同学已经无法直接在目录树中直接找到那个文件了

【解决方法】对在导航中的文件点击右键,在弹出的框里点击reveal in tree view

再回来看目录树,目标文件已经被打开

7.atom的其他快捷键操作

atom相关操作的快捷键还有非常多,感兴趣的同学可以来看简书上的这篇文章http://www.jianshu.com/p/e33f864981bb 对于其他的快捷键 我个人比较喜欢用的是其中两个快捷:

control + E移动到本行结束

control + A移动到本行开始

至于其他的一些快捷键,感觉对速度和效率的提升并不算大。当然了,具体如何操作,就是各人的爱好了

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ThoughtWorks

RESTful架构风格下的4大常见安全问题|洞见

伴随着RESTful架构风格的大量应用,一些本来难以察觉到的安全问题也逐渐开始显现出来。在我经历过的各种采用RESTful架构风格的应用中,某些安全问题几乎在每...

36840
来自专栏lulianqi

为什么需要多线程

对于这个问题可能很多朋友会说是为了高性能,个人觉得这是误解,多线程不等于高性能,从cpu(单核)的角度上看单线程才能带来最高性能。

18220
来自专栏FreeBuf

密码分析工具 – Pipal

在很多情况下,我们需要进行各种各样的分析工作,这里为大家介绍一款密码分析工具——Pipal。 Pipal是一款密码分析工具,功能主要是进行密码合集文件分析。说...

24070
来自专栏CSDN技术头条

移动云平台的基础架构之旅(二):云代码

云代码的由来 随着MBaaS的发展,取代移动企业应用程序平台的趋势也越来越明显。MBaaS系统为了让企业能方便快捷的开发自己移动应用程序,提供了诸多移动客户端支...

26760
来自专栏用户2442861的专栏

高并发服务端分布式系统设计概要(上)

http://www.cnblogs.com/ccdev/p/3338412.html

14130
来自专栏Java架构

百度Java架构师分享分布式锁的技术选型及思考锁和分布式锁总结

23720
来自专栏北京马哥教育

成吨提高开发效率的终极武器——自己开发workflow

之前我写过一篇关于提高 Mac 开发效率的文章,里面介绍了很多大幅度提升Mac开发效率的方法,遗憾的是那篇文章里并没有介绍 Alfred 这款神器。 然而转念一...

32740
来自专栏CSDN技术头条

创建一个分布式网络爬虫的故事

编者按:作者通过创建和扩展自己的分布式爬虫,介绍了一系列工具和架构, 包括分布式体系结构、扩展、爬虫礼仪、安全、调试工具、Python 中的多任务处理等。以下为...

26780
来自专栏phodal

设计博客系统的架构思考(上)——动态的无限可能性

虽然,我也想不起来为什么最近会陷入这样的大坑,但是我觉得我还是应该记录一下这些想法。从一个简单的MVC架构的博客系统,到我所使用的Django MTV的APP结...

212100
来自专栏FreeBuf

Windows用户自查:微软紧急更新修复Meltdown和Spectre CPU漏洞

1月3日深夜,微软发布了针对Meltdown和Specter的系统安全更新,而两个安全漏洞影响了几乎所有自1995年以来发布的CPU(不止Intel)。根据微软...

23980

扫码关注云+社区

领取腾讯云代金券