Ich möchte euch heute mein neues Projekt vorstellen.
YASHBox
Yet
Another
Syntax
Highlighter -
Box
Funktionen:
- Syntaxhighlighting mit 3 verschieden einstellbare Farben:
1 - Die frei definierbare Wörteliste
2 - für Strings (das Zeichen welches Strings einleitet & beendet kann eingestellt weden)
3 - für Kommentare (das Zeichen welches Kommentare einleitet kann eingestellt werden)
4 - für durch code in der yashbox hinzugefügte keywords (s.h. DefineString)
- Zeilennummeriereung am rechten/linken (einstellbar) Rand
Geplant:
[*]Perfomanceverbesserung
[/list]
Eigenschaften:
|
Visual Basic Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
YashBox1.KeyColor = Color.Blue 'Farbe die Benutzt wird um die Worter aus "KeyWords" zu Markieren
YashBox1.KeyWords = New String() {"Public", "Class", "Private", "Sub", "ByVal", "As", "Handles", "MyBase", "End", "If", "New", "True", "False"}
'Groß& Kleinschreibung spielt keine ROLLE.
YashBox1.Comment = "'" 'Das (die) Zeichen mit der die Kommentare beginnen
YashBox1.CommentColor = Color.DarkGreen 'Die Farbe mit der die Kommentar markiert werden
YashBox1.CountForeColor = Color.Gray 'Zeilennummerierung: 1. Verlauf - Farbe : STANDARD: GRAU
YashBox1.CountBackColor = Color.White 'Zeilennummerierung: 2. Verlauf - Farbe : STANDARD: WEIß
YashBox1.CountAlign = LeftRightAlignment.Left 'Zeilennummerierung Ausrichtung (linker/rechter Rand) STANDARD: LINKS
YashBox1.HighlightEnabled = True 'Gibt an, ob gehighlighted werden soll. STANDARD: TRUE
YashBox1.CountEnabled = True 'Gibt an ob die Zeilennummerierung aktiviert ist. STANDARD: TRUE
YashBox1.CountFontColor = Brushes.Blue 'Die Schriftfarbe der Zeilennummerierung. STANDART: BLAU
YashBox1.HighlightString = """" 'Zeichen mit dem die zu markierenden Strings beginnen und beendet werden.
'Standart ist wie bei Visual Basic dieses Zeichen: " .
YashBox1.StringColor = Color.DarkRed 'Farbe mit der Strings markiert werden. STANDARD: Dunkelrot
YashBox1.KeyWords2 = New String(){"siehe KeyWords"}
Yashbox1.KeyColor2 = Color.Green 'die Farbe zu KeyWords2
Yashbox1.IntegerColor = Color.Aqua 'Die Farbe mit der Zahlen markiert werden.
YashBox1.DefineString = "#Define"
YashBox1.DefineColor = YashBox1.KeyColor
'Beispiel zu DefineString & DefineColor:
'#Define x as String ->> Im Weiteren Text der Box wird x immer mit der farbe DefineColor markiert.
|
Screenshot:
Download:
Im Anhang (.RAR/.ZIP)
Sonstiges:
Programmiert wurde mit dem .net-Framework 2.0 unter VS 2008.
Ganz wichtig wär mir das ihr das korrekte Darstellen der Zeilennummerierung testet, da ich die Befürchtung hab, das es an verschiedenen PCs anders aussieht.
(DPI ist schon mit einbezogen in meine Berechnung)
EDIT:
NEUE VERSION!
Die Zeilennummerierung geht nur bis zur letzten, benutzten Zeile.
EDIT2:
NEUE VERSION!
Markierung von Zahlen (nicht in Verbindung mit Zeichen, d.h.: 1S --> hier wird die 1 nicht markiert. 11231 --> hier werden alle Zahlen markiert.
2te. KeyWords Liste mit anderer Farbe.
Markieren von im Text der YASHBOX definierten Konstanten.
(vgl. "#Define" in C++)
Druckfunktion wurde noch nicht umgesetzt.