<?xml version="1.0" encoding="UTF-8"?>
<!-- 
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
 -->

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="spoken_use_headphones" msgid="4313642710742229868">"連接耳機即可聽取系統朗讀密碼按鍵。"</string>
    <string name="spoken_current_text_is" msgid="4240549866156675799">"目前文字為 %s"</string>
    <string name="spoken_no_text_entered" msgid="1711276837961785646">"未輸入文字"</string>
    <string name="spoken_auto_correct" msgid="8989324692167993804">"按下「<xliff:g id="KEY_NAME">%1$s</xliff:g>」可將「<xliff:g id="ORIGINAL_WORD">%2$s</xliff:g>」修正為「<xliff:g id="CORRECTED_WORD">%3$s</xliff:g>」"</string>
    <string name="spoken_auto_correct_obscured" msgid="7769449372355268412">"按下「<xliff:g id="KEY_NAME">%1$s</xliff:g>」可執行自動修正"</string>
    <!-- no translation found for spoken_empty_suggestion (4250215619373459752) -->
    <skip />
    <string name="spoken_description_unknown" msgid="5139930082759824442">"未知的字元"</string>
    <string name="spoken_description_shift" msgid="7209798151676638728">"Shift 鍵"</string>
    <string name="spoken_description_symbols_shift" msgid="3483198879916435717">"更多符號"</string>
    <string name="spoken_description_shift_shifted" msgid="3122704922642232605">"Shift 鍵"</string>
    <string name="spoken_description_symbols_shift_shifted" msgid="5179175466878186081">"符號"</string>
    <string name="spoken_description_caps_lock" msgid="1224851412185975036">"Shift 鍵"</string>
    <string name="spoken_description_delete" msgid="3878902286264983302">"刪除"</string>
    <string name="spoken_description_to_symbol" msgid="8244903740201126590">"符號"</string>
    <string name="spoken_description_to_alpha" msgid="4081215210530031950">"字母"</string>
    <string name="spoken_description_to_numeric" msgid="4560261331530795682">"數字"</string>
    <string name="spoken_description_settings" msgid="7281251004003143204">"設定"</string>
    <string name="spoken_description_tab" msgid="8210782459446866716">"Tab 鍵"</string>
    <string name="spoken_description_space" msgid="5908716896642059145">"空格鍵"</string>
    <string name="spoken_description_mic" msgid="6153138783813452464">"語音輸入"</string>
    <string name="spoken_description_emoji" msgid="7990051553008088470">"表情符號"</string>
    <string name="spoken_description_return" msgid="3183692287397645708">"返回"</string>
    <string name="spoken_description_search" msgid="5099937658231911288">"搜尋"</string>
    <string name="spoken_description_dot" msgid="5644176501632325560">"圓點符號"</string>
    <string name="spoken_description_language_switch" msgid="6818666779313544553">"切換語言"</string>
    <string name="spoken_description_action_next" msgid="431761808119616962">"下一個"</string>
    <string name="spoken_description_action_previous" msgid="2919072174697865110">"上一個"</string>
    <string name="spoken_description_shiftmode_on" msgid="5107180516341258979">"Shift 鍵已啟用"</string>
    <string name="spoken_description_shiftmode_locked" msgid="7307477738053606881">"大寫鎖定已啟用"</string>
    <string name="spoken_description_mode_symbol" msgid="111186851131446691">"符號模式"</string>
    <string name="spoken_description_mode_symbol_shift" msgid="4305607977537665389">"更多符號模式"</string>
    <string name="spoken_description_mode_alpha" msgid="4676004119618778911">"字母模式"</string>
    <string name="spoken_description_mode_phone" msgid="2061220553756692903">"撥號模式"</string>
    <string name="spoken_description_mode_phone_shift" msgid="7879963803547701090">"撥號符號模式"</string>
    <string name="announce_keyboard_hidden" msgid="2313574218950517779">"鍵盤已隱藏"</string>
    <string name="announce_keyboard_mode" msgid="6698257917367823205">"目前顯示的是<xliff:g id="KEYBOARD_MODE">%s</xliff:g>鍵盤"</string>
    <string name="keyboard_mode_date" msgid="6597407244976713364">"日期"</string>
    <string name="keyboard_mode_date_time" msgid="3642804408726668808">"日期和時間"</string>
    <string name="keyboard_mode_email" msgid="1239682082047693644">"電子郵件"</string>
    <string name="keyboard_mode_im" msgid="3812086215529493501">"簡訊"</string>
    <string name="keyboard_mode_number" msgid="5395042245837996809">"數字"</string>
    <string name="keyboard_mode_phone" msgid="2486230278064523665">"電話號碼"</string>
    <string name="keyboard_mode_text" msgid="9138789594969187494">"文字"</string>
    <string name="keyboard_mode_time" msgid="8558297845514402675">"時間"</string>
    <string name="keyboard_mode_url" msgid="8072011652949962550">"網址"</string>
    <string name="spoken_descrption_emoji_category_recents" msgid="4185344945205590692">"最近使用過"</string>
    <string name="spoken_descrption_emoji_category_people" msgid="8414196269847492817">"人物"</string>
    <string name="spoken_descrption_emoji_category_objects" msgid="6116297906606195278">"物體"</string>
    <string name="spoken_descrption_emoji_category_nature" msgid="5018340512472354640">"自然"</string>
    <string name="spoken_descrption_emoji_category_places" msgid="1163315840948545317">"地點"</string>
    <string name="spoken_descrption_emoji_category_symbols" msgid="474680659024880601">"符號"</string>
    <string name="spoken_descrption_emoji_category_emoticons" msgid="456737544787823539">"表情"</string>
    <string name="spoken_description_upper_case" msgid="4904835255229433916">"大寫 <xliff:g id="LOWER_LETTER">%s</xliff:g>"</string>
    <string name="spoken_letter_0049" msgid="4743162182646977944">"大寫 I"</string>
    <string name="spoken_letter_0130" msgid="4766619646231612274">"上方加點的大寫 I"</string>
    <string name="spoken_symbol_unknown" msgid="717298227061173706">"未知的符號"</string>
    <string name="spoken_emoji_unknown" msgid="5981009928135394306">"未知的表情符號"</string>
    <string name="spoken_emoticon_3A_2D_21_20" msgid="2410905667389534573">"無聊"</string>
    <string name="spoken_emoticon_3A_2D_24_20" msgid="2481260475945560438">"尷尬"</string>
    <string name="spoken_emoticon_42_2D_29_20" msgid="1063205250387128068">"戴墨鏡"</string>
    <string name="spoken_emoticon_3A_4F_20" msgid="532695091593447238">"驚訝"</string>
    <string name="spoken_emoticon_3A_2D_2A_20" msgid="5612342617244114291">"親吻"</string>
    <string name="spoken_emoticon_3A_2D_5B_20" msgid="2223507987759905920">"皺眉"</string>
    <string name="spoken_open_more_keys_keyboard" msgid="6832897688371903747">"有可用的替代字元"</string>
    <string name="spoken_close_more_keys_keyboard" msgid="3524914657934712026">"已關閉替代字元"</string>
    <string name="spoken_open_more_suggestions" msgid="4231720702882969760">"有可用的建議字詞"</string>
    <string name="spoken_close_more_suggestions" msgid="9118455416075032839">"已關閉其他建議字詞"</string>
</resources>
