Ctrl-s হ্যাং টার্মিনাল এমুলেটর?


311

আমি ভিমডকের একটি বাক্য জুড়ে এসেছি:

Note: CTRL-S does not work on all terminals and might block
                further input, use CTRL-Q to get going again.

এবং এই কীটি সত্যিই আমার ভিএমকে ঝুলিয়ে রাখে। আমি ভাবছিলাম যে এটি ভিমের দোষ ছিল, যেহেতু আমি C-s/ C-x C-sইমাস নক্স ব্যবহার করার সময় কোনও সমস্যা হয়নি । তবে ঠিক এখন যখন আমি একটি ম্যানপেজ পড়ছিলাম এবং টিপছিলাম তখন এটিও Ctrl-sস্তব্ধ man হয়ে যায় (আমি lessপ্যাগার হিসাবে সেট করছি )।

তাহলে কেউ কি আমাকে বলতে পারে যে কি হচ্ছে?

টার্মিনাল emulators হয় xtermএবং lxterminal, এবং ttyএই সমস্যা হয়েছে। এবং একটি Ctrl+ qসমস্ত ক্ষেত্রে প্রক্রিয়াটি আবার ঠিক রাখে।


6
এটি একটি মূ .় প্রশ্ন হতে পারে তবে আপনি আপনার প্রশ্নে কী চেষ্টা করেছেন তা উল্লেখ করেননি। আপনি C-qস্ক্রোলিং পুনরায় সক্ষম করার চেষ্টা করেছেন , তাই না?
h3rrmiller

3
@ h3rrmiller হ্যাঁ, এটা ঠিক। তবে আমি কেবল কেন ctrl-sপ্রক্রিয়াটি স্তব্ধ হওয়ার কারণ জানতে চাই ।
হংকক্সু চেন

স্ক্রোল লক কী সহ কীবোর্ডগুলি থাকার আগে C-sএবং C-qপুরানো দিনগুলির "স্ক্রোল লক টগল" ছিল। আপনি এই কার্যকারিতাটি যুক্ত করে stty ixanyএবং stty ixoff -ixonআপনার.bashrc
h3rrmiller

2
এটি আজকাল টার্মিনাল এমুলেটরগুলিতে বোকা historicalতিহাসিক সেটিং; আপনার টার্মিনালটি কীভাবে ঠিক করবেন সে সম্পর্কিত এই প্রশ্নটি দেখুন ।
ইনগো কারকাত

1
@ ইঙ্গোকার্কাত আমি বলব না এটি বোকা ... আমি এখনও সময়ে সময়ে এটি ব্যবহার করি
h3rrmiller

উত্তর:


361

এই বৈশিষ্ট্যটিকে সফটওয়্যার ফ্লো কন্ট্রোল (XON / XOFF ফ্লো নিয়ন্ত্রণ) বলা হয়

যখন ডেটা লিঙ্কের এক প্রান্তে (এই ক্ষেত্রে টার্মিনাল এমুলেটর) আর কোনও ডেটা গ্রহণ করতে পারে না (কারণ বাফার পূর্ণ বা C-sসমাপ্ত বা ব্যবহারকারী প্রেরণ করে ) এটি প্রেরণের শেষ প্রান্তটি বলতে একটি "এক্সএফএফ" প্রেরণ করবে "XON" সিগন্যাল না পাওয়া পর্যন্ত বিরতিতে ডেটা লিঙ্ক।

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

C-sটার্মিনাল স্ক্রোল লক সক্ষম করে। যা আপনার টার্মিনালটিকে স্ক্রোলিং থেকে আটকাচ্ছে (সফ্টওয়্যারটির আউটপুট থামাতে "XOFF" সিগন্যাল প্রেরণ করে)।

C-qস্ক্রোল লক অক্ষম করে। টার্মিনাল স্ক্রোলিং পুনরায় শুরু হচ্ছে (সফ্টওয়্যারটির আউটপুট পুনরায় শুরু করতে "XON" সিগন্যাল প্রেরণ করে)।

এই বৈশিষ্ট্যটি উত্তরাধিকারসূত্রে রয়েছে (যখন টার্মিনালগুলি খুব ধীর ছিল এবং স্ক্রোলিংয়ের অনুমতি দেয় না) এবং এটি ডিফল্টরূপে সক্ষম হয়।

এই বৈশিষ্ট্যটি অক্ষম করতে আপনার উভয় ~/.bash_profileবা এর মধ্যে নিম্নলিখিতগুলির প্রয়োজন ~/.bashrc:

stty -ixon

10
আসলে আমি মনে করি এটি 60 এর দশকের না হলেও 70 এর দশকের মতো শেষের দিকে চলে যায়।
কিথ

তবে মনে হচ্ছে এটি উবুন্টু 16.04 এ কাজ করছে না।
রবার্ট

3
"stty -ixon" <----- এটি আমি গত সপ্তাহে ইন্টারনেটে পড়ে থাকা সবচেয়ে গুরুত্বপূর্ণ বিষয়গুলির মধ্যে একটি। ধন্যবাদ.
ব্র্যাড পি।

আসলে, এর ইতিহাস 80 এর দশকের আগে কয়েক দশক আগে শুরু হয়। দেখুন পির TTY demystified
রোবোক্লেক্স

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