LINUX.ORG.RU

Сообщения akj

 

XeLaTeX, STIX Two, fontspec и Debian Bulleye

Использую Debian Bullseye.

Решил последовать современным тенденциям и воспользоваться в LaTeX шрифтами STIX Two для текста и математики.

Минимальный пример:

\documentclass{article}

\usepackage[english,russian]{babel}

\usepackage{fontspec}
\usepackage{unicode-math}
\setmainfont{STIX Two Text}
\setmathfont{STIX Two Math}

\begin{document}

Немного текста.

\[
        \tilde f(\omega)=\frac{1}{2\pi}
        \int_{-\infty}^\infty f(x)e^{-i\omega x}\,dx\,,
\]
или
\[
        \dot{\vec \omega}=\vec r\times\vec I\,.
\] 

\end{document}

fontspec жалуется, что среди доступных ему шрифтов STIX Two найти не может. Пакет texlive-fonts-extra установлен, в /usr/share/texlive/texmf-dist/fonts/opentype/public/stix2-otf/ шрифты лежат (математический, правда, только обычного начертания).

 , ,

akj ()

IDE для LaTeX под оффтопик (принимаются рекомендации)

Моё почтение, уважаемые!

Предпосылки.

У меня имеется падаван, которому в любом случае предстоит возиться с моими документами в LaTeX. Сам использую kile, вследствие чего я безгранично счастлив. Но админить онтопик (Дебиан, например) я для него не собираюсь. Пусть сам админит то, что ему удобно. Пока у него оффтопик.

Суть.

Посоветуйте мне годных замен моему любимому kile под оффтопик. Требуется:

  • ориентация на код;
  • блочное выделение;
  • поиск и замена по регулярным выражениям;
  • казуальность, заниженный порог вхождения;
  • автоматическая расстановка отступов;
  • подсветка основного синтаксиса и синтаксиса популярных пакетов расширений;
  • автодополнение кода;
  • распальцовки для перемены строк местами и быстрого дублирования строк;
  • автоматический анализ отчёта об ошибках pdflatex с быстрым (через гиперссылки в отчёте) позиционированием по строчкам кода с ошибками и замечаниями.

Может быть, ещё что-нибудь вспомню. Заранее спасибо!

 , , ,

akj ()

Okular: автоматическое масштабирование при печати

Суть проблемы (кратко)

Есть ряд связанных ошибок в Okular. Например, bug 348172. Okular всегда передаёт в lpr флаг fit-to-page и, соответственно, масштаб при печати будет почти всегда неправильным (автоматически выбираться).

Длинная телега (с драмой, можно пропустить)

Проблема заключается в том, при печати пользователю должен быть доступен выбор между вариантами «без масштабирования», «уменьшить до размера области печати» и «увеличить до размера области печати». Исторически сложилось (насколько я понял из жарких обсуждений), что в Okular эту естественную опцию не завезли. Есть предложение, заключающееся в том, чтобы для начала поправить библиотеку Qt в том месте, которым она смотрит в poppler, а уже потом править диалог печати в Qt, чтобы таки обеспечить бедных пользователей KDE5 тем, что у всех остальных уже давно есть.

Собственно вопрос

Похоже что адекватного решения нет (патчи есть, но в главную ветку попадут не очень скоро). У меня в хитросплетениях жизни разработчиков разбираться желания нет. Может мне кто-нибудь объяснить на пальцах: как имеющиеся патчи использовать, что для этого нужно (минимальные версии библиотек, исходники которых поправить можно, какие файлы исходников править)?

Как всегда, буду за помощь очень признателен.

 , , , ,

akj ()

[РЕШЕНО] Debian, KVM, интернет для гостевой (user mode)

Есть хост с Debian Jessie. Гостевая ОС тоже Jessie. Гипервизор — KVM. Сеть через user mode. Гостевая не имеет доступа в интернет (wget www.google.com не работает). Любопытно, что у debian-installer проблем с доступом в интернет не было. Есть мнение, что виной всему попытка поддерживать на уровне гостевой системы ipv6.

