В который раз натыкаюсь, \ch из русскоязычного babel конфликтует с \ch из chemformula, и никак не могу вспомнить хак, как это забарывал.
Минимальный пример
\documentclass[10pt]{article}
\usepackage[T1,T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian,english]{babel}
\let\ch\relax % <<=== не работает ЧЯДНТ!?
\usepackage{chemformula}
\begin{document}
\ch{H2O}
\end{document}
subj. geeqie умеет показывать превью pdf-файлов, что весьма удобно если нужно разбирать большое количество материала. Но очено не хватает возможности открыть этот файл в okular. Есть опции для gimp, для imagemagic. В меню плагинов okular есть, но в состоянии hidden. При этом никакой галочки что бы его анхайдить нет. В документации сказано что за это отвечают опции NoDisplay и
Hidden в .desktop-файле. Но их явное указание не дают ни какого эффекта. ЧЯДНТ и ДОКОЛЕ?
Вообщем, потихонечку финализирую и готовлю к публикации свой pet-project. Но возник вопрос какую выбрать приличную сборочную систему, т.к. сейчас я использую абсолютно непортабельный Makefile с кучей костылей — и выносить такое на публику не хочу.
Собственно subj. Проект — библиотека для python, написанная на c++ с использованием pybind11.
Фактически, библиотека состоит из двух частей, которые шарят между собой некоторые хедеры:
frontend взаимодействующий с python-кодом, содержащий биндинги для всех классов и функций;
backend (которых, в перспективе будет несколько, но пока один) — динамически загружаемая библиотека, содержащая сами расчётные функции.
Подводные камни, с которыми не понимаю как правильно быть:
зависимости (которые я сейчас просто скриптм сгружаю с гибхаба и кладу в отдельную директорию и симлинкаю в директории с исходниками):
на этапе сборки backend скриптом из python делается немного кодогенерации что бы проинстанцировать все комбинации шаблонных параметров.
разнцые опции компилятора при сборке front- и backend, в дальнейшем и разные компиляторы (т.к. буду использовать hip и cuda)
как-то хочется что бы оно минимально зависело от версии интерпретатора и избегать подобного:
ImportError: Python version mismatch: module was compiled for Python 3.10, but the interpreter version is incompatible: 3.11.4 (main, Jul 5 2023, 14:15:25) [GCC 11.2.0].
Соответственно, хочется что бы всё это это собиралось как-то максимально безболезненно, желательно прямо в python-пакет, который можно будет впоследствии установить pip-ом. Вероятно, мне нужна какая-то python-центричная сборочная система.
Так-как сам я не программист, то спрашиваю советов и best-practice для моего случая.
subj. Для одномерной всё понятно: интегрирую плотность верятности f(x) что бы получить cumulative distribution function F(x). Дальше элементарно нахожу обратную функцию F^{-1}: x(R∈0..1) и получаю интересующие сэмплы подставляя в обратную функцию равномерное распределение, отыскивая конкретную точку бинарным поиском. Как такое же проделывается для многомерного распределения?
Но проблема в том, что у меня на графиках логарифмический масштаб, и на рисунке тоже — но при отображении matplotlib трансформирует рисунок в логарифмический масштаб ещё раз. Как сказать ему не делать так, а просто отобразить изображение как есть без трансформации в такой-то области?
Случилось. Выскочило на уведомление, по которому включили платную подписку при закрытии. Как эту дрянь убрать? Перепробовал уже десяток вариантов из сети — хрен бы. По USSD удалось добиться только то что он показывает, «да подключили», и никакой команды на отключение не возвращает. Пробовал добраться до личного кабинета, так сайт устроен так что по кругу мотает, а вместо временного пароля по смс присылает временный код, который не работает. Вообщем, реквестирую помощи у тех, кто знает как гадину забороть.
Линакс тут при том, что он внутри ведроида и ноутбука с которого я безуспешно пытался попасть в их личный кабинет.
Задача. Есть числодробилка засылаемая на кластер, с которой нет возможности как-то взаимодействовать после запуска (python-скрипт дрёгающий HPC-библиотеку, в бесконечном цикле рассчитывающую эволюцию системы). Тем не менее, хочется некоторого уровня интерактивности (кроме тупой возможности прикончить таск из менеджера задач). В идеале, хочется что-то вроде debug-режима, по которому можно подсоединиться к таску, послать туда какие-то команды и/или иметь полноценную ipython-консоль с доступом во всем внутренностям скрипта. Как такое лучше реализовать?
Есть необходимость периодически посматривать 100500 логов расчёта задач. Заводить под это дело множество фреймов в screen как-то не с руки. Можно ли как то сделать это средствами самого tail c переключением логов по хоткеям?
Хочу сделать динамически загружаемую библиотеку, содержащую много вариантов инстанцирований ряда шаблонных функций. Часть функций отличается сигнатурами в зависимости от параметров шаблона, часть — только реализацией. Как такое правильно провернуть? Делать макросами обертки для каждого варианта или можно менее костыльно?
Как его заставить использовать системную тему или хотя бы настроить нормальный размер шрифта в интерфейсе? Потратил наверное около часа на гуугление и копание в настройках (ломая глаза вплотную к монитору) — не вижу ничго похожего. Единственная настройка что нашлась, это размер шрифта в редакторе и глиф (причём последний нельзя выбрать, только ввести руками).
Пытаюсь сделать дифф ревизий статей, столкнулся с ошибками вида:
line 342: Argument of \@quantity has an extra }. ...in\theta_{1}\dd{\theta_{1}}\dd{\varphi}$}
line 342: Paragraph ended before \@quantity was complete. ...in\theta_{1}\dd{\theta_{1}}\dd{\varphi}$}
line 342: Missing $ inserted. ...in\theta_{1}\dd{\theta_{1}}\dd{\varphi}$}
line 342: Missing } inserted. ...in\theta_{1}\dd{\theta_{1}}\dd{\varphi}$}
Ругается на последнюю строку в блоке
\DIFaddbegin \DIFadd{:
$
S = \iint \qty( {f^*F^*} - fF )
\cdot
\qty|\vb{v}-\vb{V}| \sigma_{\rm diff}\qty(\qty|\vb{v}-\vb{V}|,\,\theta_{1})
\dd{\Omega_{1}}\dd{\vb{V}}
$.
Here $F$ represents another (or the same) VDF to interact through the collisions,
star marker denotes resulting VDFs after the collision;
$\sigma_{\rm diff}$ denotes differential cross-section, which depends on the relative velocity and scattering angle;
$\dd{\Omega_{1}}=\sin\theta_{1}\dd{\theta_{1}}\dd{\varphi}$}\DIFaddend ,
Собственно, а куда смотреть? Все открывающие скобки с закрывающими совпадают, формулы долларами обрамлены. В чём дело-то?
UPD: Итого, вопрос остаётся в том, какой командой зачеркнуть произвольный блок текста, с параграфами, уравнениями и пр.:? uelm, soul, cancel не канают.
subj. Идёт расчёт, хочется визуализировать 2d-массив по мере эволюции системы. Рисую через imshow. Нашёл такое решение https://stackoverflow.com/questions/17835302/how-to-update-matplotlibs-imshow..., но если в явном виде задавать фигуры и оси (fig,ax=plt.subplots()), то оно вместо апдейта окна спавнит множество окон. Может кто ни будь поделиться минимальным рабочим примером?
А что же в среде Linux? А ничего в среде Linux нет, Linux даже Windows 98 не догнал, невозможно просто взять и скопировать софт/игру куда угодно, чтобы использовать где угодно.
А как же Appimage? А никак, абсолютно недееспособный контейнер, настройки лезет записывать в систему, т.е. это уже нельзя назвать портативным софтом, куча косяков и багов на которые абсолютно никак не повлиять ибо все запаковано в контейнер неразборный.
я прекрасно понимаю что пользователь не сможет скопировать моё творение и распространить, а если пользователь не может распространить мой софт, значит мой софт не сможет в принципе стать популярным
Даже маленькое приложение без графического интерфейса я не могу просто взять и запустить в среде Linux, мне нужно открывать терминал и запускать из терминала.
У этого исполняемого файла даже нет расширения никакого, которое бы однозначно сказало что это исполняемый файл, а не просто какой-то мусор, даже DOS имел специально отведенное расширение для исполняемых файлов (".exe")...