<?php

/**
 * This file is part of the Carbon package.
 *
 * (c) Brian Nesbitt <brian@nesbot.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

/*
 * Authors:
 * - Kristján Ingi Geirsson
 */
return [
    'year' => '1 ár|:count ár',
    'y' => '1 ár|:count ár',
    'month' => '1 mánuður|:count mánuðir',
    'm' => '1 mánuður|:count mánuðir',
    'week' => '1 vika|:count vikur',
    'w' => '1 vika|:count vikur',
    'day' => '1 dagur|:count dagar',
    'd' => '1 dagur|:count dagar',
    'hour' => '1 klukkutími|:count klukkutímar',
    'h' => '1 klukkutími|:count klukkutímar',
    'minute' => '1 mínúta|:count mínútur',
    'min' => '1 mínúta|:count mínútur',
    'second' => '1 sekúnda|:count sekúndur',
    's' => '1 sekúnda|:count sekúndur',
    'ago' => ':time síðan',
    'from_now' => ':time síðan',
    'after' => ':time eftir',
    'before' => ':time fyrir',
    'first_day_of_week' => 1,
    'day_of_first_week_of_year' => 4,
    'list' => [', ', ' og '],
    'meridiem' => ['fh', 'eh'],
    'diff_now' => 'núna',
    'diff_yesterday' => 'í gær',
    'diff_tomorrow' => 'á morgun',
    'formats' => [
        'LT' => 'HH:mm',
        'LTS' => 'HH:mm:ss',
        'L' => 'DD.MM.YYYY',
        'LL' => 'D. MMMM YYYY',
        'LLL' => 'D. MMMM [kl.] HH:mm',
        'LLLL' => 'dddd D. MMMM YYYY [kl.] HH:mm',
    ],
    'weekdays' => ['sunnudaginn', 'mánudaginn', 'þriðjudaginn', 'miðvikudaginn', 'fimmtudaginn', 'föstudaginn', 'laugardaginn'],
    'weekdays_short' => ['sun', 'mán', 'þri', 'mið', 'fim', 'fös', 'lau'],
    'weekdays_min' => ['sun', 'mán', 'þri', 'mið', 'fim', 'fös', 'lau'],
    'months' => ['janúar', 'febrúar', 'mars', 'apríl', 'maí', 'júní', 'júlí', 'ágúst', 'september', 'október', 'nóvember', 'desember'],
    'months_short' => ['jan', 'feb', 'mar', 'apr', 'maí', 'jún', 'júl', 'ágú', 'sep', 'okt', 'nóv', 'des'],
];
