|
|
Line 1: |
Line 1: |
| KAider is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). KAider implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI). | | KAider is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). KAider implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI). |
| See [[Projects/Summer_of_Code/2007/Projects/KAider/Introduction|KAider/Introduction]] | | See [[Projects/Summer_of_Code/2007/Projects/KAider/Introduction|KAider/Introduction]] |
| + | |
| + | ''' WARNING ''' KAider was renamed to loKalize and will bi included in kdesdk package for KDE 4.1 |
| | | |
| ==Current state== | | ==Current state== |
Line 21: |
Line 23: |
| ==Compiling== | | ==Compiling== |
| After you [[Getting_Started/Build/KDE4|set kde env up]] (compiling kdelibs is enough): | | After you [[Getting_Started/Build/KDE4|set kde env up]] (compiling kdelibs is enough): |
− | svn checkout svn://anonsvn.kde.org/home/kde/trunk/extragear/sdk/ | + | svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk/ |
− | cd sdk | + | svn up cmake doc lokalize |
| + | mkdir kdesdk/build && chmod a+w kdesdk/build |
| su kde-devel | | su kde-devel |
− | mkdir sdk/kaider/build
| + | cd kdesdk/build |
− | cd sdk/kaider/build | + | |
| cmakekde .. | | cmakekde .. |
| | | |
| as a root, run sshd and then from the usual shell: | | as a root, run sshd and then from the usual shell: |
| ssh -XC kde-devel@localhost | | ssh -XC kde-devel@localhost |
− | kaider | + | lokalize |
| | | |
| you can get catalogmanager by specifying --project option | | you can get catalogmanager by specifying --project option |
− | kaider --project /path/to/index.ktp | + | lokalize --project /path/to/index.ktp |
| | | |
− | See http://websvn.kde.org/trunk/l10n-kde4/ru/ | + | See [[Projects/Summer_of_Code/2007/Projects/KAider#Setup]]. |
| | | |
| ==Maxims== | | ==Maxims== |
| * Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse) | | * Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse) |
| * Do automatization _everywhere_ it possible | | * Do automatization _everywhere_ it possible |
− | * Focus on quality. This is open source -- so source code is available (for change) | + | * Focus on translation quality. This is open source -- so source code is available (for change) |
| | | |
| ==Further work== | | ==Further work== |
Revision as of 12:46, 26 January 2008
KAider is a computer-aided translation system that focuses on productivity and performance. Translator does only creative work (of delivering message in his/her mother language in laconic and easy to understand form). KAider implies paragraph-by-paragraph translation approach (when translating documentation) and message-by-message approach (when translating GUI).
See KAider/Introduction
WARNING KAider was renamed to loKalize and will bi included in kdesdk package for KDE 4.1
Current state
Already has:
- syntax highlighting
- spellcheck (sonnet needs improvement)
- search-n-replace, ignoring accel marks
- formats .po file output better so less diff is generated by scripty
- small features like quick tag insert, placing text cursor right after the tag in the beginning (e.g. '<qt>|foobar</qt>' where "|" is a cursor), entry bookmarks
- viewer of the difference between current msgid and previous one (i.e. msgid translation of which current msgstr really is -- for fuzzies generated with --previous gettext option)
- merge mode for editors (QA) or when several translators work on the same file screenshot
- basic projectmanager functionality screenshot
- Translation Memory (threaded) with shortcuts for inserting suggestions into current 'msgstr', scores are computed based on common/total length ratio, removed+added length, and count of removed+added parts screenshot
- for difference representation in all places word-by-word algorithm is used (based on the Longest Common Sequence o(n*n) algorithm and my own experience)
- glossary with basic tbx format support. KAider displays relevant entries on-the-fly and provides shortcuts to insert them. also, you can add new glossary terms via context menu of the glossary. screenshot 1 screenshot 2
- webquery view, flexible thanks to kross
- Search/Replace functions in multiple files at once.
- Spellchecking of multiple files at once.
Compiling
After you set kde env up (compiling kdelibs is enough):
svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk/
svn up cmake doc lokalize
mkdir kdesdk/build && chmod a+w kdesdk/build
su kde-devel
cd kdesdk/build
cmakekde ..
as a root, run sshd and then from the usual shell:
ssh -XC kde-devel@localhost
lokalize
you can get catalogmanager by specifying --project option
lokalize --project /path/to/index.ktp
See Projects/Summer_of_Code/2007/Projects/KAider#Setup.
Maxims
- Majority of actions must be accessible via keyboard (because it is faster to press a shotcut than to be frustrated with a mouse)
- Do automatization _everywhere_ it possible
- Focus on translation quality. This is open source -- so source code is available (for change)
Further work
- dbus
- WebQuery for twin languages (like Ukrainian and Russian)
- xliff+qt-linguist support (see KBabel features to be implemented)
- Glossary checklists: check for forbidden terms in new translation
- project-wise and program-wise: webquery scripts, glossaries, TMs
- check for different translations of the same msgid (use strigi?)
- back-checking, to see whether a term/string in the target language has been used as translation for different things, not just that one source has the same translation everywhere.
- Tighten SVN support: svn diff-like feature
- Automatic Glossary building
- Research on dividing into sentences rules (e.g. srx)
- Automate submitting translation suggestions to translate.google.com [Kross action]
- [Kross (project) action] that merges translations with updated template
- fill TM with content of /usr/share/locale/<lang>/LC_MESSAGES/*.mo [Kross action]
Not for KDE:
- Be complete computer-aided translation system by providing e.g. actions to import+export openoffice, txt and documents of other formats by calling appropriate scripts/commands. Define for that general kross actions interface.
- Make nice windoze package for the windowzerz
Competitors (ideas):
Converters (use, acting as a front-end):
KBabel features to be implemented
...in a smarter way :)
- persistent bookmarks for messages in a file saved in the project
- extended marking of .po and .pot files (e.g. translator that currently works on the file and cince when) saved in the project
- Opening source code by references in message comments [Kross action]
- A plugin framework for validation tools for consistency checks [Kross action triggered on saving]
- Sending the file using email [Kross (project) action]
- Automatic syntax check with msgfmt when saving and, if an error occured, easy navigation to messages, which contain errors. == Syntax check (msgfmt --statistics) for existing files to control if the translated files will compile and, accordingly, work when distributed [Kross (project) action]
- CVS and SVN support [Kross project action] (is 'svn ci' so hard?)
- statistics
- PO File Header change [Kross action (+triggered on saving)]
- Printing of selected messages (eg fuzzy ) [Kross action]
Also:
- msgid-diff-msgstr from [2] (features for all other commands are already implemented, if you haven't noticed this)
KBabel features NOT to be implemented
- Character selection tool integration, sort by the frequency
Why? Better improve system-wide charselect tool, OR...
modify your xorg keyboard layout!
Setup
- Create project, saving *.ktp file to l10n-kde4/<LangCode>
- Populate Glossary via GlossaryView context menu (.tbx file will be created automatically for you on the first entry addition).
- Populate Translation Memory by dropping .po files onto TM View
See [3]
Content is available under
Creative Commons License SA 4.0 unless otherwise noted.