Entwickler-Ecke
Open Source Projekte - Pas2HTML
retnyg - Sa 04.06.05 21:33
Titel: Pas2HTML
Konvertiert Pascal-Quellcode in eine HTML-Tabelle mit Syntax-Highlighting usw, wie man es vom DF gewohnt ist. Das ganze ohne zusätzliche Stylesheets zu benötigen in ner 14 kb kleinen exe.
download bin + src [
http://krazz.net/retnyg/pas2html.zip]
JayEff - Sa 04.06.05 23:02
willst du nicht lieber Courier nehmen? sieht irgentwie übersichtlicher aus... finde ich.
Summerhill - Sa 04.06.05 23:17
wenn du's per css und <pre> tags machen würdest könnte man die Vargebung viel einfacher verwalten...und die löstigen erzwungenen Leerzeichen wären weg!
retnyg - So 05.06.05 00:19
Summerhill hat folgendes geschrieben: |
wenn du's per css und <pre> tags machen würdest könnte man die Vargebung viel einfacher verwalten...und die löstigen erzwungenen Leerzeichen wären weg! |
danke, das mit dem pre ist echt ein guter tip, habe ich doch direkt eingebaut!
auf das CSS verzichte ich doch gerade deswegen, damit man schnell zu einem resultat kommt ^^
hier ne demo-seite, die mit dem prog formatiert wurde:
http://krazz.net/retnyg/pas2html_example.htm
3rdnuss - So 05.06.05 00:25
Hab da keine Verbesserungsvorschläge. Ich finds gut :arrow: !
Lannes - So 05.06.05 00:42
Hallo,
gut wäre, wenn auch Kommentare in der Form '//' und '(* *)' berücksichtigt würden.
• Ein Fehler tritt auf, wenn das Zeichen ' im Kommentar vorkommt,
das sieht dann so aus:
const
{ define the 'ListView constants }
LVS_OWNERDATA = $01000;
NM_CUSTOMDRAW = (NM_FIRST - 12);
• Umfangreicher Code wird nur bis ca 750 bis 850 Zeilen bearbeitet.
delfiphan - So 05.06.05 00:49
Hier noch eine kleine Liste von Sachen, die mir aufgefallen sind:
* Wenn eine Zeile aus nur einem Zeichen besteht, gibt's ein komisches Zeichen rein.
* Compileroptionen wie {$r+} könnte man noch anders einfärben
* Das & sollte als & übersetzt werden.
* Das read und write bei properties, sowie absolute wird nicht als reservierte Wörter erkannt (jaja, vom DF auch nicht ;)).
Sonst gut :) Schnell, einfach und unkompliziert :) (und klein ;))
retnyg - So 05.06.05 01:29
Lannes hat folgendes geschrieben: |
gut wäre, wenn auch Kommentare in der Form '//' und '(* *)' berücksichtigt würden. |
stimmt, bislang habe ich mich davor gedrückt weil ich dann einiges umbauen müsste :mrgreen:
mach ich aber noch
Lannes hat folgendes geschrieben: |
Ein Fehler tritt auf, wenn das Zeichen ' im Kommentar vorkommt |
ok, wird auch behoben
Lannes hat folgendes geschrieben: |
Umfangreicher Code wird nur bis ca 750 bis 850 Zeilen bearbeitet. |
ist ein problem mit der KOL EditBox-Komponente. die ist anscheinend auf 30.000 zeichen beschränkt. ich habe aber diesbezüglich schon mal ins kol-forum gepostet...
delfiphan hat folgendes geschrieben: |
* Wenn eine Zeile aus nur einem Zeichen besteht, gibt's ein komisches Zeichen rein. |
das mit dem einen zeichen scheint auch ein problem von kol zu sein...
delfiphan hat folgendes geschrieben: |
* Compileroptionen wie {$r+} könnte man noch anders einfärben |
stimmt :P
delfiphan hat folgendes geschrieben: |
* Das & sollte als &amp; übersetzt werden. |
ok...
delfiphan hat folgendes geschrieben: |
* Das read und write bei properties, sowie absolute wird nicht als reservierte Wörter erkannt (jaja, vom DF auch nicht ;)). |
ähm ja, das absolute lässt sich leicht einbauen ;)
delfiphan hat folgendes geschrieben: |
Sonst gut :) Schnell, einfach und unkompliziert :) (und klein ;)) |
danke, freut mich dass es dir gefällt :)
3rdnuss - So 05.06.05 08:42
Ok, vielleicht könntest du noch einen Button Names "Copy all" mit einbauen.
retnyg - So 05.06.05 18:55
neue version:
3rdnuss hat folgendes geschrieben: |
Ok, vielleicht könntest du noch einen Button Names "Copy all" mit einbauen. |
ist jetzt drinnen,
JayEff hat folgendes geschrieben: |
willst du nicht lieber Courier nehmen? sieht irgentwie übersichtlicher aus... finde ich. |
auch,
Summerhill hat folgendes geschrieben: |
wenn du's per css und <pre> tags machen würdest könnte man die Vargebung viel einfacher verwalten...und die löstigen erzwungenen Leerzeichen wären weg! |
css nicht, aber ein style-tag am anfang der tabelle, wo man leicht die farben ändern kann.
Lannes hat folgendes geschrieben: |
gut wäre, wenn auch Kommentare in der Form '//' berücksichtigt würden. |
ita est
delfiphan hat folgendes geschrieben: |
* Das & sollte als &amp; übersetzt werden.
* Das absolute wird nicht als reservierte Wörter erkannt (jaja, vom DF auch nicht ;)).
|
is nun auch drinne...
leider ist die memo momentan auf 30.000 zeichen beschränkt, reicht aber auf jeden fall für die meisten projekte
das KOL-Team arbeitet übrigens grade an einer lösung dafür.
Delete - So 05.06.05 18:56
Warum wehrst du dich so fehement gegen Style Sheets? mach es doch optional.
F34r0fTh3D4rk - So 05.06.05 19:02
sowas gabs hier im forum schonmal, ich hab das ja mal versucht fürn richedit zu proggen, aber die strings und kommentare waren sich immer im weg und wörter wie button wurden so gehighlighted: button wegen to und on
retnyg - So 05.06.05 19:11
F34r0fTh3D4rk hat folgendes geschrieben: |
sowas gabs hier im forum schonmal, ich hab das ja mal versucht fürn richedit zu proggen, aber die strings und kommentare waren sich immer im weg und wörter wie button wurden so gehighlighted: button wegen to und on |
mir ist schon klar dass es sowas schon gibt / gab, meine anforderung war jedoch ein tool wo man nicht mehr machen muss als STRG-C STRG-V, ohne sich noch zusätzlich um style-sheets kümmern zu müssen. also RAD im sinne von delphi.
womit eigentlich auch luckies frage beantwortet sein sollte.
wer will kann ja schnell den style-tag aus dem table-header ausschneiden und in sein CSS integrieren.
delfiphan - So 05.06.05 19:12
:arrow: "for i := 1to 2do" funktioniert noch nicht (knapp aber doch noch korrekter Delphisyntax) ;)
//Edit: downto wird nicht gehighlightet.
//Edit: Tabulator wird nicht als Space erkannt.
//Edit: Folgende reservierte Wörter gehen auch nicht: constructor destructor dispinterface div exports file finalization initialization inline is mod nil property raise resourcestring set threadvar deprecated platform safecall pascal cdecl published.
Und wie gesagt, wenn das reservierte Wort property auf einer Zeile vorkommt, dann gilt für den Rest der Zeile, dass read, write, index und default immer auch reservierte Wörter sind; zudem gilt das auch für die nachfolgenen Zeilen, bis das erste Semikolon auftaucht. ;) Nur so.. vollständigkeitshalber ;) Was mir auch noch grad einfällt: In einem Assembler-Block werden reservierte Wörter natürlich nicht gehighlightet, ausser end..
Wie weit du jetzt gehen willst ist dir überlassen ;)
F34r0fTh3D4rk - So 05.06.05 19:50
das mit property wusste ich auch noch net, das gibt ja der sache ein ganz neues licht :!:
retnyg - So 05.06.05 19:55
danke delfiphan... während du deinen eintrag bearbeitet hast habe ich 3 neue versionen hochgeladen - bist du endlich fertig ? :lol:
ich habe das wichtigste noch eingebaut, die keywords die kein sonderfall sind, und das mit dem tab.
delfiphan - So 05.06.05 19:59
Nein, noch nicht ganz: Im Kommentarblock sollten reservierte Wörter nicht fett werden ;)
Edit:
Keinkommentar
Keinkommentar
So ich hoff das war's etwa :)
Delete - So 05.06.05 23:10
Allerdings ist dein Programm anderer Meinung. ;) Ebenfalls clever wäre es, aufeinanderfolgende Kommentarblöcke zusammenzufassen. Will sagen, aus
Quelltext
1: 2: 3: 4: 5:
| <span class="comment">// Kommentar</span> <span class="comment">// Kommentar</span> <span class="comment">// Kommentar</span>
<span class="comment">{ Kommentar }</span> |
mach
Quelltext
1: 2: 3: 4: 5:
| <span class="comment">// Kommentar // Kommentar // Kommentar
{ Kommentar }</span> |
retnyg - Mo 06.06.05 16:47
Neu !
version 1.2 - jetzt noch schneller und besser
F34r0fTh3D4rk - Mo 06.06.05 16:52
man sollte pas dateien laden können, wäre gut und die farben usw einstellen können :wink:
Spieler1 - Mo 06.06.05 17:50
Gefällt mir sehr gut. Ich mag kleine, nützliche Programme. :)
LH_Freak - Mo 06.06.05 19:01
ist wirklich nicht schlecht, mir würde es aber noch besser gefallen, wenn es das Highlighting von D2k5 benutzen würde
Delete - Mo 06.06.05 22:30
Das müsstest du inzwischen über den Styleblock einstellen können. Immerhin wehrt sich Kamerad retnyg nicht mehr ganz so vehement gegen Styles. :lol:
Edit: retnyg, es wurde IMHO schon gesagt, aber trotz 3 Slashes ist auch
LH_Freak - Mo 06.06.05 23:37
nein, da in D2k5 sachen wie procedure dunkelblau sind, und da er sie einfach nur fett macht, wird das schwer ;)
retnyg - Di 07.06.05 02:31
Neu !!! Neu !!! Neu !!!
nochmal schneller, ne 2 MB grosse .pas datei wird auf meinem 3 Ghz rechner in 24 sek. konvertiert.
unterstützt nun auch drag & drop von pascal files
ahja und @LH-Freak: schau dir mal den b {} absatz im style-tag an, da kannst du die keyword-farbe anpassen.
retnyg - Di 07.06.05 17:14
und noch ein update (hoffentlich das letzte)
kommentar ist jetzt aus dem pre-tag draussen, damit der platz zwischen tabellenbeginn und erster code-zeile passt.
delfiphan - Di 07.06.05 18:19
Leider gehen (bei mir zu mindest) verschalchtelte Kommentar noch immer nicht. (* wird nicht als Kommentar erkannt. Den Borderstyle würd ich ändern (das Fensterchen ist resizable, die Controls im Inneren sind aber fix).
retnyg - Di 07.06.05 18:26
delfiphan hat folgendes geschrieben: |
Leider gehen (bei mir zu mindest) verschalchtelte Kommentar noch immer nicht. (* wird nicht als Kommentar erkannt. Den Borderstyle würd ich ändern (das Fensterchen ist resizable, die Controls im Inneren sind aber fix). |
delfiphan hat folgendes geschrieben: |
Keinkommentar
Keinkommentar
|
versteh ich nicht ganz:
neue version hat folgendes geschrieben: |
<span class="comment">{{{{{Kommentar}</span> Keinkommentar
<span class="comment">{ // }</span> Keinkommentar
<span class="comment">///////////////// Kommentar</span>
|
vielleicht hast du noch die alte im cache ? kuck mal auf das datum, sollte von heute, ca 17h sein
delfiphan - Di 07.06.05 18:49
Geht halt immer noch nicht ganz:
Aber es sind ja nur Details ...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!