A cross-platform translator application (Telegram Group)
- ์ฌ์ฉ๋ฒ
- ๊ธฐ๋ฅ
- ์ง์ ์๋น์ค
- ํ๋ฌ๊ทธ์ธ ์์คํ
- ์ค์น
- ์ธ๋ถํธ์ถ
- Wayland ์ง์
- ๋ค๊ตญ์ด
- ๊ธฐ์ฌ์
- ๊ฐ์ฌํ ์ฌ๋๋ค
์ ํ์์ญ ์๋๋ฒ์ญ | ์ ๋ ฅ๋จ์ด ๋ฒ์ญ | ์ธ๋ถํธ์ถ |
---|---|---|
๋ฌธ์ฅ์ ์ ํํ๊ณ ๋ฒ์ญ๋จ์ถํค๋ฅผ ๋๋ฆ ๋๋ค | ๋ฒ์ญ์ฐฝ์ ์ด๊ณ , ๋ฒ์ญํ ๋ฌธ์ฅ์ ์ ๋ ฅํฉ๋๋ค | ๋ค๋ฅธ ํ๋ก๊ทธ๋จ๊ณผ ์ฐ๋ํ์ฌ ํจ์จ์ ์ผ๋ก ์ฌ์ฉ๊ฐ๋ฅํฉ๋๋ค, External Calls ์ฐธ๊ณ |
- ์ฌ๋ฌ ๋ฒ์ญ ์ฌ์ดํธ๋ฅผ ์ฌ์ฉํ ๋์๋ฒ์ญ (์์ธ ํ์ด์ง)
- ๋ฌธ์์ธ์ OCR (์์ธ ํ์ด์ง)
- ํ ์คํธ ์์ฑ ๋ณํ (์์ธ ํ์ด์ง)
- ์ฌ์ ์ฑ์ ๋ด๋ณด๋ด๊ธฐ (์์ธ ํ์ด์ง)
- ์ธ๋ถํธ์ถ (External Calls)
- ํ๋ฌ๊ทธ์ธ ์์คํ (Plugin System)
- ์ด์์ฒด์ ์ง์ - Windows, macOS and Linux
- Wayland ์ง์ (Tested on KDE, Gnome and Hyprland)
- ๋ค์ค์ธ์ด ์ง์
- OpenAI
- ChatGLM
- Gemini Pro
- Ollama (Offline)
- Ali Translate
- Baidu Translate
- Caiyun
- Tencent Transmart
- Tencent Interactive Translate
- Volcengine Translate
- NiuTrans
- Google Translate
- Bing Translate
- Bing Dictionary
- DeepL
- Youdao
- Cambridge Dictionary
- Yandex
- Lingva (Plugin)
- Tatoeba (Plugin)
- ECDICT (Plugin)
์ถ๊ฐํญ๋ชฉ์ ๋ค์์ ์ฐธ๊ณ Plugin System
- System OCR (Offline)
- Windows.Media.OCR on Windows
- Apple Vision Framework on MacOS
- Tesseract OCR on Linux
- Tesseract.js (Offline)
- Baidu
- Tencent
- Volcengine
- iflytek
- Tencent Image Translate
- Baidu Image Translate
- Simple LaTeX
- OCRSpace (Plugin)
- Rapid (Offline Plugin)
- Paddle (Offline Plugin)
์ถ๊ฐํญ๋ชฉ์ ๋ค์์ ์ฐธ๊ณ Plugin System
์ถ๊ฐํญ๋ชฉ์ ๋ค์์ ์ฐธ๊ณ Plugin System
์ถ๊ฐํญ๋ชฉ์ ๋ค์์ ์ฐธ๊ณ Plugin System
์ ํด์ง ๊ธฐ๋ณธ ์ค์ ํญ๋ชฉ ์ธ์, -ํ๋ฌ๊ทธ์ธ ์์คํ -์ ํตํด ์ฌ์ฉ์๊ฐ ์ํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์ ์์ต๋๋ค.
์ค์น๊ฐ๋ฅํ ํ๋ฌ๊ทธ์ธ ํญ๋ชฉ์ ๋ค์์ ์ฐธ๊ณ ํ์ธ์ Plugin List. ๊ทธ๋ฆฌ๊ณ ํ์ํ ํญ๋ชฉ์ ๋ค์ด๋ฐ์ผ์ญ์์ค.
ํ๋ฌ๊ทธ์ธ์ ํ์ฅ์๋ .potext
์
๋๋ค. ๋ค์ด๋ฐ์ .potext
ํ์ฅ์ ํ์ผ์ ํ๋ก๊ทธ๋จ ์ค์ ๋ฉ๋ด - ์๋น์ค - Add External Plugin - Install External Plugin ๋ฉ๋ด์์ ๋ฑ๋กํ์ฌ ์ค์นํฉ๋๋ค. ํ์ผ์ ๋ฑ๋กํ๋ฉด ํด๋น ํญ๋ชฉ์ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉ๋ชฉ๋ก์ ํ์๊ฐ ๋์ด ์ฌ์ฉ์ด ๊ฐ๋ฅํด ์ง๋๋ค.
-
ํน์ ๋ชจ๋์ ๋ถ๋ฌ์ค์ง ๋ชปํ ๋ (Windows)
C++ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์ ๋ ์ด๋ฌํ ๋ฌธ์ ๊ฐ ์ฃผ๋ก ๋ฐ์ํฉ๋๋ค. ๋ค์ํ์ด์ง๋ฅผ ๋ฐฉ๋ฌธํ์ฌ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํฉ๋๋ค. ์ฐธ๊ณ ํ์ด์ง
-
์ ํจํ์ง ์์ Win32 ํ๋ก๊ทธ๋จ (Windows)
์์คํ ๋๋ ํ๋ก๊ทธ๋จ๊ณผ ํธํ๋์ง ์๋ ํ๋ฌ๊ทธ์ธ์ ๋ค์ด๋ฐ์ ์ค์นํ ๊ฒฝ์ฐ์ ๋๋ค. ํ๋ฌ๊ทธ์ธ์์ ์ ์ ํ ํ์ผ์ ๋ค์ด๋ฐ์๋์ง ํ์ธํ์๊ณ ์ฌ์ค์น ํ์ญ์์ค.
ํ ํ๋ฆฟ Template ํญ๋ชฉ์์ ๋ค์ํ ํญ๋ชฉ์ ํ๋ฌ๊ทธ์ธ๋ค์ ์ฐพ์ ์ ์์ต๋๋ค Plugin List. ์ด ๊ณณ์์ ํ์ํ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ์ญ์์ค.
winget install Pylogmon.pot
-
์ต์ ๋ฒ์ ๋ค์ด๋ก๋ ํ์ด์ง Release์์
.exe
ํ์ผ์ ๋ค์ด๋ฐ์ต๋๋ค.- 64-bit ๋ฒ์ ์ฌ์ฉ์,
pot_{version}_x64-setup.exe
- 32-bit ๋ฒ์ ์ฌ์ฉ์,
pot_{version}_x86-setup.exe
- arm64 ๋ฒ์ ์ฌ์ฉ์,
pot_{version}_arm64-setup.exe
- 64-bit ๋ฒ์ ์ฌ์ฉ์,
-
๋๋ธํด๋ฆญํ์ฌ ์ค์น๋ฅผ ํฉ๋๋ค.
-
์ค์น ํ ํ๋ก๊ทธ๋จ์ฐฝ์ด ๋ณด์ด์ง ์๊ฑฐ๋ ์ค๋ฅธ์ชฝ ํ๋จ ์์คํ ํธ๋ ์ด ํญ๋ชฉ์ ์์ด์ฝ์ด ํ์๋์ง ์์ ๊ฒฝ์ฐ,
์๋์ฐ-๋ธ๋ผ์ฐ์ ์์ ์ฌ์ฉํ๋ WebView2 ๊ธฐ๋ฅ์ด ์ค์น๋์ง ์์๊ฑฐ๋ ๋นํ์ฑํ ๋ ๊ฒฝ์ฐ ์ ๋๋ค. ์ด ๋๋ WebView2 ๋ฅผ ์ค์นํ๊ฑฐ๋ ๊ธฐ๋ฅ์ ์ฌ์ค์ ํ์ญ์์ค.
ํ์ฌ/๊ธฐ์ ์ฌ์ฉ์์ ๊ฒฝ์ฐ WebView2 ๊ธฐ๋ฅ์ด ์ค์น๋์ง ์์๊ฑฐ๋ ๋นํ์ฑํ๋ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ๋ค์์ ์ค์นํ์ญ์์ค. WebView2 version
pot_{version} at [Release](https://github.com/pot-app/pot-desktop/releases/latest) _{arch}_fix_webview2_runtime-setup.exe
๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์๋ ๊ฒฝ์ฐ, Windows 7 compatibility mode์์ ์๋ํด ๋ณด์ญ์์ค.
- ํญ์ ์ถ๊ฐ:
brew tap pot-app/homebrew-tap
- ์ค์น:
brew install --cask pot
- ์ ๋ฐ์ดํธ:
brew upgrade --cask pot
- ์ต์ ๋ฒ์ ๋ค์ด๋ก๋ ํ์ด์ง Release์์
.dmg
ํ์ผ์ ๋ค์ด๋ฐ์ต๋๋ค. (M1 ์ฌ์ฉ์์ด๋ฉด, ๋ค์ ํ์ผ๋ช ์ ๋ค์ด๋ก๋ ํฉ๋๋คpot_{version}_aarch64.dmg
, ๊ธฐํ ์ฌ์ฉ์๋ ๋ค์ ํ์ผ์ ๋ค์ด๋ก๋ ํฉ๋๋ค.pot_{version}_x64.dmg
) - ๋๋ธํด๋ฆญํ์ฌ ์ค์น๋ฅผ ํฉ๋๋ค.
-
"pot" ์ ์ด ์ ์๋ ๊ฒฝ์ฐ๋ ๊ฐ๋ฐ์ ์ธ์ฆ์ด ๋์ง ์์์ ์ ๋๋ค.
์ทจ์ ๋ฒํผ์ ๋๋ฅด๊ณ ์ค์ ๋ฉ๋ด๋ก ๋ค์ด๊ฐ๋๋ค -> ๊ฐ์ธ์ ๋ณด ๋ฐ ๋ณด์ ๋ฉ๋ด์์ ์ค์ ์ ํฉ๋๋ค. ์ด๊ธฐ ๋ฒํผ์ ํด๋ฆญํ ๋ค์ ํ์ ์ฐฝ์์ ์ด๊ธฐ ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค. ๊ทธ ์ดํ์๋ ํฌํธ๋ฅผ ์ด ๋ ๋ ์ด์ ํ์ ๊ฒฝ๊ณ ๊ฐ ํ์๋์ง ์์ต๋๋ค.
๊ฐ์ธ์ ๋ณด ๋ฐ ๋ณด์์์ ์์ ์ต์ ์ ์ฐพ์ ์ ์๊ฑฐ๋ Apple Silicon ์ปดํจํฐ์์ ํ์ผ ์์๊ณผ ๊ฐ์ ์ค๋ฅ ๋ฉ์์ง๊ฐ ํ์๋๋ ๊ฒฝ์ฐ. Terminal.app์ ์ด๊ณ ๋ค์ ๋ช ๋ น์ ์ ๋ ฅํ ๋ค์(์ค๊ฐ์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํด์ผ ํ ์๋ ์์), pot์ ๋ค์ ์์ํฉ๋๋ค:
sudo xattr -d com.apple.quarantine /Applications/pot.app
-
์ด ๋๋ง๋ค ๊ถํ ํ๋กฌํํธ๊ฐ ๋ํ๋๊ฑฐ๋ ๋ฐ๋ก ๊ฐ๊ธฐ ๋ฒ์ญ์ ์ํํ ์ ์๋ ๊ฒฝ์ฐ ์ค์ -> ๊ฐ์ธ์ ๋ณด ๋ฐ ๋ณด์ -> ์ง์ ๊ธฐ๋ฅ์ผ๋ก ์ด๋ํ์ฌ Pot์ ์ ๊ฑฐํ ๋ค์ Pot์ ๋ค์ ์ถ๊ฐํ์ธ์..
๋ฆฌ๋
์ค ํ๊ฒฝ์ ์ํด deb
ํ์ผ์ด ์ ๊ณต๋ฉ๋๋ค
์ฐธ๊ณ : ๋ ๊ฐ์ง ๋ฒ์ ์ด ์ ๊ณต๋ฉ๋๋ค. glibc2.28
๊ธฐ๋ฐ์ universal
๊ณผ openssl-1.1
๋ฒ์ ์
๋๋ค. ํ๋ก๊ทธ๋จ์ด ๋น์ ์ ์ปดํจํฐ์์ ์ ์์ ์ผ๋ก ์คํ๋์ง ์๋๋ค๋ฉด dependency์ ๊ด๋ จ๋ ๋ฌธ์ ์ผ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. universal
๋ฒ์ ์ ์ฌ์ฉํ๋ฉด ์ด์ ๋ฒ์ ์ dependency๋ฅผ ์ฌ์ฉํ์ฌ ์คํํ๋ฉด ๋๋ถ๋ถ ์คํ์ด ๊ฐ๋ฅํฉ๋๋ค.
Warning
In newer version of Webkit2Gtk (2.42.0), Because Nvidia Proprietary drives are not fully implemented DMABUF, it will cause failure to start and crash.
Please downgrade or add the WEBKIT_DISABLE_DMABUF_RENDERER=1
environment variable to /etc/environment
(or other places where environment variables are set) to turn off the use of DMABUF.
- View on AUR
Use aur helper๏ผ
yay -S pot-translation # or pot-translation-bin or pot-translation-git
# or
paru -S pot-translation # or pot-translation-bin or pot-translation-git
- If you are using
archlinuxcn
, you can install directly using pacman:
sudo pacman -S pot-translation
Warning
์์คํ ํธ๋ ์ด ์์ด์ฝ์ด Flatpak์ ํตํด ์ค์นํ๋ฉด ํ์๋์ง ์์ต๋๋ค.
Pot์ ์๋ฒฝํ HTTP ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํตํด ๋ค๋ฅธ ํ๋ก๊ทธ๋จ๊ณผ ์ฐ๋ํด์ ์ฌ์ฉ์ด ๊ฐ๋ฅํฉ๋๋ค. ํ ํ๋ก๊ทธ๋จ์ HTTP requests๋ฅผ 127.0.0.1:port
์ฃผ์๋ก ๋ณด๋ด์ด ํ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ํฌํธ๋ 60828
์
๋๋ค. ์ด๋ ์ฌ์ฉ์ ์ค์ ์์ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํฉ๋๋ค.
POST "/" => Translate given text (body is text to translate)
GET "/config" => Open settings
POST "/translate" => Translate given text (same as "/")
GET "/selection_translate" => Translate selected text
GET "/input_translate" => Open input translation
GET "/ocr_recognize" => Perform OCR on screenshot
GET "/ocr_translate" => Perform translation on screenshot
GET "/ocr_recognize?screenshot=false" => OCR without taking screenshot
GET "/ocr_translate?screenshot=false" => Translate screenshot without taking screenshot
GET "/ocr_recognize?screenshot=true" => OCR with screenshot
GET "/ocr_translate?screenshot=true" => Translate screenshot
-
์ ํ์์ญ ์๋๋ฒ์ญ:
"์ ํ์์ญ ์๋๋ฒ์ญ"์ ํธ์ถํ๋ ค๋ฉด ๊ฐ๋จํ
127.0.0.1:port
์ ํธ์ถ์์ฒญ์ ํฉ๋๋ค:E.g. curl ์ฌ์ฉ์:
curl "127.0.0.1:60828/selection_translate"
OCR ๋ฐ ๋ฒ์ญ์ ์ํด์ pot์ ์์ฒด ์คํฌ๋ฆฐ์ท(ํ๋ฉด์บก์ณ)๊ธฐ๋ฅ์ ์ฌ์ฉํ์ง ์์ ์ ์์ต๋๋ค. ์์ฒด ํ๋ฉด์บก์ณ ํด์ ์ฌ์ฉํ๋ฉด ํน์ ํ๊ฒฝ์์ ์์ฒด ์คํฌ๋ฆฐ์ท ๊ธฐ๋ฅ์ด ์ ์์ ์ผ๋ก ๋์ํ์ง ์๋ ๊ฒ์ ํด๊ฒฐํ ์ ์์ต๋๋ค.
- ํ ์คํฌ๋ฆฐ์ท ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ์ฌ ํ๋ฉด์ ์บก์ณํฉ๋๋ค
- ์บก์ณํ ํ๋ฉด์ ๋ค์ ์์น์ ์ ์ฅํฉ๋๋ค.
$CACHE/com.pot-app.desktop/pot_screenshot_cut.png
- ์ธ๋ถํธ์ถ์ ํตํด ๋ฒ์ญ์์ฒญ์ ์์ฒญํฉ๋๋ค.
127.0.0.1:port/ocr_recognize?screenshot=false
$CACHE
๋ ์์คํ ์บ์ ํด๋์ ๋๋ค. e.g. ์๋์ฐ๋ ๋ค์๊ฒฝ๋ก๋ฅผ ํ์ธํ์ธ์C:\Users\{username}\AppData\Local\com.pot-app.desktop\pot_screenshot_cut.png
.
๋ฆฌ๋ ์ค์์ Flameshot์ ํ์ฉํ OCR:
rm ~/.cache/com.pot-app.desktop/pot_screenshot_cut.png && flameshot gui -s -p ~/.cache/com.pot-app.desktop/pot_screenshot_cut.png && curl "127.0.0.1:60828/ocr_recognize?screenshot=false"
- SnipDo๋ฅผ Microsoft Store ์์ ๋ค์ด๋ฐ์ ์ค์นํฉ๋๋ค.
- DSnipDo ํ์ฅํฉ์ ์ต์ ๋ฒ์ ๋ค์ด ๊ฒฝ๋ก์์ Release (pot.pbar) ๋ค์ด๋ฐ์ต๋๋ค.
- ๋๋ธํด๋ฆญํ์ฌ ์ค์นํฉ๋๋ค.
- ํน์ ๋จ์ด๋ฅผ ์ ํํ๊ฒ ๋๋ฉด, ์ ํ์์ญ์ ์ค๋ฅธ์ชฝ ์ ๋ถ๋ถ์ ๋ฒ์ญ์์ด์ฝ์ด ๋ณด์ด๊ฒ ๋ฉ๋๋ค. ํด๋ฆญํ์ฌ ๋ฒ์ญ์ ์งํํฉ๋๋ค.
- PopClip๋ฅผ App Store ์์ ๋ค์ด๋ฐ์ ์ค์นํฉ๋๋ค.
- PopClip ํ์ฅํฉ์ ์ต์ ๋ฒ์ ๋ค์ด ๊ฒฝ๋ก์์ Release (pot.popclipextz) ๋ค์ด๋ฐ์ต๋๋ค.
- ๋๋ธํด๋ฆญํ์ฌ ์ค์นํฉ๋๋ค.
- PopClip settings์์ ๊ธฐ๋ฅ์ ํ์ฑํ ํ๋ฉด ์ ํ์์ญ์ ๋ฒ์ญ์ ํ ์ ์์ต๋๋ค.
Starry๋ ์์ง ๊ฐ๋ฐ๋จ๊ณ์ ๋จธ๋ฌผ๋ฌ ์์ต๋๋ค.๋ฐ๋ผ์ ์ฌ์ฉ์๊ฐ ์ง์ ์ปดํ์ผํด์ผ ํฉ๋๋ค.
Github: ccslykx/Starry
๋ฐฐํฌํ๋ง๋ค Wayland์ ๋ํ ์ง์ ์์ค์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ pot ์์ฒด๋ก๋ ์๋ฒฝํ ํธํ์ฑ์ ๋ฌ์ฑํ ์ ์์ต๋๋ค. ํ์ง๋ง ๋ค์์ ์ ์ ํ ๊ตฌ์ฑ์ ํตํด ๊ตฌํํ ์ ์๋ ๋ช ๊ฐ์ง ์ผ๋ฐ์ ์ธ ๋ฌธ์ ์ ๋ํ ํด๊ฒฐ์ฑ ์ผ๋ก, Wayland์์ pot์ ์๋ฒฝํ๊ฒ ์คํํ ์ ์์ต๋๋ค.
ํ์ฐ๋ฆฌTauri๋ ์จ์ด๋๋Wayland๋ฅผ ์ง์ํ์ง ์๊ธฐ ๋๋ฌธ์, pot์ ๋จ์ถํค ๊ธฐ๋ฅ์ ์จ์ด๋๋Waylan์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์์คํ
๋จ์ถํค๋ฅผ ์ค์ ํ๊ณ curl
๋ก ์์ฒญ์ ๋ณด๋ด ํ์ ํธ์ถํ ์ ์์ผ๋ฉฐ, ์์ธํ ๋ด์ฉ์External Calls ์ ์ฐธ์กฐํ์ธ์.
์ผ๋ถ ์์ ์จ์ด๋๋Wayland ๋ฐ์คํฌํฑ ํ๊ฒฝ/์ฐฝ ๊ด๋ฆฌ์(์: ํ์ดํ๋๋)์์๋ pot์ ๊ธฐ๋ณธ ์ ๊ณต ์คํฌ๋ฆฐ์ท ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ๋ค๋ฅธ ์คํฌ๋ฆฐ์ท ๋๊ตฌ๋ฅผ ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ Not Using Built-in Screenshot ์น์ ์ ์ฐธ์กฐํ์ธ์.
์๋๋ ์คํฌ๋ฆฐ์ท ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํด grim
๊ณผ slurp
๋ฅผ ์ฌ์ฉํ๋ Hyprland์ ๊ตฌ์ฑ ์์์
๋๋ค:
bind = ALT, X, exec, grim -g "$(slurp)" ~/.cache/com.pot-app.desktop/pot_screenshot_cut.png && curl "127.0.0.1:60828/ocr_recognize?screenshot=false"
bind = ALT, C, exec, grim -g "$(slurp)" ~/.cache/com.pot-app.desktop/pot_screenshot_cut.png && curl "127.0.0.1:60828/ocr_translate?screenshot=false"
๋ค๋ฅธ ๋ฐ์คํฌํฑ ํ๊ฒฝ/์ฐฝ ๊ด๋ฆฌ์๋ ๋น์ทํ ์์ ์ ์ํํฉ๋๋ค.
ํ์ฌ ์จ์ด๋๋Wayland์์ ์ ํํ ๋ง์ฐ์ค ์ขํ๋ฅผ ์ป์ ์ ์๊ธฐ ๋๋ฌธ์ ๋ด๋ถ ๊ตฌํ์ด ์ ๋๋ก ์๋ํ์ง ์์ต๋๋ค. ํน์ ๋ฐ์คํฌํฑ ํ๊ฒฝ/์ฐฝ ๊ด๋ฆฌ์์ ๊ฒฝ์ฐ ์ฐฝ ๊ท์น์ ์ค์ ํ์ฌ ๋ง์ฐ์ค ์์น์ ๋ฐ๋ฅธ ์ฐฝ์ ๊ตฌํํ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์๋ ํ์ดํ๋๋Hyprland๋ฅผ ์๋ก ๋ค์ด๋ณด๊ฒ ์ต๋๋ค:
windowrulev2 = float, class:(pot), title:(Translator|OCR|PopClip|Screenshot Translate) # Translation window floating
windowrulev2 = move cursor 0 0, class:(pot), title:(Translator|PopClip|Screenshot Translate) # Translation window follows the mouse position.
Node.js >= 18.0.0
pnpm >= 8.5.0
Rust >= 1.80.0
-
repository์ ๋ณต์ฌํฉ๋๋ค
git clone https://github.com/pot-app/pot-desktop.git
-
dependencies๋ฅผ ์ค์นํฉ๋๋ค
cd pot-desktop pnpm install
-
(Only Linux) dependencies๋ฅผ ์ค์นํฉ๋๋ค
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev patchelf libxdo-dev libxcb1 libxrandr2 libdbus-1-3
-
๊ฐ๋ฐ๋ชจ๋ (Optional)
pnpm tauri dev # Run the app in development mode
-
๋น๋
pnpm tauri build # Build into installation package
- Bob Inspiration
- bob-plugin-openai-translator OpenAI API Reference
- @uiYzzi Implementation ideas
- @Lichenkass Maintaining the Deepin App Store.
- Tauri A user-friendly GUI framework.