{"id":24542871,"url":"https://github.com/maxgyver83/tid2md","last_synced_at":"2025-08-22T07:10:26.931Z","repository":{"id":134779685,"uuid":"540912104","full_name":"MaxGyver83/tid2md","owner":"MaxGyver83","description":"Convert TiddlyWiki .tid files to Markdown files","archived":false,"fork":false,"pushed_at":"2024-12-02T11:13:57.000Z","size":32,"stargazers_count":8,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-15T11:12:22.636Z","etag":null,"topics":["command-line-tool","markdown","python","tiddlywiki","tiddlywiki5"],"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/MaxGyver83.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":"2022-09-24T17:31:52.000Z","updated_at":"2024-12-30T22:27:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"476feed5-c1b8-4db4-8f12-12fe62e6eec0","html_url":"https://github.com/MaxGyver83/tid2md","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/MaxGyver83%2Ftid2md","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaxGyver83%2Ftid2md/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaxGyver83%2Ftid2md/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaxGyver83%2Ftid2md/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MaxGyver83","download_url":"https://codeload.github.com/MaxGyver83/tid2md/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249058384,"owners_count":21205911,"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":["command-line-tool","markdown","python","tiddlywiki","tiddlywiki5"],"created_at":"2025-01-22T19:19:01.905Z","updated_at":"2025-04-15T11:12:40.243Z","avatar_url":"https://github.com/MaxGyver83.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tid2md\n\nMigrate your TiddlyWiki5 (Node.js version) tiddlers (`.tid` files) to Markdown tiddlers (`.md` files for markup plus `.md.meta` files for meta information).\n\n\n## Markdown in TiddlyWiki\n\n[TiddlyWiki](https://tiddlywiki.com/) uses its own [WikiText](https://tiddlywiki.com/#WikiText) markup language. While this is the natural first choice when using TiddlyWiki, it's also possible writing tiddlers in Markdown using the official [Markdown Plugin](https://tiddlywiki.com/#Markdown%20Plugin). Markdown has the advantage that it's used in many places (p.e. GitHub, GitLab, BitBucket, StackOverflow, Reddit) and is supported by many editors, parsers and other tools. When you often copy tiddlers (or parts of them) to other websites or when you edit/process your `.tid` files with tools except TiddlyWiki itself, it might make sense to write your tiddlers in Markdown or migrate those already written in WikiText to Markdown. This is what `tid2md.py` was made for.\n\n\n## Installation\n\nJust clone this repository and copy/symlink `tid2md.py` to a directory in your `$PATH`.\n\nFor example (on Linux):\n\n```sh\ncd ~/Downloads\ngit clone https://github.com/MaxGyver83/tid2md.git\nmkdir -p ~/.local/bin\ncd ~/.local/bin\nln -s ~/Downloads/tid2md/tid2md.py\ncd ~\ntest -f tid2md.py || PATH=~/.local/bin:\"$PATH\"\n```\n\n\n## How to use tid2md.py\n\n`tid2md.py` is a Python script to be run in a terminal. It takes a list of `.tid` files as input parameter. This means that it cannot be used with a single-HTML-file TiddlyWiki. It only works with a [Node.js TiddlyWiki](https://tiddlywiki.com/#Installing%20TiddlyWiki%20on%20Node.js) which stores every tiddler as a separate `.tid` file on your disk.\n\n⚠ **Warning: This script was only tested by myself using my own tiddlers. Please test it on a copy of your wiki and check if the migrated tiddlers look like expected.**\n\n### Migrate all `.tid` files:\n\n```sh\ncd path/to/wiki/tiddlers\ntid2md.py --delete *.tid\n```\n\nThis will create Markdown tiddlers (consisting of a `.md` and a `.md.meta` file) for all WikiText tiddlers except:\n\n* System tiddlers\n* Tiddlers containing macro definitons\n* Tiddlers containing at least one table\n\nTiddlers with tables are skipped by default because Markdown tables are lacking many features of WikiText tables (p.e. two header rows, captions, cell alignment, cell merging, ...). Use `--tables` to migrate such tiddlers anyway.\n\nThe `--delete` option makes the script delete the original `.tid` files after a successful migration because otherwise you would end up with two versions of the same tiddler.\n\nRun `tid2md.py --help` for more options.\n\n\n## Performance\n\nOn my laptop, it takes about 370 ms to migrate 503 tiddlers (+ skipping 146 tiddlers).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxgyver83%2Ftid2md","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxgyver83%2Ftid2md","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxgyver83%2Ftid2md/lists"}