release: ship v1.5.0 with on-device writing suggestions
Adds next-sentence suggestions while typing, weekly input insights and a personal phrase memory to the desktop app, and fixes custom instructions so they process the text instead of inserting the instruction's own wording. Local model requests are now bounded and individually cancellable. Bumps the product version to 1.5.0 (Android/iOS build 1050000), refreshes the landing and web download links, and records the new INPUT feature rows and the open verification gaps in the infrastructure map.
This commit is contained in:
parent
99f06c253c
commit
5c11ee2fde
104 changed files with 14410 additions and 174 deletions
|
|
@ -325,5 +325,192 @@
|
|||
"keybinding.ui.recordHint": "Nhập tổ hợp phím (ví dụ: Ctrl+Shift+Q) hoặc phím đơn (ví dụ: F5)",
|
||||
"keybinding.ui.recordAgain": "Nhập lại",
|
||||
"keybinding.ui.saveFailed": "Không thể lưu phím tắt",
|
||||
"keybinding.ui.globalEnabled": "Bật phím tắt toàn cục"
|
||||
"keybinding.ui.globalEnabled": "Bật phím tắt toàn cục",
|
||||
"input.tab": "Nhập liệu",
|
||||
"input.consent.title": "Thu thập dữ liệu nhập liệu",
|
||||
"input.consent.description": "Tùy chọn. Chúng tôi đếm số lần gõ phím và nhấp chuột, đo quãng đường di chuyển của chuột để hiển thị thói quen nhập liệu của bạn. Nội dung phím bạn gõ không bao giờ được lưu.",
|
||||
"input.consent.collect": "Thu thập thống kê bàn phím và chuột",
|
||||
"input.consent.running": "Đang thu thập.",
|
||||
"input.consent.stopped": "Tính năng thu thập đang tắt. Không có gì được ghi lại.",
|
||||
"input.consent.pause": "Tạm dừng thu thập",
|
||||
"input.consent.learnText": "Học văn bản tôi gõ",
|
||||
"input.consent.learnTextHint": "Đọc ô nhập liệu đang được chọn để học cách diễn đạt của bạn. Ô mật khẩu luôn bị bỏ qua.",
|
||||
"input.consent.excludedApps": "Ứng dụng loại trừ",
|
||||
"input.consent.excludedAppsPlaceholder": "keepassxc.exe, 1password.exe",
|
||||
"input.consent.excludedAppsHint": "Tên tệp thực thi, cách nhau bằng dấu phẩy. Không đọc và không đếm gì trong các ứng dụng này.",
|
||||
"input.consent.clearAll": "Xóa dữ liệu đã thu thập",
|
||||
"input.suggestion.title": "Gợi ý câu tiếp theo",
|
||||
"input.suggestion.description": "Dự đoán câu bạn sắp viết và hiển thị bên cạnh con trỏ. Chấp nhận để chèn.",
|
||||
"input.suggestion.enabled": "Hiện gợi ý khi đang gõ",
|
||||
"input.suggestion.modelReady": "Mô hình cục bộ đã sẵn sàng.",
|
||||
"input.suggestion.modelMissing": "Mô hình cục bộ chưa chạy — gợi ý tạm tắt.",
|
||||
"input.suggestion.delay": "Độ trễ (ms)",
|
||||
"input.suggestion.minPrefix": "Số ký tự tối thiểu",
|
||||
"input.suggestion.modelDefault": "Dùng mô hình mặc định",
|
||||
"input.suggestion.overlayInteractive": "Cho phép nhấp vào hộp gợi ý",
|
||||
"input.suggestion.overlayVisible": "Gợi ý đang hiển thị",
|
||||
"input.suggestion.keyHint": "Chấp nhận, chuyển và đóng là phím tắt toàn cục — đổi trong Cài đặt > Phím tắt.",
|
||||
"input.suggestion.requestNow": "Gợi ý ngay",
|
||||
"input.suggestion.usage": "Hôm nay đã dùng {{requests}}/{{budget}} lượt",
|
||||
"input.suggestion.lastSkip": "Lý do bỏ qua gần nhất: {{reason}}",
|
||||
"input.insights.title": "{{days}} ngày gần đây",
|
||||
"input.insights.keystrokes": "Lần gõ phím",
|
||||
"input.insights.clicks": "Lần nhấp",
|
||||
"input.insights.words": "Từ đã gõ",
|
||||
"input.insights.sentences": "Câu",
|
||||
"input.insights.mouseDistance": "Quãng đường chuột",
|
||||
"input.insights.perDayMeters": " m/ngày",
|
||||
"input.insights.phrases": "Cụm từ cá nhân",
|
||||
"input.insights.empty": "Chưa thu thập hoạt động nào.",
|
||||
"input.insights.topApps": "Nơi bạn gõ nhiều nhất",
|
||||
"input.insights.appRow": "{{keystrokes}} phím · {{clicks}} nhấp",
|
||||
"input.insights.privacyNote": "Thiết bị này chỉ lưu số đếm và khoảng cách. Nội dung phím không bao giờ được lưu.",
|
||||
"input.phrases.title": "Cụm từ cá nhân",
|
||||
"input.phrases.description": "Các câu học từ việc gõ và đọc chính tả của bạn, dùng để khớp với văn phong.",
|
||||
"input.phrases.empty": "Chưa học được gì.",
|
||||
"input.phrases.delete": "Xóa cụm từ",
|
||||
"input.feedback.excludedSaved": "Đã lưu danh sách loại trừ.",
|
||||
"input.feedback.cleared": "Đã xóa dữ liệu thu thập.",
|
||||
"popup.suggestion.hintAccept": "Chấp nhận",
|
||||
"popup.suggestion.hintNext": "Tiếp",
|
||||
"popup.suggestion.hintDismiss": "Đóng",
|
||||
"popup.suggestion.loading": "Đang tạo…",
|
||||
"keybinding.ui.sectionInput": "Gợi ý nhập liệu",
|
||||
"keybinding.action.suggestionAccept": "Chấp nhận gợi ý",
|
||||
"keybinding.action.suggestionAccept.desc": "Chèn câu gợi ý vào ứng dụng đang được chọn.",
|
||||
"keybinding.action.suggestionNext": "Gợi ý tiếp theo",
|
||||
"keybinding.action.suggestionNext.desc": "Chuyển sang ứng viên tiếp theo.",
|
||||
"keybinding.action.suggestionDismiss": "Đóng gi ý",
|
||||
"keybinding.action.suggestionDismiss.desc": "Ẩn gợi ý hiện tại.",
|
||||
"input.suggestion.timeout": "Giới hạn phản hồi (ms)",
|
||||
"input.suggestion.latency": "Phản hồi trước: {{ms}} ms",
|
||||
"input.suggestion.slowWarning": "Chậm hơn tốc độ gõ — thử mô hình nhỏ hơn.",
|
||||
"input.diagnostics.title": "Chẩn đoán trực tiếp",
|
||||
"input.diagnostics.app": "Ứng dụng đang chọn: {{app}}",
|
||||
"input.diagnostics.unknownApp": "(không rõ)",
|
||||
"input.diagnostics.noSnapshot": "Chưa đọc được ô nhập nào — hãy nhấp vào ô văn bản và gõ.",
|
||||
"input.diagnostics.readable": "Đọc được ô nhập ({{source}}, {{length}} ký tự) — gợi ý có thể chạy.",
|
||||
"input.diagnostics.notReadable": "Ứng dụng này không công bố ô nhập — không đọc được nên không tạo gợi ý.",
|
||||
"input.diagnostics.password": "Ô mật khẩu — chặn đọc theo thiết kế.",
|
||||
"input.diagnostics.caretFallback": "Không có vị trí con trỏ; dùng cuối tài liệu.",
|
||||
"input.diagnostics.composing": "Đang tổ hợp IME — gợi ý sẽ xuất hiện muộn hơn một chút.",
|
||||
"input.suggestion.onScreenLabel": "Trạng thái lớp phủ",
|
||||
"input.suggestion.onScreen": "Đang hiện",
|
||||
"input.suggestion.offScreen": "Đang ẩn",
|
||||
"input.suggestion.generating": "Đang tạo…",
|
||||
"input.kbView.knowledge": "Kho tri thức",
|
||||
"input.kbView.insights": "Phân tích nhập liệu",
|
||||
"input.insights.tabs.overview": "Tổng quan",
|
||||
"input.insights.tabs.keyboard": "Bàn phím",
|
||||
"input.insights.tabs.mouse": "Chuột",
|
||||
"input.insights.tabs.apps": "Ứng dụng",
|
||||
"input.insights.tabs.phrases": "Cụm từ · gợi ý",
|
||||
"input.insights.chars": "Ký tự đã gõ",
|
||||
"input.insights.wordChars": "Ký tự",
|
||||
"input.insights.backspaces": "Xóa lùi",
|
||||
"input.insights.shortcuts": "Phím tắt",
|
||||
"input.insights.doubleClicks": "Nháy đúp",
|
||||
"input.insights.scrollTicks": "Cuộn",
|
||||
"input.insights.activeMinutes": "Thời gian hoạt động",
|
||||
"input.insights.activeDays": "Số ngày ghi nhận",
|
||||
"input.insights.streak": "Chuỗi dài nhất",
|
||||
"input.insights.peakDay": "Ngày nhiều nhất",
|
||||
"input.insights.perDayAverage": "Trung bình mỗi ngày",
|
||||
"input.insights.mouseDistanceTotal": "Tổng quãng đường chuột",
|
||||
"input.insights.hourlyTitle": "Theo giờ (0-23)",
|
||||
"input.insights.dailyTitle": "Xu hướng theo ngày",
|
||||
"input.insights.wordsDailyTitle": "Từ mỗi ngày",
|
||||
"input.insights.distanceDailyTitle": "Quãng đường chuột mỗi ngày",
|
||||
"input.insights.topHoursHint": "Busiest hours: {{hours}}",
|
||||
"input.insights.mouseNote": "Mouse travel is the sum of per-axis absolute deltas (Manhattan), the same measure ActivityWatch uses.",
|
||||
"input.insights.appsHint": "Top apps by typing volume. The bar is that app’s share of all keystrokes.",
|
||||
"input.insights.suggestions": "Gợi ý",
|
||||
"input.insights.suggestionsTotal": "Đã tạo",
|
||||
"input.insights.suggestionsAccepted": "Đã chấp nhận",
|
||||
"input.insights.acceptRate": "Tỷ lệ chấp nhận",
|
||||
"input.insights.avgLatency": "Phản hồi trung bình",
|
||||
"input.insights.suggestionHistory": "Gợi ý gần đây",
|
||||
"input.insights.accepted": "đã chấp nhận",
|
||||
"input.insights.notAccepted": "chưa chấp nhận",
|
||||
"input.insights.noSuggestions": "No suggestions recorded yet.",
|
||||
"input.insights.samplesNote": "{{count}} learned samples.",
|
||||
"input.insights.collectedAt": "Last capture {{at}}",
|
||||
"input.insights.rangeLabel": "Khoảng",
|
||||
"input.insights.rangeDays": "{{days}} ngày",
|
||||
"input.insights.headerSummary": "Last {{days}} days · {{keys}} keystrokes · {{apps}} apps",
|
||||
"input.insights.disabledHint": "Input collection is off. Turn it on in Settings > Input and statistics will collect here.",
|
||||
"input.insights.statsMovedHint": "Thống kê chi tiết nằm ở Kho tri thức > Phân tích nhập liệu.",
|
||||
"input.chart.max": "tối đa {{value}}",
|
||||
"input.chart.noData": "Chưa có dữ liệu.",
|
||||
"input.unit.perDay": "/ngày",
|
||||
"input.unit.perDayMeters": "m/ngày",
|
||||
"input.unit.meters": "m",
|
||||
"input.unit.ms": "ms",
|
||||
"input.unit.percent": "%",
|
||||
"popup.suggestion.warming": "Đang chuẩn bị mô hình…",
|
||||
"popup.suggestion.hintGenerating": "Đang tạo…",
|
||||
"keybinding.action.suggestionPrev": "Gợi ý trước",
|
||||
"keybinding.action.suggestionPrev.desc": "Chuyển về ứng viên trước đó.",
|
||||
"input.insights.tabs.graph": "Đồ thị",
|
||||
"input.graph.description": "Your sentences are stored as nodes and their relations as edges (what follows what, which share terms) so suggestions can pull personal context. Local only.",
|
||||
"input.graph.nodes": "Nút câu",
|
||||
"input.graph.followsEdges": "Liên kết tiếp nối",
|
||||
"input.graph.sharesEdges": "Liên kết theo từ",
|
||||
"input.graph.topEdges": "Liên kết mạnh nhất",
|
||||
"input.graph.recentNodes": "Nút gần đây",
|
||||
"input.graph.searchLabel": "Tìm câu",
|
||||
"input.graph.searchPlaceholder": "e.g. meeting schedule",
|
||||
"input.graph.searchAction": "Tìm",
|
||||
"input.graph.neighbors": "Câu liên kết",
|
||||
"input.graph.empty": "The graph is empty. Enable \"Learn the text I type\" in Settings > Input and it fills up.",
|
||||
"input.graph.kindFollows": "tiếp nối",
|
||||
"input.graph.kindShares": "chia sẻ từ",
|
||||
"popup.suggestion.generating": "Đang tạo… ({{seconds}} giây)",
|
||||
"keybinding.ui.auditClear": "Không có xung đột hay cài đặt phím tắt không hợp lệ.",
|
||||
"keybinding.ui.auditIssues": "{{count}} vấn đề về phím tắt",
|
||||
"keybinding.ui.auditInvalid": "{{action}}: {{reason}}",
|
||||
"keybinding.ui.auditConflict": "{{action}} xung đột với {{conflicts}}",
|
||||
"keybinding.ui.auditUnknown": "Vấn đề không xác định",
|
||||
"input.flow.title": "Khung giờ dễ tập trung",
|
||||
"input.flow.empty": "Chưa đủ dữ liệu nhập theo giờ.",
|
||||
"input.flow.hour": "{{hour}}:00",
|
||||
"input.flow.window": "Điểm {{score}} · {{minutes}} phút hoạt động/ngày · {{friction}}% chỉnh sửa",
|
||||
"input.friction.title": "Ma sát chỉnh sửa",
|
||||
"input.friction.value": "{{count}} trên 100 ký tự",
|
||||
"input.friction.band.steady": "Ổn định",
|
||||
"input.friction.band.watch": "Theo dõi",
|
||||
"input.friction.band.high": "Cao",
|
||||
"input.appQuality.title": "Chất lượng gợi ý theo ứng dụng",
|
||||
"input.appQuality.empty": "Chưa có lịch sử gợi ý theo ứng dụng.",
|
||||
"input.appQuality.row": "Đã nhận {{accepted}}/{{total}} · {{rate}}% · {{latency}}ms",
|
||||
"input.phrases.metadata": "{{source}} · {{count}}× · {{app}}",
|
||||
"input.phrases.appUnknown": "Dùng chung",
|
||||
"input.privacy.title": "Biên nhận dữ liệu cục bộ",
|
||||
"input.privacy.localOnly": "Dữ liệu này chỉ ở trên thiết bị này.",
|
||||
"input.privacy.rawKeys": "Các sự kiện phím riêng lẻ và mã phím thô không được lưu giữ. Mẫu văn bản đã học được liệt kê riêng bên dưới.",
|
||||
"input.privacy.activityRetention": "Lưu giữ hoạt động",
|
||||
"input.privacy.suggestionRetention": "Lưu giữ gợi ý",
|
||||
"input.privacy.learnedRetention": "Lưu giữ văn bản đã học",
|
||||
"input.privacy.activityBuckets": "Nhóm hoạt động",
|
||||
"input.privacy.typingSamples": "Mẫu nhập",
|
||||
"input.privacy.personalPhrases": "Cụm từ cá nhân",
|
||||
"input.privacy.suggestions": "Bản ghi gợi ý",
|
||||
"input.privacy.days": "{{days}} ngày",
|
||||
"input.privacy.untilDeleted": "Đến khi xóa",
|
||||
"input.exclusion.recommendation": "{{app}} có {{samples}} lần nhập không đọc được lặp lại ({{reason}}).",
|
||||
"input.exclusion.reason.repeated-unreadable": "không đọc được lặp lại",
|
||||
"input.exclusion.reason.repeated-empty": "trống lặp lại",
|
||||
"input.exclusion.addButton": "Thêm {{app}} vào loại trừ",
|
||||
"input.feedback.recommendationSaved": "Đã thêm {{app}} vào loại trừ.",
|
||||
"popup.suggestion.sourceModel": "Mô hình cục bộ",
|
||||
"popup.suggestion.sourceMemory": "Bộ nhớ cục bộ",
|
||||
"popup.suggestion.continuations": "tiếp nối",
|
||||
"popup.suggestion.related": "liên quan",
|
||||
"popup.suggestion.phrases": "cụm từ",
|
||||
"popup.suggestion.appPhrases": "cụm từ ứng dụng",
|
||||
"input.privacy.typingSamplesRetention": "Lưu giữ mẫu văn bản đã nhập",
|
||||
"input.privacy.unavailable": "Biên nhận dữ liệu cục bộ hiện không khả dụng. Số lượng và thời hạn lưu giữ không được hiển thị.",
|
||||
"input.feedback.clearFailed": "Không thể xóa dữ liệu đã thu thập.",
|
||||
"input.feedback.excludedFailed": "Không thể lưu danh sách loại trừ.",
|
||||
"input.feedback.recommendationFailed": "Không thể thêm {{app}} vào danh sách loại trừ."
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue