Giter Club home page Giter Club logo

wikit's Introduction

Wikit Application Icon

Wikit is a free and open-source dictionary program that enable you translate word for different languages


wikit contains the following components

  • Wikit CLI

    A CLI tool which can be used to create wikit dictionary from plain text or other dictionary format.

  • Wikit Desktop

    Desktop application for Windows, Linux and MacOS which is developed using tauri and yew.

    wikit main screen

  • Wikit Mobile

    Mobile application for Android, it's under planning.

Installation and Usage

You can download Wikit CLI and Wikit Desktop from Release page.

To install dictionary, see Wikit Introduction for detail.

For Linux user, you can create a file in path ~/.local/share/applications/com.zhqli.wikit.desktop (create if the path does not exist) with the following content:

#!/usr/bin/env xdg-open

[Desktop Entry]
Name=Wikit Desktop
Comment=A universal dictionary
Path=/path/to/wikit
Exec=/path/to/wikit/wikit-desktop.AppImage 
Terminal=false
Type=Application
Categories=Utility;
Keywords=dictionary;dict;

You should change Path and Exec to your own, and run update-desktop-database

update-desktop-database ~/.local/share/applications

after that you can open wikit desktop from your dash.

If you are bother with the manual installation on linux, you can install it from flathub.

For Windows user, you must additionally install webview2 and vc_redist.x86 or vc_redist.x64.

Developement

Install following tools

cargo install tauri-cli trunk

# rust for android target
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android

# sdkmanager is from cmdline-tools https://developer.android.com/studio/command-line
sdkmanager "platforms;android-31" "platform-tools" "build-tools;31.0.0" "cmake;3.22.1" "ndk;25.1.8937393"

Create a file named .env under directory desktop/ui with content

BROWSER=none
PORT=8080

To develop wikit CLI

cd cli
cargo build

To develop wikit desktop

cd desktop
cargo tauri dev

To develop wikit mobile

cd android
make start

Building

To build wikit CLI

cd cli
cargo build --release

To build wikit desktop

cd desktop
cargo tauri build

To build wikit mobile

cd android
make release

License

MIT

wikit's People

Contributors

ikey4u avatar proletarius101 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wikit's Issues

Stylesheet not working after converting the mdx file to wikit file.

It seems like wikit only recognize the wikit format dictionary.
So I had to convert my mdx file to wikit file using this command ./wikit dict --create -o ./LDOCE5.wikit LDOCE5.mdx and loaded it into wikit desktop.
But in the end, I found that the style is quite different between the Eudict and the Wikit Desktop.
Did i do something wrong ?

image

Question about mdx 2.0

Hi,

I noticed the README mentioned the original mdx structure described by Xiaoqiang Wang and something called mdx 2.0. Is Xiaoqiang Wang's description considered 1.0? What's the difference between them? I'm a little confused as mdx is a pretty old file type and the original author started using a newer version in his mdict program several years ago. But the file structure of that version hasn't been reverse-engineered. Is mdx 2.- refer to this newer file format?

Thanks.

an ASCII version under TUI?

It can be invoked by vim or emacs via ssh under tui!

Like a doc&dict format as python rich: snap or recording terminal video, ALL IN UTF-8 chars, under TERMINAL!

Small, concise, elegant!

image

Wikit 词典格式提案

wikit.db: sqlite 格式

  一共三列, 如下所示

      key, value_offset, value_size

  这里的 key 必须是唯一的不能重复的, 其值可以是单词, 图片名称, 音频名称,
  value_offset 和 value_size 分别表示对应值在 wikit.data 中的偏移地址和大小,
  比如当 key 为单词时, value_offset 就表示其释义在 wikit.data 中的偏移地址以及释义长度,
  当 key 为图片名称时, value_offset 就表示图片在 wikit.data 中的偏移地址及图片大小.

wikit.cache: 用户查询缓存, 也就是 wikit.db 的一个子集

wikit.data: binary

  meanings[0], meanings[1], ...
  imagns[0], images[1], ...
  audios[0], audios[1], ...

Is there any chance to publsh a Rust library?

Hi! Thanks for your great job!

I am looking for a MDX a parser/reader/seach engine. From the README.md, I think you've already finished this job.
I think it would be helpful for developers and it also makes your architecture cleaner.

multi css unavailable

It should act like https://forum.freemdict.com/t/topic/9947

But it acts like plain text.

My config:

name = "LDOCE_5th"
version = ""
authors = ["fearfare090807", "Sunny1"]
distributors = [""]
description = ""
homepage = ""
css = "LM5style.css, LM5style_switch.css, LM5style_show.css"
js = "jquery-3.2.1.min.js, LM5Switch.js"

Also, where to add its .ini file?

Tried:

  1. clean dir: static
  2. recompile wikit

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.