Edit Anything

Professional text and hex editing
with Binary Templates technology.






What's New in Version 4.0

010 Editor v4.0 now has a new, streamlined interface:

Version 4.0 adds support for word-wrap and editing very large text files:

The new File Bar above each editor provides a more intuitive way to run templates and scripts using the 'Run Script', 'Run Template' and 'Run on File' buttons:

A number of tasks are now performed with a bar at the bottom of the editor including Find, Replace, Find in Files, Goto, and Select Range:

Performing Find All on a text file now lists all lines where the occurrences were found:

Plus much more. To download the latest version, please click the following link:






Download 010 Editor v8.0







Version 4.0.4 - March 20th, 2013

  • Fixed Find Strings finding unicode strings on odd byte boundaries.
  • Fixed crash assigning to a non-existent variable from a script.
  • Fixed crash in find hex bytes when using ',a'.
  • Fixed crash when checksum functions are used inside custom read/comment functions.

Version 4.0.3 - November 8th, 2012

  • Fixed crash with Printf when using certain combinations of parameters.
  • Fixed problem using Goto on the Mac.
  • Fixed using on-demand structs within custom read functions in certain cases.
  • Fixed printing multiple copies of files.
  • Disabled redirection of files within the main Windows directory.
  • Fixed some progress issues when using Find functions inside of scripts.
  • Show error instead of crashing when trying to copy huge blocks of data to other applications.
  • Fixed order of some items in the View menu in 'Tools > Options > Keyboard'.

Version 4.0.2 - July 24th, 2012

  • Fixed a crash using Find on certain long text files.
  • Fixed a bug with using Export Hex and more than 256 bytes per line.
  • Fixed issues using on-demand structs inside arrays.
  • Fixed color picker issues on the Mac.
  • Fixed last two lines of a customized Inspector disappearing in certain cases.
  • Fixed background colors not being cleared properly when a template was cleared.
  • Fixed a notification during installation about an expired license.
  • Now signing the installer using SHA-1.

Version 4.0.1 - June 6th, 2012

  • Fixed crash with a custom Auto-Inspector and certain long operations.
  • Fixed crash with wordwrap on very long lines.
  • Fixed Paste from Hex Text on Mac OS X.
  • Fixed clicking on a bookmark, variable, or find result will always select bytes in the editor.
  • Fixed editing bookmarks that contain arrays.
  • Fixed issues with the Find results when searching for text containing linefeeds.
  • Fixed enums and different numeric formats when displaying local variables.
  • Fixed adding or removing 010 Editor from the Windows Explorer right-click menu using the Options dialog.
  • Fixed the Output tab automatically scrolling down as text is added.
  • Fixed the FindNext function should not be selecting data.
  • Fixed the FindNext function when used with DeleteBytes in a loop.
  • Fixed crash with the HexOperation function on a new file.
  • Fixed the Short type specifier in the Goto Bar.
  • Fixed allowing hotkeys to be set for Mark Selection Start/End.
  • Fixed misplaced cursor when changing the endian of a Unicode file.
  • The Goto and Select Range Bars now accept extra whitespace.

Version 4.0 - May 14th, 2012

The following is an overview of the new functionality in version 4.0 of 010 Editor:

  • Streamlined interface with a simplified tool bar.
  • Easier, more intuitive way to run Templates or Scripts using the File Bar above each editor.
  • Added support for word wrap and text files with a huge number of lines.
  • Tools such as Find, Replace, Find in Files, Goto, Select Range are now displayed in a bar below each editor for a better workflow.
  • Can customize the Auto Inspector using a custom Template.
  • Revamped Find tool allows searching for variables in the Template Results.
  • When a Find All or Find in Files is done on a text file, all text lines that contain a match are listed.
  • Added 'Search > Find Strings' dialog for listing all strings in a hex file.
  • Can visually swap bytes in the hex editor without modifying the underlying data.
  • Can restore all open files when 010 Editor is restarted (select 'Restore all open files' on the Startup page).
  • Comments can now specify a custom function using '<comment=<function_name>>'.
  • Printf function now does type checking and automatically casts parameters.
  • Templates can now read from or write to other files when granted special permission.
  • Over 45 new functions for Scripts and Templates.

The following is a list of all new features in version 4.0 of 010 Editor:

  • General
    • Simplified the tool bars and updated some icons.
    • File Bar above each editor provides a more intuitive way to run Templates or Scripts.
    • Can restore all open files when 010 Editor is restarted (select 'Restore all open files' on the Startup page).
    • View menu now shows different options when using a text-based interface or hex-based interface.
    • In the Workspace, can sort the list of recent files by Name or by Time using the right-click menu (sort by Time is the default now).
    • Startup page has been redesigned with resizable sections.
    • Can customize the polynomial and initial value for CRC checksums.
    • Added more options to the 'View > Addresses' menu.
    • Use 'View > Addresses > Shorts' for displaying addresses as words (all addresses are divided by 2).
    • Can switch File Interfaces using the Edit As section of the File Bar.
    • Right-click on the Output panel to Copy All, Export Text, or Clear.
    • Can apply Highlighting rules by Shorts.
    • The Welcome dialog allows inputting a license when 010 Editor is in trial mode.
    • Added '-saveall' command line option.
    • Added 'Copy File Path' command to the File Tab right-click menu.
    • Synchronize Scrolling now only scrolls files that are visible.
    • Cannot change a hex-based interface to a text-based interface or vice versa.
    • When opening a file that is already opened, the file is selected before being asked to create a duplicate.
    • Right-click on the application when all tabs are closed for an option to show the Startup Page.
    • Removed comment column for bookmarks (currently unused).
    • 010 Editor configuration file is saved more often.
    • Configuration file now stored in 'Users\<Username>\AppData\Roaming\SweetScape\010 Editor\010Editor.cfg' on Windows.
    • Windows Explorer right-click menu now lists '010 Editor' instead of '010 Editor v3'.
    • Updated help viewer.
  • Text Editor
    • Added support for text files with huge numbers of lines.
    • Any long text lines over the maximum line length will be split into multiple lines and marked by '-' in the address column.
    • The maximum line length can be set using the Text Editor Options dialog.
    • Clicking after the last line always moves the cursor to the last byte.
    • Hide the Group By, Division Lines, Left Area, Right Area, Line Width options in the View menu for text files.
    • Word Wrap
      • Can automatically wrap lines that are longer than the text editor window with 'View > Linefeeds > Toggle Word Wrap' or Ctrl+;.
      • Word Wrap can be turned on automatically using 'View > Linefeeds > Initial Wrap State > Auto-detect'.
      • '/wrap' is displayed in the Edit As section of the File Bar above each editor when Word Wrap is turned on.
      • Can wrap on the window edge or a custom column using 'View > Linefeeds > Wrap Width'.
      • Can wrap on letters instead of words using 'View > Linefeeds > Wrap Method'.
      • Word Wrap is supported for files with a large number of lines.
    • Byte-Order Marks
      • Added better support for working with Byte-Order Marks (BOMs).
      • Auto-detect UTF-8 BOMs.
      • Status Bar displays '+B' when a BOM is present.
      • Add or remove BOMs using 'Tools > Convert'.
      • Can auto-add BOMs to new files using the File Interface Options dialog.
  • Hex Editor
    • Can visually swap bytes in the hex editor without modifying the underlying data.
    • Bytes can be swapped in groups of 2, 4, 8, etc. (use 'View > Group By' menu to enable).
    • Display 'LIT<>' in the status bar when swapping bytes is enabled.
    • Set the number of bytes per line in a hex editor using 'View > Line Width'.
    • Hide the Linefeeds and Tabs/Whitespace options in the View menu for hex files.
  • Find
    • Find/Replace/Find in Files/Replace in Files now performed from a bar at the bottom of the editor.
    • When a Find All or Find in Files is done on a text file, all text lines that contain a match are listed.
    • Revamped Find/Replace tools with icons for Find/Replace Next/Previous.
    • Added 'Search > Find Strings' dialog for listing all strings in a hex file.
    • Can search for Variables in the Template Results using the Find Bar.
    • Selecting a Find occurrence in the editor highlights that occurrence in the Find results.
    • Can list all replacements after doing a Replace All (see 'Show All Replacements' in the Find Bar Options).
    • Lock Find/Replace to a selection using 'Lock Selection' in the Find Bar Options.
    • The locked selection will be colored brown and used for Find/Replace until unlocked.
    • Can display the address in the Find results in more formats.
    • Show or hide the size column in the Find results (hidden by default).
    • Ignoring case and match whole word work better when finding extended unicode characters.
    • Find in Files list updates automatically when the files are edited.
    • Can turn off wrapping for find (see Find Bar Advanced Options).
    • Can list all files when doing a Find in Files operation.
    • Can turn off the use of Find Specifiers using the Find Bar Advanced Options.
    • When searching for Unicode, selected Unicode text is automatically copied to the Find Bar when it is opened.
    • Default to Unicode Find type when finding in a Unicode file.
  • Scripts/Templates
    • Use 'Run Script', 'Run Template' or 'Run on File' sections above each editor for running scripts and templates.
    • Comments can now specify a custom function using '<comment=<function_name>>'.
    • Templates can now read from or write to other files when granted special permission.
    • Permissions can be controlled using the Permissions section of the Options dialog and can be turned off for all files.
    • Support searching in the Template Results (use 'Variable Name'/'Variable Value' in the Find Bar).
    • From the Template Results right-click menu, can either expand all nodes of the selected node (Expand all Children of Node) or expand all nodes in the tree (Expand All Nodes).
    • Right-click on a numeric template variable and choose 'Goto > Goto Address' or 'Goto > Goto Sector'.
    • Can override the string displayed in the Name column of the Template Results using '<name="<string>">' or '<name=<function_name>>'.
    • On Windows can right click on a script or template in the Scripts or Templates menu and select 'Edit Script' or 'Edit Template'.
    • Updated included scripts to using RequiresFile and GetScriptName functions.
    • Can run a script on no file by selecting '(none)' in the Run on File section of the File Bar.
    • When doing a CSV export or Copy of the Template Results, the Color field will be converted to a hex color instead of being left blank.
    • An integer with <format=binary> will now show all bytes if zero instead of just the first byte.
    • 'L' string constants now support UTF-8.
    • Prevent running a template on a template.
    • Generate a warning if defining a large number of template variables.
    • Removed variable mouse-over brackets on a text file (was being displayed incorrectly).
  • New Functions
    • Can convert between a binary string and an integer (BinaryStrToInt, IntToBinaryStr).
    • Added functions to perform checksums on arrays (ChecksumAlgArrayStr, ChecksumAlgArrayBytes).
    • Can convert strings between various encodings (ConvertString).
    • Added functions to extract path, extension, or base name from a file name (FileNameGetBase, FileNameGetBaseW, FileNameGetExtension, FileNameGetExtensionW, FileNameGetPath, FileNameGetPathW, FileNameSetExtension, FileNameSetExtensionW).
    • Can search for an open file in the editor (FindOpenFile, FindOpenFileW).
    • Can retrieve environment variables (GetEnv).
    • File attributes for Windows or Unix files can be retrieved or changed (GetFileAttributesUnix, GetFileAttributesWin, SetFileAttributesUnix, SetFileAttributesWin).
    • Retrieve the character set of the current file (GetFileCharSet).
    • Get or set which file interface is being used for the current file (GetFileInterface, SetFileInterface).
    • Retrieve the name of the current script or template being run (GetScriptName, GetScriptNameW, GetScriptFileName, GetScriptFileNameW, GetTemplateName, GetTemplateNameW, GetTemplateFileName, GetTemplateFileNameW).
    • Provided function to get a temporary file name (GetTempFileName).
    • Can get or set the current working directory (GetWorkingDirectory, GetWorkingDirectoryW, SetWorkingDirectory, SetWorkingDirectoryW).
    • Provided function to perform any of the Hex Operations in the Tools menu (HexOperation).
    • Can calculate the length of a null-terminated string in a file (ReadStringLength, ReadWStringLength).
    • Provided function to ensure that a script is being run on a target file (RequiresFile).
    • Can write a message to the status bar (StatusMessage).
    • Convert strings easily to UTF-8 format (StringToUTF8, WStringToUTF8).
    • Can convert characters to upper or lower case (ToLower, ToLowerW, ToUpper, ToUpperW).
    • Can convert from a text column to an address (TextColumnToAddress).
  • Function Updates
    • Printf function now does type checking and automatically casts parameters.
    • Interface type can be specified for the FileOpen and FileNew functions.
    • GetFileName returns a UTF-8 string.
    • FileOpen will now accept a UTF-8 string.
    • FileOpen no longer pops up an error message if the file could not be found.
    • Better handling of opening duplicate files with the FileOpen function.
    • Can specify a different character set in the StringToWString and WStringToString functions.
    • MessageBox supports UTF-8 encoding.
    • RunTemplate can be run with no arguments to rerun the Template associated with the current file.
    • Added argument to the RunTemplate function to prevent clearing the Output panel.
    • SubStr/WSubStr now default to -1 instead of 0.
    • Can specify a custom date format in the functions GetCurrentTime, GetCurrentDate, GetCurrentDateTime, StringToDosDate, StringToDosTime, StringToFileTime, StringToOleTime, StringToTimeT, DosDateToString, DosTimeToString, FileTimeToString, OleTimeToString, and TimeTToString.
    • Can set the maximum wildcard length in the FindAll, FindFirst, FindInFiles, and ReplaceAll functions.
    • Removed HTML tag processing from Printf.
  • Selections
    • 'Edit > Select Range' tool now displays a Select Bar at the bottom of the editor.
    • When selecting bytes while the Select Bar is open, the Select Bar will update to display the selection.
    • Right click on an editor and choose 'Select > Mark Selection Start' or 'Select > Mark Selection End' to set the selection.
    • Added Save Selection to the editor right-click menu.
    • Save Selection automatically appends the start/size of the selection to the file name.
  • Inspector
    • Can customize the Auto Inspector (right-click the Inspector and choose 'Customize...').
    • Auto Inspector can be set to use a custom template (by default the 'Inspector.bt' file is included with 010 Editor).
    • Data types can be reordered or deleted from the Auto Inspector using the custom template.
    • Any data type (including Custom Variables) can be added to the Auto Inspector using the custom template.
  • Goto
    • 'Search > Goto' tool now displays the Goto Bar below the editor.
    • Use the Goto Bar to jump to a byte, line, sector or short in a file.
  • Options
    • Can set the maximum line length for text files.
    • Can set the auto-hide time for bars in the application (Find Bar/Replace Bar/Goto Bar/Select Bar/etc.).
    • Added option to remember the last used File Interface, Endian, and Word Wrap for a file.
    • Allow setting the color for the Find Selection Lock.
    • Must specify whether a File Interface is text-based or hex-based when the interface is created.
  • Mac OS X
    • Now use Ctrl+G for Find Next and Ctrl+Shift+G for Find Previous on the Mac.
    • Now use Ctrl+L for Goto and Ctrl+Shift+G for Goto Again on the Mac.
    • Add File Proxy icons to the Application Window (drag to other Windows to open).
    • Removed icons on the menu for Mac.
    • Removed icons on sub-windows for Mac.
    • Fixed order of some OK/Cancel buttons on the Mac.
    • Fixed Windows Clipboard should be called Macintosh Clipboard on the Mac.
  • Hotkeys
    • Ctrl+E now toggles between Big and Little Endian.
    • Word Wrap can be toggled on or off using Ctrl+;.
    • Can access Options dialog using Ctrl+, on Windows.
    • Changed close window hotkey to Ctrl+W.
    • Changed close all window hotkey to Ctrl+Alt+W.
    • Fixed issue with Previous Tab shortcut.
    • Can show or hide the File Bar above each editor using Ctrl+/.
  • Bugs
    • Fixed bug copying large blocks of data to other applications.
    • Fixed issues with editing UTF-8 characters.
    • Fixed crash when a startup script was missing.
    • Fixed constants in the form 0B?h.
    • Fixed crash in certain invalid assignments to a struct.
    • Fixed bug with extra character when casting from a string to a wstring.
    • Fixed bug with switch statement when default was the first statement.
    • Fixed a case where a non-terminated string could potentially cause a crash.
    • Fixed case where the Close All icon enabled state was not correctly set.
    • Fixed case when Close All could cause the Floating Tab Group to be displayed.
    • Fixed case where Close All Except This could close the wrong files.
    • Fixed bug with assigning to a negative float or double.
    • Fixed issue with using return in a function with no return value.
    • Fixed OutputPaneCopy/OutputPaneSave missing the last row if no linefeed.
    • Fixed case where commented lines were colored incorrectly when jumping through a file.
    • Fixed crash in the Inspector with certain rare Unicode strings.
    • Fixed bug with FindFirst/FindAll when size=0 and start>0.
    • Fixed bug with FindFirst/FindAll and finding Unicode values.
    • Fixed bug with FindNext/FindAll using dir=-1.
    • Fixed FPrintf(newFile,"%c",0) now works properly.
    • Fixed issue with all red text in the Output panel.
    • Fixed case when a Hex file is split and then scroll down, the ruler would not be displayed correctly.
    • Fixed InputOpenFileName/InputOpenFileNames not using the default file name.
    • Fixed AddBookmark can add bookmarks in any of the base types without first running a template.
    • Fixed bug with '//' after #define.
    • Fixed constants COMPARE_SYNCHRONIZE and COMPARE_SIMPLE were switched.
    • Fixed rare crash when running templates and progress issues.
    • Fixed crash calling TextReadLine with an empty string.
    • Fixed possible crash with MessageBox function when using only two parameters.
    • Fixed issues with Copy/Paste from Hex Bytes with Unicode files.
    • Fixed DOS linefeeds being transformed to Unix linefeeds when copying to the Find Bar.
    • Fixed running a comparison can cause empty an Floating Tab Group to be displayed.
    • Fixed a possible crash with an infinite recursion script.
    • Fixed issues with character sets in the Find results window.
    • Fixed correctly detecting when a file read-only flag is changed outside 010 Editor.
    • Fixed Export CSV automatically adds quotes around items containing commas.
    • Fixed in split-view mode, the selection could move after editing.
    • Increased amount of memory the undo stack is allowed to use.

For a full list of changes in other versions of 010 Editor, please see the Release Notes.




010 Editor Menu


Latest News


Download
- 010 Editor
v8.0
is now available.

Download it now!
What's New in 8.0?


Other Products


Articles


Newsletter
Join our newsletter to receive tips and tricks on hex editing, special offers, and news from SweetScape Software Inc.

Sign-up Now...