[go: up one dir, main page]

File: FAQ

package info (click to toggle)
slrn 1.0.0~pre18-1.3
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 6,396 kB
  • sloc: ansic: 39,706; sh: 3,665; perl: 467; makefile: 289; sed: 24
file content (1258 lines) | stat: -rw-r--r-- 53,715 bytes parent folder | download | duplicates (2)
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
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
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
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
  The slrn FAQ
  John E. Davis <davis@space.mit.edu>
  Matthias Friedrich <matt@mafr.de>
  Thomas Schultz <tststs@gmx.de>
  Thomas Wiegner <wiegner@gmx.de>
  Peter J Ross <peadar.ruadh@gmail.com>
  Version 0.9.9p1, October 2008

  Frequently asked questions about the slrn newsreader.
  ______________________________________________________________________

  Table of Contents

  1. General questions about slrn
     1.1 What is slrn ?
     1.2 Where can I download slrn ?
     1.3 Where is slrn 's documentation?
     1.4 Are there any mailing lists and/or newsgroups about slrn ?
     1.5 slrn appears quite stable. Why don't you call it version 1.0?
     1.6 How well are slang-2 and Unicode supported right now?
     1.7 I upgraded from version 0.9.8.1 to 0.9.9. What do I have to
         change in my slrnrc?

  2. Configuration
     2.1 Is it possible to set my ``From:'' header line for postings?
     2.2 How can I set my ``Message-ID:'' header?
     2.3 How can I set the size of the article pager?
     2.4 What charset settings should I use under Windows?
     2.5 How can I use an external e-mail program for replies?
     2.6 The thread tree is not drawn properly. Why?
     2.7 Can I use the mouse with slrn ?
     2.8 How can I rotate signatures in slrn ?

  3. Usage
     3.1 What is a prefix argument?
     3.2 Treatment of read articles
        3.2.1 How can I never mark articles as read?
        3.2.2 How can I get slrn to show both read and unread articles?
        3.2.3 How can I retrieve read articles from the same thread?
        3.2.4 How can I retrieve other read articles?
        3.2.5 I want to see full threads as soon as they contain at least
              one unread article. Can slrn do this?
     3.3 Handling of binary postings
        3.3.1 How do I uudecode articles?
        3.3.2 What are the advantages of using uudeview ?
        3.3.3 What about yEnc?
        3.3.4 Can I put multipart binary postings into one thread?
     3.4 How can I mark cross-posts as read in other groups as well?
     3.5 Why doesn't the ``L'' command work as advertised?
     3.6 How do I cross-post an article?
     3.7 How do I use the mouse in an XTerm to copy/paste?
     3.8 How can I sort the list of newsgroups?

  4. Scoring
     4.1 What is scoring?
     4.2 How can I killfile with slrn ?
     4.3 How do I set up slrn to read a scorefile?
     4.4 What is the format of an slrn scorefile?
     4.5 Where can I get a full description of slrn 's regular
         expressions?
     4.6 How can I test whether my regular expressions do what I expect
         them to do?
     4.7 Is there an easy way to watch or kill threads / authors?
     4.8 Do I need to remove expired entries from my scorefile manually?
     4.9 How do I score on a specific ``Subject'' line, e.g., ``test''
         messages?
     4.10 How do I score articles from a specific person?
     4.11 How do I score articles from a specific site?
     4.12 How do I score followups?
     4.13 Is it possible to score followups to my own postings?
     4.14 How do I kill cross-posts from a specific group?
     4.15 How do I score all cross-posts?
     4.16 How do I make it so I read only articles from a specific
          person?
     4.17 How do I score articles that have no ``References'' line but
          whose ``Subject'' line starts with ``Re:''?
     4.18 How do I score subjects that contain only uppercase characters?
     4.19 How can I filter people without a real name?

  5. slrnpull
     5.1 What is slrnpull ?
     5.2 Why can't I post when using slrnpull ?
     5.3 How do I get a full list of newsgroups?

  6. I found a bug in slrn !!!
     6.1 slrn hangs infinitely when I press the delete key
     6.2 Non US-ASCII characters are displayed incorrectly.
     6.3 The bug I found is not listed here. What do I do now?
        6.3.1 Some additional notes for the advanced user

  7. About this document
     7.1 History

  ______________________________________________________________________

  1.  General questions about slrn

  1.1.  What is slrn ?

  slrn (``S-Lang read news'') is a Usenet newsreader that runs in text
  mode on various Unix and Unix-like operating systems (including
  Linux), Windows, OS/2, BeOS, MacOS X and VMS.

  It supports scoring rules to highlight, sort or kill articles to make
  reading news more efficient. Furthermore it is highly customizable,
  allows free key-bindings and can be extended using the S-Lang macro
  language. Offline reading is possible using either slrnpull (shipped
  with slrn) or a local newsserver like Leafnode or INN.

  1.2.  Where can I download slrn ?

  If you run Linux, your distribution probably contains a slrn package
  that might not offer the latest version, but is more or less ``ready
  to go''.

  If you wish to obtain a more current version of slrn for Linux or
  another supported OS, details can be found at
  <http://slrn.sourceforge.net/download.html>

  Additional resources are available at <http://slrn.sourceforge.net/>.

  Note: Upgrading is especially recommended if you are currently using a
  0.9.8.1pl1 or pl2 version, in which significant bugs exist.

  1.3.  Where is slrn 's documentation?

  The source distribution contains a lot of documentation; on Unix-like
  systems, it is likely to be installed somewhere in /usr/share/doc or
  /usr/doc. It contains manpages (type man slrn at the command prompt),
  the slrn Reference Manual (manual.txt) and several other useful
  resources like a sample slrnrc (configuration) file.

  If you are new to slrn, please make sure to read the file FIRST_STEPS.
  It should get you started.

  If you cannot find this documentation on your system, you can find it
  online via <http://slrn.sourceforge.net/documentation.html>.

  1.4.  Are there any mailing lists and/or newsgroups about slrn ?

  If you have general questions about slrn that are not covered by its
  documentation, please make use of the appropriate newsgroups or
  mailing list rather than writing to the maintainer directly:

  The appropriate newsgroup for questions about slrn is
  news.software.readers. There is also a German speaking equivalent
  (de.comm.software.newsreader).

  slrn-user is a mailing list for discussion of the use, development and
  extension of slrn. You can subscribe to it through the web interface
  at <http://lists.sourceforge.net/lists/listinfo/slrn-user>.

  To keep track of slrn's development, simply subscribe to slrn-
  announce.  It is a low-traffic moderated list that informs you about
  new releases, important bugfixes or major changes to the website. The
  subscription address is
  <http://lists.sourceforge.net/lists/listinfo/slrn-announce>. All
  announcements are also mailed to slrn-user, so there is no need to
  read both lists.

  1.5.  slrn appears quite stable. Why don't you call it version 1.0?

  The main reason for the sub-1.0 version number is the poor handling of
  different character sets. Users of a modern newsreader expect it to
  support Unicode as well as legacy character sets. So, you'll see slrn
  1.0 as soon as slrn is ported to the new slang-2 library and running
  reasonably stable.

  1.6.  How well are slang-2 and Unicode supported right now?

  Since version 0.9.8.1pl1, slrn compiles against slang-2.
  Since version 0.9.8.1pl2, slrn uses iconv for internal charset
  handling and supports UTF-8, with some bugs left.

  Both versions were never officially released, although some Linux
  distributions shipped them.

  In version 0.9.9 a lot of bugs in the UTF-8 handling have been fixed.

  A current drawback of slang-2 is that its regexp engine lacks UTF-8
  support.  When you run slrn in UTF-8 mode, you should have your score
  file in UTF-8 as well. You may still encounter surprising results; in
  particular, regexp matching has no error handling for invalid UTF-8.

  1.7.  I upgraded from version 0.9.8.1 to 0.9.9. What do I have to
  change in my slrnrc?

  Since there were fundamental changes in the internal character set
  handling, the configuration of this has also changed. The
  configuration variables charset, editor_uses_mime_charset,
  fold_headers, mime_charset and use_mime, and the configuration command
  compatible_charsets are no longer valid. To set character sets for
  display, editor and posting, use the new charset command instead.

  2.  Configuration

  2.1.  Is it possible to set my ``From:'' header line for postings?

  On (properly configured) Unix-like systems, slrn should be able to
  determine a valid ``From:'' header line itself. However, you can also
  set one explicitly using the following variables in your slrnrc file:

          set realname "Your Real Name"
          set username "username"
          set hostname "your.host.name"

  This will cause slrn to generate a ``From:'' header line of the form:

          From: Your Real Name <username@your.host.name>

  Note: It is possible that your system administrator disabled this
  feature to make sure everybody uses his or her correct name and
  address when posting.  To find out whether this is the case, type slrn
  --version and look for strict_from in the feature list. If it is
  enabled (indicated by a plus sign), you cannot set your ``From:''
  header line yourself.

  2.2.  How can I set my ``Message-ID:'' header?

  First of all, slrn will only attempt to create the ``Message-ID:''
  header line if it was not compiled with the --disable-gen-mid option
  (check gen_msgid in the output of slrn --version) and the
  generate_message_id config variable has not been set to ``0''.

  To create a valid Message-ID, slrn needs to know the fully qualified
  domain name (FQDN) of the host it is running on. In most cases, slrn
  can find it by querying the system. In case this does not work
  properly, you can alternatively set the domain (right-hand) part of
  your Message-IDs via the posting_host command. If you think you need
  this feature, please read the corresponding entry in the reference
  manual carefully.

  Note: Some Linux distributions (e.g. Ubuntu) do not provide the option
  of giving the system a fully qualified domain name during
  installation. This can be fixed by editing the /etc/hosts file. E.g.,

  Before:

          127.0.0.1       localhost
          127.0.1.1       desktop

  After:

          127.0.0.1       localhost
          127.0.1.1       desktop.your.domain     desktop

  2.3.  How can I set the size of the article pager?

  Unless you ``zoom'' the article pager (using ``z''), slrn will split
  the screen and display some article headers at the top. By default, it
  gives about 75% of the lines to the article pager, but leaves at least
  four lines for the header overview. At runtime, you can change this
  using enlarge_article_window (bound to ``^'') and
  shrink_article_window (bound to ``CTRL-^'').

  There is no config variable you could use to make permanent changes to
  this; fortunately, it is very easy to set it using a simple S-Lang
  macro. For example,

  ______________________________________________________________________
   define set_size_of_article_pager ()
   {
   set_article_window_size (int(SCREEN_HEIGHT*0.8));
   }
   !if (register_hook ("resize_screen_hook", "set_size_of_article_pager"))
   message ("Warning: Could not register set_size_of_article_pager" +
   " for resize_screen_hook");
  ______________________________________________________________________

  would give about 80% of the screen to the pager. If you want the
  header overview to have a fixed size, you can use an argument like
  SCREEN_HEIGHT-10 instead, which would make it six lines high (after
  the command, the article pager has SCREEN_HEIGHT-10 lines; four lines
  are used by status bars).

  2.4.  What charset settings should I use under Windows?

  As on any other operating system, this depends on the character set
  your terminal uses. When using slrn on Windows, two problems connected
  with character sets frequently appear:

  1. The terminal may not use the character set used in the Usenet
     articles you are trying to read. In this case, you depend on slrn
     to convert between the two character sets to display certain (8bit)
     characters correctly.  You can enable this by setting the config
     command charset to use the appropriate value (all supported
     character sets are listed in the reference manual), for example:

             charset display "ibm850"

  2. Your editor may use a different character set than your terminal.
     This is often the case with GUI editors that have their own window,
     e.g. gvim.  In this case, you may want slrn to convert character
     sets when displaying messages, but not when calling the editor on
     them, so you should put a line like this into your slrnrc file:

             charset editor "utf-8"

  3. To enable utf-8 display for slrn in windows you need at least slang
     2.1.4pre39. You'll have to change the font in the console to a
     TrueType font which is capable of displaying utf-8 characters. To
     active slrn utf-8 mode you'll have to type one of the following
     commands in the console:

             chcp 65001
             set LANG=en_US.UTF-8

  2.5.  How can I use an external e-mail program for replies?

  You can use the config variable mail_editor_command for this. The
  following example will use mutt as an external e-mail program for
  replies:

          set mail_editor_command "/usr/bin/mutt -H '%s'"
          set mail_editor_is_mua 1

  Setting mail_editor_is_mua to 1 tells slrn not to try and send any e-
  mail, because the external program used as the e-mail editor will han-
  dle this itself.

  2.6.  The thread tree is not drawn properly. Why?

  There are a couple of reasons for this. The most simple may be that
  the font that you are using does not support line drawing characters.
  Simply switching fonts to a dec-vt220 compatible font may solve the
  problem. This is usually the case with Windows telnet applications.

  If you see strings like ``mq>'' or ``tq>'' instead of a thread tree
  make sure that your terminal or terminal emulator supports vt100
  escape sequences. This is the case for most emulators like the Linux
  console, NetBSD's wscons, xterm, rxvt and others. Set the TERM
  environment variable to vt100 and start slrn to see if the thread is
  drawn correctly. If this isn't the case, you have to fix your
  termcap/terminfo file. For termcap based systems, the ``ac'', ``as''
  and ``ae'' capabilities have to be set correctly. On terminfo based
  systems, the ``acsc'', ``smacs'' and ``rmacs'' capabilities need
  adjustment.

  If you can't solve the problem that way because your terminal setup or
  your terminal emulator is severely broken, consider setting

          set simulate_graphic_chars 1

  in your slrnrc file. It restricts slrn to plain ASCII characters for
  drawing the tree.

  A major drawback of the vt100 solution is, that vt100 terminals can't
  display colors. Since most terminal emulators support ANSI colors, you
  could start slrn with the ``-C'' command line switch or use the
  following configuration command to force the use of colors:

          set use_color 1

  But if you want to use colors with other programs as well, you need a
  real solution to this problem. Try the following:

  Find a $TERM setting that supports line drawing characters like the
  vt100 or vt220. Then create a new termcap entry based on that terminal
  with additional color capabilities and save it to ~/.termcap. It might
  look like this:

          myterm:\
            :Co#8:NC#3:pa#64:\
            :AB=\E[4%dm:AF=\E[3%dm:op=\E[m:\
            :mb=\E[5m:md=\E[1m:me=\E[0m:mk=\E[8m:mr=\E[7m:\
            :cl=\E[H\E[J:vi=\E[?25l:ve=\E[?25h:\
            :tc=vt100:

  On some systems, you can then set $TERM to 'myterm' and the settings
  apply. On others, you need to do something like this:

          TERMCAP=$HOME/.termcap
          export TERMCAP
          eval `tset -s myterm`

  2.7.  Can I use the mouse with slrn ?

  xterm (and some compatible terminal emulation programs) have a feature
  called ``mouse reporting'' that slrn can turn on to support using the
  mouse. To enable this whenever the terminal offers it, put

          set mouse 1

  into your slrnrc file. To force the mouse to be used, startup slrn
  using the -m command line option - of course, this will not have the
  desired effect if your terminal really does not have this feature ;-)

  If you want to know what exactly you can do with the mouse, please see
  the entry on the variable mouse in the reference manual.

  2.8.  How can I rotate signatures in slrn ?

  There are different ways to do this - chose one:

  The easiest way is probably to call a sig rotation program in the
  post_editor_command in your slrnrc file. In the following example, the
  program fortune is called and its output gets written to ~/.signature.
  After that, the editor jed is called:

          set post_editor_command "fortune -s > ~/.signature; jed '%s' -g %d -tmp"

  If you want to chose the signature depending on the group you are
  posting to, you can set the config variable signature using a macro;
  in the following example, .signature.german gets selected for all
  newsgroups in de.* and .signature.english gets selected for any other
  group.  Call this macro from post_hook and article_mode_hook to switch
  the signature automatically.

  ______________________________________________________________________
   define set_signature ()
   {
   variable signature_file = ".signature.english";
   if (0 == strncmp (current_newsgroup(), "de.", 3))
   signature_file = ".signature.german";
   set_string_variable ("signature", signature_file);
   }
  ______________________________________________________________________

  If you want more sophisticated per-group settings, we recommend the
  macro identity.sl from Emanuele Bassi's slrn page:
  <http://www.emmanuelebassi.net/slrn/>.

  Note: slrn itself does not have an option to execute a program and use
  its output as the signature. Such an option would require piping,
  which is not available on all platforms. If you're on a Unix-like
  system and still want to use pipes, you can make ~/.signature a named
  pipe and attach a daemon sig randomizer to it. Various programs that
  do this are available on the net - one example is the program autosig.

  3.  Usage

  3.1.  What is a prefix argument?

  Many key-bindings accept prefix arguments. A prefix argument is a
  number that is generated prior to a key sequence and is used as a way
  of controlling the behavior of that key sequence. It is generated by
  pressing the ``ESC'' key and then pressing the keys that correspond to
  the number. For example, to generate a prefix argument of 314, simply
  press the 4 keys: ``ESC 3 1 4''.

  Some functions use such arguments as repeat factors. That is, the
  function bound to the key sequence that they modify will be repeated
  the number of times specified by the prefix argument.

  Other functions may simply use it as a way of slightly modifying the
  behavior of the function. For example, if ``1'' is used as a prefix
  argument for the ``followup'' function, the original article's headers
  will be included in the followup message; if ``2'' is used, the
  article also does not get modified (i.e. slrn does not insert quoting
  characters and neither attaches nor strips signatures). Without a
  prefix argument, you get a ``regular'' followup without the original
  article's headers.

  3.2.  Treatment of read articles

  By default, slrn does not display articles that were previously marked
  as read. In most cases, this makes entering groups a lot faster,
  especially as slrn currently does not cache the headers locally and
  thus would have to download all the header information from the server
  again, each time you enter a group.

  At first, most people who are used to a newsreader that always shows
  all available messages are often disappointed by this. After some
  time, they might find that slrn's default way of doing things allows
  them to read their news efficiently, because it keeps their mind on
  articles they did not yet deal with.

  However, others still prefer to see everything and even if you don't,
  you still need to re-read an old article now and then. The following
  questions deal with these cases:

  3.2.1.  How can I never mark articles as read?

  There is an option for it - you just need to set
  ``auto_mark_article_as_read'' to 0 in your slrnrc file.

  In most cases, you will find that this is not what you really wanted
  to do, as it will make it difficult to find the ``new'' articles (i.e.
  the ones you did not yet read), so you might want to consider the
  answers to the following questions.

  3.2.2.  How can I get slrn to show both read and unread articles?

  If you want to see all articles in a group (read and unread ones),
  simply set a ``prefix argument'' before entering a newsgroup. Using
  the default bindings, you can do this by pressing ``ESC 1 RETURN'' in
  group mode.  There are variations of this; the online help or the
  manual will tell you more about them.

  If you always want to enter groups that way, pressing three keys
  instead of one is annoying. You can avoid this using a special
  keybinding in your slrnrc file. Here is an example:
          setkey group "set_prefix_argument(4); () = select_group();" " "

  With this line, pressing ``SPACE'' in group mode will enter the
  selected group with four as the prefix argument.

  However, you might find it sufficient to make use of the following
  ways to display specific articles that were previously marked as read:

  3.2.3.  How can I retrieve read articles from the same thread?

  If you want to read the ``parent'' of the article you are currently
  reading (e.g. because the author did not quote enough material to
  understand his message), ``ESC p'' will attempt to find it, using the
  ``References'' header line.

  It is also possible to find all ``children'' of a given article using
  ``ESC Ctrl-P'' (note that this does not work with all servers) and,
  using a recursive combination of both, to reconstruct the entire
  thread tree. This is done by pressing either ``ESC 1 ESC p'' or ``ESC
  2 ESC p'' - the second alternative can be much faster, but the first
  is more likely to find all articles even if some articles contain
  incomplete ``References''.

  3.2.4.  How can I retrieve other read articles?

  You can locate any article if it is available on your server and you
  know its Message-ID. Pressing ``ESC l'' will produce the necessary
  prompt.

  3.2.5.  I want to see full threads as soon as they contain at least
  one unread article. Can slrn do this?

  This is currently not implemented, although it should be possible to
  achieve such an effect using a macro.

  For many, this behaviour would be a useful compromise between the two
  extremes of seeing all messages and seeing unread ones only, so this
  feature might be added in a future version of slrn.

  3.3.  Handling of binary postings

  slrn is primarily designed as a newsreader (i.e. for reading and
  processing text messages); it is not a dedicated agent for downloading
  and decoding binary postings from Usenet. However, there is some basic
  functionality for decoding binary postings and there are some ways to
  make handling them a bit more convenient:

  3.3.1.  How do I uudecode articles?

  Fortunately, the easiest way is also the most efficient. Basically
  this involves using the ``#'' key to numerically tag articles that you
  want to decode and then the ``:'' key to start the decode process. The
  only restriction is that multi-part uuencoded articles must be tagged
  in their proper order (see the next question if you think this is too
  much trouble).  There is no need to uudecode one article at a time.
  Simply mark everything that you would like to decode and then press
  ``:''. Here is an actual example taken from
  alt.binaries.pictures.fractals:

          -    9:[Mike In Indy]    Kaboom! - kaboom.gif (0/1)
          - 3078:[Mike In Indy]    Kaboom! - kaboom.gif (1/1)
          -   23:[Gumbycat    ]    lucifer.gif  (0/7)
          -  433:[Gumbycat    ]    lucifer.gif -  for Halloween  (5/7)
          -  433:[Gumbycat    ]    lucifer.gif  -  for Halloween (3/7)
          -  433:[Gumbycat    ]    lucifer.gif  -  for Halloween (4/7)
          -  433:[Gumbycat    ]    lucifer.gif  -  for Halloween (6/7)
          -  244:[Gumbycat    ]    lucifer.gif  -  for Halloween (7/7)
          -  434:[Gumbycat    ]    lucifer.gif  - for Halloween (1/7)
          -  433:[Gumbycat    ]    lucifer.gif - for Halloween (2/7)
          -   16:[Paul Carlson]    My Halloween Fractal - devil.gif (0/1)
          - 4310:[Paul Carlson]    My Halloween Fractal - devil.gif (1/1)

  As you can see, 3 files have been posted: kaboom.gif, lucifer.gif, and
  devil.gif (At the time of this writing, it is Halloween weekend).
  Both kaboom.gif and devel.gif are single part files whereas
  lucifer.gif is a seven part series. Since lucifer.gif is displayed out
  of order, care must be exercised when tagging it (slrn will sort
  threads by subject and in this case the poster used an inconsistent
  subject format -- usually, sorting will result in the correct order-
  ing). Assuming that we wish to decode these three gif images, the
  ``#'' key will be used to tag them. The result of using the ``#'' key
  is shown below:

          -     9:[Mike In Indy]    Kaboom! - kaboom.gif (0/1)
          1- 3078:[Mike In Indy]    Kaboom! - kaboom.gif (1/1)
          -    23:[Gumbycat    ]    lucifer.gif  (0/7)
          6-  433:[Gumbycat    ]    lucifer.gif -  for Halloween  (5/7)
          4-  433:[Gumbycat    ]    lucifer.gif  -  for Halloween (3/7)
          5-  433:[Gumbycat    ]    lucifer.gif  -  for Halloween (4/7)
          7-  433:[Gumbycat    ]    lucifer.gif  -  for Halloween (6/7)
          8-  244:[Gumbycat    ]    lucifer.gif  -  for Halloween (7/7)
          2-  434:[Gumbycat    ]    lucifer.gif  - for Halloween (1/7)
          3-  433:[Gumbycat    ]    lucifer.gif - for Halloween (2/7)
          -    16:[Paul Carlson]    My Halloween Fractal - devil.gif (0/1)
          9- 4310:[Paul Carlson]    My Halloween Fractal - devil.gif (1/1)

  Now nine headers have been numerically tagged. To decode these, simply
  press the ``:'' key. slrn will prompt for a filename to save the arti-
  cles to and after saving, it will prompt to go ahead and decode. The
  decoded files will be placed in the directory specified by the
  ``decode_directory'' variable that one can set in the slrnrc file. The
  end result is that after tagging with the ``#'' key, one presses ``:''
  and hits return twice. To un-tag articles, press ``ESC #''.

  3.3.2.  What are the advantages of using uudeview ?

  slrn can be linked against the uudeview library; in this case, it will
  use the library functions to decode uuencoded articles. Unlike slrn's
  internal routines, uudeview is usually able to decode multipart
  messages even if you did not tag them in the correct order. Another
  advantage of (current versions of) uudeview is that it supports yEnc
  (see next question for details). A disadvantage is that it needs a lot
  more memory for decoding than slrn.

  I got reports that uudeview decoded files for which slrn's code failed
  (and vice versa), so if you run into problems with a particular binary
  posting, it might be worth trying both - to allow this, there is the
  config variable ``use_uudeview'' which can be set to zero in case you
  have uudeview support compiled in, but want to use the builtin code
  nonetheless.

  To link against uudeview, you need to have the library installed on
  your system; one way to get it is its homepage at
  <http://www.fpx.de/fp/Software/UUDeview/>. You also need to pass
  ``--with-uu'' to the configure script when building slrn (on Unix-like
  systems). If you did not compile your copy of slrn yourself, you can
  still find out whether it has uudeview support by looking for a ``+''
  sign in front of ``uudeview'' in the output of ``slrn --version''.

  3.3.3.  What about yEnc?

  yEnc <http://www.yenc.org/> is a way to encode binaries that makes use
  of 8bit characters, thus creating less overhead than the traditional
  uuencode and base64 methods. For this reason, it has become
  increasingly popular in certain binary groups. slrn does not have
  native support for yEnc: one reason for this is that I do not need
  this feature myself and so far, no patches for it have been
  contributed; besides, yEnc is still under development and still has
  some drawbacks which I'd like to see solved first. However, there
  already are two ways to decode such messages:

  Prior to 0.9.7.4, slrn would corrupt some yEnc-encoded postings (by
  removing backspace-letter combinations traditionally used for
  formatting text messages). As this code has now been removed, you can
  pipe yEnc-encoded messages to external decoding programs from slrn; if
  you want to decode them from within slrn, you can link against a
  current version of uudeview, which now also supports yEnc (see
  previous question for details on this). However, uudeview sometimes
  generates ``no data found'' error messages when dealing with yEnc-
  encoded postings (even if it does decode them correctly); if you want
  to avoid them, you need at least version 0.9.8.0 of slrn, which simply
  ignores them.

  3.3.4.  Can I put multipart binary postings into one thread?

  That option has been added in slrn 0.9.7.1. To use it, you need to
  define a macro that can compare two subjects and tell slrn whether or
  not they should be put into the same thread. An implementation of such
  a macro that should work for most cases and can serve as a starting
  point for your own experiments can be found in macros/multipart.sl in
  the source distribution.

  3.4.  How can I mark cross-posts as read in other groups as well?

  For slrn to mark an article as read in more than one group, it needs
  information about what groups the article was cross-posted to. This
  information is provided by the ``Xref'' header. Not all servers
  provide this header so this feature will not work with those servers.

  Now suppose that your server provides the ``Xref'' header as one of
  the headers of the article and at the same time, provides support for
  the NOV database (via the ``XOVER'' NNTP command). In this case,
  unless the server has been configured to provide the ``Xref'' header
  as part of the NOV database, slrn will not be able to get the header
  without accessing the article. Unfortunately, ``Xref'' is optional
  under NOV so many systems do not automatically provide it even though
  it is one of the recommended headers.

  To summarize, make sure that your server provides the ``Xref'' header
  AND if it supports NOV, make sure that the ``Xref'' header is part of
  the NOV database.

  3.5.  Why doesn't the ``L'' command work as advertised?

  Capital ``L'' lists all un-subscribed groups that slrn knows about.
  slrn gets this information through one of three sources. It tries the
  following in order and stops when one is successful:

  1. From the server via the active file. It only does this if the line
     ``set read_active 1'' is in your slrnrc file. By default, slrn does
     not read the active file.

  2. By querying the server using the ``LIST ACTIVE'' NNTP command with
     a wildmat argument. Please note that not all servers support this
     kind of query.

  3. From the groups listed in your newsrc file. In that case, the ``L''
     command will only list unsubscribed groups that are present in this
     file.

  The last one always succeeds with results that may be less than
  desirable. If you have a fast network connection to your server,
  simply put

          set read_active 1

  in your slrnrc file. If you do not want slrn to read the active file
  because your connection is slow, see whether or not your server sup-
  ports ``LIST ACTIVE'' with a wildmat argument. As a last resort, try
  to keep a full list of newsgroups in your newsrc file.

  3.6.  How do I cross-post an article?

  There are two ways:

  1. When slrn prompts for a newsgroup, simply specify a comma-separated
     list of newsgroups. Do not use spaces!

  2. Edit the ``Newsgroups'' header line when editing the message.
     Again, the list of newsgroups must be comma separated with no
     whitespace. Also make sure that you do not wrap this line.

  Note: When crossposting, it is often polite to set a ``Followup-To''
  header.

  3.7.  How do I use the mouse in an XTerm to copy/paste?

  If mouse reporting is turned on (via the ``-m'' command line switch or
  the ``mouse'' config variable), you need to hold down the shift key to
  mark text for copy/paste.

  3.8.  How can I sort the list of newsgroups?

  Depending on what exactly you want to do, there are different
  possibilities: First of all, you can use the interactive
  ``move_group'' command (by default bound to ``m'') to move a single
  newsgroup to a different position. Before doing this, I recommend you
  display all subscribed groups (using ``toggle_hidden'', usually bound
  to ``l'', if necessary) so you won't be surprised by the result.

  However, if you want to sort all groups alphabetically, you don't have
  to do this manually. slrn comes with a simple macro that does the job
  for you (gsort.sl) and you can find a more sophisticated one on the
  macro page of J.B. Nicholson-Owens.

  On Unix-like systems, you can also use the sort command to sort your
  /newsrc file (do this while slrn is not running). For example, if you
  use .jnewsrc as your newsrc file:

          sort .jnewsrc > .jnewsrc-sorted
          mv .jnewsrc-sorted .jnewsrc

  Note: Simply doing sort -o .jnewsrc .jnewsrc may or may not work
  depending on your version of sort.

  4.  Scoring

  4.1.  What is scoring?

  Scoring is a method to give articles a score based on user-defined
  rules. The idea behind this is to give articles with a high score a
  higher priority while articles with a low score (less than zero) are
  marked as read.

  When entering a group, all articles are given a score of ``0''. Then
  the list of scoring rules, the ``scorefile'', is applied to each
  article. The scorefile might give articles from ``John Doe'' a higher
  score, while articles with the word ``Gnus'' in their subjects get a
  negative score. More than one rule may apply cumulatively to the same
  article.

  In the end, threads with high-score articles appear at the top of your
  screen and can be read before other, possibly less interesting,
  articles.

  4.2.  How can I killfile with slrn ?

  slrn has no killfile, but the same effect can be achieved with its
  scorefile. Assigning a particularly low score will do the trick:

          [news.software.readers]
          Score: =-9999   % I'm not interested in articles on gnus
            Subject: gnus

  In this example, all articles in news.software.readers that have the
  substring ``gnus'' in their Subject lines are assigned a negative
  score. The equals sign before the score value tells slrn to assign the
  score -9999 and to skip all other tests for the affected article; oth-
  erwise, the score would be added to the score value of all previous
  matching rules and subsequent rules could increase the score again.

  If the score of an article is equal to or less than kill_score (which
  happens to be -9999 if you didn't change it), the article does not
  even get displayed, so the above scoring rule effectively killfiles
  all articles that have ``gnus'' in their subject line.

  4.3.  How do I set up slrn to read a scorefile?

  In order for slrn to read a scorefile, it must know the name of the
  scorefile. This is specified by putting the appropriate line in your
  slrnrc file. For example, if the name of the scorefile is ``Score''
  and it is located in the ``News'' subdirectory, then add the line:

          set scorefile "News/Score"

  to your slrnrc file.

  4.4.  What is the format of an slrn scorefile?

  The format of slrn's scorefiles is described in the file score.txt
  which is part of the documentation that comes with the source package.
  That file also contains some examples.

  4.5.  Where can I get a full description of slrn 's regular expres-
  sions?

  slrn makes use of the regexp engine built into the S-Lang programmer's
  library. Thus, a full description of the regexp syntax that can be
  used in slrn's scorefiles can be found in the documentation of S-Lang.
  In version 2.1, this is chapter 22 of the file slang.txt (also
  available online). Please note that in slrn, the default is \C (case
  insensitive), not \c.

  4.6.  How can I test whether my regular expressions do what I expect
  them to do?

  The grep-like utility rgrep that comes with the editor jed uses the
  same regexp engine as slrn, so you can use it. Alternatively, Matthias
  Friedrich wrote a small program that can be used to make such tests.
  He posted the source to de.comm.software.newsreader (Message-ID is
  <slrn9u07di.93n.matt@endeavour.mafr.de>); you can get the article from
  Google Groups.

  4.7.  Is there an easy way to watch or kill threads / authors?

  Editing the scorefile and adding entries manually can become quite
  time-consuming if you want to score on threads or authors regularly.
  The interactive command create_score (default binding is ``K'' in
  article mode) makes it easy to create a new scorefile entry based on
  the currently selected article.

  If you want to watch or kill subthreads via a single keystroke, you
  may like the ``one-key scoring macro'' that is available from the
  macro section of the slrn website:
  <http://slrn.sourceforge.net/macros.html>.

  4.8.  Do I need to remove expired entries from my scorefile manually?

  Using the ``Expires:'' keyword, you can specify that a certain scoring
  rule should only be valid until a given date. After that, slrn ignores
  it and will warn you on startup, but does not remove the entry from
  the scorefile. If you often use this keyword, expired entries will
  clutter up your scorefile and make it difficult to read.

  Fortunately, Felix Schueller wrote a perl script called cleanscore
  that can remove expired entries from your scorefile automatically for
  you. On Unix-like systems, it can even be called as a cron job, so you
  don't need to worry about expired entries at all. cleanscore is
  included in the contrib directory of slrn's source distribution and
  can also be downloaded from the slrn website:
  <http://slrn.sourceforge.net/downloads/>.

  4.9.  How do I score on a specific ``Subject'' line, e.g., ``test''
  messages?

  The most simple version is

          Score: -9999
            Subject: test

  This matches all ``Subject'' lines which contain the substring
  ``test'' case insensitively. The above matches ``test'', ``TEST'',
  ``teSt'',``Kerneltest'', ``protesting'', etc.

  In order to limit this to all ``Subject'' lines containing the word
  ``test'' rather than the substring use this:

          Score: -9999
            Subject: \<test\>

  The following will score articles whose ``Subject'' line is exactly
  ``test'':

          Score: -9999
            Subject: ^test$

  Finally, a score entry that filters all test-postings to non-test
  groups:

          [~*.test]
          Score: -9999
            Subject: ^test$

  4.10.  How do I score articles from a specific person?

  The following rule

          Score: -9999
            From: name@who\.knows\.where

  assigns a score of -9999 to the person with the email address
  ``name@who.knows.where''.

  4.11.  How do I score articles from a specific site?

          Score: -9999
            From: @who\.knows\.where

  will give a score of -9999 to a ``From'' line that contains
  ``@who.knows.where''. An alternative would be to score on the Message-
  ID header field:

          Score: -9999
            Message-Id: @who\.knows\.where>

  4.12.  How do I score followups?

  We're assuming that a followup contains a ``Subject'' line starting
  with ``Re:'' and/or has a ``References'' header line. To assign a
  score of -9999 to such an article use:

          Score:: -9999
            Subject: ^Re:
            References: .

  Note the use of the double colon following the score keyword. This
  indicates that the score is an OR type expression. This means that the
  above score will pick out articles with subjects that begin with
  ``Re:'' OR have a ``References'' line (OR both).

  To score articles that have both a ``Subject'' line starting with
  ``Re:'' and a ``References'' header line, use the single colon form:

          Score: -9999
            Subject: ^Re:
            References: .

  Single colon forms are AND expressions.

  4.13.  Is it possible to score followups to my own postings?

  Scoring followups to your own postings is quite easy if slrn generates
  the Message-IDs of your articles (see the question on ``generating
  Message-IDs'' for details). In this case, all you have to do is to
  look for username@your.hosts.fqdn in the ``References'' header line.
  Of course, you need to replace username and your.hosts.fqdn with the
  strings that are correct for your setup - if in doubt, look at the
  Message-ID of one of your own articles to find out.

          Score: 1000
            References: username@your\.hosts\.fqdn>

  Note that this will catch articles that reference one of your articles
  directly or indirectly (e.g. a followup to a followup to your arti-
  cle). If you only want to score direct followups, make sure to check
  the last ID in the ``References'' header line only (note the trailing
  dollar sign):

          Score: 1000
            References: username@your\.hosts\.fqdn>$

  4.14.  How do I kill cross-posts from a specific group?

  You have two choices: either use the ``Xref'' header line or the
  ``Newsgroups'' header line. If possible, you should avoid the
  ``Newsgroups'' line in your scorefiles, as it is usually not included
  in the NOV (news overview) data, so retrieving it requires extra
  server communication that may slow down scoring (and thus entering
  groups) significantly. So if your server provides ``Xref'' header
  lines, use them.

  Assume that you want to score any article that was cross-posted to an
  ``astrology'' newsgroup. Then use one of the following forms:

          Score: -9999
            Xref: astrology

          Score: -9999
            Newsgroups: astrology

  To say it again, the latter version is usually much slower, and should
  be avoided whenever the necessary pattern is available from ``Xref''.

  4.15.  How do I score all cross-posts?

  Like the previous answer you have two choices: to use the ``Xref''
  line (preferred) or the ``Newsgroups'' line. The first choice uses the
  fact that a cross-posted article will have two colons in the ``Xref''
  header field. So, use a score of the form:

          Score: -9999
            Xref: :.*:

  If you do not have the option of using the ``Xref'' line, use:

          Score: -9999
            Newsgroups: ,

  However, you may want to tolerate cross-posts if a ``Followup-To''
  header line is set. The following rule scores articles that are cross-
  posted into many groups (e.g. more than 2) and have no ``Followup-To''
  line (note that this rule is ``expensive'', as usually neither ``News-
  groups'' nor ``Followup-To'' are included in the NOV data).

          Score: -9999
            Newsgroups: ,.*,
            ~Followup-To: .

  4.16.  How do I make it so I read only articles from a specific per-
  son?

  The answer is simple: kill articles by everyone else. Assume that you
  want to read only articles by someone whose ``From'' line contains:
  ``someone@i.like''. Then use a score of the form:

          Score: -9999
            ~From: someone@i\.like

  Note the use of the NOT indicator (~).

  4.17.  How do I score articles that have no ``References'' line but
  whose ``Subject'' line starts with ``Re:''?

  Define a score based on the ``References'' line and the ``Subject''
  line, e.g.,

          Score: -9999
            ~References: .
            Subject: ^Re:

  Here the ``References'' pattern simply says that the article must not
  have a ``References'' line. The ``Subject'' pattern uses a regular
  expression that says ``Re:'' must occur at the beginning of the ``Sub-
  ject''. This will match the strings ``Re:'', ``re:'', ``rE:'', and
  ``RE:''. To match only ``Re:'', use the regular expression

          Subject: ^\cRe:

  Here, ``\c'' turns on case-sensitivity. To turn it off (which is the
  default), use ``\C'', e.g.:

          Subject: ^\cRe:.*\Ctest

  4.18.  How do I score subjects that contain only uppercase characters?

  Use something like:

          Score: -9999
            ~Subject: \c[a-z]

  This will assign a score of -9999 to any article whose ``Subject''
  header line does not contain a lowercase character. If you also want
  to kill followups to such articles use:

          Score: -9999
            Subject: ^Re: \c[^a-z]*$
            ~Subject: ^Re: *

  The last one says that the article will be killed if the ``Subject''
  satisfies the two conditions:

  1. It begins with ``Re: '' and the rest of the line does not contain a
     lowercase character.

  2. It does not begin with ``Re:'', followed by blanks only.

  The last constraint is necessary to avoid killing articles that are
  followups to articles with an empty ``Subject'' line. Of course, one
  might want to kill such articles as well.

  4.19.  How can I filter people without a real name?

  Some people dislike posters who don't post under their full real name.
  Of course, slrn has no way of knowing whether a given name is a real
  name or not; however, a name that does not contain a space is most
  probably not a full real name, so a commonly used rule is to check for
  the ``From'' header line to contain at least two spaces (one inside
  the name and one between the name and the address), separated by non-
  blank characters:

          [*]
          Score: -9999
            ~From: [ ]+[^ ]+[ ]+

  5.  slrnpull

  5.1.  What is slrnpull ?

  slrnpull is a program that pulls a small newsfeed from an NNTP server
  and saves it to a local spool. slrn can subsequently read from this
  spool without needing to contact the server, so you can use both
  programs together to read your news offline (e.g. because you pay for
  your Internet connection by the second).

  Since version 0.9.8.0, slrnpull optionally allows you to pull only the
  article headers first, mark those you are interested in for download
  inside of slrn and get only the marked article bodies later. This can
  reduce download cost and disk space for groups in which you only want
  to read a small percentage of all articles. If you are interested in
  this functionality, please read slrnpull/README.offline.

  5.2.  Why can't I post when using slrnpull ?

  In order to post an article via slrnpull, slrn needs to place the
  article in slrnpull's out.going directory. Two things are necessary
  for this to happen:

  First of all, slrn must know that you are using the slrnpull out.going
  directory for posts. Make sure the line

          set use_slrnpull 1

  is in your slrnrc file. This indicates to slrn that the news spool is
  an slrnpull news spool.

  The second point is, you must have write permission to the out.going
  directory in order for slrn to place your article in that directory.
  The permissions may be changed via the Unix command:

          chmod ugo+rwxt out.going

  Do not put this in your slrnrc file!

  5.3.  How do I get a full list of newsgroups?

  You will have to go online for that. Run slrn as follows:

          slrn --nntp -h YOUR.NEWS.SERVER -a -f groups.dat --create

  This will start slrn and download the groups and put them in the file
  groups.dat. Before actually doing this, modify your slrnrc file to
  make sure write_newsrc_flags has its default setting

          set write_newsrc_flags 0

  so that all groups will be written out to groups.dat.

  6.  I found a bug in slrn !!!

  First, please check whether the bug you discovered is already
  discussed here:

  6.1.  slrn hangs infinitely when I press the delete key

  This is a known bug; however, it's not a problem in slrn, so I cannot
  fix it. slrn uses a library called S-Lang for its screen input/output
  and some Linux distributions (including RedHat) patch that library to
  get Unicode support. Unfortunately, the patch they use makes S-Lang
  unstable.

  To get rid of this program, you can get the vanilla S-Lang sources
  from the public FTP space <ftp://space.mit.edu/pub/davis/slang> of its
  author, John E. Davis and compile them yourself.

  However, simply uninstalling the S-Lang package that came with your
  distribution and replacing it with your own version might break
  dependencies in your system's package management - even if you build
  your own RPM package: Some packages explicitly depend on the patched
  version!

  For this reason, you may have to install the unpatched version in a
  different directory than the patched one that came with your distro,
  e.g. in /usr/local/. To make sure slrn uses the right one, point the
  configure script to it using --with-slang-library=/path/to/lib and
  --with-slang-includes=/path/to/includes. Additionally, you either need
  to specify --enable-hardcode-libs or point the environment variable
  LD_LIBRARY_PATH to the library path when running slrn.

  If you experience such a problem, please also report it as a bug to
  your distributor, so we will hopefully see no more broken S-Lang
  packages in the future. For RedHat, I got a report that it already got
  fixed in version 8.

  Also, slang 2.0 includes Unicode support, so these kinds of problems
  are hopefully gone for good.

  6.2.  Non US-ASCII characters are displayed incorrectly.

  Most such problems should disappear after upgrading to current
  versions of both slrn (0.9.9 or higher) and the S-Lang library (2.1 or
  higher).

  6.3.  The bug I found is not listed here. What do I do now?

  The bug might already be fixed, so please consider upgrading to the
  latest release of slrn or at least check whether the problem is listed
  in the current changes file.

  If you find that the bug is still unreported, send a bug report either
  to John E. Davis <davis@space.mit.edu> or to the slrn-user mailing
  list.

  Please give a detailed description of what you did, how you expected
  slrn to behave and what slrn did instead; also include the exact error
  messages (in case you got any) and information that might be needed to
  reproduce the bug or that might make it easier to find it, such as

  o  Which actions make the bug appear

  o  The output of ``slrn --version''

  o  If a certain article caused the problem, the Message-ID of that
     article (or even the article itself, if it is not too long)

  o  Details of your configuration that might be relevant, like config
     files (after deleting personal data like passwords). The output of
     ``slrn --show-config'' would be especially useful here

  6.3.1.  Some additional notes for the advanced user

  If you have an idea what piece of code is causing the bug and how to
  fix it, comments on this (or even a patch) are of course welcome, too.

  If you think the problem might be on the server side, the command line
  switch --debug can be used to log the dialog with the server to a
  file. Note that the resulting file may become quite large and may
  contain your password!  Keep this in mind when attaching it to bug
  reports: Delete personal data, shorten it to the significant portion
  (if you have some basic knowledge about NNTP) or use bzip2 and ask
  before sending large session transcripts.

  If slrn crashes (i.e. gets terminated because of a segmentation
  fault), it may also be helpful if you can provide a stack backtrace.
  If you're willing to do this, try the following steps to get one
  (assuming you use a Unix-like environment and have script and gdb
  installed):

  At the command line, type:

          script
          gdb slrn

  Then, at the prompt of gdb, type:

          run [command line arguments here]
          [do whatever leads to the crash here]
          bt
          quit

  Finally, type exit to leave the shell opened by script. This should
  have lead to a file called typescript; please include the portion of
  it that starts with (gdb) bt in your bug report.

  7.  About this document

  The latest version of this FAQ is available from the slrn
  documentation page : <http://slrn.sourceforge.net/documentation.html>.
  Suggestions for improvements are always welcome.

  7.1.  History

     2008-07-20: Revision 1.3
        Updated, mostly by TW and PJR, for changes in version 0.9.9.

     2004-10-04: Revision 1.2
        Added a note on the version numbering.

     2003-08-25: Revision 1.1
        Minor corrections before the release of 0.9.8.0.

     2003-08-19: Revision 1.0
        The first version of this FAQ documents slrn 0.9.8.0. It merges
        the three files FAQ, SCORE_FAQ and slrnpull/FAQ written by John
        E. Davis. Matthias Friedrich and Thomas Schultz updated the
        existing entries and wrote some new ones.