利用命令行工具快速创建或初始化Sublime项目文件
问题描述
在命令行工具中借助 Sublime
编辑器直接打开目标文件夹( $ subl .
)无法在 Sdiebar 中显示文件内容,也即 Sublime 无法将当前文件夹识别为待编辑的项目文件,本文给出一种快速的命令行创建 Sublime
可编辑项目文件的解决方案。
运行环境
- MacOS Catalina
- iTerm2
- sublime text 3
- zsh & ohmyzsh
原因分析
在 shell
中,利用 subl命令 打开的项目文件根目录需要带有<projectname>.sublime-project
子文件。其包含内容示例如下:
$ ccat project.sublime-project
"folders":
[{
"path": ".",
"file_exclude_patterns": []
}]
而当你需要利用命令行工具创建一个新的项目时,可能会进行如下步骤:
$ mkdir newproject
$ cd newproject
$ subl newfile.py
$ ...
在这一项目创建过程中sublime并未将所在环境认定为项目文件,当再次用sublime打开newproject
文件时,会出现上述问题。
$ subl newproject
解决方案
已存在项目
利用 ohmyzsh/plugins-sublime sublime插件提供的stn
命令为当前所在项目文件添加.sublime-project
文件:
create_project (or stn alias): if called without an argument, create a stub .sublime-projectfile in the current working directory, if one does not already exist. If passed a directory, createa stub .sublime-project file in it.
$ mkdir newproject
$ cd
实操图示:
新建项目
事实上ohmyzsh/plugins-sublime
提供的stn
命令即是用来新建sublime可识别的项目文件,但对于项目创建过程,还需要预先的创建文件路径过程,一种高效地高效新建项目文件方式则是建立shell函数集成这些操作。在.zshrc
写入如下函数:
function sublnp () {
mkdir -p "$1" && cd "$1"
stn
}
实操图示:
总结
这篇博客解决了在MacOS设备上,利用sublime的shell命令subl
打开目标项目文件,无法在sidebar显示所包含文件的问题。利用subl
命令正常打开和显示项目文件内容需要包含.sublime-project
文件,本文总结了利用shell命令的解决方案。