LINUX.ORG.RU

Сообщения Mapper720

 

Нужен совет по созданию макроса в LibreOffice

Форум — Development

Представим, что у меня есть строка вида

[私.watashi]はペンギンです

Нужно сделать так, чтоб она превратилась в

私はペンギンです,

причём над первым знаком должна быть подпись «watashi».

https://imgur.com/a/31DQlJ4

Вообще делается это просто: Формат - Фонетическое руководство (Азия). Дальше нужно только ввести подпись и указать выравнивание по центру.

https://imgur.com/lVqKvOp

Но как быть, если у меня сотни такого текста и вручную всё сие проделывать придётся до Второго пришествия?

Пришлось впервые в жизни задуматься о макросах, но в них ничего не смыслю. Пробовал посмотреть уроки на ютубе - всё фигня какая-то попадается, на уровне "запусти макрос - выскочит окошко «hello world».

Кто-нибудь может дать дельные советы? Желательно, чтоб макрос писался на Python, ибо по нему есть хоть какие-то базовые знания.

 , ,

Mapper720
()

Не запускается Steam (бесконечный экран загрузки)

Форум — Games

Ещё пару недель назад стим запускался без проблем. Железо с тех пор не поменялось никак. А сегодня его запустить не получилось - бесконечный экран загрузки: https://i.redd.it/fwhr0ommda6c1.png

Пробовал удалять и переустанавливать, из официальных репозиториев и из flatpak. Не помогло.

Пробовал удалять папку .steam и аналогичные папки в .cache и .local - не помогло.

С помощью Timeshift откатил систему до состояния «только что после установки и настройки» - всё та же бесконечная загрузка. Хотя на момент создания этой контрольной точки всё работало прекрасно.

С видеодровами всё в порядке: Blender на GPU отлично рендерит.

Полный вывод консоли здесь: https://pastebin.com/ZKHjmxFR

Что происходит?

OS - Manjaro

Update: вот здесь описание точно такой же проблемы: https://github.com/ValveSoftware/steam-for-linux/issues/8859

Разница лишь в том, что на https://store.steampowered.com/ я залогинился без проблем.

 ,

Mapper720
()

Левая кнопка мыши отключается при работе с графическим планшетом

Форум — General

Уже некоторое время замечаю странное явление: спустя некоторое время работы с графическим планшетом (XP-PEN) перестаёт работать левая кнопка мыши. Курсор двигается, ПКМ срабатывает, как надо, клавиатура тоже работает. Ничего не зависает. Просто клик ЛКМ не производит никакого эффекта, независимо от того, куда именно кликаешь.

Помогает переход в текстовый режим (Ctrl Alt F1) и немедленный возврат обратно в графический (Ctrl Alt F7). Но помогает совсем ненадолго, потом снова ЛКМ перестаёт работать.

Перезапуск xfce4-panel вроде результата не дает.

Раньше годами использовал планшет Wacom - ничего похожего не наблюдалось. Хочу ещё попробовать другую ОС, типа Ubuntu или Linux Mint - потом отпишу, каков будет результат.

В чём может быть проблема? В каком направлении копать?

ОС: Manjaro XFCE

 , ,

Mapper720
()

Javascript. Помогите найти ошибку

Форум — Web-development

Пытаюсь создать простенький тренажёр на заучивание японских иероглифов. Два типа заданий:

  1. Тебе показывают некое слово, нужно выбрать соответствующий ему иероглиф, нажав одну из девяти кнопок.
  2. То же самое, но иероглиф нужно ввести вручную (подразумевается, что юзверь будет работать со смартфона и использовать рукописный ввод).

При запуске программы всё вроде как работает, как и задумано, но через несколько циклов происходит странное: программа начинает полностью игнорировать один из типов заданий и выдаёт только что-то одно: либо 9 кнопок, либо ручной ввод. Хотя по задумке каждый раз тип задания должен определяться генератором случайного числа (0 или 1). И, повторюсь, первые несколько циклов всё в порядке.

Использование console.log показало следующее: когда вышеописанная проблема возникает, случайный выбор типа задания всё ещё срабатывает, как надо. Однако если рандом выбрал «неугодный» тип задания, то мгновенно функция update() (которая, в частности, запускает генератор случайных чисел и выбирает тип задания) запускается заново - до тех пор, пока рандом не выпадет на «правильное» задание.

