2009-07-06 16 views
19

मैं :make हाल ही में उपयोग के साथ प्रयोग करने की कोशिश कर रहा है बिना दिखाए लिनक्स में vim में हैं, लेकिन वे vim तरह खोल उत्पादन पहले दिखा करने के लिए स्विच और एक प्रवेश की आवश्यकता के लिए है मैं नहीं कीप्रेस, तो यह मुझे दिखाता है कि मुझे लगता है कि 'errorformat' पर आधारित एकत्रित त्रुटियों की एक सूची है जिसे मुझे एंटर दबाकर पुष्टि करने की भी आवश्यकता है। मैं सिर्फ एक छोटा "ठीक" संदेश रखना पसंद करूंगा जिसके लिए एक कीप्रेस द्वारा पुष्टि की आवश्यकता नहीं है, या यदि कोई त्रुटि हुई तो वह vim :cwindow खोल देगा।कॉल करने के लिए क्या यह संभव है: खोल

+1

आपका प्रश्न [रनिंग: पृष्ठभूमि में जीवीआईएम से बना] का डुप्लिकेट है (http://stackoverflow.com/questions/666453/running-make-from-gvim-in-background/666578#666578)। –

+0

यह प्रश्न स्पष्ट रूप से ** अग्रभूमि ** में 'मेक' चलाने के बारे में है और 'मेक' खत्म होने के बाद सीधे पहली त्रुटि पर कूदता है, परेशानी के बिना और संकेत देता है जो अनावश्यक रूप से विकास को धीमा कर देता है। ('मेक' अक्सर पहली त्रुटि को हिट करने के लिए मिलीसेकंड लेता है और रोकता है। तो इसे पृष्ठभूमि में क्यों चलाएं?) – Tino

उत्तर

1

प्रयास करें: यदि आप make चलाने के बाद

:silent make 

स्वचालित रूप से QuickFix विंडो खोलने के लिए, आप अपने .vimrc में डाल कर सकते हैं: छोटे के लिए जीसीसी

autocmd QuickFixCmdPost * :copen 
+3

मैंने पहले ही कोशिश की है: चुपचाप बनाना, लेकिन यह सिर्फ विम विंडो को पूरी तरह से काला बनाता है (vim की कमांड लाइन और अंतिमस्टैटस अभी भी दिखाया गया है) इसलिए मुझे कॉल करना है: बफर को फिर से विंडो में दिखाना है। – Sam

2

आप F9 उदाहरण के लिए मैप कर सकते हैं उपयोग करने के लिए सी स्निपेट जिन्हें पुस्तकालयों, लिंकिंग आदि की आवश्यकता नहीं है:

map <F9> :!gcc -o %< % <enter><CR><C-w> 

यह फ़ाइल foo.c द्विआधारी foo फ़ाइल के लिए तैयार करेगा। मुझे पता है कि आप बिल्कुल वही नहीं चाहते हैं, लेकिन यह कोई खोल नहीं दिखाता है और छोटे सी स्निपेट के लिए उपयोगी है।

-3

map <F9> :make<CR> 

यह प्रयास करें शायद आपकी समस्या का समाधान करना चाहिए।

+0

मेरे लिए काम नहीं करता है। मेक चलता है, लेकिन यह चुप नहीं है। :-( –

12

मैं अगली पंक्ति उपयोग कर रहा हूँ बस सही उद्देश्य के लिए आप ने लिखा है:

nnoremap <leader>m :silent make\|redraw!\|cc<CR> 

cc अंत में पहली त्रुटि या No errors संदेश से पता चलता है कि अगर यह मामला है।

+2

ग्रेट विचार! हालांकि, मैं पहली त्रुटि के स्थान पर स्वचालित रूप से नहीं लेना पसंद करता हूं, लेकिन त्रुटियों के मामले में केवल क्विकफ़िक्स विंडो दिखाया जा सकता है, इसलिए मैं बदल गया '\! Redraw! \ Cw '। – joelpet

संबंधित मुद्दे

 संबंधित मुद्दे