Repo // Comment updates & typo fixes.
This commit is contained in:
parent
c217ec97b3
commit
646554fe4b
|
@ -311,15 +311,19 @@ class ctlInputMethod: IMKInputController {
|
||||||
return arrResult
|
return arrResult
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// IMK 選字窗限定函式,只要選字窗內的高亮內容選擇出現變化了、就會呼叫這個函式。
|
||||||
|
/// - Parameter _: 已經高亮選中的候選字詞內容。
|
||||||
override open func candidateSelectionChanged(_: NSAttributedString!) {
|
override open func candidateSelectionChanged(_: NSAttributedString!) {
|
||||||
// 暫時不需要擴充這個函數。但有些幹話還是要講的:
|
// 暫時不需要擴充這個函式。但有些幹話還是要講的:
|
||||||
// 在這個函數當中試圖(無論是否拿著傳入的參數)從 ctlCandidateIMK 找 identifier 的話,
|
// 在這個函式當中試圖(無論是否拿著傳入的參數)從 ctlCandidateIMK 找 identifier 的話,
|
||||||
// 只會找出 NSNotFound。你想 NSLog 列印看 identifier 是多少,輸入法直接崩潰。
|
// 只會找出 NSNotFound。你想 NSLog 列印看 identifier 是多少,輸入法直接崩潰。
|
||||||
// 而且會他媽的崩得連 console 內的 ips 錯誤報告都沒有。
|
// 而且會他媽的崩得連 console 內的 ips 錯誤報告都沒有。
|
||||||
// 在下文的 candidateSelected() 試圖看每個候選字的 identifier 的話,永遠都只能拿到 NSNotFound。
|
// 在下文的 candidateSelected() 試圖看每個候選字的 identifier 的話,永遠都只能拿到 NSNotFound。
|
||||||
// 衰洨 IMK 真的看上去就像是沒有做過單元測試的東西,賈伯斯有檢查過的話會被氣得從棺材裡爬出來。
|
// 衰洨 IMK 真的看上去就像是沒有做過單元測試的東西,賈伯斯有檢查過的話會被氣得從棺材裡爬出來。
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// IMK 選字窗限定函式,只要選字窗確認了某個候選字詞的選擇、就會呼叫這個函式。
|
||||||
|
/// - Parameter candidateString: 已經確認的候選字詞內容。
|
||||||
override open func candidateSelected(_ candidateString: NSAttributedString!) {
|
override open func candidateSelected(_ candidateString: NSAttributedString!) {
|
||||||
if state is InputState.AssociatedPhrases {
|
if state is InputState.AssociatedPhrases {
|
||||||
if !mgrPrefs.alsoConfirmAssociatedCandidatesByEnter {
|
if !mgrPrefs.alsoConfirmAssociatedCandidatesByEnter {
|
||||||
|
|
|
@ -57,7 +57,7 @@ extension Megrez.Compositor {
|
||||||
|
|
||||||
/// 返回在當前位置的所有候選字詞(以詞音配對的形式)。如果組字器內有幅位、且游標
|
/// 返回在當前位置的所有候選字詞(以詞音配對的形式)。如果組字器內有幅位、且游標
|
||||||
/// 位於組字器的(文字輸入順序的)最前方(也就是游標位置的數值是最大合規數值)的
|
/// 位於組字器的(文字輸入順序的)最前方(也就是游標位置的數值是最大合規數值)的
|
||||||
/// 話,那麼這裡會用到 location - 1、以免去在呼叫該函數後再處理的麻煩。
|
/// 話,那麼這裡會用到 location - 1、以免去在呼叫該函式後再處理的麻煩。
|
||||||
/// - Parameter location: 游標位置。
|
/// - Parameter location: 游標位置。
|
||||||
/// - Returns: 候選字音配對陣列。
|
/// - Returns: 候選字音配對陣列。
|
||||||
public func fetchCandidates(at location: Int, filter: CandidateFetchFilter = .all) -> [Candidate] {
|
public func fetchCandidates(at location: Int, filter: CandidateFetchFilter = .all) -> [Candidate] {
|
||||||
|
@ -105,7 +105,7 @@ extension Megrez.Compositor {
|
||||||
|
|
||||||
/// 使用給定的候選字詞字串,將給定位置的節點的候選字詞改為與之一致的候選字詞。
|
/// 使用給定的候選字詞字串,將給定位置的節點的候選字詞改為與之一致的候選字詞。
|
||||||
///
|
///
|
||||||
/// 注意:如果有多個「單元圖資料值雷同、卻讀音不同」的節點的話,該函數的行為結果不可控。
|
/// 注意:如果有多個「單元圖資料值雷同、卻讀音不同」的節點的話,該函式的行為結果不可控。
|
||||||
/// - Parameters:
|
/// - Parameters:
|
||||||
/// - candidate: 指定用來覆寫為的候選字(字串)。
|
/// - candidate: 指定用來覆寫為的候選字(字串)。
|
||||||
/// - location: 游標位置。
|
/// - location: 游標位置。
|
||||||
|
|
|
@ -17,20 +17,20 @@ extension Megrez.Compositor {
|
||||||
/// [("a", -114), ("b", -514), ("c", -1919)] 的話,指定該覆寫行為則會導致該節
|
/// [("a", -114), ("b", -514), ("c", -1919)] 的話,指定該覆寫行為則會導致該節
|
||||||
/// 點返回的結果為 ("c", -114)。該覆寫行為多用於諸如使用者半衰記憶模組的建議
|
/// 點返回的結果為 ("c", -114)。該覆寫行為多用於諸如使用者半衰記憶模組的建議
|
||||||
/// 行為。被覆寫的這個節點的狀態可能不會再被爬軌行為擅自改回。該覆寫行為無法
|
/// 行為。被覆寫的這個節點的狀態可能不會再被爬軌行為擅自改回。該覆寫行為無法
|
||||||
/// 防止其它節點被爬軌函數所支配。這種情況下就需要用到 kOverridingScore
|
/// 防止其它節點被爬軌函式所支配。這種情況下就需要用到 kOverridingScore
|
||||||
/// - withHighScore: 將該節點權重覆寫為 kOverridingScore,使其被爬軌函數所青睞。
|
/// - withHighScore: 將該節點權重覆寫為 kOverridingScore,使其被爬軌函式所青睞。
|
||||||
public enum OverrideType: Int {
|
public enum OverrideType: Int {
|
||||||
case withNoOverrides = 0
|
case withNoOverrides = 0
|
||||||
case withTopUnigramScore = 1
|
case withTopUnigramScore = 1
|
||||||
case withHighScore = 2
|
case withHighScore = 2
|
||||||
}
|
}
|
||||||
|
|
||||||
/// 一個用以覆寫權重的數值。該數值之高足以改變爬軌函數對該節點的讀取結果。這裡用
|
/// 一個用以覆寫權重的數值。該數值之高足以改變爬軌函式對該節點的讀取結果。這裡用
|
||||||
/// 「0」可能看似足夠了,但仍會使得該節點的覆寫狀態有被爬軌函數忽視的可能。比方說
|
/// 「0」可能看似足夠了,但仍會使得該節點的覆寫狀態有被爬軌函式忽視的可能。比方說
|
||||||
/// 要針對索引鍵「a b c」複寫的資料值為「A B C」,使用大寫資料值來覆寫節點。這時,
|
/// 要針對索引鍵「a b c」複寫的資料值為「A B C」,使用大寫資料值來覆寫節點。這時,
|
||||||
/// 如果這個獨立的 c 有一個可以拮抗權重的詞「bc」的話,可能就會導致爬軌函數的算法
|
/// 如果這個獨立的 c 有一個可以拮抗權重的詞「bc」的話,可能就會導致爬軌函式的算法
|
||||||
/// 找出「A->bc」的爬軌途徑(尤其是當 A 和 B 使用「0」作為複寫數值的情況下)。這樣
|
/// 找出「A->bc」的爬軌途徑(尤其是當 A 和 B 使用「0」作為複寫數值的情況下)。這樣
|
||||||
/// 一來,「A-B」就不一定始終會是爬軌函數的青睞結果了。所以,這裡一定要用大於 0 的
|
/// 一來,「A-B」就不一定始終會是爬軌函式的青睞結果了。所以,這裡一定要用大於 0 的
|
||||||
/// 數(比如野獸常數),以讓「c」更容易單獨被選中。
|
/// 數(比如野獸常數),以讓「c」更容易單獨被選中。
|
||||||
public static let kOverridingScore: Double = 114_514
|
public static let kOverridingScore: Double = 114_514
|
||||||
|
|
||||||
|
|
|
@ -241,7 +241,7 @@ public class ctlCandidateIMK: IMKCandidates, ctlCandidateProtocol {
|
||||||
}
|
}
|
||||||
|
|
||||||
override public func interpretKeyEvents(_ eventArray: [NSEvent]) {
|
override public func interpretKeyEvents(_ eventArray: [NSEvent]) {
|
||||||
// 我不知道為什麼這個函數接收的參數是陣列,但經過測試卻發現這個函數收到的陣列往往內容只有一個。
|
// 鬼知道為什麼這個函式接收的參數是陣列,但經過測試卻發現這個函式收到的陣列往往內容只有一個。
|
||||||
// 這也可能是 Objective-C 當中允許接收內容為 nil 的一種方式。
|
// 這也可能是 Objective-C 當中允許接收內容為 nil 的一種方式。
|
||||||
guard !eventArray.isEmpty else { return }
|
guard !eventArray.isEmpty else { return }
|
||||||
let event = eventArray[0]
|
let event = eventArray[0]
|
||||||
|
|
Loading…
Reference in New Issue