ক্লিকে জিএনইউ স্ক্রিনের অদ্ভুত অক্ষর


21

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

kM#kM -  Z3#Z3  -  q-#q-

ইত্যাদি ...

আমি প্রথমে ভেবেছিলাম এটি আমার সমস্যা ছিল ttyতাই আমি গিয়ে আমার রাস্পবেরিপিতে একটি নতুন জিএনইউ স্ক্রিন সেশনটি খুললাম: কোনও সমস্যা নেই।
আমি stty -aউভয় সেশনে একটি করেছি এবং দেখেছি পার্থক্য রয়েছে। আমি তখন stty -g > ~/stty-good-settingsভাল সেশনে একটি করেছি এবং এটি খারাপের সাথে লোড করে stty `cat ~/stty-good-settings`দিয়েছি (আমি তার পরে মানগুলি তুলনা করি, সেটিংসটি সফলভাবে লোড হয়েছিল) তবে আমার এখনও পর্দার একটি সেশনে সমস্যা আছে এবং অন্যটি নয়!

আমি নিশ্চিত না কী ঘটছে, যদি এটি আমার TERMমান (উভয় ক্ষেত্রে একই), আমার ttyসেটিংস, আমার টার্মিনাল…


2
আমি tmuxসময়ে সময়ে এটি সঙ্গে দেখতে । এক পর্যায়ে টার্মিনাল মাল্টিপ্লেক্সারগুলি কলাতে গিয়ে ইনপুটগুলি ভুলভাবে ডিকোড করে মনে হয় ( xtermএখানে কিছু বলারও থাকতে পারে)। resetসাধারণত আমার জন্য এটি ঠিক করে দেয়।
পিটার্ফ

আসলে, resetপর্দায় কাজ করে! ঠিক করার জন্য ধন্যবাদ, তবে কেন আমি কিছু অন্তর্দৃষ্টি পছন্দ করব ...
Noé Malzieu

আমিও ... :) আমি এটি টার্মিনাল মাল্টিপ্লেক্সার এবং ধারণকৃত টার্মিনালের মধ্যে একরকম খারাপ মিথস্ক্রিয়া বলে সন্দেহ করি।
পিটার্ফ

আমি দেখছি .. আপনি প্রশ্নের উত্তর দিতে পারেন, আমি এই উত্তরটি বৈধ করব!
Noé Malzieu

উত্তর:


14

জিএনইউ স্ক্রিনের অভ্যন্তরে চলমান কিছু স্থির করেছে যে এটি পরিবর্তে একটি এক্সটার্মে (বা অনুরূপ) চলছে এবং অ্যাপ্লিকেশন মাউস মোড সক্ষম করে। (অথবা জিএনইউ স্ক্রিনের সাথে সংযুক্ত হওয়ার আগে আপনি সম্ভবত টার্মিনালটিতে কিছুটা চালনা করেছেন, সম্ভবত এসএসএসের আগেও, যা সঠিকভাবে পুনরায় সেট করা হয়নি)) often টিআরএম যদি "স্ক্রিন" না হয় তবে উদাহরণস্বরূপ "এক্সটার্ম" বা "স্ক্রিন" হয়। xterm "। পরবর্তীটি ডেবিয়ান সিস্টেমগুলিতে দেখা যায় (এবং উত্পন্ন) যা ncurses-termইনস্টল করা হয়েছে; সেই প্যাকেজটি পরিষ্কার করার চেষ্টা করুন (হোস্ট এবং রাস্পিতে)।

অন্যথায়, reset(যেমন আগেই বলা হয়েছিল) বা printf \\x033cঅস্থায়ীভাবে সহায়তা করতে পারে। অথবা, অবশ্যই, আপনার টার্মিনাল এমুলেটরটিকে মাউস মোড অক্ষম করতে বলার জন্য যথাযথ পালানোর ক্রম।


resetকৌতুকটি করেছে ধন্যবাদ।
অলিকএলজিন-কিলাকা

9

resetএর জায়গা আছে তবে আপনার পর্দা সাফ করে। আপনি যদি চলমান xtermবা সামঞ্জস্যপূর্ণ কিছু হন তবে ব্যবহারের জন্য স্বল্পতম, অন্তত অন্তর্নিহিত জিনিসটি হবে

printf '\033[?9l'

