Improve settings.json, fixes #53 (#59)

This commit is contained in:
Thorsten Sommer 2024-07-28 21:18:17 +02:00 committed by GitHub
parent 76dd08ee11
commit 60febfec86
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 14 additions and 3 deletions

View File

@ -98,7 +98,7 @@ public sealed class Data
/// <summary>
/// The live translation interval for debouncing in milliseconds.
/// </summary>
public int LiveTranslationDebounceIntervalMilliseconds { get; set; } = 1_000;
public int LiveTranslationDebounceIntervalMilliseconds { get; set; } = 1_500;
/// <summary>
/// Do we want to preselect any translator options?

View File

@ -1,4 +1,6 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using AIStudio.Provider;
using AIStudio.Settings.DataModel;
@ -13,6 +15,12 @@ public sealed class SettingsManager
{
private const string SETTINGS_FILENAME = "settings.json";
private static readonly JsonSerializerOptions JSON_OPTIONS = new()
{
WriteIndented = true,
Converters = { new JsonStringEnumConverter() },
};
/// <summary>
/// The directory where the configuration files are stored.
/// </summary>
@ -101,7 +109,7 @@ public sealed class SettingsManager
return;
var settingsJson = await File.ReadAllTextAsync(settingsPath);
var loadedConfiguration = JsonSerializer.Deserialize<Data>(settingsJson);
var loadedConfiguration = JsonSerializer.Deserialize<Data>(settingsJson, JSON_OPTIONS);
if(loadedConfiguration is null)
return;
@ -120,7 +128,7 @@ public sealed class SettingsManager
if(!Directory.Exists(ConfigDirectory))
Directory.CreateDirectory(ConfigDirectory!);
var settingsJson = JsonSerializer.Serialize(this.ConfigurationData);
var settingsJson = JsonSerializer.Serialize(this.ConfigurationData, JSON_OPTIONS);
await File.WriteAllTextAsync(settingsPath, settingsJson);
}

View File

@ -0,0 +1,3 @@
# v0.8.6, build 168
- Improved the readability of the `settings.json` file by using indentation and enum names instead of numbers
- Increased the default value for the live translation delay from 1,000 to 1,500 ms