从命令行打开JEdit JDiff-Plugin

时间:2010-11-11 15:23:16

标签: jedit

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

2 个答案:

答案 0 :(得分: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)
  • 中安装上述宏
  • 为宏创建快捷方式:
    • 点击工具 - &gt;全球选项
    • 在左侧面板中,选择“快捷方式”
    • 过滤器中的
    • ,键入“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中创建宏很简单。您只需记录它们,它们就会弹出一个新的缓冲区,您可以在其中查看实际的宏代码。这就是我创建宏的过程。尝试探索宏菜单和宏用法。

答案 1 :(得分:1)

我意识到这是一个老问题,但是前几天我遇到了这个问题。我建立在像Ross的回答中那样运行beanshell脚本的想法。我相信我已经完成了所有工作(无需手动运行宏),并且我认为我会在这里做出贡献来表达“谢谢”,以指导我朝着正确的方向前进。

这是我getting jEdit to diff from the command line的整个设置,它包括使用jEdit作为Git的“difftool”。

PS:我想把它作为Ross回答的后续行动,但我是新来的,并没有意识到我需要货币来评论答案。