কিছুটা লজ্জাজনক প্লাগ, তবে যেহেতু এটির কোনও বিদ্যমান সমাধান বলে মনে হয়নি এবং যেহেতু কাজটি তুলনামূলকভাবে সোজা-এগিয়ে দেখায় , তাই সমস্যাটি সমাধানের জন্য আমি একটি সাধারণ পাইথন ডেমন লিখেছিলাম । এটি সিস্টেম-প্রশস্ত কী প্রেসগুলি ক্যাপচার করতে পাইথন-এক্সলিব এপিআই ব্যবহার করে এবং তারপরে কাস্টম শেল কমান্ডগুলি চালায়। এটি একটি বেসিক ডেবিয়ান / উবুন্টু সেটআপ ধরেছে তবে বেশিরভাগ লিনাক্স সিস্টেমে কয়েকটি টুইটের সাহায্যে এটি কাজ করবে।
আমার ক্ষেত্রে, ভলিউম আপ / ডাউন কীগুলি 122/123 কোডে মানচিত্র করে, তাই ডেস্কটপ লক থাকলে কেবলমাত্র ভলিউমটি কম বা বাড়ানোর জন্য সংশ্লিষ্ট কমান্ডগুলি হ'ল :
gnome-screensaver-command -q | grep "is active" && bash -c '/usr/bin/pactl -- set-sink-volume `pacmd list-sinks | grep -P -o "(?<=\* index: )[0-9]+"` -10%'
gnome-screensaver-command -q | grep "is active" && bash -c '/usr/bin/pactl -- set-sink-volume `pacmd list-sinks | grep -P -o "(?<=\* index: )[0-9]+"` +10%'
স্বীকার করা, এটি কিছুটা ভারবস। দ্বিতীয় গ্রেপ হ'ল বেশ কয়েকটি সিস্টেমে সক্রিয় সাউন্ড ইন্টারফেস সন্ধান করা (যেমন আমার ল্যাপটপে একটি মাস্টার এবং হেডফোন ইন্টারফেস রয়েছে, যা এই কমান্ডগুলিকে নিয়ন্ত্রণ করতে দেয়)।
সম্পাদনা: এটি উবুন্টু 16 এর মতো আর কাজ করে না All স্ক্রিনটি লক হয়ে গেলে সমস্ত এক্স ফাংশন টার্মিনাল থেকে এমনকি অক্ষম হয়ে যায়।