उपयोग %
इस्तेमाल कर सकते हैं चाहते हैं। लेकिन व्यक्तिगत रूप से, मुझे सच में लगता है कि आप जो भी चाहते हैं उसे करने के लिए :make
दबा सकते हैं।
मैं वही करना चाहता था जो आप टालना चाहते हैं: बस मेरे द्वारा किए गए प्रत्येक फ़ोल्डर के लिए दो-पंक्ति मेकफ़ाइल को हैक करें। मैंने :make
का क्विकफ़िक्स समर्थन इतना आनंद लिया कि दो-पंक्ति मेकफ़ाइल को मारना बस लग रहा था बड़ी तस्वीर में एक छोटे से ऊपर की तरह।
... मैंने तब से बेहतर सीखा है। वर्तमान फ़ाइल प्रकार के आधार पर अपनी पसंद के आदेश का उपयोग करने के लिए :make
को कॉन्फ़िगर करने, makeprg
विकल्प को सेट करने के लिए आप एक autocmd या ftplugin का उपयोग कर सकते हैं। अपने आप में, यह आपको थोड़ा सा काम बचाता है।
समस्या तब शुरू होती है जब हम ऐसे उपकरण को काम करते हैं जिसका त्रुटि संदेश जीसीसी की तरह दिखता नहीं है। इसके आसपास जाने के लिए, vim errorformat
विकल्प भी प्रदान करता है। errorformat
बहुत परिष्कृत है। यदि आप वास्तव में इसके बारे में जानना चाहते हैं, तो :h error-format
से शुरू करें। लंबी अवधि में, परिष्कार वास्तव में महान है। इसका मतलब यह है कि, एक बार जब आप इसका उपयोग कैसे करें, तो आप लगभग किसी भी कंपाइलर आउटपुट को पार्स कर सकते हैं और इसे Quickfix (:cope
या :cl
) के साथ देखने के लिए प्रारूपित कर सकते हैं।
अल्पावधि में, यह एक बुरी चीज हो सकती है, क्योंकि इसका मतलब है कि आप पहली बार एक त्रुटि प्रारूप को अपने साथ जोड़ते हैं, तो आप थोड़ा सा समय बिता रहे हैं vimdocs और पुनः लोडिंग और फ़ाइलों का निर्माण जो आपके संकलक द्वारा उत्पन्न विभिन्न त्रुटि संदेशों को ट्रिगर करेगा। यह निश्चित रूप से नहीं है कि आप क्या चाहते हैं यदि आप केवल अपने आराम क्षेत्र के बाहर काम कर रहे हैं, या आपका मालिक आपके कंधे पर है, तो आप इस बग को ठीक करने के लिए आग्रह करते हैं अब।
उम्मीद है कि (और संभावित), कोई पहले से ही आप के लिए यह दर्द के माध्यम से चला गया है, और या तो अपने डिफ़ॉल्ट ftplugin
के लिए उचित रूप errorformat
कॉन्फ़िगर किया गया है, या एक vim स्क्रिप्ट है कि वे सिर्फ समुदाय को स्थापित करने के लिए प्रतीक्षा कर रहे हैं के हिस्से के रूप में जारी और पूजा करो।
एक त्वरित प्रदर्शन के रूप में, यहाँ लाइनों की एक जोड़ी मैं अपने .vim/ftplugin/haskell.vim
फ़ाइल के लिए एक साथ काट दिया गया है:
setl makeprg=ghc\ --make\ %
setl errorformat=%E%f:%l:%c:,%C\ %.%m,%Z,%f:%l:%c:%m
मैं setl
यहाँ उपयोग करती हैं इसलिए कि ये विकल्प केवल Haskell स्रोत फ़ाइलों के लिए कॉन्फ़िगर किया गया है; अगर मैं एक अलग प्रकार की स्रोत फ़ाइल को एक साथ संपादित करता हूं, तो यह इसके बजाय एक अलग कॉन्फ़िगरेशन का उपयोग कर सकता है।
यदि आप :make
का उपयोग कर समाप्त करते हैं, तो मैं आपके switchbuf
सेटिंग को कॉन्फ़िगर करने की भी अनुशंसा करता हूं। अगर मुझे क्विकफिक्स उत्साहित हो जाता है और आपको गलत फाइल पर कूदता है तो मुझे बिल्ड के बाद ctrl-O दबाकर थोड़ा परेशान लगता है। मैं का उपयोग करें:
set switchbuf=useopen,usetab,newtab
http://stackoverflow.com/q/916875/80161 और http://stackoverflow.com/q/2233905/80161 –
और लोगों को यह करने के लिए समान है से अधिक उम्र के समान। – martiert
कोई संदेह नहीं है। मैं "लिंक" सूची में जोड़ता हूं लेकिन अभी तक अनुमति नहीं है। –