
What's new in Synalyze It!
Here you find the latest new features of Synalyze It!.
Some of them are only available in the Pro version you find in the Mac App Store.
Version 1.7
- New: Referenced grammars are now searched in grammar directory or installed grammars directory if no absolute path is specified
- New: Installed grammars are displayed in toolbar
- New: Pascal strings can have size 0 now
- New: debugLog("text") method
- Fix: Results of custom elements are read-only if they have no method that translates the value back
- Fix: Crashes when displaying file as UTF-8
- Fixed 10.9 related issues
- Fix: Grammar window resized for smaller screens
- Fix: Length of grammar references correctly used in parsing
- Fix: signed int parsing for three-byte elements
- Fix: override element's length to 2 from the parent's 1
Version 1.6
- New: fixed-length strings don't have to start on byte boundaries
- New: Python interpreter can be called recursively now
- Fix: Names of referenced structure now updated correctly
- Fix: Fill selection with pattern works now also when selected from end to start
- Fix: Sometimes files were not closed correctly
Version 1.5
- New: Binary/string length of 0 doesn't mean "unlimited"
- Fix: Text alignment for non-proportional fonts
- Fix: Structure length evaluation
- Fix: Setting of child structure
- Fix: Repeat count expressions
- Several other fixes
Version 1.4
- New: Install grammar function
- New: Display relative offsets in results table
- New: Elements can be enclosed in structures in the hex editor
- New: Single elements or structures can be disabled
- New: Added GSM 03.38 encoding
- New: Update to ICU library 5.1
- New: Full-screen support
- New: Empty structures are ignored now
- Fix: Repeat count zero works now
- Fix: Length check for Pascal strings corrected
- Fix: New element names are properly assigned now
Version 1.3
The most important extension is the script editor in Synalyze It! Pro that lets you automize tasks and extend the functionality of the application.
Additionally to Lua you can script now in Python which is better suited to work on binary data.
Other changes:
- New: Relative positioning via toolbar: "+12", "-0x61" (only Pro version)
- New: All scripts can be written now in Python
- New: Script editor for scripts that work on files or grammars, implement parsing (custom data type), or do something else (only Pro version)
- New: Application is now sandboxed (Mac App Store requirement)
- New: Added spotlight plugin for grammar files (all non-free versions)
- New: Optionally show hidden files or packages in file-open dialog
- New: Values in the mask panel are displayed red if they can't occur with a certain mask
- New: "Additional offset" in offset element can contain an expression now
- New: Basic support for AppleScript (all non-free versions)
- New: Automatic installation of scripts - see The Script Page (only Pro version)
- Fix: Byte alignment on bit level fixed
- Fix: Fixed mask editing for number display types != Hex
Version 1.2
Binary and number elements can have now arbitrary bit lengths (numbers up to 64 bit).
This enables users to process many more file formats that work on sub-byte entities.
Additionally numbers can be displayed binary which is useful especially for numbers
consisting not of a multiple of 8 bit.
Reparse files manually. In the preferences you can disable now the automatic parsing of file and trigger the structure mapping manually. This helps when working on large files that need some seconds to be processed.
- New: Added 16-bit checksum (only Pro version)
- Fix: reference of "this." uses now the correct value in repeated structures
- New: Log messages can be displayed now attached to the document window
- New: Bit fields. There's no new element, numbers and binary elements can have now sub-byte length
- Removed: The encoding "x11-compound-text" sometimes froze the application
- New: Copying of log messages to clipboard
- New: Warn if a file was modified on disk
- New: If the clipboard contains a hex string you can paste it as hex bytes
- Fix: Display of progress panel if file is opened twice
- New: Improved parsing error reports. The first message that led to the parsing failure is selected
- New: Hex view size is fixed now when resizing the window
- New: Custom type info can be set now in the grammar info if the OS defaults are wrong
- New: Repeat count "infinite" now selectable
- Fix: Grammar files are now of UTI public.xml to make editing them with an XML editor easier
- Fix: Duplicate structure names are avoided now when copying structures
- Fix: Hex values in expressions work now
- Improvement: Searching in large files is much faster and needs less RAM
- New: Scripting functions for parsing of single elements added (only Pro version)
- New: Elements inserted via hex view are selected now in grammar editor
- New: The length of deleted elements in grammar is now added to unused space around to keep positions stable
Version 1.1.6
Compute checksums for the selected bytes (Only available in Pro version)
Jump to positions using expressions. (Only available in Pro version)
Decode the current selection as different variable types or colors. Entering new values supports also expressions. (Only available in Pro version)
Write Lua scripts where the standard grammar mechanics are not sufficient so parse your files. See also the Scripting Class Reference.
When you open a file where a grammar is available either opened, installed or remote, Synalyze It! can suggest one of these grammars. In the preferences dialog you can choose if you want suggestions and how.
If you create a grammar that could be useful also for other people, please use the publish button in the file menu.
Directly jump to a position inside a file by pressing Cmd-G. The dialog displays the file length conveniently in decimal and hex.
The file offset of on the left side of the hex view can be displayed now in decimal, hex, octal or just the line number. Just ctrl-click (right mouse button) the line offset.
Also for the selection start, end and length you can choose now how to display. In the contextual menu you can set the display type per column individually or for all columns at once.