Resource File Format A resource file contains text representing the default resource values for an application or set of applications. The format of resource files is defined by Xlib — C Language X Interface. and is reproduced here for convenience only. The format of a resource specification is ResourceLine = Comment | IncludeFile | ResourceSpec | <empty line> Comment =“!” {<any character except null or newline>} IncludeFile = “#” WhiteSpace “include” WhiteSpace FileName WhiteSpace FileName = <valid filename for operating system> ResourceSpec = WhiteSpace ResourceName WhiteSpace “:” WhiteSpace Value ResourceName = [Binding] {Component Binding} ComponentName Binding =“.” | “*” WhiteSpace = {<space> | <horizontal tab>} Component = “?” | ComponentName ComponentName = NameChar {NameChar} NameChar = “a”–“z” | “A”–“Z” | “0”–“9” | “_” | “-” Value ={<any character except null or unescaped newline>} Elements separated by vertical bar (|) are alternatives. Curly braces ({...}) indicate zero or more repetitions of the enclosed elements. Square brackets ([...]) indicate that the enclosed element is optional. Quotes (“...”) are used around literal characters. If the last character on a line is a backslash (\), that line is assumed to continue on the next line. To allow a Value to begin with whitespace, the two-character sequence “\space” (backslash followed by space) is recognized and replaced by a space character, and the two-character sequence “\tab” (backslash followed by horizontal tab) is recognized and replaced by a horizontal tab character. To allow a Value to contain embedded newline characters, the two-character sequence “\n” is recognized and replaced by a newline character. To allow a Value to be broken across multiple lines in a text file, the two-character sequence “\newline” (backslash followed by newline) is recognized and removed from the value. To allow a Value to contain arbitrary character codes, the four-character sequence “\nnn”, where each n is a digit character in the range of “0”–“7”, is recognized and replaced with a single byte that contains the octal value specified by the sequence. Finally, the two-character sequence “\\” is recognized and replaced with a single backslash.