A File Interface includes all of the following options: Font, Addresses, Character Set, Linefeeds/Line Width, Tabs/Whitespace, Addresses, Group By, Areas, Highlight, Division Lines, Ruler, and Endian (basically all options in the top part of the View menu). Consult Working with File Interfaces for more information. Each file that is loaded is assigned a File Interface from the File Interfaces list; however, different interfaces can be generated and applied automatically to different files by file type. The File Interface Options dialog allows creating or deleting interfaces for editing. Access this dialog by clicking the 'Tools > Options...' menu option and selecting File Interfaces from the list, or by clicking 'View > Edit As > Edit File Interfaces...'.
A list of all available file interfaces is displayed at the top of the dialog. Clicking the New button will generate a new file interface and you must specify whether you would like to create a text-based file interface or a hex-based file interface. Select an item from the list and click Delete to remove an interface. Clicking the up or down arrows will change the position of the interface in the list.
After a file interface is selected from the list, options for that interface will be displayed in the File Interface Options box. Enter a name for the interface in the Name field. This name will appear under the 'View > Edit As' menu and the Edit As drop-down list in the File Bar above each editor. Clicking the Visible toggle provides any easy way to show or hide the interface on the menu.
When a file is opened, it is automatically assigned an interface based on the Mask field. The file mask may contain the characters '*' or '?' to indicate wildcards and is not case sensitive. For example, use '*.bmp' to match all BMP files, or 'C:\temp\*.0??' to match all files under the temporary directory with an extension starting with '0'. If multiple masks match a file, the last matching interface in the list will be applied to the file. Note that if no file mask matches the file, 010 Editor will automatically try to detect the correct file interface to use (see Opening Files in the Editor Options dialog for more options). 010 Editor can remember the last used File Interface for a file so this method of applying File Interfaces only applies to files that have not been opened before in 010 Editor.
If the Use Default toggle is enabled, the file interface uses either the default text editor font or the default hex editor font from the Font Options dialog. If the Use Default toggle is disabled, a custom font can be set for the interface by clicking the Font button and using the standard font dialog to select a font. If the file interface is for a text-based file the Default Linefeeds drop-down list is used to choose which linefeeds to insert when a new file is created using this File Interface. The linefeeds to choose depend upon which type of character set is chosen with the Character Set option:
- Unicode - Linefeed choices include DOS (CR+LF - 0x000D000A), UNIX (LF - 0x000A), Mac (CR - 0x000D), NEL (0x0085), FF (0x000C), LS (0x2028), or PS (0x2029).
- EBCDIC - Linefeed choices include DOS (CR+LF - 0x0D25), UNIX (LF - 0x25), or NEL (0x15).
- All other Character Sets - Linefeed choices include DOS (CR+LF - 0x0D0A), UNIX (LF - 0x0A), or Mac (CR - 0x0D).
If the file interface is for a hex-based file the Line Width drop-down list can be used to indicate Fixed Width or Auto Width. When using Fixed Width mode the field to the right of the Line Width drop-down list is used to enter the number of bytes per line. Choose the character set using the Character Set drop-down list and if the Add BOM to New Files toggle is enabled, a Byte-Order Mark will be added to files when they are created (note that Byte-Order Marks are only used for Unicode or UTF-8 files and see Byte-Order Marks for more information). Options for the tabs can be controlled through the Tab Size, Indent Size and Insert Spaces fields. See Working with File Interfaces for more information on tabs. If the Add To New Drop-Down Menu toggle is enabled, an entry will be added to the 'File > New' menu and to the New drop-down menu which is accessed by clicking the small arrow to the right of the New icon in the Tool Bar.
All created file interfaces can be accessed by clicking the 'View > Edit As' menu option or the Edit As drop-down list in the File Bar above each editor. The 'View > Edit As > Create New File Interface' menu option provides any easy way to generate a new file interface for a file type (see View Menu for more information).
The following File Interfaces are available by default:
- Text - used for editing text (ASCII) files.
- Hex - used for editing hex (binary) files in hexadecimal notation (e.g. FF 3A).
- Binary - used for editing hex (binary) files in binary notation (e.g. 00101001).
- Script - used for editing an 010 Editor script file.
- Template - used for editing an 010 Editor Binary Template.
- EBCDIC - used for editing EBCDIC text files.
- Unicode - used for editing Unicode text files.
- UTF-8 - used for editing UTF-8 text files.
- Drive - used for editing physical and logical drives.
- Process - used for editing processes.
- Code - used for editing source code such as C/C++ or PHP.
- Tagged - used for tagged files such as HTML or XML.
The Reset button will restore all file interfaces to their original values.