জেডএসএইচে পূর্ণ স্ক্রিন সম্পাদকে কমান্ড লাইনটি কীভাবে সম্পাদনা করবেন?


52

ব্যাশ সালে ষষ্ঠ মোড ব্যবহারের, আমি যদি আঘাত Esc, vআমার বর্তমান কমান্ড লাইন সম্পাদক দ্বারা নির্দিষ্ট খোলা $EDITORএবং আমি আগে কমান্ড 'বাঁচার' শেল ফিরে আসেন এবং নিষ্পন্ন করা হবে পূর্ণ পর্দায় এটি সম্পাদনা করতে পারবেন না।

আমি কীভাবে zsh এ অনুরূপ আচরণ অর্জন করতে পারি? পরিবেশের পরিবর্তনশীল সেট হওয়া vসত্ত্বেও কমান্ড মোডে ঘণ্টা মারার ফলে কোনও বেল অ্যানের কোনও আপত্তি নেই EDITOR

উত্তর:


36

দেখুন edit-command-lineমধ্যে zshcontrib

bindkey -M vicmd v edit-command-line

13
(জাস্ট নির্মল): সক্রিয় edit-command-lineভালো কিছু "উইজেট" আপনার প্রয়োজন হবে autoload edit-command-line; zle -N edit-command-lineআপনার এক zsh init ফাইলগুলি (দেখুন ZLE কার্যাবলী অধ্যায় এর zshcontribডকুমেন্টেশন )।
ক্রিস জনসেন

এটি একবার হয়ে গেলে আপনি কীভাবে এটি সক্রিয় করবেন? ইমাসিক-স্টাইল উত্তরের বাইন্ডকিটি আমার কাছে বোধগম্য। তবে আমি কী bindkey -M vicmd vসেট আপ করছি তার রেফারেন্স খুঁজে পাচ্ছি না ।
মাদুর শ্যাফার 25'12

@ ম্যাটশ্যাফার বাশের মতো একই: আপনি যদি ভিআই মোডে থাকেন তবে <ESC>সন্নিবেশ মোড থেকে কমান্ড মোডে প্রবেশ করুন এবং তারপরে vভিজ্যুয়াল মোডে ( Meta-vএকই) বা vআপনি যদি ইতিমধ্যে কমান্ড মোডে থাকেন তবে ঠিক তেমন হিট । আপনি যদি ইমাস মোড ব্যবহার করছেন তবে সাধারণ বাঁধাই হ'ল C-x C-e
মুহূর্ত

1
ভি কীটি রিম্যাপিংয়ের অর্থ আপনি আর ভিজ্যুয়াল মোড ব্যবহার করতে পারবেন না, তাই আমি স্পেসবারে রিম্যাপিং পছন্দ করি (যা সাধারণ মোডে কার্যকর কিছু করে না)bindkey -M vicmd ' ' edit-command-line
gib

37

আপনি যদি ইমাস কি-বাইন্ডিংগুলি পছন্দ করেন তবে:

autoload -z edit-command-line
zle -N edit-command-line
bindkey "^X^E" edit-command-line

9
^x^eবাঁধাই সঙ্গে একটি ডিফল্ট হবে বলে মনে হয় বর্তমান .oh-মাই-zsh , যা অত্যন্ত চমৎকার।
কোডলিবিটার

^ x ^ e হ'ল আমি যা খুঁজছিলাম।
jmreicha

1
editorমডিউলটি লোড হওয়া অবধি প্রেজোর জন্য অনুরূপ সেটআপ ।
AL X X

23

আপনি fcইতিহাসের শেষ কমান্ডটি সম্পাদনা করতে ব্যবহার করতে পারেন । এটি একই কমান্ড সম্পাদনা করার মতো নয়, তবে এন্টার কী-তে একটি দ্রুত হিট আপনার বর্তমান কমান্ডটিকে ইতিহাসের শেষ কমান্ডকে পরিণত করে।


14

~/.zshrcবাশ থেকে একই আচরণ পেতে আমি এটি সম্পূর্ণরূপে কনফিগারেশন যুক্ত করেছি :

export VISUAL=vim
autoload edit-command-line; zle -N edit-command-line
bindkey -M vicmd v edit-command-line

পূর্ববর্তী মন্তব্যগুলি অনুসারে, আপনি ওহ আমার জেডএসএইচ বা প্রেজ্টো ব্যবহার করলে এটি ডিফল্টরূপে কনফিগার করা হয় । পরেরটির প্রয়োজন editorমডিউল লোড এবং করা viবা vimকমান্ড মোডের জন্য নির্বাচন করেছেন।
সমস্ত এক্স

আমি এটি গ্রহণযোগ্য উত্তর দিতে ভোট দেব, এটি বর্ণিত সমস্ত কনফিগারেশন দিয়ে আমার প্রশ্নের সমাধান করেছে। ধন্যবাদ।
লরেন্ট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.