From 94c465826288161828d6a62d0e3d0582c2905493 Mon Sep 17 00:00:00 2001 From: JuanZoran <1430359574@qq.com> Date: Thu, 19 Jan 2023 23:50:18 +0800 Subject: [PATCH] chore: modify .gitignore file --- .gitignore | 2 + go/go.mod | 3 -- go/query_online.go | 50 ----------------- install.sh | 2 +- note/api.md | 132 --------------------------------------------- note/engine.md | 129 -------------------------------------------- note/logic.md | 96 --------------------------------- 7 files changed, 3 insertions(+), 411 deletions(-) delete mode 100644 go/go.mod delete mode 100644 go/query_online.go delete mode 100644 note/api.md delete mode 100644 note/engine.md delete mode 100644 note/logic.md diff --git a/.gitignore b/.gitignore index a0863a7..507551e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ lua/Trans/util/ lua/Trans/core/ +note/ +go/ diff --git a/go/go.mod b/go/go.mod deleted file mode 100644 index 606edce..0000000 --- a/go/go.mod +++ /dev/null @@ -1,3 +0,0 @@ -module query_online - -go 1.19 diff --git a/go/query_online.go b/go/query_online.go deleted file mode 100644 index fc5345e..0000000 --- a/go/query_online.go +++ /dev/null @@ -1,50 +0,0 @@ -package query_youcao - -import ( - "net/url" - "time" -) - -const ( - youdao = "https://openapi.youdao.com/api" - appKey = "1858465a8708c121" - appPasswd = "fG0sitfk16nJOlIlycnLPYZn1optxUxL" -) - -type data struct { - q string - from string - to string - // appKey string - salt string - sign string - signType string - curtime string -} - - -func input(word string) string { - var input string - len := len(word) - if len > 20 { - input = word[:10] + string(rune(len)) + word[len-10:] - } else { - input = word - } - return input -} - -func salt(_ string) string { - // TODO : hash salt - var salt string - - return salt -} - -func to_value(d data) url.Values { - // return value -} - -func Query(word string) { - -} diff --git a/install.sh b/install.sh index a939dce..a9adb84 100755 --- a/install.sh +++ b/install.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e if [[ -d "$HOME/.vim" ]]; then diff --git a/note/api.md b/note/api.md deleted file mode 100644 index 3b4d0ef..0000000 --- a/note/api.md +++ /dev/null @@ -1,132 +0,0 @@ -# API说明 - - -- [API说明](#api说明) - - [数据结构](#数据结构) - - [翻译](#翻译) - - [窗口](#窗口) - - [翻译结果](#翻译结果) - - [内容单位](#内容单位) -- [窗口绘制逻辑](#窗口绘制逻辑) - - [hover](#hover) - - [float](#float) - - -## 数据结构 - -### 翻译 -- `word` -待翻译的字符串: string -- `sentence` -是否为句子: boolean -- `result` -翻译查询的结果: table - > 见: [翻译结果](#翻译结果) -- `engine` - -### 窗口 -- `style` -风格: string -- `height` -高度: integer -- `width` -宽度: integer -- `border` -边框样式: string -- `winhl` -窗口的高亮: string - -### 翻译结果 -**无特殊说明, 所有字段均为`string`类型** - -- `word` -查询的字符串 -- `phonetic` -音标 -- `collins` -柯林斯星级: integer -- `oxford` -是否为牛津词汇: integer (1为是) -- `tag` -标签 -- `pos` -词性 -- `exchange` -词态变化 -- `translation` -中文翻译 -- `definition` -英文注释 - - -### 内容单位 -- `field` 字段 - > 是展示的最小单位 - - **属性** - - `1` - 存储的文本: string - - `2` (optional) - 对应的高亮: string - - `_start` - 起始行: integer - - `_end` - 结束行: integer - > **注意:** `_start` 和`_end` 字段只有已经被展示到窗口后才会被设置 - - **方法** - - 无 - -- `line` 行 - > 窗口展示的每一行, 一个行有多个`field` - - **属性** - - `text` - 当前保存的字符串: string - - `hls` - 行内的高亮: table - - `index` - 行号[0为起始下标] - - `fields` - 行内保存的`field` - - `status` - 行内是否需要更新: boolean - > **注意:** `num` 只有已经被展示到窗口后才会被设置 - - **方法** - - `update` - 更新`text`和`hls` - - `data` - 获取行的text - - `insert` - 添加新`field` - - `add_highlight` - 添加高亮 - > 参数: bufnr - -- `content` 内容 - > 窗口展示的单位, 一个内容内有多个`line` - - **方法** - - `data` - 返回lines和highlights - - `insert` - 插入新的行 - - `attach` - 将内容展示到buffer - > 参数: bufnr - -# 窗口绘制逻辑 - -- 获取所有组件 -## hover -- 按照order顺序加载 -- 按组件间距为4计算组件个数能否在一行以内放下 - - 放不下则按照组件间距为4 计算组件个数并对齐 - - 放得下则重新计算组间距 - -获得组件行内容, 设置到行内 -获取组件高亮, 设置高亮 - -## float -由定义好的逻辑,绘制整个窗口 diff --git a/note/engine.md b/note/engine.md deleted file mode 100644 index 4999dc9..0000000 --- a/note/engine.md +++ /dev/null @@ -1,129 +0,0 @@ -# 字段说明 - - -- [字段说明](#字段说明) - - [本地](#本地) - - [有道](#有道) - - [中英](#中英) - - [百度](#百度) - - [返回结果](#返回结果) - - [彩云小译](#彩云小译) - - [必应](#必应) - - [腾讯翻译君](#腾讯翻译君) - - [阿里翻译](#阿里翻译) - - [火山翻译](#火山翻译) - - [金山词霸](#金山词霸) - - -## 本地 -- `word` -查询的字符串 -- `phonetic` -音标 -- `collins` -柯林斯星级: integer -- `oxford` -是否为牛津词汇: integer (1为是) -- `tag` -标签 -- `pos` -词性 -- `exchange` -词态变化 -- `translation` -中文翻译 -- `definition` -英文注释 - -## 有道 -### 中英 - -basic JSONObject 简明释义 -phonetic text 词典音标 -usPhonetic text 美式音标 -ukPhonetic text 英式音标 -ukSpeech text 英式发音 -usSpeech text 美式发音 -explains text 基本释义 -text text 短语 -explain String Array 词义解释列表 -wordFormats Object Array 单词形式变化列表 -name String 形式名称,例如:复数 -web JSONArray 网络释义 -phrase String 词组 -meaning String 含义 -synonyms JSONObject 近义词 -pos String 词性 -words String Array 近义词列表 -trans String 释义 -antonyms ObjectArray 反义词 -relatedWords JSONArray 相关词 -wordNet JSONObject 汉语词典网络释义 -phonetic String 发音 -meanings ObjectArray 释义 -meaning String 释义 -example array 示例 -dict String 词典deeplink -webDict String 词典网页deeplink -sentenceSample text 例句 -sentence text 例句 -sentenceBold text 将查询内容加粗的例句 -translation text 例句翻译 -wfs text 单词形式变化 -exam_type text 考试类型 - -## 百度 -from string 源语言 返回用户指定的语言,或者自动检测出的语种(源语言设为auto时) -to string 目标语言 返回用户指定的目标语言 -trans_result array 翻译结果 返回翻译结果,包括src和dst字段 -trans_result.*.src string 原文 接入举例中的“apple” -trans_result.*dst string 译文 接入举例中的“苹果” -error_code integer 错误码 仅当出现错误时显示 -以下字段仅开通了词典、tts用户可见 -src_tts string 原文tts链接 mp3格式,暂时无法指定发音 -dst_tts string 译文tts链接 mp3格式,暂时无法指定发音 -dict string 中英词典资源 返回中文或英文词典资源,包含音标;简明释义等内容 - -### 返回结果 -- 英-> 中 -```json -{ - "from": "en", - "to": "zh", - "trans_result": [ - { - "src": "apple", - "dst": "苹果" - } - ] -} -``` -- 中->英 -```json -{ - "from": "zh", - "to": "en", - "trans_result": [ - { - "src": "中国", - "dst": "China" - } - ] -} -``` -## 彩云小译 -句子翻译 -> sh xiaoyi.sh en2zh "You know some birds are not meant to be caged, their feathers are just too bright." -> 你知道有些鸟不应该被关在笼子里,它们的羽毛太亮了。 - -## 必应 - -## 腾讯翻译君 - -## 阿里翻译 - -## 火山翻译 - -## 金山词霸 - -## Dictionary diff --git a/note/logic.md b/note/logic.md deleted file mode 100644 index fda9162..0000000 --- a/note/logic.md +++ /dev/null @@ -1,96 +0,0 @@ -# 命令说明 - - -- [命令说明](#命令说明) - - [Translate](#translate) - - [TranslateInput](#translateinput) - - [TranslateHistory](#translatehistory) - - [自定义](#自定义) - - [可选项说明](#可选项说明) - - [示例](#示例) - - -## Translate -**窗口风格默认为:** `cursor` -- 动作(action): - - `vsplit` 水平分屏 - - `split` 垂直分屏 - - `float` 窗口样式又`cursor` 变为`float` - - `online_query` 使用在线引擎重新进行查询 - - `history_insert` 将此次查询的单词记录到历史记录 - - `next` 展示下一个引擎的查询结果(如果默认设置了多个引擎) - - `prev` 展示上一个查询结果 - > 如果没有设置自动保存历史的话 - - - `history` 查看历史查询的记录 - -- `online_query`: - - `local_add` 将此次查询的结果添加到本地数据库 - > **如果本地已经存在该单词,会询问是否需要覆盖掉相同的字段** - - - `local_update` 和*local_add* 类似, 但是不会询问是否覆盖 - - `diff` 对比本地查询结果和此次在线查询的区别 - -> **注意**: 动作是任何窗口通用的 -## TranslateInput -**窗口风格默认为:** `float` -- 自行得到要查询的单词 - -- TODO: - - fuzzy match - -## TranslateHistory -**窗口风格默认为:** `float` -- 查看历史查询 - ---- -## 自定义 - -### 可选项说明 -- 查询方式(method): `string` - - `input` 自行输入需要查询的单词 - - `last` 显示上一次查询的结果 - - `history` - -- 查询引擎(engine): `string | table` - - `offline` 离线的数据库 - - `youcao` 有道api - - `baidu` 百度api - - `google` 谷歌api - - `bing` 必应api - - `iciba` 金山词霸api - - `xunfei` 讯飞api - -- 窗口风格(win): `string | table` - - 样式(style): - - `cursor` 在光标附近弹出 - - `float` 悬浮窗口 - - `split` 在上方或者下方分屏 - - `vsplit` 在左边或者右边分屏 - - - 高度(height): - - `value > 1` 最大高度 - - `0 <= value <= 1` 相对高度 - - `0 < value` 无限制 - - - 宽度(width): - > 和`高度(height)`相同 -### 示例 -```lua -vim.keymap.set('n', 'mi', function () - require('Trans').translate({ - method = 'input', -- 不填则自动判断mode获取查询的单词 - engine = { -- 异步查询所有的引擎, 按照列表 - 'offline', - 'youdao', - 'baidu' - }, - -- win = 'cursor' - win = { - style = 'cursor', - height = 50, - width = 30, - } - }) -end, { desc = '在光标旁弹出输入的单词释义'}) -```