diff options
author | Takashi Iwai <tiwai@suse.de> | 2005-06-23 10:38:06 +0000 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2005-06-23 10:38:06 +0000 |
commit | 6343f3520249583e78ca75f28e1d20efa9c48aa5 (patch) | |
tree | 3024f4a37b241645f05b9688c682ee2fe26b1b12 /po | |
parent | fefe0aafafaf58b75e9c3130231a6146e779b6a0 (diff) | |
download | alsa-utils-6343f3520249583e78ca75f28e1d20efa9c48aa5.tar.gz |
i18nize some programs
i18nize some programs with gettext.
Diffstat (limited to 'po')
-rw-r--r-- | po/LINGUAS | 1 | ||||
-rw-r--r-- | po/Makefile.in.in | 366 | ||||
-rw-r--r-- | po/Makevars | 41 | ||||
-rw-r--r-- | po/Makevars.template | 41 | ||||
-rw-r--r-- | po/POTFILES.in | 4 | ||||
-rw-r--r-- | po/Rules-quot | 47 | ||||
-rw-r--r-- | po/boldquot.sed | 10 | ||||
-rw-r--r-- | po/en@boldquot.header | 25 | ||||
-rw-r--r-- | po/en@quot.header | 22 | ||||
-rw-r--r-- | po/insert-header.sin | 23 | ||||
-rw-r--r-- | po/ja.po | 1090 | ||||
-rw-r--r-- | po/quot.sed | 6 | ||||
-rw-r--r-- | po/remove-potcdate.sed | 11 | ||||
-rw-r--r-- | po/remove-potcdate.sin | 19 |
14 files changed, 1706 insertions, 0 deletions
diff --git a/po/LINGUAS b/po/LINGUAS new file mode 100644 index 0000000..bef7f4a --- /dev/null +++ b/po/LINGUAS @@ -0,0 +1 @@ +ja diff --git a/po/Makefile.in.in b/po/Makefile.in.in new file mode 100644 index 0000000..53efc5e --- /dev/null +++ b/po/Makefile.in.in @@ -0,0 +1,366 @@ +# Makefile for PO directory in any package using GNU gettext. +# Copyright (C) 1995-1997, 2000-2004 by Ulrich Drepper <drepper@gnu.ai.mit.edu> +# +# This file can be copied and used freely without restrictions. It can +# be used in projects which are not available under the GNU General Public +# License but which still want to provide support for the GNU gettext +# functionality. +# Please note that the actual code of GNU gettext is covered by the GNU +# General Public License and is *not* in the public domain. +# +# Origin: gettext-0.14 + +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ + +SHELL = /bin/sh +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datadir = @datadir@ +localedir = $(datadir)/locale +gettextsrcdir = $(datadir)/gettext/po + +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +MKINSTALLDIRS = @MKINSTALLDIRS@ +mkinstalldirs = $(SHELL) $(MKINSTALLDIRS) + +GMSGFMT = @GMSGFMT@ +MSGFMT = @MSGFMT@ +XGETTEXT = @XGETTEXT@ +MSGMERGE = msgmerge +MSGMERGE_UPDATE = @MSGMERGE@ --update +MSGINIT = msginit +MSGCONV = msgconv +MSGFILTER = msgfilter + +POFILES = @POFILES@ +GMOFILES = @GMOFILES@ +UPDATEPOFILES = @UPDATEPOFILES@ +DUMMYPOFILES = @DUMMYPOFILES@ +DISTFILES.common = Makefile.in.in remove-potcdate.sin \ +$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) +DISTFILES = $(DISTFILES.common) Makevars POTFILES.in $(DOMAIN).pot stamp-po \ +$(POFILES) $(GMOFILES) \ +$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) + +POTFILES = \ + +CATALOGS = @CATALOGS@ + +# Makevars gets inserted here. (Don't remove this line!) + +.SUFFIXES: +.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update + +.po.mo: + @echo "$(MSGFMT) -c -o $@ $<"; \ + $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ + +.po.gmo: + @lang=`echo $* | sed -e 's,.*/,,'`; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o $${lang}.gmo $${lang}.po"; \ + cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo + +.sin.sed: + sed -e '/^#/d' $< > t-$@ + mv t-$@ $@ + + +all: all-@USE_NLS@ + +all-yes: stamp-po +all-no: + +# stamp-po is a timestamp denoting the last time at which the CATALOGS have +# been loosely updated. Its purpose is that when a developer or translator +# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, +# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent +# invocations of "make" will do nothing. This timestamp would not be necessary +# if updating the $(CATALOGS) would always touch them; however, the rule for +# $(POFILES) has been designed to not touch files that don't need to be +# changed. +stamp-po: $(srcdir)/$(DOMAIN).pot + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) + @echo "touch stamp-po" + @echo timestamp > stamp-poT + @mv stamp-poT stamp-po + +# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', +# otherwise packages like GCC can not be built if only parts of the source +# have been downloaded. + +# This target rebuilds $(DOMAIN).pot; it is an expensive operation. +# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. +$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --msgid-bugs-address='$(MSGID_BUGS_ADDRESS)' + test ! -f $(DOMAIN).po || { \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ + sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ + if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ + else \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + else \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + } + +# This rule has no dependencies: we don't need to update $(DOMAIN).pot at +# every "make" invocation, only create it when it is missing. +# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. +$(srcdir)/$(DOMAIN).pot: + $(MAKE) $(DOMAIN).pot-update + +# This target rebuilds a PO file if $(DOMAIN).pot has changed. +# Note that a PO file is not touched if it doesn't need to be changed. +$(POFILES): $(srcdir)/$(DOMAIN).pot + @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ + if test -f "$(srcdir)/$${lang}.po"; then \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot"; \ + cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \ + else \ + $(MAKE) $${lang}.po-create; \ + fi + + +install: install-exec install-data +install-exec: +install-data: install-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ + for file in $(DISTFILES.common) Makevars.template; do \ + $(INSTALL_DATA) $(srcdir)/$$file \ + $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + for file in Makevars; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +install-data-no: all +install-data-yes: all + $(mkinstalldirs) $(DESTDIR)$(datadir) + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkinstalldirs) $(DESTDIR)$$dir; \ + if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ + $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ + echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ + fi; \ + done; \ + done + +install-strip: install + +installdirs: installdirs-exec installdirs-data +installdirs-exec: +installdirs-data: installdirs-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ + else \ + : ; \ + fi +installdirs-data-no: +installdirs-data-yes: + $(mkinstalldirs) $(DESTDIR)$(datadir) + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkinstalldirs) $(DESTDIR)$$dir; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + fi; \ + done; \ + done + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: uninstall-exec uninstall-data +uninstall-exec: +uninstall-data: uninstall-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + for file in $(DISTFILES.common) Makevars.template; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +uninstall-data-no: +uninstall-data-yes: + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + done; \ + done + +check: all + +info dvi ps pdf html tags TAGS ctags CTAGS ID: + +mostlyclean: + rm -f remove-potcdate.sed + rm -f stamp-poT + rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po + rm -fr *.o + +clean: mostlyclean + +distclean: clean + rm -f Makefile Makefile.in POTFILES *.mo + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f stamp-po $(GMOFILES) + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: + $(MAKE) update-po + @$(MAKE) dist2 +# This is a separate target because 'update-po' must be executed before. +dist2: $(DISTFILES) + dists="$(DISTFILES)"; \ + if test "$(PACKAGE)" = "gettext-tools"; then \ + dists="$$dists Makevars.template"; \ + fi; \ + if test -f $(srcdir)/ChangeLog; then \ + dists="$$dists ChangeLog"; \ + fi; \ + for i in 0 1 2 3 4 5 6 7 8 9; do \ + if test -f $(srcdir)/ChangeLog.$$i; then \ + dists="$$dists ChangeLog.$$i"; \ + fi; \ + done; \ + if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ + for file in $$dists; do \ + if test -f $$file; then \ + cp -p $$file $(distdir); \ + else \ + cp -p $(srcdir)/$$file $(distdir); \ + fi; \ + done + +update-po: Makefile + $(MAKE) $(DOMAIN).pot-update + test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) + $(MAKE) update-gmo + +# General rule for creating PO files. + +.nop.po-create: + @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ + echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ + exit 1 + +# General rule for updating PO files. + +.nop.po-update: + @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ + if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ + cd $(srcdir); \ + if $(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$tmpdir/$$lang.new.po; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "msgmerge for $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +$(DUMMYPOFILES): + +update-gmo: Makefile $(GMOFILES) + @: + +Makefile: Makefile.in.in $(top_builddir)/config.status @POMAKEFILEDEPS@ + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ + $(SHELL) ./config.status + +force: + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/po/Makevars b/po/Makevars new file mode 100644 index 0000000..32692ab --- /dev/null +++ b/po/Makevars @@ -0,0 +1,41 @@ +# Makefile variables for PO directory in any package using GNU gettext. + +# Usually the message domain is the same as the package name. +DOMAIN = $(PACKAGE) + +# These two variables depend on the location of this directory. +subdir = po +top_builddir = .. + +# These options get passed to xgettext. +XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ + +# This is the copyright holder that gets inserted into the header of the +# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding +# package. (Note that the msgstr strings, extracted from the package's +# sources, belong to the copyright holder of the package.) Translators are +# expected to transfer the copyright for their translations to this person +# or entity, or to disclaim their copyright. The empty string stands for +# the public domain; in this case the translators are expected to disclaim +# their copyright. +COPYRIGHT_HOLDER = Free Software Foundation, Inc. + +# This is the email address or URL to which the translators shall report +# bugs in the untranslated strings: +# - Strings which are not entire sentences, see the maintainer guidelines +# in the GNU gettext documentation, section 'Preparing Strings'. +# - Strings which use unclear terms or require additional context to be +# understood. +# - Strings which make invalid assumptions about notation of date, time or +# money. +# - Pluralisation problems. +# - Incorrect English spelling. +# - Incorrect formatting. +# It can be your email address, or a mailing list address where translators +# can write to without being subscribed, or the URL of a web page through +# which the translators can contact you. +MSGID_BUGS_ADDRESS = + +# This is the list of locale categories, beyond LC_MESSAGES, for which the +# message catalogs shall be used. It is usually empty. +EXTRA_LOCALE_CATEGORIES = diff --git a/po/Makevars.template b/po/Makevars.template new file mode 100644 index 0000000..32692ab --- /dev/null +++ b/po/Makevars.template @@ -0,0 +1,41 @@ +# Makefile variables for PO directory in any package using GNU gettext. + +# Usually the message domain is the same as the package name. +DOMAIN = $(PACKAGE) + +# These two variables depend on the location of this directory. +subdir = po +top_builddir = .. + +# These options get passed to xgettext. +XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ + +# This is the copyright holder that gets inserted into the header of the +# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding +# package. (Note that the msgstr strings, extracted from the package's +# sources, belong to the copyright holder of the package.) Translators are +# expected to transfer the copyright for their translations to this person +# or entity, or to disclaim their copyright. The empty string stands for +# the public domain; in this case the translators are expected to disclaim +# their copyright. +COPYRIGHT_HOLDER = Free Software Foundation, Inc. + +# This is the email address or URL to which the translators shall report +# bugs in the untranslated strings: +# - Strings which are not entire sentences, see the maintainer guidelines +# in the GNU gettext documentation, section 'Preparing Strings'. +# - Strings which use unclear terms or require additional context to be +# understood. +# - Strings which make invalid assumptions about notation of date, time or +# money. +# - Pluralisation problems. +# - Incorrect English spelling. +# - Incorrect formatting. +# It can be your email address, or a mailing list address where translators +# can write to without being subscribed, or the URL of a web page through +# which the translators can contact you. +MSGID_BUGS_ADDRESS = + +# This is the list of locale categories, beyond LC_MESSAGES, for which the +# message catalogs shall be used. It is usually empty. +EXTRA_LOCALE_CATEGORIES = diff --git a/po/POTFILES.in b/po/POTFILES.in new file mode 100644 index 0000000..11a6a96 --- /dev/null +++ b/po/POTFILES.in @@ -0,0 +1,4 @@ +aplay/aplay.c +seq/aconnect/aconnect.c +seq/aseqnet/aseqnet.c +speaker-test/speaker-test.c diff --git a/po/Rules-quot b/po/Rules-quot new file mode 100644 index 0000000..9c2a995 --- /dev/null +++ b/po/Rules-quot @@ -0,0 +1,47 @@ +# Special Makefile rules for English message catalogs with quotation marks. + +DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot + +.SUFFIXES: .insert-header .po-update-en + +en@quot.po-create: + $(MAKE) en@quot.po-update +en@boldquot.po-create: + $(MAKE) en@boldquot.po-update + +en@quot.po-update: en@quot.po-update-en +en@boldquot.po-update: en@boldquot.po-update-en + +.insert-header.po-update-en: + @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ + if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + ll=`echo $$lang | sed -e 's/@.*//'`; \ + LC_ALL=C; export LC_ALL; \ + cd $(srcdir); \ + if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "creation of $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +en@quot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header + +en@boldquot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header + +mostlyclean: mostlyclean-quot +mostlyclean-quot: + rm -f *.insert-header diff --git a/po/boldquot.sed b/po/boldquot.sed new file mode 100644 index 0000000..4b937aa --- /dev/null +++ b/po/boldquot.sed @@ -0,0 +1,10 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g +s/“/“[1m/g +s/”/[0m”/g +s/‘/‘[1m/g +s/’/[0m’/g diff --git a/po/en@boldquot.header b/po/en@boldquot.header new file mode 100644 index 0000000..fedb6a0 --- /dev/null +++ b/po/en@boldquot.header @@ -0,0 +1,25 @@ +# All this catalog "translates" are quotation characters. +# The msgids must be ASCII and therefore cannot contain real quotation +# characters, only substitutes like grave accent (0x60), apostrophe (0x27) +# and double quote (0x22). These substitutes look strange; see +# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html +# +# This catalog translates grave accent (0x60) and apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019). +# It also translates pairs of apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019) +# and pairs of quotation mark (0x22) to +# left double quotation mark (U+201C) and right double quotation mark (U+201D). +# +# When output to an UTF-8 terminal, the quotation characters appear perfectly. +# When output to an ISO-8859-1 terminal, the single quotation marks are +# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to +# grave/acute accent (by libiconv), and the double quotation marks are +# transliterated to 0x22. +# When output to an ASCII terminal, the single quotation marks are +# transliterated to apostrophes, and the double quotation marks are +# transliterated to 0x22. +# +# This catalog furthermore displays the text between the quotation marks in +# bold face, assuming the VT100/XTerm escape sequences. +# diff --git a/po/en@quot.header b/po/en@quot.header new file mode 100644 index 0000000..a9647fc --- /dev/null +++ b/po/en@quot.header @@ -0,0 +1,22 @@ +# All this catalog "translates" are quotation characters. +# The msgids must be ASCII and therefore cannot contain real quotation +# characters, only substitutes like grave accent (0x60), apostrophe (0x27) +# and double quote (0x22). These substitutes look strange; see +# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html +# +# This catalog translates grave accent (0x60) and apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019). +# It also translates pairs of apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019) +# and pairs of quotation mark (0x22) to +# left double quotation mark (U+201C) and right double quotation mark (U+201D). +# +# When output to an UTF-8 terminal, the quotation characters appear perfectly. +# When output to an ISO-8859-1 terminal, the single quotation marks are +# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to +# grave/acute accent (by libiconv), and the double quotation marks are +# transliterated to 0x22. +# When output to an ASCII terminal, the single quotation marks are +# transliterated to apostrophes, and the double quotation marks are +# transliterated to 0x22. +# diff --git a/po/insert-header.sin b/po/insert-header.sin new file mode 100644 index 0000000..b26de01 --- /dev/null +++ b/po/insert-header.sin @@ -0,0 +1,23 @@ +# Sed script that inserts the file called HEADER before the header entry. +# +# At each occurrence of a line starting with "msgid ", we execute the following +# commands. At the first occurrence, insert the file. At the following +# occurrences, do nothing. The distinction between the first and the following +# occurrences is achieved by looking at the hold space. +/^msgid /{ +x +# Test if the hold space is empty. +s/m/m/ +ta +# Yes it was empty. First occurrence. Read the file. +r HEADER +# Output the file's contents by reading the next line. But don't lose the +# current line while doing this. +g +N +bb +:a +# The hold space was nonempty. Following occurrences. Do nothing. +x +:b +} diff --git a/po/ja.po b/po/ja.po new file mode 100644 index 0000000..8425bce --- /dev/null +++ b/po/ja.po @@ -0,0 +1,1090 @@ +# Japanese translations for alsa-utils package +# alsa-utils パッケージに対する英訳. +# Copyright (C) 2005 Free Software Foundation, Inc. +# This file is distributed under the same license as the alsa-utils package. +# Takashi Iwai <tiwai@suse.de>, 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: alsa-utils 1.0.9a\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-06-03 15:10+0200\n" +"PO-Revision-Date: 2005-06-16 16:50+0200\n" +"Last-Translator: Takashi Iwai <tiwai@suse.de>\n" +"Language-Team: Japanese\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: aplay/aplay.c:126 +msgid "raw data" +msgstr "raw データ" + +#: aplay/aplay.c:127 +msgid "VOC" +msgstr "VOC" + +#: aplay/aplay.c:128 +msgid "WAVE" +msgstr "WAVE" + +#: aplay/aplay.c:129 +msgid "Sparc Audio" +msgstr "Sparc オーディオ" + +#: aplay/aplay.c:150 +#, c-format +msgid "" +"Usage: %s [OPTION]... [FILE]...\n" +"\n" +"-h, --help help\n" +" --version print current version\n" +"-l, --list-devices list all soundcards and digital audio devices\n" +"-L, --list-pcms list all PCMs defined\n" +"-D, --device=NAME select PCM by name\n" +"-q, --quiet quiet mode\n" +"-t, --file-type TYPE file type (voc, wav, raw or au)\n" +"-c, --channels=# channels\n" +"-f, --format=FORMAT sample format (case insensitive)\n" +"-r, --rate=# sample rate\n" +"-d, --duration=# interrupt after # seconds\n" +"-s, --sleep-min=# min ticks to sleep\n" +"-M, --mmap mmap stream\n" +"-N, --nonblock nonblocking mode\n" +"-F, --period-time=# distance between interrupts is # microseconds\n" +"-B, --buffer-time=# buffer duration is # microseconds\n" +" --period-size=# distance between interrupts is # frames\n" +" --buffer-size=# buffer duration is # frames\n" +"-A, --avail-min=# min available space for wakeup is # microseconds\n" +"-R, --start-delay=# delay for automatic PCM start is # microseconds \n" +" (relative to buffer size if <= 0)\n" +"-T, --stop-delay=# delay for automatic PCM stop is # microseconds from " +"xrun\n" +"-v, --verbose show PCM structure and setup (accumulative)\n" +"-I, --separate-channels one file for each channel\n" +msgstr "" +"使用法: %s [オプション]... [ファイル]...\n" +"\n" +"-h, --help ヘルプ\n" +" --version 現在のバージョンを表示\n" +"-l, --list-devices 全てのサウンドカードとオーディオデバイスを表示\n" +"-L, --list-pcms 全ての定義された PCM を表示\n" +"-D, --device=NAME 使用する PCM を指定\n" +"-q, --quiet quiet モード\n" +"-t, --file-type TYPE ファイルタイプ (voc, wav, raw または au)\n" +"-c, --channels=# チャネル数\n" +"-f, --format=FORMAT サンプルフォーマット (大/小文字区別)\n" +"-r, --rate=# サンプルレート\n" +"-d, --duration=# 指定の秒数後に終了\n" +"-s, --sleep-min=# sleep する最少 tick 数\n" +"-M, --mmap mmap ストリーム\n" +"-N, --nonblock 非ブロックモード\n" +"-F, --period-time=# 割り込み間隔をμ秒で指定\n" +"-B, --buffer-time=# バッファの大きさをμ秒で指定\n" +" --period-size=# 割り込み間隔をフレーム数で指定\n" +" --buffer-size=# バッファの大きさをフレーム数で指定\n" +"-A, --avail-min=# wakeup の最少スペースをμ秒で指定\n" +"-R, --start-delay=# 指定のμ秒後に PCM を自動スタート\n" +" (0 以下の場合はバッファサイズより)\n" +"-T, --stop-delay=# XRUN から指定のμ秒後に PCM の自動停止\n" +"-v, --verbose PCM の設定を表示 (複数指定可能)\n" +"-I, --separate-channels 各チャネルに一つのファイルを用いる\n" + +#: aplay/aplay.c:177 speaker-test/speaker-test.c:465 +#, c-format +msgid "Recognized sample formats are:" +msgstr "認識されるサンプルフォーマット:" + +#: aplay/aplay.c:183 +#, c-format +msgid "" +"\n" +"Some of these may not be available on selected hardware\n" +msgstr "\nこれらのいくつかは指定のハードウェアで使用不可能な場合があります" + +#: aplay/aplay.c:184 +#, c-format +msgid "The availabled format shortcuts are:\n" +msgstr "可能なフォーマットの省略形:" + +#: aplay/aplay.c:185 +#, c-format +msgid "-f cd (16 bit little endian, 44100, stereo)\n" +msgstr "-f cd (16 ビット、リトルエンディアン、44100、ステレオ)" + +#: aplay/aplay.c:186 +#, c-format +msgid "-f cdr (16 bit big endian, 44100, stereo)\n" +msgstr "-f cdr (16 ビット、ビッグエンディアン、44100、ステレオ)" + +#: aplay/aplay.c:187 +#, c-format +msgid "-f dat (16 bit little endian, 48000, stereo)\n" +msgstr "-f dat (16 ビット、リトルエンディアン、48000、ステレオ)" + +#: aplay/aplay.c:197 +#, c-format +msgid "snd_names_list error: %s" +msgstr "snd_names_list エラー: %s" + +#: aplay/aplay.c:219 +msgid "no soundcards found..." +msgstr "サウンドカードが見つかりません..." + +#: aplay/aplay.c:222 +#, c-format +msgid "**** List of %s Hardware Devices ****\n" +msgstr "**** ハードウェアデバイス %s のリスト ****\n" + +#: aplay/aplay.c:251 +#, c-format +msgid "card %i: %s [%s], device %i: %s [%s]\n" +msgstr "カード %i: %s [%s], デバイス %i: %s [%s]\n" + +#: aplay/aplay.c:257 +#, c-format +msgid " Subdevices: %i/%i\n" +msgstr " サブデバイス: %i/%i\n" + +#: aplay/aplay.c:264 +#, c-format +msgid " Subdevice #%i: %s\n" +msgstr " サブデバイス #%i: %s\n" + +#: aplay/aplay.c:292 +#, c-format +msgid "PCM list:\n" +msgstr "PCM リスト:\n" + +#: aplay/aplay.c:305 +#, c-format +msgid "Aborted by signal %s...\n" +msgstr "シグナル %s で中断...\n" + +#: aplay/aplay.c:384 +msgid "command should be named either arecord or aplay" +msgstr "arecord または aplay コマンドのみ可能" + +#: aplay/aplay.c:426 +#, c-format +msgid "unrecognized file format %s" +msgstr "不正なファイルフォーマット %s" + +#: aplay/aplay.c:433 +#, c-format +msgid "value %i for channels is invalid" +msgstr "不正なチャネル数 %i" + +#: aplay/aplay.c:452 +#, c-format +msgid "wrong extended format '%s'" +msgstr "不正な拡張フォーマット '%s'" + +#: aplay/aplay.c:463 +#, c-format +msgid "bad speed value %i" +msgstr "不正なレート値 %i" + +#: aplay/aplay.c:519 +#, c-format +msgid "Try `%s --help' for more information.\n" +msgstr "より詳しい情報は「%s --help」を実行してください\n" + +#: aplay/aplay.c:540 +#, c-format +msgid "audio open error: %s" +msgstr "" + +#: aplay/aplay.c:545 +#, c-format +msgid "info error: %s" +msgstr "" + +#: aplay/aplay.c:552 +#, c-format +msgid "nonblock setting error: %s" +msgstr "" + +#: aplay/aplay.c:562 aplay/aplay.c:666 aplay/aplay.c:1009 +msgid "not enough memory" +msgstr "メモリが足りません" + +#: aplay/aplay.c:656 +#, c-format +msgid "read error (called from line %i)" +msgstr "リードエラー (%i 行)" + +#: aplay/aplay.c:714 +#, c-format +msgid "unknown length of 'fmt ' chunk (read %u, should be %u at least)" +msgstr "" + +#: aplay/aplay.c:722 +msgid "can't play not PCM-coded WAVE-files" +msgstr "PCM 以外の WAVE ファイルは再生できません" + +#: aplay/aplay.c:726 +#, c-format +msgid "can't play WAVE-files with %d tracks" +msgstr "%d トラックを含む WAVE ファイルは再生できません" + +#: aplay/aplay.c:734 aplay/aplay.c:831 +#, c-format +msgid "Warning: format is changed to U8\n" +msgstr "警告: フォーマットは U8 に変更されます\n" + +#: aplay/aplay.c:740 +#, c-format +msgid "Warning: format is changed to S16_LE\n" +msgstr "警告: フォーマットは S16_LE に変更されます\n" + +#: aplay/aplay.c:748 +#, c-format +msgid "Warning: format is changed to S24_3LE\n" +msgstr "警告: フォーマットは S24_3LE に変更されます\n" + +#: aplay/aplay.c:754 +#, c-format +msgid "Warning: format is changed to S24_LE\n" +msgstr "警告: フォーマットは S24_LE に変更されます\n" + +#: aplay/aplay.c:758 +#, c-format +msgid "" +" can't play WAVE-files with sample %d bits in %d bytes wide (%d channels)" +msgstr "%2$d バイト長 %1$d サンプルビット (%3$d チャネル) の WAVE ファイルは再生できません" + +#: aplay/aplay.c:767 +#, c-format +msgid " can't play WAVE-files with sample %d bits wide" +msgstr "%d ビット長のサンプルの WAVE ファイルは再生できません" + +#: aplay/aplay.c:825 +#, c-format +msgid "Warning: format is changed to MU_LAW\n" +msgstr "警告: フォーマットは MU_LAW に変更されます\n" + +#: aplay/aplay.c:837 +#, c-format +msgid "Warning: format is changed to S16_BE\n" +msgstr "警告: フォーマットは S16_BE に変更されます\n" + +#: aplay/aplay.c:850 aplay/aplay.c:1412 aplay/aplay.c:1419 aplay/aplay.c:1966 +#: aplay/aplay.c:1978 +msgid "read error" +msgstr "リードエラー" + +#: aplay/aplay.c:870 +msgid "Broken configuration for this PCM: no configurations available" +msgstr "指定の PCM を使用できません: 設定がありません" + +#: aplay/aplay.c:887 +msgid "Access type not available" +msgstr "アクセスタイプが使用不可能" + +#: aplay/aplay.c:892 +msgid "Sample format non available" +msgstr "サンプルフォーマットが使用不可能" + +#: aplay/aplay.c:897 +msgid "Channels count non available" +msgstr "チャネル数が使用不可能" + +#: aplay/aplay.c:910 +#, c-format +msgid "Warning: rate is not accurate (requested = %iHz, got = %iHz)\n" +msgstr "警告: レートが不正確です (要求値 = %iHz, 使用値 = %iHz)\n" + +#: aplay/aplay.c:911 +#, c-format +msgid " please, try the plug plugin (-Dplug:%s)\n" +msgstr " plug プラグイン (-Dplug:%s) を使用してください" + +#: aplay/aplay.c:945 +msgid "Unable to install hw params:" +msgstr "hw params のインストールに失敗しました:" + +#: aplay/aplay.c:952 +#, c-format +msgid "Can't use period equal to buffer size (%lu == %lu)" +msgstr "period と buffer サイズには同じ値を使用できません (%lu == %lu)" + +#: aplay/aplay.c:959 +msgid "Unable to obtain xfer align\n" +msgstr "xfer align 値を得ることができません\n" + +#: aplay/aplay.c:996 +msgid "unable to install sw params:" +msgstr "sw params のインストールに失敗しました:" + +#: aplay/aplay.c:1035 +#, c-format +msgid "status error: %s" +msgstr "ステータスエラー: %s" + +#: aplay/aplay.c:1043 +#, c-format +msgid "%s!!! (at least %.3f ms long)\n" +msgstr "%s!!! (少なくとも %.3f ms)\n" + +#: aplay/aplay.c:1044 +msgid "underrun" +msgstr "アンダーラン" + +#: aplay/aplay.c:1044 +msgid "overrun" +msgstr "オーバーラン" + +#: aplay/aplay.c:1047 +#, c-format +msgid "Status:\n" +msgstr "ステータス:\n" + +#: aplay/aplay.c:1051 +#, c-format +msgid "xrun: prepare error: %s" +msgstr "" + +#: aplay/aplay.c:1057 +#, c-format +msgid "Status(DRAINING):\n" +msgstr "ステータス(DRAINING):\n" + +#: aplay/aplay.c:1061 +#, c-format +msgid "capture stream format change? attempting recover...\n" +msgstr "録音ストリームのフォーマットが変更? 修復を試みます...\n" + +#: aplay/aplay.c:1063 +#, c-format +msgid "xrun(DRAINING): prepare error: %s" +msgstr "" + +#: aplay/aplay.c:1070 +#, c-format +msgid "Status(R/W):\n" +msgstr "ステータス(R/W):\n" + +#: aplay/aplay.c:1073 +#, c-format +msgid "read/write error, state = %s" +msgstr "読み書きエラー, ステータス = %s" + +#: aplay/aplay.c:1083 +#, c-format +msgid "Suspended. Trying resume. " +msgstr "サスペンド中です。レジュームします。" + +#: aplay/aplay.c:1088 +#, c-format +msgid "Failed. Restarting stream. " +msgstr "失敗しました。ストリームを再スタートします。" + +#: aplay/aplay.c:1090 +#, c-format +msgid "suspend: prepare error: %s" +msgstr "サスペンド: prepare エラー: %s" + +#: aplay/aplay.c:1095 +#, c-format +msgid "Done.\n" +msgstr "終了\n" + +#: aplay/aplay.c:1146 +#, c-format +msgid "Max peak (%li samples): %05i (0x%04x) " +msgstr "最大ピーク (%li サンプル): %05i (0x%04x) " + +#: aplay/aplay.c:1182 +#, c-format +msgid "write error: %s" +msgstr "書込エラー: %s" + +#: aplay/aplay.c:1224 +#, c-format +msgid "writev error: %s" +msgstr "書込(writev)エラー: %s" + +#: aplay/aplay.c:1263 +#, c-format +msgid "read error: %s" +msgstr "読込エラー: %s" + +#: aplay/aplay.c:1302 +#, c-format +msgid "readv error: %s" +msgstr "読込(readv)エラー" + +#: aplay/aplay.c:1350 +msgid "can't allocate buffer for silence" +msgstr "サイレンス用のバッファの取得に失敗しました" + +#: aplay/aplay.c:1359 aplay/aplay.c:1587 aplay/aplay.c:1592 aplay/aplay.c:1639 +#: aplay/aplay.c:1648 aplay/aplay.c:1655 aplay/aplay.c:1665 aplay/aplay.c:1671 +#: aplay/aplay.c:1739 aplay/aplay.c:1769 aplay/aplay.c:1783 +msgid "write error" +msgstr "書込エラー" + +#: aplay/aplay.c:1373 +#, c-format +msgid "voc_pcm_flush - silence error" +msgstr "" + +#: aplay/aplay.c:1379 +msgid "voc_pcm_flush error" +msgstr "" + +#: aplay/aplay.c:1403 +msgid "malloc error" +msgstr "malloc エラー" + +#: aplay/aplay.c:1407 +#, c-format +msgid "Playing Creative Labs Channel file '%s'...\n" +msgstr "Creative Labs Channel ファイル '%s' を演奏中...\n" + +#: aplay/aplay.c:1475 aplay/aplay.c:1567 +msgid "can't play packed .voc files" +msgstr "packed .voc ファイルは演奏できません" + +#: aplay/aplay.c:1527 +#, c-format +msgid "can't play loops; %s isn't seekable\n" +msgstr "ループ演奏できません。%s はシーク不可能です\n" + +#: aplay/aplay.c:1576 +#, c-format +msgid "unknown blocktype %d. terminate." +msgstr "未知のブロックタイプ %d: 終了します。" + +#: aplay/aplay.c:1706 +#, c-format +msgid "Wave doesn't support %s format..." +msgstr "WAVE は %s フォーマットをサポートしません..." + +#: aplay/aplay.c:1763 +#, c-format +msgid "Sparc Audio doesn't support %s format..." +msgstr "Sparc オーディオは %s フォーマットをサポートしません..." + +#: aplay/aplay.c:1848 +msgid "Playing" +msgstr "再生中" + +#: aplay/aplay.c:1848 +msgid "Recording" +msgstr "録音中" + +#: aplay/aplay.c:1852 +#, c-format +msgid "Rate %d Hz, " +msgstr "レート %d Hz, " + +#: aplay/aplay.c:1854 +#, c-format +msgid "Mono" +msgstr "モノラル" + +#: aplay/aplay.c:1856 +#, c-format +msgid "Stereo" +msgstr "ステレオ" + +#: aplay/aplay.c:1858 +#, c-format +msgid "Channels %i" +msgstr "チャネル数 %i" + +#: aplay/aplay.c:2140 aplay/aplay.c:2193 +#, c-format +msgid "You need to specify %d files" +msgstr "%d 個のファイルを指定してください" + +#: seq/aconnect/aconnect.c:48 +#, c-format +msgid "aconnect - ALSA sequencer connection manager\n" +msgstr "aconnect - ALSA sequencer 接続マネージャ\n" + +#: seq/aconnect/aconnect.c:49 +#, c-format +msgid "Copyright (C) 1999-2000 Takashi Iwai\n" +msgstr "" + +#: seq/aconnect/aconnect.c:50 +#, c-format +msgid "Usage:\n" +msgstr "使用法:\n" + +#: seq/aconnect/aconnect.c:51 +#, c-format +msgid " * Connection/disconnection between two ports\n" +msgstr " * 二つのポートの接続/切り離し\n" + +#: seq/aconnect/aconnect.c:52 +#, c-format +msgid " aconnect [-options] sender receiver\n" +msgstr " aconnect [-オプション] 送信 受信\n" + +#: seq/aconnect/aconnect.c:53 +#, c-format +msgid " sender, receiver = client:port pair\n" +msgstr " 送信, 受信 = クライアント:ポートの組\n" + +#: seq/aconnect/aconnect.c:54 +#, c-format +msgid " -d,--disconnect disconnect\n" +msgstr " -d,--disconnect 切り離し\n" + +#: seq/aconnect/aconnect.c:55 +#, c-format +msgid " -e,--exclusive exclusive connection\n" +msgstr " -e,--exclusive 排他接続\n" + +#: seq/aconnect/aconnect.c:56 +#, c-format +msgid " -r,--real # convert real-time-stamp on queue\n" +msgstr " -r,--real # キューのリアルタイムスタンプに変換\n" + +#: seq/aconnect/aconnect.c:57 +#, c-format +msgid " -t,--tick # convert tick-time-stamp on queue\n" +msgstr " -t,--tick # キューのティックタイムスタンプに変換\n" + +#: seq/aconnect/aconnect.c:58 +#, c-format +msgid " * List connected ports (no subscription action)\n" +msgstr " * 接続済みのポートの一覧\n" + +#: seq/aconnect/aconnect.c:59 +#, c-format +msgid " aconnect -i|-o [-options]\n" +msgstr " aconnect -i|-o [-オプション]\n" + +#: seq/aconnect/aconnect.c:60 +#, c-format +msgid " -i,--input list input (readable) ports\n" +msgstr " -i,--input 入力 (読込) ポートの一覧\n" + +#: seq/aconnect/aconnect.c:61 +#, c-format +msgid " -o,--output list output (writable) ports\n" +msgstr " -o,--output 主力 (書込) ポートの一覧\n" + +#: seq/aconnect/aconnect.c:62 +#, c-format +msgid " -l,--list list current connections of each port\n" +msgstr " -l,--list 各ポートの現在の接続を表示\n" + +#: seq/aconnect/aconnect.c:63 +#, c-format +msgid " * Remove all exported connections\n" +msgstr " * 全てのエクスポートされた接続を切り離す\n" + +#: seq/aconnect/aconnect.c:64 +#, c-format +msgid " -x, --removeall\n" +msgstr " -x, --removall\n" + +#: seq/aconnect/aconnect.c:131 +msgid "Connecting To" +msgstr "接続先" + +#: seq/aconnect/aconnect.c:132 +msgid "Connected From" +msgstr "接続元" + +#: seq/aconnect/aconnect.c:168 +#, c-format +msgid "client %d: '%s' [type=%s]\n" +msgstr "クライアント %d: '%s' [タイプ=%s]\n" + +#: seq/aconnect/aconnect.c:172 +msgid "user" +msgstr "ユーザ" + +#: seq/aconnect/aconnect.c:172 +msgid "kernel" +msgstr "カーネル" + +#: seq/aconnect/aconnect.c:323 +#, c-format +msgid "can't open sequencer\n" +msgstr "sequencer をオープンできません\n" + +#: seq/aconnect/aconnect.c:351 +#, c-format +msgid "can't get client id\n" +msgstr "クライアント ID を取得できません\n" + +#: seq/aconnect/aconnect.c:358 +#, c-format +msgid "can't set client info\n" +msgstr "クライアント情報を取得できません\n" + +#: seq/aconnect/aconnect.c:365 +#, c-format +msgid "invalid sender address %s\n" +msgstr "送信アドレスが不正です: %s\n" + +#: seq/aconnect/aconnect.c:370 seq/aseqnet/aseqnet.c:286 +#, c-format +msgid "invalid destination address %s\n" +msgstr "受信アドレスが不正です: %s\n" + +#: seq/aconnect/aconnect.c:384 +#, c-format +msgid "No subscription is found\n" +msgstr "接続が見つかりません\n" + +#: seq/aconnect/aconnect.c:389 +#, c-format +msgid "Disconnection failed (%s)\n" +msgstr "切り離しに失敗 (%s)\n" + +#: seq/aconnect/aconnect.c:395 +#, c-format +msgid "Connection is already subscribed\n" +msgstr "既に接続されています\n" + +#: seq/aconnect/aconnect.c:400 +#, c-format +msgid "Connection failed (%s)\n" +msgstr "接続に失敗 (%s)\n" + +#: seq/aseqnet/aseqnet.c:160 +#, c-format +msgid "aseqnet - network client/server on ALSA sequencer\n" +msgstr "aseqnet - ALSA sequencer 上のネットワーククライアント/サーバ" + +#: seq/aseqnet/aseqnet.c:161 +#, c-format +msgid " Copyright (C) 1999 Takashi Iwai\n" +msgstr "" + +#: seq/aseqnet/aseqnet.c:162 +#, c-format +msgid "usage:\n" +msgstr "使用法:\n" + +#: seq/aseqnet/aseqnet.c:163 +#, c-format +msgid " server mode: aseqnet [-options]\n" +msgstr " サーバモード: aseqnet [-オプション]\n" + +#: seq/aseqnet/aseqnet.c:164 +#, c-format +msgid " client mode: aseqnet [-options] server_host\n" +msgstr " クライアントモード: aseqnet [-オプション] サーバホスト\n" + +#: seq/aseqnet/aseqnet.c:165 +#, c-format +msgid "options:\n" +msgstr "オプション:\n" + +#: seq/aseqnet/aseqnet.c:166 +#, c-format +msgid " -p,--port # : sepcify TCP port (digit or service name)\n" +msgstr " -p,--port # : TCP ポートの指定 (数字またはサービス名)\n" + +#: seq/aseqnet/aseqnet.c:167 +#, c-format +msgid " -s,--source addr : read from given addr (client:port)\n" +msgstr " -s,--source addr : 指定のアドレス(クライアント:ポート)から読み込む\n" + +#: seq/aseqnet/aseqnet.c:168 +#, c-format +msgid " -d,--dest addr : write to given addr (client:port)\n" +msgstr " -d,--dest addr : 指定のアドレス(クライアント:ポート)に書き込む\n" + +#: seq/aseqnet/aseqnet.c:169 +#, c-format +msgid " -v, --verbose : print verbose messages\n" +msgstr " -v,--verbose : 冗長メッセージ表示\n" + +#: seq/aseqnet/aseqnet.c:170 +#, c-format +msgid " -i, --info : print certain received events\n" +msgstr " -i,--info : 受信イベントを表示する\n" + +#: seq/aseqnet/aseqnet.c:184 +#, c-format +msgid "can't malloc\n" +msgstr "malloc できません" + +#: seq/aseqnet/aseqnet.c:209 +#, c-format +msgid "closing files..\n" +msgstr "ファイルを閉じます..\n" + +#: seq/aseqnet/aseqnet.c:268 +#, c-format +msgid "sequencer opened: %d:%d\n" +msgstr "" + +#: seq/aseqnet/aseqnet.c:275 +#, c-format +msgid "invalid source address %s\n" +msgstr "不正な送信アドレス %s\n" + +#: seq/aseqnet/aseqnet.c:305 +#, c-format +msgid "service '%s' is not found in /etc/services\n" +msgstr "サービス '%s' が /etc/services に見つかりません\n" + +#: seq/aseqnet/aseqnet.c:373 +#, c-format +msgid "too many connections!\n" +msgstr "接続が多すぎます!\n" + +#: seq/aseqnet/aseqnet.c:384 +#, c-format +msgid "accepted[%d]\n" +msgstr "了解[%d]\n" + +#: seq/aseqnet/aseqnet.c:407 +#, c-format +msgid "can't get address %s\n" +msgstr "アドレス %s を取得できません\n" + +#: seq/aseqnet/aseqnet.c:418 +#, c-format +msgid "ok.. connected\n" +msgstr "ok.. 接続\n" + +#: seq/aseqnet/aseqnet.c:514 +#, c-format +msgid "Channel %2d: Control event : %5d\n" +msgstr "チャネル %2d: コントロール : %5d\n" + +#: seq/aseqnet/aseqnet.c:518 +#, c-format +msgid "Channel %2d: Pitchbender : %5d\n" +msgstr "チャネル %2d: ピッチベンド : %5d\n" + +#: seq/aseqnet/aseqnet.c:522 +#, c-format +msgid "Channel %2d: Note On event : %5d\n" +msgstr "チャネル %2d: ノートオン : %5d\n" + +#: seq/aseqnet/aseqnet.c:526 +#, c-format +msgid "Channel %2d: Note Off event: %5d\n" +msgstr "チャネル %2d: ノートオフ : %5d\n" + +#: seq/aseqnet/aseqnet.c:581 +#, c-format +msgid "disconnected\n" +msgstr "切り離し\n" + +#: speaker-test/speaker-test.c:71 +msgid "Front Left" +msgstr "" + +#: speaker-test/speaker-test.c:72 +msgid "Front Right" +msgstr "" + +#: speaker-test/speaker-test.c:73 +msgid "Rear Left" +msgstr "" + +#: speaker-test/speaker-test.c:74 +msgid "Rear Right" +msgstr "" + +#: speaker-test/speaker-test.c:75 +msgid "Center" +msgstr "" + +#: speaker-test/speaker-test.c:76 +msgid "LFE" +msgstr "" + +#: speaker-test/speaker-test.c:77 +msgid "Side Left" +msgstr "" + +#: speaker-test/speaker-test.c:78 +msgid "Side Right" +msgstr "" + +#: speaker-test/speaker-test.c:79 +msgid "8" +msgstr "" + +#: speaker-test/speaker-test.c:80 +msgid "9" +msgstr "" + +#: speaker-test/speaker-test.c:81 +msgid "10" +msgstr "" + +#: speaker-test/speaker-test.c:82 +msgid "11" +msgstr "" + +#: speaker-test/speaker-test.c:83 +msgid "12" +msgstr "" + +#: speaker-test/speaker-test.c:84 +msgid "13" +msgstr "" + +#: speaker-test/speaker-test.c:85 +msgid "14" +msgstr "" + +#: speaker-test/speaker-test.c:86 +msgid "15" +msgstr "" + +#: speaker-test/speaker-test.c:87 +msgid "16" +msgstr "" + +#: speaker-test/speaker-test.c:237 +#, c-format +msgid "Broken configuration for playback: no configurations available: %s\n" +msgstr "再生用に設定できません: 設定がみつかりません: %s\n" + +#: speaker-test/speaker-test.c:244 +#, c-format +msgid "Access type not available for playback: %s\n" +msgstr "アクセスタイプが不正です: %s\n" + +#: speaker-test/speaker-test.c:251 +#, c-format +msgid "Sample format not available for playback: %s\n" +msgstr "指定のサンプルフォーマットを使用できません: %s\n" + +#: speaker-test/speaker-test.c:258 +#, c-format +msgid "Channels count (%i) not available for playbacks: %s\n" +msgstr "チャネル数 (%i) を使用できません: %s\n" + +#: speaker-test/speaker-test.c:266 +#, c-format +msgid "Rate %iHz not available for playback: %s\n" +msgstr "レート %iHz を使用できません: %s\n" + +#: speaker-test/speaker-test.c:271 +#, c-format +msgid "Rate doesn't match (requested %iHz, get %iHz, err %d)\n" +msgstr "設定レートが一致しません< (要求値 %iHz, 取得値 %iHz, エラー %d)\n" + +#: speaker-test/speaker-test.c:275 +#, c-format +msgid "Rate set to %iHz (requested %iHz)\n" +msgstr "レート %iHz (要求値 %iHz)\n" + +#: speaker-test/speaker-test.c:284 +#, c-format +msgid "Buffer size range from %lu to %lu\n" +msgstr "バッファサイズ範囲 %lu 〜 %lu\n" + +#: speaker-test/speaker-test.c:285 +#, c-format +msgid "Period size range from %lu to %lu\n" +msgstr "ピリオドサイズ範囲 %lu 〜 %lu\n" + +#: speaker-test/speaker-test.c:286 +#, c-format +msgid "Periods = %d\n" +msgstr "ピリオド数 = %d\n" + +#: speaker-test/speaker-test.c:287 +#, c-format +msgid "Buffer time size %lu\n" +msgstr "バッファタイムサイズ %lu\n" + +#: speaker-test/speaker-test.c:298 +#, c-format +msgid "To choose buffer_size = %lu\n" +msgstr "buffer_size = %lu を選択\n" + +#: speaker-test/speaker-test.c:299 +#, c-format +msgid "To choose period_size = %lu\n" +msgstr "period_size = %lu を選択\n" + +#: speaker-test/speaker-test.c:303 +#, c-format +msgid "Unable to set period size %lu for playback: %s\n" +msgstr "period_size %lu を設定できません: %s\n" + +#: speaker-test/speaker-test.c:308 +#, c-format +msgid "Unable to get period size for playback: %s\n" +msgstr "period_size を取得できません: %s\n" + +#: speaker-test/speaker-test.c:313 +#, c-format +msgid "Unable to set buffer size %lu for playback: %s\n" +msgstr "buffer_size %lu を設定できません: %s\n" + +#: speaker-test/speaker-test.c:317 +#, c-format +msgid "was set period_size = %lu\n" +msgstr "period_size = %lu で設定\n" + +#: speaker-test/speaker-test.c:318 +#, c-format +msgid "was set buffer_size = %lu\n" +msgstr "buffer_size = %lu で設定\n" + +#: speaker-test/speaker-test.c:320 +#, c-format +msgid "buffer to small, could not use\n" +msgstr "バッファが小さすぎます\n" + +#: speaker-test/speaker-test.c:328 +#, c-format +msgid "Unable to set hw params for playback: %s\n" +msgstr "hw params を設定できません: %s\n" + +#: speaker-test/speaker-test.c:341 +#, c-format +msgid "Unable to determine current swparams for playback: %s\n" +msgstr "現在の swparams を取得できません: %s\n" + +#: speaker-test/speaker-test.c:348 +#, c-format +msgid "Unable to set start threshold mode for playback: %s\n" +msgstr "start_threshold モードを設定できません: %s\n" + +#: speaker-test/speaker-test.c:355 +#, c-format +msgid "Unable to set avail min for playback: %s\n" +msgstr "avail_min を設定できません: %s\n" + +#: speaker-test/speaker-test.c:362 +#, c-format +msgid "Unable to set transfer align for playback: %s\n" +msgstr "転送 align を設定できません: %s\n" + +#: speaker-test/speaker-test.c:369 +#, c-format +msgid "Unable to set sw params for playback: %s\n" +msgstr "再生用の sw params を設定できません: %s\n" + +#: speaker-test/speaker-test.c:384 +#, c-format +msgid "Can't recovery from underrun, prepare failed: %s\n" +msgstr "アンダーランから復帰失敗: %s\n" + +#: speaker-test/speaker-test.c:395 +#, c-format +msgid "Can't recovery from suspend, prepare failed: %s\n" +msgstr "サスペンドから復帰失敗: %s\n" + +#: speaker-test/speaker-test.c:431 +#, c-format +msgid "Write error: %d,%s\n" +msgstr "書込エラー: %d,%s\n" + +#: speaker-test/speaker-test.c:433 +#, c-format +msgid "xrun_recovery failed: %d,%s\n" +msgstr "xrun_recovery 失敗: %d,%s\n" + +#: speaker-test/speaker-test.c:452 +#, c-format +msgid "" +"Usage: speaker-test [OPTION]... \n" +"-h,--help\thelp\n" +"-D,--device\tplayback device\n" +"-r,--rate\tstream rate in Hz\n" +"-c,--channels\tcount of channels in stream\n" +"-f,--frequency\tsine wave frequency in Hz\n" +"-F,--format\tsample format\n" +"-b,--buffer\tring buffer size in us\n" +"-p,--period\tperiod size in us\n" +"-t,--test\t1=use pink noise, 2=use sine wave\n" +"-s,--speaker\tsingle speaker test. Values 1=Left or 2=right\n" +"\n" +msgstr "" +"使用法: speaker-test [オプション]...\n" +"-h,--help ヘルプ\n" +"-D,--device 再生デバイス\n" +"-r,--rate ストリームレート (Hz)\n" +"-c,--channels チャネル数\n" +"-f,--frequency 正弦波周波数 (hz)\n" +"-F,--format サンプルフォーマット\n" +"-b,--buffer リングバッファーサイズ (μs)\n" +"-p,--period ピリオドサイズ (μs)\n" +"-t,--test 1=ピンクノイズを使用, 2=正弦波を使用\n" +"-s,--speaker 単一スピーカーテスト 1=左 または 2=右\n" +"\n" + +#: speaker-test/speaker-test.c:561 +#, c-format +msgid "Invalid parameter for -s option.\n" +msgstr "-s オプションの値が不正です\n" + +#: speaker-test/speaker-test.c:566 +#, c-format +msgid "Unknown option '%c'\n" +msgstr "未知のオプション '%c'\n" + +#: speaker-test/speaker-test.c:579 +#, c-format +msgid "Output failed: %s\n" +msgstr "出力失敗: %s\n" + +#: speaker-test/speaker-test.c:583 +#, c-format +msgid "Playback device is %s\n" +msgstr "再生デバイス: %s\n" + +#: speaker-test/speaker-test.c:584 +#, c-format +msgid "Stream parameters are %iHz, %s, %i channels\n" +msgstr "ストリームパラメータ: %iHz, %s, %i チャネル\n" + +#: speaker-test/speaker-test.c:586 +#, c-format +msgid "Using 16 octaves of pink noise\n" +msgstr "16 オクターブのピンクノイズを使用\n" + +#: speaker-test/speaker-test.c:588 +#, c-format +msgid "Sine wave rate is %.4fHz\n" +msgstr "正弦波レート: %.4fHz\n" + +#: speaker-test/speaker-test.c:592 +#, c-format +msgid "Playback open error: %d,%s\n" +msgstr "再生オープンエラー: %d,%s\n" + +#: speaker-test/speaker-test.c:597 +#, c-format +msgid "Setting of hwparams failed: %s\n" +msgstr "hwparams の設定に失敗: %s\n" + +#: speaker-test/speaker-test.c:604 +#, c-format +msgid "Setting of swparams failed: %s\n" +msgstr "swparams の設定に失敗: %s\n" + +#: speaker-test/speaker-test.c:614 +#, c-format +msgid "No enough memory\n" +msgstr "メモリが足りません\n" + +#: speaker-test/speaker-test.c:638 speaker-test/speaker-test.c:660 +#, c-format +msgid "Transfer failed: %s\n" +msgstr "転送に失敗しました: %s\n" + +#: speaker-test/speaker-test.c:641 +#, c-format +msgid "Pausing\n" +msgstr "停止中\n" + +#: speaker-test/speaker-test.c:653 +#, c-format +msgid "Time per period = %lf\n" +msgstr "ピリオド時間 = %lf\n" diff --git a/po/quot.sed b/po/quot.sed new file mode 100644 index 0000000..0122c46 --- /dev/null +++ b/po/quot.sed @@ -0,0 +1,6 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g diff --git a/po/remove-potcdate.sed b/po/remove-potcdate.sed new file mode 100644 index 0000000..edb38d7 --- /dev/null +++ b/po/remove-potcdate.sed @@ -0,0 +1,11 @@ +/^"POT-Creation-Date: .*"$/{ +x +s/P/P/ +ta +g +d +bb +:a +x +:b +} diff --git a/po/remove-potcdate.sin b/po/remove-potcdate.sin new file mode 100644 index 0000000..2436c49 --- /dev/null +++ b/po/remove-potcdate.sin @@ -0,0 +1,19 @@ +# Sed script that remove the POT-Creation-Date line in the header entry +# from a POT file. +# +# The distinction between the first and the following occurrences of the +# pattern is achieved by looking at the hold space. +/^"POT-Creation-Date: .*"$/{ +x +# Test if the hold space is empty. +s/P/P/ +ta +# Yes it was empty. First occurrence. Remove the line. +g +d +bb +:a +# The hold space was nonempty. Following occurrences. Do nothing. +x +:b +} |