টার্মিনাল.এপ ব্যাশ চরিত্র messed আপ echoing


0

আমি এখন কিছু সময়ের জন্য আমার টার্মিনাল সঙ্গে একটি সমস্যা হচ্ছে। দেখে মনে হচ্ছে বাশ (বা বরং রেডলাইন) এবং টার্মিনাল.এপের সমন্বয়টি কোনভাবে বিভ্রান্ত হয় যখন আমি কার্সারটি আঘাত করি তখন "রিভার্স-ই-অনুসন্ধান" (কন্ট্রোল-আর) মোড থেকে প্রস্থান করার জন্য ডান কীটি চাপায়। তারপরে, কার্সারের ডানদিকের অক্ষর সদৃশ হয়ে যায়। Vim, আরো জটিল অ্যাপ্লিকেশন, ভুল ক্রম অক্ষর duplicating দ্বারা প্রতিক্রিয়া।

আমি সমস্যা illustrated আপনি কিছু স্ক্রিনশট দেখাতে হবে।

সর্বোপরি, এটি একটি নতুন টার্মিনাল উইন্ডো যা চলছে "GNU Bash, সংস্করণ 3.2.48 (1) -release (x86_64-apple-Darwin10.0)" (OSX 10.6.4)। প্রম্পট বরং একটি জটিল, আপনি খুঁজে পেতে পারেন GitHub এ কোড । আমার কোন সমস্যা নেই আমার প্রম্পট সমস্যা সৃষ্টি করছে কিনা, কিন্তু লিনাক্সে এটি নেই। সম্পূর্ণতার জন্য, আমি কিছু ডিগ্রী এ ব্যাখ্যা করব: সায়ান অংশটি বর্তমান ডিরেক্টরিটির জন্য গিটের স্থিতি দেখাচ্ছে এবং এটি দ্বারা উত্পন্ন PROMPT_COMMAND। একটি উদাহরণ $PS1 এটা এমন দেখতে:

