Matěj Cepl | 2 Sep 17:54 2015

HTML messages once again


I have an internal email list gatewayed to the NNTP newsgroups 
which I need to follow, but unfortunately most of messages are
multipart/mixed with text/html part as the only part of the 
message. So, I would really like to run the body of the message 
through lynx -stdin -force_html before reading. An example of 
the type of messages is

Now, I can read on 
an explanation how to achieve this (or something similar and 
I can always fix the Python script easily). However, I have 
wondered: I have here slrn-1.0.2 which has at least some support 
for parsing MIME messages internal. Do I have to use all three 
Troy’s scripts or is there some modern way how to achieve that?

Thank you,



--, Jabber: mcepl <at>
GPG Finger: 89EF 4BC6 288A BF43 1BAB  25C3 E09F EF25 D964 84AC

A man once asked Mozart how to write a symphony. Mozart told him
to study at the conservatory for six or eight years, then
apprentice with a composer for four or five more years, then
begin writing a few sonatas, pieces for string quartets, piano
(Continue reading)

Monte Milanuk | 29 Aug 01:43 2015

View threads with unread posts by default

Hello there!

I'm setting up slrn on my Raspberry Pi 2, and would like to be able to
configure it so that I can have a similar default view to what I have
configured in Thunderbird on my desktop PC.  Specifically, I have it
selected so that it shows 'threads with unread posts', meaning that it
shows any new / unread posts, plus any other posts in the threads even
if they've been marked read before.  This give me a better feel for the
context of a given message, that may not always be conveyed by the
quoting inside the particular post.

I realize that is possible to reconstruct individual threads, and thats
what I'm currently doing.

I noticed this blurb in the slrn FAQ:

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."

Thats pretty much exactly what I want to do... I was wondering if anyone
on the list might have such a macro already worked up and be willing to
share it?

(Continue reading)

Michael Uplawski | 26 Aug 09:02 2015

cannot pull cleanscore from git, snapshot okay.

Good morning.

This may be intentional or not, but I want to mention it at least once.
Pulling updates from git, I do not get any content in the contrib
directory. The snapshot (currently 1.0.3-5) is complete, though.

I noticed this after having accidentally removed cleanscore. People who
are looking out for only the script are confronted with a very old
version which still contains the %% argument in the
function-declarations on top.

Packaging cleanscore with slrn is the right thing to do, but maybe you
could provide a way to get the script separately or just give a
sustainable pointer somewhere; be it to replace the old references in
search results and outdated web-sites. That pointer may exist. But if
so, the slrn site is bereft of it. ;)

TY anyway.

GnuPG/OpenPGP  4096R/3216CF02 2013-11-15 [expires: 2015-11-15]
Michael Uplawski (privat) <michael.uplawski <at>>
sub   4096R/2751C550 2013-11-15 [expires: 2015-11-15]
parv | 22 Aug 11:20 2015

/lib/ slrn dies in LC_ALL=C env on a particular message

Today I came upon a post in rec.arts.anime.misc ...

  8B8AD26D-FF8A-4CCE-A10A-239657B79B2E%anthony.baranyi <at>

... with headers ...

  Content-Type: text/plain; charset=windows-1250
  Content-Transfer-Encoding: binary

... which caused slrn to die with segfault. It was when "LC_ALL" was
set to "C" (no other LC_* variable was set).

slrn also dies while trying to display a reply to that post...

  slrnmtekva.3i0.alan <at>

... which has ...

  Content-Type: text/plain; charset=UTF-8
  Content-Transfer-Encoding: 8bit

Previously, slrn would just show the odd charcaters without fuss,
which would be the desired behaviour. Problem remained even after
rebuilding slrn & slang.

The two messages can be accessed from ...

slrn displayed the messages without problem with ...
(Continue reading)

Arkadiusz Drabczyk | 10 Aug 21:12 2015

A new macro for automatic eob

Hello there,

After a few of using mutt it became natural to me that the newest
messages are displayed on the bottom. Therefore, I set sorting_method
to 11 in my ~/.slrnrc. However, it got annoying to manually move a
pointer to the bottom every time a new group was opened so I decided
to write a macro that would this automatically for me. Here it is:

define go_bottom ()
   call ("header_eob");

variable current_sorting_method = get_variable_value ("sorting_method");

