4.8 out of 5
4.8
5 reviews on Udemy

如何提高编程速度

Emacs高手教授轻松精通所有编辑器和IDE的秘诀
Instructor:
Bin Chen
13 students enrolled
如何提高编程速度
精通Visual Studio Code,Emacs,Vim,Sublime Text 3, IntelliJ IDEA
如何测量自己编程效率
如何结合选择高质量的插件
如何阅读编辑器的实现代码

教授专家快速编程的独家秘诀

课程内容:

– 在一周到两周内精通主流的编辑器和IDE(Emacs, Vim, Visual Studio Code, IntelliJ IDEA, Sublime Text 3)的文本文件操作

– 学会Linux/Unix的Shell,能够结合命令行程序和编辑器优化工作流

– 学会用 Lisp 拓展神之编辑器 Emacs. 掌握函数式编程技术

课程目标:

*使你编写代码更轻松愉快*

*编程速度在如Google,Facebook,Amazon这样精英荟萃的硅谷大公司也能位于前5%*

– 帮你增加影响力,让老板认定你就是好莱坞电影中的黑客程序员

课程分为两部分.

第一部分教文本文件操作术:

– 以流行的编辑器Visual Studio Code为例教授所有文本文件操作基本知识

– 以Vim的官方教程为参照,教授高效文本操作术

– 将Vim的技巧应用于Visusal Studio Code

– 研究最优化快捷键的方法: *任何工作流都可分解为多个基本文本文件操作命令.基于用Emacs插件keyfreq积累的一年统计数据,我只优化最常用的命令.此方法被Emacs Lisp世界排名第二的Bozhidar Batsov背书*

– 教授用于文本处理的正则表达式(regular expression)技术和文件路径匹配的glob pattern技术.它们被广泛用于各种语言编程.在本教程中会用于开发编辑器插件.

– 将以上技巧用于第三方编辑器和IDE

– 学习Emacs文本文件操作技术. 神之编辑器Emacs的用户有Facbook的创立者Mark Zuckerberg, 自由软件运动发起者Richard Stallman. 我Emacs Lisp世界排名18.所以有信心保证你学会

第二部分教Lisp编程.以Emacs为例,掌握独立开发插件,拓展编辑器的能力:

– 读者只要有初级程序员能力.有写过100行左右任何编程语言的代码的经验即可

– 学习Emacs Lisp基本概念: 变量, 函数, 运算符, 循环和条件判断语句, 文件读写,其他编辑器相关概念

– 学习Linux/Unix命令行和Shell基本知识

– 开发文件查找插件

– 开发文本搜索插件

– 开发代码自动成插件

– 开发代码导航插件

– 写代码优化拼写检查

– 写代码优化语法检查

小结:

– 第一部分对命令使用频率和快捷键设计的点评初学者节省精力和时间,为专家指出了优化效率的方向。

– 第二部分Lisp开发的例子是精心选择的.覆盖了程序员日常工作流.代码性能针对主流操作系统(Windows/Linux/macOS)都已优化

报告Bug:

– 如有 Emacs 的问题, 在我 Github 的 emacs.d 项目下报告可获得最快对应

– 其他问题在课程所在网站报告

– 确保相关软件升级至最新版

– Vim一直有含有字母x的快捷键无法使用的bug,升级到8.2版本后,此问题已修正.唯一的例外是快捷键”,xx”,建议使用其他快捷键代替”,xx”.

– 其他编辑器和IDE没有快捷键无法映射问题.*本课程从未把Vim作为主力编辑器推荐.Vim只是学会高效文本操作术的工具*

注意, 课程篇幅有限,只给出结论和怎么做,来龙去脉从简了. 如了解技术细节或获得最新技术更新:

– 可订阅知乎专栏”如何提高编程速度”

– 在 Github 上加我 @redguardtoo

– 我的微博 @emacsguru

简介

1
课程更新记录

# Changelog


## [2020-04-24]

- 加入 Emacs 官方教程视频 (zh)

- video on Emacs official tutorial (en)


## [2020-02-26]

- 加入更新ideavim至0.55.1的视频 (zh)

- 更新IntelliJ IDEA子窗口操作视频 (zh)

- `$HOME/.ideavimrc` 更新了 (zh)

- Add video to upgrade ideavim to 0.55.1 (en)

- Update video on sub-window operation of IntelliJ IDEA (en)

- `$HOME/.ideavimrc` is updated (en)


