Code Search for Developers
 
 
  

studioLocalization.html from LiveSupport at Krugle


Show studioLocalization.html syntax highlighted

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=UTF-8" http-equiv="content-type">
  <title>Campcaster documentation for LS Studio localization</title>
  <meta content="$Author: paul $" name="author">
</head>
<body>
<h1>Preface</h1>
This document is part of the <a href="http://campcaster.campware.org/">Campcaster</a>
project, Copyright © 2004 <a href="http://www.mdlf.org/">Media
Development Loan Fund</a>, under the GNU <a
 href="http://www.gnu.org/licenses/gpl.html">GPL</a>.<br>
<ul>
  <li>Author: $Author: paul $</li>
  <li>Version: $Revision: 2373 $</li>
  <li>Location: $URL: svn://code.campware.org/livesupport/trunk/campcaster/doc/studioLocalization.html $</li>
</ul>

<h1>Scope</h1>
This document describes the process of adding a new language to the
Campcaster Studio localization.  It is written for developers.<br>

<h1>Introduction</h1>
Campcaster Studio (a.k.a. the C++ GUI) uses IBM's
<a href="http://www-306.ibm.com/software/globalization/icu/index.jsp">ICU</a>
library for localization.  This library supports a fallback mechanism:
if the locale is set to <b>es_GT</b> (Guatemalan Spanish), it first tries to
read the <b>es_GT</b> table for localized strings; if there is no such table,
it tries the <b>es</b> table; and if that is missing, too, it reads the
<b>root</b> table.<br>
These tables are stored as UTF-8 text files (with Unix line breaks, i.e., a
single 0x0A character at the end of each line) in the
<code>products/gLiveSupport/var</code> directory with a <code>txt</code>
extension: e.g., <code>es_GT.txt</code>.
Before these files can be used by the program, they need to be converted into
binary <i>resource bundle</i> files using ICU's <code>genrb</code> program
(which is in <code>usr/bin</code>, and is called by the Makefile).

<h1>Modifying an existing language</h1>
<ul>
    <li>Edit the text file (e.g.,
            <code>products/gLiveSupport/var/es_GT.txt</code>).</li>
    <li>Run <code>make</code> in <code>products/gLiveSupport</code>.</li>
</ul>

<h1>Adding a new language</h1>
<ul>
    <li>Add the new text file to <code>products/gLiveSupport/var</code>.
        (See the
<a href="http://icu.sourceforge.net/userguide/localizing.html#ICU4C">ICU
        user guide</a> for the format of this file.)<br>
        The first row of the file should be the locale name, followed by
        ":table".  The locale name is of the form
<code>&lt;language-code&gt;[[_&lt;country-code&gt;]_&lt;variant&gt;]</code>,
        where
        <ul>
            <li><code>&lt;language-code&gt;</code> is the
<a href="http://www.loc.gov/standards/iso639-2/langcodes.html">ISO 639-1</a>
                2-letter language code in lowercase,</li>
            <li>the optional <code>&lt;country-code&gt;</code> is the
<a href="http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html">ISO 3166-1</a>
                2-letter country code in uppercase, and</li>
            <li>the optional <code>&lt;variant&gt;</code> is the variant
                (usually EURO or CYRILLIC) in uppercase.</li>
        </ul>
        Note that this is slightly different from the normal ISO standard:
        ICU uses it_IT_EURO where the standard would be it_IT@euro.<br>
        Make sure the file is in UTF-8 encoding, has Unix line breaks,
        and does not have a
        <a href="http://www.unicode.org/faq/utf_bom.html#BOM">BOM</a>
        character at the beginning.<br>
        The file name should be the locale name, followed by ".txt".
    <li>Add a new line for the new language in each of the files
        <ul>
            <li><code>campcaster-studio.xml</code></li>
            <li><code>campcaster-studio.xml.template</code></li>
            <li><code>campcaster-studio.xml.user-template</code></li>
            <li><code>Makefile.in</code></li>
        </ul>
        in the <code>products/gLiveSupport/etc</code> directory.</li>
    <li>Run <code>configure --prefix=...</code> and then
        <code>make clean all</code>
        in the <code>products/gLiveSupport</code> directory.
</ul>
<br>
</body>
</html>




See more files for this project here

LiveSupport

LiveSupport is a radio playout and automation system. It enables radio stations to automate their broadcasts by using playlists that are scheduled for airing. Playlists can contain music, talk, or even other playlists. A Web interface is included, so radio station personnel can manage the the station's broadcasts remotely.

Project homepage: http://www.campware.org/en/camp/livesupport_news/
Programming language(s): C++,PHP,Shell Script,XML
License: gpl2

  db/
    dbSchema.sql
  developmentEnvironment/
    templates/
      Bar.cxx
      Bar.h
      Makefile
      configure.ac
      htmlDocumentTemplate.html
      phpScriptTemplate.php.txt
      phpScriptTemplate.phps
      shellScriptTemplate.sh
    autoconfConfigureConventions.html
    buildEnvironment.html
    cxxHeaderFileConventions.html
    cxxSourceFileConventions.html
    directoryStructure.html
    fileConventions.html
    htmlFileConventions.html
    index.html
    installation.html
    makefileConventions.html
    phpFileConventions.html
    shellScriptConventions.html
  doxygen/
    .keepme
  gui/
    designs/
      advancedsearch.gif
      editfile.gif
      index.html
      info.gif
      livemode.gif
      login_upload.gif
      playlist_list_view.gif
      playlist_timeline_view.gif
      scheduler_day.gif
      scheduler_week.gif
      simple-browser.gif
      uploadstream.gif
    c_gui_finaltimetable.xls
    htmlPageDescription.rtf
    metadataFields.html
    styleguide.pdf
    tec_doc_t3293_tcm6-10494.pdf
    windowDescription.rtf
  manual/
    LiveSupport Studio manual.sxw
    index.html
    manual_htm_159b8718.jpg
    manual_htm_3098a412.jpg
    manual_htm_4d262ba6.png
    manual_htm_59ef6c7.jpg
    manual_htm_5f12d0a5.jpg
    manual_htm_6e566889.png
    manual_htm_7c768cd8.png
    manual_htm_b09f4d5.jpg
    manual_htm_m3d23fe65.png
    manual_htm_m59d803c0.jpg
    manual_htm_m6e4aac82.jpg
    manual_htm_m75ba079b.png
    manual_htm_m79fcafa8.jpg
  model/
    Authentication/
      Authenticateuser_SequenceDiagram.svg
      Concepts.svg
      EssentialUseCases.svg
      Systembehaviour.svg
      index.html
    LocalStorage/
      Accessplaylist_SequenceDiagram.svg
      Accessrawaudiodata_SequenceDiagram.svg
      Concepts.svg
      Createplaylist_SequenceDiagram.svg
      Deleteaudioclip_SequenceDiagram.svg
      Deleteplaylist_SequenceDiagram.svg
      Editplaylist_SequenceDiagram.svg
      EssentialUseCases.svg
      Searchinmetadata_SequenceDiagram.svg
      Storeorupdateaudioclip_SequenceDiagram.svg
      Systembehaviour.svg
      UpdateAudioclipmetadata_SequenceDiagram.svg
      index.html
    MediaArchive/
      Concepts.svg
      DeleteAudioclip_SequenceDiagram.svg
      Downloadrawaudiodata_SequenceDiagram.svg
      EssentialUseCases.svg
      Searchinmetadata_SequenceDiagram.svg
      StoreorupdateAudioclip_SequenceDiagram.svg
      Systembehaviour.svg
      UpdateAudioclipmetadata_SequenceDiagram.svg
      index.html
    PlaylistEditor/
      AddanAudiocliptoLocalstorage_SequenceDiagram.svg
      AddanAudiocliptoaPlaylist_SequenceDiagram.svg
      AddorupdateanAudiocliptoMediaarchive_SequenceDiagram.svg
      Concepts.svg
      CreateaPlaylist_SequenceDiagram.svg
      DeleteanAudioclipfromLocalstorage_SequenceDiagram.svg
      EditthetransitionofanAudioclip_SequenceDiagram.svg
      EssentialUseCases.svg
      ListentoaPlaylist_SequenceDiagram.svg
      Maintainconfigurationinformation_SequenceDiagram.svg
      MirroranAudioclipfromaremoteMediaarchiveinLocalstorage_SequenceDiagram.svg
      MovethepositionofanAudioclipinaPlaylist_SequenceDiagram.svg
      SearchforAudioclips_SequenceDiagram.svg
      Systembehaviour.svg
      UpdateanAudioclipinLocalstorage_SequenceDiagram.svg
      UploadaPlaylisttoaSchedulerdaemon_SequenceDiagram.svg
      index.html
    Scheduler/
      Concepts.svg
      Createplaylist_SequenceDiagram.svg
      Editplaylist_SequenceDiagram.svg
      EssentialUseCases.svg
      Manageplaylists_SequenceDiagram.svg
      Manageschedule_SequenceDiagram.svg
      Retrieveremotefiles_SequenceDiagram.svg
      Reviewplaylog_SequenceDiagram.svg
      Startstopscheduler_SequenceDiagram.svg
      Systembehaviour.svg
      Uploadplaylists_SequenceDiagram.svg
      index.html
    SoftwareArchitecture/
      PlaylistEditorArchitecture.svg
      SchedulerArchitecture.svg
      SoftwareArchitecture.zuml
      index.html
    Architecture.svg
    LiveSupport.zuml
    index.html
  phpdocs/
  quickstart/
    index.html
    livesupport_logo_blends.png
    outline_clouds.jpg
  developmentTools.html
  gettingStarted.html
  index.html
  install.html
  installUbuntu.html
  ls_pref.html
  preferences.html
  release.html
  repositoryCdHowto.html
  studioLocalization.html
  userLocalizationInstructions.html