ALT + তীরটি zsh এবং iTerm2- এর শব্দের মাঝে চলাচল করছে


19

আমি হোস্টিং সরবরাহকারী সার্ভারগুলির মধ্যে একটিতে লগ ইন করে লক্ষ্য করেছি যে জিএনইউ স্ক্রিনে শেল প্রম্পটে শব্দের মধ্যে ALT + বাম এবং ALT + ডান সরানো হয়েছে।

আমার কী ধরণের কী বাইন্ডিংগুলি কনফিগার করতে হবে এবং আমার স্থানীয় ওএস এক্স জেডএস আইটিআরএম 2 এ চলছে তা এই আচরণটি কোথায় পাবেন?


এই প্রশ্নে আগ্রহী লোকেরাও জানতে আগ্রহী হতে পারে যে zsh শব্দগুলি বাশ শব্দ নয়। FOO=BARzsh এর একটি শব্দ এবং বশ করার জন্য 2 শব্দ। একইভাবে, আপনি যদি আপনার কার্সারটি শেষের দিকে সেট করে থাকেন foo --barএবং Alt + ব্যাকস্পেস করেন তবে আপনার কাছে foo --ব্যাশে এবং zsh এ আপনার থাকবে foo । জ্যাশ ব্যাশে প্রচুর বৈশিষ্ট্য যুক্ত করে, তবে এতে ওভাররাইডে প্রচুর উন্মাদ ডিফল্ট রয়েছে।
weberc2

উত্তর:


28

আমি সমাধানটি এখানে পেয়েছি: https://coderwall.com/p/h6yfda । লিঙ্কটি নিচে নামার ক্ষেত্রে এর সবচেয়ে গুরুত্বপূর্ণ অংশগুলি অনুলিপি করবে।

  1. পছন্দসমূহ, প্রোফাইল, কীগুলিতে যান।
  2. আপনার বাম কীটি একটি পালানোর চরিত্র হিসাবে কাজ করতে সেট করুন।
  3. Shortc for এর জন্য বর্তমান শর্টকাটটি সন্ধান করুন বা নিম্নলিখিত সেটিংস সহ একটি নতুন তৈরি করুন:
    • কীবোর্ড শর্টকাট: ← ←
    • ক্রিয়া: এস্কেপ সিকোয়েন্স প্রেরণ করুন
    • এসএসসি + খ
  4. নিম্নলিখিত সেটিংস সহ → → কীবোর্ড শর্টকাটের জন্য পুনরাবৃত্তি করুন:
    • কীবোর্ড শর্টকাট: → →
    • ক্রিয়া: এস্কেপ সিকোয়েন্স প্রেরণ করুন
    • Esc +: f

1
এটি উল্লেখযোগ্য যে এটি একটি নির্দিষ্ট টার্মিনাল এমুলেটরের সাথে সুনির্দিষ্ট - সাধারণভাবে zsh না not
হাই-এঞ্জেল

7

আপনি কীওয়ার্ড backward-wordএবং সন্ধান করছেন forward-word। সুতরাং আপনি যদি এমন শেলটিতে থাকেন যেখানে কী-বাইন্ডিংগুলি কাজ করছে না bindkey -L | grep backward-wordসেগুলি এমনকি কনফিগার করা আছে কিনা তা পরীক্ষা করার চেষ্টা করুন । Zshzle (1) এ সম্পর্কে আরও তথ্য রয়েছে ।

আপনি ম্যানুয়ালি এই জাতীয় কিছু টাইপ করে কী-বাইন্ডিং সেট করতে পারেন:

বাইন্ডকি ' Ctrl+ v Alt+ Right' ফরোয়ার্ড-শব্দ

বাইন্ডকি ' Ctrl+ v Alt+ Left' পশ্চাতে-শব্দ

কী-বাইন্ডিংগুলি নিয়ে আমারও কিছুটা সমস্যা হয়েছিল এবং সমস্যাটি প্রায়শই ছিল যে বিকল্প / আল্ট কী প্রত্যাশিত মেটা / এস্কেপ থেকে আলাদা কিছু প্রেরণ করেছে।


এছাড়াও আপনি ব্যবহার করতে পারেন emacs-forward-wordএবং emacs-backward-word। পার্থক্যটি হ'ল আপনি শব্দের শেষের দিকে এগিয়ে যান এবং শব্দের শুরুতে সর্বদা ঝাঁপিয়ে না দিয়ে শব্দটির শুরুতে পিছিয়ে যান।
আলেেক্স গবি

