তীর কীগুলির পরে ব্যাশে বিপরীত ইতিহাস অনুসন্ধানের ফলে কার্সারটি ভুল স্থানে প্রদর্শিত হয়


10

আমি লক্ষ করেছি যে অনেক সময় আমি যখন কমান্ড লাইন থেকে CTRL+ এর মাধ্যমে বিপরীত ইতিহাস-সন্ধান rকরি, আমি যদি কমান্ডটি সম্পাদনা করতে চাই, কখনও কখনও কার্সারটি ভুল অবস্থানে চলে যায় যখন আমি একটি তীর কী টিপলে বা CTRL+ aবা CTRL+ লিখি e। নির্দিষ্ট অবস্থানটি এটি লাফ দেয় যা আমার কমান্ড লাইন প্রম্পটের আকার হিসাবে সেট করা হিসাবে সমান একটি অফসেট বলে মনে হচ্ছে PS1

এটি অসুবিধা সৃষ্টি করে কারণ কার্সারের আসল অবস্থানটি স্ক্রিনে যেভাবে রেন্ডার করা হয় তার থেকে আলাদা; কমান্ডের ভবিষ্যতের সম্পাদনাগুলি এমনভাবে রেন্ডার করা হয় যেন কার্সার যেখানে যায় সেখানে, কিন্তু আসল কমান্ডটি কোনও জাম্প ছাড়াই সঠিক অবস্থান ধরে রাখে।

কেউ কি জানেন যে এর কারণ কীভাবে ঘটছে বা কীভাবে এটি ঠিক করা যায়?

সম্পাদনা: PS1সমস্যাটির শেষে আমি যদি একটি নতুন লাইন যুক্ত করি তবে মনে হয় এটি চলে যাবে। যাইহোক, আমি প্রম্পটের মতো একই লাইনে কমান্ডটি প্রবেশ করতে পছন্দ করব।

উত্তর:


6

এটি আপনার ইতিহাসে প্রায়শই 1 লাইন লম্বা কমান্ডগুলির কারণে ঘটে। আপনি যখন ইতিহাসের বাইরে একটি ছোট্ট আইটেমটি নির্বাচন করেন তখন মনে হয় না যে কমান্ড লাইনটি পুনরায় উপস্থাপনের ক্ষেত্রে প্রম্পটের প্রস্থের বিষয়টি বিবেচনা করা হবে, সুতরাং দীর্ঘ কমান্ডের পরে সমস্ত কিছুই চতুর।

আমি যে সহজ সমাধানটি পেয়েছি তা হ'ল হোম কীটি চাপুন, "প্রতিধ্বনি" প্রবেশ করান এবং এন্টার টিপুন। তারপরে শেষ কমান্ডটি স্মরণ করুন এবং সেখান থেকে সম্পাদনা করুন। (প্রথমে প্রতিধ্বনি অপসারণ। :)


ধন্যবাদ, আমি আসলে এটি চেষ্টা করেছি কিছুক্ষণ আগে। আমার ক্ষেত্রে আমি অযত্নে ছিলাম এবং একটি ফাইল উড়িয়ে দিয়েছিলাম কারণ কমান্ডটিতে একটি পাইপ ছিল যা প্রতিধ্বনিকে গ্রাস করেছিল। আপনি সঠিক, এটি কেবলমাত্র আমার পরীক্ষা অনুযায়ী দীর্ঘ আদেশগুলি প্রভাবিত করে বলে মনে হচ্ছে।
jonderry

প্রতিধ্বনির চেয়ে ভাল সমাধান যা আমি সন্ধান করেছি: প্রতিধ্বনির পরিবর্তে লাইনের শুরুতে একটি '#' যুক্ত করুন। এইভাবে বাশ সম্পূর্ণ লাইনের সাথে একটি মন্তব্যের মতো আচরণ করে।
jonderry

1
তবুও আরও ভাল: বর্তমান লাইনটি পুনরায় চিত্রিত করা হলে সমস্যাটি সরে যাবে বলে মনে হচ্ছে। হয় স্ক্রিনটি সাফ করার জন্য সিএল এবং বর্তমান লাইনটি পুনরায় আঁকুন বা আনবাউন্ড ফাংশন পুনরায় আঁকতে-বর্তমান-লাইনটির জন্য একটি মূল বাইন্ডিং তৈরি করুন।
jonderry

আমি স্ক্রোল বাফার হারাতে সত্যই ঘৃণা করি বলে আমি সিএল সমাধানটি উল্লেখ করতে ভুলে গেছি, তবে হ্যাঁ, এটি ইতিহাসের নেভিগেশন থেকে একটি অস্থায়ী রেন্ডারিং গ্লাইচ, সুতরাং একটি পুনর্নির্মাণকে বাধ্য করা এটি ঠিক করবে will redraw- বর্তমান-লাইন একটি আরও ভাল সমাধান মত শব্দ!
ক্যাব্বে

13

হতে পারে আপনার PS1 এ মুদ্রণবিহীন পালানোর ক্রমগুলি \ [এবং \] এ আবদ্ধ নয়।

নিশ্চিত হয়ে নিন যে আপনি তাদের সকলকে এই জাতীয়ভাবে আবদ্ধ করেছেন:

\[\e[33m\]\w\[\e[31m\] $ \[\e[0m\]

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