kr580 1.1.0

Desktop KR580VM80 / Intel 8080 emulator.
Documentation
use super::super::{keys::Key, network, printer};

pub(super) fn translate(key: Key) -> Option<&'static str> {
    let value = match key {
        Key::QuickAccess => "Быстрый доступ",
        Key::DeviceMonitor => "Отобразить монитор",
        Key::DeviceFloppy => "Отобразить буфер дисковода",
        Key::DeviceHdd => "Отобразить буфер жёсткого диска",
        Key::DeviceNetwork => "Отобразить буфер сетевого адаптера",
        Key::DevicePrinter => "Отобразить буфер принтера",
        Key::ViewStackArea => "Показать стековую область памяти",
        Key::MonitorUnifiedScreen => "Экран",
        Key::MonitorTextLayer => "Текстовый слой",
        Key::MonitorPixelLayer => "Графический слой",
        Key::MonitorHexBuffer => "Поток байт",
        Key::MonitorClose => "Закрыть",
        Key::MonitorDetach => "Открепить в отдельное окно",
        Key::MonitorAttach => "Вернуть в окно эмулятора",
        Key::MonitorPin => "Закрепить поверх других окон",
        Key::MonitorUnpin => "Не держать поверх других окон",
        Key::MonitorViewSplit => "Разделить",
        Key::MonitorViewUnified => "Объединить",
        Key::MonitorClearBuffer => "Очистить буфер",
        Key::MonitorSaveImage => "Сохранить изображение",
        Key::MonitorImageSaved => "Изображение монитора сохранено",
        Key::MonitorImageSaveFailed => "Не удалось сохранить изображение",
        Key::MonitorHexFilterAll => "Фильтр: всё",
        Key::MonitorHexFilterGraphics => "Фильтр: графика",
        Key::MonitorHexFilterText => "Фильтр: текст",
        Key::FloppyContent => "Содержимое буфера дисковода",
        Key::FloppyImageContent => "Содержимое образа",
        Key::FloppyStatus => "Статус",
        Key::FloppyPath => "Файл",
        Key::FloppyPathMissing => "файл не подключён",
        Key::FloppyImagePathMissing => "Файл не подключён",
        Key::FloppyBytesQueued => "Байт в очереди",
        Key::FloppyClearBuffer => "Очистить буфер дисковода",
        Key::FloppyShowImageContents => "Отобразить содержимое файла образа",
        Key::FloppyOpenImage => "Открыть файл образа дискеты",
        Key::FloppyDetachImage => "Отключить файл образа дискеты",
        Key::FloppySaveBuffer => "Сохранить текущий буфер в файл",
        Key::FloppyDebugBuffer => "Debug-режим буфера",
        Key::FloppyImageAttached => "Образ дискеты подключён",
        Key::FloppyImageDetached => "Образ дискеты отключён",
        Key::FloppyDebugEnabled => "режим отладки",
        Key::FloppyBufferSaved => "Буфер дисковода сохранён",
        Key::HddContent => "Содержимое буфера жёсткого диска",
        Key::HddImageContent => "Содержимое файла",
        Key::HddStatus => "Статус",
        Key::HddPath => "Файл",
        Key::HddPathMissing => "файл не подключён",
        Key::HddImagePathMissing => "Файл не подключён",
        Key::HddBytesQueued => "Байт в очереди",
        Key::HddClearBuffer => "Очистить буфер жёсткого диска",
        Key::HddClose => "Закрыть",
        Key::HddChooseDirectory => "Выбрать каталог",
        Key::HddDebugBuffer => "Debug-режим буфера",
        Key::HddDeleteFile => "Удалить файл HDD",
        Key::HddCreateFile => "Создать файл HDD",
        Key::HddDebugEnabled => "режим отладки",
        Key::HddShowImageContents => "Отобразить содержимое файла",
        Key::HddFileDeleted => "Файл HDD удалён",
        Key::Network(key) => network::translate_ru(key),
        Key::Printer(key) => printer::translate_ru(key),
        Key::DeviceStatusReady => "готов",
        Key::DeviceStatusNotReady => "не готов",
        Key::DeviceStatusBusy => "занят",
        Key::DeviceStatusNoData => "нет данных",
        Key::DeviceStatusConnected => "подключён",
        Key::DeviceStatusListening => "слушает",
        Key::DeviceStatusDisconnected => "отключён",
        _ => return None,
    };
    Some(value)
}