Каждый раз в «опалу» попадает разный тип задания. Сейчас вдруг программа перестала предлагать нажать на одну из 9 кнопок, после обновления страницы и нескольких циклов - начинает предлагать ТОЛЬКО эти кнопки, забывая про второй тип задания.

С чем может быть связана ошибка?

Страница: https://mapper720.ru/kanji/kanji_js.html

Скрипт: https://mapper720.ru/kanji/kanji_js.js

Подсказка для тех, кто не разумеет иероглифов (чтоб знать, куда тыкать - это группа иероглифов, выбранная по умолчанию):

一 один

二 два

三 три

四 четыре

五 пять

六 шесть

七 семь

山 гора (читается как «яма»)

田 рисовое поле

中 середина, центр

口 рот, отверстие

私 я

東 восток

京 столица (новая)

都 столица (старая)

日 солнце, день

本 книга

父 отец

母 мать

見 смотреть, видеть

 

Mapper720
()

Цифровой микроскоп для покраса миниатюр с поддержкой GNU/Linux

Форум — Linux-hardware

Похожие темы создавались ранее, но все очень старые, поэтому решил сотворить новую.

Ситуация: иногда крашу модели, распечатанные на 3D-принтере. На них присутствуют мелкие детали. Особенно много гемора с глазами: их размеры в лучшем случае 2х2 мм., и даже если найти исключительно маленькую кисть – всё равно не видно, куда оной тыкаешь.

В связи с этим задумался о покупке недорогого USB-микроскопа. На озоне выбор имеется, на али, видимо, ещё больше (туда пока не заглядывал). Но беспокоит вопрос: а будет ли всё сие работать под Linux и какой софт потребуется?

Я так понимаю, технически микроскоп - это та же камера с мощными увеличительными линзами. То есть если обычная вебка подключается (и работает, например, через cheese), то и микроскоп должен? Или вовсе не обязательно? У кого-нибудь есть опыт работы с такими устройствами в линуксах? Что лучше выбрать?

Цели приобретения описаны выше, ОС - Manjaro XFCE.

 , , , ,

Mapper720
()

Автозапуск скрипта от root'а без ввода пароля

Форум — General

Есть скрипт, который нужно запускать при каждом старте системы с правами root, но не докучать запросом пароля.

Перерыл уже кучу информации, но пока безрезультатно.

Что было сделано:

Сотворен файл /etc/systemd/system/mycommand.service содержания следующего:

[Unit]

Description=description

[Service]

ExecStart=/home/mapper720/script.sh

[Install]

WantedBy=multi-user.target

Далее, следуя советам из интернетов, отправляю в терминал sudo systemctl enable mycommand.service и получаю

Failed to enable unit: Unit file mycommand.service does not exist.

Помучав google duckduckgo ещё немного, натыкаюсь на это. Пробую повторить вышеприведённую команду (sudo systemctl enable...), указав уже полный путь к файлу mycommand.service. На этот раз никакой ошибки в терминале не высвечивается.

Дальше вбиваю - следуя советам на том же stackoverflow - sudo systemctl daemon-reload и перезагружаю ПК. При перезагрузке ничего не происходит.

Думал, может, скрипт вызывается слишком рано и что-то там прогрузиться не успевает? Добавил задержку (sleep 7s) - ничего не поменялось.

Что делать? ОС - Manjaro.

P.S. Если кто будет советовать смотреть логи - указывайте, КАКИЕ ИМЕННО логи и ЧТО именно в них смотреть. Опыта работы с логами нет совсем.

 , , , ,

Mapper720
()

Принтер Canon LBP7100Cn

Форум — Linux-hardware

Имеется у меня сабжевый принтер. Довольно старый. Когда-то успешно печатал под линуксами, но с какого-то момента Canon решили отрубить поддержку. Теперь новых дров на линуксы нет, а старые ставить бесполезно - не печатает.

Можно ли как-то реанимировать принтер? Может, существуют какие-то универсальные или опенсорсные драйвера?

При попытке добавить новый принтер, система видит сам принтер, но когда доходит до выбора драйвера из списка, своей модели я не нахожу.

ОС - Manjaro, XFCE.

 , ,

Mapper720
()

У некоторых приложений не отображаются окна

Форум — Desktop

У некоторых приложений не отображаются окна. На переключателе рабочих столов их контуры присутствуют, но на экране - пусто. Сталкивался с такой проблемой в Flameshot и MakeHuman, также такое было в Substance Painter’е, но после переключения на бета-версию (в настройках стим-версии) вроде прошло.

