首页
/ rmate 项目技术文档

rmate 项目技术文档

2024-12-27 19:28:12作者:宗隆裙

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. 项目安装方式

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

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
860
511
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
259
300
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
595
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K