{"id":15907816,"url":"https://github.com/jakobdev/jdreplace","last_synced_at":"2026-02-08T08:33:20.631Z","repository":{"id":110037857,"uuid":"499238174","full_name":"JakobDev/jdReplace","owner":"JakobDev","description":"Official mirror of the Codeberg Repo","archived":false,"fork":false,"pushed_at":"2025-01-22T18:15:24.000Z","size":295,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-23T20:19:35.117Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://codeberg.org/JakobDev/jdReplace","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JakobDev.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-02T18:00:19.000Z","updated_at":"2025-01-22T18:15:28.000Z","dependencies_parsed_at":"2024-10-28T11:35:43.946Z","dependency_job_id":"442d055d-2cec-499b-915f-b44a58e936e9","html_url":"https://github.com/JakobDev/jdReplace","commit_stats":{"total_commits":37,"total_committers":4,"mean_commits":9.25,"dds":"0.18918918918918914","last_synced_commit":"f3bb8532f179526cab939aea303a723e64bac511"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakobDev%2FjdReplace","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakobDev%2FjdReplace/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakobDev%2FjdReplace/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakobDev%2FjdReplace/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JakobDev","download_url":"https://codeload.github.com/JakobDev/jdReplace/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250506179,"owners_count":21441729,"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":[],"created_at":"2024-10-06T14:04:32.770Z","updated_at":"2026-02-08T08:33:20.567Z","avatar_url":"https://github.com/JakobDev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003ejdReplace\u003c/h1\u003e\n\n\u003ch3 align=\"center\"\u003eWith jdReplace you can replace a text in all files of a directorys\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cimg alt=\"jdReplace\" src=\"screenshots/MainWindow_en.png\"/\u003e\n\u003c/p\u003e\n\njdReplace is a simple mass search and replace tool.\nYou set a directory, a text to replace, the replacement and click OK.\njdReplace will do the rest.\n\n## Install\n\n### Flatpak\nYou can get jdReplace from [Flathub](https://flathub.org/apps/page.codeberg.JakobDev.jdReplace)\n\n### AUR\nArch Users can get jdReplace from the [AUR](https://aur.archlinux.org/packages/jdreplace)\n\n### pip\nYou can install jdReplace from [PyPI](https://pypi.org/project/jdReplace) using `pip`:\n```shell\npip install jdReplace\n```\nUsing this Method, it will not include a Desktop Entry or any other Data file, so you need to run jdReplace from the Command Line.\nUse this only, when nothing else works.\n\n### From source\nThis is only for experienced Users and someone, who wants to package jdReplace for a Distro.\njdReplaceshould be installed as a Python package.\nYou can use `pip` or any other tool that can handle Python packages.\nYou need to have `lrelease` installed to build the Package.\nAfter that, you should run `install-unix-datafiles.py` which wil install things like the Desktop Entry or the Icon in the correct place.\nIt defaults to `/usr`, but you can change it with the `--prefix` argument.\nIt also applies the translation to this files.\nYou need gettext installed to run `install-unix-datafiles.py`.\n\nHere's a example of installing jdReplace into `/usr/local`:\n```shell\nsudo pip install --prefix /usr/local .\nsudo ./install-unix-datafiles.py --prefix /usr/local\n```\n\n## Translate\nYou can help translating jdReplace on [Codeberg Translate](https://translate.codeberg.org/projects/jdReplace)\n\n## Develop\njdReplaceis written in Python and uses PyQt6 as GUI toolkit. You should have some experience in both.\nYou can run `jdReplace.py`to start jdReplace from source and test your local changes.\nIt ships with a few scripts in the tools directory that you need to develop.\n\n#### BuildTranslations.py\nThis script takes all `.ts` files and compiles it to `.qm` files.\nThe `.ts` files are containing the translation source and are being used during the translation process.\nThe `.qm` contains the compiled translation and are being used by the Program.\nYou need to compile a `.ts` file to a `.qm` file to see the translations in the Program.\n\n#### UpdateTranslations.py\nThis regenerates the `.ts` files. You need to run it, when you changed something in the source code.\nThe `.ts` files are contains the line in the source, where the string to translate appears,\nso make sure you run it even when you don't changed a translatable string, so the location is correct.\n\n####  UpdateUnixDataTranslations.py\nThis regenerates the translation files in `deploy/translations`. these files contains the translations for the Desktop Entry and the AppStream File.\nIt uses gettext, as it is hard to translate this using Qt.\nThese files just exists to integrate the translation with Weblate, because Weblate can't translate the Desktop Entry and the AppStream file.\nMake sure you run this when you edited one of these files.\nYou need to have gettext installed to use it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakobdev%2Fjdreplace","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjakobdev%2Fjdreplace","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakobdev%2Fjdreplace/lists"}