Files

90 lines
3.5 KiB
Go

// Cthulhu screen reader.
// Copyright (c) 2026 Storm Dragon
// Authors: Storm Dragon, Angus Kola
//
// This program is free software: you can redistribute it and/or modify it
// under the terms of the GNU General Public License as published by the Free
// Software Foundation, either version 3 of the License, or (at your option)
// any later version.
//
// This program is distributed in the hope that it will be useful, but WITHOUT
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
// more details.
//
// You should have received a copy of the GNU General Public License along with
// this program. If not, see <https://www.gnu.org/licenses/gpl-3.0.html>.
package config
func DefaultSettings() Settings {
return Settings{
OCR: OCRSettings{Layout: 3, Scale: 1, Threshold: 200, RefreshInterval: 1500, ConfirmClick: true},
TimeFormat: "locale", DateFormat: "locale",
EnableSound: true, SoundVolume: 0.5, SoundSink: "auto", SoundTheme: "default",
PlaySoundForRole: true, PlaySoundForState: true, PlaySoundForPositionInSet: true,
ProgressBar: DefaultProgressBarSettings(),
RoleSoundPresentation: "sound_and_speech",
EnableSpeech: true,
SpeechHistoryLimit: DefaultSpeechHistoryLimit,
Braille: BrailleOptions{Verbosity: 1, SelectionIndicator: 0xc0, LinkIndicator: 0xc0,
FlashMessages: true, FlashTime: 5000, FlashDetailed: true},
SpeechServerFactory: "speechdispatcherfactory",
HardwareSpeechBaudRate: 9600,
SpeakDescription: true,
SpeechVerbosityLevel: 1,
SayAllStyle: "line",
TextAttributes: DefaultTextAttributes(),
Reading: ReadingSettings{
AutomaticallyReadTitleChanges: true,
EnablePauseBreaks: true,
SpeakNumbersAsDigits: false,
SpeakMultiCaseStringsAsWords: false,
EnableIndentation: false,
IndentationPresentationMode: "speech",
OnlySpeakDisplayedText: false,
SpeakBlankLines: true,
EnableMnemonicSpeaking: true,
EnablePositionSpeaking: false,
EnableTutorialMessages: false,
MessagesAreDetailed: true,
UseColorNames: true,
SpeakMisspelledIndicator: true,
SpeakContextBlockquote: true,
SpeakContextList: true,
SpeakContextTable: true,
SpeakContextPanel: true,
SpeakContextLandmark: true,
SpeakContextNonLandmarkForm: true,
SayAllContextBlockquote: true,
SayAllContextList: true,
SayAllContextTable: true,
SayAllContextPanel: true,
SayAllContextLandmark: true,
SayAllContextNonLandmarkForm: true,
ReadFullRowInGUITable: true,
ReadFullRowInDocumentTable: true,
ReadFullRowInSpreadSheet: false,
},
VerbalizePunctuationStyle: 1,
CapitalizationStyle: "none",
KeyboardLayout: 1,
CthulhuModifierKeys: []string{"Insert", "KP_Insert"},
UseCustomEchoForKey: true,
UseCustomEchoForCharacter: true,
EnableKeyEcho: true,
EnableEchoByCharacter: false,
EnableEchoByWord: false,
EnableEchoBySentence: false,
EnableAlphabeticKeys: true,
EnableNumericKeys: true,
EnablePunctuationKeys: true,
EnableSpace: true,
EnableModifierKeys: true,
EnableFunctionKeys: true,
EnableActionKeys: true,
EnableNavigationKeys: false,
EnableDiacriticalKeys: false,
}
}