首页
/ rmate 项目技术文档

rmate 项目技术文档

2024-12-27 02:27:43作者:宗隆裙

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

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

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

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
470
3.48 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
718
172
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
212
85
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
696
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1