Microsoft PowerPoint - pg-nls-84.ppt

Similar documents
自己紹介 岩松信洋 (IWAMATSU Nobuhiro) Linux カーネル開発をしています (Renesas SH) U-Boot のSHアーキテクチャメンテナしています Debian の開発に参加しています Debian Maintainer / Debian JP Project Lead

メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 Copyright 2007 SRA OSS, Inc. Japan All right

Sophos Enterprise Console

PowerGres on Linuxマニュアル

A : kerl kerl Erlang/OTP Erlang/OTP 2 2 Elixir/Phoenix URL 2 PDF A.2 Bash macos.bash_profile exp

新コンフィギュレータのフレームワークについて

多言語ドメイン名の実装 mdnkit 石曽根信 ( 株 ) SRA 2001/12/04 日本語ドメイン名解説 / mdnkit 1 mdnkit 多言語ドメイン名を扱うためのツールキット 正規化 エンコード変換等を提供するライブラリとコマンド 既存アプリケーシ

別紙 : 検証環境の構築手順 ( 章 ) 1. サーバ設定 1.1 IP アドレス設定 サーバは以下の 6 台を用いる pgpool-ii サーバ 2 台 DB サーバ 3 台 上位サーバ 1 台 OS は全サーバで CentOS 6.4 x86_64 とする pgpool-ii のサー

Microsoft PowerPoint - スハ?コン利用入門_ _UNIX利用の基礎知識.pptx

演習に必要な

PostgreSQL

PowerGres on Linux HAマニュアル

情報処理概論(第二日目)

7th CodeGear Developer Camp

( ) Shift JIS ( ) ASCII ASCII ( ) 8bit = 1 Byte JIS(Japan Industrial Standard) X 0201 (X ) 2 Byte JIS ISO-2022-JP, Shift JIS, EUC 1 Byte 2 By

