उलटी चालें हटाना


119
  • किसी शब्द को बाईं ओर कैसे हटाया जाता है? दूसरे शब्दों में, कर्सर के अंत में खड़ा होने पर शब्द को हटा दें।
  • पंक्ति की शुरुआत में कोई भी वर्ण कैसे हटाता है?
  • बाईं ओर के पहले व्हाट्सएप पर कोई डिलीट कैसे करता है?

  • शब्द विलोपन को शामिल कोई अन्य चाल?

जवाबों:


163

सामान्य तौर पर, d <मोशन> वर्तमान स्थिति से हटाकर <मोशन> के बाद स्थिति को समाप्त कर देगा। इस का मतलब है कि:

  1. d <leftArrow> करंट और लेफ्ट कैरेक्टर को डिलीट कर देगा
  2. d $ वर्तमान स्थिति से पंक्ति के अंत तक हट जाएगा
  3. d ^ वर्तमान पिछड़े से पहले गैर-श्वेत-स्थान वर्ण तक हटा देगा
  4. d0 वर्तमान बैकवर्ड से लाइन की शुरुआत तक डिलीट हो जाएगा
  5. dw करंट शब्द के अंत में करंट हटाता है (ट्रेलिंग स्पेस सहित)
  6. db करंट शब्द की शुरुआत में करंट को हटाता है

पढ़ें यह सब बातें आप 'प' कमांड के साथ गठजोड़ कर सकते हैं जानने के लिए।


1
मामले में एक और आसान शॉर्टकट आपको dbयाद रखना मुश्किल है: 5. dw or d<ctrl+rightarrow>और 6. db or d<ctrl+leftarrow>
क्रिसबूट

6
इसके बजाय टाइप d<leftArrow>करने के dhबजाय, चूंकि hबाईं ओर ले जाने की कुंजी है
Dylanthepiguy

4
यह स्वीकृत उत्तर क्यों है? d <leftArrow> (और dw को छोड़कर नीचे के गैर) एक कर्सर के नीचे एक चरित्र को नहीं हटाएगा जैसा कि ओपी चाहता था।
लिस्टरग्राम

73

मैं कई बार इस परिदृश्य में रहा हूं। मैं लाइन 10 में सभी रिक्त स्थान से छुटकारा पाना चाहता हूं, इसलिए यह कॉमा के बाद लाइन 9 के साथ जुड़ जाएगा।

यहां छवि विवरण दर्ज करें

यह मूल रूप से VIM में शामिल होने वाली एक सरल रेखा है।

kJ चाल (नीचे देखें)

विम लाइन्स लाइन्स


9
मेरे द्वारा इसे हर जगह ढूंढा जा रहा था!
functionvoid

2
हाहा, मैं यह चाहता हूं और मुझे नहीं पता कि Google में इसका वर्णन कैसे किया जाए। इतना भाग्यशाली है कि मैं नीचे स्क्रॉल =))
थाई ट्रान

1
विश्वास नहीं कर सकता कि मैंने कितनी बार मैन्युअल रूप से ऐसा किया है। यह वही है जो मैं देख रहा था, धन्यवाद!
टोबियासंडर्सन

1
यही वह है जिसकी तलाश में मैं हूं। विम ने मेरे दिमाग को रोजाना उड़ा दिया
सिंगमोटर

4
इसके लिए स्पष्टीकरण यह है: k= ऊपर, J= वर्तमान रेखा के नीचे की रेखा को बीच में एक जगह के साथ मिलाएं। आप kgJएक स्थान के बिना शामिल होने के लिए भी कर सकते हैं । gJ= बीच में बिना स्पेस के नीचे की लाइन से जुड़ें। वाया धोखाशीट
खलीलरावण

31

बिंदु # 3 का उत्तर देने के लिए, diwऔर dawउत्कृष्ट हैं।


4
मुझे यह दुखद लगता है कि जब आप अंतिम पत्र पर होते हैं, तो किसी शब्द को पीछे की ओर हटाने के लिए कोई दो-वर्ण-आदेश नहीं होते हैं, क्योंकि नोटपैड ++, गेडिट आदि जैसे मानक संपादकों में आप आसानी से CTRL + Backspace ... का उपयोग कर सकते हैं ... सिवाय इसके vim उत्कृष्ट है।
itmuckel

3
@ roggan87 यदि आप किसी शब्द के अंतिम अक्षर पर हैं, तो अंतिम पत्र से dbपहले के अक्षरों को हटा देता है लेकिन फिर भी अंतिम पत्र छोड़ देता है।
प्रशान्त चन्द्र

2
क्या आप बता सकते हैं कि उन आज्ञाओं के बीच में क्या कर रहे हैं iऔर क्या aकर रहे हैं? मुझे पता है कि प्रमुख d"हटाना" है, और मुझे लगता है कि अनुगामी w"शब्द" है।
कार्ल जी

