## Loaded once by `src/i18n.rs`; every string the daemon mails to an author ## lives here, grouped by the mail it belongs to. Operator-facing CLI output is ## deliberately not here — see the module header. ## ## Keep the `-32` style placeables out: these bodies are read in plain-text ## mail clients and on phones, so they stay short lines and no markup. ## Error replies — a mail the daemon could not apply reply-subject = twtxt: { $reason } reply-body = Your mail could not be applied. Reason: { $reason } Quoted mail: { $quoted } ## Retention — the one-time warning as a feed approaches its size cap cap-warning-subject = twtxt: feed at 90% of its size cap cap-warning-body = Your feed has reached 90% of the { $cap }-byte cap. In hard-limit mode (the default) a full feed rejects new records; delete some with Twt-Delete, or choose FIFO pruning with Twt-Prune: fifo, which drops the oldest records to make room. ## Admission — the mail that hands over the accept token welcome-subject = twtxt: your feed is ready welcome-body = Your smolboid feed is live: { $url } Post by sending mail to this address with the twt as the body. Manage it with Twt-Nick, Twt-Delete, Twt-Repost and Twt-Prune frontmatter fields (PLAN.md). ## Rejection reasons — one per `reason::Reason` variant, rendered into the ## reply subject and body above. Each is a sentence fragment completing ## "your mail could not be applied because …", so they start lowercase and ## carry the fix where there is one. reason-body-not-utf8 = body is not UTF-8 reason-post-not-canonical = post mail is not in canonical form reason-repost-not-canonical = repost mail is not in canonical form reason-fields-beyond-reply-to = post mail carries fields beyond Reply-To (Subject, headers or an Accept token); resend the bare text reason-nick-invalid = nick must be 1-30 bytes of a-z, 0-9 or hyphen reason-delete-needs-timestamp = Twt-Delete needs an RFC 3339 UTC timestamp reason-prune-mode-unknown = unknown prune mode `{ $got }`, want fifo or off ## Post rules, from core::rules::RuleError reason-too-many-codepoints = more than 160 Unicode code points reason-too-many-bytes = more than 640 bytes reason-forbidden-char = contains TAB, LF, CR or U+2028 reason-bad-timestamp = not an RFC 3339 UTC timestamp at second precision reason-duplicate-timestamp = timestamp already exists in this feed ## Retention and quota, from the apply step reason-over-quota-post = daily post quota exceeded; try tomorrow reason-over-quota-repost = daily repost quota exceeded; try tomorrow reason-collision = timestamp { $timestamp } already exists; wait a second and resend reason-feed-full = feed is at its size cap; delete records with Twt-Delete or choose Twt-Prune: fifo reason-reply-to-changed = your Reply-To does not match the feed's bound author { $author }; send from that address or mail the operator reason-no-record-at = no record at { $timestamp }