快速、优雅的前端IDE之H-builder-X

为什么介绍的是HBuidler-X而不是Hbuilder
  HX是全新的一个软件,它抛弃了eclipse架构,使用C++为基础架构。HX目前还不能完全替代HBuilder。但在markdown记事的场景下,是最佳的记事本升级工具。
除了顶尖的markdown编写体验、漂亮的着色外,HX的极速启动、多标签、热退出、各种快捷键操作,都给了你充足的理由升级记事本工具。
什么是Hbuilder
HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。 HBuilder的编写用到了Java、C、Web和Ruby。HBuilder本身主体是由Java编写。它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。此软件支持window,mac环境,貌似不支持Linux。
Hbuilder-X的介绍
HBuilderX是编辑器和IDE的完美结合,HBuilderX是HBuilder的下一代产品,体积小巧,启动秒开,默认包包含优秀的字处理能力,创新众多其他编辑器不具备的高效字处理模型。
特点
轻巧
仅10M的绿色发行包
极速
不管是启动速度、大文档打开速度、编码提示,都极速响应
清爽护眼
界面清爽简洁,绿柔主题经过科学的脑疲劳测试,是最适合人眼长期观看的主题界面
无鼠标操作
掌握HX的无鼠标操作体系,成为高效极客,飞一般编码
markdown优先
HX是唯一一个新建文件默认类型是md的编辑器。对于技术人员,我们强烈建议你以后不要使用记事本了,用markdown来替代txt。本自述文件就是漂亮的markdown文档,这是技术人员才能独享的美:)HX为md强化了Emmet、智能回车、智能缩进、智能双击,拥有顶尖的markdown编写体验。点【菜单帮助-markdown语法示例】,可快速掌握md及HX的强化技巧!
扩展性
HX支持java插件、nodejs插件、支持vue插件(需本机安装java及node环境),通过外部命令,可以方便的调用各种命令行组件。不管是git、svn还是前端编译,都可以通过配置外部命令调用,并设置快捷键。
使用方法
HBuilderX - 高效极客技巧
  惯常来讲,ide和编辑器是2个产品类别。ide侧重于某种语言的语法分析、提示、转到定义、调试。而编辑器则是对通用文本处理,但提供更高效的通用文本处理能力。上一代HBuilder是一个典型的IDE,语言处理非常强大,但在字处理方面客观讲不如优秀的编辑器。而新的HBuilderX,定位是ide和编辑器的完美结合,那么HBuilderX就会提供世界顶级的高效字处理能力。看完这些,你一定会惊叹,原来极客是这么玩的。免拖动选择用鼠标或拖着选中一片文本,是一个很容易让食指抽筋的操作。尤其是触摸板更痛苦。但是背诵很多相关的快捷键也一样痛苦。HBuilderX提供了更友好方式:智能双击和Ctrl+=扩大选区。
智能双击
下面是智能双击选中tag和包围父tag的示例
  1. 双击div的首或尾可以选中这个tag。当然双击if、双击缩进符、双击括号引号内侧...很多位置都可以通过智能双击选中。具体见HBuilder的选择菜单。
  2. 按Ctrl+]包围,就可以在这个选区首尾加父标签,同时闪烁光标。当前在js里按下Ctrl+]不会包围tag,而是包围if、for等函数库。
  3. 输入div即可在首尾添加包围标签
![]()
扩大选区Ctrl+=
  =是+的默认键位置,所以Ctrl+=其实就是Ctrl键和+号一起按下。在HBuilderX里可以智能的判断选区范围,持续扩大选区,无鼠标快速选中你需要的选区。
![]()
反包围
  上面讲到包围,也自然有反包围。
  1. 双击tag p开头,选中该tag。
  2. 按反包围Ctrl+Shift+],可去掉tag p并自动处理子节点的缩进。
![]()
  这里多提一句HBuilderX的快捷键理念,就是符号化,而不是字母化。很多工具的快捷键都是控制键+功能英文单词中的一个字母,这个是极难记忆的。符号化让快捷键的记忆变简单,比如Ctrl+]是包围。而反操作或增强操作一般是加Shift,比如Ctrl+Shift+]是反包围。选中相同语法词下图中,使用普通的选择相同词,会把所有div都选中。但使用Ctrl+Shift+e(mac是Command+Shift+d),会智能识别语法,剔除不相干的词。下图按下Ctrl+Shift+e同时选中tag首尾的div,而不会选中子节点的div。然后就可以方便的将原div改名为p。
![]()
  选择一个括号时,也可以使用选中相同语法词,来选中对应的另一个括号
交换选区内容
  当需要交互2个选区的内容时,选中a、剪切、点b前面、粘贴、选中b、找到之前a的位置点击、粘贴...这么长的操作太低效。来看HBuilderX的Ctrl+Shift+x交互选区,也就是Ctrl+x的增强版。
  1. 双击第1个style属性后的引号内侧,可选中引号内容。
  2. 按下Ctrl后继续双击第2个style属性后的引号内侧,可选中2个引号内的选区。
  3. 按下Ctrl+Shift+x,交换style属性的内容。
![]()
如果不选择内容,光标放置到2行,可直接交换这2行的内容,如下图
![]()
撤销最后一个多选区或多光标
  选区选多了或选错了,不用担心要重头选,Ctrl+Shift+z不是撤销编辑内容,而是撤销最后一个选区。
  1. 双击选中class
  2. 按Ctrl+e选中相同词
  3. 按Ctrl+Shift+z,不再选中最后一个词。