Getting Start mdc (Mail Destination Confirm) Getting Start mdc (Mail Destination Confirm) Rev /11/3 目次 Getting Start mdc (Mail Destination Con

4 ソースからのインストール

PostgreSQL Plus 管理者ガイド

Microsoft PowerPoint - InfPro_I6.pptx

システムパッケージリリース情報-Version5.0.0pre

ソフトウェアエンジニアリング - 機能 #54

HeartCoreインストールマニュアル

appli_HPhi_install

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

1. 検証概要 目的及びテスト方法 1.1 検証概要 PostgreSQL はカルフォニア大学バークレー校で開発された POSTGRES, Version 4.2 をベースにしたオープンソースのリレーショナルデータベース管理システムです PostgreSQL はオープンソースでありながら 商用リレー

Microsoft Word - MOPatch-1.doc

Intel MPI Library Linux

Appendix

c h a p t e r 6 $ rpm -q glibc glibc vl2 [glibc 2.1]Vine 2.0beta2 glibc [glibc 2.0]Vine 1.1 ftp://ftp. vinelinux.org/ # rpm -ivh post

目次 1. 動作環境チェック 動作必要環境 Java のインストール Java のインストール Firebird のインストール Firebird のインストール Adobe Reader のインストール

ADempiere (3.5)

PowerPoint プレゼンテーション

WEBシステムのセキュリティ技術

演習に必要な

# # MongoDB のインストール # # 1. ダウンロード 以下のホームページから MongoDB をダウンロード (Mac,Linux) mongodb-linux

Chromeleon 6 for Chromeleon 6.8 SR15 Build: --- 新しいシーケンスの作成に使用できるワークリストファイル (.wle) Doc. Nr: CM6_68150_0020 Doc. Ver.: Doc. Type: Guide

昨年度までの研究紹介 および 研究計画

オープンソース・ソリューション・テクノロジ株式会社 会社紹介

TC5.ids

Microsoft Word - CBSNet-It連携ガイドver8.2.doc

OpenAM 9.5 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 更新日 : 2013 年 7 月 19 日 リビジョン : 1.8

オフラインメンテナンス説明書-ver5.0.0

Solaris10 ZFS+Sambaソリューション

momentum Probe Type-R/C version 4.21 build-a04a Release Notes Release Version: momentum Probe Type-R/C version 4.21 build-a04a Release Date: 2018/06/2

フィルタとは

HULFT-DataMagic Ver2.2.0 製品対応OS

ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spar

PostgreSQLによる データベースサーバ構築技法

rndc BIND

Intel Integrated Performance Premitives 4.1 Linux

LetItB Installation Manual - Japanese version


PowerPoint Presentation

PostgreSQL の特徴 Copyright 2008 SRA OSS, Inc. Japan All rights reserved. 2

Microsoft PowerPoint - 第5章補足-DB2組み込みSQL.ppt

PowerGres on Linuxマニュアル

ネットワークシステム管理 #01

SOC Report

wide94.dvi

改訂履歴 初版 2004 年 1 月 23 日 新規作成 2 版 2004 年 2 月 3 日 フォントの設定 を追加 3 版 2004 年 7 月 13 日 リソースファイルのダウンロード を追加 バージョン番号表記を変更 4 版 2005 年 11 月 21 日 リソースファイルのダウンロード

ユーザ デバイス プロファイルの ファイル形式

johokiso-char.pdf.pdf

Helix Swarm2018.1アップグレード手順


Microsoft PowerPoint - Kozos12step_

本チュートリアルについて 14 部構成 比較的簡単なトピックから 各回 プログラミング言語 任意 チュートリアルで 新しい内容 宿題 プログラミング演習 次の週 結果について発表 もしくは話し合いをする スライドは Python で Python, C++, Java, Perl についての質問い答

slide5.pptx

intra-mart Accel Platform

Helix Swarm2018.1インストール手順

はじめに このドキュメントではftServerに関する障害調査を行う際に 必要となるログ データの取得方法を説明しています ログ データの取得には 初期解析用のデータの取得方法と 詳細な調査を行うときのデータ取得方法があります 特別な理由でOS 側のログが必要となった場合には RHELログの取得につ

スライド 1

PowerPoint Presentation

ネットワークシステム管理 #01

Red Hat Enterprise Linux 6 Portable SUSE Linux Enterprise Server 9 Portable SUSE Linux Enterprise Server 10 Portable SUSE Linux Enterprise Server 11 P

日医標準レセプトソフト クラウド版の構築手順

0_テキストマイニング環境構築_mac

intra-mart FormatCreator Version6.1

Maple 12 Windows版シングルユーザ/ネットワークライセンス

<4D F736F F F696E74202D E3F FC96E55F F554E CC8AEE D8EAF2E B8CDD8AB B83685D>

GettingStartedTK2

設定ファイル R 起動時に読み込まれ, R における種々の設定を項目別にファイルに記述してあります R の主な設定ファイルは Rconsole, Rdevga, Renviron, Rprofile の 4 つです いずれもテキストファイルですが, 改行コードが Windows のものと異なる場合が

オートビュー

この時お使いの端末の.ssh ディレクトリ配下にある known_hosts ファイルから fx.cc.nagoya-u.ac.jp に関する行を削除して再度ログインを行って下さい

目次 1. はじめに 本書対象者 PALRO のアプリケーションについて Ubuntu 8.04LTS の入手について Linux 上での開発環境の構築 事前準備 Ubuntu のインストール..

HeartCore(PHP 版 ) インストール手順について説明いたします なお 本資料は 例として下記内容を前提として説明しております 環境情報 対象 OS: Linux ( ディストリビューション : Red Hat Enterprise Linux Server) APサーバ : Apache

HeartCoreインストールマニュアル(PHP版)

1 ログインとログアウト 1.1 ログイン ログイン画面で [ password ] 欄にパスワードを入力します (図 1) 図 1 ログイン画面 正しくログインができると Ubuntu のデスクトップ画面 図2 が表示されます 図2 Ubuntu デスクトップ画面 2

Taro-cshプログラミングの応用.jt

ClearCase - SD4_JP

DCL intro Manual for Ubuntu11.10

プリンタードライバーのインストール 本機では Linux 用プリンタードライバーをコンピューターにインストールするためのインストーラー (RPM パッケージ ) を用意しています このインストーラーを使用して プリンタードライバーのインストール およびアップグレードができます プリンタードライバーイ

目次 1 環境 バージョン インストール環境 インストール手順 前提条件 CentOS SSHD の設定 VSFTPD の設定 コンテンツ管理 CGI のイ


オフラインメンテナンス説明書

日医特定健康診査システム ORCA PROJECT Linux 対応版インストールマニュアル (Version 対応 ) Ubuntu Trusty 用 版 2017 年 2 月 23 日 Copyright (C) Japan Medical

プレポスト【解説】

SOC Report

日医特定健康診査システム ORCA PROJECT Linux 対応版インストールマニュアル (Version 対応 ) Debian Etch 用 版 2008 年 10 月 31 日 Copyright (C) 2008 Japan Medical Association

PowerPoint Presentation

任意の間隔での FTP 画像送信イベントの設定方法 はじめに 本ドキュメントでは AXIS ネットワークカメラ / ビデオエンコーダにおいて任意の間隔で画像を FTP サー バーへ送信するイベントの設定手順を説明します 設定手順手順 1:AXIS ネットワークカメラ / ビデオエンコーダの設定ページ

Transcription:

日本語メッセージ for 8.4 (gettext へのいざない ) 2009/04/28 日本 PostgreSQL ユーザ会文書 書籍関連分科会堀田倫英

講師紹介 堀田倫英 ( ほったみちひで ) ネットワーク管理者 ( の卵 ) 養成講座 http://net-newbie.com/ since 1998/02 青年海外協力隊 (1989-1991) SunOS(-4.1.2?) との出会い (1991?) 地銀系ソフトハウス (1993-2004) Linux(-0.99?) との出会い (1994?) PostgreSQL(-6.3.1?) との出会い (1998/05) 長崎県立大学 (2004- 現在 )

今日のお題は やっと PostgreSQL も $ psql --help head psql は PostgreSQL の会話型ターミナルです 使用方法 : psql [ オプション ]... [ データベース名 [ ユーザ名 ]] 一般的なオプション : -c, --command= コマンド (SQLまたは内部の) 単一コマンドを一つだけ実行して終了 -d, --dbnme=db 名接続するデータベース名を指定 ( デフォルト : "m-hotta") -f, --file= ファイル名ファイルからコマンドを読み込んで実行後 終了 -l( エル ), --list 使用可能なデータベース一覧を表示して終了 のようになるというお話ですです

PostgreSQL の NLS 対応 組み込み方 : $ ls COPYRIGHT GNUmakefile.in README config contrib src CVS MIGRATION README.CVS configure doc ChangeLogs Makefile aclocal.m4 configure.in migration $./configure enable-nls [... その他のオプション ] $ make $ make install

NLS とは NLS(National Language Support) コマンドからのメッセージを 各国語で出力するしくみ 環境変数により 実行時に言語を選択可能 gettext ライブラリを使って実現 $ rpm -q gettext gettext-0.14.6-4.el5 多くの OSS プロダクトで実装済み

使い方 $ head -1 /etc/issue CentOS release 5.2 (Final) $ env grep LANG LANG=ja_JP.UTF-8 $ psql --help head -1 psql は PostgreSQL の会話型ターミナル psql 8.3.0 です $ LANG=C psql --help head -1 This is psql 8.3.0, the PostgreSQL interactive terminal. $ LANG=fr_FR.UTF=8 psql --help head -1 Bienvenue dans psql 8.3.0, l'interface interactive de PostgreSQL.

自動文字コード変換 ( 端末コード =UTF-8) $ psql --help head -1 こちらは PostgreSQL の会話型ターミナル psql 8.3.0 です ( 端末コードを EUC-JP に変更 ) $ psql --help head -1 < PostgreSQL 荅怨 帥若 psql 8.3.0 с $ psql --help head -1 nkf -e こちらは PostgreSQL の会話型ターミナル psql 8.3.0 です $ LANG=ja_JP.EUC-JP psql --help head -1 こちらは PostgreSQL の会話型ターミナル psql 8.3.0 です

ネタの出所 $ cd /usr/share/locale/ja/lc_messages $ ls pg_* pg_config.mo pg_controldata.mo pg_ctl.mo pg_dump.mo pg_resetxlog.mo $ msgunfmt pg_dump.mo( 中身を見る ) --( 中略 )-- msgid "" " n" "Connection options: n" msgstr "" " n" " 接続オプション : n"

環境変数 LANG LANG=CC_LL.EEEE CC: 言語コード (ISO639-1): 日本語 =ja ISO639-1は2 文字 ISO-639-2は3 文字現在 545 言語 LL: 国コード (ISO3166-1): 日本 =JP 現在 246か国 EEEE: 文字コードセット 詳しくはWebで ( )

メッセージ出力の進化 原文 ( 世界の共通語 ) printf( My name is %s. n, my_name); // 英語は必須必須です 各国語に書き換え (XX 語パッチ ) printf( 私の名前名前は %s です n, my_name); // 独りよがり 初期の psql 日本語パッチパッチはこのはこの方式 コンパイルオプションで切り替え #ifdef LANG_JAPAN printf( 私の名前名前は %s です n, my_name); #endif #ifdef LANG_... // できたバイナリバイナリは どれか 1 つしか話せない 多言語対応されたされたソース printf(_( My name is %s. n ), my_name); // これで各国語対応可能

GNU gettext a.c $ xgettext -a a.c -o hoge.po #: a.c:7 msgid "My name is %s. n" msgstr "" hoge.po 翻訳 ( 人手 ) hoge.mo $ msgfmt hoge.po -o hoge.mo #: a.c:7 msgid "My name is %s. n" msgstr 私の名前名前は %s です n" $ cc o hoge a.c hoge 私の名前名前は XX です

po ファイルヘッダ "Project-Id-Version: PostgreSQL 8.4beta1 n" "Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org n" "POT-Creation-Date: 2009-04-11 10:30+0900 n" "PO-Revision-Date: 2009-04-11 10:31+0900 n" "Last-Translator: HOTTA Michihide <hotta@netnewbie.com> n" "Language-Team: Japan PostgreSQL Users Group <jpugdoc@ml.postgresql.jp> n" "MIME-Version: 1.0 n" "Content-Type: text/plain; charset=utf-8 n" "Content-Transfer-Encoding: 8bit n" "Plural-Forms: nplurals=1; plural=0; n"

初めてめて翻訳翻訳するする場合 各国語部分を切り出す $ make init-po( テンプレート作成 ) po/hoge.potができる #: src/name.c:36 msgid "My name is %s. n" msgstr "" 日本語のテンプレートテンプレートを作成 $ msginit --locale=ja --input=hoge.pot po/ja.poができる 翻訳対象

ソースがアップデートされた場合 (po/ja.poがある前提で) ソースを再スキャンスキャンしてして既存既存の翻訳翻訳とマージ $ make update-po $ po/ja.po.newができる $ cd po $ mv ja.po ja.po.orig $ mv ja.po.new ja.po 翻訳対象

マージ結果 変更なしなし 単純文字列 #: utils/misc/tzparser.c:72( ソース中の位置 ) msgid... 変更なしなし printf 書式文字列を含む #: utils/misc/tzparser.c:72 #, c-format msgid... 新規メッセージ / 変更あり #: utils/misc/tzparser.c:72 # fuzzy 基本的にはここだけのにはここだけの作業作業で可 msgid..

ひたすら msgid を翻訳して msgstr にセット 行末の改行改行を合わせる msgid My name is %s. n ( 改行あり ) msgstr 私の名前は %s です n msgid out of memory ( 改行なし ) msgstr メモリ不足です 訳文が長くなるくなる場合 msgid "could not rename file "%s " to "%s ": %m" msgstr ( ここでいったん改行 ) " ファイル "%s " の名前を "%s " に変更できませんでした : %m"

語順の変更を伴う場合 msgid "" "time zone abbreviation "%s " is too long (maximum %d characters) in time " "zone file "%s ", line %d" msgstr "" タイムゾーンファイル %3$s の %4$d 行目にある 省略形 "%1$s " が長すぎます ( 最大 %2$d 文字 ) 数字 $ でパラメータパラメータ位置位置を指定可能

単数形と複数形 "Plural-Forms: nplurals=1; plural=0; n msgid "Expected sequence of %d argument, got %d: %s" msgid_plural "Expected sequence of %d arguments, got %d: %s" msgstr[0] "%d 番目の引数はシーケンスを期待していましたが %d が現れました :%s msgstr[1] "%d 番目の引数はシーケンスを期待していましたが %d が現れました :%s

結果の確認 ビルド $ make po/ja.mo,es.mo, fr.mo... ができる インストール $ make install コマンド名と同じ po/*.mo が psql.mo( 一例 ) として以下に設置される /usr/local/share/locale/ 言語 /LC_MESSAGES/ 実行 $ psql(psql.mo が動的に読み込まれる )

本家にコミット $ mv ja.po /path/to/psql.po cvs commit 本体開発者 翻訳者 コミット コミット 本体リポジトリ マージ メッセージリポジトリ

翻訳ネタ $ find. -name nls.mk -exec grep CATALOG_NAME {} ; awk '{print $3}' sort ecpg ecpglib initdb libpq pg_config pg_controldata pg_ctl pg_dump pg_resetxlog pgscripts plperl plpgsql plpython pltcl postgres psql

競争心をあおるしくみ

NLS - その意義は? バリバリコードが書ける人は英語も読める ( ことが多い ) 英語に不自由しない人には無用の長物 日本語になると誰が嬉しいのか? 翻訳するヒマがあればコードを書け?... でも 少しでも PostgreSQL への敷居が下がれば嬉しい かも

翻訳者を絶賛募集中絶賛募集中です!! 日本 PostgreSQL ユーザー会 : 文書 書籍関連分科会書籍関連分科会 http://www.postgresql.jp/wg/jpugdoc/ へどうぞ ご清聴ありがとうございました