Programátorské rozložení klávesnice

Dlouhou dobu jsem si stěžoval, že mi nevyhovuje způsob obsluhování klávesnice v Mac OS X. Dokonce jsem psal i bugreport do Applu. Jelikož občas píši zdrojový kód, potřebuji používat US klávesnici. Ne, že by nešlo psát jej s využitím českého rozložení, ale je to zbytečně složité. Jenže nikdy se mi nepodařilo přimět OS X k tomu, aby si pamatoval, v které aplikaci používám kterou klávesnici. V Tygru jsem to řešil volbou jedné klávesnice pro všechny programy, kterou umožňovaly předvolby systému. Jenže v Leopardovi to již nejde.

Uvedené důvody, a několik dalších drobností, mě nakonec dohnaly k napsání si vlastní verze rozložení znaků na klávesnici. Vychází z US Exteded, jedná se tedy o Unicode. Zásadní změnou je, že místo čísel jsou horní řadě kláves přiděleny české znaky, jak jsou v klasickém českém rozložení. Díky tomu mohu psát tento příspěvek i zdrojový kód, aniž bych musel přepínat klávesnici. A na číslice mám numerickou klávesnici (z čehož vyplývá, že rozložení není příliš vhodné pro notebooky a bezdrátovou hliníkovou klávesnici).

Ještě jsem byl nucen udělat dvě změny: a) "ů" je na "jedničce", stejně jako "ú"/"Ú", které jsou tam ovšem s Option(+Shift); b) jelikož mi na US Extended nevyhovovalo umístění čárky a háčku, přesunul jsem je na krajní klávesu nalevo od "jedničky"; "§" a "±" jsou potom na jejich místě na Option + "v" a "e".

Vše, co píšu, platí pro ISO klávesnici (myšleno HW). Jak to bude na US nevím, ale snad to brzy zjistím, a případně upravím. Pokud by někdo potřeboval nějaké jiné specifické úpravy, dejte vědět. A omluvte prosím ten český znáček jako symbol daného rozložení, znak ČR se do tak malého prostoru nedá rozumně vtěsnat. I tak ten obrázek stojí za starou bačkoru.

Nakonec způsob instalace – rozbalený soubor (vlastně složku – bundle) stačí zkopírovat do adresáře Library/Keyboard Layouts buď v uživatelově složce (bude dostupné jen pro něj) nebo v kořenovém adresáři (bude dostupné pro všechny uživatele, ale je třeba na to mít administrátorská práva). Pak už stačí se jen odhlásit a znovu přihlásit a v předvolbách systému (System Preferences/International) vybrat rozložení klávesnice "Czech – Programmer". Je možné, že pokud jste soubor umístili do obecné knihovny v kořenovém adresáři, budete muset restartovat počítač, to jsem, přiznávám, nezkoušel.

PS: Pro nováčky, Option = Alt.

Programátorská klávesnice

Update: Omlouvám se, ale původní odkaz byl pouze na soubor s rozložením kláves, nikoliv na celý bundle. Opraveno 21.6. 2008 7:58.

Komentáře

Obrázek uživatele hroch32

Přiložení souboru

Radku, nedal by se nějak umístit zip soubor na Netmanii? Čerti vědí, jak dlouho mě ještě nechají zasí*at jim server Evil

Obrázek uživatele ert

písni mi,hodim to do svýho

písni mi,hodim to do svýho místa tady

QT

Mě se stává, že mi QT Pro hodí klávesnici na anglickou, a to když v něm něco stříhám-nevim jak se toho zbavit.

Dobré

Podobný problém mě taky trápil a teď snad přestane. Na Linuxu jsem si taky předělával klávesnici ve stejném duchu, ale zatím jsem se nedostal ke studování téhož na Macu. Zkusím to na Macbooku s klávesnicí USA a dám vědět, jestli to funguje. Jsou tam nějaké nástroje, jak ověřit kódy kláves? Něco jako na linuxu xev (tuším).

Obrázek uživatele hroch32

Čísla

