# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: alsaconf\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-12-02 12:37+0100\n"
"PO-Revision-Date: 2005-12-02 12:39+0100\n"
"Last-Translator: Takashi Iwai <tiwai@suse.de>\n"
"Language-Team: Japanese <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: ../alsaconf.in:36
msgid "-s"
msgstr ""

#: ../alsaconf.in:80
msgid "ALSA configurator"
msgstr "ALSA 設定ツール"

#: ../alsaconf.in:82
msgid ""
"usage: alsaconf [options]\n"
"  -l|--legacy    check only legacy non-isapnp cards\n"
"  -m|--modinfo   read module descriptions instead of reading card db\n"
"  -s|--sound wav-file\n"
"                 use the specified wav file as a test sound\n"
"  -u|--uid uid   set the uid for the ALSA devices (default = 0) [obsoleted]\n"
"  -g|--gid gid   set the gid for the ALSA devices (default = 0) [obsoleted]\n"
"  -d|--devmode mode\n"
"                 set the permission for ALSA devices (default = 0666) "
"[obs.]\n"
"  -r|--strict    set strict device mode (equiv. with -g 17 -d 0660) "
"[obsoleted]\n"
"  -L|--log file  logging on the specified file (for debugging purpose only)\n"
"  -p|--probe card-name\n"
"                 probe a legacy non-isapnp card and print module options\n"
"  -P|--listprobe list the supported legacy card modules\n"
"  -c|--config file\n"
"                 specify the module config file\n"
"  -R|--resources list available DMA and IRQ resources with debug for legacy\n"
"  -h|--help      what you're reading"
msgstr ""
"使用法: alsaconf [オプション]\n"
"  -l|--legacy    非 ISAPnP カードのみチェックする\n"
"  -m|--modinfo   カード DB を読む代わりにモジュール記述を読み込み\n"
"  -s|--sound WAVファイル\n"
"                 指定の WAV ファイルをテスト音として用いる\n"
"  -u|--uid uid   ALSA デバイスの uid (デフォルト = 0) [旧オプション・無視されます]\n"
"  -g|--gid gid   ALSA デバイスの gid (デフォルト = 0) [旧]\\n\"\n"
"  -d|--devmode モード\n"
"                 ALSA デバイスのパーミッション(デフォルト = 0666) [旧]\n"
"  -r|--strict    厳格なモード (-g 17 -d 0660 と同等) [旧]\n"
"  -L|--log file  指定のファイルにログを記録する (デバッグ用途)\n"
"  -p|--probe カード名\n"
"                 指定の 非IsaPnP カードを検索しモジュールオプションを表示する\n"
"  -P|--listprobe サポートされている旧式の(非isapnp)カードのモジュール一覧表示\n"
"  -c|--config ファイル\n"
"                 指定のモジュール設定ファイルを用いる\n"
"  -R|--resources レガシーデバイスのデバッグ用: 可能な DMA と IRQ を表示する\n"
"  -h|--help      今見ています"

#: ../alsaconf.in:252
msgid "You must be root to use this script."
msgstr "ルートのみ実行可能です"

#: ../alsaconf.in:294
msgid "ERROR: The config file doesn't exist: "
msgstr "エラー: 設定ファイルが存在しません: "

#: ../alsaconf.in:336
msgid "Error, dialog or whiptail not found."
msgstr "エラー: dialog または whiptail が見つかりません"

#: ../alsaconf.in:342
msgid "Error, awk not found. Can't continue."
msgstr "エラー: awk が見つかりません"

#: ../alsaconf.in:439
msgid ""
"\n"
"                   ALSA  CONFIGURATOR\n"
"                   version %s\n"
"\n"
"            This script is a configurator for\n"
"    Advanced Linux Sound Architecture (ALSA) driver.\n"
"\n"
"\n"
"  If ALSA is already running, you should close all sound\n"
"  apps now and stop the sound driver.\n"
"  alsaconf will try to do this, but it's not 100%% sure."
msgstr ""
"\n"
"                   ALSA 設定ツール\n"
"                  バージョン %s\n"
"\n"
"     このスクリプトは、Advanced Linux Sound Architecture\n"
"    (ALSA) ドライバの設定を行うツールです。\n"
"\n"
"\n"
"   もし既に ALSA が起動している場合は、実行前に\n"
"   全てのサウンドアプリケーションを閉じて、サウンド\n"
"   ドライバを停止してください。\n"
"   alsaconf の動作は 100%% 保証できません。"

