便携版必须用官网.zip包启动,不能用.exe安装器;需在sublime_text.exe同级目录下严格创建名为data(d大写)的空文件夹,否则仍写入%appdata%sublime text;插件和package control必须在data生效后安装,且跨平台同步时需注意换行符与权限差异。

便携版必须用官网.zip包启动,不能用.exe安装器
官网.exe安装器默认写注册表、改系统路径,哪怕你把它复制到U盘,首次运行仍会往%APPDATA%Sublime Text写数据。真正免安装的起点只有一个:从sublimetext.com下载带Build xxxxx x64.zip字样的官方压缩包(Windows/macOS/Linux均有),解压后得到sublime_text.exe或sublime_text二进制文件。
常见错误是误下第三方“绿色版”——那些包常偷偷调用subl.exe注册协议、注入更新服务,根本不是纯便携。
- 确认解压后目录里只有可执行文件+DLL/so,没有
unins000.exe或installer.log - Windows下右键
sublime_text.exe→ “属性” → “详细信息” → 确认“产品名称”为Sublime Text,而非“Sublime Text Portable Installer”之类
Data文件夹命名和位置必须严格匹配
便携模式的触发条件极简但苛刻:在sublime_text.exe同级目录下,存在一个**大小写完全一致**的空文件夹,名字必须是Data(D大写,其余小写)。任何变体如data、DATA、SUBLIME_DATA都会失效,Sublime会退回到系统默认路径。
典型失败现象:Preferences → Browse Packages…打开的是C:UsersXXXAppDataRoamingSublime TextPackages,而不是你期望的U盘路径。
- 建好
Data后再双击sublime_text.exe,首次启动会自动在Data内生成Packages/、Installed Packages/等子目录 - 验证是否生效:菜单打开
Browse Packages…,路径必须以DataPackages结尾 - 若路径不对,检查是否把
Data建在了sublime_text.exe的子目录里(比如D:sublimeData正确,D:sublimeppData错误)
局域网共享资源路径需手动配置,不能依赖默认行为
Sublime本身不提供“共享项目路径”功能,所谓局域网资源同步,本质是让多台机器访问同一份文件。关键在于:所有设备都必须把Data目录放在可被网络访问的位置(如NAS挂载点、Samba共享卷),且各设备上的sublime_text.exe要指向同一个Data路径。
Windows常见陷阱:\nassublimeData这种UNC路径无法直接传给-data参数,Sublime会报错或静默失败。
- 解决方案:在每台电脑上将网络路径映射为本地驱动器(如
Z:),再用sublime_text.exe -data "Z:Data"启动 - macOS/Linux需先
mount远程共享,确保挂载点路径不含空格或中文,否则必须加引号 - 务必关闭防火墙对
sublime_text.exe的拦截——某些安全软件会阻止其读写网络路径
插件和Package Control必须在便携通道内安装
即使Data存在,如果首次运行时没建好,或者控制台执行安装脚本时sublime.installed_packages_path()返回的是系统路径,Package Control和插件就会装错地方,后续Ctrl+Shift+P搜不到命令。
老教程里的Python 2脚本已彻底失效,必须用支持Python 3.3+的新版安装代码:
import urllib.request,os,hashlib; h ='df21e130d211cfc94d9b0905775a7c0f1e3d39e33b79698005270310898eea76'; pf ='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener(urllib.request.build_opener(urllib.request.ProxyHandler())); by = urllib.request.urlopen('http://packagecontrol.io/'+ pf.replace(' ','%20')).read(); dh = hashlib.sha256(by).hexdigest();print('Error validating download (got %s instead of %s), please try manual install'% (dh, h))if dh != h else open(os.path.join(ipp, pf),'wb').write(by)
- 执行前务必确认
Preferences → Browse Packages…显示路径已是DataPackages - 若控制台报
Error validating download,说明网络中间有代理篡改或缓存污染,此时应手动下载Package Control.sublime-package,放进DataInstalled Packages,再重启 - 已安装插件不会自动迁移——旧插件实际在系统
Packages目录下,必须重新安装
最易被忽略的一点:跨设备共享Data目录时,不同操作系统对文件锁、权限、换行符的处理差异会导致插件加载失败或设置错乱。比如Windows写入的.sublime-settings含CRLF,在Linux上可能被解析为无效JSON。同步前最好统一用Git管理DataPackagesUser,并设置core.autocrlf=input。其他目录(尤其是Installed Packages)不要直接同步,而是靠Package Control.sublime-settings里的installed_packages列表自动重装。











