colorize bash_completion


9

আমি যখন টাইপ করি grepএবং তারপরে TABদুবার চাপতাম তখন bash_completionবর্তমান ডিরেক্টরিতে ফাইল এবং ডিরেক্টরি তালিকাভুক্ত করবে। আমি প্রাথমিক চিঠিটি টাইপ করার সময় এটি ফাইলের নামও সম্পূর্ণ করবে। এটি খুব সুন্দর, একমাত্র সমস্যাটি হ'ল ডিরেক্টরিতে যখন অনেকগুলি ফাইল এবং উপ-ডিরেক্টরি থাকে তবে এটি বেশ বিশৃঙ্খল এবং বিশৃঙ্খলাযুক্ত হতে পারে।

এটা খুব যদি সাহায্য পেতাম bash_completionএকভাবে কি ভিন্নভাবে অন্তত রঙ মধ্যে could, ls -lAআছে।

এটা কি সম্ভব?

সম্পাদনা করুন:

এটি আমার নমুনা bash_completionকনফিগারেশন ফাইলের মতো দেখাচ্ছে:

if [[ ${cur} == -* ]] ; then
    COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
    return 0

else
    _filedir
fi

1
এটি সম্ভব কিনা আমি জানি না bashতবে এটি ডিফল্ট আচরণ zsh
টেরডন

1
যদি এটি সুস্পষ্ট না হয়, আমি এর সমাধান খুঁজছিbash
মার্টিন ভেজিটার

আপনি কোন ফাইল দেখাচ্ছে?
টেরডন

উত্তর:


7

বাশের বর্তমান সংস্করণে এর মতো বাক্সের বৈশিষ্ট্য নেই, আপনি zshএটি ব্যবহার করে এটি করতে পারেন , এটি সেখানে ডিফল্টরূপে।

সম্পূর্ণ হওয়ার সাথে সম্পর্কিত একটি সরঞ্জামকে বলা হয় compgen। সঠিকভাবে বর্ণযুক্ত কমান্ডগুলি দেখানোর জন্য আপনি এটিকে ছত্রভঙ্গ করতে পারেন তবে এটি একটি হ্যাক এবং এটি ব্যবহারিকভাবে কার্যকর নয়।

$ compgen -W "$(ls --color=always *)"

এটি সঠিকভাবে বর্ণযুক্ত ফাইলগুলি তালিকাভুক্ত করবে, তবে এটি রঙটি পেয়েছে ls, তাই আমি এই নেটিভ রঙিনটিকে বিবেচনা করব না auto_completion

তথ্যসূত্র


আমার সম্পাদনা দেখুন। lsআমার bash_completionকনফিগারেশন ফাইলগুলিতে আমার কোনও নেই । দেখে মনে হচ্ছে কোনও ফাংশন রয়েছে _filedirযা ফাইলগুলি তালিকাভুক্ত করে।
মার্টিন ভেজিটার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.