天天看點

浏覽器插件-離線英漢詞典 0.0.7

新添功能:

  • 添加詞形變化資訊, 如查詢"get"顯示: 過去分詞: got; 過去式: got; 現在分詞: getting; 第三人稱單數: gets;
  • 彈窗中顯示處理後的英文, 比如, 查詢"Task", 彈窗中會顯示"task".
  • 提供輸入框, 可供當無法選中頁面中的文本或者手動輸入後按Enter鍵查詢.
  • 當單詞小寫無法查到, 嘗試全大寫查詢, 比如'ok'
    浏覽器插件-離線英漢詞典 0.0.7

詞形變化資料也是提取自前文

浏覽器插件-離線英漢詞典

使用的資料(提取工具:

提取詞形變化到JSON

), 僅有3M多.

詞形變化源資料條目舉例如下:

abdicate: "p:abdicated/d:abdicated"

seconds: "1:s3/0:second"           

将其轉換為可讀文本顯示的源碼部分如下:

var 詞形類型 = Object.freeze({
  "p": "過去式", // past tense
  "d": "過去分詞",
  "i": "現在分詞", // -ing
  "3": "第三人稱單數",
  "r": "形容詞比較級", // -er
  "t": "形容詞最進階", // -est
  "s": "名詞複數形式",
  "0": "原型",
  "1": "原型變換形式"
});

// 詞形部分資料格式描述: https://github.com/skywind3000/ECDICT#%E8%AF%8D%E5%BD%A2%E5%8F%98%E5%8C%96
function 提取詞形(原字元串) {
  var 變化 = [];
  if (!原字元串) {
    return 變化;
  }
  var 詞形字段 = 原字元串.split("/");
  for (var 某字段 of 詞形字段) {
    var 分段 = 某字段.split(":");

    var 類型 = 詞形類型[分段[0]];
    var 原型變化形式 = [];
    if (類型 == "原型變換形式") {
      for (var 變化形式 of 分段[1]) {
        原型變化形式.push(詞形類型[變化形式]);
      }
    }
    // 如hyphen(vt): s:hyphens/p:hyphened/i:/3:hyphens/d:, i與d内容缺失, 用空字元串占位
    變化.push({
      "類型": 類型,
      "變化": 分段.length == 1 ? "" : (類型 == "原型變換形式" ? 原型變化形式 : 分段[1])
    }
    );
  }
  return 變化;
}           

此詞形變化資料對詞典使用者也許用處不大, 但

Chrome插件實作GitHub代碼離線翻譯v0.0.4

項目比較需要.

另外, 考慮将詞典資料也并入之前的

初步嘗試将傳統學科的内容程式/資料化

知識庫中, 并将JS格式的知識庫通過CDN進行分發.

2018-10-30

繼續閱讀