U ntb bude trochu problém s tím, že na té české nejsou čísla. Ale není problém si je hodit třeba pod Option (stejně ty znaky, které tam jsou na US klávesnici, člověk moc nepoužije). Stačí se podívat dovnitř toho bundlu, v Contents/Resources je soubor s koncovkou .keylayout, který se dá otevřít v jakémkoliv textovém editoru. A na řádce 392 začíná výpis pro Option, konkrétně klávesy č. 18-23, 25-26 a 28-29. Bacha, čísla nejdou popořadě, přikládam kus originální US Extended, aby si to každý mohl upravit dle svého. V Leopardovi už ten soubor není...

Problémy

Tak jsem to zkusil nahodit a mám problém, že v některých aplikacích se potom nedá psát. Prostě se nic neobjeví, ať mačkám, co mačkám. Třeba v Safari to někdy jde, jindy ne, v terminálu vůbec. Nevíš, kde jsou standardní rozložení klávesnice? Zkusil bych se v tom taky povrtat, ale začal bych od české.

Obrázek uživatele hroch32

Zaujímavé

Hm, tak tohle se mi nestalo. Je teoreticky možné, že rozložení nebude fungovat v extra starých Carbonových hrůzách, ale se Safari jsem skutečně neměl problém.

Rozložení klávesnic v Leopardovi jsou /System/Library/Keyboard Layouts/AppleKeyboardLayouts.bundle. Jenže to je naprd, neb jsou v binárním formátu.... proto jsem vycházel z Tygra. Ale tam jsou CE, tudíž i česká, taky binární. Jedině vyjít z rozložení lokiho klávesnice, jestli se ještě dá sehnat. Nebo z tohohle a holt si dát tu práci s víc (hodně) změnama.

Obrázek uživatele jerry00

jerry

Já používal takové free udělátko, v kterém jsem si mohl jednoduše vyrobit jakoukoliv klávesnici(třeba jen převodem z jiné), s jakýmkoliv rozložením a kódováním... výborná to věcička pro podobné problémky. Ale bohužel prográmek mi skončil na poškozeném disku, tak nemohu sloužit s názvem, vím jen, že ikona byla snad elektrická kytara, ale to moc nepomůže.. Smiling

InputSwitcher

A co použít třeba InputSwitcher?

http://limechat.net/inputswitcher/

Simuluje chodí z Tigra.

Obrázek uživatele hroch32

Pěkné

Jj, tenhle prográmek vypadá moc pěkně. Jen autor píše, že Tygr si pamatoval rozložení kláves pro jednotlivé aplikace.... houby a ne pamatoval. Stačilo se z ní přepnout do Finderu, pak do dalšího programu... a bylo to v háji. Bug Report jsem posílal Applu právě pro Tygra, navrhoval jsem jim i řešení. Jenže to se jim asi nelíbilo, neb bylo příliš podobné Windows. Jak považuji OS X za všeobecně uživatelsky přívětivější než Win, tak tohle IMHO zvládli hoši v Redmontu lépe.

Mimochodem, ona se ta klávesnice přepíná i v Leopardovi – v SecurityWindow. Což mě irituje o to víc. A největší prča je, že když probudím ntb a zadávám heslo, tak při použití japko+mezerník se klávesnice přepne, ale vlaječka se nezmění. Děje se to občas i jinde v SecurityWindow, ale nejde mi to nasimulovat.... asi jim pošlu další bug Smiling

PS: Nepamatujete si někdo, jestli ta vlaječka byla vidět i v Tygrovi? Mám za to, že tam nebyla.

Poslat nový komentář

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.
  • Webové a e-mailové adresy jsou automaticky převedeny na odkazy.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <center> <embed> <img> <table> <td> <tr> <th> <font> <hr>
  • Řádky a odstavce se zalomí automaticky.
  • Textual smileys will be replaced with graphical ones.

Více informací o možnostech formátování

CAPTCHA
Tento dotaz je zde pro otestování zda jste skutečný návštěvník a pro zabránění automatizovaným robotům ve vkládání spamu do komentářů a stránek.