<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2009 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="app_name" msgid="1504397077706378597">"搜尋"</string>
    <string name="search_widget" msgid="323244086853110381">"搜尋"</string>
    <string name="remove_from_history" msgid="3812349065338505597">"從記錄中移除"</string>
    <string name="remove_from_history_failed" msgid="5471604847849215215">"從記錄中移除項目失敗"</string>
    <string name="corpus_selection_heading" msgid="6673422146423301360">"搜尋"</string>
    <string name="corpus_label_global" msgid="8787849559975296772">"全部"</string>
    <string name="corpus_label_web" msgid="3551946782975352067">"網頁"</string>
    <string name="corpus_description_web" msgid="5553049179123250409">"網頁搜尋、書籤和瀏覽器記錄"</string>
    <string name="corpus_label_apps" msgid="73123028704144731">"應用程式"</string>
    <string name="corpus_description_apps" msgid="7434542427108237469">"已安裝的應用程式名稱"</string>
    <string name="corpus_hint_apps" msgid="4230401643970165739">"搜尋應用程式"</string>
    <string name="menu_settings" msgid="5600043319144155953">"搜尋設定"</string>
    <string name="search_settings" msgid="4101951238194600323">"搜尋設定"</string>
    <!-- no translation found for google_settings_category_title (770300575312669210) -->
    <skip />
    <!-- no translation found for device_settings_category_title (2378889894648580869) -->
    <skip />
    <string name="system_search_category_title" msgid="1507902891285388819">"手機"</string>
    <string name="search_sources" msgid="505874718206340313">"可搜尋項目"</string>
    <string name="search_sources_summary" msgid="9181194249796408374">"選取要在手機上搜尋的內容"</string>
    <string name="clear_shortcuts" msgid="1964107586205103593">"清除搜尋捷徑"</string>
    <string name="clear_shortcuts_summary" msgid="7407553488405249541">"清除最近選擇搜尋建議時建立的所有捷徑"</string>
    <string name="clear_shortcuts_prompt" msgid="1383427830703301130">"這會清除最近選擇搜尋建議時建立的所有捷徑。"\n\n"(若要清除瀏覽記錄，請使用瀏覽器的設定選項)。"</string>
    <string name="clear_shortcuts_agree" msgid="5623666487205882033">"清除捷徑"</string>
    <string name="clear_shortcuts_disagree" msgid="3667707814933648461">"不清除捷徑"</string>
    <!-- no translation found for menu_help (8466596486018760239) -->
    <skip />
    <string name="google_search_label" msgid="2312345472131797361">"Google"</string>
    <string name="google_app_label" msgid="7877830942664670350">"Google 搜尋"</string>
    <string name="google_search_hint" msgid="8374014384681586649">"Google 搜尋"</string>
    <!-- outdated translation 6583849182671608994 -->     <string name="google_search_description" msgid="659411505885375623">"Google 搜尋建議"</string>
    <string name="voice_search_hint_title" msgid="9160095960228453779">"請說："</string>
    <string name="voice_search_hint_quotation_start" msgid="566545847023692214">"“"</string>
    <string name="voice_search_hint_quotation_end" msgid="4840921425933402938">"”"</string>
</resources>