## [2019-09-31]

- 第一版发布 (zh)

- the first version is released (en)

2
为什么要提高编程速度?具体如何做?
3
使用科学数据提高编程效率

附件`keyfreq.txt`为我使用Emacs各种文本文件操作的一年统计数据。

4
优化文本文件操作术的代价
5
单个文件中查找替换字符串的练习资料
6
多个文件多目录的文件文本操作练习资料
7
取自于真实ReactJS项目的代码资料
8
Visual Studio Code 配置文件

此配置文件为了配合教程,做了一些简化。例如没有用VSCode的第三方插件matchit的快捷键覆盖
VSCode默认的快捷键。


建议在学习前面几章时不要执着于快捷键。到学习"用Vim的技术强化Visual Studio Code”一章时在研究如何优化快捷键。


启用其中所有功能需要安装vim和matchit两个插件。


我的个人VSCode完整配置在 https://github.com/redguardtoo/vscode-setup。在完成本教程前不建议使用此配置。

9
IntelliJ IDEA的插件IdeaVim的设置
10
Sublime Text 3的配置文件

快速编程技巧大全

1
VSCode的精华只在于一个快捷键Ctrl+Shift+P

- 强调Execute All Commands需要大量使用,代替不常用的快捷键。此命令等价于Emacs的M-x命令。不要觉得这是人人都已掌握的常识。我可以断言,99%的用户 使用此命令的频率还是太低。不久之前我也是这99%的用户之一。


