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" 设置:
本地客户端
建议仅允许本地客户端访问。在这种情况下,您需要打开到您想要编辑文件的系统的 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 配合使用,您需要安装一个插件,例如 rsub 或 RemoteSubl。
您可以通过 Package Control 安装插件,安装 Package Control,然后按 Cmd + Shift + P
(Mac)或 Ctrl + Shift + P
(Linux/Windows),选择 Package Control: Install Package
,最后选择 rsub
或 RemoteSubl
。
也可以手动安装插件。
- 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. 项目安装方式
请参考 "安装指南" 部分的说明进行安装。
热门项目推荐
相关项目推荐
- 国产编程语言蓝皮书《国产编程语言蓝皮书》-编委会工作区017
- nuttxApache NuttX is a mature, real-time embedded operating system (RTOS).C00
- qwerty-learner为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workersTSX027
- 每日精选项目🔥🔥 01.17日推荐:一个开源电子商务平台,模块化和 API 优先🔥🔥 每日推荐行业内最新、增长最快的项目,快速了解行业最新热门项目动态~~026
- Cangjie-Examples本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。Cangjie045
- 毕方Talon工具本工具是一个端到端的工具,用于项目的生成IR并自动进行缺陷检测。Python039
- PDFMathTranslatePDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/DockerPython05
- mybatis-plusmybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com 低代码组件库 http://aizuda.comJava03
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript0108
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09
热门内容推荐
最新内容推荐
项目优选
收起
Python-100-Days
Python - 100天从新手到大师
Python
266
55
国产编程语言蓝皮书
《国产编程语言蓝皮书》-编委会工作区
65
17
Cangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
196
45
openHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
53
44
HarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
268
69
qwerty-learner
为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workers
TSX
333
27
CangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
896
0
advanced-java
Advanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。
JavaScript
419
108
MateChat
前端智能化场景解决方案UI库,轻松构建你的AI应用,我们将持续完善更新,欢迎你的使用与建议。
官网地址:https://matechat.gitcode.com
144
24
HarmonyOS-Cangjie-Cases
参考 HarmonyOS-Cases/Cases,提供仓颉开发鸿蒙 NEXT 应用的案例集
Cangjie
58
4