#: ../alsaconf.in:455
msgid ""
"\n"
"\n"
"     OK, sound driver is configured.\n"
"\n"
"                  ALSA  CONFIGURATOR\n"
"\n"
"          will prepare the card for playing now.\n"
"\n"
"     Now I'll run alsasound init script, then I'll use\n"
"     amixer to raise the default volumes.\n"
"     You can change the volume later via a mixer\n"
"     program such as alsamixer or gamix.\n"
"  \n"
"  "
msgstr ""
"\n"
"\n"
"    サウンドドライバが設定されました。\n"
"\n"
"    これからカードの再生の準備を行います。\n"
"\n"
"\n"
"    alsasound スクリプトを実行し、その後 amixer で\n"
"    デフォルトの音量に設定します。\n"
"    後で、alsamixer や gamix などのミキサープログラム\n"
"    を用いて、音量を変更することが可能です。\n"
"  "

#: ../alsaconf.in:518 ../alsaconf.in:523 ../alsaconf.in:528 ../alsaconf.in:533
msgid "Can't create temp file, exiting..."
msgstr "一時ファイルを作成できませんでした。中止します..."

#: ../alsaconf.in:643
msgid "Building card database.."
msgstr "カードデータベースを作成中..."

#: ../alsaconf.in:647
msgid "No card database is found.."
msgstr "カードが見つかりませんでした..."

#: ../alsaconf.in:652
msgid "Searching sound cards"
msgstr "サウンドカードを検索中"

#: ../alsaconf.in:806
msgid ""
"\n"
"Configuring %s\n"
"Do you want to modify %s (and %s if present)?"
msgstr ""
"\n"
"%s を設定します\n"
"%s (および %s) を変更しますか？"

#: ../alsaconf.in:811
msgid ""
"\n"
"Configuring %s\n"
"Do you want to modify %s?"
msgstr ""
"\n"
"%s を設定します\n"
"%s を変更しますか？"

#: ../alsaconf.in:900
msgid "Running modules-update..."
msgstr "modules-update を実行中..."

#: ../alsaconf.in:903
msgid "Running update-modules..."
msgstr "update-modules を実行中..."

#: ../alsaconf.in:915
msgid ""
"\n"
"       The mixer is set up now for for playing.\n"
"       Shall I try to play a sound sample now?\n"
"\n"
"                           NOTE:\n"
"If you have a big amplifier, lower your volumes or say no.\n"
"    Otherwise check that your speaker volume is open,\n"
"          and look if you can hear test sound.\n"
msgstr ""
"\n"
"       音量を再生用に準備し終えました。\n"
"       サンプルのサウンドを再生しますか？\n"
"\n"
"  注意:\n"
"  大容量アンプの場合は、音量を下げておくか、ここで「いいえ」\n"
"  を選択してください。スピーカーの音量をチェックして、\n"
"  テスト音が聞こえるかどうか確認してください。\n"

#: ../alsaconf.in:932
msgid "Saving the mixer setup used for this in /etc/asound.state."
msgstr "ミキサーの設定を /etc/asound.state に保存します"

#: ../alsaconf.in:936
msgid ""
"\n"
"===============================================================================\n"
"\n"
" Now ALSA is ready to use.\n"
" For adjustment of volumes, use your favorite mixer.\n"
"\n"
" Have a lot of fun!\n"
"\n"
msgstr ""
"\n"
"===============================================================================\n"
"\n"
" これで ALSA が使用可能になりました。\n"
" 音量の調整には、ミキサープログラムをご使用下さい。\n"
"\n"

#: ../alsaconf.in:1244
msgid "WARNING"
msgstr "注意"

