// I18N constants
// LANG: "da", ENCODING: UTF-8
//
// IMPORTANT NOTICE FOR TRANSLATORS
// ============================================================================
//
// Please be sure you read the README_TRANSLATORS.TXT in the Xinha Root 
// Directory.  Unless you are making a new plugin or module it is unlikely 
// that you want to be editing this file directly.
//
{
    "Absbottom": "Bund",
    "Absmiddle": "Centreret",
    "Align": "Placering",
    "Alt": "Alt",
    "Baseline": "Grundlinje",
    "Border": "Ramme",
    "Border Color": "Rammefarve",
    "Bottom": "Tekstbund",
    "Cancel": "Annuller",
    "Clear": "Fortryd",
    "Color": "Farve",
    "Constrain Proportions": "Korrekt størrelsesforhold",
    "Copy": "Kopier",
    "Crop": "Beskær",
    "Cut": "Klip",
    "Directory": "Mappe",
    "Directory Up": "Mappe op",
    "Edit": "Rediger",
    "File Manager": "Fil Manager",
    "Filename:": "Filnavn:",
    "Filesize:": "Filstørrelse:",
    "Flip Horizontal": "Vend vandret",
    "Flip Image": "Vend billede",
    "Flip Vertical": "Vend lodret",
    "GIF format is not supported, image editing not supported.": "GIF-Format ikke understøttet - kan ikke redigeres.",
    "Height": "Højde",
    "Height:": "Højde:",
    "Insert File Link": "Indsæt fil-link",
    "Invalid base directory:": "Ugyldig base mappe:",
    "JPEG High": "JPEG høj",
    "JPEG Low": "JPEG lav",
    "JPEG Medium": "JPEG mellem",
    "Left": "Venstre",
    "Loading": "Henter",
    "Lock": "Lås",
    "Margin": "Margen",
    "Marker": "Markør",
    "Measure": "Målebånd",
    "Middle": "Midt",
    "New Folder": "Ny mappe",
    "New window (_blank)": "Nyt vindue (_blank)",
    "No Files Found": "Ingen filer fundet",
    "No Image Available": "Ingen billeder tilgængelig",
    "None (use implicit)": "ingen (implicit)",
    "Not set": "Ubestemt",
    "OK": "OK",
    "Padding": "Spaltefyld",
    "Positioning of this image": "Billedets position",
    "Preview": "Smugkig",
    "Quality:": "Kvalitet",
    "Refresh": "Opdater",
    "Rename": "Omdøb",
    "Resize": "Ændre størrelse",
    "Right": "Højre",
    "Rotate": "Rotere",
    "Rotate Image": "Drej billede",
    "Same frame (_self)": "Samme ramme (_self)",
    "Save": "Gem",
    "Start X:": "Start X",
    "Start Y:": "Start Y",
    "Target Window": "Mål",
    "Texttop": "Teksttop",
    "Title (tooltip)": "Titel (Tooltip)",
    "Toggle marker color": "Skift markørfarve",
    "Top": "Top",
    "Top frame (_top)": "Topramme (_top)",
    "Trash": "Papirkurv",
    "Upload": "Upload",
    "W:": "W:",
    "Width": "Bredde",
    "Width:": "Bredde:",
    "You must select some text before making a new link.": "Vælg venligst noget tekst før du laver et nyt link.",
    "__OBSOLETE__": {
        "Angle:": "Vinkel:",
        "Cancelled rename.": "Fortryd omdøbning.",
        "Cannot upload $extension Files. Permission denied.": "Kan ikke uploade $extension. Tilladelse nægtet.",
        "Cannot upload. Maximum folder size reached. Delete unwanted files and try again.": "Kan ikke uploade. Den maksimale mappestørrelse er nået. Slet uønskede filer og prøv igen.",
        "Copy \"$file\" from \"$dir\" here": "Kopier \"$file\" fra \"$dir\" her",
        "Copy folder \"$file\" from \"$dir\" here": "Kopier mappe \"$file\" fra \"$dir\" her",
        "Could not create destination folder.": "Kunne ikke lave destinationsmappe.",
        "Date Modified": "Dato for redigering",
        "Delete file \"$file\"?": "Slet filen \"$file\"?",
        "Delete folder \"$dir\"?": "Slet mappen \"$dir\"?",
        "Description:": "Beskrivelse:",
        "Destination file/folder already exists.": "Destinations- fil/mappe findes allerede",
        "File \"$file\" successfully uploaded.": "Filen \"$file\" blev uploadet.",
        "File Name": "Filnavn",
        "File pasted OK.": "File pasted OK.",
        "File saved.": "Filen blev gemt.",
        "File was not saved.": "Filen blev ikke gemt.",
        "Folder Name:": "Mappenavn",
        "Folder is not empty. Please delete all Files and Subfolders inside.": "Mappen er ikke tom. Slet venligst alle filer og undermappermapper i mappen først.",
        "Free Space": "Fri plads",
        "Image File": "Billedfil",
        "Image Format": "Billedformat:",
        "Image Size": "Billedstørrelse",
        "Insert Image": "Indsæt billede",
        "Invalid folder name, please choose another folder name.": "Ugyldigt mappenavn, vælg venligst et andet navn.",
        "List View": "Listevisning",
        "Maximum file size [$max_size KB] exceeded.": "Maksimal filstørrelse [$max_size KB] overskredet.",
        "Move \"$file\" from \"$dir\" here": "Flyt \"$file\" fra \"$dir\" her",
        "Move folder \"$file\" from \"$dir\" here": "Flyt mappe \"$file\" fra \"$dir\" her",
        "Name": "Navn",
        "No Image selected.": "Ingen billeder valgt.",
        "Other": "Andre...",
        "Paste": "Sæt ind",
        "Paste failed.\nMaybe folder doesn't have write permission.": "Sæt ind fejlede.\nMåske har mappen ikke skriverettigheder.",
        "Please delete all files/folders inside the folder you wish to delete first.": "Slet venligst alle filer/mapper i mappen før den slettes.",
        "Please enter name for new folder...": "Indtast venligst navn på ny mappe...",
        "Please enter new name for this file...": "Indtast venligst et nyt navn til denne fil...",
        "Please enter new name for this folder...": "Indtast venligst et nyt navn til denne mappe...",
        "Rotate 180 °": "Drej 180°",
        "Rotate 90 ° CCW": "Drej 90° mod uret",
        "Rotate 90 ° CW": "Drej 90° med uret",
        "Size": "Størrelse",
        "Source file/folder not found.": "Kilde- fil/mappe ikke fundet",
        "Thumbnail View": "Miniatureportræt",
        "Total Size": "Samlet størrelse",
        "Total Size : $max_foldersize_mb MB, Free Space: $free_space": "Maks størrelse: $max_foldersize_mb MB, Fri plads: $free_space",
        "Unable to rename file. File of the same name already exists or\nfolder doesn't have write permission.": "Filen kan ikke omdøbes. En fil med samme navn eksisterer allerede, \neller mappen har ikke skriverettigheder.",
        "Unable to upload File. \nEither Maximum file size [$max_size KB] exceeded or\nFolder doesn't have write permission.": "Ikke muligt at uploade filen.\nEnten er den maksimale filstørrelse på [$max_size KB] nået\neller mappen har ikke skriverettigheder.",
        "Untitled": "Ubetitlet",
        "Uploading": "Uploader",
        "Uploading...": "Uploader..."
    }
};