এটি একটি সবচেয়ে দৃ and় এবং পরিষ্কার সমাধান। এটি বিভিন্ন ধরণের কী ম্যাপিং এবং / অথবা সমস্ত ধরণের ssh-tmux-zsh সংমিশ্রণের সাথে মানিয়ে নিতে পারে। হার্ড-কোডেড এস্কেপ ক্রমের সাথে জড়িত এমন অন্যান্য সমাধানগুলি কেবলমাত্র কিছু নির্দিষ্ট সিস্টেমে কিছু ক্ষেত্রে সমাধান করে।
এইচকেটনিলাই

3

আমি আইটার্মের পক্ষে কথা বলতে পারি না তবে ফেডোরা ১৯-এ জিনোম টার্মিনালের অধীনে ওহ-মাই-জেডএস-এর সাথে জেডএসএইচ ৫.০. running চালিয়ে এই সমস্যাটি সমাধান করতে আমি ব্যবহৃত কী-বাইন্ডিংগুলি:

bindkey "\e[1;3C" forward-word
bindkey "\e[1;3D" backward-word

যেখানে \e== অব্যাহতি-কী-সিকোয়েন্স ( বিভাগ ৪.১.১ এর অধীনে নথিভুক্ত )

এবং [== O(বড় বড় ও; ধারা ৪.২.১ এর অধীনে নথিভুক্ত ), কিছু ক্ষেত্রে। উদাহরণস্বরূপ, tmuxএই প্রতিস্থাপনের অধীনে আমার জন্য প্রয়োজনীয়, তবে এটি ছাড়া tmuxকোনও প্রতিস্থাপনের প্রয়োজন হয় না এবং [== হয়[

একটি সিক্যুয়েন্সের মূল কোডগুলি catপছন্দসই ক্রমটি ব্যবহার করে এবং টিপে নেওয়া যায়। উদাহরণস্বরূপ টিপে ফলাফলগুলি এর <Alt+Right>মতো ব্যাখ্যা করা উচিত:

$ cat
^[[1;3C

^[== \e== এস্কেপ-কী-সিকোয়েন্স

[== সাথে OR == (বড় হাতের) [ছাড়াইtmux[Otmux

1;3 == আমি এটি সম্পর্কে নিশ্চিত নই তবে এটির যৌক্তিক অর্থ হওয়া উচিত <Alt>

C == ডান তীর কী

তারপরে এই ধারাবাহিকতাটি প্রথম আর্গুমেন্ট হিসাবে স্থায়িত্বের জন্য দেওয়া হয় bindkeyএবং আবদ্ধ হয় , অর্থাত্ যুক্তিটির কী-স্ট্রোকটি একটি নির্দিষ্ট সম্পাদক কমান্ড (বা zsh পদে উইজেট) কার্যকর করবে, যা প্রথমটিতে উপরের উদাহরণ লাইন হয় ।~/.zshrcforward-word

~/.zshrcপুনরায় sourced করা উচিত পর এই দুটি কমান্ড এর মাধ্যমে এতে যোগ করা হয়েছে:

$ source ~/.zshrc

এখন আমার সিস্টেমে একটি বিরক্তি হ'ল এই বিশেষ সংমিশ্রণটি টার্মিনাল এমুলেটরকে প্রতিবার কমান্ড জারি করার সময় একটি বীপ দিতে বাধ্য করেছিল, এটি আমি অক্ষম করে প্রতিকার করেছি

'Edit'->'Profile Preferences'->'Terminal Bell' চেকবক্স নেই।


2

আমার জন্য আইটির্ম 2-র কমান্ড লাইন নেভিগেশনকে আরও স্বজ্ঞাত করে তোলার ক্ষেত্রে আমার পক্ষে সবচেয়ে ভাল কী কাজ করেছে (আমি একজন অল্প বয়স্ক, যারা কমান্ড লাইনে বড় হননি, তবে আমি পাঠ্য সম্পাদক এবং আইডিইতে অনেক সময় ব্যয় করেছি) ছিল প্রতি:

  • পছন্দসমূহ -> প্রোফাইল -> কীগুলিতে যান
  • কী ম্যাপিংসের তালিকার অধীনে প্রিসেটগুলি যুক্ত / অপসারণ বা লোড করার জন্য একটি বাক্স রয়েছে (কম্বো বাক্স)
  • Natural Text Editingপ্রিসেট ড্রপ ডাউন এ বিকল্পটি নির্বাচন করুন ।

এটি আমাকে প্রতিটি বিকল্পকে পৃথকভাবে সংশোধন না করেই আরও বেশি মানক বিন্যাসে সম্পাদকের কীগুলি ডিফল্ট করে।


0

আমি আপনাকে কী- zkbdবাইন্ডিংগুলি কনফিগার করতে ব্যবহার করার পরামর্শ দিই । আমি এটি ব্যবহার করি এবং Alt+ Left/ Alt+ Rightআইটার্ম 2 এ সূক্ষ্মভাবে কাজ করে। zshcontrib(1)Zkbd বিস্তারিত জানতে দেখুন ।

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