Aktualizace češtiny, ve které jsou změny provedené administrátorem

Zde můžete stáhnout můj alternativní a neformální překlad phpBB 3.1, diskutovat o něm a hlásit problémy, na které v něm narazíte.
Odpovědět Téma
Avatar uživatele
leschek
Administrátor
Reakce:
Příspěvky: 724
Registrován: 23 Říj 2005 23:22
Tykání: Ano
Kontaktovat uživatele:

Aktualizace češtiny, ve které jsou změny provedené administrátorem

Nepřečtený příspěvek od leschek »

Aktualizace češtiny, ve které jsou drobné změny provedené administrátorem

Aktualizace phpBB 3.1 na novou verzi s sebou obvykle přináší i změny v jazykových souborech, což nevadí, když administrátoři nemají v jazykových souborech žádné svoje vlastní úpravy. V tom případě jim stačí stáhnout aktualizovaný balíček s překladem a nahradit jím ten původní. Pokud ale nějakou svoji vlastní úpravu v překladu admin provede, může aktualizace jazyka nějakou chvíli trvat. V tomto článku se pokusím popsat různé způsoby, kterými to jde urychlit a usnadnit.

Notepad++ #

Notepad++ je jeden z textových editorů, které jsou doporučené pro úpravy phpBB souborů. Notepad++ je grátis a existuje i v portable verzi, takže běží třeba i z flešky nebo externího hard disku (což má taky výhodu při přeinstalaci systému, kdy není potřeba programy znovu instalovat, ale stačí připojit hard disk, na kterém jsou nainstalované).

Tento postup se hodí, pokud je v nové verzi překladu (na kterou se aktualizuje) více změn než kolik je těch vlastních v původní verzi překladu (která je nainstalovaná ve fóru). Funguje to tak, že se nahradí původní (uživatelem upravený) překlad novým překladem a vlastní změny se pak rychle vyhledají v souborech pomocí notepadu++ a provedou se znovu.

V notepadu++ jde vyhledávat ve složkách se soubory pomocí příkazu "Najít" - "Najít v souborech", který funguje i na podsložky, takže jde vyhledat slovo nebo fráze ve všech souborech překladu najednou.

408

Kde jsou důležitý políčka:
  • Najít - vyhledávané slovo. Protože chci najít slovo "obrázek" (a různé tvary tohoto slova, které mohly vzniknout skloňováním atd.), napsal jsem jen základ slova - "obráz" - , což by snad mělo pokrýt všechny možnosti.
     
  • Adresář - složka, ve které chci hledat
     
  • Hledat pouze celá slova - bude brát to moje "obráz" jako celé slovo a nenajde nic, protože se slovo "obráz" v překladu nevyskytuje.
     
  • Rozlišovat malá a VELKÁ písmena - najde něco jiného, když napíšu "Obráz" (s velkým O) a něco jiného, když napíšu "obráz" (s malým o).
     
  • Ve všech podadresářích - Pokud nebude zatrženo, bude prohledávat jen vybraný adresář. Pokud je souborů hodně (např. při prohledávání celé phpBB složky) tak může vyhledávání nějakou dobu trvat.
     
  • Další nastavení jsem nikdy nepoužil a mám ho tak jak je na obrázku.
Po ukončení vyhledávání se dole zobrazí řádky s nalezenými a označenými slovy ve všech souborech, které jsou v zadané složce:

409

a po kliknutí na ně se otevře správný soubor na správném místě, takže se nemusí soubory s nalezenými slovy procházet a stačí jen slova nahradit za ty svoje.

Pokud se slovo nachází na řádku několikrát, je každé nalezené slovo zobrazeno ve výsledcích vyhledávání na novém řádku. Řádky jsou ale označeny číslem, tak je jasný, že je na jednom řádku více nalezených slov.

Po změně (nahrazení) slova se změněný řádek z výsledků vyhledávání neztratí, ale zůstane tam v podobě v jaké byl před změnou slova (např. když změním v nějakém řádku svoje "obráz" na "image", tak ve výsledcích vyhledávání bude pořád řádek s "obráz", ale po kliknutí na něj se mi otevře řádek s už upraveným slovem, tedy "image"). Při velkém množství výsledků vyhledávání se může stát, že se některý řádek přeskočí a lepší než si pamatovat, který řádek jsem už upravil a který ne, je provést nové vyhledání stejného výrazu, které najde jen ty zatím neupravené původní výrazy.

V notepadu ++ jdou slova i automaticky nahradit, ale to jsem nezkoušel, protože mám pocit, že by to mohlo vytvořit nějaké chyby (např. při skloňování) a proto raději nahrazuju slova manuálně.

Porovnání souborů pomocí Winmerge #

WinMerge je program, který umí porovnat soubory (a složky se soubory) a najít v nich a zvýraznit rozdíly. To umí asi i jiné programy, ale WinMerge je grátis a existuje i jako portable verze. Tento program už nebyl dost dlouho aktualizovaný, ale běží i na win 8.1 a pro porovnání phpBB souborů stačí.

