右键无SFTP菜单主因是项目未正确绑定或插件版本不匹配:必须通过Project→Add Folder to Project将本地文件夹加入项目并置于侧边栏顶层,右键对象只能是该文件夹图标;ST4须装SFTP-Next,装完必重启;sftp-config.json须由右键“Map to Remote…”自动生成于项目根目录,文件名严格小写、remote_path以/开头。

右键没 SFTP 菜单?先确认项目结构和插件版本
不是插件没装,是 Sublime 没把当前文件夹识别为“可映射的项目”。必须通过 Project → Add Folder to Project 把本地目录加进项目,且该文件夹要出现在侧边栏最顶层——右键对象只能是那个文件夹图标本身,不能是里面某个 .js 文件,也不能是侧边栏空白处。
Sublime Text 4(Build 41xx)必须安装 SFTP-Next,原版 SFTP 插件会直接报 ImportError: No module named 'urllib3'。装完务必重启软件,否则 Project 菜单里都看不到 SFTP 项。
sftp-config.json 必须由右键自动生成,不能手建
这个文件不是全局配置,而是插件只读取“右键 → Map to Remote…”后自动生成在项目根目录下的唯一凭证。它有四个硬性要求:
- 文件名必须是
sftp-config.json(大小写敏感,SFTP-config.json或sftp_config.json都无效) -
remote_path必须以/开头(如"/var/www/html/"),结尾也建议加/,否则路径拼接会偏移 -
ssh_key_file支持~展开(如"~/.ssh/id_rsa"),但不识别$HOME或其他环境变量 - 同时写了
password和ssh_key_file?SSH 层直接拒绝,错误只显示Authentication failed,无具体提示
upload_on_save 不生效?检查这四个隐性条件
upload_on_save 开关开着 ≠ 自动上传,它依赖一组隐性上下文,缺一不可:
- 布尔值
true必须放在配置文件根层级,不能嵌套在files或sync_down_on_open下面 - 当前文件必须属于已保存的项目(即存在
.sublime-project文件) - 该文件路径需能被
remote_path规则覆盖(比如配了"/var/www/html/",但你在/src/index.js编辑,就不会上传) - 默认 3 秒超时太短,网络抖动或服务器响应慢会导致静默失败;可在配置中加
"timeout": 10提高容错
别信 ssh user@host:/path 这种写法
subl 命令只解析本地路径和 file:// URL,完全忽略 SSH URI 格式。你执行 subl user@server:/var/www/index.php,它要么报 Unable to parse path,要么静默失败、只打开空白窗口。这不是插件问题,是 Sublime 内核根本不处理主机名前缀。
所有“远程编辑”方案都只有两条路:一是用 SFTP 插件走 SFTP 协议同步文件(本地编辑 + 保存上传),二是用 rsub 配合反向隧道(远程执行 rsub file.py 触发本地 Sublime 打开)。二者都不是流式编辑,也不等于 VS Code 的 Remote-SSH。


















