📄 ckuxla.c
字号:
struct keytab fcstab[] = { /* Keyword table for 'set file character-set' *//* IMPORTANT: This table is replicated below as ttcstab (terminal character set table). The only differences are the addition of TRANSPARENT and the removal of the Kanji sets, which are not supported yet. If you make changes to this table, also change ttcstab.*//* Keyword Value Flags */ "apple-quickdraw", FC_APPQD, CM_INV, /* Apple Quickdraw */ "ascii", FC_USASCII, 0, /* ASCII */ "british", FC_UKASCII, 0, /* British NRC */ "canadian-french", FC_FCASCII, 0, /* French Canadian NRC */ "cp437", FC_CP437, 0, /* PC CP437 */ "cp850", FC_CP850, 0, /* PC CP850 */#ifdef LATIN2 "cp852", FC_CP852, 0, /* PC CP852 */#endif /* LATIN2 */#ifdef HEBREW "cp862-hebrew", FC_CP862, 0, /* PC CP862 */#endif /* HEBREW */#ifdef CYRILLIC "cp866-cyrillic", FC_CP866, 0, /* CP866 Cyrillic */ "cyrillic-iso", FC_CYRILL, 0, /* ISO Latin/Cyrillic Alphabet */#endif /* CYRILLIC */ "danish", FC_NOASCII, 0, /* Norwegian and Danish NRC */#ifdef KANJI "dec-kanji", FC_JDEC, 0, /* Japanese DEC Kanji */#endif /* KANJI */ "dec-multinational", FC_DECMCS, 0, /* DEC multinational character set */ "dg-international", FC_DGMCS, 0, /* Data General multinational */ "dutch", FC_DUASCII, 0, /* Dutch NRC */ "finnish", FC_FIASCII, 0, /* Finnish NRC */ "french", FC_FRASCII, 0, /* French NRC */ "fr-canadian", FC_FCASCII, CM_INV, /* French Canadian NRC */ "german", FC_GEASCII, 0, /* German NRC */#ifdef HEBREW "he", FC_HEBREW, CM_ABR|CM_INV, "heb", FC_HEBREW, CM_ABR|CM_INV, "hebr", FC_HEBREW, CM_ABR|CM_INV, "hebre", FC_HEBREW, CM_ABR|CM_INV, "hebrew", FC_HEBREW, CM_ABR|CM_INV, "hebrew-7", FC_HE7, 0, /* DEC 7-Bit Hebrew */ "hebrew-iso", FC_HEBREW, 0, /* ISO Latin/Hebrew */#endif /* HEBREW */ "hp-roman8", FC_HPR8, 0, /* Hewlett Packard Roman8 */ "hungarian", FC_HUASCII, 0, /* Hungarian NRC */ "italian", FC_ITASCII, 0, /* Italian NRC */#ifdef KANJI "japanese-euc", FC_JEUC, 0, /* Japanese EUC */ "jis7-kanji", FC_JIS7, 0, /* Japanese JIS7 7bit code */#endif /* KANJI */#ifdef CYRILLIC "koi8-cyrillic", FC_KOI8, 0, /* Old KOI-8 Cyrillic */#endif /* CYRILLIC */#ifdef LATIN2 "l", FC_1LATIN, CM_ABR|CM_INV, "la", FC_1LATIN, CM_ABR|CM_INV, "lat", FC_1LATIN, CM_ABR|CM_INV, "lati", FC_1LATIN, CM_ABR|CM_INV, "latin", FC_1LATIN, CM_ABR|CM_INV,#endif /* LATIN2 */ "latin1-iso", FC_1LATIN, 0, /* ISO Latin Alphabet 1 */#ifdef LATIN2 "latin2-iso", FC_2LATIN, 0, /* ISO Latin Alphabet 2 */#endif /* LATIN2 */ "macintosh-latin", FC_APPQD, 0, /* "Extended Mac Latin" */ "next-multinational", FC_NEXT, 0, /* NeXT workstation */ "norwegian", FC_NOASCII, 0, /* Norwegian and Danish NRC */ "portuguese", FC_POASCII, 0, /* Portuguese NRC */#ifdef KANJI "shift-jis-kanji", FC_SHJIS, 0, /* Japanese Kanji Shift-JIS */#endif /* KANJI */#ifdef CYRILLIC "short-koi", FC_KOI7, 0, /* Short KOI Cyrillic */#endif /* CYRILLIC */ "spanish", FC_SPASCII, 0, /* Spanish NRC */ "swedish", FC_SWASCII, 0, /* Swedish NRC */ "swiss", FC_CHASCII, 0 /* Swiss NRC */};int nfilc = (sizeof(fcstab) / sizeof(struct keytab)); /* size of this table */struct keytab ttcstab[] = { /* Keyword table for SET TERMINAL CHARACTER-SET *//* IMPORTANT: This table is a replica of fcstab, immediately above, with the addition of TRANSPARENT. If you make changes to this table, make the corresponding changes to fcstab.*//* Keyword Value Flags */ "apple-quickdraw", FC_APPQD, CM_INV, /* Apple Quickdraw */ "ascii", FC_USASCII, 0, /* ASCII */ "british", FC_UKASCII, 0, /* British NRC */ "canadian-french", FC_FCASCII, 0, /* French Canadian NRC */ "cp437", FC_CP437, 0, /* IBM CP437 */ "cp850", FC_CP850, 0, /* IBM CP850 */#ifdef LATIN2 "cp852", FC_CP852, 0, /* IBM CP852 */#endif /* LATIN2 */#ifdef HEBREW "cp862-hebrew", FC_CP862, 0, /* PC CP862 */#endif /* HEBREW */#ifdef CYRILLIC "cp866-cyrillic", FC_CP866, 0, /* CP866 Cyrillic */ "cyrillic-iso", FC_CYRILL, 0, /* ISO Latin/Cyrillic Alphabet */#endif /* CYRILLIC */ "danish", FC_NOASCII, 0, /* Norwegian and Danish NRC */#ifdef COMMENT#ifdef KANJI "dec-kanji", FC_JDEC, 0, /* Japanese DEC Kanji */#endif /* KANJI */#endif /* COMMENT */ "dec-multinational", FC_DECMCS, 0, /* DEC multinational character set */ "dg-international", FC_DGMCS, 0, /* Data General multinational */ "dutch", FC_DUASCII, 0, /* Dutch NRC */ "finnish", FC_FIASCII, 0, /* Finnish NRC */ "french", FC_FRASCII, 0, /* French NRC */ "fr-canadian", FC_FCASCII, CM_INV, /* French Canadian NRC */ "german", FC_GEASCII, 0, /* German NRC */#ifdef HEBREW "he", FC_HEBREW, CM_ABR|CM_INV, "heb", FC_HEBREW, CM_ABR|CM_INV, "hebr", FC_HEBREW, CM_ABR|CM_INV, "hebre", FC_HEBREW, CM_ABR|CM_INV, "hebrew", FC_HEBREW, CM_ABR|CM_INV, "hebrew-7", FC_HE7, 0, /* DEC 7-Bit Hebrew */ "hebrew-iso", FC_HEBREW, 0, /* ISO Latin/Hebrew */#endif /* HEBREW */ "hp-roman8", FC_HPR8, 0, /* Hewlett Packard Roman8 */ "hungarian", FC_HUASCII, 0, /* Hungarian NRC */ "italian", FC_ITASCII, 0, /* Italian NRC */#ifdef COMMENT/* Kanji terminal character sets not implemented yet */#ifdef KANJI "japanese-euc", FC_JEUC, 0, /* Japanese EUC */ "jis7-kanji", FC_JIS7, 0, /* Japanese JIS7 7bit code */#endif /* KANJI */#endif /* COMMENT */#ifdef CYRILLIC "koi8-cyrillic", FC_KOI8, 0, /* Old KOI-8 Cyrillic */#endif /* CYRILLIC */#ifdef LATIN2 "l", FC_1LATIN, CM_ABR|CM_INV, "la", FC_1LATIN, CM_ABR|CM_INV, "lat", FC_1LATIN, CM_ABR|CM_INV, "lati", FC_1LATIN, CM_ABR|CM_INV, "latin", FC_1LATIN, CM_ABR|CM_INV,#endif /* LATIN2 */ "latin1-iso", FC_1LATIN, 0, /* ISO Latin Alphabet 1 */#ifdef LATIN2 "latin2-iso", FC_2LATIN, 0, /* ISO Latin Alphabet 2 */#endif /* LATIN2 */ "macintosh-latin", FC_APPQD, 0, /* "Extended Mac Latin */ "next-multinational", FC_NEXT, 0, /* NeXT workstation */ "norwegian", FC_NOASCII, 0, /* Norwegian and Danish NRC */ "portuguese", FC_POASCII, 0, /* Portuguese NRC */#ifdef COMMENT/* Kanji terminal character sets not implemented yet. */#ifdef KANJI "shift-jis-kanji", FC_SHJIS, 0, /* Japanese Kanji Shift-JIS */#endif /* KANJI */#endif /* COMMENT */#ifdef CYRILLIC "short-koi", FC_KOI7, 0, /* Short KOI Cyrillic */#endif /* CYRILLIC */ "spanish", FC_SPASCII, 0, /* Spanish NRC */ "swedish", FC_SWASCII, 0, /* Swedish NRC */ "swiss", FC_CHASCII, 0, /* Swiss NRC */ "transparent", FC_TRANSP, 0 /* Transparent */};int ntermc = (sizeof(ttcstab) / sizeof(struct keytab)); /* size of table *//* Languages: This table allows C-Kermit to have a SET LANGUAGE command to apply special language-specific rules when translating from a character set that contains national characters into plain ASCII, like German umlaut-a becomes ae. Originally, I thought it would be a good idea to let SET LANGUAGE also select an appropriate FILE CHARACTER-SET and TRANSFER CHARACTER-SET automatically, and these are included in the langinfo structure. Later I realized that this was a bad idea. Users are confused by unexpected side effects. If this functionality is desired, it's better to define a macro to do it.*/struct langinfo langs[] = {/* Language code File Charset Xfer Charset Name */ L_USASCII, FC_USASCII, TC_USASCII, "ASCII (American English)", L_DANISH, FC_NOASCII, TC_1LATIN, "Danish", L_DUTCH, FC_DUASCII, TC_1LATIN, "Dutch", L_FINNISH, FC_FIASCII, TC_1LATIN, "Finnish", L_FRENCH, FC_FRASCII, TC_1LATIN, "French", L_GERMAN, FC_GEASCII, TC_1LATIN, "German",#ifdef HEBREW L_HEBREW, FC_HEBREW, TC_HEBREW, "Hebrew",#endif /* HEBREW */ L_HUNGARIAN, FC_HUASCII, TC_2LATIN, "Hungarian", L_ICELANDIC, FC_USASCII, TC_1LATIN, "Icelandic", L_ITALIAN, FC_ITASCII, TC_1LATIN, "Italian",#ifdef KANJI L_JAPANESE, FC_JEUC, TC_JEUC, "Japanese",#endif /* KANJI */ L_NORWEGIAN, FC_NOASCII, TC_1LATIN, "Norwegian", L_PORTUGUESE, FC_POASCII, TC_1LATIN, "Portuguese",#ifdef CYRILLIC L_RUSSIAN, FC_CP866, TC_CYRILL, "Russian",#endif /* CYRILLIC */ L_SPANISH, FC_SPASCII, TC_1LATIN, "Spanish", L_SWEDISH, FC_SWASCII, TC_1LATIN, "Swedish", L_SWISS, FC_CHASCII, TC_1LATIN, "Swiss"};int nlangs = (sizeof(langs) / sizeof(struct langinfo));/* Keyword table for the SET LANGUAGE command. Only a few of these (German, Scandinavian, etc) actually do anything. The language is used to invoke special translation rules when converting from an 8-bit character set to ASCII; for example, German u-diaeresis becomes "ue", Dutch y-diaeresis becomes "ij". Languages without associated rules are invisible (CM_INV).*/struct keytab lngtab[] = { "ascii", L_USASCII, CM_INV, "danish", L_DANISH, 0, "dutch", L_DUTCH, 0, "english", L_USASCII, CM_INV, "finnish", L_FINNISH, 0, "french", L_FRENCH, 0, "german", L_GERMAN, 0,#ifdef HEBREW "hebrew", L_HEBREW, CM_INV,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -