{"id":21302385,"url":"https://github.com/ajatt-tools/dictpopup","last_synced_at":"2025-06-14T21:03:21.077Z","repository":{"id":162976688,"uuid":"638223859","full_name":"Ajatt-Tools/dictpopup","owner":"Ajatt-Tools","description":"Looks up selected (Japanese) text in your Yomichan dictionaries and displays the result as a popup.","archived":false,"fork":false,"pushed_at":"2024-05-20T19:54:55.000Z","size":9835,"stargazers_count":13,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-05-21T03:20:03.744Z","etag":null,"topics":["anki","c","dictionaries","dictionary","dictpopup","gtk3","japanese","languages","lightweight","linux","popup","yomichan"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"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/Ajatt-Tools.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":"2023-05-09T10:41:26.000Z","updated_at":"2024-05-28T13:26:30.629Z","dependencies_parsed_at":"2023-09-29T15:26:41.212Z","dependency_job_id":"32d1bec7-513d-43db-bb18-d936b712cfd9","html_url":"https://github.com/Ajatt-Tools/dictpopup","commit_stats":null,"previous_names":["btrkeks/dictpopup","ajatt-tools/dictpopup"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/Ajatt-Tools/dictpopup","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ajatt-Tools%2Fdictpopup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ajatt-Tools%2Fdictpopup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ajatt-Tools%2Fdictpopup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ajatt-Tools%2Fdictpopup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ajatt-Tools","download_url":"https://codeload.github.com/Ajatt-Tools/dictpopup/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ajatt-Tools%2Fdictpopup/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259884418,"owners_count":22926440,"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":["anki","c","dictionaries","dictionary","dictpopup","gtk3","japanese","languages","lightweight","linux","popup","yomichan"],"created_at":"2024-11-21T15:56:03.999Z","updated_at":"2025-06-14T21:03:21.050Z","avatar_url":"https://github.com/Ajatt-Tools.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dictpopup\n\nThis is a lightweight popup for searching selected text in your Yomichan dictionaries with support for creating Anki\ncards. The look of the popup will depend on your gtk3 settings.\n\nhttps://github.com/user-attachments/assets/a199f843-1be4-4b76-8ca1-f0d97aa96445\n\nhttps://github.com/user-attachments/assets/6fb1c7de-891c-4253-a1cb-534a1ece0362\n\n## List of features\n\n* Deinflect\n* Yomichan-style lookup, i.e. decrease length of lookup until there is a match\n* Sort dictionary entries by frequency (Requires a frequency dictionary. I recommend CC100)\n* Fall back to a hiragana conversion (For words written half in kanji / half in hiragana, e.g: かけ布団, 思いつく)\n* Play a pronunciations (requires files see [Pronunciation](#pronunciation))\n* Add the word to Anki using either the visible definition, the mouse selection or clipboard contents\n* Indicator showing if a word already exists in your Anki deck / collection.\n* Allow adding the window title to some Anki field (If you are adding from a book, this will e.g. most probably contain\n  the book title)\n* Fast and memory efficient\n\n## Dependencies\n\nlmdb, mecab, gtk3, libx11, curl, libnotify, libzip, gperf\\\n[AnkiConnect Anki addon](https://ankiweb.net/shared/info/2055492159) (for Anki support)\\\nffplay (optional, for pronunciation)\n\n## Installation\n\n### Arch Linux\n\nInstall the AUR package `dictpopup`.\n\n### Manual\n\nFirst make sure, that you have all necessary dependencies installed. On a Debian based distro this can be done with:\n\n```\nsudo apt-get install liblmdb-dev libmecab-dev libgtk-3-dev libx11-dev \\\n     libcurl4-openssl-dev libnotify-dev libzip-dev zipcmp zipmerge ziptool \\\n     gperf gettext\n```\n\nThen install with:\n\n```bash\ngit clone \"https://github.com/Ajatt-Tools/dictpopup.git\"\ncd dictpopup\ncmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF\nsudo cmake --build build --target install -j 3\n```\n\n### Windows\n\nThe manual installation instructions above should also work for Windows under MSYS2, so someone\nexperienced might get it to run.\n\n## Setup\n\nAfter the program installation you need to first create an index where the dictionary entries are read from.\nFor this, open `dictpopup-config` (or `dictpopup` and then menu button \u003e settings), then under 'Add dictionaries' in the\n'General' tab, choose the folder that contains all of your Yomichan dictionaries and click 'Generate Index'.\n\nYou can also include a frequency dictionary in there, but only one (it will give an error if you add more, because I\ndon't think that mixing makes sense).\n\n## Where to get dictionaries\n\ntba\n\n## Pronunciation\n\nTo enable pronunciation, simply download some pronunciation indices from Ajatt-Tools (such\nas [NHK 2016](https://github.com/Ajatt-Tools/nhk_2016_pronunciations_index))\nand generate an index under 'Add Pronunciation Files' in the 'Pronunciation' tab of the settings window. The expected\nfolder structure looks as follows:\n\n```\n ├── ajt_japanese_audio\n │   ├── daijisen_pronunciations_index\n │   │   ├── index.json\n │   │   ├── media\n │   ├── nhk_1998_pronunciations_index\n │   │   ├── index.json\n │   │   ├── media\n │   │   └── release_info.conf\n │   ├── nhk_2016_pronunciations_index\n │   │   ├── index.json\n```\n\nBy right clicking the pronunciation button, you can open a menu with all the available pronunciations\nfor the current kanji/reading pair.\n\n## Usage\n\nSelect a word and call `dictpopup` (using a shortcut). It is also possible to give an argument\ninstead: `dictpopup WORD`.\nIf something is not working as expected, you can add `DP_DEBUG=1` before the command or add the command line option `-c`\nto print the config on stdout.\n\nThe \"+\" sign adds the currently shown definition to Anki after prompting you to copy a sentence (if enabled).\nIf there is text selected in the popup window, it will be used instead as a definition.\nFurthermore, by right-clicking the + sign, you can also use the current clipboard content as the definition instead.\n\n## Keybindings\n\n- Edit lookup: \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003ee\u003c/kbd\u003e\n- Next entry: \u003ckbd\u003en\u003c/kbd\u003e, \u003ckbd\u003es\u003c/kbd\u003e\n- Previous entry: \u003ckbd\u003ep\u003c/kbd\u003e, \u003ckbd\u003ea\u003c/kbd\u003e\n- Create an Anki card: \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003es\u003c/kbd\u003e\n- Play audio: \u003ckbd\u003ep\u003c/kbd\u003e, \u003ckbd\u003er\u003c/kbd\u003e\n- Exit: \u003ckbd\u003eq\u003c/kbd\u003e, \u003ckbd\u003eEsc\u003c/kbd\u003e\n\n## Supported languages\n\nYou can use any dictionary as long as at is in Yomichan format. However, currently there is only\na deinflector available for Japanese.\n\nYomichan dictinaries for other languages are for example available\nhere: https://github.com/themoeway/kaikki-to-yomitan/releases.\n\n## Browser extension\nIf you want Yomichan-style lookup in a browser, i.e. lookup by shift-clicking the first character, then\nyou can take a look at https://github.com/btrkeks/dictpopup_browser_ext.\nHowever, there isn't a proper release and it isn't thoroughly tested yet.\n\n## Contact\n\nIf you are having trouble setting up the program, don't hesitate to open up\nan [issue](https://github.com/btrkeks/dictpopup/issues) or write me an [email](mailto:butterkeks@fedora.email).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fajatt-tools%2Fdictpopup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fajatt-tools%2Fdictpopup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fajatt-tools%2Fdictpopup/lists"}