1 ==========================
3 ==========================
5 Ekit v0.9g (C)2000-2003 Howard Kistler/hexidec codex
6 App/Applet for editing and saving HTML in a Java text component.
10 --------------------------
12 Ekit is a program & applet that uses the Java 2 libraries to create an HTML
13 editor. The Ekit standalone also allows for HTML to be loaded and saved, as
14 well as serialized and saved as an RTF. It is currently an advanced beta,
15 and most features work fine.
17 Updates to this and other hexidec codex projects can be found here:
19 http://www.hexidec.com/
21 Please feel free to share any enhancements or bug reports with me at:
27 --------------------------
29 Ekit was originally distributed under the GPL license. However, it was brought
30 to my attention that the GPL license is not suited for programs that link to
31 non-GPL libraries, such as Ekit does by linking to the Sun Swing library.
32 Hence, I have changed the licensing on Ekit to the LGPL, which is more
33 appropriate. This should not impact any Ekit users adversely, as anyone who
34 was using it before under the GPL can still do so without any conflicts under
35 the LGPL. In addition, this opens up Ekit for use with more projects which
36 might contain some proprietary libraries of their own as well. It is my
37 intention through this change to make Ekit conform better to open source
38 licensing and to make Ekit more available and accessible to developers and
39 users, and I think by switching to the LGPL all of these criteria are thus met.
41 I am aware that releasing a product under the GPL is supposed to be an
42 "irreversible" process. However, as this product was in violation of the
43 stricter terms of the GPL, this reassignment to LGPL is not a change so much
44 as a correction of licensing.
48 --------------------------
50 Ekit requires the following software:
51 - Java 2 (Sun JDK 1.3 or later, or compatible variant)
52 - Swing Library (standard with Java 2)
54 EkitApplet requires the following software:
55 - Browser with Java Plug-in 1.3 or later
57 Sun JDK Standard Edition Homepage : http://java.sun.com/j2se/
58 Sun JDK 1.3 available here : http://java.sun.com/j2se/1.3/
59 Sun JDK 1.4 available here : http://java.sun.com/j2se/1.4/
63 --------------------------
65 These are the base class source files:
67 EkitCore.java - Source for the core Ekit functionality
68 Ekit.java - Source for Ekit application shell
69 EkitApplet.java - Source for EkitApplet shell
71 EkitCore is replaced by one of these two core files during compilation:
73 EkitCore_Basic.java - The standard Ekit core.
74 EkitCore_Spell.java - The core plus supports for the Jazzy spellchecker.
76 The "action" subdirectory contains these action class sources:
78 CustomAction.java - Special situation actions (like anchor insertion)
79 FormatAction.java - General text format actions (like subscript)
80 ListAutomationAction.java - Bulleted/Numbered List creation actions
81 StylesAction.java - CSS Style actions
83 The "component" subdirectory contains these component class sources:
85 ExtendedHTMLDocument.java - HTMLDocument with custom functionality
86 ExtendedHTMLEditorKit.java - HTMLEditorKit with custom functionality
87 FileDialog.java - Dialog for loading files from server
88 FontSelectorDialog.java - Dialog for applying system fonts to text
89 HTMLUtilities.java - Special utility functions
90 ImageDialog - Dialog for loading images from server
91 ImageFileChooser.java - Image selector dialog
92 ImageFileChooserPreview.java - Image preview rendering panel
93 JButtonNoFocus.java - JButton that does not obtain focus
94 JComboBoxNoFocus.java - JComboBox that does not obtain focus
95 JToggleButtonNoFocus.java - JToggleButton that does not obtain focus
96 MutableFilter.java - Filetype dialog filter
97 PropertiesDialog.java - Generic parameter request dialog
98 RelativeImageView.java - HTML Image rendering component
99 SearchDialog.java - Find/Replace dialog
100 SimpleInfoDialog.java - Basic message dialog
101 TableInputDialog.java - Table specification input dialog
102 UserInputAnchorDialog.java - Custom anchor input dialog
103 UserInputDialog.java - Custom data input dialog
105 There is also a copy of the TaggingDriverServlet.java source within the
106 "materials" folder. You may use this on your server for server-based file
109 The "icons" subdirectory contains these custom icons for the ToolBar:
111 AnchorHK.gif - "Make Anchor" ToolBar Icon
112 BoldHK.gif - "Bold Text" ToolBar Icon
113 ClearFormatHK.gif - "Clear Format Action" ToolBar Icon
114 CopyHK.gif - "Copy Action" ToolBar Icon
115 CutHK.gif - "Cut Action" ToolBar Icon
116 ItalicHK.gif - "Italicise Text" ToolBar Icon
117 NewHK.gif - "New Document" ToolBar Icon
118 OListHK.gif - "Ordered List" ToolBar Icon
119 OpenHK.gif - "Open Document" ToolBar Icon
120 PasteHK.gif - "Paste Action" ToolBar Icon
121 SaveHK.gif - "Save Document" ToolBar Icon
122 SourceHK.gif - "View Source" ToolBar Icon
123 StrikeHK.gif - "Strike Text" ToolBar Icon
124 SubHK.gif - "Subscript Text" ToolBar Icon
125 SuperHK.gif - "Superscript Text" ToolBar Icon
126 UListHK.gif - "Unordered List" ToolBar Icon
127 UnderlineHK.gif - "Underline Text" ToolBar Icon
129 The "HK" suffix merely designates that they are my designs. You can replace
130 these images with your own icons if you wish.
132 The "com/hexidec/util" directory contains these standard hexidec codex tools:
134 Base64Codec.java - Base64 encoding/decoding class
135 Translatrix.java - Translation resource handler class
137 These are the ancillary files that are included with the standard Ekit
140 ekit.manifest - Jar manifest file for ekit.jar
141 MakeEkit.csh - Script to (re)build the ekit.jar file (Unix/MacOSX)
142 MakeEkitApplet.csh - Script to (re)build the ekitapplet.jar file (Unix/MacOSX)
143 MakeEkit.bat - Batch file to (re)build the ekit.jar file (Windows)
144 MakeEkitApplet.bat - Batch file to (re)build the ekitapplet.jar file (Windows)
145 MakeEkit.ant - XML file to (re)build the ekit.jar file using Ant
146 MakeEkitApplet.ant - XML file to (re)build the ekitapplet.jar file using Ant
147 ekit.css - Default CSS Stylesheet for Ekit documents
148 EkitAppletDemo.html - Example web page for displaying Ekit applet
149 RunEkit.csh - Script for launching Ekit (Unix/MacOSX)
150 RunEkit.bat - Batch file for launching Ekit (Windows)
151 README - This document
152 materials/LGPL - Copy of the Lesser GNU Public License
154 The distribution also contains these pre-compiled Ekit JARs:
166 NOTE : If you want to use the spellcheck versions, move or delete the basic
167 versions and rename the spellcheck versions to the basic names. So, for
168 example, ekitspell.jar should be renamed ekit.jar.
172 --------------------------
174 Ekit optionally incorporates a modified subset of the Jazzy open source
175 spellchecker. The root folder of the Jazzy classes is "com/swabunga/spell".
176 You will find the following subdirectories and sources there. (See the README
177 file under the "swabunga" directory for more information.)
179 The "engine" subdirectory contains the basic mechanics of the spellchecker.
184 GenericTransformator.java
185 PropertyConfiguration.java
189 configuration.properties
191 The "dictionary" subdirectory beneath "engine" houses the available
192 dictionary files. Currently there is only an English dictionary included.
194 english - English dictionary file
196 The "event" sudirectory contains the various event classes and functional
197 methods for the spellchecker.
199 BasicSpellCheckEvent.java
200 DocumentWordTokenizer.java
202 SpellCheckListener.java
204 StringWordTokenizer.java
207 The "swing" subdirectory contains the GUI components and message lists.
212 messages_sv.properties
215 COMPILATION (OPTIONAL)
216 --------------------------
218 If you modify the included .java files, or need to recreate the .class files,
219 use the following commands within the "source" directory to build them. All
220 commands assume you are at the top of the source tree (the directory containing
221 the "com" directory). All commands listed are one-line commands as well, though
222 some are broken to multiple lines in this file due to length. Also note that
223 the backslash ("\") character should be replaced by the appropriate path
224 separator for your operating system if it is different.
226 Unix or Mac OS X users may run the MakeEkit.csh and MakeEkitApplet.csh scripts
227 from a terminal window. Remember to preface them with "./" when running from
228 within the code directory.
230 Windows users may double-click the MakeEkit.bat and MakeEkitApplet.bat batch
231 files, or execute them from the command line.
233 Both sets of batch files take an optional command line argument. You can enter
234 "basic" after the batch file to compile the standard Ekit classes, or enter
235 "spell" after the batch file to build in the Jazzy spellchecker classes.
237 For example, here is a standard build of EkitApplet on Unix:
243 MakeEkitApplet.csh basic
245 Here is an example of building Ekit with spellchecking on Windows:
249 Apache Ant (http://jakarta.apache.org/ant/) users may use the included .ant XML
250 files to compile and build the Ekit jar files with Ant.
252 You may manually compile Ekit with the following command:
254 Unix/MacOSX javac com/hexidec/ekit/Ekit.java
255 Windows javac com\hexidec\ekit\Ekit.java
256 Apache Ant ant -buildfile MakeEkit.ant
258 You may manually compile EkitApplet with the following command:
260 Unix/MacOSX javac com/hexidec/ekit/EkitApplet.java
261 Windows javac com\hexidec\ekit\EkitApplet.java
262 Apache Ant ant -buildfile MakeEkitApplet.ant
264 Ekit takes no special arguments during compile. The above command assumes your
265 Java development environment is configured according to minimal standards and
266 can locate the relevant Java core files properly.
268 View the .csh or .bat files for the proper syntax to manually create the jar
273 --------------------------
275 All users with properly configured systems will be able to launch Ekit by
276 double-clicking on the "ekit.jar" file. Unix/MacOSX users may lanuch Ekit with
277 the "RunEkit.csh" script. Windows users may launch Ekit by double-clicking the
278 batch file "RunEkit.bat".
280 You may manually execute Ekit from the command line with the following command
281 from within the directory containing the ekit.jar file:
283 java -jar ekit.jar com.hexidec.ekit.Ekit
284 [-t/T] [-s/S] [-m/M] [-x/X] [-d/D]
285 [-fHTMLfile] [-cCSSfile] [-rRawHTML] [-lLangcode]
287 Note that your CLASSPATH settings should include the "current directory"
288 specifier "." for this to work.
290 The [optional] command line arguments are:
292 -t/-T : Show/Hide the ToolBar (Show by default)
293 -s/-S : Show/Hide the Source window (Hide by default)
294 -m/-M : Show/Omit Menu icons (Show by default)
295 -x/-X : Exclusive Edit Mode On/Off (On by default)
296 -b/-B : Document is/isn't Base64 encoded (Isn't by default)
297 -d/-D : Show/Hide the Debug menu (Hide by default)
298 -f : Load the HTML document specified by HTMLfile
299 -c : Load the CSS stylesheet specified by CSSfile
300 -r : Load the raw HTML string specified by RawHTML
301 -l : Start Ekit in the language specified by Langcode*
303 [* Langcode is a combination of the 2-letter language and country codes, in the
304 format "xx_XX", where xx is the language code and XX is the country code. For
305 example, the Langcode for English/United States is "en_US", English/United
306 Kingdom is "en_UK", and German/Germany is "de_DE". Note that there must be
307 a matching "LanguageResources_xx_XX.properties" file in the com/hexidec/ekit
308 directory for the language you want to use. Missing language files, and
309 existing language files that may be missing words in use, will take words from
310 the "LanguageResources.properties" file, which contains default words in
311 "en_US" encoding marked with a trailing asterisk.]
313 So, for example, to start Ekit with the ToolBar hidden, the Source window
314 showing, and pre-load it with the "Home.html" document and "Styles.css"
315 stylesheet, you would enter:
317 java -jar ekit.jar com.hexidec.ekit.Ekit -T -s -fHome.html -cStyles.css
319 To start Ekit with a short example HTML document written as a raw string, you
322 java -jar ekit.jar com.hexidec.ekit.Ekit -r"<HTML><BODY>This is a <B>test
325 To start Ekit with the Italian/Italy language file:
327 java -jar ekit.jar com.hexidec.ekit.Ekit -lit_IT
329 Note that you shouldn't have to specify the language setting if you want Ekit
330 to run in your native language, provided there is an appropriate language file
331 in the com/hexidec/ekit directory and your Java environment is configured to
332 use your language by default.
336 --------------------------
338 Embed the Ekit applet in a web page and view in an appropriate browser.
339 The jar file should be included in the directory with the web page and
340 it should also be "visible" to the web server.
342 The included "EkitAppletDemo.html" page contains the code necessary to
343 view the applet properly. You may use this as the basis for including
344 Ekit in your own web pages.
348 --------------------------
352 New Document - Create new document (clear current one if exists).
353 Open Document - Load an HTML document into the editor.
354 Open Stylesheet - Load CSS stylesheet and apply it to the current document.
355 Open Base64 Document - Load a Base64 encoded document into the editor.
356 Save - Save the current document (prompts for filename if new document).
357 Save As - Save the document with the name specified in the file chooser.
358 Save Body - Save the document after deleting the HEAD element.
359 Save RTF - Save the document in Rich Text Format (RTF).
360 Save Base64 - Save the document in Base64 encoding.
361 Serialize - Save the document in the default Java serialization form.
362 Read From Ser - Load a serialized document into the editor.
363 Exit - Close the app (you will lose any unsaved work).
367 Cut - Remove the selected text and place it in the clipboard.
368 Copy - Place a copy of the selected text in the clipboard.
369 Paste - Place the contents of clipboard into the document at the current
371 Undo - Undo the previous action (some may not be undoable).
372 Redo - Redo the last undone action (some may not be redoable).
373 Select All - Select all the text in the editor.
374 Select Paragraph - Select the paragraph at the current cursor postion.
375 Select Line - Select the line at the current cursor postion.
376 Select Word - Select the word at the current cursor postion.
380 Toolbar - Toggles display of the ToolBar.
381 Source - Toggles display of the Source window, where the HTML can be
382 observed and directly manipulated.
386 Bold - Bold the selected text.
387 Italic - Italicise the selected text.
388 Underline - Underline the selected text.
389 Strike-through - Strike through the selected text.
390 Big - Increase the font size of the selected text.
391 Small - Decrease the font size of the selected text.
392 Superscript - Change the selected text to superscripted text.
393 Subscript - Change the selected text to subscripted text.
394 Monospaced - Render the select text in the Monospaced font.
395 Sans-serif - Render the select text in the Sans-serif font.
396 Serif - Render the select text in the Serif font.
398 Aqua - Color the selected text aqua.
399 Black - Color the selected text black.
400 Blue - Color the selected text blue.
401 Fuschia - Color the selected text fuschia.
402 Gray - Color the selected text gray.
403 Green - Color the selected text green.
404 Lime - Color the selected text lime.
405 Maroon - Color the selected text maroon.
406 Navy - Color the selected text navy.
407 Olive - Color the selected text olive.
408 Purple - Color the selected text purple.
409 Red - Color the selected text red.
410 Silver - Color the selected text silver.
411 Teal - Color the selected text teal.
412 White - Color the selected text white.
413 Yellow - Color the selected text yellow.
418 Align Left - Left align the selected text (may include unselected text
419 that is part of the element)
420 Align Center - Center align the selected text (same proviso as Left)
421 Align Right - Right align the selected text (same proviso as Left)
422 Align Justified - Justify the selected text (same proviso as Left)
424 Heading 1 - Render the selected text in the HTML <H1> style.
425 Heading 2 - Render the selected text in the HTML <H2> style.
426 Heading 3 - Render the selected text in the HTML <H3> style.
427 Heading 4 - Render the selected text in the HTML <H4> style.
428 Heading 5 - Render the selected text in the HTML <H5> style.
429 Heading 6 - Render the selected text in the HTML <H6> style.
430 Unordered List - Convert the selected text to an unordered (bulleted)
431 list. New list items are created at each paragraph mark in the text.
432 Ordered List - Convert the selected text to an ordered (numeric)
433 list. New list items are created at each paragraph mark in the text.
434 List Item - Convert the selected text to a list item (will create an
435 enclosing unordered list if not part of a defined list).
436 Blockquote - Place the selected text inside BLOCKQUOTE tags.
437 Pre - Place the selected text inside PRE (preformat) tags.
438 Span - Place the selected text inside SPAN tags.
439 Clear Format - Remove markup from elements.
443 Anchor - Convert the selected text to a hyperlink after specifying the URL
445 Break - Insert an HTML break <BR> element
446 Nonbreaking Space - Inst an HTML non-breaking space ( ) metacharacter
447 Horizontal Rule - Insert an HTML horizontal rule <HR> element
448 Insert Local Image - Insert an image from file chooser pop-up
449 Insert Image From Server - Insert an image from server (requires server
450 image app to be runnning)
454 Table - Insert a table based on settings in pop-up
455 Insert Row - Insert a row in the current table
456 Insert Column - Insert a column in the current table
457 Delete Row - Delete a row in the current table
458 Delete Column - Delete a column in the current table
462 Insert Form - Add the surrounding FORM tags for an HTML form
463 Text Field - Insert an HTML Text Field <INPUT TYPE="text">
464 Text Area - Insert an HTML Text Area <TEXTAREA></TEXTAREA>
465 Checkbox - Insert an HTML Checkbox <INPUT TYPE="checkbox">
466 Text Field - Insert an HTML Radio Button <INPUT TYPE="radio">
467 Button - Insert an HTML Button <INPUT TYPE="button"> (NON-RENDERING!)
468 Submit Button - Insert an HTML Submit Button <INPUT TYPE="submit">
469 Resest Button - Insert an HTML Reset Button <INPUT TYPE="reset">
473 About - Displays the Ekit About information dialog
477 Describe Doc - Describe the document nodes to the console window
478 Describe CSS - Describe the stylesheet properties to the console window
479 What Tags? - List the node tags applied to the element under the cursor
483 --------------------------
488 - added tag attribute management
490 - cleaned up menu actions
492 - added appName & currentFile
493 - added Save menu item
494 - added updateTitle method
495 - changed to only empty constructor
496 - added refreshOnUpdate() optional refresh code
498 - added table insertion (experimental)
499 - added image insertion (experimental)
501 - added list formatting
502 - added break insertion
503 - added horizontal rule insertion
504 - added purgeUndos() convenience method for resetting the UndoManager
505 - changed "load" commands to "open" commands
506 (more in line with current application conventions)
507 - merged some menus so that they no longer build an explicit JMenuItem
508 (sacrifices some readability for object allocation improvements)
511 - moved calls to JFileChooser to a reusable method
512 - moved "debug" types of functions to their own menu
513 - renamed the "Styles" menu "Format", so as not to be confused with
516 - added optional ToolBar
517 - added table row, table cell, and table-within-table insertion
518 - vastly improved break & horizontal rule insertion
519 - allow pre-loading of HTML document and CSS stylesheet from command line
520 - centralized exception handling
521 - fixed getFileFromChooser method to correctly display OPEN/SAVE dialogs
522 - now exists as a JAR file
524 - added Source window for viewing/editing HTML tags
525 - added Shift-Return insertion of BR tags
527 - added JButtonNoFocus inner class to keep toolbar buttons from taking
528 focus from editor canvas
529 - added JToggleButtonNoFocus inner class for toolbar elements that indicate
530 toggle-state features (such as View Source)
532 - added mnemonics for menu items (this also removed need for KeyListener)
535 - added table settings dialog
536 - added Internationalization capabilities
537 - added language files for Italian, German, Spanish, Portuguese, and
539 - fixed lack of repaint after cancelling "Open Stylesheet"
540 - Debug menu now optional, defaults to OFF
541 - moved View Source and Edit Mode to new View menu
543 - added image rendering & image selector
544 - image types supported : JPEG, GIF, & PNG
545 - added fix for dealing with HTML character encoding issue
547 - added CSS style selector
548 - added more standard HTML tags : STRONG, EM, BLOCKQUOTE, PRE, and TT
550 - added Search menu and Find/Replace functions
551 - added auto-bulleted lists
552 - added warning dialog for actions that fail
553 - split-pane divider now remembers its position
554 - changed and consolidated some menus
555 - altered "Save Body" method to work more as expected
557 - added language files for French and Norwegian
558 - broke out inner classes to separate component classes
559 - added EkitCallback class to allow easier access by shared components
560 - much improved Anchor handling and formatting
561 - changes to get app to work on JDK 1.4
563 - Ekit split into core (EkitCore) and shell (Ekit, EkitApplet) classes
564 - added language files for Finnish and Dutch
565 - added support for HTML forms and form elements
566 - added <STRIKE> tag support
567 - font familes and <HR> insertion now through inherent editor actions
568 - "Insert Table Row" now inserts the correct number of cells
569 - added generic PropertiesDialog
570 - SimpleInfoDialog auto-centers and allows different dialog types
571 - added calls to build semi-custom menus and toolbars
572 - removed EkitCallback (obsolesced by EkitCore)
573 - Change of license to LGPL (see ABOUT LICENSE section)
575 - optional integration of Jazzy spellchecker
576 - addition of font selector
577 - greater menu customization
579 - can load and save documents in Base64 encoded format
580 - bulleted lists now create new entries upon hitting ENTER
581 - added color picker to font selector
582 - support for access to the System Clipboard
583 - support for loading images from server via servlet
584 - added dispose() method to core
585 - added more insert and delete options for tables
586 - tables now have their own menu and better functionality
587 - fixed problem with IMG tag SRC URLs containing spaces
588 - fixed the getDocumentBody error where the contents did not reflect
590 - fixed the known memory/resource leaks caused by the SpellChecker
591 - added language files for Spanish (Mexican), Hungarian and Chinese
593 NOTE: The following items work in Ekit but not yet in EkitApplet, due to the
594 applet security model:
596 - Insert Image (Images referenced via a URL should work, though)
597 - Copy & Paste from system clipboard
598 - Access of local files
600 We are looking into ways to make these features available. The probable
601 solution will be to obtain a security certificate.
605 --------------------------
607 Thanks to the many people who have downloaded and used Ekit, as well as
608 providing valuable feedback. The following people have made additional
609 contributions to Ekit. (List in is chronological order of contribution.)
611 Yaodong Liu (yaodongliu@yahoo.com)
613 - HTML Insertion Support Code
614 Gyoergy Magoss (GYOERGY.MAGOSS@bhf-bank.com)
616 Oliver Moser (omoser@dkf.de)
617 - HTML Insertion Support Code
618 Michael Goldberg (MGoldberg@yet2.com)
620 Cecile Rostaing (cecile.rostaing@free.fr)
621 - Feature Suggestions
622 Thomas Gauweiler (gauweiler@fzi.de)
623 - EkitAppletDemo2.html & ShowAppletOutput.php demo files
624 Frits Jalvingh (jal@grimor.com)
625 - Correct image rendering and character encoding support
626 - CSS Styles Selector
627 - Original ExtendedHTMLEditorKit & RelativeImageView classes
628 - Original ImageFileChooser & ImageFileChooserPreview classes
629 Ruud Noordermeer (ruud.noordermeer@back2front.nl)
630 - Fix for split-pane rendering issue in EkitApplet
631 Mindaugas Idzelis (aim4min@users.sourceforge.net)
632 - Provided the excellent Jazzy spellchecker
633 Raymond Penners (dotsphinx@users.sourceforge.net)
634 - Fix for IMG tag SRC URLs containing spaces
635 Steve Birmingham (steve.birmingham@c3bgroup.com)
636 - Server image support classes and methods
637 - Color picker code in font dialog
638 - Numerous bug fixes, including the dispose() for the SpellChecker
639 Rafael Cieplinski (cieplinski@web.de)
640 - Better auto-bulleting function
641 - Improved table handling
642 - Original HTMLUtilities class
643 Nico Mack (nico.mack@mmp.lu)
644 - System clipboard access code
649 --------------------------
651 Thanks also to the people who volunteered to translate Ekit into their
652 languages. The following people have made translations available.
653 (List in is chronological order of contribution. Any current errors in the
654 language files are most likely do to my own attempts to add new terms to them,
655 and I appreciate receiving any corrections.)
657 Nick Schwendener (nschwendener@vtxnet.ch)
659 LanguageResources_it_CH.properties
660 LanguageResources_it_IT.properties
661 Gyoergy Magoss (GYOERGY.MAGOSS@bhf-bank.com)
663 LanguageResources_de_DE.properties
664 Jesus Escanero (jescanero@yahoo.es)
666 LanguageResources_es_ES.properties
667 Fernando Luiz (responsavel2@hotmail.com)
669 LanguageResources_pt_BR.properties
670 LanguageResources_pt_PT.properties
671 Jernej Vicic (jernej@activetools.si)
673 LanguageResources_sl_SI.properties
674 Gerald Estadieu (gerald.estadieu@cem-macau.com)
676 LanguageResources_fr_FR.properties
677 Anders Bjorvand (anders@kommunion.no)
679 LanguageResources_no_NO.properties
680 Vesa Kotilainen (vesa.kotilainen@sonera.com)
682 LanguageResources_fi_FI.properties
683 Mark de Haan (mark@starwave.nl)
685 LanguageResources_nl_NL.properties
688 LanguageResources_es_MX.properties
689 Tamás Érdfalvi (devnull@eagent.hu)
691 LanguageResources_hu_HU.properties
692 Yang Yu (yangyu@users.sourceforge.net)
694 LanguageResources_zh_CN.properties