https://imgur.com/w4jLSSO

Во ВСЕХ указанных случаях проблема наблюдалась при открытии диалога выбора файла (куда сохранять или, в случае с SP, откуда открывать).

Например, если сделать скриншот с помощью Flameshot’а, а потом попытаться сохранить его на диск, то окно сохранения файла будет невидимым. При этом если нажать Enter, файл сохранится, но из-за невидимости окна невозможно выбрать ни имя файла, ни путь сохранения.

С чем такое может быть связано?

Manjaro. Xfce.

 , , ,

Mapper720
()

Cron не срабатывает от рута

Форум — General

Мне нужно, чтоб в определённое время запускался некий скрипт с правами root. Что имеется сейчас:

sudo crontab -e

SHELL=/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

@reboot sleep 5; /home/mapper720/mountCrypt.sh

Первых двух строк (SHELL... и PATH...) изначально не было, они добавлены после прочтения очередного совета в интернетах, но ничего от этого не поменялось.

Пробовал @reboot заменить на * * * * *, но ни при перезагрузке, ни каждую минуту никакой скрипт не срабатывает (хотя при вызове вручную из консоли всё нормально).

В чём дело? Файлы /var/log/cron и /var/log/syslog, которые обычно призывают в такой ситуации изучать, в моей ОС (Manjaro) отсутствуют. Ранее в Xubuntu проблема также наблюдалась.

 , , ,

Mapper720
()

Часы отбивают на один час больше. Иногда. И только в Firefox.

Форум — Web-development

Имеется такая страница. Часы на ней должны в начале каждого часа отбивать столько раз, сколько сейчас часов. В 9 утра отбить 9 раз, в 15:00 — три раза и т.д.

Вроде всё работает, но есть странная проблема: иногда они отбивают на один час больше, чем надо. Из сегодняшних наблюдений:

12:00 — всё ок

13:00 — всё ок

14:00 — 3 удара в колокол вместо положенных двух

15:00 — 4 удара

16:00 — всё ок. Но при вызове функции из консоли в 16:04 отбил 5 раз.

19:00 — всё ок. Спустя несколько минут вызываю функцию из консоли - отбивает 8 раз.

Проблема наблюдается в Firefox — как десктоптном, так и на Android. В Opera и Chromium (опять же: и на ПК, и на смартфоне) всё в порядке.

Вот функция, вызываемая в начале нового часа. Её же я вызывал через консоль браузера.

function newHour() {
    let now = new Date();
    
    // Который час?
    full_hours = now.getHours();

    // Потребен 12-часовой формат. Аще час больше 12 - надо из оного 12 вычесть. Например, 16-12==4
    if (full_hours > 12) {
        full_hours -= 12;
    }

    // Аще средонощие, отбить двана́десять
    if (full_hours == 0) {
        full_hours = 12;
    }

    // Аще ныне 1 час, то благовестник отбивает дважды.
    // Сего ради костыль: аще full_hours == 1, умножать их на 2834 милисекунд не благословляется!
    if (full_hours == 1) {
        playback(b1);
    }
    else {
        // Первый удар благовестника будет не сразу по запуску функции, но через 2834 мсек
        // Посему один раз отбиваем ДО запуска функции, а затем бьём остальные (сколько там останется)
        playback(b1);
        let timerId = setInterval(() => { playback(b1); }, 2834);
        console.log("Hours: " + full_hours);

        /* Один "лишний" удар уже был в начале, до setInterval'а, посему теперь надо отбить на 1 меньше.
           Но сие не касается FIREFOX'а. Ему почему-то надо оставить full_hours, как есть. 
           Поэтому проверяем браузер и по итогам оставляем full_hours без изменений (вычитаем 0) (Firefox)
           или вычитаем 1 (все остальные)
        */
        let crutch = 1;
        if (navigator.userAgent.includes("Firefox")) {
            console.log("Тревога: FIREFOX DETECTED! Костыль активирован!");
            crutch = 0;
            console.log("The crutch is " + crutch + " now");
        }
        
        setTimeout(() => { clearInterval(timerId); }, (full_hours - crutch) * 2834); // из еличества часов вычитаем crutch
    }
    }

Имеются ли на ЛОРе тайновидцы, халдеи и гадатели, способные изъяснить происходящее?

И вдогонку вопрос. Можно ли бой курантов организовать с помощью цикла for? Как-то типа

