只要工具用得好,没有效率提不高

notepad++就像瑞士军刀,简单好用,功能多
notepad++就像瑞士军刀,简单好用,功能多

只要工具用得好,没有效率提不高。现在工具一大堆,各有所用,但是按照2/8原则,大家其实大多时候只用到了其中的20%的功能,如果能多用几个功能,同时结合多个工具一起配置,则能达到1+1>2的效果。

昨天碰到一个事,一个同学需要统计最近一段时间的团队经费最后的余额,由于当初记录每笔支出和收入的时候,只用记事本随便记了一下时间、金额以及少许备注,大致有一点格式:

面对这些记录你想统计最后余额,会用什么办法?可能大部分人会老老实实的一个个的加减吧。

其实日常比较简单的统计软件比如excel,但是excel需要比较规整的格式,上面的这个数据就不能直接复制到excel来求和的。不过上面的数据还是有规律可循的,比如所有金额前面都有冒号;所有金额后面要么是空格,要么是元字;支出和收入有区分。这样一来就可以巧用notepad++的替换功能来简单的编辑一下,让其符合excel的要求。操作如下:

1. 把金额数字区分出来,使用notepad++的替换功能,把所有的”:”全部替换成“:\t\t”,然后把所有的单一空格替换成“\t\t”,这样做主要是为了把我想要的金额提取出来,注意替换时要选择“扩展”(后续的替换功能都需要选中这一项),如下图所示:

巧用notepad++的替换功能
巧用notepad++的替换功能

替换后效果如下:

2. 由于支出的金额在统计时应该用负数表示,所以需要把支出的金额前面添加负号,操作为:把“支出:\t\t”替换为“   :\t\t-”,这样就变成了下面的样子:

3. 使用notepad++一个很实用的列选择功能,来把金额所在列抠出来,即按住ALT键后,选择金额这一列即可,然后复制到另一个新打开的notepad++标签中,继续编辑,看到的效果如下:(当然其中有一点不太规整的地方可以手动调整一下,比如,里面有一行中有两个金额相加,可以调整为两行)

4. 现在的数据除了元,其他都是金额了,现在需要把元子去掉,把多余的换行也去掉,操作如下:把“元”替换为空字符串“”,然后把连续的两个换行“\r\n\r\n”换成一个换行”\r\n”(如果一次换行不能达到效果,就再替换一次)。得到如下的效果:

5. 现在数据,就很清晰了,这个数据,就可以直接粘贴到excel里面,使用其各种统计功能了,比如:求和。

从这个例子中可以看到,只要原始数据本身有规律,基本都可以使用notepad++的替换和列选择功能来达到抠数据的目的,甚至可以达到一些更复杂的目的。若要写程序恐怕不是一会儿的事吧。

一点心得,我经常用替换和列选择功能来做一些数据量不太大的文本抽取,有时碰到的情况是,需要把一行有规律的字符串中的某些字段抠出来,常用的做法是先把字段前面的标记替换成“\r\n\t\t\t”,然后把字段后面的标记替换成“\t\t\t”,这样就又可以使用列选择功能直接抠出这一列字段了。另外有时间字段前后的标记不统一,这时候就可以考虑更高级的“正则表达式”替换功能。巧用notepad++事半功倍,当然notepad++有这些有意思的功能,相信很多其他的编辑器也有类似的功能可以用,在此抛砖引玉。。。

自定义eclipse快捷键

大家有木有发现,尽管eclipse的快捷键很多,但是仍然有很多常用操作没有快捷键,比如:跳过所有的断点、删除所有的断点等。但是后来才发现其实eclipse有很多操作可以有快捷键,但是默认没有提供,我们可以通过自定义eclipse快捷键的方式来满足自己的高效coding和debug的需求。

自定义快捷键意味着,可以添加可以添加的快捷键,同时也可以修改快捷键(如果你对某快捷键不爽的话)。

自定义eclipse快捷键的步骤

下面介绍下eclipse快捷键的配置方法,如下图所示:

自定义eclipse快捷键
自定义eclipse快捷键

在Windows–>Perferences–>General–>Keys里面可以设置所有eclipse的快捷键。打开可以看到只是部分的功能有快捷键,还有不少的功能没有快捷键,这些快捷键都可以自定义,比如要设置ctrl+shift+1为跳过所有断点,可以先在命令过滤文本框里面输入想要设置的命令或者操作的英文名称(这个需要意会了,比如调试相关的命令,可以输入“breakpoint”,就能找到,如果实在不知道叫啥,就拖动滚动条一个个的看吧),跳过所有断点肯定是和breakpoint有关,所以输入breakpoint,可以看到列表里面有了所有和断点相关的命令,选择“Skip All Breakpoint”,然后在“Binding”里面按下ctrl+shift+1,再在“When”里面选择“In Windows”即可。

快捷键的上下文(Context)

其中“When”是告诉你,你设置的快捷键的会在什么场景下可用,或者说上下文是什么,In windows表示所有窗口,该快捷键的命令都会执行。这个上下文的还有个继承的潜规则:

  • In Dialogs and Windows
  • In Windows (extends In Dialogs and Windows)
  • In Dialogs (extends In Dialogs and Windows)
  • Editing Text (extends In Windows)
  • Editing Java Source (extends Editing Text)
  • Debugging (extends In Windows)
  • Debugging Java (extends Debugging)

Schema

从上面的图片中可以看到快捷键设置中可以选择schema,默认的schema是Default,其实eclipse自带了emacs版的快捷键,喜欢emacs的同学可以使用这个schema。其中也有个潜规则,就是emacs schema继承了Default schema的快捷键,如果emacs的快捷键在Default中也有,那么emacs的快捷键优先级高,会覆盖Default的快捷键。

个人经验

想必不少人设置快捷键的时候担心会和其他快捷键冲突,所以不知道应该把某命令设置成什么快捷键。其实这个问题还好说,因为“Conflict”里面会告诉你你当前设置的快捷键和那些其他快捷键在什么场景上下文下冲突。经过我自己的测试,我发现一些的9个组合基本没有被eclipse使用到,大家可以放心设置自己的快捷键。即ctrl+shift+1~9,,希望能对大家提供参考。

Reference

eclipse的帮助文档快捷键章节:Help–>Workbench User Guide–>Reference–>Perferences–>Keys

notepad++的好用快捷键整理

notepad++是很流行的文本编辑器,它是我平时除了eclipse之外用得最多的编辑器,其快捷键很多,可能很少有人去关注它的快捷键,为了提高效率,特整理了notepad++的好用快捷键。

1. 文档切换

  • ctrl+tab 向右切换文档(当然在文档列表菜单弹出来时,可以用鼠标进行快速选择)
  • ctrl+shift+tab 同上,只是切换方向是向左的
  • 在任意文档中按下鼠标右键(按下后不松开),然后滚动鼠标滚轮,则可以快速选择文档
notepad++文档切换
notepad++文档切换

 

2. 关闭文档:ctrl+w

3. 查找和替换

  • ctrl+f 打开查找对话框(大家都知道)
  • ctrl+h 打开替换和查找对话框
  • ctrl+F3 找下一个选定的字符串(这个比ctrl+f好用很多)
  • ctrl+shift+F3 快速找上一个选定的字符串

4. 文本选择:

  • 按列选择文本区块:按住alt,然后点击鼠标并拖动,即可看到效果
notepad++中案列选择文本
notepad++中案列选择文本
  • 文本多选:按住ctrl后可以选择多个文本,选择如果编辑,即是对多处同时进行编辑(该功能需要在设置–>首选项–>编辑–>多列编辑中勾选上“启动(Ctrl+Mouse click/selection)”,这个功能默认是没有启用的)
notepad++中文本多选
notepad++中文本多选

5. 联想功能

  • ctrl+回车键 单词联想,只要你的当前文档中出现过就可以联想
  • ctrl+空格键 函数名联想(由于一般与搜狗拼音的快捷键冲突,所以会失效)
  • ctrl+shift+空格键 函数参数联想

6. 列编辑模式

列编辑模式是很有用的,他是利用了列选择文本区块功能,在选了一个列区块后,可以直接敲键盘写入你想写的东西,这样你所选的这一列的每行都添加了你敲入的字符,且每行添加的都一样。

但有一种场景,你可能希望在每行前面添加递增的数字,这需要你在进行了列选择后,进行按alt+c,然后设置插入数字的规则即可。

notepad++列编辑之给每行添加递增数字
notepad++列编辑之给每行添加递增数字

7. 编辑

  • ctrl+d 重复当前行(和eclipse中的删除当前行不同)
  • ctrl+L 删除当前行(记住咯)
  • ctrl+t 把当前行和上一行互换,但光标的位置不变
  • ctrl+shift+↑ 把当前行上移
  • ctrl+shift+↓ 把当前行下移
  • ctrl+g 弹出窗口,跳转到指定的行
  • ctrl+Q 添加或删除行注释(可以是多行)
  • ctrl+shift+Q 添加多行注释
  • ctrl+backspace 删除上一个单词或者符号
  • ctrl+delete 删除下一个单词或者符号
  • ctrl+shift+backspace 删除当前行的开头到光标处的所有字符
  • ctrl+shift+delete 删除光标处到当前行末尾的所有字符
  • ctrl+u 把所有已选择的字母转为小写字母
  • ctrl+shift+u 把所有已选择的字母转为大写字母
  • tab 缩进
  • shift+tab 反向缩进

8. 字体大小

ctrl+滚轮 选择一个文档后,试了就知道了

9. 代码块收起与展开

notepad++代码块收起与展开
notepad++代码块收起与展开

大家都知道点了展开可以把当前节点展开,点了收起可以把当前节点收起。但是有个比较有意思的功能是:如果你在点展示或者收起前,按住ctrl的话,会使该节点下的所有子节点也都收起或者展开,这个比较实用和高效。

  • ctrl+alt+f 收起当前节点级别的代码块(不影响子节点)
  • ctrl+shif+alt+f 展开当前及诶单级别的代码块(不影响子节点)
  • alt+0 收起所有节点代码块
  • alt+shift+0 展开所有节点代码块
  • alt+(1~8) 收起1~8级的节点代码块
  • alt+shift+(1~8) 展开1~8级的节点代码块

10. 多视图

点住一个tab不放,拖动到文档中间,然后松开即可看到打开新视图的菜单了(移动视图和复制视图,复制视图可以在两个视图中同时编辑同一个文件),很方便,两个视图之间也可以很方便的拖来拖去。

11. 快捷键定制

如果你觉得默认的快捷键不合适,或者某些常用的编辑或者其他操作功能没有快捷键的话,可以在“设置–>管理快捷键…”里面可以自定义快捷键。如下图所示:

notepad++快捷键定制
notepad++快捷键定制

 

在windows7中高效切换常用软件

我开发的过程中常需要在IDE、浏览器、命令行之间频繁的切换。我通常用快捷键在windows7中软件切换,因为我想尽可能少的使用鼠标。大家可能已经熟知windows的alt+tab和win+tab快捷键来切换软件,但当有其他软件打开时(比如email、音乐播放器等软件),你要在你常用的软件间切换就变得不太方便了。

最近我发现window7的任务栏上有一个更快捷的方法来切换软件,你可以使用win键+数字键(1~9)来打开任务栏上绑定的软件,数字和软件在任务栏的位置一一对应。如果某软件没有启动,按下这个快捷键后就会启动并打开这个软件;如果已经启动,按下这个键可以切换到这个软件的界面。你也可以用shift+win键+数字键(1~9)来新启动一个软件,不管这个软件是否已经启动。

把常用的软件放到任务栏的前面,就可以使用快捷键快速的切换这些软件——windows7中软件切换
把常用的软件放到任务栏的前面,就可以使用快捷键快速的切换这些软件——windows7中软件切换

如图我把我常用的软件放在任务栏的靠近开始的地方,这样我使用快捷键切换时,数字比较小,易于使用。现在我就可以使用win+1打开IDE,win+2打开浏览器,win+3打开命令行工具。在其他程序也都启动的时候,用这种方式来切换软件比使用alt+tab要快很多。启动他们也比使用类似Launchy的软件要快。我也可以使用shift+win+3来启动多个命令行工具。

译自:Piotr JagielskiSwitching Between Frequently Used Programs in Windows 7

eclipse最有用快捷键整理

在网上搜eclipse快捷键,可以搜出一大堆,大多罗列了n多的快捷键,估计大部分人看了以后都会头大的,我也头大,不过我一一尝试了一遍,整理出了eclipse最常用最有用,写代码必须用到的一些快捷键,大约只有网上快捷键大全的一半,减少大家的记忆量。如果大家把这些快捷键都很好的运用,写代码的效率一定会有提高。当然你也可以通过菜单栏中Window–>Preferences–>General–>Keys来查看和修改快捷键绑定。

编辑

Ctrl+1 快速修复(最经典的快捷键,就不用多说了,可以解决很多问题,比如import类、try catch包围等)
Ctrl+Shift+F 格式化当前代码
Ctrl+Shift+M 添加类的import导入
Ctrl+Shift+O 组织类的import导入(既有Ctrl+Shift+M的作用,又可以帮你去除没用的导入,很有用)
Ctrl+Y 重做(与撤销Ctrl+Z相反)
Alt+/ 内容辅助(帮你省了多少次键盘敲打,太常用了)
Ctrl+D 删除当前行或者多行
Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑ 当前行和上面一行交互位置(同上)
Ctrl+Alt+↓ 复制当前行到下一行(复制增加)
Ctrl+Alt+↑ 复制当前行到上一行(复制增加)
Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)
Ctrl+/ 注释当前行,再按则取消注释

选择

Alt+Shift+↑ 选择封装元素
Alt+Shift+← 选择上一个元素
Alt+Shift+→ 选择下一个元素
Shift+← 从光标处开始往左选择字符
Shift+→ 从光标处开始往右选择字符
Ctrl+Shift+← 选中光标左边的单词
Ctrl+Shift+→ 选中光标又边的单词

移动

Ctrl+← 光标移到左边单词的开头,相当于vim的b
Ctrl+→ 光标移到右边单词的末尾,相当于vim的e

搜索

Ctrl+K 参照选中的Word快速定位到下一个(如果没有选中word,则搜索上一次使用搜索的word)
Ctrl+Shift+K 参照选中的Word快速定位到上一个
Ctrl+J 正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在状态栏中显示没有找到了,查一个单词时,特别实用,要退出这个模式,按escape建)
Ctrl+Shift+J 反向增量查找(和上条相同,只不过是从后往前查)
Ctrl+Shift+U 列出所有包含字符串的行
Ctrl+H 打开搜索对话框
Ctrl+G 工作区中的声明
Ctrl+Shift+G 工作区中的引用

导航

Ctrl+Shift+T 搜索类(包括工程和关联的第三jar包)
Ctrl+Shift+R 搜索工程中的文件
Ctrl+E 快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)
F4 打开类型层次结构
F3 跳转到声明处
Alt+← 前一个编辑的页面
Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)
Ctrl+PageUp/PageDown 在编辑器中,切换已经打开的文件

调试

F5 单步跳入
F6 单步跳过
F7 单步返回
F8 继续
Ctrl+Shift+D 显示变量的值
Ctrl+Shift+B 在当前行设置或者去掉断点
Ctrl+R 运行至行(超好用,可以节省好多的断点)

重构

(一般重构的快捷键都是Alt+Shift开头的了)
Alt+Shift+R 重命名方法名、属性或者变量名 (是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)
Alt+Shift+M 把一段函数内的代码抽取成方法 (这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)
Alt+Shift+C 修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)
Alt+Shift+L 抽取本地变量( 可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)
Alt+Shift+F 把Class中的local变量变为field变量 (比较实用的功能)
Alt+Shift+I 合并变量(可能这样说有点不妥Inline)
Alt+Shift+V 移动函数和变量(不怎么常用)
Alt+Shift+Z 重构的后悔药(Undo)

其他

Alt+Enter 显示当前选择资源的属性,windows下的查看文件的属性就是这个快捷键,通常用来查看文件在windows中的实际路径
Ctrl+↑ 文本编辑器 上滚行
Ctrl+↓ 文本编辑器 下滚行
Ctrl+M 最大化当前的Edit或View (再按则反之)
Ctrl+O 快速显示 OutLine(不开Outline窗口的同学,这个快捷键是必不可少的)
Ctrl+T 快速显示当前类的继承结构
Ctrl+W 关闭当前Editer(windows下关闭打开的对话框也是这个,还有qq、旺旺、浏览器等都是)
Ctrl+L 文本编辑器 转至行
F2 显示工具提示描述

Reference:

Eclipse快捷键指南

chrome开发者工具快捷键

按F12打开chrome的开发者工具,点一下开发者工具,然后按F1,就会弹出开发者工具快捷键指南,这个指南里面包含了所有的chrome开发者工具快捷键,这给平时前后端开发的同学带来的不少便捷。如下图:

chrome开发者工具快捷键
chrome开发者工具快捷键

打开chrome开发者工具的快捷键除了F12外,还有几个:

  • Ctrl+Shift+I  等同于F12,打开chrome开发者工具
  • Ctrl+Shift+J   打开chrome开发者工具,并把tab定位到Console上
  • Ctrl+Shift+C   打开chrome开发者工具,并把tab定位到Element上,同时把Element定位到鼠标光标所在页面的位置  (这个快捷键超有用)
  • Ctrl+Shift+Delete  打开清楚缓存的设置界面

当然还有一些操作chrome的常用快捷键,详见: