বাশ সমাপ্তি প্রক্রিয়াজাতকরণ খারাপ হয়ে গেছে, কীভাবে ডিবাগ করবেন?


9

এটি সব একটি সহজ দিয়ে শুরু হয়েছিল

alias gv='gvim --remote-quiet'

এবং এখন gv Space Tabকিছুই দেয় না যেখানে এটি সাধারণত ফাইলের নাম দেয়। অদ্ভুতভাবে,

alias gvi='gvim --remote-quiet'

প্রত্যাশার মতো কাজ করে। আমার স্পষ্টতই একটি কার্যনির্বাহী রয়েছে, তবে আমি gvবিশেষ প্রক্রিয়াকরণের জন্য আমার কী ধরছে তা জানতে চাই । ফাইলের নাম সঠিকভাবে সমাপ্ত হওয়ার মতো একই সেটিংস ভাগ করে নেওয়ার compoptজন্য কোনও সহায়তা নেই।gvls

$compopt gv
compopt +o bashdefault +o default +o dirnames -o filenames +o nospace +o plusdirs gv
$ compopt ls
compopt +o bashdefault +o default +o dirnames -o filenames +o nospace +o plusdirs ls

completeকমান্ড সামান্য বেশি সহায়ক কিন্তু এটা আমাকে বলুন না কেন আমার দুই অক্ষর নড়চড় জন্য আউট singled করেছেন:

$ complete -p gv
complete -o filenames -F _filedir_xspec gv
$ complete -p ls
complete -o filenames -F _longopt ls
$ complete -p echo
bash: complete: echo: no completion specification
$ alias gvi='gvim --remote-silent'
$ complete -p gvi
bash: complete: gvi: no completion specification

কোথা complete -o filenames -F _filedir_xpec gvথেকে এল ?


1
সম্পূর্ণতার জন্য +1 এবং <kbd> স্পেস </ কেবিডি> <কেবিডি> ট্যাব </
কেবিডি

উত্তর:


10

আমি পেয়েছি, শেষ পর্যন্ত। এটি /etc/bash_completionsকোনটি লুকিয়ে ছিল - হাস্যকরভাবে - আমি আমার ফাইলের নাম সম্পূর্ণরূপে প্রদর্শিত না হওয়ায় আমি উপেক্ষা করেছি।

সহায়ক bash_completions এর gvঅর্থ এর অর্থ ghostviewতাই এটি কেবলমাত্র আমাকে ফাইলের নামগুলি সম্পূর্ণ করতে দেয় যা এটি আশা করে যে ঘোস্টভিউ হ্যান্ডেল করতে পারে:

complete -f -X '!*.@(@(?(e)ps|?(E)PS|pdf|PDF)?' gv ggv kghostview

আমি মনে করি যে এটি "খুব জঘন্য সহায়ক" হিসাবে গণ্য। যোগ করার পদ্ধতি

alias gv='gvim --remote-silent'
complete -r gv 

আমার ~/.bash_aliasesফাইল যথেষ্ট ছিল।


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