Zsh কমান্ড লাইনে vi কমান্ড মোডে আরামে কীভাবে স্যুইচ করবেন?


22

Vi তে, আমি বিরক্তিকর এস্কেপ কীটি ব্যবহার না করে কমান্ড মোডে স্যুইচ করতে সক্ষম হতে পালাতে 'jj' ম্যাপ করেছি। এখন আমি কমান্ড লাইন সম্পাদনা করতে চাই যার জন্য আমি ভিআই-মোড ব্যবহার করি। আমি ইতিমধ্যে নিম্নলিখিত সমাধানটি খুঁজে পেয়েছি:

bindkey '^j' vi-cmd-mode

আপনাকে কন্ট্রোল-জে কমান্ড মোডে পরিবর্তন করতে দেয়। এখনও 'জেজে' বা এর অনুরূপ কিছু হিসাবে মডিফায়ার-কীগুলি ছাড়াই সমাধান অনুসন্ধান করা হচ্ছে।


4
কেন কেবল পালানোর জন্য ক্যাপস লককে রিম্যাপিং করা হচ্ছে না?
কেরিয়াস

উত্তর:


30

দ্রষ্টব্য: man zshzleকাস্টমাইজ bindkeyএবং অনুকরণ সম্পর্কে আপনার প্রচুর গুডিজ সন্ধান করা উচিত GNU readline

এই আমি ম্যাপ jjথেকে Esc:

bindkey -M viins 'jj' vi-cmd-mode

আপনি যদি সন্নিবেশ-মোড এবং নরমাল-মোডের মধ্যে পার্থক্য করতে আগ্রহী হন তবে আপনি এখানে আকিরা উল্লেখ করার পরামর্শটি চেষ্টা করে দেখতে পারেন


হ্যাঁ! পুরোপুরি কাজ করে। অনেক ধন্যবাদ!
ইমান রেসু

Zsh এ কাজ করার পূর্বে কোনও পূর্বশর্তগুলি পূরণ করার প্রয়োজন আছে কি? বা কী কী বাইন্ডিংগুলি ডিবাগ করার উপায়? এই আদেশটি সন্নিবেশ করার পরে, কিছুই ঘটে না। jj এখনও কাজ করে না।
আল্ট্রামাস্টার

5
আমি KEYTIMEOUT খুব কম সেট করেছিলাম, এটাই কারণ ছিল।
আল্ট্রামাস্টার

@ আলট্রামাস্টার একটি দুর্দান্ত পয়েন্ট করেছেন। আপনি যদি ইতিমধ্যে গতির জন্য KYYTIMEOUT সেট করে থাকেন তবে আমি> = 20 মিলিসেকেন্ড সুপারিশ করব। যেমনexport KEYTIMEOUT=20
নৈপুণ্য
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.