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


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.