#: ../alsaconf.in:1245
msgid ""
"\n"
"   Probing legacy ISA cards might make\n"
"   your system unstable.\n"
"\n"
"        Do you want to proceed?\n"
"\n"
msgstr ""
"\n"
"  旧式の ISA カードの検索を行うと\n"
"  システムが不安定になる場合があります。\n"
"\n"
"  このまま続けますか？\n"
"\n"

#: ../alsaconf.in:1268
msgid ""
"No legacy drivers are available\n"
"   for your machine"
msgstr ""
"旧式の ISA カードは\n"
"検出されませんでした"

#: ../alsaconf.in:1273
msgid "Driver Selection"
msgstr "ドライバの選択"

#: ../alsaconf.in:1274
msgid ""
"           Probing legacy ISA cards\n"
"\n"
"        Please select the drivers to probe:"
msgstr ""
"    旧式の ISA カードの検出\n"
"\n"
"    検出するドライバを選択してください:"

#: ../alsaconf.in:1281
msgid ""
"\n"
" Shall I try all possible DMA and IRQ combinations?\n"
" With this option, some unconventional configuration\n"
" might be found, but it will take much longer time."
msgstr ""
"\n"
" 可能な DMA と IRQ の全ての組合せを試みますか？\n"
" このオプションでは、まれな設定も検出されることが\n"
" 可能ですが、より長い時間がかかります。"

#: ../alsaconf.in:1291
msgid "Probing legacy cards..   This may take a few minutes.."
msgstr "旧式カードの検出中...  長時間がかかることがあります..."

#: ../alsaconf.in:1292
msgid "Probing: "
msgstr "検出中: "

#: ../alsaconf.in:1298
msgid " : FOUND!!"
msgstr " : 発見!!"

#: ../alsaconf.in:1304
msgid "Result"
msgstr "結果"

#: ../alsaconf.in:1305
msgid "No legacy cards found"
msgstr "旧式カードが見つかりませんでした"

#: ../alsaconf.in:1364
msgid ""
"\n"
" Looks like you having a Thinkpad 600E or 770 notebook.\n"
" On this notebook, CS4236 driver should be used\n"
" although CS46xx chip is detected.\n"
"\n"
" Shall I try to snd-cs4236 driver and probe\n"
" the legacy ISA configuration?"
msgstr ""
"\n"
" Thinkpad 600E または 770 をご使用のようです。\n"
" このマシンでは、CS46xx チップが検出されますが\n"
" CS4236 ドライバを用いる必要があります。\n"
"\n"
" snd-cs4236 ドライバを試用して、旧式の ISA 設定\n"
" の検出を行いますか？"

#: ../alsaconf.in:1378
msgid ""
"\n"
" Looks like you having a Dell Dimension machine.\n"
" On this machine, CS4232 driver should be used\n"
" although CS46xx chip is detected.\n"
"\n"
" Shall I try to snd-cs4232 driver and probe\n"
" the legacy ISA configuration?"
msgstr ""
"\n"
" Dell Dimension マシンをご使用のようです。\n"
" このマシンでは、CS46xx チップが検出されますが\n"
" CS4232 ドライバを用いる必要があります。\n"
"\n"
" snd-cs4232 ドライバを試用して、旧式の ISA 設定\n"
" の検出を行いますか？"

#: ../alsaconf.in:1395
msgid "Soundcard Selection"
msgstr "サウンドカードの選択"

#: ../alsaconf.in:1396
msgid ""
"\n"
"         Following card(s) are found on your system.\n"
"         Choose a soundcard to configure:\n"
msgstr ""
"\n"
"        以下のカードがシステムから検出されました。\n"
"        設定するカードを選択してください:\n"

#: ../alsaconf.in:1409
msgid ""
"\n"
"        No supported PnP or PCI card found.\n"
"\n"
" Would you like to probe legacy ISA sound cards/chips?\n"
"\n"
msgstr ""
"\n"
"   PnP または PCI カードが検出されませんでした。\n"
"\n"
" 旧式の ISA サウンドカードの検出を行いますか？\n"
