diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..6e44e7a37cfa9d2f18f55ff778af2920b5defb33 --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,7 @@ +FROM registry.gitlab.com/lukenaylor/latex/sage-tex-chroma-image:latest + +# Add the tree-sitter parser for Rust +RUN git clone --depth=1 --branch v0.20.4 https://github.com/tree-sitter/tree-sitter-rust.git /root/src/tree-sitter-rust +# Install the pseudowalls sage package +RUN sage -pip install pseudowalls --extra-index-url https://gitlab.com/api/v4/projects/43962374/packages/pypi/simple + diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 2b5fd1445d30d05aeacf5ff9bf0ed450feec4588..d716dae54c0486e31a9e26dcc2d78066d77c5bdc 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,8 +1,7 @@ // .devcontainer/devcontainer.json { - "name": "LaTeX&SageTex Devcontainer", - "image": "registry.gitlab.com/lukenaylor/latex/sagetex-image:latest", - "postCreateCommand": "sage -pip install pseudowalls --extra-index-url https://gitlab.com/api/v4/projects/43962374/packages/pypi/simple", + "name": "LaTeX&SageTex&Chromacode Devcontainer", + "dockerFile": "./Dockerfile", "customizations": { "vscode": { "settings": { diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 10ef63cc1f749c8b22163596d3e8a3f88e19589e..7e6c76bf408668b59bdd0f86880047f955a018d4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,13 +2,15 @@ variables: GIT_SUBMODULE_STRATEGY: normal build: - image: registry.gitlab.com/lukenaylor/latex/sagetex-image:latest + # image: registry.gitlab.com/lukenaylor/latex/sagetex-image:latest + image: + dockerfile: .devcontainer/Dockerfile tags: ["x64"] script: - echo $SHELL - source /root/.bashrc - - sage -pip install "pseudowalls==0.0.3" --extra-index-url https://gitlab.com/api/v4/projects/43962374/packages/pypi/simple - - make main.pdf || echo make failed + - make pretex + - latexmk -use-make artifacts: paths: - main.pdf diff --git a/Makefile b/Makefile index b64f958b4d07ad53d304cd1c37e965a0fcdb0118..9dc0523b34d5a1afa7912d94cfda0612668a14c0 100644 --- a/Makefile +++ b/Makefile @@ -5,13 +5,15 @@ MAINTEXFILE = main.tex TEXFILES = ${MAINTEXFILE} NOTEBOOKBASENAMES = plots_and_expressions examples characteristic_curves rank_zero_case other_P_choice -main.pdf: ${TEXFILES} main.sagetex.sout.tmp +SAGETEXARTIFACT=main.sagetex.sout + +main.pdf: ${TEXFILES} ${SAGETEXARTIFACT} latexmk -sage_artifacts: main.sagetex.sout.tmp +sage_artifacts: ${SAGETEXARTIFACT} SAGETEXSCRIPT = main.sagetex.sage -main.sagetex.sout.tmp: ${SAGETEXSCRIPT} notebook_py_libs +${SAGETEXARTIFACT}: ${SAGETEXSCRIPT} notebook_py_libs PYTHONPATH=./sagetexscripts/ sage ${SAGETEXSCRIPT} ${SAGETEXSCRIPT}: ${TEXFILES} @@ -32,8 +34,33 @@ $(foreach _base, $(NOTEBOOKBASENAMES), $(eval $(call NOTEBOOK_TO_LIB_RULE, $(_ba notebook_py_libs: $(addsuffix .py, $(NOTEBOOKBASENAMES)) +# TEX FILES FROM RUST + +define RUST_TO_TEX_RULE +$(1).tex: $(1).rs + chromacode -r -i $(1).rs -o $(1).tex +endef + +RUSTSNIPPETSBASE=tilt.rs/src/tilt_stability/considered_b_for_beta tilt.rs/src/tilt_stability/find_all +RUSTBASENAMES=$(basename $(wildcard tilt.rs/src/**/*.rs)) ${RUSTSNIPPETSBASE} + +$(foreach _base, $(RUSTBASENAMES), $(eval $(call RUST_TO_TEX_RULE, $(_base)))) + +rust_tex: $(addsuffix .tex, $(RUSTBASENAMES)) + +# specific snippets of rust +# +tilt.rs/src/tilt_stability/considered_b_for_beta.rs: tilt.rs/src/tilt_stability/left_pseudo_semistabilizers.rs + sed -n -e '24,36p' $^ > $@ + +tilt.rs/src/tilt_stability/find_all.rs: tilt.rs/src/tilt_stability/left_pseudo_semistabilizers.rs + sed -n -e '79,99p' $^ > $@ + # MISCELANEOUS +# Stuff that can be built before ever running latex: +pretex: rust_tex notebook_py_libs + .PHONY: clean nosage noappendix clean: rm -rf **/__pycache__ @@ -43,5 +70,5 @@ clean: nosage: latexmk -noappendix: ${TEXFILES} main.sagetex.sout.tmp +noappendix: ${TEXFILES} ${SAGETEXARTIFACT} latexmk diff --git a/content.tex b/content.tex index fd3925d7037d408115bfdee192e9b8340c199695..5d2c559adfe66eaf03a4b711eb1f07eae4ee8edc 100644 --- a/content.tex +++ b/content.tex @@ -1896,18 +1896,9 @@ $v$ has positive rank, that it satisfies $\Delta(v) \geq 0$, and that $\beta_{-}(v)$ is rational. \lstinputlisting[ - escapeinside={<@}{@>}, - captionpos=b, - frame=single, - numbers=left, - numberstyle={\scriptsize\ttfamily\color{black!60}}, - basicstyle={\linespread{0.9}\scriptsize\ttfamily}, - aboveskip=5mm, - firstline=79, - lastline=99, caption={\raggedleft\texttt{tilt_stability::left_pseudo_semistabilizers\\::considered_b_for_beta}}, label={fig:code:consideredb} -]{tilt.rs/src/tilt_stability/left_pseudo_semistabilizers.tex} +]{tilt.rs/src/tilt_stability/considered_b_for_beta.tex} Take $\beta_{-}(v)=\frac{a_v}{n}$ in simplest terms. Iterate over $q = \frac{b}{n} \in [0,\chern_1^{\beta_{-}}(v)]\cap\frac{1}{n}\ZZ$. @@ -1915,18 +1906,9 @@ The code used to generate the corresponding values for $b$ is shown in figure \ref{fig:code:consideredb}. \lstinputlisting[ - escapeinside={<@}{@>}, - captionpos=b, - frame=single, - numbers=left, - numberstyle={\scriptsize\ttfamily\color{black!60}}, - basicstyle={\linespread{0.9}\scriptsize\ttfamily}, - aboveskip=5mm, - firstline=79, - lastline=99, caption={\raggedleft\texttt{tilt_stability::left_pseudo_semistabilizers\\::find_all}}, label={fig:code:reducingtoeachb} -]{tilt.rs/src/tilt_stability/left_pseudo_semistabilizers.tex} +]{tilt.rs/src/tilt_stability/find_all.tex} We can therefore reduce the problem of finding solutions to the problem to finding the solutions $u$ with each fixed possible $\chern_1^\beta(u)$ diff --git a/main.tex b/main.tex index 00b82f303796b7a5d7bb28b8aedefaf1d2394428..8e3396e591fd45a8d58c11b3c7b2db4049edd83a 100644 --- a/main.tex +++ b/main.tex @@ -4,6 +4,24 @@ \input{newcommands.tex} \input{theoremstyles.tex} \input{newunicodes.tex} +\lstset{ + escapeinside={<@}{@>}, + inputencoding=utf8, + extendedchars=true, + frame=single, + basicstyle={\linespread{0.9}\scriptsize\ttfamily}, + showstringspaces=false, + showspaces=false, + numbers=left, + numberstyle={\scriptsize\ttfamily\color{black!60}}, + numbersep=9pt, + aboveskip=5mm, + tabsize=2, + breaklines=true, + showtabs=false, + captionpos=b, + literate={β}{{\beta}}1 {μ}{{\mu}}1 {ü}{{\"u}}1 {°}{\dg}1 {ᵇ}{{b}}1 {â‚™}{{n}}1 +} \usepackage{sagetex} @@ -39,4 +57,4 @@ Practical Methods for Narrowing Down Possible Walls} \newpage \printbibliography -\end{document} \ No newline at end of file +\end{document} diff --git a/newunicodes.tex b/newunicodes.tex index 55c3f85f63cc21663d0b8a64c349e11f306b66b7..c2fbf4fe804c06413eed6cf9e6d4d2c0e8538545 100644 --- a/newunicodes.tex +++ b/newunicodes.tex @@ -1,7 +1,7 @@ \newunicodechar{ᵇ}{b} \newunicodechar{â‚™}{n} -\newunicodechar{∈}{\in} -\newunicodechar{ðœ‡}{\mu} -\newunicodechar{â‹…}{\cdot} +\newunicodechar{∈}{$\in$} +\newunicodechar{ðœ‡}{$\mu$} +\newunicodechar{â‹…}{$\cdot$} \newunicodechar{â„š}{$\mathbb{Q}$} \newunicodechar{ℤ}{{$\mathbb{Z}$}} diff --git a/packages.tex b/packages.tex index 4f8de64c788a98f708dbce2d4de208cb9c8d92b4..825428376419319dbcf86e23a3615b854d926b67 100644 --- a/packages.tex +++ b/packages.tex @@ -9,7 +9,7 @@ \usepackage{mathtools} \usepackage[]{breqn} \usepackage[nomap]{FiraMono} -\usepackage[cache=false]{minted} \usepackage{newunicodechar} \usepackage{multicol} +\usepackage{listingsutf8}