Tento postup se hodí, pokud je v nové verzi překladu méně změn než kolik je těch vlastních. V tomto případě se pouze doplní do původního překladu upravené řádky z nového překladu.

V krátkosti se s WinMerge pracuje tak, že se porovnají anglické jazykové balíčky z původní verze s verzí novou. Nalezené rozdíly se pak najdou v překladu a z nové verze se doplní do té původní (v notepadu++).

Podrobný návod

V následujícím návodu je postup, který používám v podstatě u všech aktualizací překladů a nezáleží na tom, jestli je to MOD, rozšíření, nebo překlad celého phpBB.
Otevřete WinMerge a klikněte na "Soubor" - "Otevřít...", což otevře následující okno:

410

Kde:
  • Vlevo - soubor, nebo složka , která bude v porobnání na levé straně (obvykle tam dávám starší - původní verzi angličtiny).
     
  • Vpravo - stejné jako předchozí, ale soubor nebo složka bude zobrazená napravo.
     
  • Filtr - nechat výchozí
     
  • Včetně podsložek - pokud tohle políčko zatrhnete, tak se porovnají i podsložky a ve výsledku porovnání budou zobrazeny všechny soubory pod sebou, což se hodí pro kontrolu složek, které mají podsložky.

    Pokud políčko nezatrhnete, tak se porovnají jen soubory ve vybrané složce, ale už ne soubory v podsložkách.

    Ačkoliv může být zobrazení všech souborů (i s podsložkama) trochu méně přehledné, tak podle mého názoru je to lepší, protože člověk vidí všechny soubory, které ve kterých jsou rozdíly a nemusí se postupně proklikávat podsložkama a mít strach, že na nějakou zapomene. Takže osobně to mám vždycky zatržený.
Jak už jsem napsal, porovnávají se anglické soubory (původní - angličtina nainstalovaná na fóru a nová angličtina, na kterou chci aktualizovat) . Kdybych porovnával ty české, tak se mi zobrazí i změny, které jsem provedl na překladu, což je zbytečné, protože by se ty soubory musely projít (zbytečná práce).

Po kliknutí na tlačítko OK se zobrazí okno se s výsledkem porovnání:

411

Kde jsou nejdříve zobrazeny soubory, které se liší. Tyto soubory mají červenou ikonu a pod výsledkem porovnání je text oznamující, že "Textové soubory jsou rozdílné".

Za těmito soubory jsou soubory, které jsou shodné. Jsou označeny nazelenalou ikonou a textem, že jsou shodné.

Úplně dole jsou soubory, které přebývají nebo chybí. Jejich ikona je namodralá a vypadá jako utržený papír. Text pak oznamuje, na které straně (vpravo nebo vlevo) se soubor nachází, díky čemuž víte, jestli je to soubor nový (který je nutno doplnit), nebo je to soubor, který je navíc a má se smazat.

412

Soubory, ve kterých jsou rozdíly se musí upravit. Dvakrát klikněte na jeden ze souborů s rozdíly, což otevře následující okno:

413

ve kterém jsou tři sloupečky. V úzkém sloupečku nalevo je přehledně zobrazeno, kde jsou v souboru rozdíly (šedé a žluté proužky). V dalších dvou sloupečcích jsou zobrazeny původní a nový soubor. Rolovat jde v úzkém i v širokých sloupečcích. Kliknutí na určité místo v úzkém sloupečku přeroluje na to místo i široké sloupečky:

414

Pokud vezmu předchozí obrázek jako příklad, vidím, že v novém souboru search.php je nový řádek 'NO_SEARCH_LOAD', který musím doplnit do svého původního souboru, takže otevřu původní, teď už český soubor v notepadu++ a najdu v něm část předchozího řádku (kterou zkopíruju z WinMerge), která je stejná ve všech jazykových souborech 'NO_SEARCH_RESULTS'.

Notepad++ část řádku najde a já vím, že za tento řádek musím zkopírovat z nové verze českého překladu řádek začínající na 'NO_SEARCH_LOAD', čímž aktualizuju svůj soubor.
  • Poznámka: Pozor na to, že číslo řádku v anglickém jazykovém souboru nemusí odpovídat řádku českému. Není to chyba překladu, ale je to způsobeno tím, že v češtině používáme více tvarů množného čísla než v angličtině, takže v českých souborech je často více řádků než v anglických souborech.
To opakuju tak dlouho, dokud neupravím všechny soubory. Pokud je v jazykovém balíčku nějaký soubor nový, tak ho zkopíruju z nové verze překladu do té původní. Pokud soubor v nové verzi neexistuje, tak ho smažu z té původní.

Občas se může stát, že se nepřidává, nebo nemaže celý řádek, ale že je na řádku změněno několik slov. To je pak ve WinMerge zobrazeno takhle:

