![]() |
text-naar-html-prog
ik heb een miniprog geschreven dat een text naar html converteert
het ondersteund *geen* formatting, en ik ben de laatste om te beweren dat 'm perfect is, maar hij werkt wel :) k ben van plan meer features toe te voegen hij is geschreven in C het staat op html_maker.c je hebt de volgende file nodig om de zooi te compileren: parser.h waarom ik dit hier post... niet om te horen dat 'm zo geweldig is iig, want dat is 'm niet :) eerder zodat andere mense t in konden zien, en verbeteringen/bugs opnoemen, zodat k er ook nog wat van kan leren :) licensie? doe maar iets van GPL ofzo :) |
ik wil het best wel voor je testen,..maar zou je hem dan ff zelf willen compileren?
|
nee :)
ik wil mss wel over m'n hart strijken en linux-x86 binary maken, maar een windows binary is me teveel werk :) (hier kom ik mss nog wel op terug) installeer a): een OS dat *wel* met een c compiler komt :) b): een C compiler en/of IDE, zoals dev c++ . voor de grappenmakers die t willen testen: (binary file) < (input file) > (output file) bvb. a.out < command.txt > command.html dit is de simpelste I/O die je kunt krijgen, maar ik weet eigenlijk niet hoe een fatsoenlijke file I/O op te zetten :) hulp daarmee is gewaardeerd en ja, ik weet dat je main een aantal argumenten mee kunt geven, die je als file pointers kunt gebruiken, maar ik heb hier alleen maar problemen mee gehad edit: linux x86 binary gecompileerd tegen slackware 10.1, zou moeten werken op ieder redelijk modern systeem :) |
Schattig. :)
|
toegevoegde feature!
hij ondersteund nu fatsoenlijk spaties! ik weet het, want k heb t geprobeerd ;) mvg bart |
Citaat:
|
whatever.... :O
bugfix! hij zou 'm eerst verkeerd parsen als je er 2 < achter elkaar zet, maar dat is bij deze gefixed |
paar opmerkingen:
- goed dat je het opdeelt in allerlei functies enzo, maar dat is niet per definitie leesbaarder - als je hetzelfde kan doen in 10 regels code dan zou ik het gewoon in één functie zetten (y) ik vind je functies ook niet echt logisch - probeer implementatiecode in je headerfiles te voorkomen - gebruik geen nederlands en engels door elkaar voor je functies enzo :p - ik denk dat je het in dit geval zonder dynamische geheugenallocatie afkan.. dat scheelt een hoop gedoe en kan een boel kutbugs voorkomen |
ok, bedankt :)
Citaat:
Maar je hebt gelijk, helemaal optimaal is het niet. Citaat:
Code:
d = calloc(a, sizeof(char));Code:
char d[a];en nog iets. de code voor 'n tab is toch \t? bedankt iig :) edit: toch een windows binary! :) http://home.kabelfoon.nl/~bwiegm/test.exe en: hoe maak ik in vredesnaam redelijk netjes een tab in dat ding :S... k zie nog wel :) |
m'n eerste baby is nu officieel dood :)
en t is veel simpeler geworden: Code:
#include <stdio.h>de reden dat t origineel zo ingewikkeld was, komt doordat ik eigenlijk een heel ander systeem in gedachten had :) |
gelukkig gebruik je wel duidelijke namen voor je variabelen zodat ook een ander weet waar ze voor staan...
Enniewees... ik zal die windows binary eens proberen. |
Citaat:
btw, de windows binary is achterhaald - de nieuwstee versie ondersteund tabs :) en de windows versie nog niet |
Citaat:
|
Citaat:
|
Citaat:
de huidige versie ondersteunt dat iig wel :) *en ook de laatste versie, voorlopig* het enige wat ik een beetje jammer vind is dat op deze manier geen support voor formatting in te bouwen is op een relatief schone manier, en dat kon de andere versie weer wel :) maar never mind |
hoe bedoel je?
|
voor het invoeren van opmaak, zul je html tags moeten maken
dus zullen er weer opmaaktags in het tekstbestand moeten staan, zoals \b en \b0 in rtf, of in vbcode :) omdat dit systeem maar 2 karakters heeft, word het domweg onmogelijk tags te herkennen zonder meer karakters toe te voegen, niet een goede manier. Met een al-dan-niet-dynamisch-gealloceerde array is dit veel makkelijker :) maar van de andere kant, zo afgrijselijk belangrijk is dat ook niet :) |
ja maar dan is het ook geen (plain)text data meer :) althans, zo interpreteer je het dan niet... en je kan best simpele tags interpreteren, bijvoorbeeld als je alle tags laat beginnen met een \, bijvoorbeeld \b voor bold, \u voor underline en \\ om een backslash mee aan te geven... dan loop je gewoon alle tekens door zoals je nu doet, en in het geval van een backslash lees je nóg een teken uit die je als speciale tag interpreteert... als je echt een rtf reader wil maken dan komt er véél meer bij kijken maar zelfs dan kan je het beste teken voor teken inlezen
|
| Alle tijden zijn GMT +1. Het is nu 13:58. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.