Index: /CKLangTool/trunk/test/_assets/jpformat/de.js
===================================================================
--- /CKLangTool/trunk/test/_assets/jpformat/de.js	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/jpformat/de.js	(revision 3341)
@@ -0,0 +1,82 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the
+ * German language.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['de'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	/*
+	 * Screenreader titles. Please note that screenreaders are not always capable
+	 * of reading non-English words. So be careful while translating it.
+	 */
+	editorTitle		: 'Rich text editor, %1', // MISSING
+
+	// Toolbar buttons without dialogs.
+	source			: 'Quellcode',
+	newPage			: 'Neue Seite',
+	save			: 'Speichern',
+	preview			: 'Vorschau',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Server durchsuchen',
+		url				: 'Bildauswahl',
+		protocol		: 'Protokoll',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?' // MISSING
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Link einfügen/editieren',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(keine Anker im Dokument vorhanden)',
+		noUrl			: 'Bitte geben Sie die Link-URL an',
+		noEmail			: 'Bitte geben Sie e-Mail Adresse an'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Tabelle',
+
+		cell :
+		{
+			menu			: 'Zelle',
+			insertBefore	: 'Zelle davor einfügen',
+		},
+
+		row :
+		{
+			menu			: 'Zeile',
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Zurücksetzen'
+	},
+};
Index: /CKLangTool/trunk/test/_assets/jpformat/de.txt.correct.txt
===================================================================
--- /CKLangTool/trunk/test/_assets/jpformat/de.txt.correct.txt	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/jpformat/de.txt.correct.txt	(revision 3341)
@@ -0,0 +1,24 @@
+# Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+# For licensing, see LICENSE.html or http://ckeditor.com/license
+
+# Defines the object, for the German language.
+
+dir=ltr
+editorTitle=Rich text editor, %1
+source=Quellcode
+newPage=Neue Seite
+save=Speichern
+preview=Vorschau
+common.browseServer=Server durchsuchen
+common.url=Bildauswahl
+common.protocol=Protokoll
+common.confirmCancel=Some of the options have been changed. Are you sure to close the dialog?
+link.toolbar=Link einfügen/editieren
+link.noAnchors=(keine Anker im Dokument vorhanden)
+link.noUrl=Bitte geben Sie die Link-URL an
+link.noEmail=Bitte geben Sie e-Mail Adresse an
+table.toolbar=Tabelle
+table.cell.menu=Zelle
+table.cell.insertBefore=Zelle davor einfügen
+table.row.menu=Zeile
+button.typeRst=Zurücksetzen
Index: /CKLangTool/trunk/test/_assets/jpformat/en.js
===================================================================
--- /CKLangTool/trunk/test/_assets/jpformat/en.js	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/jpformat/en.js	(revision 3341)
@@ -0,0 +1,89 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the English
+ *		language. This is the base file for all translations.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['en'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	/*
+	 * Screenreader titles. Please note that screenreaders are not always capable
+	 * of reading non-English words. So be careful while translating it.
+	 */
+	editorTitle		: 'Rich text editor, %1',
+
+	// Toolbar buttons without dialogs.
+	source			: 'Source',
+	newPage			: 'New Page',
+	save			: 'Save',
+	preview			: 'Preview',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Browser Server',
+		url				: 'URL',
+		protocol		: 'Protocol',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?'
+	},
+
+	// Special char dialog.
+	specialChar		:
+	{
+		toolbar		: 'Insert Special Character',
+		title		: 'Select Special Character'
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Link\u200b',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(No anchors available in the document)',
+		noUrl			: 'Please type the link URL',
+		noEmail			: 'Please type the e-mail address'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Table',
+
+		cell :
+		{
+			menu			: 'Cell',
+			insertBefore	: 'Insert Cell Before',
+		},
+
+		row :
+		{
+			menu			: 'Row',
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Reset'
+	},
+};
Index: /CKLangTool/trunk/test/_assets/jpformat/en.txt.correct.txt
===================================================================
--- /CKLangTool/trunk/test/_assets/jpformat/en.txt.correct.txt	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/jpformat/en.txt.correct.txt	(revision 3341)
@@ -0,0 +1,26 @@
+# Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+# For licensing, see LICENSE.html or http://ckeditor.com/license
+
+# Defines the object, for the English language. This is the base file for all translations.
+
+dir=ltr
+editorTitle=Rich text editor, %1
+source=Source
+newPage=New Page
+save=Save
+preview=Preview
+common.browseServer=Browser Server
+common.url=URL
+common.protocol=Protocol
+common.confirmCancel=Some of the options have been changed. Are you sure to close the dialog?
+specialChar.toolbar=Insert Special Character
+specialChar.title=Select Special Character
+link.toolbar=Link​
+link.noAnchors=(No anchors available in the document)
+link.noUrl=Please type the link URL
+link.noEmail=Please type the e-mail address
+table.toolbar=Table
+table.cell.menu=Cell
+table.cell.insertBefore=Insert Cell Before
+table.row.menu=Row
+button.typeRst=Reset
Index: /CKLangTool/trunk/test/_assets/jpformat/pl.js
===================================================================
--- /CKLangTool/trunk/test/_assets/jpformat/pl.js	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/jpformat/pl.js	(revision 3341)
@@ -0,0 +1,83 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the
+ * Polish language.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['pl'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	// Toolbar buttons without dialogs.
+	source			: 'Źródło dokumentu',
+	newPage			: 'Nowa strona',
+	save			: 'Zapisz',
+	preview			: 'Podgląd',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Przeglądaj',
+		url				: 'Adres URL',
+		protocol		: 'Protokół',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?' // MISSING
+	},
+
+	// Special char dialog.
+	specialChar		:
+	{
+		toolbar		: 'Wstaw znak specjalny',
+		title		: 'Wybierz znak specjalny'
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Wstaw/edytuj hiperłącze',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(W dokumencie nie zdefiniowano żadnych etykiet)',
+		noUrl			: 'Podaj adres URL',
+		noEmail			: 'Podaj adres e-mail'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Tabela',
+
+		cell :
+		{
+			menu			: 'Komórka',
+			insertBefore	: 'Wstaw komórkę z lewej',
+		},
+
+		row :
+		{
+			menu			: 'Row', // MISSING
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Wyzeruj'
+	},
+};
Index: /CKLangTool/trunk/test/_assets/jpformat/pl.txt.correct.txt
===================================================================
--- /CKLangTool/trunk/test/_assets/jpformat/pl.txt.correct.txt	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/jpformat/pl.txt.correct.txt	(revision 3341)
@@ -0,0 +1,25 @@
+# Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+# For licensing, see LICENSE.html or http://ckeditor.com/license
+
+# Defines the object, for the Polish language.
+
+dir=ltr
+source=Źródło dokumentu
+newPage=Nowa strona
+save=Zapisz
+preview=Podgląd
+common.browseServer=Przeglądaj
+common.url=Adres URL
+common.protocol=Protokół
+common.confirmCancel=Some of the options have been changed. Are you sure to close the dialog?
+specialChar.toolbar=Wstaw znak specjalny
+specialChar.title=Wybierz znak specjalny
+link.toolbar=Wstaw/edytuj hiperłącze
+link.noAnchors=(W dokumencie nie zdefiniowano żadnych etykiet)
+link.noUrl=Podaj adres URL
+link.noEmail=Podaj adres e-mail
+table.toolbar=Tabela
+table.cell.menu=Komórka
+table.cell.insertBefore=Wstaw komórkę z lewej
+table.row.menu=Row
+button.typeRst=Wyzeruj
Index: /CKLangTool/trunk/test/_assets/translator/_translationstatus.txt.correct.txt
===================================================================
--- /CKLangTool/trunk/test/_assets/translator/_translationstatus.txt.correct.txt	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/translator/_translationstatus.txt.correct.txt	(revision 3341)
@@ -0,0 +1,5 @@
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+
+de.js      Found: 17 Missing: 4
+pl.js      Found: 18 Missing: 3
Index: /CKLangTool/trunk/test/_assets/translator/de.js
===================================================================
--- /CKLangTool/trunk/test/_assets/translator/de.js	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/translator/de.js	(revision 3341)
@@ -0,0 +1,82 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the
+ * German language.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['de'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	/*
+	 * Screenreader titles. Please note that screenreaders are not always capable
+	 * of reading non-English words. So be careful while translating it.
+	 */
+	editorTitle		: 'Rich text editor, %1', // MISSING
+
+	// Toolbar buttons without dialogs.
+	source			: 'Quellcode',
+	newPage			: 'Neue Seite',
+	save			: 'Speichern',
+	preview			: 'Vorschau',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Server durchsuchen',
+		url				: 'Bildauswahl',
+		protocol		: 'Protokoll',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?' // MISSING
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Link einfügen/editieren',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(keine Anker im Dokument vorhanden)',
+		noUrl			: 'Bitte geben Sie die Link-URL an',
+		noEmail			: 'Bitte geben Sie e-Mail Adresse an'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Tabelle',
+
+		cell :
+		{
+			menu			: 'Zelle',
+			insertBefore	: 'Zelle davor einfügen',
+		},
+
+		row :
+		{
+			menu			: 'Zeile',
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Zurücksetzen'
+	},
+};
Index: /CKLangTool/trunk/test/_assets/translator/de.js.correct.txt
===================================================================
--- /CKLangTool/trunk/test/_assets/translator/de.js.correct.txt	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/translator/de.js.correct.txt	(revision 3341)
@@ -0,0 +1,89 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the
+ * German language.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['de'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	/*
+	 * Screenreader titles. Please note that screenreaders are not always capable
+	 * of reading non-English words. So be careful while translating it.
+	 */
+	editorTitle		: 'Rich text editor, %1', // MISSING
+
+	// Toolbar buttons without dialogs.
+	source			: 'Quellcode',
+	newPage			: 'Neue Seite',
+	save			: 'Speichern',
+	preview			: 'Vorschau',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Server durchsuchen',
+		url				: 'Bildauswahl',
+		protocol		: 'Protokoll',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?' // MISSING
+	},
+
+	// Special char dialog.
+	specialChar		:
+	{
+		toolbar		: 'Insert Special Character', // MISSING
+		title		: 'Select Special Character' // MISSING
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Link einfügen/editieren',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(keine Anker im Dokument vorhanden)',
+		noUrl			: 'Bitte geben Sie die Link-URL an',
+		noEmail			: 'Bitte geben Sie e-Mail Adresse an'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Tabelle',
+
+		cell :
+		{
+			menu			: 'Zelle',
+			insertBefore	: 'Zelle davor einfügen',
+		},
+
+		row :
+		{
+			menu			: 'Zeile',
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Zurücksetzen'
+	},
+};
Index: /CKLangTool/trunk/test/_assets/translator/en.js
===================================================================
--- /CKLangTool/trunk/test/_assets/translator/en.js	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/translator/en.js	(revision 3341)
@@ -0,0 +1,89 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the English
+ *		language. This is the base file for all translations.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['en'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	/*
+	 * Screenreader titles. Please note that screenreaders are not always capable
+	 * of reading non-English words. So be careful while translating it.
+	 */
+	editorTitle		: 'Rich text editor, %1',
+
+	// Toolbar buttons without dialogs.
+	source			: 'Source',
+	newPage			: 'New Page',
+	save			: 'Save',
+	preview			: 'Preview',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Browser Server',
+		url				: 'URL',
+		protocol		: 'Protocol',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?'
+	},
+
+	// Special char dialog.
+	specialChar		:
+	{
+		toolbar		: 'Insert Special Character',
+		title		: 'Select Special Character'
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Link\u200b',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(No anchors available in the document)',
+		noUrl			: 'Please type the link URL',
+		noEmail			: 'Please type the e-mail address'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Table',
+
+		cell :
+		{
+			menu			: 'Cell',
+			insertBefore	: 'Insert Cell Before',
+		},
+
+		row :
+		{
+			menu			: 'Row',
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Reset'
+	},
+};
Index: /CKLangTool/trunk/test/_assets/translator/pl.js
===================================================================
--- /CKLangTool/trunk/test/_assets/translator/pl.js	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/translator/pl.js	(revision 3341)
@@ -0,0 +1,83 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the
+ * Polish language.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['pl'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	// Toolbar buttons without dialogs.
+	source			: 'Źródło dokumentu',
+	newPage			: 'Nowa strona',
+	save			: 'Zapisz',
+	preview			: 'Podgląd',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Przeglądaj',
+		url				: 'Adres URL',
+		protocol		: 'Protokół',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?' // MISSING
+	},
+
+	// Special char dialog.
+	specialChar		:
+	{
+		toolbar		: 'Wstaw znak specjalny',
+		title		: 'Wybierz znak specjalny'
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Wstaw/edytuj hiperłącze',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(W dokumencie nie zdefiniowano żadnych etykiet)',
+		noUrl			: 'Podaj adres URL',
+		noEmail			: 'Podaj adres e-mail'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Tabela',
+
+		cell :
+		{
+			menu			: 'Komórka',
+			insertBefore	: 'Wstaw komórkę z lewej',
+		},
+
+		row :
+		{
+			menu			: 'Row', // MISSING
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Wyzeruj'
+	},
+};
Index: /CKLangTool/trunk/test/_assets/translator/pl.js.correct.txt
===================================================================
--- /CKLangTool/trunk/test/_assets/translator/pl.js.correct.txt	(revision 3341)
+++ /CKLangTool/trunk/test/_assets/translator/pl.js.correct.txt	(revision 3341)
@@ -0,0 +1,89 @@
+﻿/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @fileOverview Defines the {@link CKEDITOR.lang} object, for the
+ * Polish language.
+ */
+
+/**#@+
+   @type String
+   @example
+*/
+
+/**
+ * Constains the dictionary of language entries.
+ * @namespace
+ */
+CKEDITOR.lang['pl'] =
+{
+	/**
+	 * The language reading direction. Possible values are "rtl" for
+	 * Right-To-Left languages (like Arabic) and "ltr" for Left-To-Right
+	 * languages (like English).
+	 * @default 'ltr'
+	 */
+	dir : 'ltr',
+
+	/*
+	 * Screenreader titles. Please note that screenreaders are not always capable
+	 * of reading non-English words. So be careful while translating it.
+	 */
+	editorTitle		: 'Rich text editor, %1', // MISSING
+
+	// Toolbar buttons without dialogs.
+	source			: 'Źródło dokumentu',
+	newPage			: 'Nowa strona',
+	save			: 'Zapisz',
+	preview			: 'Podgląd',
+
+	// Common messages and labels.
+	common :
+	{
+		browseServer	: 'Przeglądaj',
+		url				: 'Adres URL',
+		protocol		: 'Protokół',
+		confirmCancel	: 'Some of the options have been changed. Are you sure to close the dialog?' // MISSING
+	},
+
+	// Special char dialog.
+	specialChar		:
+	{
+		toolbar		: 'Wstaw znak specjalny',
+		title		: 'Wybierz znak specjalny'
+	},
+
+	// Link dialog.
+	link :
+	{
+		toolbar		: 'Wstaw/edytuj hiperłącze',		// IE6 BUG: A title called "Link" in an <A> tag would invalidate its padding!!
+		noAnchors		: '(W dokumencie nie zdefiniowano żadnych etykiet)',
+		noUrl			: 'Podaj adres URL',
+		noEmail			: 'Podaj adres e-mail'
+	},
+
+	// Table Dialog
+	table :
+	{
+		toolbar		: 'Tabela',
+
+		cell :
+		{
+			menu			: 'Komórka',
+			insertBefore	: 'Wstaw komórkę z lewej',
+		},
+
+		row :
+		{
+			menu			: 'Row', // MISSING
+		},
+	},
+
+	// Button Dialog.
+	button :
+	{
+		typeRst		: 'Wyzeruj'
+	},
+};
Index: /CKLangTool/trunk/test/test.bat
===================================================================
--- /CKLangTool/trunk/test/test.bat	(revision 3341)
+++ /CKLangTool/trunk/test/test.bat	(revision 3341)
@@ -0,0 +1,8 @@
+:: Copyright (c) 2003-2008, Frederico Caldeira Knabben. All rights reserved.
+:: For licensing, see LICENSE.html or http://ckeditor.com/license
+
+@ECHO OFF
+CLS
+ECHO.
+
+java -cp ../_dev/_thirdparty/rhino/js.jar org.mozilla.javascript.tools.shell.Main ../_source/langtool.js -test %1
Index: /CKLangTool/trunk/test/test.js
===================================================================
--- /CKLangTool/trunk/test/test.js	(revision 3341)
+++ /CKLangTool/trunk/test/test.js	(revision 3341)
@@ -0,0 +1,176 @@
+/*
+Copyright (c) 2003-2008, Frederico Caldeira Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+( function()
+{
+	var translator = new CKLANGTOOL.translator();
+	var jpformat = new CKLANGTOOL.jpformat();
+
+	// Run tests.
+	var passCount = 0, failCount = 0;
+
+	
+	function deleteDirectory( path )
+	{
+		var dir = new File( path );
+
+		if ( dir.isDirectory() )
+		{
+			var children = dir.list();
+			for ( var i = 0 ; i < children.length ; i++ )
+			{
+				if ( !deleteDirectory( new File( dir, children[i] ) ) )
+				{
+					return false;
+				}
+			}
+		}
+
+		return dir["delete"]();
+	}
+	
+	function copyFile( sourceFile, targetFile )
+	{
+		try
+		{
+			var inStream = new FileInputStream( sourceFile );
+			var outStream = new FileOutputStream( targetFile );
+
+			var len, buf = new Packages.java.lang.reflect.Array.newInstance( java.lang.Byte.TYPE, 1024 );
+
+			while ( ( len = inStream.read( buf ) ) != -1 )
+			{
+				outStream.write( buf, 0, len );
+			}
+			inStream.close();
+			outStream.close();
+		}
+		catch ( e )
+		{
+			throw "Cannot copy file:\n Source: " + sourceFile.getCanonicalPath() + "\n Destination : "
+					+ targetFile.getCanonicalPath() + "\n" + e.message;
+		}
+	}	
+	
+	function assertEquals( expected, actual, title )
+	{
+		if ( expected != actual )
+		{
+			var error = {
+				expected :expected,
+				actual :actual
+			};
+
+			print( 'FAILED: ' + (title ? title : "") );
+
+			if ( !error.expected )
+				throw error;
+
+			print( '  Expected: ' + error.expected );
+			print( '  Actual  : ' + error.actual );
+
+			failCount++;
+		}
+		else
+			passCount++;
+	}
+
+	function error( msg )
+	{
+		print( msg );
+		quit();
+	}
+
+	function prepareTempDirs()
+	{
+		var tempDir = new File( 'tmp' );
+
+		if ( tempDir.exists() && !deleteDirectory( 'tmp' ) )
+			error( "Can't delete temp directory" );
+
+		if ( !tempDir.mkdir() )
+			error( "Can't create temp directory: " + tempDir );
+
+		var tests = [ 'jpformat', 'jpformat/out', 'translator' ];
+
+		for ( var i = 0 ; i < tests.length ; i++ )
+		{
+			tempDir = new File( 'tmp/' + tests[i] );
+			if ( !tempDir.mkdir() )
+				error( "Can't create temp directory: " + tempDir );
+		}
+	}
+	
+	function testTranslator()
+	{
+		CKLANGTOOL.languageDir = new File( 'tmp/translator' );
+		CKLANGTOOL.templateFile = new File( 'tmp/translator', 'en.js' );
+		
+		var name = 'translator';
+		var dir = new File( '_assets/translator' );
+		var dirList = dir.list();
+		
+		for ( var i = 0 ; i < dirList.length ; i++ )
+			copyFile( new File( dir, dirList[i] ), new File( CKLANGTOOL.languageDir, dirList[i] ) );
+
+		translator.run();
+
+		dirList = CKLANGTOOL.languageDir.list();
+		for ( var i = 0 ; i < dirList.length ; i++ )
+		{
+			if ( dirList[i].indexOf( ".correct." ) == -1 )
+				continue;
+			
+			var f = new File( CKLANGTOOL.languageDir, dirList[i] );
+
+			testName = dirList[i].replace( ".correct.txt", "" );
+
+			tempFile = new File( 'tmp/' + name + '/' + testName );
+			correctFile = new File( 'tmp/' + name + '/' + testName + '.correct.txt' );
+			
+			assertEquals( CKLANGTOOL.io.readFile( correctFile ), CKLANGTOOL.io.readFile( tempFile ));
+		}
+	}
+	
+	function testJpformat()
+	{
+		CKLANGTOOL.languageDir = new File( 'tmp/jpformat' );
+		CKLANGTOOL.destinationDir = new File( 'tmp/jpformat/out' );
+		CKLANGTOOL.templateFile = new File( 'tmp/jpformat', 'en.js' );
+		
+		var name = 'jpformat';
+		var dir = new File( '_assets/jpformat' );
+		var dirList = dir.list();
+		
+		for ( var i = 0 ; i < dirList.length ; i++ )
+			copyFile( new File( dir, dirList[i] ), new File( CKLANGTOOL.languageDir, dirList[i] ) );
+
+		jpformat.run();
+
+		dirList = CKLANGTOOL.languageDir.list();
+		for ( var i = 0 ; i < dirList.length ; i++ )
+		{
+			if ( dirList[i].indexOf( ".correct." ) == -1 )
+				continue;
+			
+			var f = new File( CKLANGTOOL.languageDir, dirList[i] );
+
+			testName = dirList[i].replace( ".correct.txt", "" );
+
+			tempFile = new File( 'tmp/jpformat/out/' + testName );
+			correctFile = new File( 'tmp/jpformat/' + testName + '.correct.txt' );
+			
+			assertEquals( CKLANGTOOL.io.readFile( correctFile ), CKLANGTOOL.io.readFile( tempFile ));
+		}
+	}
+
+	prepareTempDirs();
+	testTranslator();
+	testJpformat();
+
+	print( '' );
+	print( 'Finished: ' + passCount + ' passed / ' + failCount + ' failed' );
+
+})();