Как-то можно заставить гостевую пытаться получить доступ только через ipv4? Есть ли способ сообщить KVM, чтобы он гостевой системе через виртуальный DHCP объяснял, что есть только ipv4?

/usr/bin/kvm -monitor stdio \
             -smp 2 -cpu kvm32 -enable-kvm -m 512\
             -soundhw ac97 \
             -vga std \
             -drive file="image.qcow2",cache=writeback,aio=threads \
             -boot once=c,menu=off \
             -net nic,vlan=0 -net user,vlan=0 \
             -no-quit -name "boot"

Ещё какие-нибудь предложения (кроме организации моста)? Заранее спасибо!

UPD: Решено. Добавил в /etc/default/grub строчку:

GRUB_CMDLINE_LINUX="ipv6.disable=1"

Теперь главное — не забыть её потом убрать.

 , , ,

akj ()

Универсальный загрузочный USB-брелок. Как?

Имею желание изготовить сабж. Из Debian Jessie.

Требования:

  1. возможность загрузки и через UEFI и через BIOS;
  2. варианты загрузки для x86 и x86_64: livecd-загрузка, persistent, livecd-загрузка без гуя, memtest86+;
  3. для livecd-вариантов только легковесный гуй, без swap-раздела;
  4. для варианта persistent несколько окружний рабочего стола на выбор;
  5. для варианта persistent автоотключение swap-раздела при размере оперативной памяти более 2 ГиБ.

Порекомендуйте, как это организовать, господа!

Заранее спасибо!

 , , ,

akj ()

Понизить DPI в отдельно взятом приложении

Кратко: Есть монитор с высоким DPI — 276. Есть Дебиан Jessie и стоковая KDE. Есть qucs, который не умеет пока в масштабирование под высокую чёткость. Нельзя ли как-то изменить поведение гуёвых библиотек и x-сервера в пределах отдельно взятого приложения, чтобы отрисовать его гуй с низким разрешением, а после масштабировать растр всего окна, например 2:1?

Прохладная версия (с драмой): Выставил я в настройках xorg.conf.d физический размер экрана, настроил размеры шрифтов, KDE-шные приложения выглядят нормально, iceweasel после доработки тоже, inkscape/gimp выглядят терпимо (у калеки размеры значков на панели инструментов частично увеличиваются сменой темы оформления, у обоих редакторов слишком мелкие собственные указатели мыши и элементы управления на холсте, но это не очень страшно). Про приложения под wine и подумать боюсь — тут, видимо, придётся осваивать x11vnc и спрашивать отдельным тредом.

Но вот собрал я себе qucs, где часть интерфейса растровая (кнопочки и палитра элементов схем) без возможности выбора размера, часть интерфейса векторная (изображения этой самой схемы на холсте). Так вот: увеличившийся размер шрифтов (в точках) растра превратил уже нарисованные схемы в месиво, т. к. многочисленные надписи в пикселях подросли, а изображения компонентов и прочего — нет. Ясно, что проблему следует исправлять, переписав наново код гуйни этой программы. Над этим работают, но медленно (уже как год почти стабильные релизы qt5, а у многоуважаемых мной разработчиков ещё во всю портирование на qt4 идёт). Я, конечно, разработчику напишу — возможно, имеет смысл исправить захардкоженные значения и пересобрать, но буду крайне признателен за Вашу помощь, господа!

Ещё есть ряд второстепенных замечаний вроде немасштабируемых полосок прокрутки (которые не нужны), немасштабируемых кнопок к tray-notifier-applet и ещё кое-где в кедовых гуях, в т.ч. в возможности выбора одного из плохих штатных декораторов окон (в одном можно настроить кнопки заголовка окна, в другом — автоматически подгружать значок размером 32×32). Общее впечатление — кеды выглядят достойно (не в пример стоковому оффтопику 8.1).

 , , ,

akj ()

Как правильно использовать SSD с Debian 8

Такое дело, джентльмены! Не бейте только!

