memory heap
Учусь писать ноты в LaTeX + Lilypond. #latex #lilypond #music
В исходном коде это выглядит так:
#latex #lilypond #music
\begin{figure}[ht]
\caption{Часть мелодии ``Кабы небыло зимы'' из мультфильма ``Простоквашино''.}
\begin{lilypond}
\relative c' {
\key g \major
\numericTimeSignature
\time 4/4
(b'8 b cis dis e4-.) << g,8 b e >> r8 \bar ".|:"
b,8 b b'8. fis16 a8 g e4 |
d8 d << b'8. d8. >> << c16 a >> << c8 a >> << b8 g8 >> r4
d'8 c a fis << a c >> << g b >> << g4 b >>
b,8 b << g'8. b8. >> << fis16 a >> << fis8 a >> << e8 g8 >> r4
}
\layout {
indent = 0\mm
line-width = 120\mm
ragged-last = ##t
}
\end{lilypond}
\label{fig:lilypond-melody-prostokvashino}
\end{figure}
#latex #lilypond #music
👍1
Нарисовал кусок клавиатуры пианино в LaTeX + tikz.
Исходник:
#latex #music #piano
Исходник:
\begin{figure}[ht]
\caption{Одна октава на клавиатуре пианино.}
\centering
\begin{tikzpicture}
\draw (0, 0) -- (7, 0);
\foreach \x/\note in {0/C, 1/D, 2/E, 3/F, 4/G, 5/A, 6/B, 7/} {
\draw (\x, 0) -- (\x, 2) -- (\x, 0) node[anchor=south west] {\note};
};
\foreach \x in {1, 2, 4, 5, 6} {
\node[
rectangle,
draw,
fill=black,
minimum width=0.5cm,
minimum height=1.35cm
] (r) at (\x, 1.30) {};
};
\end{tikzpicture}
\label{fig:lilypond-music-graph-1}
\end{figure}
#latex #music #piano
👍2
С помощью LaTeX-пакета под названием
Исходный код для схемы на скриншоте:
#latex #electronics
CircuiTikz
можно прямо в документе делать электрические схемы.Исходный код для схемы на скриншоте:
\begin{figure}[ht]
\centering
\begin{circuitikz}
\draw (0,0)
to[battery, l=Батарея] (0,2)
to[short] (2,2)
to[full led, l=Светодиод] (2,0)
to[short] (0,0);
\end{circuitikz}
\label{fig:electronics-simple-circuit}
\end{figure}
#latex #electronics
Научился делать в LaTeX + CircuiTikz параллельное подключение резисторов. \o/
Исходный код примера:
#latex #electronics
Исходный код примера:
\begin{figure}[ht]
\centering
\begin{circuitikz}
\draw
(0, 0) to[battery, l=Батарея]
(0, 4) to[short]
(1, 4) to[short]
(1, 5) to[resistor] (4, 5) -- (4, 4);
\draw
(1, 4) to[short]
(1, 3) to[resistor] (4, 3) -- (4, 4);
\draw
(4, 4) to[full led, l=Светодиод] (6, 4)
(6, 4) to[short]
(6, 0) to[short]
(0, 0);
\end{circuitikz}
\end{figure}
#latex #electronics
Два с половиной дня бодался с установкой Lilyglyphs (пакета LaTeX, содержащий знаки музыкальной нотации) в GitHub Actions на образ Ubuntu Latest (22.04) для того, чтобы сделать непрерывную интеграцию книги и также автоматическую генерацию PDF.
Проблему решить удалось через ручную установку Lilyglyphs из CTAN (Comprehensive TeX Archive Network), и вот скрипт, который выполняет установку:
https://gist.github.com/artyom-poptsov/2d141d235a6773d964d371f70cc7775c
Собственно вот полученный результат:
https://github.com/artyom-poptsov/SPARC/actions/workflows/pdf.yaml
Может быть, кому полезно будет тоже.
#projects #latex #sparc #linux
Проблему решить удалось через ручную установку Lilyglyphs из CTAN (Comprehensive TeX Archive Network), и вот скрипт, который выполняет установку:
https://gist.github.com/artyom-poptsov/2d141d235a6773d964d371f70cc7775c
Собственно вот полученный результат:
https://github.com/artyom-poptsov/SPARC/actions/workflows/pdf.yaml
Может быть, кому полезно будет тоже.
#projects #latex #sparc #linux
GitHub
GitHub - artyom-poptsov/SPARC: Science, Programming, Art and Radioelectronics Club (SPARC) book.
Science, Programming, Art and Radioelectronics Club (SPARC) book. - artyom-poptsov/SPARC
⚡1
Пример для LaTeX: получить переменную окружения
VARIABLE
, проверить, пустая она, или нет, и вывести текст на экран при сборке документа через команду \typeout
:%% Taken from:#latex
%% <https://tex.stackexchange.com/questions/184923/how-to-include-a-second-file-only-if-environment-variable-is-set>
\newcommand{\newgetenv}[2][]{%
\CatchFileEdef{\temp}{"|kpsewhich --var-value #2"}{\endlinechar=-1\relax}%
\if\relax\detokenize{#1}\relax\temp\else\edef#1{\temp}\fi%
}%
\newgetenv[\VARIABLE]{VARIABLE}
\ifthenelse{\equal{\VARIABLE}{}}%
{%
\typeout{Variable is empty.}%
}%
{%
\typeout{Variable is set to \VARIABLE .}%
}
⚡2
Облучаю заинтересованных студентов LaTeX'ом.
Вот один из учеников с моей подачи с помощью TikZ нарисовал "Modified Bear" — логотип группы Radiohead.
Исходный код можно найти в репозитории:
https://github.com/Shogun-Sun/LaTeXperiments
Некоторые из студентов уже собираются писать свои курсовые и дипломы в LaTeX, вместо обычных текстовых процессоров. Опыт написания диплома таким образом уже был в прошлом учебном году у одного из дипломников, и вот теперь видимо таких энтузиастов будет больше.
#latex #студенты
Вот один из учеников с моей подачи с помощью TikZ нарисовал "Modified Bear" — логотип группы Radiohead.
Исходный код можно найти в репозитории:
https://github.com/Shogun-Sun/LaTeXperiments
Некоторые из студентов уже собираются писать свои курсовые и дипломы в LaTeX, вместо обычных текстовых процессоров. Опыт написания диплома таким образом уже был в прошлом учебном году у одного из дипломников, и вот теперь видимо таких энтузиастов будет больше.
#latex #студенты
🔥9👾1
#book_sparc #latex
Ура-ура, я разобрался более-менее, как сделать условную генерацию текста в документах, на базе операторов ветвления в LaTeX.
Теперь могу красиво вынести части книги, общие для всех языков (например, рисунки) в отдельные файлы в виде команд, и реализовать перевод изображений и частей документа на нужный мне язык исходя из параметров команд.
Например, теперь могу делать так:
Ура-ура, я разобрался более-менее, как сделать условную генерацию текста в документах, на базе операторов ветвления в LaTeX.
Теперь могу красиво вынести части книги, общие для всех языков (например, рисунки) в отдельные файлы в виде команд, и реализовать перевод изображений и частей документа на нужный мне язык исходя из параметров команд.
Например, теперь могу делать так:
\figureADC{en}
\figureADC{ru}
GitHub
common: figureADC: Use LaTeX conditionals · artyom-poptsov/SPARC@bd452b7
* src/common/figureADC.tex: Use LaTeX conditionals to select the proper
translation for the figure caption.
* src/en/sections/white-noise-adc.tex, src/ru/sections/white-noise-adc.tex:
Update.
translation for the figure caption.
* src/en/sections/white-noise-adc.tex, src/ru/sections/white-noise-adc.tex:
Update.
🔥2
memory heap
#book_sparc #latex Ура-ура, я разобрался более-менее, как сделать условную генерацию текста в документах, на базе операторов ветвления в LaTeX. Теперь могу красиво вынести части книги, общие для всех языков (например, рисунки) в отдельные файлы в виде команд…
И да, работа в LaTeX порой напоминает мне акт чёрной магии.
Telegram
memory heap
Порой работа над документом в LaTeX напоминает мне акт чёрной магии.
#latex
#latex
🔥1