এটি এক্সটার্ম কন্ট্রোল সিকোয়েন্সগুলির মাউস ট্র্যাকিং বিভাগে সুস্পষ্টভাবে বলা হয়নি , তবে চালু হওয়া সম্ভাব্য মোডগুলির কোনওটি বন্ধ করে আপনাকে মাউস মোডটিকে পুনরায় সেট করতে (অক্ষম) করতে দেয়। এগুলি নামক স্থির হিসাবে নথিভুক্ত করা হয়:xterm

 #define SET_X10_MOUSE               9
 #define SET_VT200_MOUSE             1000
 #define SET_VT200_HIGHLIGHT_MOUSE   1001
 #define SET_BTN_EVENT_MOUSE         1002
 #define SET_ANY_EVENT_MOUSE         1003

এবং 9সংক্ষিপ্ততম হয়।

মাউস-মোড অনেক অ্যাপ্লিকেশন দ্বারা চালু করা হয়। যদি কেউ এটি বন্ধ না করেই প্রস্থান করে, তবে আপনি যে বিজোড় চরিত্র দেখেছেন তা তৈরি করে। ncurses অ্যাপ্লিকেশনগুলি মাউস-মোডটি বন্ধ করে দেয় endwin, যা সমস্ত ভাল আচরণের জন্য অ্যাপ্লিকেশন কলকে অভিশাপ দেয়। অন্যান্য অ্যাপ্লিকেশনগুলি (এন) অভিশাপ ব্যবহার করতে পারে না, বা কল করতে ভুলে যেতে পারে endwin

ncurses অ্যাপ্লিকেশনগুলি পরীক্ষা করে এক্সটার্ম-মাউস মোড উপলব্ধ কিনা তা পরীক্ষা kmousকরে দেখুন (যা screenটার্মিনাল বর্ণনার অংশ )। 1999 সাল থেকে এটি বৈশিষ্ট্যের জন্য পরীক্ষার মানক উপায় , সুতরাং কোনও অ্যাপ্লিকেশনটি ঘটনাক্রমে মাউস মোডে পরিণত হওয়ার সম্ভাবনা কম। বরং এটি এমন একটি অ্যাপ্লিকেশন নির্দেশ করে যা এর কাজটি করতে ভুলে গিয়েছিল।

screen.xtermযাইহোক, ডেবিয়ানের ncurses-termপ্যাকেজে কোনও প্রবেশ নেই (এটিকে অপসারণের চেয়ে এটি আরও সহায়ক)। সেই প্যাকেজে স্ক্রিন-সম্পর্কিত সমস্ত এন্ট্রিগুলির একটি তালিকা এখানে রয়েছে। বেশিরভাগটি screenবিভিন্ন টার্মিনালের আচরণে বৈষম্য ঠিক করার জন্য ব্যবহৃত হয় :

/usr/share/terminfo/s/screen.konsole
/usr/share/terminfo/s/screen-16color-bce
/usr/share/terminfo/s/screen-16color
/usr/share/terminfo/s/screen3
/usr/share/terminfo/s/screen.mrxvt
/usr/share/terminfo/s/screen-bce.Eterm
/usr/share/terminfo/s/screen-bce.gnome
/usr/share/terminfo/s/screen.xterm-xfree86
/usr/share/terminfo/s/screen-bce.konsole
/usr/share/terminfo/s/screen-bce.mlterm
/usr/share/terminfo/s/screen-256color-s
/usr/share/terminfo/s/screen-bce.mrxvt
/usr/share/terminfo/s/screen-bce.rxvt
/usr/share/terminfo/s/screen.linux
/usr/share/terminfo/s/screen.vte
/usr/share/terminfo/s/screen-bce.xterm-new
/usr/share/terminfo/s/screen.teraterm
/usr/share/terminfo/s/screen-16color-bce-s
/usr/share/terminfo/s/screen.xterm-r6
/usr/share/terminfo/s/screen+fkeys
/usr/share/terminfo/s/screen-256color-bce-s
/usr/share/terminfo/s/screen.mlterm
/usr/share/terminfo/s/screen-16color-s
/usr/share/terminfo/s/screen-bce.linux
/usr/share/terminfo/s/screen.gnome
/usr/share/terminfo/s/screen.rxvt
/usr/share/terminfo/s/screen2
/usr/share/terminfo/s/screen.Eterm
/usr/share/terminfo/s/screen.xterm-new
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.