Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            // základní mechanismus použití (v minimální implementaci se budou lišit jen třídy tokenizeru a formátoru)
            ISHTokenizer t = new CSharpTokenizer();  // vytvoříme tokenizer

            StreamReader   reader;
            OpenFileDialog fd = new OpenFileDialog();

            fd.DefaultExt = "cs";

            if (fd.ShowDialog() == DialogResult.OK)
            {
                reader = new StreamReader(fd.OpenFile());
            }
            else
            {
                throw new Exception("File not selected");
            }

            t.setInput(reader);                 // nastavíme mu vstupní proud
            ISHFormater f = new HTMLFormater(); // vytvoříme formátor

            f.setSource(t);                     // nastavíme mu tokenizer jako vstupní zdroj tokenů

            StringBuilder builder = new StringBuilder();
            StringWriter  writer  = new StringWriter(builder);

            f.setOutput(writer); // nastavíme mu výstupní proud
            f.run();             // a spustíme proces zvýrazňování syntaxe

            StreamWriter file = new StreamWriter(@"syntax/syntax.html");

            file.Write(writer);

            writer.Close();
            file.Close();
        }