Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | added optional FILE arg to wiki export |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
7adbf773c2377e5289d22bf997314d23 |
User & Date: | stephan 2008-05-16 03:18:23.000 |
Context
2008-05-16
| ||
13:31 | Add the "Index Page" setup option to allow each site to configure a page to appear when no URL is specified or when the "Home" menu option is selected. ... (check-in: c7c81df1 user: drh tags: trunk) | |
03:18 | added optional FILE arg to wiki export ... (check-in: 7adbf773 user: stephan tags: trunk) | |
01:43 | Added new "wiki create" command. Cleaned up the "wiki commit" code and added an option filename argument to both "wiki commit" and "wiki create". ... (check-in: e03d1be5 user: drh tags: trunk) | |
Changes
Changes to src/wiki.c.
︙ | ︙ | |||
663 664 665 666 667 668 669 | /* ** COMMAND: wiki ** ** Usage: %fossil wiki (export|commit|list) WikiName ** ** Run various subcommands to fetch wiki entries. ** | | | | | | < < < < < < | | > | | > > > > > > > > > > > > > > > > | > | 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 | /* ** COMMAND: wiki ** ** Usage: %fossil wiki (export|commit|list) WikiName ** ** Run various subcommands to fetch wiki entries. ** ** %fossil wiki export PAGENAME ?FILE? ** ** Sends the latest version of the PAGENAME wiki ** entry to the given file or standard output. ** ** %fossil wiki commit PAGENAME ?FILE? ** ** Commit changes to a wiki page from FILE or from standard. ** ** %fossil wiki create PAGENAME ?FILE? ** ** Create a new wiki page with initial content taken from ** FILE or from standard input. ** ** %fossil wiki list ** ** Lists all wiki entries, one per line, ordered ** case-insentively by name. ** ** TODOs: ** ** %fossil wiki export ?-u UUID? WikiName ?FILE? ** ** Outputs the selected version of WikiName. ** ** %fossil wiki delete ?-m MESSAGE? WikiName ** ** The same as deleting a file entry, but i don't know if fossil ** supports a commit message for Wiki entries. ** ** %fossil wiki ?-u? ?-d? ?-s=[|]? list ** ** Lists the UUID and/or Date of last change along with each entry ** name, delimited by the -s char. ** ** %fossil wiki diff ?UUID? ?-f infile[=stdin]? EntryName ** ** Diffs the local copy of a page with a given version (defaulting ** to the head version). */ void wiki_cmd(void){ int n; db_find_and_open_repository(1); if( g.argc<3 ){ goto wiki_cmd_usage; } n = strlen(g.argv[2]); if( n==0 ){ goto wiki_cmd_usage; } if( strncmp(g.argv[2],"export",n)==0 ){ char const *zPageName; /* Name of the wiki page to export */ char const *zFile; /* Name of the output file (0=stdout) */ int rid; /* Artifact ID of the wiki page */ int i; /* Loop counter */ char *zBody = 0; /* Wiki page content */ Manifest m; /* Parsed wiki page content */ if( (g.argc!=4) && (g.argc!=5) ){ usage("export PAGENAME ?FILE?"); } zPageName = g.argv[3]; rid = db_int(0, "SELECT x.rid FROM tag t, tagxref x" " WHERE x.tagid=t.tagid AND t.tagname='wiki-%q'" " ORDER BY x.mtime DESC LIMIT 1", zPageName ); if( rid ){ Blob content; content_get(rid, &content); manifest_parse(&m, &content); if( m.type==CFTYPE_WIKI ){ zBody = m.zWiki; } } if( zBody==0 ){ fossil_fatal("wiki page [%s] not found",zPageName); } for(i=strlen(zBody); i>0 && isspace(zBody[i-1]); i--){} zFile = (g.argc==4) ? 0 : g.argv[4]; if( zFile ){ FILE * zF; short doClose = 0; if( (1 == strlen(zFile)) && ('-'==zFile[0]) ){ zF = stdout; }else{ zF = fopen( zFile, "w" ); doClose = zF ? 1 : 0; } if( ! zF ){ fossil_fatal("wiki export could not open output file for writing."); } fprintf(zF,"%.*s\n", i, zBody); if( doClose ) fclose(zF); }else{ printf("%.*s\n", i, zBody); } return; }else if( strncmp(g.argv[2],"commit",n)==0 || strncmp(g.argv[2],"create",n)==0 ){ char *zPageName; Blob content; if( g.argc!=4 && g.argc!=5 ){ |
︙ | ︙ |