dict: 日常更新 #666

This commit is contained in:
Dvel
2024-04-19 02:00:36 +08:00
parent 37fc48afab
commit 7d348f6a48
16 changed files with 373 additions and 2393 deletions

View File

@@ -0,0 +1,30 @@
//go:build darwin
// +build darwin
package rime
import (
"log"
"os/user"
"path/filepath"
"runtime"
)
// 获取 macOS/Windows Rime 配置目录
func getRimeDir() string {
var dir string
switch runtime.GOOS {
case "darwin": // macOS
u, err := user.Current()
if err != nil {
log.Fatalln(err)
}
dir = filepath.Join(u.HomeDir, "Library/Rime")
// case "windows": // Windows
// dir = getWeaselDir()
default:
log.Fatalf("Unsupported OS: %s so far", runtime.GOOS)
}
return dir
}

View File

@@ -0,0 +1,63 @@
//go:build windows
// +build windows
package rime
import (
"golang.org/x/sys/windows/registry"
"log"
"os"
"os/user"
"path/filepath"
"runtime"
)
// 获取 macOS/Windows Rime 配置目录
func getRimeDir() string {
var dir string
switch runtime.GOOS {
case "darwin": // macOS
u, err := user.Current()
if err != nil {
log.Fatalln(err)
}
dir = filepath.Join(u.HomeDir, "Library/Rime")
case "windows": // Windows
dir = getWeaselDir()
default:
log.Fatalf("Unsupported OS: %s so far", runtime.GOOS)
}
return dir
}
func getWeaselDir() string {
keyPath := `Software\Rime\Weasel`
valueName := "RimeUserDir"
// Get from Windows registry
k, err := registry.OpenKey(registry.CURRENT_USER, keyPath, registry.QUERY_VALUE)
if err != nil {
log.Printf("Failed to open registry key: %v\n", err)
// Fallback to default dir
return getDefaultWeaselDir()
}
defer k.Close()
rimeUserDir, _, err := k.GetStringValue(valueName)
if err != nil {
log.Printf("Failed to read registry value: %v\n", err)
// Fallback to default dir
return getDefaultWeaselDir()
}
return rimeUserDir
}
func getDefaultWeaselDir() string {
appData := os.Getenv("APPDATA") // AppData\Roaming
if appData == "" {
log.Fatalln("APPDATA environment variable is not set.")
}
return filepath.Join(appData, "Rime")
}

View File

@@ -4,13 +4,10 @@ import (
"bufio"
"fmt"
mapset "github.com/deckarep/golang-set/v2"
"golang.org/x/sys/windows/registry"
"log"
"os"
"os/user"
"path"
"path/filepath"
"runtime"
"strconv"
"strings"
"time"
@@ -45,56 +42,6 @@ var (
汉字拼音映射TXT = filepath.Join(RimeDir, "others/script/rime/汉字拼音映射.txt")
)
// 获取 macOS/Windows Rime 配置目录
func getRimeDir() string {
var dir string
switch runtime.GOOS {
case "darwin": // macOS
u, err := user.Current()
if err != nil {
log.Fatalln(err)
}
dir = filepath.Join(u.HomeDir, "Library/Rime")
case "windows": // Windows
dir = getWeaselDir()
default:
log.Fatalf("Unsupported OS: %s so far", runtime.GOOS)
}
return dir
}
func getWeaselDir() string {
keyPath := `Software\Rime\Weasel`
valueName := "RimeUserDir"
// Get from Windows registry
k, err := registry.OpenKey(registry.CURRENT_USER, keyPath, registry.QUERY_VALUE)
if err != nil {
log.Printf("Failed to open registry key: %v\n", err)
// Fallback to default dir
return getDefaultWeaselDir()
}
defer k.Close()
rimeUserDir, _, err := k.GetStringValue(valueName)
if err != nil {
log.Printf("Failed to read registry value: %v\n", err)
// Fallback to default dir
return getDefaultWeaselDir()
}
return rimeUserDir
}
func getDefaultWeaselDir() string {
appData := os.Getenv("APPDATA") // AppData\Roaming
if appData == "" {
log.Fatalln("APPDATA environment variable is not set.")
}
return filepath.Join(appData, "Rime")
}
// 将所有词库读入 set供检查或排序使用
func readToSet(dictPath string) mapset.Set[string] {
set := mapset.NewSet[string]()

View File

@@ -532,6 +532,11 @@
安徽省六安市
安徽六安
安徽六安市
六合
六合区
南京六合
南京六合区
南京市六合区
穋尔氏朴丽鱼
猸子
艋舺

View File

@@ -1,4 +1,14 @@
# 在 # -_- 上面是错词;下面是包含错词但不是错词。
记忆绵
划的来
轮理
论理片
论理电影
做爰
伦锂
希伯莱
伯莱雅
德克萨斯
湿渌渌
湿露露
熙壤
@@ -3915,3 +3925,5 @@
原素材
登建康赏心亭
既便宜又好
外轮理货
脉轮理论