mirror of
https://github.com/mii443/AzooKeyKanaKanjiConverter.git
synced 2025-08-22 15:05:26 +00:00
49 lines
1.3 KiB
Swift
49 lines
1.3 KiB
Swift
//
|
|
// States.swift
|
|
//
|
|
//
|
|
// Created by ensan on 2023/04/30.
|
|
//
|
|
|
|
public enum InputStyle: String, Sendable {
|
|
/// 入力された文字を直接入力するスタイル
|
|
case direct = "direct"
|
|
/// ローマ字日本語入力とするスタイル
|
|
case roman2kana = "roman"
|
|
}
|
|
|
|
public enum KeyboardLanguage: String, Codable, Equatable, Sendable {
|
|
case en_US
|
|
case ja_JP
|
|
case el_GR
|
|
case none
|
|
}
|
|
|
|
public enum LearningType: Int, CaseIterable, Sendable {
|
|
/// 学習情報は変換結果(output)に反映され、学習情報は更新(input)されます
|
|
case inputAndOutput
|
|
/// 学習情報は変換結果(output)に反映されるのみで、学習情報は更新されません
|
|
case onlyOutput
|
|
/// 学習情報は一切用いません
|
|
case nothing
|
|
|
|
package var needUpdateMemory: Bool {
|
|
self == .inputAndOutput
|
|
}
|
|
|
|
var needUsingMemory: Bool {
|
|
self != .nothing
|
|
}
|
|
}
|
|
|
|
public enum ConverterBehaviorSemantics: Sendable {
|
|
/// 標準的な日本語入力のように、変換する候補を選ぶパターン
|
|
case conversion
|
|
/// iOSの英語入力のように、確定は不要だが、左右の文字列の置き換え候補が出てくるパターン
|
|
case replacement([ReplacementTarget])
|
|
|
|
public enum ReplacementTarget: UInt8, Sendable {
|
|
case emoji
|
|
}
|
|
}
|