登録日: 2022-10-06 更新日: 2022-10-07
ホストOS の「Xubuntu 22.04.1 LTS」にて、APT で入れた Boxes (42.2) のヘルプのみをビルドして、
英語のヘルプを日本語化しました。
-
前回の投稿で試したことを、本番で試しました。
その備忘録です。
-
-
使用したPC は「ASUS Chromebox CN60 」で、プロセッサは第4世代の「Intel Celeron 2955U 」です。
「UEFI 立ち上げ」のPC です。
-
(注)リンクを戻るときはブラウザの左上の「←」をクリック
-
-
目次
-
以前の作業:
PC (SSD) に「Xubuntu 22.04.1 LTS」をインストール〈H157〉
-
前回の作業で学んだことを、目的で探す:
「Meson」を apt でインストール :
「Meson」を使ったビルドの練習 :
「Boxes」のヘルプの日本語化に失敗する件の解消 :
po ファイルを翻訳する時と、ビルドでエラーする時の留意点 :
「Boxes」の「注目のダウンロード」で、一覧(データベース)を新しくする手順 :
翻訳された po ファイルのあるフォルダを使って、ヘルプを日本語化する手順 :
patch コマンド適用でエラーになるときの、回避例 :
「Meson」で、フォルダごとに開発するときの meson.build の一時的な修正 :
-
今回の作業:
-
-
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - -
Xubuntu 22.04.1 LTS のデスクトップ画面:
-
ホストOS を、「Xubuntu 22.04.1 LTS」に移行:
→デスクトップは以前の「Xubuntu 20.04.5 LTS」とほぼ同じ設定にしました。
個人的に「ブログを書く土台となる仮想環境が必要」なので、 シンプルな「Boxes」をインストールしました。
-
作業前の「ヘルプの操作説明」:
→これを見ると、page ファイルにある <app>Boxes</app>
の指定は斜体文字の Boxes になります。なので中の文字を日本語に翻訳する場合は強調されないので、日本語化で(翻訳のルール違反ですが)単語を強調したい場合は「」で囲みました。
-
今回、ビルドして日本語化した「ヘルプの操作説明」:
→リンクで飛ぶので、操作性は良いです。左上の「Boxes」のアイコンは白いので見づらいですね。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - --
「Xubuntu」について:
-
Ubuntu の公式フレーバー(性格の違う兄弟?)です
Ubuntu ベースの、軽量な「Xfce」デスクトップ環境です。
個人的には使い慣れた環境です。
-
Ubuntu は、アプリによっては問題が出る「Wayland」セッションがデフォルトです。
Xubuntu は、中身は Ubuntu ですが「X11」で動いているので問題が少ないのがポイントです。
-
「Xubuntu 22.04.1 LTS」の現在のバージョンを表示:
-
ホストOS のバージョン:
2022-10-07 現在
カーネル:
$ uname -r 5.15.0-48-generic
-
リリース:
$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=22.04 DISTRIB_CODENAME=jammy DISTRIB_DESCRIPTION="Ubuntu 22.04.1 LTS"
→「22.04.1」にアップしています。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ---
「Meson」について:
-
「Meson」は、最近の GNOME アプリのビルドでよく使われているビルド管理のツールです。
実行することで、アプリのフォルダごとにある(以前よりは、わかりやすい記述ができる)「meson.build」の指示に従って、必要な依存パッケージのチェックと、(「Make」よりも処理が速い)「Ninja」を使うための「build.ninja」ファイルを自動で生成してくれます。
-
「Meson」は、「Ninja」を使うための前処理を行うだけで、後のビルドは高速な「Ninja」に任せています。
アプリの開発ではビルドを何度も繰り返すので、少しでもビルドが速いと、トータルで大幅に開発工数を減らせます。待ち時間も減るので、そのアプリの開発に集中できます。
フォルダごとにビルドできるので、アプリを分割して、複数で分担しての開発もできます。
-
「Meson」で注意すべきは、ビルドに使うバージョンです:
プログラムで使われている関数は、廃止されたり、代わりに別の関数を使うとか、パラメータの省略ができなくなったとか、その後に仕様が変更されることがよくあります。
「Meson」は、アプリに含まれるバグの要因を少なくするため、バージョンが上がるごとに、プログラムの構文チェックが厳しくなっています。以前はビルドできたけど、最近のビルドだと警告が表示されたり、エラーで停止とかが起こっています。(そうしないと、いつまで経ってもアプリが改修されないので、難しいところ)
-
古いアプリをビルドする場合、以前のバージョンの「Meson」でビルドするか、エラーを回避する、プログラムの修正が必要です。
-
参考:
Mesonビルドシステムを使う(gettextによる国際化)
-
Meson が使われ始めた2018年当時の記事です。基本的なことは同じなので参考になります。(感謝)。
記述のコマンドは以前の形式ですが、今でも有効です。現在はコマンドの与え方が統一されて、形式が少し違います。
-
上記の記事中の「po ファイル」は、本体アプリ側の翻訳で使われている「po ファイル」を指します。
アプリの翻訳に関する、重要な記述ですが、今回とは別のファイルになります。
最終目的 →/usr/share/locale-langpack/ja/LC_MESSAGES/gnome-boxes.mo
の生成
-
今回の投稿で対象としている「po ファイル」は、「help」フォルダに置かれた、ヘルプの XML の説明文(.page ファイル)に翻訳を反映されるために(ビルドの時だけ)使われる「po ファイル」です。
一時的に「.gmo」が作られ、ファイルに反映されます。置かれている場所も使われる目的も違います。
最終目的 →/usr/share/help/ja/gnome-boxes/*.page
を日本語に修正
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----
0. 前回の投稿で行った、 Boxes (42.3) のビルドで入ったパッケージを削除:
-
すでに何らかの「ボックス」(ゲストOS)を使用していたり、前回の投稿の、Boxes (42.3) のビルドを行っていなければ、こちらの作業は要りません。
-
動作を安定させるにも、リソースの面でも、使われていないパッケージやファイルがあるとマイナスなので、余計なものは削除して、極力、Boxes (42.3) をビルドする前に戻しました:
-
1). 「Boxes」を起動して、もし一覧に「ボックス」があるなら、すべての「ボックス」で右クリック→「削除」
これからも使う「ボックス」があるときは、こちらの作業は行いません。
-
2). ビルドすることで配置されたファイルを確認:
$ sudo find / -name gnome-boxes : /home/ubn/.cache/gnome-boxes /home/ubn/.config/gnome-boxes /home/ubn/ダウンロード/box/gnome-boxes-42.3/builddir/src/gnome-boxes : /usr/local/bin/gnome-boxes /usr/local/lib/x86_64-linux-gnu/gnome-boxes /usr/local/share/gnome-boxes /usr/local/share/help/es/gnome-boxes /usr/local/share/help/de/gnome-boxes /usr/local/share/help/gl/gnome-boxes /usr/local/share/help/ru/gnome-boxes /usr/local/share/help/cs/gnome-boxes /usr/local/share/help/ca/gnome-boxes /usr/local/share/help/hu/gnome-boxes /usr/local/share/help/da/gnome-boxes /usr/local/share/help/uk/gnome-boxes /usr/local/share/help/it/gnome-boxes /usr/local/share/help/C/gnome-boxes /usr/local/share/help/pt_BR/gnome-boxes /usr/local/share/help/sv/gnome-boxes /usr/local/share/help/eu/gnome-boxes /usr/local/share/help/ja/gnome-boxes /usr/local/share/help/pl/gnome-boxes /usr/local/share/help/el/gnome-boxes /usr/local/share/help/id/gnome-boxes /usr/local/share/help/fr/gnome-boxes /usr/local/share/help/ko/gnome-boxes /usr/local/include/gnome-boxes
$ ls /usr/local/share/help/C/ gnome-boxes $ ls /usr/local/share/help/ja/ gnome-boxes
→help フォルダは gnome-boxes のみしかありません。
-
3). 手動で削除する場合:
削除には、正式?な「項番 4).」のやり方もあります。
$ rm -r /home/ubn/.cache/gnome-boxes $ rm -r /home/ubn/.config/gnome-boxes $ sudo rm -r /usr/local/bin/gnome-boxes $ sudo rm -r /usr/local/lib/x86_64-linux-gnu/gnome-boxes $ sudo rm -r /usr/local/share/gnome-boxes $ sudo rm -r /usr/local/share/help $ sudo rm -r /usr/local/include/gnome-boxes
→面倒なときは、上段の 2つのフォルダだけでも良いです。
-
4). meson のコマンドを使って削除しました:
たぶん、「項番 3).」よりも多くのファイルを削除できます。
-
前回の投稿で、「ビルド後」に色々とファイルを修正したので、削除漏れしないように、ファイルの状態を「ビルド直後」の状態に戻してから、作業しました。ファイルの修正がなければ、処理はもっとスマートだったはずです。
-
(1). 退避していた meson.build を戻しました:
前回の投稿で、「help」フォルダでのビルドのテストを行っていなければ、こちらの作業は要りません。
$ cd ~/ダウンロード/box/gnome-boxes-42.3/help/ $ ls C ca de eu hu ja meson.build-ORG ru LINGUAS cs el fr id ko pl sv builddir da es gl it meson.build pt_BR uk $ rm -r builddir
$ cp meson.build-ORG meson.build $ rm -r meson.build-ORG $ ls C ca da el eu gl id ja meson.build pt_BR sv LINGUAS cs de es fr hu it ko pl ru uk
-
(2). ビルドでインストールした「Boxes」アプリとその関連を削除:
$ cd ~/ダウンロード/box/gnome-boxes-42.3/
-
新しい書式が使えるか、試しに実行:
$ sudo meson uninstall -C builddir : usage: meson [-h] {setup,configure,dist,install,introspect,init,test,wrap,subprojects,help,rewrite,compile,devenv} ... meson: error: unrecognized arguments: -C builddir
→和訳: エラー: 認識できない引数: -C builddir
-
(3). meson のビルドでインストールしたアプリの削除には、昔のコマンドを使いました:
$ cd ~/ダウンロード/box/gnome-boxes-42.3/builddir/
$ sudo ninja uninstall : : 省略 Deleted: /usr/local/share/help/ca/gnome-boxes Deleted: /usr/local/share/help/ca Deleted: /usr/local/share/help Deleted: /usr/local/share/metainfo Uninstall finished. Deleted: 921 Failed: 4 Remember that files created by custom scripts have not been removed.
→和訳:
カスタム スクリプトによって作成されたファイルは削除されていないことに注意してください。
-
(4). ビルドで配置されたファイルを確認:
$ sudo find / -name gnome-boxes : /home/ubn/.cache/gnome-boxes /home/ubn/.config/gnome-boxes /home/ubn/ダウンロード/box/gnome-boxes-42.3/builddir/src/gnome-boxes ←ソース
→どちらにしても、上段の 2つのファイルは残りました。
-
(5). 削除:
$ rm -r /home/ubn/.cache/gnome-boxes $ rm -r /home/ubn/.config/gnome-boxes $ sudo rm -r ~/ダウンロード/box/gnome-boxes-42.3
-
(6). ビルドで配置されたファイルを確認:
$ sudo find / -name gnome-boxes $
→なし
-
5). ビルドしたときにインストールされた、依存パッケージを削除:
インストールした順(の逆)で削除:
-
(1). 依存パッケージの削除1 :
$ sudo apt remove libxml2-utils : 以下のパッケージが自動でインストールされましたが、もう必要とされていません: kinit libgif7 libgrantlee-templates5 libkf5js5 libkf5khtml-bin libkf5khtml-data libkf5khtml5 これを削除するには 'sudo apt autoremove' を利用してください。 以下のパッケージは「削除」されます: kdoctools5 khelpcenter libxml2-utils
→あれっ、「khelpcenter」は、「libxml2-utils」の依存でもあったみたい。
ただし、「xmllint」をインストールする時のメッセージにはなかったので、インストールされたのはそれ以前で、別アプリでの依存と思われます。
-
$ sudo apt autoremove
-
(2). 依存パッケージの削除2 :
$ sudo apt remove valac cmake libarchive-dev gettext appstream-util itstool libgtk-3-dev libgtk-vnc-2.0-dev libhandy-1-dev libosinfo-1.0-dev libsecret-1-dev libsoup2.4-dev libusb-1.0-0-dev libvirt-glib-1.0-dev libtracker-sparql-3.0-dev libwebkit2gtk-4.0-dev libspice-client-gtk-3.0-dev libgudev-1.0-dev gobject-introspection libgirepository1.0-dev : 以下のパッケージが自動でインストールされましたが、もう必要とされていません: cmake-data dh-elpa-helper gir1.2-gtk-vnc-2.0 gir1.2-gudev-1.0 gir1.2-libosinfo-1.0 gir1.2-libvirt-glib-1.0 gir1.2-spiceclientglib-2.0 gir1.2-spiceclientgtk-3.0 gir1.2-tracker-3.0 icu-devtools libappstream-glib8 libatk-bridge2.0-dev libatk1.0-dev libatspi2.0-dev libblkid-dev libbrotli-dev libcacard0 libcairo2-dev libdatrie-dev libdbus-1-dev libdeflate-dev libegl-dev libegl1-mesa-dev libepoxy-dev libexpat1-dev libffi-dev libfontconfig-dev libfontconfig1-dev libfreetype-dev libfreetype6-dev libfribidi-dev libgcrypt20-dev libgdk-pixbuf-2.0-dev libgjs0g libgl-dev libgladeui-2-13 libgladeui-common libgles-dev libgles1 libglib2.0-dev libglib2.0-dev-bin libglvnd-core-dev libglvnd-dev libglx-dev libgmp-dev libgmpxx4ldbl libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev libgnutlsxx28 libgpg-error-dev libgraphite2-dev libgtk-vnc-2.0-0 libgvnc-1.0-0 libgvnc-1.0-dev libharfbuzz-dev libharfbuzz-gobject0 libice-dev libicu-dev libidn2-dev libjavascriptcoregtk-4.0-dev libjbig-dev libjpeg-dev libjpeg-turbo8-dev libjpeg8-dev libjson-glib-dev libjsoncpp25 liblzma-dev libmount-dev libmozjs-91-0 libopengl-dev libosinfo-1.0-0 libp11-kit-dev libpango1.0-dev libpcre16-3 libpcre2-dev libpcre2-posix3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libphodav-2.0-0 libphodav-2.0-common libpixman-1-dev libpng-dev libpng-tools libpsl-dev libpthread-stubs0-dev libpulse-dev librhash0 libsasl2-dev libselinux1-dev libsepol-dev libsm-dev libspice-client-glib-2.0-8 libspice-client-glib-2.0-dev libspice-client-gtk-3.0-5 libspice-protocol-dev libsqlite3-dev libtasn1-6-dev libtasn1-doc libthai-dev libtiff-dev libtiffxx5 libtracker-sparql-3.0-0 libudev-dev libunbound8 libusb-1.0-doc libusbredirhost1 libusbredirparser1 libvala-0.56-0 libvalacodegen-0.56-0 libvirt-dev libvirt-glib-1.0-0 libvirt-glib-1.0-data libvirt0 libwayland-bin libwayland-dev libx11-dev libxau-dev libxcb-render0-dev libxcb-shm0-dev libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxen-dev libxencall1 libxendevicemodel1 libxenevtchn1 libxenforeignmemory1 libxengnttab1 libxenhypfs1 libxenmisc4.16 libxenstore4 libxentoolcore1 libxentoollog1 libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxkbcommon-dev libxml2-dev libxrandr-dev libxrender-dev libxtst-dev nettle-dev osinfo-db pango1.0-tools pkg-config python3-libxml2 python3-markdown python3-pygments spice-client-glib-usb-acl-helper uuid-dev valac-0.56-vapi valac-bin wayland-protocols x11proto-dev xorg-sgml-doctools xtrans-dev zlib1g-dev これを削除するには 'sudo apt autoremove' を利用してください。 以下のパッケージは「削除」されます: appstream-util cmake gettext gobject-introspection itstool libarchive-dev libgirepository1.0-dev libgtk-3-dev libgtk-vnc-2.0-dev libgudev-1.0-dev libhandy-1-dev libosinfo-1.0-dev libsecret-1-dev libsoup2.4-dev libspice-client-gtk-3.0-dev libtracker-sparql-3.0-dev libusb-1.0-0-dev libvirt-glib-1.0-dev libwebkit2gtk-4.0-dev valac
-
$ sudo apt autoremove
-
(3). 再起動:
$ reboot
-
(4). 最新の「Boxes」のビルドで問題となる「libsoup」を確認:
$ apt list libsoup* : libsoup-3.0-0/jammy-updates 3.0.7-0ubuntu1 amd64 libsoup-3.0-common/jammy-updates,jammy-updates 3.0.7-0ubuntu1 all libsoup-3.0-dev/jammy-updates 3.0.7-0ubuntu1 amd64 libsoup-3.0-doc/jammy-updates,jammy-updates 3.0.7-0ubuntu1 all libsoup-3.0-tests/jammy-updates 3.0.7-0ubuntu1 amd64 libsoup-gnome2.4-1/jammy,now 2.74.2-3 amd64 [インストール済み、自動] libsoup-gnome2.4-dev/jammy 2.74.2-3 amd64 libsoup2.4-1/jammy,now 2.74.2-3 amd64 [インストール済み、自動] llibsoup2.4-cil-dev/jammy 2.42.2+git20151219-3 amd64 libsoup2.4-cil/jammy 2.42.2+git20151219-3 amd64 libsoup2.4-common/jammy,jammy,now 2.74.2-3 all [インストール済み、自動] libsoup2.4-dev/jammy 2.74.2-3 amd64 libsoup2.4-doc/jammy,jammy 2.74.2-3 all libsoup2.4-tests/jammy 2.74.2-3 amd64
→「libsoup-3.0」が使われていないことを確認。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - -----
1. 「gnome-boxes」を apt でインストール:
-
ホストOS の「Xubuntu 22.04.1 LTS」で作業:
-
1). システム更新:
$ sudo apt update $ sudo apt upgrade
-
2). 「gnome-boxes」のインストール:
$ sudo apt install gnome-boxes : 以下のパッケージが新たにインストールされます: cpu-checker dmeventd genisoimage gnome-boxes ibverbs-providers ipxe-qemu ipxe-qemu-256k-compat-efi-roms libaio1 libcacard0 libdaxctl1 libdevmapper-event1.02.1 libexempi8 libfdt1 libgfapi0 libgfrpc0 libgfxdr0 libgif7 libglusterfs0 libgsf-1-114 libgsf-1-common libgtk-vnc-2.0-0 libgvnc-1.0-0 libibverbs1 libiscsi7 liblvm2cmd2.03 libndctl6 libosinfo-1.0-0 libosinfo-bin libphodav-2.0-0 libphodav-2.0-common libpmem1 libpmemobj1 librados2 librbd1 librdmacm1 libslirp0 libspice-client-glib-2.0-8 libspice-client-gtk-3.0-5 libspice-server1 libtracker-sparql-3.0-0 libusbredirhost1 libusbredirparser1 libvirglrenderer1 libvirt-daemon libvirt-daemon-driver-qemu libvirt-glib-1.0-0 libvirt-glib-1.0-data libvirt0 libxml2-utils lvm2 msr-tools osinfo-db ovmf qemu-block-extra qemu-system-common qemu-system-data qemu-system-gui qemu-system-x86 qemu-utils seabios spice-client-glib-usb-acl-helper thin-provisioning-tools tracker tracker-extract tracker-miner-fs
-
3). バージョンの確認:
$ apt list gnome-boxes : gnome-boxes/jammy-updates,now 42.2-0ubuntu1 amd64 [インストール済み]
-
$ gnome-boxes --version 42.2
→「42.2」です。
-
4). 最新の「Boxes」のビルドで問題となる「libsoup」の確認:
$ apt list libsoup* : libsoup-3.0-0/jammy-updates 3.0.7-0ubuntu1 amd64 libsoup-3.0-common/jammy-updates,jammy-updates 3.0.7-0ubuntu1 all libsoup-3.0-dev/jammy-updates 3.0.7-0ubuntu1 amd64 libsoup-3.0-doc/jammy-updates,jammy-updates 3.0.7-0ubuntu1 all libsoup-3.0-tests/jammy-updates 3.0.7-0ubuntu1 amd64 libsoup-gnome2.4-1/jammy,now 2.74.2-3 amd64 [インストール済み、自動] libsoup-gnome2.4-dev/jammy 2.74.2-3 amd64 libsoup2.4-1/jammy,now 2.74.2-3 amd64 [インストール済み、自動] libsoup2.4-cil-dev/jammy 2.42.2+git20151219-3 amd64 libsoup2.4-cil/jammy 2.42.2+git20151219-3 amd64 libsoup2.4-common/jammy,jammy,now 2.74.2-3 all [インストール済み、自動] libsoup2.4-dev/jammy 2.74.2-3 amd64 libsoup2.4-doc/jammy,jammy 2.74.2-3 all libsoup2.4-tests/jammy 2.74.2-3 amd64
→「libsoup-3.0」が使われていないことを確認。
-
5). 「Boxes」の起動:
メニュー →開発 →「Boxes」
-
6). インストール後の最初の起動時のみ、「ようこそ」画面が表示:
→閉じると、次回から表示されません。
「Boxes」をアンインストールして、インストールしても二度と表示されないので注意。
-
7). 今回は、「ようこそ」画面は表示されず、すぐにサムネール一覧画面が表示:
→ボックスが何も作成されていないときの表示です。
-
8). ヘルプの「操作説明」の表示を確認:
右上の「横3本線」ボタン→「ヘルプ」で、「ヘルプ」画面が表示:
-
英語の「操作説明」画面が表示されました:
→上記が表示されず、代わりに「ヘルプセンター」(KHelpCenter) 画面が表示されるときは、「こちら」
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- -
2. 「help」フォルダだけをビルドして、ヘルプを日本語化する準備:
-
ヘルプの po ファイルを作成して翻訳、「help」フォルダでビルドして、
日本語の page ファイル群を生成しました:
-
1). 使用するツールのインストール:
$ sudo apt install patch unzip wget gettext : patch はすでに最新バージョン (2.7.6-7build2) です。 unzip はすでに最新バージョン (6.0-26ubuntu3) です。 wget はすでに最新バージョン (1.21.2-2ubuntu1) です。 : 以下のパッケージが新たにインストールされます: gettext
-
「its ツール」のインストール:
$ sudo apt install itstool : 以下のパッケージが新たにインストールされます: itstool python3-libxml2
-
2). 作業用フォルダの作成:
$ mkdir -p ~/ダウンロード/box-help/
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- --
3. 「Meson」を apt でインストール:
-
pip3 でもインストールできますが、バージョン管理が面倒だし、
管理者権限でも「Meson」と「Ninja」のコマンドを使いたいので、apt でインストールしました。
-
1). Meson のインストール:
$ sudo apt install meson : 以下のパッケージが新たにインストールされます: binutils binutils-common binutils-x86-64-linux-gnu build-essential dpkg-dev fakeroot g++ g++-11 gcc gcc-11 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libasan6 libatomic1 libbinutils libc-dev-bin libc-devtools libc6-dev libcc1-0 libcrypt-dev libctf-nobfd0 libctf0 libdpkg-perl libfakeroot libfile-fcntllock-perl libgcc-11-dev libitm1 liblsan0 libnsl-dev libstdc++-11-dev libtirpc-dev libtsan0 libubsan1 linux-libc-dev lto-disabled-list make manpages-dev meson ninja-build python3-distutils python3-lib2to3 rpcsvc-proto
→「ninja-build」も依存でインストールされました。
-
2). Meson がインストールされたかの確認:
$ apt search meson : meson/jammy,jammy,now 0.61.2-1 all [インストール済み] high-productivity build system
→和訳: 生産性の高いビルドシステム
-
3). ninja がインストールされたかの確認:
$ apt search ninja-build : ninja-build/jammy,now 1.10.1-1 amd64 [インストール済み、自動] small build system closest in spirit to Make
→和訳: Make に最も近い小さなビルドシステム
-
4). 確認:
-
(1). 実行ファイルのパスの確認:
$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
-
(2). 実行ファイルの場所の確認:
$ which meson /usr/bin/meson $ which ninja /usr/bin/ninja
-
(3). バージョンの確認:
$ meson --version 0.61.2 $ ninja --version 1.10.1
-
(4). 管理者権限で使えるかを確認:
$ sudo meson --version 0.61.2 $ sudo ninja --version 1.10.1
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ---
4. 「Boxes」(42.2) のソースをダウンロード:
-
-
APT で入れた「Boxes」と同じバージョン: 「42.2」
-
1). 「Boxes」のソースをダウンロード:
$ cd ~/ダウンロード/box-help/ $ wget https://github.com/GNOME/gnome-boxes/archive/refs/tags/42.2.tar.gz : 2022-09-30 18:11:20 (4.26 MB/s) - ‘42.2.tar.gz’ へ保存終了 [2044636]
-
$ ls 42.2.tar.gz
-
2). 展開:
$ cd ~/ダウンロード/box-help/ $ tar -zxvf 42.2.tar.gz
-
$ ls -1 42.2.tar.gz gnome-boxes-42.2
-
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/ $ ls COPYING README.md gnome-boxes.doap po vapi HACKING.md build-aux help src NEWS copyright meson.build subprojects README.logos data meson_options.txt tests
→「meson.build」ファイルがあるので、「meson」を使ってビルドするアプリです。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----
5. 「Boxes」のヘルプに日本語の「po ファイル」を追加する、パッチファイルを作成:
-
1). パッチファイルの作成:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/
$ mousepad help-ja.patch
↓ 連続して、区切りは無視して、すべて貼り付けてください:
長いので、マウスで先頭の「diff」をダブルクリックして選び、
Shift キーを押したまま、下矢印「↓」を押して選択すると良いです
diff -Naur a/help/LINGUAS b/help/LINGUAS --- a/help/LINGUAS 2022-10-01 16:18:42.804121190 +0900 +++ b/help/LINGUAS 2022-10-01 17:19:37.092275469 +0900 @@ -11,6 +11,7 @@ hu id it +ja ko pl pt_BR
diff -Naur a/help/ja/ja.po b/help/ja/ja.po --- a/help/ja/ja.po 1970-01-01 09:00:00.000000000 +0900 +++ b/help/ja/ja.po 2022-10-01 18:48:02.309323000 +0900 @@ -0,0 +1,1764 @@ +# Japanese translation for gnome-boxes. +# Copyright (C) 2014 gnome-boxes's COPYRIGHT HOLDER +# This file is distributed under the same license as the gnome-boxes package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2022-09-30 18:47+0900\n" +"PO-Revision-Date: 2022-09-30 18:57+0900\n" +"Last-Translator: ubn <ubn@ubn-box>\n" +"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ja\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. Put one translator per line, in the form NAME <EMAIL>, YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "translator-credits" + +#. (itstool) path: credit/name +#: 3d-acceleration.page:10 create.page:17 interface.page:23 +msgid "Pranali Deshmukh" +msgstr "Pranali Deshmukh" + +#. (itstool) path: credit/years +#: 3d-acceleration.page:12 create.page:19 interface.page:25 +msgid "2020" +msgstr "2020" + +#. (itstool) path: info/desc +#: 3d-acceleration.page:17 +msgid "Enable 3D Acceleration for your box." +msgstr "ボックスの 3D アクセラレーションを有効にします。" + +#. (itstool) path: page/title +#: 3d-acceleration.page:20 +msgid "3D Acceleration" +msgstr "3D アクセラレーション" + +#. (itstool) path: page/p +#: 3d-acceleration.page:29 +msgid "" +"Boxes now gives you the ability to enable or disable 3D acceleration for " +"your VMs if both guest and host support it. This should allow you to improve " +"the performance of your everyday graphic-hungry applications and games. It " +"uses <sys>Virgil</sys> to create a virtual 3D capable graphics card for your " +"QEMU virtual machines." +msgstr "" +"Boxes は、ゲストとホストの両方が「3D アクセラレーション」を" +"サポートしている場合に、VM の 3D アクセラレーションを有効または" +"無効にする機能を提供するようになりました。これにより、グラフィック" +"を大量に消費する日常のアプリケーションやゲームのパフォーマンスを" +"向上させることができます。 <sys>Virgil</sys> を使用して、QEMU 仮想" +"マシン用の仮想 3D 対応グラフィックカードを作成します。" + +#. (itstool) path: note/p +#: 3d-acceleration.page:35 +msgid "Currently only Linux guests support 3D acceleration." +msgstr "現在、Linux ゲストのみが 3D アクセラレーションをサポートしています。" + +#. (itstool) path: steps/title +#: 3d-acceleration.page:39 +msgid "To enable 3D Acceleration in a box:" +msgstr "ボックスで 3D アクセラレーションを有効にするには:" + +#. (itstool) path: media/span +#: 3d-acceleration.page:42 edit-domain.page:42 interface.page:102 +#: keystrokes.page:29 prop-system.page:29 prop-trouble.page:31 +#: shared-folders.page:29 snapshot-create.page:41 snapshot-delete.page:28 +#: snapshot-rename.page:36 snapshot-revert.page:36 usb-redirection.page:48 +msgid "settings" +msgstr "設定" + +#. (itstool) path: item/p +#: 3d-acceleration.page:40 edit-domain.page:40 shared-folders.page:27 +msgid "" +"Right-click on the box in the collection view and select <gui>Preferences</" +"gui>, or click the menu (<_:media-1/>) button in the header bar and select " +"<gui>Preferences</gui>." +msgstr "" +"コレクション ビュー(サムネール一覧)のボックスを右クリックして" +"<gui>「設定」</gui> を選択するか、ヘッダー バーのメニュー (<_:media-1/>) ボタン" +"をクリックして <gui>「設定」</gui> を選択します。" + +#. (itstool) path: item/p +#: 3d-acceleration.page:44 +msgid "" +"The <link xref=\"interface#preferences\">Preferences view</link> opens, with " +"the <gui>Resources</gui> tab selected by default." +msgstr "" +"<link xref=\"interface#preferences\">設定ビュー</link> が、" +"デフォルトで<gui>「リソース」</gui>タブが選択された状態で開きます。" + +#. (itstool) path: item/p +#: 3d-acceleration.page:46 +msgid "" +"If 3D Acceleration is supported, the <gui>3D Acceleration</gui> switch would " +"appear here. By default, it is disabled. To enable 3D Acceleration, simply " +"toggle the switch next to it to <gui style=\"switch\">ON</gui>." +msgstr "" +"3D アクセラレーションがサポートされている場合、" +"<gui>「3D アクセラレーション」</gui> スイッチがここに表示されます。" +"デフォルトでは無効になっています。3D アクセラレーション" +"を有効にするには、その横にあるスイッチを" +"<gui style=\"switch\">「オン」</gui> に切り替えます。" + +#. (itstool) path: note/p +#: 3d-acceleration.page:52 +msgid "" +"When you enable 3D Acceleration for a virtual machine that is already " +"running, the changes apply after you restart the box." +msgstr "" +"すでに実行中の仮想マシンで 3D アクセラレーションを有効にすると、" +"ボックスの再起動後に変更が適用されます。" + +#. (itstool) path: credit/name +#: backup.page:10 create.page:12 delete.page:9 disk-images.page:9 index.page:20 +#: interface.page:13 keystrokes.page:10 prop-system.page:11 +#: prop-trouble.page:11 search.page:10 shutdown.page:11 snapshot-create.page:12 +#: snapshot-delete.page:11 snapshot-rename.page:11 snapshot-revert.page:12 +#: supported-protocols.page:10 system-requirements.page:16 +#: usb-redirection.page:19 virtualization.page:9 +#: what-is-a-virtual-machine.page:15 why-do-i-need-virtual-machine.page:16 +msgid "Michael Hill" +msgstr "Michael Hill" + +#. (itstool) path: credit/years +#: backup.page:12 interface.page:20 shared-folders.page:12 +#: snapshot-create.page:19 snapshot-revert.page:19 usb-redirection.page:26 +msgid "2018" +msgstr "2018" + +#. (itstool) path: info/desc +#: backup.page:17 +msgid "Write the configuration of a box to a file to back it up or move it." +msgstr "ボックスの設定をファイルに書き込み、バックアップまたは移動します。" + +#. (itstool) path: page/title +#: backup.page:20 +msgid "Back up or move a box" +msgstr "ボックスをバックアップまたは移動" + +#. (itstool) path: page/p +#: backup.page:22 +msgid "" +"Two components are required to back up or move a box: the image file, and " +"the configuration of the box saved as an XML file. Saving the configuration " +"requires the <cmd>virsh</cmd> command from the <app>libvirt</app> or " +"<app>libvirt-client</app> package." +msgstr "" +"ボックスをバックアップまたは移動するには、「イメージファイル」と" +"ボックスの設定を保存した「XML ファイル」の 2つのコンポーネント" +"が必要です。設定を保存するには、<app>libvirt</app> または" +"<app>libvirt-client(s)</app> パッケージをインストールしたら使える" +"<cmd>virsh</cmd> コマンドが必要です。" + +#. (itstool) path: item/p +#: backup.page:29 +msgid "In a terminal window, type" +msgstr "端末画面で、次のように入力します" + +#. (itstool) path: item/code +#: backup.page:30 +#, no-wrap +msgid "virsh dumpxml Name > Name.xml" +msgstr "virsh dumpxml Name > Name.xml" + +#. (itstool) path: item/p +#: backup.page:31 +msgid "" +"where <cmd>Name</cmd> is the <app>Boxes</app> name, or <em>domain</em>, of " +"your box. To list the domains seen by <app>Boxes</app>, type" +msgstr "" +"ここで、<cmd>Name</cmd> は <app>Boxes</app> で使用される名前、" +"または <em>ドメイン名</em> です。<app>Boxes</app> で表示される" +"ドメイン名を一覧表示するには、次のように入力します" + +#. (itstool) path: item/code +#: backup.page:33 +#, no-wrap +msgid "virsh -c qemu:///session list --all" +msgstr "virsh -c qemu:///session list --all" + +#. (itstool) path: item/p +#: backup.page:36 +msgid "" +"Copy the <cmd>.xml</cmd> file you just created to your backup or temporary " +"storage location." +msgstr "" +"作成した <cmd>.xml</cmd> ファイルをバックアップ" +"または一時的な保存場所にコピーします。" + +#. (itstool) path: item/p +#: backup.page:40 +msgid "" +"Copy the image file to your backup or temporary storage location. It will be " +"a file with the domain name of your box and ending in <cmd>.qcow2</cmd>, " +"located in <file>~/.local/share/gnome-boxes/images/</file>." +msgstr "" +"イメージ ファイルをバックアップまたは一時的な保存場所にコピーします。" +"これは、ボックスのドメイン名が、<cmd>.qcow2</cmd> で終わるファイルで、" +"<file>「~/.local/share/gnome-boxes/images/」</file> にあります。" + +#. (itstool) path: section/title +#: backup.page:48 +msgid "Restore a box" +msgstr "ボックスを復元" + +#. (itstool) path: section/p +#: backup.page:50 +msgid "" +"The saved box can be installed into <app>Boxes</app> on a new host machine, " +"or on the original machine as part of a disaster recovery scenario." +msgstr "" +"保存したボックスは、新しいホストマシンの <app>Boxes</app> に" +"インストールすることも、障害時の回復シナリオの一部として" +"元のマシンにインストールすることもできます。" + +#. (itstool) path: item/p +#: backup.page:56 +msgid "Exit <app>Boxes</app>." +msgstr "<app>Boxes</app>を終了します。" + +#. (itstool) path: item/p +#: backup.page:59 +msgid "" +"Copy the <cmd>.qcow2</cmd> image file from your backup or temporary storage " +"location into the <file>~/.local/share/gnome-boxes/images/</file> directory " +"in the new location." +msgstr "" +"「<cmd>.qcow2</cmd> イメージ ファイル」をバックアップ、" +"または一時的な保存場所から新しい場所の" +"<file>「~/.local/share/gnome-boxes/images/」</file>" +"ディレクトリにコピーします。" + +#. (itstool) path: item/p +#: backup.page:64 +msgid "" +"In a terminal window, navigate to the directory or device containing the " +"<cmd>.xml</cmd> file you stored. Type" +msgstr "" +"保存した「<cmd>.xml</cmd> ファイル」を含むディレクトリまたは" +"デバイスに移動するには、端末画面で、次のように入力します" + +#. (itstool) path: item/code +#: backup.page:66 +#, no-wrap +msgid "virsh define Name.xml" +msgstr "virsh define Name.xml" + +#. (itstool) path: item/p +#: backup.page:67 +msgid "where <cmd>Name</cmd> is the domain of your box." +msgstr "ここで、<cmd>Name</cmd> はボックスのドメイン名です。" + +#. (itstool) path: item/p +#: backup.page:70 +msgid "Launch <app>Boxes</app>." +msgstr "<app>Boxes</app> を起動します。" + +#. (itstool) path: credit/years +#: create.page:14 interface.page:15 search.page:12 system-requirements.page:18 +#: system-requirements.page:23 system-requirements.page:28 +#: usb-redirection.page:21 what-is-a-virtual-machine.page:17 +#: why-do-i-need-virtual-machine.page:18 +msgid "2013" +msgstr "2013" + +#. (itstool) path: credit/name +#: create.page:22 edit-domain.page:10 interface.page:18 shared-folders.page:10 +#: snapshot-create.page:17 snapshot-revert.page:17 usb-redirection.page:24 +msgid "Felipe Borges" +msgstr "Felipe Borges" + +#. (itstool) path: credit/years +#: create.page:24 +msgid "2022" +msgstr "2022" + +#. (itstool) path: info/desc +#: create.page:29 +msgid "Click <gui style=\"button\">+</gui> to begin creating a box." +msgstr "<gui style=\"button\">「+」</gui> をクリックして、ボックスの作成を開始します。" + +#. (itstool) path: page/title +#: create.page:32 +msgid "Create a box" +msgstr "ボックスを作成" + +#. (itstool) path: page/p +#: create.page:34 +msgid "" +"When <app>Boxes</app> is launched, the collection view opens, displaying " +"your existing boxes. If you haven't yet created a box, an introductory " +"message is displayed." +msgstr "" +"<app>Boxes</app> を起動すると、コレクション ビュー(サムネール一覧)が開き、" +"既存のボックスが表示されます。ボックスをまだ作成していない場合は、" +"紹介メッセージが表示されます。" + +#. (itstool) path: item/p +#: create.page:39 +msgid "" +"Click <gui style=\"button\">+</gui> in the top left corner to launch the box " +"creation assistant. Create a virtual machine from:" +msgstr "" +"左上隅の<gui style=\"button\">「+」</gui>をクリックして、" +"ボックス作成アシスタントを起動し、以下から仮想マシンを作成します:" + +#. (itstool) path: item/p +#: create.page:43 +msgid "" +"An operating system image file in your home folder detected by <app>Boxes</" +"app>." +msgstr "" +"<app>Boxes</app> によって検出されたホーム フォルダ内の OS のイメージ ファイル。" + +#. (itstool) path: item/p +#: create.page:44 +msgid "A selected local ISO file (if not found automatically above)." +msgstr "ローカルの ISO ファイル (上記で自動的に見つからない場合)。" + +#. (itstool) path: item/p +#: create.page:45 +msgid "An installation media on a CD/DVD/USB drive." +msgstr "CD/DVD/USB ドライブのインストール メディア。" + +#. (itstool) path: item/p +#: create.page:46 +msgid "" +"A supported operating system available on the <gui>Operating System " +"Download</gui> page" +msgstr "" +"<gui>オペレーティング システムのダウンロード</gui> ページで" +"入手可能な、サポートされている OS" + +#. (itstool) path: note/p +#: create.page:50 +msgid "" +"If your installation media supports <gui>Express Installation</gui>, the " +"installation can proceed without further input." +msgstr "" +"インストールメディアが <gui>「かんたん インストール」</gui> をサポート" +"している場合、インストールはそれ以上の入力なしで続行できます。" + +#. (itstool) path: item/p +#: create.page:55 +msgid "" +"After selecting one of the installations method above, continue to the " +"<gui>Review and Create</gui> page where you can adjust memory, disk capacity " +"and other preferences for your box." +msgstr "" +"上記のインストール方法のいずれかを選択したら、" +"<gui>「確認と作成」</gui> 画面に進み、ボックスのメモリ、" +"ディスク容量、およびその他の設定を調整できます。" + +#. (itstool) path: item/p +#: create.page:58 +msgid "Click <gui style=\"button\">Create</gui>." +msgstr "<gui style=\"button\">「作成」</gui>をクリックします。" + +#. (itstool) path: page/p +#: create.page:61 +msgid "The collection view returns, and the installation of the box begins." +msgstr "コレクションビュー(サムネール一覧)に戻り、ボックスのインストールが開始されます。" + +#. (itstool) path: credit/years +#: delete.page:11 disk-images.page:11 index.page:22 prop-system.page:13 +#: prop-trouble.page:13 shortcuts.page:13 shutdown.page:13 +#: snapshot-create.page:14 snapshot-delete.page:13 snapshot-rename.page:13 +#: snapshot-revert.page:14 virtualization.page:11 +msgid "2014" +msgstr "2014" + +#. (itstool) path: info/desc +#: delete.page:16 +msgid "Remove a box that you no longer need." +msgstr "不要になったボックスを削除します。" + +#. (itstool) path: page/title +#: delete.page:19 +msgid "Delete a box" +msgstr "ボックスを削除" + +#. (itstool) path: page/p +#: delete.page:21 +msgid "" +"When a box is no longer needed, it can be deleted from <app>Boxes</app>." +msgstr "" +"ボックスが不要になったら、<app>Boxes</app> から削除できます。" + +#. (itstool) path: item/p +#: delete.page:24 +msgid "In the collection view, right click the box to be deleted." +msgstr "コレクションビュー(サムネール一覧)で、削除するボックスを右クリックします。" + +#. (itstool) path: item/p +#: delete.page:25 +msgid "Click the <gui style=\"button\">Delete</gui> menu option." +msgstr "<gui style=\"button\">「削除」</gui> メニューをクリックします。" + +#. (itstool) path: page/title +#: disk-images.page:19 +msgid "Where does Boxes store disk images?" +msgstr "Boxes はどこにディスク イメージを保存しますか?" + +#. (itstool) path: page/p +#: disk-images.page:21 +msgid "" +"By default, <app>Boxes</app> stores disk images in the folder <file>~/.local/" +"share/gnome-boxes/images/</file>. If you are using other software that " +"interfaces with libvirt, such as <app>virt-manager</app>, then <app>Boxes</" +"app> will also read from the folder that software uses to store its images." +msgstr "" +"デフォルトでは、<app>Boxes</app> はディスク イメージを" +"<file>「~/.local/share/gnome-boxes/images/」</file> フォルダに保存します。" +"<app>「virt-manager」</app> など、libvirt と連携する他のソフトウェアを使用" +"している場合、<app>Boxes</app> はソフトウェアがイメージの保存に使用" +"するフォルダからも読み取ります。" + +#. (itstool) path: credit/years +#: edit-domain.page:12 +msgid "2021" +msgstr "2021" + +#. (itstool) path: info/desc +#: edit-domain.page:17 +msgid "Edit advanced configurations of your box." +msgstr "ボックスの詳細設定を編集します。" + +#. (itstool) path: page/title +#: edit-domain.page:20 +msgid "Edit the Libvirt domain XML configuration of a box" +msgstr "ボックスの Libvirt ドメイン設定 XML を編集" + +#. (itstool) path: page/p +#: edit-domain.page:30 +msgid "" +"Boxes enables you to manually edit the <sys>Libvirt</sys> domain " +"configuration XML of your box. You can achieve specific setups which are not " +"exposed in the Boxes interface and neither supported by the Boxes developers." +msgstr "" +"Boxes では、ボックスの <sys>Libvirt</sys> ドメイン設定 XML を" +"手動で編集できます。Boxes インターフェースで公開されておらず、" +"Boxes 開発者によってサポートされていない特定のセットアップを" +"実現できます。" + +#. (itstool) path: note/p +#: edit-domain.page:35 +msgid "" +"See the Libvirt domain configuration format in documentation at https://" +"libvirt.org/format.html" +msgstr "" +"「https://libvirt.org/format.html」のドキュメントで「Libvirt ドメイン設定」" +"の形式を参照してください。" + +#. (itstool) path: steps/title +#: edit-domain.page:39 +msgid "To edit the Libvirt XML configuration of a box:" +msgstr "ボックスの Libvirt XML 設定を編集するには:" + +#. (itstool) path: item/p +#: edit-domain.page:44 prop-system.page:31 prop-trouble.page:33 +msgid "Click the <gui>Resources</gui> tab." +msgstr "<gui>「リソース」</gui> タブをクリックします。" + +#. (itstool) path: item/p +#: edit-domain.page:45 prop-trouble.page:34 +msgid "Scroll to the <gui>Configuration</gui> section." +msgstr "<gui>「設定」</gui> セクションまでスクロールします。" + +#. (itstool) path: item/p +#: edit-domain.page:46 +msgid "" +"Click the <gui style=\"button\">Edit Configuration</gui> button to open the " +"configuration in a text editor." +msgstr "" +"<gui style=\"button\">「設定を編集」</gui> ボタンをクリックして、 " + "テキストエディタで設定を開きます。 " + +#. (itstool) path: item/p +#: edit-domain.page:48 +msgid "Edit the XML configuration and <gui style=\"button\">Save</gui>." +msgstr "XML 設定を編集し、<gui style=\"button\">「保存」</gui> をクリックします。" + +#. (itstool) path: item/p +#: edit-domain.page:49 +msgid "" +"If the virtual machine which has been edited is already running, the changes " +"will take effect after restarting the running virtual machine." +msgstr "" +"編集された仮想マシンがすでに実行されている場合、変更は実行中" +"の仮想マシンを再起動した後に有効になります。" + +#. (itstool) path: note/p +#: edit-domain.page:54 +msgid "" +"Before editing the box configuration, Boxes will suggest that you create a " +"snapshot. Snapshots allow you to revert your changes in case of a mistake." +msgstr "" +"ボックスの設定を編集する前に、ボックスのスナップショットを" +"作成することを提案します。 スナップショットを使用すると、" +"間違いが発生した場合に変更を元に戻すことができます。" + +#. (itstool) path: info/title +#: index.page:7 +msgctxt "link:trail" +msgid "Boxes" +msgstr "Boxes" + +#. (itstool) path: info/title +#: index.page:8 +msgctxt "link" +msgid "Boxes" +msgstr "Boxes" + +#. (itstool) path: info/title +#: index.page:9 +msgctxt "text" +msgid "Boxes" +msgstr "Boxes" + +#. (itstool) path: credit/name +#: index.page:15 supported-protocols.page:15 system-requirements.page:11 +#: usb-redirection.page:14 what-is-a-virtual-machine.page:10 +#: why-do-i-need-virtual-machine.page:11 +msgid "Baptiste Mille-Mathias" +msgstr "Baptiste Mille-Mathias" + +#. (itstool) path: credit/years +#: index.page:17 supported-protocols.page:12 supported-protocols.page:17 +#: system-requirements.page:13 usb-redirection.page:16 +#: what-is-a-virtual-machine.page:12 why-do-i-need-virtual-machine.page:13 +msgid "2012" +msgstr "2012" + +#. (itstool) path: info/desc +#: index.page:27 +msgid "Learn to set up local virtual machines." +msgstr "ローカル仮想マシンのセットアップについて学びます。" + +#. (itstool) path: page/title +#: index.page:30 +msgid "<_:media-1/> Boxes" +msgstr "<_:media-1/> Boxes" + +#. (itstool) path: page/p +#: index.page:35 +msgid "" +"<app>Boxes</app> is an application that gives you access to local <link " +"xref=\"what-is-a-virtual-machine\">virtual machines</link>. If you want to " +"get access to a remote virtual machine or connect to the display of a remote " +"computer, you can use another GNOME app called <app>Connections</app>." +msgstr "" +"<app>Boxes</app> は、ローカルの" +"<link xref=\"what-is-a-virtual-machine\">仮想マシン</link> にアクセス" +"できるアプリケーションです。" +"リモート仮想マシンにアクセスしたり、リモート コンピュータのディスプレイ" +"に接続したりする場合は、<app>「Connections」(gnome-connections)</app> という" +"別の GNOME アプリを使用できます。" + +#. (itstool) path: section/title +#: index.page:42 +msgid "Getting started" +msgstr "入門" + +#. (itstool) path: section/title +#: index.page:52 +msgid "Using Boxes" +msgstr "Boxes を使う" + +#. (itstool) path: section/title +#: index.page:56 +msgid "Preferences" +msgstr "設定" + +#. (itstool) path: section/title +#: index.page:60 +msgid "Snapshots" +msgstr "スナップショット" + +#. (itstool) path: section/title +#: index.page:64 +msgid "Questions" +msgstr "質問" + +#. (itstool) path: section/title +#: index.page:68 +msgid "Advanced topics" +msgstr "高度なテーマ" + +#. (itstool) path: info/desc +#: interface.page:30 +msgid "Get around the application." +msgstr "アプリケーション周りについて。" + +#. (itstool) path: page/title +#: interface.page:33 +msgid "The Boxes interface" +msgstr "Boxes のインターフェース" + +#. (itstool) path: section/title +#: interface.page:36 +msgid "Collection view" +msgstr "コレクションビュー(サムネール一覧)" + +#. (itstool) path: section/p +#: interface.page:38 +msgid "" +"When you first launch <app>Boxes</app>, the greeting tells you to click the " +"<gui style=\"button\">+</gui> button to create your first box. On subsequent " +"visits, <app>Boxes</app> opens in the <em>collection view</em>, displaying " +"thumbnails of your boxes in a grid. Frequently used boxes appear at the top " +"of the list. Collection view allows you to:" +msgstr "" +"<app>Boxes</app> を初めて起動すると、<gui style=\"button\">「+」</gui>" +"ボタンをクリックして最初のボックスを作成するようメッセージが表示されます。" +"2 回目以降のアクセスでは、<em>コレクション ビュー(サムネール一覧)</em>で" +"<app>Boxes</app> が開き、ボックスのサムネイルがグリッドに表示されます。" +"よく使うボックスがリストの一番上に表示されます。" +"コレクション ビュー(サムネール一覧)では、次のことができます。" + +#. (itstool) path: item/p +#: interface.page:45 +msgid "" +"Click <gui style=\"button\">+</gui> to <link xref=\"create\">create</link> a " +"box." +msgstr "" +"<gui style=\"button\">「+」</gui> をクリックしてボックスを" +"<link xref=\"create\">作成</link>します。" + +#. (itstool) path: item/p +#: interface.page:47 +msgid "Click a box to launch a virtual machine session." +msgstr "ボックスをクリックして、仮想マシン セッションを起動します。" + +#. (itstool) path: item/p +#: interface.page:48 +msgid "<link xref=\"search\">Search</link> for a box." +msgstr "ボックスを <link xref=\"search\">検索</link> します。" + +#. (itstool) path: item/p +#: interface.page:49 +msgid "" +"Right-click on a box to choose <gui>Open in New Window</gui>, <gui>Force " +"Shutdown</gui>, <gui>Clone</gui>, <gui>Delete</gui>, or to open the " +"<gui>Preferences</gui> view for the box." +msgstr "" +"ボックスを右クリックして、<gui>「新しいウィンドウで開く」</gui>、" +"<gui>「強制終了」</gui>、<gui>「複製」</gui>、<gui>「削除」</gui>、" +"またはボックスの<gui>「設定」</gui>ビューを開きます。" + +#. (itstool) path: section/title +#: interface.page:58 +msgid "The assistant" +msgstr "アシスタント" + +#. (itstool) path: section/p +#: interface.page:60 +msgid "" +"Clicking <gui style=\"button\">+</gui> launches the box creation " +"<em>Assistant</em>, which guides you through the process of box creation." +msgstr "" +"<gui style=\"button\">「+」</gui> をクリックすると、ボックス作成" +"<em>アシスタント</em> が起動し、ボックスの作成プロセスをガイドします。" + +#. (itstool) path: section/title +#: interface.page:66 +msgid "Preferences view" +msgstr "設定ビュー" + +#. (itstool) path: section/p +#: interface.page:68 +msgid "" +"Right-click a box in the collection view and select <gui " +"style=\"button\">Preferences</gui> to open the <em>preferences view</em>, " +"where you can configure some of the details of your box. The preferences " +"view allows you to display or change settings depending on which of the " +"following tabs is selected:" +msgstr "" +"コレクション ビュー(サムネール一覧)でボックスを右クリックし、" +"<gui style=\"button\">「設定」</gui> を選択すると、<em>設定ビュー</em> が開き、" +"ボックスの詳細を設定できます。設定ビューでは、次のタブのどれが選択" +"されているかに応じて、設定を表示または変更できます。" + +#. (itstool) path: section/title +#: interface.page:75 +msgid "The Resources tab" +msgstr "「リソース」タブ" + +#. (itstool) path: item/p +#: interface.page:78 +msgid "" +"View the <gui>Name</gui> of your box and its <gui>IP Address</gui> (when " +"available)." +msgstr "" +"ボックスの <gui>「名前」</gui> とその <gui>「IP アドレス」</gui>" +"(利用可能な場合) を表示します。" + +#. (itstool) path: item/p +#: interface.page:79 +msgid "" +"Set the values for <gui>CPU</gui>, <gui>Memory</gui> and <gui>Storage</gui> " +"of your box." +msgstr "" +"ボックスの <gui>「CPU」</gui>、<gui>「メモリ」</gui>、および" +"<gui>「ストレージ」</gui> の値を設定します。" + +#. (itstool) path: item/p +#: interface.page:80 +msgid "Set the <gui>Allow running in background</gui> preference of your box." +msgstr "ボックスの <gui>「バックグラウンドでの実行を許可」</gui> を設定します。" + +#. (itstool) path: item/p +#: interface.page:81 +msgid "Enable <gui>3D acceleration</gui> for supported operating systems." +msgstr "サポートされている OS の <gui>「3D アクセラレーション」</gui> を有効にします。" + +#. (itstool) path: item/p +#: interface.page:82 +msgid "" +"Access the logs of your box in the <gui>Troubleshooting logs</gui> option, " +"which can be useful for troubleshooting issues." +msgstr "" +"<gui>「トラブルシューティング ログ」</gui>オプションで" +"ボックスのログにアクセスします。これは問題のトラブルシューティング" +"に役立ちます。" + +#. (itstool) path: item/p +#: interface.page:83 +msgid "" +"The <gui>Edit Configuration</gui> option lets you edit the libvirt domain " +"configuration of your box manually." +msgstr "" +"<gui>「設定を編集」</gui>を使用すると、" +"ボックスの libvirt ドメイン設定を手動で編集できます。" + +#. (itstool) path: section/title +#: interface.page:88 +msgid "The Devices and Shares tab" +msgstr "「デバイスと共有」タブ" + +#. (itstool) path: item/p +#: interface.page:91 +msgid "Choose the <gui>USB Devices</gui> to redirect to your box." +msgstr "ボックスにリダイレクトする <gui>「USB デバイス」</gui> を選択します。" + +#. (itstool) path: item/p +#: interface.page:92 +msgid "Set the <gui>Shared Folders</gui> to be made available in your box." +msgstr "<gui>「共有フォルダ」</gui>をボックスで利用できるように設定します。" + +#. (itstool) path: item/p +#: interface.page:93 +msgid "" +"Set a <gui>CDROM/DVD Drive</gui> file or device to make available in your " +"box." +msgstr "" +"<gui>「CDROM/DVD ドライブ」</gui> ファイルまたはデバイスを設定して、" +"ボックスで使用できるようにします。" + +#. (itstool) path: section/title +#: interface.page:98 +msgid "The Snapshots tab" +msgstr "「スナップショット」タブ" + +#. (itstool) path: section/p +#: interface.page:99 +msgid "" +"With <gui>Snapshots</gui> you can <link xref=\"snapshot-create\">create</" +"link> and manage snapshots of your box." +msgstr "" +"<gui>「スナップショット」</gui>を使うと、ボックスのスナップショットを" +"<link xref=\"snapshot-create\">作成</link>して管理できます。" + +#. (itstool) path: section/p +#: interface.page:102 +msgid "" +"If the box is running, click the menu (<_:media-1/>) button in the header " +"bar and select <gui>Preferences</gui>." +msgstr "" +"ボックスが起動している場合に、ヘッダーバーのメニュー (<_:media-1/>) ボタン" +"をクリックし、<gui>「設定」</gui> を選択します。" + +#. (itstool) path: credit/years +#: keystrokes.page:12 +msgid "2017" +msgstr "2017" + +#. (itstool) path: info/desc +#: keystrokes.page:15 +msgid "Keystroke combinations can be sent from the menu." +msgstr "キーストロークの組み合わせは、メニューから送信できます。" + +#. (itstool) path: page/title +#: keystrokes.page:21 +msgid "Send a keystroke combination to a box" +msgstr "キーストロークの組み合わせをボックスに送信" + +#. (itstool) path: page/p +#: keystrokes.page:23 +msgid "" +"Some combinations of keystrokes are automatically directed to the host " +"machine. To send a key sequence instead to the running guest:" +msgstr "" +"キーストロークのいくつかの組み合わせは、自動的にホストマシンに送信されます。" +"その代わりに実行中のゲストにキーシーケンスを送信するには:" + +#. (itstool) path: item/p +#: keystrokes.page:27 +msgid "Click the keyboard (<_:media-1/>) button in the header bar." +msgstr "ヘッダーバーのキーボード (<_:media-1/>) ボタンをクリックします。" + +#. (itstool) path: item/p +#: keystrokes.page:31 +msgid "" +"Click the key combination you want to send. The available key combinations " +"are:" +msgstr "" +"送信するキーの組み合わせをクリックします。" +"利用可能なキーの組み合わせは次のとおりです:" + +#. (itstool) path: item/p +#: keystrokes.page:34 +msgid "<keyseq><key>Ctrl</key><key>Alt</key><key>Backspace</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>Alt</key><key>Backspace</key></keyseq>" + +#. (itstool) path: item/p +#: keystrokes.page:35 +msgid "<keyseq><key>Ctrl</key><key>Alt</key><key>F1</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>Alt</key><key>F1</key></keyseq>" + +#. (itstool) path: item/p +#: keystrokes.page:36 +msgid "<keyseq><key>Ctrl</key><key>Alt</key><key>F2</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>Alt</key><key>F2</key></keyseq>" + +#. (itstool) path: item/p +#: keystrokes.page:37 +msgid "<keyseq><key>Ctrl</key><key>Alt</key><key>F3</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>Alt</key><key>F3</key></keyseq>" + +#. (itstool) path: item/p +#: keystrokes.page:38 +msgid "<keyseq><key>Ctrl</key><key>Alt</key><key>F7</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>Alt</key><key>F7</key></keyseq>" + +#. (itstool) path: note/p +#: keystrokes.page:44 +msgid "" +"If your guest operating system is Linux, you can often use one of these key " +"sequences to switch to the first virtual console, and another to switch back " +"to the graphical console. In a number of Linux distributions, " +"<keyseq><key>Ctrl</key><key>Alt</key><key>F3</key></keyseq> will switch to " +"the virtual console, and <keyseq><key>Ctrl</key><key>Alt</key><key>F1</key></" +"keyseq> will switch back to the graphical desktop." +msgstr "" +"ゲストOS が Linux の場合、これらのキーシーケンスの 1つを使用して" +"最初の仮想コンソールに切り替え、別のキーシーケンスを使用して" +"グラフィカルコンソールに戻すことができます。" +"多くの Linux ディストリビューションでは、" +"<keyseq><key>Ctrl</key><key>Alt</key><key>F3</key></keyseq> " +"は「仮想コンソール」に切り替わり、" +"<keyseq><key>Ctrl</key><key>Alt</key><key>F1</key></keyseq> " +"は「グラフィカルデスクトップ」に戻ります。" + +#. (itstool) path: info/desc +#: prop-system.page:16 +msgid "Specify RAM and maximum disk allocation." +msgstr "メモリと最大ディスク容量の割り当てを指定します。" + +#. (itstool) path: page/title +#: prop-system.page:21 +msgid "Adjust the system requirements of a box" +msgstr "ボックスのシステム要件を調整" + +#. (itstool) path: page/p +#: prop-system.page:23 +msgid "" +"In <app>Boxes</app>, each virtual machine has its own settings for RAM, CPU " +"and maximum allocated disk space." +msgstr "" +"<app>Boxes</app> では、各仮想マシンに「メモリ」、「CPU」と" +"「最大割り当てディスク容量」の独自の設定があります。" + +#. (itstool) path: item/p +#: prop-system.page:27 snapshot-create.page:39 +msgid "" +"Right-click on the box in the collection view and select <gui>Preferences</" +"gui>, or if the box is running, click the menu (<_:media-1/>) button in the " +"header bar and select <gui>Preferences</gui>." +msgstr "" +"コレクション ビュー(サムネール一覧)でボックスを右クリックして" +"<gui>「設定」</gui> を選択するか、ボックスが実行中の場合は、" +"ヘッダー バーのメニュー (<_:media-1/>) ボタンをクリックして" +"<gui>「設定」</gui> を選択します。" + +#. (itstool) path: item/p +#: prop-system.page:32 +msgid "" +"Adjust the <gui>Memory</gui>, <gui>CPU</gui> and <gui>Maximum disk size</" +"gui> sliders to reflect the desired values." +msgstr "" +"<gui>「メモリ」</gui>、<gui>「CPU」</gui>、および" +"<gui>「最大割り当てディスク容量」</gui>のスライダーを調整して、" +"目的の値を反映させます。" + +#. (itstool) path: note/p +#: prop-system.page:37 +msgid "" +"You shouldn't allocate all the memory available as your host system also " +"needs memory to run and the more memory is allocated, the longer it will " +"take to suspend/resume. The recommended memory will be sufficient since this " +"information comes from the OSes documentations." +msgstr "" +"ホストのシステムも実行するためにメモリを必要とし、" +"より多くのメモリが割り当てられるほど、中断/再開に時間がかかるため、" +"利用可能なすべてのメモリを割り当てるべきではありません。" +"この情報は OS のドキュメントに基づいているため、" +"推奨されるメモリで十分です。" + +#. (itstool) path: info/desc +#: prop-trouble.page:16 +msgid "Diagnose problems with your box using the log file." +msgstr "ログファイルを使用して、ボックスの問題を診断します。" + +#. (itstool) path: page/title +#: prop-trouble.page:21 +msgid "View the troubleshooting log of a box" +msgstr "ボックスのトラブルシューティング ログを表示" + +#. (itstool) path: page/p +#: prop-trouble.page:23 +msgid "" +"If a box is having a problem starting up or running, clues to help you fix " +"the problem may be found in the trouble log. The trouble log displays the " +"virtual machine state, the virtual machine libvirt configuration, and the " +"QEMU hypervisor log." +msgstr "" +"ボックスの起動または実行に問題がある場合、問題の解決に役立つ" +"手がかりがトラブル ログにある場合があります。トラブル ログには、" +"仮想マシンの状態、仮想マシンの libvirt 設定、および " +"QEMU ハイパーバイザー ログが表示されます。" + +#. (itstool) path: item/p +#: prop-trouble.page:29 snapshot-delete.page:26 snapshot-rename.page:34 +#: snapshot-revert.page:34 +msgid "" +"Right-click the box in the collection view and select <gui>Preferences</" +"gui>, or if the box is running, click the menu (<_:media-1/>) button in the " +"header bar and select <gui>Preferences</gui>." +msgstr "" +"コレクション ビュー(サムネール一覧)でボックスを右クリックして" +"<gui>「設定」</gui> を選択するか、ボックスが実行されている場合は、" +"ヘッダー バーのメニュー (<_:media-1/>) ボタンをクリックして" +"<gui>「設定」</gui> を選択します。" + +#. (itstool) path: item/p +#: prop-trouble.page:35 +msgid "" +"Click the <gui style=\"button\">Troubleshooting Log</gui> button to view the " +"log in a text editor." +msgstr "" +"<gui style=\"button\">「トラブルシューティング ログ」</gui>" +"ボタンをクリックして、ログをテキスト エディタで表示します。" + +#. (itstool) path: info/desc +#: search.page:17 +msgid "Quickly access a box by name." +msgstr "名前でボックスにすばやくアクセスします。" + +#. (itstool) path: page/title +#: search.page:20 +msgid "Search for a box" +msgstr "ボックスを検索" + +#. (itstool) path: page/p +#: search.page:22 +msgid "" +"If there is more than one box, you can locate or filter boxes by name in the " +"<link xref=\"interface#collection\">collection view</link>. Click the search " +"icon, or just start typing to initiate a search." +msgstr "" + +"複数のボックスがある場合は、" +"<link xref=\"interface#collection\">コレクション ビュー(サムネール一覧)</link>" +"でボックスを名前で検索、またはフィルタリングできます。" +"検索アイコンをクリックするか、入力を開始して検索を開始します。" + +#. (itstool) path: page/p +#: search.page:26 +msgid "Press <key>Esc</key> to dismiss the search." +msgstr "<key>Esc</key> を押して検索を終了します。" + +#. (itstool) path: info/desc +#: shared-folders.page:15 +msgid "Share folders between host and guest." +msgstr "ホストとゲストの間でフォルダを共有します。" + +#. (itstool) path: page/title +#: shared-folders.page:20 +msgid "Shared Folders" +msgstr "共有フォルダ" + +#. (itstool) path: page/p +#: shared-folders.page:22 +msgid "" +"If your virtual machine is running and contains spice-webdavd, you may want " +"to set folders in your host system which you desire to browse from inside " +"your virtual machine." +msgstr "" +"仮想マシンが実行中で、仮想マシンに「spice-webdavd」が" +"インストールされている場合、仮想マシン内から参照したい" +"ホスト システムにフォルダを設定することができます。" + +#. (itstool) path: item/p +#: shared-folders.page:31 usb-redirection.page:50 +msgid "Click the <gui>Devices & Shares</gui> tab." +msgstr "<gui>「デバイスと共有」</gui> タブをクリックします。" + +#. (itstool) path: item/p +#: shared-folders.page:32 +msgid "" +"In the <gui>Shared Folders</gui> section you can view, remove, and create " +"new shared folders." +msgstr "" +"<gui>「共有フォルダ」</gui> セクションでは、新しい共有フォルダを表示、" +"削除、および作成できます。" + +#. (itstool) path: credit/name +#: shortcuts.page:11 +msgid "Lasse Schuirmann" +msgstr "Lasse Schuirmann" + +#. (itstool) path: info/desc +#: shortcuts.page:18 +msgid "Operate <app>Boxes</app> using keyboard shortcuts." +msgstr "キーボードショートカットを使用して <app>Boxes</app> を操作します。" + +#. (itstool) path: page/title +#: shortcuts.page:21 +msgid "Keyboard shortcuts" +msgstr "キーボードショートカット" + +#. (itstool) path: page/p +#: shortcuts.page:23 +msgid "" +"Various shortcuts can be used to operate Boxes. Besides mnemonics, the " +"following shortcuts are available:" +msgstr "" +"ボックスの操作には、さまざまなショートカットを使用できます。" +"ニーモニックの他に、次のショートカットを使用できます:" + +#. (itstool) path: td/p +#: shortcuts.page:29 +msgid "Action" +msgstr "動作" + +#. (itstool) path: td/p +#: shortcuts.page:32 +msgid "Shortcut" +msgstr "ショートカット" + +#. (itstool) path: td/p +#: shortcuts.page:39 +msgid "Create new virtual machine" +msgstr "新しい仮想マシンを作成" + +#. (itstool) path: td/p +#: shortcuts.page:42 +msgid "<keyseq><key>Ctrl</key><key>N</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>N</key></keyseq>" + +#. (itstool) path: td/p +#: shortcuts.page:47 +msgid "Toggle search" +msgstr "検索を切り替え" + +#. (itstool) path: td/p +#: shortcuts.page:50 +msgid "<keyseq><key>Ctrl</key><key>F</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>F</key></keyseq>" + +#. (itstool) path: td/p +#: shortcuts.page:55 +msgid "Go back" +msgstr "戻る" + +#. (itstool) path: td/p +#: shortcuts.page:58 +msgid "<keyseq><key>Alt</key><key>Left</key></keyseq>" +msgstr "<keyseq><key>Alt</key><key>←(左)</key></keyseq>" + +#. (itstool) path: td/p +#: shortcuts.page:63 +msgid "Go forward" +msgstr "進む" + +#. (itstool) path: td/p +#: shortcuts.page:66 +msgid "<keyseq><key>Alt</key><key>Right</key></keyseq>" +msgstr "<keyseq><key>Alt</key><key>→(右)</key></keyseq>" + +#. (itstool) path: td/p +#: shortcuts.page:71 +msgid "Cancel" +msgstr "キャンセル" + +#. (itstool) path: td/p +#: shortcuts.page:74 +msgid "<keyseq><key>Esc</key></keyseq>" +msgstr "<keyseq><key>Esc</key></keyseq>" + +#. (itstool) path: td/p +#: shortcuts.page:79 +msgid "Release mouse and keyboard grab" +msgstr "マウスとキーボードの拘束を開放" + +#. (itstool) path: td/p +#: shortcuts.page:82 +msgid "<keyseq><key>Ctrl</key><key>Alt</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>Alt</key></keyseq>" + +#. (itstool) path: td/p +#: shortcuts.page:87 +msgid "Quit Boxes" +msgstr "Boxes を終了" + +#. (itstool) path: td/p +#: shortcuts.page:90 +msgid "<keyseq><key>Ctrl</key><key>Q</key></keyseq>" +msgstr "<keyseq><key>Ctrl</key><key>Q</key></keyseq>" + +#. (itstool) path: info/desc +#: shutdown.page:16 +msgid "Shut down a box that has stopped working." +msgstr "動作しなくなったボックスをシャットダウンします。" + +#. (itstool) path: page/title +#: shutdown.page:21 +msgid "Force a box to shut down" +msgstr "ボックスを強制的にシャットダウン" + +#. (itstool) path: page/p +#: shutdown.page:23 +msgid "" +"If a box stops responding, you can force it to shut down. This allows you to " +"restart the virtual machine in the hope of returning it to its working state." +msgstr "" +"ボックスが応答しなくなった場合は、強制的にシャットダウン" +"することができます。これにより、仮想マシンを動作できるように、" +"再起動することができます。" + +#. (itstool) path: item/p +#: shutdown.page:28 +msgid "Right-click the box in the collection view." +msgstr "コレクション ビュー(サムネール一覧)でボックスを右クリックします。" + +#. (itstool) path: item/p +#: shutdown.page:29 +msgid "Select the <gui style=\"button\">Force Shutdown</gui> option." +msgstr "<gui style=\"button\">「強制終了」</gui> を選択します。" + +#. (itstool) path: info/desc +#: snapshot-create.page:22 +msgid "Save the state of a box for later use." +msgstr "後で使用するためにボックスの状態を保存します。" + +#. (itstool) path: page/title +#: snapshot-create.page:27 +msgid "Create a snapshot" +msgstr "スナップショットを作成" + +#. (itstool) path: page/p +#: snapshot-create.page:29 +msgid "" +"If your virtual machine is operating perfectly in a desired configuration, " +"you may want to save the setup before it breaks because of a software " +"upgrade or configuration change. Taking a snapshot of the box preserves the " +"current state so you can return to it as often as you want." +msgstr "" +"仮想マシンが目的の設定で完全に動作している場合は、" +"ソフトウェアのアップグレードや設定の変更によって機能が停止する前に、" +"セットアップを保存することをお勧めします。ボックスのスナップショット" +"を作成すると、現在の状態が保持されるため、必要に応じて" +"何度でも戻ることができます。" + +#. (itstool) path: page/p +#: snapshot-create.page:34 +msgid "" +"Snapshots include the exact state of your virtual machine disk and they can " +"also include the memory data for boxes which are running at the moment of " +"the snapshot creation." +msgstr "" +"スナップショットには、仮想マシン のディスクの正確な状態が含まれ、" +"スナップショットの作成時に実行されているボックスのメモリ データ" +"も含まれている場合があります。" + +#. (itstool) path: item/p +#: snapshot-create.page:43 snapshot-delete.page:30 snapshot-rename.page:38 +#: snapshot-revert.page:38 +msgid "Click the <gui>Snapshots</gui> tab." +msgstr "<gui>「スナップショット」</gui> タブをクリックします。" + +#. (itstool) path: item/p +#: snapshot-create.page:44 +msgid "Click <key>+</key> below the <gui>Snapshots</gui> list." +msgstr "" +"<gui>「スナップショット」</gui> 一覧の下にある <key>+</key> をクリックします。" + +#. (itstool) path: page/p +#: snapshot-create.page:47 +msgid "" +"A snapshot is saved reflecting the current state of your box. It appears in " +"the list." +msgstr "" +"ボックスの現在の状態を反映したスナップショットが保存されます。" +"リストに表示されます。" + +#. (itstool) path: info/desc +#: snapshot-delete.page:16 +msgid "Remove a snapshot that you no longer need." +msgstr "不要になったスナップショットを削除します。" + +#. (itstool) path: page/title +#: snapshot-delete.page:21 +msgid "Delete a snapshot" +msgstr "スナップショットを削除" + +#. (itstool) path: page/p +#: snapshot-delete.page:23 +msgid "A snapshot that is no longer needed can be removed from the list." +msgstr "不要になったスナップショットは、一覧から削除できます。" + +#. (itstool) path: item/p +#: snapshot-delete.page:31 +msgid "Select the snapshot that you want to delete from the list." +msgstr "一覧から削除するスナップショットを選択します。" + +#. (itstool) path: item/p +#: snapshot-delete.page:32 +msgid "" +"Click the <gui style=\"button\">X</gui> button on the list to delete it." +msgstr "" +"一覧の<gui style=\"button\">「X」</gui> ボタンをクリックして" +"削除します。" + +#. (itstool) path: info/desc +#: snapshot-rename.page:16 +msgid "Give the snapshot a meaningful name." +msgstr "スナップショットに意味のある名前を付けます。" + +#. (itstool) path: page/title +#: snapshot-rename.page:21 +msgid "Rename a snapshot" +msgstr "スナップショットの名前を変更" + +#. (itstool) path: page/p +#: snapshot-rename.page:23 +msgid "" +"By default, a snapshot is given a generic name based on the timestamp, like:" +msgstr "" +"デフォルトでは、スナップショットには、タイムスタンプを元にして" +"次のような一般的な名前が付けられます:" + +#. (itstool) path: page/p +#: snapshot-rename.page:26 +msgid "<file>09/14/2014, 11:54:36 AM</file>" +msgstr "<file>09/14/2014, 11:54:36 AM</file>" + +#. (itstool) path: page/p +#: snapshot-rename.page:28 +msgid "You may want to change the name to something more meaningful, such as:" +msgstr "次のように、名前をより意味のある名前に変更することをお勧めします:" + +#. (itstool) path: page/p +#: snapshot-rename.page:30 +msgid "" +"<file>Fedora_22_with_jhbuild</file> or <file>Windows 7 plus GTK+ 3.6.4</" +"file>." +msgstr "" +"<file>Fedora_22_with_jhbuild</file> 、または " +"<file>Windows 7 plus GTK+ 3.6.4</file>." + +#. (itstool) path: item/p +#: snapshot-rename.page:39 +msgid "From the list, select the snapshot that you want to rename." +msgstr "一覧から、名前を変更するスナップショットを選択します。" + +#. (itstool) path: item/p +#: snapshot-rename.page:40 +msgid "Click the edit button on the list to rename." +msgstr "一覧にある「編集」ボタンをクリックして、名前を変更します。" + +#. (itstool) path: info/desc +#: snapshot-revert.page:22 +msgid "Change back to the state of a saved snapshot." +msgstr "保存されたスナップショットの状態に戻します。" + +#. (itstool) path: page/title +#: snapshot-revert.page:27 +msgid "Revert the state of a box" +msgstr "ボックスの状態を元に戻す" + +#. (itstool) path: page/p +#: snapshot-revert.page:29 +msgid "" +"<em>Reverting</em> to a snapshot restores the state of the virtual machine " +"saved in that snapshot. The memory state also gets restored, bringing back " +"running programs and settings at the exact same state of the snapshot " +"creation." +msgstr "" +"<em>元に戻す</em>と、そのスナップショットに保存されている" +"仮想マシンの状態が復元されます。メモリの状態も復元され、" +"実行中のプログラムと設定がスナップショット作成時とまったく" +"同じ状態に戻ります。" + +#. (itstool) path: item/p +#: snapshot-revert.page:39 +msgid "From the list, select the snapshot to which you want to revert." +msgstr "一覧から、元に戻すスナップショットを選択します。" + +#. (itstool) path: item/p +#: snapshot-revert.page:41 +msgid "Click the revert button next to the snapshot name." +msgstr "スナップショット名の横にある「元に戻す」ボタンをクリックします。" + +#. (itstool) path: note/p +#: snapshot-revert.page:45 +msgid "" +"Snapshots capture a state of your virtual machine. Changes that you make " +"after creating a snapshot will be lost on revert." +msgstr "" +"スナップショットは、仮想マシンの状態を保存します。" +"スナップショットの作成後に行った変更は、元に戻すと失われます。" + +#. (itstool) path: page/title +#: supported-protocols.page:26 +msgid "What is the technology used by Boxes?" +msgstr "Boxes で使われているテクノロジーは何ですか?" + +#. (itstool) path: page/p +#: supported-protocols.page:36 +msgid "" +"Boxes uses <app>qemu-kvm</app>, <app>libvirt-glib</app> and <app>spice-gtk</" +"app> to allow users to easily manage virtual machines." +msgstr "" +"Boxes は <app>「qemu-kvm」</app>、<app>「libvirt-glib」</app>、" +"および <app>「spice-gtk」</app> を使用して、ユーザーが仮想マシンを" +"簡単に管理できるようにしています。" + +#. (itstool) path: section/title +#: supported-protocols.page:41 +msgid "QEMU with KVM" +msgstr "KVM を使用した QEMU" + +#. (itstool) path: section/p +#: supported-protocols.page:43 +msgid "" +"<app>QEMU</app> is a machine emulator and virtualizer. As a machine " +"emulator, it can run OSes and programs made for one machine (e.g. an ARM " +"board) on a different machine (e.g. your own PC). As a virtualizer, QEMU " +"achieves near native performance by executing the guest code directly on the " +"host CPU using KVM." +msgstr "" +"<app>「QEMU」</app> は、マシンエミュレータおよびバーチャライザー" +"です。マシンエミュレータとして、あるマシン(ARM ボードなど)用に" +"作成されたOS およびプログラムを別のマシン(自分のPC など)で実行できます。" +"仮想化機能として、QEMU は、KVM を使用してホストCPU でゲストコードを" +"直接実行することにより、ほぼネイティブのパフォーマンスを実現します。" + +#. (itstool) path: section/p +#: supported-protocols.page:49 +msgid "" +"<app>KVM</app> (Kernel-based Virtual Machine) is a Linux kernel module that " +"allows a user space program to use the hardware virtualization features of " +"various processors." +msgstr "" +"<app>「KVM」</app>(カーネルベースの仮想マシン)は、ユーザーペース" +"プログラムがさまざまなプロセッサのハードウェア仮想化機能を使用できる" +"ようにする Linux カーネルモジュールです。" + +#. (itstool) path: section/title +#: supported-protocols.page:56 +msgid "libvirt" +msgstr "libvirt" + +#. (itstool) path: section/p +#: supported-protocols.page:58 +msgid "" +"<app>libvirt</app> is a toolkit for manipulating (creating, deleting and " +"modifying) and monitoring virtual machines." +msgstr "" +"<app>「libvirt」</app> は、仮想マシンを操作(作成、削除、変更)、" +"および監視するためのツールキットです。" + +#. (itstool) path: section/p +#: supported-protocols.page:61 +msgid "" +"<app>libvirt-glib</app> wraps libvirt to provide a high-level object-" +"oriented API suited for glib-based applications." +msgstr "" +"<app>「libvirt-glib」</app> は、libvirt をラップして、glib ベースの" +"アプリケーションに適した高レベルのオブジェクト指向 API を提供します。" + +#. (itstool) path: section/title +#: supported-protocols.page:67 +msgid "SPICE" +msgstr "SPICE" + +#. (itstool) path: section/p +#: supported-protocols.page:69 +msgid "" +"<app>SPICE</app>, the Simple Protocol for Independent Computing " +"Environments, is a system for accessing and controlling remote desktops " +"across a network." +msgstr "" +"<app>「SPICE」</app> は、独立したコンピュータの環境向け" +"のシンプルなプロトコルであり、ネットワークを介してリモート" +"デスクトップにアクセスして制御するためのシステムです。" + +#. (itstool) path: section/p +#: supported-protocols.page:73 +msgid "" +"The SPICE server is a library that runs inside the QEMU binary. It is mainly " +"responsible for authentication of client connections, relaying of graphics " +"output of the guest OS to the client and relaying of user input (mouse and " +"keyboard) from client to guest." +msgstr "" +"「SPICE サーバー」は、QEMU バイナリー内で実行されるライブラリです。" +"主に、クライアント接続の認証、ゲストOS のグラフィック出力" +"のクライアントへの中継、およびクライアントからゲストへの" +"ユーザ入力(マウスとキーボード)の中継を担当します。" + +#. (itstool) path: section/p +#: supported-protocols.page:78 +msgid "" +"<app>spice-gtk</app> is the SPICE client that provides a view into the guest " +"OS." +msgstr "" +"<app>「spice-gtk」</app> は、ゲストOS へのビューを提供する" +"SPICE クライアントです。" + +#. (itstool) path: section/title +#: supported-protocols.page:84 +msgid "VNC" +msgstr "VNC" + +#. (itstool) path: section/p +#: supported-protocols.page:86 +msgid "" +"<app>VNC</app>, Virtual Network Computing, used as fallback when SPICE is " +"not available, is a well know protocol but quite limited and slow." +msgstr "" +"<app>「VNC」</app> (仮想ネットワークコンピューティング)は、" +"SPICE が利用できない場合のフォールバックとして使用されますが、" +"リモート表示のみに使用される、よく知られたプロトコルですが、" +"非常に限定的で低速です。" + +#. (itstool) path: credit/name +#: system-requirements.page:21 +msgid "Ekaterina Gerasimova" +msgstr "Ekaterina Gerasimova" + +#. (itstool) path: credit/name +#: system-requirements.page:26 +msgid "Zeeshan Ali (Khattak)" +msgstr "Zeeshan Ali (Khattak)" + +#. (itstool) path: info/desc +#: system-requirements.page:31 +msgid "Hardware required to run a <app>Boxes</app> virtual machine." +msgstr "<app>Boxes</app> で仮想マシンを実行するために必要なハードウェア。" + +#. (itstool) path: page/title +#: system-requirements.page:36 +msgid "Get started with virtual machines" +msgstr "仮想マシンについて入門" + +#. (itstool) path: page/p +#: system-requirements.page:38 +msgid "" +"Your computer should meet certain criteria for best performance when " +"creating and running virtual machines in <app>Boxes</app>. These " +"requirements are specified by the vendors of the operating systems. " +"<app>Boxes</app> automatically allocates resources to virtual machines based " +"on vendor recommendations. When such information is unavailable to " +"<app>Boxes</app>, it allocates the following:" +msgstr "" +"<app>Boxes</app> で仮想マシンを作成して実行する場合、" +"コンピュータは最高のパフォーマンスを得るために特定の基準を満たして" +"いる必要があります。 これらの要件は、オペレーティング システムのベンダー" +"によって指定されています。" +"<app>Boxes</app> は、ベンダーの推奨事項に基づいて仮想マシンに" +"リソースを自動的に割り当てます。そのような情報が <app>Boxes</app> で" +"利用できない場合、以下を割り当てます:" + +#. (itstool) path: item/p +#: system-requirements.page:47 +msgid "20 GB of maximum storage space." +msgstr "最大ストレージ容量は 20GB です。" + +#. (itstool) path: note/p +#: system-requirements.page:49 +msgid "" +"This does not mean that <app>Boxes</app> will allocate 20 GB of space when " +"creating the virtual machine. The actual disk space used by <app>Boxes</app> " +"will be less than (or in the worst case, equal to) the disk space used by " +"the virtual machine itself." +msgstr "" +"これは、仮想マシンの作成時に <app>Boxes</app> が 20GB の" +"スペースを割り当てることを意味するものではありません。" +"<app>Boxes</app> が使用する実際のディスク容量は、" +"仮想マシン自体が使用するディスク容量よりも少なくなります" +"(最悪の場合、同じになります)。" + +#. (itstool) path: item/p +#: system-requirements.page:56 +msgid "500 MB of RAM." +msgstr "500MB のメモリ。" + +#. (itstool) path: note/p +#: system-requirements.page:61 +msgid "" +"<app>Boxes</app> performs best if your computer processor supports hardware " +"<link xref=\"virtualization\">virtualization extensions</link> and these are " +"enabled in the system BIOS." +msgstr "" +"<app>Boxes</app> は、コンピュータのプロセッサが" +"ハードウェア <link xref=\"virtualization\">仮想化機能</link>" +"をサポートし、これらがシステム BIOS で有効になっている場合" +"に最高のパフォーマンスを発揮します。" + +#. (itstool) path: note/p +#: system-requirements.page:66 +msgid "" +"It is also recommended that you have at least 8GB RAM and 20GB of free disk " +"space on your computer to efficiently run <app>Boxes</app>." +msgstr "" +"<app>Boxes</app> を効率的に実行するには、コンピュータに" +"少なくとも 8GB のメモリと 20GB の空きディスク容量があること" +"をお勧めします。" + +#. (itstool) path: info/desc +#: usb-redirection.page:29 +msgid "Allow your box to access a USB device." +msgstr "ボックスが USB デバイスにアクセスできるようにします。" + +#. (itstool) path: page/title +#: usb-redirection.page:35 +msgid "USB Redirection" +msgstr "USB リダイレクト" + +#. (itstool) path: page/p +#: usb-redirection.page:37 +msgid "" +"<sys>USB</sys> is a universal hardware bus protocol used to plug any kind of " +"device into your computer. <sys>USB redirection</sys> makes devices plugged " +"into your local computer available in the machines running in <app>Boxes</" +"app>. For instance, a USB flash drive or a webcam will appear as directly " +"connected to the virtual computer." +msgstr "" +"<sys>USB</sys> は、あらゆる種類のデバイスをコンピュータに" +"接続するために使用されるユニバーサルハードウェアバスプロトコルです。" +"<sys>USB リダイレクト</sys> を使用すると、" +"ローカルコンピュータに接続されているデバイスを、" +"<app>Boxes</app> で実行されているマシンで使用できるようになります。" +"例えば、「USB フラッシュドライブ」または「Web カメラ」は、" +"リモートまたは仮想コンピュータに直接接続されているように表示されます。" + +#. (itstool) path: steps/title +#: usb-redirection.page:44 +msgid "To enable host USB devices in a box:" +msgstr "ボックスでホストの USB デバイスを有効にするには:" + +#. (itstool) path: item/p +#: usb-redirection.page:45 +msgid "Make sure the box is running." +msgstr "ボックスが実行されていることを確認します。" + +#. (itstool) path: item/p +#: usb-redirection.page:46 +msgid "" +"Right-click the box in the collection view and select <gui>Preferences</" +"gui>, or click the menu (<_:media-1/>) button in the header bar and select " +"<gui>Preferences</gui>." +msgstr "" +"コレクションビュー(サムネール一覧)でボックスを右クリックし、" +"<gui>「設定」</gui>を選択するか、メニュー (<_:media-1/>) " +"ボタンをクリックし、<gui>「設定」</gui> を選択します。" + +#. (itstool) path: item/p +#: usb-redirection.page:51 +msgid "" +"<gui>USB Devices</gui> connected to the host machine are shown in a list. " +"Set the switch next to each desired device to <gui style=\"switch\">ON</gui>." +msgstr "" + +"ホスト マシンに接続されている <gui>「USB デバイス」</gui>" +"が一覧表示されます。目的の各デバイスの横にあるスイッチを" +"<gui style=\"switch\">「オン」</gui> に設定します。" + +#. (itstool) path: credit/name +#: virtualization.page:15 +msgid "Priya Pandya" +msgstr "Priya Pandya" + +#. (itstool) path: credit/years +#: virtualization.page:17 +msgid "2019" +msgstr "2019" + +#. (itstool) path: info/desc +#: virtualization.page:22 +msgid "Check the resources available to <app>Boxes</app>." +msgstr "<app>Boxes</app> で利用できるリソースを確認してください。" + +#. (itstool) path: page/title +#: virtualization.page:25 +msgid "Using processor hardware virtualization" +msgstr "「プロセッサ ハードウェア仮想化機能」を使う" + +#. (itstool) path: page/p +#: virtualization.page:27 +msgid "" +"To determine whether your computer supports processor virtualization " +"hardware extensions, and that they have been enabled in the system BIOS, run " +"the following in a terminal window:" +msgstr "" +"お使いのコンピュータが「プロセッサ ハードウェア仮想化機能」" +"をサポートしているかどうか、およびそれらがシステム BIOS で有効" +"になっているかどうかを確認するには、" +"端末画面で次のコマンドを実行します:" + +#. (itstool) path: page/p +#: virtualization.page:30 +msgid "<cmd>gnome-boxes --checks</cmd>" +msgstr "<cmd>gnome-boxes --checks</cmd>" + +#. (itstool) path: page/p +#: virtualization.page:33 +msgid "To enable Virtualization on your system:" +msgstr "システムで仮想化を有効にするには:" + +#. (itstool) path: item/p +#: virtualization.page:35 +msgid "Reboot the system and open the <gui>BIOS</gui> menu" +msgstr "システムを再起動し、<gui>「BIOS」</gui> メニューを開きます" + +#. (itstool) path: item/p +#: virtualization.page:36 +msgid "" +"Select <gui>Restore Defaults</gui> option and then <gui>Save and Exit</gui>" +msgstr "" +"<gui>「Restore Defaults」(デフォルトに戻す)</gui> を選択してから、" +"<gui>「Save and Exit」(保存して終了)</gui> を選択します" + +#. (itstool) path: item/p +#: virtualization.page:37 +msgid "Reboot and again open <gui>BIOS</gui>" +msgstr "再起動して、<gui>「BIOS」</gui>を再度開きます" + +#. (itstool) path: item/p +#: virtualization.page:38 +msgid "" +"Open the <gui>Processor</gui> submenu in the <gui>Chipset, Advanced CPU " +"Configuration</gui> or <gui>Northbridge</gui>" +msgstr "" + +"<gui>「Chipset, Advanced CPU Configuration」</gui>、" +"または <gui>「Northbridge」</gui> で、" +"<gui>「Processor」</gui> サブメニューを開きます。" + +#. (itstool) path: item/p +#: virtualization.page:39 +msgid "" +"Enable <gui>Intel Virtualization Technology</gui> (also known as Intel VT) " +"or <gui>AMD-V</gui> depending on the brand of the processor. The " +"virtualization extensions may be labeled <gui>Virtualization Extensions, " +"Vanderpool</gui> or various other names depending on the OEM and system BIOS" +msgstr "" + +"プロセッサのブランドに応じて、" +"<gui>「Intel Virtualization Technology」</gui>(Intel VT)、" +"または <gui>「AMD-V」</gui> を有効にします。" +"「プロセッサ ハードウェア仮想化機能」には、OEM およびシステム BIOS に応じて、" +"<gui>「Virtualization Extensions」、「Vanderpool」</gui>、" +"またはその他のさまざまな名前が付けられます。" + +#. (itstool) path: item/p +#: virtualization.page:40 +msgid "<gui>Save and Exit</gui>" +msgstr "<gui>「Save and Exit」</gui>" + +#. (itstool) path: item/p +#: virtualization.page:41 +msgid "Reboot and run: <cmd>cat /proc/cpuinfo | grep vmx svm</cmd>" +msgstr "" +"再起動して、次のコマンドを実行します: " +" <cmd>cat /proc/cpuinfo | grep vmx svm</cmd>" + +#. (itstool) path: page/p +#: virtualization.page:44 +msgid "" +"If there is some output then the virtualization extensions are now enabled. " +"If there is no output your system may not have the virtualization extensions " +"or the correct BIOS setting enabled" +msgstr "" +"出力があれば、プロセッサ ハードウェア仮想化機能が有効になっています。" +"出力がない場合、システムでプロセッサ ハードウェア仮想化機能が" +"有効になっていないか、正しい BIOS 設定が有効になっていない可能性" +"があります" + +#. (itstool) path: page/title +#: what-is-a-virtual-machine.page:26 +msgid "What is a virtual machine?" +msgstr "仮想マシンとは何ですか?" + +#. (itstool) path: page/p +#: what-is-a-virtual-machine.page:28 +msgid "" +"A virtual machine is a simulated computer running inside another computer. " +"The simulated computer is often called <em>guest</em>, while the real " +"machine is called <em>host</em>." +msgstr "" +"仮想マシンは、別のコンピュータ内で実行されている" +"シミュレートされたコンピュータです。" +"シミュレートされたコンピュータは <em>「ゲスト」</em> と呼ばれる" +"ことが多く、実際のマシンは <em>「ホスト」</em> と呼ばれます。" + +#. (itstool) path: page/p +#: what-is-a-virtual-machine.page:31 +msgid "" +"With <em>virtualization</em>, the guest has access to the real hardware the " +"host is running. If the guest can run on fake hardware, it's called " +"<em>emulation</em>." +msgstr "" + +"<em>仮想化</em>を使用すると、ゲストはホストが実行している" +"実際のハードウェアにアクセスできます。ゲストが実体ではないハードウェアで" +"実行できる場合、それは <em>「エミュレーション」</em> と呼ばれます。" + +#. (itstool) path: page/title +#: why-do-i-need-virtual-machine.page:27 +msgid "Why do I need a virtual machine?" +msgstr "なぜ仮想マシンが必要なのですか?" + +#. (itstool) path: page/p +#: why-do-i-need-virtual-machine.page:29 +msgid "" +"A virtual machine can be useful when you need to run applications that will " +"only run on another operating system, on Microsoft Windows™ for instance. A " +"virtual machine can also be used during software development, to test in a " +"pristine environment." +msgstr "" +"仮想マシンは、例えば「Microsoft Windows™」など、" +"別のオペレーティングシステムでのみ実行されるアプリケーション" +"を実行する必要がある場合に役立ちます。" +"ソフトウェア開発中に仮想マシンを使用して、" +"手付かずの環境でテストすることもできます。" +
→連続して、すべて貼り付けてください:
Shift+下矢印「↓」を使って行き過ぎたら、
Shift キーを押したまま、「↓」だけを離して、「↑」で調整
Ctrl+C して、テキストエディタに Ctrl+V で貼り付け。
-
ファイルの最後に「+」だけの行(1781 行目)があることを確認、
その「+」行で改行して(計: 1782 行)にしてから、Ctrl+S で保存してください。
-
2). パッチファイルの適用:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/ $ ls *ja.patch help-ja.patch
-
$ patch -p1 < help-ja.patch : patching file help/LINGUAS ←(日本語を翻訳する指定) patching file help/ja/ja.po ←(日本語の翻訳ファイル)
→正常に完了すれば、上記のメッセージが表示されます。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- -----
6. 「Boxes」のヘルプのみをビルド:
-
「help」フォルダで、ビルドして、翻訳ファイルを作成しました:
-
1). 「help」フォルダの「meson.build」を退避:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/help/ $ cp meson.build meson.build-ORG
-
2). meson.build の一部修正:
$ mousepad ~/ダウンロード/box-help/gnome-boxes-42.2/help/meson.build
↓ ファイルの先頭に下記を追記:
project ('gnome-boxes', ['c'], version: '42.3', license: 'LGPLv2+', meson_version: '>= 0.50.0', ) gnome = import ('gnome') i18n = import ('i18n') cc = meson.get_compiler ('c')
-
確認:
$ cat ~/ダウンロード/box-help/gnome-boxes-42.2/help/meson.build
project ('gnome-boxes', ['c'], version: '42.3', license: 'LGPLv2+', meson_version: '>= 0.50.0', ) gnome = import ('gnome') i18n = import ('i18n') cc = meson.get_compiler ('c') help_files = [ '3d-acceleration.page', 'backup.page', 'create.page', 'delete.page', 'disk-images.page', 'edit-domain.page', 'index.page', 'interface.page', 'keystrokes.page', 'legal.xml', 'prop-system.page', 'prop-trouble.page', 'search.page', 'shared-folders.page', 'shortcuts.page', 'shutdown.page', 'snapshot-create.page', 'snapshot-delete.page', 'snapshot-rename.page', 'snapshot-revert.page', 'supported-protocols.page', 'system-requirements.page', 'usb-redirection.page', 'virtualization.page', 'what-is-a-virtual-machine.page', 'why-do-i-need-virtual-machine.page', ] help_media = [ 'figures/boxes_icon.svg', 'figures/input-keyboard-symbolic.svg', 'figures/view-more-symbolic.svg' ] gnome.yelp (meson.project_name (), sources: help_files, media: help_media, symlink_media: true, )
-
3). 「meson」でビルド:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/help/
-
$ meson builddir/ : The Meson build system Version: 0.61.2 Source dir: /home/ubn/ダウンロード/box-help/gnome-boxes-42.2/help Build dir: /home/ubn/ダウンロード/box-help/gnome-boxes-42.2/help/builddir Build type: native build Project name: gnome-boxes Project version: 42.3 C compiler for the host machine: cc (gcc 11.2.0 "cc (Ubuntu 11.2.0-19ubuntu1) 11.2.0") C linker for the host machine: cc ld.bfd 2.38 Host machine cpu family: x86_64 Host machine cpu: x86_64 Program itstool found: YES (/usr/bin/itstool) Program msgmerge found: YES (/usr/bin/msgmerge) Program msgfmt found: YES (/usr/bin/msgfmt) Build targets in project: 59 Found ninja-1.10.1 at /usr/bin/ninja
→成功
-
結果の確認:
$ ls ~/ダウンロード/box-help/gnome-boxes-42.2/help/ : C ca de eu hu ja meson.build-ORG ru LINGUAS cs el fr id ko pl sv builddir da es gl it meson.build pt_BR uk
-
$ ls ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ : build.ninja meson-info meson-private compile_commands.json meson-logs
→「build.ninja」が出来ました。成功。
-
6). ninja でビルド:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/help/
$ meson compile -C builddir : ninja: Entering directory `/home/ubn/ダウンロード/box-help/gnome-boxes-42.2/help/builddir' [38/38] Generating uk/help-gnome-boxes-uk with a custom command
-
結果の確認:
$ ls ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ : build.ninja da eu id meson-info pt_BR ca de fr it meson-logs ru compile_commands.json el gl ja meson-private sv cs es hu ko pl uk
-
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ja/ $ ls -1 : 3d-acceleration.page backup.page create.page delete.page disk-images.page edit-domain.page gnome-boxes-ja.gmo ←(不要) index.page interface.page keystrokes.page legal.xml prop-system.page prop-trouble.page search.page shared-folders.page shortcuts.page shutdown.page snapshot-create.page snapshot-delete.page snapshot-rename.page snapshot-revert.page supported-protocols.page system-requirements.page usb-redirection.page virtualization.page what-is-a-virtual-machine.page why-do-i-need-virtual-machine.page
→翻訳に必要なファイルが生成されました。
画像の「finger」フォルダがなくて、翻訳するときの一時的な「gnome-boxes-ja.gmo」(不要)があります。
今回は、上記で一覧表示された page ファイルがあれば十分です。
-
page ファイルが日本語に翻訳されているか確認:
ひとつを抜粋:
$ tail -n 4 3d-acceleration.page
<p>すでに実行中の仮想マシンで 3D アクセラレーションを有効にすると、ボックスの再起動後に変更が適用されます。</p> </note> </page>
→翻訳 OK
-
7). ヘルプを日本語化するための「フォルダ」を作成:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ja/ $ mkdir -p test-dir $ cp *.page test-dir $ cp -r ~/ダウンロード/box-help/gnome-boxes-42.2/help/C/legal.xml test-dir/ $ cp -r ~/ダウンロード/box-help/gnome-boxes-42.2/help/C/figures test-dir/
-
結果の確認:
$ ls -1 ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ja/test-dir/ : 3d-acceleration.page backup.page create.page delete.page disk-images.page edit-domain.page figures ←(注目) index.page interface.page keystrokes.page legal.xml ←(注目: これがないと日本語化されません) prop-system.page prop-trouble.page search.page shared-folders.page shortcuts.page shutdown.page snapshot-create.page snapshot-delete.page snapshot-rename.page snapshot-revert.page supported-protocols.page system-requirements.page usb-redirection.page virtualization.page what-is-a-virtual-machine.page why-do-i-need-virtual-machine.page
-
$ ls -l ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ja/test-dir/figures/ : -rw-rw-r-- 1 ubn ubn 5443 10月 1 20:05 boxes_icon.svg -rw-rw-r-- 1 ubn ubn 6068 10月 1 20:05 input-keyboard-symbolic.svg -rw-rw-r-- 1 ubn ubn 265 10月 1 20:05 view-more-symbolic.svg
→リンクではなく、確実な実体をコピーしました。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- -
7. 「Boxes」のヘルプを日本語化:
-
ヘルプを日本語化するために準備した「フォルダ」の内容をシステムにコピーしました:
-
1). 翻訳フォルダをクリア:
$ sudo rm -r /usr/share/help/ja/gnome-boxes : rm: '/usr/share/help/ja/gnome-boxes' を削除できません: そのようなファイルやディレクトリはありません
→念の為の、再実行に備えての処理です。
-
2). 翻訳フォルダ「ja」をシステムに配置:
$ sudo mkdir -p /usr/share/help/ja/gnome-boxes $ cd /usr/share/help/ja/gnome-boxes/ $ sudo cp -r ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ja/test-dir/* ./
-
3). 確認:
$ ls -1 /usr/share/help/ja/gnome-boxes/ : 3d-acceleration.page backup.page create.page delete.page disk-images.page edit-domain.page figures ←(画像フォルダ) index.page interface.page keystrokes.page legal.xml ←(ライセンス) prop-system.page prop-trouble.page search.page shared-folders.page shortcuts.page shutdown.page snapshot-create.page snapshot-delete.page snapshot-rename.page snapshot-revert.page supported-protocols.page system-requirements.page usb-redirection.page virtualization.page what-is-a-virtual-machine.page why-do-i-need-virtual-machine.page
→「完了」
-
4). 再起動:
$ reboot
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- --
8. ヘルプの「操作説明」が日本語化されたか確認:
-
「Boxes」を起動して、ヘルプの「操作説明」を表示:
メニュー →開発 →「Boxes」
-
右上の「横3本線」ボタン →ヘルプ
-
(1). 「ヘルプ」ではなく、 (KHelpCenter) 画面が表示されるとき:
「こちら 」を参照:
-
(2). 「ヘルプ」が表示されるけど、日本語化されないとき:
「legal.xml」ファイルがあるかを確認:
$ ls -1 /usr/share/help/ja/gnome-boxes/legal.xml /usr/share/help/ja/gnome-boxes/legal.xml
→コピーを忘れると、日本語化されません。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ---
9. Boxes のヘルプの日本語化を確認するため、ボックスを作成:
-
ボックスが作成されていないと、Boxes の半分の機能しか、日本語化されたかの確認ができません。
-
すでにダウンロードした「Xubuntu 22.04.1 LTS」の「iso イメージ」を使い、ボックスを作成しました:
-
現在、ブログを書くために、色々な(新しく公開された) Linux ディストリビューションのインストールを行っています。公開前のイメージを使うことが多いので、登録の遅めな「注目のダウンロード」一覧は、期待できません。
個人的には、ダウンロード済みの「iso イメージ」を指定できて、「ボックス」が作成(ゲストOS がインストール)できれば十分です。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----
9-1. 「Xubuntu 22.04.1 LTS」の ISO イメージをダウンロード:
-
すでに下記でダウンロード済みです:
-
「ISO イメージをダウンロード:」
-
$ ls ~/ダウンロード/Xubuntu/xubuntu-22.04.1-desktop-amd64.iso /home/ubn/ダウンロード/Xubuntu/xubuntu-22.04.1-desktop-amd64.iso
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- -----
9-2. 「Xubuntu 22.04.1 LTS」のボックスを作成:
-
最近販売されているPC のほとんどは「UEFI 立ち上げ」です。
「EFI 立ち上げ」オンにすることで、実際のインストールに近い画面が見れます。
-
1). 「Boxes」を起動:
メニュー →開発 →「Boxes」
→「Boxes」の起動:
-
2). ウィンドウの左上の「+」(新規)
-
3). 「仮想マシンを作成」画面:
→「注目のダウンロード」には、「Ubuntu 22.04 LTS」と「Ubuntu 20.04 LTS」の2つだけが表示されました。
-
参考: 以前、試してみようと「注目のダウンロード」の一覧をクリックしたら、ハマりました
→スムーズに行くときは良いのですが、もし、ダウンロードに失敗したり、気が変わって途中で画面を戻ったりすると、その後、アプリを終了しても、選択したその設定を引きずり、抜けるのが大変でした。
-
以前の苦い経験から、および、個人的には不要な機能なので、
「Boxes」で売りの、「注目のダウンロード」と「かんたんインストール」の機能は無視してます
-
ただし、(うまく動くのなら、)簡単にゲストOS を試せるので便利な機能です。
-
4). 画面下にある「ファイルから仮想マシンを作成」をクリック:
ファイルを指定:
~/ダウンロード/Xubuntu/xubuntu-22.04.1-desktop-amd64.iso
→「開く」
-
5). 「準備中…」画面:
テンプレート: 「不明な OS」→「Ubuntu 22.04 LTS」を選択:
-
選択しても一覧が消えないので、
テンプレート: 「Ubuntu 22.04 LTS」をクリックしてから、
→右上の「次へ」
-
6). 「確認と作成」画面:
クルクル回って、
-
(1). 表示された画面:
↓
次のプロパティで新しいボックスをセットアップする準備ができました:
オペレーティングシステム: Ubuntu 22.04 LTS メモリ: 2.0 GiB ストレージの上限: 20.0 GiB EFI を有効にする: オフ
-
(2). 上記の項目を変更しました:
→「ー/+」設定パネルで、値を調整できます:
↓
メモリ: 2.0 GiB →「3.0」GiB に変更 ストレージの上限: 20.0 GiB →「25.0」GiB に変更 EFI を有効にする: オフ →「オン」に変更
-
→右上の「作成」をクリック
-
(3). この時点では、ボックスの名前は指定できません
ウィンドウのタイトルバーに「xubuntu 22」が表示されています。 これが現在のボックス名です。
→インストール完了後に(サムネールを右クリック →設定にて)変更できます。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- -
9-3. 「Xubuntu 22.04.1 LTS」のライブ立ち上げ:
-
1). 右上の「作成」をクリックすると、自動でボックスが起動されました
-
2). ブート選択画面が表示
メニューの一番下に、UEFI のメニュー項目があるので、「UEFI 立ち上げ」です。
→デフォルトの選択のまま待つか、Enter
-
画面真っ暗で少し時間がかかりました。
-
デフォルトの壁紙が長めに表示されます:
→開いていたウィンドウの幅に縮小された解像度で表示されました。
-
3). Welcome 画面が表示:
→ひとつのウィンドウ画面として表示されます。
-
日本語を選ぶと、日本語の表示に変わります:
→「Xubuntu を試す」を選択:
-
4). ライブ立ち上げのデスクトップ画面が表示されました
→壁紙で、インストールアイコンが見づらいです。
-
事前の確認:
- 端末にて、
$ uname -r 5.15.0-43-generic $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=22.04 DISTRIB_CODENAME=jammy DISTRIB_DESCRIPTION="Ubuntu 22.04.1 LTS"
-
5). 電源オフ:
$ shutdown -h now
-
「Xubuntu」が表示されたままです:
電源がオフにならないので、
→ Enter
-
6). 電源オフされ、「Boxes」のボックス一覧画面が表示:
「xubuntu-22」という、ボックスがひとつ作成されています:
→2重丸のアイコンになっていることに注目。(停止状態)
クリックして起動すれば、「Xubuntu」のインストールの続きが実行できます。
-
7). ボックスの名前を変更:
ボックスの「xubuntu-22」を右クリック:
→「設定」
-
「設定」画面が表示:
→タイトルバーの表示が欠けています:
アイコンの高さだけ、ウィンドウのタイトルバーの高さが足りていません。 アイコンは横置きがいいかも。
-
ボックスの名前を変更:
「リソース」タブ:
名前: 「xubuntu-22」→「Xubuntu 22.04.1 LTS」に変更
-
「設定」画面の右上の「x」で画面を閉じました:
-
8). 「Boxes」の右上の「x」で、「Boxes」を閉じました:
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- --
10. 「Boxes」のヘルプで気付いたこと:
-
1). 英語で「Boxes」を起動:
$ LANG=C gnome-boxes
-
ヘルプを表示:
→あれっ、「操作説明」は英語のはずですが、日本語で表示 されました。
-
2). ビルドによるファイルの変化を確認:
-
原本側の確認(4行指定):
$ cd /usr/share/help/C/gnome-boxes/ $ head -n 4 3d-acceleration.page
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" style="task" id="3d-acceleration">
-
日本語側の確認(2行指定):
$ cd /usr/share/help/ja/gnome-boxes/ $ head -n 2 3d-acceleration.page
<?xml version="1.0" encoding="utf-8"?> ←(行1: xml 行の追加) <page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" style="task" id="3d-acceleration" xml:lang="gnome-boxes-ja"> ←(行2: 行末に言語指定)
→実際は2行の文です。ブログで見やすいように行を分割しました。
ビルドにより、ファイルの先頭 1〜2 行目が使用言語に応じて加工されてます。
-
→ビルドすると使用言語に応じて、XML 行が追加されます:
今までの投稿での、直接ファイルへ行った日本語化パッチでは、「C」フォルダの page ファイルにXML 行を追加していました。これだと、
「ja」フォルダ側の page ファイルだけに追加で良かったみたい。
逆に、今回の投稿のビルドの場合は、XML 行は自動で追加されるので、パッチしなくて正解でした。
パッチしなかったから、気付いたことです。
-
3). 参考:「ninja でビルド」で行われていること(一部)を確認:
「ninja でビルド」で使われる、build.ninja から抜粋:
$ less ~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/build.ninja
→「q」で終了
-
(1). PO ファイルを MO ファイルに変換:
/usr/bin/msgfmt ../ja/ja.po -o ja/gnome-boxes-ja.gmo
→「gnome-boxes-ja」はMO ファイルの名前です。これには見覚えがあります(行末の指定)。
-
(2). XML ファイルと MO ファイル をマージし、ja ディレクトリ内の XML ファイルに出力:
/usr/bin/itstool -m ja/gnome-boxes-ja.gmo -o ja \ ../C/3d-acceleration.page ../C/backup.page ../C/create.page \ ../C/delete.page ../C/disk-images.page ../C/edit-domain.page \ ../C/index.page ../C/interface.page ../C/keystrokes.page \ ../C/legal.xml ../C/prop-system.page ../C/prop-trouble.page \ ../C/search.page ../C/shared-folders.page ../C/shortcuts.page \ ../C/shutdown.page ../C/snapshot-create.page \ ../C/snapshot-delete.page ../C/snapshot-rename.page \ ../C/snapshot-revert.page ../C/supported-protocols.page \ ../C/system-requirements.page ../C/usb-redirection.page \ ../C/virtualization.page ../C/what-is-a-virtual-machine.page \ ../C/why-do-i-need-virtual-machine.page
→1行のコマンドですが、ブログで見やすいように行を分けました。
前処理がどこで行われたかはわかりませんが、xml 行の追加が反映されたのはここだろうと思います。
-
→「po ファイル」を翻訳して、上記の「項番 (1)」と「項番 (2)」を行えば、今回投稿した、ヘルプのビルドは要らないかも
-
-
4). 英語で「Boxes」を起動で、ヘルプが日本語表示される件:
英語で使いたい人には不便です。
-
$ locale : LANG=ja_JP.UTF-8 LANGUAGE=ja_JP ←(注目) LC_CTYPE="ja_JP.UTF-8" LC_NUMERIC="ja_JP.UTF-8" LC_TIME="ja_JP.UTF-8" LC_COLLATE="ja_JP.UTF-8" LC_MONETARY="ja_JP.UTF-8" LC_MESSAGES="ja_JP.UTF-8" LC_PAPER="ja_JP.UTF-8" LC_NAME="ja_JP.UTF-8" LC_ADDRESS="ja_JP.UTF-8" LC_TELEPHONE="ja_JP.UTF-8" LC_MEASUREMENT="ja_JP.UTF-8" LC_IDENTIFICATION="ja_JP.UTF-8" LC_ALL=
-
→システムに「LANGUAGE=ja_JP」の設定がありました
アプリによっては色々と弊害が出るので、デフォルトは空白にすべきと思います。
ちなみに、Fedora では「LANGUAGE=」の行は表示されません。
-
なので、「Boxes」で英語のヘルプを見たいときは、下記で起動:
$ LANGUAGE=C gnome-boxes
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ---
11. 参考: ヘルプの「日本語化」が、英語に戻ったとき:
-
ヘルプを「日本語化」しましたが、 もし、ヘルプが英語に戻ったら、アプリの更新でビルドで追加した部分が削除されたと思われます。
つまり、アプリの機能の変更があった可能性があります。
-
参考: 更新されたヘルプを、再び日本語化したいときは、
-
1). 差分の部分を修正する場合:
ソースファイルの「C」フォルダ (*1)
と、更新後のシステムの「C」フォルダ (*2)
の差分を確認。
作業フォルダ (*3)
を残しているなら、翻訳されたファイルをエディタで修正して、手順の最後の配置を行えば早道です。
(*1): 「~/ダウンロード/box-help/gnome-boxes-42.2/help/C/」
(*2): 「/usr/share/help/C/gnome-boxes/」
(*3): 「~/ダウンロード/box-help/gnome-boxes-42.2/help/builddir/ja/test-dir/*.page」
-
参考: 差分を確認:
$ cd ~/ダウンロード/box-help/ $ cp -r gnome-boxes-42.2/help/C tmp-a $ cd tmp-a $ rm -r *.stub $ rm -r figures $ cd ~/ダウンロード/box-help/ $ cp -r /usr/share/help/C/gnome-boxes tmp-b $ cd tmp-b $ rm -r figures $ cd ~/ダウンロード/box-help/ $ diff -Naur tmp-a tmp-b > help.diff $ cat help.diff
→変更(差分)がなければ、表示なし
-
2). 勉強したいなら、更新後のシステムの「C」フォルダ (*4)
をどこかにコピーして、pot ファイルの作成から行ってもよいです。
この場合も、LINGUAS ファイル (*5)
の修正を忘れてはいけません。
また、すでに翻訳された、po ファイル (*6)
とのマージについて勉強できる (*7)
、よい機会です。
(*4): 「/usr/share/help/C/gnome-boxes/」
(*5): 「~/ダウンロード/box-help/gnome-boxes-42.2/help/LINGUAS」
(*6): 「~/ダウンロード/box-help/gnome-boxes-42.2/help/ja/ja.po」
-
(*7)
po ファイルのマージについて:
「2つの.po翻訳ファイルを組み合わせることができますか? 」よりの抜粋:
「msgcat」コマンドを使用
「poedit」アプリを使用
→GUI での操作「msgmerge」コマンドを使用
→翻訳する部分が、どこで使われていたかのエントリ部が捨てられるので注意。
後々のメンテでは不利ですが、目的によっては有利(*8)
。
-
(*8)
目的によっては有利:
「po ファイル」にある、エントリが必要か、必要ではないか、について記述されているページ:
gettextとバージョン管理システムの相性の悪さを解消する案
-
→内容もですが、「po ファイル」を操作するコマンドの使い方に注目すると、勉強になります。
-
こちらは、リモートのバージョン管理の「git」で、「po ファイル」を管理する場合のケースです。
例題によく使われる「hello.c」プログラム(C で書かれた簡単なプログラム)にて、
それを日本語から英語に翻訳する「po ファイル」の作り方と、
そのバージョン管理をどうするかの、ひとつの案です。
-
参考: 「git」で使われコマンド:
こちらによく出る「リポジトリーに追加」は「管理フォルダに保存」に近い意味です。 ただし、「git」の場合、作業段階ごとに、ファイルの差分(コミット単位)で管理されています。
% git add po/ja.po ←ローカルにある仮のフォルダへ(ファイル指定して)保存 % git commit ←ローカルにある本番のフォルダへ(仮のフォルダの中身を)保存
→この段階では、まだ、リモート(上位サイト)には反映されていません。送信準備 OK の段階。
-
今回は、git 以外の、「po ファイル」を操作するコマンドの使い方に注目してください。
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----
(備忘録1)4-1. ソースを事前に確認:
-
こちらの作業は要りません。確認だけにしてください。
-
今回の投稿では重要な「事前作業」になりますが、手順を見やすくするために外しました。
なので、備忘録として残しました。
-
手順の順番としては、「項番 4).」の後半になります。
-
確認:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/
$ ls help/ : C ca da el eu gl id ko pl ru uk LINGUAS cs de es fr hu it meson.build pt_BR sv
→ヘルプに日本語化の「ja」フォルダがありません。
-
$ cat help/LINGUAS # Keep this list sorted alphabetically ca cs da de el es eu fr gl hu id it ko pl pt_BR ru sv uk
→「ja」の指定がありません。翻訳対象にするには、アルファベット順の追記が必要です。
-
ヘルプのインストール (meson.build) の指定:
$ cat help/meson.build
help_files = [ '3d-acceleration.page', 'backup.page', 'create.page', 'delete.page', 'disk-images.page', 'edit-domain.page', 'index.page', 'interface.page', 'keystrokes.page', 'legal.xml', 'prop-system.page', 'prop-trouble.page', 'search.page', 'shared-folders.page', 'shortcuts.page', 'shutdown.page', 'snapshot-create.page', 'snapshot-delete.page', 'snapshot-rename.page', 'snapshot-revert.page', 'supported-protocols.page', 'system-requirements.page', 'usb-redirection.page', 'virtualization.page', 'what-is-a-virtual-machine.page', 'why-do-i-need-virtual-machine.page', ] help_media = [ 'figures/boxes_icon.svg', 'figures/input-keyboard-symbolic.svg', 'figures/view-more-symbolic.svg' ] gnome.yelp (meson.project_name (), sources: help_files, media: help_media, symlink_media: true, )
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- -----
(備忘録2)4-2. XML ファイルから pot ファイルを作成して、翻訳:
-
こちらの作業は要りません。確認だけにしてください。
-
こちらの作業を経て、「項番 5).」のパッチを作成しました。
-
ソースファイルを確認すると、「pot ファイル」(po テンプレートファイル)が含まれていないので、
現状のXML ファイルから、pot を生成して、そこから po ファイルを作成しました:
これにより、最新の po ファイルが手に入るので、翻訳漏れを最小にできます。
-
参考:
-
1). 「its ツール」を使うので、インストール:
-
インストール:
$ sudo apt install itstool : 以下のパッケージが新たにインストールされます: itstool python3-libxml2
-
$ apt search itstool : itstool/jammy,jammy,now 2.0.6-2 all [インストール済み] tool for translating XML documents with PO files
→和訳: PO ファイルを含む XML ドキュメントを翻訳するためのツール
-
「itstool」のバージョン:
$ itstool --version itstool 2.0.6
-
「itstool」のヘルプを表示:
$ itstool --help : Usage: itstool [OPTIONS] [XMLFILES] itstool -m <MOFILE> [OPTIONS] [XMLFILES] itstool -j <XMLFILE> [OPTIONS] [MOFILES] Options: -h, --help show this help message and exit -i ITS, --its=ITS Load the ITS rules in the file ITS (can specify multiple times) -l LANGUAGE, --lang=LANGUAGE Explicitly set the language code for output file -j FILE, --join=FILE Join multiple MO files with the XML file FILE and output XML file -m FILE, --merge=FILE Merge from a PO or MO file FILE and output XML files -n, --no-builtins Do not apply the built-in ITS rules -o OUT, --output=OUT Output PO files to file OUT or XML files in directory OUT --path=PATHS Extra path where ITS files may be found (can specify multiple times) -s, --strict Exit with error when PO files contain broken XML -d, --load-dtd Load external DTDs used by input XML -k, --keep-entities Keep entity reference unexpanded -p NAME VALUE, --param=NAME VALUE Define the ITS parameter NAME to the value VALUE (can specify multiple times) -t CATEGORY, --test=CATEGORY Generate conformance test output for CATEGORY -v, --version Print itstool version and exit
-
2). 対象となる、XML ファイルを確認:
$ ls -1 ~/ダウンロード/box-help/gnome-boxes-42.2/help/C/ : 3d-acceleration.page backup.page collection.page.stub ←(対象外) command-line.page.stub ←(対象外) continuous.page.stub ←(対象外) create.page delete.page disk-images.page edit-domain.page figures ←(対象外) how-many-machines.page.stub ←(対象外) import-images.page.stub ←(対象外) index.page interface.page keystrokes.page legal.xml ←(対象外) list-of-supported-protocols.page.stub ←(対象外) networking.page.stub ←(対象外) legal.xml prop-system.page prop-trouble.page properties.page.stub ←(対象外) search.page shared-folders.page shortcuts.page shutdown.page snapshot-create.page snapshot-delete.page snapshot-rename.page snapshot-revert.page supported-protocols.page system-requirements.page unattended.page.stub ←(対象外) usb-redirection.page virtualization.page what-is-a-virtual-machine.page why-do-i-need-virtual-machine.page
→フォルダには対象外のファイルも含まれていますが OK です。
-
3). 対象となる、page ファイルの先頭を確認:
例:
$ head -n 2 ~/ダウンロード/box-help/gnome-boxes-42.2/help/C/3d-acceleration.page
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its"
→先頭の説明:
1行目は「mallard」(XML言語)のバージョンが低いので、標準のXML形式だと思います。
2行目は「its ルール」の指定です。
-
ヘルプに置かれている page ファイルの作り方からわかることは、ヘルプに置かれている page ファイルは、「itstool」で扱える XML ファイルの形式です。
-
4). pot ファイルを作成
ディレクトリにある 「Mallard XML」形式の page ファイルから、PO テンポラリファイルを生成しました:
$ cd ~/ダウンロード/box-help/gnome-boxes-42.2/help/C/ $ itstool -o box-help.pot *.page
-
ファイルの確認:
$ ls *.pot box-help.pot
-
5). pot ファイルを作業フォルダにコピー:
$ mkdir -p ~/ダウンロード/test-help/{a,b} $ cp box-help.pot ~/ダウンロード/test-help/
-
ファイルの確認:
$ cd ~/ダウンロード/test-help/ $ ls -1 a b box-help.pot
-
6). 翻訳を楽にするために、仮に、英語指定で po ファイルを作成:
$ cd ~/ダウンロード/test-help/ $ msginit --locale=en --input=box-help.pot : ユーザが翻訳に関するフィードバックをあなたに送ることができるように, 新しいメッセージカタログにはあなたの email アドレスを含めてください. またこれは, 予期せぬ技術的な問題が発生した場合に管理者があなたに連絡が取れる ようにするという目的もあります. Is the following your email address? ubn@ubn-box Please confirm by pressing Return, or enter your email address. ←(Enter) https://translationproject.org/team/index.html を検索中... 完了. A translation team for your language (en) does not exist yet. If you want to create a new translation team for en, please visit https://translationproject.org/team/index.html https://translationproject.org/html/leaders.html https://translationproject.org/html/welcome.html en.po を生成.
-
→en.po を生成すると、各項目に同じ文字列が入力されます:
入力時の半角、全角の誤りを防げるだけでなく、修正すべき場所がわかりやすくなり、翻訳漏れが減る利点もあります。
-
例:
$ head -n 17 ~/ダウンロード/test-help/en.po | tail -n 2
msgid "translator-credits" msgstr "translator-credits" ←(注目: 通常は空ですが、同じ文字列がコピーされます)
→HTML タブ等を移し替えるときのミスを防げます。また、コピーの手間を減らせます。
-
空のままが良いのなら、こちらの作業はパスします:
msgid "translator-credits" msgstr "" ←(注目: 通常は空です)
-
ファイルの確認:
$ ls -1 a b box-help.pot en.po
-
7). 日本語指定で po ファイルを作成:
$ msginit --locale=ja --input=en.po : ユーザが翻訳に関するフィードバックをあなたに送ることができるように, 新しいメッセージカタログにはあなたの email アドレスを含めてください. またこれは, 予期せぬ技術的な問題が発生した場合に管理者があなたに連絡が取れる ようにするという目的もあります. Is the following your email address? ubn@ubn-box Please confirm by pressing Return, or enter your email address. ←(Enter) https://translationproject.org/team/index.html を検索中... 完了. Please visit your translation team's homepage at https://translationproject.org/team/ja.html https://translationproject.org/team/index.html https://translationproject.org/html/translators.html https://translationproject.org/html/welcome.html and consider joining your translation team's mailing list <translation-team-ja@lists.sourceforge.net> ja.po を生成.
-
→日本語指定することで、po のヘッダー部が自動で「日本語指定」に修正されます:
例:
ヘッダー部からの抜粋:
$ head -n 12 ~/ダウンロード/test-help/ja.po | tail -n 7
"Last-Translator: ubn <ubn@ubn-box>\n" ←(任意で修正が必要) "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" ←(注目) "Content-Transfer-Encoding: 8bit\n" ←(注目) "Language: ja\n" ←(注目) "Plural-Forms: nplurals=1; plural=0;\n" ←(言語に複数形、男性名詞、女性名詞があるかの指定)
-
データ部からの抜粋:
$ head -n 17 ~/ダウンロード/test-help/ja.po | tail -n 2
msgid "translator-credits" msgstr "translator-credits" ←(注目: 英語の po のデータが引き継がれます)
-
ファイルの確認:
$ ls -1 a b box-help.pot en.po ja.po
-
8). po ファイルの翻訳:
-
(1). 差分を作成するための配置:
$ cd ~/ダウンロード/test-help/ $ cp -r ~/ダウンロード/box-help/gnome-boxes-42.2/help a/ $ cp -r ~/ダウンロード/box-help/gnome-boxes-42.2/help b/
-
(2). po ファイルのコピー:
$ mkdir -p ~/ダウンロード/test-help/b/help/ja $ cd ~/ダウンロード/test-help/b/help/ja/ $ cp ~/ダウンロード/test-help/ja.po ja.po
-
(3). ファイルの先頭を修正:
$ mousepad ~/ダウンロード/test-help/b/help/ja/ja.po
↓ ファイルの先頭に、下記の「gnome-boxes のコメント」 4行を追加:
# Japanese translation for gnome-boxes. # Copyright (C) 2014 gnome-boxes's COPYRIGHT HOLDER # This file is distributed under the same license as the gnome-boxes package. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-
(4). 翻訳:
-
-
--- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- -
(備忘録3)4-3. 「po ファイル」の翻訳ミスをチェック:
-
個人的に確認に使ったやり方です。
-
1). 「featherpad」にて、「\"
」等や、「msgstr ""」をキーワードにして、順次、検索:
→全体を見直して、翻訳した行に「"
、"
」の漏れがないか、チェック。
-
2). 最終的に「mousepad」で開いて、タイプミスを確認:
テキストエディタに「mousepad」を使うと、po ファイルの構文がハイライト表示されるので、「\"
」等の確認がしやすいです。
→ただし、</gui>
を </ gui>
としても、色は変わらないので、自分で確認する必要がありますが、見やすい色なので見つけやすいです。
ちなみに、「VSCode」であれば、上記は違う色になりますが、落ち着いたテーマだと、その違いがわかりづらい色になります。高機能でも気付きにくい色使いだと、役に立ちません。(使う目的でテーマを変えるのが良いかも)
-
3). 構文誤りがあれば、ninja でビルドする時に「翻訳できない部分」を指摘したエラーが表示されます:
上記の「項番 1) 」、「項番 2) 」 でチェックしていても、いくつかの漏れがありました。
→エディタでその「翻訳できない部分」をキーワードにして検索、修正。
修正しての確認は、再び、ninja でビルド。エラーがなくなるまで繰り返し。
-
4). パッチファイル(差分)を作成:
上記の「ninja のビルド」で、エラーが出なくなれば、対象の「po ファイル」は、(内容は別にして)日本語化するときに(パッチとして)使えます。
-
ちなみに、「パッチファイル」を作成しているのは、誰でも正しく修正できるようにする「ブログでの自分のやり方」なので、通常は、わざわざ「パッチファイル」を作成する必要はありません。
-
-
まとめ
「Boxes」(42.2) のヘルプのソースから、「Boxes」のヘルプ部分だけのビルドをして、その結果をヘルプの日本語化に使いました。
このやり方なら、更新の多い「page ファイル」にて、現状の更新の内容と同じ「po ファイル」が作成できるので、翻訳の更新漏れが少ないと思います。
また、ひとつの「po ファイル」にまとまることで、エディタの検索が使えて修正が楽です。
-
追記:
後で気付いたのですが、「po ファイル」を翻訳して、
「こちら 」に書いた 2つのコマンドだけで、今回投稿した、ヘルプのビルドは要らないかもしれません。
-
-
-
-
-
目次
-
-
- 目次
- --- - --- - --- - --- - --- - --- - --- - --- - --- - -
- Xubuntu 22.04.1 LTS のデスクトップ画面:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - --
- 「Xubuntu」について:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ---
- 「Meson」について:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----
- 0. 前回の投稿で行った、 Boxes (42.3) のビルドで入ったパッケージを削除:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - -----
- 1. 「gnome-boxes」を apt でインストール:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- -
- 2. 「help」フォルダだけをビルドして、ヘルプを日本語化する準備:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- --
- 3. 「Meson」を apt でインストール:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ---
- 4. 「Boxes」(42.2) のソースをダウンロード:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----
- 5. 「Boxes」のヘルプに日本語の「po ファイル」を追加する、パッチファイルを作成:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- -----
- 6. 「Boxes」のヘルプのみをビルド:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- -
- 7. 「Boxes」のヘルプを日本語化:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- --
- 8. ヘルプの「操作説明」が日本語化されたか確認:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ---
- 9. Boxes のヘルプの日本語化を確認するため、ボックスを作成:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----
- 9-1. 「Xubuntu 22.04.1 LTS」の ISO イメージをダウンロード:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- -----
- 9-2. 「Xubuntu 22.04.1 LTS」のボックスを作成:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- -
- 9-3. 「Xubuntu 22.04.1 LTS」のライブ立ち上げ:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- --
- 10. 「Boxes」のヘルプで気付いたこと:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ---
- 11. 参考: ヘルプの「日本語化」が、英語に戻ったとき:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----
- (備忘録1)4-1. ソースを事前に確認:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- -----
- (備忘録2)4-2. XML ファイルから pot ファイルを作成して、翻訳:
- --- - --- - --- - --- - --- - --- - --- - --- - --- - ----- ----- ----- ----- -
- (備忘録3)4-3. 「po ファイル」の翻訳ミスをチェック:
- まとめ
- -
-
-
-