<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2013 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_label" msgid="2783841764617238354">"Dokümanlar"</string>
    <string name="title_open" msgid="4353228937663917801">"Şuradan aç:"</string>
    <string name="title_save" msgid="2433679664882857999">"Şuraya kaydet:"</string>
    <string name="menu_create_dir" msgid="5947289605844398389">"Klasör oluştur"</string>
    <string name="menu_grid" msgid="6878021334497835259">"Tablo görünümü"</string>
    <string name="menu_list" msgid="7279285939892417279">"Liste görünümü"</string>
    <string name="menu_sort" msgid="7677740407158414452">"Sıralama ölçütü"</string>
    <string name="menu_search" msgid="3816712084502856974">"Ara"</string>
    <string name="menu_settings" msgid="6008033148948428823">"Ayarlar"</string>
    <string name="menu_open" msgid="432922957274920903">"Aç"</string>
    <string name="menu_save" msgid="2394743337684426338">"Kaydet"</string>
    <string name="menu_share" msgid="3075149983979628146">"Paylaş"</string>
    <string name="menu_delete" msgid="8138799623850614177">"Sil"</string>
    <string name="menu_select_all" msgid="4320518282375109902">"Tümünü Seç"</string>
    <string name="menu_copy" msgid="3612326052677229148">"Kopyala…"</string>
    <string name="menu_advanced_show" product="nosdcard" msgid="4693652895715631401">"Dahili depolamayı göster"</string>
    <string name="menu_advanced_show" product="default" msgid="5792182900084144261">"SD kartı göster"</string>
    <string name="menu_advanced_hide" product="nosdcard" msgid="4218809952721972589">"Dahili depolamayı gizle"</string>
    <string name="menu_advanced_hide" product="default" msgid="4845869969015718848">"SD kartı gizle"</string>
    <string name="menu_file_size_show" msgid="3240323619260823076">"Dosya boyutunu göster"</string>
    <string name="menu_file_size_hide" msgid="8881975928502581042">"Dosya boyutunu gizle"</string>
    <string name="button_select" msgid="527196987259139214">"Seç"</string>
    <string name="button_copy" msgid="8706475544635021302">"Kopyala"</string>
    <string name="mode_selected_count" msgid="459111894725594625">"<xliff:g id="COUNT">%1$d</xliff:g> tane seçildi"</string>
    <string name="sort_name" msgid="9183560467917256779">"Ada göre"</string>
    <string name="sort_date" msgid="586080032956151448">"Değişiklik tarihine göre"</string>
    <string name="sort_size" msgid="3350681319735474741">"Boyuta göre"</string>
    <string name="drawer_open" msgid="4545466532430226949">"Kökleri göster"</string>
    <string name="drawer_close" msgid="7602734368552123318">"Kökleri sakla"</string>
    <string name="save_error" msgid="6167009778003223664">"Doküman kaydedilemedi"</string>
    <string name="create_error" msgid="3735649141335444215">"Klasör oluşturulamadı"</string>
    <string name="query_error" msgid="1222448261663503501">"Dokümanlar sorgulanamadı"</string>
    <string name="root_recent" msgid="4470053704320518133">"En son"</string>
    <string name="root_available_bytes" msgid="8568452858617033281">"<xliff:g id="SIZE">%1$s</xliff:g> boş"</string>
    <string name="root_type_service" msgid="2178854894416775409">"Depolama hizmetleri"</string>
    <string name="root_type_shortcut" msgid="3318760609471618093">"Kısayollar"</string>
    <string name="root_type_device" msgid="7121342474653483538">"Cihazlar"</string>
    <string name="root_type_apps" msgid="8838065367985945189">"Diğer uygulamalar"</string>
    <string name="empty" msgid="7858882803708117596">"Öğe yok"</string>
    <string name="toast_no_application" msgid="1339885974067891667">"Dosya açılamıyor"</string>
    <string name="toast_failed_delete" msgid="2180678019407244069">"Bazı dokümanlar silinemiyor"</string>
    <string name="share_via" msgid="8966594246261344259">"Şunu kullanarak paylaş:"</string>
    <string name="copy_notification_title" msgid="6374299806748219777">"Dosyalar kopyalanıyor"</string>
    <string name="copy_remaining" msgid="6283790937387975095">"<xliff:g id="DURATION">%s</xliff:g> kaldı"</string>
    <plurals name="copy_begin" formatted="false" msgid="9071199452634086365">
      <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> dosya kopyalanıyor.</item>
      <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> dosya kopyalanıyor.</item>
    </plurals>
    <string name="copy_preparing" msgid="3896202461003039386">"Kopyalanmak için hazırlanıyor…"</string>
    <plurals name="copy_error_notification_title" formatted="false" msgid="5267616889076217261">
      <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> dosya kopyalanamadı</item>
      <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> dosya kopyalanamadı</item>
    </plurals>
    <string name="notification_touch_for_details" msgid="4483108577842961665">"Ayrıntıları görüntülemek için dokunun"</string>
    <string name="retry" msgid="7564024179122207376">"Yeniden dene"</string>
    <string name="copy_failure_alert_content" msgid="3715575000297709082">"Şu dosyalar kopyalanmadı: <xliff:g id="LIST">%1$s</xliff:g>"</string>
</resources>
