<?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">"Documenten"</string>
    <string name="title_open" msgid="4353228937663917801">"Openen vanuit"</string>
    <string name="title_save" msgid="2433679664882857999">"Opslaan in"</string>
    <string name="menu_create_dir" msgid="5947289605844398389">"Map maken"</string>
    <string name="menu_grid" msgid="6878021334497835259">"Rasterweergave"</string>
    <string name="menu_list" msgid="7279285939892417279">"Lijstweergave"</string>
    <string name="menu_sort" msgid="7677740407158414452">"Sorteren op"</string>
    <string name="menu_search" msgid="3816712084502856974">"Zoeken"</string>
    <string name="menu_settings" msgid="6008033148948428823">"Instellingen"</string>
    <string name="menu_open" msgid="432922957274920903">"Openen"</string>
    <string name="menu_save" msgid="2394743337684426338">"Opslaan"</string>
    <string name="menu_share" msgid="3075149983979628146">"Delen"</string>
    <string name="menu_delete" msgid="8138799623850614177">"Verwijderen"</string>
    <string name="menu_select" msgid="8711270657353563424">"<xliff:g id="DIRECTORY">^1</xliff:g> selecteren"</string>
    <string name="menu_select_all" msgid="4320518282375109902">"Alles selecteren"</string>
    <string name="menu_copy" msgid="3612326052677229148">"Kopiëren naar…"</string>
    <string name="menu_advanced_show" product="nosdcard" msgid="4693652895715631401">"Interne opslag weergeven"</string>
    <string name="menu_advanced_show" product="default" msgid="5792182900084144261">"SD-kaart weergeven"</string>
    <string name="menu_advanced_hide" product="nosdcard" msgid="4218809952721972589">"Interne opslag verbergen"</string>
    <string name="menu_advanced_hide" product="default" msgid="4845869969015718848">"SD-kaart verbergen"</string>
    <string name="menu_file_size_show" msgid="3240323619260823076">"Bestandsgrootte weergeven"</string>
    <string name="menu_file_size_hide" msgid="8881975928502581042">"Bestandsgrootte verbergen"</string>
    <string name="button_copy" msgid="8706475544635021302">"Kopiëren"</string>
    <string name="mode_selected_count" msgid="459111894725594625">"<xliff:g id="COUNT">%1$d</xliff:g> geselecteerd"</string>
    <string name="sort_name" msgid="9183560467917256779">"Op naam"</string>
    <string name="sort_date" msgid="586080032956151448">"Op aanpassingsdatum"</string>
    <string name="sort_size" msgid="3350681319735474741">"Op grootte"</string>
    <string name="drawer_open" msgid="4545466532430226949">"Roots weergeven"</string>
    <string name="drawer_close" msgid="7602734368552123318">"Roots verbergen"</string>
    <string name="save_error" msgid="6167009778003223664">"Kan document niet opslaan"</string>
    <string name="create_error" msgid="3735649141335444215">"Kan map niet maken"</string>
    <string name="query_error" msgid="1222448261663503501">"Kan geen query\'s voor documenten verzenden"</string>
    <string name="root_recent" msgid="4470053704320518133">"Recent"</string>
    <string name="root_available_bytes" msgid="8568452858617033281">"<xliff:g id="SIZE">%1$s</xliff:g> vrij"</string>
    <string name="root_type_service" msgid="2178854894416775409">"Opslagservices"</string>
    <string name="root_type_shortcut" msgid="3318760609471618093">"Sneltoetsen"</string>
    <string name="root_type_device" msgid="7121342474653483538">"Apparaten"</string>
    <string name="root_type_apps" msgid="8838065367985945189">"Meer apps"</string>
    <string name="empty" msgid="7858882803708117596">"Geen items"</string>
    <string name="toast_no_application" msgid="1339885974067891667">"Kan bestand niet openen"</string>
    <string name="toast_failed_delete" msgid="2180678019407244069">"Kan bepaalde documenten niet verwijderen"</string>
    <string name="share_via" msgid="8966594246261344259">"Delen via"</string>
    <string name="copy_notification_title" msgid="6374299806748219777">"Bestanden kopiëren"</string>
    <string name="copy_remaining" msgid="6283790937387975095">"<xliff:g id="DURATION">%s</xliff:g> resterend"</string>
    <plurals name="copy_begin" formatted="false" msgid="9071199452634086365">
      <item quantity="other"><xliff:g id="COUNT_1">%1$d</xliff:g> bestanden kopiëren.</item>
      <item quantity="one"><xliff:g id="COUNT_0">%1$d</xliff:g> bestand kopiëren.</item>
    </plurals>
    <string name="copy_preparing" msgid="3896202461003039386">"Kopiëren voorbereiden…"</string>
    <plurals name="copy_error_notification_title" formatted="false" msgid="4911333304372840735">
      <item quantity="other">Fout bij kopiëren van <xliff:g id="COUNT_1">%1$d</xliff:g> bestanden.</item>
      <item quantity="one">Fout bij kopiëren van <xliff:g id="COUNT_0">%1$d</xliff:g> bestand.</item>
    </plurals>
    <string name="notification_touch_for_details" msgid="4483108577842961665">"Tik om details weer te geven"</string>
    <string name="retry" msgid="7564024179122207376">"Opnieuw proberen"</string>
    <string name="copy_failure_alert_title" msgid="616726451967793549">"Fout bij kopiëren van bestanden"</string>
    <string name="copy_failure_alert_content" msgid="2655232627616241542">"De volgende bestanden zijn niet gekopieerd: <xliff:g id="LIST">%1$s</xliff:g>"</string>
</resources>
