1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243
|
static char *help_text = "NEWS PERUSER OVERVIEW\n"
"\n"
"News Peruser is a suite of seven small programs to enable \n"
"one to do offline reading and composition of Usenet news\n"
"articles. Peruser can compose replies-by-mail, as well, and\n"
"pass them off to a local sendmail. The toplevel applet's\n"
"filename is npcollections, but the distribution Makefile\n"
"attempts to make a symbolic link from npcollections to\n"
"peruser in /usr/local/bin, so you should be able to launch\n"
"News Peruser by typing either name at the shell prompt.\n"
"\n"
"\n"
"CONFIGURATION\n"
"\n"
"Almost all configuration of News Peruser is accomplished\n"
"with the npconfig applet, which is launched by pressing the\n"
"configure button of npcollections, although it can be\n"
"launched from the command line. Only the first three\n"
"notebook pages are required to be completed for Peruser to\n"
"function properly, the rest of the pages specify optional\n"
"parameters. The npconfig program accepts no command-line\n"
"arguments. \n"
"\n"
"\n"
"THE SERVER TREES\n"
"\n"
"Newsgroups are organized into trees in the main scrolled\n"
"window widget of npcollections. The root node of each tree\n"
"is the server node, and its children are the group nodes.\n"
"Folders, if any have been configured, are represented by a\n"
"separate tree, below the news server trees in the scrolled\n"
"window. Folders are spool files where the user can store\n"
"abitrary messages indefinitely.\n"
"\n"
"All news server trees have four groups appended to their\n"
"trees automatically upon creation: the FOLLOW-UPS group, the\n"
"POSTED group, the OUTBOX group, and the SENT-MAIL group.\n"
"Original news articles created by News Peruser for a\n"
"particular news server, sit in the FOLLOW-UPS group until\n"
"the next time the group is transferred, when Peruser will\n"
"attempt to post the articles to the appropriate news server.\n"
"Successfully posted articles are moved from the FOLLOW-UPS\n"
"group to the POSTED group, where they sit until explicitly\n"
"deleted. Outgoing mail messages generated by Peruser sit in\n"
"the group's OUTBOX file until the next time the group is\n"
"transferred, when Peruser will attempt to pass the messages\n"
"off to the sendmail program. Sent mail is moved from the\n"
"OUTBOX group to the SENT-MAIL group, where it sits until\n"
"explicitly deleted by the user. \n"
"\n"
"\n"
"MANUAL DATABASE MANAGEMENT\n"
"\n"
"The scope of the actions which the transfer, pack, expire,\n"
"and search buttons launch, is limited by the\n"
"currently-selected node in the server tree of npcollections.\n"
"If a server node is selected, then only the newsgroups in\n"
"that server's tree will be affected. If a single newsgroup\n"
"is selected, then only that group will be affected. If no\n"
"selection exists in the server tree, all groups of all\n"
"server nodes will be affected by the transfer, pack, expire,\n"
"or search operation.\n"
"\n"
"All message transfers are started by pressing the transfer\n"
"button of npcollections. The transfer operation actually\n"
"performed depends upon the type of the group which is\n"
"currently being processed. Transferring an actual newsgroup,\n"
"will cause the nptransfer program to retrieve usenet\n"
"articles or headers from their appropriate news servers into\n"
"the corresponding spool files, for FOLLOW-UPS groups\n"
"transferring the group will cause nptransfer to attempt to\n"
"post any articles in the group to the appropriate news\n"
"server, for OUTBOX groups the nptransfer program will\n"
"attempt to send any outgoing mail messages to the sendmail\n"
"program, and lastly for folders, any header-only messages\n"
"marked as requested in the folder will cause nptransfer to\n"
"try to replace them with their full article text. The\n"
"appropriate action is performed automatically.\n"
"\n"
"The only means to remove messages from actual newsgroups is\n"
"by packing or expiring them. To pack a newsgroup, means to\n"
"remove all the seen articles from it. To expire a newsgroup,\n"
"means to remove all articles having a Date header describing\n"
"a time older than the configured expiry period displayed on\n"
"the first notebook page of the npconfig applet. If you wish\n"
"to keep particular messages, and remove others, you may mark\n"
"those you wish to keep as unseen, and those you wish to\n"
"remove as seen, and then pack the newsgroup, or you can copy\n"
"the messages into a folder, where they will remain until\n"
"explicitly deleted.\n"
"\n"
"Folders, FOLLOW-UPS, POSTED, OUTBOX, and SENT-MAIL groups\n"
"are not affected by packing or expiring. Messages linger in\n"
"these groups until they are explicitly deleted or they are\n"
"posted/mailed. All explicitly deleted messages are stored\n"
"on disk by Peruser and can be undeleted or purged from\n"
"storage by pressing the undelete button on the npcollections\n"
"window.\n"
"\n"
"\n"
"AUTOMATED DATABASE MANAGEMENT\n"
"\n"
"You don't need to read this paragraph unless you want to\n"
"automate the upkeep of Peruser's database. Management of\n"
"News Peruser's spool files is accomplished by two filters,\n"
"npsepax and nptransfer. News transport functions are\n"
"performed by nptransfer, which also passes off outgoing\n"
"mail. Packing and expiring of spoolfiles is performed by the\n"
"npsepax program. Each of these programs will spit out a\n"
"usage message if you try to launch them from the shell with\n"
"no arguments. One launches these programs, setting some\n"
"options on the command line, and then feeds server and group\n"
"names to the program's standard input in this form:\n"
"server.address:group.name[newline]. The filters perform the\n"
"appropriate actions and return the number of messages\n"
"transferred/packed/expired to standard output. One may use\n"
"these programs in cron jobs or shell scripts to automate the\n"
"upkeep of the article database without launching the GUI.\n"
"The other programs in the suite are not intended to be used\n"
"independently, but are part of the GUI and are launched by\n"
"the toplevel npcollections program as necessary.\n"
"\n"
"\n"
"HELPERS\n"
"\n"
"If you have Perl installed on your system the helpers applet\n"
"will be built at compile-time. This applet is merely a\n"
"button-bar that allows external programs to be launched with\n"
"a click of a button. The command line to be passed to the\n"
"shell, the button label text, and the button's bubble help\n"
"text are specified in the file peruser4-helpers, which by\n"
"default is installed in /usr/local/share/news-peruser,\n"
"unless you passed a different directory to the configure\n"
"script at compile-time. Peruser is distributed with a simple\n"
"module for Perl, written in Perl, to allow Perl programs to\n"
"have higher-level access to the article database.\n"
"\n"
"A number of Perl programs are included in the Peruser\n"
"distribution to accomplish such tasks as the feeding of\n"
"articles to external programs to decode encoded data in MIME\n"
"messages, to display embedded encoded image files, or the\n"
"filtering of articles into folders based on the content of\n"
"header lines, using Perl regular expressions. \n"
"\n"
"You can write your own Perl programs to automate your own\n"
"tasks, and add them to the helpers button-bar, by adding an\n"
"entry in peruser4-helpers. Helpers may be written in any\n"
"language, but you can only use the included Perl module with\n"
"Perl programs, of course. The Perl module includes the\n"
"functions safe_open and safe_close, which use Peruser-style\n"
"lockfiles to mediate access to the spool files to prevent\n"
"data corruption. Peruser's lockfiles consist of the\n"
"file-to-be-locked's filename with a ':lock' suffix appended.\n"
"You will have to manage these lockfiles yourself to mediate\n"
"access to the spool files, if you write helpers in a\n"
"language other than Perl.\n"
"\n"
"\n"
"HEADER RETRIEVAL \n"
"\n"
"News Peruser has been designed with the concept of header\n"
"retrieval in mind. It is assumed that the user will wish to\n"
"quickly download just the headers of the unseen articles\n"
"from the newsgroups he or she is interested in, and then,\n"
"perhaps while offline, peruse those headers, marking those\n"
"messages whose full article text is of interest as requested\n"
"for future downloading. The user can then reconnect to the\n"
"news server and transfer only the text of those particular\n"
"messages, saving considerable time if he or she reads many\n"
"newsgroups over a slow, dial-up network connection. If you\n"
"have Perl installed on your system, there will are helper\n"
"scripts you can use to automate this process.\n"
"\n"
"\n"
"THE THREAD TREE\n"
"\n"
"Selecting a group node in the server tree will launch the\n"
"npsummary applet to display the contents of that group. In\n"
"the thread tree of the npsummary applet, the colour of the\n"
"node indicates whether the corresponding message contains a\n"
"full article, or just the header, whether or not the header\n"
"has had its full article text requested for future\n"
"downloading, and whether the message has been seen or not.\n"
"An entry in black is a full article. An entry in red is a\n"
"header-only message. An entry in green is a header-only\n"
"message that has has been requested for future downloading.\n"
"Any entry in boldface, of any colour, is considered to be\n"
"unseen. As well, An uppercase 'D' preceding a entry\n"
"indicates it is a dummy node, inserted into the thread tree\n"
"by the program to represent a missing precursor, or to act\n"
"as a dummy root node for messages which have the same\n"
"Subject header, but which reference messages not currently\n"
"residing in the newsgroup's spool file. Dummy nodes are\n"
"displayed in blue. \n"
"\n"
"The fractions beside tree entries represent statistics for\n"
"the group or thread which they appear beside: \n"
"\n"
" unseen-messages/total-messages :\n"
" requested/header-only-messages. \n"
"\n"
"\n"
"VIEWING TEXT\n"
"\n"
"Selecting an item in npsummary's thread tree that\n"
"corresponds to a message, and not a dummy node, launches the\n"
"text viewer applet, nptext, to view the text of the message.\n"
"The nptext program attempts to use the iso-8859-1 character\n"
"set to display article text, and can recognize MIME\n"
"quoted-printable encodings of this character set in both the\n"
"headers and body of an article, and will display the text\n"
"decoded. Beyond that, the nptext program has no further\n"
"MIME-related capability. See the help text above on HELPERS\n"
"for more details on handling MIME messages containing\n"
"encoded data.\n"
"\n"
"\n"
"MESSAGE COMPOSITION\n"
"\n"
"Peruser can generate original news articles,\n"
"replies-by-mail, and follow-up articles, by pressing the\n"
"appropriate button the the frame of the nptext applet. The\n"
"npcompose applet will create a minimal Usenet header, which\n"
"one may edit to one's liking, or leave as is. npcompose can\n"
"also launch an external editor if you prefer to use your\n"
"favourite text composition tool to create your messages. The\n"
"command to launch the external editor must be entered on the\n"
"first notebook page of the npconfig applet first.\n"
"\n"
"Peruser can also generate cancel and supersede messages for\n"
"sucessfully posted articles. If a non-empty POSTED group is\n"
"selected, the Cancel and Supersede buttons appear on the\n"
"message viewer applet's frame. Selecting a message in the\n"
"group and pressing the Cancel button will cause Peruser to\n"
"generate the header of a cancel message. A cancel message\n"
"needs no body text. When posted, the cancel message will\n"
"cause the news server to discard the successfully posted\n"
"article the cancel message refers to, and to propagate the\n"
"cancel message to other servers it exchanges news with. A\n"
"supersedes message is a cancel message and new Usenet\n"
"article merged into one article. If you wish to cancel a\n"
"message and post a replacement message, create a supersedes\n"
"message instead.\n";
|