टी एल; डॉ:
आधुनिक तरीका है COC का उपयोग इंटेलीजेंस -जैसे पूर्ण होने के लिए और जंप-टू-डेफिनिशन के लिए एक या अधिक भाषा सर्वर (LS) और (जिस तरह से अधिक)। और भी अधिक कार्यक्षमता के लिए (लेकिन जम्प-टू-डेफिनिशन के लिए इसकी आवश्यकता नहीं है) आप एक या अधिक डिबगर्स स्थापित कर सकते हैं और पूर्ण विकसित आईडीई अनुभव प्राप्त कर सकते हैं। जल्दी शुरू:
- अपने VIM प्लग-इन को प्रबंधित करने के लिए विम-प्लग स्थापित करें
- शीर्ष पर COC और (वैकल्पिक रूप से) Vimspector जोड़ें
~/.vimrc
:
call plug#begin()
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'puremourning/vimspector'
call plug#end()
:source $MYVIMRC | PlugInstall
VIM प्लग-इन डाउनलोड करने के लिए कॉल करें
- सीओसी एक्सटेंशन तक आसान पहुंच प्राप्त करने के लिए पुनरारंभ
vim
करें और कॉल करें:CocInstall coc-marketplace
- कॉल
:CocList marketplace
और भाषा सर्वर के लिए खोज, उदाहरण के लिए:
python
खोजने के लिए टाइप करें coc-jedi
,
php
खोजने के लिए टाइप करें coc-phpls
, आदि।
- (वैकल्पिक रूप से)
install_gadget.py --help
उपलब्ध डिबगर्स के लिए देखें , जैसे:
./install_gadget.py --enable-python
,
./install_gadget.py --force-enable-php
, आदि।
पूर्ण उत्तर:
भाषा सर्वर (LS) एक अलग स्टैंडअलोन अनुप्रयोग है (प्रत्येक प्रोग्रामिंग भाषा के लिए एक) जो पृष्ठभूमि में चलता है और वास्तविक समय में आपके संपादक (किसी भी संपादक, न केवल vim
) के लिए अतिरिक्त क्षमताओं को उजागर करने में आपकी पूरी परियोजना का विश्लेषण करता है । आपको चीजें मिलती हैं:
- namespace जागरूक टैग पूरा होना
- परिभाषा के लिए कूदो
- अगली / पिछली त्रुटि पर जाएं
- किसी वस्तु के सभी संदर्भ खोजें
- सभी इंटरफ़ेस कार्यान्वयन खोजें
- एक पूरे प्रोजेक्ट का नाम बदला
- होवर पर प्रलेखन
- स्निपेट्स, कोड क्रियाएँ, स्वरूपण, लाइनिंग और बहुत कुछ ...
भाषा सर्वर के साथ संचार भाषा सर्वर प्रोटोकॉल (एलएसपी) के माध्यम से होता है । दोनों nvim
और vim8
प्लग-इन के माध्यम से (या अधिक) समर्थन LSP, सबसे लोकप्रिय किया जा रहा है पूरा होने की विजय (COC)।
लैंग सर्वर वेबसाइट पर सक्रिय रूप से विकसित भाषा सर्वरों और उनकी क्षमताओं की सूची उपलब्ध है । उन सभी को COC एक्सटेंशन द्वारा प्रदान नहीं किया गया है। यदि आप उनमें से किसी एक का उपयोग करना चाहते हैं, तो आप या तो स्वयं COC एक्सटेंशन लिख सकते हैं या मैन्युअल रूप से LS स्थापित कर सकते हैं और COC के विकल्प के रूप में VIM प्लग-इन के बाद कॉम्बो का उपयोग कर सकते हैं:
डिबगर्स के साथ संचार डिबग एडाप्टर प्रोटोकॉल (डीएपी) के माध्यम से होता है । VIM के लिए सबसे लोकप्रिय DAP प्लग-इन Vimspector है ।
भाषा सर्वर प्रोटोकॉल (एलएसपी) Microsoft द्वारा विज़ुअल स्टूडियो कोड के लिए बनाया गया था और एक ओपन सोर्स प्रोजेक्ट के रूप में एक अनुमत एमआईटी लाइसेंस (रेड हैट और कोडेनवी के साथ सहयोग से मानकीकृत) के साथ जारी किया गया था। बाद में माइक्रोसॉफ्ट ने डिबग एडेप्टर प्रोटोकॉल (डीएपी) को भी जारी किया । VSCode द्वारा समर्थित कोई भी भाषा VIM में समर्थित है।
मैं व्यक्तिगत रूप से सीओसी + भाषा + सीओसी एक्सटेंशन द्वारा प्रदान सर्वर का उपयोग की सलाह देते हैं ALE अतिरिक्त linting के लिए (लेकिन LSP समर्थन सीओसी के साथ से बचने के संघर्ष करने के लिए निष्क्रिय के साथ) + Vimspector + Vimspector द्वारा प्रदान की डिबगर + निम्नलिखित विम प्लग इन ( "गैजेट" कहा जाता है):
call plug#begin()
Plug 'neoclide/coc.nvim'
Plug 'dense-analysis/ale'
Plug 'puremourning/vimspector'
Plug 'scrooloose/nerdtree'
Plug 'scrooloose/nerdcommenter'
Plug 'sheerun/vim-polyglot'
Plug 'yggdroot/indentline'
Plug 'tpope/vim-surround'
Plug 'kana/vim-textobj-user'
\| Plug 'glts/vim-textobj-comment'
Plug 'janko/vim-test'
Plug 'vim-scripts/vcscommand.vim'
Plug 'mhinz/vim-signify'
call plug#end()
आप प्रत्येक को यह देखने के लिए Google कर सकते हैं कि वे क्या करते हैं।