Skim Localization

From SkimWiki

Jump to: navigation, search

Contents

Skim Languages

Skim currently supports the following languages:

  • English
  • Dutch
  • French (thanks to Corentin Cras-Méneur)
  • Spanish (thanks to Alejandro Cámara Iglesias)
  • German (thanks to Jonas Zimmermann)
  • Russian (thanks to Michael Krekin)
  • Italian (thanks to Mauro Mazzieri)

If you want to help translate Skim in another language, or help with one of these languages, please contact us at the users list.

Notes for Localizers

The basic procedure to add a localization to a Cocoa application is described at Apple's Localization Tools page. The main tool to create localization is AppleGlot, which can be downloaded from that page.

An alternative is to use the tools in Localization Suite 3.0 or the iLocalize tool.

As a translator of Skim, you will need a developer account on SourceForge and a working copy the Skim source code. More information about getting the source code can be found on Skim Subversion Repository.

Basic Procedure for Skim Localization Using AppleGlot

  1. Use and setup AppleGlot, for details see the AppleGlot User Guide (in particular starting at page 25)
  2. Create a new AppleGlot environment for Skim, if necessary
  3. Move any previous base and localized bundles to the corresponding _Old location (_NewBase → _OldBase, _NewLoc → _OldLoc), if necessary
  4. Copy a current Skim.app bundle into _NewLoc
  5. Run Actions > Initial Pass from AppleGlot
  6. Translate the Work Glossary
  7. Run the Actions > Incremental Pass and Actions > Final Pass from AppleGlot
  8. Open the .nib packages inside _NewLoc and fix the UI layout using Interface Builder, if necessary
  9. Translate other resource files not handled by AppleGlot (see below)
  10. Try out the localized version of Skim
  11. If you commit to SVN yourself, copy the localized files inside _NewLoc to your working copy, and commit

Localizable Resources Not Handled by AppleGlot

These paths are relative to Skim.app/Contents/Resources/English.lproj/

  • Skim Help/skim.texi and Skim Help/scripts/OpenAppDict.scpt (don't translate the .html files)
  • Credits.rtf

Notes and Tips

  • Keep copies of the previous files and bundles you translated, both the base and localized version. This may help you for incremental updates
  • You can find changes in text files (such as skim.texi) using the FileMerge application that comes with the Developer Tools, or the diff command line tool
  • To see files inside a bundle, you can choose "Show Package Contents" from the contextual menu in Finder
  • To fix the UI layout, open the .nib files in Interface Builder. Use Layout > Size to Fit for text labels, and use Arrow and Shift-Arrow to move elements. Take notice of the layout guides (blue dashed lines).
  • If you submit to SVN: .nib 'files' are actually packages. For localization updates, the actual files inside these packages should be copied to the working copy, not the full .nib packages, as that overwrites the SVN info
  • Also, if you submit to SVN, you should copy the localized files in the Sparkle framework source (from Skim.app/Contents/Frameworks/Sparkle.framework/Resources/<lang>.lproj/, to vendorsrc/andymatuschak/Sparkle/<lang.lproj>/) and in the SkimImporter plugin source (from Skim.app/Contents/Library/Spotlight/SkimImporter.mdimporter/Contents/Resources/<lang>.lproj/, to vendorsrc/SkimImporter/<lang.lproj>/)
  • Here is a small script to copy all files localized using AppleGlot. You should edit it with a text editor to fill in the details relevant for your setup
  • For the layout, you may get some more information from the Apple Human Interface Guidelines.

Basic Procedure for Skim Localization Using Localization Suite

Localization Suite 3 is required (currently in beta)

  1. The developer will prepare localization (.loc) files
  2. Open the localization .loc file(s) using Localizer.app
  3. In the Keys popup, make sure you choose Missing Keys. Also you may need to try some other settings such as Changed Keys and Problematic Keys.
  4. Make sure you Select "trunk", or otherwise all subitems, in the Bundles/Files outline
  5. Translate the strings:
    1. Select a row in the main table
    2. Edit the localized string, either double-click it in the main table or use the Separate Editor near the bottom
  6. Send the updated localization file(s) to the developer
Personal tools