mgrPrefs // Make UserDefaults variable names static, etc.

- Also shortened some variable identifier names, plus some nomenclatural updates.
- Set the default value of moveCursorAfterSelectingCandidate to true.
This commit is contained in:
ShikiSuen 2022-04-07 21:04:56 +08:00
parent 52df584361
commit 080429b99d
2 changed files with 143 additions and 141 deletions

View File

@ -1324,7 +1324,7 @@ static NSString *const kGraphVizOutputfile = @"/tmp/vChewing-visualization.dot";
if ([input isTab]) if ([input isTab])
{ {
BOOL updated = BOOL updated =
mgrPrefs.specifyTabKeyBehavior mgrPrefs.specifyShiftTabKeyBehavior
? ([input isShiftHold] ? [ctlCandidateCurrent showPreviousPage] : [ctlCandidateCurrent showNextPage]) ? ([input isShiftHold] ? [ctlCandidateCurrent showPreviousPage] : [ctlCandidateCurrent showNextPage])
: ([input isShiftHold] ? [ctlCandidateCurrent highlightPreviousCandidate] : ([input isShiftHold] ? [ctlCandidateCurrent highlightPreviousCandidate]
: [ctlCandidateCurrent highlightNextCandidate]); : [ctlCandidateCurrent highlightNextCandidate]);
@ -1338,7 +1338,7 @@ static NSString *const kGraphVizOutputfile = @"/tmp/vChewing-visualization.dot";
if ([input isSpace]) if ([input isSpace])
{ {
BOOL updated = mgrPrefs.specifySpaceKeyBehavior BOOL updated = mgrPrefs.specifyShiftSpaceKeyBehavior
? ([input isShiftHold] ? [ctlCandidateCurrent highlightNextCandidate] ? ([input isShiftHold] ? [ctlCandidateCurrent highlightNextCandidate]
: [ctlCandidateCurrent showNextPage]) : [ctlCandidateCurrent showNextPage])
: ([input isShiftHold] ? [ctlCandidateCurrent showNextPage] : ([input isShiftHold] ? [ctlCandidateCurrent showNextPage]

View File

@ -26,38 +26,40 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
import Cocoa import Cocoa
private let kIsDebugModeEnabled = "_DebugMode" struct UserDef {
private let kUserDataFolderSpecified = "UserDataFolderSpecified" static let kIsDebugModeEnabled = "_DebugMode"
private let kCheckUpdateAutomatically = "CheckUpdateAutomatically" static let kUserDataFolderSpecified = "UserDataFolderSpecified"
private let kKeyboardLayoutPreference = "KeyboardLayout" static let kCheckUpdateAutomatically = "CheckUpdateAutomatically"
private let kBasisKeyboardLayoutPreference = "BasisKeyboardLayout" static let kKeyboardLayout = "KeyboardLayout"
private let kShowPageButtonsInCandidateWindow = "ShowPageButtonsInCandidateWindow" static let kBasisKeyboardLayout = "BasisKeyboardLayout"
private let kCandidateListTextSize = "CandidateListTextSize" static let kShowPageButtonsInCandidateWindow = "ShowPageButtonsInCandidateWindow"
private let kAppleLanguagesPreferences = "AppleLanguages" static let kCandidateListTextSize = "CandidateListTextSize"
private let kShouldAutoReloadUserDataFiles = "ShouldAutoReloadUserDataFiles" static let kAppleLanguages = "AppleLanguages"
private let kSelectPhraseAfterCursorAsCandidatePreference = "SelectPhraseAfterCursorAsCandidate" static let kShouldAutoReloadUserDataFiles = "ShouldAutoReloadUserDataFiles"
private let kUseHorizontalCandidateListPreference = "UseHorizontalCandidateList" static let kSelectPhraseAfterCursorAsCandidate = "SelectPhraseAfterCursorAsCandidate"
private let kComposingBufferSizePreference = "ComposingBufferSize" static let kUseHorizontalCandidateList = "UseHorizontalCandidateList"
private let kChooseCandidateUsingSpace = "ChooseCandidateUsingSpace" static let kComposingBufferSize = "ComposingBufferSize"
private let kCNS11643Enabled = "CNS11643Enabled" static let kChooseCandidateUsingSpace = "ChooseCandidateUsingSpace"
private let kSymbolInputEnabled = "SymbolInputEnabled" static let kCNS11643Enabled = "CNS11643Enabled"
private let kChineseConversionEnabled = "ChineseConversionEnabled" static let kSymbolInputEnabled = "SymbolInputEnabled"
private let kShiftJISShinjitaiOutputEnabled = "ShiftJISShinjitaiOutputEnabled" static let kChineseConversionEnabled = "ChineseConversionEnabled"
private let kHalfWidthPunctuationEnabled = "HalfWidthPunctuationEnable" static let kShiftJISShinjitaiOutputEnabled = "ShiftJISShinjitaiOutputEnabled"
private let kMoveCursorAfterSelectingCandidate = "MoveCursorAfterSelectingCandidate" static let kHalfWidthPunctuationEnabled = "HalfWidthPunctuationEnable"
private let kEscToCleanInputBuffer = "EscToCleanInputBuffer" static let kMoveCursorAfterSelectingCandidate = "MoveCursorAfterSelectingCandidate"
private let kSpecifyTabKeyBehavior = "SpecifyTabKeyBehavior" static let kEscToCleanInputBuffer = "EscToCleanInputBuffer"
private let kSpecifySpaceKeyBehavior = "SpecifySpaceKeyBehavior" static let kSpecifyShiftTabKeyBehavior = "SpecifyShiftTabKeyBehavior"
private let kUseSCPCTypingMode = "UseSCPCTypingMode" static let kSpecifyShiftSpaceKeyBehavior = "SpecifyShiftSpaceKeyBehavior"
private let kMaxCandidateLength = "MaxCandidateLength" static let kUseSCPCTypingMode = "UseSCPCTypingMode"
private let kShouldNotFartInLieuOfBeep = "ShouldNotFartInLieuOfBeep" static let kMaxCandidateLength = "MaxCandidateLength"
static let kShouldNotFartInLieuOfBeep = "ShouldNotFartInLieuOfBeep"
private let kCandidateTextFontName = "CandidateTextFontName" static let kCandidateTextFontName = "CandidateTextFontName"
private let kCandidateKeyLabelFontName = "CandidateKeyLabelFontName" static let kCandidateKeyLabelFontName = "CandidateKeyLabelFontName"
private let kCandidateKeys = "CandidateKeys" static let kCandidateKeys = "CandidateKeys"
private let kAssociatedPhrasesEnabled = "AssociatedPhrasesEnabled" static let kAssociatedPhrasesEnabled = "AssociatedPhrasesEnabled"
private let kPhraseReplacementEnabled = "PhraseReplacementEnabled" static let kPhraseReplacementEnabled = "PhraseReplacementEnabled"
}
private let kDefaultCandidateListTextSize: CGFloat = 18 private let kDefaultCandidateListTextSize: CGFloat = 18
private let kMinKeyLabelSize: CGFloat = 10 private let kMinKeyLabelSize: CGFloat = 10
@ -191,35 +193,35 @@ struct ComposingBufferSize {
@objc public class mgrPrefs: NSObject { @objc public class mgrPrefs: NSObject {
static var allKeys: [String] { static var allKeys: [String] {
[ [
kIsDebugModeEnabled, UserDef.kIsDebugModeEnabled,
kUserDataFolderSpecified, UserDef.kUserDataFolderSpecified,
kKeyboardLayoutPreference, UserDef.kKeyboardLayout,
kBasisKeyboardLayoutPreference, UserDef.kBasisKeyboardLayout,
kShowPageButtonsInCandidateWindow, UserDef.kShowPageButtonsInCandidateWindow,
kCandidateListTextSize, UserDef.kCandidateListTextSize,
kAppleLanguagesPreferences, UserDef.kAppleLanguages,
kShouldAutoReloadUserDataFiles, UserDef.kShouldAutoReloadUserDataFiles,
kSelectPhraseAfterCursorAsCandidatePreference, UserDef.kSelectPhraseAfterCursorAsCandidate,
kUseHorizontalCandidateListPreference, UserDef.kUseHorizontalCandidateList,
kComposingBufferSizePreference, UserDef.kComposingBufferSize,
kChooseCandidateUsingSpace, UserDef.kChooseCandidateUsingSpace,
kCNS11643Enabled, UserDef.kCNS11643Enabled,
kSymbolInputEnabled, UserDef.kSymbolInputEnabled,
kChineseConversionEnabled, UserDef.kChineseConversionEnabled,
kShiftJISShinjitaiOutputEnabled, UserDef.kShiftJISShinjitaiOutputEnabled,
kHalfWidthPunctuationEnabled, UserDef.kHalfWidthPunctuationEnabled,
kSpecifyTabKeyBehavior, UserDef.kSpecifyShiftTabKeyBehavior,
kSpecifySpaceKeyBehavior, UserDef.kSpecifyShiftSpaceKeyBehavior,
kEscToCleanInputBuffer, UserDef.kEscToCleanInputBuffer,
kCandidateTextFontName, UserDef.kCandidateTextFontName,
kCandidateKeyLabelFontName, UserDef.kCandidateKeyLabelFontName,
kCandidateKeys, UserDef.kCandidateKeys,
kMoveCursorAfterSelectingCandidate, UserDef.kMoveCursorAfterSelectingCandidate,
kPhraseReplacementEnabled, UserDef.kPhraseReplacementEnabled,
kUseSCPCTypingMode, UserDef.kUseSCPCTypingMode,
kMaxCandidateLength, UserDef.kMaxCandidateLength,
kShouldNotFartInLieuOfBeep, UserDef.kShouldNotFartInLieuOfBeep,
kAssociatedPhrasesEnabled, UserDef.kAssociatedPhrasesEnabled,
] ]
} }
@ -227,139 +229,139 @@ struct ComposingBufferSize {
// Preferences Module plist private // Preferences Module plist private
// //
if UserDefaults.standard.object(forKey: kIsDebugModeEnabled) == nil { if UserDefaults.standard.object(forKey: UserDef.kIsDebugModeEnabled) == nil {
UserDefaults.standard.set(mgrPrefs.isDebugModeEnabled, forKey: kIsDebugModeEnabled) UserDefaults.standard.set(mgrPrefs.isDebugModeEnabled, forKey: UserDef.kIsDebugModeEnabled)
} }
// //
if UserDefaults.standard.object(forKey: kCheckUpdateAutomatically) == nil { if UserDefaults.standard.object(forKey: UserDef.kCheckUpdateAutomatically) == nil {
UserDefaults.standard.set(false, forKey: kCheckUpdateAutomatically) UserDefaults.standard.set(false, forKey: UserDef.kCheckUpdateAutomatically)
} }
// //
if UserDefaults.standard.object(forKey: kShowPageButtonsInCandidateWindow) == nil { if UserDefaults.standard.object(forKey: UserDef.kShowPageButtonsInCandidateWindow) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.showPageButtonsInCandidateWindow, forKey: kShowPageButtonsInCandidateWindow mgrPrefs.showPageButtonsInCandidateWindow, forKey: UserDef.kShowPageButtonsInCandidateWindow
) )
} }
// //
if UserDefaults.standard.object(forKey: kSymbolInputEnabled) == nil { if UserDefaults.standard.object(forKey: UserDef.kSymbolInputEnabled) == nil {
UserDefaults.standard.set(mgrPrefs.symbolInputEnabled, forKey: kSymbolInputEnabled) UserDefaults.standard.set(mgrPrefs.symbolInputEnabled, forKey: UserDef.kSymbolInputEnabled)
} }
// 18 // 18
if UserDefaults.standard.object(forKey: kCandidateListTextSize) == nil { if UserDefaults.standard.object(forKey: UserDef.kCandidateListTextSize) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.candidateListTextSize, forKey: kCandidateListTextSize) mgrPrefs.candidateListTextSize, forKey: UserDef.kCandidateListTextSize)
} }
// true // true
if UserDefaults.standard.object(forKey: kChooseCandidateUsingSpace) == nil { if UserDefaults.standard.object(forKey: UserDef.kChooseCandidateUsingSpace) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.chooseCandidateUsingSpace, forKey: kChooseCandidateUsingSpace) mgrPrefs.chooseCandidateUsingSpace, forKey: UserDef.kChooseCandidateUsingSpace)
} }
// 使 // 使
if UserDefaults.standard.object(forKey: kShouldAutoReloadUserDataFiles) == nil { if UserDefaults.standard.object(forKey: UserDef.kShouldAutoReloadUserDataFiles) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.shouldAutoReloadUserDataFiles, forKey: kShouldAutoReloadUserDataFiles) mgrPrefs.shouldAutoReloadUserDataFiles, forKey: UserDef.kShouldAutoReloadUserDataFiles)
} }
// Tab // Tab
if UserDefaults.standard.object(forKey: kSpecifyTabKeyBehavior) == nil { if UserDefaults.standard.object(forKey: UserDef.kSpecifyShiftTabKeyBehavior) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.specifyTabKeyBehavior, forKey: kSpecifyTabKeyBehavior) mgrPrefs.specifyShiftTabKeyBehavior, forKey: UserDef.kSpecifyShiftTabKeyBehavior)
} }
// Space // Space
if UserDefaults.standard.object(forKey: kSpecifySpaceKeyBehavior) == nil { if UserDefaults.standard.object(forKey: UserDef.kSpecifyShiftSpaceKeyBehavior) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.specifySpaceKeyBehavior, forKey: kSpecifySpaceKeyBehavior) mgrPrefs.specifyShiftSpaceKeyBehavior, forKey: UserDef.kSpecifyShiftSpaceKeyBehavior)
} }
// false // false
if UserDefaults.standard.object(forKey: kUseSCPCTypingMode) == nil { if UserDefaults.standard.object(forKey: UserDef.kUseSCPCTypingMode) == nil {
UserDefaults.standard.set(mgrPrefs.useSCPCTypingMode, forKey: kUseSCPCTypingMode) UserDefaults.standard.set(mgrPrefs.useSCPCTypingMode, forKey: UserDef.kUseSCPCTypingMode)
} }
// false // false
if UserDefaults.standard.object(forKey: kAssociatedPhrasesEnabled) == nil { if UserDefaults.standard.object(forKey: UserDef.kAssociatedPhrasesEnabled) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.associatedPhrasesEnabled, forKey: kAssociatedPhrasesEnabled) mgrPrefs.associatedPhrasesEnabled, forKey: UserDef.kAssociatedPhrasesEnabled)
} }
// 0 // 0
if UserDefaults.standard.object(forKey: kSelectPhraseAfterCursorAsCandidatePreference) if UserDefaults.standard.object(forKey: UserDef.kSelectPhraseAfterCursorAsCandidate)
== nil == nil
{ {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.selectPhraseAfterCursorAsCandidate, mgrPrefs.selectPhraseAfterCursorAsCandidate,
forKey: kSelectPhraseAfterCursorAsCandidatePreference) forKey: UserDef.kSelectPhraseAfterCursorAsCandidate)
} }
// //
if UserDefaults.standard.object(forKey: kMoveCursorAfterSelectingCandidate) == nil { if UserDefaults.standard.object(forKey: UserDef.kMoveCursorAfterSelectingCandidate) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.moveCursorAfterSelectingCandidate, mgrPrefs.moveCursorAfterSelectingCandidate,
forKey: kMoveCursorAfterSelectingCandidate) forKey: UserDef.kMoveCursorAfterSelectingCandidate)
} }
// //
if UserDefaults.standard.object(forKey: kUseHorizontalCandidateListPreference) == nil { if UserDefaults.standard.object(forKey: UserDef.kUseHorizontalCandidateList) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.useHorizontalCandidateList, forKey: kUseHorizontalCandidateListPreference) mgrPrefs.useHorizontalCandidateList, forKey: UserDef.kUseHorizontalCandidateList)
} }
// //
if UserDefaults.standard.object(forKey: kCNS11643Enabled) == nil { if UserDefaults.standard.object(forKey: UserDef.kCNS11643Enabled) == nil {
UserDefaults.standard.set(mgrPrefs.cns11643Enabled, forKey: kCNS11643Enabled) UserDefaults.standard.set(mgrPrefs.cns11643Enabled, forKey: UserDef.kCNS11643Enabled)
} }
// //
if UserDefaults.standard.object(forKey: kChineseConversionEnabled) == nil { if UserDefaults.standard.object(forKey: UserDef.kChineseConversionEnabled) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.chineseConversionEnabled, forKey: kChineseConversionEnabled) mgrPrefs.chineseConversionEnabled, forKey: UserDef.kChineseConversionEnabled)
} }
// JIS // JIS
if UserDefaults.standard.object(forKey: kShiftJISShinjitaiOutputEnabled) == nil { if UserDefaults.standard.object(forKey: UserDef.kShiftJISShinjitaiOutputEnabled) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.shiftJISShinjitaiOutputEnabled, forKey: kShiftJISShinjitaiOutputEnabled) mgrPrefs.shiftJISShinjitaiOutputEnabled, forKey: UserDef.kShiftJISShinjitaiOutputEnabled)
} }
// //
if UserDefaults.standard.object(forKey: kPhraseReplacementEnabled) == nil { if UserDefaults.standard.object(forKey: UserDef.kPhraseReplacementEnabled) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.phraseReplacementEnabled, forKey: kPhraseReplacementEnabled) mgrPrefs.phraseReplacementEnabled, forKey: UserDef.kPhraseReplacementEnabled)
} }
// //
if UserDefaults.standard.object(forKey: kShouldNotFartInLieuOfBeep) == nil { if UserDefaults.standard.object(forKey: UserDef.kShouldNotFartInLieuOfBeep) == nil {
UserDefaults.standard.set( UserDefaults.standard.set(
mgrPrefs.shouldNotFartInLieuOfBeep, forKey: kShouldNotFartInLieuOfBeep) mgrPrefs.shouldNotFartInLieuOfBeep, forKey: UserDef.kShouldNotFartInLieuOfBeep)
} }
UserDefaults.standard.synchronize() UserDefaults.standard.synchronize()
} }
@UserDefault(key: kIsDebugModeEnabled, defaultValue: false) @UserDefault(key: UserDef.kIsDebugModeEnabled, defaultValue: false)
@objc static var isDebugModeEnabled: Bool @objc static var isDebugModeEnabled: Bool
@UserDefault(key: kCheckUpdateAutomatically, defaultValue: false) @UserDefault(key: UserDef.kCheckUpdateAutomatically, defaultValue: false)
@objc static var checkUpdateAutomatically: Bool @objc static var checkUpdateAutomatically: Bool
@UserDefault(key: kUserDataFolderSpecified, defaultValue: "") @UserDefault(key: UserDef.kUserDataFolderSpecified, defaultValue: "")
@objc static var userDataFolderSpecified: String @objc static var userDataFolderSpecified: String
@objc static func ifSpecifiedUserDataPathExistsInPlist() -> Bool { @objc static func ifSpecifiedUserDataPathExistsInPlist() -> Bool {
UserDefaults.standard.object(forKey: kUserDataFolderSpecified) != nil UserDefaults.standard.object(forKey: UserDef.kUserDataFolderSpecified) != nil
} }
@UserDefault(key: kAppleLanguagesPreferences, defaultValue: []) @UserDefault(key: UserDef.kAppleLanguages, defaultValue: [])
@objc static var appleLanguages: [String] @objc static var appleLanguages: [String]
@UserDefault(key: kKeyboardLayoutPreference, defaultValue: 0) @UserDefault(key: UserDef.kKeyboardLayout, defaultValue: 0)
@objc static var keyboardLayout: Int @objc static var keyboardLayout: Int
@objc static var keyboardLayoutName: String { @objc static var keyboardLayoutName: String {
@ -367,75 +369,75 @@ struct ComposingBufferSize {
} }
@UserDefault( @UserDefault(
key: kBasisKeyboardLayoutPreference, defaultValue: "com.apple.keylayout.ZhuyinBopomofo") key: UserDef.kBasisKeyboardLayout, defaultValue: "com.apple.keylayout.ZhuyinBopomofo")
@objc static var basisKeyboardLayout: String @objc static var basisKeyboardLayout: String
@UserDefault(key: kShowPageButtonsInCandidateWindow, defaultValue: true) @UserDefault(key: UserDef.kShowPageButtonsInCandidateWindow, defaultValue: true)
@objc static var showPageButtonsInCandidateWindow: Bool @objc static var showPageButtonsInCandidateWindow: Bool
@CandidateListTextSize(key: kCandidateListTextSize) @CandidateListTextSize(key: UserDef.kCandidateListTextSize)
@objc static var candidateListTextSize: CGFloat @objc static var candidateListTextSize: CGFloat
@UserDefault(key: kShouldAutoReloadUserDataFiles, defaultValue: true) @UserDefault(key: UserDef.kShouldAutoReloadUserDataFiles, defaultValue: true)
@objc static var shouldAutoReloadUserDataFiles: Bool @objc static var shouldAutoReloadUserDataFiles: Bool
@UserDefault(key: kSelectPhraseAfterCursorAsCandidatePreference, defaultValue: false) @UserDefault(key: UserDef.kSelectPhraseAfterCursorAsCandidate, defaultValue: false)
@objc static var selectPhraseAfterCursorAsCandidate: Bool @objc static var selectPhraseAfterCursorAsCandidate: Bool
@UserDefault(key: kMoveCursorAfterSelectingCandidate, defaultValue: false) @UserDefault(key: UserDef.kMoveCursorAfterSelectingCandidate, defaultValue: true)
@objc static var moveCursorAfterSelectingCandidate: Bool @objc static var moveCursorAfterSelectingCandidate: Bool
@UserDefault(key: kUseHorizontalCandidateListPreference, defaultValue: true) @UserDefault(key: UserDef.kUseHorizontalCandidateList, defaultValue: true)
@objc static var useHorizontalCandidateList: Bool @objc static var useHorizontalCandidateList: Bool
@ComposingBufferSize(key: kComposingBufferSizePreference) @ComposingBufferSize(key: UserDef.kComposingBufferSize)
@objc static var composingBufferSize: Int @objc static var composingBufferSize: Int
@UserDefault(key: kChooseCandidateUsingSpace, defaultValue: true) @UserDefault(key: UserDef.kChooseCandidateUsingSpace, defaultValue: true)
@objc static var chooseCandidateUsingSpace: Bool @objc static var chooseCandidateUsingSpace: Bool
@UserDefault(key: kUseSCPCTypingMode, defaultValue: false) @UserDefault(key: UserDef.kUseSCPCTypingMode, defaultValue: false)
@objc static var useSCPCTypingMode: Bool @objc static var useSCPCTypingMode: Bool
@objc static func toggleSCPCTypingModeEnabled() -> Bool { @objc static func toggleSCPCTypingModeEnabled() -> Bool {
useSCPCTypingMode = !useSCPCTypingMode useSCPCTypingMode = !useSCPCTypingMode
UserDefaults.standard.set(useSCPCTypingMode, forKey: kUseSCPCTypingMode) UserDefaults.standard.set(useSCPCTypingMode, forKey: UserDef.kUseSCPCTypingMode)
return useSCPCTypingMode return useSCPCTypingMode
} }
@UserDefault(key: kMaxCandidateLength, defaultValue: kDefaultComposingBufferSize * 2) @UserDefault(key: UserDef.kMaxCandidateLength, defaultValue: kDefaultComposingBufferSize * 2)
@objc static var maxCandidateLength: Int @objc static var maxCandidateLength: Int
@UserDefault(key: kShouldNotFartInLieuOfBeep, defaultValue: true) @UserDefault(key: UserDef.kShouldNotFartInLieuOfBeep, defaultValue: true)
@objc static var shouldNotFartInLieuOfBeep: Bool @objc static var shouldNotFartInLieuOfBeep: Bool
@objc static func toggleShouldNotFartInLieuOfBeep() -> Bool { @objc static func toggleShouldNotFartInLieuOfBeep() -> Bool {
shouldNotFartInLieuOfBeep = !shouldNotFartInLieuOfBeep shouldNotFartInLieuOfBeep = !shouldNotFartInLieuOfBeep
UserDefaults.standard.set(shouldNotFartInLieuOfBeep, forKey: kShouldNotFartInLieuOfBeep) UserDefaults.standard.set(shouldNotFartInLieuOfBeep, forKey: UserDef.kShouldNotFartInLieuOfBeep)
return shouldNotFartInLieuOfBeep return shouldNotFartInLieuOfBeep
} }
@UserDefault(key: kCNS11643Enabled, defaultValue: false) @UserDefault(key: UserDef.kCNS11643Enabled, defaultValue: false)
@objc static var cns11643Enabled: Bool @objc static var cns11643Enabled: Bool
@objc static func toggleCNS11643Enabled() -> Bool { @objc static func toggleCNS11643Enabled() -> Bool {
cns11643Enabled = !cns11643Enabled cns11643Enabled = !cns11643Enabled
mgrLangModel.setCNSEnabled(cns11643Enabled) // mgrLangModel.setCNSEnabled(cns11643Enabled) //
UserDefaults.standard.set(cns11643Enabled, forKey: kCNS11643Enabled) UserDefaults.standard.set(cns11643Enabled, forKey: UserDef.kCNS11643Enabled)
return cns11643Enabled return cns11643Enabled
} }
@UserDefault(key: kSymbolInputEnabled, defaultValue: true) @UserDefault(key: UserDef.kSymbolInputEnabled, defaultValue: true)
@objc static var symbolInputEnabled: Bool @objc static var symbolInputEnabled: Bool
@objc static func toggleSymbolInputEnabled() -> Bool { @objc static func toggleSymbolInputEnabled() -> Bool {
symbolInputEnabled = !symbolInputEnabled symbolInputEnabled = !symbolInputEnabled
mgrLangModel.setSymbolEnabled(symbolInputEnabled) // mgrLangModel.setSymbolEnabled(symbolInputEnabled) //
UserDefaults.standard.set(symbolInputEnabled, forKey: kSymbolInputEnabled) UserDefaults.standard.set(symbolInputEnabled, forKey: UserDef.kSymbolInputEnabled)
return symbolInputEnabled return symbolInputEnabled
} }
@UserDefault(key: kChineseConversionEnabled, defaultValue: false) @UserDefault(key: UserDef.kChineseConversionEnabled, defaultValue: false)
@objc static var chineseConversionEnabled: Bool @objc static var chineseConversionEnabled: Bool
@objc @discardableResult static func toggleChineseConversionEnabled() -> Bool { @objc @discardableResult static func toggleChineseConversionEnabled() -> Bool {
@ -444,13 +446,13 @@ struct ComposingBufferSize {
if chineseConversionEnabled && shiftJISShinjitaiOutputEnabled { if chineseConversionEnabled && shiftJISShinjitaiOutputEnabled {
self.toggleShiftJISShinjitaiOutputEnabled() self.toggleShiftJISShinjitaiOutputEnabled()
UserDefaults.standard.set( UserDefaults.standard.set(
shiftJISShinjitaiOutputEnabled, forKey: kShiftJISShinjitaiOutputEnabled) shiftJISShinjitaiOutputEnabled, forKey: UserDef.kShiftJISShinjitaiOutputEnabled)
} }
UserDefaults.standard.set(chineseConversionEnabled, forKey: kChineseConversionEnabled) UserDefaults.standard.set(chineseConversionEnabled, forKey: UserDef.kChineseConversionEnabled)
return chineseConversionEnabled return chineseConversionEnabled
} }
@UserDefault(key: kShiftJISShinjitaiOutputEnabled, defaultValue: false) @UserDefault(key: UserDef.kShiftJISShinjitaiOutputEnabled, defaultValue: false)
@objc static var shiftJISShinjitaiOutputEnabled: Bool @objc static var shiftJISShinjitaiOutputEnabled: Bool
@objc @discardableResult static func toggleShiftJISShinjitaiOutputEnabled() -> Bool { @objc @discardableResult static func toggleShiftJISShinjitaiOutputEnabled() -> Bool {
@ -460,11 +462,11 @@ struct ComposingBufferSize {
self.toggleChineseConversionEnabled() self.toggleChineseConversionEnabled()
} }
UserDefaults.standard.set( UserDefaults.standard.set(
shiftJISShinjitaiOutputEnabled, forKey: kShiftJISShinjitaiOutputEnabled) shiftJISShinjitaiOutputEnabled, forKey: UserDef.kShiftJISShinjitaiOutputEnabled)
return shiftJISShinjitaiOutputEnabled return shiftJISShinjitaiOutputEnabled
} }
@UserDefault(key: kHalfWidthPunctuationEnabled, defaultValue: false) @UserDefault(key: UserDef.kHalfWidthPunctuationEnabled, defaultValue: false)
@objc static var halfWidthPunctuationEnabled: Bool @objc static var halfWidthPunctuationEnabled: Bool
@objc static func toggleHalfWidthPunctuationEnabled() -> Bool { @objc static func toggleHalfWidthPunctuationEnabled() -> Bool {
@ -472,23 +474,23 @@ struct ComposingBufferSize {
return halfWidthPunctuationEnabled return halfWidthPunctuationEnabled
} }
@UserDefault(key: kEscToCleanInputBuffer, defaultValue: true) @UserDefault(key: UserDef.kEscToCleanInputBuffer, defaultValue: true)
@objc static var escToCleanInputBuffer: Bool @objc static var escToCleanInputBuffer: Bool
@UserDefault(key: kSpecifyTabKeyBehavior, defaultValue: false) @UserDefault(key: UserDef.kSpecifyShiftTabKeyBehavior, defaultValue: false)
@objc static var specifyTabKeyBehavior: Bool @objc static var specifyShiftTabKeyBehavior: Bool
@UserDefault(key: kSpecifySpaceKeyBehavior, defaultValue: false) @UserDefault(key: UserDef.kSpecifyShiftSpaceKeyBehavior, defaultValue: false)
@objc static var specifySpaceKeyBehavior: Bool @objc static var specifyShiftSpaceKeyBehavior: Bool
// MARK: - Optional settings // MARK: - Optional settings
@UserDefault(key: kCandidateTextFontName, defaultValue: nil) @UserDefault(key: UserDef.kCandidateTextFontName, defaultValue: nil)
@objc static var candidateTextFontName: String? @objc static var candidateTextFontName: String?
@UserDefault(key: kCandidateKeyLabelFontName, defaultValue: nil) @UserDefault(key: UserDef.kCandidateKeyLabelFontName, defaultValue: nil)
@objc static var candidateKeyLabelFontName: String? @objc static var candidateKeyLabelFontName: String?
@UserDefault(key: kCandidateKeys, defaultValue: kDefaultKeys) @UserDefault(key: UserDef.kCandidateKeys, defaultValue: kDefaultKeys)
@objc static var candidateKeys: String @objc static var candidateKeys: String
@objc static var defaultCandidateKeys: String { @objc static var defaultCandidateKeys: String {
@ -551,22 +553,22 @@ struct ComposingBufferSize {
} }
@UserDefault(key: kPhraseReplacementEnabled, defaultValue: false) @UserDefault(key: UserDef.kPhraseReplacementEnabled, defaultValue: false)
@objc static var phraseReplacementEnabled: Bool @objc static var phraseReplacementEnabled: Bool
@objc static func togglePhraseReplacementEnabled() -> Bool { @objc static func togglePhraseReplacementEnabled() -> Bool {
phraseReplacementEnabled = !phraseReplacementEnabled phraseReplacementEnabled = !phraseReplacementEnabled
mgrLangModel.setPhraseReplacementEnabled(phraseReplacementEnabled) mgrLangModel.setPhraseReplacementEnabled(phraseReplacementEnabled)
UserDefaults.standard.set(phraseReplacementEnabled, forKey: kPhraseReplacementEnabled) UserDefaults.standard.set(phraseReplacementEnabled, forKey: UserDef.kPhraseReplacementEnabled)
return phraseReplacementEnabled return phraseReplacementEnabled
} }
@UserDefault(key: kAssociatedPhrasesEnabled, defaultValue: false) @UserDefault(key: UserDef.kAssociatedPhrasesEnabled, defaultValue: false)
@objc static var associatedPhrasesEnabled: Bool @objc static var associatedPhrasesEnabled: Bool
@objc static func toggleAssociatedPhrasesEnabled() -> Bool { @objc static func toggleAssociatedPhrasesEnabled() -> Bool {
associatedPhrasesEnabled = !associatedPhrasesEnabled associatedPhrasesEnabled = !associatedPhrasesEnabled
UserDefaults.standard.set(associatedPhrasesEnabled, forKey: kAssociatedPhrasesEnabled) UserDefaults.standard.set(associatedPhrasesEnabled, forKey: UserDef.kAssociatedPhrasesEnabled)
return associatedPhrasesEnabled return associatedPhrasesEnabled
} }