是否存在一种专门编辑文本的脚本语言?

简介: 据大家所知,有没有这样一种脚本语言:专门用于编辑文本信息? 我现在是比较习惯 Emacs 的快捷键,而且最近使用的键盘按方向键不太方便,所以很希望所使用的软件都能用 Emacs 的快捷键来操作。 一开始,我使用 XKeymacs (日本人开发的一款小工具),它能把 Windows 下所有应用程序的快捷键都转换成 Emacs 的。不过这个软件不太稳定,和 mitty 等软件配合得也不好;可配

据大家所知,有没有这样一种脚本语言:专门用于编辑文本信息?

我现在是比较习惯 Emacs 的快捷键,而且最近使用的键盘按方向键不太方便,所以很希望所使用的软件都能用 Emacs 的快捷键来操作。

一开始,我使用 XKeymacs (日本人开发的一款小工具),它能把 Windows 下所有应用程序的快捷键都转换成 Emacs 的。不过这个软件不太稳定,和 mitty 等软件配合得也不好;可配置性也不强,只能选择是否启用某些快捷键。

后来我想到 AutoHotKey,它算是一门脚本语言,可以用脚本模拟鼠标、键盘操作,控制 Windows 窗口等,最主要的是可以给任何操作绑定热键。就定义快捷键而言,它绝对是无可匹敌了,我仔细研究了一下它的文档,发现它只能用来组合现有功能,而且不具备 操作文本的能力。

简单地说,我用 AutoHotKey 能做到的地步就是将 Windows 记事本一些现有的快捷键切换成和 Emacs 一样,比如用 Ctrl-D 代替 Delete、用 Ctrl-A 代替 Home 等。可是,诸如 Emacs 中 Meta-a 可以移动到句子的开头这种功能,因为 记事本 本身没提供,因此 AHK 也无能为力了。

所以,我在想有没有另一种语言,来设定一些全局的编辑功能?无论光标在哪个编辑窗口里,按 M-f 都能往前移动一个 word、按 M-v 往后移动一个 page,等等。本来,emacs-lisp 是很不错的,可惜它只能用来定制 Emacs,没办法去增强其他程序的功能。而 AHK 可以通过组合来增强现有程序的能力,却没办法编辑文本。如果能有一种结合两者的优点的就好了。

简言之:如果 Emacs 的配置是对整个操作系统有效就好了;或者说,如果操作系统里所有牵涉到编辑的地方都能自动调用 Emacs 来编辑就好了。

想象一下,如果一个工具(或者一门编程语言)能从系统层次上做全局的“光标”控制,无论当前光标处在哪个编辑窗口中(记事本、Word、Outlook 的邮件正文等等),它发送一个类似 forward-char 的命令都能令光标向前移动一个字符,发送 backward-sentence 就后退一句话。如果有这样的工具,再配合 AHK 将这些命令绑定成快捷键,就能在所有文本输入的地方使用相同的编辑功能!

后记

好吧,我语文水平亟待提高,我需要用很多话才能说清自己的想法。

我感觉上面的话还是没表达出我的 Point。首先,我并不是想要一款能完成所有任务的万能的软件,而抛弃所有其他应用软件。比如现在看 pdf 已经有很多优秀的软件了(比如 SumatraPDF),如果就是为了我个人使用的话,我实在想不出任何理由再开发一款 Emacs 的插件专门看 pdf(虽然这看起来的确很酷)。

我主要是看到现在的软件都各自为政,拥有自己一套操作方式。比如删除整一行在 Vim 里是 dd,在 Eclipse 里是 Ctrl-D,而到了 Emacs 里是 C-a C-k。我真正想要的是一种能从系统的角度配置一套符合自己习惯的统一操作的方法。

我相信大家也会有类似的经历:拿到了一个代理 ip 地址和端口,兴冲冲地配置了 ie。要下载?还要配置迅雷等下载工具。要聊天?那 QQ 什么的也要配。悲剧的是有些工具还是弱到不能设置代理!或者有些屁大的软件也很崩溃地自带一个设置代理功能(也不管用不用得上)。但如果有一个软件,在要在其中配置了代理信息,然后所有其他应用程序的网络通信都由它接管(就像拨号连接一样),不用再挨个去设置了,软件开发人员也可以省下不少精力去开发原本就与软件本身无关的功能了。而且这个软件本身的功能也更容易提高,比如增加 filter 功能什么的。

如前文所述,普通的操作已经可以通过配置 AHK 来统一了。于是我想更进一步统一配置所有的文本编辑操作(不一定绑定得和 Emacs 一摸一样,但关键是能像 Emacs 这样可配置)。

目录
相关文章
|
11月前
|
Python
Python——获取网页文本内容
Python——获取网页文本内容
176 0
|
索引
LaTeX:中文作业排版的编辑技巧
一般情况下,如果有 LaTeX 的模板,就不用怎么考虑目录的格式,直接用命令 `\tableofcontents` 自动生成就好了。但是有一些作业,想要用 LaTeX 排版,就要考虑老师给的格式,例如要自己重新设定各级标题的格式,对于中文的支持有时候也会带来一些报错。
261 0
|
Python
Python编程:sublime打开中文文本乱码
Python编程:sublime打开中文文本乱码
Python编程:sublime打开中文文本乱码
|
前端开发 开发工具 Windows
如何更好的编辑文本
在使用电脑的过程中,经常要编辑这样或那样的文件,虽然不同的软件又不同的文件格式,但是最常见的文件还是文本文件。比如编程时各种编程语言的源文件,操作系统中的各种文件配置,尤其在*nix系统/etc目录下的文件,随手用记事本记录的文件等等。
913 0