All notable changes to TransPaste will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Keyboard shortcut (Ctrl+Shift+T) to toggle translation on/off
- Translation history with up to 50 entries, persisted across sessions
- About dialog with version, license, and project link
- Custom prompt support - users can define their own translation prompts
- Ollama API base URL configuration via
--base-urlCLI flag - HTTP proxy support via
--proxyCLI flag - Markdown code block stripping in post-processing
- Full docstrings for all classes and methods
- Type hints throughout the codebase
- ruff and black linting/formatting configuration
- pytest configuration in pyproject.toml
- GitHub Actions CI/CD workflow (test, lint, release)
- Project classifiers and keywords in pyproject.toml
- Development dependencies via
[project.optional-dependencies]
- Replaced
print()based logging with Python'sloggingmodule --debugflag now properly controls logging verbosity (was hardcoded to True)- Progress estimation improved from character-count heuristic to response-based tracking
- Module-level side effects removed (no more logging at import time)
- Version synchronized between
pyproject.tomland__init__.py
- Markdown code blocks (
text ...) from LLM output are now properly stripped - Version mismatch between pyproject.toml (0.2.0) and init.py (0.2.1)
- Legacy duplicate files:
app.py,clipboard_translator.py - Stray files:
tmp.md,Thumbs.db,提示词参考.md
- Streaming translation with real-time progress updates
- Translation cancel support
- 16 languages with auto-detect support
- 7 translation styles (Default, Formal, Casual, Academic, Literary, Technical, Simple)
- 5 length control options (Unlimited, Brief, Short, Medium, Detailed)
- Temperature control (0.1, 0.3, 0.5, 0.7, 1.0)
- Dynamic model discovery from Ollama
- System tray with animated status icons
- Settings persistence via QSettings
- macOS clipboard polling fallback
- CLI arguments for model, language, style, length, temperature
- Post-processing: LLM prefix removal, smart quote handling
- Comprehensive test suite
- Initial release
- Basic clipboard monitoring and translation
- System tray icon
- Ollama integration