Trim the README and polish the display selection

The settings-storage paragraph goes back to the one sentence it was. The screen list now shows native resolutions rather than the scaled ones, the Turkish tab is named Ekran, and the repositioning comment says what a named screen changes.
This commit is contained in:
2026-08-27 15:52:02 +03:00
parent e6208418f9
commit 23243c5171
5 changed files with 17 additions and 23 deletions
+5 -11
View File
@@ -117,17 +117,11 @@ run here by default, on models of your own. The cloud is the other option:
speech to text on **OpenAI**, **Groq** or **OpenRouter** (`gpt-4o-transcribe`),
cleanup on OpenRouter (`google/gemini-3.5-flash-lite`) or, when either is
installed, on Claude Code or Codex. The keys fall back to `OPENAI_API_KEY`,
`GROQ_API_KEY` and `OPENROUTER_API_KEY`.
All settings, including the indicator screen and corner, are stored outside the
application: in `$XDG_CONFIG_HOME/dikte/config.json` (normally
`~/.config/dikte/config.json`) on Linux, `%APPDATA%\Dikte\config.json` on
Windows, and `~/Library/Application Support/Dikte/config.json` on macOS. The
file is mode 600 where Unix permissions apply. Rebuilding, replacing or
updating Dikte therefore keeps the settings. Only removing that file or
uninstalling with `--purge` resets them. Cleanup can be switched off, in which
case the raw transcript is pasted, and a thinking model's effort can be set
next to it.
`GROQ_API_KEY` and `OPENROUTER_API_KEY`, and are stored in
`~/.config/dikte/config.json`, mode 600, or in
`~/Library/Application Support/Dikte` on a Mac. Cleanup can be switched off, in
which case the raw transcript is pasted, and a thinking model's effort can be
set next to it.
## Using it
+2 -9
View File
@@ -114,15 +114,8 @@ seçersen sesi yazıya çevirme **OpenAI**, **Groq** ya da **OpenRouter**'da
(varsayılan `gpt-4o-transcribe`), temizleme OpenRouter'da
(`google/gemini-3.5-flash-lite`) ya da kuruluysa Claude Code veya Codex'te
çalışır. Anahtarları boş bırakırsan `OPENAI_API_KEY`, `GROQ_API_KEY` ve
`OPENROUTER_API_KEY` kullanılır.
Gösterge ekranı ve köşesi dahil bütün ayarlar uygulamanın dışında saklanır:
Linux'ta `$XDG_CONFIG_HOME/dikte/config.json` (normalde
`~/.config/dikte/config.json`), Windows'ta `%APPDATA%\Dikte\config.json`,
macOS'ta `~/Library/Application Support/Dikte/config.json`. Unix izinlerinin
geçerli olduğu sistemlerde dosyanın izni 600'dür. Bu nedenle Dikte'yi yeniden
derlemek, değiştirmek veya güncellemek ayarları silmez. Yalnızca bu dosyayı
silmek ya da kaldırıcıyı `--purge` ile çalıştırmak ayarları sıfırlar.
`OPENROUTER_API_KEY` kullanılır; anahtarlar `~/.config/dikte/config.json`
içinde, izinler 600, Mac'te ise `~/Library/Application Support/Dikte` altında.
Temizlemeyi tamamen kapatabilirsin, o zaman ham transkript yapıştırılır; modelin
yanındaki kutudan düşünme seviyesini de seçebilirsin.
+1 -1
View File
@@ -150,7 +150,7 @@ TR = {
# --- settings: tabs and general ------------------------------------
"Dikte Settings": "Dikte Ayarları",
"General": "Genel",
"Display": "Görüntü",
"Display": "Ekran",
"API and models": "API ve modeller",
"Cleanup rules": "Temizleme kuralları",
"Audio file": "Ses dosyası",
+4 -1
View File
@@ -246,7 +246,10 @@ class Overlay(QWidget):
self.resize(width, HEIGHT)
def _reposition(self):
# On a multi-monitor setup, show up where the user actually is.
# The screen the settings name, or, when none is named or it is not
# plugged in right now, where the user actually is. Names are connector
# names on X11 and model names on macOS, where two identical monitors
# can share one; the first then wins.
screen = next(
(item for item in QApplication.screens() if item.name() == self.screen_name),
None,
+5 -1
View File
@@ -732,10 +732,14 @@ class SettingsWindow(QDialog):
self.indicator_screen = QComboBox()
self.indicator_screen.addItem(t("Follow the mouse pointer"), "")
for screen in QGuiApplication.screens():
# The native resolution, so that a scaled 4K screen reads
# 3840 × 2160 and not the 1920 × 1080 Qt sees through the scale.
area = screen.geometry()
ratio = screen.devicePixelRatio()
self.indicator_screen.addItem(
t("{name} ({width} × {height})", name=screen.name(),
width=area.width(), height=area.height()),
width=round(area.width() * ratio),
height=round(area.height() * ratio)),
screen.name(),
)
form.addRow(t("Indicator screen"), self.indicator_screen)