दस्तावेज़ में यूनिकोड वर्ण सम्मिलित करने का सबसे आसान तरीका क्या है?


28

कभी-कभी दस्तावेज़ लिखते समय मैं यूनिकोड वर्णों को पाठ में सम्मिलित करना चाहता हूँ। कभी-कभी मैं चरित्र कोड जानता हूं और कभी-कभी मैं इसे वेब पर देखता हूं।

वर्तमान में मैं इन्सर्ट मोड में जाता हूं और फिर उपयोग करता हूं <Ctrl-V>u{four digit hex number}, जो बहुत श्रमसाध्य हो सकता है। क्या पात्रों को सम्मिलित करने का एक आसान तरीका है (शायद चिपकाने का कोई रूप)?


दूसरा प्रश्न वास्तव में इस अधिक सामान्य प्रश्न का "विशेष मामला" है; उत्तर समान होंगे ... मेरी टिप्पणी वहां भी लागू होती है: आप ओएस की सुविधाओं का उपयोग करें (जो कुछ भी वे हो सकते हैं), या कुछ अन्य ओएस-वाइड प्रोग्राम (परीक्षा के लिए जब मैंने विंडोज का उपयोग किया था, तो मुझे ऑलकार्स का उपयोग करना पसंद था जो एक्स 11 का अनुकरण करता है कुंजी लिखें; यह सभी कार्यक्रमों में काम करता है)।
मार्टिन टूरनोइज

हां, यह एक विशेष मामला है और इसके लिए उत्तर विशेष हैं। क्या आपको नहीं लगता कि एक अधिक सामान्यीकृत समाधान हो सकता है जो अधिक चीजों को शामिल करता है जिसे लोग विशेष मामले को देखते समय विचार नहीं करते थे।
मार्टिन यॉर्क

हम उस प्रश्न को अधिक सामान्य भी बना सकते हैं, या यह चिन्हित कर सकते हैं कि इस एक का एक डुप्लिकेट (भले ही यह पहले था); मैं वास्तव में इस तरह की परवाह नहीं करता । लेकिन मुझे नहीं लगता है कि दोनों प्रश्नों के होने से लंबी अवधि में किसी को भी मदद मिलेगी :-)
मार्टिन Tournoij

अगर मैं दुनिया को नियंत्रित कर सकता। हो सकता है कि हमें इसे एक या दो दिन के लिए खड़ा करना चाहिए, ताकि अगर यह कोई अनोखी प्रतिक्रिया एकत्र करे तो इसे दूसरे प्रश्न से अलग किया जा सके। यदि यह अनुत्तरित रहता है या उत्तर केवल डुप्लिकेट हैं तो इसे बंद / हटाएं।
मार्टिन यॉर्क

ठीक है .. मैं निश्चित रूप से सहमत हूं कि दूसरे प्रश्न के पास महान जवाब नहीं हैं , और इस सवाल को बेहतर (उम्मीद) लोगों को आकर्षित करना चाहिए ... अन्य प्रश्न का संपादन (इसे और अधिक सामान्य बनाने के लिए) अभी भी इसे अत्यधिक उत्थान के साथ छोड़ देता है जवाब जो केवल एम डैश के साथ सौदा करते हैं , इसलिए यह या तो महान नहीं है ... इसलिए मैंने अपने करीबी वोट को वापस ले लिया है, और जैसे ही यह कुछ अच्छे जवाब मिलते हैं, मैं दूसरे को इस एक के डुप्लिकेट (भले ही वोट दूंगा) यह पहले था) ... मैं निश्चित रूप से नियंत्रित नहीं कर सकता कि दूसरे लोग वोट देने के लिए क्या चुनते हैं।
मार्टिन टूरनोइज

जवाबों:


23

प्रस्तावना : इसका विम के साथ ऐसा कोई लेना-देना नहीं है, लेकिन मैं आपको दिखाऊंगा कि इन पात्रों को सम्मिलित करने के लिए मैं "सर्वश्रेष्ठ" तरीका क्या समझता हूं; विम का डिग्राफ सिस्टम कमोबेश एक जैसा है, लेकिन यह केवल विम के साथ काम करता है। यह सभी अनुप्रयोगों में काम करेगा ।