415

V tomto případě můžete nahradit celý řádek, pokud na něm není žádná vaše vlastní úprava, nebo budete muset řádek projít a upravit ho na novou verzi, pokud na něm vaše úprava překladu je.

Automatická úprava souborů během aktualizace #

Tento postup lze použít kdykoliv, ale asi nemá smysl, pokud se aktualizuje jen pár řádků.

Protože je překlad součástí phpBB (není to rozšíření) mělo by jít (a podle testu to jde) přidat překlad do automatické aktualizace, takže soubory překladu budou zkontrolovány stejně jako ostatní soubory fóra. V tomto případě ale budete muset upravit aktualizační soubor a přidat původní a nové české soubory do aktualizace.

Taky budete potřebovat automatický aktualizační balíček, který můžete stáhnout na phpBB.com, a který budete pro aktualizaci fóra stejně potřebovat.

Podrobný návod

V aktualizačním balíčku otevřete soubor install/update/index.php (vedle něho jsou složky new a old), ve kterém uvidíte seznam souborů, které se aktualizují (vybral jsem jen jazykové + několik dalších kolem nich):

Kód: Vybrat vše

'files'		=> array(
		...
		'includes/functions_posting.php',
		'includes/message_parser.php',
		'language/en/acp/common.php',
		'language/en/acp/permissions.php',
		'language/en/acp/search.php',
		'language/en/install.php',
		'language/en/search.php',
		'mcp.php',
		'memberlist.php',
...
Pokud chcete, aby se automaticky aktualizovaly i české soubory, musíte soubory, ve kterých jsou rozdíly, přidat do tohoto seznamu. Tím dáte phpBB vědět, které soubory se mají zkontrolovat.
  • Poznámka: Pozor na to, že v alternativní a neformální češtině můžou být upravené i jiné soubory, než jenom ty odpovídající anglickým. Důvodem jsou opravy chyb, drobné změny atd. Při vydání překladu se pokusím tyto soubory vypsat.
Pokud budou v českém překladu upraveny soubory:

language/cs_alt/acp/common.php
language/cs_alt/acp/permissions.php
language/cs_alt/acp/search.php
language/cs_alt/install.php

musíte tyto soubory přidat do seznamu (nejlíp za anglické jazykové soubory) takže dostanete následující:

Kód: Vybrat vše

'files'		=> array(
		...
		'includes/functions_posting.php',
		'includes/message_parser.php',
		'language/en/acp/common.php',
		'language/en/acp/permissions.php',
		'language/en/acp/search.php',
		'language/en/install.php',
		'language/en/search.php',
      'language/cs_alt/acp/common.php',
      'language/cs_alt/acp/permissions.php',
      'language/cs_alt/acp/search.php',
      'language/cs_alt/install.php',
		'mcp.php',
		'memberlist.php',
...
Nově přidané soubory musí být napsány stejně jako ty ostatní, tak nezapomeňte na jednoduché uvozovky a čárku. Pokud se vám to podaří, tak se můžete během aktualizace dočkat nepříjemných chyb.

Soubory, které napíšete do seznamu musíte ještě fyzicky vložit do složek new a old (samozřejmě do správných podsložek např. new/language/cs_alt/acp/common.php).

Do složky new vložíte nové verze souborů a do složky old vložíte pochopitelně původní soubory, které používáte na vašem fóru.
  • Poznámka: Z testů se zdá, že se soubory nemusí vybírat, ale jde do složek vložit všechny soubory z jazykového balíčku. Soubory které se mají zkontrolovat jsou v souboru install/update/index.php, který jsem upravovali před chvílí. Pokud ale vložíte všechny soubory, tak je taky budete muset nahrát na server, což by teoreticky mohlo někomu vadit.
Tím je aktualizační balíček připraven a zbytek už by měl proběhnout jako normální aktualizace fóra, během které si můžete zkontrolovat, jestli se aktualizují i vámi přidané soubory. Pokud dojde ke konfliktům, tak se podívejte na konfliktní soubory (odkaz "Zobrazit sloučené rozdíly" u vámi vybrané verze sloučení) a konflikty vyřešte. Občas se může stát, že se přepíše vaše úprava a v tom případě si zapamatujte, na kterém řádku k tomu došlo a po aktualizaci tam vaši úpravu dopište. Příklad do původního textu phpBB jsem přidal v původní verzi souboru na řádek, který se v nové verzi upravuje "bla bla" (druhý řádek ve sloupečku vlevo):

416

phpBB řádek upraví na novou verzi, ale nedokáže si poradit s mou úpravou ("bla bla" není na pravé straně, kde je zobrazeno jak bude vypadat soubor po aktualizaci), takže ji musím do souboru dopsat po aktualizaci.
  • Poznámka: Všimněte si na předchozím obrázku nahoře vpravo, že mám vybraný způsob porovnání "Vedle sebe", který není výchozí.
Odpovědět