Emacs 网络键盘

6

我希望使用我的安卓手机访问电脑上的Emacs。输出将在我的手机上运行Emacspeak服务器。

如何最好地从手机流式传输键盘事件到Emacs?


也许你可以使用Emacs缓冲区和elisp做些什么?并忽略通道的一个方向?你也可以更清楚地表达问题,我不太明白。你会在哪里输入?在手机上还是电脑上?你会看任何屏幕还是只依赖声音?你是盲人并使用语音作为帮助吗? - Prof. Falken
@AmigableClarkKant - 谢谢您的评论 :) 我不确定如何使用elisp来实现...您能详细说明一下吗?真正的问题是我找不到emacs键盘流。最接近的是在C源代码中的keyboard.c,但是我仍然找不到简单的方法来流式传输它。我会在手机上输入,然后发送到计算机,emacspeak将被发送到我的手机进行合成。我不是盲人,但我正在探索将其用于可穿戴计算。 - stralep
2个回答

3

这取决于您想要做什么。有时我会在手机的SSH终端中运行Emacs。当然,这意味着它显示在手机上而不是电脑屏幕上。


有没有办法使这种通信单向化,只流传键盘事件,而不是将终端绘图发送到相反的方向? - stralep
没有任何我知道的现成工具。我猜诀窍是将事件传递到Emacs中,这可能非常依赖于平台。但是,如果存在这样的工具,那么您可以通过编写一个简单的命令行工具,使用ssh客户端的键盘作为输入设备... - Lindydancer

2
如果您想要单向通信,我认为您有两个选择,都与emacsclient相关。在您的PC上以TCP服务器模式启动Emacs,然后...
要么,
- 弄清楚emacsclient协议,并编写自己的程序,对Emacs来说它看起来像一个emacsclient,但实际上是一个Android程序。
或者,
- 在Android上运行emacsclient,并使用--eval选项。这将使Emacs运行elisp函数,您可以在Emacs端将其设置为任何您想要的东西。(仅当您的Android可以运行emacsclient时才能实现此功能。我不知道这是否涉及到移植到Java应用程序+NDK,或者您是否可以在已Root的手机上获取emacsclient。)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接