2011-03-02 11 views
82

में यूटीएफ -8 अक्षरों को कैसे देखें I समय-समय पर गैर-अंग्रेजी स्क्रिप्ट शामिल वेबपृष्ठों पर काम करते हैं, उनमें से अधिकतर यूटीएफ -8 वर्णसेट का उपयोग करते हैं, वीआईएम और जीवीएम यूटीएफ -8 अक्षरों को सही तरीके से प्रदर्शित नहीं करता है।वीआईएम या जीवीआईएम

_vimrc में खिड़कियों पर विम 7.3.46 का उपयोग करते हुए 7 64 बिट set guifont=Monaco:h10 साथ,

तो इसे ठीक करने के लिए एक रास्ता है?

अपडेट: मैंने चारों ओर गुगल किया है और set guifontwide क्षेत्रीय भाषाओं के लिए दूसरी फॉलबैक के रूप में कार्य करता है।

मैंने _vimrc में निम्नलिखित पंक्तियां जोड़ दीं और मेरी अधिकांश समस्याओं का हल हो गया।

set enc=utf-8 
set fileencoding=utf-8 
set fileencodings=ucs-bom,utf8,prc 
set guifont=Monaco:h11 
set guifontwide=NSimsun:h12 

NSimsun ऊपर फॉन्ट चीनी के लिए काम करता है, समस्या मैं नहीं जानता कि वे किस तरह फ़ॉन्ट का नाम मिल गया विम के साथ काम करने के लिए है, के रूप में Courier_New भी NSimsun फ़ॉन्ट निर्देशिका में कहीं नहीं है Courier New उल्लेख किया है। फ़ॉन्ट मैं प्रयोग करना चाहते हैं Latha मैं कैसे _vimrc फ़ाइल में इसका उपयोग करना नहीं जानते है लेकिन,। set guifontwide=latha:h12 या set guifontwide=Latha:h12 काम नहीं करता।

यदि मैंने सफलतापूर्वक guifontwide को latha पर सेट किया है, तो मेरी समस्या हल हो जाएगी, यह कैसे करें?

+0

निम्न पंक्तियां जोड़ें 'और guifont'' 'का मूल्य'' का मूल्य guifontwide'' क्या है? इसके अलावा, आप किस ओएस का उपयोग कर रहे हैं और किस संस्करण का विम? – Benoit

+0

साथिश, क्या आप इसके लिए कोई समाधान ढूंढ पाए? मैं eKalappai सॉफ़्टवेयर के साथ जीवीआईएम टाइप करने की कोशिश कर रहा हूं लेकिन विम केवल मुझे दिखा रहा है ?? पात्र (स्पष्ट रूप से उन्हें उसी तरह से बचाते हैं)। – sundar

+0

@ सुंदर नंबर मैंने छोड़ दिया: | –

उत्तर

37

आप

:set encoding=utf-8 
:set fileencoding=utf-8 

की कोशिश की?

+4

मैंने इन दोनों सेटिंग्स के साथ प्रयास किया है, और फिर भी मैं utf-8 वर्ण नहीं देख सकता। –

+1

-1। दरअसल यह काम नहीं कर सकता है। इनमें से कोई भी विकल्प फ़ाइल को फिर से लोड नहीं करेगा। पहला व्यक्ति संशोधित करेगा कि कैसे vim स्टोर बफर (और अन्य चीजें) आंतरिक रूप से स्टोर करता है, दूसरा यह निर्दिष्ट करेगा कि आप एक फ़ाइल के एन्कोडिंग को बदलना चाहते हैं जो पहले से ही बफर में लोड हो चुका है, जो इसे सहेजते समय लागू होगा। – Benoit

+0

': सेट एन्कोडिंग = utf8' * * बफर रीफ्रेश करें और यदि समस्या गलत एन्कोडिंग में थी, तो यह ठीक हो जाएगी। मैंने 'set fileencoding = utf8' विकल्प जोड़ा है ताकि आप सहेजते समय सबसे भ्रमित "कुछ वर्ण परिवर्तित नहीं कर सकें" त्रुटि में भाग नहीं पाएंगे। –

50

कोशिश का उपयोग कर दस्तावेज़ को फिर से लोड करने के लिए:

