{"id":18908508,"url":"https://github.com/hegerdes/vscode-latex-container","last_synced_at":"2025-04-15T05:31:56.754Z","repository":{"id":114839563,"uuid":"368933048","full_name":"hegerdes/VSCode-LaTeX-Container","owner":"hegerdes","description":"This is a VSCode DevContainer template for scientific LaTeX papers","archived":false,"fork":false,"pushed_at":"2025-03-03T18:35:02.000Z","size":944,"stargazers_count":37,"open_issues_count":0,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-28T16:43:51.483Z","etag":null,"topics":["codespaces","devcontainer","docker","gitpod","latex","luatex","template","vscode"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hegerdes.png","metadata":{"files":{"readme":"ReadMe.md","changelog":"Changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-19T16:25:29.000Z","updated_at":"2025-03-26T12:35:17.000Z","dependencies_parsed_at":"2024-12-18T22:30:08.717Z","dependency_job_id":"f271aad6-b683-46aa-bd2b-52ede47bd9bb","html_url":"https://github.com/hegerdes/VSCode-LaTeX-Container","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hegerdes%2FVSCode-LaTeX-Container","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hegerdes%2FVSCode-LaTeX-Container/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hegerdes%2FVSCode-LaTeX-Container/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hegerdes%2FVSCode-LaTeX-Container/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hegerdes","download_url":"https://codeload.github.com/hegerdes/VSCode-LaTeX-Container/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249015382,"owners_count":21198795,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["codespaces","devcontainer","docker","gitpod","latex","luatex","template","vscode"],"created_at":"2024-11-08T09:26:44.154Z","updated_at":"2025-04-15T05:31:56.382Z","avatar_url":"https://github.com/hegerdes.png","language":"Shell","funding_links":["https://paypal.me/hegerdes?locale.x=de_DE"],"categories":[],"sub_categories":[],"readme":"# VS code LaTeX template project\n\n[![Docker Image CI](https://github.com/hegerdes/VSCode-LaTeX-Container/actions/workflows/docker-build.yml/badge.svg)](https://github.com/hegerdes/VSCode-LaTeX-Container/actions/workflows/docker-build.yml)\n[![](https://img.shields.io/docker/pulls/hegerdes/vscode-latex)](https://hub.docker.com/r/hegerdes/vscode-latex) [![GitHub forks](https://badgen.net/github/forks/hegerdes/VSCode-LaTeX-Container/)](https://GitHub.com/hegerdes/VSCode-LaTeX-Container/network/) [![made-with-latex](https://img.shields.io/badge/Made%20with-LaTeX-1f425f.svg)](https://www.latex-project.org/)\n\nThis repo is meant to be used with VSCode to provide a quick and functional full fleece LeTeX Environment. It can be run as a DevContainer or on the web an ANY device using Codespaces or GitPods.  \n\n[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/hegerdes/VSCode-LaTeX-Container)  \n[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/hegerdes/VSCode-LaTeX-Container?quickstart=1)\n\n\n\n## Functions\nWith this image you can:\n * Have a quick, clean, working LaTeX environment setup based on TeXLive\n * Use Pandoc - To convert your projects between different formats\n * Use any host OS\n * Run it on x86/arm/arm64 architectures or the web\n * Have our environment on a remote computer\n * If you use Codespaces or GitPod you can even edit your papers on every browser.\n * Have a setup that is faster than MiKTeX on Windows\n * Have LaTeX Workshop an LaTeX Utilities preinstalled (VSCode only)\n * Markdown support (VSCode only)\n * Spell checking (VSCode only)\n * Persistent bash_history (VSCode only)\n * Git support\n * Customize your image with own users or more tools\n * Scientific project template (VSCode only)\n\n\n## Getting started\n### Local setup\nThe TeX source is on your host OS and gets mounted as volume\n```bash\n# Open a terminal an type:\ngit clone https://github.com/hegerdes/VSCode-LaTeX-Container\ncode VSCode-LaTeX-Container\n# In VSCode hit F1\n\u003e Remote-Containers: Reopen in Container\n# Wait for the initial pull and build\n# Note: You need to have Docker and VSCode remote extentions installed\n# Search for \"ms-vscode-remote.vscode-remote-extensionpack\"\n```\n\n### On the web\nThe entire project is within your Codespace or GitPod:  \nClick `Use this template` and then open in Codespace  \nAlternatively click clone and head over to the Codespace tab.\n\n### In a container\nThe entire project is within the container\n```bash\n# Open VSCode\n# In VSCode hit F1\n\u003e Remote-Containers: Clone Repository in Container Volume\n\u003e https://github.com/hegerdes/VSCode-LaTeX-Container\n# Wait for the initial pull and build\n# Note: You need to have Docker and VSCode remote extentions installed\n# Search for \"ms-vscode-remote.vscode-remote-extensionpack\"\n```\n\n## About the Docker image\nContainer images are available on [DockerHub](https://hub.docker.com/r/hegerdes/vscode-latex).\n\nAll images are updated every month to the latest package version via CI.  \nIf you need reproducable enviorments use a fixed container image hash as tag.\n\nThere are multiple base images **debian-[bullseye|bookworm] and ubuntu-[focal|jammy]**. All these images have **texlive, texlive-latex-extra texlive-lang-english, texlive-luatex, texlive-xetex, texlive-pstricks, texlive-science, latexmk, cm-super, chktex** with additional tools like **git, zsh and pandoc(not in alpine)** installed. Every image is available on x86/arm/arm64 architectures.\n\nThe slim images only contain **texlive, texlive-latex-extra, texlive-lang-english, latexmk, cm-super, chktex**\nIf you want a minimal image use these, but this might lack common tools/packages.\n\nThere are two full images that contain **everything** in the LaTeX world except for docs. These are **BIG** and generally not recommended for fast startups.\n\nThere are a bunch of language specific images that are build up on the **bookworm-base** and **jammy-base** images. Languages are: **all, arabic, chinese, cjk, cyrillic, czechslovak, english, european, french, german, greek, italian, japanese, korean, other, polish, portuguese, spanish**.\n\nUse one of these if your work on a none English project! Simply change the `VARIANT` arg in the devcontainer.json to `bookworm-lang-\u003cYOUR_LANGUAGE\u003e` or `jammy-lang-\u003cYOUR_LANGUAGE\u003e`.\n\n### The LaTeX template\nThe included template was build up over the time and is designed for scientific projects. But I didn't start from scratch either. Credit goes to:\n```LaTeX\n% Original author:\n% WikiBooks (LaTeX - Title Creation) with modifications by:\n% Vel (vel@latextemplates.com)\n% hegerdes (hegerdes@outlook.de)\n```\n\n### Other nice Tools:\n * [LaTeX-OCR](https://github.com/lukas-blecher/LaTeX-OCR)\n * [Detexify](https://play.google.com/store/apps/details?id=website.marty.detexify\u0026hl=en\u0026gl=US)\n * [WolframAlpha](https://www.wolframalpha.com/)\n * [ChatGPT](https://chat.openai.com) - super nice for TIKZ\n * [Inkscape](https://inkscape.org/) - super for figures\n\n### VSCode workspace\nI added a VSCode workspace file with *sensible* setting. It includes some settings for Docker and the LaTeX extensions. Feel free to customize it after your own taste.\n\n## Why all this\nI always liked the concept of LaTeX and its focus on content instead of the formatting. But getting started was hard and I wanted to contribute to make it a little more accessible. I first used MiKTeX and TeXworks, but I found the usage of shortcuts hard and didn't like the PDF viewer. I switched to Notepad++, SumataPDF (both great tools) and a handy script. It was great until my projects got bigger. So I used VSCode and LaTeX Workshop and I loved it. All my shortcuts and tools I used before now applied to LaTeX. I was satisfied until I realized how slow MiKTeX on Windows is compared to Linux.\n\nI love Linux, but some things are more convenient on Windows. I started my Bachelor theses about software development environments and the usage of container tools. So I have further developed my setup to bring everything together.\n\nI found that the `tianon/latex` and other image were outdated and did not meet my expectations. I rather created my own image. It is own the large side, but I rather have all my tools there at any time instead of being slowed down by missing them or have to install packages manually. I hope some of you find some interesting tips and tricks in my setup.\n\nIf you find any issues let me [know](https://github.com/hegerdes/VSCode-LaTeX-Container/issues)\n\n## Tips \u0026 Tricks\n * If you use git. Checkout everything with `lf` line endings\n```text\n* text=auto eol=lf\n*.{cmd,[cC][mM][dD]} text eol=crlf\n*.{bat,[bB][aA][tT]} text eol=crlf\n```\n * On Windows use the WSL2 backend\n * You can customize your environment by changing the image in the .devcontainer folder\n * You can add own users by changing the `USERNAME` and `remoteUser` in the devcontainer.json\n * Check out the template with:\n```bash\n# In VSCode hit F1\n\u003e Remote-Containers: Clone Repository in Container Volume\n\u003e https://github.com/hegerdes/VSCode-LaTeX-Container\n```\n\n### Support me\nIf you like this or other projects may consider [supporting me.](https://paypal.me/hegerdes?locale.x=de_DE)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhegerdes%2Fvscode-latex-container","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhegerdes%2Fvscode-latex-container","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhegerdes%2Fvscode-latex-container/lists"}