ESC কী এর Alt + আচরণের কারণে টার্মিনালটিতে কিছুটা বিলম্ব ঘটায়


67

আমার টার্মিনাল সেটআপটি জিনোম-টার্মিনাল + tmux + zsh সাথে vi বাইন্ডিং রয়েছে।

ভিআইএম এর মতো অ্যাপ্লিকেশনগুলিতে বা এমনকি zsh এর কমান্ড লাইন vi সম্পাদনা মোডে, আমাকে প্রায়শই ESCকী চাপতে হবে তবে এই কীটির প্রভাব পড়ার আগে কিছুটা বিলম্ব হবে। দেখুন জিএনইউ স্ক্রিনটি ভিম ইএসসি কীকে ধীর করে তোলে

কিছু পরীক্ষা-নিরীক্ষার পরে আমি দেখতে পেলাম যে হিটিং ESCকী এবং তত্ক্ষণাত্ অন্য কী (বলুন b) হিট করার মতো প্রভাব ফেলে Alt+b। আমি জানি না কেন এটি কেন (সম্ভবত উত্তরাধিকারগত কারণে যখন ছিল না Alt? আমি জানি না)। যেভাবেই হোক, আমার দুটি Altচাবি রয়েছে এবং আমি আমার ESCকী দিয়ে এই আচরণটি চাই না want আমি চেষ্টা করেছি C+[এবং এটির সাথেও একই সমস্যা।

আমি নিশ্চিত নই যে এর জন্য কে দায়ী, জিনোম-টার্মিনাল বা tmux বা আমার ওএস নিজেই (উবুন্টু নাটি)। এটিকে কীভাবে সম্বোধন করা যায় সে সম্পর্কে কোনও ধারণা দুর্দান্ত।

আপডেট : আমি tmux ছাড়াই অন্য একটি টার্মিনালে (LXTerminal) পরীক্ষা করে দেখেছি এবং সেখানে বিলম্বও উপস্থিত রয়েছে।


1
আমার ভিম কেন অদ্ভুত অভিনয় করছিল তা আমি বুঝতে পারি না। এই প্রশ্নটি আমাকে স্মরণ করিয়েছে যে আমি কেবল এটি পর্দার মধ্যে ব্যবহার শুরু করেছি। আপনি আমার বিচক্ষণতা বাঁচিয়েছেন।
পাবো

উত্তর:


111

এখানে একটি আসল ফিক্স। নিম্নলিখিতগুলিতে এতে যুক্ত করুন .tmux.conf:

set -s escape-time 0

4
উজ্জ্বল, ধন্যবাদ! ভিমে sertোকানো মোড রেখে দেরি করে ফেলেছিল এবং সত্যিই ভাবেনি এটি tmux হস্তক্ষেপ করছে। এই কৌশলটি করেছে
অ্যাকশনশ্রিম্প

7
সুপারুজার.কম / ক্রেশনস / ২৫২২২৪ / ৪ তে উল্লিখিত হিসাবে এটি tmux kill-serverকার্যকর হওয়ার জন্য আমাকে করনীয় ছিল ।
ফিল্ট

যে কেউ কেন বুঝতে দেরি হওয়ার সময়ে যখন সন্নিবেশ মোড থেকে সুইচিং ব্যাশ মধ্যে ষষ্ঠ মোড ব্যবহার করার সময় মোড আদেশ বের করার চেষ্টা যারা এই পৃষ্ঠায় পৌঁছে জন্য, দেখুন superuser.com/a/1161871/236677
Kvass

3
Tmux tmux-prefix(ডিফল্ট Ctrl+b) এর পরে কমান্ড প্রম্পটটি খুলার পরে :এবং প্রবেশ করে আপনি কনফিগারেশন ফাইলটি পুনরায় লোড করতে পারেন source-file $HOME/.tmux.conf
ফুলফি

7

বিলম্বটি ইনপুট রুটিনগুলির কারণে ঘটে যা কোনও ফাংশন কী টিপিত হয়েছিল কিনা তা সিদ্ধান্ত নিতে হতে পারে। এর জন্য ইনপুট রুটিন একটি টাইমার শুরু করে যখনই এটি কোনও ইসি অক্ষরে পড়ে। টাইমার শেষ হওয়ার আগে ইনপুট থেকে পঠিত অক্ষরগুলি (একটি সেকেন্ডের দশমাংশ বলি) তারপরে একটি ফাংশন কী এর ESC ক্রম হিসাবে ব্যাখ্যা করা হয় এবং এই ESC- সিকোয়েন্সটি টার্মিনোফোন থেকে ESC সিকিউরিজের পরিচিত স্ট্রিংগুলির সাথে তুলনা করা হবে টার্মক্যাপ ডেটা বেস (নিম্ন স্তরের রুটিনগুলি ব্যবহৃত হয় তার উপর নির্ভর করে)।

উত্স সম্পর্কে এটি এমন অ্যাপ্লিকেশনগুলির জন্য বিরক্তিকর যেখানে ইসি নিজেই ব্যবহার করা হয়, তবে আমি এর কোনও কার্যকারিতা সম্পর্কে জানি না।

ESC a= Meta a: এর আচরণের সাথে আপনার প্রশ্ন সম্পর্কিত

সমস্ত কীবোর্ড সহ মেটা কীগুলি উপলভ্য ছিল না। কার্যকারণ হিসাবে এটি অন্যান্য কী এর আগে চাপার জন্য ESC কীটি প্রায়শই ব্যবহার করার অনুমতি পায়।


কেটিএফ ব্যাখ্যার জন্য আপনাকে ধন্যবাদ। বিলম্ব gvim এ উপস্থিত নেই, কেবলমাত্র টার্মিনালে (আমি tmux ছাড়াই পরীক্ষা করেছি এবং বিলম্ব এখনও রয়েছে)।
শ্রীকান্ত শরৎ

gvim এই সমস্যায় ভুগছেন না, কারণ এটি X11 সার্ভার থেকে কোন কী টিপেছে তা তথ্য পায় (সুতরাং এটির ESC ক্রমগুলি পার্স করতে হবে না)।
কেটিএফ

ঠিক আছে, তাই আমার জিনোম-টার্মিনালটিকে তখন একইভাবে আচরণ করা দরকার।
শ্রীকান্ত শরৎ

জিনোম-টার্মিনাল সমস্যা নয় - সমস্যা বর্ণনা শুধুমাত্র চলমান প্রোগ্রাম প্রভাবিত উপর একটি টার্মিনাল (অথবা একটি টার্মিনাল এমুলেশন) ও ফাংশন কি বিশ্লেষণ করতে হয়েছে। আপনি উদাহরণস্বরূপ এক্সটার্ম বা কে-ডি-টার্মিনাল চেষ্টা করলে আপনিও একই আচরণটি অনুভব করতে পারেন ।
কেটিএফ

2
"সমস্ত কীবোর্ডের সাথে মেটা কীগুলি উপলভ্য ছিল না a একটি কর্মচক্র হিসাবে এটি প্রায়শই অন্য কীটির আগে চাপার জন্য ইসি কীটি ব্যবহার করার অনুমতি দেওয়া হত" " সম্ভবত এমনও ভবিষ্যদ্বাণী করে যে, টিটসির প্রায়শই কেবল সাত-বিট ডেটা ইন্টারফেস থাকে; অষ্টম কোনও "মেটা বিট" ছিল না, সুতরাং আপনাকে মেটার জন্য একটি ইসি পাঠাতে হয়েছিল। এবং আজকাল ইউটিএফ -8 বিস্তৃত, তাই আট বিট সংযোগ থাকা সত্ত্বেও আপনি মেটার জন্য উচ্চ বিটটি ব্যবহার করতে পারবেন না।
ক্রিস পেজ

3

এটি সরাসরি আপনার সমস্যার সমাধান নাও করতে পারে তবে আমি খুঁজে পেয়েছি যে আমি <Ctrl> csertোকানো মোড থেকে বেরিয়ে আসতে ব্যবহার করতে পারি । এটি টিএমউক্সের স্ক্রিন স্ক্রোলিং থেকে বেরিয়ে যাওয়ার জন্যও ব্যবহার করা যেতে পারে (যা ব্যবহার করে আহ্বান করা যেতে পারে <leader> PgUP)


3
আমি <C-c>নিয়মিত ব্যবহারের জন্য সন্নিবেশ মোড থেকে বেরিয়ে আসার জন্য ব্যবহার করার পরামর্শ দেব না কারণ এটি কোনও স্বয়ংক্রিয় আদেশ চালায় না InsertLeaveযার জন্য কিছু প্লাগইনগুলি সম্ভবত এটি দেখছিল। দেখুন :h i_CTRL-C
শ্রীকান্ত শরৎ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.