:e! ++enc=utf8 

कि काम करता है आप हो सकता है आपके .vimrc में fileencodings सेटिंग में बदलाव करना चाहिए।

+2

मेरे लिए कुछ भी नहीं बदलता –

+0

कोई पासा ......... –

+2

** ** ** अपने काम को सहेजने से पहले इसे चलाएं क्योंकि यह आपके द्वारा किए गए परिवर्तनों को मिटा देगा। ': आप हालांकि आपको बचाएंगे। –

4

एम $ विंडोज पर, जीवीआईएम आपको गैर-मोनोस्पेस्ड फोंट का चयन करने की अनुमति नहीं देगा। दुर्भाग्य से लता एक गैर monospaced फ़ॉन्ट है।

ऐसा करने के लिए एक हैक तरीका है: FontForge का उपयोग करना (आप http://www.geocities.jp/meir000/fontforge/ से विंडोज बाइनरी डाउनलोड कर सकते हैं) Latha.ttf को संपादित करने और इसे एक मोनोस्पेस्ड फ़ॉन्ट के रूप में चिह्नित करने के लिए। इस तरह कर रहा:

  1. लोड fontforge, चयन latha.ttf।
  2. मेनू: तत्व -> फ़ॉन्ट जानकारी
  3. का चयन करें "ओएस/2" फ़ॉन्ट जानकारी संवाद
  4. का चयन करें "Panose" टैब पर बाएं हाथ की सूची से
  5. सेट अनुपात = Monospaced
  6. सहेजें नई टीटीएफ संस्करण इस फ़ॉन्ट के, इसे आज़माएं!

शुभकामनाएं!

+0

है, मैं लता फ़ॉन्ट को मोनोस्पेस में नहीं बदल सका। मैंने आपके चरणों का बिल्कुल पालन किया लेकिन सहेजी गई फ़ाइल अभी भी मोनोस्पेस्ड फ़ॉन्ट के रूप में काम नहीं करती है :( –

+1

@ सतीश मनोहर 1) मौजूदा टीटीएफ फ़ाइल को ओवरराइट करें, अपने विंडोज को पुनरारंभ करें, और इसे आजमाएं। या 2) आप टीटीएफ को एक नई फाइल में सहेज सकते हैं और फ़ॉन्ट नाम को संशोधित कर सकते हैं। नई टीटीएफ फ़ाइल स्थापित करें। यह नया फ़ॉन्ट आपकी सूची में उपलब्ध होना चाहिए। –

1

इस समस्या को तब तक हल है?

मैं, समस्या यह है कि जाँचने सभी यूनिकोड वर्ण (लेकिन केवल एक उप समूह, उमलॉट और उच्चारण वर्ण सहित) प्रदर्शित नहीं किया था, जबकि :set guifont? खाली हो गया; my question देखते हैं।यहां पढ़ने के बाद, guifont को एक समझदार मूल्य पर सेट करने के लिए यह मेरे लिए तय किया गया है। हालांकि, मुझे 2 बाइट से परे वर्णों की आवश्यकता नहीं है।

+0

Guifont के लिए एक समझदार मूल्य क्या है? आपने क्या रखा – Christian

+0

मैंने उन मानों को सूचीबद्ध किया जो मेरे लिए [इस उत्तर] में काम करते हैं (http://stackoverflow.com/a/22669647)। – Tobias

1

मुझे अपने विंडोज जीवीआईएम संपादक में दिखाने के लिए स्थापित कोई अन्य फ़ॉन्ट नहीं मिला, इसलिए मैंने अभी Lucida Console पर स्विच किया है जिसमें कम से कम कुछ बेहतर यूटीएफ -8 समर्थन है। अपने _vimrc के अंत करने के लिए इस जोड़ें:

" For making everything utf-8 
set enc=utf-8 
set guifont=Lucida_Console:h9:cANSI 
set guifontwide=Lucida_Console:h12 

अब मैं कम से कम कुछ UTF-8 वर्णों को देखते हैं।

0

तो जापानी लोग यहाँ आए, तो कृपया अपने ~/.vimrc

set encoding=utf-8 
set fileencodings=iso-2022-jp,euc-jp,sjis,utf-8 
set fileformats=unix,dos,mac