\[\e]0;\u@\h:\w\a\]\[\e[1;32m\]\u\[\e[0;32m\]@\[\e[1;30m\]\h\[\e[1;34m\] \w \[\e[0;36m\]di ~? \[\e[1;30m\]\[\e[0;37m\]\A \[\e[0;33m\]\[\e[1;31m\]1\$\[\e[0m\]

রেফারেন্সের জন্য, এটি আউটপুট stty:

speed 9600 baud; 50 rows; 80 columns;
lflags: icanon isig iexten echo echoe -echok echoke -echonl echoctl
 -echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
 -extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel iutf8
 -ignbrk brkint -inpck -ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
 -dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
 eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
 min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;
 stop = ^S; susp = ^Z; time = 0; werase = ^W;

এখানে কোন অ ডিফল্ট সেটিংস হতে হবে না। পরীক্ষা ক্ষেত্রে:

আমি প্রবেশ করি echo 126, তারপরে একবার "কার্সার বাম" আঘাত করুন, তারপরে 345 লিখুন, তারপরে রিটার্নটি হিট করুন। তারপর, আমি কন্ট্রোল-আর আঘাত করি এবং "পি" লিখি। আমি যখন এই প্রথম স্ক্রিনশটটি নিয়েছিলাম:

while in ^R mode

এখন, বিপরীত-আই-অনুসন্ধান মোড থেকে প্রস্থান করার জন্য "কার্সার ডান" চাপার পরে, টার্মিনাল বীপগুলি এবং জাগ্রত হওয়া শুরু হয়:

after pressing cursor right

সমস্যা প্রদর্শনের জন্য, আমি ঠিক একই কাজ echo আগে হিসাবে: আমি টাইপ echo 126, এক অক্ষর বাম এবং টাইপ সরানো 345, অনুসরণ করে অনুসরণ।

messed up command line

আপনি দেখতে পারেন যে, আমি প্রতিটি অক্ষর টাইপ করার জন্য, কার্সারের ডানদিকে অন্য "6" প্রদর্শিত হয়। আমি ভিম লিখুন যখন জিনিস এমনকি খারাপ পেতে। সন্নিবেশ মোডে প্রবেশ করার পরে এবং একটি স্থান চরিত্র টাইপ করার পরে এটি আমার নতুনভাবে শুরু করা ভিম:

messed up Vim

(আন্ডারস্কোর হিসাবে দেখানো স্থান স্বাভাবিক, এই হয় 'list' কর্মের বিকল্প।)

কিভাবে অভিবাদন বার্তা একটি অদ্ভুত ভাবে ডান দিকে চলে আসে দেখুন? আরেকটি উদাহরণ হল: প্রবেশের পর একটি নতুন ভিম i126<Left>345<Esc>:

Vim after i126<Left>345<Esc>

এখন, কোন ধারণা এখানে কি হচ্ছে? এটা অসম্ভব কাছাকাছি যে উপায় কাজ যে বেশ স্পষ্ট। ব্যবহার reset কাজ করে, কিন্তু সর্বদা এই কাজ করা সবচেয়ে সুবিধাজনক জিনিস নয়।

আপনি যদি কোন অতিরিক্ত তথ্য প্রয়োজন, আমি এটা প্রদান খুশি হবে। এছাড়াও, আমি একটি প্রশংসনীয় অভিজ্ঞ CLI ব্যবহারকারী, তাই আপনাকে বোকা-প্রমাণ সবকিছু ব্যাখ্যা করতে হবে না।


আপনি অন্য কীবোর্ড চেষ্টা করেছেন? হয়তো তার ভাঙ্গা এবং অদ্ভুত কমান্ড পাঠাতে .. একটি ধারণা ঠিক করা;)

ভবিষ্যতের জন্য একটি পরামর্শ: আপনার পর্দাটি ক্যাপচার করার আগে বা চিত্রগুলি ফসল করার আগে দয়া করে আপনার টার্মিনাল উইন্ডোটি ছোট করুন যাতে আপনার প্রশ্নটি পড়ার সময় অতীত স্ক্রোল করার জন্য এত বেশি খালি স্থান নেই।
Dennis Williamson

হ্যাঁ, পাশাপাশি এই বাগ। যাইহোক, এই প্রশ্নটি পোস্ট করার সময় আমাকে ইতিমধ্যে প্রায় এক ঘণ্টা সময় লেগেছিল (কাজ সময়কালে) আমি আবার স্ক্রিনশটগুলি করতে ভয় পাচ্ছিলাম কারণ জিনিসগুলি স্ক্রল করবে এবং দুর্বৃত্তরা খারাপ হয়ে যাবে (অথবা সব কিছুতেই ঘটবে না)। আপনার পর্দা spamming জন্য দুঃখিত।
scy

আমি Mac OS X Lion 10.7.1 এ টার্মিনালের সমস্যাটি পুনরুত্পাদন করতে পারি না, তাই সমস্যাটির উত্স যা কিছু সময়ে নির্দিষ্ট করা হয়েছে।
Chris Page

আমি যদি সেট করি তবে ম্যাক ওএস এক্স লায়ন 10.7.1 এ টার্মিনাল এবং এক্সটারম উভয় সমস্যার সাথে পুনরুত্পাদন করতে সক্ষম হব TERM=xterm-color, তোমার সাথে PS1 মান এবং আমার নিজের এক সঙ্গে। সমস্যা সঙ্গে ঘটবে না TERM=xterm অথবা TERM=xterm-256color। সিংহের উপর, ডিফল্ট মান এখন xterm-256 রঙের। xterm-color Xterm একটি পুরানো শাখা প্রতিনিধিত্ব করে এবং সুপারিশ করা হয় না। TERM মান কোড কিভাবে প্রভাবিত করা উচিত নয় PS1 ব্যাখ্যা করা হয়, কিন্তু এটা যে হতে পারে bash নির্বাচিত Terminfo ফাইল থেকে কিছু নিয়ন্ত্রণ কোড পাঠানো হয় এবং xterm-color আপনার প্রম্পট কোডগুলির সাথে অসঙ্গতিপূর্ণ এমন কিছু নির্দিষ্ট করে।
Chris Page

উত্তর:


1

আমি এই পুনরুত্পাদন করতে পারবেন না। আমি টার্মিনাল.এপ-এ প্রো-প্রোফাইল ব্যবহার করছি এবং আমি 'এক্সটেনশান হিসাবে হিসাবে ঘোষণা করুন' rxvt সেট করি। হয়তো এই সাহায্য করে।


Rxvt টার্মিনাল সেটিং সমস্যা সমাধান। (আগে, এটা xterm- রঙ ছিল।) আশা করি এটি কোন নতুন সমস্যা পরিচয় করায় না। ধন্যবাদ!
scy

2

আমি এই মুহুর্তে কি বলতে পারছি না কিন্তু PS1 প্রম্পট স্ট্রিংটিতে আপনি কোনটি সঠিকভাবে ব্যবহার করছেন না তা হল "xterm-colour" এমুলেশনটি ব্যবহার করার সময় টার্মিনালটি কাজ করার কারণ ঘটছে। আমার কাছে আপনার মতো বেস এবং ম্যাকওএসের একই সংস্করণ রয়েছে এবং আমি আমার টার্মিনালটিকে xterm-colour emulation এর অধীনে চালাচ্ছি। যে মুহুর্তে আমি PS1 ভেরিয়েবলটি আপনার প্রশ্নে সরবরাহ করা মান দিয়ে রপ্তানি করেছি এবং উল্টানো অনুসন্ধান মোডে আপনি যে কৌশলটি উল্লেখ করেছেন তা আমি করেছি, আমি আপনার টার্মিনালে একই রকম আচরণ দেখতে পাচ্ছি।


@ সিসটেল - এটা রং। আমি একই সমস্যা পেয়েছি, কিন্তু যদি আমি আমার পিএস 1 থেকে সমস্ত পাল্টা ক্রম সরিয়ে ফেলি (যেমন \ e [0; 36m) তখন ctrl + r প্রত্যাশিত হিসাবে কাজ করে।
Nicholas White
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.