【问题标题】:Sublime 2 text - build during saving a .js fileSublime 2 文本 - 在保存 .js 文件期间构建
【发布时间】:2013-04-01 20:52:49
【问题描述】:

请问,当我尝试保存 .js 文件时,是否有一个选项,如何禁用自动构建?

我正在制定 node.js + express 教程,并且一直保存文件,构建正在启动 node.exe 二进制文件,我不想要什么,唯一的解决方案是勾选构建例如 JSLint 的系统,但是当我保存文件时它仍然会尝试构建。

我知道工具中有一个勾选选项 -> 构建时全部保存,但我找不到相反的选项 - 保存时禁用全部构建。

我已经为 Sublime 2 安装了 Node 包,即使它禁用了构建系统,Nodejs 也会在保存过程中尝试构建 (ctrl+s)

感谢所有提示!

这是我的自定义用户包:

“已安装的软件包”: [ “镖”, "JavaScript 控制台", “JavaScript 片段”, "JSLint", “摩卡跑者”, “摩卡片段”, “节点”, “包装控制”, "需要 Node.js 模块助手", “崇高-jslint” ],

【问题讨论】:

    标签: node.js sublimetext2


    【解决方案1】:

    这个问题是由 sublime text 2 的 nodejs 包引起的 - 在完全删除包后(不仅仅是禁用)我在尝试保存 app.js 时收到错误消息

    按下 CTRL+S 错误:尝试解析构建系统时出错:没有数据 C:\Users\username\AppData\Roaming\Sublime Text 2\Packages\Nodejs\Nodejs.sublime-build:1:1

    问题解决了,但我还是不知道,为什么sublime保存app.js文件后直接调用nodejs.sublime-build。

    奇怪的行为,可能是错误或不需要的功能(保存文件时,保存后直接调用预设的构建系统)

    通过删除整个包解决了问题。

    【讨论】:

      【解决方案2】:

      如果您转到Tools 菜单,Build 选项旁边是否有快捷方式Ctrl-S?如果是这样,您的键映射可能在某个时候搞砸了。将以下行放入您的Key Bindings - User 文件(在Preferences 菜单中)并通过选择File -> Save 保存它(仔细检查它的快捷方式是否仍然是Ctrl-S)。

      { "keys": ["ctrl+b"], "command": "build" },
      

      如果, 是用户键盘映射中的最后(或唯一)行,请删除它。

      您可以转到Preferences -> Package Settings 并通过每个条目的菜单选项查找其他键盘映射定义。此外,检查Preferences -> Key Bindings (Default) 并搜索build 以查看它是否已更改为ctrl+s。如果是这样,请随时将其改回b

      【讨论】:

      • 感谢快速回答者,但在 Sublime2 中,到目前为止,我的键绑定一切正常(默认,用户为空){ "keys": ["ctrl+s"], "command": "保存”}。
      • 我只是不知道为什么在我保存文件时 sublime 会尝试构建。这是代码pastebin.com/dpDeHCZ7
      【解决方案3】:

      您是否确认“保存”实际上是在 ctrl+s 上运行的?如果没有,请打开控制台ctrl+backtick 并输入sublime.log_commands(True) 然后按ctrl+s 如果正在运行保存,您应该会看到command: save。如果没有,则其中一个插件会在 ctrl+s 键绑定返回默认值之前获取它。

      如果保存正在运行,则插件中可能有一个 on_post_saveon_pre_save 侦听器正在启动构建。我检查了我认为最有可能的(Mocha Runner),它确实有一个on_post_save 监听器。我不知道这是否是你所看到的,但它肯定会解释它。尝试禁用插件并重新运行保存以查看是否是这种情况。如果是这样,您可能想在任何插件上创建一个问题,要求他们将“保存时构建”设为可选。

      【讨论】:

      • 我得到了这个 sublime.log_commands(True) 命令:保存写入文件 /C/Users/username/NodeSandbox/webproject/app.js 编码为 UTF-8 运行 taskkill /F /IM node.exe & 节点 C:\Users\username\NodeSandbox\webproject\app.js 命令:show_panel {"panel": "console", "toggle": true}
      • 您是否尝试过禁用插件以查看其中一个是否在保存时进行构建?
      • "ignored_pa​​ckages": ["Mocha Runner", "Vintage", "Require Node.js Modules Helper", "Nodejs", "Dart", "sublime-jslint" ] 奇怪的是当我禁用到nodejs包,问题依然存在。
      • 重要提示 - 当我在另一个文本编辑器 (notepad.exe) 中打开同一个文件并更改它并再次保存时,构建过程不会发生。使用记事本++ - 保存时,没有构建并且 node.exe 没有启动。所以这个问题与 sublime 2 绑定在一起
      猜你喜欢
      • 2012-09-09
      • 1970-01-01
      • 2021-01-24
      • 1970-01-01
      • 2014-06-09
      • 2017-03-13
      • 2015-10-20
      • 1970-01-01
      • 2013-07-08
      相关资源
      最近更新 更多