What's new around here?

This site is retired!

The new site is http://www.vex.net/~x/yirx/
<< Text-Only Menu Here! >>  There is a guestbook if you'd care to sign.

YARN/2 Bells and Whistles!

Introduction to Yarn, this Site, and Related Links!
Text Editors  > Emacs for OS/2
 > Enhanced PM Editor (EPM)
 > The Folding Text Editor (FTE) *
 > Other Text Editors?
 > Spell Checkers
 > Yarf! (Customise "From:") *
 > Yarn Editor Processor (YEP) *
 > Souper
 > Uqwk
 > VSoup *
 > Yarn Dialer
& Encryption
 > MIME decoding *
 > PGP Encryption *
 > UUencode/UUdecoders *
 > Other Encoding Types
Yarn/2 Stuff

 > Add Lines: Header to news
 > DOS Yarn Utilities of Note
 > Folder Sorting by Date
 > Get (list of all) News Groups
 > NNIGN News.Dat Stats
 > Yarn Automatic News Gadget
 > Yarn (Folders) to Soup
 > Yarn Inbox/Folder Check *
 > Yarn (news.dat) Pack
 > More!
Loads of Yarn related REXX scripts!

Introduction To Yarn and...
This Site Other Sites

Yarn is a multi-platform off-line internet email and usenet news reader. Yarn is currently available for OS/2, DOS, and Win32/95/NT. Yarn has a text based interface, not a GUI. Yarn may be plain to look at, but it is very fast, extremely flexible, and thoroughly reliable.

Yarn is suitable for use with SLIP/PPP internet accounts as well as UNIX shell accounts. Yarn uses SOUP (Simple Offline Usenet Packet) format packets to transfer mail/news. If you want to pick up mail via SLIP or PPP you will need to use Souper or Vsoup. If you want to pick up mail/news from a unix shell you will need to use Uqwk installed on the host system.

Yarn maintains a local database of mail/news you have downloaded. Some of the advanced functions Yarn is capable of are:

This Web Site

The official Yarn Web site is at http://www.vex.net/yarn. This is an un-official suplimentary site the purpose of which is to attempt to consolidate all OS/2-related Yarn resources (programs/information/scripts) in a central location. Some of the software listed here (even some of the REXX scripts) have DOS/Win32 versions, but this site is completely oriented towards OS/2 users.

If you are a DOS/Win user you may want to search this page for the word "DOS" to find the DOS compatable gems hiddden in this field of wild and rampant OS/2 weeds. Or just switch to a stable operating system, like OS/2. (Just kidding! Sort of. Heheh.)

This site was inspired by Kevin Martin's Yarn Bells & Whistles web page. It is a wonderful page, but alas was/is DOS/Windows oriented. But thanks to his original work, now there is a similar web site dedicated to OS/2 Yarn users. And this is it!

If you know of any OS/2 Yarn related software/scripts that should be here please let me know. If you have any tips about using any software with yarn, which you think would be helpful to others, then please share that as well. If you have, or know of, any other web sites with Yarn (especially OS/2) related paraphenalia on them, send them over to be linked. All for one, and one for all, and all that!

Other Yarn/2 Related Sites

Text Editors
Emacs EPM FTE Other

Everyone, of course, has their own perferences when it comes to text editors. The purpose of this section is catalogue suggestions and tips about using various text editors with Yarn/2. By all means, if you especially like a text editor that is not listed here (and especially if you have any special configuration tips for using it best with yarn), don't keep quiet.


Emacs 19.33 is a freeware UNIX text editor that has been ported to many platforms, including OS/2. It can an extremely complex editor, practically an operating system itself!

I don't use Emacs, however I'm given to understand it has an "email mode". This mode apparently works well with Yarn and Yep. If anyone has details, let me know.


EPM is, of course, the "enhanced" editor that ships with OS/2. It's quite a good PM editor. It seems that to use it with yarn however you must call it from a command shell. So the editor defintion in your yarn %HOME%\yarn\config file would look like this:

 editor=cmd /c epm %f
Or if you use Yep then the definition in your yep config might look like this:
 editor="epm $F 'goto $L'"
There is a great spell checker add-on for epm, which is well worth downloading and installing!

FTE 0.44

The is my choice of a text editor. It has a text mode, as well as PM version. It is freeware and extremely configurable. It has a nice colour syntax email mode (a different colour for header, quoted, body, and sig) which is very easy on the eyes. Once you've experienced it it's hard to give up!

