1 /// The configuration file of DIL. 2 /// 3 /// The file is searched for in the following order: 4 /// $(OL 5 /// $(LI The file path set in the environment variable DILCONF.) 6 /// $(LI The current working directory.) 7 /// $(LI The directory set in the environment variable HOME.) 8 /// $(LI The executable's directory.) 9 /// $(LI The /etc directory on Linux.) 10 /// ) 11 /// The program will fail with an error msg if this file couldn't be found.$(BR) 12 /// 13 /// Any environment variable used inside a string is expanded to its value. 14 /// The variables BINDIR and DATADIR are set by DIL. Examples: 15 /// $(UL 16 /// $(LI ${HOME} -> the home directory (e.g. "/home/name" or "C:\Documents and Settings\name").) 17 /// $(LI ${BINDIR} -> the absolute path to the executable's directory (e.g. "/home/name/dil/bin" or "C:\dil\bin").) 18 /// $(LI ${DATADIR} -> the data directory of DIL (e.g. "/home/name/dil/data" or "C:\dil\data").) 19 /// ) 20 /// 21 /// Relative paths are resolved and made absolute using the current working directory. 22 module dilconf; 23 24 /// Files needed by DIL are located in this directory. 25 var DATADIR = "${BINDIR}/../../data"; 26 27 /// Predefined version identifiers. 28 var VERSION_IDS = []; 29 30 /// An array of import paths to look for modules. 31 var IMPORT_PATHS = []; /// E.g.: ["src/", "import/"] 32 33 /// DDoc macro file paths. 34 /// 35 /// Macro definitions in ddoc_files[n] override the ones in ddoc_files[n-1].$(BR) 36 /// 37 /// E.g.: ["src/mymacros.ddoc", "othermacros.ddoc"] 38 var DDOC_FILES = ["${DATADIR}/predefined.ddoc"]; 39 40 /// Path to the language file. 41 var LANG_FILE = "${DATADIR}/lang_en.d"; 42 /// Path to the xml map. 43 var XML_MAP = "${DATADIR}/xml_map.d"; 44 /// Path to the html map. 45 var HTML_MAP = "${DATADIR}/html_map.d"; 46 47 /// Path to the files of kandil. 48 var KANDILDIR = "${DATADIR}/../kandil"; 49 50 /// Customizable formats for error messages. 51 /// 52 /// $(UL 53 /// $(LI 0: file path to the source text.) 54 /// $(LI 1: line number.) 55 /// $(LI 2: column number.) 56 /// $(LI 3: error message.) 57 /// ) 58 var LEXER_ERROR = "{0}({1},{2})L: {3}"; 59 var PARSER_ERROR = "{0}({1},{2})P: {3}"; /// ditto 60 var SEMANTIC_ERROR = "{0}({1},{2})S: {3}"; /// ditto 61 62 /// The width of the tabulator character set in your editor. 63 /// 64 /// Important for calculating correct column numbers for compiler messages. 65 var TAB_WIDTH = 4;