<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.codeblocks.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Heromyth</id>
	<title>Code::Blocks - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.codeblocks.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Heromyth"/>
	<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php/Special:Contributions/Heromyth"/>
	<updated>2026-05-28T02:05:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.0</generator>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=6033</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=6033"/>
		<updated>2009-08-08T03:36:20Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is at:&lt;br /&gt;
&lt;br /&gt;
https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
http://www.dlang.net/dl/codeblocks.pot&lt;br /&gt;
&lt;br /&gt;
http://www.dlang.net/dl/plugins.pot&lt;br /&gt;
&lt;br /&gt;
More information can be seen at: /index.php/topic,10204.msg70638.html.&lt;br /&gt;
 &lt;br /&gt;
Of course, you can run intl.bat to generate the POT file.&lt;br /&gt;
The tool wxrc.exe's url is http://www.dlang.net/dl/wxrc.exe.&lt;br /&gt;
&lt;br /&gt;
The content of '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\projectsimporter\resources\*.xrc -g -o  plugins\projectsimporter\projectsimporter-xrc.cpp&lt;br /&gt;
 wxrc plugins\projectsimporter\resources\*.xrc -g -o  plugins\projectsimporter\projectsimporter-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\headerguard\*.cpp plugins\headerguard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\loghacker\*.cpp plugins\loghacker\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\modpoller\*.cpp plugins\modpoller\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\openfileslist\*.cpp plugins\openfileslist\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\projectsimporter\*.cpp plugins\projectsimporter\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\tidycmt\*.cpp plugins\tidycmt\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
The content of '''intl-plugin.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl-plugin.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc plugins\contrib\devpak_plugin\*.xrc -g -o  plugins\contrib\devpak_plugin\plugin-xrc.cpp&lt;br /&gt;
 wxrc plugins\contrib\envvars\*.xrc -g -o  plugins\contrib\envvars\plugin-xrc.cpp&lt;br /&gt;
 wxrc plugins\contrib\help_plugin\*.xrc -g -o  plugins\contrib\help_plugin\plugin-xrc.cpp&lt;br /&gt;
 wxrc plugins\contrib\IncrementalSearch\*.xrc -g -o  plugins\contrib\IncrementalSearch\plugin-xrc.cpp&lt;br /&gt;
 wxrc plugins\contrib\regex_testbed\*.xrc -g -o  plugins\contrib\regex_testbed\plugin-xrc.cpp&lt;br /&gt;
 wxrc plugins\contrib\codestat\resources\*.xrc -g -o  plugins\contrib\codestat\plugin-xrc.cpp&lt;br /&gt;
 wxrc plugins\contrib\profiler\resources\*.xrc -g -o  plugins\contrib\profiler\plugin-xrc.cpp&lt;br /&gt;
 wxrc plugins\contrib\symtab\resources\*.xrc -g -o  plugins\contrib\symtab\plugin-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\plugins.pot plugins\contrib\AutoVersioning\*.h plugins\contrib\AutoVersioning\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\plugins.pot plugins\contrib\BrowseTracker\*.h plugins\contrib\BrowseTracker\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\byogames\*.h plugins\contrib\byogames\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\cb_koders\*.h plugins\contrib\cb_koders\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\codesnippets\*.h plugins\contrib\codesnippets\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\codestat\*.h plugins\contrib\codestat\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\copystrings\*.h plugins\contrib\copystrings\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\devpak_plugin\*.h plugins\contrib\devpak_plugin\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\dragscroll\*.h plugins\contrib\dragscroll\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\envvars\*.h plugins\contrib\envvars\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\headerfixup\*.h plugins\contrib\headerfixup\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\help_plugin\*.h plugins\contrib\help_plugin\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\HexEditor\*.h plugins\contrib\HexEditor\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\IncrementalSearch\*.h plugins\contrib\IncrementalSearch\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\keybinder\*.h plugins\contrib\keybinder\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\lib_finder\*.h plugins\contrib\lib_finder\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\profiler\*.h plugins\contrib\profiler\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\regex_testbed\*.h plugins\contrib\regex_testbed\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\rndgen\*.h plugins\contrib\rndgen\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\source_exporter\*.h plugins\contrib\source_exporter\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\symtab\*.h plugins\contrib\symtab\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\ThreadSearch\*.h plugins\contrib\ThreadSearch\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\Valgrind\*.h plugins\contrib\Valgrind\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\properties\*.h plugins\contrib\wxSmith\properties\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\propgrid\contrib\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\propgrid\contrib\src\propgrid\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\wxwidgets\*.h plugins\contrib\wxSmith\wxwidgets\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\wxwidgets\defitems\*.h plugins\contrib\wxSmith\wxwidgets\defitems\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\wxwidgets\properties\*.h plugins\contrib\wxSmith\wxwidgets\properties\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\*.cpp plugins\contrib\wxSmithAui\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\wxAuiManager\*.cpp plugins\contrib\wxSmithAui\wxAuiManager\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\wxAuiNotebook\*.cpp plugins\contrib\wxSmithAui\wxAuiNotebook\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\wxAuiToolBar\*.cpp plugins\contrib\wxSmithAui\wxAuiToolBar\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\*.h plugins\contrib\wxSmithContribItems\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxchart\wxchart-1.0\src\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxchart\wxchart-1.0\include\wx\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxflatnotebook\*.h plugins\contrib\wxSmithContribItems\wxflatnotebook\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxthings\*.h plugins\contrib\wxSmithContribItems\wxthings\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxthings\wxthings\include\wx\things\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxthings\wxthings\src\*.cpp&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl-plugin.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
Of course, you can do the translation at [https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks https://translations.launchpad.net].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=6032</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=6032"/>
		<updated>2009-08-08T03:35:28Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is at:&lt;br /&gt;
&lt;br /&gt;
https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
http://www.dlang.net/dl/codeblocks.pot&lt;br /&gt;
&lt;br /&gt;
http://www.dlang.net/dl/plugins.pot&lt;br /&gt;
&lt;br /&gt;
More information can be seen at: /index.php/topic,10204.msg70638.html.&lt;br /&gt;
 &lt;br /&gt;
Of course, you can run intl.bat to generate the POT file.&lt;br /&gt;
The tool wxrc.exe's url is http://www.dlang.net/dl/wxrc.exe.&lt;br /&gt;
&lt;br /&gt;
The content of '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\projectsimporter\resources\*.xrc -g -o  plugins\projectsimporter\projectsimporter-xrc.cpp&lt;br /&gt;
 wxrc plugins\projectsimporter\resources\*.xrc -g -o  plugins\projectsimporter\projectsimporter-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\headerguard\*.cpp plugins\headerguard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\loghacker\*.cpp plugins\loghacker\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\modpoller\*.cpp plugins\modpoller\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\openfileslist\*.cpp plugins\openfileslist\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\projectsimporter\*.cpp plugins\projectsimporter\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\tidycmt\*.cpp plugins\tidycmt\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
The content of '''intl-plugin.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl-plugin.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
    wxrc plugins\contrib\devpak_plugin\*.xrc -g -o  plugins\contrib\devpak_plugin\plugin-xrc.cpp&lt;br /&gt;
    wxrc plugins\contrib\envvars\*.xrc -g -o  plugins\contrib\envvars\plugin-xrc.cpp&lt;br /&gt;
    wxrc plugins\contrib\help_plugin\*.xrc -g -o  plugins\contrib\help_plugin\plugin-xrc.cpp&lt;br /&gt;
    wxrc plugins\contrib\IncrementalSearch\*.xrc -g -o  plugins\contrib\IncrementalSearch\plugin-xrc.cpp&lt;br /&gt;
    wxrc plugins\contrib\regex_testbed\*.xrc -g -o  plugins\contrib\regex_testbed\plugin-xrc.cpp&lt;br /&gt;
    wxrc plugins\contrib\codestat\resources\*.xrc -g -o  plugins\contrib\codestat\plugin-xrc.cpp&lt;br /&gt;
    wxrc plugins\contrib\profiler\resources\*.xrc -g -o  plugins\contrib\profiler\plugin-xrc.cpp&lt;br /&gt;
    wxrc plugins\contrib\symtab\resources\*.xrc -g -o  plugins\contrib\symtab\plugin-xrc.cpp&lt;br /&gt;
    if not exist po md po&lt;br /&gt;
    xgettext -C -n -k_ -o po\plugins.pot plugins\contrib\AutoVersioning\*.h plugins\contrib\AutoVersioning\*.cpp&lt;br /&gt;
    xgettext -C -n -k_ -j --from-code=UTF-8 -o po\plugins.pot plugins\contrib\BrowseTracker\*.h plugins\contrib\BrowseTracker\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\byogames\*.h plugins\contrib\byogames\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\cb_koders\*.h plugins\contrib\cb_koders\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\codesnippets\*.h plugins\contrib\codesnippets\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\codestat\*.h plugins\contrib\codestat\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\copystrings\*.h plugins\contrib\copystrings\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\devpak_plugin\*.h plugins\contrib\devpak_plugin\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\dragscroll\*.h plugins\contrib\dragscroll\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\envvars\*.h plugins\contrib\envvars\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\headerfixup\*.h plugins\contrib\headerfixup\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\help_plugin\*.h plugins\contrib\help_plugin\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\HexEditor\*.h plugins\contrib\HexEditor\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\IncrementalSearch\*.h plugins\contrib\IncrementalSearch\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\keybinder\*.h plugins\contrib\keybinder\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\lib_finder\*.h plugins\contrib\lib_finder\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\profiler\*.h plugins\contrib\profiler\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\regex_testbed\*.h plugins\contrib\regex_testbed\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\rndgen\*.h plugins\contrib\rndgen\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\source_exporter\*.h plugins\contrib\source_exporter\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\symtab\*.h plugins\contrib\symtab\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\ThreadSearch\*.h plugins\contrib\ThreadSearch\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\Valgrind\*.h plugins\contrib\Valgrind\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\properties\*.h plugins\contrib\wxSmith\properties\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\propgrid\contrib\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\propgrid\contrib\src\propgrid\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\wxwidgets\*.h plugins\contrib\wxSmith\wxwidgets\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\wxwidgets\defitems\*.h plugins\contrib\wxSmith\wxwidgets\defitems\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmith\wxwidgets\properties\*.h plugins\contrib\wxSmith\wxwidgets\properties\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\*.cpp plugins\contrib\wxSmithAui\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\wxAuiManager\*.cpp plugins\contrib\wxSmithAui\wxAuiManager\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\wxAuiNotebook\*.cpp plugins\contrib\wxSmithAui\wxAuiNotebook\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithAui\wxAuiToolBar\*.cpp plugins\contrib\wxSmithAui\wxAuiToolBar\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\*.h plugins\contrib\wxSmithContribItems\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxchart\wxchart-1.0\src\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxchart\wxchart-1.0\include\wx\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxflatnotebook\*.h plugins\contrib\wxSmithContribItems\wxflatnotebook\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxthings\*.h plugins\contrib\wxSmithContribItems\wxthings\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxthings\wxthings\include\wx\things\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\plugins.pot plugins\contrib\wxSmithContribItems\wxthings\wxthings\src\*.cpp&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl-plugin.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
