📄 nls.h
字号:
#if defined(OS400) && (__OS400_TGTVRM__ >= 510)#pragma datamodel(P128)#endif/*********************************************************************//* *//* Licensed Materials - Property of IBM *//* *//* L-GHUS-5VMPGW, L-GHUS-5S3PEE *//* (C) Copyright IBM Corp. 1995, 2005 All Rights Reserved *//* *//* US Government Users Restricted Rights - Use, duplication or *//* disclosure restricted by GSA ADP Schedule Contract with *//* IBM Corp. *//* *//*********************************************************************/#if !defined(NLS_H)#define NLS_H#ifdef __cplusplusextern "C" {#endif/********************************************************************** TYPES AND DEFINITIONS*/typedef WORD NLS_STATUS; typedef void NLS_INFO; typedef void far *NLS_PINFO; /********************************************************************** PROTOS*/NLS_STATUS LNPUBLIC NLS_load_charset (WORD CSID, NLS_PINFO FAR * ppInfo);NLS_STATUS LNPUBLIC NLS_unload_charset (NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_translate (BYTE far * pString, WORD Len, BYTE far * pStringTarget, WORD far * pSize, WORD ControlFlags, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_find (BYTE far * far * ppString, WORD Len, const BYTE far * pSetOfChars, WORD ControlFlags, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_find_substr (BYTE far * far * ppString, WORD Len1, const BYTE far * pSubString, WORD Len2, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_get (BYTE far * far * ppString, WORD Len, BYTE far * pCharacter, NLS_PINFO pInfo);WORD LNPUBLIC NLS_goto_next (BYTE far * far * ppString, WORD Len, NLS_PINFO pInfo);WORD LNPUBLIC NLS_goto_prev (BYTE far * far * ppString, const BYTE far * pStrStart, NLS_PINFO pInfo);WORD LNPUBLIC NLS_goto_next_word_end (BYTE far * far * ppString, WORD Len, NLS_PINFO pInfo);WORD LNPUBLIC NLS_goto_next_word_start(BYTE far * far * ppString, WORD Len, NLS_PINFO pInfo);WORD LNPUBLIC NLS_goto_next_break (BYTE far * far * ppString, WORD Len, NLS_PINFO pInfo);WORD LNPUBLIC NLS_goto_prev_word_end (BYTE far * far * ppString, const BYTE far * pStrStart, NLS_PINFO pInfo);WORD LNPUBLIC NLS_goto_prev_word_start(BYTE far * far * ppString, const BYTE far * pStrStart, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_isalpha (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_isalnum (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_isarith (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_iscntrl (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_isdigit (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_islower (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_ispunct (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_isspace (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_isupper (const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_isleadbyte (BYTE Character, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_string_chars (const BYTE far * pString, WORD NumBytes, WORD far * pNumChars, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_string_bytes (const BYTE far * pString, WORD NumChars, WORD far * pNumBytes, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_put (BYTE far * far * ppString, const BYTE far * pCharacter, NLS_PINFO pInfo);NLS_STATUS LNPUBLIC NLS_put_term (BYTE far * far * ppString, const BYTE far * pCharacter, NLS_PINFO pInfo);/********************************************************************** RETURN CODES*/ #define NLS_SUCCESS 0x0#define NLS_BADPARM 0xABAD #define NLS_BUFFERTOOSMALL 0xA000 #define NLS_CHARSSTRIPPED 0x1000 #define NLS_ENDOFSTRING 0x1001 #define NLS_FALLBACKUSED 0x1002 #define NLS_FILEINVALID 0xA001 #define NLS_FILENOTFOUND 0xA002 #define NLS_FINDFAILED 0x1005#define NLS_INVALIDCHARACTER 0xA003 #define NLS_INVALIDDATA 0xA004 #define NLS_INVALIDENTRY 0xA005 #define NLS_INVALIDTABLE 0xA006 #define NLS_PROPNOTFOUND 0x1003 #define NLS_STARTOFSTRING 0x1004 #define NLS_STRINGSIZECHANGED 0x1006 #define NLS_TABLEHEADERINVALID 0xA007 #define NLS_TABLENOTFOUND 0x1007 /********************************************************************** FLAGS*//* NLS_find */#define NLS_FIND_CHARINSET 1#define NLS_FIND_CHARNOTINSET 2/* NLS_translate */#define NLS_NONULLTERMINATE 0x1#define NLS_NULLTERMINATE 0x2#define NLS_STRIPUNKNOWN 0x4#define NLS_TARGETISLMBCS 0x8#define NLS_SOURCEISLMBCS 0x10#define NLS_TARGETISUNICODE 0x20#define NLS_SOURCEISUNICODE 0x40#define NLS_TARGETISPLATFORM 0x80#define NLS_SOURCEISPLATFORM 0x100/********************************************************************** MISC DEFINES*/#define NLS_NULLTERM (WORD) -1#define NLS_NULLTERM32 (DWORD) -1#define NLS_SIZEOFNULL 1 /* for LMBCS implementation */#define NLS_MAXBYTESPERCHAR 3#define NLS_MAXBYTESPERCHAR_WITH_SURROGATE 6#define NLS_MAXRATIO_XLATE_FROM_LMBCS 4#define NLS_MAXRATIO_XLATE_TO_LMBCS 3/********************************************************************** CHARACTER SET ID'S*/#if !defined(NLS_NOCHARSETIDS)#define NLS_CS_DEFAULT 0xFFFF#define NLS_CS_LICS 0x0000 /* Lotus Intl Char Set (WK1) */#define NLS_CS_IBMCP851 0x0001#define NLS_CS_IBMCP852 0x0002#define NLS_CS_IBMCP853 0x0003#define NLS_CS_IBMCP857 0x0004#define NLS_CS_IBMCP862 0x0005#define NLS_CS_IBMCP864 0x0006#define NLS_CS_IBMCP866 0x0007#define NLS_CS_IBMCP437 0x0008#define NLS_CS_IBMCP850 0x0009#define NLS_CS_IBMCP855 0x000A#define NLS_CS_IBMCP860 0x000B#define NLS_CS_IBMCP861 0x000C#define NLS_CS_IBMCP863 0x000D#define NLS_CS_IBMCP865 0x000E#define NLS_CS_IBMCP869 0x000F#define NLS_CS_IBMCP874 0x0090#define NLS_CS_IBMCP899 0x0011#define NLS_CS_IBMCP932 0x0012#define NLS_CS_IBMCP942 0x0012 /* 932 942 for Lotus */#define NLS_CS_IBMCP943 0x0012#define NLS_CS_IBMCP5039 0x0012#define NLS_CS_IBMCP891 0x0013#define NLS_CS_DECMCS 0x0014 /* DEC Multinational Char Set */#define NLS_CS_EUC 0x0017 /* Extended Unix Code */#define NLS_CS_KS 0x0018 /* Korean - KSC 5601 */#define NLS_CS_IBMCP949 0x0018#define NLS_CS_TCA 0x0019#define NLS_CS_BIG5 0x001A /* Taiwan Chinese - traditional */#define NLS_CS_IBMCP950 0x001A#define NLS_CS_GB 0x001B /* PRC Chinese - simplified */#define NLS_CS_IBMCP936 0x001B#define NLS_CS_NECESJIS 0x001C /* NEC Extended Shift-JIS */#define NLS_CS_ISO646 0x001F /* aka 'ASCII' */#define NLS_CS_ASCII 0x001F#define NLS_CS_ISO88591 0x0020 /* ISO Latin-1 */#define NLS_CS_IBMCP819 0x0020#define NLS_CS_ISO88592 0x0021 /* ISO Latin-2 (E. Europe) */#define NLS_CS_IBMCP912 0x0021#define NLS_CS_ISO88593 0x0022#define NLS_CS_ISO88594 0x0023#define NLS_CS_ISO88595 0x0024#define NLS_CS_IBMCP915 0x0024#define NLS_CS_ISO88596 0x0025#define NLS_CS_IBMCP1008 0x0025#define NLS_CS_ISO88597 0x0026#define NLS_CS_IBMCP813 0x0026#define NLS_CS_ISO88598 0x0027#define NLS_CS_IBMCP916 0x0027#define NLS_CS_ISO88599 0x0028#define NLS_CS_IBMCP920 0x0028#define NLS_CS_HPROMAN 0x0030 /* HP Roman (LaserJet) */#define NLS_CS_HPGREEK 0x0031 /* HP Roman (LaserJet) */#define NLS_CS_HPTURKISH 0x0032 /* HP Roman (LaserJet) */#define NLS_CS_HPHEBREW 0x0034#define NLS_CS_HPARABIC 0x0035
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -