【问题标题】:Sublime Text Indentation Settings Being Overwritten By a FileSublime 文本缩进设置被文件覆盖
【发布时间】:2015-02-13 17:24:17
【问题描述】:

我正在开发一个标签大小应该为 4 且标签不应该是空格的项目。我更新了我的 Preferences.sublime-settings 文件以包含

"detect_indentation": "false",
"tab_size": 4,
"translate_tabs_to_spaces": false,

当我打开一个新文件时,这些设置被设置为我想要的方式并且一切正常。但是,如果我打开一个缩进为 2 个空格的现有文件(scss 或 html),我的 Sublime 设置将被覆盖,缩进变为 2 个空格。如果我单击 View > Indentation 我会看到 Tab Size 设置为 2 并且启用了 Indent Using Spaces,即使我的偏好应该与此相反。

如果我通过 View > Indentation 手动将 Indentation 更改为 Tab Width: 4 并取消选择 Indent Using Spaces,这将一直有效,直到我保存文件,此时设置恢复为 Tab Width 2 并打开 Indent Using Spaces。

如何强制 Sublime Text 遵守我的缩进首选项并且不被另一个文件覆盖。我会假设 Sublime 正在检测页面上的缩进,但我已经关闭了该设置。

这是我的首选项文件,表明一切正常:

以下是 scss 文件的混乱设置。我所做的只是打开它:

我不认为是任何插件导致了这个问题,我禁用了大部分插件,但仍然遇到这个问题。但是,作为参考,这里是我已安装的所有软件包的列表:

  • 对齐
  • 支架荧光笔
  • 水豚片段
  • 颜色选择器
  • 点文件语法高亮
  • 编辑器配置
  • 埃米特
  • ERB 片段
  • 宝石浏览器
  • 要点
  • 吉特
  • GitGutter
  • 哈姆尔
  • jQuery
  • JSHint
  • 包控制
  • 漂亮的 JSON
  • PyV8
  • RSpec
  • SCSS
  • 侧边栏增强功能
  • SublimeLinter
  • 终端
  • 尾随空格

提前感谢您的帮助。

【问题讨论】:

    标签: ide sublimetext sublimetext3


    【解决方案1】:

    所以我通过完全卸载 Sublime Text 和所有相关的包和设置来解决这个问题,然后重新安装应用程序并一个接一个地重新安装我的包。事实证明,我的一个包 EditorConfig 覆盖了我的 Sublime Text 样式设置。

    EditorConfig 实际上是一个非常酷的插件,它通过定义缩进类型、大小、字符集和其他设置,允许跨多个 IDE 开发一个项目的许多开发人员具有一致的样式。

    我的问题的答案是,在我正在处理的特定项目目录中,我下载的一些节点模块有 .editorconfig 文件,这些文件的缩进设置为大小 2 和空格而不是制表符。我必须从我的 Sublime Text 中卸载 EditorConfig 包,或者在我的项目的根目录中创建一个新的 .editorConfig 文件。这是我创建的 .editorConfig 文件,它解决了我的问题。

    # top-most EditorConfig file
    root = true
    
    # 4 Tab Indentation
    indent_style = tab
    indent_size = 4
    

    【讨论】:

    • 感谢分享!这让我发疯了。
    • @jasonleibowitz 您应该回来并点击此答案上的复选标记以表明您的问题已解决。
    【解决方案2】:

    加载文件时,会检查其内容,并为该文件设置“tab_size”和“translate_tabs_to_spaces”设置。发生这种情况时,状态区会报告。虽然这通常效果很好,但您可能希望禁用它。您可以使用“detect_indentation”设置来做到这一点。

    这可能会有所帮助:https://www.sublimetext.com/docs/2/indentation.html

    【讨论】:

    • 感谢您的评论。我实际上已将我的用户设置设置为将“detect_indentation”设置为 false。这些是我目前在我的 Preferences.sublime-settings 文件中的缩进设置:"detect_indentation": "false", "tab_size": 4, "translate_tabs_to_spaces": false, 即使这样我仍然收到错误。
    • "detect_indention": "false" 更改为"detect_indention":false
    • 巴津,我的错。 “detect_indentation”的值已经是一个布尔值,而不是一个字符串。这是假的,不是“假的”。
    • 在您添加的第一张图片中。看来您需要删除最后一行的"s。我不知道这是否会有所帮助,但值得一试。
    • 所以我进行了更改并将 word_wrap 的值也更改为布尔值,但这并没有什么不同...
    猜你喜欢
    • 1970-01-01
    • 2014-11-10
    • 2016-04-15
    • 2020-06-26
    • 2016-11-09
    • 1970-01-01
    • 2010-11-17
    • 1970-01-01
    • 2012-01-01
    相关资源
    最近更新 更多