আমি একটি ম্যাক্রো সংজ্ঞায়নের চেষ্টা করছি যা দ্রুত এলোমেলো-ইশ শব্দের একটি তালিকা তৈরি করে।
আমি চাই ম্যাক্রো এটির মতো তালিকায় রূপান্তরিত করে
a
b
c
d
e
এই মধ্যে
arezzo
bywords
czars
détente
eyrie
আমার এখন পর্যন্ত যা আছে:
- চিঠিতে কার্সার লাগান
a
- ম্যাক্রো রেকর্ডিং শুরু করুন
qq
a
সন্নিবেশ মোড প্রবেশ করুন<C-x><C-k> - perform dictionary completion on the character before cursor - in this case the letter
A`<C-p>
সম্পূর্ণ হওয়া তালিকার শেষ আইটেমটি নির্বাচন করুন যা আমার সিস্টেমে এটি শব্দটিarezzo
। (এনবি আমিlongest
আমার'completeopt'
সেটিংটিতে অন্তর্ভুক্ত করেছি , যা<C-p>
সমাপ্তির সময় এইভাবে কাজ করা প্রয়োজন'set completeopt=longest,menuone,preview'
:)।<C-y>
সম্পূর্ণতা গ্রহণ করুন^[^[
সন্নিবেশ মোড থেকে প্রস্থান করুনj
পরবর্তী লাইনে নীচে সরান, পরের লাইনে একই ক্রিয়াটি করতে প্রস্তুত toq
রেকর্ডিং বন্ধ করুন
আমি যখন ম্যাক্রো তৈরি করি এবং ম্যানুয়ালি পদক্ষেপগুলি অতিক্রম করি তখন সবকিছু ঠিকঠাক হয়, তবে আমি যখন ম্যাক্রো সম্পাদন করি তখন আমি কমান্ড লাইনে একটি বার্তা ফ্ল্যাশ করে দেখি যেমন:
অভিধান ফাইল স্ক্যান
এবং কিছুই ঘটে না, কেবলমাত্র ম্যাক্রোর কমান্ডগুলিই j
চালিত হয়, অর্থাৎ কার্সারটি রেখাটি সরিয়ে নিয়ে যায়, তবে কোনও কমপ্লিট কমান্ড চালায় না।
ম্যাক্রোতে সন্নিবেশ মোডের পরিপূর্ণতা ব্যবহার করা কি সম্ভব এবং যদি তাই হয় তবে আমি কীভাবে এটি করতে পারি?
set completeopt=longest,menuone,preview
এটির longest
বিকল্পটি <C-p>
অবিলম্বে প্রবেশের কারণ হিসাবে ব্যবহার করছি । আমি যদি স্ট্রিং longest
থেকে অপসারণ করি তবে আমি completeopt
আপনার মতো আচরণ করব। এছাড়াও, হ্যাঁ তীর কীগুলি কাজ করেছিল! ধন্যবাদ (আমি ভুলে গেছি আপনি এগুলিকে সমাপ্তির তালিকায় নেভিগেট করতে ব্যবহার করতে পারেন)
:set completeopt=
এবং a<c-x><c-k><esc>j
আপনার ম্যাক্রো হিসাবে।
<C-p>
পদক্ষেপটি বুঝতে পারি না ... যখন আমি আমার ভিমে এটি করি তখন এটি কেবল বার্তা দেয়back at original
- শেষ আইটেমটি নির্বাচন করে না .. আমি শেষ শব্দটি (আমার ক্ষেত্রেazures
) নির্বাচন করতে দুবার তীরচিহ্নটি ব্যবহার করেছি , এন্টার টিপুন এবং তারপরেEsc+j+q
.. এটি ম্যাক্রো কার্যকর করার ক্ষেত্রে বেশ সূক্ষ্ম কাজ করে