2009-12-11 11 views
6

मैं वर्तमान फ़ाइल को बदलने के बजाय, एक नए टैब में खोलने के लिए इसमें खींचने वाली फ़ाइलों को खोलने के लिए जीवीआईएम चाहता हूं। This question सही ट्रैक पर है, लेकिन मैं gvim के कई उदाहरण चलाने में सक्षम होना चाहता हूं, बस अपनी इच्छित विंडो में फ़ाइलों को खींचने में सक्षम हूं।क्या मैं नए टैब में ड्रैग-इन फ़ाइलों को खोलने के लिए जीवीआईएम को मजबूर कर सकता हूं?

मैं Windows 7.

उत्तर

4

नहीं, आप नहीं कर सकते हैं, ड्रैग और ड्रॉप पर डिफ़ॉल्ट कार्रवाई विंडोज अनुप्रयोग (OLE DoDragDrop) के कार्यान्वयन में निर्दिष्ट है। इसे एक नए टैब में गिराए गए फाइलों को खोलने के लिए लागू नहीं किया गया है और इस प्रकार नहीं होगा। लेकिन जीवीआईएम ओपन सोर्स है ... इसलिए यदि आप वास्तव में यह चाहते हैं तो आप एक पैच सबमिट कर सकते हैं :)

5

आप शुरू कर सकते हैं पर चल रहा हूँ :tabe टाइप करके और फिर खींच कर अपने फ़ाइल ड्रॉप। मैं पूरी तरह से इसकी पुष्टि नहीं कर सकता (मेरे पास केवल एक मैक है) लेकिन मुझे लगता है कि यह :tabe filename प्रदर्शित होगा। फिर आप प्रवेश कर सकते हैं और आप जा सकते हैं ...

+0

काम करता है यही कारण है कि साथ एक नया टैब के लिए कि विभाजन कनवर्ट करते हैं, लेकिन मैं नहीं बल्कि एक नई फ़ाइल प्राप्त करने के लिए संपादक "तैयार" करने की जरूरत नहीं होगी। क्या 'ड्रॉप' के लिए डिफ़ॉल्ट कार्रवाई करने का कोई तरीका है? – wes

+0

ठीक है, आकार के लिए मेरा अन्य उत्तर आज़माएं :) – Peter

+0

यह वास्तव में एक नया टैब खोलने की तैयारी से बेहतर नहीं है (': tabnew'), फिर फ़ाइल को नए टैब में छोड़ दें। –

2

जीवीआईएम में एक नई फाइल खोलना वर्तमान में खुला है जो प्रतिस्थापित नहीं करता है। नई फाइल एक नए बफर में खोली गई है और वह बफर दिखाया गया है। आप :b कमांड का उपयोग कर बफर के बीच स्विच कर सकते हैं। आपके मामले में, आप फ़ाइल को आसानी से छोड़ सकते हैं, फिर :tabedit के साथ एक नया टैब बनाएं, और उस टैब को बफर को :b <filename> पर स्विच करें। बेशक यह वही नहीं है जो आप खोज रहे हैं, लेकिन यह मेरे लिए पर्याप्त है।

1

आप निम्नलिखित विकल्प को vimrc में डाल सकते हैं। वीआईएम फाइल को नए टैब से खोल देगा। आप gVim को ड्रैग और ड्रॉप भी कर सकते हैं, यह नए टैब में खुल जाएगा। यह मेरे लिए काम करता है, मैं भी विंडोज 7.

पर उपयोग कर रहा हूँ: औ BufAdd, BufNewFile * नेस्ट टैब sball

+1

अधिक जानकारी [यहां] (http://vim.wikia.com/wiki/Open_every_buffer_in_its_own_tabpage) दुर्भाग्यवश यह अन्य चीजों को गड़बड़ कर देती है। यदि मैं उदाहरण के लिए सहेजे गए सत्र लोड करता हूं, तो यह फ़ाइलों को दो बार लोड करता है। या यदि कोई बफर लोड किया गया है लेकिन वर्तमान में टैब में नहीं है, तो एक नई फ़ाइल खींचने के बाद, उस बफर को एक टैब भी मिलता है। –

0

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

@ECHO OFF 
:TOP 
IF (%1) ==() GOTO END 
    I:\apps\vim\vim73\gvim.exe --servername GVIM --remote-tab "%1" 
SHIFT 
GOTO TOP 

:END 
ECHO End 
0

ये विंडोज अनुकूल मैपिंग इस समस्या को और अधिक सहने बना सकते हैं:

यहाँ बैच फ़ाइल की सामग्री (पथ और जाँचने सर्वर का नाम बदल) है। फिर भी, हालांकि फ़ाइल खींच से पहले Ctrl-टी प्रेस करने ...

" CTRL-T opens a new tab, CTRL-W closes tab, CTRL-Left/Right switches tabs 
noremap <C-T> :tabnew<return> 
noremap <C-W> :tabclose<return> 
noremap <C-Left> :tabprevious<return> 
noremap <C-Right> :tabNext<return> 
1

आप अपने .vimrc

autocmd BufReadPost * tab ball 

सभी बफ़र्स के लिए इस टैब खुल जाएंगे में निम्नलिखित जोड़ सकता है, नव सहित याद गिराए गए फाइल ध्यान दें कि सभी बफर के लिए ऐसा करता है, इसलिए gvim में पहले से ही खोले गए हैं।

0
  1. CTRL होल्डिंग फ़ाइल को विम पर खींचते समय नई फ़ाइल को विम में एक नई विंडो विभाजित कर देगा।
  2. तो बस <C-W>Tas I found here.
संबंधित मुद्दे

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