我一直在努力为我的aquamacs做一个简单的任务。
我通过ssh在远程服务器上运行R会话。
我的Aquamacs在我的机器上本地运行。
我想要的是能够将当前行或当前选择发送到我的iterm2上的活动R会话。这可以通过命令“Cmd-Enter”和插件sendText在sublime text 2上轻松完成。
我们如何才能完成这项简单的任务?
最佳,
答案 0 :(得分:2)
我遇到了同样的问题,并找到了以下解决方案。我修改了(非常轻微)this gist,并将其作为包添加到Aquamacs。
以下是基本步骤:
将上面的要点复制到新文件中,然后将函数iterm-send-string
更改为以下内容:
(defun iterm-send-string (str)
"Send STR to a running iTerm instance."
(let* ((str (iterm-maybe-remove-empty-lines str))
(str (iterm-handle-newline str))
(str (iterm-escape-string str)))
(shell-command (concat "osascript "
"-e 'tell app \"iTerm2\"' "
"-e 'tell current window' "
"-e 'tell current session' "
"-e 'write text \"" str "\"' "
"-e 'end tell' "
"-e 'end tell' "
"-e 'end tell' "))))
要将其设为包,您可以将以下内容添加到文件顶部
;;; iterm.el --- sends selections to iTerm.app -*- lexical-binding: t; -*-
;; modified from: https://gist.github.com/johnmastro/88cc318f4ce33b626c9d
;; Author: David Little <david.frank.little@gmail.com>
;; Keywords: lisp
;; Version: 0.0.1
;;; Commentary:
;; Works on Mac OS X: sends a selction to iTerm
;; To match SublimeText's key binding:
;; (global-set-key (kbd "<C-return>") 'iterm-send-text)
;;; Code:
然后你只需要致电M-x package-install-file
。将iterm-send-text
函数绑定到快捷方式(例如上面评论中的C-return
)后,您应该开展业务!