2012-08-29 39 views
4

我想要一个简单的sublime命令来打开我的主文件夹中的特定(点配置)文件。是否有像$ {packages}那样的变量或其他魔法,但是对于用户的home文件夹?在崇高文本中访问HOME路径2命令

目前,我有(Default.sublime的命令)

{ 
    "caption": "Edit my config", 
    "command": "open_file", 
    "args": { 
     "file": "/Users/MyName/.myconfig" 
    } 
} 

,但要摆脱硬编码的用户名。

不幸的是我找不到在崇高的api“文档”中的任何东西。

+0

不知道它是否会工作,但试试:''file“:sublime.packages_path()+”Users/MyName /。 myconfig“'在args部分 –

+0

这并不是我想要的包路径,这可能与$ {packages},但想要为用户的家中有一些像$ {home}(这不起作用) DIR。 –

+0

也许硬编码? –

回答

1

它可以通过类似这样的自定义命令来完成:

import sublime_plugin, getpass 

class OpenCustomFileCommand(sublime_plugin.WindowCommand): 
    def run(self, file_name): 
    if("{username}" in file_name): 
     file_name = file_name.replace("{username}", getpass.getuser()) 
    self.window.open_file(file_name) 

及以下(Default.sublime的命令):

{ 
    "caption": "Edit my config", 
    "command": "open_custom_file", 
    "args": { "file_name": "/Users/{username}/.myconfig" } 
} 

当然,你可以扩展 OpenCustomFileCommand你自己的替代品。

P.S.命令必须存储在ST2的Packages目录中,即文件open_custom_file.py