.Vimrc এ নীচের লাইনটি যুক্ত করার জন্য আমি মানচিত্রের চেষ্টা করেছি, তবে এটি কার্যকর হয় না। আমি .vimrc টি ভিম দ্বারা লোড করা আছে তা পরীক্ষা করে দেখলাম।
map <Alt-D> <C-D>
এই মানচিত্রটিতে কোনও ত্রুটি আছে?
.Vimrc এ নীচের লাইনটি যুক্ত করার জন্য আমি মানচিত্রের চেষ্টা করেছি, তবে এটি কার্যকর হয় না। আমি .vimrc টি ভিম দ্বারা লোড করা আছে তা পরীক্ষা করে দেখলাম।
map <Alt-D> <C-D>
এই মানচিত্রটিতে কোনও ত্রুটি আছে?
encoding
ম্যাপিংয়ের পরে যদি আপনার পরিবর্তনগুলি চলে তবে আপনি আপনার আল্ট কীগুলি থেকে কী বেরোন তা আপনি প্রথমে যা সেট করেছেন তার সাথে মেলে না।
উত্তর:
ম্যাক ব্যবহারকারীদের কাছে: ALT + hjkl ম্যাপিংয়ের জন্য, পরিবর্তিত প্রকৃত চরিত্রটি ব্যবহার করুন (INSERT মোডে থাকা অবস্থায় কোন অক্ষরটি সংযুক্তি ব্যবহার করে তা সন্ধান করুন), উদাহরণস্বরূপ আমার কীবোর্ডের সাথে আমি পেয়েছি:
<ALT+j> ==> ª
<ALT+k> ==> º
ইত্যাদি। সমাধান এখানে স্ট্যাক ওভারফ্লোতে পাওয়া গেছে ।
আমি এটি আমার .vimrc এ ব্যবহার করে ALT + k \ j এর সাথে লাইনগুলি উপরে এবং নীচে সরানোর জন্য ব্যবহার করেছি:
nnoremap ª :m .+1<CR>==
nnoremap º :m .-2<CR>==
inoremap ª <Esc>:m .+1<CR>==gi
inoremap º <Esc>:m .-2<CR>==gi
vnoremap ª :m '>+1<CR>gv=gv
vnoremap º :m '<-2<CR>gv=gv
এখানে ব্যাখ্যা হিসাবে ।
আশা করি এটি কার্যকর, ভিম উপভোগ করুন :)
সংযোজন বাই Dylan_Larkin (2019): একটি ম্যাক, "এটির জন্য কাজ করতে মেটা কী হিসেবে ব্যবহার করবেন অপশন " চালু করা আবশ্যক অফ মধ্যে Terminal-> Preferences-> কীবোর্ড
cat
। cat
আপনার পছন্দসই কী সংমিশ্রণটি কেবল বিড়াল উইন্ডোটিতে টাইপ করুন এবং এর ভিতরে লিখুন । খুঁজে পেয়েছি যে Alt + বন্ধনীগুলি 'এবং' আমার ম্যাকের উপর রয়েছে।
nmap ˙ <C-w><Left> nmap ¬ <C-w><Right> nmap ˚ <C-w><Up> nmap ∆ <C-w><Down>
sed -n l
আপনি ম্যাপিংটি কনফিগার করার আগে <আক> এবং <আ> এর আউটপুট দেখতে ব্যবহার করুন । আমার ক্ষেত্রে <আজ> হ'ল ∆
এবং <আক> হ'ল˚
Use Option as Meta Key
আইটার্ম প্রোফাইল সেট করা বা চালু করা হয় তখন traditionতিহ্যগতভাবে ⌥ key to Esc+
(লিনাক্স / ইউনিক্সের মতো) আচরণ করবে। সুতরাং আপনাকে মানচিত্রটি ভিমে সেট করতে হবে না <^[j>
, কেবল এটিতে ম্যাপ করুন <A+j>
বা <M+j>
এটি কাজ করে।
:help key-notation
বিভিন্ন কী কী মানচিত্র করতে কোন ফর্ম্যাটটি ব্যবহার করা দরকার তা বর্ণনা করে। Alt এর ক্ষেত্রে, আপনি হয় <A-
বা ব্যবহার করতে পারেন <M-
। সুতরাং আপনার ম্যাপিং হবে
map <M-d> <C-d>
আমি (যেমন, ) এর nore
বৈকল্পিকটি ব্যবহার করার প্রস্তাব দিই যদি না আপনি স্পষ্টভাবে ডান হাতের ম্যাপিংয়ের জন্য পুনরায় মূল্যায়ন করার অনুমতি না চান।:map
noremap
<A-d>
। আপনাকে সম্ভবত আপনার টার্মিনালের সেটিংস পরিবর্তন করতে হবে যাতে এটি প্রেরণ <A-d>
করে <Esc>d
।
আমি নিশ্চিত "আর" সম্ভব "। নীচের আপডেটটি পড়ুন দয়া করে।
হ্যাঁ, আপনি এমনকি টার্মিনাল তেজ করতে পারি, কিন্তু কোনো সত্যিকারের আছে ধরা সব উত্তর। আপনাকে মূলত দুটি পদক্ষেপ অনুসরণ করতে হবে:
<M-d>
স্বরলিপিটি বিদ্যমান রয়েছে তা নিশ্চিত করুন এবং আপনার টার্মিনাল ইনপুটগুলি ঠিক কী ম্যাপ করুন ( ^[
এটি পালানোর অক্ষর):
$ cat
^[d
$
" in your .vimrc
execute "set <M-d>=\ed"
" you have to use double quotes!
আপনার সদ্য "নির্মিত" সংমিশ্রণে কিছু মানচিত্র করুন:
noremap <M-d> :echo "m-d works!"<cr>
এটি কীভাবে কাজ করে তা বুঝতে পেরে আপনি এই "কৌশল "টিকে অন্য" অদ্ভুত "সংমিশ্রণে প্রসারিত করতে পারেন, উদাহরণস্বরূপ, আমি টার্মিট ব্যবহার করছি, এবং ভিম চিনতে পারে না <S-F1>
, আমি যে বিড়ালটি পেয়েছি তা ব্যবহার করে ^[[1;2P
। তারপরে, আমার ভিমার্কে আমি এটি করি: execute "set <S-F1>=\e[1;2P"
এবং তারপরে আমি এটিকে যেকোন কিছুতে ম্যাপ করতে পারি।
দ্রষ্টব্য: আমি জানি না কেন, তবে কিছু লোকের \<Esc>
পরিবর্তে কাজ করে \e
।
আপডেট (ফেব্রুয়ারী 2016)
আপনার টার্মিনালটি সঞ্চালিত টার্মিনোটির উপর নির্ভর করে আপনি সম্ভবত ... বেশিরভাগ টার্মিনালগুলিতে "Alt + h" উদাহরণস্বরূপ ম্যাপযুক্ত ^[h
, যা হ'ল: "એસ્કેপ + এইচ"। সুতরাং এটি কী ওভাররাইট করতে পারে। আমি কেবল চেষ্টা করেছি (আবার) এবং এটি কাজ করে বলে মনে হচ্ছে, তবে আমি বিশ্বাস করি এটি খুব কৃপণ এবং ত্রুটিযুক্ত প্রবণতার বাস্তবায়ন।
তবুও, যথেষ্ট সাহসের জন্য, এখানে একটি পরীক্ষামূলক প্লাগইন রয়েছে:
execute "set...
, আপনি সরাসরি ব্যবহার করতে পারেন set <M-d>=^[d
। ^[
আসলে একটি এস্কেপ অক্ষর সঙ্গে প্রবেশ C-v-Esc
। এটি rxvt / urxvt এ প্রয়োজনীয় ছিল, তবে এক্সটার্মের বিশেষ চিকিত্সার প্রয়োজন হবে না। উইম উইকিতে এই বিষয়ে আরও তথ্য ।
ম্যাক ওএসএক্স-এ ভিমের মানচিত্র আল্ট কী:
আপনার টার্মিনালটি ভিমে পাঠাচ্ছে কী কোডটি দেখে শুরু করুন:
$ sed -n l
^[[1;9D
উপরের উদাহরণে, আমি কমান্ডটি চালিয়ে টিপছি Alt + Left।
এটি ^[[1;9D
হ'ল পালানো ক্রমটি ভিমে প্রেরণ করা হচ্ছে, তাই আমরা আমাদের ম্যাপিংয়ের জন্য এটি ব্যবহার করতে পারি।
map <Esc>[1;9D
Option
কী ( ⌥
) Esc+
alt+q
nnoremap <silent> <Esc>q :qa!<cr>
আপনার টার্মিনালটি আল্ট-ডি "সঠিকভাবে" সংক্রমণ করতে পারে না। আপনি ভিভিতে প্রকৃত পালানোর অনুক্রমটি পেতে সিভি ব্যবহার করতে পারেন এবং এটি আপনার ম্যাপিং তৈরি করতে ব্যবহার করতে পারেন। উদাহরণস্বরূপ, আপনার .vimrc সম্পাদনা করুন এবং নিম্নলিখিত ক্রমিক "সিভি অল্ট-ডি" টাইপ করে প্রকৃতটি প্রতিস্থাপন করুন যাতে আপনার ভিএমআরসি-তে সঠিক পালানোর অনুক্রম থাকবে। আপনার টার্মিনালটি ভিমে কিছু না পাঠালে এটি কাজ করবে না।
আমার টার্মিনাল ^[x
কমান্ড তৈরি করবে (উদাহরণস্বরূপ Alt-x)। ভিমের ভিতরে এটি কী কাজ করতে পেরেছিল তা ছিল vim.wikia.com এর এই ছোট স্ক্রিপ্ট :
for i in range(97,122)
let c = nr2char(i)
exec "map \e".c." <M-".c.">"
exec "map! \e".c." <M-".c.">"
endfor
সমস্ত Alt কী ম্যাপিং স্থির করতে .vimrc এ যুক্ত করুন।
হ্যালো ম্যাক উপরের সমস্ত পরীক্ষা করার বছর পরে ভাল সমাধানের পরে, আমি অনুসন্ধান চালিয়েছি।
এখানে আমার সমাধান:
আল্ট সহ একটি সংমিশ্রণ কীস্ট্রোক তৈরি করতে আপনাকে পছন্দ> কীবোর্ডে সংমিশ্রণটি ঘোষণা করতে হবে এবং ভিএম সেটআপ ফাইলে এই সংমিশ্রণটি ব্যবহার করতে হবে (মেটা কী হিসাবে ব্যবহার বিকল্পটি চেক করুন)।
আউটপুট অবশ্যই একটি অস্বাভাবিক চরিত্র হতে হবে ( a
উদাহরণস্বরূপ নয়) যাতে আপনি একটি নিয়মিত চরিত্রকে ওভাররাইড করছেন না।
নীচের উদাহরণে আপনার ALT-up এর সাথে যথেষ্ট ভিম করতে সক্ষম হওয়া উচিত।
ভিম সেটিং:
ম্যাক সেটিং: