Comments [0]

Poedit, gettext a Háefko

Jedná se repost článku ze starého blogu.

Po večeru hledání se mi konečně podařilo zprovoznit poedit, aby dokázal pořádně „vysosnout“ překlady. A co to má společného s Háefkem?

Díky skvělému editoru Poedit můžete jednoduše upravovat vlastní překlady. Komplikací je, že pokud něco přiděláte, nebo odděláte, je nutné to upravit v překladu hned, než na to zapomenete. Poedit nabízí velmi pěkné řešení, proskenuje váš php kód a všechny výskyty volání funkce gettext zaeviduje a vytvoří vám normální seznam klíčů pro překlad. Rád bych vám dnes ukázal řešení dvou problémů. 1) nastavit poedit, aby kód proskenoval 2) zprovoznit parsování i na jiných voláních funkce pro překlad.

Po instalaci si otevřete „Soubor → Konfigurace …“ a přejděte na záložku „Parsery“, zde editujte parser PHP. Upravte následující vstupní pole:

  • Seznam koncovek oddělených středníky: *.php;*.phtml;
  • Příkaz ke spuštění parseru: xgettext –force-po -o %o %C %K %F -L php

V české překladu je u příkladu koncovek chyba! V příkladu jsou koncovky odděleny čárkou, ale jednotlivé přípony oddělujte středníkem! Než jsem na toto přišel, tak mi to trvalo asi hodinu!

Dále si vytvořte / otevřete katalog. Přejděte na „Katalog → Nastavení“ a záložku „Cesty“. Buď vyplňte základní cestu, a pak přidejte požadované adresáře, nebo rovnou přidejte kompletní cestu k jednomu požadovanému adresář. Dále přejděte na záložku „Klíčová slova“.

Háefku se k překladu používají dvě základní funkce, které jsou aliasy k volání statických metod třídy L10n.

 <?php
     echo __('Translate me!!!');
     echo L10n::__('Translate me!!!');
 
     echo __n('%d comment', '%d comments', $comments);
     echo L10n::__n('%d comment', '%d comments', $comments);
 

Nyní je třeba nastavit Poeditu, že má parsovat také tyto funkce.
Přidejte proto tyto klíče:

  • __
  • __n:1,2

Díky tomuto budou již přeparsovány i tyto volání funkce!

Gettext a množné číslo

Možná jste se lekli, že funkci pro překlad množných čísel předáváme jen dva tvary. Čeština má přece tři! Ale ano, i na toto gettext myslí. Nutno ale podotknout, že je třeba aplikaci vyvíjet v en. V Poeditu pak třeba při vytváření katalogu vyplnit kolonku „Forma plurálů“ tímto obsahem:

nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;

Toto je definice českých plurálů. Nyní se vaše aplikace stává lehce lokalizovatelnou pro veškeré jazyky. Poedit vám pak nabídne vstupy pro překlad všech tří českých verzí.

Restart Apache

Nevím proč, ale když aktualizuji svůj „.mo“ soubor s překladem, musím restartovat Apache, aby se změny projevily.
Tento problém na starém blogu komentoval Roman Sklenář:

To restartování apache je velký neduh gettextu :( Asi jediný způsob jak to alespoň částečně obejít, je přejměnovat .mo soubor a tím Apache oblbnout a donutit ho načíst a nakešovat novou binárku.

Možná by mohlo fungovat i toto: na začátku skriptu/konstruk­toru třídy nastavím jméno .mo souboru na nějaký random a na konci ho nastavím na originál.

Filed under  //   háefko framework   php  

Comments [1]

SOCDEM páárty

Repost ze starého blogu, pač toto video je naprosto geniální.

Filed under  //   politika   ze života  

Comments [0]

PhoB - podpora pro reverzní řazení

Do PhoBu přibyla jedna malá novinka. Nyní lze nakonfigurovat reverzní řazení. Stáhněte si nejnovější verzi ze stránek projektu a v index.php už uvidíte naznačenou konfigurační direktivu:

 $phob->config = array(
     'siteName' => 'PhotoBrowser',
     'skinName' => 'default',
     'showDirup' => true,
     'showExif' => true,
     'reverseOrder' => false,
 );
 

Jednoduše změňte hodnotu klíče reverseOrder na true a PhoB bude řadit fotografie a adresáře pozpátku.

Filed under  //   phob   php   PhpEd   programování  

Comments [0]

Windows 7 po dvou týdnech reálného nasazení

Zkusil bych krátce shrnout, jak jsem spokojen s novými Windows po dvou týdnech reálného nasazení, jeden týden jsem na nic hodně pracoval (programování), druhý jsem se plně zase věnoval školním povinnostem (práce v "terénu", doc, tisk, síť, wifi, propojení s projektorem). A hned z úvodu: jsem nadšen.

Když jsem posledně psal, tak jsem si nevzpomněl na jednu novinku, úplně jsem ji vypustil z hlavy. O to větší bylo překvapení, že jsem na ni došel vlastní zkušeností. Windows 7 šetří mnohem více baterii, notebook mi mnohem déle vydržel. Nemám to nějak spočítané, ale jednoduše vím, že už některé dny nebudu vůbec nosit adaptér. Tedy, velmi pozitivní zkušenost.

Dále se opravdu osvědčilo jednoduché nastavení výstupu obrazu, tedy duplikace, či rozšíření obrazovky. Takhle jednoduše mi to ve Windows Vista nikdy nešlo. Správa wifi je také mnohem příjemnější, samotné připojení se mi zdá rychlejší. Opět bod pro W7.

Po cca dvou týdnech používání jsem si na nové rozhraní naprosto zvykl, jsem spokojen s novinkami a doporučuji všem upgrade. :)

Filed under  //   windows 7   ze života  

Comments [5]

Jaký byl rok 2009

Byl snad stejný jako ty předtím, dobré i nedobré věci. Člověk toho plno, klasicky, nestihl, ale přesto, podařilo se mi udělat a zažít plno dobrých a krásných věcí. V práci jsem se mnohému přiučil a udělal plno zajímavých věcí. Byl tomu také rok, co již dělám ve firmě. A byl to dobrý rok. V průběhu prázdnin jsem mj. navštívil s Lukášem Churým skvělou akci Builder party, opravdu mě to hodně dalo a těším se, že se tam letos s Curem opět vydáme.

Samozřejmě přes rok jsem taky hodně zapracoval na Háefku - mém frameworku. Přes prázdniny jsem doprogramoval průlomovou verzi 0.9, a nyní už jen chvílemi buxfixuji, ale není toho moc. A ano, dokonce skoro tři lidi používají Háefko. A i to udělá radost. Osobně ale už frameworky moc nepoužívám, v práci máme vlastní systém, velmi pěkný framework. Nebojte se ovšem ;) Háefko rozhodně nekončí, čeká ho velká premiéra nasazením jednoho připravovaného projektu pod záštitou programujte.

Ano, programujte.com, v roce 2009 jsem si nenašel příliš času na psaní článků. Zkusím to zlepšit. Minimálně se snažím být aktivním na php foru, které se musí chtě nechtě taky občas pořádně vyčistit. Všichni se samozřejmě těšíme už na Auroru, ale kdy ta přijde, to nevím nikdo.

A osobní život? No to víte, plno srandy :) Ale, jak jistě víte, mám nový mobil a Windows 7, a to je dobrý, ne? Teda, o mobilu zřejmě nevíte, brzy na něj vydám připravenou recenzi. Není to žádný super multi touch, je to klasická Nokia vyšší třídy.

Na závěr bych rád poděkoval vám věrným čtenářům a Zdeňkovi Večeřovi, který mi předal štafetu v bilancování roku 2009.

Filed under  //   ze života  

Comments [0]

PhpEd - normalizace phpdoc komentářů a whitespace

PhpEd považuji za zřejmě nejlepší vývojové prostředí pro PHP aplikace. Suverénně nejlepší debugger, prostředí dělané jenom pro PHP a tak podobně. Ale také má mnoho much, naštěstí, dají se celkem vyřešit. Co mi v PhpEdu chybí, je automatické odstraňování bílých znaků na konci řádků a hnusný formát automaticky generované syntaxe phpdoc bloků.

PhpEd nabízí možnost (od verze professional) možnost vytvořit si php skript a sním "něco" provést. Tento PHP skript lze namapovat také na klávesovou zkratku. Dnes vám představím můj skript, který mi odstraní bílé znaky z konce řádků a dále převede tento škaredý formát phpdoc na ten "hezčí".

// starý formát
/**
* @param string $test
* @return string
*/

// nový formát
/**
 * @param string $test
 * @return string
*/

Jednoduše vytvořte na disku php skript s tímto obsahem:

<?php
$input = file_get_contents('php://stdin');
 
function deleteWhitespace($content)
{
    $lines = array();
    foreach (explode("\n", $content) as $line) {
        $lines[] = rtrim($line);
    }

    return implode("\n", $lines);
}

function insertSpacePhpdoc($content)
{
    return preg_replace('#^(\t+)?\*#m', '\1 *', $content);
}

$input = deleteWhitespace($input);
$input = insertSpacePhpdoc($input);
echo $input;
?>

Následně otevřete menu Settings / Tools / Integration, vytvořte New menu s nějakým rozumným názvem. Nastavte Execute na Shell, do Command vložte:

@php5@ -n -f "d:\www\cesta\k\vasemu\skripu.php"

a dále zatrhněte volby jako je níže na obrázku:

Volitelně vložte klávesovou zkratku. Po přiřazení klávesové zkratky nezapomeňte zkontrolovat/odstranit její vazbu na jinou akci. A to by mělo být vše.

Filed under  //   php   PhpEd  

Comments [2]

Windows 7 naostro

Tak jsem neodolal a na Vánoce si napsal Ježíškovi o Windows 7, konkrétně o upgrade. Mám legální Windows Vista Business, a tak jsem zvažoval upgrade na stejnou úroveň W7 Professional. Cena mě ale málem vyrazila dech. Upgrade na Windows 7 Professional stál přes 6400 korun. To je opravdu, s ohledem na mou OEM verzi, nechutná částka. Za 6800 si v pořídím úplně nové krabicové (neOEM) Windows 7 Proffesional - někdo asi hodně přemýšlel... A tak se stalo, že nyní funguji na verzi Home Premium. A nutno říct, že mně nic z té vyšší sady nechybí. Důkladně jsem změny prostudoval a některé vlastnosti mi dokonce nabízí drivery od výrobce (Lenovo) mého notebooku zdarma.

Prvně jsem nainstaloval 64 bit verzi. Je to cool, tak proč to nezkusit, že. Bohužel, první problém na sebe nenechal dlouho čekat. Do firmy potřebuji Cisco VPN klienta a co se nestane, Cisco s VPN klientem pro W7 64b prostě nepočítá, a to ani do budoucna. Hledání náhrady se sice nějak podařilo, až na to, že náhrada neuměla uložit heslo od VPN tunelu, což tedy odmítám denně zadávat. Při představě, že takhle budu muset řešit v budoucnu další problémy, jsem raději systém ještě ten den přeinstaloval. Nyní jsem opět spokojený uživatel 32 bitové verze ;)

Zkusím shrnout z čeho jsem nadšen, co se mi líbí:

  • správa wifi, připojení k síti, je to zase dál, než ve Vistách, samozřejmě, ještě je tu prostor pro inovaci
  • nový taskbar - koncept se mi líbil již od začátku, po dni používání jsem spokojen, nemám problém
  • grafika - jsem takovej "design-úchyl", takže to, že se mi něco moc líbí mi opravdu zlepšuje náladu při práci s počítačem
  • vyhledávání ve start menu - líbí se mi ta vychytávka, že se roztáhne okýnko a je to ho více vidět
  • jednoduchá správa rozšíření/duplikování plochy (mám dostupné pod Fn+F7) - na Vistách to myslím bylo taky, ale moc mi to nefungovalo
  • možnost nasunutí okna k okrajům ho maximalizovat, respektive vyplnit polovinu obrazovky
  • doplněno: naprosto bezkonkurenční je kalkulačka
  • a to je zatím vše :)

Dále jsem také z nějakých věcí zklamán, nelíbí se mi:

  • kontextová nabídka na task baru - stará klasika zmizela, ta nová je divná, daleko od kliku k zavření okna aplikace
  • čekal jsem trochu lepší výkon než Visty, nedostavil se; rozhodně se ale nejedná o zpomalení
  • u MS Office 2007 nefunguje "odtažení okna z maximalizovaného režimu"
  • některé programy nejsou připraveny na nový taskbar - zbytečně se schovávají do tray, je v tom zmatek - to se snad ale brzy změní

Ve výsledku jsou mé pocity veskrze pozitivní, Sedmičky vypadají opravdu dobře. Někdy později sepíši podrobnější recenzi.

Filed under  //   windows 7   ze života  

Comments [1]

Dopravní podnik a jeho web

Jak jistě všichni Brňáci zaznamenali, od prvního nám chcou pěkně přistřihnout křídla - tedy minimálně ti z dopravního podniku. Mě, Sobuláka, se to bude týkat hodně, protože jednou z velmi okleštěných částí je právě Brno - Sever. A tak jsem nazlobený napsal email, kde jsem si postěžoval. Připojil jsem v něm i stížnost na nefunkčnost adresy http://dpmb.cz - funguje pouze http://www.dpmb.cz.

Z mého emailu:

3) Vase stranky jsou jiz nejaky ten mesic nepristupne na adrese http://dpmb.cz
Jako clovek z oboru toto povazuji za naprostou neschopnost administratoru a vasich webovych spravcu.
Prosim o upravu.

Po pár dnech mi přišla odpověď, kde mi bylo panem Homolou vysvětleno, že to není možné z technických důvodů:

Z technických důvodů je nutné zadávat úplný tvar našich webových stránek www.dpmb.cz .

A tak do dopadá, když chcete pomoci někomu zlepšit jeho služby... A na závěr, kdyby vás ještě zajímalo, co se stane, když zadáte adresu bez www:

Filed under  //   internet   ze života  

Comments [0]

Eclipse a ftp

Začal jsem se shánět po nějakém tom PHP IDE. Od PHP IDE vyžaduji znalost funkcí, inteligentní napovídání typu $myobject->myfunction()-> a hlavně příjemné prostředí. Ono shánění popudila potřeba editovat soubory skrze ftp, což můj dřívější editor Intype jaksi nezvládá (přesto jej považuji za nejlepší programátorský editor).

Vyzkoušel jsem Zend Studio for Eclipse, jeho trial verzi. A ejhle, splňovalo vše , co jsem potřeboval. FTP klient, inteligentní doplňování apod. Zend Studio ale mělo jedno velké mínus – $99. Má úvaha se ubírala touto cestou: samotné Eclipse PDT + ftp plugin = mé využití ZS for Eclipse. Z toho nám krásně plyne, že stačí sehnat jen plugin pro ftp. Eclipse bohužel nic takového v čisté instalaci nemá. To bude snadné, pomyslel jsem si. Nebylo!

Schválně, podívejte se na výsledky hledání googlu. Ono řešení, které jsem viděl v Zend Studiu se mi velmi zamlouvalo. Nechci žádný import z ftp a následnou postsynchronizaci. Požaduji: klik, edit, ctrl + s, automatický commit. Výsledky z hledání – mizivé. Už jsem nedoufal, když vtom!, ano, jedenáctá stránka výsledku dotazu odhalila řešení popsané na jednom fóru.

Postup nainstalování je následující:
Menu: Help → Software updates → Find and install → Search for new features. Zaškrněte „The europa discovery site“. Tlačítko „Finish“. Zaškrněte „The remote system explorer items“. Nainstalujte. Menu: Window → Open perspective a vyberte „Remote system explorer“.

Tento článek byl znovupublikován ze starého blogu. V dnešní době používám NuSphere PhpED, který se nedá s open source/free řešeními srovnávat.

Comments [2]

About

programátor, webdesignér, klavírista, varhaník (začínající ;), student gymnázia