

HexFiend - A fast and clever open source hex editor for Mac OS X - coderdude
http://ridiculousfish.com/hexfiend/

======
ridiculous_fish
Hi, I'm the author. Thanks for all the kind words!

I'm very actively developing Hex Fiend, which is nearing a new release. Some
major new features are bookmarks, support for text encodings (including
multibyte, though sadly not variable width), support for opening files only
readable by root, including device files (after authentication, naturally),
and a visual binary diff (a true LCS diff). There's many other miscellaneous
improvements and bug fixes, including the longstanding request of preserving
the Undo stack after Save, when doing so would not require too much memory.

For those unfamiliar with Hex Fiend, the features that set it apart from other
hex editors are:

\- Very deep support for large files. Many other hex editors have some support
for large files, but it's easy to get into a situation where they consume all
your memory, or do some O(n) blocking operation that hangs the UI. Hex Fiend
never does either.

\- Natural Mac-like editing, including insertion and deletion, smooth
scrolling, multiple discontiguous selection, anchored selection, coalesced
undo, key bindings, lots more.

\- It's provided as a framework which is easy to embed in other apps.

\- It's open source with a permissive BSD style license.

Some have asked how Hex Fiend compares to 0xED. Not to pick on anyone, but
I'll give some examples that illustrate Hex Fiend's strengths relative to 0xED
(and most other hex editors):

1\. Open a large file (say 5 GB), overwrite some bytes in the middle, add some
bytes to the end, then hit Save. Hex Fiend will appear to save instantly
because it makes the changes in-place, while 0xED will require time
proportional to the file size as it writes the entire file to disk.

2\. Search for some text. 0xED will block the UI until the text is found or
the file is exhausted, while Hex Fiend performs the search in the background,
including a progress indicator and cancel button.

3\. Select everything in the file and choose Edit->Copy. Hex Fiend will do
this instantly, while 0xED will require time and space proportional to the
file size, as it attempts to read the entire file into memory. Now select all
and hit the delete key. Hex Fiend again does this instantly, while 0xED will
again try to read the file into memory (to service its Undo stack).

Let me know if you have any questions and I'll be happy to answer them in this
thread!

~~~
neutronicus
First of all, I love your app. It has been _invaluable_ to me in my work.

I do however, have a few UI niggles you might be interested in hearing. When I
jump to an offset, I have the hardest time spotting the cursor. There's that
nice brief yellow line flash so I can see what line the cursor is on, which is
already a lifesaver, but I just can't spot the little blinking line, the grey
on white just doesn't stand out enough I guess. I have to click on the line
and basically binary search down to the right offset. Some sort of call out
for the quad of bytes containing the cursor as well as the line would be
_awesome_.

Also, since I'm mostly looking at scientific data I'm trying to parse, it is
_awesome_ to hear that you've added signed floats and integers.

Let me just reiterate, thanks for this app.

(Also, apologies if I'm referring to an old version - I don't know offhand
which one I have)

~~~
ridiculous_fish
That's a good suggestion. Please feel free to add any requested features or
bugs you find to the wiki page at
<http://ridiculousfish.com/hexfiend/docs/wiki/Bugs/Bugs> . Thanks!

------
tptacek
Sort of old news, I guess, but worth saying: this is one of the 3 most-used
tools at Matasano. It's a really excellent piece of code.

~~~
there
did you guys ever modify it?

~~~
tptacek
We've done all sorts of strange things to it over the years; 'yan is planning
on embedding it wholesale into one of our projects, so that may be the
direction we're going with it.

------
wheels
I prefer 0xED.app:

<http://www.suavetech.com/0xed/0xed.html>

~~~
tptacek
It isn't open source, is it?

~~~
uxp
No, just free of charge.

------
petercooper
I hit "Post to Delicious" on this and noticed I'd already done so on March 28,
2006. The Internet is now officially too big by my reckoning :-)

------
statictype
Incidentally, the author was also the one who wrote this delightful piece:
[http://ridiculousfish.com/blog/archives/2006/05/30/old-
age-a...](http://ridiculousfish.com/blog/archives/2006/05/30/old-age-and-
treachery/)

------
js2
Ye olde friend, ridiculousfish.com:

[http://www.google.com/search?q=site:news.ycombinator.com+rid...](http://www.google.com/search?q=site:news.ycombinator.com+ridiculousfish.com)

:-)

And couldn't help but notice in the results:

<http://news.ycombinator.com/item?id=734727>

------
erkmene
If you, like me, wonder about the Windows alternatives; Hexplorer (
<http://artemis.wszib.edu.pl/~mdudek/> ) is a very nice and capable hex editor
for Windows. The only downside is that it chokes on rather big files. Then
again, I don't use it daily for my work, so I might be missing some big pros
or cons.

------
wildmXranat
I'm not sure if Okteta is available for Mac as well, but it's a beautiful hex
editor I use when on linux. WinHex is great on windows. I'll take a look if
this might a good choice to use on my mac.

~~~
pipeline_tux
Okteta's beautiful from a user interface perspective, but like most hex
editors it fails when trying to deal with large files. There are very few hex
editors around that will open files that are larger than the amount of RAM
that you have.

