yudit - Unicode Editor for The X Window System
yudit [ -e encoding ] [[ file-name [
file-name... ]]
yudit is a Unicode text editor.
When a user runs yudit for the first time $HOME/.yudit,
$HOME/.yudit/data, $HOME/.yudit/fonts, and
$HOME/.yudit/syntax are created.
The configuration file can be edited inside yudit. For the
detailed description of usage and configuration take a look at the on-line
manual.
If you are planning to save files with yudit please note that the
format preferred encoding format for Unicode files is utf-8.
Yudit can convert between different encoding methods, but if you
do not need a GUI consider uniconv.
- -e encoding
- Encoding determines how yudit interacts with character streams: file
input, file output, cut and paste. XInput encoding is set up to use an
independent, fixed encoder.
If you received yudit through the yudit distribution, the
following encoding methods are inclusively supported:
utf-8, utf-7, utf-16, utf-16-le, utf-16-be, euc-jp,
iso-2022-jp, shift-jis, big-5, gb-2312 and java.
For a detailed description of these refer to uniconv
man page.
Yudit can also use the keyboard input files as a
transliterating text converters.
- file-name
- is the file yudit should read into its editor buffer at start-up. When
multiple files are specified, they become available in the history of the
command area. The history can be viewed there by pressing the up and down
arrow keys.
Yudit has an editor area and a command area.
Some of the commands need the documentation files to be available
uncompressed. They may come in a separate yudit-doc package.
Some of the commands require confirmation to execute. One example
is when we want to replace an unsaved editor buffer with a new file. If the
editor buffer was not saved, the command will abort unless -yes option is
given.
- help
- Load a help file, which is a FAQ.TXT document in your language. For
language settings refer to yudit.default.language topic of a howto
configure document.
- test
- Load a test page.
- configure |
config
- The configuration file $HOME/.yudit/yudit.properties will be loaded into
the editor buffer.
After editing and saving the configuration file yudit should
be restarted for the changes to take effect.
- howto
configure
- Load the HOWTO-configure.txt document if it exists. That document contains
information about editing the configuration file.
Various other topics are also available. These howto documents
can be viewed on yudit website too.
- find
string
- Find a string in the document.
If the string contains spaces, double or single quotes can be
used around it.
- replace string
replacement
- Find a Unicode string and replace it with another string interactively.
If the string or replacement contains spaces, double or single
quotes can be used around them.
- go | goto line
[column]
- Move the caret to the line and (optionally) to the column.
- sedy
- Display the location of the encryption module add-on. Refer to
yudit.syntaxpath section of the howto configure document for
details.
- print
[options]
- Print the document, create a postscript file, or send the postscript file
to a program. For a full list of options, type print -h on
the command area.
For instance print -e evince will send
the postscript file to the program evince.
print -o out.ps will create a postscript
file called out.ps.
When printing from inside the editor, the current font is
used. Bitmap fonts are also converted into postscript, but yudit will
complain in the status area about bad printing quality in such a
case.
- syntax
- Yudit provides a user interface to switch dictionaries and add a different
highlighting type. This can also be done in the command area. Type
syntax -h for help.
If the command is issued without an argument, the location of
the spell-checker add-on is displayed.
- save [-yes] -e
encoding filename
- Save the current buffer. The preferred encoding is utf-8. If a
keymap name is used as an encoding, a transliterated text is written to
the file.
Use the -yes option if you are sure you want to
overwrite an existing file.
For a list of available encoding methods use the the command
line tool: uniconv -h
- open | load [-yes]
-e encoding filename
- Load a file to the editor buffer. The preferred encoding is utf-8.
If a keymap name is used as an encoding, the input file will be parsed by
that keymap.
Use the -yes option if you do not mind losing unsaved
changes of the current editor buffer.
For a list of available encoding methods use the the command
line tool: uniconv -h
A variety of key shortcuts are available to make editing more
convenient. Arrow-keys, page-down, page-up, home and end work as expected.
There is only insert mode in yudit.
Holding down the shift key while moving the caret selects the
text.
In the command area the up and down keys serve as command history
browser keys.
Some of the icons have tool-tips which can be used to check the
shortcut.
The line-break button does not have a shortcut. It can be used to
change the line-break character to Unix/DOS/MAC(obsolete)/PS(a rarely used
Paragraph Separator). Pressing this button will modify the document in the
buffer.
- Function
Keys
- F1..F12 are used to switch between input methods. The assignment of the
keys are defined in the configuration property yudit.editor.inputs
which can be changed directly from inside yudit by the input assignment
dialog.
Shift F1..F12 are used to switch between fonts. The assignment
of the keys are defined in the configuration property
yudit.editor.fonts which can be changed via editing
yudit.properties. See howto configure command.
- esc
- The escape key can be used to switch between editing and command
mode.
- ctrl|meta
O
- This shortcut copies an open-file command to the command area.
- ctrl|meta
S
- This shortcut copies a save command to the command area.
- ctrl|meta
P
- This shortcut copies a print command to the command area.
- ctrl|meta
W
- This shortcut copies a print-preview command to the command area.
The default preview commend can be set via the configuration
property yudit.default.preview.command.
- ctrl|meta
Q
- This shortcut copies a find command to the command area.
- ctrl|meta
U
- Undo the last change to the document. There are cases where the change is
broken down into smaller changes, so you may need to press this more than
once.
- ctrl|meta
R
- Redo the changes that were undone by the Undo shortcut.
- ctrl|meta
T
- Change the embedding of the document. Document embedding can be
right-left, neutral, and left-right. This is only a visual change, the
document itself will not be modified.
- ctrl|meta
D
- Override the directionality of the input and the selected text.
The following markers are used: RLO (Right-Left
Override), LRO (Left-Right Override), PDF
(Pop Directional Formatting).
Text under RL cursor for instance will be enclosed between
RLO-PDF markers.
Note that yudit uses Unicode BiDi algorithm. Characters have
inherent directionality properties, so normally override is not
needed.
It is useful if the script can be written both ways.
In case of Old Hungarian and Old Italic yudit provides
software glyph mirroring depending on inherent directionality of the
character, the font directionality and the directionality override.
See yudit.font.<fontname> in howto
configure document to set up such a font.
- ctrl|meta
E
- Override the embedding of the input and the selected text.
The following markers are used: RLE(Right-Left
Embedding), LRE(Left-Right Embedding),
PDF(Pop Directional Formatting).
Text under RL-embedded cursor will be enclosed between RLE-PDF
markers.
Embedding can be used to change the embedding level of a
region of a text.
- ctrl|meta
Y
- Give up embedding and directionality. The RLO-LRO/RLE-LRE and PDF markers
will be removed from the selected text.
- ctrl|meta
A
- Make the font size smaller. Available font sizes are defined by the
configuration property yudit.editor.fontsizes which can be edited
by hand.
- ctrl|meta
Z
- Make the font size bigger. Available font sizes are defined by the
configuration property yudit.editor.fontsizes which can be edited
by hand.
- ctrl|meta
N
- This command copies the current highlighting mode into the command
area.
- ctrl|meta
C
- Copy selected text to CLIPBOARD. The X Window System has 2 clipboards.
This clipboard is the one that can be accessed only via keyboard
shortcuts.
- ctrl|meta
X
- Copy selected text to CLIPBOARD and delete it from the editor. In X Window
System there are 2 clipboards. This clipboard is the one that can be
accessed only via keyboard shortcuts.
- ctrl|meta
V
- Paste the selected text from CLIPBOARD into the editor. In X Window System
there are 2 clipboards. This clipboard is the one that can be accessed
only via keyboard shortcuts.
If there is selected text in the editor, it will be replaced
by the contents of the CLIPBOARD.
The behavior of the other (XA_PRIMARY) X11 clipboard is
different. The selected text automatically goes to XA_PRIMARY clipboard
and can be pasted by the middle mouse button.
When editing encrypted sedy files XA_PRIMARY clipboard is
read-only.
- ctrl|meta
H
- Move the caret to the left.
- ctrl|meta
L
- Move the caret to the right.
- ctrl|meta
J
- Move the caret down.
- ctrl|meta
K
- Move the caret up.
- ctrl|meta
B
- Move to the previous page.
- ctrl|meta
F
- Move to the next page.
- ctrl|meta
M
- Erase the whole line.
The environment variable HOME should point to the user's
home directory, where the yudit configuration file
(~/.yudit/yudit.properties) is kept.
Removing ~/.yudit/yudit.properties forces yudit to recreare the
configuration file with default properties.
mytool, uniconv, uniprint
This program was written by gaspar@yudit.org (Gaspar Sinai), in
Tokyo, and released on 10 November, 1997 as yutex. It was renamed to yudit
on 8 December 1997.
Version 2.0 was released in January 2001. It came with internal
font processing in an effort to make it work in any environment. It was
ported to Windows also.
Many thanks to Andrew Weeks at University of Bath for releasing
his TrueType to postscript (ttf2pfa) program which gave the inspiration of
font conversion, rasterization and printing in the 2.0 series.
When Linux started to support Unicode Yudit project became
inactive.
In 2020 the project was revisited and a Macintosh port was added.
In 2023 yudit.scale property was introduced to upscale the GUI on
high-resolution monitors.