2013-04-05 02:57 UTC+0200 Viktor Szakats (harbour syenar.net)
* bin/check.hb
! fixed to use local implementation instead of hb_DirScan()
which has known bug of missing extensionless files on win.
(due to hb_FileMatch() problem)
+ added support to optimize images and uncrustify C source
before upload (inactive yet)
+ added necessary exceptions now that extensionless files
properly found
+ checks for filenames without extensions
+ checks for filenames with extensions not in .gitattributes
* bin/commit.hb
+ show helpful advice when pre-commit hook check fails
! fixed to propely pick filenames that result from rename operations (for check)
! fixed to not pick filenames of deleted files (for check)
* config/lang.hb
* doc/en/lang.txt
* include/hblang.hbx
* src/lang/Makefile
* src/lang/l_zh_tra.c -> src/lang/l_zh.c
* src/rtl/langcomp.prg
* Language renamed: zh_tra -> zh (in sync with recently laid rules)
The 'REQUEST HB_LANG_*' value become INCOMPATIBLE compared
to previous dev versions
* src/rtl/cdpdet.prg
+ added 'zh' country code to codepage detection
* contrib/make.hb
* contrib/hbplist -> contrib/hbplist.txt
* renamed to have an extension
* contrib/hbrun/doc/_GENERATED_ -> contrib/hbrun/doc/_autogen.txt
* utils/hbmk2/doc/_GENERATED_ -> utils/hbmk2/doc/_autogen.txt
* renamed to have names fitting naming rules
+ added warning message inside
- extras/httpsrv/logs/empty
- deleted unnecessary file with non-compliant filename
- tests/stripeol.hb
% deleted, now similar functionality is implemented in bin/check.hb
* .gitattributes
! added missing .log and .ucf
* contrib/hbtinymt/3rd/tinymt/tinymt.hbp
! deleted SVN ID
* debian/copyright
! synced with COPYING.txt
* debian/postinst
* debian/postrm
! deleted multiple EOL at EOF
This commit is contained in:
2
.gitattributes
vendored
2
.gitattributes
vendored
@@ -23,6 +23,7 @@ ChangeLog.txt ident
|
|||||||
*.in text
|
*.in text
|
||||||
*.ini text
|
*.ini text
|
||||||
*.js text
|
*.js text
|
||||||
|
*.log text
|
||||||
*.m text
|
*.m text
|
||||||
*.md text
|
*.md text
|
||||||
*.mft text
|
*.mft text
|
||||||
@@ -38,6 +39,7 @@ ChangeLog.txt ident
|
|||||||
*.sx text
|
*.sx text
|
||||||
*.tpl text
|
*.tpl text
|
||||||
*.txt text
|
*.txt text
|
||||||
|
*.ucf text
|
||||||
*.vbs text
|
*.vbs text
|
||||||
*.xml text
|
*.xml text
|
||||||
*.xsl text
|
*.xsl text
|
||||||
|
|||||||
@@ -10,6 +10,64 @@
|
|||||||
* Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment
|
* Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
2013-04-05 02:57 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||||
|
* bin/check.hb
|
||||||
|
! fixed to use local implementation instead of hb_DirScan()
|
||||||
|
which has known bug of missing extensionless files on win.
|
||||||
|
(due to hb_FileMatch() problem)
|
||||||
|
+ added support to optimize images and uncrustify C source
|
||||||
|
before upload (inactive yet)
|
||||||
|
+ added necessary exceptions now that extensionless files
|
||||||
|
properly found
|
||||||
|
+ checks for filenames without extensions
|
||||||
|
+ checks for filenames with extensions not in .gitattributes
|
||||||
|
|
||||||
|
* bin/commit.hb
|
||||||
|
+ show helpful advice when pre-commit hook check fails
|
||||||
|
! fixed to propely pick filenames that result from rename operations (for check)
|
||||||
|
! fixed to not pick filenames of deleted files (for check)
|
||||||
|
|
||||||
|
* config/lang.hb
|
||||||
|
* doc/en/lang.txt
|
||||||
|
* include/hblang.hbx
|
||||||
|
* src/lang/Makefile
|
||||||
|
* src/lang/l_zh_tra.c -> src/lang/l_zh.c
|
||||||
|
* src/rtl/langcomp.prg
|
||||||
|
* Language renamed: zh_tra -> zh (in sync with recently laid rules)
|
||||||
|
The 'REQUEST HB_LANG_*' value become INCOMPATIBLE compared
|
||||||
|
to previous dev versions
|
||||||
|
|
||||||
|
* src/rtl/cdpdet.prg
|
||||||
|
+ added 'zh' country code to codepage detection
|
||||||
|
|
||||||
|
* contrib/make.hb
|
||||||
|
* contrib/hbplist -> contrib/hbplist.txt
|
||||||
|
* renamed to have an extension
|
||||||
|
|
||||||
|
* contrib/hbrun/doc/_GENERATED_ -> contrib/hbrun/doc/_autogen.txt
|
||||||
|
* utils/hbmk2/doc/_GENERATED_ -> utils/hbmk2/doc/_autogen.txt
|
||||||
|
* renamed to have names fitting naming rules
|
||||||
|
+ added warning message inside
|
||||||
|
|
||||||
|
- extras/httpsrv/logs/empty
|
||||||
|
- deleted unnecessary file with non-compliant filename
|
||||||
|
|
||||||
|
- tests/stripeol.hb
|
||||||
|
% deleted, now similar functionality is implemented in bin/check.hb
|
||||||
|
|
||||||
|
* .gitattributes
|
||||||
|
! added missing .log and .ucf
|
||||||
|
|
||||||
|
* contrib/hbtinymt/3rd/tinymt/tinymt.hbp
|
||||||
|
! deleted SVN ID
|
||||||
|
|
||||||
|
* debian/copyright
|
||||||
|
! synced with COPYING.txt
|
||||||
|
|
||||||
|
* debian/postinst
|
||||||
|
* debian/postrm
|
||||||
|
! deleted multiple EOL at EOF
|
||||||
|
|
||||||
2013-04-04 16:09 UTC+0200 Viktor Szakats (harbour syenar.net)
|
2013-04-04 16:09 UTC+0200 Viktor Szakats (harbour syenar.net)
|
||||||
* config/lang.hb
|
* config/lang.hb
|
||||||
* utils/hbmk2/hbmk2.hbp
|
* utils/hbmk2/hbmk2.hbp
|
||||||
|
|||||||
108
bin/check.hb
108
bin/check.hb
@@ -25,9 +25,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* TODO: Apply transformations:
|
/* TODO: Apply transformations:
|
||||||
Uncrustify, hbformat,
|
|
||||||
pngout/pngcrush/optipng/advpng,
|
|
||||||
jpgoptim/jpegtran/jpegrescan,
|
|
||||||
css/html/xml format, etc */
|
css/html/xml format, etc */
|
||||||
|
|
||||||
#pragma -w3
|
#pragma -w3
|
||||||
@@ -49,10 +46,7 @@ FUNCTION CheckFileList( xName )
|
|||||||
|
|
||||||
IF Empty( xName ) .OR. HB_ISARRAY( xName )
|
IF Empty( xName ) .OR. HB_ISARRAY( xName )
|
||||||
IF Empty( xName )
|
IF Empty( xName )
|
||||||
xName := hb_DirScan( "", hb_osFileMask() )
|
xName := my_DirScan( hb_osFileMask() )
|
||||||
FOR EACH file IN xName
|
|
||||||
file := file[ F_NAME ]
|
|
||||||
NEXT
|
|
||||||
ENDIF
|
ENDIF
|
||||||
FOR EACH file IN xName
|
FOR EACH file IN xName
|
||||||
IF ! CheckFile( file, @aErr )
|
IF ! CheckFile( file, @aErr )
|
||||||
@@ -72,6 +66,7 @@ STATIC FUNCTION CheckFile( cName, /* @ */ aErr, lApplyFixes )
|
|||||||
LOCAL tmp
|
LOCAL tmp
|
||||||
LOCAL cEOL
|
LOCAL cEOL
|
||||||
|
|
||||||
|
LOCAL lProcess
|
||||||
LOCAL lReBuild
|
LOCAL lReBuild
|
||||||
LOCAL lRemoveEndingWhitespace
|
LOCAL lRemoveEndingWhitespace
|
||||||
|
|
||||||
@@ -96,14 +91,21 @@ STATIC FUNCTION CheckFile( cName, /* @ */ aErr, lApplyFixes )
|
|||||||
"*.md", ;
|
"*.md", ;
|
||||||
"*.html", ;
|
"*.html", ;
|
||||||
"*/hb-charmap.def", ; /* TOFIX: Use 8.3 name */
|
"*/hb-charmap.def", ; /* TOFIX: Use 8.3 name */
|
||||||
|
"debian/*", ;
|
||||||
"package/*", ;
|
"package/*", ;
|
||||||
"*/3rd/*", ;
|
"*/3rd/*", ;
|
||||||
"contrib/hbwin/*", ;
|
"contrib/hbwin/*", ;
|
||||||
"contrib/rddads/unixutils.h", ;
|
"contrib/rddads/unixutils.h", ;
|
||||||
"extras/httpsrv/*" }
|
"extras/httpsrv/*" }
|
||||||
|
|
||||||
|
LOCAL aCanHaveNoExtension := { ;
|
||||||
|
"Makefile", ;
|
||||||
|
".*", ;
|
||||||
|
"debian/*" }
|
||||||
|
|
||||||
LOCAL aCanHaveTab := { ;
|
LOCAL aCanHaveTab := { ;
|
||||||
"Makefile", ;
|
"Makefile", ;
|
||||||
|
"debian/rules", ;
|
||||||
"*.mk", ;
|
"*.mk", ;
|
||||||
"*.yyc", ;
|
"*.yyc", ;
|
||||||
"*.dif", ;
|
"*.dif", ;
|
||||||
@@ -125,6 +127,13 @@ STATIC FUNCTION CheckFile( cName, /* @ */ aErr, lApplyFixes )
|
|||||||
LOCAL aForcedLF := { ;
|
LOCAL aForcedLF := { ;
|
||||||
"*.sh" }
|
"*.sh" }
|
||||||
|
|
||||||
|
LOCAL hAllowedExt := LoadGitattributes()
|
||||||
|
|
||||||
|
/* TODO: extend as you go */
|
||||||
|
LOCAL hDoNotProcess := { ;
|
||||||
|
".c" => { "3rd", "include", "dlmalloc", "hvm", "sha1", "sha2" }, ;
|
||||||
|
".h" => { "3rd", "include" } }
|
||||||
|
|
||||||
hb_default( @lApplyFixes, .F. )
|
hb_default( @lApplyFixes, .F. )
|
||||||
|
|
||||||
cName := hb_DirSepToOS( cName )
|
cName := hb_DirSepToOS( cName )
|
||||||
@@ -144,6 +153,14 @@ STATIC FUNCTION CheckFile( cName, /* @ */ aErr, lApplyFixes )
|
|||||||
AAdd( aErr, "filename: non MS-DOS compatible" )
|
AAdd( aErr, "filename: non MS-DOS compatible" )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
IF Empty( hb_FNameExt( cName ) )
|
||||||
|
IF ! FNameExc( cName, aCanHaveNoExtension )
|
||||||
|
AAdd( aErr, "filename: missing extension" )
|
||||||
|
ENDIF
|
||||||
|
ELSEIF ! hb_FNameExt( cName ) $ hAllowedExt
|
||||||
|
AAdd( aErr, "filename: unknown extension. Either change it or update .gitattributes." )
|
||||||
|
ENDIF
|
||||||
|
|
||||||
IF !( cName == Lower( cName ) ) .AND. ! FNameExc( cName, aCanBeUpper )
|
IF !( cName == Lower( cName ) ) .AND. ! FNameExc( cName, aCanBeUpper )
|
||||||
AAdd( aErr, "filename: non-lowercase" )
|
AAdd( aErr, "filename: non-lowercase" )
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -154,9 +171,16 @@ STATIC FUNCTION CheckFile( cName, /* @ */ aErr, lApplyFixes )
|
|||||||
|
|
||||||
IF IsBinary( cFile )
|
IF IsBinary( cFile )
|
||||||
IF lApplyFixes
|
IF lApplyFixes
|
||||||
IF hb_FNameExt( cFile ) == ".png"
|
lProcess := .T.
|
||||||
OutStd( cFile + ": " + "content: optimizing" + hb_eol() )
|
FOR EACH tmp IN hb_HGetDef( hDoNotProcess, hb_FNameExt( cName ), {} )
|
||||||
hb_run( "optipng " + cFile )
|
IF tmp $ cName
|
||||||
|
lProcess := .F.
|
||||||
|
EXIT
|
||||||
|
ENDIF
|
||||||
|
NEXT
|
||||||
|
IF lProcess
|
||||||
|
OutStd( cName + ": " + "content: processing" + hb_eol() )
|
||||||
|
ProcFile( cName )
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
ELSE
|
ELSE
|
||||||
@@ -428,6 +452,31 @@ STATIC FUNCTION FNameExc( cName, aList )
|
|||||||
|
|
||||||
RETURN .F.
|
RETURN .F.
|
||||||
|
|
||||||
|
STATIC PROCEDURE ProcFile( cFileName )
|
||||||
|
|
||||||
|
STATIC sc_hProc := { ;
|
||||||
|
".png" => { "avdpng -z -4 %1$s", "optipng -o7 %1$s" }, ;
|
||||||
|
".jpg" => { "jpegoptim --strip-all %1$s" }, ;
|
||||||
|
".c" => { "uncrustify -c bin/harbour.ucf %1$s" }, ;
|
||||||
|
".cpp" => ".c", ;
|
||||||
|
".h" => ".c" }
|
||||||
|
// NOTE: hbformat has bugs which make it unsuitable for unattended use
|
||||||
|
// ".prg" => { "hbformat %1$s" } }
|
||||||
|
|
||||||
|
LOCAL aProc := hb_FNameExt( cFileName )
|
||||||
|
LOCAL cCmd
|
||||||
|
|
||||||
|
DO WHILE HB_ISSTRING( aProc := hb_HGetDef( sc_hProc, aProc, NIL ) )
|
||||||
|
ENDDO
|
||||||
|
|
||||||
|
IF HB_ISARRAY( aProc )
|
||||||
|
FOR EACH cCmd IN aProc
|
||||||
|
hb_run( hb_StrFormat( hb_DirSepToOS( cCmd ), '"' + cFileName + '"' ) )
|
||||||
|
NEXT
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
RETURN
|
||||||
|
|
||||||
STATIC FUNCTION UTF8_BOM()
|
STATIC FUNCTION UTF8_BOM()
|
||||||
RETURN ;
|
RETURN ;
|
||||||
hb_BChar( 0xEF ) + ;
|
hb_BChar( 0xEF ) + ;
|
||||||
@@ -467,3 +516,42 @@ STATIC FUNCTION LoadGitignore()
|
|||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
RETURN s_aIgnore
|
RETURN s_aIgnore
|
||||||
|
|
||||||
|
STATIC FUNCTION LoadGitattributes()
|
||||||
|
|
||||||
|
THREAD STATIC s_hExt := NIL
|
||||||
|
|
||||||
|
LOCAL cLine
|
||||||
|
LOCAL tmp
|
||||||
|
|
||||||
|
IF s_hExt == NIL
|
||||||
|
s_hExt := { => }
|
||||||
|
FOR EACH cLine IN hb_ATokens( StrTran( hb_MemoRead( ".gitattributes" ), Chr( 13 ) ), Chr( 10 ) )
|
||||||
|
IF Left( cLine, 2 ) == "*."
|
||||||
|
cLine := SubStr( cLine, 2 )
|
||||||
|
IF ( tmp := At( " ", cLine ) ) > 0
|
||||||
|
s_hExt[ RTrim( Left( cLine, tmp - 1 ) ) ] := NIL
|
||||||
|
ENDIF
|
||||||
|
ENDIF
|
||||||
|
NEXT
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
RETURN s_hExt
|
||||||
|
|
||||||
|
STATIC FUNCTION my_DirScan( cMask )
|
||||||
|
RETURN my_DirScanWorker( cMask, {} )
|
||||||
|
|
||||||
|
STATIC FUNCTION my_DirScanWorker( cMask, aList )
|
||||||
|
|
||||||
|
LOCAL file
|
||||||
|
|
||||||
|
FOR EACH file IN Directory( cMask, "D" )
|
||||||
|
IF file[ F_NAME ] == "." .OR. file[ F_NAME ] == ".."
|
||||||
|
ELSEIF "D" $ file[ F_ATTR ]
|
||||||
|
my_DirScanWorker( hb_FNameDir( cMask ) + file[ F_NAME ] + hb_ps() + hb_FNameNameExt( cMask ), aList )
|
||||||
|
ELSE
|
||||||
|
AAdd( aList, hb_FNameDir( cMask ) + file[ F_NAME ] )
|
||||||
|
ENDIF
|
||||||
|
NEXT
|
||||||
|
|
||||||
|
RETURN aList
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ PROCEDURE Main()
|
|||||||
|
|
||||||
IF "--hb-check-only" $ Lower( hb_CmdLine() )
|
IF "--hb-check-only" $ Lower( hb_CmdLine() )
|
||||||
IF AScan( aFiles, {| tmp | tmp == cLogName } ) == 0
|
IF AScan( aFiles, {| tmp | tmp == cLogName } ) == 0
|
||||||
OutStd( hb_ProgName() + ": " + hb_StrFormat( "%1$s not updated", cLogName ) + hb_eol() )
|
OutStd( hb_ProgName() + ": " + hb_StrFormat( "%1$s not updated. Run 'hbrun bin/commit' and retry.", cLogName ) + hb_eol() )
|
||||||
ErrorLevel( 3 )
|
ErrorLevel( 3 )
|
||||||
RETURN
|
RETURN
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -140,6 +140,9 @@ STATIC FUNCTION DoctorChanges( cVCS, aChanges, aFiles )
|
|||||||
LOCAL cStart
|
LOCAL cStart
|
||||||
LOCAL aNew := {}
|
LOCAL aNew := {}
|
||||||
|
|
||||||
|
LOCAL cFile
|
||||||
|
LOCAL tmp
|
||||||
|
|
||||||
ASort( aChanges,,, {| x, y | x < y } )
|
ASort( aChanges,,, {| x, y | x < y } )
|
||||||
|
|
||||||
DO CASE
|
DO CASE
|
||||||
@@ -167,7 +170,9 @@ STATIC FUNCTION DoctorChanges( cVCS, aChanges, aFiles )
|
|||||||
ENDSWITCH
|
ENDSWITCH
|
||||||
IF ! Empty( cStart )
|
IF ! Empty( cStart )
|
||||||
AAdd( aNew, " " + cStart + " " + StrTran( SubStr( cLine, 8 + 1 ), "\", "/" ) )
|
AAdd( aNew, " " + cStart + " " + StrTran( SubStr( cLine, 8 + 1 ), "\", "/" ) )
|
||||||
AAdd( aFiles, SubStr( cLine, 8 + 1 ) )
|
IF !( cStart == "-" )
|
||||||
|
AAdd( aFiles, SubStr( cLine, 8 + 1 ) )
|
||||||
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
NEXT
|
NEXT
|
||||||
@@ -203,7 +208,13 @@ STATIC FUNCTION DoctorChanges( cVCS, aChanges, aFiles )
|
|||||||
ENDSWITCH
|
ENDSWITCH
|
||||||
IF ! Empty( cStart )
|
IF ! Empty( cStart )
|
||||||
AAdd( aNew, " " + cStart + " " + StrTran( SubStr( cLine, 3 + 1 ), "\", "/" ) )
|
AAdd( aNew, " " + cStart + " " + StrTran( SubStr( cLine, 3 + 1 ), "\", "/" ) )
|
||||||
AAdd( aFiles, SubStr( cLine, 3 + 1 ) )
|
IF !( cStart == "-" )
|
||||||
|
cFile := SubStr( cLine, 3 + 1 )
|
||||||
|
IF ( tmp := At( " -> ", cFile ) ) > 0
|
||||||
|
cFile := SubStr( cFile, tmp + Len( " -> " ) )
|
||||||
|
ENDIF
|
||||||
|
AAdd( aFiles, cFile )
|
||||||
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
NEXT
|
NEXT
|
||||||
|
|||||||
@@ -37,7 +37,6 @@
|
|||||||
#include "directry.ch"
|
#include "directry.ch"
|
||||||
|
|
||||||
STATIC sc_hLangMapping := { ;
|
STATIC sc_hLangMapping := { ;
|
||||||
"zh_CN" => "zh_tra", ;
|
|
||||||
"zh_CN.GB2312" => "zh_sim", ;
|
"zh_CN.GB2312" => "zh_sim", ;
|
||||||
"sr" => "sr_cyr", ;
|
"sr" => "sr_cyr", ;
|
||||||
"sr@latin" => "sr_lat" }
|
"sr@latin" => "sr_lat" }
|
||||||
|
|||||||
2
contrib/hbrun/doc/_autogen.txt
Normal file
2
contrib/hbrun/doc/_autogen.txt
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
These files are automatically generated,
|
||||||
|
do not edit them.
|
||||||
@@ -1,6 +1,3 @@
|
|||||||
#
|
|
||||||
# $Id: expat.hbp 16466 2011-03-11 00:28:04Z vszakats $
|
|
||||||
#
|
|
||||||
|
|
||||||
-stop{hbdyn}
|
-stop{hbdyn}
|
||||||
|
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ PROCEDURE Main( ... )
|
|||||||
hProjectList := { => }
|
hProjectList := { => }
|
||||||
hb_HKeepOrder( hProjectList, .T. )
|
hb_HKeepOrder( hProjectList, .T. )
|
||||||
|
|
||||||
LoadProjectListFromFile( hProjectList, s_cHome + "hbplist" )
|
LoadProjectListFromFile( hProjectList, s_cHome + "hbplist.txt" )
|
||||||
LoadProjectListFromString( hProjectList, GetEnv( "HB_BUILD_ADDONS" ) )
|
LoadProjectListFromString( hProjectList, GetEnv( "HB_BUILD_ADDONS" ) )
|
||||||
|
|
||||||
aParams := hb_AParams()
|
aParams := hb_AParams()
|
||||||
|
|||||||
14
debian/copyright
vendored
14
debian/copyright
vendored
@@ -548,8 +548,8 @@ all use GNU GPL 2. Find it below:
|
|||||||
|
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
GNU GENERAL PUBLIC LICENSE
|
||||||
Version 2, June 1991
|
Version 2, June 1991
|
||||||
|
|
||||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||||
59 Temple Place - Suite 330, Boston, MA
|
59 Temple Place - Suite 330, Boston, MA
|
||||||
@@ -557,7 +557,7 @@ all use GNU GPL 2. Find it below:
|
|||||||
Everyone is permitted to copy and distribute verbatim copies
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
of this license document, but changing it is not allowed.
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
Preamble
|
Preamble
|
||||||
|
|
||||||
The licenses for most software are designed to take away your
|
The licenses for most software are designed to take away your
|
||||||
freedom to share and change it. By contrast, the GNU General Public
|
freedom to share and change it. By contrast, the GNU General Public
|
||||||
@@ -607,7 +607,7 @@ patent must be licensed for everyone's free use or not licensed at all.
|
|||||||
The precise terms and conditions for copying, distribution and
|
The precise terms and conditions for copying, distribution and
|
||||||
modification follow.
|
modification follow.
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
GNU GENERAL PUBLIC LICENSE
|
||||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
|
||||||
0. This License applies to any program or other work which contains
|
0. This License applies to any program or other work which contains
|
||||||
@@ -806,7 +806,7 @@ make exceptions for this. Our decision will be guided by the two goals
|
|||||||
of preserving the free status of all derivatives of our free software and
|
of preserving the free status of all derivatives of our free software and
|
||||||
of promoting the sharing and reuse of software generally.
|
of promoting the sharing and reuse of software generally.
|
||||||
|
|
||||||
NO WARRANTY
|
NO WARRANTY
|
||||||
|
|
||||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||||
@@ -828,9 +828,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
|||||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||||
POSSIBILITY OF SUCH DAMAGES.
|
POSSIBILITY OF SUCH DAMAGES.
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
Appendix: How to Apply These Terms to Your New Programs
|
Appendix: How to Apply These Terms to Your New Programs
|
||||||
|
|
||||||
If you develop a new program, and you want it to be of the greatest
|
If you develop a new program, and you want it to be of the greatest
|
||||||
possible use to the public, the best way to achieve this is to make it
|
possible use to the public, the best way to achieve this is to make it
|
||||||
|
|||||||
1
debian/postinst
vendored
1
debian/postinst
vendored
@@ -19,4 +19,3 @@ esac
|
|||||||
#DEBHELPER#
|
#DEBHELPER#
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
||||||
|
|||||||
1
debian/postrm
vendored
1
debian/postrm
vendored
@@ -19,4 +19,3 @@ esac
|
|||||||
#DEBHELPER#
|
#DEBHELPER#
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
||||||
|
|||||||
@@ -187,8 +187,8 @@
|
|||||||
Belorussian be
|
Belorussian be
|
||||||
Bulgarian bg
|
Bulgarian bg
|
||||||
Catalan ca
|
Catalan ca
|
||||||
|
Chinese Traditional zh
|
||||||
Chinese Simplified zh_sim
|
Chinese Simplified zh_sim
|
||||||
Chinese Traditional zh_tra
|
|
||||||
Croatian hr
|
Croatian hr
|
||||||
Czech cs
|
Czech cs
|
||||||
Dutch nl
|
Dutch nl
|
||||||
|
|||||||
@@ -63,8 +63,8 @@ DYNAMIC HB_LANG_SR_LAT
|
|||||||
DYNAMIC HB_LANG_SV
|
DYNAMIC HB_LANG_SV
|
||||||
DYNAMIC HB_LANG_TR
|
DYNAMIC HB_LANG_TR
|
||||||
DYNAMIC HB_LANG_UK
|
DYNAMIC HB_LANG_UK
|
||||||
|
DYNAMIC HB_LANG_ZH
|
||||||
DYNAMIC HB_LANG_ZH_SIM
|
DYNAMIC HB_LANG_ZH_SIM
|
||||||
DYNAMIC HB_LANG_ZH_TRA
|
|
||||||
|
|
||||||
#if defined( __HBEXTREQ__ ) .OR. defined( __HBEXTERN__HBLANG__REQUEST )
|
#if defined( __HBEXTREQ__ ) .OR. defined( __HBEXTERN__HBLANG__REQUEST )
|
||||||
#uncommand DYNAMIC <fncs,...> => EXTERNAL <fncs>
|
#uncommand DYNAMIC <fncs,...> => EXTERNAL <fncs>
|
||||||
|
|||||||
@@ -35,8 +35,8 @@ C_SOURCES := \
|
|||||||
l_sv.c \
|
l_sv.c \
|
||||||
l_tr.c \
|
l_tr.c \
|
||||||
l_uk.c \
|
l_uk.c \
|
||||||
|
l_zh.c \
|
||||||
l_zh_sim.c \
|
l_zh_sim.c \
|
||||||
l_zh_tra.c \
|
|
||||||
|
|
||||||
LIBNAME := hblang
|
LIBNAME := hblang
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ static HB_LANG s_lang =
|
|||||||
{
|
{
|
||||||
/* Identification */
|
/* Identification */
|
||||||
|
|
||||||
"zh_tra",
|
"zh",
|
||||||
"Chinese Traditional",
|
"Chinese Traditional",
|
||||||
"中文繁體",
|
"中文繁體",
|
||||||
"",
|
"",
|
||||||
@@ -146,5 +146,5 @@ static HB_LANG s_lang =
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#define HB_LANG_ID ZH_TRA
|
#define HB_LANG_ID ZH
|
||||||
#include "hbmsgreg.h"
|
#include "hbmsgreg.h"
|
||||||
@@ -463,6 +463,7 @@ STATIC FUNCTION __LangStdToCPCtryHb( cCtryStd )
|
|||||||
CASE "zh-mo" ; EXIT
|
CASE "zh-mo" ; EXIT
|
||||||
CASE "zh-sg" ; EXIT
|
CASE "zh-sg" ; EXIT
|
||||||
CASE "zh-tw" ; EXIT
|
CASE "zh-tw" ; EXIT
|
||||||
|
CASE "zh" ; EXIT
|
||||||
ENDSWITCH
|
ENDSWITCH
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ FUNCTION hb_langSelect( cLangID, cCP )
|
|||||||
CASE "UADOS" ; cCPDef := "UA1125"; cLangIDBase := "uk" ; EXIT
|
CASE "UADOS" ; cCPDef := "UA1125"; cLangIDBase := "uk" ; EXIT
|
||||||
CASE "UAKOI8" ; cCPDef := "UAKOI8"; cLangIDBase := "uk" ; EXIT
|
CASE "UAKOI8" ; cCPDef := "UAKOI8"; cLangIDBase := "uk" ; EXIT
|
||||||
CASE "UAWIN" ; cCPDef := "UA1251"; cLangIDBase := "uk" ; EXIT
|
CASE "UAWIN" ; cCPDef := "UA1251"; cLangIDBase := "uk" ; EXIT
|
||||||
CASE "ZHB5" ; cCPDef := "BIG5" ; cLangIDBase := "zh_tra" ; EXIT
|
CASE "ZHB5" ; cCPDef := "BIG5" ; cLangIDBase := "zh" ; EXIT
|
||||||
CASE "ZHGB" ; cCPDef := "GBK" ; cLangIDBase := "zh_sim" ; EXIT
|
CASE "ZHGB" ; cCPDef := "GBK" ; cLangIDBase := "zh_sim" ; EXIT
|
||||||
OTHERWISE
|
OTHERWISE
|
||||||
/* Case sensitive legacy IDs. Lowercase flavours denote new
|
/* Case sensitive legacy IDs. Lowercase flavours denote new
|
||||||
@@ -388,7 +388,7 @@ STATIC FUNCTION __LangStdToLangHb( cLangStd )
|
|||||||
CASE "zh-mo"
|
CASE "zh-mo"
|
||||||
CASE "zh-sg"
|
CASE "zh-sg"
|
||||||
CASE "zh-tw"
|
CASE "zh-tw"
|
||||||
CASE "zh" ; cLangHb := "zh_tra" ; EXIT
|
CASE "zh" ; cLangHb := "zh" ; EXIT
|
||||||
ENDSWITCH
|
ENDSWITCH
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
|||||||
@@ -1,39 +0,0 @@
|
|||||||
/*
|
|
||||||
* Strips spaces at EOL text files.
|
|
||||||
*
|
|
||||||
* Copyright 2012 Viktor Szakats (harbour syenar.net)
|
|
||||||
* www - http://harbour-project.org
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#pragma -w3
|
|
||||||
#pragma -km+
|
|
||||||
#pragma -ko+
|
|
||||||
|
|
||||||
#include "directry.ch"
|
|
||||||
|
|
||||||
PROCEDURE Main( cMask )
|
|
||||||
|
|
||||||
LOCAL aFile
|
|
||||||
|
|
||||||
hb_default( @cMask, "*.txt" )
|
|
||||||
|
|
||||||
FOR EACH aFile IN Directory( hb_osFileMask() )
|
|
||||||
hb_MemoWrit( aFile[ F_NAME ], __stripeol( MemoRead( aFile[ F_NAME ] ) ) )
|
|
||||||
NEXT
|
|
||||||
|
|
||||||
RETURN
|
|
||||||
|
|
||||||
FUNCTION __stripeol( cFile )
|
|
||||||
|
|
||||||
LOCAL cOK := ""
|
|
||||||
LOCAL cLine
|
|
||||||
|
|
||||||
FOR EACH cLine IN hb_ATokens( StrTran( StrTran( cFile, Chr( 13 ) ), Chr( 9 ), " " ), Chr( 10 ) )
|
|
||||||
cOK += RTrim( cLine )
|
|
||||||
IF ! cLine:__enumIsLast()
|
|
||||||
cOK += hb_eol()
|
|
||||||
ENDIF
|
|
||||||
NEXT
|
|
||||||
|
|
||||||
RETURN cOK
|
|
||||||
2
utils/hbmk2/doc/_autogen.txt
Normal file
2
utils/hbmk2/doc/_autogen.txt
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
These files are automatically generated,
|
||||||
|
do not edit them.
|
||||||
Reference in New Issue
Block a user