⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 international.c

📁 具有IDE功能的编辑器
💻 C
字号:
/* international.c - routines for composing international characters   from standard ascii keypresses.   Copyright (C) 1996-2000 Paul Sheer   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 of the License, 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 program; if not, write to the Free Software   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA   02111-1307, USA. */#include "global.h"int option_latin2 = 0;static struct compose_international {    unsigned char extended_ascii;    unsigned char ascii1, ascii2;} compose_latin1[] = { \    {0xA0, ' ', 0},		/* NO-BREAK SPACE */    {0xA1, '^', '!'},		/* INVERTED EXCLAMATION MARK */    {0xA2, 'c', '/'},		/* CENT SIGN */    {0xA3, 'l', '-'},		/* POUND SIGN */    {0xA4, 'x', 'o'},		/* CURRENCY SIGN */    {0xA5, 'y', '='},		/* YEN SIGN */    {0xA6, '|', '|'},		/* BROKEN BAR */    {0xA7, 'O', 'S'},		/* SECTION SIGN */    {0xA7, 'o', 'S'},		/* SECTION SIGN */    {0xA8, '\'', '\''},		/* DIAERESIS */    {0xA9, 'O', 'c'},		/* COPYRIGHT SIGN */    {0xA9, 'o', 'c'},		/* COPYRIGHT SIGN */    {0xAA, 'a', '_'},		/* FEMININE ORDINAL INDICATOR */    {0xAB, '<', '<'},		/* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */    {0xAC, '!', '!'},		/* NOT SIGN */    {0xAD, '-', '-'},		/* SOFT HYPHEN */    {0xAE, 'O', 'r'},		/* REGISTERED SIGN */    {0xAE, 'o', 'r'},		/* REGISTERED SIGN */    {0xAF, '^', '-'},		/* MACRON */    {0xB0, '^', '0'},		/* DEGREE SIGN */    {0xB1, '+', '-'},		/* PLUS-MINUS SIGN */    {0xB2, '^', '2'},		/* SUPERSCRIPT TWO */    {0xB3, '^', '3'},		/* SUPERSCRIPT THREE */    {0xB4, '^', '\''},		/* ACUTE ACCENT */    {0xB5, 'u', '|'},		/* MICRO SIGN */    {0xB6, 'Q', '|'},		/* PILCROW SIGN */    {0xB6, 'q', '|'},		/* PILCROW SIGN */    {0xB7, '^', '.'},		/* MIDDLE DOT */    {0xB8, '_', ','},		/* CEDILLA */    {0xB9, '^', '1'},		/* SUPERSCRIPT ONE */    {0xBA, 'o', '_'},		/* MASCULINE ORDINAL INDICATOR */    {0xBB, '>', '>'},		/* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */    {0xBC, '1', '4'},		/* VULGAR FRACTION ONE QUARTER */    {0xBD, '1', '2'},		/* VULGAR FRACTION ONE HALF */    {0xBE, '3', '4'},		/* VULGAR FRACTION THREE QUARTERS */    {0xBF, '^', '?'},		/* INVERTED QUESTION MARK */    {0xC0, 'A', '`'},		/* LATIN CAPITAL LETTER A WITH GRAVE ACCENT */    {0xC1, 'A', '\''},		/* LATIN CAPITAL LETTER A WITH ACUTE ACCENT */    {0xC2, 'A', '^'},		/* LATIN CAPITAL LETTER A WITH CIRCUMFLEX ACCENT */    {0xC3, 'A', '~'},		/* LATIN CAPITAL LETTER A WITH TILDE */    {0xC4, 'A', '"'},		/* LATIN CAPITAL LETTER A WITH DIAERESIS */    {0xC5, 'A', 'o'},		/* LATIN CAPITAL LETTER A WITH RING ABOVE */    {0xC6, 'A', 'E'},		/* LATIN CAPITAL LIGATURE AE */    {0xC7, 'C', ','},		/* LATIN CAPITAL LETTER C WITH CEDILLA */    {0xC8, 'E', '`'},		/* LATIN CAPITAL LETTER E WITH GRAVE ACCENT */    {0xC9, 'E', '\''},		/* LATIN CAPITAL LETTER E WITH ACUTE ACCENT */    {0xCA, 'E', '^'},		/* LATIN CAPITAL LETTER E WITH CIRCUMFLEX ACCENT */    {0xCB, 'E', '"'},		/* LATIN CAPITAL LETTER E WITH DIAERESIS */    {0xCC, 'I', '`'},		/* LATIN CAPITAL LETTER I WITH GRAVE ACCENT */    {0xCD, 'I', '\''},		/* LATIN CAPITAL LETTER I WITH ACUTE ACCENT */    {0xCE, 'I', '^'},		/* LATIN CAPITAL LETTER I WITH CIRCUMFLEX ACCENT */    {0xCF, 'I', '"'},		/* LATIN CAPITAL LETTER I WITH DIAERESIS */    {0xD0, 'D', '-'},		/* LATIN CAPITAL LETTER ETH */    {0xD1, 'N', '~'},		/* LATIN CAPITAL LETTER N WITH TILDE */    {0xD2, 'O', '`'},		/* LATIN CAPITAL LETTER O WITH GRAVE ACCENT */    {0xD3, 'O', '\''},		/* LATIN CAPITAL LETTER O WITH ACUTE ACCENT */    {0xD4, 'O', '^'},		/* LATIN CAPITAL LETTER O WITH CIRCUMFLEX ACCENT */    {0xD5, 'O', '~'},		/* LATIN CAPITAL LETTER O WITH TILDE */    {0xD6, 'O', '"'},		/* LATIN CAPITAL LETTER O WITH DIAERESIS */    {0xD7, 'X', 0},		/* MULTIPLICATION SIGN */    {0xD8, 'O', '/'},		/* LATIN CAPITAL LETTER O WITH STROKE */    {0xD9, 'U', '`'},		/* LATIN CAPITAL LETTER U WITH GRAVE ACCENT */    {0xDA, 'U', '\''},		/* LATIN CAPITAL LETTER U WITH ACUTE ACCENT */    {0xDB, 'U', '^'},		/* LATIN CAPITAL LETTER U WITH CIRCUMFLEX ACCENT */    {0xDC, 'U', '"'},		/* LATIN CAPITAL LETTER U WITH DIAERESIS */    {0xDD, 'Y', '\''},		/* LATIN CAPITAL LETTER Y WITH ACUTE ACCENT */    {0xDE, 'P', '|'},		/* LATIN CAPITAL LETTER THORN */    {0xDF, 's', 0},		/* LATIN SMALL LETTER SHARP S */    {0xE0, 'a', '`'},		/* LATIN SMALL LETTER A WITH GRAVE ACCENT */    {0xE1, 'a', '\''},		/* LATIN SMALL LETTER A WITH ACUTE ACCENT */    {0xE2, 'a', '^'},		/* LATIN SMALL LETTER A WITH CIRCUMFLEX ACCENT */    {0xE3, 'a', '~'},		/* LATIN SMALL LETTER A WITH TILDE */    {0xE4, 'a', '"'},		/* LATIN SMALL LETTER A WITH DIAERESIS */    {0xE5, 'a', 'o'},		/* LATIN SMALL LETTER A WITH RING ABOVE */    {0xE6, 'a', 'e'},		/* LATIN SMALL LIGATURE AE */    {0xE7, 'c', ','},		/* LATIN SMALL LETTER C WITH CEDILLA */    {0xE8, 'e', '`'},		/* LATIN SMALL LETTER E WITH GRAVE ACCENT */    {0xE9, 'e', '\''},		/* LATIN SMALL LETTER E WITH ACUTE ACCENT */    {0xEA, 'e', '^'},		/* LATIN SMALL LETTER E WITH CIRCUMFLEX ACCENT */    {0xEB, 'e', '"'},		/* LATIN SMALL LETTER E WITH DIAERESIS */    {0xEC, 'i', '`'},		/* LATIN SMALL LETTER I WITH GRAVE ACCENT */    {0xED, 'i', '\''},		/* LATIN SMALL LETTER I WITH ACUTE ACCENT */    {0xEE, 'i', '^'},		/* LATIN SMALL LETTER I WITH CIRCUMFLEX ACCENT */    {0xEF, 'i', '"'},		/* LATIN SMALL LETTER I WITH DIAERESIS */    {0xF0, 'd', '-'},		/* LATIN SMALL LETTER ETH */    {0xF1, 'n', '~'},		/* LATIN SMALL LETTER N WITH TILDE */    {0xF2, 'o', '`'},		/* LATIN SMALL LETTER O WITH GRAVE ACCENT */    {0xF3, 'o', '\''},		/* LATIN SMALL LETTER O WITH ACUTE ACCENT */    {0xF4, 'o', '^'},		/* LATIN SMALL LETTER O WITH CIRCUMFLEX ACCENT */    {0xF5, 'o', '~'},		/* LATIN SMALL LETTER O WITH TILDE */    {0xF6, 'o', '"'},		/* LATIN SMALL LETTER O WITH DIAERESIS */    {0xF7, ':', '-'},		/* DIVISION SIGN */    {0xF8, 'o', '/'},		/* LATIN SMALL LETTER O WITH OBLIQUE BAR */    {0xF9, 'u', '`'},		/* LATIN SMALL LETTER U WITH GRAVE ACCENT */    {0xFA, 'u', '\''},		/* LATIN SMALL LETTER U WITH ACUTE ACCENT */    {0xFB, 'u', '^'},		/* LATIN SMALL LETTER U WITH CIRCUMFLEX ACCENT */    {0xFC, 'u', '"'},		/* LATIN SMALL LETTER U WITH DIAERESIS */    {0xFD, 'y', '\''},		/* LATIN SMALL LETTER Y WITH ACUTE ACCENT */    {0xFE, 'p', '|'},		/* LATIN SMALL LETTER THORN */    {0xFF, 'y', '"'},		/* LATIN SMALL LETTER Y WITH DIAERESIS */    {0, 0, 0}};/* * Latin 2 ascii table * :: I am not absolutely sure with it :-( * :: M.K. */static struct compose_international \compose_latin2[] = { \    {0xA0, ' ', 0},		/* NO-BREAK SPACE */    {0xA1, 'A', ','},		/* A with tilde */    {0xA2, ' ', '?'},		/* Caron */    {0xA3, 'l', '-'},		/* POUND SIGN */    {0xA4, 'x', 'o'},		/* CURRENCY SIGN */    {0xA5, 'L', '?'},		/* L with Caron */    {0xA6, 'S', '\''},		/* S Acute */    {0xA7, '8', 'o'},		/* Paragraph */    {0xA8, ' ', '"'},		/* DIAERESIS */    {0xA9, 'S', '?'},		/* S with Caron */    {0xAA, 'S', ','},		/* S with cedilla */    {0xAB, 'T', '?'},		/* T with Caron */    {0xAC, 'Z', '\''},		/* Z acute */    {0xAD, ' ', '-'},		/* SOFT HYPHEN */    {0xAE, 'Z', '?'},		/* Z with Caron */    {0xAF, 'Z', 'o'},		/* Z with dot above */    {0xB0, ' ', 'o'},		/* DEGREE SIGN */    {0xB1, 'a', ','},		/* a with cedilla */    {0xB2, ' ', '`'},		/* tilde !?*/    {0xB3, 'l', '-'},		/* -l- */    {0xB4, ' ', '\''},		/* acute */    {0xB5, 'l', '?'},		/* l with Caron */    {0xB6, 's', '\''},		/* s acute */    {0xB7, ' ', '?'},		/* Caron */    {0xB8, ' ', ','},		/* cedilla */     {0xB9, 's', '?'},		/* s with Caron */    {0xBA, 's', '\''},		/* s with tilde */    {0xBB, 't', '?'},		/* t with Caron */    {0xBC, 'z', '\''},		/* z acute */    {0xBD, ' ', '~'},		/* tilde */    {0xBE, 'z', '?'},		/* z with Caron */    {0xBF, 'z', 'o'},		/* z with dot above */    {0xC0, 'R', '\''},		/* R acute */    {0xC1, 'A', '\''},		/* LATIN CAPITAL LETTER A WITH ACUTE ACCENT */    {0xC2, 'A', '^'},		/* LATIN CAPITAL LETTER A WITH CIRCUMFLEX ACCENT */    {0xC3, 'A', '?'},		/* A with Caron */    {0xC4, 'A', '"'},		/* LATIN CAPITAL LETTER A WITH DIAERESIS */    {0xC5, 'L', '\''},		/* L acute */    {0xC6, 'C', '\''},		/* C acute */    {0xC7, 'C', ','},		/* LATIN CAPITAL LETTER C WITH CEDILLA */    {0xC8, 'C', '?'},		/* C with Caron */    {0xC9, 'E', '\''},		/* LATIN CAPITAL LETTER E WITH ACUTE ACCENT */    {0xCA, 'E', ','},		/* E with cedilla */    {0xCB, 'E', '"'},		/* LATIN CAPITAL LETTER E WITH DIAERESIS */    {0xCC, 'E', '?'},		/* E with Caron */    {0xCD, 'I', '\''},		/* LATIN CAPITAL LETTER I WITH ACUTE ACCENT */    {0xCE, 'I', '^'},		/* LATIN CAPITAL LETTER I WITH CIRCUMFLEX ACCENT */    {0xCF, 'D', '?'},		/* D with Caron */    {0xD0, 'D', '-'},		/* LATIN CAPITAL LETTER ETH */    {0xD1, 'N', '\''},		/* N acute */    {0xD2, 'N', '?'},		/* N with Caron */    {0xD3, 'O', '\''},		/* LATIN CAPITAL LETTER O WITH ACUTE ACCENT */    {0xD4, 'O', '^'},		/* LATIN CAPITAL LETTER O WITH CIRCUMFLEX ACCENT */    {0xD5, 'O', '~'},		/* LATIN CAPITAL LETTER O WITH TILDE */    {0xD6, 'O', '"'},		/* LATIN CAPITAL LETTER O WITH DIAERESIS */    {0xD7, 'X', 'o'},		/* MULTIPLICATION SIGN */    {0xD8, 'R', '?'},		/* R with Caron */    {0xD9, 'U', 'o'},		/* LATIN CAPITAL LETTER U WITH GRAVE ACCENT */    {0xDA, 'U', '\''},		/* LATIN CAPITAL LETTER U WITH ACUTE ACCENT */    {0xDB, 'U', '~'},		/* U with cedilla */    {0xDC, 'U', '^'},		/* U with DIAERESIS */    {0xDD, 'Y', '\''},		/* LATIN CAPITAL LETTER Y WITH ACUTE ACCENT */    {0xDE, 'T', ','},		/* T with cedilla */    {0xDF, 'S', '^'},		/* 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -