Ted, an easy rich text processor
Ted is a word
processor running under X Windows on Unix/Linux systems. Ted was developed as a standard easy word
processor, having the role of Wordpad on MS-Windows. Since then, Ted has evolved to a real word processor that still has the same easy
appearance as the original. The possibility to type a letter, a note or a
report on a Unix/Linux machine is clearly missing. Only too often, you have
to turn to MS-Windows machine to write a letter or a document. Ted was made to make it possible to edit
rich text documents on Unix/Linux in a wysiwyg way. Ted is a simple
standalone program to edit RTF files. It is not part of an office suite
that can do about anything. RTF files from Ted are fully compatible with
MS-Word. Additionally, Ted also
is an RTF to PostScript and an RTF to Acrobat PDF converter.
Compatibility with popular MS-Windows
applications played an important role in the design of Ted. Every document produced by Ted fully compatible with MS-Word without
any loss of formatting or information. Compatibility in the other direction
is more difficult to achieve. Ted supports many of the formatting features of the Microsoft
applications. Other formatting instructions and meta information are
ignored.1 By ignoring unsupported formatting Ted tries to get the complete text of a document on screen or to the
printer. Ted can be used to
read formatted e-mail sent from a Windows machine to Unix, to print an RTF
document, or to convert it to Acrobat PDF format. Below we explain how to
configure Ted as an RTF viewer
in Netscape and how to convert an RTF document to PDF with Ted and GhostScript.
I hope that you will find Ted useful. Please report the bugs you find,
such that I can fix them.
·
Wysiwyg
rich text editing. You can use all fonts for which you have an .afm file
and that are available as an X11 font. Ted is delivered with .afm files for the Adobe fonts that are
available on Motif systems and in all postscript printers: Times, Helvetica,
Courier and Symbol. Other fonts can be added with the
normal X11 procedure. Font properties like bold and italic are supported;
so is underlining and are subscripts and superscripts.
·
Ted uses Microsoft RTF as its native file format. Microsoft Word and Wordpad can read files produced by Ted. Usually Ted can read
.rtf files from Microsoft Word
and Wordpad. As Ted does not support all features of Word, some formatting information might be
lost.
·
In line
bitmap and windows metafile pictures.
·
PostScript
printing of the document and its illustrations. Saved PostScript files
contain pdfmarks that are converted to hyperlinks when they are converted
to Acrobat PDF.
·
Spelling
checking in twelve Latin languages.
·
Directly
mailing documents from Ted.
Mail in HTML format is a multipart message that contains all images
hyperlinks and footnotes.
·
Cut/Copy/Paste,
also with other applications.
·
Find/Replace.
·
Ruler:
Paragraph indentation, Indentation of first line, Tabs. Copy/Paste Ruler.
·
Page breaks.
·
Page
headers and footers. Page numbers in page headers and page footers.
·
Tables:
Insert Table, Row, Column. Changing the column width of tables with their
ruler.
·
Symbols and
accented characters are fully supported.
·
Hyperlinks
and bookmarks.
·
Footnotes
and endnotes.
·
Colored
backgrounds and table borders.
·
Saving a
document in HTML format.
·
Probably
the best illustration of what you can do with Ted is its documentation that has been made with Ted.
This is the documentation for Ted 2.17. Release Notes with a change log
are in a separate document.
Ted is free
software. By making Ted freely
available, I want to contribute to the propagation of Linux as a viable
platform for technical computer enthusiasts. As Ted is free software, I assume no responsibility for the
consequences of using it. It is up to you to decide whether Ted suits your purpose or not. Ted is distributed with absolutely no warranty under the terms of
the GNU Public License. If you include Ted on a CD-ROM or any other medium, or
publish Ted in any other way,
it would be nice to tell me. Please send me a copy of your publication or a
reference. I like to see what happens to Ted and to show off to my friends. You should not publish Ted or software that is based on Ted without mentioning me as the original
author in all textual documents that accompany your software. If you
publish Ted, or any piece of
software that is based on Ted,
you must include a copy of the original Ted documentation in your distribution. The Ted documentation is part of the source code that you have to make
available to respect the GPL.
Ted is an X11
program. To start it just invoke Ted & or /usr/local/bin/Ted &. To start Ted with a
certain file invoke Ted something.rtf &. Several special purpose calls of Ted are documented below.
The installation of Ted depends on the platform and on the kind
of distribution. Binary distributions for Intel ix86 Linux are available
from the download site ftp://ftp.nluug.nl/pub/editors/ted. The distribution comes in the form of compressed tar archives
and as Red Hat package manager (RPM) packages. Binary distributions for
other platforms might be available on CD. For more or more recent
information refer to the Ted
web site http://www.nllgg.nl/Ted.
To install Ted or one of the localization packages from an RPM package, log in
as root, (Or any system user with sufficient permissions to install
packages.) and give the command rpm -i
<package-details>.rpm . To upgrade from a
previous version of Ted give
the command rpm -U <package-details>.rpm. The executable in the binary package is linked statically, so
there are no dependencies on shared libraries. If you like shared libraries
and their intricacies, you will have to compile Ted yourself.
Installation from compressed tar
archives is best done in combination with the corresponding Linux Software
Map (LSM) files and the installation script
installTed.sh. Download the files to a scratch
directory such as /tmp; log in
as root; run sh installTed.sh
from this directory. If you do not have the possibility to log in as root,
you can run the command sh installTed.sh PRIVATE.After a private install the install script tells you what to
include in your .Xdefaults or .Xresources file to make the installation
work. (The root requirement is to have sufficient permission to create the
files and directories. Any system user with sufficient permission will do.)
If you do not like easy installation,
you can unpack the compressed tar archives manually. The software assumes
that you do so in /usr/local. The Adobe font metric files are stored in
/usr/local/afm and spell checking dictionaries in /usr/local/ind. This
online document is installed as /usr/local/Ted/TedDocument-en_US.rtf. The
example application resource file Ted.ad.sample is installed in
/usr/local/Ted. If you decide to install Ted in a different location, you can change these locations by
setting X11 resources, e.g. in your .Xdefaults or .Xresources file. Refer
to the section on configuration below. Do not forget to call umask 0 before you unpack. Some of the
localized packages contain translated documents that are installed as
/usr/local/Ted/TedDocument-eg_ER.rtf. If you install by hand, the
translated messages can be found in a /usr/local/Ted/ad/Ted_eg_ER.ad.tar
with the app_defaults file for X11. The script and the rpm file install the
app_defaults file automatically. Refer to the paragraphs on configuring and
on translating Ted for more
detailed information.
It is also possible to compile Ted from source. Refer to the compilation
instructions at the end of this document.
Overview of the different packages:
|
Package
|
RPM package: file
|
Tar archive, LSM file
|
|
Basic binary package for Intel Linux. (Includes
American spelling)
|
ted:
|
|
|
Install script for Tar archives and LSM files
|
|
|
|
Dutch spelling and messages
|
ted_nl_NL:
|
|
|
British spelling
|
ted_en_GB:
|
|
|
German spelling and messages.
|
ted_de_DE:
|
|
|
Spanish spelling and messages
|
ted_es_ES:
|
|
|
Argentinian Spanish spelling and messages
|
ted_es_AR:
|
|
|
Portuguese spelling
|
ted_pt_PT:
|
|
|
Brazilian Portuguese messages
|
ted_pt_BR:
|
|
|
French spelling and messages.
|
ted_fr_FR:
|
|
|
Italian spelling and messages
|
ted_it_IT:
|
|
|
Czech spelling and messages
|
ted_cs_CZ:
|
|
|
Danish spelling and messages
|
ted_da_DK:
|
|
|
Swedish spelling
|
ted_sv_SE:
|
|
|
Norwegian spelling and messages
|
ted_no_NO:
|
|
|
Polish spelling and messages
|
ted_pl_PL:
|
|
|
Slovak spelling and messages
|
ted_sk_SK:
|
|
|
Hungarian messages
|
ted_hu_HU:
|
|
|
Malagasy messages and manual
|
ted_mg_MG:
|
|
|
|
ted:
|
|
|
Original Documentation and Release Notes
|
|
|
|
Translated Documentation
|
|
|
Spelling dictionary examples.3
|
|
|
|
rtf to pdf script
rtf to PostScript script
|
|
|
|
Translated resource files for translators and those
that like to install them by hand.
|
|
|
For languages that use the Latin 2
character set, fonts that support the Latin 2 character set are best.
Recent version of the URW++ fonts that come with
GhostScript are more than satisfactory. Refer to the
section on fonts to learn how you can tell Ted to use them by default.
Ted uses rtf as
its native file format. I have chosen the rtf format because it is an old
file format that is understood by many text processing programs. The fist
version of the microsoft RTF file format specification dates from 1987 and
rtf has since then become the lingua franca for document exchange between
word processors on the Apple Macintosh and on other computers: Many
applications can understand rtf files and most people have a program that
can render rtf installed on their computer. Not only word processors like Microsoft Word, Abi Word and Open Office, but also standard programs
operating system programs like WordPad, TextEdit and write.exe understand the rtf file format.
This makes rtf a good file format to reach a heterogeneous audience with
many different computers and operating systems. From its origin, rtf has
been a Microsoft file format. Some of us may fear that the legions of evil
will infest his computer once he begins to use it. In practice however, it
is a good simple portable file format. If it were formally standardized, it
could be seen as an open standard for simple word processing documents.
As the Microsoft Word export file
format, rtf describes Word documents. The current rtf 1.7 specification
covers most of the functionality of MS-Word 2002. This does not mean that a
program that reads and writes rtf has to be as elaborate as Microsoft Word.
In fact almost no software that reads and writes rtf is as elaborate as
Microsoft Word. Almost any application that reads rtf files [including Ted] silently ignores unknown rtf control
words. This even applies for MS-Word itself. The result is that no two
programs write exactly the same rtf variant and that many consciously
designed and accidentally born rtf dialects exist. Examples of accidental
variants are the typo \fc tag
for \cf on the NextStep
platform ten years ago or the recent \nobrdr tag in Open Office that seems to mean the same thing as \brdrnone in the specification. [I ignore
the fact that \brdrnone is
only mentioned, not explained in the Microsoft rtf specification.] An
example of consciously designed deviations are the
{\*\pgdsctable and {\pgdscN groups that Star Office emits. Sun could
be excused for this because everything is an a
{\*\something group. The fact that the tags are
undocumented is inexcusable however.
The rtf file format is relatively well
documented. Every few years, Microsoft issues a fresh specification that
matches a recent version of MS-Word. The latest version that I have seen is
the rtf 1.7 specification. It corresponds to MS-Word 2002. The location on
the Microsoft site changes all the time. The easiest way to find the
document is to search for "Rich Text Format (RTF) Specification"
with Google. (Note the double
quotes.) Though the document gives many details of the file format and all
the rtf control words, the the meaning of the control words is only
concisely explained. The O'Reilly RTF Pocket Guide by Sean M. Burke is a good introduction to rtf and a valuable
companion to the Microsoft file format document.
One of the more annoying differences
between rtf dialects that I have encountered is the way page headers are
emitted in Open Office and Star Office. As the rtf that the two emit
really means something different in MS-Word and Ted, it is
impossible to make a work-around in the Ted source. The simple example shell script below fixes rtf
documents that do not show the correct headers in Ted.
IN=sample.rtf
OUT=ss.rtf
sed -e 's/^{\\headerf/\\titlepg{\\headerf/' \
-e 's/^{\\headerl/\\facingp{\\headerl/' \
-e 's/^{\\headerr/\\facingp{\\headerr/' \
-e 's/^{\\footerf/\\titlepg{\\footerf/' \
-e 's/^{\\footerl/\\facingp{\\footerl/' \
-e 's/^{\\footerr/\\facingp{\\footerr/' \
-e 's/\\nobrdr/\\brdrnone/g' $IN > $OUT
To enter text, just type. What you type
is inserted in the text before the insertion point that is shown as a
blinking vertical line. If a region of text is selected, the whole
selection is replaced by what you type. Single letters can be deleted with
the backspace key. It deletes the character before the insertion point. The
Delete key deletes the character after the insertion point. If a region of
text is selected, both the Backspace and Delete keys delete the selection.
If the backspace key deletes the text after the insertion point, your X11
configuration wants it to be a Delete key. Refer to the section on X11
configuration below for details.
The insertion point can be moved with
the arrow keys, or by clicking with the left mouse button in the desired
position. The 'Home' key moves the insertion point to the beginning of the
line. The 'End' key to the end of the line. Regions of text can be selected
by dragging over the text with the left mouse key down. It is also possible
to select regions of text with one of the keys that moves the insertion
point: Press the key while the shift key is down. Ted shows you what is selected by drawing the background of the
selected region in light blue. The same applies for mouse clicks with the
shift key down: The selection is extended to the position of the click. In
general, navigation commands with the shift key down extend the selection.
Selections inside tables remain inside the contents of one table cell or
select a rectangular range of complete cells.
To change the font of the selected
region, activate the Font tool by clicking the 'Font Tool' option in the
'Font' menu. It shows you the font of the current selection. Choose the
font you want to use for the selection in the Font Tool and push the 'Set'
button. If you select a single font in the Font Tool, its name is shown in
the selected font. The description of a multiple font selection is shown in
one of the fonts selected. With the 'Revert' button, you can adapt the Font
Tool to the fonts in the selected region again.
The 'Copy Font' and 'Paste Font' menu
options make it easy to use the same text attributes in different parts of
your text. Select a position with the font you want to use somewhere else
and click the 'Copy Font' option. Then select a region of text and click
the 'Paste Font' option. The selected region gets the text attributes that
you have copied from the first position.
The collection of fonts that Ted can use is determined by the collection
of something.afm files in the Ted afm directory. (default: /usr/local/afm)
Only fonts that have a metrics file there can be used. Ted uses certain heuristics based on the
name of the font family and the font attributes to find an X11 font with a
postscript font. Refer to the section on adding fonts for a mechanism to
explicitly associate X11 fonts with PostScript fonts. Only those fonts for
which an X11 font can be found can be used from Ted. Note that for fonts in a character set different from the Latin
1 character set, the AFM file, the X11 font and the printer font should
have the correct encoding. Refer to the section on fonts for more details. Ted tries to reencode fonts in an encoding
that that if believes to be the most suitable. In general, Ted tries to find supported character sets
in the afm file of a font and to use the font in a standard encoding. Fonts
that do not have all characters of any of the character sets supported by Ted are only grudgingly accepted: Ted issues a warning and in many cases the
result is far from optimal. Note that the afm files tell Ted about the fonts in your printer or the
fonts that it picks up from GhostScript.
To change single text attributes such
as 'Bold', 'Italic' and
'Underlined', you can also use the options in the
'Font' menu. Subscript and Superscript refer to the position of the 2 in x2 and H2O respectively. The strikethrough option is to draw a line over your text. The text color option
can be used to insert text in different colors. The small caps toggle can be used to convert text to Small Capitals. The all caps toggle is to
support the option of the rtf file format to render text in capitals and to
make up an even number of toggles.
To check what fonts are available and
how Ted maps the fonts to PostScript and to X11 fonts, select a font
and watch the font names immediately below the example drawing on the font
tool. The first name is the name of the X11 font that
Ted uses to display the font on screen. The second
name is the name of the PostScript font that Ted has
matched to the font name in the document.
The following illustration shows the
Font page of the Format Tool.
You can include pictures in your texts.
To do so select the Include Picture option in the Insert menu. A file
chooser will allow you select a picture file to include in your text. The
usual picture file formats such as tiff, bmp, xwd and jpeg are supported.
It is also possible to paste pictures from other X11 applications.
Unfortunately, only a limited number of X11 applications actually support
Copy/Paste of pictures.
To resize a picture select it. Eight
resize squares will appear. Dragging the squares with the mouse will resize
the picture. Alternatively, you can use the Image page on the format tool to to scale the image to the desired size.
|
Control
|
Explanation
|
|
Pixel Size
|
If the image is a pixel based image the width and
height of the image in pixels.
|
|
Size in Bytes
|
The size in bytes of the image data in the rtf document.
|
|
Image Wide
|
The width of the image in metric units. The width is a
dimension. You can enter any valid dimension as described in the section on
configurable resources. Use the Enter key to validate the dimension, to convert it to the default unit
and to calculate the horizontal scale.
|
|
Image High
|
The height of the image in metric units. The height is
a dimension. You can enter any valid dimension as described in the section
on configurable resources. Use the Enter key to validate the dimension, to convert it to the default unit
and to calculate the vertical scale.
|
|
Horizontal Scale
|
The scale of the image in the horizontal direction. Use
the Enter key to validate the
scale and to calculate the size in metric units.
|
|
Vertical Scale
|
The scale of the image in the vertical direction. Use
the Enter key to validate the
scale and to calculate the size in metric units.
|
|
Apply to Image
|
Adapt the embedded image to the values you just entered.
|
|
Revert
|
Show the properties of the image as they are stored in
the document.
|
To include special symbols into a text
you can use the symbol picker tool. To activate it, choose 'Include Symbol'
in the 'Insert' menu or in the 'Tools' menu. The symbol picker shows all
characters available in the current font. You can either select a symbol,
and then push the 'Insert' button, or double click the desired symbol.
Symbols from different font families can be selected with the font chooser
above the symbols.
Common accented characters can be typed
directly. If your X11 server is correctly configured, the local input
method that is compiled into the X11 libraries supports a compose key. The
<compose> key allows you to insert accented characters by typing
<Compose> <Letter> <Accent> or <Compose> <Accent>
<Letter>. Where <Accent> is an ascii character that resembles
the intended accent. E.G. <Compose> a ' results in á. Another
example: <Compose> 1 2 results in ½. On PC keyboards the 'Compose'
key is often labeled 'Scroll Lock' for your amusement. Refer to the
paragraph on X11 configuration for some further remarks.
Ted supports
Copy/Paste with itself and with other X11 applications. With the 'Copy'
menu option, you can remember a piece of text or a picture. The 'Paste'
menu option allows you to paste the remembered text to a different location
of the same document, or to a different document.
Copy/Paste of formatted text is only
supported between Ted documents4.
String text with elementary formatting such as tabs and newlines can be
exchanged with most X11 applications.
Copy/Paste of pictures, retaining
geometry information is supported between Ted windows.5 Copy/Paste is also possible with picture oriented X11
applications that support the exchange of PIXMAP selections. With these
applications, such as xmag and xpaint, scaling information is lost.
A special hack exists in the code to
cooperate with the Copy/Paste mechanism that John Bradley's xv implements itself with X11 window
properties on the root window. X11 selections that conform to the
conventions of the X11 Inter-Client Communications Conventions Manual
(ICCCM) always have priority over those from xv. This is a peculiarity of the way xv implements its clipboard, not a bug in Ted. Because of this peculiarity, you must set the X resource
Ted.supportXvCopyPaste=1 to enable copy/paste with xv.
Both the Netscape Composer and the Gimp
handle Copy/Paste of anything but plain text inside the program. This makes
Copy/Paste with programs like Ted that do Copy/Paste in the normal X11 way impossible.
The copy/paste ruler mechanism works
like a normal copy/paste: selection=RTFRULER, target=application/rtf. The
contents of the window property that is exchanged is a complete rtf
document with one (empty) paragraph. The relevant paragraph properties are
picked up by the pasting document. The fact that the target (i.e.
content-type) is application/rtf may seem a little surprising. The paste
buffer is a valid rtf document however. Only the way in which Ted uses it is special. The ruler properties
that are exchanged are the following: (1) Left Indent, (2) First line
indent, (3) right indent, (4) Tabs. Or if the paragraph is a member of a
list: (1) List and (2) list indentation level.
With the 'Find Tool' you can look for
certain fragments of text. You can activate the 'Find Tool' by selecting
'Find' in the 'Tools' menu, or by typing Control-F. The Find tool has two
frames. In the first frame, you can enter the pattern to look for. In the
second frame you can enter a replacement. The 'Find' button looks for the
next occurrence of your pattern in the document. The 'Previous' button
searches backward in the document. When your pattern is found, you can
enter a replacement and push the 'Replace' button to replace the pattern
with the replacement. The 'Replace, Next' button is a shortcut for clicking
'Replace' and then 'Next'.
Depending on the value of the check box
below the pattern, that Ted
tries to find in your text is not simply a piece of text, but a regular
expression. Regular expressions are a means to look for several different
pieces of text at once. Normally, you will not be interested in using
regular expressions at all. The advanced user can select the check box to
look for a match of a regular expression. Once a find command is given, use
the 'Find Next' option in the 'Edit' menu (F3) to look for the next
occurrence.
For simple text retrieval scripts, the
search can be given on the Ted
command line: If the pattern occurs in the document, the first occurrence
of the pattern is selected after Ted has opened the document. Subsequent occurrences can be found with
the F3 key. An example of a very simple text retrieval shell script that
opens all rtf files that contain a certain pattern is:
#!/bin/sh
pattern="$1"
shift
files=`grep -l -e "$pattern" $*` &&
exec Ted --Find "$pattern" $files
echo No files containing "'$pattern'"
The two special
Ted invocations are:
|
Ted --Find pattern files
|
Look for pattern in the files. The pattern is a string.
|
|
Ted --RegFind pattern files
|
Look for pattern in the files. The pattern is a regular
expression.
|
The regular expression matching
algorithm in Ted was borrowed
from the regex library by Henry Spencer. For details refer to the
acknowledgments. I quote from the original documentation by Henry Spencer:
(Please realize that the casual user does not need to use or understand
regular expressions.)
REGULAR
EXPRESSION SYNTAX
A
regular expression is zero or more branches, separated by `|'. It
matches anything that matches one of the branches.
A branch
is zero or more pieces, concatenated. It matches a match for the first,
followed by a match for the second, etc.
A piece is an atom
possibly followed by `*', `+', or `?'. An atom followed by `*' matches a
sequence of 0 or more matches of the atom. An atom followed by `+'
matches a sequence of 1 or more matches of the atom. An atom followed
by `?' matches a match of the atom, or the null string.
An atom is a regular
expression in parentheses (matching a match for the regular expression),
a range (see below), `.' (matching any single character), `^' (matching
the null string at the beginning of the input string), `$' (matching
the null string at the end of the input string), a `\' followed by a
single character (matching that character), or a single character with no
other significance (matching that character).
A range is a sequence of
characters enclosed in `[]'. It normally matches any single character
from the sequence. If the sequence begins with `^', it matches any
single character not from the rest of the sequence. If two characters in
the sequence are separated by `-', this is shorthand for the full list
of ASCII characters between them (e.g. `[0-9]' matches any decimal
digit). To include a literal `]' in the sequence, make it the first
character (following a possible `^'). To include a literal `-', make
it the first or last character.
AMBIGUITY
If a regular expression
could match two different parts of the input string, it will match
the one which begins earliest. If both begin in the same place but
match different lengths, or match the same length in different ways, life
gets messier, as follows.
In general, the
possibilities in a list of branches are considered in left-to-right
order, the possibilities for `*', `+', and `?' are considered
longest-first, nested constructs are considered from the outermost in,
and concatenated constructs are considered leftmost-first. The match
that will be chosen is the one that uses the earliest possibility in the
first choice that has to be made. If there is more than one choice, the
next will be made in the same manner (earliest possibility) subject to
the decision on the first choice. And so forth.
For example, `(ab|a)b*c'
could match `abc' in one of two ways. The first choice is between `ab'
and `a'; since `ab' is earlier, and does lead to a successful overall
match, it is chosen. Since the `b' is already spoken for, the `b*' must
match its last possibility--the empty string--since it must respect the
earlier choice.
In the particular case
where no `|'s are present and there is only one `*', `+', or `?', the net
effect is that the longest possible match will be chosen. So `ab*',
presented with `xabbbby', will match `abbbb'. Note that if `ab*' is
tried against `xabyabbbz', it will match `ab' just after `x', due
to the begins-earliest rule. (In effect, the decision on where to start
the match is the first choice to be made, hence subsequent choices
must respect it even if this leads them to less-preferred
alternatives.)
Use the spelling tool to check the
spelling of your document. With the menu in the dictionary frame, you can
select the language that you want to use for spell checking. All
Language.ind files in /usr/local/ind 6
are listed in the dictionary menu.
The 'Learn' and 'Forget' buttons in the
dictionary frame allow you to customize your dictionary. The word in the
text field below the list of guesses can be included in the dictionary with
the 'Learn' button, or removed from the dictionary with the 'Forget'
button. For a description of the file that is used to store your
modifications to dictionaries see below.
The 'Find Next' button looks for the
next unknown word in the text. If one is found, Ted tries to find similar words in the dictionary and shows them in
the list with guesses. Clicking on a word in the list of guesses stores the
word in the text field under the list. A double click uses the selected
word to correct the word in the text.
The 'Ignore' button ignores the unknown
word. The word is not reported as misspelled for this language any more
until Ted is stopped. Ted looks for the next unknown word. The
'Find Next' button looks for the next unknown word. The 'Correct' button
uses the word in the box below the list to correct the word in the text.
The 'Guess' button looks in the dictionary for words similar to the word in
the box below the list.
Below is an image of the spelling tool
System dictionaries are stored in an
optimized read only binary format. For those with some technical curiosity:
It is the memory image of a minimal finite automaton that recognizes all
the words in the dictionary. The data structure is very similar to Donald
Knuth's tries. Personal
deviations from the read only system dictionaries are stored in
<Language>.changes files in a users $HOME/.Dictionaries directory.
Every time the user pushes the 'Learn' or 'Forget' button, a line is added
to the changes file. The first character of the line is an 'F' or an 'L',
the second character is a space, the rest of the line is the word or phrase
that is added or removed. As the file is never reorganized, the order of
the lines in the file is important. E.G. If a word is first added and then
removed again.
To change a text region into a
hyperlink, select the text, choose the 'Hyperlink..' option from the
'Insert' menu and enter the destination of the link in the 'Hyperlink..'
dialog. The 'Hyperlink..' dialog can also be used to change, remove or
follow links. Below is an image of the 'Hyperlink' dialog.
Enter the name of the document or web page you want to link
to in the 'Document' box. If you leave the 'Document' box empty, the link
is to a bookmark in the document itself.
Enter the name of a bookmark in the
'Bookmark' box. If you leave the 'Bookmark' box empty, the link is to the
document as a whole. If no document is given in the 'Document' box, the
link is to a bookmark in the document itself. You can select a bookmark
from the list of bookmarks below the 'Bookmark' box.
Normally, the text you have selected is
converted to a hyperlink. For new links to the document itself, three
special kinds of link are available:
·
Link as
Page Number: The link is shown as the page number of the beginning of the
bookmark. This is particularly useful in phrases like "Refer to the
explanation on page 36". Ted will automatically update the page number when the bookmark moves
or the layout of the document changes. Note that page number references in
the text are not automatically updated while you type. That would make Ted too slow. They are however updated
before you print and the next time that you open the document. MS-Word does
not recalculate page numbers when you open a document. To make MS-Word
recalculate the page numbers, wait until the document is completely
formatted, then use control-A
to select the text of the whole document and F9 to recalculate all fields.
·
Link as
Bookmark Text: The link is shown as the text of the bookmark. This is
particularly useful in phrases like "This is explained in the Average Yearly Temperature section."
The advantage is that when the text of the bookmark changes, the text of
the link is changed as well.
·
Link as
Bookmark Text and Page Number: The link is shown as the text of the
bookmark, followed by a tab and the page number of the beginning of the
bookmark. This is particularly useful when you want to build a table of
contents. Note that page number references in the text are not
automatically updated while you type. That would make
Ted too slow. They are however updated before you
print and the next time that you open the document.
The 'Set Link' button changes the
destination of an existing hyperlink or makes a new link of the desired
kind.
The 'Follow Link' button follows the
link. If it is to a location inside the document itself, Ted will select this location. If it is to a
document on the same computer, Ted tries to open it. If it is an internet link, Ted invokes Netscape to follow the link.
The 'Remove Link' button changes a
hyperlink back to plain text.
The 'Cancel' button removes the
hyperlink dialog from screen without doing anything.
Bookmarks are a way to give locations
in your document a name. Once a location has a name, you can jump to it
with a hyperlink or you can refer to it in the document indirectly. For
example you can refer to the text inside a bookmark or to the number of the
printed page that the bookmark appears on. To insert and inspect bookmarks,
choose the 'Bookmark..' option from the 'Insert' menu. The 'Bookmark'
dialog appears.
To add a bookmark, enter the name of
the bookmark in the 'Bookmark..' dialog. Ted suggests a name for the bookmark based on the contents of the
selected area in the document. To make a new bookmark or to change the name
of an existing bookmark push the 'Set Bookmark' button. Push the 'Remove
Bookmark' button to remove an existing bookmark. To jump to a bookmark type
its name in the 'Bookmark' box and push the 'Go To Bookmark' button. In
stead of typing the name of a bookmark, you can select it in the list of
bookmarks below the text box.
Use the 'Copy Bookmark' frame to copy a
reference to a bookmark to the clipboard. Push the 'Copy' button to copy
the bookmark to the clipboard. Pasting the clipboard to a different
location in the document or to a different document will insert a hyperlink
that refers to the bookmark. A bookmark can be copied in four different
formats that determine what kind of hyperlink will be inserted when the
copied bookmark is pasted.
·
As a
hyperlink with constant text.
·
As a
reference to the bookmark that is shown as its page number.
·
As a
reference to the bookmark that copies the current text of the bookmark
every time it is printed.
·
As a copied
reference to the bookmark that copies the text and one that shows the page
number, separated by a tab. This can be used to make a simple table of
contents.
The last three kinds of hyperlinks only
make sense when they are contained in the same document as the bookmark
that they refer to.
Hyperlinks and bookmarks are
particularly interesting when the text is saved to HTML or Acrobat PDF
format and as a simple way to make a table of contents.
With the introduction of text colors
between Ted 2.11 and Ted 2.12, hyperlinks are no longer
automatically drawn in blue because they are a hyperlink. New hyperlinks
are blue, but hyperlinks from older versions are no longer blue, nor are
they underlined. To change the hyperlinks as saved by older versions of Ted to blue and underlined once run the
command "TED_HYPERLINKS_BLUE=1 Ted old.rtf" and save the
document. As the effect of the environment variable is a little drastic, do
not set it by default but only use it for conversions.
A paragraph is a piece of text that is
folded between the margins of the page. Usually a paragraph just begins on
a new line. With the Start on New Page switch on the format tool, paragraphs can be made to start on a
new page. Usually the division of a document in pieces that start on a new
page is achieved by dividing the document in sections, not by explicitly
making paragraphs begin on a new page as a property of the paragraph.
Every paragraph in a text has a ruler.
The ruler determines how the text of the paragraph is folded between the
margins of the page, or those of the table cell that contains the
paragraph. The ruler is shown at the top of the text window. It defines
some properties of a paragraph. For paragraphs in a list, the ruler of the
list level applies. It can only be manipulated on the
Bullets and Numbering page of the format tool.
The left
indentation of the first line of the paragraph: The place to the right of
the left margin of the page where the first line of the paragraph begins.
The indentation of the first line is shown by the button above the white
band of the ruler.
The left
indentation of the rest of the paragraph: the place to the right of the
left margin of the page where the other lines of the paragraph begin. The
left indentation of the paragraph is shown by a button below the white band
of the ruler.
The right
indentation of the paragraph: The width of the band to the left of the
right margin of the page, that shall not be used by the paragraph. The
right indentation of the paragraph is shown by a button below the white
band of the ruler.
A series of
tab stops. Tab stops are shown as little brackets in the white band of the
ruler. If there is no tab stop to the right of a certain position, Ted uses left aligned tab stops at multiples
of a half inch from the left margin. In many cases tables are a better way
to format text in columns than tab stops.
The position of the different
indentations and the tabs can be changed by dragging their controls on the
ruler. Tab stops can be set by clicking on the white band of the ruler. Tab
stops can be removed by dragging them from the white band. The little
button in the upper left corner of the ruler determines what kind of tab
stops are inserted when you click in the white band of the ruler:
Inserts a
left tab stop: The text after the tab stop is left aligned to the tab stop.
Inserts a
right tab stop: The text after the tab stop is right aligned to the tab
stop. Effectively the text appears before the tab stop.
Inserts a
centered tab stop: The text after the tab stop is centered around the tab
stop. After formatting the tab stop is exactly in the middle of the text.
Inserts a
decimal tab stop. The text after the tab stop is centered around the tab
stop. After formatting the tab stop is at the position of the decimal point
in the text (If there is one).
In many cases tables are more
convenient to align text in columns. Use paragraph alignment inside the
cells of the table to align the text in columns in stead of tab stops.
Rulers can be remembered with the 'Copy
Ruler' menu option. It remembers the ruler of the paragraph that contains
the insertion point in the text. Use the menu option to remember the ruler
of the paragraph where the selection begins. Remembered rulers can be
applied to other paragraphs. The 'Paste Ruler' Menu option sets the
remembered ruler for the paragraph that contains the insertion point. If a
region of text is selected, the remembered ruler is set for all paragraphs
that contain part of the selection. The following properties of a paragraph
are considered to define the ruler: left indent, first line indent, right
indent, tabs, justification, list membership, list indentation level. If
you copy the ruler of a paragraph in a list, the paste operation will
include all selected paragraphs in the list.
Use the 'Make One Paragraph' option to
merge the paragraphs in the selection into one paragraph. This is
particularly useful in documents that originate from a file that has been
made with a plain text editor like vi or emacs.
The Decrease
Indent and Increase Indent menu options in the format menu change the indentation level of
the paragraph. For paragraphs in a list, the options change the list
indentation level. For other paragraphs, the options change the Left Indent property.
Ted supports some
additional paragraph formatting properties. The controls on the 'Paragraph
Formatting' page of the Format tool allow you to change the properties of a
paragraph. Note that although all sizes are displayed in points, that you
can enter sizes in different units. When you push the 'Enter' key, the size
is translated to points.
The following illustration shows a paragraph and its ruler.
Use the Paragraph
Formatting page on the Format
Tool to change formatting properties of the current
paragraph manually. Use the Tabs
page on the Format Tool to
manage tab settings in more detail than with the ruler.
Paragraph properties on the Paragraph
Formatting page of the Format
Tool:
|
Property
|
Explanation
|
|
First Line Indent
|
Is the distance of the first letter on
the first line of the paragraph from the page (or table cell) left margin.
|
|
Left Indent
|
Is the distance of the first letter of
the second and subsequent lines in the paragraph from the page (or table
cell) left margin.
|
|
Right Indent
|
Is the distance of the last letter of
the lines in the paragraph from the page (or table cell) right margin.
|
|
Alignment
|
Determines how the contents of the
lines of the paragraph are aligned relative to the page or to the table
cell that contains the paragraph.
|
|
Spacing
|
Normally, the distance between the
lines in a paragraph is determined by the biggest font or in-line image in
the paragraph. The 'Spacing' menu allows you to influence the distance
between the lines. The possibility to apply the line spacing to the last
line of the paragraph is not yet supported in the Ted 2.17 format tool.
|
|
Space Above
|
Allows you to give the height of the
white strip of paper above the first line of the paragraph.
|
|
Space Below
|
Allows you to give the height of the
white strip of paper below the last line of the paragraph.
|
|
Start on New Page
|
Check this box to make Ted skip to a new page when it formats this
paragraph. This property does not apply to paragraphs inside tables.
|
|
Keep on One Page
|
Do not divide this paragraph between
pages, except when it contains explicit page breaks. If the paragraph is
longer than a page, this property is ignored.
|
|
Widow/Orphan control
|
If this paragraph divided over pages,
it is done in such a way that the first and the second line of the
paragraph are on the same page. The same applies for the last two lines of
the paragraph.
|
|
Keep with Next
|
The text is divided over pages in such
a way that this paragraph appears on the same page as the next one.
Typically because it is the heading of the next paragraph.
|
Document properties and tab settings on the Tabs page of the
Format Tool.
|
Property
|
Explanation
|
|
Default Tab Stops
|
If the ruler contains no tab stops, or
right of the rightmost tab stop, Ted uses default left aligned tab stops at a regular interval. With
the Default Tab Stops frame you
can set this interval for the whole document.
|
|
Tab Stop
|
With the controls in the Tab Stop frame and the list of tab stops
above it, you can manage the tabs on the ruler of the current paragraph in
detail. Select a tab stop in the list to change its properties, or enter a
new position to add a new tab stop.
|
|
Position
|
The position from the left margin of
the document for the tab stop. The default unit for the position is the
typographic point. It is however possible to enter values like '13mm' or
'1/2"'. Ted will convert
them to points for you.
|
|
Alignment
|
The alignment of the text to the tab
stop. The following values are supported:
Left
The text
following the tab stop, upto the end of the paragraph, or upto the next tab
stop will be placed at the right of the tab stop position. So the left of
texts placed after the tab stop on different text lines aligns.
Right
The text
following the tab stop, upto the end of the paragraph, or upto the next tab
stop will be placed at the left of the tab stop position. So the right of
texts placed after the tab stop on different text lines aligns.
Center
The center
of the text following the tab stop, upto the end of the paragraph, or upto
the next tab stop will be placed at the the tab stop position. So the
centers of texts placed after the tab stop on different text lines align.
Decimal
The decimal
point of the text following the tab stop, upto the end of the paragraph, or
upto the next tab stop will be placed at the the tab stop position. So the
decimal points of texts placed after the tab stop on different text lines
align.
|
|
Leader
|
To place text at a tab position, Ted inserts white space between the text
before the tab stop and the text after it. In some cases it is desirable to
insert something different. E.G. in a table of contents. Ted supports the following possibilities:
None
Insert
white space.
Dots
Draw dots
between the text before the tab stop and that after it.
Line
Draw a
solid line between the text before the tab stop and that after it.
Dashes
Draw dashes
between the text before the tab stop and that after it.
|
Use the Paragraph borders and shading
page of the format tool to set paragraph borders and to change the
background for the text of the paragraph. Ted 2.17 only allows you to give
paragraphs a top border and a bottom borders. It only supports solid
backgrounds and solid borders. Below is an image of the Paragraph Borders
and Shading tool.
|
Property
|
Explanation
|
|
Top Border
|
When on, the paragraph has a top
border. You can enter the width of the border in the text box right of the
toggle button. The maximum is 3.75 points. (About 1.25 mm) Though the RTF
file format supports many different styles for borders, Ted only supports solid borders.
|
|
Bottom Border
|
When on, the paragraph has a bottom
border. You can enter the width of the border in the text box right of the
toggle button. The maximum is 3.75 points. (About 1.25 mm) Though the RTF
file format supports many different styles for borders, Ted only supports solid borders.
|
|
Color
|
Makes it possible to select a color for
the borders. Refer to the explanation of the color choosers for details.
|
|
Background
|
You can give the paragraph a solid
background color. Though the rtf file format supports many shading styles, Ted 2.17 only supports solid backgrounds.
|
To insert a table into a document,
select 'Insert Table' in the 'Table' menu. By default, tables are just a
formatting means. The borders of the table cells are not visible. Ted visualizes the structure of tables with
light gray borders for the cells. If you find this annoying, use the 'Draw
Table Grid' menu option in the 'Table' to hide them. To add borders to the
rows and columns of a table, use the Row, Column and Cell pages of the format tool.
If the selection is inside a table, the
document window gets a special ruler. It allows you to move the borders of
a table by dragging them to the left and to the right. The illustration
below shows the process. Selections inside tables remain inside the
contents of one cell or select a rectangular range of complete cells. So
when one end of the selection leaves the current cell, the whole cell is
selected.
The table related pages of the format tool permit you to do
more complicated things to the formatting of tables, such as giving the
cells in the table borders and changing the internal margins of the cells.
It also allows you to delete rows or columns, to insert rows or columns
before the selection, as opposed to the menu options, that only allow you
to add them after the selection. Below we first describe the Table page and the Row page, then the Column
page and Cell page of the
format tool. Note that although all sizes are displayed in points, you can
enter sizes in different units. When you push the 'Enter' key, the size is
translated to points.
|
Property
|
Explanation
|
|
Left Margin
|
Is the distance of the left margin of
the table from the left margin of the page. Negative values mean that the
left border of the table is left of the left margin of the page. If the
value is the negative of that of Cell Margin, the left margins of the text inside and outside the table align.
This property is separately stored for every row in the table. Usually it
is not a good idea to change the value for individual rows.
|
|
Cell Margin
|
Is the distance of the text to the left
or right margin of the cells in the table. This property is separately
stored for every row in the table. Usually it is not a good idea to change
the value for individual rows.
|
|
Top Border
|
When on, the row gets a top border. You
can enter the width of the border in the text box right of the toggle
button. The maximum is 3.75 points. (About 1.25 mm.)
Ted 2.17 only supports solid borders.
|
|
Bottom Border
|
When on, the row gets a bottom border.
You can enter the width of the border in the text box right of the toggle
button. The maximum is 3.75 points. (About 1.25 mm)
Ted 2.17 only supports solid borders.
|
|
Color
|
Makes it possible to select a color for
the borders. Refer to the explanation of the color choosers for details.
|
|
Keep on One Page
|
When the Keep on
One Page toggle is on, the row is not divided over
pages. If it does not fit as a whole on a page, it is moved to the next
page in order not to be divided over more than one page.
|
|
Is Table Header
|
Tables in the body if a document can
span more than one page. Make the first row of the table a table header to
tell Ted to repeat the first
row at the top of every page where the table is continued.
|
|
Height Free
|
The height of the row is that of its
highest cell.
|
|
Height at Least
|
The height of the row is at least the
number in the text widget. If a cell in the row is higher, the height of
the row is adapted to the cell.
|
|
Height Exactly
|
The height of the row is the number in
the text widget, even if the contents of the cells do not fit.
|
|
Property
|
Explanation
|
|
(Column) Width
|
The width of the selected column. The
table tool tries to prevent you from changing a column width to a value
that makes the table wider than the page.
|
|
Rows Occupied
|
The number of rows that is spanned by
this cell. A number bigger than 1 tells Ted to claim space in subsequent rows of the table for the contents
of this cell. This property sets the rtf equivalent of the HTML rowspan
property.
|
|
Cells Occupied
|
The number of columns that is spanned
by this cell. A number bigger than 1 tells Ted to claim space in subsequent columns of the table for the
contents of this cell. This property sets the rtf equivalent of the HTML
colspan property.
|
|
Left Border
|
When on, the column/cell gets a left
border. You can enter the width of the border in the text box right of the
toggle button. The maximum is 3.75 points. (About 1.25 mm)
|
|
Right Border
|
When on, the column/cell gets a right
border. You can enter the width of the border in the text box right of the
toggle button. The maximum is 3.75 points. (About 1.25 mm)
|
|
Top Border
|
When on, the cell gets a top border.
You can enter the width of the border in the text box right of the toggle
button. The maximum is 3.75 points. (About 1.25 mm.)
Ted 2.17 only supports solid borders.
|
|
Bottom Border
|
When on, the cell gets a bottom border.
You can enter the width of the border in the text box right of the toggle
button. The maximum is 3.75 points. (About 1.25 mm)
Ted 2.17 only supports solid borders.
|
|
Color
|
Makes it possible to select a color for
the borders. Refer to the explanation of the color choosers for details.
|
|
Background
|
You can give the cell a solid
background color. Though the rtf file format supports many shading styles, Ted 2.17 only supports solid backgrounds.
|
Though the RTF file format supports
many more kinds of borders, Ted
only uses and manipulates the borders of the individual cells. In the RTF
format borders can have many different styles. Ted only supports solid borders. The controls on the Row and Column pages of the Format Tool change the border for all cells in the row or column.
Longer documents can be divided in
sections. Sections can be compared to the chapters of a book. By default Ted starts sections on a new page. Different
sections can have different ways to number the pages and different page
headers and footers. Different sections can even use a different page
layout. Use the 'Headers and Footers' page of the format tool to change the
headers and footers of the section. Use the 'Page Layout' page of the
format tool to change the page layout for a section.
Section
properties on the Section page
of the Format Tool:
|
Property
|
Explanation
|
|
Begins
|
Tells Ted where to start this section. By default new sections start on a
new page. Possibilities are:
·
Below
Previous: The transition from the previous section to this one does not
cause Ted to start a new page.
·
In Next
Column: If the section has multiple newspaper style columns, the formatter
starts a new column for this section. As Ted 2.17 does not implement multi column sections, it begins the
section on the next page.
·
On New
Page: Ted starts the section on
a new page.
·
On Even
Page: Ted starts the section on
an even numbered page. If the next page has an odd number, a blank page is
inserted.
·
On Odd
Page: Ted starts the section on
an odd numbered page. If the next page has an even number, a blank page is
inserted.
|
|
Page Number Style
|
The kind of page numbers that are used
in the headers and/or footers on pages belonging to this section. Numbers
with the same style are used in references to pages in this section.
|
|
Start with Page
|
Normally the pages of a document number
from one at the beginning of the document. With the 'Start with Page'
toggle you can give the section its own page numbers. With the text box on
the right you can even give the number that is used for the first page of
the section.
|
|
Columns
|
The number of newspaper style columns
that is used to format this section. Newspaper style columns are not
implemented in Ted 2.17.
|
|
Column Spacing
|
The spacing between the newspaper style
columns that are used to format this section. Newspaper style columns are
not implemented in Ted 2.17.
|
|
Column Width
|
The width of the newspaper style
columns that are used to format this section. Newspaper style columns are
not implemented in Ted 2.17.
|
To insert a footnote or endnote use the Insert Footnote option in the Insert menu. Normally footnotes are placed
at the bottom of the page, and each note has a different number. To get
different kinds of notes, or to change the way notes are handled in the
document use the Notes page of
the Format Tool.
The Notes tool has three frames. The top frame manages the properties of
the current footnote or endnote.
|
Property
|
Explanation
|
|
Footnote
|
Make the current note a footnote.
|
|
Endnote
|
Make the current note an endnote.
|
|
Fixed Text
|
Check the box and enter a fixed text to
give the note a text that is independent of its position on the document.
Uncheck to give the note an automatic number. You can use this option to
reinsert a note number that you have deleted by accident.
|
|
Find Note
|
From inside the note, jump to the
reference in the text.
|
|
Edit Note
|
From the reference to the note, jump to
the text of the note.
|
|
Revert
|
Display the properties of the note
again.
|
|
Apply to Note
|
Change the properties of the note. E.G.
convert a footnote to an endnote or the other way round.
|
The Footnotes and Endnotes frames
manage the properties of all footnotes or endnotes in the document.
|
Property
|
Explanation
|
|
Position
|
The position of the notes in the
document.
Page Bottom Place footnotes at the bottom of the page.
Below Text Place footnotes immediately below the text on the page
that refers to them.
End of Section Place endnotes at the end of the section that
refers to them.
End of Document Place endnotes at the end of the document.
|
|
N |