Купил себе вычислительную машину с твердотельным накопителем Ознакомился со статьёй из арчвики, но просветления не достиг.

Краткое содержание статьи:

  • Особенности устройств
    • Блоки больше, чем у HDD (чем и как посмотреть?)
    • Разделы и файловые системы требуют специальных оптимизаций.(далее по тесту предложено, но не вполне ясно что из чего следует).
    • Ужасающие скорости износа: «MLC-ячейки, произведённые по 50нм... до 10 тысяч циклов записи; 35нм... 5000 циклов, а 25нм — 3000 (оно вообще в лептопе моём хоть год проработает? Опять же, техпроцесс смотреть в спецификации производителя на модель SSD? Показатели надёжности у них указаны заоблачные, видимо, в расчёте на хранение в изолированном кондиционированном помещении без излучений и подключения питания?)
    • Износостойкость всего носителя решается внутри микропрограммы изощрённым дисматом для распределения записи-перезаписи между всеми доступными ячейками, число доступных/незанятых ячеек сообщает ОС специальной командой TRIM, при этом не для всех ФС и не для всех накопителей доступно такое (поддержку смотреть hdparm -I /dev/sda | grep TRIM)
  • Следует выравнивать разделы (здесь не вполне понятно: parted, или что там в netinst, сам определит оптимальный размер блока на носителе для выравнивания? Какую использовать таблицу разделов?)
  • TRIM можно обеспечивать при помощи discard (опции в fstab или флагом к файловой системе) или запуская fstrim по таймеру cron или systemd (как предпочтительнее делать, чтобы забыть на долгие годы и не проверять выполняемость сценариев после каждого обновления?).
  • Там, где в статье про планировщик ввода-вывода, я потерял нить рассуждений.
  • Для обеспечения гибернации, всё-таки следует иметь раздел подкачки, который можно сделать не таким кровожадных к SSD при помощи заклинания echo 1 > /proc/sys/vm/swappiness (что именно регулирует эта ручка мне не вполне понятно, буду признателен за популярное объяснение).
  • Встречаются непослушные прошивки с «NCQ Errors», которые лечатся перепрошивкой (надеюсь, что не случится).
  • Советы для уменьшения операций чтения/записи
    • Продумать схему разделов.
    • Использовать параметры noatime или relatime.
    • Расположить часто используемые файлы или компилируемые исходники в оперативной памяти (тут какое-то мощное колдунство — стоит напрячь мозг изо всех сил и осилить?).
    • Отключение журналирования ФС (думается, что для каких-то точек монтирования выглядит рациональным, или нет?)
  • Дополнительно рекомендуется держать четверть каждого раздела свободной.

Пока общих вопроса три:

  • Какую выбрать таблицу разделов (mbr, gpt, lvm или что-то другое)?
  • Как грамотно размазать ОС и мои файлы по разделам? Какие взять для каждого раздела опции монтирования?
  • Как настроить раздел подкачки?

 , , , ,

akj ()

Inkscape 0.91 неровно воспроизводит размеры

Inkscape 0.91 неровно воспроизводит размеры с рисунков, подготовленных в версии 0.48.

До грандиозного внедрения в inkscape 0.91 возможности сохранять в файлах размеры в физических единицах программа хранила координаты в svg-пикселях в виде дробных чисел в десятичной нотации с плавающей запятой, а размеры в миллиметрах выводились только для пользователя в графическом интерфейсе.

Столкнулся с тем, что размеры теперь версия 0.91 воспроизводит в классическом виде «0.9999998» или «1.0000012» вместо «1.0». Я понимаю, что сие есть пример классический в вычислительной технике. Но нельзя ли придать миллиметровым координатам, указываемым теперь в явном виде в файле хотя бы видимость целых чисел? Как сие гуглить на английском?

Кстати, как там стало с двоичными преобразованиями (объединение, исключающее ИЛИ, разность, пересечение, разделить), в версии 0.48 результат этих действий получался неточным. Исправили?

