1/********************************************************************** 2 cp932.c - Onigmo (Oniguruma-mod) (regular expression library) 3**********************************************************************/ 4/*- 5 * Copyright (c) 2002-2009 K.Kosako <sndgk393 AT ybb DOT ne DOT jp> 6 * Copyright (c) 2011 K.Takata <kentkt AT csc DOT jp> 7 * All rights reserved. 8 * 9 * Redistribution and use in source and binary forms, with or without 10 * modification, are permitted provided that the following conditions 11 * are met: 12 * 1. Redistributions of source code must retain the above copyright 13 * notice, this list of conditions and the following disclaimer. 14 * 2. Redistributions in binary form must reproduce the above copyright 15 * notice, this list of conditions and the following disclaimer in the 16 * documentation and/or other materials provided with the distribution. 17 * 18 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 19 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 */ 30 31#define ENC_CP932 32#include "shift_jis.c" 33 34OnigEncodingDefine(windows_31j, Windows_31J) = { 35 mbc_enc_len, 36 "Windows-31J", /* name */ 37 2, /* max byte length */ 38 1, /* min byte length */ 39 onigenc_is_mbc_newline_0x0a, 40 mbc_to_code, 41 code_to_mbclen, 42 code_to_mbc, 43 mbc_case_fold, 44 apply_all_case_fold, 45 get_case_fold_codes_by_str, 46 property_name_to_ctype, 47 is_code_ctype, 48 get_ctype_code_range, 49 left_adjust_char_head, 50 is_allowed_reverse_match, 51 0, 52 ONIGENC_FLAG_NONE, 53}; 54/* 55 * Name: Windows-31J 56 * MIBenum: 2024 57 * Link: http://www.iana.org/assignments/character-sets 58 * Link: http://www.microsoft.com/globaldev/reference/dbcs/932.mspx 59 * Link: http://ja.wikipedia.org/wiki/Windows-31J 60 * Link: http://source.icu-project.org/repos/icu/data/trunk/charset/data/ucm/windows-932-2000.ucm 61 * 62 * Windows Standard Character Set and its mapping to Unicode by Microsoft. 63 * Since 1.9.3, SJIS is the alias of Windows-31J because its character 64 * set is usually this one even if its mapping may differ. 65 */ 66ENC_ALIAS("CP932", "Windows-31J") 67ENC_ALIAS("csWindows31J", "Windows-31J") /* IANA. IE6 don't accept Windows-31J but csWindows31J. */ 68ENC_ALIAS("SJIS", "Windows-31J") 69 70/* 71 * Name: PCK 72 * Link: http://download.oracle.com/docs/cd/E19253-01/819-0606/x-2chn0/index.html 73 * Link: http://download.oracle.com/docs/cd/E19253-01/819-0606/appb-pckwarn-1/index.html 74 * 75 * Solaris's SJIS variant. Its set is Windows Standard Character Set; it 76 * consists JIS X 0201 Latin (US-ASCII), JIS X 0201 Katakana, JIS X 0208, NEC 77 * special characters, NEC-selected IBM extended characters, and IBM extended 78 * characters. Solaris's iconv seems to use SJIS-open. 79 */ 80ENC_ALIAS("PCK", "Windows-31J") 81