if (current_sorting_method == 10 || current_sorting_method == 11) {
    !if (1 == register_hook ("article_mode_startup_hook", &go_bottom))
           error ("failed to register go_bottom() hook");

It's very simple but I think it may be useful for mutt users. It's my
first ever macro written in S-Lang. I count on your opinion on this.


Arkadiusz Drabczyk <arkadiusz <at>>


Guido Berhoerster | 25 Jul 15:42 2015

[PATCH] Normalize Content-Transfer-Encoding

Normalize Content-Transfer-Encoding because there are MUAs and News
clients using uppercase.
 macros/ | 1 +
 1 file changed, 1 insertion(+)

diff --git a/macros/ b/macros/
index 527e6a0..24902cd 100644
--- a/macros/
+++ b/macros/
 <at>  <at>  -219,6 +219,7  <at>  <at>  private define parse_mime (art)
    node.message = body;

    variable encoding = get_header_key (header, "Content-Transfer-Encoding", 1);
+   encoding = strlow (encoding);
    if (is_substr (encoding, "base64"))
      node.encoding = "base64";
    else if (is_substr (encoding, "quoted-printable"))



Guido Berhoerster | 25 Jul 15:44 2015

[PATCH] Ensure convert_mime_object does not return NULL

In case the message is an empty string charset_convert_string will
return NULL which then leads to problems later.
 macros/ | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/macros/ b/macros/
index 24902cd..3d58547 100644
--- a/macros/
+++ b/macros/
 <at>  <at>  -348,6 +348,9  <at>  <at>  private define format_type (type, width)
 private define convert_mime_object (obj)
    variable str = obj.message;
+   if (str == "")
+     return str;
    if (obj.encoding == "base64")
      str = decode_base64_string (str);
    else if (obj.encoding == "quoted-printable")



Guido Berhoerster | 25 Jul 15:46 2015

Splitting off MIME parsing primitives


back when slrn first gained MIME support I made a (private) fork
of and improved and extended it over time up to a point
where it can now handle arbitraily nested multipart/* and
message/rfc822 automatic conversion of non-MIME parts to
text/plain via mailcap and much more. I've recently cleaned it up
a bit in order to publish it and now I wonder if it would be ok
to split off the MIME parsing primitives in into a
seperate library so that it can be resused by MIME handling
macros such as mine instead of having to copy these parts?
The following patch does just this.

Guido Berhoerster


Dale | 1 Apr 20:56 2015

slrn/nano issue with moderated group

I am using slrn with nano as my editor

I am having threading problems on, I was told the problem
also happens with Google Groups

recently there was a moderation change, my nesting worked
before the moderation change

the threading works on alt.test
below this line is the message id of the original post in that thread
Message-ID: <8bc8dp.4i8.19.11 <at>>

when my Reference Header wraps at the size of the Gnome Terminal,
it gets clipped to the wrap in the moderation software on,
in threads

below this line is the message id of an original post in a thread
Message-ID: <8bbqu7.n83.19.5 <at>>

I have the Gnome Terminal set at 80x43, 
I don't know if this is a word wrap or line wrap

I don't have
set softwrap 
in .slrnrc

this is my set editor_command in .slrnrc
set editor_command "nano -r 74"
(Continue reading)

David Melik | 10 Mar 04:33 2015

error message question

Hello, I have used Usenet since the mid-1990s starting with Free Agent newsreader, then
Netscape/Mozilla/Thunderbird newsreader parts, now Claws Mail newsreader part, and now I am trying
SLRN and get apparently undocumented error messages. Can anyone explain? Last try it said what I put in the
PS below (except I omitting the message). Maybe it has something to do with my default shell editor, NANO or
PICO. How would I get SLRN to wrap the lines, or will the NNTP server actually do that?


PS. The error message is below.

Your message is not acceptable for the following reason(s):

Your message breaks the following netiquette guidelines:

    Please wrap lines with more than 80 characters (only first one is shown)

This message was generated while looking at line 9:

(message omitted)

Find out what's HIP!
Visit Hip Planet for news, shopping, forums, chatrooms, free personal and classified ads and much more!
Get FREE E-MAIL! at HipPlanet now!

It's all waiting for you, at

(Continue reading)

Dale | 12 Jan 02:59 2015

sync headers to download with server

when I select a group to enter, I get
prompted for how many headers,

is this the number of headers on the server?

how can I get only new headers from the time
I used it last?

I am a previous Thunderbird/pan user who switched
to slrn mainly for memory footprint issues,
I only have 993MB RAM and am using Ubuntu

Thunderbird/pan seemed to "sync" the headers,
is there a way to do this with slrn?


(my whereabouts below)

New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
GigeNET is offering a free month of service with a new server in Ashburn.
Choose from 2 high performing configs, both with 100TB of bandwidth.
Higher redundancy.Lower latency.Increased capacity.Completely compliant.