wiki2text.c 779 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #include <u.h>
  2. #include <libc.h>
  3. #include <bio.h>
  4. #include <String.h>
  5. #include <thread.h>
  6. #include "wiki.h"
  7. char *wikidir = ".";
  8. void
  9. usage(void)
  10. {
  11. fprint(2, "usage: wiki2text [-d dir] wikifile\n");
  12. exits("usage");
  13. }
  14. void
  15. main(int argc, char **argv)
  16. {
  17. int i;
  18. Biobuf *b;
  19. String *h;
  20. Whist *doc;
  21. ARGBEGIN{
  22. default:
  23. usage();
  24. case 'd':
  25. wikidir = EARGF(usage());
  26. break;
  27. }ARGEND
  28. if(argc != 1)
  29. usage();
  30. if((b = Bopen(argv[0], OREAD)) == nil)
  31. sysfatal("Bopen: %r");
  32. if((doc = Brdwhist(b)) == nil)
  33. sysfatal("Brdwtxt: %r");
  34. h = nil;
  35. for(i=0; i<doc->ndoc; i++){
  36. print("__________________ %d ______________\n", i);
  37. if((h = pagetext(s_reset(h), doc->doc[i].wtxt, 1)) == nil)
  38. sysfatal("wiki2html: %r");
  39. write(1, s_to_c(h), s_len(h));
  40. }
  41. exits(0);
  42. }