Pascal - Free Pascal Compiler
-----------------------------

RPMs
     fpk

Ubuntu packages
     fp-compiler, fp-units-fcl

File extension
     pp, pas

String syntax
     'abc'

gettext shorthand
     automatic

gettext/ngettext functions
     ---, use ResourceString data type instead

textdomain
     ---, use TranslateResourceStrings function instead

bindtextdomain
     ---, use TranslateResourceStrings function instead

setlocale
     automatic, but uses only LANG, not LC_MESSAGES or LC_ALL

Prerequisite
     {$mode delphi} or {$mode objfpc}
     uses gettext;

Use or emulate GNU gettext
     emulate partially

Extractor
     ppc386 followed by xgettext or rstconv

Formatting with positions
     uses sysutils;
     format "%1:d %0:d"

Portability
     ?

po-mode marking
     ---

The Pascal compiler has special support for the ResourceString data type.  It generates a .rst file.  This is then converted to a .pot file by use of xgettext or rstconv.  At runtime, a .mo file corresponding to translations of this .pot file can be loaded using the TranslateResourceStrings function in the gettext unit.

An example is available in the examples directory: hello-pascal.