最近在使用 vue-cli 搭建项目,但每次用 Hbuilder 编写 vue 文件的时候,如果存在<script>部分就会报错,错误信息大意是说空格有问题。仔细研究了之后才知道,这是因为项目中使用了 editorconfig,并且将代码缩进规定为两个空格,而之前的代码都是直接使用 tab 缩进,所以无法正常编译。但是 Hbuilder 似乎没有 tab 转空格的设置,所以最后只有使用  sublime。具体的设置方法如下:

首先,依次单击Preferences—>Settings,添加以下配置:

"tab_size": 2,

"translate_tabs_to_spaces": true,

"trim_trailing_white_space_on_save": true,
 
上面的配置依次为:设置tab宽度为两个空格,将tab转为空格,保存时去除行尾的空白字符
 
然后还需要做一系列操作,让文件保存时自动把Tab变成space

1.打开sublime的Preference -> Browser Packages ...
2.新建一个目录ExpandTabsOnSave
3.新建文件ExpandTabsOnSave.py
4.把下面内容复制进去,保存

import sublime, sublime_plugin, os

class ExpandTabsOnSave(sublime_plugin.EventListener):
  def on_pre_save(self, view):
    if view.settings().get('expand_tabs_on_save') == 1:
      view.window().run_command('expand_tabs')

5.如果你想只是应用于当前项目,在 .sublime-project文件下添加:
"settings": {
    "expand_tabs_on_save": true
}

6.全局改变,打开Preferences -> Settings - User添加:
"settings": {
    "expand_tabs_on_save": true
}

配置完成后,新的文件使用 tab 时就能直接转为两个空格。不过如果对于已经有 tab 的文件,需要将原本的代码拷贝到其他的编译器里面,然后需要删除原本的代码,保存并关闭文件。再重新打开文件,将代码粘贴进来,就能将tab转为空格了。

Sublime 将 Tab 转为空格的更多相关文章

  1. vim 将tab转为空格

    在vimrc中添加以下选项 set expandtab 会将tab转换为空格,如果要输入一个tab则需要Ctrl-V<Tab>来实现 set tabstop= 会将tab转换为4个空格 使 ...

  2. Sublime关于tab转空格的设置技巧

    在编写大的工程的代码的时候,会要求一些多余的字符不应该存在,比如说末尾不应该有空格或者Tab这样的字符,比如说所有的Tab应该变成空格,这样工程不管在什么样的编辑器下看,格式都会比较统一,等等,可是如 ...

  3. vim中tab转为空格

    :set ts=4:set expandtab:%retab!

  4. sublime 把 tab 转成 4 个空格

    Preferences -> Settings-User {    "tab_size":4,    "translate_tabs_to_spaces" ...

  5. sublime设置tab键为4个空格

    在使用sublime的时候,有时候新建的文件,默认的缩进是2个,那么如何将sublime设置tab键为4个空格呢? 具体方法: 配置: , "translate_tabs_to_spaces ...

  6. sublime的tab和spaces空格切换的坑

    python是严格要求对齐或者叫缩进的: 使用sublime对python进行编程时,可以使用tab或者空格,但是不能混用.特别是从外面把代码拷贝进sublime的时候,更要注意是否一致. 简单介绍一 ...

  7. sublime text 3 显示空格和Tab

    tab对于需要 共享 的代码而言是灾难. pyhton对这点的明确要求是不要混合使用4个空格和tab键. 只使用二者之一,都是没有问题的.如果一个python代码已经完成的部分,都是使用的4个空格.那 ...

  8. 缩进, Tab 还是空格?(转)

    圣战 圣战个毛线 Android 好还是 iOS 好,Windows 好还是 Mac 好,编辑器好还是 IDE好,中划线好还是下划线好…写代码这么多年,会遇到很多奇葩的毫无意义的所谓脑残粉的争论 昨天 ...

  9. vscode——tab转空格

    前言 为了规范写法,开启了eslint,但是tab没设置转空格,这里记录下设置过程. 步骤 进入设置并搜索tab 配置设置 复制相应的设置 写入到json文件中 "editor.detect ...

随机推荐

  1. iOS 杂笔-21(self.name = “object” 和 _name =”object” 有什么不同?)

    iOS 杂笔-21(self.name = "object" 和 _name ="object" 有什么不同?) 问题如题,这是考察对属性与变量的了解而已. s ...

  2. 听说你会打地鼠(动态规划dp)

    题目来源:https://biancheng.love/contest-ng/index.html#/41/problems G 听说你会打地鼠 时间限制:300ms   内存限制:65536kb 题 ...

  3. IO流01--毕向东JAVA基础教程视频学习笔记

    提要 01 IO流(BufferedWriter)02 IO流(BufferedReader)03 IO流(通过缓冲区复制文本文件)04 IO流(readLine的原理)05 IO流(MyBuffer ...

  4. maven 的 pom.xml 文件报错:ArtifactTransferException: Failure to transfer

    因为maven下载依赖jar包时,特别慢,所以取消了下载过程,再次打开eclipse时,maven的pom.xml文件报错如下: ArtifactTransferException: Failure ...

  5. CityEngine Web Scene如何在IIS下部署 [转]

    CityEngine2012新增了发布Web场景的功能,可以通过本地的Web Scene Viewer打开,也可以发布到ArcGIS Online云端进行共享.如下图:   注:3ws场景包制作方法: ...

  6. 观察者模式--java jdk中提供的支持

    一.简介 观察者设计模式有如下四个角色 抽象主题角色:把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者.抽象主题提供一个接口,可以增加和删除观察者角色.一般用一个抽象 ...

  7. java微信接口之三—上传多媒体文件

    一.微信上传多媒体接口简介 1.请求:该请求是使用post提交from来实现的,我们可以在网页上进行表单提交来实现.地址为: http://file.api.weixin.qq.com/cgi-bin ...

  8. [转][原]openstack-kilo--issue(六)kilo版openstack的dashboard在session超时后重新登录报错解决办法

    http://blog.csdn.net/wylfengyujiancheng/article/details/50523373?locationNum=1&fps=1 1.现象描述: kil ...

  9. win10搭建代理服务器实现绕过校园网的共享限制--从入门到放弃

    博主所在学校特别坑爹,校园网被电信一家垄断了,而且最恶心的还是电信要求一条网线只能供一台电脑上网,不许接路由器共享网络= =- (还有电信2M价格是380+每年,20m是500每年,而且网速都很慢= ...

  10. hdu 4635 Strongly connected 强连通缩点

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4635 题意:给你一个n个点m条边的图,问在图不是强连通图的情况下,最多可以向图中添多少条边,若图为原来 ...