身为编辑器,文本编辑的功能自然是放在第一位的,此节将总结常用的文本编辑的方法和技巧,掌握这些技巧以后可以极大地提高文本编辑的效率

注意此节中用到的快捷键是Mac下的,如果你用的系统是Win或者Linux,可能会有一点不同.

光标移动

在编辑文本的过程中移动光标是一种频率很高的操作.
我们不应只满足于通过鼠标或键盘的方向键的这种效率很低的操作方式来移动光标,让我们来看看还有哪些能极大提高编辑效率的方法吧

光标上下移动

  • 光标移动到上一行: Ctrl+PUp
  • 光标移动到下一行: Ctrl+NDown
  • 光标移动到文件头: Cmd+Up
  • 光标移动到文件尾: Cmd+Down

光标左右移动

  • 光标向左移动一个字符: Ctrl+BLeft
  • 光标向右移动一个字符: Ctrl+FRight
  • 光标向左移动一个单词: Alt+BAlt+Left
  • 光标向右移动一个单词: Alt+FAlt+Right
  • 光标移动到行头: Ctrl+ACmd+Left
  • 光标移动到行尾: Ctrl+ECmd+Right

移动到指定行/列

通过快捷键Ctrl+G来呼出光标移动窗口,填入行:列后回车就可以将光标移动到指定位置

符号间跳转

这里的符号是指Symbols,包括代码中的函数名,变量名等
在当前文档搜索并跳到符号: Cmd+R
在工程内搜索并跳到符号: Cmd+Shift+R

Cmd+Shift+R需要需要tags文件的支持,如果你以前使用过Vim等编辑器应该对这个机制很熟悉了

使用书签

  • Cmd+F2: 在当前行创建或取消书签
  • Ctrl+F2: 列出所有书签
  • F2: 跳转到下一个书签
  • Shift+F2: 跳转到上一个书签

选择

在Atom中,如果你希望在移动光标的时候顺便选中内容,只需要在移动快捷键中加上Shift.

上下选择

  • 向上选择一行: Ctrl+Shift+PShift+Up
  • 向下选择一行: Ctrl+Shift+NShift+Down
  • 选择当前位置到文件头: Cmd+Shift+Up
  • 选择当前位置到文件尾: Cmd+Shift+Down

左右选择

  • 向左选择一个字符: Ctrl+Shift+BShift+Left
  • 向右选择一个字符: Ctrl+Shift+FShift+Right
  • 向左选择一个单词: Alt+Shift+BAlt+Shift+Left
  • 向右选择一个单词: Alt+Shift+FAlt+Shift+Right
  • 向左选择到行头: Ctrl+Shift+ACmd+Shift+Left
  • 向右选择到行尾: Ctrl+Shift+ECmd+Shift+Right

其他选择

  • Cmd+L: 选中当前行
  • Cmd+A: 全选
  • Ctrl+Shift+W: 选择当前单词

文本编辑与删除

基本操作

  • Ctrl+T: 相互调换光标前后字符
  • Cmd+J: 将下一行接到当前行尾
  • Ctrl+Cmd+Up/Ctrl+Cmd+Down: 将当前行向上/下移动一行
  • Cmd+Shift+D: 复制当前行
  • Cmd+K, Cmd+U: 连续输入两个快捷键,将当前单词转为大写字母
  • Cmd+K, Cmd+L: 连续输入两个快捷键,将当前单词转为小写字母
  • Cmd+Alt+Q: 段落重排(在英文写作时比较有用)

删除和剪切

  • Ctrl+Shift+K: 删除当前行
  • Cmd+Backspace: 从当前光标删除到行头
  • Cmd+Delete: 从当前光标删除到行尾
  • Alt+Backspace/Alt+H: 从当前位置删除到单词头
  • Alt+Delete``Alt+D: 从当前位置删除到单词尾

多光标选择

多光标选择是SublimeText的特色功能,现在Atom也能支持了,具体的使用方法如下:
* 添加一个新的光标: 按住Cmd键后用鼠标点击或选择想要添加新光标的位置
* Cmd+Shift+L: 将选中的多行转成多光标的形式
* Cmd+D: 选中下一个与当前光标所在单词相同的单词(或是与当前选中单词相同的单词)
* Ctrl+Cmd+G: 选中所有与当前光标所在单词相同的单词(或是与当前选中单词相同的单词)


通过多光标选择能够很方便地同时编辑多处代码

括号和引号

