Skip to content

A free, open-source, offline Cantonese Dictionary for Windows, Mac, and Linux. Qt, SQLite. C++ and Python.

License

Notifications You must be signed in to change notification settings

freestanding-binary/jyut-dict

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jyut Dictionary - A free, open-source, offline Cantonese dictionary

/jyːt ˈdɪkʃənɛɹi/

Look up words from multiple dictionaries in Cantonese or Mandarin, with Traditional Chinese, Simplified Chinese, Jyutping, Pinyin, and English input.

Available for macOS, Windows, and Ubuntu.

Features

Vast number of entries.

Jyut Dictionary gives you access to CEDICT, CC-CANTO, words.hk 粵典, the Unihan database, 開放詞典, and Chinese sentences from Tatoeba, all completely offline. Plus, you can download and add more dictionaries to the program. That's over 200,000 entries and 100,000 sentences to search from!

Search quickly.

Results appear in a list as you type, so it's faster and easier to find what you're looking for. Plus, your search history is saved if you want to go back to a word you've looked up before.

Search with your preferred input method.

Jyut Dictionary supports entry with Traditional Chinese, Simplified Chinese, Jyutping, Pinyin, and English.

Localized.

Use the dictionary in English, French, Simplified and Traditional Cantonese, or Simplified and Traditional Chinese.

Customizable.

Prefer to see only Traditional Chinese? Maybe hide Pinyin? Change the colours of the words or disable them altogether? Do that with a plethora of settings options!

Project structure

The project contains two subdirectories under src: dictionaries, and jyut-dict.

dictionaries

This folder contains several Python3 scripts that convert the various online Cantonese/Written Chinese dictionaries into the dictionary format used by Jyut Dictionary. However, for copyright reasons, data for these sources may not be included in this repository. Selected sources include:

jyut-dict

This folder contains the source code for the program, and a Qt Creator project file. Files are divided into several subdirectories:

  • components: UI components, such as the list view or search bar.
  • dialogs: dialogs, such as the "update available" notification dialog.
  • logic: definitions for search and entry classes, as well as other backend logic.
  • platform: platform-specific files, such as Info.plist for the macOS application bundle.
  • resources: databases, icons, and images.
  • windows: UI windows of the program, such as the main window.

Build and run

This project requires Qt 5.15.

Before building the application, you must build the dictionary database using parse-set.py (for CEDICT + CC-CANTO) or parse-individual.py (for CFDICT/HanDeDict). Read the README in src/dictionaries/cedict for instructions, then place the generated database, named dict.db, in src/jyut-dict/resources/db/.

Qt Creator (macOS, Ubuntu, Windows)

Import the project to Qt Creator, then run. Add DEFINES+="PORTABLE" to the QMake configuration if you would like to isolate your debug build from any system files.

Command line (macOS, Ubuntu)

macOS
  1. Generate a Makefile from jyut-dict.pro: qmake jyut-dict.pro
  • Note: you may need the full path of qmake. Search in Spotlight to find the appropriate version, which on 64-bit Macs is the qmake binary under in the clang_64 folder.
  1. Make with make. A .app application bundle will appear in the directory where you ran this command, which you can use open to run.
Ubuntu
  1. Generate a Makefile from jyut-dict.pro: qmake jyut-dict.pro
  2. Make with make. A Linux executable will appear in the directory where you ran this command.

Packaging for release

See the READMEs for each platform under src/jyut-dict/platform/<platform> for instructions on packaging the built executable.

On the roadmap

See the Github issues and projects for more information!

About

A free, open-source, offline Cantonese Dictionary for Windows, Mac, and Linux. Qt, SQLite. C++ and Python.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 72.5%
  • Python 25.6%
  • QMake 1.2%
  • Shell 0.3%
  • Batchfile 0.1%
  • Objective-C++ 0.1%
  • Other 0.2%