Я понимаю, что гвозди микроскопом, но прошу отнестись со снисхождением к моей маленькой блажи.

 

akj ()

Жизненный цикл ПО. Где почитать про это?

Господа!

Нет ли где доступно и желательно на русском языке прочесть про обобщённый жизненный цикл при разработке, внедрении и т.д. программного обеспечения. Кто-нибудь из классиков вроде Эрика Рэймонда затрагивает данный вопрос?

Выпуск — это всё-таки эквивалент снятия с производства или в разработке ПО это иной этап?

 

akj ()

Сетевой интерфейс к гостевой ОС (варианты подключения)

Хост — Debian Wheezy. Гость — оффтопик [xp|7]. Гость должен авторизоваться в домене AD, и соответственно, получать права на ресурcы (принтеры, файлопомойку SMB).

Виртуальная машина — qemu-kvm 1.1.2.

Задача — отдать ethernet-контроллер в полное распоряжение гостевой ОС. На другом конце поднят DHCP.

Дайте, пожалуйста, практические рекомендации, как организовать сеть! Ну, или ссылку, где почитать. В руководстве qemu с первой попытки не разобрался.

Заранее благодарен.

 , , , ,

akj ()

Какой табличный пакет для LaTeX предпочитают здешние эстеты?

Пару лет назад столкнулся с проблемой выбора пакета для внятного (в смысле уровней абстракций и синтаксиса) и управляемого (в смысле предоставляемого набора инструкций, регулирующих поведение автоматики) набора таблиц (в т. ч. длинных).

Остановил свой выбор на tabu. Он мне помог без особенных изощрений набирать и балансировать довольно сложные (с многострочным текстом в ячейках, с поворотом и центрированием содержимого ячеек и с разнообразными объединениями ячеек) таблицы. Но... Во-первых, насколько я смог уловить, разработка пакета сошла на нет после 2011 года. Во-вторых, автору было наплевать на обратную совместимость при выпуске новых версий.

Приметил пакет cals, но его документация, бедная на примеры, не располагает к увлекательному опробованию. Что скажете про этот пакет?

Какие пакеты предпочитаете сами?

Был бы очень признателен за более развёрнутые комментарии, нежели на здесь или тут.

 , ,

akj ()

Удалить предшествующую, целевую и следующие четыре строки

Как при помощи sed удалить строку, содержащую регулярное выражение, предшествующую и следующие четыре строки?

Заранее спасибо.

 ,

akj ()

desktop-файлы, mime-спецификации, wine и start.exe

Доброго, джентльмены!

Задался я вопросами эстетики по версии standards.freedesktop.org.

Имею пару-тройку версий одного необсуждаемого софта, установленного в разные префиксы wine (winemenubuilder.exe предусмотрительно отключен в каждом из них):

  • ~/wine-soft1;
  • ~/wine-soft2.

Собственно у каждой из версий есть, типовая для коммерческого ПО дешёвого эшелона проблема — несовместимые (при отсутствии нововведений в объектной модели документа) от версии к версии форматы файлов с расширением .ext. Посему хочется иметь возможность ассоциации с типом файлов каждой из версий. Плюс, хотелось бы запускать каждую из программ из меню с категориями freedesktop.

Вроде бы всё ясно. Читаю http://standards.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-... и http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-1.1.html, создаю x-wine-cadsoft.xml

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  <mime-type type="application/x-wine-extension-ext">
    <glob pattern="*.ext"/>
    <icon name="wine_ext.0"/>
    <comment>CAD Soft File Format</comment>
  </mime-type>
</mime-info>

Также пишу два файла cadsoft-v1.desktop и cadsoft-v2.desktop с содержимым вроде:

