OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007 Apple Inc. All rights reserved. | 2 * Copyright (C) 2007 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 18 matching lines...) Expand all Loading... |
29 #include "config.h" | 29 #include "config.h" |
30 #include "core/editing/SmartReplace.h" | 30 #include "core/editing/SmartReplace.h" |
31 | 31 |
32 #include <CoreFoundation/CFCharacterSet.h> | 32 #include <CoreFoundation/CFCharacterSet.h> |
33 #include <CoreFoundation/CFString.h> | 33 #include <CoreFoundation/CFString.h> |
34 | 34 |
35 namespace blink { | 35 namespace blink { |
36 | 36 |
37 static CFMutableCharacterSetRef getSmartSet(bool isPreviousCharacter) | 37 static CFMutableCharacterSetRef getSmartSet(bool isPreviousCharacter) |
38 { | 38 { |
39 static CFMutableCharacterSetRef preSmartSet = NULL; | 39 static CFMutableCharacterSetRef preSmartSet = nullptr; |
40 static CFMutableCharacterSetRef postSmartSet = NULL; | 40 static CFMutableCharacterSetRef postSmartSet = nullptr; |
41 CFMutableCharacterSetRef smartSet = isPreviousCharacter ? preSmartSet : post
SmartSet; | 41 CFMutableCharacterSetRef smartSet = isPreviousCharacter ? preSmartSet : post
SmartSet; |
42 if (!smartSet) { | 42 if (!smartSet) { |
43 smartSet = CFCharacterSetCreateMutable(kCFAllocatorDefault); | 43 smartSet = CFCharacterSetCreateMutable(kCFAllocatorDefault); |
44 CFCharacterSetAddCharactersInString(smartSet, isPreviousCharacter ? CFST
R("([\"\'#$/-`{") : CFSTR(")].,;:?\'!\"%*-/}")); | 44 CFCharacterSetAddCharactersInString(smartSet, isPreviousCharacter ? CFST
R("([\"\'#$/-`{") : CFSTR(")].,;:?\'!\"%*-/}")); |
45 CFCharacterSetUnion(smartSet, CFCharacterSetGetPredefined(kCFCharacterSe
tWhitespaceAndNewline)); | 45 CFCharacterSetUnion(smartSet, CFCharacterSetGetPredefined(kCFCharacterSe
tWhitespaceAndNewline)); |
46 // Adding CJK ranges | 46 // Adding CJK ranges |
47 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x1100, 256));
// Hangul Jamo (0x1100 - 0x11FF) | 47 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x1100, 256));
// Hangul Jamo (0x1100 - 0x11FF) |
48 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x2E80, 352));
// CJK & Kangxi Radicals (0x2E80 - 0x2FDF) | 48 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x2E80, 352));
// CJK & Kangxi Radicals (0x2E80 - 0x2FDF) |
49 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x2FF0, 464));
// Ideograph Descriptions, CJK Symbols, Hiragana, Katakana, Bopomofo, Hangul Com
patibility Jamo, Kanbun, & Bopomofo Ext (0x2FF0 - 0x31BF) | 49 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x2FF0, 464));
// Ideograph Descriptions, CJK Symbols, Hiragana, Katakana, Bopomofo, Hangul Com
patibility Jamo, Kanbun, & Bopomofo Ext (0x2FF0 - 0x31BF) |
50 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x3200, 29392))
; // Enclosed CJK, CJK Ideographs (Uni Han & Ext A), & Yi (0x3200 - 0xA4CF) | 50 CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x3200, 29392))
; // Enclosed CJK, CJK Ideographs (Uni Han & Ext A), & Yi (0x3200 - 0xA4CF) |
(...skipping 13 matching lines...) Expand all Loading... |
64 } | 64 } |
65 return smartSet; | 65 return smartSet; |
66 } | 66 } |
67 | 67 |
68 bool isCharacterSmartReplaceExempt(UChar32 c, bool isPreviousCharacter) | 68 bool isCharacterSmartReplaceExempt(UChar32 c, bool isPreviousCharacter) |
69 { | 69 { |
70 return CFCharacterSetIsLongCharacterMember(getSmartSet(isPreviousCharacter),
c); | 70 return CFCharacterSetIsLongCharacterMember(getSmartSet(isPreviousCharacter),
c); |
71 } | 71 } |
72 | 72 |
73 } | 73 } |
OLD | NEW |