As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
From time to time, I need to compare files binarily, but is there any open source tool that can do this?
UltraCompare can, but it's a commercial product.
There's an open-source product called VBinDiff that I found in a search, but I don't have any direct experience with it. It appears to be cross-platform (Linux and Windows) and has packages for the binaries and source. Good luck!
GNU diffutils comes with a program called cmp that will tell you the first offset at which two binary files differ. Unfortunately, it does little more than that.
Alternatively, you could hexdump each file and pipe it into your favorite text diff tool:
diff <(hexdump -v -e '1/1 "%02x\n"' binfile1) <(hexdump -v '1/1 "%02x\n"' binfile2)
bsdiff and xdelta are two that immediately come to mind.
Subversion must know how. It supports incremental change recording for binary objects.
Worst case you could look at their source base...
The standard GNU diff shows if two files differ. You might want to look into xdelta for tracking changes (probably what SCM tools use).
To see changes in the files you could hexdump both files and just diff them, I suppose.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I have a big project with many .c and .h files to navigate. What tool do you have the best experience?
I searched online and found users recommend etags, global, and ECB. I just wonder which one is best for my case so that I can stick with it. Thanks.
I think etags or ctags are easy to use. Many open source projects come with make rules to generate the databases for these type. For C++, ebrowse is better. Personally, I like to use a project bundled with emacs. If you download a 3rd party app, you will have to re-compile whenever you upgrade, and often there is more integration work. At least if you start with etags and ctags, you can find they don't have the needed features and then investigate some of the 3rd party eLISP packages.
I have made some assumptions.
You use *nix.
You use Gnu emacs.
Something else may be better with XEmacs and/or on Windows and OSx.
Apparently, global fits my criteria; but I have never used it personally. I have tried to get CEDET working and it is very difficult. It might be easier if your distro comes with a package (.deb, .rpm, etc) for something like CEDET.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I would like to know what would be the best programming languages to develop an open source that can work on mainly windows and mac.
any person should be able to change the source code if he/she wanted to without the need to recompile it. this is to allow further development and bug fixing.
The application does not require a massive computational resources and it would have a GUI.
what would you recommend?
the only thing i have in mind is to do the application using matLab. any other choice?
Many thanks for your feedback,
Python. There are many IDEs available, and the code is extremely readable. The community also maintains excellent documentation. I would advise against using Matlab to develop Open Source Software because Matlab itself is not an open source program. Maybe since you are talking about something mathematical, an open source alternative could be Octave? But I don’t really know what you mean by an application. Hope anything I suggested helped.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I was looking looking for the sources of real-life applications that are written in Lisp. For example a Pacman clone or a word processor would qualify as such.
How about a
web server?
text editor?
a type setter?
an interactive musical score editing application?
More example can be had at the cliki. Just stroll around a little bit.
The package-management application (similar to apt-get) that I use for Arch Linux, Paktahn, is written in Common Lisp.
Here is a list of applications written in Common Lisp. How "real world" they are is debatable, but since you consider a pacman clone to be "real world", I assume you will be satisfied.
Two big things come to mind.
EMACS
Maxima
The first has an incredible number of customizations. It would not surprise me in the least to find Pac-Man implemented in EMACS. Maxima does symbolic mathematics, so I imagine it'd be more difficult to grok the code.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
What is a good open-source tool for blaming / praising / annotating code (or other text that has a history)?
What I mean is a tool to take code that has a history in source control and show which line came from which revision / version.
I would prefer one that detects lines that were moved, too. And it has to be open source.
Update: I want to view/use its code, not just use the tool itself.
Almost all version control systems include functionality like this (I'd say that versioning systems that don't are broken). If you're using CVS, the comand is cvs annotate; if you're using Subversion, it's svn blame. The right way to do this is going to be specific to your VCS, even if you're using web-based tools like ViewVC or ViewSVN (or github!).
I believe Trac offer a blame (annotate) mode, when used in conjonction with some VCS (like SVN or Mercurial)
For instance, the Mercurial plugin in Trac has support for visual blame annotations:
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
The Emacs Wiki lists several modes for supporting mercurial inside of Emacs, including the built-in VC mode. Is it worth exploring any of the other modes, such as the one distributed with mercurial itself?
I would suggest DVC. It supports other distributed version control systems (notably git), it's easy to configure and it works as much like the default VC mode as reasonable. It also seems to have a larger user-base than the mercurial mode.
This depends on which other DVCS you using. If you using several, then DVC could be good choice.
If you want to get native support of mercurial, then you can use either mercurial.el (described in my article), either aHg package, that has some advantages over mercurial.el. I plan to update my article with description of this package, but i don't know when it will be done :-(