{"id":14577920,"url":"https://github.com/alfredholmes/TeXNotes","last_synced_at":"2025-09-04T12:33:25.230Z","repository":{"id":157531179,"uuid":"614555826","full_name":"alfredholmes/TeXNotes","owner":"alfredholmes","description":"Zettelkasten or Slip box with notes written in LaTeX","archived":false,"fork":false,"pushed_at":"2023-11-11T14:39:43.000Z","size":1450,"stargazers_count":40,"open_issues_count":1,"forks_count":3,"subscribers_count":7,"default_branch":"main","last_synced_at":"2024-09-08T17:22:26.304Z","etag":null,"topics":["latex","latex-template","zettelkasten"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alfredholmes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-03-15T20:38:44.000Z","updated_at":"2024-09-05T07:48:00.000Z","dependencies_parsed_at":"2023-05-02T00:01:49.895Z","dependency_job_id":"2afb12c1-32bd-44fb-864c-4fb1fd6701e4","html_url":"https://github.com/alfredholmes/TeXNotes","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alfredholmes%2FTeXNotes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alfredholmes%2FTeXNotes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alfredholmes%2FTeXNotes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alfredholmes%2FTeXNotes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alfredholmes","download_url":"https://codeload.github.com/alfredholmes/TeXNotes/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231965383,"owners_count":18453069,"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":["latex","latex-template","zettelkasten"],"created_at":"2024-09-07T17:01:22.856Z","updated_at":"2024-12-31T08:31:28.535Z","avatar_url":"https://github.com/alfredholmes.png","language":"Python","funding_links":["https://ko-fi.com/mildobsessions"],"categories":["Popular \u0026 New LaTeX Templates"],"sub_categories":["Others"],"readme":"# TeXNotes - Zettelkasten written with LaTeX.\nZettelkasten or Slip box with notes written in LaTeX. \n\n![Screenshot from 2023-10-09 19-34-59](https://github.com/alfredholmes/LaTeX-Zettel/assets/10376110/661103ed-2a1e-45db-bcc5-faf805133d7d)\n\n### Getting Started\n\nSee [wiki/getting started](https://github.com/alfredholmes/LaTeX-Zettel/wiki/Getting-Started) for instructions. See [/docs/manage.html](https://htmlpreview.github.io/?https://github.com/alfredholmes/LaTeX-Zettel/blob/main/docs/manage.html) for documentation on the helper sript manage.py.\n\n### Mailing List\n\nTo receive email updates about new features and general information about the project, subscribe to the mailing list [here](https://www.freelists.org/list/latexzettel) or send an email with subject 'subscribe' to latexzettel-request@freelists.org.\n\n### Current Features\n\n* [Internote referencing commands](https://github.com/alfredholmes/LaTeX-Zettel/wiki/Referencing-Other-Notes) - render Zettelkasten with PDFLaTeX or make4ht and get clickable hyperlinks in the PDFs and html pages.\n* [Biber support](https://github.com/alfredholmes/LaTeX-Zettel/wiki/Biber-Support) for citations (works well with, for example, Zotero auto export).\n* [Helper scripts](https://github.com/alfredholmes/LaTeX-Zettel/wiki/Creating,-Deleting-and-Renaming-Notes) to create new notes from LaTeX templates\n* Automated analysis of the Zettelkasten - creates a database from the notes with details of the connections between notes.\n* Native python 'network view' of Zettelkasten ([see here](https://github.com/alfredholmes/LaTeX-Zettel/wiki/Network-View)).\n* Ability to export multiple notes into a LaTeX document ([see here](https://github.com/alfredholmes/LaTeX-Zettel/wiki/Export-Notes-as-Latex-Document)). \n* [PDF and HTML rendering](https://github.com/alfredholmes/LaTeX-Zettel/wiki/Compiling-Notes)\n* [Markdown support with Pandoc](https://github.com/alfredholmes/TeXNotes/wiki/Markdown-Support-with-Pandoc)\n\n### Planned Features\n\n* Customizable templates, and different templates for different notes\n* Draw a path on the network view to write a draft of a paper\n* Import notes from an existing .tex file - split up already written documents into atomic notes by adding comments to the .tex file that describe the desired notes.\n\n\n### Why Do This?\n\nThis is primarily intended for academics who write papers in LaTeX and want to write notes using the Zettelkasten method that are easily exportable into a full LaTeX document. The other benefits are being able to define theorem environments and using biber or bibtex reference management. This repository is essentially a template to start a new slip box. There is a python script `manage.py` that adds a few functions but you could do this all in latex.\n\n\n### How to use\n\nSee [the wiki](https://github.com/alfredholmes/LaTeX-Zettel/wiki) for detailed usage instructions.\n\nThere are three main folders. `/notes`, `/template` and `/pdf`. This assumess that you want to render your notes as `pdf` documents rather than as `html` (`html` rendering also works, replacing `pdflatex` with `make4ht` but there are sometimes some issues with `hyperref` and `xr-hyper` which can be fixed by adding the flag `-c ../config/make4ht.cfg`). Inside `/notes` is where the `.tex` documents get stored. The example notes import the file `/template/preamble` which contains various package imports. The most important part of `/template/preamble.tex` is the importing of the file `/notes/documents.tex` which contains all the `\\externaldocument` declarations that will allow `\\cref` to reference equations in other documents. Note that the second parameter in the `\\externaldocument` command is the name of the file that you want to reference. This is actually refers to the `document_name.aux`, which contains all the referencing information, rather than the `.tex` file. Hence this file name parameter should match the directory structure of the output `pdf`s, not the directory structure of your `.tex` documents. To allow all the notes to use the same `/documents.tex` it is most straightforward to render the `pdf`s from inside the `/pdf` directory. So to render notes using `pdflatex` run\n```\n$ cd pdf\n$ pdflatex ../notes/path_to_note.tex \n```\nIf note `A` references note `B`, then you'll have to render `B` before `A` for the hyperlinks to work correctly.\n    \nNow you will have two pdfs (and a load of LaTeX build files) which give a basic example of the setup.\n\n#### Adding New Notes \n\nTo add a new note simply run\n\n`$ ./manage.py newnote note_name [optional cref name, defaults to NoteName = name.split('_') then capitalized and concatenated]`.\n\nthis just copies the note template into the `/notes/slipbox/` folder, saving it as `new_note.tex` and adds the line \n```Latex\n\\externaldocument[NewNote-]{new_note}\n```\nto `/notes/documents.tex`. Any labels from the note will be able to be referenced from other notes using the command \n```\n\\excref[reference label]{NewNote}\n```\nwhich is defined in `/template/preamble.tex`. This will use `cref` to generate the label and insert `\\texttt{NewNote/}` before it. Using just `\\cref{NewNote-reference label}` use the default `cref` to render the reference to the label, and so willl not include the document name. To add custom text to the external reference there is the command\n\n```\n\\exhyperref[reference label]{NewNote}{hyperlink text}\n```\nalso defined in `/template/preamble.tex`. This creates a hyperlink to the item labelled `reference label` in `new_note.tex` with the text `hyperlink text`. If the optional parameter is ommited then `\\exhyperref` and `\\excref` will reference the label `note` which in the default template is inserted just after the title.\n\n### `manage.py` helper script\n\nSee [/docs/manage.html](https://htmlpreview.github.io/?https://github.com/alfredholmes/LaTeX-Zettel/blob/main/docs/manage.html) for documentation.\n\n### Donations / Support\n\nPlease report any bugs or feature requests to the repository [issues](https://github.com/alfredholmes/LaTeX-Zettel/issues). If you find the project useful, please consider buying me a [coffee](https://ko-fi.com/mildobsessions).\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falfredholmes%2FTeXNotes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falfredholmes%2FTeXNotes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falfredholmes%2FTeXNotes/lists"}