* include/hbextern.ch
* common.mak
* source/codepage/Makefile
* source/codepage/cpeswinm.c
- source/codepage/cpes850.c
+ source/codepage/cpes850c.c
* source/codepage/cpesiso.c
+ source/codepage/cpesisoc.c
* source/codepage/cpeswin.c
+ source/codepage/cpeswinc.c
* source/codepage/cpesisom.c
* Spanish language support cleaned:
Modern collation made the default, fixed
CP linkage in ESWIN collations, Clipper
compatibility versions renamed to have an
ending 'C'
Now the following collations are supported:
ES850C - Clipper compatibility CP: IBM850
ESWINC - Clipper compatibility CP: Windows-1252
ESISOC - Clipper compatibility CP: ISO-8859-1
ESWIN - Modern CP: Windows-1252
ESISO - Modern CP: ISO-8859-1
ESMWIN - Compatibility with previous Harbour versions and xhb.
(this collation has wrong linkage, so everyone is
encouraged to use ESWIN or ESISO instead.)
Intentionally not added to hbextern.ch.
; TODO: Add ES850.
; TODO: Check whether Clipper compatibility is indeed true.
* common.mak
* source/codepage/Makefile
+ source/codepage/cpsviso.c
+ Added SVISO, which is the same as SVWIN, except it's
internally using ISO-8859-1 CP in sync with its name.
* source/codepage/cpsvwin.c
! Changed internal CP to Windows-1252 from ISO-8859-1,
so that it's in sync with its name.
* common.mak
* source/codepage/Makefile
- source/codepage/cpesmwin.c
+ source/codepage/cpeswinm.c
+ source/codepage/cpesiso.c
+ source/codepage/cpesisom.c
* Renamed cpesmwin -> cpeswinm (ESMWIN -> ESWINM) (INCOMPATIBLE)
+ Added Spanish ISO natsort modules. Besides their ID,
they are idendical with current ESWIN* natsorts, because
the WIN versions for some reason are using ISO-8859 CP
instead of Windows-*. This is IMO wrong, even if these CPs
are similar or identical for the Spanish language.
* harbour-ce-spec
* harbour-w32-spec
* bin/bld.bat
* harbour.spec
* common.mak
* source/pp/Makefile
* source/lang/Makefile
* source/macro/Makefile
* source/rtl/Makefile
* source/vm/mainstd/Makefile
* source/vm/Makefile
* source/vm/mainwin/Makefile
* source/main/Makefile
* source/debug/Makefile
* source/codepage/Makefile
* source/common/Makefile
* source/rdd/nulsys/Makefile
* source/rdd/Makefile
* source/rdd/hsx/Makefile
* source/rdd/usrrdd/Makefile
* source/compiler/Makefile
* contrib/hbct/tests/Makefile
* contrib/hbodbc/tests/bld_b32.bat
* contrib/hbole/tests/bld_b32.bat
* contrib/hbapollo/tests/bld.bat
* contrib/hbfbird/tests/bld_b32.bat
* contrib/hbfbird/tests/Makefile
* contrib/hbpgsql/tests/Makefile
* contrib/hbfimage/tests/bld_b32.bat
* contrib/hbgd/tests/bldtest.bat
* contrib/hbmisc/tests/Makefile
* contrib/hbgf/tests/bld_b32.bat
* contrib/hbbtree/tests/Makefile
* contrib/examples/guestbk/Makefile
* contrib/examples/pe/Makefile
* contrib/examples/dbu/Makefile
* contrib/examples/misc/Makefile
* contrib/examples/hscript/Makefile
* utils/hbdoc/Makefile
* utils/hbextern/Makefile
* utils/hbdot/Makefile
* utils/hbmake/Makefile
* utils/hbmake/hbmutils.prg
* utils/hbmake/hbmake.prg
* utils/hbpp/Makefile
* utils/hbpptest/Makefile
* utils/hbtest/Makefile
* utils/hbrun/Makefile
* tests/Makefile
* Core libs renamed to be prefixed with hb, while
having the first significant 5 chars unique.
Old name New name
-------- --------
codepage -> hbcpage
common -> hbcommon
compiler -> hbcplr
debug -> hbdebug
hbsix -> hbsix
hsx -> hbhsx
lang -> hblang
macro -> hbmacro
pp -> hbpp
rtl -> hbrtl
vm -> hbvm
rdd -> hbrdd
dbfcdx -> rddcdx
dbffpt -> rddfpt
dbfntx -> rddntx
nulsys -> hbnulrdd
usrrdd -> hbusrrdd
mainwin -> hbmainwin
mainstd -> hbmainstd
NOTE/TODO: We're currently not in sync with contribs,
regarding hb prefixing, since in contrib
rdds and gts (rightly) also have hb prefixes.
The only reason not to add them in core this
time, is to keep compatibility with DJGPP.
Maybe we should remove those prefixes from
contrib.
NOTE/TODO: Do tests in as many platforms and as many contrib
tests as possible. Feedback from hbmake users is
also welcome.
!!! Please update your local make files !!!
* include/hbgtinfo.ch
+ Added HB_ prefixed versions for all GTI_ macros.
Unprefixed GTI_ macros are to be considered xhb
compatible (or legacy) ones, and they can be
excluded by #defining HB_GT_NO_XHB if they seem to
collide with user code.
TODO: Switch to use HB_GTI_* inside Harbour code.
* include/hbextern.ch
* common.mak
* source/codepage/Makefile
- source/codepage/cpdedos.c
+ source/codepage/cpde850.c
- source/codepage/cpeldos.c
+ source/codepage/cpel737.c
- source/codepage/cpesdos.c
+ source/codepage/cpes850.c
- source/codepage/cpfrdos.c
+ source/codepage/cpfr850.c
- source/codepage/cptrdos.c
+ source/codepage/cptr857.c
! Renamed some codepage modules to include the
actual DOS codepage number instead of nothing
or generic "dos" name.
* common.mak
* source/lang/Makefile
+ source/lang/msgtr857.c
- source/lang/msgtrdos.c
! Rename one language module to be in sync with
proper internal ID.
* doc/howtosvn.txt
! Fixed the SVN propset command to include all needed keywords,
not just "Id".
* common.mak
* source/codepage/Makefile
- source/codepage/cpgedos.c
- source/codepage/cpgeiso.c
+ source/codepage/cpdedos.c
+ source/codepage/cpdeiso.c
! Renamed to be in sync with rules and content.
* source/lang/msgnl.c
! svn propset svn:keywords "Author Date Id Revision".
(to correct my prev commit)
* include/hbextern.ch
! Adjusted CP/MSG module names.
* source/codepage/cphuwins.c
* source/codepage/cphuiso.c
* source/codepage/cphuwin.c
* source/codepage/cphuisos.c
! Fixed sloppy wording in comment. (Thanks Chen)
* common.mak
* source/codepage/Makefile
+ source/codepage/cpgeiso.c
- source/codepage/cpgewin.c
* Renamed to ISO to be in sync with the actual codepage used.
(Thanks Chen)
; Might be a good idea to readd the "real" WIN version to stay
compatible. Anyone?
* harbour/common.mak
* harbour/source/codepage/Makefile
+ harbour/source/codepage/cpesmwin.c
- harbour/source/codepage/cpesmwi.c
* renamed
* harbour/source/rtl/cdpapi.c
! do not use '~' as accented character marker if neither ACCENTED_EQUAL
nor ACCENTED_INTERLEAVED is set - in some CPs '~' is a letter
! use '~' as accented character marker only if it exists in UPPER and
LOWER letter sets - our CP code cannot properly decode letter sets
when this condition is not true - it should be fixed (TOFIX)
! use '.' as multibyte character marker only if it exists in UPPER and
LOWER letter sets - our CP code cannot properly decode letter sets
when this condition is not true - it should be fixed (TOFIX)
* harbour/source/codepage/cpeldos.c
* harbour/source/codepage/cpelwin.c
* updated accent marker upper letters to be the same as in lower ones
Greek users should fix me.
* common.mak
* source/codepage/Makefile
+ source/codepage/cpsv850.c
+ source/codepage/cpsvclip.c
+ source/codepage/cpsvwin.c
+ Added Swedish codapages from xHarbour.
; The codepages are now synced.
* common.mak
* source/codepage/Makefile
+ source/codepage/cpsk852.c
+ source/codepage/cpskiso.c
+ source/codepage/cpskwin.c
+ source/codepage/cpskkam.c
+ Added Slovak codepages. Pls. test them if you are
familiar with the language rules.
* harbour/source/codepage/cp_tpl.c
+ Added NOTE about the fact that hb_Translate()
(and hb_cdpTranslate()) would only work properly
if all codepages for the same language are using the
exact same number of lowercase/uppercase cp chars
in the exact same order.
* harbour/source/codepage/Makefile
* harbour/common.mak
* harbour/source/codepage/cphu852.c
* harbour/source/codepage/cphu852s.c
* harbour/source/codepage/cphuiso.c
+ harbour/source/codepage/cphuisos.c
* harbour/source/codepage/cphuwin.c
+ harbour/source/codepage/cphuwins.c
! Synced HU WIN and HU ISO codepage lower/uppercase
strings with HU 852, so that hb_Translate() works
properly. (this means there are now several duplicate
chars included in the WIN/ISO versions, along with
a non-HU char, all just needed to stay compatible with
original CA-Cl*pper HU/852 index ordering and keep
hb_Translate() working at the same time.)
IMO, we'd need to introduce a separate "collation"
string in each cp file to detach index ordering
from upper/lowercase and codepage translation without
any hacks, since as this example shows these two
are not always in sync. (or, as an alternative we might
want to make codepage translation more sophisticated,
like converting first to unicode and convert back to
the other codepage from unicode, but that leads a bit
further.). (If I'm missing something, pls don't hesitate
to clarify)
+ Added SixDriver compatible HU ISO/WIN codepage files
for the reasons described above.
* harbour/include/hbapicdp.h
* harbour/source/rtl/cdpapi.c
* harbour/source/codepage/cpbg866.c
* harbour/source/codepage/cpbgiso.c
* harbour/source/codepage/cpbgwin.c
* harbour/source/codepage/cpcs852.c
* harbour/source/codepage/cpcsiso.c
* harbour/source/codepage/cpcskam.c
* harbour/source/codepage/cpcswin.c
* harbour/source/codepage/cpeldos.c
* harbour/source/codepage/cpelwin.c
* harbour/source/codepage/cpesdos.c
* harbour/source/codepage/cpesmwi.c
* harbour/source/codepage/cpeswin.c
* harbour/source/codepage/cpfrdos.c
* harbour/source/codepage/cpgedos.c
* harbour/source/codepage/cpgewin.c
* harbour/source/codepage/cphr1250.c
* harbour/source/codepage/cphr437.c
* harbour/source/codepage/cphr852.c
* harbour/source/codepage/cphu852.c
* harbour/source/codepage/cphu852s.c
* harbour/source/codepage/cphuiso.c
* harbour/source/codepage/cphuwin.c
* harbour/source/codepage/cpit437.c
* harbour/source/codepage/cpit850.c
* harbour/source/codepage/cpitisb.c
* harbour/source/codepage/cpitiso.c
* harbour/source/codepage/cpltwin.c
* harbour/source/codepage/cppl852.c
* harbour/source/codepage/cppliso.c
* harbour/source/codepage/cpplmaz.c
* harbour/source/codepage/cpplwin.c
* harbour/source/codepage/cppt850.c
* harbour/source/codepage/cpptiso.c
* harbour/source/codepage/cpru866.c
* harbour/source/codepage/cprukoi.c
* harbour/source/codepage/cpruwin.c
* harbour/source/codepage/cpsl437.c
* harbour/source/codepage/cpsl852.c
* harbour/source/codepage/cpsliso.c
* harbour/source/codepage/cpslwin.c
* harbour/source/codepage/cpsrwin.c
* harbour/source/codepage/cptrdos.c
* harbour/source/codepage/cptrwin.c
* harbour/source/codepage/cpua866.c
* harbour/source/codepage/cpuakoi.c
* harbour/source/codepage/cpuawin.c
* harbour/source/codepage/uc1250.c
* harbour/source/codepage/uc1251.c
* harbour/source/codepage/uc1253.c
* harbour/source/codepage/uc1254.c
* harbour/source/codepage/uc1257.c
* harbour/source/codepage/uc737.c
* harbour/source/codepage/uc850.c
* harbour/source/codepage/uc852.c
* harbour/source/codepage/uc857.c
* harbour/source/codepage/uc866.c
* harbour/source/codepage/uc88591b.c
* harbour/source/codepage/uc8859_1.c
* harbour/source/codepage/uc8859_2.c
* harbour/source/codepage/uc8859_5.c
* harbour/source/codepage/uckam.c
* harbour/source/codepage/uckoi8.c
* harbour/source/codepage/uckoi8u.c
* harbour/source/codepage/ucmaz.c
! #define namespace issue in public API header file
corrected:
CPID_* -> HB_CPID_*
UNITB_* -> HB_UNITB_*
* harbour/source/compiler/gencobj.c
! Fixed warning.
* harbour/common.mak
* harbour/source/codepage/Makefile
* harbour/source/codepage/cphu852.c
+ harbour/source/codepage/cphu852s.c
! Default Hungarian 852 codepage made 100% compatible with
ntxhu852.obj for CA-Cl*pper 5.x.
+ Added Hungarian 852 codepage 100% compatible with
sixhu852.obj for S*ccessWare SIx Driver.
(this was formerly used as the default Hungarian 852
codepage for Harbour, the only change now is the ID and
comment cleanup.)
* harbour/include/hbexprop.h
* harbour/source/common/expropt1.c
+ added hb_compExprParamListLen()
* harbour/include/hbexpra.c
* harbour/include/hbexprb.c
* use hb_compExprParamListLen()
* harbour/include/hbexprc.c
* generate error message for syntax like:
o:var()++ or o:var()+=10
only:
o:var++ and o:var+=10
is supported, just like for @o:var
* harbour/include/hbapi.h
* harbour/source/common/hbstr.c
+ hb_numDecConv() used to convert double value to/from binary integer
fields with fixed number of decimal places
* harbour/common.mak
* harbour/include/hbapicdp.h
* harbour/source/codepage/Makefile
+ harbour/source/codepage/cptrdos.c
+ harbour/source/codepage/cptrwin.c
* harbour/source/lang/Makefile
+ harbour/source/lang/msgtrdos.c
+ harbour/source/lang/msgtrwin.c
+ added Turkish CPs and MSGs created by Bicahi Esgici
+ harbour/source/codepage/uc1254.c
+ harbour/source/codepage/uc857.c
+ added unicode tables for Turkish CPs
* harbour/source/rdd/dbf1.c
* harbour/source/rdd/workarea.c
+ added support for decimal places in binary integer fields ("I")
! fixed currency field decoding ("Y") - it's integer binary value
not IEEE758 double. Warning: on write the value is rounded not
truncated like in VFP.
* harbour/source/lang/msgcs852.c
* harbour/source/lang/msgcsiso.c
* harbour/source/lang/msgcskam.c
* harbour/source/lang/msgcswin.c
* typo fixed (Vojtech Obrdlik <vobrdlik centrum.cz>)
* harbour/include/hbapicdp.h
* harbour/source/codepage/Makefile
+ harbour/source/codepage/cpcs852.c
+ harbour/source/codepage/cpcsiso.c
+ harbour/source/codepage/cpcskam.c
+ harbour/source/codepage/cpcswin.c
+ harbour/source/codepage/uckam.c
* harbour/doc/en/lang.txt
* harbour/common.mak
+ added czech codepage support (Vojtech Obrdlik <vobrdlik centrum.cz>)
Vojtech many thanks.
We will have to fix our CDP code to work well with characters
with the same wight - now sorting with such codepages does not
work correctly, f.e. in CSISO:
CHR(65)+CHR(204) > CHR(65)+CHR(201)
but:
CHR(65)+CHR(201) >= CHR(65)+CHR(204)
as you can see comparison depends on string order:
s1 > s2 but not s2 < s1
It means that such codepages cannot be used in any sorting
systems like indexes until we will not fix internal CPD logic.
Alexander can you look at it?
If not then please inform me and I'll work on it in some spare
time.
* harbour/source/rtl/do.c
* minor RTE message simplification
* harbour/source/rtl/gtos2/gtos2.c
* casting
* harbour/source/vm/dynsym.c
+ added __DYNSN2SYM( <cName> ) -> symbolItem
* harbour/include/hbapi.h
* harbour/source/vm/arrays.c
+ added supercast and superoffset members to hb_struArray structure
* harbour/source/vm/classes.c
* harbour/source/rtl/tclass.prg
! fixed calculation of instance area offsets
! fixed accessing instance variables with super casting
+ added selfclass casting
+ added support for sending 'exec' and 'name' messages to
symbol items, f.e.:
funcSym := (@funcName())
? "Exacuting:", funcSym:name
funcSym:exec( param1, param2, ... )
* changed __CLASSNAME() to be Clipper compatible
* changed __CLSINST()/__CLASSINSTANCE() now accepts as third paramter
function name - Clipper compatible
! fixed GPF trap in __OBJGETCLSNAME() when executed with wrong parameter
* some other fixes and small speed improvement
+ config/dos/owatcom.cf
* added configuration file for OpenWatcom (renamed
from watcom.cf)
* config/dos/watcom.cf
* restored previous version so it correctly compiles
under WatcomC 10 - please use watcom.cf for WatcomC
and owatcom.cf for OpenWatcom
* makefile.bc
* makefile.nt
* makefile.vc
* hrbdll.bc
* source/codepage/Makefile
+ source/codepage/cdpsrwin.c
+ new file with Serbian codepage
* CVSROOT/avail
* removed reference to my local file
* ERRATA
* updated (removed reference to tmpname)
* doc/codestyl.txt
* updated with some coding guidelines adopted from PHP
(please fell free to discuss them ;-)
* doc/howtocvs.txt
* added description for commit on Linux
* include/hbapicdp.h
* source/codepage/cdpesdos.c
* restored previous versions
* include/hbcomp.h
* added <malloc.h> reference for WatcomC compiler
* include/hbexprc.c
* fixed warning reported by WatcomC
* source/vm/itemapi.c
* fixed infinite support for WatcomC
* source/rtl/cdpapi.c
* renamed global symbol s_cdpage into hb_cdp_page
* source/rtl/gtcrs/kbdcrs.c
* fixed reporting keystrokes with codes > 127
+ source/codepage/cdphu852.c
+ source/codepage/cdphuwin.c
* source/codepage/Makefile
* makefile.bc
* makefile.nt
* makefile.vc
+ Added Hungarian 852 and Windows sorting codepages.
* source/rtl/errorapi.c
+ source/rtl/errorint.c
* source/rtl/Makefile
* makefile.bc
* makefile.nt
* makefile.vc
+ hb_errInternal() put in a separate source file, to ease
replacing/override it in link-time, this may be useful
for GUI apps, logging or something like this.