প্রথমত, map
এবং noremap
যে অনুরূপ প্রতিটি জন্য ম্যাপিং তৈরি হয়, স্বাভাবিক চাক্ষুষ, নির্বাচন করে অপারেটর মুলতুবী মোড একযোগে । ভিম এতে বিশদ বিবরণ :help map-overview
:
Overview of which map command works in which mode. More details below.
COMMANDS MODES ~
:map :noremap :unmap Normal, Visual, Select, Operator-pending
:nmap :nnoremap :nunmap Normal
:vmap :vnoremap :vunmap Visual and Select
:smap :snoremap :sunmap Select
:xmap :xnoremap :xunmap Visual
:omap :onoremap :ounmap Operator-pending
:map! :noremap! :unmap! Insert and Command-line
:imap :inoremap :iunmap Insert
:lmap :lnoremap :lunmap Insert, Command-line, Lang-Arg
:cmap :cnoremap :cunmap Command-line
উপরোক্ত সহায়তা অনুসারে, আপনি যদি কোনও নির্দিষ্ট মোডে ম্যাপিংকে সীমাবদ্ধ রাখতে চান তবে আপনাকে আগে থেকেই চাপ দিতে হবে:
'এন' (সাধারণের জন্য), 'ভি' (ভিজ্যুয়াল এবং সিলেক্টের জন্য), 'সি' (কমান্ডের জন্য), 'এক্স' (ভিজ্যুয়াল মোডের জন্য), 'এস' (সিলেক্টের জন্য), 'ও' (অপারেটর মুলতুবি হিসাবে )।
এই ক্ষেত্রে,
nmap n nzz
একটি সাধারণ মোড তৈরি করবে, এর পুনরাবৃত্ত ম্যাপিং n
।
এখন, noremap
এটি কেবল একটি পুনরাবৃত্ত সংস্করণ map
।
তাহলে নন-रिकर्सিভ ম্যাপিং কী? এর সাথে ভিমেরও উত্তর রয়েছে :help map-recursive
:
If you include the {lhs} in the {rhs} you have a recursive mapping. When
{lhs} is typed, it will be replaced with {rhs}. When the {lhs} which is
included in {rhs} is encountered it will be replaced with {rhs}, and so on.
This makes it possible to repeat a command an infinite number of times. The
only problem is that the only way to stop this is by causing an error. The
macros to solve a maze uses this, look there for an example. There is one
exception: If the {rhs} starts with {lhs}, the first character is not mapped
again (this is Vi compatible).
For example: >
:map ab abcd
will execute the "a" command and insert "bcd" in the text. The "ab" in the
{rhs} will not be mapped again.
এর একটি উদাহরণ নিম্নলিখিত ম্যাপিং হয়:
:imap j k
:imap k j
এখন, ভিম কে এবং কে দিয়ে জে প্রতিস্থাপন করবে অসীম সংখ্যক বার, এবং এর ফলে আপনাকে এমন একটি ত্রুটি দেখাবে যা আপনি একটি পুনরাবৃত্ত ম্যাপিং তৈরি করেছেন।
এ কারণেই সাধারণত প্রস্তাব দেওয়া হয় যে আপনি প্রায় সর্বদা (আপনার যখন <Plug>
ম্যাপিং বা অনুরূপ থাকে তখন বাদে ) অ-পুনরাবৃত্ত ম্যাপিং ব্যবহার করুন। আপনি যখন অসাবধানতার সাথে পুনরাবৃত্ত ম্যাপিংগুলি তৈরি করেন এটি এটি ভিমের ঝুলন্ত প্রতিরোধ করে। নন-রিকার্সিভ ম্যাপিং তাই ভিমে কমান্ড ম্যাপ করার আরও নিরাপদ উপায়।
উপরের তথ্যটি হাতে পেয়ে আমরা দেখতে পাচ্ছি এটি :noreabbrev
হ'ল :abbrev
কমান্ডের কেবল একটি পুনরাবৃত্ত সংস্করণ ।
আপনি :abbrev
কেবল সন্নিবেশ, প্রতিস্থাপন এবং মোড কমান্ড ব্যবহার করতে পারেন । :abbrev
সংক্ষিপ্ত বিবরণ তৈরি করার জন্য ব্যবহৃত হয় (ওরম শর্টকাট যা ভিম প্রসারিত করতে পারে)। সংক্ষিপ্ত expanation ব্যবহার করা :map
/ :noremap
ম্যাপিং তৈরি করতে :abbrev
/ :noreabbrev
বর্ণমালা তৈরি করার জন্য বা যখনই আপনি চান আপনার টাইপিং আউট প্রসারিত করতে তেজ।