KDevHelloWorld
プロジェクトの作成
メニュー > プロジェクト(P) > 新しいプロジェクト(N)...
プロジェクトのタイプ:C++ > KDE > Simple KDE Application
アプリケーション名(N):KDevHelloWorld
作者:SUZUKI Tasuku
Eメール:tasuku@linux-life.net
バージョン:0.1.0
ライセンス:GPL
コンパイル
いきなりですが、この状態でコンパイルして実行してみましょう。
メニュー > ビルド(I) > プロジェクトをビルド(B)
初回はMakefileがないのでautomake > configureを実行します。
実行
メニュー > ビルド(I) > プログラムを実行
修正
-
kdevhelloworld.desktop
- 日本語表示名
- Name[ja]=KDevelop版HelloWorld
- コメント
-
Comment=Hello World from KDevelop
Comment[ja]=KDevelopで作成したHello World
注意)
desktopファイルはUTF-8なので、標準のエンコーディングがeuc-jpになっている場合は
メニュー > 表示(V) > エンコーディング(E) > Unicode(utf8)
に変更標準のエンコーディング自体を変える場合は
メニュー > 設定(S) > エディタを設定(E)... > 開く/保存 > エンコーディング(E):
を変更 -
main.cpp
- アプリケーションの説明
-
static const char description[] =
I18N_NOOP("Hello World from KDevelop"); - 著作権
-
KAboutData about("kdevhelloworld", I18N_NOOP("KDevHelloWorld"), version, description,
KAboutData::License_GPL, "(C) 2005 SUZUKI Tasuku", 0,
"https://linux-life.net/program/cc/kde/kdevelop/kdevhelloworld/", "tasuku@linux-life.net"); about.addAuthor( "SUZUKI Tasuku", "author", "tasuku@linux-life.net", "https://linux-life.net/" ); - 国際化対応
-
KAboutData about("kdevhelloworld", I18N_NOOP("KDevHelloWorld"), version, description,
KAboutData::License_GPL, I18N_NOOP( "(C) 2005 SUZUKI Tasuku" ), 0,
"https://linux-life.net/program/cc/kde/kdevelop/kdevhelloworld/", "tasuku@linux-life.net"); about.addAuthor( I18N_NOOP( "SUZUKI Tasuku" ), I18N_NOOP( "author" ), "tasuku@linux-life.net", "https://linux-life.net/" );
-
kdevhelloworld.cpp
- メニューの作成
-
コンストラクタの最後に以下の行を追加
createGUI(); - メッセージの国際化対応
-
new QLabel( i18n("Hello World"), this, "hello label" );
- ラベルをアプリケーションのメインウィジットに設定
-
setCentralWidget( new QLabel( i18n("Hello World"), this, "hello label" ) );
-
kdevhelloworldui.rc
- 不要なエントリの削除
-
<Menu name="custom"><text>C&ustom</text>
<Action name="custom_action" />
</Menu>
翻訳作業
以下の内容は試行錯誤の結果であって、正解ではないと思います。
-
準備
- kdevhelloworld.potファイルの作成
- メニュー > ビルド(I) > メッセージの make & merge
- ja.poファイルの作成
-
メニュー > プロジェクト(P) > 翻訳を追加... > ja
メニュー > ビルド(I) > メッセージの make & merge
kdevhelloworld.potの中身をまるごとja.poにコピー
-
ja.poを修正
- エンコーディング
-
メニュー > 表示(V) > エンコーディング(E) > Unicode(utf8)
"Content-Type: text/plain; charset=UTF-8\n" - 翻訳
-
#: _translatorinfo.cpp:1
msgid ""
"_: NAME OF TRANSLATORS\n"
"Your names"
msgstr "鈴木 佑"#: _translatorinfo.cpp:3
msgid ""
"_: EMAIL OF TRANSLATORS\n"
"Your emails"
msgstr "tasuku@linux-life.net"#: kdevhelloworld.cpp:35
msgid "Hello World"
msgstr "こんにちは 世界"#: main.cpp:29
msgid "Hello World from KDevelop"
msgstr "KDevelop からこんにちは 世界"#: main.cpp:41
msgid "KDevHelloWorld"
msgstr "こんにちは 世界"#: main.cpp:42
msgid "(C) 2005 SUZUKI Tasuku"
msgstr "(C) 2005 鈴木 佑"#: main.cpp:43
msgid "SUZUKI Tasuku"
msgstr "鈴木 佑"#: main.cpp:43
msgid "author"
msgstr "作者"
規模が大きい場合はKBabelを利用しましょう。
配布形式の作成
メニュー > プロジェクト(P) > Distribution & Publishing から行います。
-
パッケージ情報(P)
- アプリケーション名(A)
- kdevhelloworld
- ソース配布(S) > ソースアーカイブを作成(A)
インストール
メニュー > ビルド(I) > root ユーザでインストール
KDEメニュー > ユーティリティー > KDevelop版HelloWorld