CharacterMap Plugin V1.3
by Slava Pestov
and Mark Wickens
and Max Funk
Introduction
The character map plugin displays a window showing all ASCII and extended
characters. Clicking one will insert it into the buffer.
Various encodings are supported, including full Unicode 6.1.0.
To see many Unicode characters, you may need to activate font substitution
in jEdit and to install large fonts in your system.
Description
In a dockable window a character table is shown. Clicking on a character with
Button 1 on the mouse (typically the left button) will cause the character to be
inserted at the cursor position in the current buffer.
Additional information about the characters is given in the status line.
Pressing and holding button 3 on the mouse (typically the right button)
will display an enlarged version of the character overlayed at the current
pointer position.
The characters in the table are rendered in the font style and size selected
for the text area. The anti-alias and fractional font metrics options are
honoured. Additional fonts can be used via font substitution. Activate this feature
in "jEdit - Global Options - Text Area - Font Substitution".
A list of preferred fonts and / or all fonts installed on the system are searched
for characters. Large multi-script fonts are e.g. Code2000-2002,
Quivira, Arial Unicode MS.
Beside the normal characters, there are the following entries :
- Blue + number: ISO control characters.
- White + replacement symbol: Characters with missing fonts.
- Green: Private Use Area: User defined characters / fonts.
- Grey: Not assigned to characters. For future Unicode versions and technical use.
- Red + replacement symbol: Invalid table entries without Unicode representation.
For the encoding "US-ASCII", the table contains 128 characters.
For all other non-Unicode encodings the table contains 256 characters, that represent
(often) the entire character set.
For Unicode (UTF-8, UTF-16, UTF-32) the table displays the selected unicode block,
shown in the blocks combo box. By default, only the "basic multilingual
plane" is shown, i.e. the first 65536 unicode characters. In the options
(see below) you can activate all Unicode planes.
The encoding of the table is shown in the encoding combo box (if enabled).
You can change it with the dropdown list or directly type it into the text field.
Encodings typed into the text field are stored during the session, to ease later
selection. You can change the content of the encoding combo box permanently in
"jEdit - Global Options - Encodings - Selected Encodings".
The encoding of the current buffer / file is shown in the jEdit status line.
Opening or changing a buffer resets the table to the encoding of the buffer.
Character Map will refuse to insert characters from different encodings into
a non-unicode buffer. If you still want to insert the character, you must change
the encoding in the jEdit buffer options. Be careful: Some applications may require
a specific encoding. Also, if you change to another non-Unicode encoding, some
other characters of the buffer may not be present in the new encoding.
Java works internally in Unicode. Codepoints from non-unicode encodings, which
have no unicode equivalent, are shown in red as invalid characters. They cannot
be inserted into the buffer.
Options
The following options can be specified in the option pane.
- Show encoding combo box: Controls whether the encoding combo box
is displayed. By default the encoding is selected from the encoding specified
for the currently selected buffer.
- Show Unicode blocks combo box: Controls whether the Unicode blocks
combo box is displayed. The blocks combo box is only enabled when editing
a Unicode buffer or when Unicode encoding has been specified in the
encoding combo box.
- Sort Unicode blocks alphabetically: Alphabetic order. If the option
is unchecked, the blocks are in the order of the Unicode database, i.e.
sorted by increasing codepoints, starting with "Basic Latin".
- Include higher Unicode planes: Not only the blocks from plane 1
(Basic Multilingual Plane), but also from higher planes are shown.
This enables Unicode characters with codepoints > 65536 or 0xFFFF.
Be aware: This is a beta feature, since Java encodes these characters with
two elementary chars instead of one, and you may experience compatibility
issues in jEdit.
- Always use Anti-Aliasing: If set, the character glyphs are always
rendered anti-aliased (smoothed). If not set the Anti-Aliasing options
are taken from the Global Options -> Text Area settings.
- Table columns: specify the number of columns to be displayed...
- floating: if the table is floating (un-docked).
- docked l/r: if the table is docked left or right.
- docked t/b: if the table is docked at top or bottom.
- Table colors: specify colors of the table cells for the different
character types (see description above).
- Show status line: controls whether the status line at the bottom
of the window is displayed. The status line contains
- the character code point in decimal and hexadecimal form,
- the bytes forming the character in hexadecimal form
(for UTF-encoded Unicode,
- the name of the character (for Unicode).
- Large character: displays a large representation of
the character under the cursor in the top-right hand corner of the
window.
- Show large character: display the character.
- Large character size: controls the size (in points) of the
large character.
- Show right-click character: displays a representation of the
character under the cursor when the right-mouse button is pressed
overlayed at the current cursor position.
- Show right-click character: display the character.
- Right-click character size: controls the size (in points) of the
right-click character.
Version History
Version 1.1 (2002)
Original version.
Version 1.2 (2004)
New version of the CharacterMap plugin provides the following features
- anti-aliased text, large character display, better docking support and
better configuration via an options pane.
Version 1.3.0 (2011)
Improved layouts for docking. Unicode 6.0.0.
Unicode detection fixed. Statusinfo fixed, UTF16, UTF32 added.
Auto-reload after option change. Font substitution.
Table size (Unicode) fixed. Code cleaning.
Version 1.3.1 (2012)
All Unicode planes. Change encoding / font with jEdit settings.
No insertion of characters which cannot be encoded.
Option panel layout.
Code cleaning, better conformity to plugin standard and Java 7.
Version 1.3.2 (2012)
Alphabetic Unicode blocks. System font substitution.
Encodings list updated from jEdit. Unicode 6.1.0.
Colored table for invalid, unassigned and control chars.
Statusinfo: Name and bytecode for all chars and encodings.
Code cleaning, various small bugfixes.
Version 1.3.3 (2012)
More table colors, color options.
Bugfixes: Layout for second floating window. Names of numbered chars.
Unassigned chars. Super char position.