यह केवल X11 सिस्टम (लिनक्स, बीएसडी, आदि) के लिए काम करेगाविंडोज के लिए, AllChars है । इसे थोड़ी देर में अपडेट नहीं किया गया है, लेकिन मैं यह पुष्टि कर सकता हूं कि यह विंडोज 7 के साथ अच्छी तरह से काम करता है (इसका उपयोग मेरी पिछली नौकरी में किया गया था)। मेरा मानना ​​है कि ओएस एक्स में इसे बनाने के लिए अच्छी सुविधाएं भी हैं; यदि आप OS X का उपयोग करते हैं, तो मैं आपको उन्हें जांचने के लिए प्रोत्साहित करता हूं, लेकिन जैसा कि मैंने वास्तव में कभी OS XI का उपयोग नहीं किया है, आप उन्हें इंगित नहीं कर सकते।

नीचे एक मसौदा वेबलॉग का (भाग) मैं पाइपलाइन में है। दुर्भाग्य से वास्तव में एक व्यापक गाइड मौजूद नहीं है (अभी तक), और नीचे उन सभी विशेषताओं का वर्णन नहीं करता है जो यह प्रदान करता है (उदाहरण के लिए, मृत कुंजी के बारे में कुछ हिस्से गायब हैं) और कुछ हिस्सों में बेहतर लिखा जा सकता है, लेकिन मुझे लगता है कि यह है अभी भी "पर्याप्त उपयोगी"।


एक 'कम्पोज़ सीक्वेंस' Composeकुंजी को दबा रहा है और फिर एक या एक से अधिक वर्ण आपके कीबोर्ड पर नहीं पाए गए कुछ चरित्र का निर्माण करने के लिए, उदाहरण के लिए, दबाने Compose, तुरंत बाद "और aएक उत्पादन कर सकता है ä

डिफ़ॉल्ट रूप से, Composeकिसी भी कुंजी 1 के लिए बाध्य नहीं है ; राइट Altकी (aka। Alt Gr) का उपयोग अक्सर किया जाता है, लेकिन आप इसे अपनी इच्छित किसी भी कुंजी पर सेट करते हैं।

इसे xmodmap का उपयोग करके सेट करें

आप इसे xmodmap सेट करने के लिए उपयोग कर सकते हैं :

$ xmodmap -e 'keysym Alt_R = Multi_key'     # Set it right Alt
$ xmodmap -e 'keysym Caps_Lock = Multi_key' # Set it to Caps Lock
$ xmodmap -e 'keysym F12 = Multi_key'       # You're free to use *any* key, like F12

आप शायद इसे अपनी ~/.Xmodmapफ़ाइल 2 में जोड़ना चाहते हैं :

! Set compose key
keysym Alt_R = Multi_key

XKB का उपयोग करके इसे सेट करें

आप XKB के विकल्प के रूप में कंपोज़ कुंजी भी सेट कर सकते हैं setxkbmap:

setxkbmap -option compose:ralt  # Right alt
setxkbmap -option compose:caps  # Caps Lock

इन्हें स्थायी बनाने के लिए, अपने X स्टार्टअप फ़ाइल में कमांड जोड़ें, या वैकल्पिक रूप से, आप इसे इसमें भी सेट कर सकते हैं /etc/X11/xorg.conf:

Section "InputDevice"
    Identifier "Keyboard0"
    Driver "kbd"
    Option "XkbOptions" "compose:ralt"
    #Option "XkbOptions" "compose:caps"
EndSection

या, अधिक 'आधुनिक' शैली में, आप एक फ़ाइल बना सकते हैं /etc/X11/xorg.conf.d/90-compose.conf:

Section "InputClass"
    Identifier "Set compose key"
    MatchIsKeyboard "on"
    Option "XkbOptions" "compose:ralt"
EndSection

संभावित मानों की एक सूची पाई जा सकती है xkeyboard-config(7), खंड 'कंपोज की कुंजी की स्थिति' 3

मृतक कुंजी स्थापित करना

