diff --git a/copyparty/web/tl/rus.js b/copyparty/web/tl/rus.js
index 77b648307..635640ce4 100644
--- a/copyparty/web/tl/rus.js
+++ b/copyparty/web/tl/rus.js
@@ -39,7 +39,7 @@ Ls.rus = {
["ctrl-V", "вставить (переместить/копировать) сюда"],
["Y", "скачать выделенное"],
["F2", "переименовать выделенное"],
- ["F4", "обновить"], //m
+ ["F4", "обновить"],
"выделение файлов",
["пробел", "выделить/снять выделение с текущего файла"],
@@ -85,8 +85,8 @@ Ls.rus = {
["M", "закрыть файл"],
["E", "отредактировать файл"],
["S", "выделить файл"],
- ["Y", "скачать текстовый файл"], //m
- ["⇧ J", "приукрасить json"], //m
+ ["Y", "скачать текстовый файл"],
+ ["⇧ J", "форматировать json для чтения"],
]
],
@@ -112,14 +112,14 @@ Ls.rus = {
"gou": 'родительская папка">вверх',
"gon": 'следующая папка">след',
"logout": "Выйти ",
- "login": "Войти", //m
+ "login": "Войти",
"access": " доступ",
"ot_close": "закрыть подменю",
"ot_search": "`искать файлы по атрибутам, пути / имени, музыкальным тегам или любой другой комбинации из следующих конструкций$N$N`foo bar` = обязано содержать «foo» И «bar»,$N`foo -bar` = обязано содержать «foo», но не «bar»,$N`^yana .opus$` = начинается с «yana» и имеет расширение «opus»$N`"try unite"` = содержит именно «try unite»$N$Nформат времени задаётся по стандарту iso-8601, например$N`2009-12-31` или `2020-09-12 23:30:00`",
"ot_unpost": "unpost: удалить ваши недавние загрузки и отменить незавершённые",
"ot_bup": "bup: легковесный загрузчик файлов, поддерживает даже netscape 4.0",
"ot_mkdir": "mkdir: создать новую папку",
- "ot_md": "new-file: создать новый текстовый файл", //m
+ "ot_md": "new-file: создать новый текстовый файл",
"ot_msg": "msg: отправить сообщение в лог сервера",
"ot_mp": "настройка медиаплеера",
"ot_cfg": "остальные настройки",
@@ -128,7 +128,7 @@ Ls.rus = {
"ot_noie": 'Пожалуйста, используйте Chrome / Firefox / Edge',
"ab_mkdir": "создать папку",
- "ab_mkdoc": "создать текстовый файл", //m
+ "ab_mkdoc": "создать текстовый файл",
"ab_msg": "отправить сообщение в лог сервера",
"ay_path": "перейти к папкам",
@@ -156,7 +156,7 @@ Ls.rus = {
"ul_par": "параллельные загрузки:",
"ut_rand": "случайные имена файлов",
"ut_u2ts": "копировать время последнего изменения$Nиз вашей файловой системы на сервер\">📅",
- "ut_ow": "перезаписывать существующие файлы на сервере?$N🛡️: нет (для повторяющихся файлов будут создаваться новые имена)$N🕒: перезаписать файлы с датой изменения старее, чем у загружаемых$N♻️: всегда перезаписывать (если файлы различаются по содержанию)$N⏭️: безусловно пропускать все существующие файлы", //m
+ "ut_ow": "перезаписывать существующие файлы на сервере?$N🛡️: нет (для повторяющихся файлов будут создаваться новые имена)$N🕒: перезаписать файлы с датой изменения старее, чем у загружаемых$N♻️: всегда перезаписывать (если файлы различаются по содержанию)$N⏭️: безусловно пропускать все существующие файлы",
"ut_mt": "продолжать хешировать другие файлы во время загрузки$N$Nесть смысл отключить при медленном диске или процессоре",
"ut_ask": 'требовать подтверждения перед началом загрузки">💭',
"ut_pot": "улучшить скорость загрузки на слабых устройства$Nс помощью упрощения интерфейса",
@@ -207,7 +207,7 @@ Ls.rus = {
"u_nav_b": 'ФайлыОдна папка',
"cl_opts": "переключатели",
- "cl_hfsz": "размер файла", //m
+ "cl_hfsz": "размер файла",
"cl_themes": "тема",
"cl_langs": "язык",
"cl_ziptype": "архивация папок",
@@ -215,27 +215,27 @@ Ls.rus = {
"cl_favico": "иконка",
"cl_bigdir": "бол. папки",
"cl_hsort": "#сорт.",
- "cl_keytype": "схема горячих клавиш",
+ "cl_keytype": "музыкальная нотация",
"cl_hiddenc": "скрытые столбцы",
"cl_hidec": "скрыть",
"cl_reset": "сбросить",
"cl_hpick": "нажмите на заголовки столбцов, чтобы скрыть их в таблице ниже",
"cl_hcancel": "скрытие столбца отменено",
- "cl_rcm": "контекстное меню", //m
- "cl_gauto": "авто田", //m
+ "cl_rcm": "контекстное меню",
+ "cl_gauto": "авто田",
"ct_grid": '田 сетка',
"ct_ttips": '◔ ◡ ◔">ℹ️ подсказки',
"ct_thumb": 'переключение между иконками и миниатюрами в режиме сетки$NГорячая клавиша: T">🖼️ миниат.',
"ct_csel": 'держите CTRL или SHIFT для выделения файлов в режиме сетки">выбор',
- "ct_dsel": 'использовать выделение перетаскиванием в режиме сетки">перетащить', //m
- "ct_dl": 'принудительная загрузка (не показывать встроенно) при щелчке по файлу">dl', //m
+ "ct_dsel": 'выделять файлы перетаскиванием в режиме сетки">выделение',
+ "ct_dl": 'скачивать файл при клике вместо предпросмотра">dl',
"ct_ihop": 'показывать последний открытый файл после закрытия просмотрщика изображений">g⮯',
"ct_dots": 'показывать скрытые файлы (если есть доступ)">скрыт.',
"ct_qdel": 'спрашивать подтверждение только один раз перед удалением файлов">быстр. удал.',
"ct_dir1st": 'разместить папки над файлами">📁 сверху',
"ct_nsort": 'сортировка по числам$N(например, файл с >code<2>/code< в начале названия идёт перед >code<11>/code<)">нат. сорт.',
- "ct_utc": 'используйте UTC для всех временных меток">UTC', //m
+ "ct_utc": 'показывать все даты в UTC">UTC',
"ct_readme": 'показывать содержимое README.md в описании папки">📜 ридми',
"ct_idxh": 'показывать страницу index.html в текущей папке вместо интерфейса">htm',
"ct_sbars": 'показывать полосы прокрутки">⟊',
@@ -277,8 +277,8 @@ Ls.rus = {
"tt_dynt": "автоматическое расширение панели",
"tt_wrap": "перенос слов",
"tt_hover": "раскрывать обрезанные строки при наведении$N( ломает скроллинг, если $N курсор не в пустоте слева )",
- "tt_gauto": "показывать как сетку или список в зависимости от содержимого папки", //m
- "tt_gathr": "использовать сетку, если этот процент файлов — изображения/видео", //m
+ "tt_gauto": "показывать сетку или список в зависимости от содержимого папки",
+ "tt_gathr": "использовать сетку, если этот процент файлов — изображения/видео",
"ml_pmode": "в конце папки...",
"ml_btns": "команды",
@@ -287,7 +287,7 @@ Ls.rus = {
"ml_tint": "затемн.",
"ml_eq": "эквалайзер",
"ml_drc": "компрессор",
- "ml_ss": "пропускать тишину", //m
+ "ml_ss": "пропускать тишину",
"mt_loop": "повторять один трек\">🔁",
"mt_one": "остановить после этого трека\">1️⃣",
@@ -316,8 +316,8 @@ Ls.rus = {
"mt_c2owa": "opus-weba, для iOS 17.5 и выше\">owa",
"mt_c2caf": "opus-caf, для iOS 11-17\">caf",
"mt_c2mp3": "для очень старых устройств\">mp3",
- "mt_c2flac": "лучшее качество звука, но большие файлы\">flac", //m
- "mt_c2wav": "не сжатое воспроизведение (ещё больше)\">wav", //m
+ "mt_c2flac": "лучшее качество звука, но большие файлы\">flac",
+ "mt_c2wav": "несжатое воспроизведение (файлы ещё больше)\">wav",
"mt_c2ok": "хороший выбор",
"mt_c2nd": "это не рекомендованный вариант формата для вашего устройства, но сойдёт",
"mt_c2ng": "не похоже, что ваше устройство поддерживает этот формат, но давайте попробуем и узнаем наверняка",
@@ -325,11 +325,11 @@ Ls.rus = {
"mt_tint": "непрозрачность фона (0-100) на полосе воспроизведения$N$Nделает буферизацию менее отвлекающей",
"mt_eq": "`включить эквалайзер$N$Nboost `0` = стандартная громкость$N$Nwidth `1 ` = обычное стерео$Nwidth `0.5` = микширование левого и правого каналов на 50%$Nwidth `0 ` = моно$N$Nboost `-0.8` и width `10` = удаление голоса :^)$N$Nвключённый эквалайзер полностью убирает задержку между треками, поэтому следует его включить со всеми значениями на 0 (кроме width = 1), если вам нужно бесшовное воспроизведение",
"mt_drc": "включить компрессор; также включит эквалайзер для баланса вселенной, так что выставьте всё на 0 кроме width, если он вам не нужен$N$Nпонижает громкость при волне выше значения dB в tresh; каждый dB в ratio равен одному dB на выходе, так что стандартные значения tresh = -24 и ratio = 12 сделают так, что звук никогда не будет громче -22 dB. При таком раскладе можно поставить boost в эквалайзере на 0.8 или даже 1.8 при значении atk = 0 и огромном rls вроде 90 (работает только в Firefox, rls не может быть выше 1 в других браузерах)$N$N(загляните в википедию, там всё объяснено подробнее)",
- "mt_ss": "`включает пропуск тишины; умножает скорость на `уск` возле начала/конца, когда громкость ниже `гром` и позиция в первых `нач`% или последних `кон`%", //m
- "mt_ssvt": "порог громкости (0-255)\">гром", //m
- "mt_ssts": "активный порог (% трека, начало)\">нач", //m
- "mt_sste": "активный порог (% трека, конец)\">кон", //m
- "mt_sssm": "множитель скорости воспроизведения\">уск", //m
+ "mt_ss": "`включает пропуск тишины; умножает скорость на `уск` возле начала/конца, когда громкость ниже `гром` и позиция в первых `нач`% или последних `кон`%",
+ "mt_ssvt": "порог громкости (0-255)\">гром",
+ "mt_ssts": "активный порог (% трека, начало)\">нач",
+ "mt_sste": "активный порог (% трека, конец)\">кон",
+ "mt_sssm": "множитель ускорения\">уск",
"mb_play": "играть",
"mm_hashplay": "воспроизвести этот музыкальный файл?",
@@ -346,7 +346,7 @@ Ls.rus = {
"mm_eunk": "Неопознанная ошибка",
"mm_e404": "Не удалось воспроизвести аудио; ошибка 404: Файл не найден.",
"mm_e403": "Не удалось воспроизвести аудио; ошибка 403: Доступ запрещён.\n\nПопробуйте перезагрузить страницу, возможно, ваша сессия истекла",
- "mm_e415": "Не удалось воспроизвести аудио; ошибка 415: Сбой преобразования файла; проверьте логи сервера.", //m
+ "mm_e415": "Не удалось воспроизвести аудио; ошибка 415: Сбой транскодирования файла; проверьте логи сервера.",
"mm_e500": "Не удалось воспроизвести аудио; ошибка 500: Проверьте логи сервера.",
"mm_e5xx": "Не удалось воспроизвести аудио; ошибка сервера ",
"mm_nof": "больше аудио-файлов не найдено",
@@ -366,7 +366,7 @@ Ls.rus = {
"f_anota": "только {0} из {1} файлов было выделено;\nчтобы выделить всё папку, отмотайте до низа",
"f_dls": 'ссылки на файлы в данной папке были\nзаменены ссылками на скачивание',
- "f_dl_nd": 'пропуск папки (используйте загрузку zip/tar вместо этого):\n', //m
+ "f_dl_nd": 'пропуск папки (для папок используйте загрузку в виде архива):\n',
"f_partial": "Чтобы безопасно скачать файл, который в текущий момент загружается, нажмите на файл с таким же названием, но без расширения .PARTIAL. Пожалуйста, нажмите Отмена или ESC, чтобы сделать это.\n\nПри нажатии OK / Enter, вы скачаете этот временный файл, который с огромной вероятностью содержит лишь неполные данные.",
@@ -435,16 +435,16 @@ Ls.rus = {
"fcc_warn": 'скопировано {0} файлов в буфер\n\nно только эта вкладка браузера может их вставить\n(поскольку выделение оказалось настолько огромным)',
"fp_apply": "использовать эти имена",
- "fp_skip": "пропустить конфликты", //m
+ "fp_skip": "пропустить конфликты",
"fp_ecut": "сначала вырезать или скопировать только некоторые файлы / папки\n\nучтите: вы можете вырезать / вставлять файлы между вкладками",
- "fp_ename": "{0} файлов невозможно перенести сюда, потому что их имена уже заняты. Введите имена ниже, чтобы продолжить, или оставьте поля пустыми (\"пропустить конфликты\"), чтобы пропустить:", //m
- "fcp_ename": "{0} файлов невозможно скопировать сюда, потому что их имена уже заняты. Введите имена ниже, чтобы продолжить, или оставьте поля пустыми (\"пропустить конфликты\"), чтобы пропустить:", //m
+ "fp_ename": "{0} файлов невозможно перенести сюда, потому что их имена уже заняты. Введите имена ниже, чтобы продолжить, или оставьте поля пустыми (\"пропустить конфликты\"), чтобы пропустить:",
+ "fcp_ename": "{0} файлов невозможно скопировать сюда, потому что их имена уже заняты. Введите имена ниже, чтобы продолжить, или оставьте поля пустыми (\"пропустить конфликты\"), чтобы пропустить:",
"fp_emore": "есть ещё коллизии имён, которые требуется исправить",
"fp_ok": "успешно перенесено",
"fcp_ok": "успешно скопировано",
"fp_busy": "перемещаю {0} файлов...\n\n{1}",
"fcp_busy": "копирую {0} файлов...\n\n{1}",
- "fp_abrt": "прерывание...", //m
+ "fp_abrt": "отмена...",
"fp_err": "ошибка перемещения:\n",
"fcp_err": "ошибка копирования:\n",
"fp_confirm": "переместить эти {0} файлов сюда?",
@@ -456,9 +456,9 @@ Ls.rus = {
"fp_both_b": 'ПереместитьЗагрузить',
"fcp_both_b": 'СкопироватьЗагрузить',
- "mk_noname": "введите имя в текстовое поле слева перед тем, как это делать :p",
- "nmd_i1": "вы также можете указать нужное расширение, например .md", //m
- "nmd_i2": "вы можете создавать только файлы .{0}, так как у вас нет разрешения на удаление", //m
+ "mk_noname": "сначала введите имя в текстовое поле слева :p",
+ "nmd_i1": "вы также можете указать нужное расширение, например .md",
+ "nmd_i2": "вы можете создавать только файлы .{0}, так как у вас нет разрешения на удаление",
"tv_load": "Загружаю текстовый документ:\n\n{0}\n\n{1}% ({2} из {3} МиБ загружено)",
"tv_xe1": "не удалось загрузить текстовый файл:\n\nошибка ",
@@ -469,7 +469,7 @@ Ls.rus = {
"tvt_prev": "показать предыдущий документ$NГорячая клавиша: i\">⬆ пред",
"tvt_next": "показать следующий документ$NГорячая клавиша: K\">⬇ след",
"tvt_sel": "выбрать документ ( для вырезания / копирования / удаления / ... )$NГорячая клавиша: S\">выд",
- "tvt_j": "приукрасить json$NГорячая клавиша: shift-J\">j", //m
+ "tvt_j": "форматировать json для чтения$NГорячая клавиша: shift-J\">j",
"tvt_edit": "открыть документ в текстовом редакторе$NГорячая клавиша: E\">✏️ изменить",
"tvt_tail": "проверять файл на изменения; показывать новые строки в реальном времени\">📡 обновлять",
"tvt_wrap": "перенос слов\">↵",
@@ -654,25 +654,26 @@ Ls.rus = {
"ur_um": "Завершено;\n{0} успешно,\n{1} ошибок, извините",
"ur_sm": "Завершено;\n{0} файлов найдено на сервере,\n{1} файлов НЕ найдено на сервере",
- "rc_opn": "открыть", //m
- "rc_ply": "воспроизвести", //m
- "rc_pla": "воспроизвести как аудио", //m
- "rc_txt": "открыть в просмотрщике файлов", //m
- "rc_md": "открыть в текстовом редакторе", //m
- "rc_dl": "скачать", //m
- "rc_zip": "скачать как архив", //m
- "rc_cpl": "копировать ссылку", //m
- "rc_del": "удалить", //m
- "rc_cut": "вырезать", //m
- "rc_cpy": "копировать", //m
- "rc_pst": "вставить", //m
- "rc_rnm": "переименовать", //m
- "rc_nfo": "новая папка", //m
- "rc_nfi": "новый файл", //m
- "rc_sal": "выбрать всё", //m
- "rc_sin": "инвертировать выделение", //m
- "rc_shf": "поделиться этой папкой", //m
- "rc_shs": "поделиться выделенным", //m
+ "rc_opn": "открыть",
+ "rc_ply": "воспроизвести",
+ "rc_pla": "воспроизвести как аудио",
+ "rc_txt": "открыть в просмотрщике файлов",
+ "rc_md": "открыть в текстовом редакторе",
+ "rc_wopi": "открыть в офисном редакторе",
+ "rc_dl": "скачать",
+ "rc_zip": "скачать как архив",
+ "rc_cpl": "копировать ссылку",
+ "rc_del": "удалить",
+ "rc_cut": "вырезать",
+ "rc_cpy": "копировать",
+ "rc_pst": "вставить",
+ "rc_rnm": "переименовать",
+ "rc_nfo": "новая папка",
+ "rc_nfi": "новый файл",
+ "rc_sal": "выбрать всё",
+ "rc_sin": "инвертировать выделение",
+ "rc_shf": "поделиться этой папкой",
+ "rc_shs": "поделиться выделенным",
"lang_set": "перезагрузить страницу, чтобы применить изменения?",
@@ -692,11 +693,11 @@ Ls.rus = {
"j1": "включённый k304 будет отключать вас при получении HTTP 304, что может помочь при работе с некоторыми глючными прокси (перестают загружаться страницы), но это также сделает работу клиента медленнее",
"k1": "сбросить локальные настройки",
"l1": "авторизуйтесь для других опций:",
- "ls3": "войти", //m
- "lu4": "имя пользователя", //m
- "lp4": "пароль", //m
- "lo3": "выйти из “{0}” везде", //m
- "lo2": "это завершит сеанс во всех браузерах", //m
+ "ls3": "войти",
+ "lu4": "имя пользователя",
+ "lp4": "пароль",
+ "lo3": "выйти из аккаунта “{0}” везде",
+ "lo2": "это завершит сеанс во всех браузерах",
"m1": "с возвращением,",
"n1": "404 не найдено ┐( ´ -`)┌",
"o1": 'или у вас нет доступа -- попробуйте авторизоваться или вернуться на главную',
@@ -715,8 +716,8 @@ Ls.rus = {
"ta1": "сначала введите свой новый пароль",
"ta2": "повторите новый пароль:",
"ta3": "опечатка; попробуйте снова",
- "nop": "ОШИБКА: Пароль не может быть пустым", //m
- "nou": "ОШИБКА: Имя пользователя и/или пароль не могут быть пустыми", //m
+ "nop": "ОШИБКА: Пароль не может быть пустым",
+ "nou": "ОШИБКА: Имя пользователя и/или пароль не могут быть пустыми",
"aa1": "входящие файлы:",
"ab1": "отключить no304",
"ac1": "включить no304",