কীভাবে কোনও শব্দ মুছবেন এবং ভিমে সন্নিবেশ মোডে যাবেন?


98

সাধারণ মোডে আমি Ctrl+ Eটিপতে পারি যা বর্তমান শব্দটির বাকী অংশ মুছে ফেলে এবং সন্নিবেশ মোডে যায়।

আমি সম্পূর্ণ শব্দটি মুছে ফেলতে চাই, কার্সারের অবস্থান নির্বিশেষে (অবশ্যই শব্দটির মধ্যে)।

উত্তর:


166

আপনার কার্সার চালু আছে এমন একটি শব্দ মুছতে "ciw" টাইপ করে আপনি "অভ্যন্তরীণ শব্দটি পরিবর্তন করুন" ব্যবহার করতে পারেন can

"অভ্যন্তরীণ" এবং "ক" কমান্ডগুলি ভিমে দুর্দান্ত, একটি}} ব্লকের ভিতরে "সিআই {" ব্যবহার করে দেখুন, বা আপনি যদি {} অক্ষরও মুছে ফেলতে চান তবে "সিএ {" চেষ্টা করুন। এই কমান্ডগুলিকে আরও ভাল মনে রাখতে ইংরেজিতে অনুবাদ করতে, চেষ্টা করুন: "অভ্যন্তরীণ change ব্লক পরিবর্তন করুন" এবং "একটি {ব্লক পরিবর্তন করুন"।

Http://vimdoc.sourceforge.net/htmldoc/motion.html#text-objects এ ডকুমেন্টেশন


"cw" একই কার্যকারিতাটির জায়গায় ব্যবহার করা যেতে পারে।
আমজিথ

যেখানে 'কা' এবং 'সিআইউ' পুরো শব্দটি প্রতিস্থাপন করবে, কেবলমাত্র 'সিডব্লিউ' বর্তমান কার্সারের অবস্থান থেকে বর্তমান শব্দের শেষে পরিবর্তিত হবে।
ড্র স্টিফেনস

Jinxed_coders মন্তব্য দ্বারা মনে করিয়ে দেওয়া হিসাবে আমি "co {" "ca {" থেকে উত্তরটি সম্পাদনা করেছি। আমার পুরানো কাস্টমাইজেশন "(ক) <>" "(ও) জরায়ু <>" কমান্ড হিসাবে আদেশগুলি প্রয়োগ করে।
কালী

19
ciwএবং cawহুবহু এক নয়: ciwকেবল শব্দটি cawমুছে দেয় , পাশাপাশি চলমান স্থানও মুছে দেয়।
রবার্তো বনভোলেট

5
: এই ধরণের নির্বাচনগুলি সম্পর্কে আরও পড়তে ভিমে অবজেক্টগুলিকে সহায়তা করুন
হারুন

19

আপনার ফলোআপ প্রশ্নের উত্তর: viwp

v    -> start visual mode
iw   -> select the 'inner word'
p    -> paste - in visual mode it replaces the visually selected text.

4
কীভাবে একজন একের পর এক এটি করতে পারেন? প্রতিবার আপনি পেস্ট করুন, বাফারটি আমি আটকানো শব্দটি পূরণ করে।
বেন গার্টনার

4
@ বেনগার্টনার এটি উইম টিপস উইকিতে পেয়েছেন : yiwবর্তমান শব্দটি অনুলিপি করতে, ব্যবহারের পরিবর্তে শব্দটিতে কার্সারটি রাখুন ciw<C-r>0। এর পরে আপনি পরবর্তী শব্দটিতে কার্সারটি রাখতে পারেন .এবং প্রতিস্থাপনটি পুনরায় করতে ব্যবহার করতে পারেন ।
siegi

@ বেনগার্টনার যদি আপনি যা করতে চেষ্টা করছেন সমস্তই যদি WORD_A এর সমস্ত দৃষ্টান্ত WORD_B এর সাথে প্রতিস্থাপন করা হয়, তবে আপনি কেবল ভিমের প্রাক্তন মোড :%s/a/b/g,। aসঠিক পাঠ্য বা একটি নিয়মিত প্রকাশ হতে পারে এবং bযা আপনি এর aসাথে সমস্ত ম্যাচ প্রতিস্থাপন করবেন । আপনি ভিএম এর /মোডের সাথে রেজিক্সগুলি পরীক্ষা করতে পারেন । প্রতিস্থাপন %একটি লাইন সংখ্যা বা ব্যাপ্তি সঙ্গে যদি আপনি সেই সমস্ত লাইন প্রতিস্থাপন করতে চাই না।
ব্র্যাডেন সেরা

8

দ্বিতীয় প্রশ্নের জন্য: bPldw

এটি, ক্রমানুসারে, আপনাকে বর্তমান শব্দের শুরুতে নিয়ে যাবে, কার্সারের সামনে ডিফল্ট রেজিস্টার সন্নিবেশ করবে, পরবর্তী অক্ষরটিতে যাবে (আপনি যে পাঠ্যটি সন্নিবেশ করানো হয়েছে তার শেষের দিকে নিয়ে যাবেন) এবং বাকী অংশ মুছবেন শব্দ।


5
এটি শব্দের পরে স্থান মুছে দেয়। হওয়া উচিত bPlde
0x89

10
না, হওয়া উচিতviwp
aehlke

3

প্রথম প্রশ্নের জন্য, bcwএছাড়াও কাজ। এর অর্থ " bশব্দের cসূচনা , হ্যাঙ্গ wঅর্ডার" এর অর্থ। কিন্তু আমি মনে করি ciwআরো স্মরণীয়, যার মানে "হয় change inner wOrd", শুধু মাত্র একটা ধাপ।

"পেস্ট ব্যবহার করে প্রতিস্থাপন করুন" সম্পর্কে দ্বিতীয় প্রশ্নের জন্য, আমার সমাধানটি "_diwP। এটা তোলে delete inner wOrd করার জন্য একটি নিবন্ধন করেন তাহলে যত্ন এবং না pডিফল্ট রেজিস্টার বিষয়বস্তু Aste। একটি সুবিধা হ'ল আপনি ডিফল্ট রেজিস্টারটি অনেকবার পেস্ট করতে পারেন, কারণ এটি দূষিত হবে না। এটি একটি লিট কমপ্লেক্স তাই আমি এটিকে মানচিত্র করি nnoremap ,r "_diwP


2

অথবা, আপনি সম্ভবত bdwiবর্তমান শব্দটি মুছতে এবং INSERT মোডে যেতে মূল সিকোয়েন্সটি ব্যবহার করতে পারেন ।


4
আপনি bcwবর্তমান শব্দের শুরুতে গিয়ে শব্দটি পরিবর্তন করতে ব্যবহার করতে পারেন, যা আপনাকে মোড সন্নিবেশ করিয়ে দেয় leaves
হ্যাঙ্ক গে

যদি আপনার কার্সারটি ইতিমধ্যে শব্দের প্রথম অক্ষরে থাকে তবে এটি পূর্ববর্তী শব্দটি মুছতে পারে।
ওয়ারেন পেনা

4
@ ওয়ারেনপেনা সেক্ষেত্রে কেবল ব্যবহার করুন dwi। ডিপডব্লিউআই বেশিরভাগ রাজ্যে অবৈধ বিধায় পুলিশরা যাতে খেয়াল না করে কেবল সাবধান হন।
ব্র্যাডেন সেরা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.