Of course, you can do the translation at [https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks https://translations.launchpad.net].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=6031</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=6031"/>
		<updated>2009-08-08T03:24:27Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Troubleshooting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is at:&lt;br /&gt;
&lt;br /&gt;
https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks&lt;br /&gt;
or&lt;br /&gt;
http://www.dlang.net/dl/codeblocks.pot&lt;br /&gt;
 &lt;br /&gt;
Of course, you can run intl.bat to generate the POT file.&lt;br /&gt;
The tool wxrc.exe's url is http://www.dlang.net/dl/wxrc.exe.&lt;br /&gt;
&lt;br /&gt;
The content of '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
Of course, you can do the translation at [https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks https://translations.launchpad.net].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5860</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5860"/>
		<updated>2009-03-03T16:46:08Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is at:&lt;br /&gt;
&lt;br /&gt;
https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks&lt;br /&gt;
or&lt;br /&gt;
http://www.dlang.net/dl/codeblocks.pot&lt;br /&gt;
 &lt;br /&gt;
Of course, you can run intl.bat to generate the POT file.&lt;br /&gt;
The tool wxrc.exe's url is http://www.dlang.net/dl/wxrc.exe.&lt;br /&gt;
&lt;br /&gt;
The content of '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
Of course, you can do the translation at [https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks https://translations.launchpad.net].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5859</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5859"/>
		<updated>2009-03-03T16:39:45Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is at:&lt;br /&gt;
&lt;br /&gt;
https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks&lt;br /&gt;
or&lt;br /&gt;
http://www.dlang.net/dl/codeblocks.pot&lt;br /&gt;
 &lt;br /&gt;
Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
Of course, you can do the translation at [https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks https://translations.launchpad.net].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5854</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5854"/>
		<updated>2009-03-02T14:59:43Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is at:&lt;br /&gt;
&lt;br /&gt;
https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks&lt;br /&gt;
 &lt;br /&gt;
Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
Of course, you can do the translation at [https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks https://translations.launchpad.net].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5853</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5853"/>
		<updated>2009-03-02T14:58:07Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* The tools for translation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
Of course, you can do the translation at [https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks https://translations.launchpad.net].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5852</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=5852"/>
		<updated>2009-03-02T14:25:50Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j --from-code=UTF-8 -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4679</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4679"/>
		<updated>2007-05-23T14:25:15Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The url of the english POT file is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 rem .&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp include\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4678</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4678"/>
		<updated>2007-05-23T14:23:52Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Translating in poEdit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file url is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 rem .&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp include\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating with poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time.&lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4677</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4677"/>
		<updated>2007-05-23T14:20:49Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* The translation tool */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file url is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 rem .&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp include\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The tools for translation ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating in poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4676</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4676"/>
		<updated>2007-05-23T14:19:52Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Create and use the .mo file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file url is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 rem .&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp include\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The translation tool ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating in poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4675</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=4675"/>
		<updated>2007-05-23T14:16:48Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file url is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 rem .&lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot include\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp include\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\src\wxFlatNotebook\*.cpp include\wxFlatNotebook\include\wx\wxFlatNotebook\*h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp include\scripting\bindings\*.h&lt;br /&gt;
 rem .&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h plugins\scriptedwizard\resources\*.script &lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The translation tool ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.net/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating in poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3669</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3669"/>
		<updated>2006-07-26T02:39:28Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Let Code::Blocks support your language */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file url is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 &lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 &lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp sdk\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 &lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The translation tool ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.org/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating in poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file '''\codeblocks\src\src\appglobals.cpp'''. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3668</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3668"/>
		<updated>2006-07-26T02:38:12Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Let Code::Blocks support your language */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file url is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 &lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 &lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp sdk\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 &lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The translation tool ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.org/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating in poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file \codeblocks\src\src\appglobals.cpp. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
 const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
 const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3667</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3667"/>
		<updated>2006-07-26T02:36:04Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Get the English POT file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
[[Category:Developer Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
== Get the English POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file url is:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (see belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is below:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
 wxrc plugins\autosave\*.xrc -g -o  plugins\autosave\autosave-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\plugins\*.xrc -g -o  plugins\scriptedwizard\resources\plugins\scriptedwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\scriptedwizard\resources\wxwidgets\*.xrc -g -o  plugins\scriptedwizard\resources\wxwidgets\wxwidgets-xrc.cpp&lt;br /&gt;
 &lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 &lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\scripting\bindings\*.cpp sdk\scripting\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\autosave\*.cpp plugins\autosave\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\*.cpp plugins\scriptedwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\plugins\templates\*.cpp plugins\scriptedwizard\resources\plugins\templates\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\scriptedwizard\resources\wxwidgets\common\*.cpp plugins\scriptedwizard\resources\wxwidgets\common\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 &lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== The translation tool ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded [http://www.poedit.org/download.php here].&lt;br /&gt;
&lt;br /&gt;
== Translating in poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If Code::Blocks is compiled with Unicode, the charset should be set to utf-8; If Code::Blocks is compiled with ANSI, the charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
== Create and use the .mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization using wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
== Let Code::Blocks support your language ==&lt;br /&gt;
&lt;br /&gt;
If you want Code::Blocks to support your language, you must modify the file \codeblocks\src\src\appglobals.cpp. In it, you can search for the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
    const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
    const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3631</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3631"/>
		<updated>2006-07-13T13:20:26Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
'''1. Get the English POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp &lt;br /&gt;
 &lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 &lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 &lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Get the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C::B is compiled with UNICODE, the Charset should be set to utf-8; If C::B is compiled with ANSI, the Charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Create and use the .mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization of wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
'''5. Let C::B support your language'''&lt;br /&gt;
&lt;br /&gt;
If wanting CB to support your language, you must modify the file \codeblocks\src\src\appglobals.cpp. In it, you can search the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
&lt;br /&gt;
    const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
    const int locales[LANGUAGES_SIZE]&lt;br /&gt;
&lt;br /&gt;
'''6. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3628</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3628"/>
		<updated>2006-07-13T13:17:32Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
'''1. Get the English POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp &lt;br /&gt;
 &lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 &lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 &lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Get the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C::B is compiled with UNICODE, the Charset should be set to utf-8; If C::B is compiled with ANSI, the Charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Create and use the .mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization of wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
'''5. Let C::B support your language'''&lt;br /&gt;
If wanting CB to support your language, you must modify the file \codeblocks\src\src\appglobals.cpp. In it, you can search the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
'''const wxString langs[LANGUAGES_SIZE]'''&lt;br /&gt;
'''const int locales[LANGUAGES_SIZE]'''&lt;br /&gt;
&lt;br /&gt;
'''6. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3627</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3627"/>
		<updated>2006-07-13T13:16:24Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
'''1. Get the English POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp &lt;br /&gt;
 &lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 &lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 &lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Get the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C::B is compiled with UNICODE, the Charset should be set to utf-8; If C::B is compiled with ANSI, the Charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Create and use the .mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization of wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
'''5. Let C::B support your language'''&lt;br /&gt;
If wanting CB to support your language, you must modify the file \codeblocks\src\src\appglobals.cpp. In it, you can search the word 'Chinese' to see the example. There are two vars about it:&lt;br /&gt;
'''const wxString langs[LANGUAGES_SIZE]&lt;br /&gt;
const int locales[LANGUAGES_SIZE]'''&lt;br /&gt;
&lt;br /&gt;
'''6. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3625</id>
		<title>Internationalization</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Internationalization&amp;diff=3625"/>
		<updated>2006-07-13T12:46:33Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
'''1. Get the English POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file periodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
 rem ======= Begin of intl.bat =======&lt;br /&gt;
 &lt;br /&gt;
 @echo off&lt;br /&gt;
 wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
 wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
 wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
 wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
 wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
 wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
 wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
 wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
 wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp &lt;br /&gt;
 &lt;br /&gt;
 if not exist po md po&lt;br /&gt;
 &lt;br /&gt;
 xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
 rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
 xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
 pause&lt;br /&gt;
 &lt;br /&gt;
 rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Get the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the poEdit tool which can be downloaded at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Use poEdit to open the file codeblocks.po. Change a few settings like:&lt;br /&gt;
&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C::B is compiled with UNICODE, the Charset should be set to utf-8; If C::B is compiled with ANSI, the Charset should be set to your own language charset like gb2312, koi8-r etc.&lt;br /&gt;
&lt;br /&gt;
After these settings are done, you can start translating. Don't be fooled, it's a hard work! During the process, of course, you can use your translation at any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Create and use the .mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is what we need. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;\LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C::B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If you want to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about internationalization of wxWidgets can be found in the wxWidgets docs.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If you have any questions, you can send me a mail: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2997</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2997"/>
		<updated>2006-06-07T02:44:02Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
Details about Internationalization of wxWidget can be seen from wxWidget's docment.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2996</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2996"/>
		<updated>2006-06-07T02:35:51Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2995</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2995"/>
		<updated>2006-06-07T02:33:45Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2994</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2994"/>
		<updated>2006-06-07T02:33:21Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
 &lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2993</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2993"/>
		<updated>2006-06-07T02:33:02Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358.&lt;br /&gt;
 &lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2992</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2992"/>
		<updated>2006-06-07T02:32:40Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358. &lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2991</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2991"/>
		<updated>2006-06-07T02:31:15Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2990</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2990"/>
		<updated>2006-06-07T02:30:47Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1. Getting english POT file'''&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
'''2. Getting the translating tool'''&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
'''3. Translating in poEdit'''&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
'''4. Geting and using mo file'''&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
'''5. Troubleshooting'''&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2989</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2989"/>
		<updated>2006-06-07T02:24:25Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Internationalization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;br /&gt;
This article is about how to realize and use localized C:B. All the works have been done under Windows XP SP2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1. Getting english POT file ==&lt;br /&gt;
&lt;br /&gt;
The english POT file's url is here:&lt;br /&gt;
https://developer.berlios.de/patch/?func=detailpatch&amp;amp;patch_id=822&amp;amp;group_id=5358&lt;br /&gt;
I will update this file aperiodically. Of course, you can use the tool which I have created (seen belown) to generate the POT file.&lt;br /&gt;
&lt;br /&gt;
The content of the tool which is named as '''intl.bat''' is belown:&lt;br /&gt;
&lt;br /&gt;
rem ======= Begin of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
@echo off&lt;br /&gt;
&lt;br /&gt;
wxrc src\resources\*.xrc -g -o  src\src-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc sdk\resources\*.xrc -g -o  sdk\sdk-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\astyle\resources\*.xrc -g -o  plugins\astyle\astyle-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\classwizard\resources\*.xrc -g -o  plugins\classwizard\classwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\codecompletion\resources\*.xrc -g -o  plugins\codecompletion\codecompletion-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\compilergcc\resources\*.xrc -g -o  plugins\compilergcc\compilergcc-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\debuggergdb\resources\*.xrc -g -o  plugins\debuggergdb\debuggergdb-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\defaultmimehandler\resources\*.xrc -g -o  plugins\defaultmimehandler\defaultmimehandler-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\pluginwizard\resources\*.xrc -g -o  plugins\pluginwizard\pluginwizard-xrc.cpp&lt;br /&gt;
&lt;br /&gt;
wxrc plugins\todo\resources\*.xrc -g -o  plugins\todo\todo-xrc.cpp&lt;br /&gt;
if not exist po md po&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -o po\codeblocks.pot src\*.cpp src\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot src\wxAUI\*.cpp src\wxAUI\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\*.cpp sdk\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\bindings\*.cpp sdk\as\bindings\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\propgrid\src\propgrid\*.cpp sdk\propgrid\include\wx\propgrid\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxFlatNotebook\*.cpp&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\include\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\as\source\*.cpp sdk\as\source\*.h&lt;br /&gt;
&lt;br /&gt;
rem xgettext -C -n -k_ -j -o po\codeblocks.pot sdk\wxscintilla\*.cpp sdk\wxscintilla\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\parser\*.cpp plugins\codecompletion\parser\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\*.cpp plugins\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\astyle\astyle\*.cpp plugins\astyle\astyle\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\classwizard\*.cpp plugins\classwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\codecompletion\*.cpp plugins\codecompletion\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\compilergcc\*.cpp plugins\compilergcc\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\debuggergdb\*.cpp plugins\debuggergdb\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\defaultmimehandler\*.cpp plugins\defaultmimehandler\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\pluginwizard\*.cpp plugins\pluginwizard\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\todo\*.cpp plugins\todo\*.h&lt;br /&gt;
&lt;br /&gt;
xgettext -C -n -k_ -j -o po\codeblocks.pot plugins\xpmanifest\*.cpp plugins\xpmanifest\*.h&lt;br /&gt;
&lt;br /&gt;
pause&lt;br /&gt;
&lt;br /&gt;
rem ======= End of intl.bat =======&lt;br /&gt;
&lt;br /&gt;
== 2. Getting the translating tool ==&lt;br /&gt;
&lt;br /&gt;
Usually, we use the tool of poEdit which can be down at http://www.poedit.org/download.php.&lt;br /&gt;
&lt;br /&gt;
== 3. Translating in poEdit ==&lt;br /&gt;
&lt;br /&gt;
Rename codeblocks.pot into codeblocks.po. Using poEdit to open the file codeblocks.po. Remebering to change some settings &lt;br /&gt;
&lt;br /&gt;
like:&lt;br /&gt;
[File]-&amp;gt;[Preferences]-&amp;gt;[Personalize]&lt;br /&gt;
&lt;br /&gt;
[Catalog]-&amp;gt;[Settings]-&amp;gt;[Project info]-&amp;gt;[Team/email/Language/Charset]&lt;br /&gt;
&lt;br /&gt;
If your C:B is compiled with UNICODE, the Charset should be setted to utf-8; If C:B is compiled with ANSI, the Charset should be setted to your own language charset like gb2312,koi8-r etc..&lt;br /&gt;
&lt;br /&gt;
After these settings done, you can start the translating. It's a hard working! During the process, of course, you can use your translations an any time. &lt;br /&gt;
&lt;br /&gt;
== 4. Geting and using mo file ==&lt;br /&gt;
&lt;br /&gt;
Pressing Ctrl+S in poEdit, you can get a *.mo file like codeblocks.mo which is needed by we. To use codeblocks.mo, we just place it into C:\Program Files\CodeBlocks or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;/LC_MESSAGES or C:\Program Files\CodeBlocks\share\CodeBlocks\locale\&amp;lt;lang&amp;gt;. My language is Chinese and I have installed C:B into E:\, so I place codeblocks.mo into E:\Program Files\CodeBlocks\share\CodeBlocks\locale\zh_CN.&lt;br /&gt;
&lt;br /&gt;
If wanting to use codeblocks.mo under Linux or Unix, you just place it into /usr/X11R6/share/locale/&amp;lt;lang&amp;gt;/LC_MESSAGES/. For example, I put it into /usr/X11R6/share/locale/zh_CN/LC_MESSAGES/ under FreeBSD.&lt;br /&gt;
&lt;br /&gt;
== 5. Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
If having any questions, you can mail to me: zxpmyth at yahoo.com.cn.&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2988</id>
		<title>Tips'n'Tricks</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Tips%27n%27Tricks&amp;diff=2988"/>
		<updated>2006-06-07T02:03:31Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Code::Blocks Documentation]]&lt;br /&gt;
====[[Personalities]]====	&lt;br /&gt;
====[[Running under colinux]]====&lt;br /&gt;
====[[Internationalization]]====&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_FreeBSD&amp;diff=1248</id>
		<title>Installing Code::Blocks from source on FreeBSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_FreeBSD&amp;diff=1248"/>
		<updated>2005-11-30T10:03:04Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Install from Source Package */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Install from Source Package ==&lt;br /&gt;
At first we need to install gnu-make:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r gmake&lt;br /&gt;
&lt;br /&gt;
then wx-gtk:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r wxgtk2-contrib&lt;br /&gt;
&lt;br /&gt;
then dosunix wich converts files from dos to unix format:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r dosunix&lt;br /&gt;
&lt;br /&gt;
then zip wich is used by the update script:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r zip&lt;br /&gt;
&lt;br /&gt;
now download and extract codeblocks:&lt;br /&gt;
&lt;br /&gt;
  fetch http://mesh.dl.sourceforge.net/sourceforge/codeblocks/codeblocks-1.0-rc1-1.tar.gz&lt;br /&gt;
  tar xzf codeblocks-1.0-finalbeta.tar.gz&lt;br /&gt;
&lt;br /&gt;
  cd codeblocks-1.0-RC1-1/src&lt;br /&gt;
&lt;br /&gt;
now make it:&lt;br /&gt;
  gmake -f Makefile.unix&lt;br /&gt;
  dosunix update update.unix&lt;br /&gt;
  chmod +x update.unix&lt;br /&gt;
&lt;br /&gt;
now run upated.unix:&lt;br /&gt;
  ./update.unix&lt;br /&gt;
&lt;br /&gt;
now execute:&lt;br /&gt;
  cd output&lt;br /&gt;
  ./run.sh&lt;br /&gt;
&lt;br /&gt;
To build codeblocks-1.0rc2, you should use the method belown with the Autotools.&lt;br /&gt;
&lt;br /&gt;
== Install from CVS ==&lt;br /&gt;
First, you have to install the following Ports:&lt;br /&gt;
&lt;br /&gt;
  gnu-autoconf-2.59   Automatically configure source code on many Un*x platforms &lt;br /&gt;
  gnu-automake-1.9.6  GNU Standards-compliant Makefile generator (GNU unmodified)&lt;br /&gt;
  gnu-libtool-1.5.18  Generic shared library support script (GNU unmodified)&lt;br /&gt;
&lt;br /&gt;
now you have to copy the m4 files from /usr/X11R6/share/aclocal/ to /usr/local/gnu-autotools/share/aclocal/&lt;br /&gt;
&lt;br /&gt;
  cp -R /usr/X11R6/share/aclocal/ /usr/local/gnu-autotools/share/&lt;br /&gt;
&lt;br /&gt;
=== Getting the latest sources from CVS ===&lt;br /&gt;
For the following to work, you need to have the cvs command line client installed on your system. First you need to login to the CVS server:&lt;br /&gt;
&lt;br /&gt;
  cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/codeblocks login&lt;br /&gt;
&lt;br /&gt;
When asked for a password, press enter. Now, just checkout (i.e. download) the sources from the repository:&lt;br /&gt;
&lt;br /&gt;
  cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/codeblocks co codeblocks&lt;br /&gt;
&lt;br /&gt;
This will create the directory codeblocks. Change to the codeblocks directory and build it, by issuing the following commands:&lt;br /&gt;
&lt;br /&gt;
  cd codeblocks&lt;br /&gt;
  export PATH=/usr/local/gnu-autotools/bin:$PATH&lt;br /&gt;
  ./bootstrap&lt;br /&gt;
  ./configure&lt;br /&gt;
  make&lt;br /&gt;
  make install&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_FreeBSD&amp;diff=340</id>
		<title>Installing Code::Blocks from source on FreeBSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_FreeBSD&amp;diff=340"/>
		<updated>2005-11-30T10:01:19Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Install from Source Package */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Install from Source Package ==&lt;br /&gt;
At first we need to install gnu-make:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r gmake&lt;br /&gt;
&lt;br /&gt;
then wx-gtk:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r wxgtk2-contrib&lt;br /&gt;
&lt;br /&gt;
then dosunix wich converts files from dos to unix format:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r dosunix&lt;br /&gt;
&lt;br /&gt;
then zip wich is used by the update script:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r zip&lt;br /&gt;
&lt;br /&gt;
now download and extract codeblocks:&lt;br /&gt;
&lt;br /&gt;
  fetch http://mesh.dl.sourceforge.net/sourceforge/codeblocks/codeblocks-1.0-rc1-1.tar.gz&lt;br /&gt;
  tar xzf codeblocks-1.0-finalbeta.tar.gz&lt;br /&gt;
&lt;br /&gt;
  cd codeblocks-1.0-RC1-1/src&lt;br /&gt;
&lt;br /&gt;
now make it:&lt;br /&gt;
  gmake -f Makefile.unix&lt;br /&gt;
  dosunix update update.unix&lt;br /&gt;
  chmod +x update.unix&lt;br /&gt;
&lt;br /&gt;
now run upated.unix:&lt;br /&gt;
  ./update.unix&lt;br /&gt;
&lt;br /&gt;
now execute:&lt;br /&gt;
  cd output&lt;br /&gt;
  ./run.sh&lt;br /&gt;
&lt;br /&gt;
To build codeblocks-1.0rc2, you should use the Autotools like the method belown.&lt;br /&gt;
&lt;br /&gt;
== Install from CVS ==&lt;br /&gt;
First, you have to install the following Ports:&lt;br /&gt;
&lt;br /&gt;
  gnu-autoconf-2.59   Automatically configure source code on many Un*x platforms &lt;br /&gt;
  gnu-automake-1.9.6  GNU Standards-compliant Makefile generator (GNU unmodified)&lt;br /&gt;
  gnu-libtool-1.5.18  Generic shared library support script (GNU unmodified)&lt;br /&gt;
&lt;br /&gt;
now you have to copy the m4 files from /usr/X11R6/share/aclocal/ to /usr/local/gnu-autotools/share/aclocal/&lt;br /&gt;
&lt;br /&gt;
  cp -R /usr/X11R6/share/aclocal/ /usr/local/gnu-autotools/share/&lt;br /&gt;
&lt;br /&gt;
=== Getting the latest sources from CVS ===&lt;br /&gt;
For the following to work, you need to have the cvs command line client installed on your system. First you need to login to the CVS server:&lt;br /&gt;
&lt;br /&gt;
  cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/codeblocks login&lt;br /&gt;
&lt;br /&gt;
When asked for a password, press enter. Now, just checkout (i.e. download) the sources from the repository:&lt;br /&gt;
&lt;br /&gt;
  cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/codeblocks co codeblocks&lt;br /&gt;
&lt;br /&gt;
This will create the directory codeblocks. Change to the codeblocks directory and build it, by issuing the following commands:&lt;br /&gt;
&lt;br /&gt;
  cd codeblocks&lt;br /&gt;
  export PATH=/usr/local/gnu-autotools/bin:$PATH&lt;br /&gt;
  ./bootstrap&lt;br /&gt;
  ./configure&lt;br /&gt;
  make&lt;br /&gt;
  make install&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_FreeBSD&amp;diff=339</id>
		<title>Installing Code::Blocks from source on FreeBSD</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_FreeBSD&amp;diff=339"/>
		<updated>2005-11-30T09:56:51Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Getting the latest sources from CVS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Install from Source Package ==&lt;br /&gt;
At first we need to install gnu-make:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r gmake&lt;br /&gt;
&lt;br /&gt;
then wx-gtk:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r wxgtk2-contrib&lt;br /&gt;
&lt;br /&gt;
then dosunix wich converts files from dos to unix format:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r dosunix&lt;br /&gt;
&lt;br /&gt;
then zip wich is used by the update script:&lt;br /&gt;
&lt;br /&gt;
  pkg_add -r zip&lt;br /&gt;
&lt;br /&gt;
now download and extract codeblocks:&lt;br /&gt;
&lt;br /&gt;
  fetch http://mesh.dl.sourceforge.net/sourceforge/codeblocks/codeblocks-1.0-rc1-1.tar.gz&lt;br /&gt;
  tar xzf codeblocks-1.0-finalbeta.tar.gz&lt;br /&gt;
&lt;br /&gt;
  cd codeblocks-1.0-RC1-1/src&lt;br /&gt;
&lt;br /&gt;
now make it:&lt;br /&gt;
  gmake -f Makefile.unix&lt;br /&gt;
  dosunix update update.unix&lt;br /&gt;
  chmod +x update.unix&lt;br /&gt;
&lt;br /&gt;
now run upated.unix:&lt;br /&gt;
  ./update.unix&lt;br /&gt;
&lt;br /&gt;
now execute:&lt;br /&gt;
  cd output&lt;br /&gt;
  ./run.sh&lt;br /&gt;
&lt;br /&gt;
== Install from CVS ==&lt;br /&gt;
First, you have to install the following Ports:&lt;br /&gt;
&lt;br /&gt;
  gnu-autoconf-2.59   Automatically configure source code on many Un*x platforms &lt;br /&gt;
  gnu-automake-1.9.6  GNU Standards-compliant Makefile generator (GNU unmodified)&lt;br /&gt;
  gnu-libtool-1.5.18  Generic shared library support script (GNU unmodified)&lt;br /&gt;
&lt;br /&gt;
now you have to copy the m4 files from /usr/X11R6/share/aclocal/ to /usr/local/gnu-autotools/share/aclocal/&lt;br /&gt;
&lt;br /&gt;
  cp -R /usr/X11R6/share/aclocal/ /usr/local/gnu-autotools/share/&lt;br /&gt;
&lt;br /&gt;
=== Getting the latest sources from CVS ===&lt;br /&gt;
For the following to work, you need to have the cvs command line client installed on your system. First you need to login to the CVS server:&lt;br /&gt;
&lt;br /&gt;
  cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/codeblocks login&lt;br /&gt;
&lt;br /&gt;
When asked for a password, press enter. Now, just checkout (i.e. download) the sources from the repository:&lt;br /&gt;
&lt;br /&gt;
  cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/codeblocks co codeblocks&lt;br /&gt;
&lt;br /&gt;
This will create the directory codeblocks. Change to the codeblocks directory and build it, by issuing the following commands:&lt;br /&gt;
&lt;br /&gt;
  cd codeblocks&lt;br /&gt;
  export PATH=/usr/local/gnu-autotools/bin:$PATH&lt;br /&gt;
  ./bootstrap&lt;br /&gt;
  ./configure&lt;br /&gt;
  make&lt;br /&gt;
  make install&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Keyboard_Shortcuts&amp;diff=256</id>
		<title>Keyboard Shortcuts</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Keyboard_Shortcuts&amp;diff=256"/>
		<updated>2005-08-21T13:22:19Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Code::Blocks Shortcut Keys */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Code::Blocks Shortcut Keys ==&lt;br /&gt;
&lt;br /&gt;
This is list is not complete.  If you know more, please do add them.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;3&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|+Shortcut Keys&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
!Function !!Shortcut Key&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Swap header/source || F11&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Duplicate line caret is on || CTRL+D&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Auto-Complete || CTRL+J&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Delete line caret is on || CTRL+L&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Swap line caret is on with line above it || CTRL+T&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Close file currently active in editor || CTRL+W&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Close Current Open Files || CTRL+F4&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Close All Open Files || CTRL+Shift+F4&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Comment highlighted code || CTRL+Shift+C&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Uncomment highlighted code || CTRL+Shift+X&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Zoom in/out on editor || CTRL + Roll Mouse Wheel&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Compiling_wxWidgets_2.4.2_to_develop_Code::Blocks_(MSW)&amp;diff=218</id>
		<title>Compiling wxWidgets 2.4.2 to develop Code::Blocks (MSW)</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Compiling_wxWidgets_2.4.2_to_develop_Code::Blocks_(MSW)&amp;diff=218"/>
		<updated>2005-08-16T03:47:11Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Copying the header files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These are the instructions to Install and compile wxWidgets 2.4.2 so you can later compile Code::Blocks on your own.&lt;br /&gt;
&lt;br /&gt;
NOTE: The instructions are MS Windows (TM) specific, but some could be applied to other platforms as well&lt;br /&gt;
&lt;br /&gt;
NOTE: This article is under construction. More info can be found [https://www.codeblocks.org/index.php?name=PNphpBB2&amp;amp;file=viewtopic&amp;amp;t=211&amp;amp;highlight=tutorial in the forums].&lt;br /&gt;
&lt;br /&gt;
== Install MinGW ==&lt;br /&gt;
&lt;br /&gt;
If you don't have the Code::Blocks+MinGW bundle, grab the latest MINGW stuff (including MSYS) from the &lt;br /&gt;
[http://www.mingw.org/download.shtml#hdr2 MINGW site] and install it under a directory you like. In this tutorial we're assumming you're installing MINGW under C:\MINGW.&lt;br /&gt;
&lt;br /&gt;
'''If you DO have the Code::Blocks + MinGW bundle, or have already installed MINGW on your own, you can skip this section.'''&lt;br /&gt;
&lt;br /&gt;
NOTE: The files are compressed in the tar.gz format. You need a third-party extraction utility to unzip them.&lt;br /&gt;
&lt;br /&gt;
The files I (Rick) have installed are:&lt;br /&gt;
&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/gcc-core-3.4.2-20040916-1.tar.gz?download gcc-core-3.4.2-20040916-1.tar.gz]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/gcc-g++-3.4.2-20040916-1.tar.gz?download gcc-g++-3.4.2-20040916-1.tar.gz]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download MSYS-1.0.10.exe]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/mingw-runtime-3.7.tar.gz?download mingw-runtime-3.7.tar.gz]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/mingw-utils-0.3.tar.gz?download mingw-utils-0.3.tar.gz]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/w32api-3.2.tar.gz?download w32api-3.2.tar.gz]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/binutils-2.15.91-20040904-1.tar.gz?download binutils-2.15.91-20040904-1.tar.gz]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/gdb-5.2.1-1.exe?download gdb-5.2.1-1.exe]&lt;br /&gt;
* [http://prdownloads.sf.net/mingw/mingw32-make-3.80.0-3.exe?download mingw32-make-3.80.0-3.exe]&lt;br /&gt;
&lt;br /&gt;
After you install, make sure you have the following directories under your path:&lt;br /&gt;
* C:\MINGW\bin;&lt;br /&gt;
* C:\MINGW\mingw32\bin;&lt;br /&gt;
(I'm assumming you installed under C:\MINGW)&lt;br /&gt;
&lt;br /&gt;
== Install the unix-like commands ==&lt;br /&gt;
&lt;br /&gt;
The wxWidgets makefile requires some unix commands (like cp) to run correctly. To avoid this windows-linux compatibility problems, you have two options:&lt;br /&gt;
&lt;br /&gt;
a) Download the [ftp://biolpc22.york.ac.uk/pub/ports/mingw32/extra.zip extra.zip] package, or&lt;br /&gt;
&lt;br /&gt;
b) Setup [[#About MSYS|MSYS]].&lt;br /&gt;
&lt;br /&gt;
=== About the extra.zip package ===&lt;br /&gt;
&lt;br /&gt;
The extra.zip package contains some programs which mimic frequently-used commands in Linux.&lt;br /&gt;
&lt;br /&gt;
To install, just [ftp://biolpc22.york.ac.uk/pub/ports/mingw32/extra.zip download it] and unzip it in your MINGW directory.&lt;br /&gt;
&lt;br /&gt;
=== About MSYS ===&lt;br /&gt;
&lt;br /&gt;
The [http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download MSYS package] ('''NOT included in the Code::Blocks+MinGW bundle''') allows you to run unix scripts with Mingw. Think of it as a &amp;quot;mini-linux emulator&amp;quot;. When you run the executable installer, it will provide a link to msys.bat. If it doesn't appear in your desktop, search for it in your programs menu.&lt;br /&gt;
&lt;br /&gt;
If you don't have the extra package, you must run the wxWidgets 2.4.2 compilation from inside MSYS. Drive C is found under /c/, drive D under /d/ and so on.&lt;br /&gt;
&lt;br /&gt;
== Download and Install the wxWidgets source code ==&lt;br /&gt;
&lt;br /&gt;
The wxWidgets 2.4.2 distribution can be found at the [http://www.wxwindows.org/dl_msw2.htm#stable242 wxWidgets site]. (Note that there's also a [http://prdownloads.sourceforge.net/wxwindows/wxWindows-2.4.2-WinHelp.zip winhelp file] available). You can choose to install either the [http://prdownloads.sourceforge.net/wxwindows/wxMSW-2.4.2-setup.zip setup version] or the [http://prdownloads.sourceforge.net/wxwindows/wxMSW-2.4.2.zip plain zip version] (which I find ridiculous, because the setup version is zipped too!).&lt;br /&gt;
&lt;br /&gt;
If you use the plain zip version, make sure to unzip using the full path. Otherwise the directories won't be created correctly.&lt;br /&gt;
On a second thought, you might like to use the setup version :P&lt;br /&gt;
&lt;br /&gt;
I have my wxWidgets installed in '''C:\wxWindows-2.4.2''' . Under MSYS, that should be '''/c/wxWindows-2.4.2''' .&lt;br /&gt;
&lt;br /&gt;
And now that you have all the ingredients, it's time to compile :)&lt;br /&gt;
&lt;br /&gt;
== Build wxWidgets ==&lt;br /&gt;
&lt;br /&gt;
NOTE: We're assumming you installed under C:\wxWindows-2.4.2 .&lt;br /&gt;
&lt;br /&gt;
Before anything, let me warn you: wxWidgets compilation is SLOW. And by SLOW I mean the time equivalent to one or two evolution cycles, like from Triasic to Jurasic, but doubled. So make sure there's a nice show on the TV, or you could invite a friend to play cards. OR you could start preparing the coffee :)&lt;br /&gt;
&lt;br /&gt;
Now, open up your MSYS prompt, and change to the wxWidgets src/msw directory:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;tt&amp;gt;cd /c/wxWindows-2.4.2/src/msw&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then proceed to the build. But first, an important warning that will save you many headaches.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
:'''WARNING!'''&lt;br /&gt;
:If due to a misconfiguration (like changing the version of your MINGW), your compilation fails, '''MAKE SURE''' you clean out the outputs directory with the following command:&lt;br /&gt;
&lt;br /&gt;
:: &amp;lt;tt&amp;gt;mingw32-make -f makefile.g95 clean&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:(do it for wxwidgets, stc and xrc. I had weird linker errors and crashes because I didn't clean up the partial compilations). &lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And now that everything's clean, proceed to the build:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;tt&amp;gt;mingw32-make -f makefile.g95 FINAL=1 UNICODE=0 WXMAKINGDLL=1&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If no &amp;quot;mingw32-make&amp;quot; is found, try this:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;tt&amp;gt;make -f makefile.g95 FINAL=1 UNICODE=0 WXMAKINGDLL=1&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Is it compiling OK? Good! You can now enjoy your coffee :-)&lt;br /&gt;
&lt;br /&gt;
== Build the STC library ==&lt;br /&gt;
&lt;br /&gt;
Still inside MSYS, type:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;tt&amp;gt;cd ../../contrib/src/stc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That should change the directory to /c/wxWindows-2.4.2/contrib/src/stc.&lt;br /&gt;
Now type:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;tt&amp;gt;mingw32-make -f makefile.g95 FINAL=1 UNICODE=0 WXUSINGDLL=1&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(NOTE: There are NO line breaks in the command, if you see them, they're shown for readability)&lt;br /&gt;
&lt;br /&gt;
== Build the XRC library ==&lt;br /&gt;
&lt;br /&gt;
Still inside MSYS, type:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;tt&amp;gt;cd ../xrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That should change the directory to /c/wxWindows-2.4.2/contrib/src/xrc.&lt;br /&gt;
Now type:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;tt&amp;gt;mingw32-make -f makefile.g95 FINAL=1 UNICODE=0 WXUSINGDLL=1&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And that's it! Now you only have to copy the lib and include directories so your MINGW installation can find them.&lt;br /&gt;
&lt;br /&gt;
== Copy the files to your mingw directory or set up the paths ==&lt;br /&gt;
&lt;br /&gt;
This section provides you with two alternatives: The easy one, and the hard one.&lt;br /&gt;
The easy one consists of just copying the files to your MINGW directory. The hard one consists of setting up the paths in codeblocks.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: Copying the wxWidgets files over your MINGW installation ===&lt;br /&gt;
&lt;br /&gt;
NOTE: The following instructions will overwrite part of your MINGW installation. If you're planning to build unicode applications, or use another version of wxWidgets, DO NOT, repeat, '''DO NOT''' follow these! Instead you'll have to set up the paths manually.&lt;br /&gt;
&lt;br /&gt;
So, here's how to copy the files. I (Rick) guarantee this option works, since it's the one I used.&lt;br /&gt;
&lt;br /&gt;
Close your MSYS window, and now open your windows explorer ('''NOT''' internet explorer, but Windows explorer. To open it, just press &amp;quot;(Windows key)+E&amp;quot;&lt;br /&gt;
&lt;br /&gt;
It's recommended to open TWO explorer windows: One for your wxWidgets directory (which we'll change to copy different files), and another to &lt;br /&gt;
==== Copying the header files ====&lt;br /&gt;
In the location bar, select the following path:&lt;br /&gt;
:&amp;lt;tt&amp;gt;C:\wxWindows-2.4.2\include&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Select all the files AND DIRECTORIES and copy. &lt;br /&gt;
Change to the directory &amp;quot;include&amp;quot; under your MINGW main directory, and paste.&lt;br /&gt;
&lt;br /&gt;
Now change again the directory to:&lt;br /&gt;
:&amp;lt;tt&amp;gt;C:\wxWindows-2.4.2\contrib\include&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy all files and directories, and paste them to your MINGW include directory.&lt;br /&gt;
&lt;br /&gt;
==== Copying the library files ====&lt;br /&gt;
&lt;br /&gt;
Change the explorer directory to: &lt;br /&gt;
&lt;br /&gt;
:&amp;lt;tt&amp;gt;C:\wxWindows-2.4.2\lib&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And select all the files. Copy and Paste under your MINGW &amp;quot;lib&amp;quot; directory. &lt;br /&gt;
&lt;br /&gt;
==== Copying the setup.h file ====&lt;br /&gt;
&lt;br /&gt;
This one's very important! Normally people know to copy the headers and libs, but miss this step. If you miss it, you'll get LOTS of compilation errors. &lt;br /&gt;
&lt;br /&gt;
Change the explorer directory to:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;tt&amp;gt;C:\wxWindows-2.4.2\lib&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is a &amp;quot;mswdll&amp;quot; directory there. Under it, there's a &amp;quot;wx&amp;quot; subdirectory, too. Inside it there's a &amp;quot;setup.h&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Copy it, and paste under your MINGW include/wx directory.&lt;br /&gt;
&lt;br /&gt;
(END of option 1)&lt;br /&gt;
&lt;br /&gt;
=== Option 2: Setting up the paths manually ===&lt;br /&gt;
&lt;br /&gt;
These instructions are to be followed by those who plan to use the 2.6 version of wxWidgets, or want to build their own version (i.e. with unicode support). Since you can't use both 2.4.2 and 2.6 libraries at the same time, you have to keep them in separate directories.&lt;br /&gt;
&lt;br /&gt;
Open the CodeBlocks.cbp, to be found in your local Code::Blocks source directory (for example &amp;quot;C:\codeblocks\src&amp;quot;).&lt;br /&gt;
Open up the build options, change the tab to &amp;quot;Directories&amp;quot; and add the following, replacing &amp;lt;WXW&amp;gt; with your WxWindows directory, for example &amp;quot;C:\wxWindows-2.4.2&amp;quot; (without the quotes):&lt;br /&gt;
&lt;br /&gt;
'''Compiler'''&lt;br /&gt;
*&amp;lt;WXW&amp;gt;\include&lt;br /&gt;
*&amp;lt;WXW&amp;gt;\contrib\include&lt;br /&gt;
*&amp;lt;WXW&amp;gt;\lib\mswdll&lt;br /&gt;
&lt;br /&gt;
'''Linker'''&lt;br /&gt;
*&amp;lt;WXW&amp;gt;\lib&lt;br /&gt;
&lt;br /&gt;
'''Resource compiler'''&lt;br /&gt;
*&amp;lt;WXW&amp;gt;\include&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
And that's it. Now you're ready to compile Code::Blocks!&lt;br /&gt;
&lt;br /&gt;
== Post compilation steps (before running C::B) ==&lt;br /&gt;
&lt;br /&gt;
When compilation process is finished, simply run the update.bat script. It will ensure that all resource files (that C::B uses) are in the right place and up to date.&lt;br /&gt;
&lt;br /&gt;
Note: This step requires appropriate zip command, which you likely have already set up and working. However, in case you have not, you should find something usable  [ftp://ftp.uu.net/pub/archiving/zip/WIN32/ here].&lt;br /&gt;
&lt;br /&gt;
== Common compilation problems ==&lt;br /&gt;
&lt;br /&gt;
=== symbol `_D' is already defined ===&lt;br /&gt;
&lt;br /&gt;
Your MinGW installation is probably outdated (dev-cpp user perhaps?). Make sure you're using [[#Install_MinGW|GCC 3.4.2 or later]].&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Creating_a_simple_%22Hello_World%22_plugin&amp;diff=213</id>
		<title>Creating a simple &quot;Hello World&quot; plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Creating_a_simple_%22Hello_World%22_plugin&amp;diff=213"/>
		<updated>2005-07-02T01:48:23Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Adding Functionality */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''NOTE''': This tutorial was written using the Code::Blocks final beta under windows.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
This tutorial assumes you have a working version of Code::Blocks installed and some knowledge of how to deal with projects, in particular how to compile them. In order to use the Code::Blocks SDK you must also have a working version of wxWidgets installed. For more information see [[Compiling wxWidgets 2.4.2 to develop Code::Blocks (MSW)|Compiling wxWidgets 2.4.2 to develop Code::Blocks]] or&lt;br /&gt;
[[Compiling wxWidgets 2.6.1 to develop Code::Blocks (MSW)|Compiling wxWidgets 2.6.1 to develop Code::Blocks]], depending on which version you want to use.&lt;br /&gt;
&lt;br /&gt;
To develop Code::Blocks plugins you will also need a copy of the Code::Blocks SDK, which can be found on the Code::Blocks [https://www.codeblocks.org/modules.php?op=modload&amp;amp;name=Downloads&amp;amp;file=index&amp;amp;req=viewsdownload&amp;amp;sid=4 download page]. Install this to somewhere sensible that you will remember later on. Personally I keep the SDK in a folder called CodeBlocks\sdk (which contains the include/ and lib/ from in the zip). This means that the header files refered to in the tutorial would be found under ''Codeblocks\sdk\include'', so ''cbPlugin.h'' is ''Codeblocks\sdk\include\cbPlugin.h'' for example.&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
&lt;br /&gt;
This tutorial will guide you through the creation of a simple &amp;quot;Hello World&amp;quot; plugin, which when activated displays &amp;quot;Hello World!&amp;quot; in the Code::Blocks log tab below the editor. This could be done completely by hand, but Code::Blocks contains a very useful plugin project generator (which, incidntally, is itself a plugin), so we'll use that.&lt;br /&gt;
&lt;br /&gt;
==Creating the Plugin Project==&lt;br /&gt;
&lt;br /&gt;
Select the '''Plugins-&amp;gt;Code::Blocks Plugin Wizard''' option from the main menu bar and choose a suitable project name and location. Save the project, and another dialog will be shown which allows you to select various options for your plugin.&lt;br /&gt;
&lt;br /&gt;
===Plugin Type===&lt;br /&gt;
&lt;br /&gt;
The Code::Blocks SDK contains interfaces for various different types of plugins in the ''cbPlugin.h'' file. The drop down ''Plugin type'' list in the wizard allows you to select which type of plugin you wish to build - essentially which class the main plugin interface class will inherit from. We want to build a Tool plugin, so select that from the list. Tool type plugins are added to the Plugins main menu submenu automatically, and their ''Execute'' method is called when they are selected by the user. We will use this later in order to display our message.&lt;br /&gt;
&lt;br /&gt;
===Plugin Info===&lt;br /&gt;
&lt;br /&gt;
The ''Plugin name'' field is the name of the plugin interface class which the wizard will create. Enter &amp;quot;HelloWorldPlugin&amp;quot; here. More information can be provided by clicking on the ''Enter Plugin Info'' button. The fields here are fairly self explanitory, but one which you should pay particular attention to is the ''Title'' field, since this is what Code::Blocks will use to refer to the plugin in the menus. In the generated code, the plugin info is kept in the plugin class' ''m_PluginInfo'' member, which is of the type ''PluginInfo'' and is set in the plugin interface class' constructor. ''PluginInfo'' is detailed in ''cbPlugin.h'', if you want to go take a look.&lt;br /&gt;
&lt;br /&gt;
===Provides Configuration Dialog===&lt;br /&gt;
&lt;br /&gt;
This indicates whether or not the plugin is to provide a configuration dialog which can be accessed through the '''Settings-&amp;gt;Configure Plugins''' submenu. We don't need one, so leave this box unchecked.&lt;br /&gt;
&lt;br /&gt;
===Filenames===&lt;br /&gt;
&lt;br /&gt;
The filenames should have been filled in automatically by the dialog when you entered the Plugin name, if you used the name &amp;quot;HelloWorldPlugin&amp;quot;, for example, these should be helloworldplugin.h and helloworldplugin.cpp respectively. If you want to change the names of the files generated, this is where to do it (this tutorial will assume you have left them as the default values).&lt;br /&gt;
&lt;br /&gt;
The guard-block box is simply if you wish to place inclusion guards in the header file, and if you do what symbol to use. If you don't know what these are then just leave it as it is.&lt;br /&gt;
&lt;br /&gt;
Click '''Create''' and take note of the next dialog box's message about the SDK include and library directories, that's what we'll be dealing with next.&lt;br /&gt;
&lt;br /&gt;
==Letting the project know where to find the SDK==&lt;br /&gt;
&lt;br /&gt;
Code::Blocks should have created a new project called &amp;quot;Custom Plugin&amp;quot;. Before we can compile anything we need to make sure that the compiler knows where the sdk files are in order to include headers and link the libraries. If your compiler has not been setup to know where wxWidgets is yet then this must also be done (see the links in Prerequisites for more details).&lt;br /&gt;
&lt;br /&gt;
Right click on the project and select '''Build Options''' then the '''Directories''' tab. Here, make sure the '''Compiler''' tab is selected then click on the '''Add''' button. Browse to where you unzipped the SDK and select the ''include'' directory (for example ''C:\CodeBlocks\sdk\include'' if you installed the SDK there), then click okay and select whether or not the path should remain relative. Go to the &amp;quot;Linker&amp;quot; tab and add the &amp;quot;lib&amp;quot; directory under where the SDK was installed in similar fashion (following my install, this would be in ''C:\CodeBlocks\sdk\lib'').&lt;br /&gt;
&lt;br /&gt;
===Linker Options===&lt;br /&gt;
&lt;br /&gt;
If you click on the '''Linker Options''' tab at the top level in the Build Options dialog, you will see that the plugin is being linked to the Code::Blocks core library (codeblocks) and the wxWidgets library (wxmsw242 under windows ''NOTE: The plugin generator uses 2.4.2, if you're using a different version of wxWidgets then change this'').&lt;br /&gt;
&lt;br /&gt;
===Compiler Options===&lt;br /&gt;
&lt;br /&gt;
The '''Compiler Options''' tab shows that several symbols have been defined when the plugin is compiled: ''__GNUWIN32__'', ''WXUSINGDLL'' and ''BUILDING_PLUGIN'' in this case (using windows). The first two are indicators to wxWidgets of the compiler and DLL options to use, and the last is an indicator to the Code::Blocks SDK headers that they are being used to build a plugin (which affects whether or not symbols are exported or imported for the DLL - see ''cbPlugin.h'' for example).&lt;br /&gt;
&lt;br /&gt;
==Adding Functionality==&lt;br /&gt;
&lt;br /&gt;
The plugin wizard should have generated us helloworldplugin.h and helloworldplugin.cpp. The header file contains the class definition and a C function declaration which is used to load the plugin when asked by the main Code::Blocks program (''GetPlugin''). What we're interested in, however, is the definition of the class methods in helloworldplugin.cpp. The plugin wizard has generated us a constructor in which the ''m_PluginInfo'' information is set, and three methods. ''OnAttatch'' and ''OnRelease'' are methods called to inform the plugin when it is attached (the user has selected it and Code::Blocks has loaded it) or released (Code::Blocks no longer has a use for it or is shutting down). Since our plugin does not need to perform any actions on loading or shutting down, we can leave these as they are.&lt;br /&gt;
&lt;br /&gt;
The ''Execute'' method, as mentioned earlier, is what we are really interested in. We are going to use the MessageManager class to add a log message in the window beneath the editor. To do this we will need access to both the Manager class and the MessageManager class. Manager is and internal Code::Blocks class which is used to keep track of internal information and the various task specific managers (like the MessageManager and EditorManager - which is used to keep track of all the open files and their editors). MessageManager is responsible for both normal output and debugging output (see ''messagemanager.h'' for more details). Replace the generated Execute method with this new one:&lt;br /&gt;
&lt;br /&gt;
 int HelloWorldPlugin::Execute()&lt;br /&gt;
 {&lt;br /&gt;
     if( !IsAttached() )&lt;br /&gt;
         return -1;&lt;br /&gt;
     Manager::Get()-&amp;gt;GetMessageManager()-&amp;gt;Log( _(&amp;quot;Hello World!&amp;quot;) );&lt;br /&gt;
     return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
This new method uses the Manager's static Get method to return the singleton Manager object, then uses that to access the MessageManager through the GetMessageManager method. MessageManager has a method called ''Log'' which appends a string to the bottom of the output log, so we use this to add the &amp;quot;Hello World!&amp;quot; message. The _() construct is part of wxWidgets' internationalisation utilities, and more information on it can be found in the wxWidgets [http://wiki.wxwidgets.org/wiki.pl?WxWidgets_Source_Oddities documentation].&lt;br /&gt;
&lt;br /&gt;
The first two lines check to see if the plugin has been attatched (in other words selected by the user in the '''Plugins-&amp;gt;Plugin Manager''' menu), and thus whether it should perform any action at all. As far as I can tell, the return value of Execute is not used anywhere, but all the default plugins use -1 for failure and 0 for success (much like the main function in a C program) so that is what is used here.&lt;br /&gt;
&lt;br /&gt;
Add headfiles to helloworldplugin.cpp &lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;manager.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;messagemanager.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we have our code in place we are ready to...&lt;br /&gt;
&lt;br /&gt;
==Compile! (And test)==&lt;br /&gt;
&lt;br /&gt;
This should produce a file called HelloWorldPlugin.dll, which can be tested by copying to the ''CodeBlocks\share\CodeBlocks\plugins\'' directory and restarting Code::Blocks. There should now be an option in the '''Plugins''' menu for &amp;quot;Hello World&amp;quot; (or whatever the title field was set to when the plugin was generated - or in ''m_PluginInfo''). Click on this and &amp;quot;Hello World!&amp;quot; should appear in the Code::Blocks logging window. Congratulations, you've just created your first plugin!&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
It is essential to learn how wxWidgets works if you seriously plan on working on plugins, since most of Code::Blocks depends on it, and you will find it easier to add and manipulate components if you have a firm grasp of its principles. More information on this can be found in the wxWidgets [http://www.wxwidgets.org/docs.htm documentation]. Another good place to learn from is the source code from the existing Code::Blocks plugins, which can be downloaded along with the rest of the Code::Blocks source code from the [https://www.codeblocks.org/modules.php?op=modload&amp;amp;name=Downloads&amp;amp;file=index&amp;amp;req=viewsdownload&amp;amp;sid=3 download page]. &lt;br /&gt;
&lt;br /&gt;
Hopefully this tutorial has helped you work through a few fundamentals in terms of creating plugins, happy coding!&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
	<entry>
		<id>https://wiki.codeblocks.org/index.php?title=Creating_a_simple_%22Hello_World%22_plugin&amp;diff=102</id>
		<title>Creating a simple &quot;Hello World&quot; plugin</title>
		<link rel="alternate" type="text/html" href="https://wiki.codeblocks.org/index.php?title=Creating_a_simple_%22Hello_World%22_plugin&amp;diff=102"/>
		<updated>2005-07-02T01:45:27Z</updated>

		<summary type="html">&lt;p&gt;Heromyth: /* Adding Functionality */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''NOTE''': This tutorial was written using the Code::Blocks final beta under windows.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
This tutorial assumes you have a working version of Code::Blocks installed and some knowledge of how to deal with projects, in particular how to compile them. In order to use the Code::Blocks SDK you must also have a working version of wxWidgets installed. For more information see [[Compiling wxWidgets 2.4.2 to develop Code::Blocks (MSW)|Compiling wxWidgets 2.4.2 to develop Code::Blocks]] or&lt;br /&gt;
[[Compiling wxWidgets 2.6.1 to develop Code::Blocks (MSW)|Compiling wxWidgets 2.6.1 to develop Code::Blocks]], depending on which version you want to use.&lt;br /&gt;
&lt;br /&gt;
To develop Code::Blocks plugins you will also need a copy of the Code::Blocks SDK, which can be found on the Code::Blocks [https://www.codeblocks.org/modules.php?op=modload&amp;amp;name=Downloads&amp;amp;file=index&amp;amp;req=viewsdownload&amp;amp;sid=4 download page]. Install this to somewhere sensible that you will remember later on. Personally I keep the SDK in a folder called CodeBlocks\sdk (which contains the include/ and lib/ from in the zip). This means that the header files refered to in the tutorial would be found under ''Codeblocks\sdk\include'', so ''cbPlugin.h'' is ''Codeblocks\sdk\include\cbPlugin.h'' for example.&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
&lt;br /&gt;
This tutorial will guide you through the creation of a simple &amp;quot;Hello World&amp;quot; plugin, which when activated displays &amp;quot;Hello World!&amp;quot; in the Code::Blocks log tab below the editor. This could be done completely by hand, but Code::Blocks contains a very useful plugin project generator (which, incidntally, is itself a plugin), so we'll use that.&lt;br /&gt;
&lt;br /&gt;
==Creating the Plugin Project==&lt;br /&gt;
&lt;br /&gt;
Select the '''Plugins-&amp;gt;Code::Blocks Plugin Wizard''' option from the main menu bar and choose a suitable project name and location. Save the project, and another dialog will be shown which allows you to select various options for your plugin.&lt;br /&gt;
&lt;br /&gt;
===Plugin Type===&lt;br /&gt;
&lt;br /&gt;
The Code::Blocks SDK contains interfaces for various different types of plugins in the ''cbPlugin.h'' file. The drop down ''Plugin type'' list in the wizard allows you to select which type of plugin you wish to build - essentially which class the main plugin interface class will inherit from. We want to build a Tool plugin, so select that from the list. Tool type plugins are added to the Plugins main menu submenu automatically, and their ''Execute'' method is called when they are selected by the user. We will use this later in order to display our message.&lt;br /&gt;
&lt;br /&gt;
===Plugin Info===&lt;br /&gt;
&lt;br /&gt;
The ''Plugin name'' field is the name of the plugin interface class which the wizard will create. Enter &amp;quot;HelloWorldPlugin&amp;quot; here. More information can be provided by clicking on the ''Enter Plugin Info'' button. The fields here are fairly self explanitory, but one which you should pay particular attention to is the ''Title'' field, since this is what Code::Blocks will use to refer to the plugin in the menus. In the generated code, the plugin info is kept in the plugin class' ''m_PluginInfo'' member, which is of the type ''PluginInfo'' and is set in the plugin interface class' constructor. ''PluginInfo'' is detailed in ''cbPlugin.h'', if you want to go take a look.&lt;br /&gt;
&lt;br /&gt;
===Provides Configuration Dialog===&lt;br /&gt;
&lt;br /&gt;
This indicates whether or not the plugin is to provide a configuration dialog which can be accessed through the '''Settings-&amp;gt;Configure Plugins''' submenu. We don't need one, so leave this box unchecked.&lt;br /&gt;
&lt;br /&gt;
===Filenames===&lt;br /&gt;
&lt;br /&gt;
The filenames should have been filled in automatically by the dialog when you entered the Plugin name, if you used the name &amp;quot;HelloWorldPlugin&amp;quot;, for example, these should be helloworldplugin.h and helloworldplugin.cpp respectively. If you want to change the names of the files generated, this is where to do it (this tutorial will assume you have left them as the default values).&lt;br /&gt;
&lt;br /&gt;
The guard-block box is simply if you wish to place inclusion guards in the header file, and if you do what symbol to use. If you don't know what these are then just leave it as it is.&lt;br /&gt;
&lt;br /&gt;
Click '''Create''' and take note of the next dialog box's message about the SDK include and library directories, that's what we'll be dealing with next.&lt;br /&gt;
&lt;br /&gt;
==Letting the project know where to find the SDK==&lt;br /&gt;
&lt;br /&gt;
Code::Blocks should have created a new project called &amp;quot;Custom Plugin&amp;quot;. Before we can compile anything we need to make sure that the compiler knows where the sdk files are in order to include headers and link the libraries. If your compiler has not been setup to know where wxWidgets is yet then this must also be done (see the links in Prerequisites for more details).&lt;br /&gt;
&lt;br /&gt;
Right click on the project and select '''Build Options''' then the '''Directories''' tab. Here, make sure the '''Compiler''' tab is selected then click on the '''Add''' button. Browse to where you unzipped the SDK and select the ''include'' directory (for example ''C:\CodeBlocks\sdk\include'' if you installed the SDK there), then click okay and select whether or not the path should remain relative. Go to the &amp;quot;Linker&amp;quot; tab and add the &amp;quot;lib&amp;quot; directory under where the SDK was installed in similar fashion (following my install, this would be in ''C:\CodeBlocks\sdk\lib'').&lt;br /&gt;
&lt;br /&gt;
===Linker Options===&lt;br /&gt;
&lt;br /&gt;
If you click on the '''Linker Options''' tab at the top level in the Build Options dialog, you will see that the plugin is being linked to the Code::Blocks core library (codeblocks) and the wxWidgets library (wxmsw242 under windows ''NOTE: The plugin generator uses 2.4.2, if you're using a different version of wxWidgets then change this'').&lt;br /&gt;
&lt;br /&gt;
===Compiler Options===&lt;br /&gt;
&lt;br /&gt;
The '''Compiler Options''' tab shows that several symbols have been defined when the plugin is compiled: ''__GNUWIN32__'', ''WXUSINGDLL'' and ''BUILDING_PLUGIN'' in this case (using windows). The first two are indicators to wxWidgets of the compiler and DLL options to use, and the last is an indicator to the Code::Blocks SDK headers that they are being used to build a plugin (which affects whether or not symbols are exported or imported for the DLL - see ''cbPlugin.h'' for example).&lt;br /&gt;
&lt;br /&gt;
==Adding Functionality==&lt;br /&gt;
&lt;br /&gt;
The plugin wizard should have generated us helloworldplugin.h and helloworldplugin.cpp. The header file contains the class definition and a C function declaration which is used to load the plugin when asked by the main Code::Blocks program (''GetPlugin''). What we're interested in, however, is the definition of the class methods in helloworldplugin.cpp. The plugin wizard has generated us a constructor in which the ''m_PluginInfo'' information is set, and three methods. ''OnAttatch'' and ''OnRelease'' are methods called to inform the plugin when it is attached (the user has selected it and Code::Blocks has loaded it) or released (Code::Blocks no longer has a use for it or is shutting down). Since our plugin does not need to perform any actions on loading or shutting down, we can leave these as they are.&lt;br /&gt;
&lt;br /&gt;
The ''Execute'' method, as mentioned earlier, is what we are really interested in. We are going to use the MessageManager class to add a log message in the window beneath the editor. To do this we will need access to both the Manager class and the MessageManager class. Manager is and internal Code::Blocks class which is used to keep track of internal information and the various task specific managers (like the MessageManager and EditorManager - which is used to keep track of all the open files and their editors). MessageManager is responsible for both normal output and debugging output (see ''messagemanager.h'' for more details). Replace the generated Execute method with this new one:&lt;br /&gt;
&lt;br /&gt;
 int HelloWorldPlugin::Execute()&lt;br /&gt;
 {&lt;br /&gt;
     if( !IsAttached() )&lt;br /&gt;
         return -1;&lt;br /&gt;
     Manager::Get()-&amp;gt;GetMessageManager()-&amp;gt;Log( _(&amp;quot;Hello World!&amp;quot;) );&lt;br /&gt;
     return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
This new method uses the Manager's static Get method to return the singleton Manager object, then uses that to access the MessageManager through the GetMessageManager method. MessageManager has a method called ''Log'' which appends a string to the bottom of the output log, so we use this to add the &amp;quot;Hello World!&amp;quot; message. The _() construct is part of wxWidgets' internationalisation utilities, and more information on it can be found in the wxWidgets [http://wiki.wxwidgets.org/wiki.pl?WxWidgets_Source_Oddities documentation].&lt;br /&gt;
&lt;br /&gt;
The first two lines check to see if the plugin has been attatched (in other words selected by the user in the '''Plugins-&amp;gt;Plugin Manager''' menu), and thus whether it should perform any action at all. As far as I can tell, the return value of Execute is not used anywhere, but all the default plugins use -1 for failure and 0 for success (much like the main function in a C program) so that is what is used here.&lt;br /&gt;
&lt;br /&gt;
Add headfiles to helloworldplugin.cpp &lt;br /&gt;
&lt;br /&gt;
  #include &amp;lt;manager.h&amp;gt;&lt;br /&gt;
  #include &amp;lt;messagemanager.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we have our code in place we are ready to...&lt;br /&gt;
&lt;br /&gt;
==Compile! (And test)==&lt;br /&gt;
&lt;br /&gt;
This should produce a file called HelloWorldPlugin.dll, which can be tested by copying to the ''CodeBlocks\share\CodeBlocks\plugins\'' directory and restarting Code::Blocks. There should now be an option in the '''Plugins''' menu for &amp;quot;Hello World&amp;quot; (or whatever the title field was set to when the plugin was generated - or in ''m_PluginInfo''). Click on this and &amp;quot;Hello World!&amp;quot; should appear in the Code::Blocks logging window. Congratulations, you've just created your first plugin!&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
It is essential to learn how wxWidgets works if you seriously plan on working on plugins, since most of Code::Blocks depends on it, and you will find it easier to add and manipulate components if you have a firm grasp of its principles. More information on this can be found in the wxWidgets [http://www.wxwidgets.org/docs.htm documentation]. Another good place to learn from is the source code from the existing Code::Blocks plugins, which can be downloaded along with the rest of the Code::Blocks source code from the [https://www.codeblocks.org/modules.php?op=modload&amp;amp;name=Downloads&amp;amp;file=index&amp;amp;req=viewsdownload&amp;amp;sid=3 download page]. &lt;br /&gt;
&lt;br /&gt;
Hopefully this tutorial has helped you work through a few fundamentals in terms of creating plugins, happy coding!&lt;/div&gt;</summary>
		<author><name>Heromyth</name></author>
	</entry>
</feed>