在文件创建时自动创建同名文件夹

时间:2015-07-25 15:22:50

标签: sublimetext3 sublimetext

在创建某些文件时,有没有办法让我设置sublime来自动创建同名文件夹。

我创建了所有文件名都有lp_前缀的登录页面,我想在创建具有此名称的文件时查看,然后在另一个目录中自动创建同名文件夹(对于css和图像)。

使用插件或类似Grunt的东西可以实现吗?

示例:

创建文件:lp_test.php

自动创建文件夹:/lp/lp_test/

1 个答案:

答案 0 :(得分:2)

您可以创建一个扩展EventListener并覆盖(例如)on_post_save_async的插件。您可以将此简单示例用作基础:

import sublime, sublime_plugin, os

# We extend event listener
class ExampleCommand(sublime_plugin.EventListener):
    # This method is called every time a file is saved (not only the first time is saved)
    def on_post_save_async(self, view):
        variables = view.window().extract_variables()
        fileBaseName = variables['file_base_name'] # File name without extension
        path = 'C:/desiredPath/css/' + fileBaseName

        if fileBaseName.startswith('lp_') and not os.path.exists(path):
            os.mkdir(path)

编辑:on_post_save更改为on_post_save_async,因为它在不同的线程中运行,并且不会阻止该应用程序。感谢MattDMo对其进行评论以及添加python高亮显示。