1
@CarlG सबसे अच्छी व्याख्या है :help text-objects। अग्रणी पैराग्राफ बहुत संक्षिप्त है और मुझे लगता है कि यह बहुत अच्छी तरह से वर्णन करता है।
रैंडी मॉरिस

5
<kbd> i </ kbd> "इनर" है और <kbd> ए </ kbd> "ए" है, जैसा कि "एक शब्द" है। पूर्व में व्हाट्सएप को शामिल करना शामिल नहीं होगा, जबकि उत्तरार्द्ध में अनुगामी व्हॉट्सएप शामिल होगा, यदि कोई हो, अन्यथा पूर्ववर्ती व्हाट्सएप शामिल होगा। बहुत मददगार, धन्यवाद।
कार्ल जी

25

सम्मिलित मोड में:

  • ^ w
  • ^ यू
  • मेरे सिर से बाहर जवाब नहीं कर सकता ;-)

अन्यथा:

  • DW
  • v0x
  • मेरे सिर से बाहर जवाब नहीं कर सकता ;-)

मुझे नहीं पता था कि मैं विम में इन्सर्ट मोड में वर्ड डिलीट कर सकता हूँ। इससे बहुत मदद मिलती है।
तिवन

18

कमांड मोड में:

  1. bdw, शब्द हटाएं।
  2. d^(पहले गैर-रिक्त), d0(पहले चरित्र के लिए)
  3. BdW (अगले व्हॉट्सएप पर पहले व्हाट्सएप डिलीट पर जाएं)

(सामुदायिक विकि, हैक करने के लिए स्वतंत्र महसूस करें।)


14
  1. db (यदि कर्सर शब्द के बाद है) या bdw
  2. d0(या d^यदि आप पहले गैर-रिक्त वर्ण को हटाना चाहते हैं)
  3. dEया dtSpaceपहले स्थान पर जाने के लिए या d/\sEnterअगले सफेद स्थान वर्ण को हटाने के लिए।

संपादित करें

चूँकि प्रश्न को ऐसे बदला गया है कि 3 पहले व्हाट्सएप पात्र से बाईं ओर हटा दिया गया है, मेरा उत्तर इस प्रकार बदलना चाहिए:

  1. dBया dShiftTSpaceपहले स्थान पर वापस जाने के लिए या d?\sEnterपिछले सफेद स्थान वर्ण को हटाने के लिए।

देख:

:help motion.txt
:help WORD

# 3 पर अच्छी कॉल। मुझे यकीन नहीं था कि किसी भी व्हाट्सएप को कैसे संभालना है। यह ध्यान देने योग्य है कि dF <SPACE> <SPACE> तक हटा और इसमें शामिल होगा जबकि dT <SPACE> वहां <SPACE> छोड़ देगा।
मार्क बेइक सिप

यहाँ आया कुछ इस तरह की तलाश में bdw। शेष चरित्र (मूल रूप से कर्सर के नीचे) dbमुझे परेशान करता रहा।
डेविन

8

मुझे लगता है कि कोई भी उत्तर पूर्ण नहीं है:

सामान्य तौर पर, आप आमतौर पर एक डिलीट ऑपरेशन का उपयोग शुरू करते हैं d<motion>, और शायद ही कभी उपयोग करते हैं x

नोट: जब Nनिर्दिष्ट नहीं किया जाता है, तो व्यवहार करता है जैसे N=1(एक चार को हटाता है)

असतत वर्ण:

<N>x - दाईं ओर N वर्ण हटाएं

d<N><left-arrow> - बाईं ओर N वर्ण हटाएं

d<N><right-arrow> - दाईं ओर N वर्ण हटाएं

शब्द सीमाएँ:

नोट: 1 पूर्ववर्ती / सफल शब्द कर्सर के नीचे एक है

d<N>b - पूर्ववर्ती एन-वें शब्द की शुरुआत से वर्तमान स्थिति तक हटाएं

d<N>e - वर्तमान स्थिति से सफल एन-वें शब्द के अंत तक हटाएं

d<N>w- के रूप में एक ही है, d<N>eलेकिन गोरों के पीछे शामिल है

diw - कर्सर के नीचे पूरे शब्द को हटा दें

daw- के रूप में एक ही है, diwलेकिन गोरों के पीछे शामिल है

लाइन की सीमाएं:

d0 - लाइन की शुरुआत से वर्तमान स्थिति तक हटाएं

d^ - पहले गैर-व्हाट्सएप चार्ट से वर्तमान स्थिति तक हटाएं

d$ - वर्तमान स्थिति से लाइन के अंत तक हटाएं


1

/ <CR>x

(एक स्थान के लिए आगे खोजें, वहां जाने के लिए एंटर दबाएं, डिलीट करने के लिए x)

इसे करने का एक और जादूई तरीका हो सकता है, लेकिन मुझे इसका कोई पता नहीं है।


यदि आप पहले व्हाट्सएप को बाईं ओर हटाना चाहते हैं, तो हिट करें? के बजाय / मेरे उदाहरण में।
brettkelly
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.