Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9267575
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 18, 20262026-06-18T14:35:02+00:00 2026-06-18T14:35:02+00:00

In trying to get my real differencing engine up, I’ve trimmed to a very

  • 0

In trying to get my real differencing engine up, I’ve trimmed to a very minimal setup, but still have no output and no indication of why nothing appears to happen. (Search of SO and Mercurial site (including the mercurial wiki) for extdiff gave me all the ideas I’ve tried, though perhaps I haven’t tried all.)

I have tried a bash script and a .bat file; I have tried each of the scripts located in the “root” of the E: drive, identified as /cygdrive/e/ or as E:/ I have tried with and without quoting the path to the script. I think I’ve exhausted the combinations and have yet to get any indications of what (if anything) is running. When invoked directly, FdbCmp.bat behaves as expected; it is in a directory on my $PATH and in the Windows Path environment variable.

Other suggestions? It looks like it is simple enough and should “just work”

mercurial.ini includes

[extdiff]  
hgext.extdiff
cmd.fdiff0 = "e:/Program Files/DbCmp/FdbCmp.bat"
opts.fdiff0 = $root --file $local --file $other

FdbCmp.bat:

@echo off
echo FdbCmp.bat testing
echo FdbCmp.bat args: ::%1:: ::%2:: ::%3 ::%4:: ::%5:: ::%6:: ::%7:: ::%8:: ::%9::

hg showconfig | grep extdiff returns the expected results (among a few other lines)

extdiff.cmd.fdiff0="e:/Program Files/DbCmp/FdbCmp.bat"  
extdiff.opts.fdiff0=$root --file $local --file $other  
extensions.hgext.extdiff=  

hg fdiff0 returns with $? = 0 (cygwin bash or CMD.EXE) and no output displayed. I expected the FdbCmp.bat file would have printed something.

hg fdiff0 a b c (where files a, b, c do not exist) returns the following. This is expected, as the files don’t exist and Hg reports that.

a: The system cannot find the file specified  
b: The system cannot find the file specified  
c: The system cannot find the file specified  

hg fdiff0 file1 file2 file3 where all files exist returns with no error and no output. This is unexpected – FdbCmp.bat should have been invoked and printed its something.

Just testing the .bat file alone gives the expected results:
$ FdbCmp.bat moo cow oink pig

FdbCmp.bat testing  
FdbCmp.bat args: ::moo:: ::cow:: ::oink ::pig:: :::: :::: :::: :::: ::::  

hg –version is 2.4.6-35ba170c0f82

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-18T14:35:03+00:00Added an answer on June 18, 2026 at 2:35 pm

    A re-read of the extdiff section of the documentation shows that options “will be inserted to the command between the program name and the files/directories to diff”, unlike the merge-tools behaviour where options and files may be intermixed as required to build an appropriate comand line. The $local, $root, … variables do not exist within the context of extdiff; they are merge-tools features that do not apply here.

    The relevant mercurial.ini section now is

    [extensions]
    # enable the extdiff extension
    hgext.extdiff =
    
    [extdiff]
    # define a jpeg differencing script; no options required
    cmd.jpgdiff = HgJpgDiff.bat
    # HgJpgDiff.bat is in a directory in my $PATH and contains:
    # @rem ... various lines to test if we have been handed directories or files to compare
    # @rem ...we only compare files, so this is the only active line
    # JpgDiff --file %1 --file %2
    
    [diff-patterns]
    **.jpg=jpgdiff
    

    and all works as desired now. Echoing parameters to a file helped to debug; nothing was ever displayed on the screen.

    Many thanks.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

i have a real weird thing going on. I am trying to get the
I'm trying to get a real equivalent for Java's public static final in Scala
I've been having real problems trying to get a ruby script to run through
i am having a issue with treeview liststore trying to get a real-time update,
I'm trying to get EHCache to mark cache elements as expired if they have
I am trying to get public fields dynamically but it keeps returning an empty
I'm trying to get just ONE copy of my application on my real iPhone
I am trying to do property double Real; and then double Data::ComplexNumber::Real::get() { return
I am trying to get a trace of an Android device but I am
I'm trying to get to light. In DDD approach we have Presentation Layer(UI), Application

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.