[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=CAD Soft
Comment=CAD Soft Editor
Comment[ru]=Редактор CAD Soft
Exec=env WINEPREFIX=~/wine-soft1 wine start /ProgIDOpen CADSoftV1File %f
Icon=wine_cad_soft.0
NoDisplay=false
StartupNotify=true
Terminal=0
Categories=Electronics;Engineering;
MimeType=application/x-wine-extension-ext;

Дальше делаю обновление кеша:

$ update-desktop-database ~/.local/share/applications
$ update-mime-database ~/.local/share/mime/

Пункты меню расставились, ассоциации файлов поправились. Всё здорово: файлы открываются (аргументом в команду передаётся unix-имя, но start.exe передаёт в cadsoft.exe уже то, что нужно). Есть одна проблема: start.exe от свежего wine считает параметр имени файла строго обязательным, т.е. когда я запускаю свою цацу просто из меню, то имя файла не передаётся, а выполнение start.exe завершается ошибкой, а не запуском cadsoft.exe.

Рекомендуете решить проверку наличия аргумента с именем файла на sh-скрикпте за пять минут и в desktop-файле ссылаться на скрипт?

 , , ,

akj ()

GL стал медленнее XV на Mobile 945GSE

Имею Debian Jessie и Intel Mobile 945GSE вместо видеоадаптера. Играю видео через mplayer2 -vo:gl:swapinterval=1:yuv=2 Использовал ранее squeeze и wheezy до этого; в них -vo:gl был шустрее, чем vo:xv и не тормозил. Теперь всё наоборот: vo:xv играет плавно, а vo:gl с рывками. Бенчмарк от разочарования даже не гонял пока.

Как диагностировать и чинить, почтенные джентльмены?

 , ,

akj ()

Jessie не просыпается

Господа. Спящая красавица не просыпается. Wheezy до неё просыпался без нареканий.

Имею Debian Jessie с поумолчальным systemd, сломавшим shutdown -rF now. Жалуется при каждой загрузке, что наличествуют проблемы при запуске Remount Root and Kernel File Systems. Из гибернации не просыпается. Есть мнение, что в логах гибернации всё будет хорошо, но я всё-таки посмотрю.

В какое место молотком ударить, чтобы заработало?

 , , ,

akj ()

LaTeX: Оформление приложений (нумерация, оглавление, колонтитулы)

Собственно, исходник (не самый минимальный, заголовок перегружен, но строчки оставлены для представления об используемых пакетах) в http://pastebin.com/ecNtqR8Q.

Колонтитулы, записи в оглавлении для основного содержимого (две главы) меня устраивают более чем. Хотелось бы очень достичь следующего результата:

  1. нумерация (и в оглавлении, и на страницах, и в колонтитулах) буквами русского алфавита;
  2. записи в оглавлении «Приложение А Первое приложение», «Приложение Б Второе приложение» и т.д.;
  3. колонтитулы в приложениях с подписями «Приложение А», «Приложение Б» и т.д.;
  4. ещё какие-то замечания эстетов.

Заранее спасибо, джентльмены!

 , , ,

akj ()

LaTeX: Пояснения к формулам

Джентльмены!

Будьте любезны, поясните, как правильно организовать пояснения к формулам?

Пример 1. Формула, за ней таблица, код приведён ниже. Отступ между пояснением и формулой растяжимый и слишком большой, кроме того, таблица с пояснением является отдельным плавающим объектом, и LaTeX размещает её на своё усмотрение. Мне необходимо, чтобы пояснения не отрывались от формулы и чтобы отступ между формулой и пояснением к ней был таким же, как между формулой и следующим абзацем. Кроме того, ширину колонки с переменными я подбираю самостоятельно, а хотелось бы, чтобы её подбирал LaTeX.

Пусть комплексное число $z$ в тригонометрической форме имеет вид
$z=r(\cos\varphi+i\sin\varphi)$.
На основании формулы Эйлера выражение в скобках можно заменить
на показательное выражение.
В результате получим:

\begin{equation}
 z = r\cdot\exp\left({j\varphi}\right)
\end{equation}
\begin{table}[ht]
 \seteqdesctab{1cm}
 \begin{tabular*}{\linewidth}{L{\colAwidth}R{\colBwidth}C{\colCwidth}L{\colDwidth}}
  где	& $\varphi$	& "---	& фаза комплексного числа,\\
	& $j$		& "---	& мнимая единица.
 \end{tabular*}
\end{table}

Доказательство формулы Эйлера можно провести с использованием
рядов Тейлора.

Пример 2. Это фрагмент демонстрации eskdx. Здесь всё в точности так, как я бы хотел. Код ниже.

Плотность каждого образца $\rho, \text{кг}/\text{м}^3$,
вычисляют по формуле
\begin{equation}
 \label{eq:1}
 \rho = \frac{m}{V},
\end{equation}
\begin{ESKDexplanation}
 \item[где ] $m$ "--- масса образца, кг;
 \item $V$ "--- объем образца, $\text{м}^3$.
\end{ESKDexplanation}

\point Формулы, за исключением формул, помещаемых в приложении,
должны нумероваться сквозной нумерацией арабскими цифрами,
которые записывают на уровне формулы справа в круглых скобках.
Одну формулу обозначают "--- (1).

Как мне организовать аналогичное ESKDexplanation окружение с предпочтительными для меня свойствами?

 , ,

akj ()

Debian, ядро 3.10 из бекпортов: гибернация через раз

Господа!

Не откажите в помощи! Поставил ядро 3.10 из бекпортов на Debian Wheezy. Теперь гибернейтится через раз. Подскажите, пожалуйста, в каких логах что бы поискать! Не окажете ли мне помощь в диагностике?

 , , ,

akj ()

[SOLVED] LibreOffice не запускается после даунгрейда

Есть Debian 7.1.

  1. Устанавливался LO 3.5 из основных реп.
  2. Обновил до LO 4.1 из бэкпортов.
  3. Откатил глючную версию до 3.5.
  4. LO 3.5 больше не запускается.

Говорит и прекращает работу.

terminate called after throwing an instance of 'com::sun::star::loader::CannotActivateFactoryException'

Обратно на 4.1 не очень хочется.

 , , ,

akj ()

Современная библиография в LaTeX

Господа!

Абсолютно подходящей темы не нашёл.

Я нахожусь на стадии работы над отчётом, на которой число источников (интернет-страницы, даташиты, научные книги, нормативные документы, внутренние документы предприятия, статьи из периодических изданий и сборников статей, патентов и прочего) перевалило за сотню. Неизбежно придёт время организовать это безобразие эстетически и эргономически (отчёт будет использоваться как справочный материал в том числе).

Использую TeX Live 20130722 (бекпортирован на wheezy из sid в конце августа). Пишу код в Kile, использую UTF8. Пока норм. Строго соответствовать ГОСТу нет необходимости, но было бы желательно. После первичного гугления назрели вопросы:

  1. Чем создать базу данных bib? Подойдёт ли KBibTeX (0.4; выглядит многообещающе)? Или только руками, только хардкор? Зависят ли особенности оформления базы данных от выбора движка (bibtex, biblatex+biber+[biblatex-gost])? Сильная ли зависимость?
  2. Какой сейчас актуальный движок для библиографии? Есть ли где-нибудь сравнения? Какой предпочтительнее для российских реалий:
    • biblatex-gost (его, похоже, придётся устанавливать вручную, не забыв заново бекпортировать посвежевший недавно в sid texlive 2013, в который включили этот самый biblatex 2.7);
    • utf8gost705u.bst от ЯрГУ (который для utf8 и тестировался с XeTeX);
    • другие варианты...
  3. Будет ли с разнообразными стилями библиографии и bibtex/biblatex работать база в utf8?
  4. Стоит ли поломать голову об ГОСТ 7.0.5-2008? Или есть методички?
  5. Допускает ли ГОСТ и стили библиографии список, и, соответственно, нумерацию в ссылках по этому списку, разделить на группы по виду документа (книга, стандарт и т.д.)?
  6. Может быть я всё неправильно понимаю, и здесь нужно совсем всё иначе делать? Поделитесь мудрыми советами?

Заранее спасибо за терпимость и ссылки на литературу и конкретные посты в других темах!

 , , , ,

akj ()

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