我的问题与此问题有关:Custom command for Eclipse on current file
但那里的答案并不完全符合我的要求。
我想在当前缓冲区上运行外部命令(例如:外部代码格式化程序)(例如:将缓冲区的内容传递给命令的标准输入)并将结果重新加载到当前缓冲区,可以撤消( Ctrl + Z )动作。
我想对缓冲区内容采取行动,而不是存储在磁盘上的文件内容。
如果没有编写自定义Eclipse插件,有没有办法做到这一点?
答案 0 :(得分:1)
外部命令无法访问文本编辑器用于存储数据的Document
实例。外部命令只能访问文件,因此首先需要保存编辑器内容。
这意味着您需要编写一个允许外部命令查看编辑器的插件(可能是基于JSON / REST的查询服务),或者您需要编写一个可以执行所有操作的新插件。
看看Eclipse Monkey,创建一个可以在不启动PDE的情况下执行所需操作的脚本应该非常简单。请注意,Monkey已停止使用,但它仍然有效,因为它仅依赖于少数核心API。