ठीक है, तो मैं सिर्फ अपने आप को चारों ओर poking कर रहा हूँ तो मैं बिल्कुल यकीन नहीं है, लेकिन ऐसा लगता है कि तालिका आप देख रहे हैं glibc जड़ के लिए निम्न स्थान सापेक्ष में पाया जाता है:
localedata/locales/i18n
यह यूनिकोड (संस्करण 5) लोकेल प्रतीत होता है।
% ENCLOSED ALPHANUMERICS/
<U24D0>..<U24E9>;/
यदि आप सोच रहे हैं, समारोह ctype_output (ld-ctype.c) allocate_arrays जो wcwidth_table_init कॉल कॉल: यह जो है मैं कहाँ लगता है कि आप अपने परिवर्तन करने की आवश्यकता, निम्नलिखित शामिल हैं। फ़ंक्शन wcwidth_table_init 3level.h द्वारा उत्पन्न होता है (जो एक ही टेम्पलेट का पालन करने वाली अन्य सारणी भी उत्पन्न करता है)। यह वह श्रृंखला है जिसे मैंने स्थानीय/स्थानीय लोगों में फ़ाइलों को ट्रैक करने के लिए किया था।
जैसा कि मैंने कहा, मैं नहीं कर रहा हूँ 100% यकीन है कि यह सही तालिका है, लेकिन मैंने सोचा कि मैं हिस्सा था कि मैं क्या मिल गया था।
कि फ़ाइल में टिप्पणी का सुझाव यह localedata/जनरल-यूनिकोड-ctype.c है, जो एक UnicodeData फ़ाइल के बारे में बात द्वारा उत्पन्न है, लेकिन जहां UnicodeData फ़ाइल है कर रहा हूँ इसका उपयोग glibc वितरण में किया जाता है ...? मैं जेनरेट की गई फाइल को पैच नहीं करना चाहता, ऐसा लगता है कि अगली बार एक नई रिलीज होने पर चिपचिपा हो जाएगा। – bdonlan
हम्म ... यह एक अच्छा मुद्दा है। क्या आपने जेनरेट की गई फाइल को संशोधित करने का प्रयास किया है, बस यह सत्यापित करने के लिए कि wcwidth() सही मान देता है? यह उपयोगी हो सकता है क्योंकि यह साबित होगा कि हम सही रास्ते पर हैं। फिर हम यह पता लगाने में और अधिक प्रयास कर सकते हैं कि फाइलें कैसे उत्पन्न होती हैं ताकि समस्या को रूट पर ठीक किया जा सके। – Naaff
@bdonlan: क्या उन्होंने इसे यूनिकोड 6.0.0 यूनिकोडडेटा फ़ाइल के साथ पुन: चालू करने के लिए अपडेट किया है? शायद यह वर्तमान रिलीज में तय किया गया है। – tchrist