KBabel is an advanced and easy to use PO-file editor. It has a multi functional Catalog Manager, and many advanced features like searching in catalogs, text highlighting and it lets you customize many options.
Table of Contents
KBabel is an advanced and easy to use PO-file (gnu gettext message catalogs) editor. It has many features, that makes editing and managing your PO-files easy. This includes full navigation capabilities, extensive editing functionality, search functions, syntax checking and statistics function. Also included is a "Catalog Manager", a file manager view, which helps you to keep an overview over your PO-files. KBabel will help you to translate fast and also keep consistent translations.
With KDE project continous growing the number of PO messages is over 27000 at time writing this documentation. There is a need to stay organized and consistent along all translations. Consider using KBabelDict to help managing this huge number of messages and PO catalogs.
Usually, program messages and documentation is written in English. However since using a framework made from a set of tools and libraries it was posible to have favorite applications speaking your native non-English language. The adapting process to a specific language is named localization. This include translating program interface and documentation to various languages users need and make input and output conform to be correct with particular conventions in some countries or regions. KBabel is a tool which assist you in internationalization process which mean to make an application interface speak many languages.
Every internationalization aware program make available for translation one or more messages catalog files. Their extention is .pot and is an acronym: POT - Portable Object Template. Every translator take a POT file copy and begin translating messages. That, this file will became PO file - Portable Object and represent only one language. After translating process completing this text file (often it contain non-ASCII characters) is compiled into binary format, machine readable. It's like a database to minimize lookup for translated messages. This file have .mo extension and is named MO file - Machine Object.
There is a question in the air: Do I need to know how is inside a PO file? The answer is undoubtefully, yes. There are situations when a messages catalog became corrupt and must be manually fixed. Most of them are so hated CVS conflicts when translating process is coordinated by a concurent version system (see CVS documentation). KBabel can't help you very much on this but an text editor, CVS and PO-file knowledge. Let's see how a PO file is made. The principal concepts are msgid and msgstr markers which are continued by C-like strings (delimited by double quotes). Both groups begin with msgid and respectively msgstr. Msgid stand for English text in application user interface and msgstr stand for translated text. Empty lines and starting with number sign are ignored. Lines with number sign represent comments and are a good point to indicate from what file is the translatable English message or even aditional comments for translating made by application developers. KBabel display comment lines for every message. In many cases first msgid-msgstr pair in PO file is a fake entry (PO file header) which contain various informations about translated PO-file: application name, translating date, translator name and many more.
Here's a screenshot of KBabel. Main window is split in four panels. For convenience KBabel has toolbars to speed up many operations and for high working people there are many shortcuts. Upper left edit box is read-only and contains the current msgid field from the opened PO-file and it's english text. Bottom left edit box is msgstr field related and here you can edit the translated text. On top-right window part is comments panel where you can view comments added for current edited entry. It's covenient to find how entry is treated (c-formated or simple). In some cases you can read helpfull comments added by application developer who care about translators work and translating dificulties, for example where terms have different interpretation in application. Undoubtefully, translators need to have a very good general culture, but in some high tech programs comments seems to help very much. A good example is LyX Project which use TeX terminology. Another uses are when you need to know from what file current messages is because you want to report a spelling mistake in original English string.
Editor window Bottom-right part is the most sofisticated one. It's size can be adjusted with spliter line which border the space between it and comment panel. It is multifunctional and have two tabbed panels: search and context information. Contextual information tab contain a scrolled view which show the 4 precedent and 4 next entries according with current entry. It's as you may see a snapshot from edited PO file.What's this good? It's very common that when you translate many strings are related both in advance and back, so you may have a look if you have no clue how current entry can be best translated. Dialog interface translation is a good example or widgets have along with its asociated text and "what's this" quick help.
Shortly, I would explain that a msgid entry can be in three states:
which obviously mean there's no translated text associated with msgstr
msgmerge had tried to match better translated string looking in rest of PO-file entries. This does not work perfectly and you must edit the translated text to fit the current english text.
obvious this mean current msgid entry is translated.
The state of the current entry is indicated by two LEDs. Depending on your configuration, these can be in statusbar or above the translated string edit box. Both have customizable color to reflect your visual requirements or taste. Please read Preferences section to see how you can adjust these settings.
The Catalog Manager merges two directories into one tree and displays all PO- and POT-files in these directories. This way you can easily see if a new template has been added or removed. Also some informations of the files are displayed in the Catalog Manager: total number, number of fuzzy and number of untranslated entries, the last revision and the last translator of the file.
To make it easier for you to find files, that need work or that are missing, the status of the files is also displayed with an icon:
The messages in this file are all translated.
Some messages in this file are fuzzy or untranslated
This file does not exists in the directory of the PO-files.
This file contains syntax errors.
If an icon is marked with this icon
, like
,
it indicates, that this file or directory does not exist in the
directory of the POT-files.
You can mark or unmark a file by selecting Toggle Marking in the context menu of a file. If you want to toggle or remove all markings in a directory, press the right mouse button over this directory and select Toggle Markings or Remove Markings. The markings are automatically saved when leaving KBabel.
To open a file, double click on the file, or select it and press either Return or Ctrl-O, or select Open from the context menu.
You can configure the Catalog Manager either by clicking Configure... at the bottom or in section Catalog Manager of the preferences dialog. See section Preferences for more details.
KBabel come with 3 modes for searching translated PO strings: translation database, PO compendium an auxiliary PO file.
You can configure this searching mode by selecting Settings->Configure Dictionary->Translation Database in KBabel menu.
This searching mode is based on matching the same original string (msgid) in an auxiliary PO file, translated in other language. It's very common that romanic languages have similar words. Same for anglosaxone and slavone ones. For example, I want to translate then word "on" in Romanian from kdelibs.po, but have no clue. I look in the same file for French and found "actif". In Spanish one I found "activado". So, I conclude that the best one in Romanian will be "activ". KBabel automate this task. Currently you can define only one auxiliary file to search.
You can configure this searching mode by selecting Settings->Configure Dictionary->PO Auxiliary in KBabel menu. In "Configure Dictionary PO Auxiliary" dialog you can select the path to auxiliary PO file. To automate PO file switching when you change current edited file, there are many variables delimited by "@" char which are replaced by appropriate values:
The name of currently translated application or package. For example can expand to: kbabel, kdelibs, konqueror etc.
The language code. For example can expand to: de, ro, fr etc.
where "n" is a positive integer. This expand to the "n"-th directory counted from filename (right to left).
You could show Preferences dialog by choosing Settings->Configure KBabel... from KBabel menu. It uses a structured configuration dialog which makes it very easy to find every option without extensive search. The left side of the preferences dialog lists categories for customizable items and the right side shows the corresponding tab for the selected category. KBabel keeps changes if you move between categories, so, finally, when you're happy click the OK button. At any moment you can use quick help. Just click on the question mark on the title bar and, after the cursor changed like an arrow with a question mark, click on buttons, labels, entries to obtain more info on the specified item.
This section allows you to set standard fields for every translated PO file. These are your name, email address, full language name, email address for your translation team mailing list. Also, there is even timezone to track last modified time for PO file. You can specify it as character sequence like EEST or offset from GMT time like +0200 (i.e. for Romania). This information is used when updating file header. You can find the options if and what fields in the header should be updated on section Save in Preferences dialog.
The editor preferences category is divided in 3 subwindows: General, Appearance, Spell Check, and Fonts. All these settings customize how the editor behaves and looks.
Here is a set of checkboxes. First checkbox in upper side sets if fuzzy status is reseted automatically at first character input in MsgStr editor. When this option is disabled you have to manually choose Edit->Unset Fuzzy Status or press the Ctrl-U shortcut. This means the string ", fuzzy" is removed from the entry's comment.
The downside checkboxes group are very usefull in assisting not for translation corectness, but for logical. Many messages represent menu items with keyboard accelerator and C-like formated strings.
When is checked C-format strings in original and translation are checked to find if number of format sequences is identical and also order.
Check to find if number of accelerator characters is identical in both original and translated string. Please note that accelerator marker is &, but not in every programming toolkit. See Miscellaneous section below to find how to change keyboard accelerator.
This is a feature for KDE project development. .desktop files are simply text files which store various parameters in value=key format. Some of these key are translatable. The only restriction is to maintain the left side of equality unchanged. Equation check allow you to spot many errors determined by fuzzy msgmerge algorithm. Note that are situations where this function generate false errors on some PO-files.
Some original messages are marked with context information to make them unique even they represent same word. This is because in the simple "Save" word is translated in many kinds in other languages. Context info is marked with _:. Many unexperienced translators do even context info translation and fill their PO-files with garbage. Check this box to make sure you will be warned about these errors in file.
Your system bell will beep when you switch on entries with errors like those described above.
This is another type of warning about errors in current message. For persons deaf impaired or are bored by bell noise, here is a good solution. Check this. See also Appearance tab to know how to change text color on errors.
These options let you configure the appearance for the message editor. In upper part there are 4 checkboxes:
Setting this option will enable syntax highlighting for special characters, accelerators and text background in msgid viewer and msgstr editor. If don't have a monochrome display or have a visual impairment, you should enable this option.
Background will be highlighted only for existing characters in msgid and msgstr. This includes spaces. That is useful, if you don't want to see surrounding quotes (see below) for the PO entry, you will still be able to observe starting and ending spaces in a text line.
When you feel the need to count spaces right from an eye or background highlighting is not your taste, then you can check this option to view whitespaces filled with points. Note that point is a point sign in the center of a character box, and not a decimal point.
If you think that viewing terminal char in msgstr or msgids text line is better for you then check this option to view surrounding quotes for every text line. Same thing if your experience editing PO files with ordinary text editors make you feel safe if you can track starting and ending double quotes in PO entry lines.
For different items in edited text there are different color choices to make editing easy. Colors can be changed by clicking on color-picker buttons. From select color dialogs you can choose from standard colors, custom colors or just pick color from any part of your screen.
This sets the background color for characters in MsgID view and MsgStr editor. For general background color of edit box you must use KDE Control Center.
Here you can adjust the color for escaped characters like (\") double quotes or (\n) newline.
This is the color for the entire text entry if errors are detected when you try to save PO file. Errors are triggered by not terminating identically both msgid and msgstr, or escaping characters incorrectly.
This sets the color for a characters sequence like in C language printf or scanf functions. In general these start with (%) percent char and are continued by one char.
Keyboard accelerators start with (&) “ampersand” character in KDE but if you are translating for other projects there might be an different character marking the accelerator key. See Miscellaneous section below to find how to change keyboard accelerator.
The status for the current edited entry is marked by three LEDs. For your convenience you can choose where to put these LEDs: in statusbar or in editor (between msgid and msgstr entry). If have difficulties to view some colors or you want to make sure you can track LED status changes easily without moving your eye, you can select the prefered color using the color button chooser.
Here you can set your spell checking preferences. These is for interest if you have dictionary file for your translating language. Bellow are items to consider setting:
For new words added to personal dictionary, spell check engine will create root/affix combinations to match more than one word (variations).
If this is turned on, then joined words will be treated as errors. However, this situations is very usual in German language which have a very large number of compound words.
From the popup list you can choose which dictionary to use. Note that you must install apropiate dictionary for your language. Check your ispell or aspell distribution to figure out if you have one.
Here you choose encoding for your text. This options is passed to spellchecker. It is encoding for your words dictionary. See kspell documentation for more details.
Backend program for spell checking. Currently are to: ispell (International Ispell) and aspell.
Keep track of user ignored words when spell check PO-files. It's very convenient to ignore abbreviations or strange letter combinations you meet in GUI interfaces.
Here you can set location of file for ignored words. Clicking on folder icon from editline right side you can choose path and name for ignored words file. Default is $(HOME)/.kde/share/apps/kbabel/spellignores, where $(HOME) is your home directory.
This is a classic font chooser dialog with a little addition. You can select to view only fixed fonts by checking the Show only fixed fonts option. This is highly recomended for easy translating. The font dialog let you set font family, style, size and encoding. The bottom box shows a preview of the current for user convenience.
The search section allows you to customize various settings for searching in previous translated strings.
General settings are common for all search types. If you check Automatically start search option then search is automatically started whenever you switch to another entry in the editor. At the moment there are at three posibilies you can choose from. But since KBabel can use dictionary plugins the available dictionaries depends what is actually installed. With Settings->Configure Dictionary->... you can configure every search engine plugin. The default installed dictionarys plugins are:
KDE Database Search Engine: This new method is still in alpha stage of development and base it task on KBabelDict which acompany KBabel. See KBabelDict documentation for further info on configuring search engine.
PO Compendium: The compendium is a normal PO file, which should contain a list of standard translation from your translation team. If you don't have one, you can also use a file that contains all used translations of your team (e.g. the $lang.messages file in the KDE Project, that can be found at i18n.kde.org).
PO Auxiliary: The auxiliary should help you finding the context of a translation by looking up the same message in a message catalog of the same package but translated to another language. This way you can have a look how this message is translated in another language.
You can also start searching manually by choosing an entry in the popup menu that appears either when clicking at Dictionaries->Search Text->PO Compendium or keeping the search button in the toolbar pressed for a while.
This section allows you to edit the options for PO file saving. The first checkboxes group control general hehaviour for actions performed at PO-file saving command.
Check this button, to update the header information of the file everytime when it is saved. The header normally keeps information about the date and time the file was last updated,the last translator etc. You can choose which information you want to update from the Fields to update checkboxes area below. Fields that do not exist are added to the header. If you want to add additional fields to the header you can edit the header manually by choosing Edit->Edit Header in the editor window.
Check this to automatically check syntax of file with msgfmt --statistics when saving a file. You will only get a message, if an error occured. You should keep this options enabled unless know what you're doing.
If you don't want to touch some fields in PO-file header or want to force updating specific fields, there are five checkboxes which control: revision date, PO-file language, text encoding, last translator name, charset. If a field does not exist, it is appended to the header. If you want to add other information to the header, you have to edit the header manually by choosing Edit->Edit Header in the editor window. Deactivate Update header when saving above if you don't want to have the header updated.
For date and time of the header field PO-Revision-Date you can choose one from bellow formats:
Default is the format normally used in PO-files.
Local is the format specific to your country.
Custom let you define your own format, where you can use the following C-like format strings:
Table 4.1. Year
Format | Meaning | Range |
---|---|---|
%y | year | 00 to 99 |
%Y | year | 0001 to 9999 |
Table 4.2. Month
Format | Meaning | Range |
---|---|---|
%m | month of year | 01 to 12 |
%f | month of year | 1 to 12 |
%b,%h | month abbreviation | Jan to Dec |
Table 4.3. Day
Format | Meaning | Range |
---|---|---|
%j | day of the year | 001 to 366 |
%d | day of month | 01 to 31 |
%e | day of month | 1 to 31 |
%a | weekday abbreviation | Sun to Sat |
Table 4.4. Hour
Format | Meaning | Range |
---|---|---|
%H | hour | 00 to 23 |
%k | hour | 0 to 23 |
%i | hour | 1 to 12 |
%I | hour | 01 to 12 |
%p | AM or PM |
Table 4.5. Minute, Second, Timezone
Format | Meaning | Range |
---|---|---|
%M | minute | 00 to 59 |
%S | second | 00 to 59 |
%Z | timezone | (given in identity settings) |
Downside part group encoding options for PO-file when saving. If you work on KDE project you should be aware that at least desktop.po file must be UTF-8 encoded. Popup list let you select messages encoding. At least your language setting and UTF-8 must be. If, for some reasons, you don't want accidentaly change current PO-file encoding, turn on Keep the encoding of the file.
This section allows you to edit the options for the Catalog Manager.
Here are two editlines with Browse... buttons. Type in the directories which contains all your PO- and respectively POT-files. The files and the directories in these directories will then be merged into one tree in Catalog Manager window.
Below you can turn on and off if:
If this is activated all files that are opened from the Catalog Manager are opened in a new window.
If you check this KBabel tries to kill the processes, that are not exited already when program close by sending a kill signal to them.
It's not guaranteed, that the processes are killed.
Here you can insert commands you want to execute in directories from the Catalog Manager. The commands are then shown in the submenu Commands in the Catalog Manager's context menu.
Insert in field Name the name of the command. The name can be chosen freely and is only used to be displayed in the menu. In field Command insert the command, you want to have executed when selecting the corresponding menu item. Then press Add button to add the command to your available commands. To edit a command, select it, press Edit button and press Add after you have finished. To remove a command, select one from list and press Remove button. If you want different order in contexual submenu, you can use up and down buttons.
The command is executed through your default shell, so you can execute multiple commands at once by separating them with a semicolon, and you can set environment variables, if you need. The commands are executed in the (PO-file) directory, you have selected in the Catalog Manager.
The following strings will be replaced in a command:
@PACKAGE@: The name of the directory without path
@PODIR@: The name of the PO-directory with path
@POTDIR@: The name of the template directory with path
E.g.: If you want to execute make and then make install you could insert in field Name Make install and in field Command make; make install. If you then select Commands->Make install from the context menu of a directory, the commands listed above will be executed in this directory.
Here you can insert the commands you want to execute on files from the Catalog Manager. The commands are then shown in the submenu Commands in the Catalog Manager's context menu.
Insert in field Name the name of the command. The name can be chosen freely and is only used to be displayed in the menu. In field Command insert the command, you want to have executed when selecting the corresponding menu item. Then press Add button to add the command to your available commands. To edit a command, select it, press Edit and press Add after you have finished. To remove a command, select one from list and press Remove button. If you want different order in contexual submenu, you can use up and down buttons.
The command is executed through your default shell, so you can execute multiple commands at once by separating them with a semicolon, and you can set environment variables, if you need. The commands are executed in the (PO-file) directory, in which the file, you have selected in the Catalog Manager, is.
The following strings will be replaced in a command:
@PACKAGE@: The name of the file without path and extension
@POFILE@: The name of the PO-file with path and extension
@POTFILE@: The name of the corresponding template file with path and extension
@PODIR@: The name of the directory, the PO-file is in, with path
@POTDIR@: The name of the directory, the template file is in, with path
E.g.: If you want to merge the template file into your PO-file you could insert in field Name Merge and in field Command msgmerge @POFILE@ @POTFILE@ > @PACKAGE@.new && mv @PACKAGE@.new "@PACKAGE@.po. If you then select Commands->Merge from a file's context menu, the PO-file will be merged with its template file.
Miscellaneous section hold settings which don't feet anywhere. Currently are two:
Here you can put your own character which serve as marker for keyboard accelerator indicator in GUI. By default it is & (ampersand), but in some programing toolkits it may vary. For example in Gnome/GTK translations the underscore character ‘_’ is the marker for the keyboard accelerator.
For unexperienced user "regular expression" sound strange. However, you're advised to change default value only you know what you are doing. Some GUI programming toolkits provide own context information description methods. Consult an experienced developer if you translate PO files other than KDE specifics. For the sake of completness I "translate" for you what default regular expression mean: "the text match if it start with _: and is followed by one or more characters and end with a newline".
Open PO-file. If current file is modified you will be prompted to save it first.
More used documents list menu is displayed, allowing you to open recently edited PO-files.
Saves current PO-file. If it's not modified no action is taken.
Save current PO-file under new name.
Open a new window with current file loaded. Very useful if you have to translate large files and you need to keep an eye back to some strings.
Open a new empty window.
Quits KBabel
Undo last edit action in translation edit box.
Redo last undoed edit action in translation edit box.
Cut selected text and move it in clipboard.
Copy selected in clipboard.
Paste clipboard content at current cursor position in translation edit box.
Select all text from translation edit box.
Open Find dialog for searching strings in current PO-file.
Find next occurrence of string from previous search action.
Open Replace dialog for searching and replacing strings in current PO-file.
Original english string is copied below in translation edit box. This useful when you need to make from no adjustment to minor changes in original english text (msgstr).
String found after translation searching is copied in MsgStr edit box. This very useful if you don't want to work on retranslating same message again and again.
Reset fuzzy status for all entries in current PO-file. You should not do this unless you know what you are doing. Probably this will let many strings bad translated.
Edit PO-file header. Actually there are many header lines, which keep last translated date, translator name and email, language and translated text encoding etc.
Skip to previous entry in PO-file.
Skip to next entry in PO-file.
Open dialog to jump to specified entry number from PO-file.
Jump to first entry in PO-file.
Jump to last entry in PO-file.
Jump to first previous entry which is untranslated or marked as fuzzy.
Jump to first next entry which is untranslated or marked as fuzzy.
Jump to first previous fuzzy entry.
Jump to first next fuzzy entry.
Jump to first previous untranslated entry.
Jump to first next untranslated entry.
Jump to previous entry with error. It's likely to happen when you forget to escape doublequotes or original string end in "return" (\n) char and translated string don't (and vice versa).
Jump to next entry with error. It's likely to happen when you forget to escape doublequotes or original string end in "return" (\n) char and translated string don't (and vice versa).
Jump to last visited entry in PO-file.
Jump to previous visited entry in PO-file.
Note that this menu is dynamic. It depend on installed dictionaries plugins. By default are three.
Start searching translation for current original english message using KDE Database Search Engine.
Start searching translation for current original english message in PO file defined by user.
Start searching translation for current original english message in compendium file (made by merging all translated messages for one language).
Start searching selected text using KDE Database Search Engine.
Start searching selected text using file defined by user.
Start searching selected text using compendium file with all language translated messages.
Allow you to edit content of current dictionary. Usefull if you found errors in dictionary and want to not be bored by errors when searching and replacing strings. (Not implemented yet)
Bring up spell check configuration dialog. After you select desired options hit OK and the normal spell checking dialog will appear.
Start spell checking all words for opened PO file.
Start spell checking from current cursor position.
Spell check only current entry from PO-file.
Spell check only selected text in MsgStr editbox.
Check syntax for current PO-file. Errors may appear from CVS merging or users mistakes when translating process is made by hand.
Check if number of arguments, types ans order is same in strings C-format like.
Check if number of accelerator characters is same both in original and translated text.
Check if PO file contain context information translated by mistake.
Check if left side from translated string is same with left side from original string. Sides are delimited by equal sign character.
Open Catalog Manager window. Read Catalog Manager section for more details.
When checked, standard toolbar is displayed.
When checked, bottom statusbar is displayed.
When checked, navigationbar is displayed.
When checked, upper right part of main window which contain current entry comments will be displayed.
When checked, bottom right part of main window which contain search results through dictionary will be displayed.
Open configure dialog for keys bindings to actions. This will let you to customize default key bindings to suite your needs.
Standard toolbars configuration dialog will open. You can choose which actions will go in toolbars and what toolbar you customize.
All KBabel specific settings go here. Please read Preferences section for specific topics.
Open dialog for KDE Database Search Engine configuration.
Open dialog for PO auxiliary file configuration.
Open dialog for PO compendium file configuration.
Open the KBabel handbook. It's what you read now.
Cursor change to arrow with question mark and you can click with it on various elements on main window. A quick help window will open.
Open the gettext manual page in KDE Help Center. This package of tools help in process of POT and PO files handling.
This will open KDE standard error reporting dialog. It's useful if you experience abnormal behavior of KBabel. KBabel developer will be glad to receive any comments, wishes and bug reports.
Open message box which inform you about KBabel's version, developer name and e-mail address.
Open message box which inform you about KDE project, contact information and how you can report bugs and whishes.
Show up an message box with information about people who made KDE Database Search Engine.
Show up an message box with information about people who made searching in auxiliary file.
Show up an message box with information about people who made searching in compendium file.
Load PO-file in KBabel for editing.
Save current PO-file if it's modified.
Undo last operation.
Redo last operation.
Cut selected text and move it in clipboard.
Copy selected text in clipboard.
Paste text from clipboard at current cursor position.
Find specified string in current PO-file.
Skip to previous entry in PO-file.
Skip to next entry in PO-file.
Copy original string to translated string edit box.
Drop down toolbar for searching selected text using: KDE Database Search Engine, PO auxiliary file, PO compendium file and others dictionary plugins if available.
Stop current searching in progress.
Open Catalog Manager window.
Skip to previous entry in PO-file.
Skip to next entry in PO-file.
Jump to first entry in PO-file.
Jump to last entry in PO-file.
Jump to previous fuzzy or untranslated entry in PO-file.
Jump to next fuzzy or untranslated entry in PO-file.
Jump to previous fuzzy entry in PO-file.
Jump to next fuzzy entry in PO-file.
Jump to previous untranslated entry in PO-file.
Jump to next untranslated entry in PO-file.
Jump to previous error in PO-file.
Jump to next error in PO-file.
Jump to last visited entry in PO-file.
Jump to previous visited entry in PO-file.
Current message in edited PO-file.
Total number of messages in PO-file.
Number of messages marked as fuzzy. They should be revised and translated if needed.
Number of yet untranslated messages.
INS - insert, and OVR - overwrite. Same meaning like in every ordinary text editor.
RO - read-only file, RW - read-write access on file. When file is read-only you cannot modify entries in editor.
Usualy, this bar is hidden. It is displayed only when saving is done or you search messages in PO-file, compendium or else.
is a KBabel specific issue. It is an option for user to setup one PO-file where searching is for original messages. That, if you're a member of French team and have some Spanish or Italian knowledge, you can grab and setup an auxiliary Spanish PO-file associated with your in-translation file. That, you can find yet unthinked synonimes.
is a collection of all translations for one language. This big PO-file is made by unique messages from all applications PO-files. It can be used to fill in all already translated strings into new yet untranslated or partially translated PO-file. KBabel use such file in “PO Compendium” search engine.
is the operation by which an application is made aware and able to support multiple languages. The “internationalization” word have 20 characters and is quite a long word. To short it, people started to write only the first and last characters and between them write the number of intermediate characters (18).
See Also Localization.
is the operation by which an application already internationalized is made to process input and output in a fashion desired by some cultural and language habits. The “localization” word have 12 characters and is a long word. For convenience, people started to write only the first and last characters and between them write the number of intermediate characters (10).
See Also Internationalization.
MO means Machine Object and this file contain binary data suitable for reading by computers. MO-file content is organized as a database to minimize lookup time for translated strings. MO-files are obtained by compiling PO-files with msgfmt.
msgid is the keyword which introduce the original string in PO file. It is followed by C-like string that span on one or multiple lines.
See Also Message String.
msgstr is the keyword which introduce the translated string in PO file. It is followed by C-like string that span on one or multiple lines.
See Also Message ID.
PO means Portable Object and PO files contain sets of strings which associate each translatable string with its translation in a particular language. A single PO-file relate only to one language. PO-file is derived from an POT-file and is meant to be edited by humans.
POT means Portable Object Template. This file is build by extracting translatable strings from application source files. POT-file does not contain translations and is used by each translator as template.
KBabel
Program copyright 1999-2000 Matthias Kiefer <matthias.kiefer@gmx.de>
Contributors:
Thomas Diehl <thd@kde.org>
Stephan Kulow <coolo@kde.org>
Documentation copyright 2000 Claudiu Costin <claudiuc@geocities.com> and Matthias Kiefer <matthias.kiefer@gmx.de>
This program is licensed under the terms of the GNU GPL.
KBabel is part of the KDE project http://www.kde.org. KBabel can be found in the kdesdk package on ftp://ftp.kde.org/pub/kde/, the main ftp site of the KDE project.
In order to successfully use KBabel, you need a current snapshot of KDE 2.x series.
All required libraries as well as KBabel itself can be found on ftp://ftp.kde.org/pub/kde/.
In order to compile and install KBabel on your system, type the following in the base directory of the kdesdk distribution:
% ./configure % make % make install
Since KBabel uses autoconf and automake you should have not trouble compiling it. Along with KBabel you will have installed rest of tools from kdesdk package. Should you run into problems please report them to the author Matthias Kiefer <matthias.kiefer@gmx.de>