एक मृत कुंजी का उपयोग मुख्य रूप से एक अक्षर (जैसे ओमलाट, उच्चारण कब्र, आदि) के लिए एक उच्चारण या विकृति को जोड़ने के लिए किया जाता है, हालांकि इसका उपयोग किसी भी चरित्र को बनाने के लिए किया जा सकता है। यह काम करता है ... TODO '

keycode 133 = dead_greek NoSymbol SuperR

http://zuttobenkyou.wordpress.com/2011/08/24/xorg-using-the-us-international-altgr-intl-variant-keyboard-layout/
http://stackoverflow.com/questions/14922007/how-to-enter-greek-alpha-under-xor
keycode 48 = dead_grave apostrophe


<dead_grave> <space>       : "`"   grave # GRAVE ACCENT
<dead_grave> <dead_grave>  : "`"   grave # GRAVE ACCENT
<dead_grave> <a>           : "À"   agrave # LATIN CAPITAL LETTER A WITH GRAVE

~ / .XCompose फ़ाइल बनाना

यदि ~/.XComposeगुम है तो डिफ़ॉल्ट कंपोज़ फ़ाइल /usr/share/X11/locale/$LANG/Compose। अपना स्वयं ~/.XComposeका डिफ़ॉल्ट होना ओवरराइड करता है, लेकिन आप अभी भी डिफ़ॉल्ट को इसमें शामिल कर सकते हैं:

include "%L"

किसी अनुप्रयोग को पुनरारंभ करने पर किसी भी कंपोज़ फ़ाइल में परिवर्तन प्रभावी होता है। आपको X को पुनरारंभ करने की आवश्यकता नहीं है।

कुंजी लिखें

एक 'कम्पोज़ सीक्वेंस' Composeकुंजी को दबा रहा है और फिर एक या अधिक वर्णों को कुछ वर्ण बनाने के लिए, उदाहरण के लिए:

<Multi_key> <quotedbl> <a> : "ä" adiaeresis

इसका मतलब है कि दबाने Compose, तुरंत बाद "और aउत्पादनä

<Multi_key>दर्शाता है कि हम Composeकुंजी का उपयोग कर रहे हैं । हम इसके बाद एक या एक से अधिक चाबियों की सूची का पालन करते हैं, इन्हें होना चाहिएkeysyms , जो एक्स द्वारा उपयोग की जाने वाली कुंजियों का प्रतीकात्मक प्रतिनिधित्व है (देखें कुंजी अनुभाग)।

द्वारा पीछा किया : के बाद, परिणाम द्वारा पीछा किया।

परिणाम:

<Multi_key> <a>          :  "ä" adiaeresis
<Multi_key> <b> <b>      :  "ä" adiaeresis
<Multi_key> <c> <c> <c>  :  "ä" adiaeresis
<Multi_key> Alt <d>      :  "ä" adiaeresis
<Multi_key> Ctrl <e>     :  "ä" adiaeresis

नोट : एक कम्पोज़ फ़ाइल केस-सेंसिटिव है, इसलिए Aऐसा नहीं हैa

मृत कुंजी

करने के लिए

इसे GTK & Qt में काम करें

पर्यावरण चर सेट GTK_IM_MODULEऔर QT_IM_MODULEकरने के लिए xim

बॉर्न शेल:

# Make compose key work for GTK, Qt
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim

सी शेल:

# Make compose key work for GTK, Qt
setenv GTK_IM_MODULE xim
setenv QT_IM_MODULE xim

यह भी देखें

मेरे ~/.XCompose

यह वह है ~/.XComposeजो मैं उपयोग करता हूं ; मैंने इसे जेनरेट करने के लिए एक स्क्रिप्ट का उपयोग किया, लेकिन मैंने गलती से इसे कंप्लीट कर लिया था> _ <<तो मुझे इसे फिर से लिखने की जरूरत है।

इस लाइन पर भी ध्यान दें:

<Multi_key> <i> <b> : "NL65AEGO0721647952"

दबाना Compose ib से यह स्ट्रिंग (एक यादृच्छिक परीक्षण IBAN नंबर) डाला जाएगा; अनुप्रयोगों के परीक्षण के लिए बहुत उपयोगी है जहां किसी वस्तु (व्यक्ति, संगठन) को बनाने के लिए ऐसी संख्या की आवश्यकता होती है; XCompose एक "स्निपेट" टूल के रूप में भी काम कर सकता है :-)

