testwrite.c 818 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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: testwrite [-d dir] wikifile n\n");
  12. exits("usage");
  13. }
  14. void
  15. main(int argc, char **argv)
  16. {
  17. ulong t;
  18. int i;
  19. Biobuf *b;
  20. String *h;
  21. Whist *doc;
  22. char tmp[20];
  23. t = 0;
  24. ARGBEGIN{
  25. case 't':
  26. t = strtoul(EARGF(usage()), 0, 0);
  27. break;
  28. default:
  29. usage();
  30. }ARGEND
  31. if(argc != 2)
  32. usage();
  33. if((b = Bopen(argv[0], OREAD)) == nil)
  34. sysfatal("Bopen: %r");
  35. if((doc = Brdwhist(b)) == nil)
  36. sysfatal("Brdwtxt: %r");
  37. sprint(tmp, "D%lud\n", time(0));
  38. if((h = pagetext(s_copy(tmp), (doc->doc+doc->ndoc-1)->wtxt, 1))==nil)
  39. sysfatal("wiki2text: %r");
  40. if(writepage(atoi(argv[1]), t, h, doc->title) <0)
  41. sysfatal("writepage: %r");
  42. exits(0);
  43. }