2012-05-09 16:04 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/Makefile
* utils/hbmk2/hbmk2.hbp
+ utils/hbmk2/hbmk2c.c
* utils/hbmk2/hbmk2.prg
+ added automatic detection of _SET_OSCODEPAGE and hb_SetDispCP()
Experimental, not well tested and it may need extensions to handle
all possible CPs and cases on *nix systems.
MS-DOS and OS/2 support are missing.
Autodetection will now be used instead of generic assumptions
and defaults stored in translation files.
+ enabled UTF8EX HVM CP on remaining (non-*nix) platforms.
; Once matured, this code can be moved to the core, possible
after rewrite in C. This will make it unnecessary to roll
private C code for hbmk2.
; Several problems remain on non-*nix systems when working with
actual non-ASCII filenames.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.es_PE.po
- deleted translation (language) dependent CP settings.
This commit is contained in:
@@ -16,20 +16,43 @@
|
||||
The license applies to all entries newer than 2009-04-28.
|
||||
*/
|
||||
|
||||
2012-05-09 16:04 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||
* utils/hbmk2/Makefile
|
||||
* utils/hbmk2/hbmk2.hbp
|
||||
+ utils/hbmk2/hbmk2c.c
|
||||
* utils/hbmk2/hbmk2.prg
|
||||
+ added automatic detection of _SET_OSCODEPAGE and hb_SetDispCP()
|
||||
Experimental, not well tested and it may need extensions to handle
|
||||
all possible CPs and cases on *nix systems.
|
||||
MS-DOS and OS/2 support are missing.
|
||||
Autodetection will now be used instead of generic assumptions
|
||||
and defaults stored in translation files.
|
||||
+ enabled UTF8EX HVM CP on remaining (non-*nix) platforms.
|
||||
; Once matured, this code can be moved to the core, possible
|
||||
after rewrite in C. This will make it unnecessary to roll
|
||||
private C code for hbmk2.
|
||||
; Several problems remain on non-*nix systems when working with
|
||||
actual non-ASCII filenames.
|
||||
|
||||
* utils/hbmk2/hbmk2.pt_BR.po
|
||||
* utils/hbmk2/hbmk2.hu_HU.po
|
||||
* utils/hbmk2/hbmk2.es_PE.po
|
||||
- deleted translation (language) dependent CP settings.
|
||||
|
||||
2012-05-09 14:35 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
|
||||
* contrib/hbide/idemain.prg
|
||||
! Disabled: :destroy() calls before application quits.
|
||||
* Simplified: ambigous variable reference.
|
||||
|
||||
; NOTE: now hbIDE does not produces GPF on EXIT but throws
|
||||
2 RTE the contents of them can be viewed in tracelog.
|
||||
; NOTE: now hbIDE does not produces GPF on EXIT but throws
|
||||
2 RTE the contents of them can be viewed in tracelog.
|
||||
.
|
||||
Error BASE/1301 Object destructor failure: Reference to freed block.
|
||||
|
||||
2012-05-09 12:15 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
|
||||
* contrib/hbqt/qtgui/hbqt_errorsys.prg
|
||||
+ Added: HB_TRACE() call if HVM is closed and error message
|
||||
needs to be retrieved somehow. It will allow us to
|
||||
+ Added: HB_TRACE() call if HVM is closed and error message
|
||||
needs to be retrieved somehow. It will allow us to
|
||||
peep in further to pin-point the EXIT GPF.
|
||||
* contrib/hbqt/qtgui/hbqtgui.hbx
|
||||
* Re-generated.
|
||||
@@ -41,8 +64,8 @@
|
||||
! Enabled: :destroy() calls before application quits.
|
||||
|
||||
; NOTE: now no more EXIT GPF is reported in hbIDE.
|
||||
Please shout if you get one and report the message
|
||||
available on std error output, for Window which
|
||||
Please shout if you get one and report the message
|
||||
available on std error output, for Window which
|
||||
will be debugger like debug.exe.
|
||||
|
||||
2012-05-09 16:14 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||
|
||||
@@ -9,6 +9,9 @@ include $(TOP)$(ROOT)config/global.mk
|
||||
PRG_SOURCES := \
|
||||
hbmk2.prg \
|
||||
|
||||
C_SOURCES := \
|
||||
hbmk2c.c \
|
||||
|
||||
PRG_MAIN := hbmk2.prg
|
||||
|
||||
LIBS = $(HB_LIBS_MT_NORDD)
|
||||
|
||||
@@ -351,11 +351,6 @@ msgstr " hbmk2 [opciones] [<script[s]>] <src[s][.prg|.c|.obj|.o|.rc|.res|.def|.
|
||||
msgid "inherit .prg/.c/linker flags (or none) from Harbour build"
|
||||
msgstr "heredar todos los flags .prg/.c/linker (o ninguno) desde construcción de Harbour "
|
||||
|
||||
#: hbmk2.prg:7787 hbmk2.prg:11440
|
||||
#, c-format
|
||||
msgid "cdp=EN"
|
||||
msgstr "cdp=PTISO"
|
||||
|
||||
#: hbmk2.prg:7946 hbmk2.prg:11637
|
||||
#, c-format
|
||||
msgid "Notes:"
|
||||
@@ -971,21 +966,11 @@ msgstr "crear/actualizar archivo .po desde fuentes. Combinar con anterior archiv
|
||||
msgid "clean (in incremental build mode)"
|
||||
msgstr "compilación limpia (en modo incremental)"
|
||||
|
||||
#: hbmk2.prg:7791 hbmk2.prg:11444
|
||||
#, c-format
|
||||
msgid "nix=EN"
|
||||
msgstr "nix=UTF8"
|
||||
|
||||
#: hbmk2.prg:7942 hbmk2.prg:11633
|
||||
#, c-format
|
||||
msgid "stop after creating the object files and accept raw C flags\\ncreate link/copy hbmk2 to hbcc for the same effect"
|
||||
msgstr "para después de creación de archivos objeto y aceptar flags de puro C\\ncrear un link o copiar hbmk2 a hbcc resultará el mismo efecto"
|
||||
|
||||
#: hbmk2.prg:7791 hbmk2.prg:11444
|
||||
#, c-format
|
||||
msgid "wdo=EN"
|
||||
msgstr "wdo=PT850"
|
||||
|
||||
#: hbmk2.prg:7808 hbmk2.prg:11462
|
||||
#, c-format
|
||||
msgid "Translation (%1$s): (add your name here)"
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
-nulrdd
|
||||
-mt
|
||||
hbmk2.prg
|
||||
hbmk2c.c
|
||||
|
||||
hbmk2.%{hb_lng}.po
|
||||
-hbl=hbmk2.%{hb_lng}.hbl
|
||||
|
||||
@@ -867,21 +867,6 @@ msgstr "kimeneti fájlnév"
|
||||
msgid "show commands executed"
|
||||
msgstr "mutassa a végrehajtott parancsokat"
|
||||
|
||||
#: hbmk2.prg:7786 hbmk2.prg:11440
|
||||
#, c-format
|
||||
msgid "cdp=EN"
|
||||
msgstr "cdp=HUISO"
|
||||
|
||||
#: hbmk2.prg:7790 hbmk2.prg:11444
|
||||
#, c-format
|
||||
msgid "wdo=EN"
|
||||
msgstr "wdo=HU852"
|
||||
|
||||
#: hbmk2.prg:7790 hbmk2.prg:11444
|
||||
#, c-format
|
||||
msgid "nix=EN"
|
||||
msgstr "nix=UTF8"
|
||||
|
||||
#: hbmk2.prg:7824 hbmk2.prg:11479
|
||||
#, c-format
|
||||
msgid "Syntax:"
|
||||
|
||||
@@ -12426,7 +12426,7 @@ STATIC PROCEDURE GetUILangCDP( /* @ */ cLNG, /* @ */ cCDP )
|
||||
|
||||
INIT PROCEDURE ClipInit()
|
||||
|
||||
/* hb_cdpSelect( "UTF8EX" ) */
|
||||
hb_cdpSelect( "UTF8EX" )
|
||||
|
||||
RETURN
|
||||
|
||||
@@ -12443,21 +12443,410 @@ STATIC PROCEDURE SetUILang( hbmk )
|
||||
ENDIF
|
||||
|
||||
/* Setup input CP of the translation */
|
||||
IF hb_Version( HB_VERSION_UNIX_COMPAT ) /* NOTE: Intentionally doing runtime branching to include all translatable strings in translation files. */
|
||||
hb_cdpSelect( "UTF8EX" )
|
||||
ELSE
|
||||
hb_cdpSelect( Upper( SubStr( I_( "cdp=EN" ), Len( "cdp=" ) + 1 ) ) )
|
||||
hb_cdpSelect( "UTF8EX" )
|
||||
|
||||
/* Setup output CP, separate for Windows/DOS/OS2 and *nix systems */
|
||||
tmp := Upper( SubStr( iif( hb_Version( HB_VERSION_UNIX_COMPAT ), I_( "nix=EN" ), I_( "wdo=EN" ) ), Len( "xxx=" ) + 1 ) )
|
||||
IF tmp == "UTF8" .OR. tmp == "UTF-8"
|
||||
hb_SetDispCP( "UTF8" )
|
||||
ELSEIF ! Empty( tmp )
|
||||
hb_SetDispCP( tmp )
|
||||
/* Configure terminal and OS codepage */
|
||||
hbmk_auto_cp_term()
|
||||
hbmk_auto_cp_os()
|
||||
|
||||
RETURN
|
||||
|
||||
STATIC FUNCTION hbmk_auto_cp_term()
|
||||
LOCAL cCP
|
||||
LOCAL cLang
|
||||
|
||||
#if defined( __PLATFORM__WINDOWS )
|
||||
cCP := __CPWinToCPStd( hbmk_wapi_GetOEMCP() )
|
||||
cLang := hb_UserLang()
|
||||
#elif defined( __PLATFORM__UNIX )
|
||||
IF ! Empty( GetEnv( "LANG" ) )
|
||||
__UnixParseLangCP( GetEnv( "LANG" ), @cCP, @cLang )
|
||||
ELSE
|
||||
__UnixParseLangCP( GetEnv( "LC_CTYPE" ), @cCP, @cLang )
|
||||
ENDIF
|
||||
#elif defined( __PLATFORM__DOS )
|
||||
/* TODO */
|
||||
#elif defined( __PLATFORM__OS2 )
|
||||
/* TODO */
|
||||
#endif
|
||||
|
||||
IF ! Empty( cCP := __CPStdToHarbour( cCP, cLang ) )
|
||||
hb_SetTermCP( cCP )
|
||||
ENDIF
|
||||
|
||||
RETURN cCP
|
||||
|
||||
STATIC FUNCTION hbmk_auto_cp_os()
|
||||
LOCAL cCP
|
||||
LOCAL cLang
|
||||
|
||||
#if defined( __PLATFORM__WINDOWS )
|
||||
cCP := __CPWinToCPStd( hbmk_wapi_GetACP() )
|
||||
cLang := hb_UserLang()
|
||||
#elif defined( __PLATFORM__UNIX )
|
||||
IF ! Empty( GetEnv( "LANG" ) )
|
||||
__UnixParseLangCP( GetEnv( "LANG" ), @cCP, @cLang )
|
||||
ELSE
|
||||
__UnixParseLangCP( GetEnv( "LC_CTYPE" ), @cCP, @cLang )
|
||||
ENDIF
|
||||
#elif defined( __PLATFORM__DOS )
|
||||
/* TODO */
|
||||
#elif defined( __PLATFORM__OS2 )
|
||||
/* TODO */
|
||||
#endif
|
||||
|
||||
IF ! Empty( cCP := __CPStdToHarbour( cCP, cLang ) )
|
||||
Set( _SET_OSCODEPAGE, cCP )
|
||||
ENDIF
|
||||
|
||||
RETURN cCP
|
||||
|
||||
/* language[_territory][.codeset] */
|
||||
/* [language[_territory][.codeset][@modifier]] */
|
||||
/* TODO: handle "C"/"POSIX" values and values starting with "/" */
|
||||
STATIC FUNCTION __UnixParseLangCP( cString, /* @ */ cCP, /* @ */ cLang )
|
||||
LOCAL tmp
|
||||
|
||||
IF ( tmp := At( ".", cString ) ) > 0
|
||||
cLang := Left( cString, tmp - 1 )
|
||||
cCP := SubStr( cString, tmp + 1 )
|
||||
IF ( tmp := At( "@", cString ) ) > 0
|
||||
cCP := Left( cString, tmp - 1 )
|
||||
ENDIF
|
||||
ELSE
|
||||
cLang := cString
|
||||
cCP := "UTF-8"
|
||||
ENDIF
|
||||
|
||||
RETURN NIL
|
||||
|
||||
STATIC FUNCTION __CPUnixToCPStd( cCPUnix )
|
||||
|
||||
IF hb_isString( cCPUnix )
|
||||
|
||||
cCPUnix := StrTran( cCPUnix, "_" )
|
||||
cCPUnix := StrTran( cCPUnix, "-" )
|
||||
|
||||
/* TOFIX: update the list of std unix cp names */
|
||||
SWITCH Lower( cCPUnix )
|
||||
CASE "ibm437"
|
||||
CASE "cp437" ; RETURN "cp437"
|
||||
CASE "ibm737"
|
||||
CASE "cp737" ; RETURN "cp737"
|
||||
CASE "ibm775"
|
||||
CASE "cp775" ; RETURN "cp775"
|
||||
CASE "ibm850"
|
||||
CASE "cp850" ; RETURN "cp850"
|
||||
CASE "ibm852"
|
||||
CASE "cp852" ; RETURN "cp852"
|
||||
CASE "ibm857"
|
||||
CASE "cp857" ; RETURN "cp857"
|
||||
CASE "ibm860"
|
||||
CASE "cp860" ; RETURN "cp860"
|
||||
CASE "ibm861"
|
||||
CASE "cp861" ; RETURN "cp861"
|
||||
CASE "ibm865"
|
||||
CASE "cp865" ; RETURN "cp865"
|
||||
CASE "ibm866"
|
||||
CASE "cp866" ; RETURN "cp866"
|
||||
CASE "windows1250" ; RETURN "cp1250"
|
||||
CASE "windows1251" ; RETURN "cp1251"
|
||||
CASE "windows1252" ; RETURN "cp1252"
|
||||
CASE "windows1253" ; RETURN "cp1253"
|
||||
CASE "windows1254" ; RETURN "cp1254"
|
||||
CASE "windows1257" ; RETURN "cp1257"
|
||||
CASE "koi8r" ; RETURN "koi-8"
|
||||
CASE "koi8u" ; RETURN "koi-8u"
|
||||
CASE "iso88591" ; RETURN "iso8859-1"
|
||||
CASE "iso88592" ; RETURN "iso8859-2"
|
||||
CASE "iso88595" ; RETURN "iso8859-5"
|
||||
CASE "iso88597" ; RETURN "iso8859-7"
|
||||
CASE "iso88599" ; RETURN "iso8859-9"
|
||||
CASE "utf8" ; RETURN "utf8"
|
||||
ENDSWITCH
|
||||
ENDIF
|
||||
|
||||
RETURN ""
|
||||
|
||||
STATIC FUNCTION __CPWinToCPStd( nCPWin )
|
||||
|
||||
IF hb_isNumeric( nCPWin )
|
||||
SWITCH nCPWin
|
||||
CASE 437 ; RETURN "cp437"
|
||||
CASE 737 ; RETURN "cp737"
|
||||
CASE 775 ; RETURN "cp775"
|
||||
CASE 850 ; RETURN "cp850"
|
||||
CASE 852 ; RETURN "cp852"
|
||||
CASE 857 ; RETURN "cp857"
|
||||
CASE 860 ; RETURN "cp860"
|
||||
CASE 861 ; RETURN "cp861"
|
||||
CASE 865 ; RETURN "cp865"
|
||||
CASE 866 ; RETURN "cp866"
|
||||
CASE 1200 ; RETURN "utf16"
|
||||
CASE 1250 ; RETURN "cp1250"
|
||||
CASE 1251 ; RETURN "cp1251"
|
||||
CASE 1252 ; RETURN "cp1252"
|
||||
CASE 1253 ; RETURN "cp1253"
|
||||
CASE 1254 ; RETURN "cp1254"
|
||||
CASE 1257 ; RETURN "cp1257"
|
||||
CASE 20866 ; RETURN "koi-8"
|
||||
CASE 21866 ; RETURN "koi-8u"
|
||||
CASE 28591 ; RETURN "iso8859-1"
|
||||
CASE 28592 ; RETURN "iso8859-2"
|
||||
CASE 28595 ; RETURN "iso8859-5"
|
||||
CASE 28597 ; RETURN "iso8859-7"
|
||||
CASE 28599 ; RETURN "iso8859-9"
|
||||
CASE 65001 ; RETURN "utf8"
|
||||
ENDSWITCH
|
||||
ENDIF
|
||||
|
||||
RETURN ""
|
||||
|
||||
STATIC FUNCTION __CPStdToHarbour( cCPStd, cCtryStd )
|
||||
LOCAL cCP
|
||||
LOCAL cCtryHb
|
||||
LOCAL cdp
|
||||
|
||||
IF ! Empty( cCPStd )
|
||||
IF Lower( cCPStd ) == "utf8"
|
||||
cCP := "UTF8"
|
||||
ELSEIF Lower( cCPStd ) == "utf16"
|
||||
cCP := "UTF16LE"
|
||||
ELSE
|
||||
IF ! Empty( cCtryHb := __CtryStdToCtry( cCtryStd ) )
|
||||
FOR EACH cdp IN hb_cdpList()
|
||||
IF Left( cdp, 2 ) == cCtryHb
|
||||
IF Lower( cCPStd ) == hb_cdpUniID( cdp )
|
||||
cCP := cdp
|
||||
EXIT
|
||||
ENDIF
|
||||
ENDIF
|
||||
NEXT
|
||||
ENDIF
|
||||
IF Empty( cCP )
|
||||
FOR EACH cdp IN hb_cdpList()
|
||||
IF Lower( cCPStd ) == hb_cdpUniID( cdp )
|
||||
cCP := cdp
|
||||
EXIT
|
||||
ENDIF
|
||||
NEXT
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
RETURN
|
||||
RETURN cCP
|
||||
|
||||
STATIC FUNCTION __CtryStdToCtry( cCtryStd )
|
||||
LOCAL cCtryHb := Left( hb_cdpSelect(), 2 )
|
||||
|
||||
IF hb_isString( cCtryStd )
|
||||
SWITCH Lower( cCtryStd )
|
||||
CASE "af-za" ; EXIT
|
||||
CASE "af" ; EXIT
|
||||
CASE "ar-ae" ; EXIT
|
||||
CASE "ar-bh" ; EXIT
|
||||
CASE "ar-dz" ; EXIT
|
||||
CASE "ar-eg" ; EXIT
|
||||
CASE "ar-iq" ; EXIT
|
||||
CASE "ar-jo" ; EXIT
|
||||
CASE "ar-kw" ; EXIT
|
||||
CASE "ar-lb" ; EXIT
|
||||
CASE "ar-ly" ; EXIT
|
||||
CASE "ar-ma" ; EXIT
|
||||
CASE "ar-om" ; EXIT
|
||||
CASE "ar-qa" ; EXIT
|
||||
CASE "ar-sa" ; EXIT
|
||||
CASE "ar-sy" ; EXIT
|
||||
CASE "ar-tn" ; EXIT
|
||||
CASE "ar-ye" ; EXIT
|
||||
CASE "ar" ; EXIT
|
||||
CASE "az-az-cyrl" ; EXIT
|
||||
CASE "az-az-latn" ; EXIT
|
||||
CASE "az" ; EXIT
|
||||
CASE "be-by" ; EXIT
|
||||
CASE "be" ; EXIT
|
||||
CASE "bg-bg"
|
||||
CASE "bg" ; cCtryHb := "BG" ; EXIT
|
||||
CASE "ca-es" ; EXIT
|
||||
CASE "ca" ; EXIT
|
||||
CASE "cy-gb" ; EXIT
|
||||
CASE "cs-cz"
|
||||
CASE "cs" ; cCtryHb := "CS" ; EXIT
|
||||
CASE "da-dk"
|
||||
CASE "da" ; cCtryHb := "DK" ; EXIT
|
||||
CASE "de-at"
|
||||
CASE "de-ch"
|
||||
CASE "de-de"
|
||||
CASE "de-li"
|
||||
CASE "de-lu"
|
||||
CASE "de" ; cCtryHb := "DE" ; EXIT
|
||||
CASE "div-mv" ; EXIT
|
||||
CASE "div" ; EXIT
|
||||
CASE "el-gr"
|
||||
CASE "el" ; cCtryHb := "EL" ; EXIT
|
||||
CASE "en-au"
|
||||
CASE "en-bz"
|
||||
CASE "en-ca"
|
||||
CASE "en-cb"
|
||||
CASE "en-gb"
|
||||
CASE "en-ie"
|
||||
CASE "en-jm"
|
||||
CASE "en-nz"
|
||||
CASE "en-ph"
|
||||
CASE "en-tt"
|
||||
CASE "en-us"
|
||||
CASE "en-za"
|
||||
CASE "en-zw"
|
||||
CASE "en" ; cCtryHb := "EN" ; EXIT
|
||||
CASE "es-ar"
|
||||
CASE "es-bo"
|
||||
CASE "es-cl"
|
||||
CASE "es-co"
|
||||
CASE "es-cr"
|
||||
CASE "es-do"
|
||||
CASE "es-ec"
|
||||
CASE "es-es"
|
||||
CASE "es-gt"
|
||||
CASE "es-hn"
|
||||
CASE "es-mx"
|
||||
CASE "es-ni"
|
||||
CASE "es-pa"
|
||||
CASE "es-pe"
|
||||
CASE "es-pr"
|
||||
CASE "es-py"
|
||||
CASE "es-sv"
|
||||
CASE "es-uy"
|
||||
CASE "es-ve"
|
||||
CASE "es" ; cCtryHb := "ES" ; EXIT
|
||||
CASE "et-ee" ; EXIT
|
||||
CASE "et" ; EXIT
|
||||
CASE "eu-es" ; EXIT
|
||||
CASE "eu" ; EXIT
|
||||
CASE "fa-ir" ; EXIT
|
||||
CASE "fa" ; EXIT
|
||||
CASE "fi-fi"
|
||||
CASE "fi" ; cCtryHb := "FI" ; EXIT
|
||||
CASE "fo-fo" ; EXIT
|
||||
CASE "fo" ; EXIT
|
||||
CASE "fr-be"
|
||||
CASE "fr-ca"
|
||||
CASE "fr-ch"
|
||||
CASE "fr-fr"
|
||||
CASE "fr-lu"
|
||||
CASE "fr-mc"
|
||||
CASE "fr" ; cCtryHb := "FR" ; EXIT
|
||||
CASE "gl-es" ; EXIT
|
||||
CASE "gl" ; EXIT
|
||||
CASE "gu-in" ; EXIT
|
||||
CASE "gu" ; EXIT
|
||||
CASE "he-il" ; EXIT
|
||||
CASE "he" ; EXIT
|
||||
CASE "hi-in" ; EXIT
|
||||
CASE "hi" ; EXIT
|
||||
CASE "hr-hr"
|
||||
CASE "hr" ; cCtryHb := "HR" ; EXIT
|
||||
CASE "hu-hu"
|
||||
CASE "hu" ; cCtryHb := "HU" ; EXIT
|
||||
CASE "hy-am" ; EXIT
|
||||
CASE "hy" ; EXIT
|
||||
CASE "id-id" ; EXIT
|
||||
CASE "id" ; EXIT
|
||||
CASE "is-is"
|
||||
CASE "is" ; cCtryHb := "IS" ; EXIT
|
||||
CASE "it-ch"
|
||||
CASE "it-it"
|
||||
CASE "it" ; cCtryHb := "IT" ; EXIT
|
||||
CASE "ja-jp" ; EXIT
|
||||
CASE "ja" ; EXIT
|
||||
CASE "ka-ge" ; EXIT
|
||||
CASE "ka" ; EXIT
|
||||
CASE "kk-kz" ; EXIT
|
||||
CASE "kk" ; EXIT
|
||||
CASE "kn-in" ; EXIT
|
||||
CASE "kn" ; EXIT
|
||||
CASE "ko-kr" ; EXIT
|
||||
CASE "ko" ; EXIT
|
||||
CASE "kok-in" ; EXIT
|
||||
CASE "kok" ; EXIT
|
||||
CASE "ky-kz" ; EXIT
|
||||
CASE "ky" ; EXIT
|
||||
CASE "lt-lt"
|
||||
CASE "lt" ; cCtryHb := "LT" ; EXIT
|
||||
CASE "lv-lv" ; EXIT
|
||||
CASE "lv" ; EXIT
|
||||
CASE "mk-mk" ; EXIT
|
||||
CASE "mk" ; EXIT
|
||||
CASE "mn-mn" ; EXIT
|
||||
CASE "mn" ; EXIT
|
||||
CASE "mr-in" ; EXIT
|
||||
CASE "mr" ; EXIT
|
||||
CASE "ms-bn" ; EXIT
|
||||
CASE "ms-my" ; EXIT
|
||||
CASE "ms" ; EXIT
|
||||
CASE "nb-no" ; EXIT
|
||||
CASE "nl-be"
|
||||
CASE "nl-nl"
|
||||
CASE "nl" ; cCtryHb := "NL" ; EXIT
|
||||
CASE "nn-no" ; EXIT
|
||||
CASE "no" ; cCtryHb := "NO" ; EXIT
|
||||
CASE "pa-in" ; EXIT
|
||||
CASE "pa" ; EXIT
|
||||
CASE "pl-pl"
|
||||
CASE "pl" ; cCtryHb := "PL" ; EXIT
|
||||
CASE "pt-br"
|
||||
CASE "pt-pt"
|
||||
CASE "pt" ; cCtryHb := "PT" ; EXIT
|
||||
CASE "ro-ro"
|
||||
CASE "ro" ; cCtryHb := "RO" ; EXIT
|
||||
CASE "ru-ru"
|
||||
CASE "ru" ; cCtryHb := "RU" ; EXIT
|
||||
CASE "sa-in" ; EXIT
|
||||
CASE "sa" ; EXIT
|
||||
CASE "sk-sk"
|
||||
CASE "sk" ; cCtryHb := "SK" ; EXIT
|
||||
CASE "sl-si"
|
||||
CASE "sl" ; cCtryHb := "SL" ; EXIT
|
||||
CASE "sq-al" ; EXIT
|
||||
CASE "sq" ; EXIT
|
||||
CASE "sr-sp-cyrl"
|
||||
CASE "sr-sp-latn" ; cCtryHb := "SR" ; EXIT
|
||||
CASE "sv-fi"
|
||||
CASE "sv-se"
|
||||
CASE "sv" ; cCtryHb := "SV" ; EXIT
|
||||
CASE "sw-ke" ; EXIT
|
||||
CASE "sw" ; EXIT
|
||||
CASE "syr-sy" ; EXIT
|
||||
CASE "syr" ; EXIT
|
||||
CASE "ta-in" ; EXIT
|
||||
CASE "ta" ; EXIT
|
||||
CASE "te-in" ; EXIT
|
||||
CASE "te" ; EXIT
|
||||
CASE "th-th" ; EXIT
|
||||
CASE "th" ; EXIT
|
||||
CASE "tr-tr"
|
||||
CASE "tr" ; cCtryHb := "TR" ; EXIT
|
||||
CASE "tt-ru" ; EXIT
|
||||
CASE "tt" ; EXIT
|
||||
CASE "uk-ua"
|
||||
CASE "uk" ; cCtryHb := "UA" ; EXIT
|
||||
CASE "ur-pk" ; EXIT
|
||||
CASE "ur" ; EXIT
|
||||
CASE "uz-uz-cyrl" ; EXIT
|
||||
CASE "uz-uz-latn" ; EXIT
|
||||
CASE "uz" ; EXIT
|
||||
CASE "vi-vn" ; EXIT
|
||||
CASE "vi" ; EXIT
|
||||
CASE "zh-chs" ; EXIT
|
||||
CASE "zh-cht" ; EXIT
|
||||
CASE "zh-cn" ; EXIT
|
||||
CASE "zh-hk" ; EXIT
|
||||
CASE "zh-mo" ; EXIT
|
||||
CASE "zh-sg" ; EXIT
|
||||
CASE "zh-tw" ; EXIT
|
||||
ENDSWITCH
|
||||
ENDIF
|
||||
|
||||
RETURN cCtryHb
|
||||
|
||||
STATIC PROCEDURE ShowHeader( hbmk )
|
||||
LOCAL cTrsText
|
||||
|
||||
@@ -351,11 +351,6 @@ msgstr " hbmk2 [opções] [<script[s]>] <src[s][.prg|.c|.obj|.o|.rc|.res|.def|.
|
||||
msgid "inherit .prg/.c/linker flags (or none) from Harbour build"
|
||||
msgstr "herdar todos os flags .prg/.c/linker (ou nenhum) provindos do Harbour "
|
||||
|
||||
#: hbmk2.prg:7787 hbmk2.prg:11440
|
||||
#, c-format
|
||||
msgid "cdp=EN"
|
||||
msgstr "cdp=PTISO"
|
||||
|
||||
#: hbmk2.prg:7946 hbmk2.prg:11637
|
||||
#, c-format
|
||||
msgid "Notes:"
|
||||
@@ -971,21 +966,11 @@ msgstr "criar/atualizar arquivo .po à partir dos fontes. Se um arquivo .po com
|
||||
msgid "clean (in incremental build mode)"
|
||||
msgstr "compilação limpa (em modo de compilação incremental)"
|
||||
|
||||
#: hbmk2.prg:7791 hbmk2.prg:11444
|
||||
#, c-format
|
||||
msgid "nix=EN"
|
||||
msgstr "nix=UTF8"
|
||||
|
||||
#: hbmk2.prg:7942 hbmk2.prg:11633
|
||||
#, c-format
|
||||
msgid "stop after creating the object files and accept raw C flags\\ncreate link/copy hbmk2 to hbcc for the same effect"
|
||||
msgstr "interromper após criar os arquivos objetos e processa-los com o compilador C\\ncriar um link ou copiar o hbmk2 para hbcc resultará no mesmo efeito"
|
||||
|
||||
#: hbmk2.prg:7791 hbmk2.prg:11444
|
||||
#, c-format
|
||||
msgid "wdo=EN"
|
||||
msgstr "wdo=PT850"
|
||||
|
||||
#: hbmk2.prg:7808 hbmk2.prg:11462
|
||||
#, c-format
|
||||
msgid "Translation (%1$s): (add your name here)"
|
||||
|
||||
69
harbour/utils/hbmk2/hbmk2c.c
Normal file
69
harbour/utils/hbmk2/hbmk2c.c
Normal file
@@ -0,0 +1,69 @@
|
||||
/*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
/*
|
||||
* Harbour Project source code:
|
||||
* Windows API functions (winnls)
|
||||
*
|
||||
* Copyright 2009 Viktor Szakats (harbour syenar.net)
|
||||
* www - http://harbour-project.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this software; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/).
|
||||
*
|
||||
* As a special exception, the Harbour Project gives permission for
|
||||
* additional uses of the text contained in its release of Harbour.
|
||||
*
|
||||
* The exception is that, if you link the Harbour libraries with other
|
||||
* files to produce an executable, this does not by itself cause the
|
||||
* resulting executable to be covered by the GNU General Public License.
|
||||
* Your use of that executable is in no way restricted on account of
|
||||
* linking the Harbour library code into it.
|
||||
*
|
||||
* This exception does not however invalidate any other reasons why
|
||||
* the executable file might be covered by the GNU General Public License.
|
||||
*
|
||||
* This exception applies only to the code released by the Harbour
|
||||
* Project under the name Harbour. If you copy code from other
|
||||
* Harbour Project or Free Software Foundation releases into a copy of
|
||||
* Harbour, as the General Public License permits, the exception does
|
||||
* not apply to the code that you add in this way. To avoid misleading
|
||||
* anyone as to the status of such modified files, you must delete
|
||||
* this exception notice from them.
|
||||
*
|
||||
* If you write modifications of your own for Harbour, it is your choice
|
||||
* whether to permit this exception to apply to your modifications.
|
||||
* If you do not wish that, delete this exception notice.
|
||||
*
|
||||
*/
|
||||
|
||||
#include "hbapi.h"
|
||||
|
||||
#if defined( HB_OS_WIN )
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
HB_FUNC( HBMK_WAPI_GETACP )
|
||||
{
|
||||
hb_retnl( GetACP() );
|
||||
}
|
||||
|
||||
HB_FUNC( HBMK_WAPI_GETOEMCP )
|
||||
{
|
||||
hb_retnl( GetOEMCP() );
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user