Skip to content

Releases: wlh320/rime-ls

v0.4.0

14 Sep 05:29
Compare
Choose a tag to compare

v0.4.0

Fix

  • 改进文件 didChange 的判断,减少 unwrap() 报错
  • 避免代码中硬编码用户目录
  • 移除部分不必要的类型转换
  • 修复第一次补全无法触发方案选单的问题

Feat

  • 放弃 Rime* 这种老 API,转用新版本 API
  • 可以通过 Github Actions 构建的 Docker 镜像来使用 rime-ls 了
  • 增加新的配置项 show_order_in_label 用于配置补全项不显示数字 (#28)

Doc

  • NixOS 下的安装使用指南 (Thanks to definfo #32 #33)
  • fix typo (Thanks to evpeople #34)

Chore

  • 加入 Cargo.lock 便于可重复构建 (Thanks to definfo #32)
  • 改进 Dockerfile,基于 Alpine 减小镜像大小 (23 MB)

What's Changed

New Contributors

Build

On my PC, script:

LIBRIME_VER=1.11.2
LIBRIME_HASH=5b09f35
PROJECT_PATH=~/build/rime-ls
RIME_LS_VER=0.4.0

# download and extract librime
mkdir librime
wget https://github.com/rime/librime/releases/download/${LIBRIME_VER}/rime-${LIBRIME_HASH}-macOS-universal.tar.bz2 \
    -O librime/mac.tar.bz2
mkdir librime/mac
tar xvjf librime/mac.tar.bz2 -C librime/mac
wget https://github.com/rime/librime/releases/download/${LIBRIME_VER}/rime-${LIBRIME_HASH}-Windows-msvc-x64.7z \
    -O librime/msvc.7z
7z x librime/msvc.7z -olibrime/msvc

# build
## linux
LIBRIME_INCLUDE_DIR=/usr/include LIBRIME_LIB_DIR=/usr/lib cargo zigbuild --target x86_64-unknown-linux-gnu.2.17 --release
## windows msvc
LIBRIME_INCLUDE_DIR=${PROJECT_PATH}/librime/msvc/dist/include LIBRIME_LIB_DIR=${PROJECT_PATH}/librime/msvc/dist/lib cargo xwin build --target x86_64-pc-windows-msvc --release
## macos
LIBRIME_INCLUDE_DIR=${PROJECT_PATH}/librime/mac/dist/include LIBRIME_LIB_DIR=${PROJECT_PATH}/librime/mac/dist/lib cargo zigbuild --target universal2-apple-darwin --release

# compress artifacts
sha256sum target/x86_64-pc-windows-msvc/release/rime_ls.exe
sha256sum target/universal2-apple-darwin/release/rime_ls
sha256sum target/x86_64-unknown-linux-gnu/release/rime_ls

tar czvf target/rime-ls-v${RIME_LS_VER}-x86_64-unknown-linux-gnu.tar.gz -Ctarget/x86_64-unknown-linux-gnu/release/ rime_ls
tar cjvf target/rime-ls-v${RIME_LS_VER}-universal2-apple-darwin.tar.bz2 -Ctarget/universal2-apple-darwin/release/ rime_ls
7z a ./target/rime-ls-v${RIME_LS_VER}-x86_64-pc-windows-msvc.7z ./target/x86_64-pc-windows-msvc/release/rime_ls.exe

Checksum

f49dd454ee063c9a1e21b3e7311d91225f2280f7756558d412de190e682c5033  target/x86_64-pc-windows-msvc/release/rime_ls.exe
8841326499ca0f2274a7287b447904c5cc1c7d831385d7ff0d8372a5ee68d645  target/universal2-apple-darwin/release/rime_ls
4c7d929df067daa4dd8ba4f1d078879f55a667457393a683533927e4c9e69c6c  target/x86_64-unknown-linux-gnu/release/rime_ls

Full Changelog: v0.3.0...v0.4.0

v0.3.0

08 May 04:31
Compare
Choose a tag to compare

What's Changed

  • fix: continuous input in some editors
    • add option long_filter_text for some editors (zed, helix)
    • add option show_filter_text_in_label for some editor (zed)
  • feat: add Dockerfile to support using over tcp rpc by @Zwlin98 in #17
  • fix: find raw_input from the end by @TwIStOy in #21
  • fix: a dashmap deadlock (#16)
  • doc: change doc about how to use rime-ls on MacOS by @evpeople in #25

New Contributors

Full Changelog: v0.2.4...v0.3.0

Build

On my PC, script:

LIBRIME_VER=1.11.2
LIBRIME_HASH=5b09f35
PROJECT_PATH=~/build/rime-ls
RIME_LS_VER=0.3.0

# download and extract librime
mkdir librime
wget https://github.com/rime/librime/releases/download/${LIBRIME_VER}/rime-${LIBRIME_HASH}-macOS-universal.tar.bz2 \
    -O librime/mac.tar.bz2
mkdir librime/mac
tar xvjf librime/mac.tar.bz2 -C librime/mac
wget https://github.com/rime/librime/releases/download/${LIBRIME_VER}/rime-${LIBRIME_HASH}-Windows-msvc-x64.7z \
    -O librime/msvc.7z
7z x librime/msvc.7z -olibrime/msvc

# build
## linux
LIBRIME_INCLUDE_DIR=/usr/include LIBRIME_LIB_DIR=/usr/lib cargo zigbuild --target x86_64-unknown-linux-gnu.2.17 --release
## windows msvc
LIBRIME_INCLUDE_DIR=${PROJECT_PATH}/librime/msvc/dist/include LIBRIME_LIB_DIR=${PROJECT_PATH}/librime/msvc/dist/lib cargo xwin build --target x86_64-pc-windows-msvc --release
## macos
LIBRIME_INCLUDE_DIR=${PROJECT_PATH}/librime/mac/dist/include LIBRIME_LIB_DIR=${PROJECT_PATH}/librime/mac/dist/lib cargo zigbuild --target universal2-apple-darwin --release

# compress artifacts
sha256sum target/x86_64-pc-windows-msvc/release/rime_ls.exe
sha256sum target/universal2-apple-darwin/release/rime_ls
sha256sum target/x86_64-unknown-linux-gnu/release/rime_ls

tar czvf target/rime-ls-v${RIME_LS_VER}-x86_64-unknown-linux-gnu.tar.gz -Ctarget/x86_64-unknown-linux-gnu/release/ rime_ls
tar cjvf target/rime-ls-v${RIME_LS_VER}-universal2-apple-darwin.tar.bz2 -Ctarget/universal2-apple-darwin/release/ rime_ls
7z a ./target/rime-ls-v${RIME_LS_VER}-x86_64-pc-windows-msvc.7z ./target/x86_64-pc-windows-msvc/release/rime_ls.exe

Checksum

sha256

f2e47ad89a9b98e9a43ca190d397d48279a034fe7a780dac38f008e05a116789  target/x86_64-pc-windows-msvc/release/rime_ls.exe
eb7f3fb07c65202eb50c877c6d819e44aa4676b21ee78619552e6c2861b570c6  target/universal2-apple-darwin/release/rime_ls
f9bcd9ad35a7f05f71522f61f6d6d6dc6cbc42aad3d8cac4f8e25dee87a0b500  target/x86_64-unknown-linux-gnu/release/rime_ls

v0.2.4

10 Oct 15:31
Compare
Choose a tag to compare

v0.2.4

Fix

  • 重要 修复了不定期发生的补全无法触发的问题 #14
  • 修复了 termux 环境下的构建失败 #8

Feat

  • 允许通过新配置项 paging_characters 自定义触发补全的字符,主要用途是翻页 #13

Chore

  • 有了基础的 GitHub CI #9 (Thanks to eagleoflqj)

Checksum

rime-ls-0.2.4-win32:

$ sha256sum rime_ls.exe
e6546c8b802cfb223f7f8016a7f1929c9d910cddc29a5451b6843fd9c592aa70 rime_ls.exe

rime-ls-0.2.4-x86_64-unknown-linux-gnu:

$ sha256sum rime_ls
0fde74204644deea80ca4edb4e86d5519e90b6926a7c3b7b18395eb6b0ac4068 rime_ls

v0.2.3

06 Apr 14:57
Compare
Choose a tag to compare

v0.2.3

Breaking Changes

  • 不再默认选中第一个候选项,若要选中,通过新配置项 preselect_first 进行配置

Feat

  • 提升了在五笔和音形输入方案下的体验 #7 (Thanks to TwIStOy)
    • 增加了新配置项 max_tokens,强制在删除到一定长度时重建一次候选词
    • 增加了新配置项 always_incomplete,每次输入重建候选词,防止过滤代替候选词重建

Doc

  • 增加了 macOS 系统下的编译步骤 #6 (Thanks to rainzm)
  • 更新了 neovim 配置样例,在 nvim-cmp 下的体验更接近系统输入法
    • 空格汉字上屏之外,新增回车原始串上屏 #7 (Thanks to TwIStOy)
    • 使上述行为只对 rime-ls 提供的补全项生效,不影响其他补全

Checksum

rime-ls-0.2.3-win32:

$ sha256sum rime_ls.exe
3d7a78c3f65375b8aff9ede1f81d3bc1d57191d7cbe5cf49a7bc1c69d9903c9f rime_ls.exe

rime-ls-0.2.3-x86_64-unknown-linux-gnu:

$ sha256sum rime_ls
aaf984b44255cdf637eab4fd0d90c23ca2946f02ff91f42fc2da23d05e36c93e rime_ls

v0.2.2

06 Mar 07:13
Compare
Choose a tag to compare

rime-ls v0.2.2

Fix

  • 修复了因内存提前释放导致的日志文件名出错
  • 修复了一些特殊场景下对已提交文字的判断错误

Feat

  • 升级 tower-lsp0.19.0 版本以支持 LSP 3.17.0
  • 支持 LSP 3.17.0 的 label_details 特性,用于显示每一个候选项的 comment
  • 默认选中第一个候选项

Checksum

rime-ls-0.2.2-win32:

$ sha256sum rime_ls.exe
723a3b8d98cc2ad4f3bd54f7d03bd0355a85aa6ea7383f1b35e6841f378e1137 rime_ls.exe

rime-ls-0.2.2-x86_64-unknown-linux-gnu:

$ sha256sum rime_ls
1a17eae326b9525ac034e025a1372e983d3fdef64bdaebf3d898dd82197d8a00 rime_ls

v0.2.1

03 Mar 03:16
Compare
Choose a tag to compare

rime-ls v0.2.1

Fix

  • 修复了因状态判断出错导致的删除输入后同一位置无法继续输入的问题
  • 修复了进入「方案选单」后必须选择才能退出的问题

Breaking Changes

  • 启动时不再自动更新用户词频,改为完全手动操作

Checksum

rime-ls-0.2.1-win32:

$ sha256sum rime_ls.exe
d7b600aef1232f51a96745d8a6f093d842ea3fda942434d462eac6009275b624 rime_ls.exe

rime-ls-0.2.1-x86_64-unknown-linux-gnu:

$ sha256sum rime_ls
04dad18bf4132b3ed9928f84433c174c287f3e0c790a1087ec42028262df112e rime_ls

v0.2.0

27 Feb 13:48
Compare
Choose a tag to compare

rime-ls v0.2.0

Feat

  • 与 Rime 的 API 保持同步,不再是只获取候选项
    • 支持将通过数字选择的候选项提交给 Rime,从而影响用户词频
    • 支持长句子的分多次选择
  • 支持 Rime 的「方案选单」功能
  • 可能有理论上的性能提升 (不再每次打字都创建 session,未验证效果)

Breaking Changes

  • 配置项 max_candidates 不再生效,改为遵从 Rime 配置的每页候选项个数

Checksum

rime-ls-0.2.0-win32:

$ sha256sum rime_ls.exe
3193584d7d6d2df149a568e7f848d6428cf650e629b6472da7b4db26839c773b rime_ls.exe

rime-ls-0.2.0-x86_64-unknown-linux-gnu:

$ sha256sum rime_ls
5b970c3e2cdcc98db294fe7ef1bd211d9c68934edbcd12d5d93ad8fc730f83aa rime_ls

v0.1.3

09 Feb 05:11
Compare
Choose a tag to compare

rime-ls v0.1.3

Fix

  • 更好的错误处理
  • 修复了几处从 rust 传指针给 C 时的典型内存泄漏

Feat

  • 配置项的路径现在支持展开波浪线 ~ 为家目录
  • 支持通过 TCP 远程使用 (明文传输,安全,需要配合加密的 TCP 信道)
  • 可能有理论上的性能提升 (未验证)

Checksum

rime-ls-0.1.3-win32:

$ sha256sum rime_ls.exe
46915552d1c87f1d71689d0e8be4d81bbdd4d29cc105614bc21f3a28d4636536 rime_ls.exe

rime-ls-0.1.3-x86_64-unknown-linux-gnu:

$ sha256sum rime_ls
7a4eaefdf6e0e996654c705e5d271cd2cb4a01e4a103251be003f7327ebce734 rime_ls

v0.1.2

23 Jan 05:37
Compare
Choose a tag to compare

rime-ls v0.1.2

Breaking Changes

  • execute_command 所支持的命令的名称都增加了 rime-ls. 的前缀

Fix

  • 修复了因更新位置在边界处导致的 LSP server 不能同步更新文档内容的问题

Feat

  • 现在可以通过命令手动触发用户目录同步
  • 执行 rime-ls.toggle-rime 命令后会返回执行后的当前状态

tested on Linux / Windows with neovim / vim / vscode

$ sha256sum rime_ls.exe
c7344a53777eb89411275701f522475343dc6c95df79ef17453c5882969c3ef4 rime_ls.exe

v0.1.1

20 Jan 01:58
Compare
Choose a tag to compare

rime-ls v0.1.1

Fix

  • 全局模式下,补全时会删掉拼音前未提交的标点符号

Feat

  • 触发模式下,光标前有非英文字符时可以自动触发补全继续输入

tested on Linux / Windows with neovim / vim / vscode

$ sha256sum rime_ls.exe
86690591b81e657010e7c3bc1fc52f18e461dbc978aeb11625490e50cf44634e rime_ls.exe