• [x] 組字區應該還是有 text,尤其是 script_editor 類的輸入方案
  • [x] 沒有邊框設定
  • [x] label
  • [x] comment
  • [x] hilited label
  • [x] 組字區末尾底下的小 ^ 號
    • 是跟著 candidate_text?
  • [x] README.md
    • [ ] 詳述 color_scheme 要如何設在 squirrel.custom.yaml 中
    • [x] 進階的安裝法
  • [x] 圓角設定
  • [x] macOS 字型
  • [x] 名稱為什麼只能寫入空格前的部分?應該全部寫入
  • [ ] 讀寫 YAML
    • 基本讀檔:

      • 基本介面及使用 FileReader、readAsText
        • Reading local files in JavaScript - HTML5 Rocks
        • How to Read Local Files with Javascript
      • 要用 onload!
        • 康廷數位: JavaScript 利用 FileReader 讀取文字檔
        • javascript - HTML5 File API: How to see the result of readAsText() - Stack Overflow
    • 讀 YAML 的 library

      • Reading and Writing YAML to a File in Node.js/JavaScript
        • ↑根本不能直接用 require!那八成是 Node 環境下才有的
      • js-yaml 如果是裝在 Node.js 環境,那到底該怎麼用在一般網頁裡呢?☟
        • js-yaml - cdnjs.com - The best FOSS CDN for web related libraries to speed up your websites!
      • yaml.js ← 應該用不到
        • yamljs - cdnjs.com - The best FOSS CDN for web related libraries to speed up your websites!
    • 開始讀入 YAML 檔

      • 確認真的有讀到 array 中 ☞ How to print object array in JavaScript? - Stack Overflow
      • 用 typeof 發現 output 是 object,不是 array
        • 學習 object 基本結構 ☞ JavaScript Objects

        • 取得第一個 index,而且總算讀到值而不是 key ☞ javascript - Getting the first index of an object - Stack Overflow 第一則回答、第二則回答

          var obj = {a: 1, b: 2, c: 3};
          Object.keys(obj)[0]; // "a"
          
          // for first key of object you can use
          console.log(Object.keys(object)[0]);//print key's name
          
          //for value
          console.log(object[Object.keys(object)[0]]);//print key's value
          
    • [x] 再來開始才是硬仗:把讀到的 scheme object 各值,餵給各輸入欄位,要讓它們自動變色,而且也要上到右欄的色碼中!

      • 參考 script.js 中 changeColor() 及 exConvert() 的做法,意外地達成初步結果,把顏色套到預覽區,及改入右欄色碼區 ← 這樣已達成大半了
      • 但 YAML 內的色碼必須先加上 '...' 變為字串 → 順便解決變為數值的問題
      • 迴圈處理所有 key 含有 color 的值
        • 一直想用 .contains(),一直忘記應該用 .includes()!
        • 用 for (var prop in obj) {} 及 obj[prop] 有順利做出迴圈了!☞ for...in - JavaScript | MDN
      • 處理完後,再仿照各輸入欄位裡 onChange 所執行的指令,套上值和 DOM id 就可以了!
      • /^20191127^/ 餵給各輸入欄位的部分,後來研究一下 script.js exMode() 其實也不難!用 getElementById() 去改底色及值就好了!
    • [x] 讀取並寫入作者、名稱那些

      • 運用 writeIn(),注意字串要用 "" 包起來就不難 XD
      • [ ] 作者資訊含有 < > 郵件地址時無法寫入,是要 escape?
    • [x] pull request 可順利併回 master(就算 master 有修改)

    • [x] 色碼應該是字串,但卻變成數值

    • [x] 上傳到遠端,確認仍可讀取本端檔案!

    • [ ] 空的色碼值不要顯示 NAN UNDEFINED

  • 調整產生 YAML 區的內容(也為之後「寫檔」功能預備)
    • 似乎只要改 #source_code 這個 div,以及 exConv() 這個裡面的就好
    • [x] 產生色碼值前後加 ' '
    • [x] 沒有設定的色碼值連 0x 都不要有,完全留空,或整行不顯示,或先顯示為註解
      • 初步測試,可以用 ''(= undefined),但不能完全留空(= null)或整行不顯示
    • [x] 第一行標頭 #Rime theme
    • [ ] 說明「可將此區文字貼入 YAML 檔中」
  • [ ] 調整讀寫按鈕的位置及樣式
  • [ ] 調整各欄寬度