首页
/ rmate 项目技术文档

rmate 项目技术文档

2024-12-27 09:19:32作者:宗隆裙

1. 安装指南

快速安装

您可以通过以下命令快速安装 rmate:

sudo wget -O /usr/local/bin/rmate https://raw.githubusercontent.com/aurora/rmate/master/rmate
sudo chmod a+x /usr/local/bin/rmate

或者使用 bpkg 进行安装:

bpkg install aurora/rmate

确保您的系统中已安装 bash 且编译了 /dev/tcp 支持。

2. 项目使用说明

配置编辑器

TextMate 2

在 TextMate 2 的首选项中,启用 "Allow rmate connections" 设置,位于 "Terminal" 设置中。根据需要调整 "Access for" 设置:

TM2_terminal_preferences

本地客户端

建议仅允许本地客户端访问。在这种情况下,您需要打开到您想要编辑文件的系统的 SSH 连接,并指定一个远程隧道:

ssh -R 52698:localhost:52698 user@example.com

或者在本地 ~/.ssh/config 文件中添加以下行:

Host example.com
    RemoteForward 52698 127.0.0.1:52698

登录到远程系统后,现在可以执行:

rmate test.txt
远程客户端

在某些机器上,如果无法进行端口转发(例如,由于缺少 ssh 守护进程),可以允许 "远程客户端" 访问。只需通过 ssh 或 telnet 连接到远程机器并执行:

rmate -H textmate-host test.txt

Sublime Text

要使用 rmate 与 Sublime Text 配合使用,您需要安装一个插件,例如 rsubRemoteSubl

您可以通过 Package Control 安装插件,安装 Package Control,然后按 Cmd + Shift + P(Mac)或 Ctrl + Shift + P(Linux/Windows),选择 Package Control: Install Package,最后选择 rsubRemoteSubl

也可以手动安装插件。

  • Linux
git clone https://github.com/henrikpersson/rsub ~/.config/sublime-text-3/Packages/rsub
git clone https://github.com/randy3k/RemoteSubl ~/.config/sublime-text-3/Packages/RemoteSubl
  • Windows
git clone https://github.com/henrikpersson/rsub %APPDATA%/Sublime Text 3/Packages/rsub
git clone https://github.com/randy3k/RemoteSubl %APPDATA%/Sublime Text 3/Packages/RemoteSubl
  • OS X
git clone https://github.com/henrikpersson/rsub ~/Library/Application Support/Sublime Text 3/Packages/rsub
git clone https://github.com/randy3k/RemoteSubl ~/Library/Application Support/Sublime Text 3/Packages/RemoteSubl

然后按照本文档中 "本地客户端" 部分所述进行操作。

VS Code

要使用 rmate 与 VS Code 配合使用,您需要安装一个扩展,例如 Remote VSCode

// 远程 VSCode 配置

// 使用的连接端口号。
"remote.port": 52698

// 启动时启动服务器。
"remote.onstartup": true

// 监听地址。
"remote.host": "127.0.0.1"

// 如果设置为 true,将不再显示端口已被使用的错误。
"remote.dontShowPortAlreadyInUseError": false

然后按照本文档中 "本地客户端" 部分所述进行操作。

3. 项目API使用文档

以下是 rmate 的使用方法:

编辑指定的文件:

$ ./rmate [arguments] [--] file-path

从 stdin 读取文本:

$ echo "hello TextMate" | ./rmate [arguments] -

参数

  • -H, --host HOST:连接到指定的主机。使用 'auto' 从 SSH 检测主机。
  • -p, --port PORT:使用指定的端口号。
  • -w, --[no-]wait:等待 TextMate 关闭文件。
  • -l, --line LINE:加载文件后,将光标放在指定的行号上。
  • +N:如果 N 是一个数字(例如:+5),则为 --line 的别名。
  • -m, --name NAME:在 TextMate 中显示的名称。
  • -t, --type TYPE:将文件视为指定类型。
  • -n, --new:在新的窗口中打开(Sublime Text)。
  • -f, --force:即使文件不可写也打开。
  • -v, --verbose:详细的日志消息。
  • -h, --help:显示使用信息。
  • --version:显示版本并退出。

4. 项目安装方式

请参考 "安装指南" 部分的说明进行安装。

热门项目推荐
相关项目推荐

项目优选

收起
Python-100-DaysPython-100-Days
Python - 100天从新手到大师
Python
266
55
国产编程语言蓝皮书国产编程语言蓝皮书
《国产编程语言蓝皮书》-编委会工作区
65
17
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
196
45
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
53
44
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
268
69
qwerty-learnerqwerty-learner
为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workers
TSX
333
27
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
896
0
advanced-javaadvanced-java
Advanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。
JavaScript
419
108
MateChatMateChat
前端智能化场景解决方案UI库,轻松构建你的AI应用,我们将持续完善更新,欢迎你的使用与建议。 官网地址:https://matechat.gitcode.com
144
24
HarmonyOS-Cangjie-CasesHarmonyOS-Cangjie-Cases
参考 HarmonyOS-Cases/Cases,提供仓颉开发鸿蒙 NEXT 应用的案例集
Cangjie
58
4