Skip to content

Instantly share code, notes, and snippets.

@Ericwyn
Created September 24, 2021 10:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Ericwyn/ec860c388279cefabfa543e85cf25368 to your computer and use it in GitHub Desktop.
Save Ericwyn/ec860c388279cefabfa543e85cf25368 to your computer and use it in GitHub Desktop.
RIME 英语词典 生成脚本
package com.ericwyn.others;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;
public class EnglishDictGeneral {
public static void main(String[] args) throws Exception {
BufferedReader bufferedReader = new BufferedReader(
new FileReader("/home/Ericwyn/.config/ibus/rime/CET4+6_edited.txt")
);
ArrayList<String> words = new ArrayList<>();
String line;
while ((line = bufferedReader.readLine()) != null){
words.add(line);
}
bufferedReader.close();
StringBuilder outPut = new StringBuilder();
for (String word : words) {
if (word.length() >= 8) {
for (int i = 4;i <= word.length();i++){
outPut.append(word).append("\t");
for (int j = 0; j < i;j++){
outPut.append(word.charAt(j));
if (j != i - 1) {
outPut.append(" ");
}
}
outPut.append("\t3\n");
}
// outPut.append(word).append("\t")
// .append(word.charAt(0)).append(" ")
// .append(word.charAt(1)).append(" ")
// .append(word.charAt(2)).append(" ")
// .append(word.charAt(3))
// .append("\t3\n");
} else if (word.length() > 3) {
for (int i = 3;i <= word.length();i++){
outPut.append(word).append("\t");
for (int j = 0; j < i;j++){
outPut.append(word.charAt(j));
if (j != i - 1) {
outPut.append(" ");
}
}
outPut.append("\t3\n");
}
}
// outPut.append(word).append("\n");
}
BufferedWriter bufferedWriter = new BufferedWriter(
new FileWriter("/home/Ericwyn/.config/ibus/rime/luna_pinyin_simp.english.dict.yaml"));
bufferedWriter.write("# Rime dictionary\n" +
"# encoding: utf-8\n" +
"#\n" +
"# 英语词汇, 由 EnglishDictGeneral @Ericwyn 生成\n"+
"#\n" +
"\n" +
"---\n" +
"name: luna_pinyin_simp.english\n" +
"version: \"2021.09.24\"\n" +
"sort: by_weight\n" +
"use_preset_vocabulary: true\n" +
"...\n" +
"\n");
bufferedWriter.write(outPut.toString());
bufferedWriter.flush();
bufferedWriter.close();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment