এটির gdbus call
( এসসিআর ) এর জেএস ইন্টারফেসের মাধ্যমে জিনোম-শেলটি জিজ্ঞাসা করে এটি সম্ভব ।
নিম্নলিখিত স্ক্রিপ্ট দুটি কনফিগার করা ইনপুট উত্সের মধ্যে বিকল্প হবে। আপনার যদি আরও কিছু থাকে তবে সংশোধন করা সহজ।
#!/usr/bin/env bash
cur_idx=$(
gdbus call \
--session \
--dest org.gnome.Shell \
--object-path /org/gnome/Shell \
--method org.gnome.Shell.Eval \
"imports
.ui.status
.keyboard
.getInputSourceManager()
.currentSource
.index" |
cut -d"'" -f2
)
next_idx=$(( 1 - $cur_idx ))
gdbus call \
--session \
--dest org.gnome.Shell \
--object-path /org/gnome/Shell \
--method org.gnome.Shell.Eval \
"imports
.ui
.status
.keyboard
.getInputSourceManager()
.inputSources[$next_idx]
.activate()" \
&> /dev/null
এটিকে সম্পাদনযোগ্য করে তুলুন chmod a+x </path/to/script>
এবং আপনি এটির পরে একটি কাস্টম শর্টকাট কীতে আবদ্ধ করতে পারেন:
সেটিংস খুলুন -> ডিভাইস -> কীবোর্ড এবং কিছু শর্টকাটে স্ক্রিপ্ট বরাদ্দ করতে নীচে ' + ' পছন্দ-বোতামটি ক্লিক করুন
(জিনোমের জন্য <3.x: সেটিংস -> ডিভাইস -> কীবোর্ড -> কাস্টম শর্টকাট )।