Atom对括号和引号有很多的支持,其中包括:
当光标位于括号(包括{})上时,会高亮其对应的另一半括号.同样的,Atom也支持高亮XML和HTML的标签
自动补全括号{},[],(),引号”,’,`
选中一段文本,然后输入括号或引号,会自动在选中的文本两端添加括号或引号
使用Ctrl+M可以让光标跳转到临近的括号处,再按一次快捷键光标会跳到另一个对应的括号处
使用Ctrl+Cmd+M可以选中当前括号内所有内容
使用Cmd+Alt+.可以补全XML/HTML的标签,比如说当输入<body>后再键入Cmd+Alt+.会自动添加</body>

文件编码

当你打开一个文本文件时,Atom会自动判断文件的编码方式,如果不能识别就会默认使用UTF-8
你可以使用Ctrl+Shift+U来呼出编码选择窗口并手动选择文件的编码方式

查找和替换

Atom的查找使用方式与大部分编辑器一样
使用Cmd+F进行文件内查找

使用Cmd+Shift+F进行工程内查找

在查找窗口中输入需要查找的文本后可以使用回车或Cmd+G跳到下一个查找的结果
在查找窗口中中还可以对使用正则表达式,大小写敏感,查找选中块,查找整个单词等选项进行设置
在多文件查找时你还可以通过在File/directory pattern文本框中输入通配符来限定只查询某一些文件

Atom编辑器入门到精通(三) 文本编辑基础的更多相关文章

  1. Atom编辑器入门到精通(四) Atom使用进阶

    在本节中将介绍Atom提供的更高级的使用技巧,通过这些技巧将会进一步提高你的代码编写效率 代码片段(Snippets) Snippets是一种在代码中快捷插入代码块的方式,下面是维基百科中对Snipp ...

  2. Atom编辑器入门到精通(一) 安装及使用基础

    为什么选择使用Atom Atom是GitHub推出的一款编辑器,被称为21世纪的黑客编辑器,主要的特点是现代,易用,可定制.我之前用过多款编辑器,现在来总结一下个人对各编辑器的看法: Vim是我用的时 ...

  3. Atom编辑器入门到精通(五) Git支持

    版本控制对于开发来说非常重要,Atom当然也提供了很好的支持,本文将介绍如何在Atom中集成使用Git和GitHub 恢复文件 当你修改了某个文件,然后发现改得不满意,希望恢复文件到最后一次提交的状态 ...

  4. Atom编辑器入门到精通(六) Markdown支持

    尽管我们使用Atom主要是为了编写代码,不过Atom还支持编辑很多其他格式的文件. 比如Markdown和Asciidoc. 这一章中我们主要学习如何快速方便地编辑Markdown文件.另外在写这篇博 ...

  5. Atom编辑器入门到精通(二) 插件的安装和管理

    在本节中我们会学习如果安装和使用插件插件是Atom中一个非常重要的组成部分,很多功能都是以插件形式存在的.比如上篇文章中提到的目录树和设置等窗口都是通过默认安装的插件来实现的. 查看已安装的插件 打开 ...

  6. iOS开发-UI 从入门到精通(三)

    iOS开发-UI 从入门到精通(三)是对 iOS开发-UI 从入门到精通(一)知识点的综合练习,搭建一个简单地登陆界面,增强实战经验,为以后做开发打下坚实的基础! ※在这里我们还要强调一下,开发环境和 ...

  7. MyBatis从入门到精通(三):MyBatis XML方式的基本用法之多表查询

    最近在读刘增辉老师所著的<MyBatis从入门到精通>一书,很有收获,于是将自己学习的过程以博客形式输出,如有错误,欢迎指正,如帮助到你,不胜荣幸! 1. 多表查询 上篇博客中,我们示例的 ...

  8. visual studio 2015 搭建python开发环境,python入门到精通[三]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...

  9. python入门到精通[三]:基础学习(2)

    摘要:Python基础学习:列表.元组.字典.函数.序列化.正则.模块. 上一节学习了字符串.流程控制.文件及目录操作,这节介绍下列表.元组.字典.函数.序列化.正则.模块. 1.列表 python中 ...

随机推荐

  1. poj 1324 状态广搜

    其实就是我们经常玩的贪吃蛇. 不过现在我们优先蛇的头的话,要用一个巧妙的哈希来把蛇的身体表达出来,那么就可以用一个4进制的数字来表示,蛇的身体长度最多不超过8,所以最多是2^7种状态. #includ ...

  2. Oracle to_char格式化函数

    转:http://www.cnblogs.com/reborter/archive/2008/11/28/1343195.html Postgres 格式化函数提供一套有效的工具用于把各种数据类型(日 ...

  3. Ubuntu Broadcom无线网卡驱动安装

    刚装的Ubuntu,发现Broadcom无线网卡没工作, 原来手贱,在liveCD 把wireless禁用了,  ubuntu所以认为你机器,没有wireless模块,所以就没有安装wireless驱 ...

  4. struct ifreq结构体与ip,子网掩码,网关等信息

    总结一下,今天学习的关于通过socket,ioctl来获得ip,netmask等信息,其中很多内容参照了很多网上的信息,我会一一列出的 我用的这个函数,就是下面这个函数,其中的有一些全局变量,很好懂, ...

  5. 使用Arcglobe 10与3dmax建立三维城市

    转自:http://www.cnblogs.com/jinlun/p/3380307.html 随着国家大力推进数字城市的建设,三维城市的建设也是势在必行的.与传统二维地图相比,三维城市在立体层次.视 ...

  6. 【VLFeat】使用matlab版本计算HOG

    下载 vlfeat-0.9.18    http://www.vlfeat.org cd D:\program\vlfeat-0.9.18\toolbox

  7. 【原】spark-submit提交应用程序的内部流程

    我们经常通过spark-submit来提交spark应用程序,那么让我们一起看一下这里面到底发生了什么吧. 知识点: 1.CLI命令行界面启动Spark应用程序 Unix有两种方式:1)spark-s ...

  8. Drupal安装及使用问题解决列表

    #1. 启动 Clean URL 修改Apache的配置文件(如httpd.conf),打开 LoadModule rewrite_module modules/mod_rewrite.so选项.然后 ...

  9. 记一次 Google 面试经历

    本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 这是我上周去面试的地方.很顺利,我觉得——至少我认为我已经尽我所能,并且无论发生什么事情对我都是有帮助的. 由于 ...

  10. 尝试获取TextBox_TextChanged事件订阅列表过程

    项目中有用到动态事件绑定[多种事件],由于可触发多次绑定,所以想获取订阅列表来判断是否已绑定事件,从而避免问题! 查找相关资料得知Delegate的GetInvocationList方法可以获取委托的 ...