- 只有在我用 “使用科学数据提高编程效率”  (https://zhuanlan.zhihu.com/p/68182816) 一文中科学方法测量过之后,我才意识到很多我以为应该常用的命令实际上用得不多。不值得为记住其快捷键浪费脑细胞。所以我使用Emacs中的M-x次数才多了起来。

2
学习VSCode中File菜单下所有功能

- 很多资深用户也会在基本功上有遗漏。阻碍了他们的进一步提高。所谓基本功就是文本文件操作术。我的教程的目标就是补足所有的基本技术。所以会按照主菜单顺序讲解点评所有功能本教程讲述


- 专家实战经验. “实战”这个词可能已被用烂了。网上大多数教程中“实战”两个字的意思就是照着手册“实际操作一遍”。要它们质疑大公司产品经理的决定是绝对不敢的。我肯定是在教程中要把所有不合理的决定都质疑一遍的 (陈斌:VSCode对Emacs,代码浏览哪家强)


- 演示了如何充分利用Execute All Comands。少记好多快捷键。要把有限的精力放在少数几个常用的功能上。如伟人所教导的,”集中兵力打歼灭战“


- 尽可能用电脑自动完成工作

3
Edit菜单下的Undo/Redo功能
4
Edit菜单下的查找替换

程序员最常用功能。在选定区域查找替换非常有用。

5
在选定区域内查找替换(VSCode版和Emacs版)
6
Edit菜单下在多个文件中查找替换

在多个文件中查找替换是最有用的功能,大量用于重构和阅读代码。但是大多数程序员对此功能没有充分利用

7
Edit菜单下注释代码

注释代码是最常用最经典的场景,但是被大多数程序员忽视。实际上有很大的优化空间。

8
Edit菜单下Emmet工具箱

Emmet那套自动完成html代码已被现代的web开发淘汰了。不过工具箱中其他工具还有可取之处。

9
Selection下拓展/收缩选择区域和其他技巧

是程序员最常用的技巧,一定要记住其快捷键并尽量多用

10
Selection菜单下行操作

行拷贝很常用。

11
Selection菜单下Multi-Cursor技术
12
View菜单下Open View及通用菜单操作
13
View菜单下Appearance菜单
14
View菜单下Editor Layout菜单(子窗口操作)

非常经典常用的操作。必须多加练习和应用

15
View菜单下选择左边栏和下面板
16
View菜单下折叠行和显示空格字符
17
Go菜单下跳转到另一个符号或当前符号的定义

程序员每时每刻必用功能,一定要记住并采用高效快捷键

18
Go菜单下以文件名搜索并打开项目中任意文件
19
Go菜单下回退到之前编辑过的地方

非常经典的功能,一般和查找定义一起用

20
Go菜单在子窗口和打开的文件间移动控制焦点
21
和跳转对应的Peek功能(看一眼但不动控制焦点)
22
Go菜单跳到指定行和在匹配括号间跳转

常用功能。匹配括号间跳转如结合Vim插件则是大杀器。后续课程会给出更多细节

23
Go菜单在跳到下一个语法错误

一般跳到第一个错误后就不需要再跳转了。自带的语法检查也好,第三方语法检查也好,都是实时检查错误。所以你不可能有两个以上错误。快捷键不用记。

24
Go菜单下跳到下一个变化
25
Debug菜单
26
Terminal菜单
27
Help菜单
28
如何选择高质量插件

这个秘笈除了本教程外我从未公开过。因为我自己也开发了很多Emacs插件。如有人把我对其他插件的褒贬应用到我自己头上,会比较尴尬

掌握Vim

1
安装Vim

编辑器之神Vim的文本操作效率公认非常高效。其他编辑器和IDE也支持Vim的快捷键。掌握了Vim就可以提高在所有编辑器和IDE中的效率

2
Vim官方教程第一讲
3
Vim官方教程第二讲
4
Vim官方教程第三讲
5
Vim官方教程第四讲
6
Vim官方教程第五讲
7
Vim官方教程第六讲
8
Vim官方教程第七讲

用Vim的技术强化Visual Studio Code

1
把Visual Studio Code变成Vim
2
设置全局快捷键
3
代码导航相关全局快捷键优化
4
Visual Studio Code 全部设置

最新设置可从 https://www.github.com/redguardtoo/vscode-setup 下载。建议在学完本教程后再下载最新配置。在教程第一章已提供了一个简化的配合教程的设置,推荐使用词简化设置。

5
File菜单的优化
6
Edit菜单下优化Undo/Redo和剪贴板操作
7
Edit菜单下查找替换的优化,学习正则表达式
8
Edit菜单下查找替换多个文件的高级技巧
9
Edit菜单下注释的优化,行选择的技巧
10
Selection菜单下选择文本的高级技巧
11
View菜单下子窗口高级技巧
12
Go菜单下高级技巧
13
在配对的符号间跳转的高级技巧
14
代码自动完成的高级技巧
15
跳转到声明(Go to Declaration)的高级技巧

理论上可选的。但实际上高手都用此技巧。

16
在当前文件搜索文本的高级技巧

理论上可选的。但实际上高手都用此技巧。

17
打开当前光标下的文件的高级技巧

理论上可选的。但实际上高手都用此技巧。

18
把VSCode的Vim插件和Neovim结合

可选,如果你已精通Vim和VSCode,希望简化工作流,把查找替换语法统一到Vim的原生语法,可以用此技术。

在Sublime Text中应用文本文件操作术

1
安装NeoVintageous并应用文本文件操作术

在任意的IDE中应用文本文件操作术

1
在IntelliJ IDEA中安装使用IdeaVim

IntelliJ IDEA是全世界流行的IDE。应用之前教授的技术,以证明我们学到的技能是通用的。可以使用一生,永不会贬值。无论以后你使用何种编辑器和IDE,你都可以使用本课程学到的技巧

2
IntelliJ IDEA中的文本文件操作术
3
升级IdeaVim到预览版
4
IntelliJ IDEA子窗口操作

需要安装ideavim 0.55.1版本,见之前的章节

在Emacs中应用文本文件操作术

1
学习Emacs 官方教程
2
安装并掌握Emacs和Evil

教程所教授的文本文件操作术就是在Emacs和Evil中发展出来,用Emacs的工具收集数据优化策略。所以这套技巧必然和Emacs 完美兼容,不会有什么难点问题需要特别处理。

3
Emacs的自由开放使其有一些独特的功能

以Emacs子窗口布局的特有功能说明自由软件的意义。以VSCode作为对比。

4
如何测量并优化工作流
5
文本编辑的核武器
6
少有人知道的打开文件的技巧

除Emacs之外的其他工具(包括Vim)在打开文件上总是有这样那样的遗憾之处。我来演示一下理想的编辑器是怎么做的

7
操作子窗口最理想的技巧

此技巧为我多年前发明,被著名的emacs配置spacemacs作者采用(git提交历史里可以搜到我的名字),已被许多Emacs用户采用

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.8
4.8 out of 5
5 Ratings

Detailed Rating

Stars 5
4
Stars 4
1
Stars 3
0
Stars 2
0
Stars 1
0
3ca98b50de062e3acedf94d551eae178
30-Day Money-Back Guarantee

Includes

26 hours on-demand video
13 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion