我正在使用 JEdit 和 JDiff 插件进行文件比较。现在我想使用命令行参数从另一个工具打开 JDiff 插件。这可能吗?到目前为止,我只能在 JEdit 中打开要比较的 2 个文件。

最佳答案

这几乎有效......我只是无法在加载其他文件后执行宏......

把这个宏放在一个文件中。

view.splitVertically();
editPane.prevBuffer();
jdiff.DualDiff.toggleFor(view);

如果您使用 Linux 或 Mac,请将其放入 ~/.jedit/macros/split_wins_and_jdiff.bsh 。如果你在 Windows 上,把它放在某个地方......( c:/split_wins_and_jdiff.bsh 也许?)

然后运行:
java -jar jedit.jar -noserver  -norestore  \
    -run=$HOME/.jedit/macros/split_wins_and_jdiff.bsh\
    file_on_left file_on_right

问题是,我无法在初始化后运行宏,因此该方法会导致错误。如果您可以执行两步过程,那么您可以执行以下操作:

设置
  • 在你的宏区安装上面的宏(~/.jedit/macros for linux, mac)
  • 为宏创建快捷方式:
  • 单击实用程序 -> 全局选项
  • 在左侧面板中,选择“快捷方式”
  • 在过滤器中,输入“split_wins_and_jdiff”
  • 双击“split_wins_and_jdiff”右侧和“主要快捷方式”下方的单元格
  • 执行命令序列(我的宏命令序列总是以 ctrl+m 开头。我认为这是 JEdit 约定...)
  • 通过单击“确定”按钮保存快捷方式

  • 如何使用

    每当你想快速 jdiff 两个文件时:
    * 打开两个文件:
    java -jar jedit.jar -noserver  -norestore file_on_left file_on_right
    
  • 在 jedit 加载后,立即使用您创建的快捷方式运行您的宏。

  • 没有宏

    顺便说一句,如果你为 JDiff 创建一个快捷方式(对我来说是 ctrl+shift+d, d),你可以在没有宏的情况下完成所有这些
  • 打开两个文件:

    java -jar jedit.jar -noserver -norestore file_on_left file_on_right
  • 垂直分屏

    ctrl+3
  • 在右侧屏幕上(现在在拆分后选择),使用 ctrl+page-up 循环到另一个缓冲区。
  • 用你的快捷方式打开 JDiff(对我来说 ctrl+shift+d, d)

  • 在 jedit 中创建宏非常简单。您可以简单地记录它们,它们将在新缓冲区中弹出,您可以在其中查看实际的宏代码。这就是我为创建宏所做的工作。尝试探索宏菜单和宏用法。

    10-05 22:54