Example #1
0
        public void Run()
        {
            var parserOutput = new ParserOutput();

            try
            {
                foreach (var hotkeyFile in _hotkeyFiles)
                {
                    var text = CommentRegex.Replace(hotkeyFile.Value.Text, "");
                    new MyCharReader(new LocatedString(RunPreprocessor(text), new Location(1, 1)), parserOutput).Run();
                }
                foreach (var action in _parseActions)
                {
                    action.Value(parserOutput);
                }
                foreach (var mode in parserOutput.Modes)
                {
                    mode.ResolveIncludes(parserOutput);
                }
            }
            catch (Exception ex) when(!Helper.IsFatalException(ex))
            {
                Env.Notifier.WriteError(ex, "Failed to parse hotkeys.");
                return;
            }
            FireNewParserOutput(parserOutput);
        }
Example #2
0
 public MyCharReader(LocatedString text, ParserOutput parserOutput) : base(text)
 {
     _parserOutput = parserOutput;
 }
Example #3
0
 public void FireNewParserOutput(ParserOutput parserOutput)
 {
     _dynamicHotkeyCollection = parserOutput.DynamicHotkeyCollection;
     NewParserOutput(parserOutput);
 }