![]()
批量合并行
  下图示例,是把css合并为一行时的快捷操作
  1. 双击{内侧选中class
  2. 按Ctrl+双击选中另一个class
  3. 按反格式化Ctrl+Shift+k,可以把每个css的区块代码都合并为一行
  Ctrl+k是格式化代码,那么Ctrl+Shift+k就是合并为一行。
![]()
同时注释if段首尾
  if块的调整很常见,除了包围、反包围外,常用操作还有同时注释掉if段首尾。
  1. 双击if选中if代码块
  2. 按Ctrl+\在选区首尾加光标,变成多光标模式
  3. 按Ctrl+/注释掉选区首尾 行
![]()
想看版娘请转到首页
QAQ
快速、优雅的前端IDE之H-builder-X的更多相关文章
- HBuilder:一个不错的web前端IDE(代码编辑器)
		
Web前端开发,2000之后基本就是三剑客的天下.到现在DW也是不错的HTMLcoder,如今的前端开发早已是JS的天下.但是DW对于JS方面就弱爆了.DW虽然支持JS语法高亮也支持JQuery Jq ...
 - Uix Kit 快速建站前端开发套件-工具箱
		
这个产品维护已经有一年了(由于业务需求不同,目前没有做中文版,产品本身是针对国外网站),自己本身是做UI出生,开发只是业余爱好,仅仅作为平时工作的需要.杂七杂八会一些前后端开发.并非职业码农! 我是一 ...
 - 推荐一款稳定快速免费的前端开源项目 CDN 加速服务
		
前面学习到什么是CDN,全称是Content Delivery Network,即内容分发网络.CDN的通俗理解就是网站加速,CPU均衡负载. CDN的基本思路是尽可能避开互联网上有可能影响数据传输速 ...
 - 前端IDE:VSCode + WebStorm
		
VSCode 插件安装 官网:Extensions for the Visual Studio family of products: (1)拼接下载链接: https://${publisher}. ...
 - windows下如何快速优雅的使用python的科学计算库?
		
Python是一种强大的编程语言,其提供了很多用于科学计算的模块,常见的包括numpy.scipy.pandas和matplotlib.要利用Python进行科学计算,就需要一一安装所需的模块,而这些 ...
 - “零基础”如何快速掌握web前端核心技术?
		
前端开发要学的知识内容涉及的会很宽泛,虽然说主要是HTML.CSS和JavaScript这些基础知识点,今天想强调一下,学前端开发除了要学这些基础知识外,学员还要在这之上进行延伸和深入的去学,而且互联 ...
 - webstorm11.0下载地址和webstorm11.0破解程序patcher.exe下载使用方法说明 前端IDE工具的利器
		
20160107以下亲测可行. webstorm11.0下载地址:http://www.fxxz.com/soft/109234.html webstorm11.0下载安装破解使用说明: 下载完Web ...
 - 快速搭建angular7 前端开发环境
		
第一步:全局安装 Angular CLI (1)打开npm(终端)安装angular-cli 第二步:创造工作区和初始应用 (1)运行命令 ng new my-app 第三步:启动开发服务器 (1)c ...
 - 如何快速优雅的解决:ORA-02290: 违反检查约束条件 异常问题
		
在向oracle保存数据时,控制台报错如下: 很明显是保存时,该表的设计不允许某个字段非空导致的,但由于该表的数量较多,采用断点的方式有太过麻烦, 这里笔者采用 oracle 的客户端连接工具orac ...
 
随机推荐
- JSP知识总结
			
day11 JSP入门 1 JSP概述 1.1 什么是JSP JSP(Java Server Pages)是JavaWeb服务器端的动态资源.它与html页面的作用是相同的,显示数据和获取数据. 1. ...
 - 22.Java基础_StringBuilder类
			
String类对象的拼接操作:执行到s+="world"语句时,常量池会先创建"world"对象,再去创建"helloworld"对象,最后 ...
 - SpringCloud学习笔记(一、SpringCloud 基础)
			
目录: 概述 观察者模式 代理模式 概述: spring系列中使用了大量的设计模式,而最常见的便是这观察者.代理模式,所以在讲解SpringCloud之前我们先学习下这两个最常见的设计模式. 观察者模 ...
 - anaconda换源及创建虚拟环境
			
0x01:换源,依次输入一下两条命令 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/fr ...
 - blue bossa
			
blue bossa
 - Python 对象比较(is & ==)
			
Python 对象有 3 要素 id type value id 对象在内存中的地址 可以通过 id() 获取 比较 只有同一个对象 id 才会相同 id 通过 is 比较 示例: a = list( ...
 - 【转】Python zip() 函数
			
转自:http://www.runoob.com/python/python-func-zip.html 描述 zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回 ...
 - [NewLife.XCode]分表分库(百亿级大数据存储)
			
NewLife.XCode是一个有15年历史的开源数据中间件,支持netcore/net45/net40,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量 ...
 - prisma反向代理
			
概要 为什么要做 prisma 的反向代理 反向代理示例(by golang) prisma 服务 gateway 服务 整体流程 认证 反向代理 权限 总结 概要 接触 prisma 有段时间了, ...
 - Kubernetes service 代理模式
			
Kubernetes service 代理模式 底层流量转发与负载均衡实现:• Iptables(默认)• IPVS IPVS 了解代理模式之IPVS工作原理LVS 基于 IPVS内核调度模块实现的负 ...