Skip to content

Instantly share code, notes, and snippets.

View ShikiSuen's full-sized avatar
🍍

ShikiSuen ShikiSuen

🍍
View GitHub Profile
@ShikiSuen
ShikiSuen / A-OVMANDARIN-UNITTEST.MD
Last active June 17, 2022 04:56
針對小麥 2.3 內建的 OVMandarin 的倚天26與許氏鍵盤的單元測試。

該測試為窮極測試,測試盡可能所有的在理論上能用倚天26與許氏鍵盤輸入的注音組合。

在執行此測試之前,請在 Mandarin.h 的接近檔案末尾的位置新增如下圖選中區域的內容:

image

也就是在 BopomofoReadingBuffer 的 public 段新增:

  std::string cnvSequence(std::string givenSequence) {
 clear();
@ShikiSuen
ShikiSuen / kaiu-name.ttx
Created September 16, 2022 03:49
The name table of the Kaiu.font on Windows 10.
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.28">
<name>
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x0" unicode="True">
(c) Copyright DynaLab Inc. 1992-1998
</namerecord>
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x0" unicode="True">
DFKai-SB
</namerecord>
@ShikiSuen
ShikiSuen / FB10978412App.swift
Created September 20, 2022 10:00
FB10978412 Demo App (SwiftUI)
/// FB10978412: Since macOS 11 Big Sur, CTFontCreateUIFontForLanguage cannot
/// distinguish zh-Hans and zh-Hant with correct adoptation of proper PingFang SC/TC variants.
import SwiftUI
@main
struct FB10978412App: App {
var body: some Scene {
WindowGroup {
ContentView()
@ShikiSuen
ShikiSuen / Shiki-FireFoxColorScheme-Blue
Created January 24, 2023 01:49
My FireFox Color Scheme (Blue).
https://color.firefox.com/?theme=XQAAAAI-AQAAAAAAAABBqYhm849SCia3ftKEGccwS-xMDPr6gDamZHzRz3dFizlpUiReI-ZYiVK7inbKG9IGfUXu3jVRc6G6zvK1-1UfOf9mrr61QUHM5CaWkYaFS6IMLnm3QsyFX3dZdTUDdL5lmuT5zdXjOleYTsOGAU0EXgAyxw3wZKJPFmvHoVVnboNnApdnvcVAi7SmhiLL7-_3cIxJ9Asi4DcXVuA1IbqAcseCwQjErAPJlf_IBgzhzgkiKVOh569iOREGs-llTl2B0wOkPA04AfQB5Ocz7j5MSbZqixf7u2Sw
@ShikiSuen
ShikiSuen / DateChecker.swift
Created February 7, 2023 02:45
Swift Date Checker.
// (c) 2021 and onwards The vChewing Project (MIT License).
// ====================
// This code is released under the MIT license (SPDX-License-Identifier: MIT)
import Foundation
extension Date {
/// Check whether current date is the given date.
/// - Parameter dateDigits: `yyyyMMdd`, 8-digit integer. If only `MMdd`, then the year will be the current year.
/// - Returns: The result. Will return false if the given dateDigits is invalid.
@ShikiSuen
ShikiSuen / 1000-applefontexperience.conf
Last active March 10, 2023 19:27
Apple Font Experience for Linux. You need to put this conf file in "/etc/fonts/conf.d" and manually install "Inter" and "Sarasa Gothic" to "/etc/fonts/opentype/". You can install PingFang if you wish. Install "noto-cjk" package from your Linux package manager for Noto Serif CJK support.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- -->
<fontconfig>
<!-- Basic CJK Font Fallback Rule Redifined -->
<match target="pattern">
<test qual="any" name="lang" compare="contains">
<string>zh-TW</string>
</test>
<test qual="any" name="lang" compare="contains">
@ShikiSuen
ShikiSuen / IndexRevolver.swift
Last active October 23, 2023 20:22
Swift Index Revolver (requiring Swift 5.6)
// (c) 2021 and onwards Shiki Suen (MIT-NTL License).
// ====================
// This code is released under the MIT license (SPDX-License-Identifier: MIT)
import Foundation
extension Collection {
public func revolvedIndex(_ id: Int, clockwise: Bool = true, steps: Int = 1) -> Int {
if id < 0 || steps < 1 { return id }
var result = id
@ShikiSuen
ShikiSuen / ApplyTransformFW2HW.swift
Created March 5, 2024 15:29
ApplyTransformFW2HW
// (c) 2021 and onwards The vChewing Project (MIT-NTL License).
// ====================
// This code is released under the MIT license (SPDX-License-Identifier: MIT)
// ... with NTL restriction stating that:
// No trademark license is granted to use the trade names, trademarks, service
// marks, or product names of Contributor, except as required to fulfill notice
// requirements defined in MIT License.
extension String {
// This only works with ASCII chars.