for (i=1; i<full_hours; i++) {
функция_проигрывания_одного_удара_в_колокол;
пожождать_пару_секунд;
}

У меня указанная схема не сработала.

 , , ,

Mapper720
()

Оптимальный способ проигрывания множества звуков на странице (AudioContext, buffer)

Форум — Web-development

Сразу оговорюсь: я не программист, особенно не программист на js, мне нужно решить одну конкретную задачу и забыть о существовании js на многие годы. Поэтому просьба не посылать меня читать гору толстых учебников.

Собственно, задача: сделать так, чтоб при нажатии определённых клавиш на клавиатуре проигрывались те или иные звуки. Аудиофайлы лежат в той же папке, что и скрипт.

Первоначально делалось так:

const r0 = new Audio("ringing_0.ogg");
r0.currentTime=0; r0.play();

И это работало, но с одной проблемой: при нажатии на кнопку звук, проигрываемый сейчас, мгновенно обрывался, и начинал проигрываться заново. Что сильно режет слух. Но убирать r0.currentTime=0 нельзя: звук вообще не будет воспроизводиться, пока текущее воспроизведение не закончится.

Тогда я поменял код:

r0.cloneNode(true).play();

Теперь играет довольно красиво, но возникла другая проблема: если нажимать кнопку слишком часто, звук начинает захлёбываться.

В интернетах много советов по использованию AudioContext'а, но с ним проблема: почему-то ВСЕ уроки, которые я находил, требуют использовать XMLHttpRequest для запроса звукового файла с сервера. В результате — куча непонятного кода, который ещё и не работает. Например, здесь описан следующий порядок действий:

0. Скачать файл через XMLHttpRequest;

1. Добавить полученный ответ к буферу;

2. Создать bufferSource и проигрывать его при каждом вызове;

Наткнулся на видео, где предлагается httprequest заменить на fetch. В результате код приобретает более простой и короткий вид:

async function getresponse() {
let response2 = await fetch ("http://mapper720.ru/belltowers/transfiguration/ringing_0.ogg");
}

Остаются невыясненными следующие вопросы:

0. Как полученный с помощью fetch аудиофайл добавить к буферу?

1. Как вообще работает этот буфер? Можно ли, например, после загрузки страницы непрерывно проигрывать буфер, в который по нажатию кнопки закидывать некий аудиофайл, или принцип работы иной?

2. И можно ли вообще обойтись без всяких httprequest'ов, fetch'ей и тому подобного? Файл-то вон он, под носом, в одной папке со скриптом, зачем тогда вообще эти сложности?

 , , ,

Mapper720
()

Blender 3.0

Новости — Мультимедиа
Blender 3.0
Группа Мультимедиа

 , , geonodes,

Mapper720
()

Некоторые программы резко стали запускаться аномально долго

Форум — Desktop

Недавно начал замечать странность в работе системы: некоторые программы запускаются ОЧЕНЬ уж долго. Изначально думал, что криво работает VLC Player, но потом заметил, что проблема не с ним одним.

Кликаю иконку Simple Screen Recorder’а - проходит 26 секунд прежде, чем программа откроется. OBS Studio, Flameshot - то же самое. РОВНО 26 секунд каждый раз - засекал. VLC Player внезапно начал снова запускаться быстро - непонятно почему.

Раньше ничего подобного не наблюдалось. Если загрузить систему с LiveUSB - всё запускается мгновенно, никаких проблем.

Другие программы, в т.ч. тяжёлые - Firefox (с кучей сохранённых с прошлого сеанса вкладок), LibreOffice, Blender, Steam, Substance Painter, GIMP и др. - запускаются почти мгновенно.

То есть программы, которые стали запускаться по 26 секунд, «выбраны» совершенно случайно и друг с другом имеют мало общего.

Есть идеи, куда копать?

ОС: Xubuntu 20.04 LTS 48 Гб памяти AMD Ryzen 7 GTX 1070

 , , ,

Mapper720
()

Релиз LibreOffice 4.1.1

Новости — Офисные приложения
Группа Офисные приложения

29 августа The Document Foundation анонсировала LibreOffice версии 4.1.1 для Windows, Mac OS X и Linux. Это первый минорный релиз LibreOffice 4.1, он содержит множество улучшений в поддержке проприетарных форматов.

>>> Подробности в блоге разработчиков

 

Mapper720
()

RSS подписка на новые темы