Another great thing about the full screen text version of FTE is that it is able to access and use the system clipboard (just make sure you run the CLIPSERV.EXE utility bundled with FTE first -- put it in your startup folder, or put RUN=c:\path\CLIPSERV.EXE in your config.sys if you use it often. (Or you can also run it from an OS/2 startup.cmd -- OS/2 is so darn flexible)

I used to have a bunch of customisations here for FTE to get it to work better with Yarn and YEP. However, in later versions Marko (the author of FTE) made these the editor's default settings -- so not many changes are needed!

However, FTE is particularly wonderful if you change the MSG mode colours to match your Yarn colour scheme -- it makes FTE seems almost seemless with Yarn... when you reply to messages you see them in the editor the same colour as you view them in yarn.

The fastest way to change the colours in fte MSG mode is to edit the m_msg.fte config file. However if you are going to make many changes, the best approach is to create your own config file (this way, when new versions of FTE come out you don't need to edit FTE's config files every time).

For this example you should create a file in the FTE config directory called myfte.fte and put this in it:

 colorize MSG {
     SyntaxParser = 'MSG';
     color {
         { 'Normal',   '-2' },
         { 'Header',   '-3' },
         { 'Quotes',   '-6' },
         { 'Tag',      '-F' },
         { 'Control',  '-B' },
Note: the above mysterious looking code is copied straight out of the m_msg.fte FTE config file, but the colours values have been changed to match Yarn's default colours. Each colour is a two digit hexadecimal number (ie. from 0-9 and A-F). The first digit is the background colour (if you use '-' instead of a digit (as above) then no background colour is set. The second digit is the IBM character colour.

Now, assuming you have put this configuration code in a file called myfte.fte you need to inform FTE to use your added configuration. You do this by editing the main.fte FTE config file. At the bottom of it (ie. the last line), include a line which looks like this:

 include 'myfte.fte';
And then re-compile your fte.cnf and/or ftepm.cnf configuration file as usual, using the cfte compiler (cfte config/main.fte fte.cnf). In this way, if you put all your configuration changes to fte settings and modes (except the PLAIN mode, which is a special case) in this seperate file, then when you upgrade FTE in the future you usually will only ever need to add the "include" line in your new main.fte, and compile the cnf file and you are ready to go.

Here are some sample files:

I already mentioned how FTE can use the system clipboard -- very handy. Another handy utility if you like to use a lot of full screen OS/2 sessions is ClipIt. It doesn't access the system clipboard unfortunately, but is a clipboard you can share between full screen text sessions.

What? You want yet more old FTE tips??

Other Editors

Put information on using your favorite editor with Yarn/Yep here! For example, does anyone know the command line for Qedit to set the starting line number (for use with Yep)?

Editor Enhancements
Spellers Yarf YEP Other

Want to polish up that message text? Streamline your editing process? Add customised message headers? Automate some of your text processing? Some of these utilities might be useful.

Spell Checking

GNU iSpell is a free spell checker ported to OS/2. I should warn you, it's a rather ugly program! And the last time I looked it wasn't exactly a piece of cake to set up either. However, it works, and once you do get it setup it is a piece of cake to integrate it into Yarn. You can read how in the CHANGES text file that is with any version of Yarn newer than version 0.55. In a nutshell, all you need to do is edit your yarn CONFIG file, adding a line something like this:

  spell=iSpell %f

If anyone using iSpell would like to write a short tutorial on how to install it (hashing dictionaries, and so on) and hook it into Yarn, please do! Then send it to me to post here, or a link to a page where you post it. (I have been told this program requires HPFS).

Other Speller Checkers you might want to check out include:


Yarf 1.5 allows your "From:" message header to be modified automatically based on many user definable cirteria. You might want to use a different "name"). > in certain usenet newsgroups. You might have several email addresses and want to change which email address appears on the message you are writing. You may want a way to obscure your identity in some usenet newsgroups. Yarf lets you do all this, and with some imagination more. (OS/2 and DOS versions. br>

Yarn Editor Processor

YEP 1.7 is a utility that can be used to enhance and automate editing messages with your text editor. It is similar in some ways to, and was inspired by, the more famous DOS Yarn Editor Shell). > (YES, of which it is rumoured there is an OS/2 version in the works), but has it's own peculiarities. It can be used to set the position of your cursor when you enter your editor, insert customized message headers, do random SIGs, insert text based on newsgroup, to, date or subject; insert output from external programs on the fly. Yep uses substitution codes to create customized macros, abbreviations or spelling corrections. And more. (OS/2 only. !--

A newer beta version of YEP is available, but may still have some bugs. -->

Other Editor/Text Enhancers

Know of any other utilities related to your message text editing/processing. Of course there is encypption, but I have left that for a general encoding/decoding section of this document. But any other utilities you think may fit here which you use, please share your knowledge.

Transfering Mail
Yarn Dialers

So you have Yarn set up -- but now how do you fetch your mail? How do you actually post mad ravings onto the internet?

Yarn creats, packs and unpacks SOUP packets. You must have another program to then transfer those packets back and forth between you and your ISP. SOUP packets can be packed/unpacked on your ISP's server via a Unix shell, or you can transfer your mail back and forth via a TCP/IP (PPP or SLIP) connection. So many options!


Souper transfers mail/news back and forth between your ISP via TCP/IP (PPP or SLIP). It is written by the author of Yarn. It supports article scoring (like Yarn). Souper is a command line driven utility. You will want to create a CMD file to run it -- but that's all in the Souper documentation. In addition there are several read-made dialier and/or transfer scripts available. There are also several tutorials on various web sites with step by step instructions (if the documentation isn't enough).


Many Yarn users prefer to dial-up a UNIX shell account and use a UNIX program called Uqwk to gather and pack up their mail/news for transfer. This often reduced transfer time, because the zipped SOUP packet created on the Unix shell is compressed quite a bit. You can then download the packet with Zmodem, or some other transfer protocol.

Although not used a whole lot (Souper or Vsoup being a generally better option), there is an OS/2 ported version of UQwk, which presumably could be used to fetch/post your mail/news via a TCP/IP (SLIP/PPP) connection as well.


VSoup 1.28 is a multi-threaded version of Souper. It is much, much faster than regular Souper when downloading news. However for fast NNTP usenet news transfers, you can't beat it. Vsoup now supports flexible "score" files -- it does everything Souper does, and more. So there's really no reason to use plain old Souper anymore, except perhaps if you want to maintain absolute compatability between Windows and OS/2 systems -- or just for the nostalgia.

In order to run VSoup you need to have EMX Run-Time Libraries.

If the links above don't work then consult the author's VSoup documentation page.

Dailing/Connecting to your ISP

Yarn works off-line to read/write mail and usenet news. Souper or Uqwk work to transfer your mail and news back and forth over a TCP/IP connection. All that you might desire is some help to automate the process of connecting to your ISP.

Yarn Dialer 1.53 is very configurable rexx script front end which works with OS/2 TCP/IP to connect to your ISP and download/upload mail and import it with Yarn automatically. It works with the default OS/2 internet dialer, as well as some other third party dialers; using either Souper, or Vsoup. Nicer and more comprehensive than most batch files.

In-Joy 1.1 is a complete dailer replacement. It can be configured to start programs (or scripts) when you connect to your ISP, so could be used to automatically fetch mail. All you have to do is write the batch file to do it. Shareware, 30 day trial.

Encoding/Decoding Text/Files
Pretty Good Privacy
Other Encoding Methods

There comes a time in every netizen's life when just transfering plain text messages isn't quite enough. Occassionally one might need to trasnfer a file or graphic via the mail. Sometimes one feels the need for the extra assurance of privacy that encryption affords. And even if one never wants to do any of these things, they would doubtless eventually run across someone who does -- and so need the tools to decode what they find.


MIME (Multipurpose Internet Mail Extentions, utilising Base64 encoding) as become an internet standard for message encoding. With it you can theoretically embed graphics, or sounds, or files, into email messages. More often, however, it's simply used as a "file attach" mechanism to encode and transfer a program or data file along with mail.

Yarn has this type of MIME Encoding built in. When you finish writing a message and exit your text editor the Yarn menu has a "File Attach" option. Selecting it will prompt you for a file name. The file you select will then be MIME encoded at the end of your message, and sent out "attached" to it. Yarn, however, does not have any MIME decoding build in. To decode any MIME messages you recieve you will need to have some sort of MIME decoding software, and configure Yarn to recognise and use this software.


is a complex program which allows not only the decoding of MIME encoded blocks, but also is configurable to automatically run other programs associated with various Mime-Types. For example, if you recieve MIME encoded GIF files of the Mime-Type graphic/GIF then you couldhave MetaMail decode it and automatically call your favorite graphic viewer/editor to display the thing.

To enable Yarn to use metamail you must edit your %HOME%\yarn\config file and find the line which containing #decode-mime=metamail %f and uncomment it (remove the # character from in front of it).

But that is not all. For metamail to work you also need to set the MAILCAP environmental variable, and create a MAILCAP file to define the Mime-Types and what programs are associated with which type on your system. (If someone out there has a good MAILCAP file, please send it to me to post here as an example). So in your config.sys, for example, you might add:

 SET MAILCAP=c:\tcpip\etc\mailcap
Then you must create that particular file. There is a sample complex MAILCAP file that comes with MetaMail -- but it is geared towards UNIX, which MetaMail is ported from. The format of the MAILCAP file is a Mime-Type followed by a space and then the command line to run for that type of file. For example:
 text/html c:\tcpip\bin\webex.exe
 image/* c:\pmview\pmview.exe
Notice that you can use a wildcard (*) to match a group of file types. The image/* will match image/gif and image/jpg, et cetera.


is a much simpler program perfered by many. All you need to do to set it up is edit your %HOME%\yarn\config file so that the decode-mime line reads:
 decode-mime=munpack -C c:\u %f
The above line will simple decode any MIME files to the directory C:\U (make sure you change this to whatever directory/folder on your system you want files decoded to). Then with the file decoded and saved one can access them in whatever way one wants.

Other OS/2 MIME Decoders include:

Pretty Good Privacy (PGP)

What can be said about PGP which has not already been said? PGP is the most secure and widely used method of data encryption. With PGP you can be extremely confident that no one will be able to read a message you send or recieve, except the recipient. To obtain a copy and learn using PGP in general consult the International PGP Home Page.

Yarn has build in support for using PGP. To enable YARN to Encrypt/Decrypt PGP messages you must once again edit your %HOME%\yarn\config file. There are four lines which control PGP actions. They must be uncommented (by removing the # character from in front of them), and possibly edited. The default PGP settings in the Yarn/2 config file are very DOS-oriented. They call DOS batch files (which come with yarn). A quick way to patch that up is to rename the pgp*.bat files in your YARN directory to pgp*.cmd. Then edit the Yarn config file to call the CMD files rather than the BAT files.

However, assuming PGP is in your system's PATH, here are the settings that work best for me:

 secret-sign=pgp -ast %f -o %o
 encrypt=pgp -eastw %f -o %o
 decrypt=pgp %f -o %o
 decrypt-view=pgp -m %f

Once you have uncommented the above options, regardless of the exact settings, you will find that when you write an email message and exit from your editor, Yarn's menu will contain an Encrypt option. To decrypt a PGP message when viewing it in yarn press SHIFT-X.

YEP, the Yarn Editor Processor, also has built in support for PGP Encrypting your messages, which supports such things as: only encrypting portions of a message instead of the whole things, encrypting to multiple recipients (including yourself, so you can decrypt your own messages!), hands-off PGP operation.

The most common simple problem associated with getting PGP to work is not having set the PGPPATH environmental variable. See the PGP docs for details. If you have a relatively secure system you may also like to set the PGPPASS environmental variable with your password, so you never need to type it. (WARNING: this is a very unsecure thing to do!)

There are some helper/front end programs for PGP to make it easier for some people to operate. While these are not needed for use with yarn, in case you are interested here are some:

UUencoding and UUdecoding

UUencoding is the old standard of ASCII encoding of binary files. It is still the most straight forward and convenient way to encode files for trasmission through email, in my opinion. UUencoding stands for Unix-to-Unix Encoding.

Yarn has UUdecoding built in. If you recieve a message that contains a UUencoded file just press SHIFT-B and Yarn will decode it to your news directory or the directory you have set it your yarn CONFIG file:

  save-directory = d:\u
If you want to UUencode files, however, you will need a UUencode program. Fortunately there are lots of them, both command line interfaced (CLI) and graphical user interfaced (GUI). Here are just a few, take your pick:

In addition to these, heavy uudecoder people may want to check out the OS/2 port of UNPOST, which is especially designed to be smart and attempt to find, sort out, and decode even multi-part split up uuencoded files from usenet.

Other Encoders

There are other less common encryption/encoding methods out there; many of them. Here are a few:

Miscellaneous Yarn Utilites
Add "Lines:"
Folder (Date) Order
Get (all) NewsGroups
NoNewsIsGoodNews Stats
Yarn 2 Soup /w Grep
YIN Inbox/Folder Check
YarnPack (news.dat)
DOS Utils of Note

There are many "odds and ends" utilities for use with Yarn. Depending on what you want to do with yarn you may find some of them useful.

Add "Lines:"

Yarn normally only adds a "Lines:" header to outgoing usenet news articles. If you want to add a "Lines:" header to your email as well then AddLines is the tool to do it.


F_Order perminently re-sorts the messages in any yarn folder based on the "Date:" header.

Get News Group

So you are running yarn. How do you know what newsgroups are available at your ISP? Get News Groups will conveniently retrieve a list of them via a PPP or SLIP connection.

No News Is Good News

Otherwise known as NNIGN 2.2, this program will scan and report all sorts of useless (but perhaps interesting) statistics about your Yarn 9.x news.dat database. It can tell you how many articles you currently have, as well as the amount of "available" space in there. It can even draw irrelavent maps. A must). > for trivial minded techies, like me. (OS/2 and DOS versions included br>

Yarn to Soup with Grep

Unfortunately this wonderful utility has not been updated in some time and no longer works with the newer Yarn 9.x news.dat format. However Yarn to SOUP with Grep still works fine on Yarn folders. What does is search for messages and then make all matching messages into a new SOUP file. You can also use it to convert entire folders into SOUP packets for re-importing/re-filtering. (OS/2 and DOS versions).

Yarn Inbox/Folder Checker

YIN 1.5 is intended primarily for quickly checking your yarn INBOX). > folder, without having to start up yarn. But it can be used on any folder. It will summarise the contents of the folder, and can even list new (or all) messages to the screen so you can take a quick peek at them. Speach friendly. (OS/2 and DOS versions included br>

YarnPack 1.4

WARNING: this is an experimental program, and may cause problems with your news.dat -- the latest version, so far, has not had any bug reports however. If you do run into any problems REBUILD -o (or sometimes possibly -r), should fix it. Use at your own risk.

Yarnpack will "pack-in-place" and shrink your Yarn 9.x news.dat file, and not reset your import dates. It also does some integrity checks when you use the /I). > switch (recommended!). (OS/2 and DOS versions p align=left>
NOTE: If YarnPack gives you an error like "history:####>news.dat:####" do not worry. This is a condition which happens in the Yarn index file quite often. YarnPack does not know how to handle the situation and always errs on the side of caution and reports it as an error and refuses to run to be safe. Unfortunately YarnPack will refuse to run while such a situation exists. Yarn, however, will sort the situation out itself eventually after several normal import/expire actions. All you can do is keep trying to run "yarnpack /i" and monitor the situation until the "error" no longer occurs.

Yarn Automatic News Gadget 1.0

Yang Lets see... how to describe it... You know how some news readers only list subscribed newsgroups which currently have unread articles in them? Yarn always displays every newsgroup you are currently subscribed to in the at the newsgroup selection level. With this utility you can automatically 'hide' newsgroups with no currently unread messages in them, and 'unhide' them when new messages come in. (OS/2 and DOS versions). You can get the lastest version from the author's web page (link above), or a local copy here). > (br>

DOS Utilties of Note

Remember, for other information regarding DOS Yarn utilities visit Kevin Martin's Hands On How To guide and his Bells and Whistles page. And also the Official Yarn Page. With OS/2 you can run any of these DOS utilities, assuming you haven't disabled DOS support or set PROTECTONLY=YES.

Yexport will scan your news.dat file for words or phrases and export found messages to a yarn folder, or an "rnews" file.

Fix Folder salvages messages from a corrupt Yarn folder. It comes with a DOS executable, but the C source code is there as well-- if you are an OS/2 C programmer.

QWKsoup will convert QWK packets to SOUP so you can use Yarn as an offline mail reader for QWK packets as well. It also converts SOUP reply packets to QWK REP packets, ready to upload. Works well, though can be tricky to get working right.

Yarn Utilities are handy DOS utilities which can do the following: add "Lines:" to Soup packet, count messages in a folder, make folders editable, maps messages in a folder, add "X-Revision:" to message, selects messages from a folder, convert folder to SOUP, sort a folder keeping threads, delete superseeded messages, convert textfile to a folder, convert folder to printable text.

Even More!

Here's some more odds and ends I have yet to work into anyplace else on this page yet...

NewGrp retrieves new USENET group names with Souper/Yarn. Similar to Get News Groups.

Soup 2 Squish converts SOUP packets into Squish message base format. Good for using with BBS's that use that format for message bases.

[ Yarn/2 REXX | Yarn Perls | More FTE | Text-Mode OS/2 ]

Want to sign the dreaded guestbook? Mail me?
This page is trying to be Lynx Friendly!