আমি সবেমাত্র এমন একটি জিনিস পেলাম যা সাহায্য করতে পারে। এখানে যায়:
$ defaults read /Library/Preferences/com.apple.HIToolbox.plist
{
AppleCurrentKeyboardLayoutInputSourceID = "com.apple.keylayout.Dutch";
AppleDefaultAsciiInputSource = {
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 1337;
"KeyboardLayout Name" = QWERTY;
};
AppleEnabledInputSources = (
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 26;
"KeyboardLayout Name" = Dutch;
}
);
AppleInputSourceHistory = (
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 26;
"KeyboardLayout Name" = Dutch;
}
);
AppleSelectedInputSources = (
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 26;
"KeyboardLayout Name" = Dutch;
}
);
}
এটি আমার সিস্টেমে রয়েছে, যেখানে আমার কাস্টম কীবোর্ড লেআউট ("QWERTY" নামে পরিচিত) ডিফল্ট। নোট করুন KeyboardLayout Name
এবং ফাইলগুলির KeyboardLayout ID
শুরুতে এবং বৈশিষ্ট্যগুলি আইডি এবং নাম উল্লেখ করে .keylayout
।
আপনি দেখতে পাচ্ছেন, defaults read /Library/Preferences/com.apple.HIToolbox.plist AppleCurrentKeyboardLayoutInputSourceID
এখনও স্ট্রিংটি ফেরত দেয় "com.apple.keylayout.Dutch"
। উপলব্ধ com.apple.keylayout
মানগুলির কোথাও একটি তালিকা আছে ? কাস্টম কীবোর্ড বিন্যাসের জন্য কি এই জাতীয় মান পাওয়া সম্ভব? 'সেক্ষেত্রে আমরা কেবল সম্পত্তিটিকে ওভাররাইড করতে পারি।
এছাড়াও, AppleEnabledInputSources
, AppleInputSourceHistory
, এবং AppleSelectedInputSources
বৈশিষ্ট্য সব, কাস্টম কীবোর্ড লেআউট উপেক্ষা করার হিসেবে তাদের মান নেটিভ OS X এর কীবোর্ড লেআউট আমি মূলত যখন সেটআপ সহকারী চলমান নির্বাচিত মিলা বলে মনে হচ্ছে।
আরেকটি আপডেট: আহা! দেখে মনে হচ্ছে অন্য কোনও plist
ফাইল রয়েছে যা থেকে আমরা সেটিংস অনুলিপি করতে সক্ষম হতে পারি।
$ defaults read ~/Library/Preferences/ByHost/com.apple.HIToolbox.*.plist
{
AppleCurrentKeyboardLayoutInputSourceID = "org.unknown.keylayout.QWERTY";
AppleDateResID = {
smRoman = 2;
};
AppleEnabledInputSources = (
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 26;
"KeyboardLayout Name" = Dutch;
},
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 1337;
"KeyboardLayout Name" = QWERTY;
},
{
"Bundle ID" = "com.apple.CharacterPaletteIM";
InputSourceKind = "Non Keyboard Input Method";
},
{
"Bundle ID" = "com.apple.KeyboardViewer";
InputSourceKind = "Non Keyboard Input Method";
},
{
"Bundle ID" = "com.apple.inputmethod.ironwood";
InputSourceKind = "Non Keyboard Input Method";
}
);
AppleGlobalTextInputProperties = {
TextInputGlobalPropertyPerContextInput = 0;
};
AppleInputSourceHistory = (
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 1337;
"KeyboardLayout Name" = QWERTY;
},
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 26;
"KeyboardLayout Name" = Dutch;
}
);
AppleNumberResID = {
smRoman = 2;
};
AppleSelectedInputSources = (
{
InputSourceKind = "Keyboard Layout";
"KeyboardLayout ID" = 1337;
"KeyboardLayout Name" = QWERTY;
},
{
"Bundle ID" = "com.apple.inputmethod.ironwood";
InputSourceKind = "Non Keyboard Input Method";
}
);
AppleTimeResID = {
smRoman = 2;
};
}
যেমন আপনি দেখতে পাচ্ছেন ( AppleCurrentKeyboardLayoutInputSourceID
), দৃশ্যত কাস্টম কীবোর্ড লেআউটগুলি কীবোর্ড লেআউটের নাম "org.unknown.keylayout.FOO"
যেখানে FOO
রয়েছে ( .keylayout
ফাইলে উল্লিখিত রয়েছে ) এর মতো মান পেয়ে যায় ।
সুতরাং, নাম QWERTY
এবং আইডি সহ 1337
( .keylayout
ফাইলটিতে নির্দিষ্ট ) আমাদের কাস্টম কীবোর্ড লেআউটে সমস্ত মান সেট করার চেষ্টা করা যাক :
sudo defaults write /Library/Preferences/ByHost/com.apple.HIToolbox.plist AppleCurrentKeyboardLayoutInputSourceID -string "org.unknown.keylayout.QWERTY"
দুঃখের বিষয়, এটি কাজ করে না বলে মনে হচ্ছে।
আপডেট: @ ল্রি একটি নির্ভরযোগ্য পদ্ধতি আবিষ্কার করেছেন - তার উত্তর দেখুন।