फुटनोट

1: कुछ UNIX कीबोर्ड में एक समर्पित Composeकुंजी थी ( जैसे कि SUN ), लेकिन यह इन दिनों काफी असामान्य है।

2: आपके मौजूदा सेटअप के आधार पर, यह स्टार्टअप पर पढ़ा जा सकता है या नहीं भी हो सकता है, आपके कॉन्फ़िगरेशन के आधार पर, या xmodmap ~/.Xmodmapतो लाइन को जोड़ सकता है ; आर्कलिनक्स विकी को भी देखें~/.xinitrc~/.xsession

3: आपके लाभ के लिए पुन: प्रस्तुत:

    Position of Compose key
    +------------------------------------------------------+
    |Option                Description                     |
    +------------------------------------------------------+
    |compose:ralt          Right Alt                       |
    |compose:lwin          Left Win                        |
    |compose:lwin-altgr    3rd level of Left Win           |
    |compose:rwin          Right Win                       |
    |compose:rwin-altgr    3rd level of Right Win          |
    |compose:menu          Menu                            |
    |compose:menu-altgr    3rd level of Menu               |
    |compose:lctrl         Left Ctrl                       |
    |compose:lctrl-altgr   3rd level of Left Ctrl          |
    |compose:rctrl         Right Ctrl                      |
    |compose:rctrl-altgr   3rd level of Right Ctrl         |
    |compose:caps          Caps Lock                       |
    |compose:caps-altgr    3rd level of Caps Lock          |
    |compose:102           <Less/Greater>                  |
    |compose:102-altgr     3rd level of <Less/Greater>     |
    |compose:paus          Pause                           |
    |compose:prsc          PrtSc                           |
    |compose:sclk          Scroll Lock                     |
    +------------------------------------------------------+

1
विंडोज के लिए, Allchars के बजाय Wincompose का उपयोग करें । यह वही करता है जो यह टिन पर कहता है। जब तक मुझे विनकॉम नहीं मिला, मैंने ऑलचर का इस्तेमाल किया। रचना की सीमा यह है कि आपके पास सभी वर्णों तक पहुंचने के लिए एक यादगार संयोजन नहीं हो सकता है, केवल वही जो आप अक्सर उपयोग करते हैं या जिसमें तार्किक अपघटन होता है।
गिलेस एसओ- बुराई को रोकना '

@ गिल्स धन्यवाद; WinCompose अच्छा लग रहा है। आप सही कह रहे हैं कि आप केवल "सबसे अधिक उपयोग किए जाने वाले" वर्णों का एक बहुत ही सीमित सबसेट दर्ज कर सकते हैं। मेरे लिए यह पर्याप्त> 95% समय है। बाकी के लिए मैं UniView का उपयोग करता हूं ... मुझे कुछ भी बेहतर पता नहीं है ...
मार्टिन टूरनोइज

शायद ही कभी इस्तेमाल किए जाने वाले पात्रों के लिए, मैं Shapecatcher (कोई संपादक एकीकरण जो मुझे पता है) का उपयोग करता है या मैं चरित्र का नाम टाइप करता हूं ( C-x 8 RETएक संपादक में जो vi नहीं है, मुझे नहीं पता कि Vim में कुछ समान है)।
गिलेस एसओ- बुराई को रोकना '

1
KDE उपयोगकर्ता इस पद्धति का उपयोग नहीं कर सकते क्योंकि KDE ने इस सुविधा को Xorg पर लागू करने के लिए ज़िम्मेदारी को फिर से दर्ज किया , और Xorg Qt को फिर से , और Qt ने Xorg को वापस लौटा दिया । मैं RTL पाठ टाइप करने के बारे में अपने पृष्ठ पर इस पर चर्चा करता हूं ।
डॉटनचेन

@dotancohen यह एक अलग समस्या (जैसा, फीचर अनुरोध) में दिखता है।
मार्टिन टूरनोइज

20

