Sublime Text - 一个命令缩小/上传

时间:2016-02-01 09:16:06

标签: sublimetext2 sublimetext sublime-text-plugin

我最近开始使用SublimeText,并试图弄清楚是否可以将缩小/美化过程与保存/自动上传相结合。

现在,我已经安装了" minify"包(创建一个额外扩展名为" .min"的新文件),并且我还(单独)在保存时启用了自动上传功能。所以我运行minify命令,然后打开创建的文件,然后保存它以触发上传。

如果有一种方法让我编辑一个大杂乱的html / css / js文件(带注释,空格等),然后在一个命令中触发一个运行minify插件AND的进程,那将是多么美妙的事情将minifed版本上传到我的服务器。

值得指出的是minify插件有这两个设置并不能完全达到我想要的效果......

// Save file before doing any action (minify or beautify)?
    "save_first": false,

    // Auto-minify files on save?
    "auto_minify_on_save": true,

(问题是新创建的自动缩小的文件没有自动上传到服务器 - 上述设置只允许生成单独的minifed文件,而原始的非缩小文件会自动上传! )

听起来可能只是一个很小的改进,但是如果我能将这两个操作结合起来的话,我很确定这会在几周和几个月内节省一些时间。任何人在Sublime Text中管理类似的东西?谢谢!

1 个答案:

答案 0 :(得分:2)

如果minifyupload_to_server命令定义明确, 就能能够录制macro。要录制宏,请按照下列步骤操作:

  1. 选择 Tools → Record Macro ,或在OS X上使用 Ctrl Q Ctrl Windows和Linux上的Shift Q
  2. 运行Minify命令,然后运行Save / Upload to Server命令,然后再次点击上面的键组合,或选择 Tools → Stop Recording Macro
  3. 选择 Tools → Save Macro… 并将其保存在Packages/User文件夹中(应自动选择)minify_save_upload.sublime-macro
  4. 选择 Preferences → Browse Packages… 打开宏,在操作系统的文件管理器中打开Packages文件夹,然后导航到User文件夹,使用JSON语法在Sublime中打开上面保存的文件。看起来应该是这样的:

    [
        {
            "args": null,
            "command": "minify"
        },
        {
            "args": null,
            "command": "save"
        },
        {
            "args": null,
            "command": "upload_to_server"
        }
    ]
    

    由于你没有说你正在使用什么插件进行上传,我不确定会有什么命令,但希望它们都能按预期工作。

  5. 此宏现在可在 Tools → Macros → User → minify_save_upload 下使用。要更轻松地访问它,您可以选择 Preferences → Key Bindings—User 并在左括号[后添加以下内容来制作custom key binding

    {
        "keys": ["ctrl+alt+shift+s"], 
        "command": "run_macro_file", 
        "args": 
        {
            "file": "Packages/User/minify_save_upload.sublime-macro"
        }
    },
    

    如果这是自定义键绑定中的唯一条目,则可以在最后结束大括号,之后删除尾随逗号},否则它应该保留。

  6. 运行宏以确保其正常工作,您应该全部设置好!