ভিমে চলন সহ সর্বশেষ স্বাভাবিক মোড কমান্ডটি পুনরাবৃত্তি করুন


25

ভিমে, এর সাথে ., আমি সর্বশেষ স্বাভাবিক মোড কমান্ডটি পুনরাবৃত্তি করতে পারি; উদাহরণ স্বরূপ:

dd.

দু'বার লাইন মুছে ফেলে।
তবে আমি যদি টাইপ করি

5j.

কার্সারটি 10 ​​লাইন নীচে সরবে না। আমি কীভাবে সর্বশেষ স্বাভাবিক মোড কমান্ডটি পুনরায় করব, বিশেষত একটি পদক্ষেপ?

উত্তর:


14

vimদুর্ভাগ্যক্রমে এটি করবেন না আপনি সবচেয়ে ভাল যা করতে পারেন তা হল repmo.vim প্লাগইন ইনস্টল করা , যা একটি গণনা রয়েছে এমন আন্দোলনের আদেশগুলি পুনরাবৃত্তি করে।


11

এটি ভ্যানিলা ভিমেও কার্যকর, তবে প্রয়োগযোগ্যতা আপনার ব্যবহারের ক্ষেত্রে, যেমন। আপনার কতবার এটির পুনরাবৃত্তি করতে হবে, যেহেতু এটির পুনরাবৃত্তিযোগ্য করতে আরও কয়েকটি কীস্ট্রোক প্রয়োজন।


বিকল্প 1: এটিকে একটি কমান্ড মোড অপারেশনে রূপান্তর করুন

উদাহরণস্বরূপ 5 টি লাইন সরানো ব্যবহার করে আপনি এটি করতে পারেন:

  1. প্রবেশ করান :norm 5j, এটি কার্সারটি 5 টি লাইনে নামিয়ে দেবে
  2. @:আন্দোলন পুনরাবৃত্তি করতে ব্যবহার করুন

:norm সাধারণ হিসাবে দাঁড়ায়, নিম্নলিখিত যে কোনও স্ট্রিংকে আপনার মোডের নীচে আপনার কীস্ট্রোক হিসাবে বিবেচনা করা হয়


বিকল্প 2: ম্যাক্রো ব্যবহার করুন

  1. qa(নিবন্ধে ম্যাক্রো সংরক্ষণ করুন a, আপনি নিজের রেজিস্টারটি পছন্দ করতে পারেন qb, qc)
  2. 5j
  3. q (ম্যাক্রো রেকর্ডিং শেষ করুন)
  4. @aআপনার রেকর্ড করা ক্রিয়াকলাপ পুনরাবৃত্তি করতে ( aআপনি যে নিবন্ধকের নামটি বেছে নিয়েছেন তার প্রতিস্থাপন করুন , যেমন @b, @c)

ম্যাক্রো সেট আপ করতে আরও আধ্যাত্মিক শক্তি প্রয়োজন তবে এটি আরও বেশি পুনরাবৃত্তিযোগ্য এই অর্থে যে আপনি সর্বশেষ ক্রিয়াকলাপগুলিকে ওভাররাইড না করে বিভিন্ন রেজিস্টারে একাধিক ক্রিয়াকলাপ সংরক্ষণ করতে পারেন।


7

প্রকৃতপক্ষে .সর্বশেষ পরিবর্তনটি পুনরাবৃত্তি করে , সর্বশেষ সাধারণ মোড কমান্ডটি নয়। পল যেমন বলেছিল, আপনার গতি পুনরাবৃত্তি করার জন্য আপনাকে একটি প্লাগইন লাগবে।

" :help ." দেখুন ।


4

আপনি এর সাথে পরিবর্তনগুলি পুনরাবৃত্তি করতে পারেন .;কমান্ড দিয়ে মুভমেন্টগুলি পুনরাবৃত্তি করা যেতে পারে । এই আদেশটি নতুন বলে মনে হচ্ছে এবং অন্যান্য উত্তরে উল্লিখিত repmo.vim স্ক্রিপ্টের সাথে একই রকম কাজ করে।

উদাহরণস্বরূপ, পরের দ্বিতীয়টিতে যেতে c, টিপুন 2fc। তারপরে এটি করতে আবার টাইপ করুন ;


11
;নতুন নয় এটি একটি স্ট্যান্ডার্ড vi কমান্ড। ভী সর্বশেষ f/ F/ t/ Tগতির প্রকার এবং লক্ষ্য অক্ষর (তবে সংখ্যাগত তর্ক নয়) মনে রাখে এবং ;পুনরাবৃত্তি করে। এটি অন্য গতিগুলির পুনরাবৃত্তি করে না।
পাইরিলি

এটি আমি যা করতে চেয়েছিলাম তা সম্পাদন করেছে! ধন্যবাদ. এবং স্পষ্টির জন্য আপনাকে @ পিটারলিকে ধন্যবাদ জানাই!
পল

0

আপনি সর্বশেষ স্বাভাবিক ডট কমান্ডটি পরিবর্তন করতে এবং চালিত করতে চান এমন লাইনগুলি নির্বাচন করতে পারেন

v5j .............. visual select next 5 lines
:'<,'>norm! .      normal mode execute over selection last command '.'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.