यूरो या कॉपीराइट प्रतीकों जैसे यूनिकोड वर्णों को सम्मिलित करने के लिए, या जर्मन umlaut या उच्चारण कब्र के रूप में विशिष्ट चिह्न का digraphsउपयोग किया जा सकता है।

उदाहरण के लिए, इन्सर्ट मोड में Ctrl+ दबाएँ kऔर निम्न टाइप करें:

  • स्पेनिश: a'के लिए á, E'के लिए É, n?के लिए ñ,
  • जर्मन: के a:लिए ä, के ssलिए ß,
  • अन्य उच्चारण पत्र: के a!लिए à, a>के âलिए ê, के a?लिए ã,
  • ग्रीक: a*के लिए α(अल्फा), b*के लिए β(बीटा), g*के लिए γ(गामा), d*के लिए δ(डेल्टा)।
  • वर्ग संख्या: के 22लिए ², 33या³
  • मुद्राओं: Euके लिए (यूरो), Pdके लिए £(पाउंड),
  • Coके लिए ©(कॉपीराइट), DGके लिए °(डिग्री),
  • OKके लिए , XXके लिए , Sbके लिए (बुलेट),
  • विराम चिह्न: -Nके लिए (पानी का छींटा एन), -Mके लिए (एम डैश)

जब डिग्राफ विकल्प सेट किया जाता है ( :set dg), आप निम्न विधि का भी उपयोग कर सकते हैं:

  • aBackspace:के लिए ä, के EBackspaceuलिए , आदि।

वर्तमान में परिभाषित डिग्राफ प्रकार को सूचीबद्ध करने के लिए: :digraphs( :dig)।

स्रोत: विम विकिया साइट पर विशेष वर्ण दर्ज करना


ओएस एक्स

यदि आप ओएस एक्स का उपयोग कर रहे हैं, तो निम्न विधि से कहीं भी उच्चारण पत्र टाइप करना बहुत आसान है:

  • Option+ e, तो aके लिए á, eके लिए é, iके लिए íऔर इसी तरह,
  • Option+ n, फिर , के aलिए ã, और इसी तरह,nñ
  • Option+ u, तो uके लिए ü,
  • उलटा विराम चिह्न: Option+ 1के लिए ¡, Option+ Shift+ ?के लिए ¿,

यह भी देखें:


6

मेरा यूनिकोड प्लगइन यूनिकोड वर्णों के आसान इनपुट के लिए अनुमति देता है। विशेष रूप से यह अनुमति देता है

  • :Digraph <name> - वर्ण के लिए डिग्राफ खोजें

  • :UnicodeTable - वर्ण तालिका प्रदर्शित करता है

  • :UnicodeName - कर्सर के तहत चरित्र को पहचानें

  • यूनिकोड तालिका से उनके नाम या मूल्यों का उपयोग करते हुए वर्णों को पूरा करना (:h i_CTRL-X_CTRL-Z ) या डिगरफ ( :h i_CTRL-X_CTRL_G)

मेरे प्लगइन का उपयोग करने के तरीके के बारे में अधिक जानकारी के लिए सहायता पढ़ें।


3

पूर्वनिर्धारित डिग्राफ ( :digएक सूची प्राप्त करने के लिए भागो ) का उपयोग करने के लिए, आप अपने खुद के डिग्राफ को भी परिभाषित कर सकते हैं:

:digr e: 235 a: 228

इसे भी देखें: http://vimdoc.sourceforge.net/htmldoc/digraph.html


3

आमतौर पर उपयोग किए जाने वाले वर्णों के लिए, :digraphया बाहरी साधन जैसे कि उल्लेखित कीज़ महान हैं। शायद ही कभी इस्तेमाल किए गए लोगों के लिए, मैं संक्षिप्त रूप में परिभाषित करता हूं:

norea <unique> unicode_smiley 😃
norea <unique> unicode_skull ☠

और फिर पॉपअप मेनू प्राप्त करने के लिए मेरे स्निपेटकम्प्लीट प्लगइन का उपयोग करें जो इस तरह के सभी संक्षिप्त विवरणों को सूचीबद्ध करता है, जैसे:unicode_<C-x>]

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.