From 5162a2563a5f9ec6c8e551299590775d1933b333 Mon Sep 17 00:00:00 2001 From: faroukbmiled Date: Sat, 25 Jul 2026 01:58:26 +0100 Subject: [PATCH] RyukGram --- .github/FUNDING.yml | 2 + .github/ISSUE_TEMPLATE/1-bug.yaml | 94 + .github/ISSUE_TEMPLATE/2-feat.yaml | 39 + .github/ISSUE_TEMPLATE/config.yml | 8 + .github/workflows/buildapp-from-release.yml | 279 ++ .gitignore | 54 + LICENSE | 56 + NOTES.md | 110 + README.md | 279 ++ .../Resources/ar.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/en.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/es.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/fr.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/ja.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/ko.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/pt-BR.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/ru.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/tr.lproj/Localizable.strings | 3013 +++++++++++++++++ .../Resources/vi.lproj/Localizable.strings | 3013 +++++++++++++++++ .../zh-Hans.lproj/Localizable.strings | 3013 +++++++++++++++++ .../zh-Hant.lproj/Localizable.strings | 3013 +++++++++++++++++ 21 files changed, 37077 insertions(+) create mode 100644 .github/FUNDING.yml create mode 100755 .github/ISSUE_TEMPLATE/1-bug.yaml create mode 100755 .github/ISSUE_TEMPLATE/2-feat.yaml create mode 100755 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/workflows/buildapp-from-release.yml create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 NOTES.md create mode 100644 README.md create mode 100644 src/Localization/Resources/ar.lproj/Localizable.strings create mode 100644 src/Localization/Resources/en.lproj/Localizable.strings create mode 100644 src/Localization/Resources/es.lproj/Localizable.strings create mode 100644 src/Localization/Resources/fr.lproj/Localizable.strings create mode 100644 src/Localization/Resources/ja.lproj/Localizable.strings create mode 100644 src/Localization/Resources/ko.lproj/Localizable.strings create mode 100644 src/Localization/Resources/pt-BR.lproj/Localizable.strings create mode 100644 src/Localization/Resources/ru.lproj/Localizable.strings create mode 100644 src/Localization/Resources/tr.lproj/Localizable.strings create mode 100644 src/Localization/Resources/vi.lproj/Localizable.strings create mode 100644 src/Localization/Resources/zh-Hans.lproj/Localizable.strings create mode 100644 src/Localization/Resources/zh-Hant.lproj/Localizable.strings diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..7d0ce6d --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,2 @@ +buy_me_a_coffee: axryuk +github: faroukbmiled diff --git a/.github/ISSUE_TEMPLATE/1-bug.yaml b/.github/ISSUE_TEMPLATE/1-bug.yaml new file mode 100755 index 0000000..8c5639c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/1-bug.yaml @@ -0,0 +1,94 @@ +name: 🐛 Bug Report +description: "Notice something isn't working quite right? Help improve the tweak by reporting issues that you experience." +title: 'bug: ' +labels: + - bug +assignees: + - faroukbmiled +body: + - type: markdown + attributes: + value: | +
+ + >[!TIP] + > If you are looking for support with the tweak, make sure to visit the [RyukGram discussions page](https://github.com/faroukbmiled/RyukGram/discussions) to get help. + - type: checkboxes + id: before-start + attributes: + label: Before creating a bug report... + description: 'Please make sure you have done the following steps:' + options: + - label: >- + I have read through the + [FAQ](https://github.com/faroukbmiled/RyukGram/wiki/FAQ) + required: true + - label: I have made sure this issue has not already been reported previously + required: true + - label: >- + I have made sure this issue is present in the latest version of + RyukGram + required: true + - label: >- + I am confident that this bug presents unintended behaviour within + the tweak + required: true + - type: textarea + id: description + attributes: + label: Description + description: A clear and concise description of the problem + placeholder: >- + Provide as much information about the issue you are experiencing as + possible! + validations: + required: true + - type: textarea + id: reproduction + attributes: + label: Minimal Reproduction + description: Provide steps and relevant information to reproduce the problem + placeholder: >- + If possible, providing screenshots & videos are extremely helpful when + trying to fix an issue + validations: + required: true + - type: markdown + attributes: + value: '---' + - type: input + id: info-ryukgram-version + attributes: + label: RyukGram Version + description: This can be found at the bottom of the tweak settings + placeholder: e.g. v0.7.0 + validations: + required: true + - type: input + id: info-instagram-version + attributes: + label: Instagram Version + description: This can be found as well at the bottom of the tweak settings + placeholder: e.g. 382.0.0 + validations: + required: true + - type: dropdown + id: info-install-type + attributes: + label: Install Type + description: The method used to use to install RyukGram + options: + - Sideloaded + - TrollStore + - Jailbroken (Rootless) + - Jailbroken (Rootful) + validations: + required: true + - type: textarea + id: info-device-info + attributes: + label: Device Info + description: Details about the phone running the tweak + value: |- + Model: [e.g. iPhone 15 Pro] + iOS Version: [e.g. 18.4] diff --git a/.github/ISSUE_TEMPLATE/2-feat.yaml b/.github/ISSUE_TEMPLATE/2-feat.yaml new file mode 100755 index 0000000..0c1ad1a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/2-feat.yaml @@ -0,0 +1,39 @@ +name: ✨ Feature Request +description: Have an idea for a new feature/enhancement? Let us know! +title: 'feat: ' +labels: + - enhancement +assignees: + - faroukbmiled +body: + - type: checkboxes + id: before-start + attributes: + label: Before creating a feature request... + description: 'Please make sure you have done the following steps:' + options: + - label: >- + I have read through the + [FAQ](https://github.com/faroukbmiled/RyukGram/wiki/FAQ) + required: true + - label: I have made sure this feature has not already been already suggested + required: true + - type: textarea + id: description + attributes: + label: Description + description: A clear and concise description of the problem or missing functionality + validations: + required: true + - type: textarea + id: solution + attributes: + label: Describe the solution you'd like + description: If you have a solution in mind, please describe it + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Describe alternatives you've considered + description: Have you considered any alternative solutions or workarounds? diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100755 index 0000000..fad261a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: false +contact_links: + - name: '💬 Browse Q&A' + url: https://github.com/faroukbmiled/RyukGram/wiki/FAQ + about: Find answers to the most commonly asked questions + - name: '❓ Need Help?' + url: https://github.com/faroukbmiled/RyukGram/discussions + about: Visit the RyukGram discussions form to get support diff --git a/.github/workflows/buildapp-from-release.yml b/.github/workflows/buildapp-from-release.yml new file mode 100644 index 0000000..361181f --- /dev/null +++ b/.github/workflows/buildapp-from-release.yml @@ -0,0 +1,279 @@ +name: Build sideloaded IPA from Release Assets + +on: + workflow_dispatch: + inputs: + decrypted_instagram_url: + description: "Decrypted Instagram IPA — direct URL" + default: "" + required: true + type: string + target: + description: "Instagram version (410 needs a 410.x IPA above)" + default: "latest" + required: false + type: choice + options: + - "latest" + - "410" + build_sideload: + description: "Sideload IPA — with plugins" + default: true + required: false + type: boolean + build_noplugins: + description: "No-plugins IPA — any sideloader / free account" + default: false + required: false + type: boolean + dup_bundle_id: + description: "Bundle id (no-plugins only, blank = com.burbn.instagram)" + default: "" + required: false + type: string + dup_name: + description: "App name on Home Screen (blank = Instagram)" + default: "" + required: false + type: string + release_tag: + description: "Release tag (blank = latest)" + default: "" + required: false + type: string + upload_artifact: + description: "Upload the built IPA" + default: true + required: false + type: boolean + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +env: + UPSTREAM_REPO: faroukbmiled/RyukGram + +jobs: + build: + name: Build RyukGram from Release + runs-on: macos-latest + permissions: + contents: read + + steps: + - name: Validate selection + env: + DUP_ID: ${{ inputs.dup_bundle_id }} + run: | + if [ "${{ inputs.build_sideload }}" != "true" ] && \ + [ "${{ inputs.build_noplugins }}" != "true" ]; then + echo "::error::Select at least one of build_sideload / build_noplugins." + exit 1 + fi + if [ -n "$DUP_ID" ] && [ "${{ inputs.build_noplugins }}" != "true" ]; then + echo "::error::A dup bundle id needs the no-plugins build. Enable build_noplugins." + exit 1 + fi + + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Dependencies + run: brew install dpkg + + - name: Install IPA tooling (cyan + ipapatch) + run: | + pip install --force-reinstall https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip + mkdir -p "$HOME/.local/bin" + curl -fLo "$HOME/.local/bin/ipapatch" https://github.com/asdfzxcvbn/ipapatch/releases/download/v2.1.3/ipapatch.macos-arm64 + chmod +x "$HOME/.local/bin/ipapatch" + echo "$HOME/.local/bin" >> "$GITHUB_PATH" + + - name: Resolve release tag + id: tag + env: + GH_TOKEN: ${{ github.token }} + INPUT_TAG: ${{ inputs.release_tag }} + INPUT_TARGET: ${{ inputs.target }} + run: | + set -euo pipefail + if [ -n "$INPUT_TAG" ]; then + TAG="$INPUT_TAG" + else + TAG="$(gh release view --repo "$UPSTREAM_REPO" --json tagName -q .tagName)" + fi + [ -n "$TAG" ] || { echo "::error::Could not resolve release tag."; exit 1; } + VERSION="${TAG#v}" + # 410 builds pull the RyukGram-410 deb and tag their output -410. + SUF=""; [ "$INPUT_TARGET" = "410" ] && SUF="-410" + echo "tag=${TAG}" >> "$GITHUB_OUTPUT" + echo "version=${VERSION}" >> "$GITHUB_OUTPUT" + echo "TAG=${TAG}" >> "$GITHUB_ENV" + echo "VERSION=${VERSION}" >> "$GITHUB_ENV" + echo "SUF=${SUF}" >> "$GITHUB_ENV" + echo "Using release tag: ${TAG} (version ${VERSION}${SUF})" + + - name: Download release assets (rootless deb + injection dylibs) + env: + GH_TOKEN: ${{ github.token }} + TARGET: ${{ inputs.target }} + run: | + set -euo pipefail + mkdir -p packages release-assets + + # 410 tweak lives in the RyukGram-410 deb; main in RyukGram_. The + # plugin dylibs are shared, so both targets pull the same ones. + if [ "$TARGET" = "410" ]; then DEBP="RyukGram-410_*_rootless.deb"; else DEBP="RyukGram_*_rootless.deb"; fi + gh release download "$TAG" --repo "$UPSTREAM_REPO" --dir release-assets --pattern "$DEBP" + DEB="$(ls -t release-assets/$DEBP 2>/dev/null | head -n1 || true)" + [ -n "$DEB" ] || { echo "::error::Rootless .deb ($DEBP) not found in release $TAG."; exit 1; } + echo "DEB=${DEB}" >> "$GITHUB_ENV" + + if [ "${{ inputs.build_sideload }}" = "true" ]; then + gh release download "$TAG" --repo "$UPSTREAM_REPO" --dir release-assets \ + --pattern "zxPluginsInject_v*.dylib" + ZX_DYLIB="$(ls -t release-assets/zxPluginsInject_v*.dylib 2>/dev/null | head -n1 || true)" + [ -n "$ZX_DYLIB" ] || { echo "::error::zxPluginsInject dylib not found in release $TAG (enable include_zxinject when releasing)."; exit 1; } + echo "ZX_DYLIB=${ZX_DYLIB}" >> "$GITHUB_ENV" + fi + + if [ "${{ inputs.build_noplugins }}" = "true" ]; then + gh release download "$TAG" --repo "$UPSTREAM_REPO" --dir release-assets \ + --pattern "NoPluginsPatch_v*.dylib" + NP_DYLIB="$(ls -t release-assets/NoPluginsPatch_v*.dylib 2>/dev/null | head -n1 || true)" + [ -n "$NP_DYLIB" ] || { echo "::error::NoPluginsPatch dylib not found in release $TAG (enable include_noplugins_patch when releasing)."; exit 1; } + echo "NP_DYLIB=${NP_DYLIB}" >> "$GITHUB_ENV" + fi + + ls -la release-assets + + - name: Extract dylib + bundle from rootless deb + run: | + set -euo pipefail + STAGE="$(mktemp -d)" + dpkg-deb -x "$DEB" "$STAGE" + + DYLIB_SRC="$(find "$STAGE" -type f -name 'RyukGram.dylib' | head -1)" + BUNDLE_SRC="$(find "$STAGE" -type d -name 'RyukGram.bundle' | head -1)" + [ -n "$DYLIB_SRC" ] || { echo "::error::RyukGram.dylib not found in deb."; exit 1; } + [ -n "$BUNDLE_SRC" ] || { echo "::error::RyukGram.bundle not found in deb."; exit 1; } + + cp "$DYLIB_SRC" packages/RyukGram.dylib + rm -rf packages/RyukGram.bundle + cp -R "$BUNDLE_SRC" packages/RyukGram.bundle + + if [ "${{ inputs.build_sideload }}" = "true" ]; then + # Match the @rpath LC that ipapatch writes into target binaries. + cp "$ZX_DYLIB" packages/zxPluginsInject.dylib + install_name_tool -id "@rpath/zxPluginsInject.dylib" packages/zxPluginsInject.dylib 2>/dev/null || true + fi + + if [ "${{ inputs.build_noplugins }}" = "true" ]; then + cp "$NP_DYLIB" packages/NoPluginsPatch.dylib + fi + + rm -rf "$STAGE" + ls -la packages + ls -la packages/RyukGram.bundle | head -20 + + - name: Prepare Instagram IPA + env: + Instagram_URL: ${{ inputs.decrypted_instagram_url }} + run: | + set -euo pipefail + wget "$Instagram_URL" --no-verbose -O packages/com.burbn.instagram.ipa + ls -la packages + + - name: Build sideloaded IPA (cyan + ipapatch with zxPluginsInject) + if: ${{ inputs.build_sideload }} + env: + DUP_NAME: ${{ inputs.dup_name }} + run: | + set -euo pipefail + rm -f packages/RyukGram-sideloaded.ipa + NAME_ARGS=() + [ -n "$DUP_NAME" ] && NAME_ARGS=(-n "$DUP_NAME") + cyan \ + -i packages/com.burbn.instagram.ipa \ + -o packages/RyukGram-sideloaded.ipa \ + -f packages/RyukGram.dylib packages/RyukGram.bundle \ + -c 9 -m 15.0 -du \ + ${NAME_ARGS[@]+"${NAME_ARGS[@]}"} + + # Embed Safari "Open in Instagram" extension before ipapatch + # re-signs, so instagram.com links open the app. + APPEX_SRC="extensions/OpenInstagramSafariExtension.appex" + if [ -d "$APPEX_SRC" ]; then + echo "Embedding Safari extension" + INJECT_TMP="$(mktemp -d)" + unzip -q packages/RyukGram-sideloaded.ipa -d "$INJECT_TMP" + APP_DIR="$(find "$INJECT_TMP/Payload" -maxdepth 1 -type d -name '*.app' | head -1)" + if [ -n "$APP_DIR" ]; then + mkdir -p "$APP_DIR/PlugIns" + rm -rf "$APP_DIR/PlugIns/OpenInstagramSafariExtension.appex" + cp -R "$APPEX_SRC" "$APP_DIR/PlugIns/" + ( cd "$INJECT_TMP" && zip -qr -9 ../repacked.ipa Payload ) + mv "$INJECT_TMP/../repacked.ipa" packages/RyukGram-sideloaded.ipa + fi + rm -rf "$INJECT_TMP" + fi + + echo "Running ipapatch (zxPluginsInject LC injection)" + ipapatch \ + --input packages/RyukGram-sideloaded.ipa \ + --inplace --noconfirm \ + --dylib packages/zxPluginsInject.dylib + + mv packages/RyukGram-sideloaded.ipa "packages/RyukGram_sideloaded_v${VERSION}${SUF}.ipa" + ls -la packages + + - name: Build no-plugins IPA (cyan + NoPluginsPatch, appex stripped) + if: ${{ inputs.build_noplugins }} + env: + DUP_ID: ${{ inputs.dup_bundle_id }} + DUP_NAME: ${{ inputs.dup_name }} + run: | + set -euo pipefail + rm -f packages/RyukGram-noplugins.ipa + DUP_ARGS=() + [ -n "$DUP_ID" ] && DUP_ARGS+=(-b "$DUP_ID") + [ -n "$DUP_NAME" ] && DUP_ARGS+=(-n "$DUP_NAME") + cyan \ + -i packages/com.burbn.instagram.ipa \ + -o packages/RyukGram-noplugins.ipa \ + -f packages/RyukGram.dylib packages/NoPluginsPatch.dylib packages/RyukGram.bundle \ + -c 9 -m 15.0 -du \ + ${DUP_ARGS[@]+"${DUP_ARGS[@]}"} + + # No-plugins: strip every app extension (no ipapatch, no Safari ext). + INJECT_TMP="$(mktemp -d)" + unzip -q packages/RyukGram-noplugins.ipa -d "$INJECT_TMP" + APP_DIR="$(find "$INJECT_TMP/Payload" -maxdepth 1 -type d -name '*.app' | head -1)" + if [ -n "$APP_DIR" ]; then + find "$APP_DIR" -type d -name '*.appex' -prune -exec rm -rf {} + + ( cd "$INJECT_TMP" && zip -qr -9 ../repacked.ipa Payload ) + mv "$INJECT_TMP/../repacked.ipa" packages/RyukGram-noplugins.ipa + fi + rm -rf "$INJECT_TMP" + + OUT="RyukGram_noplugins_v${VERSION}${SUF}.ipa" + [ -n "$DUP_ID" ] && OUT="RyukGram_noplugins_dup_v${VERSION}${SUF}.ipa" + mv packages/RyukGram-noplugins.ipa "packages/${OUT}" + ls -la packages + + - name: Upload sideload IPA artifact + if: ${{ inputs.upload_artifact && inputs.build_sideload }} + uses: actions/upload-artifact@v4 + with: + name: RyukGram_sideloaded_v${{ steps.tag.outputs.version }} + path: packages/RyukGram_sideloaded_v*.ipa + if-no-files-found: error + + - name: Upload no-plugins IPA artifact + if: ${{ inputs.upload_artifact && inputs.build_noplugins }} + uses: actions/upload-artifact@v4 + with: + name: RyukGram_noplugins_v${{ steps.tag.outputs.version }} + path: packages/RyukGram_noplugins*.ipa + if-no-files-found: error diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a177fd0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,54 @@ +.DS_Store +.AppleDouble +.LSOverride +Icon +._* +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk +*.icloud + +*.deb +.debmake +_ +obj +.theos +packages + +.pyzule* +.cyan* +.ipapatch* +dumps +livecontainer + +src/**/wip.x +src/**/wip.xm + +*.ipa +*.dylib +deploy.sh +wrapper/ +scripts/*.py +scripts/__pycache__/ + +# FFmpegKit frameworks +modules/ffmpegkit/ + +# External reference tweaks +exp_flags/ + +# Source packaging +zip-src.sh +RyukGram-src-*.zip +RYG*.md +*.zip +*_diff.txt diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ab58f3d --- /dev/null +++ b/LICENSE @@ -0,0 +1,56 @@ +RyukGram — Proprietary Software License +Copyright (c) Ryuk. All rights reserved. + +1. Definitions + "Software" means RyukGram, including the compiled tweak, its bundled + resources, and any accompanying materials distributed by the author. + "Author" means Ryuk, the copyright holder. + +2. Grant + The Author grants you a personal, non-exclusive, non-transferable, + revocable license to download and install the compiled Software on + devices you own or control, solely for your own personal, non-commercial + use. + +3. Restrictions + You may NOT, in whole or in part: + (a) copy, redistribute, sublicense, sell, rent, lease, or otherwise make + the Software available to any third party; + (b) modify, adapt, translate, or create derivative works of the Software; + (c) decompile, disassemble, reverse-engineer, or otherwise attempt to + derive the source code, except to the limited extent this restriction + is prohibited by applicable law; + (d) remove, alter, or obscure any copyright, attribution, or proprietary + notice contained in the Software; + (e) use the Software, or any portion of it, to build, train, or assist a + competing product. + +4. Contributions + Translation files and other materials contributed to the project's public + repository are licensed to the Author under these same terms and may be + incorporated into current and future versions of the Software. + +5. Ownership + The Software is licensed, not sold. The Author retains all right, title, + and interest in and to the Software, including all intellectual property + rights. No rights are granted except as expressly set out here. + +6. No Warranty + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. + +7. Limitation of Liability + IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING + FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR ITS USE. + +8. Termination + This license terminates automatically if you breach any of its terms. On + termination you must stop using and delete all copies of the Software. + +9. Trademarks + Instagram is a trademark of its respective owner. RyukGram is an + independent project and is not affiliated with, endorsed by, or sponsored + by Instagram or Meta. RyukGram was inspired by, but shares no source code + with, other Instagram tweaks. diff --git a/NOTES.md b/NOTES.md new file mode 100644 index 0000000..bcea0e5 --- /dev/null +++ b/NOTES.md @@ -0,0 +1,110 @@ +[release] RyukGram v1.3.3 + +Updated for Instagram 439.0.0. + +### ✨ Highlights +- **Call recording** — record voice and video calls, with auto-record, smart video grids and a per-person browser to play them back +- **Activity notifications** — one log for who read your messages plus who came online, went offline or started typing, per person, with an accurate green dot +- **Grid feed** — turn your home feed into a tappable grid of thumbnails with stats and author overlays, per account +- **Stories archive** — saves every story you post before it expires, with its media and full viewer list, per account +- **Story viewers list** — a searchable, filterable, sortable and pinnable "who viewed my story", with each viewer's reaction shown +- **Instagram Plus** — turn on some Instagram's paid subscriber features inside the app +- **Custom button icons** — pick any Instagram icon or iOS symbol for the action and home-shortcut buttons + +### 🆕 New features + +#### Messages +- Activity notifications and Activity log — records who read your messages plus who came online, went offline or started typing, as a per-person timeline. Set each event to log silently, notify you, or both, and hold anyone to customise or mute them. A new accurate active-status option turns the green dot off the moment someone leaves. Filter by type and date, swipe or multi-select to delete, and lock the log behind your passcode +- A dot in the DMs inbox to turn your active status on or off without opening settings +- Keep deleted messages can now also keep the ones you unsend yourself, shown faded in chat and added to the deleted log +- Mark chats seen locally — with read-receipt blocking on, opened chats look read on your device while the sender still gets no receipt; the eye button turns orange until you really mark seen +- Hold the account name at the top of Direct to show or hide your hidden chats, with an optional passcode/Face ID lock +- Messages-only mode is now its own menu, can turn on automatically during a daily window, and adds a notifications shortcut plus an optional home-shortcut button in the inbox header +- Adding someone to a list (read-receipt blocking, hidden or locked chats, chat backgrounds, story viewer pins) now opens a picker of recent DMs with username search, instead of typing it in blind +- The DM Draw feature can now send an image as your doodle — from the gallery, Photos, your Instagram or iOS stickers, or a pasted image — with an editor to crop, resize and remove the background +- Custom chat backgrounds can now be videos or GIFs, framed with pan-zoom and trim, with the same opacity, blur and dim controls, and re-editable later +- Hide suggested accounts and channels in Direct messages search + +#### Stories +- Stories archive saves every story you post before it expires, with its media and full viewer list, per account. Browse by date in a grid, see who viewed, liked or reacted, with filter, sort, pinned viewers, an unread badge, optional alerts and its own backup and storage entry +- The "who viewed my story" list is now searchable — filter (mutuals, following, follows you, verified, reacted, pinned), sort, and pin anyone to the top. Shows avatars, verified badges and each viewer's reaction, loads every viewer, and can switch back to Instagram's own list. Pick which one opens first +- Marked-seen indicator — stories you already marked as seen hide the eye button or fill it green for 48 hours, per account +- New "Save image (no music)" story download option for photo stories that have Instagram music on them +- Story tray long-press "Profile picture" now also works in Instagram's new subscriber story preview menu + +#### Reels +- New reels playback menu — hold the ⋯ or audio button for speed, seek (skip back/forward by a custom amount) and auto-scroll controls +- Auto-scroll reels is back — Instagram default or RyukGram mode that keeps advancing after you swipe back +- Filter reels by engagement — set a minimum for likes, comments, views or reposts and reels below it never show, plus an option to hide reels whose author hides their counts. Only the Reels tab is filtered by default, so reels you open from a post, profile or share stay untouched +- Show when a reel was reposted — an optional date on the "reposted this reel" header + +#### Feed & Explore +- New Grid feed — turn your home feed into a grid of post thumbnails showing likes, comments, views, shares and the author. Pinch to change columns, pull to refresh, tap a post to open it, or hold for a menu to like, follow, view profile, expand, share or copy the link. Choose which stats show, square or taller tiles, and how you switch back to Instagram's feed. Loads instantly, works per account and remembers where you left off +- Search and explore grids now show stat pills on posts and reels — views, likes, comments, shares, reposts and date — with a page to pick which appear, reorder them and toggle them +- New date format options — swap Instagram's relative timestamps on posts, notes, comments, stories and DMs for a fixed date, a preset like dd/MM/yyyy, or your own template, with a relative-time threshold +- New "Block surveys" toggle — hides Instagram's in-app surveys and feedback prompts, including the "Interested in this post?" cards +- Confirm feed refresh — an optional alert before a pull-to-refresh reloads the home feed +- Refresh stories only — pull-to-refresh reloads just the stories tray and leaves the feed where it is + +#### Instants +- Instants download now works on videos too — expand, save, share and download-all all handle video instants +- Send a video from your gallery as an Instant — frame it square, trim any 7 seconds on a scrollable timeline, then hold to record +- Confirm before capturing an Instant — an optional alert on a photo tap or held video, plus a confirm before tapping to switch Instants +- Auto close the Instants viewer once you've seen them all + +#### Downloads & Gallery +- The download manager got a rebuild — thumbnails for finished media, live size, speed and time left, a filter row, and swipe a row to cancel, retry or remove +- Downloads now stay listed after you close the app and can be downloaded again from the history — kept from 12 hours up to forever, and cleared or exported from Backup and Storage +- Download quality picker has an advanced view — download a video with no audio, or pick any of its audio tracks +- Gallery — import your own photos, videos and files from the ••• menu, saved under an Imported filter +- Gallery browsing got more controls — combine a sort with images, videos or favorites first, filter by date, pick 2 to 5 columns, and long-press a user section to select all their media +- The gallery now uses Instagram icons throughout, grid tiles show a date chip, and long-pressing an item shows its date, source and size + +#### Profile +- Profile card details now also show comment, share and repost counts, with a page to pick which stats appear, reorder them and toggle them +- Followers and Following lists get a filter and sort button on Instagram's search bar — mutuals, following, follows you or verified, sorted by name or relationship +- Profile Analyzer's badge now shows gains and losses — a green +N when a list grew, a red −N when it shrank +- Profile Analyzer is out of beta + +#### Interface & notifications +- Action button and home-shortcut icons are now fully customisable — a searchable browser for any Instagram icon or iOS symbol, per button or shared, including Instagram's colourful pet stickers +- Tab bar icon order is now a live tab bar preview — drag to reorder, drag one up to hide, tap a hidden icon to add it back +- Story and disappearing-media overlay buttons can be repositioned by dragging them on a preview +- The notification pill can be placed anywhere on a phone preview, not just top or bottom +- Notifications mirrored to the iOS notification centre can now also show as system banners while you're using the app +- The home shortcut button shows a red dot for new deleted messages, read receipts or call recordings, with a count next to each in its menu +- Favorite GIFs long-press menu can now copy a GIF's link + +#### Privacy & backup +- Device ID masking now also hides the vendor ID and machine ID, can block Apple device attestation, and can reset fresh while keeping masking on. A Device ID button on the login screen gives the same controls while signed out +- Follow requests tracker shows a badge for updates you haven't opened yet +- Backup's "Feature data" now opens a list where you tick exactly which stores to export, import or reset, instead of all-or-nothing +- Backups can be locked with a password when exporting (AES-256), asked for only when you restore them + +#### General +- Change Instagram's own interface language from the tweak — a picker with a full language list, including Arabic even if your device isn't set to it; restart to apply +- New Instagram Plus menu in General — turns on Instagram's paid subscriber features inside the app, including story and message peek, fonts, the app icon picker and custom story lists, with a master on/off and reset +- Tweak settings shows an occasional donate prompt after long-term use, easily dismissed or hidden for good + +### 🛠 Fixes +- Tapping someone in any RyukGram list now opens their profile inside RyukGram, so Back returns to the list instead of Instagram's home +- Your gallery carries over to this update, with a one-time prompt to restore items saved by an older version, and gallery backups now import and export every item +- The home shortcut button now shows on iPad +- Custom chat background now fills behind the message input on Instagram 437 instead of leaving a black strip +- Follow requests tracker no longer counts tapping "Following" on an already-followed account as a new request +- Follow requests tracker no longer wrongly shows received requests as withdrawn, and loads pending requests reliably +- Detailed color picker no longer crashes in the story drawing editor on Instagram 434 +- OLED theme no longer turns the RyukGram settings screens fully black +- OLED theme no longer blacks out grey buttons like Follow/Following on profiles +- Downloading reels or videos with newer Instagram audio (xHE-AAC) no longer fails +- Feed scrolling is smoother, especially with the OLED theme enabled +- Favorite GIFs now send and appear reliably in Direct messages +- Deleted messages log now saves photos and videos at full quality instead of a low-res thumbnail +- Deleted messages log no longer crashes when you pull to refresh right after leaving a chat +- Reroute native Save now shows Instagram's Save and long-press Save on DM media even where Instagram hid them, including in vanish mode +- Settings that need a restart now take effect after one restart instead of sometimes needing two +- Auto-clear cache now runs reliably on the chosen interval and finishes even if you close Instagram mid-clear +- Saving or sharing media now always uses a clean name (like username_stories_date) instead of the internal temporary filename +- Reels action button stays visible on HDR reels, following Instagram's own tint like the like button does +- No more crash when switching to the Reels tab on some accounts +- Bulk saving Instants now labels each save with the account that posted it, even with several people's Instants on screen diff --git a/README.md b/README.md new file mode 100644 index 0000000..60d3644 --- /dev/null +++ b/README.md @@ -0,0 +1,279 @@ +
+ +# RyukGram + +**The Instagram tweak for iOS power users.** + +`v1.3.3` · Instagram 439.0.0 | Instagram 410.1.0 + +The Instagram 410 build is for older devices and trails the main build on newer features. + +

+ Latest release + Telegram + Donate +

+ +

+ Issues + · + Translate + · + Features +

+ +
+ +--- + +> [!NOTE] +> RyukGram is [closed source](#credits) for now and will open up again later. Builds and translations stay current here. + +## Install + +### Add it in one tap + +
+ +Add RyukGram + +
+ +Open it on your phone and everything is one tap away. Add it once and updates arrive on their own. + +- **Sideload.** Adds the source to **Feather** or **RyukSign**, **SideStore**, or **AltStore**. Pick the **plugins** build normally, or **no plugins** if you sign with a free Apple account, since free accounts cannot sign the bundled extensions. +- **Jailbreak.** Adds the repo to **Sileo** or **Zebra**, then installs the build that matches your setup. To paste it by hand the repo is `https://source.ryuksign.com/apt/`. + +### Build your own IPA + +Instagram itself cannot be bundled here, so you bring the Instagram IPA and the build slots RyukGram into it. + +**With GitHub Actions, no Mac needed.** Fork this repo, open the **Actions** tab, and run **Build sideloaded IPA from Release Assets**. Give it your Instagram IPA and it hands back a patched IPA ready to sign and install. Turn on the no-plugins option if you sign with a free account. + +**Or by hand** with a tool like cyan, injecting into your own Instagram IPA: +- Regular build. Inject `zxPluginsInject.dylib` into the app and its plugins. The normal one, with the bundled extensions. +- No-plugins build. Inject `NoPluginsPatch.dylib` instead. For a plugin free sideload, or a free account where extensions cannot be signed. + +### Download the .deb + +Prefer the file? Both builds are on the [latest release](https://github.com/faroukbmiled/RyukGram/releases/latest). + + + + + + + + + + + + + + +
FileBuild
RyukGram_x.x.x_rootless.debRootless
RyukGram_x.x.x_rootful.debRootful
+ +The rootless .deb also carries the dylib and bundle the sideload builds use. + +### TrollStore + +Download `RyukGram_trollfools.zip` from the [latest release](https://github.com/faroukbmiled/RyukGram/releases/latest) and inject it into Instagram with TrollFools. + +--- + +Once it is running, open the settings by holding the button at the top of your profile, or the home button in the tab bar. Screenshots are [below](#opening-settings). + +## Features + +### General +- Hide ads, Meta AI, and like, comment and share counts +- Hide the TestFlight popup and turn off app haptics +- Copy captions, comment text, and profile info +- Download, copy, or expand image and GIF comments +- Send any Giphy link as a comment GIF, and pin the ones you favorite +- Download audio from the reels audio page +- Clean shared links for embeds and strip their tracking +- Open links in an external browser or straight from the clipboard +- Native color picker and teen app icons +- Liquid glass controls, with a force off switch and tab bar behavior +- Instagram Plus turns on Instagram's own paid features +- Notes tweaks: hide the tray, hide the friends map, custom themes +- Drop suggestions, trending, the explore grid, sensitive covers, and surveys +- Stat pills on search and explore, with a page to pick and reorder them +- Anonymous live viewing and toggleable live comments +- Redact RyukGram's own buttons in screenshots and recordings + +### Feed +- Grid feed turns your home feed into thumbnails, each with its stats and author +- Pick which stats show and their order, tile shape, columns by pinch, and the date format +- Hold a tile to preview it, or to like, follow, expand, share, or copy the link +- Switch back to Instagram's feed from the header heart or a floating button you place +- Hide the stories tray, suggested stories, and highlights +- View a profile picture from a story tray long press +- Hide the whole feed, or just suggested posts, accounts, reels, and threads +- Turn off video autoplay +- Long press any media to open it full screen, muted if you want +- Custom date format with your own template and relative times +- Turn off background and home button refresh +- Confirm before a pull to refresh, or refresh only the stories tray +- Hide the feed repost button + +### Reels +- Custom tap controls and an auto scroll mode +- Playback menu for speed, seek, and auto scroll +- Always visible scrubber, no auto unmute, and refresh confirmation +- Unlock password locked reels +- Hide the header, repost button, friend avatars, and promo pills +- Swipe left to open the author's profile +- Show the repost date +- Disable scrolling and cap how many reels you can watch in a row +- Filter the reels feed by minimum likes, comments, views, or reposts +- Enhanced pause and play mode + +### Action buttons +- Context aware menus on feed, reels, stories, DMs, and profiles +- Configurable default tap, and a searchable browser of Instagram and system icons +- Carousel and multi story bulk download +- Save a photo post with its music as a video +- Save a photo story as just the image +- Repost through Instagram's own flow +- Full screen viewer with zoom and swipe +- Drag to arrange your overlay buttons on a live preview + +### Profile +- Zoom or save the profile picture +- View highlight covers from a long press +- Action button for info, the picture, and follower stats +- Follow indicator that shows who follows you back +- Copy notes, fake your stats, and reveal full counts +- Sort and search follower and following lists by mutuals, verified, and more +- Follow request tracker that logs every request, even ones cancelled before you answer + +### Profile analyzer +- Follower and following scans, with mutuals and non followbacks +- New and lost trackers across scans +- Change history for name, username, bio, and picture +- Inline and batch follow, unfollow, and remove +- A log of every profile you open, with filters +- Per check toggles, with a badge for gains and losses since your last look + +### Saving +- HD downloads up to 1080p, with a quality picker and preview +- Audio only and raw photo options +- Download manager with live speed, filters, swipe actions, and bulk select +- Download history that survives a restart, with redownload and a keep window +- Auto retry for downloads that drop offline +- Save into a dedicated RyukGram album +- Advanced encoding panel for codec, bitrate, resolution, and more +- Clean filenames on every save +- Optional download confirmation + +### Gallery +- A private in app library that every download can mirror into +- Images, video, audio, and animated GIFs +- Filter by type, source, uploader, date, and favorites, with folders +- Sort by date, name, or size, with images, videos, or favorites first +- Group by user into sections or folders, from 2 to 5 columns +- Long press a user section to select all their media +- In app preview carousel +- Pull audio and GIFs straight from the gallery +- Import your own photos, videos and files into the gallery +- Grid tiles show a date chip, long press an item for its date, source and size + +### Stories and messages +- Keep deleted messages, including your own unsends +- A full quality log of every unsent message, grouped by chat and searchable +- Activity notifications for reads, online, offline, and typing, set per person +- An activity log that keeps it all as a timeline, filterable and swipe to delete +- Accurate active status so the green dot turns off the moment someone leaves +- Manual and automatic mark as seen +- Mark chats seen on your device only, the eye button stays orange until you really send it +- Stories you already marked seen hide or tint the eye button for 48 hours +- Send audio as a file or a voice note, with a trim editor +- Send an image as your doodle in Draw, with a crop, resize, and background remover +- Download voice messages +- Turn off typing status, the vanish swipe, and view once limits +- Toggle your activity status from a dot in the DMs inbox +- Custom chat backgrounds from an image, video, or GIF, with a built in editor +- Filter, sort, search, and pin story viewers, and see who reacted with what +- Archive your own stories before they expire, viewer list included, per account +- View story mentions and reveal poll and quiz results +- Bypass Reveal stickers and pick custom sticker colors +- Download disappearing DM media in full quality +- Send Instants from your album, with crop and trim editors +- Auto close the Instants viewer once you have seen them all +- Toggle the Instants switch confirmation from a button in the viewer +- Record voice and video calls into an adaptive grid, browsed per person + +### Interface +- A universal notification pill you can place anywhere on screen +- Mirror toasts to the iOS notification centre, in the background or while the app is open +- Reorder and hide tab bar icons on a live tab bar preview +- Messages only mode, with a daily schedule and inbox header shortcuts +- Force Instagram into any supported language +- Home shortcut button with new item badges +- Experimental flags + +### Confirm actions +- Optional confirmations for likes, follows, reposts, calls, comments, and more + +### Fake location +- Override your location across the app, with a map picker and saved presets + +### Theme +- Off, light, dark, or OLED, applied to Instagram only +- OLED chat theme and a matching keyboard theme + +### Security and privacy +- Mask the device identifiers Instagram reads, from settings or the login screen +- Passcode and biometric lock for settings, chats, logs, recordings, and the app itself +- Hidden chats and per account lists +- App switcher shroud and hidden previews for locked chats + +### Backup and restore +- Export your settings and feature data as JSON or an encrypted bundle +- Restore with replace or merge +- Scope any export, import, or reset to the accounts you pick +- See what RyukGram keeps on your device, by section and account, and clear it + +### Localization +- English, Spanish, French, Russian, Korean, Japanese, Arabic, Vietnamese, Chinese, Portuguese, and Turkish +- In app language picker, with English as the fallback + +### Optimization +- Clear the Instagram cache on demand or on a timer +- Smoother feed scrolling + +## Translating + +Want RyukGram in your language? Export the strings from **Settings, Debug, Localization**, translate the right side of each `"key" = "value";` line, and open a pull request with your file at `src/Localization/Resources/.lproj/Localizable.strings`. Keep the format specifiers like `%@` and `%lu` exactly as they are. Missing lines fall back to English, so partial work is welcome. Anything you contribute is licensed to the project under the same terms as RyukGram. + +## Opening settings + +| | | +|:-------------------------------------------:|:-------------------------------------------:| +| | | + +## Credits + +RyukGram got its start from [SCInsta](https://github.com/SoCuul/SCInsta) by [@SoCuul](https://github.com/SoCuul), and I'm grateful for the foundation it gave the project. That code has since been fully rewritten and none of it remains, so RyukGram is its own separate codebase. It went closed source because earlier releases were being lifted and resold as paid tweaks, which is something I can't keep feeding, and I know some of you valued it staying open. Thanks to @SoCuul and the wider iOS tweak scene for paving the way. + +- [**@SoCuul**](https://github.com/SoCuul) for SCInsta, the spark for this project +- [**@BandarHL**](https://github.com/BandarHL) for BHInstagram +- [**@VAXMG**](https://t.me/ciesIPAs) for OLED theme inspiration +- [**@euoradan**](https://t.me/euoradan) for experiment flag research +- [**@n3d1117**](https://github.com/n3d1117) for the Following feed +- [**BillyCurtis**](https://github.com/BillyCurtis/OpenInstagramSafariExtension) for the Safari extension base +- [**@asdfzxcvbn**](https://github.com/asdfzxcvbn) for ipapatch and zxPluginsInject +- Furamako, [@ZomkaDEV](https://github.com/ZomkaDEV), [@ch1tmdgus](https://github.com/ch1tmdgus), [@bruuhim](https://github.com/bruuhim), [@jaydenjcpy](https://github.com/jaydenjcpy), [@brunorainha](https://github.com/brunorainha), [@yesnt10](https://github.com/yesnt10), [@tranbinh02](https://github.com/tranbinh02), [@yannouuuu](https://github.com/yannouuuu), and [@willybilly981](https://github.com/willybilly981) for translations + +## Support + +If RyukGram earns a spot on your phone, you can keep it going here. + +
+ +Donate +Star the repo + +
diff --git a/src/Localization/Resources/ar.lproj/Localizable.strings b/src/Localization/Resources/ar.lproj/Localizable.strings new file mode 100644 index 0000000..dadbde9 --- /dev/null +++ b/src/Localization/Resources/ar.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "‏مستقبلاً: اضغط مطولاً على الخطوط الثلاثة أعلى صفحة ملفك الشخصي لفتح إعدادات ريوك غرام.‏"; +"settings.firstrun.ok" = "‏مفهوم!‏"; +"settings.firstrun.title" = "‏معلومات إعدادات ريوك غرام‏"; +"settings.language.english_only" = "‏يتوفر ريوك غرام حاليًا باللغة الإنجليزية فقط. اللغات الأخرى جاهزة بانتظار الترجمة — ساهم في الترجمة إلى لغتك باتباع الدليل القصير في ملف ريدمي (README).‏"; +"settings.language.help_translate" = "‏المساعدة في الترجمة‏"; +"settings.language.system" = "‏الافتراضي للنظام‏"; +"settings.language.title" = "‏اللغة‏"; +"settings.language.restart.message" = "تم تحديث الإعدادات. أعد تشغيل Instagram لتعتمد القوائم والأزرار والإشعارات في باقي التطبيق اللغة الجديدة أيضًا."; +"settings.language.restart.title" = "أعد التشغيل لتطبيق التغيير في كل مكان"; +"settings.language.available" = "المتاحة"; +"settings.results.many" = "‏%lu نتائج‏"; +"settings.results.one" = "‏%lu نتيجة‏"; +"settings.search.placeholder" = "‏البحث في الإعدادات‏"; +"settings.title" = "‏إعدادات ريوك غرام‏"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "‏أيقونة زر الإجراءات‏"; +"Adds a copy option to the comment long-press menu" = "‏إضافة خيار النسخ إلى قائمة الضغط المطول للتعليقات‏"; +"Adds a download button next to share/save on the reels audio page" = "‏يضيف زر تنزيل بجانب المشاركة/الحفظ في صفحة الصوت بالريلز‏"; +"Adds download, copy and expand options to GIF and image comments" = "‏يضيف خيارات التنزيل والنسخ والتكبير لتعليقات GIF والصور‏"; +"Allow video in photo sticker" = "‏السماح بالفيديو في ملصق الصورة‏"; +"Alternate icons are not supported" = "الأيقونات البديلة غير مدعومة"; +"Anonymous live viewing" = "‏مشاهدة البث المباشر مجهول الهوية‏"; +"App Icon" = "أيقونة التطبيق"; +"Audio page" = "‏صفحة الصوت‏"; +"Auto-reveals sensitive media" = "‏يكشف تلقائيًا عن المحتوى الحساس‏"; +"Block surveys" = "حظر الاستطلاعات"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "‏يمنع نبض عدّاد المشاهدين فلا يراك المذيع — ولن ترى عدّاد المشاهدين أيضاً‏"; +"Browser" = "‏المتصفح‏"; +"Change the app icon from the bundled icons" = "غيّر أيقونة التطبيق من الأيقونات المضمّنة"; +"Choose Icon" = "اختيار الأيقونة"; +"Choose which surfaces hide ads" = "اختر الواجهات التي تُخفي الإعلانات"; +"Comments" = "‏التعليقات‏"; +"Commerce carousels in comments and shoppable CTAs on reels" = "العروض التجارية الدائرية في التعليقات وأزرار التسوّق في الريلز"; +"Copy comment text" = "‏نسخ نص التعليق‏"; +"Copy description" = "‏نسخ الوصف‏"; +"Long press a caption to copy its text" = "اضغط مطولاً على التسمية التوضيحية لنسخ نصها"; +"Custom sticker colors" = "‏ألوان ملصقات مخصصة‏"; +"Custom colors aren't supported for this sticker" = "‏الألوان المخصصة غير مدعومة لهذا الملصق‏"; +"Date format" = "‏تنسيق التاريخ‏"; +"Disable app haptics" = "‏إلغاء تفعيل الحس اللمسي للتطبيق‏"; +"Disables haptics/vibrations within the app" = "‏تعطيل الحس اللمسي والاهتزازات داخل التطبيق‏"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "‏تعطيل الزجاج السائل للحسابات المفعّل لديها افتراضيًا. يتجاوز الخيارات أعلاه‏"; +"Do not save recent searches" = "‏عدم حفظ عمليات البحث الأخيرة‏"; +"Download GIF & image comments" = "‏تنزيل تعليقات GIF والصور‏"; +"Download image" = "‏تنزيل الصورة‏"; +"Embed domain" = "‏تضمين النطاق‏"; +"Embed domain: %@" = "‏تضمين النطاق: %@‏"; +"Enable liquid glass buttons" = "‏تفعيل أزرار الزجاج السائل‏"; +"Enable liquid glass surfaces" = "‏تفعيل أسطح الزجاج السائل‏"; +"Enable teen app icons" = "‏تفعيل أيقونات تطبيق المراهقين‏"; +"Enables experimental liquid glass buttons" = "‏تفعيل أزرار الزجاج السائل التجريبية‏"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "‏تفعيل شريط تبويبات الزجاج السائل، والتنقل العائم، وعناصر واجهة المستخدم الأخرى‏"; +"End" = "‏النهاية‏"; +"Experimental features" = "‏ميزات تجريبية‏"; +"Explore & search" = "الاستكشاف والبحث"; +"Failed to change icon" = "تعذّر تغيير الأيقونة"; +"Fixed" = "‏ثابت‏"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "‏ثابت يمنع التقلص. إخفاء يجعله يختفي عند التمرير لأسفل‏"; +"Focus/distractions" = "‏التركيز والمشتتات‏"; +"Force liquid glass off" = "فرض إيقاف الزجاج السائل"; +"Force progressive blur" = "فرض التمويه المتدرج"; +"General" = "‏عام‏"; +"Gradient color" = "‏لون متدرّج‏"; +"Hide ads" = "‏إخفاء الإعلانات‏"; +"Hide explore posts grid" = "‏إخفاء شبكة منشورات الإكسبلور‏"; +"Hide friends map" = "‏إخفاء خريطة الأصدقاء‏"; +"Hide Meta AI" = "‏إخفاء ذكاء ميتا الاصطناعي‏"; +"Hide metrics" = "‏إخفاء الإحصائيات‏"; +"Hide notes tray" = "‏إخفاء شريط الملاحظات‏"; +"Hide on scroll" = "‏إخفاء عند التمرير‏"; +"Hide TestFlight popup" = "‏إخفاء نافذة TestFlight‏"; +"Hide trending searches" = "‏إخفاء عمليات البحث الرائجة‏"; +"Hide UI on capture" = "‏إخفاء الواجهة عند الالتقاط‏"; +"Removes suggested accounts to follow outside the feed" = "يزيل الحسابات المقترحة للمتابعة خارج الموجز"; +"Hides like/comment/share counts on posts and reels" = "‏إخفاء عدد الإعجابات والتعليقات والمشاركات على المنشورات ومقاطع ريلز‏"; +"Removes the friends map icon from the notes tray" = "يزيل أيقونة خريطة الأصدقاء من شريط الملاحظات"; +"Removes the suggested posts grid on the explore tab" = "يزيل شبكة المنشورات المقترحة في تبويب الاستكشاف"; +"Strips the Meta AI buttons and entry points from the app" = "يزيل أزرار Meta AI ونقاط الوصول إليها من التطبيق"; +"Hides the notes tray in the DM inbox" = "‏إخفاء شريط الملاحظات في صندوق الرسائل الخاصة‏"; +"Removes suggested broadcast channels from your inbox" = "يزيل قنوات البث المقترحة من صندوق الوارد"; +"Hide DM search suggestions" = "‏إخفاء اقتراحات البحث في الرسائل‏"; +"Removes suggested accounts and channels from direct message search" = "‏يزيل الحسابات والقنوات المقترحة من بحث الرسائل الخاصة‏"; +"Removes trending searches under the explore search bar" = "يزيل عمليات البحث الرائجة أسفل شريط بحث الاستكشاف"; +"Hold down on the Instagram logo to change the app icon" = "‏اضغط مطولاً على شعار إنستغرام لتغيير أيقونة التطبيق‏"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "يُبقي تمويه حافة التمرير في iOS 26 ظاهرًا بدلاً من تلاشيه"; +"Lets the photo sticker picker show videos too, not just photos" = "‏يسمح لمنتقي ملصق الصورة بعرض مقاطع الفيديو أيضًا، وليس الصور فقط‏"; +"Liquid glass tab bar" = "‏شريط تبويبات الزجاج السائل‏"; +"Live" = "‏البث المباشر‏"; +"Hold the eyedropper in stories to pick an exact text color" = "اضغط مطولاً على القطارة في القصص لاختيار لون نص محدد"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "‏اضغط مطولاً على عجلة الألوان في محررات الملصقات لاختيار أي لون موحد أو متدرّج‏"; +"Long-press the heart button in a live to hide or show the comments" = "‏اضغط مطولاً على زر القلب في البث المباشر لإخفاء التعليقات أو إظهارها‏"; +"Long-press the search tab to open a copied Instagram link" = "اضغط مطولاً على تبويب البحث لفتح رابط إنستغرام المنسوخ"; +"Master switch. When off, all per-surface toggles below are ignored." = "المفتاح الرئيسي. عند إيقافه، يتم تجاهل جميع المفاتيح الفرعية أدناه لكل واجهة."; +"No suggested chats" = "‏لا توجد محادثات مقترحة‏"; +"No suggested users" = "‏لا يوجد مستخدمون مقترحون‏"; +"Notes" = "‏الملاحظات‏"; +"Open app icon picker" = "‏فتح منتقي أيقونات التطبيق‏"; +"Open link from clipboard" = "فتح الرابط من الحافظة"; +"Open links in external browser" = "‏فتح الروابط في متصفح خارجي‏"; +"Opens links in Safari instead of Instagram's in-app browser" = "‏يفتح الروابط في متصفح سفاري بدلاً من متصفح إنستغرام الداخلي‏"; +"Privacy" = "‏الخصوصية‏"; +"Removes ads across enabled surfaces" = "يزيل الإعلانات عبر الواجهات المُفعّلة"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "‏إزالة معلمات التتبع من الروابط المشتركة‏"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "‏إزالة روابط تتبع إنستغرام ومعلمات التتبع من الروابط‏"; +"Replace domain in shared links" = "‏استبدال النطاق في الروابط المشتركة‏"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "‏استبدال الطوابع الزمنية النسبية لإنستغرام (\"منذ 3 أيام\") بتنسيق مخصص. قم بتبديل الأماكن التي يتم تطبيقها عليها من الداخل.‏"; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "‏إعادة كتابة الروابط المنسوخة والمشتركة لاستخدام نطاق ملائم للمعاينة في ديسكورد وتيليجرام وغيرها.‏"; +"Stops search bars from saving your recent searches" = "يمنع أشرطة البحث من حفظ عمليات بحثك الأخيرة"; +"Selected" = "محدّد"; +"Sharing" = "‏المشاركة‏"; +"Shopping" = "التسوّق"; +"Skip sensitive content covers" = "‏تخطي حواجز المحتوى الحساس‏"; +"Solid color" = "‏لون موحد‏"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "المنشورات المموّلة في الخلاصات الرئيسية والسياقية والمرئية والمتسلسلة"; +"Sponsored posts on the explore grid" = "المنشورات المموّلة في شبكة الاستكشاف"; +"Stops Instagram's in-app surveys and feedback prompts" = "يوقف استطلاعات إنستغرام وطلبات التقييم داخل التطبيق"; +"Sponsored reels in the sundial feed" = "الريلز المموّلة في خلاصة sundial"; +"Start" = "‏البداية‏"; +"Story ads and sponsored entries in the story tray" = "إعلانات القصص والإدخالات المموّلة في شريط القصص"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "شارات إحصائية على المنشورات والريلز في البحث والاستكشاف. افتح تفاصيل البطاقة لاختيار الإحصائيات المعروضة وإعادة ترتيبها ثم التطبيق."; +"Strip tracking from links" = "‏تجريد الروابط من التتبع‏"; +"Strip tracking params" = "‏إزالة معلمات التتبع‏"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "‏يمنع تنبيه \"حان وقت تحديث Instagram Beta\"‏"; +"Tap to apply" = "اضغط للتطبيق"; +"The selected icon will be saved and shown here the next time you open this page." = "سيتم حفظ الأيقونة المحددة وعرضها هنا في المرة القادمة التي تفتح فيها هذه الصفحة."; +"Toggle live comments" = "‏تبديل التعليقات المباشرة‏"; +"Use detailed color picker" = "‏استخدام منتقي الألوان التفصيلي‏"; +"Used across feed, stories, reels, and DMs." = "‏يُستخدَم في المنشورات والقصص والريلز والرسائل‏"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "قبل %ld يوم"; +"%ld days ago" = "قبل %ld يوم"; +"%ld hour ago" = "قبل %ld ساعة"; +"%ld hours ago" = "قبل %ld ساعة"; +"%ld minute ago" = "قبل %ld دقيقة"; +"%ld minutes ago" = "قبل %ld دقيقة"; +"%ld week ago" = "قبل %ld أسبوع"; +"%ld weeks ago" = "قبل %ld أسبوع"; +"%ldd" = "%ldي"; +"%ldh" = "%ldس"; +"%ldm" = "%ldد"; +"%ldw" = "%ldأ"; +"Always ask" = "‏السؤال دائمًا‏"; +"Balanced" = "‏متوازن‏"; +"Block all" = "‏حظر الكل‏"; +"Block selected" = "‏حظر المحدد‏"; +"Button" = "‏زر‏"; +"Date format — %@" = "‏تنسيق التاريخ — %@‏"; +"Default" = "‏الافتراضي‏"; +"Disabled" = "‏معطّل‏"; +"Download and share" = "‏تنزيل ومشاركة‏"; +"Download to Photos" = "‏تنزيل إلى الصور‏"; +"Save with music" = "حفظ مع الموسيقى"; +"Gallery with music" = "المعرض مع الموسيقى"; +"Save image (no music)" = "حفظ الصورة (بدون موسيقى)"; +"Gallery image (no music)" = "حفظ الصورة في المعرض (بدون موسيقى)"; +"Photo with music" = "صورة مع موسيقى"; +"Enabled" = "‏مفعّل‏"; +"Expand" = "‏توسيع‏"; +"Explore" = "‏إكسبلور‏"; +"Fast" = "‏سريع‏"; +"Feed" = "‏اليوميات‏"; +"Feed posts" = "منشورات الموجز"; +"High" = "‏مرتفع‏"; +"Inbox" = "‏صندوق الوارد‏"; +"just now" = "‏الآن‏"; +"Low" = "‏منخفض‏"; +"Max" = "‏الأقصى‏"; +"Medium" = "‏متوسط‏"; +"Mute/Unmute" = "‏كتم / إلغاء الكتم‏"; +"Notes, comments, stories" = "الملاحظات والتعليقات والقصص"; +"now" = "‏الآن‏"; +"Open menu" = "‏فتح القائمة‏"; +"Pause/Play" = "‏إيقاف / تشغيل‏"; +"Profile" = "‏الملف الشخصي‏"; +"Quality" = "‏الجودة‏"; +"Reels" = "‏ريلز‏"; +"Requires restart" = "‏يتطلب إعادة تشغيل‏"; +"Save to Photos" = "‏حفظ في الصور‏"; +"Share sheet" = "‏قائمة المشاركة‏"; +"Standard" = "‏قياسي‏"; +"Toggle" = "‏مفتاح تبديل‏"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "‏موجز الشبكة‏"; +"Browse your home feed as a grid of posts" = "‏تصفح موجزك الرئيسي كشبكة من المنشورات‏"; +"Hide stories in grid" = "‏إخفاء القصص في الشبكة‏"; +"Taller cells" = "‏خلايا أطول‏"; +"Portrait tiles instead of squares" = "‏بلاطات عمودية بدلاً من المربعة‏"; +"Open post" = "‏فتح المنشور‏"; +"View profile" = "‏عرض الملف الشخصي‏"; +"Like" = "‏إعجاب‏"; +"Liked" = "‏تم الإعجاب‏"; +"Unlike" = "‏إلغاء الإعجاب‏"; +"Unliked" = "‏تم إلغاء الإعجاب‏"; +"Followed" = "‏تمت المتابعة‏"; +"Unfollowed" = "‏تم إلغاء المتابعة‏"; +"Couldn't update like" = "‏تعذّر تحديث الإعجاب‏"; +"Couldn't update follow" = "‏تعذّر تحديث المتابعة‏"; +"Follow status" = "‏حالة المتابعة‏"; +"Shares" = "‏المشاركات‏"; +"Relative" = "‏نسبي‏"; +"Date and time" = "‏التاريخ والوقت‏"; +"You're all caught up" = "‏أنت على اطلاع بكل الجديد‏"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "‏يستبدل الصفحة الرئيسية بشبكة من المنشورات. التبديل إلى صفحة إنستغرام يُبقي الميزة مفعّلة ويعيد الصفحة فورًا. اقرص لتغيير عدد الأعمدة، والمس منشورًا لفتحه. مفتاح لك / المتابَعون يبقى متزامنًا مع الصفحة الرئيسية.‏"; +"Switch button" = "‏زر التبديل‏"; +"Hold the heart button" = "‏اضغط مطولًا على زر القلب‏"; +"Floating button" = "‏زر عائم‏"; +"How to switch" = "‏طريقة التبديل‏"; +"Hold the heart in Instagram's header" = "‏اضغط مطولًا على القلب في رأس إنستغرام‏"; +"A small round button on the feed" = "‏زر دائري صغير على الصفحة‏"; +"Button position" = "‏موضع الزر‏"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "‏اسحب الزر إلى المكان الذي تريده. الشريطان المعتمان هما رأس إنستغرام وشريط التبويب.‏"; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "‏يبدّل بين الشبكة وصفحة إنستغرام دون إيقاف الشبكة. عند الإيقاف يبقى اختصار الشريط الرئيسي هو الطريقة الوحيدة.‏"; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "‏لا يقع الزر أبدًا تحت الرأس أو شريط التبويب. اضغط عليه مطولًا في الخلاصة للعودة إلى هنا.‏"; +"Live preview" = "‏معاينة مباشرة‏"; +"Columns" = "‏الأعمدة‏"; +"Post info" = "‏معلومات المنشور‏"; +"Reorder and toggle stats on each tile" = "‏أعد الترتيب وبدّل الإحصائيات على كل بلاطة‏"; +"Info on each post" = "‏معلومات كل منشور‏"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "‏فعّل أو عطّل كل عنصر. اسحب المقبض ≡ لإعادة ترتيب كيفية ظهورها على البلاطة.‏"; +"Show avatar" = "‏إظهار الصورة الرمزية‏"; +"Media type badge" = "‏شارة نوع الوسائط‏"; +"Restores the default post info, order and options for the grid feed." = "‏يستعيد معلومات المنشور والترتيب والخيارات الافتراضية لموجز الشبكة.‏"; +"Views" = "‏المشاهدات‏"; +"Action button" = "‏زر الإجراء‏"; +"Adds 'Profile picture' to story tray long-press menus" = "‏إضافة 'صورة الملف الشخصي' إلى قوائم الضغط المطول في شريط القصص‏"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "‏يضيف زر إجراء ريوك غرام أسفل كل منشور في اليوميات مع خيارات تنزيل ومشاركة ونسخ وتوسيع وإعادة نشر. يؤدي النقر إلى فتح القائمة افتراضيًا؛ قم بتغيير السلوك أدناه.‏"; +"Choose Instagram's default feed or force the Following feed" = "‏اختر اليوميات الافتراضية لإنستغرام أو فرض يوميات المتابَعين‏"; +"Main feed" = "‏اليوميات الرئيسية‏"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "‏يتحكم في متى وكيف يتم تحديث اليوميات. يحدث التحديث في الخلفية عند العودة إلى التطبيق بعد ~10 دقائق. ويحدث تحديث زر الصفحة الرئيسية عند النقر فوقه أثناء التواجد فيه بالفعل.‏"; +"Confirm feed refresh" = "‏تأكيد تحديث اليوميات‏"; +"Shows an alert before a pull-to-refresh reloads the feed" = "‏يعرض تنبيهًا قبل أن يعيد السحب للتحديث تحميل اليوميات‏"; +"Refresh stories only" = "‏تحديث القصص فقط‏"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "‏السحب للتحديث يعيد تحميل شريط القصص دون تحديث اليوميات‏"; +"Refresh feed?" = "‏تحديث اليوميات؟‏"; +"Default tap action" = "‏إجراء النقر الافتراضي‏"; +"Disable background refresh" = "‏تعطيل التحديث في الخلفية‏"; +"Disable home button refresh" = "‏تعطيل تحديث زر الصفحة الرئيسية‏"; +"Disable home button scroll" = "‏تعطيل التمرير بزر الصفحة الرئيسية‏"; +"Disable video autoplay" = "‏تعطيل التشغيل التلقائي للفيديو‏"; +"Hide" = "‏إخفاء‏"; +"Hide entire feed" = "‏إخفاء اليوميات بالكامل‏"; +"Hide repost button" = "‏إخفاء زر إعادة النشر‏"; +"Hide stories tray" = "‏إخفاء شريط القصص‏"; +"Hide suggested stories" = "‏إخفاء القصص المقترحة‏"; +"Hide story highlights" = "إخفاء أبرز اللقطات"; +"Removes resurfaced highlights from the stories tray in feed" = "يزيل أبرز اللقطات التي تظهر مجددًا من شريط القصص في الموجز"; +"Hides suggested accounts" = "‏إخفاء الحسابات المقترحة‏"; +"Hides suggested reels" = "‏إخفاء مقاطع ريلز المقترحة‏"; +"Hides suggested threads posts" = "‏إخفاء منشورات ثريدز المقترحة‏"; +"Hides the repost button on feed posts" = "‏إخفاء زر إعادة النشر على منشورات اليوميات‏"; +"Hides the story tray at the top" = "‏إخفاء شريط القصص في الأعلى‏"; +"Inserts a button row below like/comment/share on each post" = "‏إدراج صف أزرار أسفل الإعجاب والتعليق والمشاركة على كل منشور‏"; +"Long press on media to expand in full-screen viewer" = "‏اضغط مطولاً على الوسائط لتوسيعها في عارض ملء الشاشة‏"; +"Start media muted" = "‫بدء الوسائط بدون صوت‬"; +"Expanded videos open with sound off" = "‫تُفتح مقاطع الفيديو الموسعة بدون صوت‬"; +"Enhanced media resolution" = "‫دقة وسائط محسّنة‬"; +"Media saving" = "‫حفظ الوسائط‬"; +"Spoof device profile so IG serves higher-quality images" = "‫انتحل ملف الجهاز ليقدم إنستغرام صورًا أعلى جودة‬"; +"Media" = "‏الوسائط‏"; +"Media zoom" = "‏تكبير الوسائط‏"; +"No suggested for you" = "‏لا توجد اقتراحات لك‏"; +"No suggested posts" = "‏لا توجد منشورات مقترحة‏"; +"No suggested reels" = "‏لا توجد مقاطع ريلز مقترحة‏"; +"No suggested threads" = "‏لا توجد منشورات ثريدز مقترحة‏"; +"Prevents feed from reloading when returning from background" = "‏يمنع اليوميات من إعادة التحميل عند العودة من الخلفية‏"; +"Prevents videos from playing automatically" = "‏يمنع مقاطع الفيديو من التشغيل التلقائي‏"; +"Refresh" = "‏تحديث‏"; +"Removes all content from your home feed" = "‏إزالة جميع المحتويات من يومياتك الرئيسية‏"; +"Removes suggested accounts from the stories tray" = "‏إزالة الحسابات المقترحة من شريط القصص‏"; +"Removes suggested posts" = "‏إزالة المنشورات المقترحة‏"; +"Scroll to top without refreshing when tapping Home" = "‏التمرير إلى الأعلى دون تحديث عند النقر على الصفحة الرئيسية‏"; +"Show action button" = "‏إظهار زر الإجراء‏"; +"Show date" = "‏إظهار التاريخ‏"; +"Stories tray" = "‏شريط القصص‏"; +"Tapping Home does nothing when already on feed" = "‏النقر على الصفحة الرئيسية لا يفعل شيئًا عند التواجد بالفعل في اليوميات‏"; +"Tray long-press actions" = "‏إجراءات الضغط المطول على الشريط‏"; +"Composer doesn't accept GIFs" = "‏المُؤلِّف لا يقبل صور GIF‏"; +"Copy GIF link" = "‏نسخ رابط GIF‏"; +"Copy image link" = "‏نسخ رابط الصورة‏"; +"Custom GIF in comments" = "‏GIF مخصص في التعليقات‏"; +"Favorite GIFs" = "صور GIF المفضلة"; +"Long-press a GIF in the picker to pin it — favorites show first" = "اضغط مطولًا على GIF في المنتقي لتثبيته — تظهر المفضلة أولًا"; +"Added to favorites" = "تمت الإضافة إلى المفضلة"; +"Removed from favorites" = "تمت الإزالة من المفضلة"; +"Favorite GIF unavailable" = "صورة GIF المفضلة غير متوفرة"; +"This GIF may have been removed. Long-press it to unfavorite." = "ربما تمت إزالة صورة GIF هذه. اضغط عليها مطولاً لإزالتها من المفضلة."; +"Failed to build GIF model" = "‏فشل في إنشاء نموذج GIF‏"; +"GIF link copied" = "‏تم نسخ رابط GIF‏"; +"Image" = "‏صورة‏"; +"Image link copied" = "‏تم نسخ رابط الصورة‏"; +"Invalid Giphy URL" = "‏رابط Giphy غير صالح‏"; +"Long-press the GIF button to paste any Giphy URL" = "‏اضغط مطولاً على زر GIF للصق أي رابط Giphy‏"; +"Paste Giphy Link" = "‏لصق رابط Giphy‏"; +"Paste a giphy.com URL or media ID" = "‏الصق رابط giphy.com أو معرف الوسائط‏"; +"Send" = "‏إرسال‏"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "‏يضيف زر إجراء ريوك غرام أعلى الشريط الجانبي لمقطع ريلز مع خيارات عرض الغلاف وتنزيل ومشاركة ونسخ وتوسيع وإعادة نشر. يؤدي النقر إلى فتح القائمة افتراضيًا؛ قم بتغيير السلوك أدناه.‏"; +"Always show progress scrubber" = "‏إظهار شريط التقدم دائمًا‏"; +"Auto-scroll reels" = "‏التمرير التلقائي لمقاطع ريلز‏"; +"Speed, seek and auto-scroll controls" = "عناصر التحكم في السرعة والتنقّل والتمرير التلقائي"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "تظهر عناصر التحكم المفعّلة عند الضغط مطوّلاً على زر ⋯ أو زر الصوت في الريل."; +"Seek controls" = "عناصر التحكم في التنقّل"; +"Auto-scroll control" = "التحكم في التمرير التلقائي"; +"Seek" = "التنقّل"; +"Custom seek step" = "مقدار تنقّل مخصّص"; +"Enter the number of seconds to skip" = "أدخل عدد الثواني المراد تخطّيها"; +"Set what a tap on a reel does" = "حدد ما يفعله النقر على الريل"; +"Confirm reel refresh" = "‏تأكيد تحديث ريلز‏"; +"Custom speed" = "سرعة مخصّصة"; +"Disable auto-unmuting reels" = "‏تعطيل إلغاء الكتم التلقائي لمقاطع ريلز‏"; +"Disable scrolling reels" = "‏تعطيل تمرير مقاطع ريلز‏"; +"Disable tab button refresh" = "‏تعطيل تحديث زر التبويب‏"; +"Doom scrolling limit" = "‏حد التمرير المفرط‏"; +"e.g. 1.75" = "مثال: 1.75"; +"Enter a value between 0.5 and 2.0" = "أدخل قيمة بين 0.5 و2.0"; +"Keeps the progress bar visible on every reel" = "يُبقي شريط التقدم ظاهراً في كل ريل"; +"Hide \"Made with Edits\" badge" = "‏إخفاء شارة \"تم الإنشاء باستخدام Edits\"‏"; +"Hide friends avatars" = "‏إخفاء صور الأصدقاء‏"; +"Hide reels header" = "‏إخفاء ترويسة ريلز‏"; +"Hide social context overlay" = "‏إخفاء طبقة السياق الاجتماعي‏"; +"Hides the avatar bubbles next to the Friends tab in reels" = "‏يخفي صور الأصدقاء بجانب علامة تبويب الأصدقاء في ريلز‏"; +"Hides the Edits app promo pill on reels" = "‏يخفي شارة الترويج لتطبيق Edits في الريلز‏"; +"Hides the floating overlay showing who reposted or commented on reels" = "‏يخفي الطبقة العائمة التي تظهر من أعاد النشر أو علّق على الريلز‏"; +"Hides the repost button on the reels sidebar" = "‏إخفاء زر إعادة النشر على الشريط الجانبي لمقاطع ريلز‏"; +"Drops the top bar while you watch reels" = "يخفي الشريط العلوي أثناء مشاهدة الريلز"; +"Hiding" = "‏إخفاء‏"; +"IG default" = "‏الافتراضي لإنستغرام‏"; +"Limits" = "‏الحدود‏"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "يحدّ من عدد الريلز التي يمكنك تمريرها تتابعاً ويمنع التحديث"; +"Only loads %@ %@" = "‏تحميل %@ %@ فقط‏"; +"Places a button above the like/comment/share column on each reel" = "‏يضع زرًا أعلى عمود الإعجاب والتعليق والمشاركة في كل مقطع ريلز‏"; +"Playback speed" = "سرعة التشغيل"; +"Prevent doom scrolling" = "‏منع التمرير المفرط‏"; +"Engagement filter" = "‏فلتر التفاعل‏"; +"Hide reels below a like, comment, view or repost count" = "‏إخفاء الريلز الأقل من حد معيّن من الإعجابات أو التعليقات أو المشاهدات أو إعادات النشر‏"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "‏يخفي الريلز التي لا تصل إلى كل حد أدنى تحدده. الريلز التي أخفى صاحبها أعدادها تظهر ما لم تُخفِها أيضًا.‏"; +"Filter reels by engagement" = "‏فلترة الريلز حسب التفاعل‏"; +"Hide reels with hidden stats" = "‏إخفاء الريلز ذات الإحصائيات المخفية‏"; +"Only filter the Reels tab" = "‏فلترة تبويب الريلز فقط‏"; +"Reels you open from a post, profile or share are never filtered" = "‏الريلز التي تفتحها من منشور أو ملف شخصي أو مشاركة لا تُفلتر أبدًا‏"; +"Minimums" = "‏الحدود الدنيا‏"; +"Minimum likes" = "‏الحد الأدنى للإعجابات‏"; +"Minimum comments" = "‏الحد الأدنى للتعليقات‏"; +"Minimum views" = "‏الحد الأدنى للمشاهدات‏"; +"Minimum reposts" = "‏الحد الأدنى لإعادات النشر‏"; +"Reels below this count are hidden. 0 turns this limit off." = "‏تُخفى الريلز الأقل من هذا العدد. القيمة 0 تعطّل هذا الحد.‏"; +"Turns the filter off and clears every minimum." = "‏يعطّل الفلتر ويمسح كل الحدود الدنيا.‏"; +"Locks a reel in place so it never scrolls to the next one" = "يثبّت الريل في مكانه فلا ينتقل أبداً إلى التالي"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "يمنع الريلز من تشغيل الصوت عند الضغط على مفتاح الصوت أو الرنين"; +"RyukGram" = "‏ريوك غرام‏"; +"Confirms before the reels feed refreshes" = "يطلب التأكيد قبل تحديث موجز الريلز"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "‏يظهر أزرارًا للكشف عن كلمة المرور وتعبئتها تلقائيًا في مقاطع ريلز المقفلة‏"; +"Same as general format" = "نفس التنسيق العام"; +"Shows the repost date on the \"reposted this reel\" header." = "يعرض تاريخ إعادة النشر في عنوان \"أعاد نشر هذا الريل\"."; +"Reposts" = "‏إعادة النشر‏"; +"Swipe a reel left to open the author's profile" = "‏اسحب مقطع ريلز لليسار لفتح الملف الشخصي لصاحبه‏"; +"Swipe left to profile" = "‏السحب لليسار لفتح الملف الشخصي‏"; +"Tap Controls" = "‏عناصر تحكم النقر‏"; +"Tap to mute on photo reels" = "‏اضغط للكتم في ريلز الصور‏"; +"Tapping the Reels tab while on reels does nothing" = "‏النقر على تبويب ريلز أثناء التواجد فيه لا يفعل شيئًا‏"; +"Unlock password-locked reels" = "‏فتح مقاطع ريلز المقفلة بكلمة مرور‏"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "‏عند تفعيل وضع الإيقاف المؤقت، يؤدي النقر على ريلز الصور إلى تبديل الصوت بدلاً من إيماءة الإيقاف الأصلية‏"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "يضيف زرًا لتصفية وترتيب أي قائمة متابِعين/متابَعين. يُعاد ضبطه عند المغادرة."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "‏إضافة خيار عرض إلى قائمة الضغط المطول على الهايلايت لفتح الغلاف بملء الشاشة‏"; +"Applying restarts Instagram to load your changes." = "التطبيق يعيد تشغيل انستغرام لتحميل تغييراتك."; +"Card details" = "تفاصيل البطاقة"; +"Comment count" = "عدد التعليقات"; +"Copy note on long press" = "‏نسخ الملاحظة عند الضغط المطول‏"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "إحصائيات إضافية تظهر على كل بطاقة منشور وريل في شبكات الملف الشخصي — اختر ما تريد، أعد ترتيبها، ثم طبّق."; +"Fake follower count" = "‏عدد متابعين وهمي‏"; +"Fake following count" = "‏عدد المتابَعين وهمي‏"; +"Fake post count" = "‏عدد منشورات وهمي‏"; +"Fake profile stats" = "‏إحصائيات ملف شخصي وهمية‏"; +"Fake verified badge" = "‏شارة توثيق وهمية‏"; +"Fetch missing counts" = "جلب الأرقام المفقودة"; +"Filter & sort lists" = "تصفية وترتيب القوائم"; +"Follow indicator" = "‏مؤشر المتابعة‏"; +"Follower & following lists" = "قوائم المتابِعين والمتابَعين"; +"Follower count" = "‏عدد المتابعين‏"; +"Following count" = "‏عدد المتابَعين‏"; +"Like count" = "عدد الإعجابات"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "‏اضغط مطولاً على صورة الملف الشخصي لفتحها بملء الشاشة مع إمكانية التكبير والمشاركة والحفظ‏"; +"Long press the note bubble on a profile to copy the text" = "‏اضغط مطولاً على فقاعة الملاحظة في الملف الشخصي لنسخ النص‏"; +"Long press to download directly (ignored when zoom is on)" = "‏اضغط مطولاً للتنزيل مباشرة (يتم تجاهله عند تشغيل التكبير)‏"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "‏إيماءات الضغط المطول على عناصر الملف الشخصي — منفصلة عن أزرار الإجراءات لكل ميزة.‏"; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "مفتاح رئيسي لكل إحصائيات البطاقة. جلب الأرقام المفقودة يستخدم واجهة انستغرام وقد يصل إلى حدود الطلبات."; +"Only affects your own profile header. Other users see the real numbers." = "‏يؤثر فقط على رأس ملفك الشخصي. يرى المستخدمون الآخرون الأرقام الحقيقية.‏"; +"Post count" = "‏عدد المنشورات‏"; +"Profile card details" = "تفاصيل بطاقة الملف الشخصي"; +"Profile stats" = "إحصائيات الملف الشخصي"; +"Repost count" = "عدد إعادات النشر"; +"Restores the default stats, order, and options for profile card details." = "يستعيد الإحصائيات والترتيب والخيارات الافتراضية لتفاصيل بطاقة الملف الشخصي."; +"Restores the default stats, order, and options for search & explore card details." = "يستعيد الإحصائيات والترتيب والخيارات الافتراضية لتفاصيل بطاقات البحث والاستكشاف."; +"Save profile picture" = "‏حفظ صورة الملف الشخصي‏"; +"Search & Explore" = "البحث والاستكشاف"; +"Share count" = "عدد المشاركات"; +"Short numbers" = "أرقام مختصرة"; +"Show a checkmark next to your name on your own profile" = "‏إظهار علامة توثيق بجوار اسمك في ملفك الشخصي‏"; +"Show card details" = "إظهار تفاصيل البطاقة"; +"Show full follower count" = "إظهار العدد الكامل للمتابعين"; +"Show full post count" = "إظهار العدد الكامل للمنشورات"; +"Show the custom number set below" = "إظهار الرقم المخصص المحدد أدناه"; +"Show the exact number instead of a shortened one" = "إظهار الرقم الدقيق بدلاً من المختصر"; +"Shows whether the profile user follows you" = "‏يُظهر ما إذا كان صاحب الملف الشخصي يتابعك‏"; +"Tap to set" = "‏اضغط للتعيين‏"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "فعّل أو عطّل كل إحصائية. اسحب المقبض ≡ لإعادة ترتيب تكدّسها على البطاقة."; +"Upload date" = "تاريخ النشر"; +"View count" = "عدد المشاهدات"; +"View highlight cover" = "‏عرض غلاف الهايلايت‏"; +"Views, likes, comments, shares, reposts, date" = "المشاهدات، الإعجابات، التعليقات، المشاركات، إعادات النشر، التاريخ"; +"Zoom profile photo" = "‏تكبير صورة الملف الشخصي‏"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "التنزيلات النشطة وفي قائمة الانتظار والمكتملة"; +"Auto-retry attempts" = "محاولات إعادة المحاولة التلقائية"; +"Auto-retry failed downloads" = "إعادة محاولة التنزيلات الفاشلة تلقائيًا"; +"Confirm before download" = "‏التأكيد قبل التنزيل‏"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "‏مهمل. زر إجراء ريوك غرام (المكوّن لكل ميزة في اليوميات وريلز والقصص) هو الطريقة الجديدة لتنزيل الوسائط. مكّن هذا الخيار فقط إذا كنت تفضل الضغط المطول القديم المباشر على الوسائط.‏"; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "لا توقف التنزيلات أو الترميز أو فحوصات الملف الشخصي مؤقتًا عند مغادرة التطبيق"; +"Download queue" = "قائمة انتظار التنزيل"; +"Downloads" = "‏التنزيلات‏"; +"Downloads with %@ %@" = "‏تنزيلات باستخدام %@ %@‏"; +"Enable long-press gesture" = "‏تفعيل إيماءة الضغط المطول‏"; +"Finger count for long-press" = "‏عدد الأصابع للضغط المطول‏"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "عدد التنزيلات التي تعمل في وقت واحد — تنتظر الإضافية في الطابور وتبدأ عند توفر فتحات. تُعاد محاولة التنزيلات الفاشلة تلقائيًا عند أخطاء الشبكة. افتح المدير لمراقبة التنزيلات أو إلغائها أو إعادة محاولتها."; +"Keep running in background" = "الاستمرار في العمل في الخلفية"; +"Legacy long-press gesture" = "‏إيماءة الضغط المطول القديمة‏"; +"Long-press hold time" = "‏مدة الاحتفاظ بالضغط المطول‏"; +"Master toggle for the deprecated gesture workflow (off by default)" = "‏التبديل الرئيسي لإيماءات الضغط المطول القديمة (مغلق افتراضيًا)‏"; +"Max simultaneous downloads" = "أقصى عدد للتنزيلات المتزامنة"; +"Open download manager" = "فتح مدير التنزيلات"; +"Press finger(s) for %@ %@" = "‏اضغط بإصبع/أصابع لمدة %@ %@‏"; +"Retry automatically when a download drops on a network error" = "إعادة المحاولة تلقائيًا عند انقطاع التنزيل بسبب خطأ في الشبكة"; +"Route saves into a custom album in Photos instead of the camera roll root" = "‏توجيه الحفظ إلى ألبوم مخصص في تطبيق الصور بدلاً من الألبوم الرئيسي‏"; +"Run up to %@ %@ at once" = "تشغيل حتى %@ %@ في وقت واحد"; +"Save action" = "‏إجراء الحفظ‏"; +"Save to dedicated album" = "الحفظ في ألبوم مخصص"; +"Show a confirmation dialog before starting a download" = "‏عرض نافذة تأكيد قبل بدء التنزيل‏"; +"Try %@ more %@ before giving up" = "حاول %@ %@ إضافية قبل الاستسلام"; +"What happens after the gesture downloads" = "‏ماذا يحدث بعد تنزيلات الإيماءة‏"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "عند تفعيل \"الحفظ في ألبوم مخصص\"، تُوجَّه التنزيلات وخيارات \"الحفظ في الصور\" من ورقة المشاركة إلى ألبوم مُسمّى في مكتبة الصور. اضغط على \"اسم الألبوم\" لتغييره."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "متبقي %@"; +"%@ of %@" = "%1$@ من %2$@"; +"%@/s" = "%@/ث"; +"%dh" = "%dس"; +"%dm" = "%dد"; +"%ds" = "%dث"; +"%ld downloading" = "%ld قيد التنزيل"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld ما زالت قيد التشغيل — سيتم إيقافها. الملفات المحفوظة تبقى."; +"%lu failed" = "فشل %lu"; +"%lu of %lu done" = "%lu من %lu مكتمل"; +"%lu saved, %lu failed" = "تم حفظ %lu، فشل %lu"; +"12 hours" = "12 ساعة"; +"1s" = "1ث"; +"24 hours" = "24 ساعة"; +"48 hours" = "48 ساعة"; +"Active" = "نشط"; +"Auto-retry" = "إعادة المحاولة التلقائية"; +"Clear completed" = "مسح المكتملة"; +"Clear download history" = "مسح سجل التنزيلات"; +"Clear download history?" = "مسح سجل التنزيلات؟"; +"Completed" = "مكتمل"; +"Don't keep" = "عدم الحفظ"; +"Download history" = "سجل التنزيلات"; +"Download settings" = "إعدادات التنزيل"; +"Downloading %lu items" = "جارٍ تنزيل %lu عنصر"; +"Downloading…" = "جارٍ التنزيل…"; +"Empty the manager's list of past downloads" = "إفراغ قائمة التنزيلات السابقة في المدير"; +"Encoding %d%%" = "الترميز %d%%"; +"Encoding…" = "جارٍ الترميز…"; +"Extra downloads wait in line and start as slots free up." = "تنتظر التنزيلات الإضافية في الطابور وتبدأ عند توفر فتحات."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "مدة بقاء التنزيلات المكتملة والفاشلة والملغاة في المدير بعد إغلاق التطبيق. الملفات نفسها لا تُمسّ — القائمة فقط."; +"How long past downloads stay listed in the manager" = "مدة بقاء التنزيلات السابقة في المدير"; +"Keep history for" = "مدة حفظ السجل"; +"Media you download shows up here, with its progress and where it was saved." = "تظهر الوسائط التي تنزّلها هنا، مع تقدّمها ومكان حفظها."; +"No downloads yet" = "لا توجد تنزيلات بعد"; +"Preview" = "معاينة"; +"Queued" = "في قائمة الانتظار"; +"Redownload" = "إعادة التنزيل"; +"Retry" = "إعادة المحاولة"; +"Retrying…" = "جارٍ إعادة المحاولة…"; +"Stop" = "إيقاف"; +"The files already saved are kept — this only empties the list." = "الملفات المحفوظة تبقى — هذا يفرغ القائمة فقط."; +"Waiting for a free slot" = "في انتظار مكان شاغر"; +"Waiting for connection…" = "في انتظار الاتصال…"; +"Waiting to retry" = "في انتظار إعادة المحاولة"; +"Waiting…" = "في الانتظار…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "ترتيب أزرار التراكب"; +"Overlay layout" = "تخطيط التراكب"; +"Drag to position the buttons" = "اسحب لتحديد موضع الأزرار"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "اسحب الأزرار إلى القصة. الشريط المعتم هو شريط الرد."; +"Send message" = "إرسال رسالة"; + +"Pinned" = "مثبّت"; +"Search viewers" = "البحث في المشاهدين"; +"No matching viewers" = "لا مشاهدين مطابقين"; +"No viewers match these filters" = "لا مشاهدين يطابقون هذه الفلاتر"; +"Unavailable" = "غير متاح"; +"Default (recent first)" = "الافتراضي (الأحدث أولاً)"; +"%lu viewers" = "%lu مشاهدًا"; +"Viewer pinned" = "تم تثبيت المشاهد"; +"Viewer unpinned" = "تم إلغاء تثبيت المشاهد"; +"Pin a viewer" = "تثبيت مشاهد"; +"Pin order" = "ترتيب التثبيت"; +"Pin this viewer?" = "تثبيت هذا المشاهد؟"; +"Filter, sort & pin viewers" = "تصفية المشاهدين وفرزهم وتثبيتهم"; +"Add by username, remove, reorder" = "إضافة باسم المستخدم، إزالة، إعادة ترتيب"; +"Pinned viewers (%lu)" = "المشاهدون المثبّتون (%lu)"; +"Viewers list" = "قائمة المشاهدين"; +"Settings are saved and reused next time." = "يتم حفظ الإعدادات وإعادة استخدامها في المرة القادمة."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "حدّد عدة خيارات لدمجها. المشاهدون المثبّتون يبقون دائمًا في الأعلى ويتجاهلون هذه الفلاتر."; +"Pinned viewers" = "المشاهدون المثبّتون"; +"Pin" = "تثبيت"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "يستبدل قائمة 'من شاهد قصتك' بقائمة قابلة للبحث والتصفية والفرز. اضغط مطولاً على مشاهد لتثبيته في الأعلى. يمكنك العودة إلى القائمة الأصلية في أي وقت."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "اسم المستخدم أو معرّف المستخدم الخام. المشاهدون المثبّتون يبقون دائمًا في أعلى قائمة مشاهدي قصتك."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "‏يضيف زر إجراء ريوك غرام بجوار زر المشاهدة في القصص مع خيارات تنزيل ومشاركة ونسخ وتوسيع وإعادة نشر وعرض الإشارات. يؤدي النقر إلى فتح القائمة؛ قم بتغيير السلوك أدناه.‏"; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "‏يضيف زر مكبر صوت إلى القصة لكتم وإلغاء كتم الصوت. متاح أيضًا في قائمة النقاط الثلاث‏"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "‏يضيف زر العين إلى القصص. عند الإيقاف يبقى حظر المشاهدة مفعّلًا بدون الزر‏"; +"Advance on story like" = "‏التقدم عند الإعجاب بالقصة‏"; +"Advance on story reply" = "‏التقدم عند الرد على القصة‏"; +"Advance when marking as seen" = "‏التقدم عند التحديد كمقروءة‏"; +"Audio" = "‏الصوت‏"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "‏حظر الكل: حظر جميع القصص — المستخدمون المدرجون مستثنون.\nحظر المحدد: حظر المستخدمين المدرجين فقط — كل شيء آخر طبيعي.\nيتم حفظ كلتا القائمتين بشكل مستقل.‏"; +"Blocking mode" = "‏وضع الحظر‏"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "‏زر = نقرة واحدة للتحديد كمقروءة. تبديل = النقر يبدل تشغيل وإيقاف مؤشرات قراءة القصة (تتحول العين للأزرق عند التشغيل)‏"; +"Marked-seen indicator" = "‏مؤشر القصص المميّزة كمُشاهدة‏"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "‏يتذكّر القصص التي ميّزتها كمُشاهدة لمدة 48 ساعة ويخفي زر العين أو يملؤه فيها‏"; +"Hide eye button" = "‏إخفاء زر العين‏"; +"Fill eye button green" = "‏ملء زر العين بالأخضر‏"; +"Disable story seen receipt" = "‏تعطيل مؤشر مشاهدة القصة‏"; +"Enable story user list" = "‏تفعيل قائمة مستخدمي القصص‏"; +"Stops others from seeing that you viewed their story" = "يمنع الآخرين من رؤية أنك شاهدت قصتهم"; +"Inserts a button next to the seen/eye button on story overlays" = "‏يدرج زرًا بجوار زر المشاهدة في القصص‏"; +"Keep stories visually seen locally" = "‏الحفاظ على رؤية القصص محليًا بصريًا‏"; +"Liking a story automatically advances to the next one after a short delay" = "‏الإعجاب بقصة ينقلك تلقائيًا للقصة التالية بعد تأخير قصير‏"; +"Manage list" = "‏إدارة القائمة‏"; +"Manage list (%lu)" = "‏إدارة القائمة (%lu)‏"; +"Manual seen button mode" = "‏وضع زر التحديد كمقروءة يدويًا‏"; +"Mark seen on story like" = "‏تحديد كمقروءة عند الإعجاب بالقصة‏"; +"Mark seen on story reply" = "‏تحديد كمقروءة عند الرد على القصة‏"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "‏يحدد القصة كمقروءة بمجرد النقر على القلب، حتى مع تفعيل حظر المشاهدة‏"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "‏يحدد القصة كمقروءة عند إرسال رد أو تفاعل، حتى مع تفعيل حظر المشاهدة‏"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "‏يحدد القصص كمقروءة محليًا (حلقة رمادية) بينما لا يزال يحظر إرسال مؤشر المشاهدة للخادم‏"; +"Master toggle. When off, the list is ignored" = "‏المفتاح الرئيسي. عند إيقاف التشغيل، يتم تجاهل القائمة‏"; +"Playback" = "‏التشغيل‏"; +"Search, sort, swipe to remove" = "‏بحث، فرز، التمرير للإزالة‏"; +"Seen receipts" = "‏مؤشرات القراءة‏"; +"Sending a reply or emoji reaction automatically advances to the next story" = "‏إرسال رد أو تفاعل ينقلك تلقائيًا للقصة التالية‏"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "‏يضيف خيار 'عرض الإشارات' إلى قائمة زر الإجراء وقائمة النقاط الثلاث في القصص‏"; +"Mentions overlay button" = "‏زر الإشارات على القصة‏"; +"Mentions count badge" = "شارة عدد الإشارات"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "‏يضيف زرًا بجوار زر الإجراء/المشاهدة على القصة. يظهر فقط عند احتواء القصة الحالية على إشارات أو منشورات/ريلز مشتركة‏"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "يعرض عدد الحسابات المُشار إليها كشارة حمراء على الزر التراكبي"; +"Hide stories midcards" = "إخفاء البطاقات الوسطى للقصص"; +"Removes the Trending and Music promo cards from the stories tray" = "يزيل بطاقات الترويج للرائج والموسيقى من شريط القصص"; +"Stickers" = "‏ملصقات‏"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "‏اطلع على نتائج استطلاعات الرأي/الاختبارات/شريط التمرير قبل التفاعل — لا يزال بإمكانك النقر للتصويت بشكل طبيعي. 'إجبار الملصقات القديمة' يعيد ملصقَي الاختبار والكشف إلى لوحة إنشاء القصة.‏"; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "‏اطلع على نتائج استطلاعات الرأي/الاختبارات/شريط التمرير في الريلز قبل التفاعل — لا يزال بإمكانك النقر للتصويت بشكل طبيعي.‏"; +"Force legacy stickers in tray" = "‏إجبار ظهور الملصقات القديمة‏"; +"Adds Quiz and Reveal stickers back to the picker" = "‏إعادة ملصقَي الاختبار والكشف إلى منتقي الملصقات‏"; +"Bypass Reveal sticker" = "‏تجاوز ملصق الكشف‏"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "‏تخطَّ خطوة إرسال رسالة لكشف القصص التي تحتوي على ملصق الكشف‏"; +"Show quiz answer" = "‏إظهار إجابة الاختبار‏"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "‏تمييز الخيار الصحيح في ملصقات الاختبار أو الخيار الأكثر تصويتًا في الاستطلاعات‏"; +"Show poll vote counts" = "‏إظهار عدد أصوات الاستطلاع‏"; +"Show vote tallies on poll options and slider count/average before you vote" = "‏إظهار عدد الأصوات على خيارات الاستطلاع ومتوسط/عدد شريط التمرير قبل التصويت‏"; +"Stop story auto-advance" = "‏إيقاف التقدم التلقائي للقصص‏"; +"Stories" = "‏القصص‏"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "‏لن تنتقل القصص تلقائيًا للتالية عند انتهاء المؤقت. انقر للتقدم يدويًا‏"; +"Story audio toggle" = "‏تبديل صوت القصة‏"; +"Story user list" = "‏قائمة مستخدمي القصص‏"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "‏النقر على زر المشاهدة لتحديد القصة كمقروءة ينقلك للتالية تلقائيًا‏"; +"This will send a story view receipt." = "‏سيتم إرسال مؤشر مشاهدة القصة.‏"; +"View story mentions" = "‏عرض إشارات القصة‏"; +"Which stories get seen-receipt blocking" = "‏أي القصص يتم حظر مؤشر مشاهدتها‏"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "الحالة النشطة الدقيقة"; +"Activity log" = "سجل النشاط"; +"Loading…" = "جارٍ التحميل…"; +"Notify: %@ · Log: %@" = "إشعار: %@ · سجل: %@"; +"Add by user ID" = "إضافة بمعرّف المستخدم"; +"Add by thread ID" = "إضافة بمعرّف المحادثة"; +"Adding…" = "جارٍ الإضافة…"; +"Browse activity, grouped by person" = "تصفح النشاط، مجمّعًا حسب الشخص"; +"Clear activity log?" = "مسح سجل النشاط؟"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "لا يوجد نشاط بعد.\nعندما يقرأ أحد رسالتك أو يصبح متصلًا، سيظهر هنا."; +"No one found. Check the spelling or try a different name." = "لم يُعثر على أحد. تحقق من التهجئة أو جرّب اسمًا آخر."; +"Notify about someone" = "إشعار عن شخص"; +"Open some chats first, or search a username above." = "افتح بعض المحادثات أولًا، أو ابحث عن اسم مستخدم أعلاه."; +"Pick what each person notifies you about" = "اختر ما يُشعرك به كل شخص"; +"Recent in your DMs" = "الأخيرون في رسائلك"; +"Results" = "النتائج"; +"This removes all recorded activity on this device." = "يزيل هذا كل النشاط المسجّل على هذا الجهاز."; +"Active %ldd ago" = "نشط قبل %ldd"; +"Active %ldh ago" = "نشط قبل %ldh"; +"Active %ldm ago" = "نشط قبل %ldm"; +"Activity notifications" = "إشعارات النشاط"; +"Also track reads in group chats. Groups can be noisy" = "تتبّع القراءات في المحادثات الجماعية أيضًا. قد تكون كثيرة الإزعاج"; +"Came online" = "أصبح متصلًا"; +"Customise notifications" = "تخصيص الإشعارات"; +"Everyone" = "الجميع"; +"Muted" = "مكتوم"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "لم يتم تخصيص أحد بعد. اضغط مطوّلًا على شخص في سجل النشاط لاختيار ما يُشعرك به."; +"Online, offline, typing and read receipts, per person" = "الاتصال وعدم الاتصال والكتابة وإيصالات القراءة، لكل شخص"; +"Per-person notifications" = "إشعارات لكل شخص"; +"Enable activity" = "تفعيل النشاط"; +"Track who reads your messages, comes online, goes offline or types" = "تتبّع من يقرأ رسائلك أو يتصل أو يقطع الاتصال أو يكتب"; +"For everyone" = "للجميع"; +"For this person" = "لهذا الشخص"; +"Log only" = "التسجيل فقط"; +"Notify only" = "الإشعار فقط"; +"Notify + log" = "إشعار + تسجيل"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "التسجيل فقط يحفظ بصمت. الإشعار فقط ينبّهك دون حفظه. إشعار + تسجيل يقوم بالأمرين."; +"Presence" = "التواجد"; +"Read your message" = "قرأ رسالتك"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "حدّث التواجد كل 20 ثانية وتجاوز فترة سماح إنستغرام، لتنطفئ النقطة الخضراء فور خروج الشخص."; +"Started typing" = "بدأ الكتابة"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "اضغط لتغيير ما يُشعرك به. اسحب للإزالة والعودة إلى الإعدادات الافتراضية."; +"These override the defaults for this person." = "هذه تتجاوز الإعدادات الافتراضية لهذا الشخص."; +"Went offline" = "أصبح غير متصل"; +"When someone becomes active" = "عندما يصبح شخص نشطًا"; +"When someone goes inactive" = "عندما يصبح شخص غير نشط"; +"When someone opens a message you sent" = "عندما يفتح شخص رسالة أرسلتها"; +"When someone starts typing to you" = "عندما يبدأ شخص بالكتابة إليك"; +"is now active" = "أصبح نشطًا الآن"; +"is typing…" = "يكتب…"; +"went offline" = "أصبح غير متصل"; +"Online" = "متصل"; +"Offline" = "غير متصل"; +"Typing" = "يكتب"; +"Filters" = "الفلاتر"; +"Delete the selected records? This can't be undone." = "حذف السجلات المحددة؟ لا يمكن التراجع عن هذا الإجراء."; +"Delete all records for the selected chats? This can't be undone." = "حذف كل السجلات للمحادثات المحددة؟ لا يمكن التراجع عن هذا الإجراء."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "‏يضيف زر العين إلى المحادثات الخاصة. عند الإيقاف يبقى حظر مؤشر القراءة مفعّلًا بدون الزر‏"; +"Auto mark seen on interact" = "‏تحديد كمقروءة تلقائيًا عند التفاعل‏"; +"Auto mark seen on typing" = "‏تحديد كمقروءة تلقائيًا عند الكتابة‏"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "‏يحظر إرسال مؤشر القراءة تلقائيًا — لن يتم التحديد كمقروءة إلا عندما تختار ذلك‏"; +"Control when messages are marked as seen" = "‏التحكم في متى يتم تحديد الرسائل كمقروءة‏"; +"How the seen button behaves" = "‏كيفية عمل زر التحديد كمقروءة‏"; +"Manually mark messages as seen" = "‏تحديد الرسائل كمقروءة يدويًا‏"; +"Mark as seen?" = "‏تحديد كمقروءة؟‏"; +"Mark as viewed?" = "‏تحديد كمشاهد؟‏"; +"Mark seen locally" = "تعليم كمقروء محليًا"; +"Marks messages as seen when you reply, react or send media" = "‏يحدد الرسائل كمقروءة عند الرد أو التفاعل أو إرسال وسائط‏"; +"Marks messages as seen when you start typing" = "‏يحدد الرسائل كمقروءة عند بدء الكتابة‏"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "تظهر المحادثات المفتوحة كمقروءة على هذا الجهاز فقط. يتحول زر العين إلى البرتقالي طالما لم يصل إيصال القراءة للمرسل"; +"Read receipt mode" = "‏وضع مؤشر القراءة‏"; +"Read receipts" = "‏مؤشرات القراءة‏"; +"Show seen button" = "‏إظهار زر التحديد كمقروءة‏"; +"This will send a read receipt for the latest messages." = "‏سيتم إرسال مؤشر قراءة لأحدث الرسائل.‏"; +"This will send a view receipt for the current message." = "‏سيتم إرسال مؤشر مشاهدة للرسالة الحالية.‏"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "‏النشاط‏"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "‏يضيف خيار 'تنزيل' إلى قائمة الضغط المطول للرسائل الصوتية لحفظها كصوت M4A‏"; +"Allows typing and sending DMs longer than Instagram's limit" = "‏يسمح بكتابة وإرسال رسائل أطول من الحد المسموح به في إنستغرام‏"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "‏يضيف خيار 'إرسال ملف' إلى قائمة الزائد في الرسائل الخاصة. الأنواع المدعومة قد يقيدها إنستغرام‏"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "‏يضيف خيار 'ملف صوتي' إلى قائمة الزائد في الرسائل الخاصة لإرسال الملفات الصوتية كرسائل صوتية‏"; +"Adds copy text, download GIF/audio to the note long-press menu" = "‏يضيف خيارات نسخ النص، وتنزيل صور جيف والصوت إلى قائمة الضغط المطول للملاحظة‏"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "‏حظر الكل: حظر جميع المحادثات — المحادثات المدرجة مستثناة.\nحظر المحدد: حظر المحادثات المدرجة فقط — كل شيء آخر طبيعي.\nيتم حفظ القائمتين بشكل مستقل. اضغط مطولاً على محادثة للإضافة أو الإزالة.‏"; +"Block keep-deleted for excluded chats" = "‏إيقاف الاحتفاظ بالمحذوف للمحادثات المستبعدة‏"; +"Block keep-deleted for unlisted chats" = "‏إيقاف الاحتفاظ بالمحذوف للمحادثات غير المدرجة‏"; +"Bypass DM character limit" = "‏تجاوز حد عدد الأحرف في الرسائل‏"; +"Chat list" = "‏قائمة المحادثات‏"; +"Confirmation dialog before clearing preserved messages" = "‏نافذة تأكيد قبل مسح الرسائل المحفوظة‏"; +"Copies note text directly on long press without opening the menu" = "‏ينسخ نص الملاحظة مباشرة عند الضغط المطول دون فتح القائمة‏"; +"Copy text on hold" = "‏نسخ النص عند التوقف‏"; +"Adds Background, Text and Emoji buttons to the note editor" = "‏يضيف أزرار الخلفية والنص والإيموجي إلى محرّر الملاحظة‏"; +"Custom note themes" = "‏سمات ملاحظات مخصصة‏"; +"Disable vanish mode swipe" = "‏تعطيل سحب وضع الاختفاء‏"; +"Disable typing status" = "‏تعطيل حالة الكتابة (يكتب...)‏"; +"Disable view-once limitations" = "‏تعطيل قيود العرض لمرة واحدة‏"; +"Download voice messages" = "‏تنزيل الرسائل الصوتية‏"; +"Enable chat list" = "‏تفعيل قائمة المحادثات‏"; +"Enable note theming" = "‏تفعيل سمات الملاحظات‏"; +"Enables the notes theme picker" = "‏يفعّل منتقي سمات الملاحظات‏"; +"Files" = "‏الملفات‏"; +"Full last active date" = "‏تاريخ آخر ظهور كامل‏"; +"Hide reels blend button" = "‏إخفاء زر مزيج ريلز (Blend)‏"; +"Hide send to group chat" = "‏إخفاء الإرسال إلى محادثة جماعية‏"; +"Pin recipients on long-press" = "‏تثبيت المستلمين بالضغط المطوّل‏"; +"Long-press in the share sheet to pin a chat/user to the top" = "‏اضغط مطولاً في ورقة المشاركة لتثبيت محادثة/مستخدم في الأعلى‏"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "‏اضغط مطولاً على مستلم لتثبيته أو إلغاء تثبيته. يظهر المستلمون المثبتون في الأعلى.‏"; +"Recipient pinned" = "‏تم تثبيت المستلم‏"; +"Recipient unpinned" = "‏تم إلغاء تثبيت المستلم‏"; +"Couldn't resolve recipient id" = "‏تعذّر تحديد معرّف المستلم‏"; +"Hide video call button" = "‏إخفاء زر مكالمة الفيديو‏"; +"Hide voice call button" = "‏إخفاء زر المكالمة الصوتية‏"; +"Hides the blend button in DMs" = "‏يخفي زر المزيج في الرسائل الخاصة‏"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "‏يزيل خيار إنشاء/إرسال إلى محادثة جماعية عند المشاركة لعدة مستلمين‏"; +"Hides typing indicator from others" = "‏يخفي مؤشر الكتابة عن الآخرين‏"; +"Indicate unsent messages" = "‏الإشارة للرسائل الملغاة‏"; +"Keep deleted messages" = "‏الاحتفاظ بالرسائل المحذوفة‏"; +"Turns view once messages into normal media you can loop and pause" = "يحوّل رسائل العرض مرة واحدة إلى وسائط عادية يمكنك تكرارها وإيقافها مؤقتاً"; +"Note actions" = "‏إجراءات الملاحظات‏"; +"Preserves messages that others unsend" = "‏يحتفظ بالرسائل التي يلغي الآخرون إرسالها‏"; +"Keep my deleted messages" = "احتفظ برسائلي المحذوفة"; +"Also preserves messages you unsend yourself" = "يحتفظ أيضاً بالرسائل التي تلغي إرسالها بنفسك"; +"Prevents accidental swipe-up activation of vanish mode" = "‏يمنع التنشيط العشوائي لوضع الاختفاء عند السحب لأعلى‏"; +"Quick list button in chats" = "‏زر القائمة السريعة في المحادثات‏"; +"Removes the audio call button from DM thread header" = "‏يزيل زر المكالمة الصوتية من أعلى المحادثة‏"; +"Removes the video call button from DM thread header" = "‏يزيل زر مكالمة الفيديو من أعلى المحادثة‏"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "‏إعادة تشغيل الرسائل المرئية دون انتهاء صلاحيتها. يمكن التبديل من زر العين أو كزر مستقل‏"; +"Search, sort, swipe to remove or toggle keep-deleted" = "‏البحث، الفرز، التمرير للإزالة أو تبديل الاحتفاظ بالمحذوف‏"; +"Send audio as file" = "‏إرسال الصوت كملف‏"; +"Send files (experimental)" = "‏إرسال ملفات (تجريبي)‏"; +"File sending not available" = "إرسال الملفات غير متاح"; +"Show full date instead of \"Active 2h ago\"" = "‏إظهار التاريخ الكامل بدلاً من \"نشط منذ ساعتين\"‏"; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "‏يُظهر زرًا في المحادثات لإضافة أو إزالة المحادثات من القائمة. اضغط مطولاً لمزيد من الخيارات‏"; +"Shows a notification pill when a message is unsent" = "‏يظهر إشعارًا صغيرًا عند إلغاء إرسال رسالة‏"; +"Shows an \"Unsent\" label on preserved messages" = "‏يعرض علامة \"أُلغي الإرسال\" على الرسائل المحفوظة‏"; +"Unlimited replay of visual messages" = "‏إعادة تشغيل غير محدودة للرسائل المرئية‏"; +"Unsent message notification" = "‏إشعار الرسائل الملغاة‏"; +"Voice messages" = "‏الرسائل الصوتية‏"; +"Warn before clearing on refresh" = "‏تحذير قبل المسح عند التحديث‏"; +"Which chats get read-receipt blocking" = "‏المحادثات التي يُحظر فيها مؤشر القراءة‏"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "‏⚠️ السحب للتحديث في تبويب الرسائل الخاصة يمسح جميع الرسائل المحفوظة. فعّل التحذير أدناه للحصول على نافذة تأكيد.‏"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "‏%@%lu محذوف‏"; +"%lu selected" = "‏%lu محدد‏"; +"Absolute date + time" = "‏تاريخ ووقت كاملان‏"; +"Adjust the filters or clear the search to see more." = "‏عدّل الفلاتر أو امسح البحث لعرض المزيد.‏"; +"All time" = "‏كل الوقت‏"; +"Browse, filter and search recorded messages" = "‏تصفح وفلتر وابحث في الرسائل المسجلة‏"; +"Captures unsent messages with their text or media" = "‏يلتقط الرسائل المحذوفة مع نصها أو وسائطها‏"; +"Clear deleted-message log?" = "‏مسح سجل الرسائل المحذوفة؟‏"; +"Clear from this user" = "‏مسح من هذا المستخدم‏"; +"Clear log" = "‏مسح السجل‏"; +"Clear log for this account" = "‏مسح سجل هذا الحساب‏"; +"Clear log for this user?" = "‏مسح سجل هذا المستخدم؟‏"; +"Clear media files" = "‏مسح ملفات الوسائط‏"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "‏مسح الوسائط يحتفظ بالسجلات (النص، المرسل، الوقت). مسح السجل يحذف كل شيء لهذا الحساب.‏"; +"Close" = "‏إغلاق‏"; +"Content unavailable" = "‏المحتوى غير متاح‏"; +"Copied" = "‏تم النسخ‏"; +"Copy URL" = "نسخ الرابط"; +"Date range" = "‏نطاق التاريخ‏"; +"Deleted messages" = "‏الرسائل المحذوفة‏"; +"Deleted messages log" = "‏سجل الرسائل المحذوفة‏"; +"Deleted: %@\n" = "‏حُذفت: %@‏\n"; +"Edit %lu" = "‏تعديل %lu‏"; +"Edit history" = "‏سجل التعديلات‏"; +"Edited" = "‏تم التعديل‏"; +"Empty" = "‏فارغ‏"; +"Enable deleted messages log" = "‏تفعيل سجل الرسائل المحذوفة‏"; +"Enable Settings → Messages → Deleted messages log to start recording." = "‏فعّل الإعدادات ← الرسائل ← سجل الرسائل المحذوفة لبدء التسجيل.‏"; +"GIF" = "‏GIF‏"; +"Hashtag" = "‏هاشتاغ‏"; +"IGTV" = "‏IGTV‏"; +"Kind: %@\n" = "‏النوع: %@‏\n"; +"Last 30 days" = "‏آخر 30 يومًا‏"; +"Last 7 days" = "‏آخر 7 أيام‏"; +"Link" = "‏رابط‏"; +"Live location" = "الموقع المباشر"; +"Location" = "موقع"; +"Logging is off" = "‏التسجيل متوقف‏"; +"Media on disk" = "‏الوسائط على القرص‏"; +"Most messages" = "‏الأكثر رسائل‏"; +"Most recent" = "‏الأحدث‏"; +"No deleted messages yet" = "‏لا توجد رسائل محذوفة بعد‏"; +"No matches" = "‏لا توجد نتائج‏"; +"Nothing to save" = "‏لا يوجد شيء لحفظه‏"; +"Oldest first" = "‏الأقدم أولاً‏"; +"Open log" = "‏فتح السجل‏"; +"Group chat" = "محادثة جماعية"; +"%lu messages in %lu chats" = "%lu رسالة في %lu محادثة"; +"%lu people · %lu deleted" = "%lu أشخاص · %lu محذوفة"; +"When someone unsends a message, it will appear here grouped by chat." = "عند تراجع أحدهم عن إرسال رسالة، ستظهر هنا مجمّعة حسب المحادثة."; +"Clear this chat" = "مسح هذه المحادثة"; +"Clear log for this chat?" = "مسح السجل لهذه المحادثة؟"; +"Removes every preserved deleted message from this group chat." = "يزيل كل رسالة محذوفة محفوظة من هذه المحادثة الجماعية."; +"Reaction removed" = "تمت إزالة التفاعل"; +"Log removed reactions" = "تسجيل التفاعلات المُزالة"; +"Also records when someone removes a reaction, and which message it was on" = "يسجّل أيضًا عندما يزيل أحدهم تفاعلًا، وعلى أي رسالة كان."; +"Removed a reaction" = "أزال تفاعلًا"; +"on @%@: %@" = "على @%@: %@"; +"on: %@" = "على: %@"; +"a message" = "رسالة"; +"removed %@ on: %@" = "أزال %@ على: %@"; +"removed reaction %@" = "أزال التفاعل %@"; +"%@ removed the %@ reaction." = "أزال %@ التفاعل %@."; +"Removed %@" = "أُزيل %@"; +"Someone" = "شخص ما"; +"Photo or video" = "صورة أو فيديو"; +"Refresh names & photos" = "تحديث الأسماء والصور"; +"Refreshing names & photos" = "جارٍ تحديث الأسماء والصور"; +"Records every message someone unsends, grouped by chat" = "يسجّل كل رسالة يتراجع أحدهم عن إرسالها، مجمّعة حسب المحادثة"; +"Open profile" = "‏فتح الملف الشخصي‏"; +"Original" = "‏الأصلي‏"; +"Play" = "‏تشغيل‏"; +"Post" = "منشور"; +"Reel" = "‏ريل‏"; +"Relative (1m / 3h / 3d ago)" = "‏نسبي (قبل دقيقة / 3 س / 3 ي)‏"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "‏يزيل كل رسالة محذوفة محفوظة ووسائطها للحساب الحالي. لا يمكن التراجع عن هذا.‏"; +"Removes every preserved deleted message and its captured media for this account." = "‏يزيل كل رسالة محذوفة محفوظة ووسائطها لهذا الحساب.‏"; +"Removes every preserved deleted message from this sender." = "‏يزيل كل رسالة محذوفة محفوظة من هذا المرسل.‏"; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "‏يزيل كل صورة وفيديو ومقطع صوتي محفوظ. تحتفظ السجلات بنصها ومعلومات المرسل.‏"; +"Search messages" = "‏ابحث في الرسائل‏"; +"Search senders or messages" = "‏ابحث عن المرسلين أو الرسائل‏"; +"Select" = "‏تحديد‏"; +"Show edit history" = "‏عرض سجل التعديلات‏"; +"Source URL recorded but media not stored.\n" = "‏تم تسجيل عنوان المصدر دون تخزين الوسائط.‏\n"; +"Sticker" = "‏ملصق‏"; +"Tap to open in Instagram" = "اضغط للفتح في Instagram"; +"Tap to open in Maps" = "اضغط للفتح في الخرائط"; +"Tap to play" = "اضغط للتشغيل"; +"Tap to play · %@" = "اضغط للتشغيل · %@"; +"Text" = "‏نص‏"; +"This account" = "‏هذا الحساب‏"; +"Unknown" = "‏غير معروف‏"; +"Video" = "‏فيديو‏"; +"View" = "‏عرض‏"; +"Voice" = "‏صوت‏"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "‏عند التفعيل، تُحفظ الرسائل المحذوفة ووسائطها على هذا الجهاز. أوقف التفعيل وامسح السجل لمسح المحفوظات.‏"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "في أداة الرسم، أرسِل صورة كرسمتك، من المعرض أو الصور أو الملصقات أو اللصق، مع محرّر مدمج للقص وإزالة الخلفية"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "ارسم خطًا أو شكلًا، ثم اضغط إرسال واختر مصدر الصورة: المعرض أو الصور أو الملصقات أو اللصق.\n\nتحلّ الصورة محلّ ما رسمته وتأخذ موضعه وحجمه، لذا ارسم أكبر للحصول على صورة أكبر.\n\nأعد تشغيل إنستغرام لتفعيل التغيير."; + +"Send image as drawing" = "إرسال صورة كرسم"; + +"Bypass \"You can't send messages\"" = "تجاوز «لا يمكنك إرسال الرسائل»"; +"Custom chat background" = "خلفية محادثة مخصصة"; +"DM Save button" = "زر الحفظ في الرسائل"; +"Incoming calls stay silent — no ring, no screen, no notification" = "تبقى المكالمات الواردة صامتة — بلا رنين ولا شاشة ولا إشعار"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "اجعل زر الحفظ المدمج في إنستغرام على صور وفيديوهات الرسائل يحفظ إلى الصور أو المعرض أو يشارك"; +"Messages" = "‏الرسائل‏"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "يزيل شريط الإدخال المحظور ويستعيد حقل كتابة النص في المحادثات المقيّدة"; +"Reroute native Save" = "إعادة توجيه زر الحفظ الأصلي"; +"Save media" = "حفظ الوسائط"; +"Silence incoming calls" = "إسكات المكالمات الواردة"; +"Threads" = "‏المحادثات‏"; +"Use your own images as chat backgrounds" = "استخدم صورك الخاصة كخلفيات للمحادثات"; +"Activity status toggle" = "زر تبديل حالة النشاط"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "يضيف نقطة إلى ترويسة الرسائل. اضغط عليها لتشغيل حالة نشاطك أو إيقافها"; +"Activity status on" = "حالة النشاط مفعّلة"; +"Activity status off" = "حالة النشاط معطّلة"; +"Couldn't change activity status" = "تعذّر تغيير حالة النشاط"; +"Check your connection and try again" = "تحقّق من اتصالك وأعد المحاولة"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "كاميرا"; +"Viewer" = "العارض"; +"Saving" = "الحفظ"; +"Confirmations" = "التأكيدات"; +"Confirm switching button" = "زر تأكيد التبديل"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "يضيف زرًا بجانب زر الإجراء لتشغيل أو إيقاف تأكيد التبديل على الفور"; +"Switching confirmation on" = "تم تشغيل تأكيد التبديل"; +"Switching confirmation off" = "تم إيقاف تأكيد التبديل"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "‏يضيف زر المعرض إلى كاميرا اللحظات السريعة لإرسال صورة من ألبومك‏"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "‏يضيف زر إجراء RyukGram إلى رأس عارض اللحظات السريعة مع خيارات التوسيع والحفظ والمشاركة والحفظ المجمّع‏"; +"All loaded instants" = "‏جميع اللحظات السريعة المحمّلة‏"; +"Auto advance after reaction" = "‏التقدّم التلقائي بعد التفاعل‏"; +"Automatically moves to the next instant after you like or react" = "‏ينتقل تلقائيًا إلى اللحظة التالية بعد الإعجاب أو التفاعل‏"; +"Auto close when finished" = "‏الإغلاق التلقائي عند الانتهاء‏"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "‏يغلق عارض اللحظات السريعة بعد مشاهدتها كلها بدلاً من الانتقال إلى الكاميرا‏"; +"Bypasses the Instants screenshot block" = "‏يتجاوز حظر لقطات الشاشة على اللحظات السريعة‏"; +"Could not locate the instant on screen" = "‏تعذّر تحديد موقع اللحظة على الشاشة‏"; +"Current instant" = "‏اللحظة الحالية‏"; +"In-app Gallery" = "‏معرض التطبيق‏"; +"Instant" = "‏لحظة‏"; +"Instants" = "‏اللحظات السريعة‏"; +"Auto-saved instants log" = "سجل اللحظات السريعة المحفوظة تلقائيًا"; +"Auto-save instants" = "حفظ تلقائي للحظات السريعة"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "يحفظ تلقائيًا كل لحظة تشاهدها، حتى أثناء التمرير — كل واحدة مرة واحدة فقط"; +"Instants action button" = "‏زر إجراء اللحظات السريعة‏"; +"No instants currently loaded" = "‏لا توجد لحظات سريعة محمّلة حاليًا‏"; +"No media available to save" = "‏لا توجد وسائط لحفظها‏"; +"Photos library" = "‏مكتبة الصور‏"; +"Pick from" = "‏اختر من‏"; +"Queued %lu instants" = "‏تم إدراج %lu لحظة في قائمة الانتظار‏"; +"Save all to Gallery" = "‏حفظ الكل في المعرض‏"; +"Save all to Photos" = "‏حفظ الكل في الصور‏"; +"Save to Gallery" = "‏حفظ في المعرض‏"; +"Send from gallery" = "‏إرسال من المعرض‏"; +"Tweaks for the QuickSnap / Instants camera surface." = "‏تعديلات على واجهة كاميرا QuickSnap / Instants.‏"; +"Use" = "‏استخدام‏"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "‏إخفاء شريط التبويبات السفلي أيضًا — يظهر صندوق الوارد فقط‏"; +"Show the home shortcut button in the inbox header, on the right" = "يعرض زر اختصار الصفحة الرئيسية في ترويسة الرسائل على اليمين"; +"Greyed out until the home shortcut button is enabled in Interface" = "يظل باهتًا حتى يتم تفعيل زر اختصار الصفحة الرئيسية في الواجهة"; +"Hide search tab" = "‏إخفاء تبويب البحث‏"; +"Remove the search/explore button from the tab bar" = "‏إزالة زر البحث/الاستكشاف من شريط التبويبات‏"; +"Hide tab bar" = "‏إخفاء شريط التبويبات‏"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "‏يخفي كل التبويبات باستثناء صندوق الوارد والملف الشخصي ويفرض التشغيل فيه. ينتقل اختصار الإعدادات للضغط المطول على صندوق الوارد.‏"; +"Icon order" = "‏ترتيب الأيقونات‏"; +"Launch tab" = "‏تبويب البدء‏"; +"Swipe sideways to move between the tab bar tabs" = "اسحب جانبياً للتنقل بين تبويبات الشريط"; +"Messages only" = "‏الرسائل فقط‏"; +"Messages-only mode" = "‏وضع الرسائل فقط‏"; +"Automatic schedule" = "‏جدولة تلقائية‏"; +"DM-only client, hide tabs, auto schedule" = "‏عميل رسائل فقط، إخفاء التبويبات، جدولة تلقائية‏"; +"Start time" = "‏وقت البدء‏"; +"End time" = "‏وقت الانتهاء‏"; +"Switch into Messages-only on its own during a time window" = "‏التبديل إلى وضع الرسائل فقط تلقائيًا خلال فترة زمنية‏"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "‏تشغيل وضع الرسائل فقط تلقائيًا خلال فترة يومية (مثل 10:00 مساءً – 6:00 صباحًا) باستخدام المفاتيح أعلاه. سيُطلب منك إعادة التشغيل عند بدء الفترة وعند انتهائها.‏"; +"Active now · ends %@" = "‏نشط الآن · ينتهي %@‏"; +"Next window starts %@" = "‏الفترة التالية تبدأ %@‏"; +"Messages-only starting" = "‏بدء وضع الرسائل فقط‏"; +"Messages-only ending" = "‏انتهاء وضع الرسائل فقط‏"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "‏بدأت فترة وضع الرسائل فقط. أعد تشغيل إنستغرام للتبديل إلى الرسائل فقط.‏"; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "‏انتهت فترة وضع الرسائل فقط. أعد تشغيل إنستغرام لإعادة التبويبات الأخرى.‏"; +"Navigation" = "‏التنقل‏"; +"Swipe between tabs" = "‏التمرير بين التبويبات‏"; +"Tab the app opens to. Ignored when Messages-only is on" = "‏التبويب الذي يفتح عليه التطبيق. يتم تجاهله عند تفعيل الرسائل فقط‏"; +"How the icons on the bottom tab bar are ordered" = "ترتيب الأيقونات في شريط التبويبات السفلي"; +"Hidden tabs" = "‏التبويبات المخفية‏"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "‏اضغط مطولاً واسحب لإعادة الترتيب. اسحب أيقونة للأعلى لإخفائها. اضغط على تبويب مخفي لإعادته.‏"; +"All tabs are on the bar" = "‏كل التبويبات موجودة في الشريط‏"; +"Turn IG into a DM-only client" = "‏تحويل إنستغرام لعميل رسائل فقط‏"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "‏الكل‏"; +"Calls" = "المكالمات"; +"Comments & posts" = "التعليقات والمنشورات"; +"Confirm actions" = "‏تأكيد الإجراءات‏"; +"Confirm changing theme" = "‏تأكيد تغيير السمة‏"; +"Confirm disappearing media mark as viewed" = "‏تأكيد تحديد الوسائط المؤقتة كمشاهَدة‏"; +"Confirm DM mark as seen" = "‏تأكيد تحديد الرسالة الخاصة كمقروءة‏"; +"Confirm follow" = "‏تأكيد المتابعة‏"; +"Confirm follow requests" = "‏تأكيد طلبات المتابعة‏"; +"Confirm Instants capture" = "‏تأكيد التقاط اللحظات السريعة‏"; +"Confirm Instants emoji reaction" = "‏تأكيد تفاعل الإيموجي في اللحظات السريعة‏"; +"Confirm like: Posts" = "‏تأكيد الإعجاب: المنشورات‏"; +"Confirm like: Reels" = "‏تأكيد الإعجاب: ريلز‏"; +"Confirm note emoji reaction" = "‏تأكيد تفاعل الإيموجي على الملاحظة‏"; +"Confirm note like" = "‏تأكيد الإعجاب بالملاحظة‏"; +"Confirm posting comment" = "‏تأكيد نشر التعليق‏"; +"Confirm repost" = "‏تأكيد إعادة النشر‏"; +"Confirm send to group chat" = "‏تأكيد الإرسال إلى محادثة جماعية‏"; +"Confirm sticker interaction (highlights)" = "‏تأكيد التفاعل مع الملصقات (الهايلايت)‏"; +"Confirm sticker interaction (stories)" = "‏تأكيد التفاعل مع الملصقات (القصص)‏"; +"Confirm story emoji reaction" = "‏تأكيد تفاعل الإيموجي في القصة‏"; +"Confirm story like" = "‏تأكيد الإعجاب بالقصة‏"; +"Confirm story mark as seen" = "‏تأكيد تحديد القصة كمقروءة‏"; +"Confirm switching Instant" = "‏تأكيد تبديل اللحظة‏"; +"Confirm unfollow" = "‏تأكيد إلغاء المتابعة‏"; +"Confirm vanish mode" = "‏تأكيد وضع الاختفاء‏"; +"Confirm video call" = "‏تأكيد مكالمة الفيديو‏"; +"Confirm voice call" = "‏تأكيد المكالمة الصوتية‏"; +"Confirm voice messages" = "‏تأكيد الرسائل الصوتية‏"; +"Follows" = "يتابِع"; +"Likes" = "الإعجابات"; +"Messaging" = "المراسلة"; +"Reaction stickers only" = "‏ملصقات التفاعل فقط‏"; +"Reactions" = "التفاعلات"; +"Send to group chat?" = "‏إرسال إلى محادثة جماعية؟‏"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "‏يعرض تنبيهًا قبل إنشاء/إرسال إلى محادثة جماعية من قائمة المشاركة‏"; +"Shows an alert before marking a disappearing message as viewed" = "‏يعرض تنبيهًا قبل تحديد رسالة مؤقتة كمشاهَدة‏"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "‏يعرض تنبيهًا قبل إرسال مؤشر القراءة من زر التحديد كمقروءة في الرسائل الخاصة أو القائمة‏"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "‏يعرض تنبيهًا قبل إرسال مؤشر مشاهدة القصة من زر العين أو القائمة‏"; +"Shows an alert before sending an emoji reaction on a note" = "‏يُظهر تنبيهًا قبل إرسال تفاعل إيموجي على ملاحظة‏"; +"Shows an alert before sending an emoji reaction on a story" = "‏يُظهر تنبيهًا قبل إرسال تفاعل إيموجي على قصة‏"; +"Shows an alert before sending an emoji reaction on an Instant" = "‏يعرض تنبيهًا قبل إرسال تفاعل إيموجي على لحظة‏"; +"Shows an alert before sending a photo or video from the Instants camera" = "‏يعرض تنبيهًا قبل إرسال صورة أو فيديو من كاميرا اللحظات السريعة‏"; +"Shows an alert before tapping to switch to the next/previous Instant" = "‏يعرض تنبيهًا قبل النقر للتبديل إلى اللحظة التالية/السابقة‏"; +"Asks you to confirm before a voice message sends" = "يطلب تأكيدك قبل إرسال رسالة صوتية"; +"Shows an alert to confirm before toggling vanish mode" = "‏يُظهر تنبيهًا للتأكيد قبل تفعيل وضع الاختفاء‏"; +"Confirms before you accept or decline a follow request" = "يطلب التأكيد قبل قبول طلب المتابعة أو رفضه"; +"Confirms before a chat theme change applies" = "يطلب التأكيد قبل تطبيق تغيير مظهر المحادثة"; +"Confirms before the follow button follows someone" = "يطلب التأكيد قبل أن يتابع زر المتابعة شخصاً ما"; +"Shows an alert when you click the like button on notes to confirm the like" = "‏يُظهر تنبيهًا عند النقر على زر الإعجاب في الملاحظات للتأكيد‏"; +"Shows an alert when you click the like button on posts to confirm the like" = "‏يُظهر تنبيهًا عند النقر على زر الإعجاب في المنشورات للتأكيد‏"; +"Confirms before a like lands on a reel" = "يطلب التأكيد قبل الإعجاب بالريل"; +"Shows an alert when you click the like button on stories to confirm the like" = "‏يُظهر تنبيهًا عند النقر على زر الإعجاب في القصص للتأكيد‏"; +"Confirms before a comment posts" = "يطلب التأكيد قبل نشر تعليق"; +"Shows an alert when you click the repost button to confirm before reposting" = "‏يُظهر تنبيهًا عند النقر على زر إعادة النشر للتأكيد‏"; +"Shows an alert when you click the unfollow button to confirm" = "‏يُظهر تنبيهًا عند النقر على زر إلغاء المتابعة للتأكيد‏"; +"Shows an alert when you click the video call button to confirm before calling" = "‏يُظهر تنبيهًا عند النقر على زر مكالمة الفيديو للتأكيد قبل الاتصال‏"; +"Shows an alert when you click the voice call button to confirm before calling" = "‏يُظهر تنبيهًا عند النقر على زر المكالمة الصوتية للتأكيد قبل الاتصال‏"; +"Shows an alert when you tap a sticker inside a highlight" = "‏يُظهر تنبيهًا عند النقر على ملصق داخل هايلايت‏"; +"Shows an alert when you tap a sticker on someone's story" = "‏يُظهر تنبيهًا عند النقر على ملصق في قصة شخص ما‏"; +"Stories & highlights" = "القصص والمميزة"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld س"; +"%ld locked" = "%ld مقفل"; +"%ld min" = "%ld د"; +"%ldh idle" = "‏خمول %ldس‏"; +"%ldm idle" = "‏خمول %ldد‏"; +"%lds" = "%ldث"; +"%lds idle" = "‏خمول %ldث‏"; +"%lu hidden" = "%lu مخفي"; +"4 digits" = "4 أرقام"; +"6 digits" = "6 أرقام"; +"Add hidden chat" = "إضافة محادثة مخفية"; +"Add locked chat" = "إضافة محادثة مقفلة"; +"Allow Instants screenshots" = "السماح بلقطات شاشة اللحظات السريعة"; +"Always ask when opening again" = "اسأل دائمًا عند الفتح مرة أخرى"; +"Ask again after Instagram returns" = "اسأل مجددًا بعد عودة Instagram"; +"Auto-relock after idle" = "إعادة القفل التلقائي بعد الخمول"; +"Balanced default" = "الافتراضي المتوازن"; +"Best for sensitive sections" = "الأفضل للأقسام الحساسة"; +"Biometric" = "القياس الحيوي"; +"Change passcode" = "تغيير رمز المرور"; +"Chat hidden" = "تم إخفاء المحادثة"; +"Chat unhidden" = "تم إظهار المحادثة"; +"Chat locked" = "تم قفل المحادثة"; +"Chat unlocked" = "تم فتح المحادثة"; +"Choose a code you'll remember." = "اختر رمزًا تتذكره."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "اختر مدة بقاء هذا القسم مفتوحًا أثناء الخمول. خيار \"أبدًا\" يبقيه مفتوحًا حتى إغلاق Instagram أو انتقاله إلى الخلفية."; +"Confirm current passcode" = "تأكيد رمز المرور الحالي"; +"Confirm passcode" = "تأكيد رمز المرور"; +"Could not save passcode" = "تعذر حفظ رمز المرور"; +"Create passcode" = "إنشاء رمز مرور"; +"Derivation failed" = "فشل الاشتقاق"; +"DM inbox" = "صندوق الرسائل"; +"Don't share unlock" = "عدم مشاركة فتح القفل"; +"Each target has its own enable, timeout, and re-lock configuration." = "لكل هدف إعداده الخاص للتفعيل والمهلة وإعادة القفل."; +"Enable lock" = "تفعيل القفل"; +"Enter passcode" = "أدخل رمز المرور"; +"Enter value" = "أدخل قيمة"; +"Enter your current passcode to change it" = "أدخل رمز المرور الحالي لتغييره"; +"Enter your current passcode to reset it" = "أدخل رمز المرور الحالي لإعادة تعيينه"; +"Enter your passcode to continue" = "أدخل رمز المرور للمتابعة"; +"every use" = "في كل استخدام"; +"Every use" = "في كل استخدام"; +"Hidden chats" = "المحادثات المخفية"; +"Hidden chats hidden" = "تم إخفاء المحادثات المخفية"; +"Hidden chats revealed" = "تم إظهار المحادثات المخفية"; +"👁 Shown in the inbox · Tap to hide" = "👁 ظاهرة في صندوق الوارد · اضغط للإخفاء"; +" · shown in inbox" = " · ظاهرة في صندوق الوارد"; +"Hide chat" = "إخفاء المحادثة"; +"Unhide chat" = "إظهار المحادثة"; +"Hold name to reveal" = "اضغط مطولاً على الاسم للإظهار"; +"Hide message preview" = "إخفاء معاينة الرسالة"; +"Hide this chat?" = "إخفاء هذه المحادثة؟"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "‏يُخفي واجهة RyukGram من لقطات الشاشة والتسجيلات ويتجاوز تنبيهات Instagram للقطات الشاشة لكل ميزة.‏"; +"Idle timeout" = "مهلة الخمول"; +"Instagram" = "‏إنستغرام‏"; +"Keep this target locked separately" = "أبقِ هذا الهدف مقفلاً بشكل منفصل"; +"Less frequent prompts" = "مطالبات أقل تكرارًا"; +"Lock" = "قفل"; +"Lock chat" = "قفل المحادثة"; +"Lock every time" = "القفل في كل مرة"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "يتجاوز \"القفل في كل مرة\" مهلة الخمول. يبقي \"عدم مشاركة فتح القفل\" هذا الهدف منفصلاً."; +"Lock targets" = "أهداف القفل"; +"Lock the tweak" = "قفل الإضافة"; +"Lock this chat" = "قفل هذه المحادثة"; +"Lock this chat?" = "قفل هذه المحادثة؟"; +"Lock with passcode" = "القفل برمز المرور"; +"Locked chats" = "المحادثات المقفلة"; +"Long-press a chat to lock it individually" = "اضغط مطولاً على محادثة لقفلها على حدة"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "‏اضغط مطولاً على محادثة → إخفاء المحادثة لإضافتها هنا. تُستبعد المحادثات المخفية من الصندوق حتى تزيلها من هذه القائمة.‏"; +"Long-press a DM to add" = "‏اضغط مطولاً على محادثة للإضافة‏"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "اضغط مطولاً على اسم الحساب أعلى صندوق الرسائل لإظهار أو إخفاء محادثاتك المخفية"; +"Longest idle window" = "أطول فترة خمول"; +"Manage locked chats" = "إدارة المحادثات المقفلة"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "‏المفتاح الرئيسي. أوقف التشغيل لتعطيل جميع أهداف القفل دون فقدان إعدادات كل هدف.‏"; +"Never" = "أبدًا"; +"No passcode set" = "لا يوجد رمز مرور"; +"Nothing here yet." = "لا يوجد شيء هنا بعد."; +"Off" = "‏إيقاف‏"; +"On" = "‏تشغيل‏"; +"On — %@" = "‏مُفعّل — %@‏"; +"On — %@ + %ld more" = "‏مُفعّل — %@ و %ld آخرين‏"; +"On — no targets enabled" = "‏مُفعّل — لا توجد أهداف مفعّلة‏"; +"Passcode" = "رمز المرور"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "‏رمز المرور + القياس الحيوي. لقفل نافذة الإعدادات والمعرض وسجل الرسائل المحذوفة ومحادثات بعينها والتطبيق كاملاً.‏"; +"Passcode changed" = "تم تغيير رمز المرور"; +"Passcode reset" = "تم إعادة تعيين رمز المرور"; +"Passcode set" = "تم تعيين رمز المرور"; +"Passcode too short" = "رمز المرور قصير جدًا"; +"Passcodes did not match — try again" = "‏الرموز غير متطابقة — حاول مرة أخرى‏"; +"Per-chat locks" = "أقفال لكل محادثة"; +"Prompt before Instagram opens" = "‏اطلب قبل فتح Instagram‏"; +"Prompt before Profile Analyzer opens" = "اطلب قبل فتح محلل الملف الشخصي"; +"Prompt before the deleted-messages log opens" = "اطلب قبل فتح سجل الرسائل المحذوفة"; +"Prompt before the gallery opens" = "اطلب قبل فتح المعرض"; +"Prompt before tweak settings open" = "اطلب قبل فتح إعدادات الإضافة"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "‏اطلب عند كل دخول إلى صندوق الرسائل، بما في ذلك التشغيل المباشر للرسائل‏"; +"Re-enter the same passcode" = "أعد إدخال نفس رمز المرور"; +"Re-lock on background" = "إعادة القفل في الخلفية"; +"re-lock on bg" = "إعادة القفل في الخلفية"; +"Recently hidden" = "تم إخفاؤها مؤخرًا"; +"Prompt before holding the inbox name reveals hidden chats" = "اطلب رمز المرور قبل أن يكشف الضغط المطول على الاسم المحادثات المخفية"; +"Reveal hidden chats" = "إظهار المحادثات المخفية"; +"Recently locked" = "تم قفلها مؤخرًا"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "‏إخفاء أزرار RyukGram من لقطات الشاشة وتسجيلات الشاشة والعرض المرآة‏"; +"Remove screenshot alert" = "إزالة تنبيه لقطة الشاشة"; +"Replace inbox preview with • • •" = "استبدال معاينة الصندوق الوارد بـ • • •"; +"Require passcode for this section" = "طلب رمز المرور لهذا القسم"; +"Requires your current passcode" = "يتطلب رمز المرور الحالي"; +"Reset passcode" = "إعادة تعيين رمز المرور"; +"Reset passcode?" = "إعادة تعيين رمز المرور؟"; +"Screenshots & capture" = "لقطات الشاشة والتسجيل"; +"Security & Privacy" = "‏الأمان والخصوصية‏"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "‏قم بتعيين رمز مرور لقفل الإعدادات والمعرض وسجل الرسائل المحذوفة ومحادثات بعينها وصندوق الرسائل ومحلل الملف الشخصي أو Instagram نفسه.‏"; +"Set passcode" = "تعيين رمز المرور"; +"Short idle window" = "فترة خمول قصيرة"; +"Stay unlocked until app close or background" = "البقاء مفتوحًا حتى إغلاق التطبيق أو انتقاله إلى الخلفية"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "إخفاء إشعار \"التقط X لقطة شاشة\" من Instagram عبر القصص والرسائل المباشرة والوسائط المختفية"; +"Tap Unlock" = "اضغط فتح"; +"Tap Unlock or enter your passcode" = "اضغط فتح أو أدخل رمز المرور"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "‏يؤدي ذلك إلى مسح رمز المرور وتعطيل جميع أهداف القفل وفتح كل المحادثات. لن يتأثر المعرض وبيانات الرسائل المحذوفة.‏"; +"Thread %@" = "محادثة %@"; +"Tweak settings" = "‏إعدادات التعديل‏"; +"Unlock" = "فتح"; +"Unlock %@" = "فتح %@"; +"Unlock chat" = "فتح المحادثة"; +"Unlock Instagram" = "فتح Instagram"; +"Unlock this chat" = "فتح هذه المحادثة"; +"Use %@" = "استخدام %@"; +"Username (looks up the DM thread) or raw thread ID" = "‏اسم المستخدم (يبحث عن المحادثة) أو معرّف المحادثة الخام‏"; +"Username or thread ID" = "اسم المستخدم أو معرّف المحادثة"; +"Wrong passcode" = "رمز مرور خاطئ"; +"Wrong passcode • %ld attempts" = "رمز مرور خاطئ • %ld محاولة"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "الحماية"; +"Password-protect" = "الحماية بكلمة مرور"; +"On — tap to change" = "مُفعّل — اضغط للتغيير"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "يتم تشفير النسخة الاحتياطية بخوارزمية AES-256. ستحتاج إلى كلمة المرور هذه لاستعادتها — ولا توجد طريقة لاستردادها إذا فقدتها."; +"Optional. Lock the backup behind a password so only you can restore it." = "اختياري. اقفل النسخة الاحتياطية بكلمة مرور بحيث يمكنك وحدك استعادتها."; +"Backup password" = "كلمة مرور النسخة الاحتياطية"; +"You'll need this to restore. It can't be recovered if lost." = "ستحتاج إليها للاستعادة. لا يمكن استردادها إذا فُقدت."; +"Password" = "كلمة المرور"; +"Confirm password" = "تأكيد كلمة المرور"; +"Set" = "تعيين"; +"Use at least 4 characters." = "استخدم 4 أحرف على الأقل."; +"The passwords don't match." = "كلمتا المرور غير متطابقتين."; +"Try again" = "أعد المحاولة"; +"Encrypted backup" = "نسخة احتياطية مشفَّرة"; +"Enter the password used to protect this backup." = "أدخل كلمة المرور المستخدمة لحماية هذه النسخة الاحتياطية."; +"Wrong password. Try again." = "كلمة المرور غير صحيحة. أعد المحاولة."; +"Decrypting backup…" = "جارٍ فك تشفير النسخة الاحتياطية…"; +"Encrypting backup…" = "جارٍ تشفير النسخة الاحتياطية…"; +"%ld of %ld selected · %@" = "%ld من %ld محدد · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "حدّد كل مجموعة بيانات لتضمينها. اضغط على صف لعرض محتواه."; + +"%lu account(s)" = "%lu حساب"; +"%lu account(s) · %lu image(s) · %@" = "%lu حساب · %lu صورة · %@"; +"%lu file(s) · %@" = "%lu ملف · %@"; +"%lu preferences" = "%lu تفضيل"; +"(none)" = "(لا شيء)"; +"Apply backup?" = "تطبيق النسخة الاحتياطية؟"; +"Applying backup…" = "جارٍ تطبيق النسخة الاحتياطية…"; +"archive error" = "خطأ في الأرشيف"; +"Archived snapshots" = "اللقطات المؤرشفة"; +"Backup & Restore" = "‏النسخ الاحتياطي والاستعادة‏"; +"Backup exported" = "تم تصدير النسخة الاحتياطية"; +"Backup failed" = "فشلت النسخة الاحتياطية"; +"Backup has no importable sections." = "لا تحتوي النسخة الاحتياطية على أقسام قابلة للاستيراد."; +"Chat & story filters" = "مرشحات المحادثة والقصة"; +"Chat backgrounds" = "خلفيات المحادثة"; +"Corrupt entry path." = "مسار الإدخال تالف."; +"Could not decompress archive." = "تعذّر فك ضغط الأرشيف."; +"Could not open archive." = "تعذّر فتح الأرشيف."; +"Could not open staging file." = "تعذّر فتح ملف التحضير."; +"Could not read the backup archive." = "تعذّر قراءة أرشيف النسخة الاحتياطية."; +"Could not write archive." = "تعذّر كتابة الأرشيف."; +"Could not write backup file." = "تعذّر كتابة ملف النسخة الاحتياطية."; +"Could not write extracted file." = "تعذّر كتابة الملف المستخرَج."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "سيتم استبدال البيانات الحالية للعناصر المحددة. قد تكون إعادة التشغيل ضرورية ليصبح كل شيء ساري المفعول."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "صدّر أو استورد بيانات RyukGram — الإعدادات، ومرشحات كل حساب، والمحادثات المخفية والمقفلة، ومحلل الملف الشخصي، والمعرض، وخلفيات المحادثات والرسائل المحذوفة وسجل إيصالات القراءة. اختر أي مجموعة في كل صفحة. تبقى الإعدادات ملف JSON عادي؛ أما الحزم التي تحتوي على وسائط فتُصدَّر كملف .ryukbak مضغوط."; +"Feature data" = "بيانات الميزات"; +"Import mode" = "وضع الاستيراد"; +"Merge" = "دمج"; +"Replace" = "استبدال"; +"Add the backup's data to what's already here" = "أضف بيانات النسخة الاحتياطية إلى الموجود هنا"; +"Clear existing data, then apply the backup" = "امسح البيانات الحالية ثم طبّق النسخة الاحتياطية"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "الدمج يحتفظ بما هو موجود على هذا الجهاز ويضيف بيانات النسخة الاحتياطية — تُدمج العناصر المكررة، بما في ذلك المعرض."; +"Replace clears existing data for each ticked item, then applies the backup." = "الاستبدال يمسح البيانات الحالية لكل عنصر محدد ثم يطبّق النسخة الاحتياطية."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "سيتم دمج النسخة الاحتياطية مع بياناتك الحالية — لا يُحذف شيء، وتُدمج العناصر المكررة. قد تكون إعادة التشغيل ضرورية ليصبح كل شيء ساري المفعول."; +"Hidden & locked chats" = "المحادثات المخفية والمقفلة"; +"Import" = "استيراد"; +"Inspect the full manifest" = "فحص الملف الكامل (manifest)"; +"Load a .json or .ryukbak backup" = "تحميل نسخة احتياطية .json أو .ryukbak"; +"Not a RyukGram backup archive." = "ليس أرشيف نسخة احتياطية لـ RyukGram."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "إعادة الإعدادات إلى الوضع الافتراضي ومسح البيانات"; +"Swipe a row to clear it." = "اسحب صفاً لمسحه."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "الصفوف المعلَّمة بـ «مشترك» غير مرتبطة بحساب وتتبع دائماً تحديدها الخاص."; +"%lu file(s)" = "%lu ملف"; +"Clear all data" = "مسح كل البيانات"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "يتم حذف كل عنصر معرض وسجل وتسجيل مخزَّن من هذا الجهاز. تبقى إعداداتك كما هي — استخدم إعادة تعيين لاستعادتها إلى الوضع الافتراضي. لا يمكن التراجع عن هذا الإجراء."; +"Accounts" = "الحسابات"; +"All accounts (%ld)" = "كل الحسابات (%ld)"; +"Pick at least one account." = "اختر حسابًا واحدًا على الأقل."; +"Signed in" = "مسجَّل الدخول"; +"Shared" = "مشترك"; +"Per-account data is limited to the accounts ticked here." = "البيانات الخاصة بكل حساب تقتصر على الحسابات المحددة هنا."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "تُمسح البيانات الخاصة بالحسابات لـ %@ فقط. البيانات المشتركة تتبع تحديدها الخاص. لا يمكن التراجع عن هذا."; +"Preparing backup…" = "جارٍ تحضير النسخة الاحتياطية…"; +"Reading backup…" = "جارٍ قراءة النسخة الاحتياطية…"; +"RyukGram's own data on this device" = "بيانات RyukGram الخاصة على هذا الجهاز"; +"Save settings or a full backup" = "احفظ الإعدادات أو نسخة احتياطية كاملة"; +"Tick what to apply. Rows not in this backup are hidden." = "حدّد ما تريد تطبيقه. تُخفى الصفوف غير الموجودة في هذه النسخة الاحتياطية."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "حدّد ما تريد تضمينه. اضغط على صف لفحصه. إضافة المعرض أو خلفيات المحادثات أو الرسائل المحذوفة تنتج حزمة .ryukbak مضغوطة."; +"Truncated entry data." = "بيانات الإدخال مبتورة."; +"Truncated entry length." = "طول الإدخال مبتور."; +"Truncated entry path." = "مسار الإدخال مبتور."; +"Unsafe entry path." = "مسار الإدخال غير آمن."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "‏متقدم‏"; +"All tweak options are disabled" = "‏كل خيارات الأداة معطّلة‏"; +"Auto-clear cache" = "‏مسح تلقائي للذاكرة المؤقتة‏"; +"Automatically opens settings when the app launches" = "‏يفتح الإعدادات تلقائيًا عند تشغيل التطبيق‏"; +"Cache" = "‏ذاكرة التخزين المؤقت‏"; +"Cache cleared" = "‏تم مسح ذاكرة التخزين المؤقت‏"; +"Calculating cache size…" = "‏جاري حساب حجم ذاكرة التخزين المؤقت…‏"; +"Clear" = "‏مسح‏"; +"Clear cache" = "‏مسح ذاكرة التخزين المؤقت‏"; +"Clear cache (%@)" = "‏مسح ذاكرة التخزين المؤقت (%@)‏"; +"Clearing cache…" = "‏جاري المسح…‏"; +"Clearing still scans on demand." = "‏سيظل المسح يُجري الفحص عند الطلب.‏"; +"Daily" = "‏يومياً‏"; +"Disable all tweak options" = "‏تعطيل كل خيارات الأداة‏"; +"Disable safe mode" = "‏تعطيل الوضع الآمن‏"; +"Enable tweak settings quick-access" = "‏تفعيل الوصول السريع لإعدادات الأداة‏"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "‏يعمل إنستغرام بشكله الأصلي أثناء تفعيل هذا. أوقفه لاستعادة إعداداتك.‏"; +"Tap to re-enable everything" = "‏اضغط لإعادة تفعيل كل شيء‏"; +"Turn every feature off — your settings are kept" = "‏إيقاف كل الميزات — مع الاحتفاظ بإعداداتك‏"; +"Fix duplicate notifications" = "‏إصلاح الإشعارات المكررة‏"; +"Free %@ of Instagram cache." = "‏تحرير %@ من ذاكرة إنستغرام.‏"; +"Freed %@" = "‏تم تحرير %@‏"; +"Hold on the home tab to open RyukGram settings" = "‏اضغط مطولاً على تبويب الصفحة الرئيسية لفتح إعدادات ريوك غرام‏"; +"Monthly" = "‏شهرياً‏"; +"Nothing to clear" = "‏لا شيء للمسح‏"; +"Off skips the size scan when Advanced opens." = "‏عند الإيقاف يتم تخطي فحص الحجم عند فتح «متقدم».‏"; +"Pause playback when opening settings" = "‏إيقاف التشغيل مؤقتًا عند فتح الإعدادات‏"; +"Always show what's new" = "إظهار الجديد دائمًا"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "إبقاء النقطة الزرقاء على كل ميزة جديدة بدلاً من إزالتها بعد عرضها"; +"Preserve messages database" = "‏الحفاظ على قاعدة بيانات الرسائل‏"; +"Pauses any playing video/audio when settings opens" = "‏يوقف أي فيديو أو صوت قيد التشغيل مؤقتًا عند فتح الإعدادات‏"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "‏يمنع إنستغرام من إعادة ضبط الإعدادات بعد الانهيارات (على مسؤوليتك)‏"; +"Prevents two banners for the same message when IG is in the foreground" = "‏يمنع ظهور إشعارين لنفس الرسالة عندما يكون Instagram في المقدمة‏"; +"Remove Instagram's cached images, videos, and temporary files." = "‏يُزيل صور وفيديوهات وملفات إنستغرام المؤقتة.‏"; +"Reset onboarding state" = "‏إعادة ضبط حالة التهيئة التمهيدية‏"; +"Run a silent cache clear on launch when the interval has elapsed." = "‏يُنفّذ مسحاً صامتاً للذاكرة المؤقتة عند التشغيل إذا انقضت المدة المحددة.‏"; +"Show cache size" = "‏إظهار حجم ذاكرة التخزين المؤقت‏"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "‏تخطّي قاعدة بيانات الرسائل عند المسح — يُبقي الرسائل المباشرة والمسودات والرسائل المحفوظة.‏"; +"Show tweak settings on app launch" = "‏إظهار إعدادات الأداة عند تشغيل التطبيق‏"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "‏يمنع الإشعار الثاني الذي يضيفه Instagram داخل التطبيق بينما يقوم امتداد الإشعارات بتسليمه أيضًا.‏"; +"Weekly" = "‏أسبوعياً‏"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "‏الإجراءات‏"; +"Advanced experimental features" = "‏الميزات التجريبية المتقدمة‏"; +"All experimental toggles will be turned off. Instagram will restart." = "‏سيتم إيقاف جميع المفاتيح التجريبية. سيُعاد تشغيل Instagram.‏"; +"Direct Notes — Audio reply" = "‏ملاحظات Direct — الرد الصوتي‏"; +"Direct Notes — Avatar reply" = "‏ملاحظات Direct — الرد بالصورة الرمزية‏"; +"Direct Notes — Friend Map" = "‏ملاحظات Direct — خريطة الأصدقاء‏"; +"Direct Notes — GIFs & stickers reply" = "‏ملاحظات Direct — الرد بصور GIF والملصقات‏"; +"Direct Notes — Photo reply" = "‏ملاحظات Direct — الرد بصورة‏"; +"Disabled after repeated crashes." = "‏تم الإيقاف بعد تعطل متكرر.‏"; +"Enables GIF/sticker replies" = "‏يُفعّل الرد بصور GIF والملصقات‏"; +"Enables photo replies" = "‏يُفعّل الرد بالصور‏"; +"Enables the audio-note reply type" = "‏يُفعّل الرد بملاحظة صوتية‏"; +"Enables the avatar reply type" = "‏يُفعّل الرد بالصورة الرمزية‏"; +"Experimental flags reset" = "‏تمت إعادة تعيين الميزات التجريبية‏"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "‏فعّل ما تريد ثم اضغط «تطبيق» لإعادة التشغيل. قد لا تعمل بعض الميزات على جميع الحسابات أو إصدارات IG. تُعاد تعيينها تلقائيًا إذا تعطل IG عند بدء التشغيل 3 مرات.‏"; +"Forces Prism-gated experiments on" = "‏يُجبر تفعيل التجارب المُقيّدة بواسطة Prism‏"; +"Forces the Homecoming home surface / nav on" = "‏يُجبر تفعيل واجهة وتنقل Homecoming‏"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "‏يُجبر ظهور QuickSnap / Instants في الخلاصة والرسائل والقصص وشريط الملاحظات‏"; +"Got it" = "‏فهمت‏"; +"Heads up" = "‏تنبيه‏"; +"Hidden Instagram experiments" = "‏تجارب Instagram المخفية‏"; +"Hidden Instagram experiments (in Advanced)" = "‏تجارب Instagram المخفية (في الإعدادات المتقدمة)‏"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "‏الملاحظات وQuickSnap‏"; +"Prism design system" = "‏نظام تصميم Prism‏"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "‏يُظهر خريطة الأصدقاء في ملاحظات Direct‏"; +"Surfaces" = "‏الواجهات‏"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "‏تُفعّل هذه المفاتيح تجارب Instagram المخفية. قد لا تعمل بعض الميزات على جميع الحسابات أو إصدارات IG. إذا استمر IG بالتعطل عند التشغيل، تُعاد تعيين المفاتيح بعد 3 محاولات فاشلة.‏"; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "‏فعّل تجارب Instagram المخفية. قد لا يعمل بعضها على جميع الحسابات أو إصدارات IG.‏"; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "‏خلية زر‏"; +"Change the value on the right" = "‏غيّر القيمة الموجودة على اليسار‏"; +"Could not delete: %@" = "‏تعذّر الحذف: %@‏"; +"Debug" = "‏تصحيح الأخطاء‏"; +"Delete an imported override and fall back to the shipped strings" = "‏احذف تجاوزاً مستورداً وارجع إلى النصوص الأصلية‏"; +"Deleted %@ override. Restart to apply." = "‏تم حذف تجاوز %@. أعد التشغيل للتطبيق.‏"; +"Enable FLEX gesture" = "‏تفعيل إيماءة أداة فليكس (FLEX)‏"; +"Enable file logging" = "تفعيل التسجيل في ملف"; +"Export strings" = "تصدير النصوص"; +"Hold 5 fingers on the screen to open FLEX" = "‏ضع 5 أصابع على الشاشة لفتح فليكس (FLEX)‏"; +"I have %@%@" = "‏لدي %@%@‏"; +"Import a .strings file for a language" = "‏استيراد ملف .strings للغة‏"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "‏استورد ملف .strings لتحديث الترجمة. اختر لغة، حدد الملف، وأعد التشغيل.‏"; +"Link Cell" = "‏خلية رابط‏"; +"Localization" = "‏التعريب‏"; +"Log file is empty" = "ملف السجل فارغ"; +"Logging" = "التسجيل"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "يسجّل نشاط RyukGram في ملف واحد قابل للمشاركة عبر التطبيق وإضافاته. مُعطّل افتراضيًا — فعّله، أعد إنتاج المشكلة، ثم شارِكه."; +"Menu Cell" = "‏خلية قائمة‏"; +"Navigation Cell" = "‏خلية التنقل‏"; +"No imported localization files to reset." = "‏لا توجد ملفات ترجمة مستوردة للإعادة.‏"; +"No overrides" = "‏لا توجد تجاوزات‏"; +"Open FLEX on app focus" = "‏فتح فليكس عند التركيز على التطبيق‏"; +"Open FLEX on app launch" = "‏فتح فليكس عند إطلاق التطبيق‏"; +"Opens FLEX when the app is focused" = "‏يفتح فليكس عندما يكون التطبيق قيد التركيز‏"; +"Opens FLEX when the app launches" = "‏يفتح فليكس عند إطلاق التطبيق‏"; +"Pick a language and share its .strings file" = "اختر لغة لمشاركة ملف .strings الخاص بها"; +"Pick a language to delete the imported file" = "‏اختر لغة لحذف الملف المستورد‏"; +"Pick a language to export" = "اختر لغة للتصدير"; +"Reset localization" = "‏إعادة تعيين الترجمة‏"; +"Share log file" = "مشاركة ملف السجل"; +"Static Cell" = "‏خلية ثابتة‏"; +"Stepper cell" = "‏خلية متدرج‏"; +"Switch Cell" = "‏خلية مفتاح تبديل‏"; +"Switch Cell (Restart)" = "‏خلية مفتاح تبديل (إعادة تشغيل)‏"; +"Tap the switch" = "‏انقر فوق مفتاح التبديل‏"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "‏تعتمد هذه الميزات على علامات Instagram مخفية وقد لا تعمل على جميع الحسابات أو الإصدارات.‏"; +"Update localization file" = "‏تحديث ملف التعريب‏"; +"Using icon" = "‏استخدام أيقونة‏"; +"Using image" = "‏استخدام صورة‏"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "‏إعدادات %@‏"; +"%lu items" = "%lu عنصر"; +"Cancelled" = "‏تم الإلغاء‏"; +"Carousel" = "دائري"; +"Carousel · %lu items" = "دائري · %lu عنصر"; +"Copied %lu URLs" = "‏تم نسخ %lu روابط‏"; +"Copied caption" = "‏تم نسخ الوصف‏"; +"Copied download URL" = "‏تم نسخ رابط التنزيل‏"; +"Copied quality info" = "تم نسخ معلومات الجودة"; +"Copied video URL" = "تم نسخ رابط الفيديو"; +"Copy all URLs" = "‏نسخ كل الروابط‏"; +"Copy caption" = "‏نسخ الوصف‏"; +"Copy download URL" = "‏نسخ رابط التنزيل‏"; +"Could not extract any URLs" = "‏تعذر استخراج أي روابط‏"; +"Could not extract audio URL" = "‏تعذر استخراج رابط الصوت‏"; +"Could not extract media URL" = "‏تعذر استخراج رابط الوسائط‏"; +"Could not extract photo URL" = "‏تعذر استخراج رابط الصورة‏"; +"Could not extract video URL" = "‏تعذر استخراج رابط الفيديو‏"; +"Done" = "‏تم‏"; +"Download all stories and share?" = "‏تنزيل كل القصص والمشاركة؟‏"; +"Download all to Photos" = "‏تنزيل الكل إلى الصور‏"; +"Download and share all" = "‏تنزيل ومشاركة الكل‏"; +"Download failed" = "‏فشل التنزيل‏"; +"Downloaded %lu items" = "‏تم تنزيل %lu من العناصر‏"; +"Downloading audio…" = "جارٍ تنزيل الصوت…"; +"Failed to save" = "‏فشل الحفظ‏"; +"File" = "ملف"; +"HD" = "HD"; +"HD download complete" = "‏اكتمل التنزيل بدقة عالية (HD)‏"; +"HD video" = "فيديو HD"; +"Mute audio" = "‏كتم الصوت‏"; +"No caption on this post" = "‏لا يوجد وصف في هذا المنشور‏"; +"No carousel children" = "‏لا توجد وسائط متعددة في هذا المنشور‏"; +"No cover image" = "‏لا توجد صورة غلاف‏"; +"No media" = "‏لا توجد وسائط‏"; +"No media to expand" = "‏لا توجد وسائط لتوسيعها‏"; +"No media to show" = "‏لا توجد وسائط لعرضها‏"; +"No media URL" = "‏لا يوجد رابط للوسائط‏"; +"No URLs" = "‏لا توجد روابط‏"; +"No URLs found" = "‏لم يتم العثور على روابط‏"; +"No video URL" = "‏لا يوجد رابط للفيديو‏"; +"Not a carousel" = "‏ليس منشورًا متعدد الوسائط‏"; +"Nothing to share" = "‏لا يوجد شيء لمشاركته‏"; +"Opening creator…" = "‏جارِ الفتح...‏"; +"Photo library access denied" = "‏تم رفض الوصول إلى مكتبة الصور‏"; +"Photos access denied" = "‏تم رفض الوصول إلى الصور‏"; +"Preparing repost…" = "‏جارِ تجهيز إعادة النشر...‏"; +"Raw image" = "صورة خام"; +"Repost" = "‏إعادة نشر‏"; +"Repost unavailable" = "‏إعادة النشر غير متاحة‏"; +"Save failed" = "‏فشل الحفظ‏"; +"Saved %lu items" = "‏تم حفظ %lu من العناصر‏"; +"Saved to Photos" = "‏تم الحفظ في الصور‏"; +"Saved to RyukGram" = "‏تم الحفظ في ريوك غرام‏"; +"Saving to Photos" = "جارٍ الحفظ في الصور"; +"Saving…" = "‫جارٍ الحفظ...‬"; +"Unmute audio" = "‏إلغاء كتم الصوت‏"; +"Video · %@" = "فيديو · %@"; +"View cover" = "‏عرض الغلاف‏"; +"View mentions" = "‏عرض الإشارات‏"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "حرّ"; +"Chat font saved" = "تم حفظ خط المحادثة"; +"Reopen this chat to see the new font" = "أعد فتح هذه المحادثة لرؤية الخط الجديد"; +"Remove background" = "إزالة الخلفية"; +"No subject found" = "لم يُعثر على موضوع"; +"No stickers yet" = "لا ملصقات بعد"; +"Send drawing" = "إرسال رسم"; +"Send my drawing" = "إرسال رسمتي"; +"Paste image / sticker" = "لصق صورة / ملصق"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "انقر أي ملصق في لوحة المفاتيح\nلإضافته إلى رسمتك"; + +" %lu votes · avg %.0f%% " = " %lu صوت · المتوسط %.0f%% "; +"%@ can't be converted" = "‏تعذر تحويل %@‏"; +"%@ unsent a message" = "‏ألغى %@ إرسال رسالة‏"; +"%@ unsent a message from %@" = "‏ألغى %1$@ إرسال رسالة من %2$@‏"; +"A message was unsent" = "‏تم إلغاء إرسال رسالة‏"; +"Add" = "‏إضافة‏"; +"Add to block list" = "‏إضافة لقائمة الحظر‏"; +"Added to block list" = "‏تمت الإضافة لقائمة الحظر‏"; +"Added to exclude list" = "‏أُضيف إلى قائمة الاستبعاد‏"; +"Audio not loaded yet. Play the message first and try again." = "‏لم يتم تحميل الصوت بعد. قم بتشغيل الرسالة أولاً وحاول مجددًا.‏"; +"Audio sent" = "‏تم إرسال الصوت‏"; +"Audio URL not available" = "‏رابط الصوت غير متاح‏"; +"Audio/Video from Files" = "‏صوت أو فيديو من الملفات‏"; +"Blocked" = "‏محظور‏"; +"Cancel" = "‏إلغاء‏"; +"Clear preserved messages?" = "‏مسح الرسائل المحفوظة؟‏"; +"Converting…" = "‏جارِ التحويل...‏"; +"Copy link" = "نسخ الرابط"; +"Copy text" = "‏نسخ النص‏"; +"Could not copy selected video" = "تعذّر نسخ الفيديو المحدد"; +"Could not find media" = "‏تعذر العثور على وسائط‏"; +"Could not find story media" = "‏تعذر العثور على وسائط القصة‏"; +"Could not get audio data. Try again after refreshing the chat." = "‏تعذر الحصول على بيانات الصوت. حاول مجددًا بعد تحديث المحادثة.‏"; +"Disable read receipts" = "‏تعطيل مؤشرات القراءة‏"; +"Disappearing media" = "‏وسائط مختفية‏"; +"Download audio" = "‏تنزيل الصوت‏"; +"Enable read receipts" = "‏تفعيل مؤشرات القراءة‏"; +"Error: %@" = "‏خطأ: %@‏"; +"Exclude chat" = "‏استبعاد المحادثة‏"; +"Exclude from seen" = "‏استبعاد من المُشاهد‏"; +"Exclude story seen" = "‏استبعاد مشاهدة القصة‏"; +"Excluded" = "‏مستبعد‏"; +"Extracting audio…" = "‏جارِ استخراج الصوت...‏"; +"FFmpeg conversion failed" = "‏فشل التحويل بواسطة FFmpeg‏"; +"File sending not supported" = "‏إرسال الملفات غير مدعوم‏"; +"Follow" = "‏متابعة‏"; +"Following" = "‏تُتابع‏"; +"Format not supported without FFmpegKit" = "‏الصيغة غير مدعومة بدون FFmpegKit‏"; +"Inserts a button on disappearing media overlays" = "‏يُضيف زراً على طبقة الوسائط المختفية‏"; +"Inserts a speaker button to mute/unmute disappearing media" = "‏يُضيف زر مكبر صوت لكتم/إلغاء كتم الوسائط المختفية‏"; +"Inserts an eye button to mark the current disappearing media as viewed" = "‏يُضيف زر عين لتعليم الوسائط المختفية الحالية كمُشاهدة‏"; +"Link copied" = "تم نسخ الرابط"; +"Mark as viewed" = "‏تعليم كمُشاهدة‏"; +"Marking as viewed advances to the next stacked media instead of closing" = "‏يؤدي تعليمها كمُشاهَدة إلى الانتقال إلى الوسائط التالية المتراكمة بدلاً من الإغلاق‏"; +"Mark messages as seen" = "‏تحديد الرسائل كمقروءة‏"; +"Mark seen" = "‏تحديد كمقروءة‏"; +"Marked as viewed" = "‏تم التحديد كمقروءة‏"; +"Marked messages as seen" = "‏تم تحديد الرسائل كمقروءة‏"; +"Mentions" = "‏الإشارات‏"; +"Message from %@ was unsent" = "‏تم إلغاء إرسال رسالة من %@‏"; +"Message sender not found" = "‏لم يتم العثور على مُرسل الرسالة‏"; +"Messages settings" = "‏إعدادات الرسائل‏"; +"Mute story audio" = "‏كتم صوت القصة‏"; +"no audio track could be read" = "‏تعذرت قراءة أي مقطع صوتي‏"; +"No audio URL found. Try again after refreshing the chat." = "‏لم يتم العثور على رابط للصوت. حاول مجددًا بعد تحديث المحادثة.‏"; +"No mentions in this story" = "‏لا توجد إشارات في هذه القصة‏"; +"No thread key" = "‏لا يوجد مفتاح للمحادثة‏"; +"No video selected" = "لم يتم تحديد فيديو"; +"No voice send method found" = "‏لم يتم العثور على طريقة لإرسال الصوت‏"; +"Note has no downloadable content" = "لا تحتوي الملاحظة على محتوى قابل للتنزيل"; +"Note text copied" = "‏تم نسخ نص الملاحظة‏"; +"Open GitHub" = "‏فتح غيت هاب (GitHub)‏"; +"Pick audio or video" = "اختر صوتًا أو فيديو"; +"Read receipts disabled" = "‏تم تعطيل مؤشرات القراءة‏"; +"Read receipts enabled" = "‏تم تفعيل مؤشرات القراءة‏"; +"Read receipts will be blocked for this chat." = "‏سيتم حظر مؤشرات القراءة لهذه المحادثة.‏"; +"Read receipts will no longer be blocked for this chat." = "‏لن يتم حظر مؤشرات القراءة لهذه المحادثة بعد الآن.‏"; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "‏تحديث الرسائل سيمسح %lu رسالة محفوظة. لا يمكن التراجع.‏"; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "‏تحديث الرسائل سيمسح %lu رسائل محفوظة. لا يمكن التراجع.‏"; +"Remove" = "‏إزالة‏"; +"Remove from block list" = "‏إزالة من قائمة الحظر‏"; +"Remove from exclude list" = "‏إزالة من قائمة الاستبعاد‏"; +"Removed" = "‏تمت الإزالة‏"; +"Removed from list" = "‏تمت الإزالة من القائمة‏"; +"Save GIF" = "‏حفظ صورة جيف (GIF)‏"; +"Selection too short (min 0.5s)" = "‏التحديد قصير جدًا (الحد الأدنى 0.5 ثانية)‏"; +"Send anyway" = "‏إرسال على أي حال‏"; +"Send Audio" = "‏إرسال صوت‏"; +"Send failed: %@" = "‏فشل الإرسال: %@‏"; +"Send File" = "إرسال ملف"; +"Send service not found" = "‏لم يتم العثور على خدمة الإرسال‏"; +"Show audio toggle" = "‏إظهار زر الصوت‏"; +"Show mark-as-viewed button" = "‏إظهار زر علامة كمُشاهدة‏"; +"Story read receipts disabled" = "‏تم تعطيل مؤشرات قراءة القصص‏"; +"Story read receipts enabled" = "‏تم تفعيل مؤشرات قراءة القصص‏"; +"This chat will resume normal read-receipt behavior." = "‏ستستأنف هذه المحادثة السلوك الطبيعي لمؤشر القراءة.‏"; +"This file" = "‏هذا الملف‏"; +"Total: %@" = "‏الإجمالي: %@‏"; +"Un-exclude chat" = "‏إلغاء استبعاد المحادثة‏"; +"Un-exclude story seen" = "‏إلغاء استبعاد مشاهدة القصة‏"; +"Un-excluded" = "‏تم إلغاء الاستبعاد‏"; +"Unblocked" = "‏تم إلغاء الحظر‏"; +"Unlimited replay enabled" = "‏تم تفعيل الإعادة غير المحدودة‏"; +"Unmute story audio" = "‏إلغاء كتم صوت القصة‏"; +"Unsent" = "‏أُلغي الإرسال‏"; +"Upload Audio" = "‏رفع صوت‏"; +"VC not found" = "‏لم يتم العثور على واجهة المستخدم‏"; +"Video from Library" = "‏فيديو من المكتبة‏"; +"Visual messages will expire" = "‏ستنتهي صلاحية الرسائل المرئية‏"; +"Visual messages: expiring" = "‏الرسائل المرئية: تنتهي صلاحيتها‏"; +"Visual messages: unlimited replay" = "‏الرسائل المرئية: إعادة غير محدودة‏"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "إضافة خلفية"; +"Add Chat Background" = "إضافة خلفية محادثة"; +"Adds your own image backgrounds to Instagram chats" = "يضيف صورك الخاصة كخلفيات لمحادثات Instagram"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "بعد التفعيل، افتح أي محادثة، واضغط على زر السمة، ثم اضغط على أيقونة الصورة في أعلى اليمين."; +"Blur" = "تمويه"; +"Browse chats" = "تصفّح المحادثات"; +"Browse chats (%ld)" = "تصفّح المحادثات (%ld)"; +"Change Background" = "تغيير الخلفية"; +"Change default" = "تغيير الافتراضي"; +"Chat Backgrounds" = "خلفيات المحادثة"; +"Choose an image used when no chat override exists" = "اختر صورة تُستخدم عند عدم وجود تخصيص للمحادثة"; +"Clear default" = "مسح الافتراضي"; +"Couldn't import image" = "تعذّر استيراد الصورة"; +"Adjust settings" = "الإعدادات"; +"Choose Media" = "اختيار وسائط"; +"Converting GIF" = "جارٍ تحويل GIF"; +"Couldn't import video" = "تعذّر استيراد الفيديو"; +"Crop & resize" = "قص وتغيير الحجم"; +"Crop & trim" = "قص وتشذيب"; +"Custom Chat Background" = "خلفية محادثة مخصصة"; +"Default background" = "الخلفية الافتراضية"; +"Dim in dark mode" = "التعتيم في الوضع الداكن"; +"Enable custom backgrounds" = "تفعيل الخلفيات المخصصة"; +"Enter a username, chat name, or thread ID." = "أدخل اسم مستخدم أو اسم محادثة أو معرّف المحادثة."; +"Group" = "مجموعة"; +"Image Settings" = "إعدادات الصورة"; +"Auto bubble color" = "لون الفقاعة التلقائي"; +"Bubble color" = "لون الفقاعة"; +"Me" = "أنا"; +"Both" = "كلاهما"; +"Gradient" = "تدرّج"; +"Direction" = "الاتجاه"; +"Vertical" = "عمودي"; +"Horizontal" = "أفقي"; +"Diagonal" = "قطري"; +"Text color" = "لون النص"; +"Automatic (contrast)" = "تلقائي (تباين)"; +"Choose color…" = "اختر لونًا…"; +"Tap to apply · hold to edit" = "اضغط للتطبيق · مطوّلاً للتعديل"; +"Library" = "المكتبة"; +"Library, default, and per-chat overrides will be deleted." = "سيتم حذف المكتبة والافتراضي وتخصيصات كل محادثة."; +"No Custom" = "بلا تخصيص"; +"Opacity" = "العتامة"; +"Photo Library" = "مكتبة الصور"; +"Pick default" = "اختر الافتراضي"; +"Pinch + drag to position" = "اضغط بإصبعين واسحب لتحديد الموضع"; +"Quit and reopen Instagram for the change to take effect." = "أغلق Instagram وأعد فتحه ليصبح التغيير ساري المفعول."; +"Recently set" = "تم التعيين مؤخرًا"; +"Remove the global fallback background" = "إزالة الخلفية الاحتياطية العامة"; +"Replace the default background image" = "استبدال صورة الخلفية الافتراضية"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "تعيد \"إعادة التعيين\" ضبط العتامة إلى 1.0، والتمويه إلى 0، والتعتيم إلى 0."; +"RyukGram Gallery" = "معرض RyukGram"; +"Search username, name, or thread ID" = "ابحث باسم المستخدم أو الاسم أو معرّف المحادثة"; +"Set as default" = "تعيين كافتراضي"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "اضغط على علامة الزائد للإضافة. اضغط على خلفية لتعديلها أو تعيينها كافتراضية أو حذفها."; +"This Chat Background" = "خلفية هذه المحادثة"; +"Thread ID" = "معرّف المحادثة"; +"Used only when a chat does not have its own custom background." = "يُستخدم فقط عندما لا يكون للمحادثة خلفية مخصصة خاصة بها."; +"View and manage chats with custom backgrounds" = "عرض وإدارة المحادثات ذات الخلفيات المخصصة"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "‏إضافة موقع‏"; +"Add preset" = "‏إضافة إعداد مسبق‏"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "‏يؤثر على كل ما سبق. عند الإيقاف، تُطبق السمة وتجاوزات الأسطح الخاصة بـ RyukGram فقط عندما يكون iOS في الوضع الداكن — تاركةً الوضع الفاتح دون تغيير.‏"; +"Apply & restart" = "‏تطبيق وإعادة التشغيل‏"; +"Background" = "‏الخلفية‏"; +"Behavior" = "‏السلوك‏"; +"Change location" = "‏تغيير الموقع‏"; +"Clipboard is not an Instagram URL" = "الحافظة لا تحتوي على رابط إنستغرام"; +"Comments hidden" = "‏تم إخفاء التعليقات‏"; +"Comments shown" = "‏تم إظهار التعليقات‏"; +"Copied text to clipboard" = "‏تم نسخ النص إلى الحافظة‏"; +"Copy" = "‏نسخ‏"; +"Copy bio" = "‏نسخ البايو‏"; +"Copy name" = "‏نسخ الاسم‏"; +"Could not find cover image" = "‏تعذر العثور على صورة الغلاف‏"; +"Current: %@" = "‏الحالي: %@‏"; +"Dark" = "‏داكن‏"; +"Disable" = "‏تعطيل‏"; +"Download GIF" = "‏تنزيل صورة جيف (GIF)‏"; +"Dropped pin" = "‏دبوس الموقع‏"; +"Emoji" = "‏إيموجي‏"; +"Enable" = "‏تفعيل‏"; +"Enable Location Services for Instagram in Settings to use your current location." = "‏فعّل خدمات الموقع لإنستغرام من الإعدادات لاستخدام موقعك الحالي.‏"; +"Enter emoji" = "‏أدخل إيموجي‏"; +"Fake location" = "‏موقع وهمي‏"; +"Force theme" = "‏فرض السمة‏"; +"Keyboard theme" = "‏سمة لوحة المفاتيح‏"; +"Light" = "‏فاتح‏"; +"Location access denied" = "‏تم رفض الوصول إلى الموقع‏"; +"Location Services off" = "‏خدمات الموقع متوقفة‏"; +"Name" = "‏الاسم‏"; +"Nothing to copy" = "‏لا يوجد شيء لنسخه‏"; +"Off, Light, Dark, or OLED" = "‏إيقاف، فاتح، داكن، أو OLED‏"; +"OLED" = "OLED"; +"OLED chat theme" = "‏سمة OLED للمحادثات‏"; +"Open Settings" = "‏فتح الإعدادات‏"; +"Optional per-surface overrides. Each one is independent of the theme above." = "‏تجاوزات اختيارية لكل سطح. كل واحدة مستقلة عن السمة أعلاه.‏"; +"Override iOS appearance regardless of system mode" = "‏تجاوز مظهر iOS بغضّ النظر عن وضع النظام‏"; +"Override the keyboard appearance when typing" = "‏تجاوز مظهر لوحة المفاتيح عند الكتابة‏"; +"Pick location" = "‏اختر الموقع‏"; +"Pure black DM thread + incoming bubbles" = "‏خلفية سوداء نقية للمحادثات + الفقاعات الواردة‏"; +"Save" = "‏حفظ‏"; +"Save preset" = "‏حفظ الإعداد المسبق‏"; +"Saved locations" = "‏المواقع المحفوظة‏"; +"Select color" = "‏اختيار اللون‏"; +"Set location" = "‏تعيين الموقع‏"; +"The theme RyukGram applies to Instagram." = "‏السمة التي يطبقها RyukGram على Instagram.‏"; +"Theme" = "‏السمة‏"; +"Turn Location Services on in Settings → Privacy to use your current location." = "‏فعّل خدمات الموقع من الإعدادات ← الخصوصية لاستخدام موقعك الحالي.‏"; +"Type an emoji to use as the note bubble icon." = "‏اكتب إيموجي لاستخدامه كأيقونة لفقاعة الملاحظة.‏"; +"Profile picture" = "صورة الملف الشخصي"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "‏%@ %lu حسابًا؟ ستتم معالجة أول %ld لتجنّب حدود المعدل.‏"; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "‏%@ %lu حسابًا؟ ستتم المعالجة بالتتابع مع وقفة قصيرة بين كل طلب.‏"; +"%@ followers · %@ following" = "%@ متابِع · %@ متابَع"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "‏منذ %d ي‏"; +"%dh ago" = "‏منذ %d س‏"; +"%dm ago" = "‏منذ %d د‏"; +"%lu accounts followed" = "‏تمت متابعة %lu حسابًا‏"; +"%lu accounts unfollowed" = "‏تم إلغاء متابعة %lu حسابًا‏"; +"%lu followers · %lu following" = "‏%lu متابع · %lu يتابع‏"; +"%lu followers removed" = "‏تمت إزالة %lu متابعًا‏"; +"%lu of %lu" = "‏%lu من %lu‏"; +"%lu of %lu checks on" = "‏%lu من %lu فحوصات مُفعّلة‏"; +"%lu saved · comparing against %@" = "تم حفظ %lu · المقارنة مع %@"; +"(empty)" = "‏(فارغ)‏"; +"(no analyzer data)" = "‏(لا توجد بيانات محلل)‏"; +"a saved snapshot" = "لقطة محفوظة"; +"About Profile Analyzer" = "‏عن محلل الملف الشخصي‏"; +"All preferences (%lu)" = "‏جميع التفضيلات (%lu)‏"; +"Analysis complete" = "‏اكتمل التحليل‏"; +"Analysis failed" = "‏فشل التحليل‏"; +"Another analysis is already running" = "‏هناك تحليل آخر قيد التشغيل بالفعل‏"; +"Available after your next scan" = "‏متاحة بعد التحليل التالي‏"; +"Batch follow" = "‏متابعة جماعية‏"; +"Batch follow finished" = "‏اكتملت المتابعة الجماعية‏"; +"Batch remove followers" = "‏إزالة المتابعين دفعة واحدة‏"; +"Batch remove followers finished" = "‏اكتملت إزالة المتابعين دفعة واحدة‏"; +"Batch unfollow" = "‏إلغاء متابعة جماعي‏"; +"Batch unfollow finished" = "‏اكتمل إلغاء المتابعة الجماعي‏"; +"Categories" = "‏الفئات‏"; +"Checks" = "الفحوصات"; +"Clear visited profiles" = "‏مسح الحسابات المُشاهَدة‏"; +"Compare next scan against" = "قارن الفحص التالي مع"; +"Comparing against %@" = "المقارنة مع %@"; +"Continue" = "‏متابعة‏"; +"Couldn't fetch profile information" = "‏تعذّر جلب معلومات الملف الشخصي‏"; +"Delete %lu snapshots? This can't be undone." = "حذف %lu لقطة؟ لا يمكن التراجع عن هذا."; +"Delete (%lu)" = "حذف (%lu)"; +"Delete snapshots" = "حذف اللقطات"; +"Delete this snapshot? This can't be undone." = "حذف هذه اللقطة؟ لا يمكن التراجع عن هذا."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "يحفظ كل فحص نسخة كاملة من متابِعيك ومتابَعيك لتتمكن من المقارنة معها لاحقًا. يبقى كل شيء على هذا الجهاز."; +"Export" = "‏تصدير‏"; +"Fetching followers (%lu/%ld)…" = "‏جاري جلب المتابعين (%lu/%ld)…‏"; +"Fetching following (%lu/%ld)…" = "‏جاري جلب المتابَعين (%lu/%ld)…‏"; +"Fetching profile info…" = "‏جاري جلب معلومات الملف الشخصي…‏"; +"File is not a valid RyukGram backup." = "‏الملف ليس تصديرًا صالحًا من RyukGram.‏"; +"Filter" = "‏تصفية‏"; +"Filter · %lu" = "تصفية · %lu"; +"First scan: %@" = "‏أول تحليل: %@‏"; +"First scan: we collect your followers and following lists and save them locally." = "‏أول تحليل: نجمع قوائم المتابعين والمتابَعين ونحفظها محليًا.‏"; +"Follow back" = "‏متابعة بالمثل‏"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "‏عدد المتابعين يتجاوز %ld — التحليل معطّل لتجنب حدود المعدل.‏"; +"Followers" = "‏المتابعون‏"; +"Following… %lu / %lu" = "‏جارٍ المتابعة… %lu / %lu‏"; +"Gained since last scan" = "‏اكتسبتهم منذ آخر تحليل‏"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "‏تنبيه: هذه الميزة تستخدم واجهة Instagram الخاصة. تشغيلها بشكل متتالٍ أو بعد نشاط متابعة/إلغاء متابعة كثيف قد يسبب حدًا مؤقتًا. استخدمها باعتدال وعلى مسؤوليتك.‏"; +"Import complete" = "‏اكتمل الاستيراد‏"; +"Include" = "‏تضمين‏"; +"Keep newest" = "الاحتفاظ بالأحدث"; +"Keep newest snapshots" = "الاحتفاظ بأحدث اللقطات"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "‏الحسابات الكبيرة محظورة: يتم تعطيل التحليل فوق 13,000 متابع لتجنّب قيام Instagram بتحديد معدل التطبيق بأكمله.‏"; +"Last scan: %@" = "‏آخر تحليل: %@‏"; +"Logs every profile you open. Stays on-device." = "‏يسجّل كل حساب تفتحه. يبقى على الجهاز فقط.‏"; +"Lost followers" = "‏متابعون مفقودون‏"; +"Most visited" = "‏الأكثر مشاهدة‏"; +"Mutual followers" = "‏متابعون متبادلون‏"; +"Name: %@ → %@" = "‏الاسم: %@ ← %@‏"; +"New followers" = "‏متابعون جدد‏"; +"NEW" = "‏جديد‏"; +"New first" = "‏الجديدة أولاً‏"; +"New only" = "‏الجديدة فقط‏"; +"No active Instagram session found" = "‏لا توجد جلسة Instagram نشطة‏"; +"No results" = "‏لا توجد نتائج‏"; +"No scan yet" = "‏لا يوجد تحليل بعد‏"; +"Not following you back" = "‏لا يتابعونك بالمقابل‏"; +"Not verified only" = "‏غير الموثقة فقط‏"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "‏لا يتم رفع أي شيء — كل البيانات تبقى على هذا الجهاز ويمكن مسحها من أيقونة سلة المهملات.‏"; +"Nothing was applied." = "‏لم يتم تطبيق شيء.‏"; +"OK" = "‏حسناً‏"; +"Older snapshots beyond the limit are removed automatically" = "تُزال اللقطات الأقدم التي تتجاوز الحد تلقائيًا"; +"Older snapshots beyond this limit are deleted on the next scan." = "تُحذف اللقطات الأقدم التي تتجاوز هذا الحد في الفحص التالي."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "اختر ما تريد إزالته. \"اللقطات\" تمسح فروقات الفحص وكل لقطة مسجلة؛ \"الملفات الشخصية المزارة\" تمسح سجل الزيارات."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "اختر الفئات التي يحسبها كل فحص. يظهر الفحص المُعطّل باهتًا ويُتخطّى — فلا يُحسب ولا يُعرض."; +"Posts" = "‏المنشورات‏"; +"Preferences" = "‏التفضيلات‏"; +"Previous scan" = "الفحص السابق"; +"Private account" = "‏حساب خاص‏"; +"Private only" = "‏الخاصة فقط‏"; +"Profile Analyzer" = "‏محلل الملف الشخصي‏"; +"Profile Analyzer data" = "‏بيانات محلل الملف الشخصي‏"; +"Profile picture changed" = "‏تم تغيير صورة الملف الشخصي‏"; +"Profile updates" = "‏تحديثات الملف الشخصي‏"; +"Profiles you've opened recently" = "‏الحسابات التي فتحتها مؤخرًا‏"; +"Raw" = "‏خام‏"; +"Raw JSON" = "‏JSON الخام‏"; +"Record snapshots" = "تسجيل اللقطات"; +"Remove @%@ as a follower?" = "‏إزالة @%@ من المتابعين؟‏"; +"Remove follower" = "‏إزالة متابع‏"; +"Removing… %lu / %lu" = "‏جارٍ الإزالة… %lu / %lu‏"; +"Recording" = "التسجيل"; +"Request failed" = "‏فشل الطلب‏"; +"Reset analyzer data" = "‏إعادة تعيين بيانات المحلل‏"; +"Reset complete" = "‏اكتملت إعادة التعيين‏"; +"Reset everything" = "‏إعادة تعيين كل شيء‏"; +"Reset selected data?" = "‏إعادة تعيين البيانات المحددة؟‏"; +"Reset snapshots" = "‏إعادة تعيين اللقطات‏"; +"Rolling — always your last run" = "متجدد — دائمًا آخر فحص لك"; +"Run analysis" = "‏تشغيل التحليل‏"; +"Run your first analysis" = "‏شغّل أول تحليل لك‏"; +"Save a dated entry on every scan" = "احفظ إدخالاً مؤرخًا في كل فحص"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "‏من التحليل الثاني فصاعدًا: يقارن كل تحليل بما قبله، لتظهر المتابعين الجدد والمفقودين وإجراءاتك من متابعة/إلغاء متابعة وتحديثات الملف الشخصي.‏"; +"Settings" = "‏الإعدادات‏"; +"Since last scan" = "‏منذ آخر تحليل‏"; +"Snapshot" = "لقطة"; +"Snapshot saved" = "تم حفظ اللقطة"; +"Snapshots" = "اللقطات"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "تتيح لك اللقطات أرشفة كل فحص واختيار اللقطة التي تقارن معها الفحوصات الجديدة. يسجّل \"تتبّع الزيارات\" كل ملف شخصي تفتحه لتتمكن من مراجعته هنا."; +"Sort" = "‏ترتيب‏"; +"Starting…" = "‏يبدأ…‏"; +"They follow you, you don't follow back" = "‏يتابعونك، لكنك لا تتابعهم‏"; +"This can't be undone." = "‏لا يمكن التراجع عن هذا الإجراء.‏"; +"Ticked data will be cleared. Tap a row to see what's stored." = "‏سيتم مسح البيانات المحددة. انقر على أي صف لرؤية ما هو مخزّن.‏"; +"Today" = "‏اليوم‏"; +"Too many followers" = "‏عدد متابعين كبير جدًا‏"; +"Too many followers to analyze" = "‏عدد المتابعين أكبر من أن يُحلَّل‏"; +"Track visited profiles" = "‏تتبّع الحسابات المُشاهَدة‏"; +"Tracking" = "‏التتبّع‏"; +"Tracking off — enable below to log visits" = "‏التتبّع متوقّف — فعّله أدناه لتسجيل الزيارات‏"; +"Unfollow" = "‏إلغاء المتابعة‏"; +"Unfollow %lu" = "‏إلغاء متابعة %lu‏"; +"Unfollow @%@?" = "‏إلغاء متابعة @%@؟‏"; +"Unfollowed you since last scan" = "‏ألغوا متابعتك منذ آخر تحليل‏"; +"Unfollowing… %lu / %lu" = "‏جارٍ إلغاء المتابعة… %lu / %lu‏"; +"Unlimited" = "غير محدود"; +"Username A → Z" = "‏اسم المستخدم أ ← ي‏"; +"Username Z → A" = "‏اسم المستخدم ي ← أ‏"; +"Username, name or picture changes" = "‏تغييرات اسم المستخدم أو الاسم أو الصورة‏"; +"Username: @%@ → @%@" = "‏اسم المستخدم: @%@ ← @%@‏"; +"Using %@ across %lu snapshots." = "استخدام %@ عبر %lu لقطة."; +"Verified only" = "‏الموثقة فقط‏"; +"Visited" = "‏المُشاهَد‏"; +"Visited profiles" = "‏الحسابات المُشاهَدة‏"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "‏لا نشغّل التحليل عندما يتجاوز عدد المتابعين %ld لتجنب حدود Instagram.‏"; +"You both follow each other" = "‏تتابعان بعضكما البعض‏"; +"You don't follow back" = "‏لا تتابعهم بالمقابل‏"; +"You follow them, they don't follow back" = "‏تتابعهم، لكنهم لا يتابعونك‏"; +"You started following" = "‏بدأت تتابعهم‏"; +"Your current scan was archived" = "تمت أرشفة الفحص الحالي"; +"You unfollowed" = "‏ألغيت متابعتهم‏"; +"your previous scan" = "فحصك السابق"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "يقيس \"الفحص السابق\" دائمًا مقارنةً بآخر فحص لك. اختر لقطة محفوظة للمقارنة مع نقطة زمنية ثابتة بدلاً من ذلك."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ يتزايد الحجم — قلّل الحد أو احذف اللقطات الأقدم لتحرير مساحة."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "تنسيق مطلق"; +"Add chat" = "‏إضافة محادثة‏"; +"Add custom domain" = "‏إضافة نطاق مخصص‏"; +"Add to list?" = "‏إضافة للقائمة؟‏"; +"Add user" = "‏إضافة مستخدم‏"; +"Apply" = "‏تطبيق‏"; +"Apply to" = "‏تطبيق على‏"; +"Chats" = "‏المحادثات‏"; +"Colored" = "‏ملوّن‏"; +"Could not read file." = "‏تعذرت قراءة الملف.‏"; +"Could not resolve user ID" = "‏تعذر تحليل معرف المستخدم‏"; +"Current location" = "‏الموقع الحالي‏"; +"Custom" = "‏مخصص‏"; +"Delete" = "‏حذف‏"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "كل واجهة في IG تستخدم منسّق NSDate مختلف. فعّل الواجهات التي تريد تطبيق هذا التنسيق عليها."; +"Enable fake location" = "‏تفعيل الموقع الوهمي‏"; +"Excluded chats" = "‏المحادثات المستبعدة‏"; +"Excluded users" = "‏المستخدمون المستبعدون‏"; +"Follow default" = "‏اتباع الافتراضي‏"; +"Force OFF (allow unsends)" = "‏إيقاف إجباري (السماح بإلغاء الإرسال)‏"; +"Force ON (preserve unsends)" = "‏تشغيل إجباري (الاحتفاظ بالرسائل الملغاة)‏"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "تضمين الثواني عندما يعرض التنسيق الوقت. التنسيق المخصص يتحكم بالثواني بنفسه عبر {ss}."; +"Add custom format…" = "إضافة تنسيق مخصص…"; +"Edit" = "تعديل"; +"Template" = "القالب"; +"Placeholders" = "العناصر النائبة"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "تُستبدل العناصر النائبة بأجزاء التاريخ؛ وأي شيء آخر يُعرض كما هو."; +"Tap a placeholder to insert it at the cursor." = "اضغط على عنصر نائب لإدراجه عند المؤشر."; +"Included chats" = "‏المحادثات المشمولة‏"; +"Included users" = "‏المستخدمون المشمولون‏"; +"KD: default" = "‏الاحتفاظ: الافتراضي‏"; +"KD: ON" = "‏الاحتفاظ: تشغيل‏"; +"Keep-deleted" = "‏الاحتفاظ بالمحذوف‏"; +"Keep-deleted override" = "‏تجاوز الاحتفاظ بالمحذوف‏"; +"Name (A–Z)" = "‏الاسم (أ–ي)‏"; +"No DM thread found with @%@" = "‏لم يتم العثور على محادثة رسائل مع @%@‏"; +"Presets" = "‏الإعدادات المسبقة‏"; +"Recently added" = "‏المُضاف مؤخراً‏"; +"Relative time" = "الوقت النسبي"; +"Relative within" = "نسبي خلال"; +"Remove from list" = "‏إزالة من القائمة‏"; +"Reset" = "‏إعادة تعيين‏"; +"Search" = "‏بحث‏"; +"Search address or place" = "‏بحث عن عنوان أو مكان‏"; +"Search by name or username" = "‏بحث بالاسم أو اسم المستخدم‏"; +"Search by username or name" = "‏البحث باسم المستخدم أو الاسم‏"; +"Select location on map" = "‏تحديد الموقع على الخريطة‏"; +"Set current location" = "‏تعيين الموقع الحالي‏"; +"Set keep-deleted override" = "‏تعيين تجاوز الاحتفاظ بالمحذوف‏"; +"Show map button" = "‏إظهار زر الخريطة‏"; +"Show relative time for dates younger than this many days. 0 disables it." = "عرض الوقت النسبي للتواريخ الأحدث من هذا العدد من الأيام. 0 يعطّله."; +"Show seconds" = "‏إظهار الثواني‏"; +"Sort by" = "‏فرز حسب‏"; +"Thread" = "محادثة"; +"Time" = "الوقت"; +"Use this location" = "‏استخدام هذا الموقع‏"; +"User '%@' not found" = "‏لم يتم العثور على المستخدم '%@'‏"; +"Username (A–Z)" = "‏اسم المستخدم (أ–ي)‏"; +"Within %ld days" = "خلال %ld أيام"; +"Within 1 day" = "خلال يوم واحد"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "‏لم يتم العثور على كلمة مرور‏"; +"No text field found" = "‏لم يتم العثور على حقل نص‏"; +"Refresh Reels?" = "‏تحديث مقاطع ريلز؟‏"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu حساب"; +"%lu loaded" = "تم تحميل %lu"; +"%lu loaded · all loaded" = "تم تحميل %lu · تم تحميل الكل"; +"Doesn't follow you" = "‏لا يتابعك‏"; +"Everyone is already loaded." = "تم تحميل الجميع بالفعل."; +"Filter & sort" = "تصفية وترتيب"; +"Follows me" = "يتابِعني"; +"Follows me first" = "يتابِعني أولاً"; +"Follows you" = "‏يتابعك‏"; +"Hides everyone who doesn't match all picked filters." = "يخفي كل من لا يطابق جميع المرشحات المحددة."; +"Jump to bottom" = "الانتقال إلى الأسفل"; +"Jump to top" = "الانتقال إلى الأعلى"; +"List" = "قائمة"; +"List fully loaded" = "تم تحميل القائمة بالكامل"; +"Load more" = "تحميل المزيد"; +"Loaded more" = "تم تحميل المزيد"; +"Mutuals" = "متابعة متبادلة"; +"Mutuals first" = "المتابعة المتبادلة أولاً"; +"Note copied" = "‏تم نسخ الملاحظة‏"; +"People I follow" = "الأشخاص الذين أتابعهم"; +"People I follow first" = "الأشخاص الذين أتابعهم أولاً"; +"Reverse order" = "عكس الترتيب"; +"Show only" = "إظهار فقط"; +"Verified" = "موثّق"; +"Verified first" = "الموثّقون أولاً"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "‏(غير محدد)‏"; +"720p • progressive • fastest" = "‏720p • تدريجي • الأسرع‏"; +"Add language" = "‏إضافة لغة‏"; +"Album name" = "اسم الألبوم"; +"Are you sure?" = "‏هل أنت متأكد؟‏"; +"Bundle" = "‏الحزمة‏"; +"Copy audio URL" = "‏نسخ رابط الصوت‏"; +"Copy quality info" = "‏نسخ معلومات الجودة‏"; +"Copy video URL" = "‏نسخ رابط الفيديو‏"; +"Could not access reel media" = "‏تعذر الوصول إلى وسائط ريلز‏"; +"Could not access reel photo" = "‏تعذر الوصول إلى صورة مقطع ريلز‏"; +"Could not write file." = "تعذر كتابة الملف."; +"Download all and share?" = "‏تنزيل الكل ومشاركته؟‏"; +"Download Quality" = "‏جودة التنزيل‏"; +"Downloading %d%%" = "‏جارِ التنزيل %d%%‏"; +"e.g. 1000000" = "مثال: 1000000"; +"Localization file not found" = "لم يتم العثور على ملف الترجمة"; +"Enter the language code (e.g. fr, de, ja)" = "‏أدخل رمز اللغة (مثل fr، de، ja)‏"; +"Error" = "خطأ"; +"Extras" = "إضافات"; +"FFmpegKit Debug" = "‏تصحيح أخطاء FFmpegKit‏"; +"File is empty or not a valid .strings file." = "الملف فارغ أو ليس ملف .strings صالح."; +"KD: OFF" = "‏الاحتفاظ: إيقاف‏"; +"Keep-deleted: OFF" = "‏ • الاحتفاظ بالمحذوف: إيقاف‏"; +"Keep-deleted: ON" = "‏ • الاحتفاظ بالمحذوف: تشغيل‏"; +"Later" = "‏لاحقًا‏"; +"Loading" = "‫جارٍ التحميل‬"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "اسم ألبوم الصور الذي يحفظ فيه RyukGram. اتركه فارغًا لاستعادة الافتراضي."; +"Next" = "‏التالي‏"; +"No results found." = "لم يتم العثور على نتائج."; +"No!" = "‏لا!‏"; +"Pick a language to update, or add a new one" = "‫اختر لغة لتحديثها، أو أضف لغة جديدة‬"; +"Preset" = "‏إعداد مسبق‏"; +"Restart" = "‏إعادة تشغيل‏"; +"Restart now" = "إعادة التشغيل الآن"; +"Restart required" = "‏إعادة التشغيل مطلوبة‏"; +"Saved preset \"%@\"" = "تم حفظ الإعداد المسبق \"%@\""; +"selected" = "محدد"; +"Shared icon, or override per button" = "أيقونة مشتركة، أو تجاوز لكل زر"; +"Speed" = "السرعة"; +"Unset" = "غير محدد"; +"Update localization" = "‫تحديث الترجمة‬"; +"Updated %@ (%ld keys). Restart to apply." = "‏تم تحديث %@ (%ld مفاتيح). أعد التشغيل للتطبيق."; +"Use default" = "استخدام الافتراضي"; +"Username or PK" = "اسم المستخدم أو PK"; +"Username or raw user PK" = "اسم المستخدم أو PK الخام للمستخدم"; +"Yes" = "‏نعم‏"; +"You must restart the app to apply this change" = "‏يجب عليك إعادة تشغيل التطبيق لتطبيق هذا التغيير‏"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "‏هل تستمتع بـ RyukGram؟‏"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "‏إنه مجاني، ولا شيء يغادر جهازك. إذا كنت تستمتع باستخدامه، فنجان قهوة يبقيه مستمرًا.‏"; +"Donate" = "‏تبرّع‏"; +"I already did" = "‏تبرّعت بالفعل‏"; +"Maybe later" = "‏ربما لاحقًا‏"; +"This means a lot" = "‏هذا يعني لي الكثير‏"; +"Appreciate the support" = "‏شكرًا على الدعم‏"; +"No worries, enjoy the tweak" = "‏لا بأس، استمتع بالتعديل‏"; +"%@ — GitHub, Telegram, Donate" = "‏%@ — جيت هاب، تيليجرام، تبرع‏"; +"About" = "‏حول‏"; +"Arabic translation" = "‏الترجمة العربية‏"; +"Chinese (Traditional and Simplified) translation" = "ترجمة الصينية (التقليدية والمبسطة)"; +"Credits" = "‏شكر وتقدير‏"; +"Developers" = "‏المطوّرون‏"; +"installed" = "‏مُثبّت‏"; +"Korean translation" = "‏الترجمة الكورية‏"; +"Portuguese (Brazil) translation" = "الترجمة البرتغالية (البرازيل)"; +"Turkish translation" = "الترجمة التركية"; +"Vietnamese translation" = "الترجمة الفيتنامية"; +"French translation" = "الترجمة الفرنسية"; +"Japanese translation" = "الترجمة اليابانية"; +"Code contributions" = "مساهمات في الكود"; +"Following feed mode (from InstaSane)" = "‏وضع يوميات المتابَعين (من InstaSane)‏"; +"latest" = "‏الأحدث‏"; +"Links" = "‏الروابط‏"; +"No releases" = "‏لا توجد إصدارات‏"; +"SCInsta developer" = "‏مطور SCInsta‏"; +"Release notes" = "‏ملاحظات الإصدار‏"; +"Releases" = "‏الإصدارات‏"; +"Report an issue" = "‏الإبلاغ عن مشكلة‏"; +"Russian translation" = "‏الترجمة الروسية‏"; +"RyukGram developer" = "‏مطوّر RyukGram‏"; +"Join Telegram channel" = "‏انضم إلى قناة تيليجرام‏"; +"Source code" = "‏الكود المصدري‏"; +"View on GitHub" = "‏عرض على جيت هاب‏"; +"Spanish translation" = "‏الترجمة الإسبانية‏"; +"Inspirations" = "‏مصادر الإلهام‏"; +"Inspirations, contributors, translators" = "‏مصادر الإلهام، المساهمون، المترجمون‏"; +"Code and research" = "‏الكود والبحث‏"; +"Translators" = "‏المترجمون‏"; +"BHInstagram developer" = "‏مطور BHInstagram‏"; +"OLED theme inspiration" = "‏إلهام مظهر OLED‏"; +"Donate to Ryuk" = "‏ادعم Ryuk‏"; +"Support RyukGram development" = "‏ادعم تطوير RyukGram‏"; +"RyukGram is an independent project inspired by SCInsta." = "‏RyukGram مشروع مستقل مستوحى من SCInsta.‏"; +"Browse changes from previous releases" = "‏تصفح التغييرات من الإصدارات السابقة‏"; +"Code inspiration" = "‏إلهام برمجي‏"; +"zxPluginsInject sideload compatibility shim" = "‏واجهة توافق التحميل الجانبي zxPluginsInject‏"; +"Telegram channel" = "‏قناة تيليجرام‏"; +"Testing and feature suggestions" = "‏الاختبار واقتراحات الميزات‏"; +"Version" = "‏الإصدار‏"; +"Version, credits, and links" = "‏الإصدار والاعتمادات والروابط‏"; +"What's new in RyukGram" = "‏جديد RyukGram‏"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "‏720p • تدريجي • صامت‏"; +"Audio only" = "‏الصوت فقط‏"; +"Audio ready" = "‏الصوت جاهز‏"; +"Audio track %ld" = "المقطع الصوتي %ld"; +"Download video at the highest available quality" = "‏تنزيل الفيديو بأعلى جودة متاحة‏"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "‏تنزيل الفيديو عالي الدقة (HD) عبر بث داش (DASH) وترميزه إلى H.264. يتطلب حزمة FFmpegKit.‏"; +"Encoding in software" = "جارٍ الترميز برمجيًا"; +"Encoding speed" = "‏سرعة الترميز‏"; +"Enhanced downloads" = "‏تنزيلات محسّنة‏"; +"Faster = lower quality" = "‏أسرع = جودة أقل‏"; +"FFmpeg not available" = "‏FFmpeg غير متاح‏"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "‏حزمة FFmpegKit غير متوفرة. قم بتثبيت تطبيق IPA المُحمّل جانبياً أو نسخة _ffmpeg .deb للتفعيل.‏"; +"Hardware encoder isn't available in the background — your quality settings were kept." = "مرمّز الأجهزة غير متاح في الخلفية — تم الحفاظ على إعدادات الجودة الخاصة بك."; +"No audio track found" = "‏لم يتم العثور على مسار صوتي‏"; +"Photo" = "‏صورة‏"; +"Photo quality" = "‏جودة الصورة‏"; +"Size unknown" = "الحجم غير معروف"; +"calculating size…" = "جارٍ حساب الحجم…"; +"silent" = "‏صامت‏"; +"Use highest resolution available" = "‏استخدام أعلى دقة متاحة‏"; +"Video encoder locked up — restart Instagram to encode again" = "توقف مرمّز الفيديو عن الاستجابة — أعد تشغيل إنستغرام للترميز مجددًا"; +"Video only" = "الفيديو فقط"; +"Video-only & every audio track" = "الفيديو فقط وكل المقاطع الصوتية"; +"Video quality" = "‏جودة الفيديو‏"; +"Which quality to download" = "‏الجودة المراد تنزيلها‏"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' غير متوفر في إصدار FFmpegKit هذا — يتم استخدام h264 العتادي بدلاً منه."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-bit 4:2:0. أبطأ بنحو الضعف، تدرّجات أنعم."; +"10-bit colour. Slower, smoother gradients. Software only." = "ألوان 10-bit. أبطأ، تدرّجات أنعم. برمجي فقط."; +"1080p30 baseline." = "أساس 1080p30."; +"4K30 baseline." = "أساس 4K30."; +"8-bit 4:2:0. Universal default." = "8-bit 4:2:0. الافتراضي العام."; +"8-bit 4:2:2 chroma. Niche playback." = "كروما 8-bit 4:2:2. تشغيل محدود."; +"8-bit 4:2:2 chroma. Software only." = "كروما 8-bit 4:2:2. برمجي فقط."; +"8-bit 4:4:4 chroma. Software only." = "كروما 8-bit 4:4:4. برمجي فقط."; +"8-bit 4:4:4 full chroma. Niche playback." = "كروما كاملة 8-bit 4:4:4. تشغيل محدود."; +"8-bit. Best for modern devices." = "8-bit. الأفضل للأجهزة الحديثة."; +"Advanced encoding" = "الترميز المتقدم"; +"Advanced encoding settings" = "إعدادات الترميز المتقدم"; +"Archival quality." = "جودة أرشيفية."; +"Audio bitrate" = "معدل بِت الصوت"; +"Audio channels" = "قنوات الصوت"; +"Audio codec" = "ترميز الصوت"; +"Audio conversion failed" = "فشل تحويل الصوت"; +"Audio sample rate" = "معدل أخذ عينات الصوت"; +"Balanced. libx264 default." = "متوازن. الافتراضي لـ libx264."; +"Best practical quality per bit." = "أفضل جودة عملية لكل بِت."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "ينطبق معدل البِت والقنوات ومعدل العينات فقط عندما يكون الترميز AAC (إعادة الترميز)."; +"Cartoons / anime." = "رسوم متحركة / أنمي."; +"Cinematic. Smaller files." = "سينمائي. ملفات أصغر."; +"Codec" = "الترميز"; +"Container" = "الحاوية"; +"Copy (passthrough)" = "نسخ (تمرير)"; +"CRF quality" = "جودة CRF"; +"Downloading video…" = "جارٍ تنزيل الفيديو…"; +"Easier to play back on weak devices." = "أسهل في التشغيل على الأجهزة الضعيفة."; +"Encoder unavailable" = "المُرمِّز غير متوفر"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "أمثلة: 8M، 12M، 25M، 4500k. اتركه فارغًا للوضع التلقائي."; +"Failed to download video" = "فشل تنزيل الفيديو"; +"Fast, fixed-bitrate, GPU-accelerated." = "سريع، معدل بِت ثابت، مُسرَّع بالـ GPU."; +"Fastest, worst compression." = "الأسرع، أسوأ ضغط."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "ينقل Faststart فهرس MP4 إلى البداية ليبدأ التشغيل قبل اكتمال تخزين الملف مؤقتًا. تزيل \"إزالة البيانات الوصفية\" وسوم المصدر (تاريخ الإنشاء، المعالِج، المُرمِّز) من الملف."; +"FFmpeg documentation" = "وثائق FFmpeg"; +"FFmpeg mux failed" = "فشل دمج FFmpeg"; +"Frame rate" = "معدل الإطارات"; +"H.264 level" = "مستوى H.264"; +"H.264 profile" = "ملف تعريف H.264"; +"Hardware (VideoToolbox)" = "العتاد (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "يدعم العتاد (VideoToolbox) yuv420p فقط — تم تجاهل '%@'. بدّل إلى البرمجي (libx264) لاستخدامه."; +"Keep original audio. Fast." = "الاحتفاظ بالصوت الأصلي. سريع."; +"Keep the source frame rate." = "الاحتفاظ بمعدل إطارات المصدر."; +"Let the encoder pick." = "اترك المُرمِّز يختار."; +"Live-action video." = "فيديو واقعي."; +"Lossless. Huge files." = "بلا فقدان. ملفات ضخمة."; +"Low-latency streaming." = "بث منخفض الكمون."; +"Manual ffmpeg controls in place of Encoding speed." = "أدوات تحكم ffmpeg يدوية بدلاً من سرعة الترميز."; +"Marginal gain, huge time cost." = "مكسب هامشي، تكلفة وقت ضخمة."; +"Max resolution" = "أقصى دقة"; +"Mono" = "أحادي"; +"No tuning. Default." = "بلا ضبط. الافتراضي."; +"None" = "لا شيء"; +"Pixel format" = "تنسيق البكسل"; +"Pixel format ignored" = "تم تجاهل تنسيق البكسل"; +"Preserve film grain." = "الحفاظ على حبيبات الفيلم."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "ينطبق الإعداد المسبق والضبط على البرمجي (libx264) فقط. اقرن ملف التعريف بتنسيق البكسل: high↔yuv420p، high10↔yuv420p10le، high422↔yuv422p، high444↔yuv444p. عدم التطابق يُحوَّل إلى أدنى بصمت. يستخدم العتاد yuv420p دائمًا."; +"Re-encode. Use when source is opus or unsupported." = "إعادة الترميز. استخدمه عندما يكون المصدر opus أو غير مدعوم."; +"Reset advanced encoding" = "إعادة تعيين الترميز المتقدم"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "تعيين معدل بِت للفيديو يبدّل البرمجي إلى معدل بِت ثابت ويتجاهل CRF. اتركه فارغًا لاستخدام CRF. يستخدم العتاد معدل البِت."; +"Slideshow-like content." = "محتوى يشبه عرض الشرائح."; +"Slower, better compression per bit." = "أبطأ، ضغط أفضل لكل بِت."; +"Smaller, visible artefacts." = "أصغر، تشوهات مرئية."; +"Software (libx264)" = "البرمجي (libx264)"; +"Standard 8-bit." = "8-bit قياسي."; +"Stereo" = "ستيريو"; +"Streaming default." = "الافتراضي للبث."; +"Strip metadata" = "إزالة البيانات الوصفية"; +"Top of AAC." = "أعلى مستوى لـ AAC."; +"Tune" = "ضبط"; +"Unknown error" = "خطأ غير معروف"; +"Very high quality." = "جودة عالية جدًا."; +"Video bitrate" = "معدل بِت الفيديو"; +"Video codec" = "ترميز الفيديو"; +"Visually lossless. RyukGram default." = "بلا فقدان مرئي. الافتراضي لـ RyukGram."; +"Widest compatibility, no B-frames." = "أوسع توافق، بلا إطارات B."; +"Worst quality." = "أسوأ جودة."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "‏إيماءات الضغط المطول‏"; +"Inserts a button in the profile navigation header" = "‏يدرج زرًا في رأس التنقل بالملف الشخصي‏"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "‏يضيف زر إجراء ريوك غرام إلى رأس الملف الشخصي مع خيارات نسخ وعرض الصورة ومشاركة وحفظ ومعلومات الملف. يؤدي النقر إلى فتح القائمة افتراضيًا؛ يمكنك تغيير سلوك النقر من قائمة التهيئة.‏"; +"Configure menu" = "‏تهيئة القائمة‏"; +"Reorder, enable/disable, set default tap, show date" = "‏إعادة الترتيب، تفعيل/تعطيل، ضبط النقر الافتراضي، إظهار التاريخ‏"; +"Reorder, enable/disable, set default tap" = "‏إعادة الترتيب، تفعيل/تعطيل، ضبط النقر الافتراضي‏"; +"RyukGram profile actions" = "‏إجراءات ريوك غرام للملف الشخصي‏"; +"Reorder sections" = "‏إعادة ترتيب الأقسام‏"; +"Drag the ≡ handle to reorder sections." = "‏اسحب مقبض ≡ لإعادة ترتيب الأقسام.‏"; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "‏اسحب مقبض ≡ لإعادة الترتيب. أوقف الصف لإخفائه من القائمة. حدّد قسمًا كقائمة فرعية لطي إجراءاته خلف خيار واحد.‏"; +"Show as submenu" = "‏إظهار كقائمة فرعية‏"; +"Collapse this section's actions behind a single entry" = "‏طي إجراءات هذا القسم خلف خيار واحد‏"; +"Configure: %@" = "‏تهيئة: %@‏"; +"What happens on a single tap. Long-press always opens the full menu." = "‏ما الذي يحدث عند النقر المفرد. الضغط المطول يفتح القائمة الكاملة دائمًا.‏"; +"Reset to defaults" = "‏إعادة التعيين إلى الافتراضي‏"; +"This will restore the default sections, order, and toggles for this menu." = "‏سيؤدي هذا إلى استعادة الأقسام والترتيب والمفاتيح الافتراضية لهذه القائمة.‏"; +"Audio & visibility" = "‏الصوت والرؤية‏"; +"DM disappearing media" = "‏الوسائط المختفية في الرسائل الخاصة‏"; +"Bulk download" = "‏تنزيل جماعي‏"; +"Feed settings" = "‏إعدادات اليوميات‏"; +"Reels settings" = "‏إعدادات ريلز‏"; +"Profile settings" = "‏إعدادات الملف الشخصي‏"; +"Stories settings" = "‏إعدادات القصص‏"; +"Copy ID" = "‏نسخ المعرف‏"; +"Copy Info" = "‏نسخ المعلومات‏"; +"Copy all info" = "‫نسخ كل المعلومات‬"; +"Copy media URL" = "‏نسخ رابط الوسائط‏"; +"Copy profile link" = "‏نسخ رابط الملف الشخصي‏"; +"Copy username" = "‏نسخ اسم المستخدم‏"; +"Download" = "‏تنزيل‏"; +"Download to Gallery" = "‏تنزيل إلى المعرض‏"; +"Download all to Gallery" = "‏تنزيل الكل إلى المعرض‏"; +"Exclude/include user" = "‏استبعاد/تضمين المستخدم‏"; +"Mute / unmute audio" = "‏كتم / إلغاء كتم الصوت‏"; +"Save picture to Gallery" = "‏حفظ الصورة في المعرض‏"; +"Share picture" = "‏مشاركة الصورة‏"; +"View picture" = "‏عرض الصورة‏"; +"Bio" = "‏البايو‏"; +"ID" = "‏المعرف‏"; +"Info" = "‏المعلومات‏"; +"Profile info" = "‫معلومات الملف الشخصي‬"; +"Profile link" = "‏رابط الملف الشخصي‏"; +"Picture not found" = "‏الصورة غير موجودة‏"; +"Private profile" = "‏ملف شخصي خاص‏"; +"Profile unavailable" = "‏الملف الشخصي غير متاح‏"; +"Public profile" = "‏ملف شخصي عام‏"; +"Username" = "‏اسم المستخدم‏"; +"Followers: %@" = "‏المتابِعون: %@‏"; +"Following: %@" = "‏المتابَعون: %@‏"; +"Copied %@" = "‏تم نسخ %@‏"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "‏(غير معروف)‏"; +"Added %lu" = "تمت إضافة %lu"; +"All files deleted" = "‏تم حذف جميع الملفات‏"; +"Browsing" = "‏التصفح‏"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "تم العثور على %lu عنصرًا محفوظًا من إصدار سابق. استعادتها إلى معرضك الآن؟"; +"Gallery data from a previous version was found. Restore it now?" = "تم العثور على بيانات معرض من إصدار سابق. استعادتها الآن؟"; +"Gallery restored" = "تمت استعادة المعرض"; +"Import failed" = "فشل الاستيراد"; +"Import to Gallery" = "استيراد إلى المعرض"; +"Imported" = "مستورد"; +"Importing…" = "جارٍ الاستيراد…"; +"Not Now" = "ليس الآن"; +"Nothing imported" = "لم يتم استيراد شيء"; +"Restore" = "استعادة"; +"Restore Gallery" = "استعادة المعرض"; +"Restore failed" = "فشلت الاستعادة"; +"Restoring gallery…" = "جارٍ استعادة المعرض…"; +"By source" = "‏حسب المصدر‏"; +"By type" = "‏حسب النوع‏"; +"By user" = "‏حسب المستخدم‏"; +"Clear filters" = "‏مسح المرشحات‏"; +"Comment" = "‏تعليق‏"; +"Create" = "‏إنشاء‏"; +"Create & Move" = "‏إنشاء ونقل‏"; +"Delete %@?" = "‏حذف %@؟‏"; +"Delete all files" = "‏حذف جميع الملفات‏"; +"Delete all images" = "‏حذف جميع الصور‏"; +"Delete all videos" = "‏حذف جميع الفيديوهات‏"; +"Delete by user" = "‏حذف حسب المستخدم‏"; +"Delete DM media" = "‏حذف وسائط الرسائل الخاصة‏"; +"Delete feed posts" = "‏حذف منشورات اليوميات‏"; +"Delete files" = "‏حذف الملفات‏"; +"Delete Folder" = "‏حذف المجلد‏"; +"Delete from Gallery?" = "‏حذف من المعرض؟‏"; +"Delete profile pictures" = "‏حذف صور الملف الشخصي‏"; +"Delete reels" = "‏حذف ريلز‏"; +"Delete selected" = "‏حذف المحدد‏"; +"Delete Selected Files?" = "‏حذف الملفات المحددة؟‏"; +"Delete stories" = "‏حذف القصص‏"; +"Delete thumbnails" = "‏حذف الصور المصغّرة‏"; +"Deleted from Gallery" = "‏تم الحذف من المعرض‏"; +"Deleted selected files" = "‫تم حذف الملفات المحددة‬"; +"Deselect All" = "‫إلغاء تحديد الكل‬"; +"DM media deleted" = "‏تم حذف وسائط الرسائل الخاصة‏"; +"DMs" = "‏الرسائل‏"; +"Each user appears as a folder next to your real folders." = "‏كل مستخدم يظهر كمجلد بجانب مجلداتك الحقيقية.‏"; +"Each user gets a labelled section in the grid/list." = "‏كل مستخدم يحصل على قسم باسمه في الشبكة/القائمة.‏"; +"Enable gallery" = "‏تفعيل المعرض‏"; +"Failed" = "‏فشل‏"; +"Failed to delete" = "‏فشل الحذف‏"; +"Favorite" = "‏تفضيل‏"; +"Favorite selected" = "‏تفضيل المحدد‏"; +"Favorites only" = "‏المفضلة فقط‏"; +"Feed posts deleted" = "‏تم حذف منشورات اليوميات‏"; +"Files deleted" = "‏تم حذف الملفات‏"; +"Flat list. No grouping." = "‏قائمة مسطحة. بدون تجميع.‏"; +"Folder name" = "‏اسم المجلد‏"; +"Folders" = "‏مجلدات‏"; +"From RyukGram Gallery" = "‏صوت من معرض ريوك غرام‏"; +"Gallery" = "‏المعرض‏"; +"Gallery only" = "‏المعرض فقط‏"; +"Gallery save mode" = "‏وضع الحفظ في المعرض‏"; +"Gallery Settings" = "‏إعدادات المعرض‏"; +"GIFs" = "‏صور جيف (GIFs)‏"; +"Grid columns" = "‏أعمدة الشبكة‏"; +"Grid view" = "‏عرض شبكي‏"; +"Group by user" = "‏تجميع حسب المستخدم‏"; +"Group first by" = "‏التجميع أولاً حسب‏"; +"Order by" = "‏الترتيب حسب‏"; +"Favorites first" = "‏المفضلة أولاً‏"; +"Any time" = "‏أي وقت‏"; +"This year" = "‏هذا العام‏"; +"%ld columns" = "‏%ld أعمدة‏"; +"Hold DM tab to open gallery" = "‫اضغط على تبويب الرسائل لفتح المعرض‬"; +"Images" = "‏الصور‏"; +"Images deleted" = "‏تم حذف الصور‏"; +"Images first" = "‏الصور أولاً‏"; +"item" = "‏عنصر‏"; +"items" = "‏عناصر‏"; +"Largest first" = "‏الأكبر أولاً‏"; +"List view" = "‏عرض قائمة‏"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "‫اضغط مطولاً على زر الرسائل في شريط التبويب السفلي لفتح معرض ريوك غرام‬"; +"Manage" = "‏إدارة‏"; +"More" = "‏المزيد‏"; +"Move selected" = "‏نقل المحدد‏"; +"Move to Folder" = "‏نقل إلى مجلد‏"; +"Name A-Z" = "‏الاسم أ-ي‏"; +"Name Z-A" = "‏الاسم ي-أ‏"; +"New Folder" = "‏مجلد جديد‏"; +"New folder…" = "‏مجلد جديد…‏"; +"Newest first" = "‏الأحدث أولاً‏"; +"No files in Gallery" = "‏لا توجد ملفات في المعرض‏"; +"No files to delete" = "‏لا توجد ملفات للحذف‏"; +"No matching files" = "‏لا توجد ملفات مطابقة‏"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "‏مكتبة على الجهاز للوسائط التي تم تنزيلها عبر ريوك غرام. يحدد وضع الحفظ المكان الذي يكتب فيه 'تنزيل إلى الصور' فعليًا.‏"; +"Open" = "‏فتح‏"; +"Open Original Post" = "‏فتح المنشور الأصلي‏"; +"Options" = "‏الخيارات‏"; +"Other" = "‏أخرى‏"; +"Photos + Gallery" = "‏الصور + المعرض‏"; +"Photos only" = "‏الصور فقط‏"; +"Profile pictures deleted" = "‏تم حذف صور الملف الشخصي‏"; +"Reels deleted" = "‏تم حذف ريلز‏"; +"Rename" = "‏إعادة تسمية‏"; +"Rename Folder" = "‏إعادة تسمية المجلد‏"; +"Root" = "‏الجذر‏"; +"Save media from the preview screen\nto see it here." = "‏احفظ الوسائط من شاشة المعاينة\nلتظهر هنا.‏"; +"Saved %lu items to Gallery" = "‏تم حفظ %lu من العناصر في المعرض‏"; +"Saved to Gallery" = "‏تم الحفظ في المعرض‏"; +"Saving to Gallery" = "‏جارِ الحفظ في المعرض...‏"; +"Search users" = "‏بحث عن المستخدمين‏"; +"Sections" = "‏أقسام‏"; +"Select All" = "‫تحديد الكل‬"; +"Share" = "‏مشاركة‏"; +"Share selected" = "‏مشاركة المحدد‏"; +"Show favorites at top" = "‏إظهار المفضلة في الأعلى‏"; +"Show gallery entries in download menus and unlock the gallery button" = "‏إظهار خيارات المعرض في قوائم التنزيل وفتح زر المعرض‏"; +"Smallest first" = "‏الأصغر أولاً‏"; +"Source" = "‏المصدر‏"; +"Source user" = "‏المستخدم المصدر‏"; +"Storage" = "‏التخزين‏"; +"Stories deleted" = "‏تم حذف القصص‏"; +"Story" = "‏القصة‏"; +"The original content may no longer exist." = "‫قد لا يكون المحتوى الأصلي موجوداً بعد الآن.‬"; +"This folder contains %ld file(s). They will be moved to the parent folder." = "‏يحتوي هذا المجلد على %ld من الملفات. سيتم نقلها إلى المجلد الأصلي.‏"; +"This folder is empty." = "‏هذا المجلد فارغ.‏"; +"This will permanently remove %ld file%@ from the gallery." = "‏سيؤدي هذا إلى إزالة %ld %@ نهائيًا من المعرض.‏"; +"This will permanently remove %ld file(s)." = "‏سيؤدي هذا إلى إزالة %ld من الملفات نهائيًا.‏"; +"This will permanently remove this file from the gallery." = "‏سيؤدي هذا إلى إزالة هذا الملف نهائيًا من المعرض.‏"; +"Thumb" = "‏مصغّرة‏"; +"Thumbnails deleted" = "‏تم حذف الصور المصغّرة‏"; +"to Gallery" = "‏إلى المعرض‏"; +"Total files" = "‏إجمالي الملفات‏"; +"Total size" = "‏الحجم الإجمالي‏"; +"Type" = "‏النوع‏"; +"Unable to open original post" = "‏تعذر فتح المنشور الأصلي‏"; +"Unable to open profile" = "‏تعذر فتح الملف الشخصي‏"; +"Unfavorite" = "‏إلغاء التفضيل‏"; +"Unknown user" = "‏مستخدم غير معروف‏"; +"User files deleted" = "‏تم حذف ملفات المستخدم‏"; +"Videos" = "‏الفيديوهات‏"; +"Videos deleted" = "‏تم حذف الفيديوهات‏"; +"Videos first" = "‏الفيديوهات أولاً‏"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "‏عند التفعيل، يتم تثبيت المفضلة فوق الملفات الأخرى ضمن سياق الفرز والمجلد الحالي.‏"; +"Where 'Download to Photos' actually writes when gallery is on" = "‏المكان الذي يكتب فيه 'تنزيل إلى الصور' فعليًا عند تفعيل المعرض‏"; +"Yesterday" = "‏أمس‏"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "‫زر اختصار الصفحة الرئيسية‬"; +"Show the extra button on the home top bar" = "‫اضبط الزر الإضافي في الشريط العلوي للصفحة الرئيسية‬"; +"Auto" = "‫تلقائي‬"; +"Icon" = "‫الأيقونة‬"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "‫اسحب مقبض ≡ لإعادة الترتيب. أوقف صفًا لإخفاء تلك الوجهة. عند تفعيل إجراء واحد ينفذه الضغط؛ عند تفعيل اثنين أو أكثر يعرض الضغط قائمة.‬"; +"Changelog" = "‫سجل التغييرات‬"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "يضيف زر اختصار إضافيًا بجوار زر + لإنشاء منشور في الشريط العلوي للصفحة الرئيسية."; +"All buttons" = "كل الأزرار"; +"System" = "النظام"; +"Instagram language" = "لغة Instagram"; +"Choose icon, reorder actions, and enable menu items" = "اختر الأيقونة، وأعد ترتيب الإجراءات، وفعّل عناصر القائمة"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "اختر الأيقونة المعروضة في الشريط العلوي للصفحة الرئيسية. يستخدم \"تلقائي\" أيقونة الإجراء المحدد عند تفعيل إجراء واحد فقط."; +"Configure button" = "تكوين الزر"; +"Global Action Icons" = "أيقونات الإجراءات العامة"; +"Interface" = "الواجهة"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "تجاوز الأيقونة لزر محدد. تتبع الأزرار المتروكة على \"افتراضي\" الأيقونة المشتركة أعلاه."; +"Per button" = "لكل زر"; +"Show home shortcut button" = "إظهار زر اختصار الصفحة الرئيسية"; +"%ld new" = "%ld جديد"; +"Tab bar" = "شريط التبويبات"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "إشعارات داخل التطبيق موحدة. اختر النمط والموضع والتوجيه لكل إجراء (كبسولة / إنستغرام أصلي / إيقاف)."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "اسحب الإشعار لتحديد موضعه"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "اسحب الإشعار إلى المكان الذي تريده. أعلى من المنتصف ينزلق للأسفل والأسفل ينزلق للأعلى."; + +"Notifications" = "الإشعارات"; +"Appearance" = "المظهر"; +"Routing" = "التوجيه"; +"Style" = "النمط"; +"Position" = "الموضع"; +"Stack size" = "حجم الكومة"; +"Duration" = "المدة"; +"Default surface" = "السطح الافتراضي"; +"System notifications" = "إشعارات النظام"; +"Mirror to notification centre" = "النسخ إلى مركز الإشعارات"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "عندما يكون التطبيق في الخلفية، تُرسل التنبيهات إلى مركز إشعارات iOS بدلاً من ذلك حتى لا تفوتك."; +"Clear when app opens" = "مسح عند فتح التطبيق"; +"Remove mirrored notifications from notification centre when you return to the app." = "إزالة الإشعارات المنسوخة من مركز الإشعارات عند العودة إلى التطبيق."; +"Background mirror" = "النسخ في الخلفية"; +"Show while app is open" = "العرض أثناء فتح التطبيق"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "تسليم الإشعارات المنعكسة كلافتات نظام أثناء استخدامك للتطبيق أيضًا، وليس فقط في الخلفية."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "يعود المظهر والتوجيه وإشعارات النظام وكل تجاوز لكل إجراء إلى الإعدادات الافتراضية."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "يستخدم إذن إشعارات إنستغرام. التخصيص لكل إجراء موجود في قائمة كل إجراء ضمن النسخ في الخلفية؛ الإجراءات المضبوطة على إيقاف لا تُنسخ أبدًا."; +"Enable notifications" = "تمكين الإشعارات"; +"Haptic feedback" = "استجابة لمسية"; +"Preview pill" = "معاينة الكبسولة"; +"Preview download pill" = "معاينة كبسولة التنزيل"; +"Preview loading pill" = "معاينة كبسولة التحميل"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "المفتاح الرئيسي. عند الإيقاف، لا تظهر أي إشعارات."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "إشعارات داخل التطبيق موحدة. كل ملاحظات RyukGram (التنزيلات، النسخ، الأخطاء، رسائل النجاح) تمر من هنا."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal: ضبابية مسطحة. Colorful: ملونة بالنبرة. Glow: هالة ملونة. Island: كبسولة الجزيرة الديناميكية."; +"Top slides down, bottom slides up." = "الأعلى ينزلق للأسفل، الأسفل ينزلق للأعلى."; +"How many pills can show at once before queueing." = "عدد الكبسولات التي يمكن عرضها معًا قبل الانتظار."; +"Multiplies how long toasts stay on screen." = "يضاعف مدة بقاء الإشعارات على الشاشة."; +"Vibration on success/error pills." = "اهتزاز عند كبسولات النجاح/الخطأ."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "للإجراءات بنمط الإشعار يمكنك الاختيار بين كبسولتنا وإشعار إنستغرام الأصلي. التجاوزات لكل إجراء أدناه."; +"What to use when an action doesn't have its own override." = "ما يُستخدم عندما لا يحتوي إجراء على تجاوز خاص."; +"Tap to cycle: info → success → warning → error" = "اضغط للتنقل: معلومات ← نجاح ← تحذير ← خطأ"; +"Tap to cycle between success and failure" = "اضغط للتبديل بين النجاح والفشل"; +"Progress UI — pill or off only." = "واجهة التقدم — كبسولة أو إيقاف فقط."; +"Minimal" = "بسيط"; +"Colorful" = "ملوّن"; +"Glow" = "توهّج"; +"Island" = "جزيرة"; +"Top" = "أعلى"; +"Bottom" = "أسفل"; +"Custom pill" = "كبسولة مخصصة"; +"IG native toast" = "إشعار إنستغرام الأصلي"; +"Short" = "قصير"; +"Normal" = "عادي"; +"Long" = "طويل"; +"Very long" = "طويل جدًا"; +"Downloads & saving" = "التنزيلات والحفظ"; +"Copy to clipboard" = "نسخ إلى الحافظة"; +"Read receipts & seen" = "إيصالات القراءة والمشاهدة"; +"Block, exclude & pin" = "حظر واستثناء وتثبيت"; +"Stories & messages" = "القصص والرسائل"; +"Voice & audio" = "الصوت والمقاطع"; +"Errors" = "الأخطاء"; +"Download progress" = "تقدم التنزيل"; +"Bulk download progress" = "تقدم التنزيل المجمع"; +"Repost progress" = "تقدّم إعادة النشر"; +"Copied post / reel URL" = "تم نسخ رابط المنشور/الريل"; +"Copied comment text" = "تم نسخ نص التعليق"; +"Copied GIF link" = "تم نسخ رابط GIF"; +"Copied note text" = "تم نسخ نص الملاحظة"; +"Copied profile info" = "تم نسخ معلومات الملف الشخصي"; +"Copied audio URL" = "تم نسخ رابط الصوت"; +"Copied quality picker URL" = "تم نسخ رابط منتقي الجودة"; +"Copied unlocked password" = "تم نسخ كلمة المرور المفتوحة"; +"Copied description text" = "تم نسخ نص الوصف"; +"DM seen / read receipts" = "إيصالات قراءة الرسائل المباشرة"; +"Story seen / read receipts" = "إيصالات قراءة القصص"; +"Someone read your message" = "قرأ أحدهم رسالتك"; +"User blocked / unblocked" = "تم حظر / إلغاء حظر المستخدم"; +"Chat added / removed from exclude" = "تم إضافة / إزالة المحادثة من الاستثناءات"; +"Story user added / removed from exclude" = "تم إضافة / إزالة مستخدم القصة من الاستثناءات"; +"Share-sheet recipient pinned" = "تم تثبيت المستلم في ورقة المشاركة"; +"Unsent message detected" = "تم اكتشاف رسالة غير مرسلة"; +"Reaction removed detected" = "تم اكتشاف إزالة تفاعل"; +"%lu messages unsent" = "تم إلغاء إرسال %lu رسالة"; +"%lu reactions removed" = "تمت إزالة %lu تفاعل"; +"%lu chats marked seen" = "تم تعليم %lu محادثة كمقروءة"; +"%lu stories marked seen" = "تم تعليم %lu قصة كمشاهَدة"; +"%lu of your messages read" = "تمت قراءة %lu من رسائلك"; +"%lu notifications" = "%lu إشعار"; +"Live comments toggled" = "تم تبديل تعليقات البث المباشر"; +"Custom GIF sent" = "تم إرسال GIF مخصص"; +"GIF favorited / unfavorited" = "تمت إضافة GIF إلى المفضلة / إزالته"; +"Voice DM sent" = "تم إرسال رسالة صوتية"; +"Audio extraction status" = "حالة استخراج الصوت"; +"Profile Analyzer complete" = "اكتمل محلل الملف الشخصي"; +"Profile Analyzer progress" = "تقدّم محلل الملف الشخصي"; +"Media extraction failed" = "فشل استخراج الوسائط"; +"Permission denied" = "تم رفض الإذن"; +"Validation error" = "خطأ في التحقق"; +"Network / API error" = "خطأ في الشبكة / API"; +"Action error fallback" = "احتياطي خطأ الإجراء"; +"Unlock failed" = "فشل فتح القفل"; +"Chat locked / unlocked" = "قفل / فتح المحادثة"; +"Invalid clipboard link" = "رابط الحافظة غير صالح"; +"Experimental flag warning" = "تحذير العلامة التجريبية"; +"Settings action confirmed" = "تم تأكيد إجراء الإعدادات"; +"Cache clearing progress" = "تقدم مسح الذاكرة المؤقتة"; +"Backup export / import" = "تصدير / استيراد النسخة الاحتياطية"; +"Other / uncategorized" = "أخرى / غير مصنفة"; +"Comment copied" = "تم نسخ التعليق"; +"FFmpeg log copied" = "تم نسخ سجل FFmpeg"; +"GIF inserted" = "تم إدراج GIF"; +"Story marked as seen" = "تم تعليم القصة كمشاهدة"; +"Saved" = "تم الحفظ"; +"Tap to retry" = "اضغط لإعادة المحاولة"; +"Looks great" = "يبدو رائعًا"; +"Something broke" = "حدث خطأ ما"; +"Just so you know" = "للعلم فقط"; +"Success preview" = "معاينة النجاح"; +"Error preview" = "معاينة الخطأ"; +"Warning preview" = "معاينة التحذير"; +"Info preview" = "معاينة المعلومات"; +"Preview download…" = "معاينة التنزيل…"; +"Colors" = "‏الألوان‏"; +"+ Add new language" = "‏+ إضافة لغة جديدة‏"; +"Each chat can override this in the list" = "‏يمكن لكل محادثة تجاوز هذا في القائمة‏"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "عند التشغيل، طلبات موقع Instagram تُرجع موقعك الوهمي المحدد. زر الخريطة يضيف اختصارًا سريعًا داخل خريطة الأصدقاء."; +"Tap a preset to make it active. Swipe left to delete." = "اضغط على إعداد مسبق لتفعيله. اسحب لليسار للحذف."; +"Override Instagram location reads." = "تجاوز قراءات موقع Instagram."; +"Show the quick button in Friends Map." = "إظهار الزر السريع في خريطة الأصدقاء."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "اختر كيف تُكتب التواريخ المطلقة. \"افتراضي\" يترك تنسيق IG الخاص دون تغيير. اسحب تنسيقًا مخصصًا لتعديله أو حذفه."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "التواريخ الأحدث من العتبة تظهر كوقت نسبي. التواريخ الأقدم تعود إلى التنسيق المطلق. “دمج مع التاريخ” يعرض كليهما — “5 يناير 2026 (2س)” أو “2س – 5 يناير 2026”."; +"Compact style" = "نمط مدمج"; +"Example: “1h” instead of “1 hour ago”" = "مثال: “1h” بدلًا من “mنذ ساعة”"; +"Example: “Jan 5, 2026 (2h)”" = "مثال: “Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "واجهات صوت iOS لم تستطع معالجة هذا الملف%@%@\n\nيمكنك محاولة إرساله إلى Instagram كما هو، أو فتح مشكلة دعم."; +"Combine with date" = "دمج مع التاريخ"; +"Absolute then relative" = "مطلق ثم نسبي"; +"Relative – absolute" = "نسبي – مطلق"; +"Relative when young, absolute when older." = "نسبي للحديث، مطلق للقديم."; +"Example: “2h – Jan 5, 2026”" = "مثال: “2س – 5 يناير 2026”"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "التقاط الوسائط ذات العرض الواحد التي يتم إلغاؤها أثناء غيابك. ⚠️ قد يستهلك البطارية"; +"Disappearing (view-once) media" = "وسائط مؤقتة (عرض واحد)"; +"Disappearing media expired before it could be saved" = "انتهت صلاحية الوسائط المؤقتة قبل أن يتسنى حفظها"; +"Disappearing media — gone before it could be saved" = "وسائط مؤقتة — اختفت قبل أن يتسنى حفظها"; +"Disappearing only" = "المؤقتة فقط"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "يجبر Instagram على الاستمرار في العمل بالخلفية ليتمكن من التقاط الوسائط المؤقتة التي يلغيها أحدهم بينما لست داخل التطبيق.\n\nمفيد بشكل أساسي للوسائط ذات العرض الواحد — الصور/الفيديوهات العادية عادةً ما يمكن استعادتها بدونه. ⚠️ قد يستهلك بطاريتك بشكل كبير، ولا يمكنه التقاط أي شيء إذا أغلقت Instagram إجبارياً من مبدّل التطبيقات.\n\nهل تريد تفعيله؟"; +"Keep Instagram active in background" = "إبقاء Instagram نشطاً في الخلفية"; +"Media couldn’t be downloaded — the link expired" = "تعذّر تنزيل الوسائط — انتهت صلاحية الرابط"; +"Media wasn’t available to save" = "لم تكن الوسائط متاحة للحفظ"; +"Retrying download…" = "جارٍ إعادة المحاولة…"; +"Try to download again" = "إعادة محاولة التنزيل"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "سجل إيصالات القراءة"; +"Date" = "التاريخ"; +"Reads" = "قراءات"; +"Person" = "شخص"; +"Chat" = "محادثة"; +"%@ · on @%@" = "%@ · على @%@"; +"%lu read · %@" = "%lu قراءة · %@"; +"%lu reads · %@" = "%lu قراءة · %@"; +"%lu reads · %lu reader · %@" = "%lu قراءة · %lu قارئ · %@"; +"%lu reads · %lu readers · %@" = "%lu قراءة · %lu قارئ · %@"; +"Clear all" = "مسح الكل"; +"Clear all records" = "مسح كل السجلات"; +"Detects when others read your messages and notifies you" = "يكتشف متى يقرأ الآخرون رسائلك ويُعلمك"; +"Ignored people & chats" = "الأشخاص والمحادثات المتجاهَلة"; +"Ignored" = "متجاهَل"; +"Log group chats" = "تسجيل المحادثات الجماعية"; +"Most reads" = "الأكثر قراءة"; +"Notifies and records when someone reads a message you sent" = "يُعلمك ويسجّل عندما يقرأ شخص رسالة أرسلتها"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "لا يوجد شيء متجاهَل. اضغط مطولًا على شخص في السجل لإيقاف تسجيله."; +"Nothing matches your filters." = "لا شيء يطابق عوامل التصفية."; +"Read %@ · %@" = "قُرئت %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "تسجيل القراءات على هذا الجهاز. إيقاف = إشعارات فقط دون تخزين"; +"Resume logging" = "استئناف التسجيل"; +"Search by username" = "البحث باسم المستخدم"; +"Stop logging %@" = "إيقاف تسجيل %@"; +"Delete records" = "حذف السجلات"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "عند التفعيل، يصلك إشعار عندما يقرأ أحدهم رسالتك. أوقف \"الحفظ في السجل\" لوضع الإشعارات فقط. اضغط مطولًا على شخص في السجل لإيقاف تسجيله."; +"Swipe to remove. Removing resumes logging for that person or chat." = "اسحب للإزالة. الإزالة تستأنف تسجيل ذلك الشخص أو المحادثة."; +"Updating names and photos" = "تحديث الأسماء والصور"; +"Your message" = "رسالتك"; +"read your message in %@" = "قرأ رسالتك في %@"; +"read your message" = "قرأ رسالتك"; +"Also track reads in group chats. Off by default — groups can be noisy" = "تتبّع القراءات في المحادثات الجماعية أيضًا. معطّل افتراضيًا — المجموعات قد تكون مزعجة"; +"Refreshing…" = "جارٍ التحديث…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "توليد بصمة جديدة"; +"New device fingerprint" = "بصمة جهاز جديدة"; +"Roll new ID" = "توليد معرّف جديد"; +"Roll + clear IG data" = "توليد + مسح بيانات إنستغرام"; +"Generate fresh device identifiers" = "توليد معرّفات جهاز جديدة"; +"Enter ID manually…" = "إدخال المعرّف يدويًا…"; +"Manual device ID" = "معرّف جهاز يدوي"; +"Paste or type the UUID this device should report." = "الصق أو اكتب الـ UUID الذي يجب أن يبلّغ عنه هذا الجهاز."; +"Device ID set" = "تم ضبط معرّف الجهاز"; +"New fingerprint ready" = "بصمة جديدة جاهزة"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "هل تريد إعادة تشغيل إنستغرام الآن لتُطبَّق هوية الجهاز الجديدة من بداية نظيفة؟"; +"Copy current ID" = "نسخ المعرّف الحالي"; +"Revert to my real device ID" = "العودة إلى معرّف جهازي الحقيقي"; +"Restore the original, stop masking" = "استعادة الأصلي وإيقاف الإخفاء"; +"Spoofing off" = "الانتحال متوقف"; +"Relaunch now" = "إعادة التشغيل الآن"; +"Relaunch to apply" = "أعد التشغيل للتطبيق"; +"Clear device & relaunch" = "مسح الجهاز وإعادة التشغيل"; +"Clear device & relaunch?" = "مسح الجهاز وإعادة التشغيل؟"; +"Clear & relaunch" = "مسح وإعادة تشغيل"; +"Full reset to a brand-new device" = "إعادة ضبط كاملة إلى جهاز جديد تمامًا"; +"Device ID" = "معرّف الجهاز"; +"Hide button until relaunch" = "إخفاء الزر حتى إعادة التشغيل"; +"Device identity" = "هوية الجهاز"; +"Masked" = "مُخفى"; +"Real" = "حقيقي"; +"Show button on login screen" = "إظهار الزر في شاشة تسجيل الدخول"; +"Floating Device ID button while signed out" = "زر معرّف الجهاز العائم أثناء عدم تسجيل الدخول"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "يُخفي المعرّفات التي يستخدمها إنستغرام لبصمة هذا الجهاز: معرّف الجهاز، ومعرّف جهاز العائلة، ومعرّف المورّد، ومعرّف الآلة. تُطبَّق التغييرات بعد إعادة التشغيل. تظهر عناصر التحكم نفسها أيضًا في شاشة تسجيل الدخول."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "ينسى كل بيانات تسجيل الدخول وملفات تعريف الارتباط وهوية الجهاز المخزّنة، ثم يعيد التشغيل ليبدأ إنستغرام كجهاز جديد تمامًا. ستحتاج إلى تسجيل الدخول مجددًا بعد ذلك."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "يولّد معرّف جهاز ومعرّف جهاز عائلة ومعرّف مورّد جديدة ويمسح معرّف الآلة ليُعيد إنستغرام تسجيل الجهاز كجهاز جديد. أو امسح أيضًا بيانات تسجيل الدخول المحفوظة لإعادة ضبط كاملة."; +"Apple attestation" = "توثيق Apple"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "يحظر توثيق جهاز Apple الذي يستخدمه إنستغرام (DeviceCheck و App Attest). هذه مرتبطة بالعتاد ولا يمكن تغييرها، لذا تظل تربط الجهاز عبر عمليات إعادة الضبط. الحظر يجعل إنستغرام يرى جهازًا لا يدعمها. يعمل فقط أثناء تفعيل الإخفاء."; +"Block Apple device attestation" = "حظر توثيق جهاز Apple"; +"Stop the hardware attestation that links the device" = "إيقاف توثيق العتاد الذي يربط الجهاز"; +"Block Apple attestation: %@" = "حظر توثيق Apple: %@"; +"Attestation blocked" = "تم حظر التوثيق"; +"Attestation allowed" = "التوثيق مسموح"; +"Roll + clear, then sign in fresh" = "توليد + مسح، ثم تسجيل دخول جديد"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "طلبات المتابعة"; +"Show follow requests" = "عرض طلبات المتابعة"; +"Check now" = "افحص الآن"; +"Reset tracked data" = "إعادة تعيين البيانات المتتبَّعة"; +"Enable tracker" = "تفعيل المتتبِّع"; +"Log requests and check outcomes" = "تسجيل الطلبات والتحقق من النتائج"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "يسجّل طلبات المتابعة التي ترسلها وتستقبلها، ويرصد من يلغي طلبًا قبل أن تردّ. كل ذلك على الجهاز."; +"What to track" = "ما الذي تتبعه"; +"Requests I send" = "الطلبات التي أرسلها"; +"To private accounts" = "إلى الحسابات الخاصة"; +"Requests I receive" = "الطلبات التي أستلمها"; +"From people who want to follow you" = "من أشخاص يريدون متابعتك"; +"Background check" = "الفحص في الخلفية"; +"Check interval" = "فترة الفحص"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "عدد مرات التحقق من النتائج أثناء فتح التطبيق. يتحقق أيضًا عند التشغيل وعند فتح القائمة."; +"Off (manual only)" = "إيقاف (يدوي فقط)"; +"Every 15 minutes" = "كل 15 دقيقة"; +"Every 30 minutes" = "كل 30 دقيقة"; +"Every hour" = "كل ساعة"; +"Every 6 hours" = "كل 6 ساعات"; +"My request accepted" = "تم قبول طلبي"; +"A private account accepted you" = "قبِلك حساب خاص"; +"My request declined" = "تم رفض طلبي"; +"No longer pending" = "لم يعد معلّقًا"; +"New request received" = "تم استلام طلب جديد"; +"Someone asked to follow you" = "طلب شخص متابعتك"; +"Request withdrawn" = "تم سحب الطلب"; +"Someone cancelled their request" = "ألغى شخص طلبه"; +"Sent by me" = "أرسلتها أنا"; +"Received" = "مستلَم"; +"Sent" = "مُرسَل"; +"Accepted" = "مقبول"; +"Rejected" = "مرفوض"; +"Requested" = "تم الطلب"; +"Approved" = "موافَق عليه"; +"Withdrawn" = "مسحوب"; +"No follow requests tracked yet" = "لا توجد طلبات متابعة متتبَّعة بعد"; +"Cancel requests" = "إلغاء الطلبات"; +"Delete %lu record(s) from history?" = "حذف %lu سجل من السجل؟"; +"Cancel %lu pending request(s)?" = "إلغاء %lu طلب معلّق؟"; +"Follow back %lu account(s)?" = "متابعة %lu حساب بالمقابل؟"; +"Clear all tracked follow requests?" = "مسح كل طلبات المتابعة المتتبَّعة؟"; +"Reset tracked follow requests for this account?" = "إعادة تعيين طلبات المتابعة المتتبَّعة لهذا الحساب؟"; +"Enable the tracker first" = "فعِّل المتتبِّع أولاً"; +"Checking…" = "جارٍ الفحص…"; +"%ld request(s) updated" = "تم تحديث %ld طلب"; +"No changes" = "لا تغييرات"; +"Working…" = "جارٍ العمل…"; +"Follow request accepted" = "تم قبول طلب المتابعة"; +"%@ accepted your request" = "%@ قبِل طلبك"; +"Follow request declined" = "تم رفض طلب المتابعة"; +"%@ is no longer pending" = "%@ لم يعد معلّقًا"; +"New follow request" = "طلب متابعة جديد"; +"%@ asked to follow you" = "%@ طلب متابعتك"; +"Follow request withdrawn" = "تم سحب طلب المتابعة"; +"%@ withdrew their request" = "%@ سحب طلبه"; +"Follow requests log" = "سجل طلبات المتابعة"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "افتح ميزات Instagram المدفوعة"; +"Turn on Instagram's paid subscriber features inside the app." = "فعّل ميزات اشتراك Instagram المدفوع داخل التطبيق."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus هو الاشتراك المدفوع في Instagram. تعمل هذه المفاتيح على تفعيل ميزاته داخل التطبيق. بعضها يعمل بالكامل، والبعض الآخر يُظهر الخيار فقط لأن المحتوى يُحمّل من خوادم Instagram ويحتاج إلى اشتراك حقيقي، لذا قد يظهر فارغاً أو لا يفعل شيئاً. فعّل ما تريده ثم اضغط تطبيق. وإذا فشل Instagram في العمل ثلاث مرات متتالية، تُعاد هذه المفاتيح تلقائياً إلى وضعها الأصلي."; +"Turn everything on" = "تفعيل الكل"; +"Turn everything off" = "إيقاف الكل"; +"Every Instagram Plus feature turns off and Instagram restarts." = "تُوقف جميع ميزات Instagram Plus ويُعاد تشغيل Instagram."; +"Story peek" = "معاينة القصة"; +"Hold a story in the tray to preview it without opening it." = "اضغط مطولاً على قصة في الشريط لمعاينتها دون فتحها."; +"Story fonts" = "خطوط القصة"; +"Adds the subscriber fonts when you add text to a story." = "يضيف خطوط المشتركين عند إضافة نص إلى القصة."; +"Search story viewers" = "البحث في مشاهدي القصة"; +"Search the list of people who viewed your story." = "ابحث في قائمة الأشخاص الذين شاهدوا قصتك."; +"Viewer timestamps" = "أوقات المشاهدة"; +"Shows when each person viewed your story." = "يعرض وقت مشاهدة كل شخص لقصتك."; +"Silent post to profile" = "نشر صامت في الملف الشخصي"; +"Share to your profile without notifying your followers." = "انشر في ملفك الشخصي دون إشعار متابعيك."; +"Silent post to highlights" = "نشر صامت في أبرز الأحداث"; +"Add to a highlight without notifying your followers." = "أضف إلى أبرز الأحداث دون إشعار متابعيك."; +"Story rewatch" = "إعادة مشاهدة القصة"; +"Rewatch a story right after it finishes." = "أعد مشاهدة القصة فور انتهائها."; +"Story extend" = "تمديد القصة"; +"Keep your story up longer than 24 hours." = "أبقِ قصتك ظاهرة أكثر من 24 ساعة."; +"Story spotlight" = "تسليط الضوء على القصة"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "روّج قصتك لعدد أكبر من المشاهدين. يُحمّل من Instagram، لذا قد لا يعمل."; +"Story super likes" = "إعجابات فائقة للقصة"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "أرسل إعجابات فائقة على القصص. يُحمّل من Instagram، لذا قد لا يعمل."; +"Message peek" = "معاينة الرسالة"; +"Hold a chat in the inbox to preview it." = "اضغط مطولاً على محادثة في صندوق الوارد لمعاينتها."; +"Chat fonts" = "خطوط المحادثة"; +"Adds the subscriber fonts in direct messages." = "يضيف خطوط المشتركين في الرسائل المباشرة."; +"Chat themes" = "سمات المحادثة"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "يفتح سمات المحادثة المميزة. يُحمّل من Instagram، لذا قد لا يعمل."; +"App icons" = "أيقونات التطبيق"; +"Opens the alternate app icon picker." = "يفتح أداة اختيار أيقونات التطبيق البديلة."; +"Bio font" = "خط النبذة"; +"Use a subscriber font for your bio." = "استخدم خط المشتركين في نبذتك التعريفية."; +"Custom story lists" = "قوائم قصص مخصصة"; +"Make lists to pick exactly who sees a story." = "أنشئ قوائم لتحديد من يرى قصتك بالضبط."; +"More pinned posts" = "مزيد من المنشورات المثبتة"; +"Pin more posts to the top of your profile." = "ثبّت مزيداً من المنشورات أعلى ملفك الشخصي."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu تسجيل"; +"1 recording" = "تسجيل واحد"; +"30 days" = "30 يومًا"; +"7 days" = "7 أيام"; +"90 days" = "90 يومًا"; +"Adds a record button to the call screen" = "يضيف زر تسجيل إلى شاشة المكالمة"; +"Also show recordings in the RyukGram gallery under Calls" = "عرض التسجيلات أيضًا في معرض RyukGram ضمن المكالمات"; +"Auto-delete old recordings" = "حذف التسجيلات القديمة تلقائيًا"; +"Auto-record calls" = "تسجيل المكالمات تلقائيًا"; +"Auto-record ignore list" = "قائمة تجاهل التسجيل التلقائي"; +"Auto-record ignored" = "تم تجاهل التسجيل التلقائي"; +"Auto-record on" = "التسجيل التلقائي مفعّل"; +"Block mute signal" = "حظر إشارة الكتم"; +"Both sides" = "كلا الجانبين"; +"Browse saved calls, grouped by person" = "تصفح المكالمات المحفوظة، مجمّعة حسب الشخص"; +"Call" = "مكالمة"; +"Call recorded" = "تم تسجيل المكالمة"; +"Call recording" = "تسجيل المكالمات"; +"Call recordings" = "تسجيلات المكالمات"; +"Camera position" = "موضع الكاميرا"; +"Can't play" = "تعذّر التشغيل"; +"Can't record" = "تعذّر التسجيل"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "المحادثات المستبعدة من التسجيل التلقائي — اضغط مطولاً على زر التسجيل في المكالمة للإضافة"; +"Could not save the recording." = "تعذّر حفظ التسجيل."; +"Could not start the recorder." = "تعذّر بدء المُسجّل."; +"Delete all" = "حذف الكل"; +"Delete all recordings" = "حذف جميع التسجيلات"; +"Delete all recordings?" = "حذف جميع التسجيلات؟"; +"Drag the overlay where you want it" = "اسحب التراكب إلى الموضع الذي تريده"; +"Drag your camera window to any corner or edge." = "اسحب نافذة الكاميرا إلى أي زاوية أو حافة."; +"Enable call recording" = "تفعيل تسجيل المكالمات"; +"Export all" = "تصدير الكل"; +"Full screen" = "ملء الشاشة"; +"Group call" = "مكالمة جماعية"; +"Ignore auto-record for this chat" = "تجاهل التسجيل التلقائي لهذه المحادثة"; +"Ignored chats aren't auto-recorded. You can still record manually." = "المحادثات المتجاهَلة لا تُسجَّل تلقائيًا. لا يزال بإمكانك التسجيل يدويًا."; +"Include my camera" = "تضمين الكاميرا الخاصة بي"; +"Keep forever" = "الاحتفاظ للأبد"; +"Large" = "كبير"; +"Mute without the other side seeing you muted — your mic is still silenced" = "اكتم دون أن يرى الطرف الآخر أنك كتمت — يبقى الميكروفون صامتًا"; +"Muted silently" = "تم الكتم بصمت"; +"My camera size" = "حجم الكاميرا الخاصة بي"; +"No call audio was captured." = "لم يتم التقاط أي صوت للمكالمة."; +"No ignored chats. Long-press the record button in a call to ignore it." = "لا توجد محادثات متجاهَلة. اضغط مطولاً على زر التسجيل في المكالمة لتجاهلها."; +"No recordings" = "لا توجد تسجيلات"; +"Off records audio only, even on video calls" = "الإيقاف يسجّل الصوت فقط، حتى في مكالمات الفيديو"; +"Only me" = "أنا فقط"; +"Only them" = "هم فقط"; +"Open recordings" = "فتح التسجيلات"; +"Overlay your camera as a small window on video-call recordings" = "اعرض كاميرتك كنافذة صغيرة على تسجيلات مكالمات الفيديو"; +"Overlay your camera on the recording" = "اعرض كاميرتك فوق التسجيل"; +"Record audio from" = "تسجيل الصوت من"; +"Record video on video calls" = "تسجيل الفيديو في مكالمات الفيديو"; +"Record voice and video calls, browse them later" = "سجّل المكالمات الصوتية والمرئية، وتصفحها لاحقًا"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "تُحفظ المكالمات المسجّلة على هذا الجهاز فقط. يظهر مؤشر أحمر في شريط الحالة أثناء التسجيل."; +"Recorded calls will appear here." = "ستظهر المكالمات المسجّلة هنا."; +"Recording call" = "جارٍ تسجيل المكالمة"; +"Recording count" = "عدد التسجيلات"; +"Recording failed" = "فشل التسجيل"; +"Recording name" = "اسم التسجيل"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "يسجّل الطرف الآخر (صوت المكالمة) والميكروفون الخاص بك. يظهر مؤشر أحمر في شريط الحالة أثناء التسجيل. تُحفظ التسجيلات على هذا الجهاز فقط."; +"Remove from ignore list" = "إزالة من قائمة التجاهل"; +"Remove recordings older than the chosen age" = "إزالة التسجيلات الأقدم من المدة المحددة"; +"Rename recording" = "إعادة تسمية التسجيل"; +"Search calls" = "البحث في المكالمات"; +"Set a custom name for this chat's recordings." = "عيّن اسمًا مخصصًا لتسجيلات هذه المحادثة."; +"Size of the overlay window" = "حجم نافذة التراكب"; +"Small" = "صغير"; +"Starts recording automatically when a call opens" = "يبدأ التسجيل تلقائيًا عند فتح مكالمة"; +"Sync to gallery" = "المزامنة مع المعرض"; +"The recording file is missing." = "ملف التسجيل مفقود."; +"Them" = "هم"; +"Them (full screen)" = "هم (ملء الشاشة)"; +"This permanently removes every saved call recording for this account." = "يؤدي هذا إلى إزالة كل تسجيلات المكالمات المحفوظة لهذا الحساب نهائيًا."; +"Unknown chat" = "محادثة غير معروفة"; +"Unmuted" = "تم إلغاء الكتم"; +"Which camera fills the frame" = "أي كاميرا تملأ الإطار"; +"Which side's voice to capture" = "صوت أي جانب يتم التقاطه"; +"You" = "أنت"; +"You (full screen)" = "أنت (ملء الشاشة)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "يتم التقاط كاميرتك وعرضها فوق التسجيل. اختر أي جانب يملأ الشاشة، وحجم التراكب، واسحبها إلى أي زاوية."; +"Prompt before the call recordings open" = "اطلب قبل فتح تسجيلات المكالمات"; +"Prompt before the activity log opens" = "المطالبة قبل فتح سجل النشاط"; +"Mark all as read" = "تحديد الكل كمقروء"; +"Delete %lu chats?" = "حذف %lu محادثة؟"; +"This permanently removes their recordings." = "يؤدي هذا إلى إزالة تسجيلاتها نهائيًا."; + +"Stories archive" = "أرشيف القصص"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "تفاعلوا"; +"Reacted first" = "التفاعلات أولاً"; +"Mutual" = "المتابَعون المتبادلون"; +"Viewers" = "المشاهدون"; +"1 viewer" = "مشاهد واحد"; +"View viewers" = "عرض المشاهدين"; +"%lu views" = "%lu مشاهدة"; +"%ld likes" = "%ld إعجاب"; +"0 views" = "٠ مشاهدة"; +"1 like" = "إعجاب واحد"; +"1 view" = "مشاهدة واحدة"; +"Photos" = "الصور"; +"Oldest" = "الأقدم"; +"Most viewed" = "الأكثر مشاهدة"; +"Most reacted" = "الأكثر تفاعلاً"; +"Open archive" = "فتح الأرشيف"; +"Archive settings" = "إعدادات الأرشيف"; +"Archiving" = "الأرشفة"; +"Enable stories archive" = "تفعيل أرشيف القصص"; +"Save your stories before they expire" = "احفظ قصصك قبل انتهاء صلاحيتها"; +"Saves each story you post, with its photo or video, kept separately for each account." = "يحفظ كل قصة تنشرها مع صورتها أو الفيديو الخاص بها، ويحتفظ بها بشكل منفصل لكل حساب."; +"Save and update viewers" = "حفظ المشاهدين وتحديثهم"; +"Keep each story's viewers and likers, refreshed to the final list" = "احتفظ بمشاهدي كل قصة والمعجبين بها، محدَّثين إلى القائمة النهائية"; +"Update viewers" = "تحديث المشاهدين"; +"How often to refresh viewers for stories still live" = "عدد مرات تحديث المشاهدين للقصص التي لا تزال نشطة"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "تستمر قائمة مشاهدي القصة في النمو طوال يومها الكامل، ثم يعرضها إنستغرام ليوم إضافي. يلتقط التحديث التلقائي القائمة النهائية بمجرد مرور يوم على القصة، لتكون الأرقام التي تحتفظ بها مكتملة."; +"Notify me about pinned viewers" = "إشعاري بشأن المشاهدين المثبَّتين"; +"A heads-up when a pinned viewer sees or likes your story" = "تنبيه عندما يشاهد مشاهد مثبَّت قصتك أو يعجب بها"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "احصل على إشعار عندما يشاهد مشاهد مثبَّت قصتك أو يعجب بها. ثبّت المشاهدين وأدِر القائمة من إعدادات المشاهدين."; +"Viewer list & pins" = "قائمة المشاهدين والتثبيتات"; +"Turn on the viewer list and manage pinned viewers" = "تفعيل قائمة المشاهدين وإدارة المشاهدين المثبَّتين"; +"Turn on a custom viewer list to pin, search and sort viewers" = "فعّل قائمة مشاهدين مخصصة لتثبيت المشاهدين والبحث عنهم وترتيبهم"; +"Tick several to combine them." = "حدّد عدة خيارات لدمجها."; +"Select stories" = "تحديد القصص"; +"No archived stories yet. Post a story and it appears here." = "لا توجد قصص مؤرشفة بعد. انشر قصة وستظهر هنا."; +"Archiving is off. Enable it in the archive settings, then post a story." = "الأرشفة متوقفة. فعّلها من إعدادات الأرشيف، ثم انشر قصة."; +"Delete story?" = "حذف القصة؟"; +"This removes the archived photo or video and its viewers." = "يؤدي هذا إلى إزالة الصورة أو الفيديو المؤرشف ومشاهديه."; +"Delete all stories?" = "حذف كل القصص؟"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "يزيل كل قصة مؤرشفة ومشاهديها لهذا الحساب. لا يمكن التراجع عن هذا."; +"Delete %lu archived stories and their viewers?" = "حذف %lu قصة مؤرشفة ومشاهديها؟"; +"Pinned viewer saw your story" = "شاهد مشاهد مثبَّت قصتك"; +"Pinned viewer liked your story" = "أعجب مشاهد مثبَّت بقصتك"; +"Pinned viewer reacted to your story" = "تفاعل مشاهد مثبَّت مع قصتك"; +"Pinned viewers on your story" = "مشاهدون مثبَّتون على قصتك"; +"%lu pinned viewers just saw, liked or reacted" = "شاهد أو أعجب أو تفاعل %lu من المشاهدين المثبَّتين للتو"; +"A pinned viewer" = "مشاهد مثبَّت"; +"On each launch" = "عند كل تشغيل"; diff --git a/src/Localization/Resources/en.lproj/Localizable.strings b/src/Localization/Resources/en.lproj/Localizable.strings new file mode 100644 index 0000000..17818e1 --- /dev/null +++ b/src/Localization/Resources/en.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "In the future: Hold down on the three lines at the top right of your profile page, to re-open RyukGram settings."; +"settings.firstrun.ok" = "I understand!"; +"settings.firstrun.title" = "RyukGram Settings Info"; +"settings.language.english_only" = "RyukGram currently ships with English only. Other languages are wired up and waiting for translations — help translate into your language by following the short guide in the README."; +"settings.language.help_translate" = "Help translate"; +"settings.language.system" = "System default"; +"settings.language.title" = "Language"; +"settings.language.restart.message" = "Settings updated. Restart Instagram so menus, buttons, and toasts elsewhere in the app pick up the new language too."; +"settings.language.restart.title" = "Restart to apply everywhere"; +"settings.language.available" = "Available"; +"settings.results.many" = "%lu results"; +"settings.results.one" = "%lu result"; +"settings.search.placeholder" = "Search settings"; +"settings.title" = "RyukGram Settings"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "Action button icon"; +"Adds a copy option to the comment long-press menu" = "Adds a copy option to the comment long-press menu"; +"Adds a download button next to share/save on the reels audio page" = "Adds a download button next to share/save on the reels audio page"; +"Adds download, copy and expand options to GIF and image comments" = "Adds download, copy and expand options to GIF and image comments"; +"Allow video in photo sticker" = "Allow video in photo sticker"; +"Alternate icons are not supported" = "Alternate icons are not supported"; +"Anonymous live viewing" = "Anonymous live viewing"; +"App Icon" = "App Icon"; +"Audio page" = "Audio page"; +"Auto-reveals sensitive media" = "Auto-reveals sensitive media"; +"Block surveys" = "Block surveys"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count"; +"Browser" = "Browser"; +"Change the app icon from the bundled icons" = "Change the app icon from the bundled icons"; +"Choose Icon" = "Choose Icon"; +"Choose which surfaces hide ads" = "Choose which surfaces hide ads"; +"Comments" = "Comments"; +"Commerce carousels in comments and shoppable CTAs on reels" = "Commerce carousels in comments and shoppable CTAs on reels"; +"Copy comment text" = "Copy comment text"; +"Copy description" = "Copy description"; +"Long press a caption to copy its text" = "Long press a caption to copy its text"; +"Custom sticker colors" = "Custom sticker colors"; +"Custom colors aren't supported for this sticker" = "Custom colors aren't supported for this sticker"; +"Date format" = "Date format"; +"Disable app haptics" = "Disable app haptics"; +"Disables haptics/vibrations within the app" = "Disables haptics/vibrations within the app"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "Disables liquid glass for accounts that have it enabled by default. Overrides the options above"; +"Do not save recent searches" = "Do not save recent searches"; +"Download GIF & image comments" = "Download GIF & image comments"; +"Download image" = "Download image"; +"Embed domain" = "Embed domain"; +"Embed domain: %@" = "Embed domain: %@"; +"Enable liquid glass buttons" = "Enable liquid glass buttons"; +"Enable liquid glass surfaces" = "Enable liquid glass surfaces"; +"Enable teen app icons" = "Enable teen app icons"; +"Enables experimental liquid glass buttons" = "Enables experimental liquid glass buttons"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "Enables liquid glass tab bar, floating navigation, and other UI elements"; +"End" = "End"; +"Experimental features" = "Experimental features"; +"Explore & search" = "Explore & search"; +"Failed to change icon" = "Failed to change icon"; +"Fixed" = "Fixed"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "Fixed prevents shrinking. Hide makes it disappear when scrolling down"; +"Focus/distractions" = "Focus/distractions"; +"Force liquid glass off" = "Force liquid glass off"; +"Force progressive blur" = "Force progressive blur"; +"General" = "General"; +"Gradient color" = "Gradient color"; +"Hide ads" = "Hide ads"; +"Hide explore posts grid" = "Hide explore posts grid"; +"Hide friends map" = "Hide friends map"; +"Hide Meta AI" = "Hide Meta AI"; +"Hide metrics" = "Hide metrics"; +"Hide notes tray" = "Hide notes tray"; +"Hide on scroll" = "Hide on scroll"; +"Hide TestFlight popup" = "Hide TestFlight popup"; +"Hide trending searches" = "Hide trending searches"; +"Hide UI on capture" = "Hide UI on capture"; +"Removes suggested accounts to follow outside the feed" = "Removes suggested accounts to follow outside the feed"; +"Hides like/comment/share counts on posts and reels" = "Hides like/comment/share counts on posts and reels"; +"Removes the friends map icon from the notes tray" = "Removes the friends map icon from the notes tray"; +"Removes the suggested posts grid on the explore tab" = "Removes the suggested posts grid on the explore tab"; +"Strips the Meta AI buttons and entry points from the app" = "Strips the Meta AI buttons and entry points from the app"; +"Hides the notes tray in the DM inbox" = "Hides the notes tray in the DM inbox"; +"Removes suggested broadcast channels from your inbox" = "Removes suggested broadcast channels from your inbox"; +"Hide DM search suggestions" = "Hide DM search suggestions"; +"Removes suggested accounts and channels from direct message search" = "Removes suggested accounts and channels from direct message search"; +"Removes trending searches under the explore search bar" = "Removes trending searches under the explore search bar"; +"Hold down on the Instagram logo to change the app icon" = "Hold down on the Instagram logo to change the app icon"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out"; +"Lets the photo sticker picker show videos too, not just photos" = "Lets the photo sticker picker show videos too, not just photos"; +"Liquid glass tab bar" = "Liquid glass tab bar"; +"Live" = "Live"; +"Hold the eyedropper in stories to pick an exact text color" = "Hold the eyedropper in stories to pick an exact text color"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "Long-press the color wheel in sticker editors to pick any solid or gradient color"; +"Long-press the heart button in a live to hide or show the comments" = "Long-press the heart button in a live to hide or show the comments"; +"Long-press the search tab to open a copied Instagram link" = "Long-press the search tab to open a copied Instagram link"; +"Master switch. When off, all per-surface toggles below are ignored." = "Master switch. When off, all per-surface toggles below are ignored."; +"No suggested chats" = "No suggested chats"; +"No suggested users" = "No suggested users"; +"Notes" = "Notes"; +"Open app icon picker" = "Open app icon picker"; +"Open link from clipboard" = "Open link from clipboard"; +"Open links in external browser" = "Open links in external browser"; +"Opens links in Safari instead of Instagram's in-app browser" = "Opens links in Safari instead of Instagram's in-app browser"; +"Privacy" = "Privacy"; +"Removes ads across enabled surfaces" = "Removes ads across enabled surfaces"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "Removes igsh, utm_source, and other tracking parameters from shared links"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs"; +"Replace domain in shared links" = "Replace domain in shared links"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc."; +"Stops search bars from saving your recent searches" = "Stops search bars from saving your recent searches"; +"Selected" = "Selected"; +"Sharing" = "Sharing"; +"Shopping" = "Shopping"; +"Skip sensitive content covers" = "Skip sensitive content covers"; +"Solid color" = "Solid color"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "Sponsored posts in main, contextual, video, and chaining feeds"; +"Sponsored posts on the explore grid" = "Sponsored posts on the explore grid"; +"Stops Instagram's in-app surveys and feedback prompts" = "Stops Instagram's in-app surveys and feedback prompts"; +"Sponsored reels in the sundial feed" = "Sponsored reels in the sundial feed"; +"Start" = "Start"; +"Story ads and sponsored entries in the story tray" = "Story ads and sponsored entries in the story tray"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply."; +"Strip tracking from links" = "Strip tracking from links"; +"Strip tracking params" = "Strip tracking params"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "Suppresses the \"It's time to update Instagram Beta\" nag"; +"Tap to apply" = "Tap to apply"; +"The selected icon will be saved and shown here the next time you open this page." = "The selected icon will be saved and shown here the next time you open this page."; +"Toggle live comments" = "Toggle live comments"; +"Use detailed color picker" = "Use detailed color picker"; +"Used across feed, stories, reels, and DMs." = "Used across feed, stories, reels, and DMs."; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld day ago"; +"%ld days ago" = "%ld days ago"; +"%ld hour ago" = "%ld hour ago"; +"%ld hours ago" = "%ld hours ago"; +"%ld minute ago" = "%ld minute ago"; +"%ld minutes ago" = "%ld minutes ago"; +"%ld week ago" = "%ld week ago"; +"%ld weeks ago" = "%ld weeks ago"; +"%ldd" = "%ldd"; +"%ldh" = "%ldh"; +"%ldm" = "%ldm"; +"%ldw" = "%ldw"; +"Always ask" = "Always ask"; +"Balanced" = "Balanced"; +"Block all" = "Block all"; +"Block selected" = "Block selected"; +"Button" = "Button"; +"Date format — %@" = "Date format — %@"; +"Default" = "Default"; +"Disabled" = "Disabled"; +"Download and share" = "Download and share"; +"Download to Photos" = "Download to Photos"; +"Save with music" = "Save with music"; +"Gallery with music" = "Gallery with music"; +"Save image (no music)" = "Save image (no music)"; +"Gallery image (no music)" = "Gallery image (no music)"; +"Photo with music" = "Photo with music"; +"Enabled" = "Enabled"; +"Expand" = "Expand"; +"Explore" = "Explore"; +"Fast" = "Fast"; +"Feed" = "Feed"; +"Feed posts" = "Feed posts"; +"High" = "High"; +"Inbox" = "Inbox"; +"just now" = "just now"; +"Low" = "Low"; +"Max" = "Max"; +"Medium" = "Medium"; +"Mute/Unmute" = "Mute/Unmute"; +"Notes, comments, stories" = "Notes, comments, stories"; +"now" = "now"; +"Open menu" = "Open menu"; +"Pause/Play" = "Pause/Play"; +"Profile" = "Profile"; +"Quality" = "Quality"; +"Reels" = "Reels"; +"Requires restart" = "Requires restart"; +"Save to Photos" = "Save to Photos"; +"Share sheet" = "Share sheet"; +"Standard" = "Standard"; +"Toggle" = "Toggle"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "Grid feed"; +"Browse your home feed as a grid of posts" = "Browse your home feed as a grid of posts"; +"Hide stories in grid" = "Hide stories in grid"; +"Taller cells" = "Taller cells"; +"Portrait tiles instead of squares" = "Portrait tiles instead of squares"; +"Open post" = "Open post"; +"View profile" = "View profile"; +"Like" = "Like"; +"Liked" = "Liked"; +"Unlike" = "Unlike"; +"Unliked" = "Unliked"; +"Followed" = "Followed"; +"Unfollowed" = "Unfollowed"; +"Couldn't update like" = "Couldn't update like"; +"Couldn't update follow" = "Couldn't update follow"; +"Follow status" = "Follow status"; +"Shares" = "Shares"; +"Relative" = "Relative"; +"Date and time" = "Date and time"; +"You're all caught up" = "You're all caught up"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed."; +"Switch button" = "Switch button"; +"Hold the heart button" = "Hold the heart button"; +"Floating button" = "Floating button"; +"How to switch" = "How to switch"; +"Hold the heart in Instagram's header" = "Hold the heart in Instagram's header"; +"A small round button on the feed" = "A small round button on the feed"; +"Button position" = "Button position"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "Drag the button where you want it. The dimmed strips are Instagram's header and tab bar."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "The button never sits under the header or the tab bar. Hold it on the feed to come back here."; +"Live preview" = "Live preview"; +"Columns" = "Columns"; +"Post info" = "Post info"; +"Reorder and toggle stats on each tile" = "Reorder and toggle stats on each tile"; +"Info on each post" = "Info on each post"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile."; +"Show avatar" = "Show avatar"; +"Media type badge" = "Media type badge"; +"Restores the default post info, order and options for the grid feed." = "Restores the default post info, order and options for the grid feed."; +"Views" = "Views"; +"Action button" = "Action button"; +"Adds 'Profile picture' to story tray long-press menus" = "Adds 'Profile picture' to story tray long-press menus"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below."; +"Choose Instagram's default feed or force the Following feed" = "Choose Instagram's default feed or force the Following feed"; +"Main feed" = "Main feed"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it."; +"Confirm feed refresh" = "Confirm feed refresh"; +"Shows an alert before a pull-to-refresh reloads the feed" = "Shows an alert before a pull-to-refresh reloads the feed"; +"Refresh stories only" = "Refresh stories only"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "Pull-to-refresh reloads the stories tray without refreshing the feed"; +"Refresh feed?" = "Refresh feed?"; +"Default tap action" = "Default tap action"; +"Disable background refresh" = "Disable background refresh"; +"Disable home button refresh" = "Disable home button refresh"; +"Disable home button scroll" = "Disable home button scroll"; +"Disable video autoplay" = "Disable video autoplay"; +"Hide" = "Hide"; +"Hide entire feed" = "Hide entire feed"; +"Hide repost button" = "Hide repost button"; +"Hide stories tray" = "Hide stories tray"; +"Hide suggested stories" = "Hide suggested stories"; +"Hide story highlights" = "Hide story highlights"; +"Removes resurfaced highlights from the stories tray in feed" = "Removes resurfaced highlights from the stories tray in feed"; +"Hides suggested accounts" = "Hides suggested accounts"; +"Hides suggested reels" = "Hides suggested reels"; +"Hides suggested threads posts" = "Hides suggested threads posts"; +"Hides the repost button on feed posts" = "Hides the repost button on feed posts"; +"Hides the story tray at the top" = "Hides the story tray at the top"; +"Inserts a button row below like/comment/share on each post" = "Inserts a button row below like/comment/share on each post"; +"Long press on media to expand in full-screen viewer" = "Long press on media to expand in full-screen viewer"; +"Start media muted" = "Start media muted"; +"Expanded videos open with sound off" = "Expanded videos open with sound off"; +"Enhanced media resolution" = "Enhanced media resolution"; +"Media saving" = "Media saving"; +"Spoof device profile so IG serves higher-quality images" = "Spoof device profile so IG serves higher-quality images"; +"Media" = "Media"; +"Media zoom" = "Media zoom"; +"No suggested for you" = "No suggested for you"; +"No suggested posts" = "No suggested posts"; +"No suggested reels" = "No suggested reels"; +"No suggested threads" = "No suggested threads"; +"Prevents feed from reloading when returning from background" = "Prevents feed from reloading when returning from background"; +"Prevents videos from playing automatically" = "Prevents videos from playing automatically"; +"Refresh" = "Refresh"; +"Removes all content from your home feed" = "Removes all content from your home feed"; +"Removes suggested accounts from the stories tray" = "Removes suggested accounts from the stories tray"; +"Removes suggested posts" = "Removes suggested posts"; +"Scroll to top without refreshing when tapping Home" = "Scroll to top without refreshing when tapping Home"; +"Show action button" = "Show action button"; +"Show date" = "Show date"; +"Stories tray" = "Stories tray"; +"Tapping Home does nothing when already on feed" = "Tapping Home does nothing when already on feed"; +"Tray long-press actions" = "Tray long-press actions"; +"Composer doesn't accept GIFs" = "Composer doesn't accept GIFs"; +"Copy GIF link" = "Copy GIF link"; +"Copy image link" = "Copy image link"; +"Custom GIF in comments" = "Custom GIF in comments"; +"Favorite GIFs" = "Favorite GIFs"; +"Long-press a GIF in the picker to pin it — favorites show first" = "Long-press a GIF in the picker to pin it — favorites show first"; +"Added to favorites" = "Added to favorites"; +"Removed from favorites" = "Removed from favorites"; +"Favorite GIF unavailable" = "Favorite GIF unavailable"; +"This GIF may have been removed. Long-press it to unfavorite." = "This GIF may have been removed. Long-press it to unfavorite."; +"Failed to build GIF model" = "Failed to build GIF model"; +"GIF link copied" = "GIF link copied"; +"Image" = "Image"; +"Image link copied" = "Image link copied"; +"Invalid Giphy URL" = "Invalid Giphy URL"; +"Long-press the GIF button to paste any Giphy URL" = "Long-press the GIF button to paste any Giphy URL"; +"Paste Giphy Link" = "Paste Giphy Link"; +"Paste a giphy.com URL or media ID" = "Paste a giphy.com URL or media ID"; +"Send" = "Send"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below."; +"Always show progress scrubber" = "Always show progress scrubber"; +"Auto-scroll reels" = "Auto-scroll reels"; +"Speed, seek and auto-scroll controls" = "Speed, seek and auto-scroll controls"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "Enabled controls appear when you hold the ⋯ or audio button on a reel."; +"Seek controls" = "Seek controls"; +"Auto-scroll control" = "Auto-scroll control"; +"Seek" = "Seek"; +"Custom seek step" = "Custom seek step"; +"Enter the number of seconds to skip" = "Enter the number of seconds to skip"; +"Set what a tap on a reel does" = "Set what a tap on a reel does"; +"Confirm reel refresh" = "Confirm reel refresh"; +"Custom speed" = "Custom speed"; +"Disable auto-unmuting reels" = "Disable auto-unmuting reels"; +"Disable scrolling reels" = "Disable scrolling reels"; +"Disable tab button refresh" = "Disable tab button refresh"; +"Doom scrolling limit" = "Doom scrolling limit"; +"e.g. 1.75" = "e.g. 1.75"; +"Enter a value between 0.5 and 2.0" = "Enter a value between 0.5 and 2.0"; +"Keeps the progress bar visible on every reel" = "Keeps the progress bar visible on every reel"; +"Hide \"Made with Edits\" badge" = "Hide \"Made with Edits\" badge"; +"Hide friends avatars" = "Hide friends avatars"; +"Hide reels header" = "Hide reels header"; +"Hide social context overlay" = "Hide social context overlay"; +"Hides the avatar bubbles next to the Friends tab in reels" = "Hides the avatar bubbles next to the Friends tab in reels"; +"Hides the Edits app promo pill on reels" = "Hides the Edits app promo pill on reels"; +"Hides the floating overlay showing who reposted or commented on reels" = "Hides the floating overlay showing who reposted or commented on reels"; +"Hides the repost button on the reels sidebar" = "Hides the repost button on the reels sidebar"; +"Drops the top bar while you watch reels" = "Drops the top bar while you watch reels"; +"Hiding" = "Hiding"; +"IG default" = "IG default"; +"Limits" = "Limits"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "Caps how many reels you can scroll in a row and blocks the refresh"; +"Only loads %@ %@" = "Only loads %@ %@"; +"Places a button above the like/comment/share column on each reel" = "Places a button above the like/comment/share column on each reel"; +"Playback speed" = "Playback speed"; +"Prevent doom scrolling" = "Prevent doom scrolling"; +"Engagement filter" = "Engagement filter"; +"Hide reels below a like, comment, view or repost count" = "Hide reels below a like, comment, view or repost count"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too."; +"Filter reels by engagement" = "Filter reels by engagement"; +"Hide reels with hidden stats" = "Hide reels with hidden stats"; +"Only filter the Reels tab" = "Only filter the Reels tab"; +"Reels you open from a post, profile or share are never filtered" = "Reels you open from a post, profile or share are never filtered"; +"Minimums" = "Minimums"; +"Minimum likes" = "Minimum likes"; +"Minimum comments" = "Minimum comments"; +"Minimum views" = "Minimum views"; +"Minimum reposts" = "Minimum reposts"; +"Reels below this count are hidden. 0 turns this limit off." = "Reels below this count are hidden. 0 turns this limit off."; +"Turns the filter off and clears every minimum." = "Turns the filter off and clears every minimum."; +"Locks a reel in place so it never scrolls to the next one" = "Locks a reel in place so it never scrolls to the next one"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "Keeps reels from unmuting when you hit a volume or ringer key"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Confirms before the reels feed refreshes"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "Shows buttons to reveal and auto-fill the password on locked reels"; +"Same as general format" = "Same as general format"; +"Shows the repost date on the \"reposted this reel\" header." = "Shows the repost date on the \"reposted this reel\" header."; +"Reposts" = "Reposts"; +"Swipe a reel left to open the author's profile" = "Swipe a reel left to open the author's profile"; +"Swipe left to profile" = "Swipe left to profile"; +"Tap Controls" = "Tap Controls"; +"Tap to mute on photo reels" = "Tap to mute on photo reels"; +"Tapping the Reels tab while on reels does nothing" = "Tapping the Reels tab while on reels does nothing"; +"Unlock password-locked reels" = "Unlock password-locked reels"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "Adds a button to filter & sort any followers/following list. Resets when you leave."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "Adds a view option to the highlight long-press menu to open the cover in full-screen"; +"Applying restarts Instagram to load your changes." = "Applying restarts Instagram to load your changes."; +"Card details" = "Card details"; +"Comment count" = "Comment count"; +"Copy note on long press" = "Copy note on long press"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply."; +"Fake follower count" = "Fake follower count"; +"Fake following count" = "Fake following count"; +"Fake post count" = "Fake post count"; +"Fake profile stats" = "Fake profile stats"; +"Fake verified badge" = "Fake verified badge"; +"Fetch missing counts" = "Fetch missing counts"; +"Filter & sort lists" = "Filter & sort lists"; +"Follow indicator" = "Follow indicator"; +"Follower & following lists" = "Follower & following lists"; +"Follower count" = "Follower count"; +"Following count" = "Following count"; +"Like count" = "Like count"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "Long press a profile picture to open it in full-screen with zoom, share, and save"; +"Long press the note bubble on a profile to copy the text" = "Long press the note bubble on a profile to copy the text"; +"Long press to download directly (ignored when zoom is on)" = "Long press to download directly (ignored when zoom is on)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "Long-press gestures on profile elements — kept separate from the per-feature action buttons."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits."; +"Only affects your own profile header. Other users see the real numbers." = "Only affects your own profile header. Other users see the real numbers."; +"Post count" = "Post count"; +"Profile card details" = "Profile card details"; +"Profile stats" = "Profile stats"; +"Repost count" = "Repost count"; +"Restores the default stats, order, and options for profile card details." = "Restores the default stats, order, and options for profile card details."; +"Restores the default stats, order, and options for search & explore card details." = "Restores the default stats, order, and options for search & explore card details."; +"Save profile picture" = "Save profile picture"; +"Search & Explore" = "Search & Explore"; +"Share count" = "Share count"; +"Short numbers" = "Short numbers"; +"Show a checkmark next to your name on your own profile" = "Show a checkmark next to your name on your own profile"; +"Show card details" = "Show card details"; +"Show full follower count" = "Show full follower count"; +"Show full post count" = "Show full post count"; +"Show the custom number set below" = "Show the custom number set below"; +"Show the exact number instead of a shortened one" = "Show the exact number instead of a shortened one"; +"Shows whether the profile user follows you" = "Shows whether the profile user follows you"; +"Tap to set" = "Tap to set"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card."; +"Upload date" = "Upload date"; +"View count" = "View count"; +"View highlight cover" = "View highlight cover"; +"Views, likes, comments, shares, reposts, date" = "Views, likes, comments, shares, reposts, date"; +"Zoom profile photo" = "Zoom profile photo"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "Active, queued, and finished downloads"; +"Auto-retry attempts" = "Auto-retry attempts"; +"Auto-retry failed downloads" = "Auto-retry failed downloads"; +"Confirm before download" = "Confirm before download"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "Don't pause downloads, encoding, or profile scans when you leave the app"; +"Download queue" = "Download queue"; +"Downloads" = "Downloads"; +"Downloads with %@ %@" = "Downloads with %@ %@"; +"Enable long-press gesture" = "Enable long-press gesture"; +"Finger count for long-press" = "Finger count for long-press"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads."; +"Keep running in background" = "Keep running in background"; +"Legacy long-press gesture" = "Legacy long-press gesture"; +"Long-press hold time" = "Long-press hold time"; +"Master toggle for the deprecated gesture workflow (off by default)" = "Master toggle for the deprecated gesture workflow (off by default)"; +"Max simultaneous downloads" = "Max simultaneous downloads"; +"Open download manager" = "Open download manager"; +"Press finger(s) for %@ %@" = "Press finger(s) for %@ %@"; +"Retry automatically when a download drops on a network error" = "Retry automatically when a download drops on a network error"; +"Route saves into a custom album in Photos instead of the camera roll root" = "Route saves into a custom album in Photos instead of the camera roll root"; +"Run up to %@ %@ at once" = "Run up to %@ %@ at once"; +"Save action" = "Save action"; +"Save to dedicated album" = "Save to dedicated album"; +"Show a confirmation dialog before starting a download" = "Show a confirmation dialog before starting a download"; +"Try %@ more %@ before giving up" = "Try %@ more %@ before giving up"; +"What happens after the gesture downloads" = "What happens after the gesture downloads"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "%@ left"; +"%@ of %@" = "%@ of %@"; +"%@/s" = "%@/s"; +"%dh" = "%dh"; +"%dm" = "%dm"; +"%ds" = "%ds"; +"%ld downloading" = "%ld downloading"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld still running — they'll be stopped. The files already saved are kept."; +"%lu failed" = "%lu failed"; +"%lu of %lu done" = "%lu of %lu done"; +"%lu saved, %lu failed" = "%lu saved, %lu failed"; +"12 hours" = "12 hours"; +"1s" = "1s"; +"24 hours" = "24 hours"; +"48 hours" = "48 hours"; +"Active" = "Active"; +"Auto-retry" = "Auto-retry"; +"Clear completed" = "Clear completed"; +"Clear download history" = "Clear download history"; +"Clear download history?" = "Clear download history?"; +"Completed" = "Completed"; +"Don't keep" = "Don't keep"; +"Download history" = "Download history"; +"Download settings" = "Download settings"; +"Downloading %lu items" = "Downloading %lu items"; +"Downloading…" = "Downloading…"; +"Empty the manager's list of past downloads" = "Empty the manager's list of past downloads"; +"Encoding %d%%" = "Encoding %d%%"; +"Encoding…" = "Encoding…"; +"Extra downloads wait in line and start as slots free up." = "Extra downloads wait in line and start as slots free up."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list."; +"How long past downloads stay listed in the manager" = "How long past downloads stay listed in the manager"; +"Keep history for" = "Keep history for"; +"Media you download shows up here, with its progress and where it was saved." = "Media you download shows up here, with its progress and where it was saved."; +"No downloads yet" = "No downloads yet"; +"Preview" = "Preview"; +"Queued" = "Queued"; +"Redownload" = "Redownload"; +"Retry" = "Retry"; +"Retrying…" = "Retrying…"; +"Stop" = "Stop"; +"The files already saved are kept — this only empties the list." = "The files already saved are kept — this only empties the list."; +"Waiting for a free slot" = "Waiting for a free slot"; +"Waiting for connection…" = "Waiting for connection…"; +"Waiting to retry" = "Waiting to retry"; +"Waiting…" = "Waiting…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "Arrange overlay buttons"; +"Overlay layout" = "Overlay layout"; +"Drag to position the buttons" = "Drag to position the buttons"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "Drag the buttons onto the story. The dimmed strip is the reply bar."; +"Send message" = "Send message"; + +"Pinned" = "Pinned"; +"Search viewers" = "Search viewers"; +"No matching viewers" = "No matching viewers"; +"No viewers match these filters" = "No viewers match these filters"; +"Unavailable" = "Unavailable"; +"Default (recent first)" = "Default (recent first)"; +"%lu viewers" = "%lu viewers"; +"Viewer pinned" = "Viewer pinned"; +"Viewer unpinned" = "Viewer unpinned"; +"Pin a viewer" = "Pin a viewer"; +"Pin order" = "Pin order"; +"Pin this viewer?" = "Pin this viewer?"; +"Filter, sort & pin viewers" = "Filter, sort & pin viewers"; +"Default list" = "Default list"; +"Which list opens first. The header button still switches between them" = "Which list opens first. The header button still switches between them"; +"Add by username, remove, reorder" = "Add by username, remove, reorder"; +"Pinned viewers (%lu)" = "Pinned viewers (%lu)"; +"Viewers list" = "Viewers list"; +"Settings are saved and reused next time." = "Settings are saved and reused next time."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "Tick several to combine them. Pinned viewers always stay on top and ignore these filters."; +"Pinned viewers" = "Pinned viewers"; +"Pin" = "Pin"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "Username or raw user PK. Pinned viewers always stay at the top of your story viewers list."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "Adds the eye button to story overlays. Off keeps seen blocking on without the button"; +"Advance on story like" = "Advance on story like"; +"Advance on story reply" = "Advance on story reply"; +"Advance when marking as seen" = "Advance when marking as seen"; +"Audio" = "Audio"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently."; +"Blocking mode" = "Blocking mode"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)"; +"Marked-seen indicator" = "Marked-seen indicator"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them"; +"Hide eye button" = "Hide eye button"; +"Fill eye button green" = "Fill eye button green"; +"Disable story seen receipt" = "Disable story seen receipt"; +"Enable story user list" = "Enable story user list"; +"Stops others from seeing that you viewed their story" = "Stops others from seeing that you viewed their story"; +"Inserts a button next to the seen/eye button on story overlays" = "Inserts a button next to the seen/eye button on story overlays"; +"Keep stories visually seen locally" = "Keep stories visually seen locally"; +"Liking a story automatically advances to the next one after a short delay" = "Liking a story automatically advances to the next one after a short delay"; +"Manage list" = "Manage list"; +"Manage list (%lu)" = "Manage list (%lu)"; +"Manual seen button mode" = "Manual seen button mode"; +"Mark seen on story like" = "Mark seen on story like"; +"Mark seen on story reply" = "Mark seen on story reply"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "Marks a story as seen the moment you tap the heart, even with seen blocking on"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server"; +"Master toggle. When off, the list is ignored" = "Master toggle. When off, the list is ignored"; +"Playback" = "Playback"; +"Search, sort, swipe to remove" = "Search, sort, swipe to remove"; +"Seen receipts" = "Seen receipts"; +"Sending a reply or emoji reaction automatically advances to the next story" = "Sending a reply or emoji reaction automatically advances to the next story"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "Adds a 'View mentions' entry to the action button menu and story 3-dot menu"; +"Mentions overlay button" = "Mentions overlay button"; +"Mentions count badge" = "Mentions count badge"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "Shows the number of unique mentioned accounts as a red badge on the overlay button"; +"Hide stories midcards" = "Hide stories midcards"; +"Removes the Trending and Music promo cards from the stories tray" = "Removes the Trending and Music promo cards from the stories tray"; +"Stickers" = "Stickers"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally."; +"Force legacy stickers in tray" = "Force legacy stickers in tray"; +"Adds Quiz and Reveal stickers back to the picker" = "Adds Quiz and Reveal stickers back to the picker"; +"Bypass Reveal sticker" = "Bypass Reveal sticker"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "Skip the DM-to-reveal step on stories with a Reveal sticker"; +"Show quiz answer" = "Show quiz answer"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "Circle the correct option on quiz stickers, or the leading option on polls"; +"Show poll vote counts" = "Show poll vote counts"; +"Show vote tallies on poll options and slider count/average before you vote" = "Show vote tallies on poll options and slider count/average before you vote"; +"Stop story auto-advance" = "Stop story auto-advance"; +"Stories" = "Stories"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "Stories won't auto-skip to the next one when the timer ends. Tap to advance manually"; +"Story audio toggle" = "Story audio toggle"; +"Story user list" = "Story user list"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "Tapping the eye button to mark a story as seen advances to the next story automatically"; +"This will send a story view receipt." = "This will send a story view receipt."; +"View story mentions" = "View story mentions"; +"Which stories get seen-receipt blocking" = "Which stories get seen-receipt blocking"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "Accurate active status"; +"Activity log" = "Activity log"; +"Loading…" = "Loading…"; +"Notify: %@ · Log: %@" = "Notify: %@ · Log: %@"; +"Add by user ID" = "Add by user ID"; +"Add by thread ID" = "Add by thread ID"; +"Adding…" = "Adding…"; +"Browse activity, grouped by person" = "Browse activity, grouped by person"; +"Clear activity log?" = "Clear activity log?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "No activity yet.\nWhen someone reads your message or comes online, it shows up here."; +"No one found. Check the spelling or try a different name." = "No one found. Check the spelling or try a different name."; +"Notify about someone" = "Notify about someone"; +"Open some chats first, or search a username above." = "Open some chats first, or search a username above."; +"Pick what each person notifies you about" = "Pick what each person notifies you about"; +"Recent in your DMs" = "Recent in your DMs"; +"Results" = "Results"; +"This removes all recorded activity on this device." = "This removes all recorded activity on this device."; +"Active %ldd ago" = "Active %ldd ago"; +"Active %ldh ago" = "Active %ldh ago"; +"Active %ldm ago" = "Active %ldm ago"; +"Activity notifications" = "Activity notifications"; +"Also track reads in group chats. Groups can be noisy" = "Also track reads in group chats. Groups can be noisy"; +"Came online" = "Came online"; +"Customise notifications" = "Customise notifications"; +"Everyone" = "Everyone"; +"Muted" = "Muted"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "No one is customised yet. Hold someone in the activity log to choose what they notify."; +"Online, offline, typing and read receipts, per person" = "Online, offline, typing and read receipts, per person"; +"Per-person notifications" = "Per-person notifications"; +"Enable activity" = "Enable activity"; +"Track who reads your messages, comes online, goes offline or types" = "Track who reads your messages, comes online, goes offline or types"; +"For everyone" = "For everyone"; +"For this person" = "For this person"; +"Log only" = "Log only"; +"Notify only" = "Notify only"; +"Notify + log" = "Notify + log"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "Log only records silently. Notify only pings you without keeping it. Notify + log does both."; +"Presence" = "Presence"; +"Read your message" = "Read your message"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline."; +"Started typing" = "Started typing"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "Tap to change what they notify. Swipe to remove and fall back to the defaults."; +"These override the defaults for this person." = "These override the defaults for this person."; +"Went offline" = "Went offline"; +"When someone becomes active" = "When someone becomes active"; +"When someone goes inactive" = "When someone goes inactive"; +"When someone opens a message you sent" = "When someone opens a message you sent"; +"When someone starts typing to you" = "When someone starts typing to you"; +"is now active" = "is now active"; +"is typing…" = "is typing…"; +"went offline" = "went offline"; +"Online" = "Online"; +"Offline" = "Offline"; +"Typing" = "Typing"; +"Filters" = "Filters"; +"Delete the selected records? This can't be undone." = "Delete the selected records? This can't be undone."; +"Delete all records for the selected chats? This can't be undone." = "Delete all records for the selected chats? This can't be undone."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "Adds the eye button to DM threads. Off keeps receipt blocking on without the button"; +"Auto mark seen on interact" = "Auto mark seen on interact"; +"Auto mark seen on typing" = "Auto mark seen on typing"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "Blocks the auto read receipt — mark seen happens only when you choose"; +"Control when messages are marked as seen" = "Control when messages are marked as seen"; +"How the seen button behaves" = "How the seen button behaves"; +"Manually mark messages as seen" = "Manually mark messages as seen"; +"Mark as seen?" = "Mark as seen?"; +"Mark as viewed?" = "Mark as viewed?"; +"Mark seen locally" = "Mark seen locally"; +"Marks messages as seen when you reply, react or send media" = "Marks messages as seen when you reply, react or send media"; +"Marks messages as seen when you start typing" = "Marks messages as seen when you start typing"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt"; +"Read receipt mode" = "Read receipt mode"; +"Read receipts" = "Read receipts"; +"Show seen button" = "Show seen button"; +"This will send a read receipt for the latest messages." = "This will send a read receipt for the latest messages."; +"This will send a view receipt for the current message." = "This will send a view receipt for the current message."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "Activity"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio"; +"Allows typing and sending DMs longer than Instagram's limit" = "Allows typing and sending DMs longer than Instagram's limit"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages"; +"Adds copy text, download GIF/audio to the note long-press menu" = "Adds copy text, download GIF/audio to the note long-press menu"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove."; +"Block keep-deleted for excluded chats" = "Block keep-deleted for excluded chats"; +"Block keep-deleted for unlisted chats" = "Block keep-deleted for unlisted chats"; +"Bypass DM character limit" = "Bypass DM character limit"; +"Chat list" = "Chat list"; +"Confirmation dialog before clearing preserved messages" = "Confirmation dialog before clearing preserved messages"; +"Copies note text directly on long press without opening the menu" = "Copies note text directly on long press without opening the menu"; +"Copy text on hold" = "Copy text on hold"; +"Adds Background, Text and Emoji buttons to the note editor" = "Adds Background, Text and Emoji buttons to the note editor"; +"Custom note themes" = "Custom note themes"; +"Disable vanish mode swipe" = "Disable vanish mode swipe"; +"Disable typing status" = "Disable typing status"; +"Disable view-once limitations" = "Disable view-once limitations"; +"Download voice messages" = "Download voice messages"; +"Enable chat list" = "Enable chat list"; +"Enable note theming" = "Enable note theming"; +"Enables the notes theme picker" = "Enables the notes theme picker"; +"Files" = "Files"; +"Full last active date" = "Full last active date"; +"Hide reels blend button" = "Hide reels blend button"; +"Hide send to group chat" = "Hide send to group chat"; +"Pin recipients on long-press" = "Pin recipients on long-press"; +"Long-press in the share sheet to pin a chat/user to the top" = "Long-press in the share sheet to pin a chat/user to the top"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "Long-press a recipient to pin or unpin. Pinned recipients render at the top."; +"Recipient pinned" = "Recipient pinned"; +"Recipient unpinned" = "Recipient unpinned"; +"Couldn't resolve recipient id" = "Couldn't resolve recipient id"; +"Hide video call button" = "Hide video call button"; +"Hide voice call button" = "Hide voice call button"; +"Hides the blend button in DMs" = "Hides the blend button in DMs"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "Removes the create/send to group chat row when sharing to multiple recipients"; +"Hides typing indicator from others" = "Hides typing indicator from others"; +"Indicate unsent messages" = "Indicate unsent messages"; +"Keep deleted messages" = "Keep deleted messages"; +"Turns view once messages into normal media you can loop and pause" = "Turns view once messages into normal media you can loop and pause"; +"Note actions" = "Note actions"; +"Preserves messages that others unsend" = "Preserves messages that others unsend"; +"Keep my deleted messages" = "Keep my deleted messages"; +"Also preserves messages you unsend yourself" = "Also preserves messages you unsend yourself"; +"Prevents accidental swipe-up activation of vanish mode" = "Prevents accidental swipe-up activation of vanish mode"; +"Quick list button in chats" = "Quick list button in chats"; +"Removes the audio call button from DM thread header" = "Removes the audio call button from DM thread header"; +"Removes the video call button from DM thread header" = "Removes the video call button from DM thread header"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled"; +"Search, sort, swipe to remove or toggle keep-deleted" = "Search, sort, swipe to remove or toggle keep-deleted"; +"Send audio as file" = "Send audio as file"; +"Send files (experimental)" = "Send files (experimental)"; +"File sending not available" = "File sending not available"; +"Show full date instead of \"Active 2h ago\"" = "Show full date instead of \"Active 2h ago\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "Shows a button in DM threads to add/remove chats from the list. Long-press for more options"; +"Shows a notification pill when a message is unsent" = "Shows a notification pill when a message is unsent"; +"Shows an \"Unsent\" label on preserved messages" = "Shows an \"Unsent\" label on preserved messages"; +"Unlimited replay of visual messages" = "Unlimited replay of visual messages"; +"Unsent message notification" = "Unsent message notification"; +"Voice messages" = "Voice messages"; +"Warn before clearing on refresh" = "Warn before clearing on refresh"; +"Which chats get read-receipt blocking" = "Which chats get read-receipt blocking"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu deleted"; +"%lu selected" = "%lu selected"; +"Absolute date + time" = "Absolute date + time"; +"Adjust the filters or clear the search to see more." = "Adjust the filters or clear the search to see more."; +"All time" = "All time"; +"Browse, filter and search recorded messages" = "Browse, filter and search recorded messages"; +"Captures unsent messages with their text or media" = "Captures unsent messages with their text or media"; +"Clear deleted-message log?" = "Clear deleted-message log?"; +"Clear from this user" = "Clear from this user"; +"Clear log" = "Clear log"; +"Clear log for this account" = "Clear log for this account"; +"Clear log for this user?" = "Clear log for this user?"; +"Clear media files" = "Clear media files"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account."; +"Close" = "Close"; +"Content unavailable" = "Content unavailable"; +"Copied" = "Copied"; +"Copy URL" = "Copy URL"; +"Date range" = "Date range"; +"Deleted messages" = "Deleted messages"; +"Deleted messages log" = "Deleted messages log"; +"Deleted: %@\n" = "Deleted: %@\n"; +"Edit %lu" = "Edit %lu"; +"Edit history" = "Edit history"; +"Edited" = "Edited"; +"Empty" = "Empty"; +"Enable deleted messages log" = "Enable deleted messages log"; +"Enable Settings → Messages → Deleted messages log to start recording." = "Enable Settings → Messages → Deleted messages log to start recording."; +"GIF" = "GIF"; +"Hashtag" = "Hashtag"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "Kind: %@\n"; +"Last 30 days" = "Last 30 days"; +"Last 7 days" = "Last 7 days"; +"Link" = "Link"; +"Live location" = "Live location"; +"Location" = "Location"; +"Logging is off" = "Logging is off"; +"Media on disk" = "Media on disk"; +"Most messages" = "Most messages"; +"Most recent" = "Most recent"; +"No deleted messages yet" = "No deleted messages yet"; +"No matches" = "No matches"; +"Nothing to save" = "Nothing to save"; +"Oldest first" = "Oldest first"; +"Open log" = "Open log"; +"Group chat" = "Group chat"; +"%lu messages in %lu chats" = "%lu messages in %lu chats"; +"%lu people · %lu deleted" = "%lu people · %lu deleted"; +"When someone unsends a message, it will appear here grouped by chat." = "When someone unsends a message, it will appear here grouped by chat."; +"Clear this chat" = "Clear this chat"; +"Clear log for this chat?" = "Clear log for this chat?"; +"Removes every preserved deleted message from this group chat." = "Removes every preserved deleted message from this group chat."; +"Reaction removed" = "Reaction removed"; +"Log removed reactions" = "Log removed reactions"; +"Also records when someone removes a reaction, and which message it was on" = "Also records when someone removes a reaction, and which message it was on"; +"Removed a reaction" = "Removed a reaction"; +"on @%@: %@" = "on @%@: %@"; +"on: %@" = "on: %@"; +"a message" = "a message"; +"removed %@ on: %@" = "removed %@ on: %@"; +"removed reaction %@" = "removed reaction %@"; +"%@ removed the %@ reaction." = "%@ removed the %@ reaction."; +"Removed %@" = "Removed %@"; +"Someone" = "Someone"; +"Photo or video" = "Photo or video"; +"Refresh names & photos" = "Refresh names & photos"; +"Refreshing names & photos" = "Refreshing names & photos"; +"Records every message someone unsends, grouped by chat" = "Records every message someone unsends, grouped by chat"; +"Open profile" = "Open profile"; +"Original" = "Original"; +"Play" = "Play"; +"Post" = "Post"; +"Reel" = "Reel"; +"Relative (1m / 3h / 3d ago)" = "Relative (1m / 3h / 3d ago)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "Removes every preserved deleted message and its captured media for the current account. This cannot be undone."; +"Removes every preserved deleted message and its captured media for this account." = "Removes every preserved deleted message and its captured media for this account."; +"Removes every preserved deleted message from this sender." = "Removes every preserved deleted message from this sender."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "Removes every saved photo, video and voice clip. Records keep their text and sender info."; +"Search messages" = "Search messages"; +"Search senders or messages" = "Search senders or messages"; +"Select" = "Select"; +"Show edit history" = "Show edit history"; +"Source URL recorded but media not stored.\n" = "Source URL recorded but media not stored.\n"; +"Sticker" = "Sticker"; +"Tap to open in Instagram" = "Tap to open in Instagram"; +"Tap to open in Maps" = "Tap to open in Maps"; +"Tap to play" = "Tap to play"; +"Tap to play · %@" = "Tap to play · %@"; +"Text" = "Text"; +"This account" = "This account"; +"Unknown" = "Unknown"; +"Video" = "Video"; +"View" = "View"; +"Voice" = "Voice"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect."; + +"Send image as drawing" = "Send image as drawing"; + +"Bypass \"You can't send messages\"" = "Bypass \"You can't send messages\""; +"Custom chat background" = "Custom chat background"; +"DM Save button" = "DM Save button"; +"Incoming calls stay silent — no ring, no screen, no notification" = "Incoming calls stay silent — no ring, no screen, no notification"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share"; +"Messages" = "Messages"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "Removes the blocked composer banner and restores the text input in restricted threads"; +"Reroute native Save" = "Reroute native Save"; +"Save media" = "Save media"; +"Silence incoming calls" = "Silence incoming calls"; +"Threads" = "Threads"; +"Use your own images as chat backgrounds" = "Use your own images as chat backgrounds"; +"Activity status toggle" = "Activity status toggle"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "Adds a dot to the inbox header. Tap it to turn your activity status on or off"; +"Activity status on" = "Activity status on"; +"Activity status off" = "Activity status off"; +"Couldn't change activity status" = "Couldn't change activity status"; +"Check your connection and try again" = "Check your connection and try again"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "Camera"; +"Viewer" = "Viewer"; +"Saving" = "Saving"; +"Confirmations" = "Confirmations"; +"Confirm switching button" = "Confirm switching button"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "Adds a button next to the action button that turns the switching confirmation on or off on the spot"; +"Switching confirmation on" = "Switching confirmation on"; +"Switching confirmation off" = "Switching confirmation off"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "Adds a gallery button to the instants camera so you can send a photo from your album"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries"; +"All loaded instants" = "All loaded instants"; +"Auto advance after reaction" = "Auto advance after reaction"; +"Automatically moves to the next instant after you like or react" = "Automatically moves to the next instant after you like or react"; +"Auto close when finished" = "Auto close when finished"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "Closes the instants viewer once you have seen them all instead of landing on the camera"; +"Bypasses the Instants screenshot block" = "Bypasses the Instants screenshot block"; +"Could not locate the instant on screen" = "Could not locate the instant on screen"; +"Current instant" = "Current instant"; +"In-app Gallery" = "In-app Gallery"; +"Instant" = "Instant"; +"Instants" = "Instants"; +"Auto-saved instants log" = "Auto-saved instants log"; +"Auto-save instants" = "Auto-save instants"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "Automatically saves every instant you view, including as you swipe — each one only once"; +"Instants action button" = "Instants action button"; +"No instants currently loaded" = "No instants currently loaded"; +"No media available to save" = "No media available to save"; +"Photos library" = "Photos library"; +"Pick from" = "Pick from"; +"Queued %lu instants" = "Queued %lu instants"; +"Save all to Gallery" = "Save all to Gallery"; +"Save all to Photos" = "Save all to Photos"; +"Save to Gallery" = "Save to Gallery"; +"Send from gallery" = "Send from gallery"; +"Tweaks for the QuickSnap / Instants camera surface." = "Tweaks for the QuickSnap / Instants camera surface."; +"Use" = "Use"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "Also hide the bottom tab bar — only the inbox is visible"; +"Show the home shortcut button in the inbox header, on the right" = "Show the home shortcut button in the inbox header, on the right"; +"Greyed out until the home shortcut button is enabled in Interface" = "Greyed out until the home shortcut button is enabled in Interface"; +"Hide search tab" = "Hide search tab"; +"Remove the search/explore button from the tab bar" = "Remove the search/explore button from the tab bar"; +"Hide tab bar" = "Hide tab bar"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab."; +"Icon order" = "Icon order"; +"Launch tab" = "Launch tab"; +"Swipe sideways to move between the tab bar tabs" = "Swipe sideways to move between the tab bar tabs"; +"Messages only" = "Messages only"; +"Messages-only mode" = "Messages-only mode"; +"Automatic schedule" = "Automatic schedule"; +"DM-only client, hide tabs, auto schedule" = "DM-only client, hide tabs, auto schedule"; +"Start time" = "Start time"; +"End time" = "End time"; +"Switch into Messages-only on its own during a time window" = "Switch into Messages-only on its own during a time window"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends."; +"Active now · ends %@" = "Active now · ends %@"; +"Next window starts %@" = "Next window starts %@"; +"Messages-only starting" = "Messages-only starting"; +"Messages-only ending" = "Messages-only ending"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "Your Messages-only window has started. Restart Instagram to switch to DM-only."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "Your Messages-only window has ended. Restart Instagram to bring back the other tabs."; +"Navigation" = "Navigation"; +"Swipe between tabs" = "Swipe between tabs"; +"Tab the app opens to. Ignored when Messages-only is on" = "Tab the app opens to. Ignored when Messages-only is on"; +"How the icons on the bottom tab bar are ordered" = "How the icons on the bottom tab bar are ordered"; +"Hidden tabs" = "Hidden tabs"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back."; +"All tabs are on the bar" = "All tabs are on the bar"; +"Turn IG into a DM-only client" = "Turn IG into a DM-only client"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "All"; +"Calls" = "Calls"; +"Comments & posts" = "Comments & posts"; +"Confirm actions" = "Confirm actions"; +"Confirm changing theme" = "Confirm changing theme"; +"Confirm disappearing media mark as viewed" = "Confirm disappearing media mark as viewed"; +"Confirm DM mark as seen" = "Confirm DM mark as seen"; +"Confirm follow" = "Confirm follow"; +"Confirm follow requests" = "Confirm follow requests"; +"Confirm Instants capture" = "Confirm Instants capture"; +"Confirm Instants emoji reaction" = "Confirm Instants emoji reaction"; +"Confirm like: Posts" = "Confirm like: Posts"; +"Confirm like: Reels" = "Confirm like: Reels"; +"Confirm note emoji reaction" = "Confirm note emoji reaction"; +"Confirm note like" = "Confirm note like"; +"Confirm posting comment" = "Confirm posting comment"; +"Confirm repost" = "Confirm repost"; +"Confirm send to group chat" = "Confirm send to group chat"; +"Confirm sticker interaction (highlights)" = "Confirm sticker interaction (highlights)"; +"Confirm sticker interaction (stories)" = "Confirm sticker interaction (stories)"; +"Confirm story emoji reaction" = "Confirm story emoji reaction"; +"Confirm story like" = "Confirm story like"; +"Confirm story mark as seen" = "Confirm story mark as seen"; +"Confirm switching Instant" = "Confirm switching Instant"; +"Confirm unfollow" = "Confirm unfollow"; +"Confirm vanish mode" = "Confirm vanish mode"; +"Confirm video call" = "Confirm video call"; +"Confirm voice call" = "Confirm voice call"; +"Confirm voice messages" = "Confirm voice messages"; +"Follows" = "Follows"; +"Likes" = "Likes"; +"Messaging" = "Messaging"; +"Reaction stickers only" = "Reaction stickers only"; +"Reactions" = "Reactions"; +"Send to group chat?" = "Send to group chat?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "Shows an alert before creating/sending to a group chat from the share sheet"; +"Shows an alert before marking a disappearing message as viewed" = "Shows an alert before marking a disappearing message as viewed"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "Shows an alert before sending a read receipt from the DM seen button or menu"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "Shows an alert before sending a story view receipt from the eye button or menu"; +"Shows an alert before sending an emoji reaction on a note" = "Shows an alert before sending an emoji reaction on a note"; +"Shows an alert before sending an emoji reaction on a story" = "Shows an alert before sending an emoji reaction on a story"; +"Shows an alert before sending an emoji reaction on an Instant" = "Shows an alert before sending an emoji reaction on an Instant"; +"Shows an alert before sending a photo or video from the Instants camera" = "Shows an alert before sending a photo or video from the Instants camera"; +"Shows an alert before tapping to switch to the next/previous Instant" = "Shows an alert before tapping to switch to the next/previous Instant"; +"Asks you to confirm before a voice message sends" = "Asks you to confirm before a voice message sends"; +"Shows an alert to confirm before toggling vanish mode" = "Shows an alert to confirm before toggling vanish mode"; +"Confirms before you accept or decline a follow request" = "Confirms before you accept or decline a follow request"; +"Confirms before a chat theme change applies" = "Confirms before a chat theme change applies"; +"Confirms before the follow button follows someone" = "Confirms before the follow button follows someone"; +"Shows an alert when you click the like button on notes to confirm the like" = "Shows an alert when you click the like button on notes to confirm the like"; +"Shows an alert when you click the like button on posts to confirm the like" = "Shows an alert when you click the like button on posts to confirm the like"; +"Confirms before a like lands on a reel" = "Confirms before a like lands on a reel"; +"Shows an alert when you click the like button on stories to confirm the like" = "Shows an alert when you click the like button on stories to confirm the like"; +"Confirms before a comment posts" = "Confirms before a comment posts"; +"Shows an alert when you click the repost button to confirm before reposting" = "Shows an alert when you click the repost button to confirm before resposting"; +"Shows an alert when you click the unfollow button to confirm" = "Shows an alert when you click the unfollow button to confirm"; +"Shows an alert when you click the video call button to confirm before calling" = "Shows an alert when you click the video call button to confirm before calling"; +"Shows an alert when you click the voice call button to confirm before calling" = "Shows an alert when you click the voice call button to confirm before calling"; +"Shows an alert when you tap a sticker inside a highlight" = "Shows an alert when you tap a sticker inside a highlight"; +"Shows an alert when you tap a sticker on someone's story" = "Shows an alert when you tap a sticker on someone's story"; +"Stories & highlights" = "Stories & highlights"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld h"; +"%ld locked" = "%ld locked"; +"%ld min" = "%ld min"; +"%ldh idle" = "%ldh idle"; +"%ldm idle" = "%ldm idle"; +"%lds" = "%lds"; +"%lds idle" = "%lds idle"; +"%lu hidden" = "%lu hidden"; +"4 digits" = "4 digits"; +"6 digits" = "6 digits"; +"Add hidden chat" = "Add hidden chat"; +"Add locked chat" = "Add locked chat"; +"Allow Instants screenshots" = "Allow Instants screenshots"; +"Always ask when opening again" = "Always ask when opening again"; +"Ask again after Instagram returns" = "Ask again after Instagram returns"; +"Auto-relock after idle" = "Auto-relock after idle"; +"Balanced default" = "Balanced default"; +"Best for sensitive sections" = "Best for sensitive sections"; +"Biometric" = "Biometric"; +"Change passcode" = "Change passcode"; +"Chat hidden" = "Chat hidden"; +"Chat unhidden" = "Chat unhidden"; +"Chat locked" = "Chat locked"; +"Chat unlocked" = "Chat unlocked"; +"Choose a code you'll remember." = "Choose a code you'll remember."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background."; +"Confirm current passcode" = "Confirm current passcode"; +"Confirm passcode" = "Confirm passcode"; +"Could not save passcode" = "Could not save passcode"; +"Create passcode" = "Create passcode"; +"Derivation failed" = "Derivation failed"; +"DM inbox" = "DM inbox"; +"Don't share unlock" = "Don't share unlock"; +"Each target has its own enable, timeout, and re-lock configuration." = "Each target has its own enable, timeout, and re-lock configuration."; +"Enable lock" = "Enable lock"; +"Enter passcode" = "Enter passcode"; +"Enter value" = "Enter value"; +"Enter your current passcode to change it" = "Enter your current passcode to change it"; +"Enter your current passcode to reset it" = "Enter your current passcode to reset it"; +"Enter your passcode to continue" = "Enter your passcode to continue"; +"every use" = "every use"; +"Every use" = "Every use"; +"Hidden chats" = "Hidden chats"; +"Hidden chats hidden" = "Hidden chats hidden"; +"Hidden chats revealed" = "Hidden chats revealed"; +"👁 Shown in the inbox · Tap to hide" = "👁 Shown in the inbox · Tap to hide"; +" · shown in inbox" = " · shown in inbox"; +"Hide chat" = "Hide chat"; +"Unhide chat" = "Unhide chat"; +"Hold name to reveal" = "Hold name to reveal"; +"Hide message preview" = "Hide message preview"; +"Hide this chat?" = "Hide this chat?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts."; +"Idle timeout" = "Idle timeout"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "Keep this target locked separately"; +"Less frequent prompts" = "Less frequent prompts"; +"Lock" = "Lock"; +"Lock chat" = "Lock chat"; +"Lock every time" = "Lock every time"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "Lock every time overrides idle timeout. Don't share unlock keeps this target separate."; +"Lock targets" = "Lock targets"; +"Lock the tweak" = "Lock the tweak"; +"Lock this chat" = "Lock this chat"; +"Lock this chat?" = "Lock this chat?"; +"Lock with passcode" = "Lock with passcode"; +"Locked chats" = "Locked chats"; +"Long-press a chat to lock it individually" = "Long-press a chat to lock it individually"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list."; +"Long-press a DM to add" = "Long-press a DM to add"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "Long-press the account name atop the DM inbox to show or hide your hidden chats"; +"Longest idle window" = "Longest idle window"; +"Manage locked chats" = "Manage locked chats"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "Master switch. Turn off to disable every lock target without losing per-target configuration."; +"Never" = "Never"; +"No passcode set" = "No passcode set"; +"Nothing here yet." = "Nothing here yet."; +"Off" = "Off"; +"On" = "On"; +"On — %@" = "On — %@"; +"On — %@ + %ld more" = "On — %@ + %ld more"; +"On — no targets enabled" = "On — no targets enabled"; +"Passcode" = "Passcode"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app."; +"Passcode changed" = "Passcode changed"; +"Passcode reset" = "Passcode reset"; +"Passcode set" = "Passcode set"; +"Passcode too short" = "Passcode too short"; +"Passcodes did not match — try again" = "Passcodes did not match — try again"; +"Per-chat locks" = "Per-chat locks"; +"Prompt before Instagram opens" = "Prompt before Instagram opens"; +"Prompt before Profile Analyzer opens" = "Prompt before Profile Analyzer opens"; +"Prompt before the deleted-messages log opens" = "Prompt before the deleted-messages log opens"; +"Prompt before the gallery opens" = "Prompt before the gallery opens"; +"Prompt before tweak settings open" = "Prompt before tweak settings open"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "Prompt on every entry to the DM inbox, including launch-to-messages"; +"Re-enter the same passcode" = "Re-enter the same passcode"; +"Re-lock on background" = "Re-lock on background"; +"re-lock on bg" = "re-lock on bg"; +"Recently hidden" = "Recently hidden"; +"Prompt before holding the inbox name reveals hidden chats" = "Prompt before holding the inbox name reveals hidden chats"; +"Reveal hidden chats" = "Reveal hidden chats"; +"Recently locked" = "Recently locked"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "Redact RyukGram buttons from screenshots, screen recordings, and mirroring"; +"Remove screenshot alert" = "Remove screenshot alert"; +"Replace inbox preview with • • •" = "Replace inbox preview with • • •"; +"Require passcode for this section" = "Require passcode for this section"; +"Requires your current passcode" = "Requires your current passcode"; +"Reset passcode" = "Reset passcode"; +"Reset passcode?" = "Reset passcode?"; +"Screenshots & capture" = "Screenshots & capture"; +"Security & Privacy" = "Security & Privacy"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself."; +"Set passcode" = "Set passcode"; +"Short idle window" = "Short idle window"; +"Stay unlocked until app close or background" = "Stay unlocked until app close or background"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media"; +"Tap Unlock" = "Tap Unlock"; +"Tap Unlock or enter your passcode" = "Tap Unlock or enter your passcode"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched."; +"Thread %@" = "Thread %@"; +"Tweak settings" = "Tweak settings"; +"Unlock" = "Unlock"; +"Unlock %@" = "Unlock %@"; +"Unlock chat" = "Unlock chat"; +"Unlock Instagram" = "Unlock Instagram"; +"Unlock this chat" = "Unlock this chat"; +"Use %@" = "Use %@"; +"Username (looks up the DM thread) or raw thread ID" = "Username (looks up the DM thread) or raw thread ID"; +"Username or thread ID" = "Username or thread ID"; +"Wrong passcode" = "Wrong passcode"; +"Wrong passcode • %ld attempts" = "Wrong passcode • %ld attempts"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "Protection"; +"Password-protect" = "Password-protect"; +"On — tap to change" = "On — tap to change"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost."; +"Optional. Lock the backup behind a password so only you can restore it." = "Optional. Lock the backup behind a password so only you can restore it."; +"Backup password" = "Backup password"; +"You'll need this to restore. It can't be recovered if lost." = "You'll need this to restore. It can't be recovered if lost."; +"Password" = "Password"; +"Confirm password" = "Confirm password"; +"Set" = "Set"; +"Use at least 4 characters." = "Use at least 4 characters."; +"The passwords don't match." = "The passwords don't match."; +"Try again" = "Try again"; +"Encrypted backup" = "Encrypted backup"; +"Enter the password used to protect this backup." = "Enter the password used to protect this backup."; +"Wrong password. Try again." = "Wrong password. Try again."; +"Decrypting backup…" = "Decrypting backup…"; +"Encrypting backup…" = "Encrypting backup…"; +"%ld of %ld selected · %@" = "%ld of %ld selected · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "Tick each store to include. Tap a row to inspect what's stored."; + +"%lu account(s)" = "%lu account(s)"; +"%lu account(s) · %lu image(s) · %@" = "%lu account(s) · %lu image(s) · %@"; +"%lu file(s) · %@" = "%lu file(s) · %@"; +"%lu preferences" = "%lu preferences"; +"(none)" = "(none)"; +"Apply backup?" = "Apply backup?"; +"Applying backup…" = "Applying backup…"; +"archive error" = "archive error"; +"Archived snapshots" = "Archived snapshots"; +"Backup & Restore" = "Backup & Restore"; +"Backup exported" = "Backup exported"; +"Backup failed" = "Backup failed"; +"Backup has no importable sections." = "Backup has no importable sections."; +"Chat & story filters" = "Chat & story filters"; +"Chat backgrounds" = "Chat backgrounds"; +"Corrupt entry path." = "Corrupt entry path."; +"Could not decompress archive." = "Could not decompress archive."; +"Could not open archive." = "Could not open archive."; +"Could not open staging file." = "Could not open staging file."; +"Could not read the backup archive." = "Could not read the backup archive."; +"Could not write archive." = "Could not write archive."; +"Could not write backup file." = "Could not write backup file."; +"Could not write extracted file." = "Could not write extracted file."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak."; +"Feature data" = "Feature data"; +"Import mode" = "Import mode"; +"Merge" = "Merge"; +"Replace" = "Replace"; +"Add the backup's data to what's already here" = "Add the backup's data to what's already here"; +"Clear existing data, then apply the backup" = "Clear existing data, then apply the backup"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery."; +"Replace clears existing data for each ticked item, then applies the backup." = "Replace clears existing data for each ticked item, then applies the backup."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect."; +"Hidden & locked chats" = "Hidden & locked chats"; +"Import" = "Import"; +"Inspect the full manifest" = "Inspect the full manifest"; +"Load a .json or .ryukbak backup" = "Load a .json or .ryukbak backup"; +"Not a RyukGram backup archive." = "Not a RyukGram backup archive."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "Put settings back to defaults and clear data"; +"Swipe a row to clear it." = "Swipe a row to clear it."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "Rows marked Shared aren't tied to an account and always follow their own tick."; +"%lu file(s)" = "%lu file(s)"; +"Clear all data" = "Clear all data"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone."; +"Accounts" = "Accounts"; +"All accounts (%ld)" = "All accounts (%ld)"; +"Pick at least one account." = "Pick at least one account."; +"Signed in" = "Signed in"; +"Shared" = "Shared"; +"Per-account data is limited to the accounts ticked here." = "Per-account data is limited to the accounts ticked here."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone."; +"Preparing backup…" = "Preparing backup…"; +"Reading backup…" = "Reading backup…"; +"RyukGram's own data on this device" = "RyukGram's own data on this device"; +"Save settings or a full backup" = "Save settings or a full backup"; +"Tick what to apply. Rows not in this backup are hidden." = "Tick what to apply. Rows not in this backup are hidden."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle."; +"Truncated entry data." = "Truncated entry data."; +"Truncated entry length." = "Truncated entry length."; +"Truncated entry path." = "Truncated entry path."; +"Unsafe entry path." = "Unsafe entry path."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "Advanced"; +"All tweak options are disabled" = "All tweak options are disabled"; +"Auto-clear cache" = "Auto-clear cache"; +"Automatically opens settings when the app launches" = "Automatically opens settings when the app launches"; +"Cache" = "Cache"; +"Cache cleared" = "Cache cleared"; +"Calculating cache size…" = "Calculating cache size…"; +"Clear" = "Clear"; +"Clear cache" = "Clear cache"; +"Clear cache (%@)" = "Clear cache (%@)"; +"Clearing cache…" = "Clearing cache…"; +"Clearing still scans on demand." = "Clearing still scans on demand."; +"Daily" = "Daily"; +"Disable all tweak options" = "Disable all tweak options"; +"Disable safe mode" = "Disable safe mode"; +"Enable tweak settings quick-access" = "Enable tweak settings quick-access"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "Instagram runs stock while this is on. Turn it back off to restore your settings."; +"Tap to re-enable everything" = "Tap to re-enable everything"; +"Turn every feature off — your settings are kept" = "Turn every feature off — your settings are kept"; +"Fix duplicate notifications" = "Fix duplicate notifications"; +"Free %@ of Instagram cache." = "Free %@ of Instagram cache."; +"Freed %@" = "Freed %@"; +"Hold on the home tab to open RyukGram settings" = "Hold on the home tab to open RyukGram settings"; +"Monthly" = "Monthly"; +"Nothing to clear" = "Nothing to clear"; +"Off skips the size scan when Advanced opens." = "Off skips the size scan when Advanced opens."; +"Pause playback when opening settings" = "Pause playback when opening settings"; +"Always show what's new" = "Always show what's new"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "Keep the blue dot on every new feature instead of clearing it once viewed"; +"Preserve messages database" = "Preserve messages database"; +"Pauses any playing video/audio when settings opens" = "Pauses any playing video/audio when settings opens"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "Prevents Instagram from resetting settings after crashes (at your own risk)"; +"Prevents two banners for the same message when IG is in the foreground" = "Prevents two banners for the same message when IG is in the foreground"; +"Remove Instagram's cached images, videos, and temporary files." = "Remove Instagram's cached images, videos, and temporary files."; +"Reset onboarding state" = "Reset onboarding state"; +"Run a silent cache clear on launch when the interval has elapsed." = "Run a silent cache clear on launch when the interval has elapsed."; +"Show cache size" = "Show cache size"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "Skip the messages database when clearing — keeps DMs, drafts, and saved messages."; +"Show tweak settings on app launch" = "Show tweak settings on app launch"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it."; +"Weekly" = "Weekly"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "Actions"; +"Advanced experimental features" = "Advanced experimental features"; +"All experimental toggles will be turned off. Instagram will restart." = "All experimental toggles will be turned off. Instagram will restart."; +"Direct Notes — Audio reply" = "Direct Notes — Audio reply"; +"Direct Notes — Avatar reply" = "Direct Notes — Avatar reply"; +"Direct Notes — Friend Map" = "Direct Notes — Friend Map"; +"Direct Notes — GIFs & stickers reply" = "Direct Notes — GIFs & stickers reply"; +"Direct Notes — Photo reply" = "Direct Notes — Photo reply"; +"Disabled after repeated crashes." = "Disabled after repeated crashes."; +"Enables GIF/sticker replies" = "Enables GIF/sticker replies"; +"Enables photo replies" = "Enables photo replies"; +"Enables the audio-note reply type" = "Enables the audio-note reply type"; +"Enables the avatar reply type" = "Enables the avatar reply type"; +"Experimental flags reset" = "Experimental flags reset"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times."; +"Forces Prism-gated experiments on" = "Forces Prism-gated experiments on"; +"Forces the Homecoming home surface / nav on" = "Forces the Homecoming home surface / nav on"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray"; +"Got it" = "Got it"; +"Heads up" = "Heads up"; +"Hidden Instagram experiments" = "Hidden Instagram experiments"; +"Hidden Instagram experiments (in Advanced)" = "Hidden Instagram experiments (in Advanced)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "Notes & QuickSnap"; +"Prism design system" = "Prism design system"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Shows the friend map entry in Direct Notes"; +"Surfaces" = "Surfaces"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Toggle hidden Instagram experiments. Some may not work on every account or IG version."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "Button Cell"; +"Change the value on the right" = "Change the value on the right"; +"Could not delete: %@" = "Could not delete: %@"; +"Debug" = "Debug"; +"Delete an imported override and fall back to the shipped strings" = "Delete an imported override and fall back to the shipped strings"; +"Deleted %@ override. Restart to apply." = "Deleted %@ override. Restart to apply."; +"Enable FLEX gesture" = "Enable FLEX gesture"; +"Enable file logging" = "Enable file logging"; +"Export strings" = "Export strings"; +"Hold 5 fingers on the screen to open FLEX" = "Hold 5 fingers on the screen to open FLEX"; +"I have %@%@" = "I have %@%@"; +"Import a .strings file for a language" = "Import a .strings file for a language"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "Import a .strings file to update a translation. Pick a language, select the file, restart."; +"Link Cell" = "Link Cell"; +"Localization" = "Localization"; +"Log file is empty" = "Log file is empty"; +"Logging" = "Logging"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share."; +"Menu Cell" = "Menu Cell"; +"Navigation Cell" = "Navigation Cell"; +"No imported localization files to reset." = "No imported localization files to reset."; +"No overrides" = "No overrides"; +"Open FLEX on app focus" = "Open FLEX on app focus"; +"Open FLEX on app launch" = "Open FLEX on app launch"; +"Opens FLEX when the app is focused" = "Opens FLEX when the app is focused"; +"Opens FLEX when the app launches" = "Opens FLEX when the app launches"; +"Pick a language and share its .strings file" = "Pick a language and share its .strings file"; +"Pick a language to delete the imported file" = "Pick a language to delete the imported file"; +"Pick a language to export" = "Pick a language to export"; +"Reset localization" = "Reset localization"; +"Share log file" = "Share log file"; +"Static Cell" = "Static Cell"; +"Stepper cell" = "Stepper cell"; +"Switch Cell" = "Switch Cell"; +"Switch Cell (Restart)" = "Switch Cell (Restart)"; +"Tap the switch" = "Tap the switch"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "These features rely on hidden Instagram flags and may not work on all accounts or versions."; +"Update localization file" = "Update localization file"; +"Using icon" = "Using icon"; +"Using image" = "Using image"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "%@ settings"; +"%lu items" = "%lu items"; +"Cancelled" = "Cancelled"; +"Carousel" = "Carousel"; +"Carousel · %lu items" = "Carousel · %lu items"; +"Copied %lu URLs" = "Copied %lu URLs"; +"Copied caption" = "Copied caption"; +"Copied download URL" = "Copied download URL"; +"Copied quality info" = "Copied quality info"; +"Copied video URL" = "Copied video URL"; +"Copy all URLs" = "Copy all URLs"; +"Copy caption" = "Copy caption"; +"Copy download URL" = "Copy download URL"; +"Could not extract any URLs" = "Could not extract any URLs"; +"Could not extract audio URL" = "Could not extract audio URL"; +"Could not extract media URL" = "Could not extract media URL"; +"Could not extract photo URL" = "Could not extract photo URL"; +"Could not extract video URL" = "Could not extract video URL"; +"Done" = "Done"; +"Download all stories and share?" = "Download all stories and share?"; +"Download all to Photos" = "Download all to Photos"; +"Download and share all" = "Download and share all"; +"Download failed" = "Download failed"; +"Downloaded %lu items" = "Downloaded %lu items"; +"Downloading audio…" = "Downloading audio…"; +"Failed to save" = "Failed to save"; +"File" = "File"; +"HD" = "HD"; +"HD download complete" = "HD download complete"; +"HD video" = "HD video"; +"Mute audio" = "Mute audio"; +"No caption on this post" = "No caption on this post"; +"No carousel children" = "No carousel children"; +"No cover image" = "No cover image"; +"No media" = "No media"; +"No media to expand" = "No media to expand"; +"No media to show" = "No media to show"; +"No media URL" = "No media URL"; +"No URLs" = "No URLs"; +"No URLs found" = "No URLs found"; +"No video URL" = "No video URL"; +"Not a carousel" = "Not a carousel"; +"Nothing to share" = "Nothing to share"; +"Opening creator…" = "Opening creator…"; +"Photo library access denied" = "Photo library access denied"; +"Photos access denied" = "Photos access denied"; +"Preparing repost…" = "Preparing repost…"; +"Raw image" = "Raw image"; +"Repost" = "Repost"; +"Repost unavailable" = "Repost unavailable"; +"Save failed" = "Save failed"; +"Saved %lu items" = "Saved %lu items"; +"Saved to Photos" = "Saved to Photos"; +"Saved to RyukGram" = "Saved to RyukGram"; +"Saving to Photos" = "Saving to Photos"; +"Saving…" = "Saving…"; +"Unmute audio" = "Unmute audio"; +"Video · %@" = "Video · %@"; +"View cover" = "View cover"; +"View mentions" = "View mentions"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "Free"; +"Chat font saved" = "Chat font saved"; +"Reopen this chat to see the new font" = "Reopen this chat to see the new font"; +"Remove background" = "Remove background"; +"No subject found" = "No subject found"; +"No stickers yet" = "No stickers yet"; +"Send drawing" = "Send drawing"; +"Send my drawing" = "Send my drawing"; +"Paste image / sticker" = "Paste image / sticker"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "Tap any sticker on your keyboard\nto add it to your drawing"; + +" %lu votes · avg %.0f%% " = " %lu votes · avg %.0f%% "; +"%@ can't be converted" = "%@ can't be converted"; +"%@ unsent a message" = "%@ unsent a message"; +"%@ unsent a message from %@" = "%@ unsent a message from %@"; +"A message was unsent" = "A message was unsent"; +"Add" = "Add"; +"Add to block list" = "Add to block list"; +"Added to block list" = "Added to block list"; +"Added to exclude list" = "Added to exclude list"; +"Audio not loaded yet. Play the message first and try again." = "Audio not loaded yet. Play the message first and try again."; +"Audio sent" = "Audio sent"; +"Audio URL not available" = "Audio URL not available"; +"Audio/Video from Files" = "Audio/Video from Files"; +"Blocked" = "Blocked"; +"Cancel" = "Cancel"; +"Clear preserved messages?" = "Clear preserved messages?"; +"Converting…" = "Converting…"; +"Copy link" = "Copy link"; +"Copy text" = "Copy text"; +"Could not copy selected video" = "Could not copy selected video"; +"Could not find media" = "Could not find media"; +"Could not find story media" = "Could not find story media"; +"Could not get audio data. Try again after refreshing the chat." = "Could not get audio data. Try again after refreshing the chat."; +"Disable read receipts" = "Disable read receipts"; +"Disappearing media" = "Disappearing media"; +"Download audio" = "Download audio"; +"Enable read receipts" = "Enable read receipts"; +"Error: %@" = "Error: %@"; +"Exclude chat" = "Exclude chat"; +"Exclude from seen" = "Exclude from seen"; +"Exclude story seen" = "Exclude story seen"; +"Excluded" = "Excluded"; +"Extracting audio…" = "Extracting audio…"; +"FFmpeg conversion failed" = "FFmpeg conversion failed"; +"File sending not supported" = "File sending not supported"; +"Follow" = "Follow"; +"Following" = "Following"; +"Format not supported without FFmpegKit" = "Format not supported without FFmpegKit"; +"Inserts a button on disappearing media overlays" = "Inserts a button on disappearing media overlays"; +"Inserts a speaker button to mute/unmute disappearing media" = "Inserts a speaker button to mute/unmute disappearing media"; +"Inserts an eye button to mark the current disappearing media as viewed" = "Inserts an eye button to mark the current disappearing media as viewed"; +"Link copied" = "Link copied"; +"Mark as viewed" = "Mark as viewed"; +"Marking as viewed advances to the next stacked media instead of closing" = "Marking as viewed advances to the next stacked media instead of closing"; +"Mark messages as seen" = "Mark messages as seen"; +"Mark seen" = "Mark seen"; +"Marked as viewed" = "Marked as viewed"; +"Marked messages as seen" = "Marked messages as seen"; +"Mentions" = "Mentions"; +"Message from %@ was unsent" = "Message from %@ was unsent"; +"Message sender not found" = "Message sender not found"; +"Messages settings" = "Messages settings"; +"Mute story audio" = "Mute story audio"; +"no audio track could be read" = "no audio track could be read"; +"No audio URL found. Try again after refreshing the chat." = "No audio URL found. Try again after refreshing the chat."; +"No mentions in this story" = "No mentions in this story"; +"No thread key" = "No thread key"; +"No video selected" = "No video selected"; +"No voice send method found" = "No voice send method found"; +"Note has no downloadable content" = "Note has no downloadable content"; +"Note text copied" = "Note text copied"; +"Open GitHub" = "Open GitHub"; +"Pick audio or video" = "Pick audio or video"; +"Read receipts disabled" = "Read receipts disabled"; +"Read receipts enabled" = "Read receipts enabled"; +"Read receipts will be blocked for this chat." = "Read receipts will be blocked for this chat."; +"Read receipts will no longer be blocked for this chat." = "Read receipts will no longer be blocked for this chat."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone."; +"Remove" = "Remove"; +"Remove from block list" = "Remove from block list"; +"Remove from exclude list" = "Remove from exclude list"; +"Removed" = "Removed"; +"Removed from list" = "Removed from list"; +"Save GIF" = "Save GIF"; +"Selection too short (min 0.5s)" = "Selection too short (min 0.5s)"; +"Send anyway" = "Send anyway"; +"Send Audio" = "Send Audio"; +"Send failed: %@" = "Send failed: %@"; +"Send File" = "Send File"; +"Send service not found" = "Send service not found"; +"Show audio toggle" = "Show audio toggle"; +"Show mark-as-viewed button" = "Show mark-as-viewed button"; +"Story read receipts disabled" = "Story read receipts disabled"; +"Story read receipts enabled" = "Story read receipts enabled"; +"This chat will resume normal read-receipt behavior." = "This chat will resume normal read-receipt behavior."; +"This file" = "This file"; +"Total: %@" = "Total: %@"; +"Un-exclude chat" = "Un-exclude chat"; +"Un-exclude story seen" = "Un-exclude story seen"; +"Un-excluded" = "Un-excluded"; +"Unblocked" = "Unblocked"; +"Unlimited replay enabled" = "Unlimited replay enabled"; +"Unmute story audio" = "Unmute story audio"; +"Unsent" = "Unsent"; +"Upload Audio" = "Upload Audio"; +"VC not found" = "VC not found"; +"Video from Library" = "Video from Library"; +"Visual messages will expire" = "Visual messages will expire"; +"Visual messages: expiring" = "Visual messages: expiring"; +"Visual messages: unlimited replay" = "Visual messages: unlimited replay"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "Add Background"; +"Add Chat Background" = "Add Chat Background"; +"Adds your own image backgrounds to Instagram chats" = "Adds your own image backgrounds to Instagram chats"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right."; +"Blur" = "Blur"; +"Browse chats" = "Browse chats"; +"Browse chats (%ld)" = "Browse chats (%ld)"; +"Change Background" = "Change Background"; +"Change default" = "Change default"; +"Chat Backgrounds" = "Chat Backgrounds"; +"Choose an image used when no chat override exists" = "Choose an image used when no chat override exists"; +"Clear default" = "Clear default"; +"Couldn't import image" = "Couldn't import image"; +"Adjust settings" = "Adjust settings"; +"Choose Media" = "Choose Media"; +"Converting GIF" = "Converting GIF"; +"Couldn't import video" = "Couldn't import video"; +"Crop & resize" = "Crop & resize"; +"Crop & trim" = "Crop & trim"; +"Custom Chat Background" = "Custom Chat Background"; +"Default background" = "Default background"; +"Dim in dark mode" = "Dim in dark mode"; +"Enable custom backgrounds" = "Enable custom backgrounds"; +"Enter a username, chat name, or thread ID." = "Enter a username, chat name, or thread ID."; +"Group" = "Group"; +"Image Settings" = "Image Settings"; +"Auto bubble color" = "Auto bubble color"; +"Bubble color" = "Bubble color"; +"Me" = "Me"; +"Both" = "Both"; +"Gradient" = "Gradient"; +"Direction" = "Direction"; +"Vertical" = "Vertical"; +"Horizontal" = "Horizontal"; +"Diagonal" = "Diagonal"; +"Text color" = "Text color"; +"Automatic (contrast)" = "Automatic (contrast)"; +"Choose color…" = "Choose color…"; +"Tap to apply · hold to edit" = "Tap to apply · hold to edit"; +"Library" = "Library"; +"Library, default, and per-chat overrides will be deleted." = "Library, default, and per-chat overrides will be deleted."; +"No Custom" = "No Custom"; +"Opacity" = "Opacity"; +"Photo Library" = "Photo Library"; +"Pick default" = "Pick default"; +"Pinch + drag to position" = "Pinch + drag to position"; +"Quit and reopen Instagram for the change to take effect." = "Quit and reopen Instagram for the change to take effect."; +"Recently set" = "Recently set"; +"Remove the global fallback background" = "Remove the global fallback background"; +"Replace the default background image" = "Replace the default background image"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "Reset sets opacity to 1.0, blur to 0, dim to 0."; +"RyukGram Gallery" = "RyukGram Gallery"; +"Search username, name, or thread ID" = "Search username, name, or thread ID"; +"Set as default" = "Set as default"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "Tap plus to add. Tap a background to edit, set as default, or delete."; +"This Chat Background" = "This Chat Background"; +"Thread ID" = "Thread ID"; +"Used only when a chat does not have its own custom background." = "Used only when a chat does not have its own custom background."; +"View and manage chats with custom backgrounds" = "View and manage chats with custom backgrounds"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "Add location"; +"Add preset" = "Add preset"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched."; +"Apply & restart" = "Apply & restart"; +"Background" = "Background"; +"Behavior" = "Behavior"; +"Change location" = "Change location"; +"Clipboard is not an Instagram URL" = "Clipboard is not an Instagram URL"; +"Comments hidden" = "Comments hidden"; +"Comments shown" = "Comments shown"; +"Copied text to clipboard" = "Copied text to clipboard"; +"Copy" = "Copy"; +"Copy bio" = "Copy bio"; +"Copy name" = "Copy name"; +"Could not find cover image" = "Could not find cover image"; +"Current: %@" = "Current: %@"; +"Dark" = "Dark"; +"Disable" = "Disable"; +"Download GIF" = "Download GIF"; +"Dropped pin" = "Dropped pin"; +"Emoji" = "Emoji"; +"Enable" = "Enable"; +"Enable Location Services for Instagram in Settings to use your current location." = "Enable Location Services for Instagram in Settings to use your current location."; +"Enter emoji" = "Enter emoji"; +"Fake location" = "Fake location"; +"Force theme" = "Force theme"; +"Keyboard theme" = "Keyboard theme"; +"Light" = "Light"; +"Location access denied" = "Location access denied"; +"Location Services off" = "Location Services off"; +"Name" = "Name"; +"Nothing to copy" = "Nothing to copy"; +"Off, Light, Dark, or OLED" = "Off, Light, Dark, or OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "OLED chat theme"; +"Open Settings" = "Open Settings"; +"Optional per-surface overrides. Each one is independent of the theme above." = "Optional per-surface overrides. Each one is independent of the theme above."; +"Override iOS appearance regardless of system mode" = "Override iOS appearance regardless of system mode"; +"Override the keyboard appearance when typing" = "Override the keyboard appearance when typing"; +"Pick location" = "Pick location"; +"Pure black DM thread + incoming bubbles" = "Pure black DM thread + incoming bubbles"; +"Save" = "Save"; +"Save preset" = "Save preset"; +"Saved locations" = "Saved locations"; +"Select color" = "Select color"; +"Set location" = "Set location"; +"The theme RyukGram applies to Instagram." = "The theme RyukGram applies to Instagram."; +"Theme" = "Theme"; +"Turn Location Services on in Settings → Privacy to use your current location." = "Turn Location Services on in Settings → Privacy to use your current location."; +"Type an emoji to use as the note bubble icon." = "Type an emoji to use as the note bubble icon."; +"Profile picture" = "Profile picture"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu accounts? The first %ld will be processed to avoid rate limits."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu accounts? This runs sequentially with a short pause between each."; +"%@ followers · %@ following" = "%@ followers · %@ following"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%dd ago"; +"%dh ago" = "%dh ago"; +"%dm ago" = "%dm ago"; +"%lu accounts followed" = "%lu accounts followed"; +"%lu accounts unfollowed" = "%lu accounts unfollowed"; +"%lu followers · %lu following" = "%lu followers · %lu following"; +"%lu followers removed" = "%lu followers removed"; +"%lu of %lu" = "%lu of %lu"; +"%lu of %lu checks on" = "%lu of %lu checks on"; +"%lu saved · comparing against %@" = "%lu saved · comparing against %@"; +"(empty)" = "(empty)"; +"(no analyzer data)" = "(no analyzer data)"; +"a saved snapshot" = "a saved snapshot"; +"About Profile Analyzer" = "About Profile Analyzer"; +"All preferences (%lu)" = "All preferences (%lu)"; +"Analysis complete" = "Analysis complete"; +"Analysis failed" = "Analysis failed"; +"Another analysis is already running" = "Another analysis is already running"; +"Available after your next scan" = "Available after your next scan"; +"Batch follow" = "Batch follow"; +"Batch follow finished" = "Batch follow finished"; +"Batch remove followers" = "Batch remove followers"; +"Batch remove followers finished" = "Batch remove followers finished"; +"Batch unfollow" = "Batch unfollow"; +"Batch unfollow finished" = "Batch unfollow finished"; +"Categories" = "Categories"; +"Checks" = "Checks"; +"Clear visited profiles" = "Clear visited profiles"; +"Compare next scan against" = "Compare next scan against"; +"Comparing against %@" = "Comparing against %@"; +"Continue" = "Continue"; +"Couldn't fetch profile information" = "Couldn't fetch profile information"; +"Delete %lu snapshots? This can't be undone." = "Delete %lu snapshots? This can't be undone."; +"Delete (%lu)" = "Delete (%lu)"; +"Delete snapshots" = "Delete snapshots"; +"Delete this snapshot? This can't be undone." = "Delete this snapshot? This can't be undone."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device."; +"Export" = "Export"; +"Fetching followers (%lu/%ld)…" = "Fetching followers (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "Fetching following (%lu/%ld)…"; +"Fetching profile info…" = "Fetching profile info…"; +"File is not a valid RyukGram backup." = "File is not a valid RyukGram backup."; +"Filter" = "Filter"; +"Filter · %lu" = "Filter · %lu"; +"First scan: %@" = "First scan: %@"; +"First scan: we collect your followers and following lists and save them locally." = "First scan: we collect your followers and following lists and save them locally."; +"Follow back" = "Follow back"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "Follower count exceeds %ld — analysis disabled to avoid rate limits."; +"Followers" = "Followers"; +"Following… %lu / %lu" = "Following… %lu / %lu"; +"Gained since last scan" = "Gained since last scan"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk."; +"Import complete" = "Import complete"; +"Include" = "Include"; +"Keep newest" = "Keep newest"; +"Keep newest snapshots" = "Keep newest snapshots"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app."; +"Last scan: %@" = "Last scan: %@"; +"Logs every profile you open. Stays on-device." = "Logs every profile you open. Stays on-device."; +"Lost followers" = "Lost followers"; +"Most visited" = "Most visited"; +"Mutual followers" = "Mutual followers"; +"Name: %@ → %@" = "Name: %@ → %@"; +"New followers" = "New followers"; +"NEW" = "NEW"; +"New first" = "New first"; +"New only" = "New only"; +"No active Instagram session found" = "No active Instagram session found"; +"No results" = "No results"; +"No scan yet" = "No scan yet"; +"Not following you back" = "Not following you back"; +"Not verified only" = "Not verified only"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "Nothing is uploaded — everything stays on this device and can be wiped from the trash icon."; +"Nothing was applied." = "Nothing was applied."; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "Older snapshots beyond the limit are removed automatically"; +"Older snapshots beyond this limit are deleted on the next scan." = "Older snapshots beyond this limit are deleted on the next scan."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown."; +"Posts" = "Posts"; +"Preferences" = "Preferences"; +"Previous scan" = "Previous scan"; +"Private account" = "Private account"; +"Private only" = "Private only"; +"Profile Analyzer" = "Profile Analyzer"; +"Profile Analyzer data" = "Profile Analyzer data"; +"Profile picture changed" = "Profile picture changed"; +"Profile updates" = "Profile updates"; +"Profiles you've opened recently" = "Profiles you've opened recently"; +"Raw" = "Raw"; +"Raw JSON" = "Raw JSON"; +"Record snapshots" = "Record snapshots"; +"Remove @%@ as a follower?" = "Remove @%@ as a follower?"; +"Remove follower" = "Remove follower"; +"Removing… %lu / %lu" = "Removing… %lu / %lu"; +"Recording" = "Recording"; +"Request failed" = "Request failed"; +"Reset analyzer data" = "Reset analyzer data"; +"Reset complete" = "Reset complete"; +"Reset everything" = "Reset everything"; +"Reset selected data?" = "Reset selected data?"; +"Reset snapshots" = "Reset snapshots"; +"Rolling — always your last run" = "Rolling — always your last run"; +"Run analysis" = "Run analysis"; +"Run your first analysis" = "Run your first analysis"; +"Save a dated entry on every scan" = "Save a dated entry on every scan"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates."; +"Settings" = "Settings"; +"Since last scan" = "Since last scan"; +"Snapshot" = "Snapshot"; +"Snapshot saved" = "Snapshot saved"; +"Snapshots" = "Snapshots"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here."; +"Sort" = "Sort"; +"Starting…" = "Starting…"; +"They follow you, you don't follow back" = "They follow you, you don't follow back"; +"This can't be undone." = "This can't be undone."; +"Ticked data will be cleared. Tap a row to see what's stored." = "Ticked data will be cleared. Tap a row to see what's stored."; +"Today" = "Today"; +"Too many followers" = "Too many followers"; +"Too many followers to analyze" = "Too many followers to analyze"; +"Track visited profiles" = "Track visited profiles"; +"Tracking" = "Tracking"; +"Tracking off — enable below to log visits" = "Tracking off — enable below to log visits"; +"Unfollow" = "Unfollow"; +"Unfollow %lu" = "Unfollow %lu"; +"Unfollow @%@?" = "Unfollow @%@?"; +"Unfollowed you since last scan" = "Unfollowed you since last scan"; +"Unfollowing… %lu / %lu" = "Unfollowing… %lu / %lu"; +"Unlimited" = "Unlimited"; +"Username A → Z" = "Username A → Z"; +"Username Z → A" = "Username Z → A"; +"Username, name or picture changes" = "Username, name or picture changes"; +"Username: @%@ → @%@" = "Username: @%@ → @%@"; +"Using %@ across %lu snapshots." = "Using %@ across %lu snapshots."; +"Verified only" = "Verified only"; +"Visited" = "Visited"; +"Visited profiles" = "Visited profiles"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits."; +"You both follow each other" = "You both follow each other"; +"You don't follow back" = "You don't follow back"; +"You follow them, they don't follow back" = "You follow them, they don't follow back"; +"You started following" = "You started following"; +"Your current scan was archived" = "Your current scan was archived"; +"You unfollowed" = "You unfollowed"; +"your previous scan" = "your previous scan"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ This is getting large — lower the limit or delete older snapshots to free space."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "Absolute format"; +"Add chat" = "Add chat"; +"Add custom domain" = "Add custom domain"; +"Add to list?" = "Add to list?"; +"Add user" = "Add user"; +"Apply" = "Apply"; +"Apply to" = "Apply to"; +"Chats" = "Chats"; +"Colored" = "Colored"; +"Could not read file." = "Could not read file."; +"Could not resolve user ID" = "Could not resolve user ID"; +"Current location" = "Current location"; +"Custom" = "Custom"; +"Delete" = "Delete"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to."; +"Enable fake location" = "Enable fake location"; +"Excluded chats" = "Excluded chats"; +"Excluded users" = "Excluded users"; +"Follow default" = "Follow default"; +"Force OFF (allow unsends)" = "Force OFF (allow unsends)"; +"Force ON (preserve unsends)" = "Force ON (preserve unsends)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "Include seconds when the format already shows time. The custom format controls seconds itself with {ss}."; +"Add custom format…" = "Add custom format…"; +"Edit" = "Edit"; +"Template" = "Template"; +"Placeholders" = "Placeholders"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "Placeholders are replaced with date parts; anything else is shown as-is."; +"Tap a placeholder to insert it at the cursor." = "Tap a placeholder to insert it at the cursor."; +"Included chats" = "Included chats"; +"Included users" = "Included users"; +"KD: default" = "KD: default"; +"KD: ON" = "KD: ON"; +"Keep-deleted" = "Keep-deleted"; +"Keep-deleted override" = "Keep-deleted override"; +"Name (A–Z)" = "Name (A–Z)"; +"No DM thread found with @%@" = "No DM thread found with @%@"; +"Presets" = "Presets"; +"Recently added" = "Recently added"; +"Relative time" = "Relative time"; +"Relative within" = "Relative within"; +"Remove from list" = "Remove from list"; +"Reset" = "Reset"; +"Search" = "Search"; +"Search address or place" = "Search address or place"; +"Search by name or username" = "Search by name or username"; +"Search by username or name" = "Search by username or name"; +"Select location on map" = "Select location on map"; +"Set current location" = "Set current location"; +"Set keep-deleted override" = "Set keep-deleted override"; +"Show map button" = "Show map button"; +"Show relative time for dates younger than this many days. 0 disables it." = "Show relative time for dates younger than this many days. 0 disables it."; +"Show seconds" = "Show seconds"; +"Sort by" = "Sort by"; +"Thread" = "Thread"; +"Time" = "Time"; +"Use this location" = "Use this location"; +"User '%@' not found" = "User '%@' not found"; +"Username (A–Z)" = "Username (A–Z)"; +"Within %ld days" = "Within %ld days"; +"Within 1 day" = "Within 1 day"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "No password found"; +"No text field found" = "No text field found"; +"Refresh Reels?" = "Refresh Reels?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu accounts"; +"%lu loaded" = "%lu loaded"; +"%lu loaded · all loaded" = "%lu loaded · all loaded"; +"Doesn't follow you" = "Doesn't follow you"; +"Everyone is already loaded." = "Everyone is already loaded."; +"Filter & sort" = "Filter & sort"; +"Follows me" = "Follows me"; +"Follows me first" = "Follows me first"; +"Follows you" = "Follows you"; +"Hides everyone who doesn't match all picked filters." = "Hides everyone who doesn't match all picked filters."; +"Jump to bottom" = "Jump to bottom"; +"Jump to top" = "Jump to top"; +"List" = "List"; +"List fully loaded" = "List fully loaded"; +"Load more" = "Load more"; +"Loaded more" = "Loaded more"; +"Mutuals" = "Mutuals"; +"Mutuals first" = "Mutuals first"; +"Note copied" = "Note copied"; +"People I follow" = "People I follow"; +"People I follow first" = "People I follow first"; +"Reverse order" = "Reverse order"; +"Show only" = "Show only"; +"Verified" = "Verified"; +"Verified first" = "Verified first"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(unset)"; +"720p • progressive • fastest" = "720p • progressive • fastest"; +"Add language" = "Add language"; +"Album name" = "Album name"; +"Are you sure?" = "Are you sure?"; +"Bundle" = "Bundle"; +"Copy audio URL" = "Copy audio URL"; +"Copy quality info" = "Copy quality info"; +"Copy video URL" = "Copy video URL"; +"Could not access reel media" = "Could not access reel media"; +"Could not access reel photo" = "Could not access reel photo"; +"Could not write file." = "Could not write file."; +"Download all and share?" = "Download all and share?"; +"Download Quality" = "Download Quality"; +"Downloading %d%%" = "Downloading %d%%"; +"e.g. 1000000" = "e.g. 1000000"; +"Localization file not found" = "Localization file not found"; +"Enter the language code (e.g. fr, de, ja)" = "Enter the language code (e.g. fr, de, ja)"; +"Error" = "Error"; +"Extras" = "Extras"; +"FFmpegKit Debug" = "FFmpegKit Debug"; +"File is empty or not a valid .strings file." = "File is empty or not a valid .strings file."; +"KD: OFF" = "KD: OFF"; +"Keep-deleted: OFF" = "Keep-deleted: OFF"; +"Keep-deleted: ON" = "Keep-deleted: ON"; +"Later" = "Later"; +"Loading" = "Loading"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "Name of the Photos album RyukGram saves into. Leave empty to restore the default."; +"Next" = "Next"; +"No results found." = "No results found."; +"No!" = "No!"; +"Pick a language to update, or add a new one" = "Pick a language to update, or add a new one"; +"Preset" = "Preset"; +"Restart" = "Restart"; +"Restart now" = "Restart now"; +"Restart required" = "Restart required"; +"Saved preset \"%@\"" = "Saved preset \"%@\""; +"selected" = "selected"; +"Shared icon, or override per button" = "Shared icon, or override per button"; +"Speed" = "Speed"; +"Unset" = "Unset"; +"Update localization" = "Update localization"; +"Updated %@ (%ld keys). Restart to apply." = "Updated %@ (%ld keys). Restart to apply."; +"Use default" = "Use default"; +"Username or PK" = "Username or PK"; +"Username or raw user PK" = "Username or raw user PK"; +"Yes" = "Yes"; +"You must restart the app to apply this change" = "You must restart the app to apply this change"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "Enjoying RyukGram?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going."; +"Donate" = "Donate"; +"I already did" = "I already did"; +"Maybe later" = "Maybe later"; +"This means a lot" = "This means a lot"; +"Appreciate the support" = "Appreciate the support"; +"No worries, enjoy the tweak" = "No worries, enjoy the tweak"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, Donate"; +"About" = "About"; +"Arabic translation" = "Arabic translation"; +"Chinese (Traditional and Simplified) translation" = "Chinese (Traditional and Simplified) translation"; +"Credits" = "Credits"; +"Developers" = "Developers"; +"installed" = "installed"; +"Korean translation" = "Korean translation"; +"Portuguese (Brazil) translation" = "Portuguese (Brazil) translation"; +"Turkish translation" = "Turkish translation"; +"Vietnamese translation" = "Vietnamese translation"; +"French translation" = "French translation"; +"Japanese translation" = "Japanese translation"; +"Code contributions" = "Code contributions"; +"Following feed mode (from InstaSane)" = "Following feed mode (from InstaSane)"; +"latest" = "latest"; +"Links" = "Links"; +"No releases" = "No releases"; +"SCInsta developer" = "SCInsta developer"; +"Release notes" = "Release notes"; +"Releases" = "Releases"; +"Report an issue" = "Report an issue"; +"Russian translation" = "Russian translation"; +"RyukGram developer" = "RyukGram developer"; +"Join Telegram channel" = "Join Telegram channel"; +"Source code" = "Source code"; +"View on GitHub" = "View on GitHub"; +"Spanish translation" = "Spanish translation"; +"Inspirations" = "Inspirations"; +"Inspirations, contributors, translators" = "Inspirations, contributors, translators"; +"Code and research" = "Code and research"; +"Translators" = "Translators"; +"BHInstagram developer" = "BHInstagram developer"; +"OLED theme inspiration" = "OLED theme inspiration"; +"Donate to Ryuk" = "Donate to Ryuk"; +"Support RyukGram development" = "Support RyukGram development"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram is an independent project inspired by SCInsta."; +"Browse changes from previous releases" = "Browse changes from previous releases"; +"Code inspiration" = "Code inspiration"; +"zxPluginsInject sideload compatibility shim" = "zxPluginsInject sideload compatibility shim"; +"Telegram channel" = "Telegram channel"; +"Testing and feature suggestions" = "Testing and feature suggestions"; +"Version" = "Version"; +"Version, credits, and links" = "Version, credits, and links"; +"What's new in RyukGram" = "What's new in RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • progressive • silent"; +"Audio only" = "Audio only"; +"Audio ready" = "Audio ready"; +"Audio track %ld" = "Audio track %ld"; +"Download video at the highest available quality" = "Download video at the highest available quality"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit."; +"Encoding in software" = "Encoding in software"; +"Encoding speed" = "Encoding speed"; +"Enhanced downloads" = "Enhanced downloads"; +"Faster = lower quality" = "Faster = lower quality"; +"FFmpeg not available" = "FFmpeg not available"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "Hardware encoder isn't available in the background — your quality settings were kept."; +"No audio track found" = "No audio track found"; +"Photo" = "Photo"; +"Photo quality" = "Photo quality"; +"Size unknown" = "Size unknown"; +"calculating size…" = "calculating size…"; +"silent" = "silent"; +"Use highest resolution available" = "Use highest resolution available"; +"Video encoder locked up — restart Instagram to encode again" = "Video encoder locked up — restart Instagram to encode again"; +"Video only" = "Video only"; +"Video-only & every audio track" = "Video-only & every audio track"; +"Video quality" = "Video quality"; +"Which quality to download" = "Which quality to download"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' is not in this FFmpegKit build — using hardware h264 instead."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-bit 4:2:0. ~2x slower, smoother gradients."; +"10-bit colour. Slower, smoother gradients. Software only." = "10-bit colour. Slower, smoother gradients. Software only."; +"1080p30 baseline." = "1080p30 baseline."; +"4K30 baseline." = "4K30 baseline."; +"8-bit 4:2:0. Universal default." = "8-bit 4:2:0. Universal default."; +"8-bit 4:2:2 chroma. Niche playback." = "8-bit 4:2:2 chroma. Niche playback."; +"8-bit 4:2:2 chroma. Software only." = "8-bit 4:2:2 chroma. Software only."; +"8-bit 4:4:4 chroma. Software only." = "8-bit 4:4:4 chroma. Software only."; +"8-bit 4:4:4 full chroma. Niche playback." = "8-bit 4:4:4 full chroma. Niche playback."; +"8-bit. Best for modern devices." = "8-bit. Best for modern devices."; +"Advanced encoding" = "Advanced encoding"; +"Advanced encoding settings" = "Advanced encoding settings"; +"Archival quality." = "Archival quality."; +"Audio bitrate" = "Audio bitrate"; +"Audio channels" = "Audio channels"; +"Audio codec" = "Audio codec"; +"Audio conversion failed" = "Audio conversion failed"; +"Audio sample rate" = "Audio sample rate"; +"Balanced. libx264 default." = "Balanced. libx264 default."; +"Best practical quality per bit." = "Best practical quality per bit."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)."; +"Cartoons / anime." = "Cartoons / anime."; +"Cinematic. Smaller files." = "Cinematic. Smaller files."; +"Codec" = "Codec"; +"Container" = "Container"; +"Copy (passthrough)" = "Copy (passthrough)"; +"CRF quality" = "CRF quality"; +"Downloading video…" = "Downloading video…"; +"Easier to play back on weak devices." = "Easier to play back on weak devices."; +"Encoder unavailable" = "Encoder unavailable"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "Examples: 8M, 12M, 25M, 4500k. Leave empty for auto."; +"Failed to download video" = "Failed to download video"; +"Fast, fixed-bitrate, GPU-accelerated." = "Fast, fixed-bitrate, GPU-accelerated."; +"Fastest, worst compression." = "Fastest, worst compression."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file."; +"FFmpeg documentation" = "FFmpeg documentation"; +"FFmpeg mux failed" = "FFmpeg mux failed"; +"Frame rate" = "Frame rate"; +"H.264 level" = "H.264 level"; +"H.264 profile" = "H.264 profile"; +"Hardware (VideoToolbox)" = "Hardware (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it."; +"Keep original audio. Fast." = "Keep original audio. Fast."; +"Keep the source frame rate." = "Keep the source frame rate."; +"Let the encoder pick." = "Let the encoder pick."; +"Live-action video." = "Live-action video."; +"Lossless. Huge files." = "Lossless. Huge files."; +"Low-latency streaming." = "Low-latency streaming."; +"Manual ffmpeg controls in place of Encoding speed." = "Manual ffmpeg controls in place of Encoding speed."; +"Marginal gain, huge time cost." = "Marginal gain, huge time cost."; +"Max resolution" = "Max resolution"; +"Mono" = "Mono"; +"No tuning. Default." = "No tuning. Default."; +"None" = "None"; +"Pixel format" = "Pixel format"; +"Pixel format ignored" = "Pixel format ignored"; +"Preserve film grain." = "Preserve film grain."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p."; +"Re-encode. Use when source is opus or unsupported." = "Re-encode. Use when source is opus or unsupported."; +"Reset advanced encoding" = "Reset advanced encoding"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate."; +"Slideshow-like content." = "Slideshow-like content."; +"Slower, better compression per bit." = "Slower, better compression per bit."; +"Smaller, visible artefacts." = "Smaller, visible artefacts."; +"Software (libx264)" = "Software (libx264)"; +"Standard 8-bit." = "Standard 8-bit."; +"Stereo" = "Stereo"; +"Streaming default." = "Streaming default."; +"Strip metadata" = "Strip metadata"; +"Top of AAC." = "Top of AAC."; +"Tune" = "Tune"; +"Unknown error" = "Unknown error"; +"Very high quality." = "Very high quality."; +"Video bitrate" = "Video bitrate"; +"Video codec" = "Video codec"; +"Visually lossless. RyukGram default." = "Visually lossless. RyukGram default."; +"Widest compatibility, no B-frames." = "Widest compatibility, no B-frames."; +"Worst quality." = "Worst quality."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "Long-press gestures"; +"Inserts a button in the profile navigation header" = "Inserts a button in the profile navigation header"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu."; +"Configure menu" = "Configure menu"; +"Reorder, enable/disable, set default tap, show date" = "Reorder, enable/disable, set default tap, show date"; +"Reorder, enable/disable, set default tap" = "Reorder, enable/disable, set default tap"; +"RyukGram profile actions" = "RyukGram profile actions"; +"Reorder sections" = "Reorder sections"; +"Drag the ≡ handle to reorder sections." = "Drag the ≡ handle to reorder sections."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry."; +"Show as submenu" = "Show as submenu"; +"Collapse this section's actions behind a single entry" = "Collapse this section's actions behind a single entry"; +"Configure: %@" = "Configure: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "What happens on a single tap. Long-press always opens the full menu."; +"Reset to defaults" = "Reset to defaults"; +"This will restore the default sections, order, and toggles for this menu." = "This will restore the default sections, order, and toggles for this menu."; +"Audio & visibility" = "Audio & visibility"; +"DM disappearing media" = "DM disappearing media"; +"Bulk download" = "Bulk download"; +"Feed settings" = "Feed settings"; +"Reels settings" = "Reels settings"; +"Profile settings" = "Profile settings"; +"Stories settings" = "Stories settings"; +"Copy ID" = "Copy ID"; +"Copy Info" = "Copy Info"; +"Copy all info" = "Copy all info"; +"Copy media URL" = "Copy media URL"; +"Copy profile link" = "Copy profile link"; +"Copy username" = "Copy username"; +"Download" = "Download"; +"Download to Gallery" = "Download to Gallery"; +"Download all to Gallery" = "Download all to Gallery"; +"Exclude/include user" = "Exclude/include user"; +"Mute / unmute audio" = "Mute / unmute audio"; +"Save picture to Gallery" = "Save picture to Gallery"; +"Share picture" = "Share picture"; +"View picture" = "View picture"; +"Bio" = "Bio"; +"ID" = "ID"; +"Info" = "Info"; +"Profile info" = "profile info"; +"Profile link" = "Profile link"; +"Picture not found" = "Picture not found"; +"Private profile" = "Private profile"; +"Profile unavailable" = "Profile unavailable"; +"Public profile" = "Public profile"; +"Username" = "Username"; +"Followers: %@" = "Followers: %@"; +"Following: %@" = "Following: %@"; +"Copied %@" = "Copied %@"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(unknown)"; +"Added %lu" = "Added %lu"; +"All files deleted" = "All files deleted"; +"Browsing" = "Browsing"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "Found %lu items saved by a previous version. Restore them into your gallery now?"; +"Gallery data from a previous version was found. Restore it now?" = "Gallery data from a previous version was found. Restore it now?"; +"Gallery restored" = "Gallery restored"; +"Import failed" = "Import failed"; +"Import to Gallery" = "Import to Gallery"; +"Imported" = "Imported"; +"Importing…" = "Importing…"; +"Not Now" = "Not Now"; +"Nothing imported" = "Nothing imported"; +"Restore" = "Restore"; +"Restore Gallery" = "Restore Gallery"; +"Restore failed" = "Restore failed"; +"Restoring gallery…" = "Restoring gallery…"; +"By source" = "By source"; +"By type" = "By type"; +"By user" = "By user"; +"Clear filters" = "Clear filters"; +"Comment" = "Comment"; +"Create" = "Create"; +"Create & Move" = "Create & Move"; +"Delete %@?" = "Delete %@?"; +"Delete all files" = "Delete all files"; +"Delete all images" = "Delete all images"; +"Delete all videos" = "Delete all videos"; +"Delete by user" = "Delete by user"; +"Delete DM media" = "Delete DM media"; +"Delete feed posts" = "Delete feed posts"; +"Delete files" = "Delete files"; +"Delete Folder" = "Delete Folder"; +"Delete from Gallery?" = "Delete from Gallery?"; +"Delete profile pictures" = "Delete profile pictures"; +"Delete reels" = "Delete reels"; +"Delete selected" = "Delete selected"; +"Delete Selected Files?" = "Delete Selected Files?"; +"Delete stories" = "Delete stories"; +"Delete thumbnails" = "Delete thumbnails"; +"Deleted from Gallery" = "Deleted from Gallery"; +"Deleted selected files" = "Deleted selected files"; +"Deselect All" = "Deselect All"; +"DM media deleted" = "DM media deleted"; +"DMs" = "DMs"; +"Each user appears as a folder next to your real folders." = "Each user appears as a folder next to your real folders."; +"Each user gets a labelled section in the grid/list." = "Each user gets a labelled section in the grid/list."; +"Enable gallery" = "Enable gallery"; +"Failed" = "Failed"; +"Failed to delete" = "Failed to delete"; +"Favorite" = "Favorite"; +"Favorite selected" = "Favorite selected"; +"Favorites only" = "Favorites only"; +"Feed posts deleted" = "Feed posts deleted"; +"Files deleted" = "Files deleted"; +"Flat list. No grouping." = "Flat list. No grouping."; +"Folder name" = "Folder name"; +"Folders" = "Folders"; +"From RyukGram Gallery" = "From RyukGram Gallery"; +"Gallery" = "Gallery"; +"Gallery only" = "Gallery only"; +"Gallery save mode" = "Gallery save mode"; +"Gallery Settings" = "Gallery Settings"; +"GIFs" = "GIFs"; +"Grid columns" = "Grid columns"; +"Grid view" = "Grid view"; +"Group by user" = "Group by user"; +"Group first by" = "Group first by"; +"Order by" = "Order by"; +"Favorites first" = "Favorites first"; +"Any time" = "Any time"; +"This year" = "This year"; +"%ld columns" = "%ld columns"; +"Hold DM tab to open gallery" = "Hold DM tab to open gallery"; +"Images" = "Images"; +"Images deleted" = "Images deleted"; +"Images first" = "Images first"; +"item" = "item"; +"items" = "items"; +"Largest first" = "Largest first"; +"List view" = "List view"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "Long-press the inbox button in the bottom tab bar to open RyukGram gallery"; +"Manage" = "Manage"; +"More" = "More"; +"Move selected" = "Move selected"; +"Move to Folder" = "Move to Folder"; +"Name A-Z" = "Name A-Z"; +"Name Z-A" = "Name Z-A"; +"New Folder" = "New Folder"; +"New folder…" = "New folder…"; +"Newest first" = "Newest first"; +"No files in Gallery" = "No files in Gallery"; +"No files to delete" = "No files to delete"; +"No matching files" = "No matching files"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes."; +"Open" = "Open"; +"Open Original Post" = "Open Original Post"; +"Options" = "Options"; +"Other" = "Other"; +"Photos + Gallery" = "Photos + Gallery"; +"Photos only" = "Photos only"; +"Profile pictures deleted" = "Profile pictures deleted"; +"Reels deleted" = "Reels deleted"; +"Rename" = "Rename"; +"Rename Folder" = "Rename Folder"; +"Root" = "Root"; +"Save media from the preview screen\nto see it here." = "Save media from the preview screen\nto see it here."; +"Saved %lu items to Gallery" = "Saved %lu items to Gallery"; +"Saved to Gallery" = "Saved to Gallery"; +"Saving to Gallery" = "Saving to Gallery"; +"Search users" = "Search users"; +"Sections" = "Sections"; +"Select All" = "Select All"; +"Share" = "Share"; +"Share selected" = "Share selected"; +"Show favorites at top" = "Show favorites at top"; +"Show gallery entries in download menus and unlock the gallery button" = "Show gallery entries in download menus and unlock the gallery button"; +"Smallest first" = "Smallest first"; +"Source" = "Source"; +"Source user" = "Source user"; +"Storage" = "Storage"; +"Stories deleted" = "Stories deleted"; +"Story" = "Story"; +"The original content may no longer exist." = "The original content may no longer exist."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "This folder contains %ld file(s). They will be moved to the parent folder."; +"This folder is empty." = "This folder is empty."; +"This will permanently remove %ld file%@ from the gallery." = "This will permanently remove %ld file%@ from the gallery."; +"This will permanently remove %ld file(s)." = "This will permanently remove %ld file(s)."; +"This will permanently remove this file from the gallery." = "This will permanently remove this file from the gallery."; +"Thumb" = "Thumb"; +"Thumbnails deleted" = "Thumbnails deleted"; +"to Gallery" = "to Gallery"; +"Total files" = "Total files"; +"Total size" = "Total size"; +"Type" = "Type"; +"Unable to open original post" = "Unable to open original post"; +"Unable to open profile" = "Unable to open profile"; +"Unfavorite" = "Unfavorite"; +"Unknown user" = "Unknown user"; +"User files deleted" = "User files deleted"; +"Videos" = "Videos"; +"Videos deleted" = "Videos deleted"; +"Videos first" = "Videos first"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "When enabled, favorites are pinned above other files inside the current sort and folder context."; +"Where 'Download to Photos' actually writes when gallery is on" = "Where 'Download to Photos' actually writes when gallery is on"; +"Yesterday" = "Yesterday"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "Home shortcut button"; +"Show the extra button on the home top bar" = "Show the extra button on the home top bar"; +"Auto" = "Auto"; +"Icon" = "Icon"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu."; +"Changelog" = "Changelog"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "Adds an extra shortcut button beside the create-post + button on the home top bar."; +"All buttons" = "All buttons"; +"System" = "System"; +"Instagram language" = "Instagram language"; +"Choose icon, reorder actions, and enable menu items" = "Choose icon, reorder actions, and enable menu items"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled."; +"Configure button" = "Configure button"; +"Global Action Icons" = "Global Action Icons"; +"Interface" = "Interface"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "Override the icon for a specific button. Buttons left on Default follow the shared icon above."; +"Per button" = "Per button"; +"Show home shortcut button" = "Show home shortcut button"; +"%ld new" = "%ld new"; +"Tab bar" = "Tab bar"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "Drag the pill to position it"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "Drag the pill where you want it. Higher than center slides down, lower slides up."; + +"Notifications" = "Notifications"; +"Appearance" = "Appearance"; +"Routing" = "Routing"; +"Style" = "Style"; +"Position" = "Position"; +"Stack size" = "Stack size"; +"Duration" = "Duration"; +"Default surface" = "Default surface"; +"System notifications" = "System notifications"; +"Mirror to notification centre" = "Mirror to notification centre"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed."; +"Show while app is open" = "Show while app is open"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "Also deliver mirrored notifications as system banners while you're using the app, not just in the background."; +"Clear when app opens" = "Clear when app opens"; +"Remove mirrored notifications from notification centre when you return to the app." = "Remove mirrored notifications from notification centre when you return to the app."; +"Background mirror" = "Background mirror"; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "Appearance, routing, system notifications and every per-action override return to their defaults."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror."; +"Enable notifications" = "Enable notifications"; +"Haptic feedback" = "Haptic feedback"; +"Preview pill" = "Preview pill"; +"Preview download pill" = "Preview download pill"; +"Preview loading pill" = "Preview loading pill"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "Master switch. When off, no RyukGram pills or IG-native toasts are emitted."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule."; +"Top slides down, bottom slides up." = "Top slides down, bottom slides up."; +"How many pills can show at once before queueing." = "How many pills can show at once before queueing."; +"Multiplies how long toasts stay on screen." = "Multiplies how long toasts stay on screen."; +"Vibration on success/error pills." = "Vibration on success/error pills."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below."; +"What to use when an action doesn't have its own override." = "What to use when an action doesn't have its own override."; +"Tap to cycle: info → success → warning → error" = "Tap to cycle: info → success → warning → error"; +"Tap to cycle between success and failure" = "Tap to cycle between success and failure"; +"Progress UI — pill or off only." = "Progress UI — pill or off only."; +"Minimal" = "Minimal"; +"Colorful" = "Colorful"; +"Glow" = "Glow"; +"Island" = "Island"; +"Top" = "Top"; +"Bottom" = "Bottom"; +"Custom pill" = "Custom pill"; +"IG native toast" = "IG native toast"; +"Short" = "Short"; +"Normal" = "Normal"; +"Long" = "Long"; +"Very long" = "Very long"; +"Downloads & saving" = "Downloads & saving"; +"Copy to clipboard" = "Copy to clipboard"; +"Read receipts & seen" = "Read receipts & seen"; +"Block, exclude & pin" = "Block, exclude & pin"; +"Stories & messages" = "Stories & messages"; +"Voice & audio" = "Voice & audio"; +"Errors" = "Errors"; +"Download progress" = "Download progress"; +"Bulk download progress" = "Bulk download progress"; +"Repost progress" = "Repost progress"; +"Copied post / reel URL" = "Copied post / reel URL"; +"Copied comment text" = "Copied comment text"; +"Copied GIF link" = "Copied GIF link"; +"Copied note text" = "Copied note text"; +"Copied profile info" = "Copied profile info"; +"Copied audio URL" = "Copied audio URL"; +"Copied quality picker URL" = "Copied quality picker URL"; +"Copied unlocked password" = "Copied unlocked password"; +"Copied description text" = "Copied description text"; +"DM seen / read receipts" = "DM seen / read receipts"; +"Story seen / read receipts" = "Story seen / read receipts"; +"Someone read your message" = "Someone read your message"; +"User blocked / unblocked" = "User blocked / unblocked"; +"Chat added / removed from exclude" = "Chat added / removed from exclude"; +"Story user added / removed from exclude" = "Story user added / removed from exclude"; +"Share-sheet recipient pinned" = "Share-sheet recipient pinned"; +"Unsent message detected" = "Unsent message detected"; +"Reaction removed detected" = "Reaction removed detected"; +"%lu messages unsent" = "%lu messages unsent"; +"%lu reactions removed" = "%lu reactions removed"; +"%lu chats marked seen" = "%lu chats marked seen"; +"%lu stories marked seen" = "%lu stories marked seen"; +"%lu of your messages read" = "%lu of your messages read"; +"%lu notifications" = "%lu notifications"; +"Live comments toggled" = "Live comments toggled"; +"Custom GIF sent" = "Custom GIF sent"; +"GIF favorited / unfavorited" = "GIF favorited / unfavorited"; +"Voice DM sent" = "Voice DM sent"; +"Audio extraction status" = "Audio extraction status"; +"Profile Analyzer complete" = "Profile Analyzer complete"; +"Profile Analyzer progress" = "Profile Analyzer progress"; +"Media extraction failed" = "Media extraction failed"; +"Permission denied" = "Permission denied"; +"Validation error" = "Validation error"; +"Network / API error" = "Network / API error"; +"Action error fallback" = "Action error fallback"; +"Unlock failed" = "Unlock failed"; +"Chat locked / unlocked" = "Chat locked / unlocked"; +"Invalid clipboard link" = "Invalid clipboard link"; +"Experimental flag warning" = "Experimental flag warning"; +"Settings action confirmed" = "Settings action confirmed"; +"Cache clearing progress" = "Cache clearing progress"; +"Backup export / import" = "Backup export / import"; +"Other / uncategorized" = "Other / uncategorized"; +"Comment copied" = "Comment copied"; +"FFmpeg log copied" = "FFmpeg log copied"; +"GIF inserted" = "GIF inserted"; +"Story marked as seen" = "Story marked as seen"; +"Saved" = "Saved"; +"Tap to retry" = "Tap to retry"; +"Looks great" = "Looks great"; +"Something broke" = "Something broke"; +"Just so you know" = "Just so you know"; +"Success preview" = "Success preview"; +"Error preview" = "Error preview"; +"Warning preview" = "Warning preview"; +"Info preview" = "Info preview"; +"Preview download…" = "Preview download…"; +"Colors" = "Colors"; +"+ Add new language" = "+ Add new language"; +"Each chat can override this in the list" = "Each chat can override this in the list"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map."; +"Tap a preset to make it active. Swipe left to delete." = "Tap a preset to make it active. Swipe left to delete."; +"Override Instagram location reads." = "Override Instagram location reads."; +"Show the quick button in Friends Map." = "Show the quick button in Friends Map."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”."; +"Compact style" = "Compact style"; +"Example: “1h” instead of “1 hour ago”" = "Example: “1h” instead of “1 hour ago”"; +"Example: “Jan 5, 2026 (2h)”" = "Example: “Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue."; +"Combine with date" = "Combine with date"; +"Absolute then relative" = "Absolute then relative"; +"Relative – absolute" = "Relative – absolute"; +"Relative when young, absolute when older." = "Relative when young, absolute when older."; +"Example: “2h – Jan 5, 2026”" = "Example: “2h – Jan 5, 2026”"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "Catch view-once media unsent while you're away. ⚠️ May drain battery"; +"Disappearing (view-once) media" = "Disappearing (view-once) media"; +"Disappearing media expired before it could be saved" = "Disappearing media expired before it could be saved"; +"Disappearing media — gone before it could be saved" = "Disappearing media — gone before it could be saved"; +"Disappearing only" = "Disappearing only"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?"; +"Keep Instagram active in background" = "Keep Instagram active in background"; +"Media couldn’t be downloaded — the link expired" = "Media couldn’t be downloaded — the link expired"; +"Media wasn’t available to save" = "Media wasn’t available to save"; +"Retrying download…" = "Retrying download…"; +"Try to download again" = "Try to download again"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "Read receipts log"; +"Date" = "Date"; +"Reads" = "Reads"; +"Person" = "Person"; +"Chat" = "Chat"; +"%@ · on @%@" = "%@ · on @%@"; +"%lu read · %@" = "%lu read · %@"; +"%lu reads · %@" = "%lu reads · %@"; +"%lu reads · %lu reader · %@" = "%lu reads · %lu reader · %@"; +"%lu reads · %lu readers · %@" = "%lu reads · %lu readers · %@"; +"Clear all" = "Clear all"; +"Clear all records" = "Clear all records"; +"Detects when others read your messages and notifies you" = "Detects when others read your messages and notifies you"; +"Ignored people & chats" = "Ignored people & chats"; +"Ignored" = "Ignored"; +"Log group chats" = "Log group chats"; +"Most reads" = "Most reads"; +"Notifies and records when someone reads a message you sent" = "Notifies and records when someone reads a message you sent"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "Nothing is ignored. Long-press someone in the log to stop logging them."; +"Nothing matches your filters." = "Nothing matches your filters."; +"Read %@ · %@" = "Read %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "Record reads on this device. Off = notifications only, nothing stored"; +"Resume logging" = "Resume logging"; +"Search by username" = "Search by username"; +"Stop logging %@" = "Stop logging %@"; +"Delete records" = "Delete records"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them."; +"Swipe to remove. Removing resumes logging for that person or chat." = "Swipe to remove. Removing resumes logging for that person or chat."; +"Updating names and photos" = "Updating names and photos"; +"Your message" = "Your message"; +"read your message in %@" = "read your message in %@"; +"read your message" = "read your message"; +"Also track reads in group chats. Off by default — groups can be noisy" = "Also track reads in group chats. Off by default — groups can be noisy"; +"Refreshing…" = "Refreshing…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "Roll a new fingerprint"; +"New device fingerprint" = "New device fingerprint"; +"Roll new ID" = "Roll new ID"; +"Roll + clear IG data" = "Roll + clear IG data"; +"Generate fresh device identifiers" = "Generate fresh device identifiers"; +"Enter ID manually…" = "Enter ID manually…"; +"Manual device ID" = "Manual device ID"; +"Paste or type the UUID this device should report." = "Paste or type the UUID this device should report."; +"Device ID set" = "Device ID set"; +"New fingerprint ready" = "New fingerprint ready"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "Relaunch Instagram now so the new device identity applies from a clean start?"; +"Copy current ID" = "Copy current ID"; +"Revert to my real device ID" = "Revert to my real device ID"; +"Restore the original, stop masking" = "Restore the original, stop masking"; +"Spoofing off" = "Spoofing off"; +"Relaunch now" = "Relaunch now"; +"Relaunch to apply" = "Relaunch to apply"; +"Clear device & relaunch" = "Clear device & relaunch"; +"Clear device & relaunch?" = "Clear device & relaunch?"; +"Clear & relaunch" = "Clear & relaunch"; +"Full reset to a brand-new device" = "Full reset to a brand-new device"; +"Device ID" = "Device ID"; +"Hide button until relaunch" = "Hide button until relaunch"; +"Device identity" = "Device identity"; +"Masked" = "Masked"; +"Real" = "Real"; +"Show button on login screen" = "Show button on login screen"; +"Floating Device ID button while signed out" = "Floating Device ID button while signed out"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset."; +"Apple attestation" = "Apple attestation"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on."; +"Block Apple device attestation" = "Block Apple device attestation"; +"Stop the hardware attestation that links the device" = "Stop the hardware attestation that links the device"; +"Block Apple attestation: %@" = "Block Apple attestation: %@"; +"Attestation blocked" = "Attestation blocked"; +"Attestation allowed" = "Attestation allowed"; +"Roll + clear, then sign in fresh" = "Roll + clear, then sign in fresh"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "Follow Requests"; +"Show follow requests" = "Show follow requests"; +"Check now" = "Check now"; +"Reset tracked data" = "Reset tracked data"; +"Enable tracker" = "Enable tracker"; +"Log requests and check outcomes" = "Log requests and check outcomes"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device."; +"What to track" = "What to track"; +"Requests I send" = "Requests I send"; +"To private accounts" = "To private accounts"; +"Requests I receive" = "Requests I receive"; +"From people who want to follow you" = "From people who want to follow you"; +"Background check" = "Background check"; +"Check interval" = "Check interval"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "How often to check for outcomes while the app is open. Also checks on launch and when you open the list."; +"Off (manual only)" = "Off (manual only)"; +"Every 15 minutes" = "Every 15 minutes"; +"Every 30 minutes" = "Every 30 minutes"; +"Every hour" = "Every hour"; +"Every 6 hours" = "Every 6 hours"; +"My request accepted" = "My request accepted"; +"A private account accepted you" = "A private account accepted you"; +"My request declined" = "My request declined"; +"No longer pending" = "No longer pending"; +"New request received" = "New request received"; +"Someone asked to follow you" = "Someone asked to follow you"; +"Request withdrawn" = "Request withdrawn"; +"Someone cancelled their request" = "Someone cancelled their request"; +"Sent by me" = "Sent by me"; +"Received" = "Received"; +"Sent" = "Sent"; +"Accepted" = "Accepted"; +"Rejected" = "Rejected"; +"Requested" = "Requested"; +"Approved" = "Approved"; +"Withdrawn" = "Withdrawn"; +"No follow requests tracked yet" = "No follow requests tracked yet"; +"Cancel requests" = "Cancel requests"; +"Delete %lu record(s) from history?" = "Delete %lu record(s) from history?"; +"Cancel %lu pending request(s)?" = "Cancel %lu pending request(s)?"; +"Follow back %lu account(s)?" = "Follow back %lu account(s)?"; +"Clear all tracked follow requests?" = "Clear all tracked follow requests?"; +"Reset tracked follow requests for this account?" = "Reset tracked follow requests for this account?"; +"Enable the tracker first" = "Enable the tracker first"; +"Checking…" = "Checking…"; +"%ld request(s) updated" = "%ld request(s) updated"; +"No changes" = "No changes"; +"Working…" = "Working…"; +"Follow request accepted" = "Follow request accepted"; +"%@ accepted your request" = "%@ accepted your request"; +"Follow request declined" = "Follow request declined"; +"%@ is no longer pending" = "%@ is no longer pending"; +"New follow request" = "New follow request"; +"%@ asked to follow you" = "%@ asked to follow you"; +"Follow request withdrawn" = "Follow request withdrawn"; +"%@ withdrew their request" = "%@ withdrew their request"; +"Follow requests log" = "Follow requests log"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Unlock Instagram's paid features"; +"Turn on Instagram's paid subscriber features inside the app." = "Turn on Instagram's paid subscriber features inside the app."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves."; +"Turn everything on" = "Turn everything on"; +"Turn everything off" = "Turn everything off"; +"Every Instagram Plus feature turns off and Instagram restarts." = "Every Instagram Plus feature turns off and Instagram restarts."; +"Story peek" = "Story peek"; +"Hold a story in the tray to preview it without opening it." = "Hold a story in the tray to preview it without opening it."; +"Story fonts" = "Story fonts"; +"Adds the subscriber fonts when you add text to a story." = "Adds the subscriber fonts when you add text to a story."; +"Search story viewers" = "Search story viewers"; +"Search the list of people who viewed your story." = "Search the list of people who viewed your story."; +"Viewer timestamps" = "Viewer timestamps"; +"Shows when each person viewed your story." = "Shows when each person viewed your story."; +"Silent post to profile" = "Silent post to profile"; +"Share to your profile without notifying your followers." = "Share to your profile without notifying your followers."; +"Silent post to highlights" = "Silent post to highlights"; +"Add to a highlight without notifying your followers." = "Add to a highlight without notifying your followers."; +"Story rewatch" = "Story rewatch"; +"Rewatch a story right after it finishes." = "Rewatch a story right after it finishes."; +"Story extend" = "Story extend"; +"Keep your story up longer than 24 hours." = "Keep your story up longer than 24 hours."; +"Story spotlight" = "Story spotlight"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "Boost your story to more viewers. Loads from Instagram, so it may not work."; +"Story super likes" = "Story super likes"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "Send super likes on stories. Loads from Instagram, so it may not work."; +"Message peek" = "Message peek"; +"Hold a chat in the inbox to preview it." = "Hold a chat in the inbox to preview it."; +"Chat fonts" = "Chat fonts"; +"Adds the subscriber fonts in direct messages." = "Adds the subscriber fonts in direct messages."; +"Chat themes" = "Chat themes"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "Unlocks the premium chat themes. Loads from Instagram, so it may not work."; +"App icons" = "App icons"; +"Opens the alternate app icon picker." = "Opens the alternate app icon picker."; +"Bio font" = "Bio font"; +"Use a subscriber font for your bio." = "Use a subscriber font for your bio."; +"Custom story lists" = "Custom story lists"; +"Make lists to pick exactly who sees a story." = "Make lists to pick exactly who sees a story."; +"More pinned posts" = "More pinned posts"; +"Pin more posts to the top of your profile." = "Pin more posts to the top of your profile."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu recordings"; +"1 recording" = "1 recording"; +"30 days" = "30 days"; +"7 days" = "7 days"; +"90 days" = "90 days"; +"Adds a record button to the call screen" = "Adds a record button to the call screen"; +"Also show recordings in the RyukGram gallery under Calls" = "Also show recordings in the RyukGram gallery under Calls"; +"Auto-delete old recordings" = "Auto-delete old recordings"; +"Auto-record calls" = "Auto-record calls"; +"Auto-record ignore list" = "Auto-record ignore list"; +"Auto-record ignored" = "Auto-record ignored"; +"Auto-record on" = "Auto-record on"; +"Block mute signal" = "Block mute signal"; +"Both sides" = "Both sides"; +"Browse saved calls, grouped by person" = "Browse saved calls, grouped by person"; +"Call" = "Call"; +"Call recorded" = "Call recorded"; +"Call recording" = "Call recording"; +"Call recordings" = "Call recordings"; +"Stories archive" = "Stories archive"; +"Camera position" = "Camera position"; +"Can't play" = "Can't play"; +"Can't record" = "Can't record"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "Chats excluded from auto-record — long-press the record button in a call to add"; +"Could not save the recording." = "Could not save the recording."; +"Could not start the recorder." = "Could not start the recorder."; +"Delete all" = "Delete all"; +"Delete all recordings" = "Delete all recordings"; +"Delete all recordings?" = "Delete all recordings?"; +"Drag the overlay where you want it" = "Drag the overlay where you want it"; +"Drag your camera window to any corner or edge." = "Drag your camera window to any corner or edge."; +"Enable call recording" = "Enable call recording"; +"Export all" = "Export all"; +"Full screen" = "Full screen"; +"Group call" = "Group call"; +"Ignore auto-record for this chat" = "Ignore auto-record for this chat"; +"Ignored chats aren't auto-recorded. You can still record manually." = "Ignored chats aren't auto-recorded. You can still record manually."; +"Include my camera" = "Include my camera"; +"Keep forever" = "Keep forever"; +"Large" = "Large"; +"Mute without the other side seeing you muted — your mic is still silenced" = "Mute without the other side seeing you muted — your mic is still silenced"; +"Muted silently" = "Muted silently"; +"My camera size" = "My camera size"; +"No call audio was captured." = "No call audio was captured."; +"No ignored chats. Long-press the record button in a call to ignore it." = "No ignored chats. Long-press the record button in a call to ignore it."; +"No recordings" = "No recordings"; +"Off records audio only, even on video calls" = "Off records audio only, even on video calls"; +"Only me" = "Only me"; +"Only them" = "Only them"; +"Open recordings" = "Open recordings"; +"Overlay your camera as a small window on video-call recordings" = "Overlay your camera as a small window on video-call recordings"; +"Overlay your camera on the recording" = "Overlay your camera on the recording"; +"Record audio from" = "Record audio from"; +"Record video on video calls" = "Record video on video calls"; +"Record voice and video calls, browse them later" = "Record voice and video calls, browse them later"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "Recorded calls are saved on this device only. A red status-bar indicator shows while recording."; +"Recorded calls will appear here." = "Recorded calls will appear here."; +"Recording call" = "Recording call"; +"Recording count" = "Recording count"; +"Recording failed" = "Recording failed"; +"Recording name" = "Recording name"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only."; +"Remove from ignore list" = "Remove from ignore list"; +"Remove recordings older than the chosen age" = "Remove recordings older than the chosen age"; +"Rename recording" = "Rename recording"; +"Search calls" = "Search calls"; +"Set a custom name for this chat's recordings." = "Set a custom name for this chat's recordings."; +"Size of the overlay window" = "Size of the overlay window"; +"Small" = "Small"; +"Starts recording automatically when a call opens" = "Starts recording automatically when a call opens"; +"Sync to gallery" = "Sync to gallery"; +"The recording file is missing." = "The recording file is missing."; +"Them" = "Them"; +"Them (full screen)" = "Them (full screen)"; +"This permanently removes every saved call recording for this account." = "This permanently removes every saved call recording for this account."; +"Unknown chat" = "Unknown chat"; +"Unmuted" = "Unmuted"; +"Which camera fills the frame" = "Which camera fills the frame"; +"Which side's voice to capture" = "Which side's voice to capture"; +"You" = "You"; +"You (full screen)" = "You (full screen)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner."; +"Prompt before the call recordings open" = "Prompt before the call recordings open"; +"Prompt before the activity log opens" = "Prompt before the activity log opens"; +"Mark all as read" = "Mark all as read"; +"Delete %lu chats?" = "Delete %lu chats?"; +"This permanently removes their recordings." = "This permanently removes their recordings."; + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "Reacted"; +"Reacted first" = "Reacted first"; +"Mutual" = "Mutual"; +"Viewers" = "Viewers"; +"1 viewer" = "1 viewer"; +"View viewers" = "View viewers"; +"%lu views" = "%lu views"; +"%ld likes" = "%ld likes"; +"0 views" = "0 views"; +"1 like" = "1 like"; +"1 view" = "1 view"; +"Photos" = "Photos"; +"Oldest" = "Oldest"; +"Most viewed" = "Most viewed"; +"Most reacted" = "Most reacted"; +"Open archive" = "Open archive"; +"Archive settings" = "Archive settings"; +"Archiving" = "Archiving"; +"Enable stories archive" = "Enable stories archive"; +"Save your stories before they expire" = "Save your stories before they expire"; +"Saves each story you post, with its photo or video, kept separately for each account." = "Saves each story you post, with its photo or video, kept separately for each account."; +"Save and update viewers" = "Save and update viewers"; +"Keep each story's viewers and likers, refreshed to the final list" = "Keep each story's viewers and likers, refreshed to the final list"; +"Update viewers" = "Update viewers"; +"How often to refresh viewers for stories still live" = "How often to refresh viewers for stories still live"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete."; +"Notify me about pinned viewers" = "Notify me about pinned viewers"; +"A heads-up when a pinned viewer sees or likes your story" = "A heads-up when a pinned viewer sees or likes your story"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings."; +"Viewer list & pins" = "Viewer list & pins"; +"Turn on the viewer list and manage pinned viewers" = "Turn on the viewer list and manage pinned viewers"; +"Turn on a custom viewer list to pin, search and sort viewers" = "Turn on a custom viewer list to pin, search and sort viewers"; +"Tick several to combine them." = "Tick several to combine them."; +"Select stories" = "Select stories"; +"No archived stories yet. Post a story and it appears here." = "No archived stories yet. Post a story and it appears here."; +"Archiving is off. Enable it in the archive settings, then post a story." = "Archiving is off. Enable it in the archive settings, then post a story."; +"Delete story?" = "Delete story?"; +"This removes the archived photo or video and its viewers." = "This removes the archived photo or video and its viewers."; +"Delete all stories?" = "Delete all stories?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "Removes every archived story and its viewers for this account. This cannot be undone."; +"Delete %lu archived stories and their viewers?" = "Delete %lu archived stories and their viewers?"; +"Pinned viewer saw your story" = "Pinned viewer saw your story"; +"Pinned viewer liked your story" = "Pinned viewer liked your story"; +"Pinned viewer reacted to your story" = "Pinned viewer reacted to your story"; +"Pinned viewers on your story" = "Pinned viewers on your story"; +"%lu pinned viewers just saw, liked or reacted" = "%lu pinned viewers just saw, liked or reacted"; +"A pinned viewer" = "A pinned viewer"; +"On each launch" = "On each launch"; diff --git a/src/Localization/Resources/es.lproj/Localizable.strings b/src/Localization/Resources/es.lproj/Localizable.strings new file mode 100644 index 0000000..3cde4dc --- /dev/null +++ b/src/Localization/Resources/es.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "Para el futuro: Mantener pulsadas las tres líneas en la parte superior derecha en la página de perfil, para volver a abrir la configuración de RyukGram"; +"settings.firstrun.ok" = "Entiendo!"; +"settings.firstrun.title" = "Información de configuración de RyukGram"; +"settings.language.english_only" = "Por el momento, RyukGram solo está disponible en Inglés. ¡Las traducciones son bienvenidas!"; +"settings.language.help_translate" = "Ayudar a traducir"; +"settings.language.system" = "Por defecto del sistema"; +"settings.language.title" = "Idioma"; +"settings.language.restart.message" = "Ajustes actualizados. Reinicia Instagram para que los menús, botones y avisos del resto de la app también adopten el nuevo idioma."; +"settings.language.restart.title" = "Reinicia para aplicarlo en todas partes"; +"settings.language.available" = "Disponibles"; +"settings.results.many" = "%lu resultados"; +"settings.results.one" = "%lu resultado"; +"settings.search.placeholder" = "Configuración de búsqueda"; +"settings.title" = "Configuración de RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "Icono del botón de acción"; +"Adds a copy option to the comment long-press menu" = "Añade la opción de copiar en el menú que aparece al mantener pulsado un comentario"; +"Adds a download button next to share/save on the reels audio page" = "Añade un botón de descarga junto a compartir/guardar en la página de audio de los reels"; +"Adds download, copy and expand options to GIF and image comments" = "Añade opciones de descargar, copiar y ampliar a comentarios GIF e imágenes"; +"Allow video in photo sticker" = "Permitir vídeo en el sticker de foto"; +"Alternate icons are not supported" = "Los iconos alternativos no son compatibles"; +"Anonymous live viewing" = "Ver directos de forma anónima"; +"App Icon" = "Icono de la app"; +"Audio page" = "Página de audio"; +"Auto-reveals sensitive media" = "Revela automáticamente el contenido sensible"; +"Block surveys" = "Bloquear encuestas"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "Bloquea el latido del contador de espectadores para que el transmisor no te vea — tampoco verás el contador de espectadores"; +"Browser" = "Navegador"; +"Change the app icon from the bundled icons" = "Cambia el icono de la app entre los iconos incluidos"; +"Choose Icon" = "Elegir icono"; +"Choose which surfaces hide ads" = "Elige qué superficies ocultan anuncios"; +"Comments" = "Comentarios"; +"Commerce carousels in comments and shoppable CTAs on reels" = "Carruseles comerciales en comentarios y CTA de compra en reels"; +"Copy comment text" = "Copiar texto del comentario"; +"Copy description" = "Copiar descripción"; +"Long press a caption to copy its text" = "Mantén pulsado un pie de foto para copiar su texto"; +"Custom sticker colors" = "Colores de sticker personalizados"; +"Custom colors aren't supported for this sticker" = "Los colores personalizados no son compatibles con este sticker"; +"Date format" = "Formato de fecha"; +"Disable app haptics" = "Deshabilitar respuesta háptica de la aplicación"; +"Disables haptics/vibrations within the app" = "Deshabilita la respuesta háptica y vibraciones dentro de la aplicación"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "Deshabilita Liquid Glass en cuentas que lo tienen activado por defecto. Anula las opciones anteriores"; +"Do not save recent searches" = "No guardar búsquedas recientes"; +"Download GIF & image comments" = "Descargar comentarios GIF e imágenes"; +"Download image" = "Descargar imagen"; +"Embed domain" = "Dominio embebido"; +"Embed domain: %@" = "Dominio embebido: %@"; +"Enable liquid glass buttons" = "Habilitar botones Liquid Glass"; +"Enable liquid glass surfaces" = "Habilitar superficies Liquid Glass"; +"Enable teen app icons" = "Habilitar íconos para adolescentes"; +"Enables experimental liquid glass buttons" = "Habilita botones experimentales Liquid Glass"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "Habilita Liquid Glass en la barra de pestañas, navegación flotante y otros elementos de la interfaz"; +"End" = "Fin"; +"Experimental features" = "Funciones experimentales"; +"Explore & search" = "Explorar y buscar"; +"Failed to change icon" = "No se pudo cambiar el icono"; +"Fixed" = "Fijo"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "Fijo evita que se reduzca. Ocultar lo hace desaparecer al desplazar hacia abajo"; +"Focus/distractions" = "Concentración/Distracciones"; +"Force liquid glass off" = "Forzar desactivación de Liquid Glass"; +"Force progressive blur" = "Forzar desenfoque progresivo"; +"General" = "General"; +"Gradient color" = "Color en degradado"; +"Hide ads" = "Ocultar anuncios"; +"Hide explore posts grid" = "Ocultar la cuadrícula de publicaciones"; +"Hide friends map" = "Ocultar el mapa de amigos"; +"Hide Meta AI" = "Ocultar Meta AI"; +"Hide metrics" = "Ocultar métricas"; +"Hide notes tray" = "Ocultar bandeja de notas"; +"Hide on scroll" = "Ocultar al desplazar"; +"Hide TestFlight popup" = "Ocultar ventana de TestFlight"; +"Hide trending searches" = "Ocultar búsquedas en tendencia"; +"Hide UI on capture" = "Ocultar UI al capturar"; +"Removes suggested accounts to follow outside the feed" = "Elimina las cuentas sugeridas para seguir fuera del feed"; +"Hides like/comment/share counts on posts and reels" = "Oculta el contador de me gusta, comentarios y compartidos en publicaciones y reels"; +"Removes the friends map icon from the notes tray" = "Elimina el icono del mapa de amigos de la bandeja de notas"; +"Removes the suggested posts grid on the explore tab" = "Elimina la cuadrícula de publicaciones sugeridas en Explorar"; +"Strips the Meta AI buttons and entry points from the app" = "Elimina los botones y accesos de Meta AI de la app"; +"Hides the notes tray in the DM inbox" = "Oculta la bandeja de notas en la pestaña Mensajes"; +"Removes suggested broadcast channels from your inbox" = "Elimina los canales de difusión sugeridos de tu bandeja"; +"Hide DM search suggestions" = "Ocultar sugerencias en la búsqueda de mensajes"; +"Removes suggested accounts and channels from direct message search" = "Elimina las cuentas y canales sugeridos de la búsqueda de mensajes"; +"Removes trending searches under the explore search bar" = "Elimina las búsquedas en tendencia bajo la barra de Explorar"; +"Hold down on the Instagram logo to change the app icon" = "Mantén pulsado el logo de Instagram para cambiar el ícono de la aplicación"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "Mantiene visible el desenfoque del borde de desplazamiento de iOS 26 en lugar de dejar que se desvanezca"; +"Lets the photo sticker picker show videos too, not just photos" = "Permite que el selector de stickers de foto también muestre vídeos, no solo fotos"; +"Liquid glass tab bar" = "Barra de pestañas Liquid Glass"; +"Live" = "En vivo"; +"Hold the eyedropper in stories to pick an exact text color" = "Mantén pulsado el cuentagotas en historias para elegir un color exacto"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "Mantén pulsada la rueda de colores en los editores de stickers para elegir cualquier color sólido o degradado"; +"Long-press the heart button in a live to hide or show the comments" = "Mantén presionado el botón de corazón en un directo para ocultar o mostrar los comentarios"; +"Long-press the search tab to open a copied Instagram link" = "Mantén presionado el botón de búsqueda para abrir un enlace de Instagram copiado"; +"Master switch. When off, all per-surface toggles below are ignored." = "Interruptor principal. Cuando está desactivado, se ignoran todos los conmutadores por superficie de abajo."; +"No suggested chats" = "Ocultar conversaciones sugeridas"; +"No suggested users" = "Ocultar usuarios sugeridos"; +"Notes" = "Notas"; +"Open app icon picker" = "Abrir selector de ícono de app"; +"Open link from clipboard" = "Abrir enlace desde el portapapeles"; +"Open links in external browser" = "Abrir enlaces en navegador externo"; +"Opens links in Safari instead of Instagram's in-app browser" = "Abrir enlaces en Safari en vez del navegador interno de Instagram"; +"Privacy" = "Privacidad"; +"Removes ads across enabled surfaces" = "Elimina los anuncios en las superficies activadas"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "Elimina igsh, utm_source, y otros parámetros de rastreo de los enlaces compartidos"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "Elimina intermediarios de rastreo de Instagram (l.instagram.com) y los parámetros UTM/fbclid de los enlaces"; +"Replace domain in shared links" = "Reemplazar dominio en enlaces compartidos"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "Reemplaza las marcas de tiempo relativas de Instagram (\"Hace 3d\") con un formato personalizado. Escoge sobre cuales superficies se aplica dentro del selector."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "Reescribe enlaces copiados/compartidos para utilizar un dominio compatible con vistas previas embebidas en Discord, Telegram, etc."; +"Stops search bars from saving your recent searches" = "Impide que las barras de búsqueda guarden tus búsquedas recientes"; +"Selected" = "Seleccionado"; +"Sharing" = "Compartir"; +"Shopping" = "Compras"; +"Skip sensitive content covers" = "Omitir avisos de contenido sensible"; +"Solid color" = "Color sólido"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "Publicaciones patrocinadas en los feeds principal, contextual, de vídeo y encadenado"; +"Sponsored posts on the explore grid" = "Publicaciones patrocinadas en la cuadrícula de explorar"; +"Stops Instagram's in-app surveys and feedback prompts" = "Detiene las encuestas y solicitudes de opinión dentro de Instagram"; +"Sponsored reels in the sundial feed" = "Reels patrocinados en el feed sundial"; +"Start" = "Inicio"; +"Story ads and sponsored entries in the story tray" = "Anuncios de historias y entradas patrocinadas en la bandeja de historias"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "Insignias de estadísticas en las publicaciones y reels de búsqueda y exploración. Abre Detalles de la tarjeta para elegir qué estadísticas se muestran, reordenarlas y aplicar."; +"Strip tracking from links" = "Eliminar rastreo de los enlaces"; +"Strip tracking params" = "Eliminar parámetros de rastreo"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "Suprime el aviso \"It's time to update Instagram Beta\""; +"Tap to apply" = "Toca para aplicar"; +"The selected icon will be saved and shown here the next time you open this page." = "El icono seleccionado se guardará y se mostrará aquí la próxima vez que abras esta página."; +"Toggle live comments" = "Alternar comentarios en vivo"; +"Use detailed color picker" = "Usar selector de color detallado"; +"Used across feed, stories, reels, and DMs." = "Se usa en feed, historias, reels y DMs"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "hace %ld día"; +"%ld days ago" = "hace %ld días"; +"%ld hour ago" = "hace %ld hora"; +"%ld hours ago" = "hace %ld horas"; +"%ld minute ago" = "hace %ld minuto"; +"%ld minutes ago" = "hace %ld minutos"; +"%ld week ago" = "hace %ld semana"; +"%ld weeks ago" = "hace %ld semanas"; +"%ldd" = "%ldd"; +"%ldh" = "%ldh"; +"%ldm" = "%ldm"; +"%ldw" = "%ldsem"; +"Always ask" = "Siempre preguntar"; +"Balanced" = "Balanceada"; +"Block all" = "Bloquear todo"; +"Block selected" = "Bloquear seleccionado"; +"Button" = "Botón"; +"Date format — %@" = "Formato de fecha — %@"; +"Default" = "Predeterminado"; +"Disabled" = "Desactivado"; +"Download and share" = "Descargar y compartir"; +"Download to Photos" = "Descargar a Fotos"; +"Save with music" = "Guardar con música"; +"Gallery with music" = "Galería con música"; +"Save image (no music)" = "Guardar imagen (sin música)"; +"Gallery image (no music)" = "Imagen a galería (sin música)"; +"Photo with music" = "Foto con música"; +"Enabled" = "Activado"; +"Expand" = "Ampliar"; +"Explore" = "Explorar"; +"Fast" = "Rápida"; +"Feed" = "Feed (Inicio)"; +"Feed posts" = "Publicaciones del feed"; +"High" = "Alta"; +"Inbox" = "Bandeja de entrada"; +"just now" = "ahora mismo"; +"Low" = "Baja"; +"Max" = "Máxima"; +"Medium" = "Media"; +"Mute/Unmute" = "Silencio/Sonido"; +"Notes, comments, stories" = "Notas, comentarios, historias"; +"now" = "ahora"; +"Open menu" = "Abrir menú"; +"Pause/Play" = "Pausar/Reproducir"; +"Profile" = "Perfil"; +"Quality" = "Calidad"; +"Reels" = "Reels"; +"Requires restart" = "Requiere reiniciar"; +"Save to Photos" = "Guardar en Fotos"; +"Share sheet" = "Menú de compartir"; +"Standard" = "Estándar"; +"Toggle" = "Interruptor"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "Feed en cuadrícula"; +"Browse your home feed as a grid of posts" = "Explora tu feed de inicio como una cuadrícula de publicaciones"; +"Hide stories in grid" = "Ocultar historias en la cuadrícula"; +"Taller cells" = "Celdas más altas"; +"Portrait tiles instead of squares" = "Mosaicos verticales en vez de cuadrados"; +"Open post" = "Abrir publicación"; +"View profile" = "Ver perfil"; +"Like" = "Me gusta"; +"Liked" = "Te gusta"; +"Unlike" = "Quitar me gusta"; +"Unliked" = "Ya no te gusta"; +"Followed" = "Seguido"; +"Unfollowed" = "Dejaste de seguir"; +"Couldn't update like" = "No se pudo actualizar el me gusta"; +"Couldn't update follow" = "No se pudo actualizar el seguimiento"; +"Follow status" = "Estado de seguimiento"; +"Shares" = "Compartidos"; +"Relative" = "Relativa"; +"Date and time" = "Fecha y hora"; +"You're all caught up" = "Estás al día"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "Sustituye el feed de inicio por una cuadrícula de publicaciones. Cambiar al feed de Instagram mantiene la función activada y le devuelve el feed al instante. Pellizca para cambiar las columnas y toca una publicación para abrirla. El interruptor Para ti / Siguiendo se mantiene sincronizado con Feed principal."; +"Switch button" = "Botón para cambiar"; +"Hold the heart button" = "Mantén pulsado el botón del corazón"; +"Floating button" = "Botón flotante"; +"How to switch" = "Cómo cambiar"; +"Hold the heart in Instagram's header" = "Mantén pulsado el corazón en la cabecera de Instagram"; +"A small round button on the feed" = "Un pequeño botón redondo en el feed"; +"Button position" = "Posición del botón"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "Arrastra el botón donde quieras. Las franjas atenuadas son la cabecera y la barra de pestañas de Instagram."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "Cambia entre la cuadrícula y el feed de Instagram sin desactivar la cuadrícula. Desactivado deja el acceso directo de la barra de inicio como única forma."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "El botón nunca queda debajo de la cabecera ni de la barra de pestañas. Mantén pulsado el botón en el feed para volver aquí."; +"Live preview" = "Vista previa en vivo"; +"Columns" = "Columnas"; +"Post info" = "Información de la publicación"; +"Reorder and toggle stats on each tile" = "Reordena y activa las estadísticas de cada mosaico"; +"Info on each post" = "Información en cada publicación"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "Activa o desactiva cada elemento. Arrastra el controlador ≡ para reordenar cómo se apilan en el mosaico."; +"Show avatar" = "Mostrar avatar"; +"Media type badge" = "Insignia de tipo de medio"; +"Restores the default post info, order and options for the grid feed." = "Restaura la información, el orden y las opciones predeterminadas del feed en cuadrícula."; +"Views" = "Reproducciones"; +"Action button" = "Botón de acción"; +"Adds 'Profile picture' to story tray long-press menus" = "Añade la opción 'Foto de perfil' al menú que aparece al mantener pulsado en la bandeja de historias"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Añade un botón de acción de RyukGram debajo de cada publicación en el Feed (Inicio), con las opciones descargar, compartir, copiar, ampliar y repost. Tocar abre el menú de forma predeterminada.\nArriba puedes cambiar el comportamiento al tocar."; +"Choose Instagram's default feed or force the Following feed" = "Elige el feed predeterminado de Instagram o fuerza el feed de Siguiendo"; +"Main feed" = "Feed principal"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "Controla cuando y como se actualiza el Feed (Inicio). La actualización en segundo plano ocurre cuando vuelves a la aplicación después de unos 10 minutos. La actualización al pulsar el botón de Inicio se produce al tocar el botón mientras te encuentras en el Feed (Inicio)"; +"Confirm feed refresh" = "Confirmar actualización del feed"; +"Shows an alert before a pull-to-refresh reloads the feed" = "Muestra una alerta antes de que deslizar para actualizar recargue el feed"; +"Refresh stories only" = "Actualizar solo las historias"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "Deslizar para actualizar recarga la bandeja de historias sin actualizar el feed"; +"Refresh feed?" = "¿Actualizar feed?"; +"Default tap action" = "Acción al tocar"; +"Disable background refresh" = "Deshabilitar actualización en segundo plano"; +"Disable home button refresh" = "Deshabilitar actualización con botón de Inicio"; +"Disable home button scroll" = "Deshabilitar desplazamiento con botón de Inicio"; +"Disable video autoplay" = "Deshabilitar reproducción automática de video"; +"Hide" = "Ocultar"; +"Hide entire feed" = "Ocultar todo el Feed (Inicio)"; +"Hide repost button" = "Ocultar botón de repost"; +"Hide stories tray" = "Ocultar bandeja de historias"; +"Hide suggested stories" = "Ocultar historias sugeridas"; +"Hide story highlights" = "Ocultar destacados de historias"; +"Removes resurfaced highlights from the stories tray in feed" = "Elimina los destacados que reaparecen en la bandeja de historias del feed"; +"Hides suggested accounts" = "Oculta las cuentas sugeridas"; +"Hides suggested reels" = "Oculta los reels sugeridos"; +"Hides suggested threads posts" = "Oculta los hilos sugeridos de Threads"; +"Hides the repost button on feed posts" = "Oculta el botón de repost en las publicaciones del Feed (Inicio)"; +"Hides the story tray at the top" = "Oculta la bandeja de historias en la parte superior"; +"Inserts a button row below like/comment/share on each post" = "Inserta un botón en la fila de los botones me gusta, comentar y compartir en cada publicación"; +"Long press on media to expand in full-screen viewer" = "Mantener pulsado el contenido multimedia para ver en pantalla completa"; +"Start media muted" = "Iniciar contenido en silencio"; +"Expanded videos open with sound off" = "Los videos ampliados se abren sin sonido"; +"Enhanced media resolution" = "Resolución de medios mejorada"; +"Media saving" = "Guardar medios"; +"Spoof device profile so IG serves higher-quality images" = "Suplanta el perfil del dispositivo para que IG entregue imágenes de mayor calidad"; +"Media" = "Contenido multimedia"; +"Media zoom" = "Ampliar contenido multimedia"; +"No suggested for you" = "Sin 'Sugerencias para ti'"; +"No suggested posts" = "Sin 'Publicaciones sugeridas'"; +"No suggested reels" = "Sin 'Reels sugeridos'"; +"No suggested threads" = "Sin'Hilos sugeridos'"; +"Prevents feed from reloading when returning from background" = "Evita que el Feed (Inicio) se actualice cuando se regrese de segundo plano"; +"Prevents videos from playing automatically" = "Evita que los videos se reproduzcan automáticamente"; +"Refresh" = "Actualizar"; +"Removes all content from your home feed" = "Elimina todo el contenido de tu Feed (Inicio)"; +"Removes suggested accounts from the stories tray" = "Elimina las cuentas sugeridas de la bandeja de historias"; +"Removes suggested posts" = "Elimina las publicaciones sugeridas"; +"Scroll to top without refreshing when tapping Home" = "Desplazarse hacia arriba sin actualizar al pulsar el botón de Inicio"; +"Show action button" = "Mostrar botón de acción"; +"Show date" = "Mostrar fecha"; +"Stories tray" = "Bandeja de historias"; +"Tapping Home does nothing when already on feed" = "Pulsar botón de Inicio no hace nada cuando te encuentres en la pestaña de Feed (Inicio)"; +"Tray long-press actions" = "Acciones al mantener pulsado en la bandeja"; +"Composer doesn't accept GIFs" = "El compositor no acepta GIFs"; +"Copy GIF link" = "Copiar enlace del GIF"; +"Copy image link" = "Copiar enlace de la imagen"; +"Custom GIF in comments" = "GIF personalizado en comentarios"; +"Favorite GIFs" = "GIF favoritos"; +"Long-press a GIF in the picker to pin it — favorites show first" = "Mantén pulsado un GIF en el selector para fijarlo — los favoritos aparecen primero"; +"Added to favorites" = "Añadido a favoritos"; +"Removed from favorites" = "Quitado de favoritos"; +"Favorite GIF unavailable" = "GIF favorito no disponible"; +"This GIF may have been removed. Long-press it to unfavorite." = "Puede que este GIF se haya eliminado. Mantén pulsado para quitarlo de favoritos."; +"Failed to build GIF model" = "No se pudo crear el modelo GIF"; +"GIF link copied" = "Enlace del GIF copiado"; +"Image" = "Imagen"; +"Image link copied" = "Enlace de la imagen copiado"; +"Invalid Giphy URL" = "URL de Giphy no válida"; +"Long-press the GIF button to paste any Giphy URL" = "Mantén pulsado el botón GIF para pegar cualquier URL de Giphy"; +"Paste Giphy Link" = "Pegar enlace de Giphy"; +"Paste a giphy.com URL or media ID" = "Pega una URL de giphy.com o un ID de medio"; +"Send" = "Enviar"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Añade un botón de acción de RyukGram sobre la barra lateral del reel con las opciones ver portada, descargar, compartir, copiar, ampliar y repost. Tocar abre el menú de forma predeterminada.\nArriba puedes cambiar el comportamiento al tocar."; +"Always show progress scrubber" = "Siempre mostrar el indicador de progreso"; +"Auto-scroll reels" = "Desplazamiento automático de reels"; +"Speed, seek and auto-scroll controls" = "Controles de velocidad, avance y desplazamiento automático"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "Los controles activados aparecen al mantener pulsado el botón ⋯ o de audio en un reel."; +"Seek controls" = "Controles de avance"; +"Auto-scroll control" = "Control de desplazamiento automático"; +"Seek" = "Avanzar"; +"Custom seek step" = "Salto personalizado"; +"Enter the number of seconds to skip" = "Introduce el número de segundos que saltar"; +"Set what a tap on a reel does" = "Define qué hace un toque en un reel"; +"Confirm reel refresh" = "Confirmar actualización de reels"; +"Custom speed" = "Velocidad personalizada"; +"Disable auto-unmuting reels" = "Deshabilitar el reactivado automático del sonido en los reels"; +"Disable scrolling reels" = "Deshabilitar desplazamiento en reels"; +"Disable tab button refresh" = "Deshabilitar actualización con el botón de la pestaña"; +"Doom scrolling limit" = "Límite de doom scrolling"; +"e.g. 1.75" = "p. ej. 1.75"; +"Enter a value between 0.5 and 2.0" = "Introduce un valor entre 0.5 y 2.0"; +"Keeps the progress bar visible on every reel" = "Mantiene visible la barra de progreso en cada reel"; +"Hide \"Made with Edits\" badge" = "Ocultar la insignia \"Made with Edits\""; +"Hide friends avatars" = "Ocultar avatares de amigos"; +"Hide reels header" = "Ocultar el encabezado de los reels"; +"Hide social context overlay" = "Ocultar contexto social flotante"; +"Hides the avatar bubbles next to the Friends tab in reels" = "Oculta los avatares junto a la pestaña Amigos en los reels"; +"Hides the Edits app promo pill on reels" = "Oculta la pastilla promocional de la app Edits en los reels"; +"Hides the floating overlay showing who reposted or commented on reels" = "Oculta el panel flotante que muestra quién republicó o comentó los reels"; +"Hides the repost button on the reels sidebar" = "Oculta el botón repost en la barra lateral de los reels"; +"Drops the top bar while you watch reels" = "Oculta la barra superior mientras ves reels"; +"Hiding" = "Ocultar"; +"IG default" = "IG por defecto"; +"Limits" = "Límites"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "Limita cuántos reels puedes ver seguidos y bloquea la actualización"; +"Only loads %@ %@" = "Solo cargar %@ %@"; +"Places a button above the like/comment/share column on each reel" = "Coloca un botón sobre la columna de botones me gusta, comentar y compartir en cada reel"; +"Playback speed" = "Velocidad de reproducción"; +"Prevent doom scrolling" = "Evitar doom scrolling"; +"Engagement filter" = "Filtro de interacción"; +"Hide reels below a like, comment, view or repost count" = "Oculta reels por debajo de un mínimo de me gusta, comentarios, visualizaciones o republicaciones"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "Oculta los reels que no alcanzan todos los mínimos que definas. Los reels cuyo autor oculta los contadores pasan igualmente, salvo que también los ocultes."; +"Filter reels by engagement" = "Filtrar reels por interacción"; +"Hide reels with hidden stats" = "Ocultar reels con estadísticas ocultas"; +"Only filter the Reels tab" = "Filtrar solo la pestaña Reels"; +"Reels you open from a post, profile or share are never filtered" = "Los reels que abres desde una publicación, un perfil o un enlace nunca se filtran"; +"Minimums" = "Mínimos"; +"Minimum likes" = "Mínimo de me gusta"; +"Minimum comments" = "Mínimo de comentarios"; +"Minimum views" = "Mínimo de visualizaciones"; +"Minimum reposts" = "Mínimo de republicaciones"; +"Reels below this count are hidden. 0 turns this limit off." = "Los reels por debajo de este número se ocultan. 0 desactiva este límite."; +"Turns the filter off and clears every minimum." = "Desactiva el filtro y borra todos los mínimos."; +"Locks a reel in place so it never scrolls to the next one" = "Fija un reel en su lugar para que nunca pase al siguiente"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "Evita que los reels se activen el sonido al pulsar el volumen o el timbre"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Confirma antes de actualizar el feed de reels"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "Muestra botones para revelar y auto-completar la contraseña en reels bloqueados"; +"Same as general format" = "Igual que el formato general"; +"Shows the repost date on the \"reposted this reel\" header." = "Muestra la fecha de la republicación en el encabezado \"reposteó este reel\"."; +"Reposts" = "Reposts"; +"Swipe a reel left to open the author's profile" = "Desliza un reel hacia la izquierda para abrir el perfil del autor"; +"Swipe left to profile" = "Deslizar a la izquierda al perfil"; +"Tap Controls" = "Controles táctiles"; +"Tap to mute on photo reels" = "Tocar para silenciar en reels de fotos"; +"Tapping the Reels tab while on reels does nothing" = "Pulsar el botón de reels no hace nada cuando te encuentres en la pestaña de Reels"; +"Unlock password-locked reels" = "Desbloquea reels bloqueados por contraseña"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "Cuando el modo pausa está activo, al tocar reels de fotos se alterna el audio en lugar del gesto nativo"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "Añade un botón para filtrar y ordenar cualquier lista de seguidores/seguidos. Se restablece al salir."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "Añade una opción de visualización en el menú que aparece al mantener pulsado sobre la historia destacada para abrir la portada en pantalla completa"; +"Applying restarts Instagram to load your changes." = "Aplicar reinicia Instagram para cargar tus cambios."; +"Card details" = "Detalles de la tarjeta"; +"Comment count" = "Número de comentarios"; +"Copy note on long press" = "Copia la nota al mantener pulsado"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "Estadísticas adicionales en cada tarjeta de publicación y reel de las cuadrículas de perfil: elige cuáles, reordénalas y luego aplica."; +"Fake follower count" = "Seguidores falsos"; +"Fake following count" = "Seguidos falsos"; +"Fake post count" = "Publicaciones falsas"; +"Fake profile stats" = "Estadísticas de perfil falsas"; +"Fake verified badge" = "Insignia verificada falsa"; +"Fetch missing counts" = "Obtener contadores faltantes"; +"Filter & sort lists" = "Filtrar y ordenar listas"; +"Follow indicator" = "Indicador de seguido"; +"Follower & following lists" = "Listas de seguidores y seguidos"; +"Follower count" = "Número de seguidores"; +"Following count" = "Número de seguidos"; +"Like count" = "Número de Me gusta"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "Mantener pulsado en una foto de perfil para abrirla en pantalla completa para ampliar, compartir y guardar"; +"Long press the note bubble on a profile to copy the text" = "Mantén pulsado la burbuja de una nota en un perfil para copiar el texto"; +"Long press to download directly (ignored when zoom is on)" = "Mantén pulsado para descargar directamente (Se ignora cuando la foto está ampliada)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "Los gestos al mantener pulsado en los elementos del perfil, se mantienen separados de los botones de acción específicos de cada función."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "Interruptor principal para todas las estadísticas de la tarjeta. Obtener contadores faltantes usa la API de Instagram y puede alcanzar límites de uso."; +"Only affects your own profile header. Other users see the real numbers." = "Solo afecta al encabezado de tu propio perfil. Los demás usuarios ven los números reales."; +"Post count" = "Número de publicaciones"; +"Profile card details" = "Detalles de la tarjeta de perfil"; +"Profile stats" = "Estadísticas del perfil"; +"Repost count" = "Número de reposts"; +"Restores the default stats, order, and options for profile card details." = "Restaura las estadísticas, el orden y las opciones predeterminadas de los detalles de la tarjeta de perfil."; +"Restores the default stats, order, and options for search & explore card details." = "Restaura las estadísticas, el orden y las opciones predeterminadas de los detalles de las tarjetas de búsqueda y exploración."; +"Save profile picture" = "Guardar foto de perfil"; +"Search & Explore" = "Búsqueda y exploración"; +"Share count" = "Número de veces compartido"; +"Short numbers" = "Números abreviados"; +"Show a checkmark next to your name on your own profile" = "Muestra una marca de verificación junto a tu nombre en tu propio perfil"; +"Show card details" = "Mostrar detalles de la tarjeta"; +"Show full follower count" = "Mostrar número completo de seguidores"; +"Show full post count" = "Mostrar número completo de publicaciones"; +"Show the custom number set below" = "Muestra el número personalizado definido abajo"; +"Show the exact number instead of a shortened one" = "Muestra el número exacto en lugar del abreviado"; +"Shows whether the profile user follows you" = "Muestra si el usuario del perfil te sigue"; +"Tap to set" = "Tocar para establecer"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "Activa o desactiva cada estadística. Arrastra el controlador ≡ para reordenar cómo se apilan en la tarjeta."; +"Upload date" = "Fecha de publicación"; +"View count" = "Número de reproducciones"; +"View highlight cover" = "Ver portada de la historia destacada"; +"Views, likes, comments, shares, reposts, date" = "Reproducciones, Me gusta, comentarios, compartidos, reposts, fecha"; +"Zoom profile photo" = "Ampliar foto de perfil"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "Descargas activas, en cola y finalizadas"; +"Auto-retry attempts" = "Intentos de reintento automático"; +"Auto-retry failed downloads" = "Reintentar descargas fallidas automáticamente"; +"Confirm before download" = "Confirmar antes de descargar"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "Obsoleto. El botón de acción de RyukGram (configurado por cada por cada tipo de contenido en Feed (Inicio)/Reels/Historias) es la nueva forma de descargar contenido multimedia. Habilita este control general solo si prefieres el antiguo método de mantener pulsado con varios dedos directamente sobre el contenido multimedia."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "No pausar descargas, codificación ni escaneos de perfiles al salir de la app"; +"Download queue" = "Cola de descargas"; +"Downloads" = "Descargas"; +"Downloads with %@ %@" = "Descargar con %@ %@"; +"Enable long-press gesture" = "Habilitar gesto de mantener pulsado"; +"Finger count for long-press" = "Cantidad de dedos a mantener pulsados"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "Cuántas descargas se ejecutan a la vez — las extra esperan en cola y comienzan a medida que se liberan espacios. Las descargas fallidas se reintentan automáticamente ante errores de red. Abre el gestor para ver, cancelar o reintentar descargas."; +"Keep running in background" = "Seguir ejecutándose en segundo plano"; +"Legacy long-press gesture" = "Gesto antiguo de mantener pulsado"; +"Long-press hold time" = "Tiempo a mantener pulsado"; +"Master toggle for the deprecated gesture workflow (off by default)" = "Control general para el gesto antiguo (Desactivado por defecto)"; +"Max simultaneous downloads" = "Descargas simultáneas máximas"; +"Open download manager" = "Abrir gestor de descargas"; +"Press finger(s) for %@ %@" = "Pulsar dedo(s) por %@ %@"; +"Retry automatically when a download drops on a network error" = "Reintentar automáticamente cuando una descarga falle por un error de red"; +"Route saves into a custom album in Photos instead of the camera roll root" = "Guarda en un álbum dedicado en Fotos, en vez de la Fototeca"; +"Run up to %@ %@ at once" = "Ejecutar hasta %@ %@ a la vez"; +"Save action" = "Acción después de guardar"; +"Save to dedicated album" = "Guardar en álbum dedicado"; +"Show a confirmation dialog before starting a download" = "Muestra un diálogo de confirmación antes de iniciar una descarga"; +"Try %@ more %@ before giving up" = "Intentar %@ %@ más antes de rendirse"; +"What happens after the gesture downloads" = "Lo que ocurre después de que termina la descarga"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "Cuando \"Guardar en álbum dedicado\" está activado, las descargas y las opciones \"Guardar en Fotos\" del menú de compartir se dirigen a un álbum con nombre en tu fototeca. Toca \"Nombre del álbum\" para cambiarlo."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "%@ restante"; +"%@ of %@" = "%1$@ de %2$@"; +"%@/s" = "%@/s"; +"%dh" = "%dh"; +"%dm" = "%dmin"; +"%ds" = "%ds"; +"%ld downloading" = "%ld descargando"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld siguen en curso y se detendrán. Los archivos ya guardados se conservan."; +"%lu failed" = "%lu fallidas"; +"%lu of %lu done" = "%lu de %lu completados"; +"%lu saved, %lu failed" = "%lu guardados, %lu fallidos"; +"12 hours" = "12 horas"; +"1s" = "1s"; +"24 hours" = "24 horas"; +"48 hours" = "48 horas"; +"Active" = "Activas"; +"Auto-retry" = "Reintento automático"; +"Clear completed" = "Borrar completadas"; +"Clear download history" = "Borrar historial de descargas"; +"Clear download history?" = "¿Borrar el historial de descargas?"; +"Completed" = "Completadas"; +"Don't keep" = "No guardar"; +"Download history" = "Historial de descargas"; +"Download settings" = "Ajustes de descarga"; +"Downloading %lu items" = "Descargando %lu elementos"; +"Downloading…" = "Descargando…"; +"Empty the manager's list of past downloads" = "Vacía la lista de descargas pasadas del gestor"; +"Encoding %d%%" = "Codificando %d%%"; +"Encoding…" = "Codificando…"; +"Extra downloads wait in line and start as slots free up." = "Las descargas extra esperan en cola y comienzan a medida que se liberan espacios."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "Cuánto tiempo siguen en el gestor las descargas terminadas, fallidas y canceladas tras cerrar la app. Los archivos no se tocan, solo la lista."; +"How long past downloads stay listed in the manager" = "Cuánto tiempo siguen listadas las descargas pasadas en el gestor"; +"Keep history for" = "Guardar historial durante"; +"Media you download shows up here, with its progress and where it was saved." = "Lo que descargues aparece aquí, con su progreso y dónde se guardó."; +"No downloads yet" = "Aún no hay descargas"; +"Preview" = "Vista previa"; +"Queued" = "En cola"; +"Redownload" = "Volver a descargar"; +"Retry" = "Reintentar"; +"Retrying…" = "Reintentando…"; +"Stop" = "Detener"; +"The files already saved are kept — this only empties the list." = "Los archivos ya guardados se conservan; esto solo vacía la lista."; +"Waiting for a free slot" = "Esperando un hueco libre"; +"Waiting for connection…" = "Esperando conexión…"; +"Waiting to retry" = "Esperando para reintentar"; +"Waiting…" = "Esperando…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "Organizar botones superpuestos"; +"Overlay layout" = "Diseño de superposición"; +"Drag to position the buttons" = "Arrastra para colocar los botones"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "Arrastra los botones sobre la historia. La franja atenuada es la barra de respuesta."; +"Send message" = "Enviar mensaje"; + +"Pinned" = "Fijados"; +"Search viewers" = "Buscar espectadores"; +"No matching viewers" = "No hay espectadores coincidentes"; +"No viewers match these filters" = "Ningún espectador coincide con estos filtros"; +"Unavailable" = "No disponible"; +"Default (recent first)" = "Predeterminado (recientes primero)"; +"%lu viewers" = "%lu espectadores"; +"Viewer pinned" = "Espectador fijado"; +"Viewer unpinned" = "Espectador desfijado"; +"Pin a viewer" = "Fijar un espectador"; +"Pin order" = "Orden de fijados"; +"Pin this viewer?" = "¿Fijar este espectador?"; +"Filter, sort & pin viewers" = "Filtrar, ordenar y fijar espectadores"; +"Add by username, remove, reorder" = "Añadir por nombre de usuario, quitar, reordenar"; +"Pinned viewers (%lu)" = "Espectadores fijados (%lu)"; +"Viewers list" = "Lista de espectadores"; +"Settings are saved and reused next time." = "Los ajustes se guardan y se reutilizan la próxima vez."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "Marca varios para combinarlos. Los espectadores fijados siempre quedan arriba e ignoran estos filtros."; +"Pinned viewers" = "Espectadores fijados"; +"Pin" = "Fijar"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "Reemplaza la lista de 'quién vio tu historia' por una lista con búsqueda, filtros y orden. Mantén pulsado un espectador para fijarlo arriba. Vuelve a la lista original cuando quieras."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "Nombre de usuario o PK de usuario. Los espectadores fijados siempre permanecen arriba en la lista de espectadores de tu historia."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "Añade un botón de acción de RyukGram junto al botón con forma de ojo (👁) en las historias con las opciones descargar, compartir, copiar, ampliar, repost y ver menciones. Tocar abre el menú de forma predeterminada.\nArriba puedes cambiar el comportamiento al tocar."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "Añade un botón de altavoz a la superposición de las historias para alternar el sonido. También disponible en el menú de los 3 puntos"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "Añade el botón con forma de ojo a la superposición de las historias. Si está desactivado, el bloqueo de visualización sigue activo sin el botón"; +"Advance on story like" = "Avanzar historia al dar me gusta"; +"Advance on story reply" = "Avanzar historia al responder"; +"Advance when marking as seen" = "Avanzar historia cuando se marque como vista"; +"Audio" = "Sonido"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "Bloquear todo: Todas las historias bloqueadas — Usuarios en la lista son excepciones.\nBloquear seleccionadas: Solo los usuarios en la lista son bloqueados — Todo lo demás permanece normal.\nAmbas listas son guardadas independientemente."; +"Blocking mode" = "Modo de bloqueo"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "Botón = Un toque marca como vista. Interruptor = Tocar el interruptor alterna el aviso de visualización de las historias (👁 se vuelve azul cuando se activa)"; +"Marked-seen indicator" = "Indicador de historias marcadas como vistas"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "Recuerda durante 48 horas las historias que marcaste como vistas y oculta o rellena el botón con forma de ojo en ellas"; +"Hide eye button" = "Ocultar el botón del ojo"; +"Fill eye button green" = "Rellenar el botón del ojo en verde"; +"Disable story seen receipt" = "Deshabilitar aviso de visualización de historias"; +"Enable story user list" = "Habilitar lista de usuarios para historias"; +"Stops others from seeing that you viewed their story" = "Impide que otros vean que viste su historia"; +"Inserts a button next to the seen/eye button on story overlays" = "Inserta un botón junto al botón con forma de ojo (👁) en la superposición de las historias"; +"Keep stories visually seen locally" = "Marcar historias como vistas localmente"; +"Liking a story automatically advances to the next one after a short delay" = "Darle me gusta a una historia avanza automáticamente a la siguiente después de un breve período"; +"Manage list" = "Gestionar lista"; +"Manage list (%lu)" = "Gestionar lista (%lu)"; +"Manual seen button mode" = "Modo visualización manual"; +"Mark seen on story like" = "Marcar visualización de historia al darle me gusta"; +"Mark seen on story reply" = "Marcar visualización de historia al responder"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "Marca una historia como vista en el momento en que tocas el corazón, incluso con el bloqueo de aviso de visualización activado"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "Marca una historia como vista cuando envías una respuesta o una reacción con emoji, incluso con el bloqueo de aviso de visualización activado"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "Marca las historias como vistas localmente (círculo gris) mientras sigue bloqueando el recibo de visto en el servidor"; +"Master toggle. When off, the list is ignored" = "Control general. Cuando está desactivado, la lista es ignorada"; +"Playback" = "Reproducción"; +"Search, sort, swipe to remove" = "Buscar y ordenar. Desliza para eliminar"; +"Seen receipts" = "Confirmación de visualización"; +"Sending a reply or emoji reaction automatically advances to the next story" = "Enviar una respuesta o una reacción con emoji automáticamente avanza a la siguiente historia"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "Añade la opción 'Ver menciones' al menú del botón de acción y al menú de los 3 puntos de las historias"; +"Mentions overlay button" = "Botón de menciones en la superposición"; +"Mentions count badge" = "Insignia con número de menciones"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "Añade un botón junto al botón de acción / ojo en la superposición de las historias. Solo aparece cuando la historia actual contiene menciones o publicaciones / reels compartidos"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "Muestra el número de cuentas mencionadas únicas como una insignia roja en el botón superpuesto"; +"Hide stories midcards" = "Ocultar tarjetas intermedias de historias"; +"Removes the Trending and Music promo cards from the stories tray" = "Elimina las tarjetas promocionales de Tendencias y Música de la bandeja de historias"; +"Stickers" = "Stickers"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "Mira los resultados de encuestas/cuestionarios/deslizador antes de interactuar — aún puedes tocar para votar con normalidad. 'Forzar stickers clásicos' devuelve los stickers de cuestionario y revelado al editor de historias."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "Mira los resultados de encuestas/cuestionarios/deslizador en reels antes de interactuar — aún puedes tocar para votar con normalidad."; +"Force legacy stickers in tray" = "Forzar stickers clásicos en la bandeja"; +"Adds Quiz and Reveal stickers back to the picker" = "Devuelve los stickers de cuestionario y revelado al selector"; +"Bypass Reveal sticker" = "Saltar sticker de revelado"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "Omite el paso de enviar un mensaje para revelar historias con un sticker de revelado"; +"Show quiz answer" = "Mostrar respuesta del cuestionario"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "Resalta la opción correcta en cuestionarios, o la más votada en encuestas"; +"Show poll vote counts" = "Mostrar votos de encuestas"; +"Show vote tallies on poll options and slider count/average before you vote" = "Muestra los votos en opciones de encuesta y la media/conteo del deslizador antes de votar"; +"Stop story auto-advance" = "Detener avance automático de las historias"; +"Stories" = "Historias"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "Historias no avanzan automáticamente a la siguiente cuando el temporizador termina. Toca para avanzar manualmente"; +"Story audio toggle" = "Alternar sonido de la historia"; +"Story user list" = "Lista de usuarios para historias"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "Tocar el botón con forma de ojo para marcar una historia como vista avanza a la siguiente historia automáticamente"; +"This will send a story view receipt." = "Se enviará una confirmación de visualización de la historia."; +"View story mentions" = "Ver mencionados en la historia"; +"Which stories get seen-receipt blocking" = "Cuales historias tienen bloqueado el aviso de visualización"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "Estado activo preciso"; +"Activity log" = "Registro de actividad"; +"Loading…" = "Cargando…"; +"Notify: %@ · Log: %@" = "Notificar: %@ · Registro: %@"; +"Add by user ID" = "Añadir por ID de usuario"; +"Add by thread ID" = "Añadir por ID de chat"; +"Adding…" = "Añadiendo…"; +"Browse activity, grouped by person" = "Explorar la actividad, agrupada por persona"; +"Clear activity log?" = "¿Borrar el registro de actividad?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "Aún no hay actividad.\nCuando alguien lea tu mensaje o se conecte, aparecerá aquí."; +"No one found. Check the spelling or try a different name." = "No se encontró a nadie. Revisa la ortografía o prueba otro nombre."; +"Notify about someone" = "Notificar sobre alguien"; +"Open some chats first, or search a username above." = "Abre algunos chats primero, o busca un nombre de usuario arriba."; +"Pick what each person notifies you about" = "Elige qué te notifica cada persona"; +"Recent in your DMs" = "Recientes en tus mensajes"; +"Results" = "Resultados"; +"This removes all recorded activity on this device." = "Esto elimina toda la actividad registrada en este dispositivo."; +"Active %ldd ago" = "Activo hace %ldd"; +"Active %ldh ago" = "Activo hace %ldh"; +"Active %ldm ago" = "Activo hace %ldm"; +"Activity notifications" = "Notificaciones de actividad"; +"Also track reads in group chats. Groups can be noisy" = "Registrar también las lecturas en chats grupales. Pueden ser ruidosos"; +"Came online" = "Se conectó"; +"Customise notifications" = "Personalizar notificaciones"; +"Everyone" = "Todos"; +"Muted" = "Silenciado"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "Aún no hay nadie personalizado. Mantén pulsado a alguien en el registro de actividad para elegir qué te notifica."; +"Online, offline, typing and read receipts, per person" = "En línea, desconectado, escribiendo y confirmaciones de lectura, por persona"; +"Per-person notifications" = "Notificaciones por persona"; +"Enable activity" = "Activar actividad"; +"Track who reads your messages, comes online, goes offline or types" = "Registra quién lee tus mensajes, se conecta, se desconecta o escribe"; +"For everyone" = "Para todos"; +"For this person" = "Para esta persona"; +"Log only" = "Solo registro"; +"Notify only" = "Solo notificar"; +"Notify + log" = "Notificar + registro"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "Solo registro guarda en silencio. Solo notificar te avisa sin guardarlo. Notificar + registro hace ambas cosas."; +"Presence" = "Presencia"; +"Read your message" = "Leyó tu mensaje"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "Actualiza la presencia cada 20 s y elimina el período de gracia de Instagram, para que el punto verde se apague en cuanto alguien se desconecta."; +"Started typing" = "Empezó a escribir"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "Toca para cambiar qué te notifica. Desliza para quitar y volver a los valores por defecto."; +"These override the defaults for this person." = "Estos anulan los valores por defecto para esta persona."; +"Went offline" = "Se desconectó"; +"When someone becomes active" = "Cuando alguien se conecta"; +"When someone goes inactive" = "Cuando alguien se desconecta"; +"When someone opens a message you sent" = "Cuando alguien abre un mensaje que enviaste"; +"When someone starts typing to you" = "Cuando alguien empieza a escribirte"; +"is now active" = "está activo ahora"; +"is typing…" = "está escribiendo…"; +"went offline" = "se desconectó"; +"Online" = "En línea"; +"Offline" = "Desconectado"; +"Typing" = "Escribiendo"; +"Filters" = "Filtros"; +"Delete the selected records? This can't be undone." = "¿Eliminar los registros seleccionados? No se puede deshacer."; +"Delete all records for the selected chats? This can't be undone." = "¿Eliminar todos los registros de los chats seleccionados? No se puede deshacer."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "Añade el botón con forma de ojo a las conversaciones de DM. Si está desactivado, el bloqueo de la confirmación de lectura sigue activo sin el botón"; +"Auto mark seen on interact" = "Marcar automáticamente como visto al interactuar"; +"Auto mark seen on typing" = "Marcar automáticamente como visto al escribir"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "Bloquea la confirmación de lectura automática — el marcado como visto solo ocurre cuando tú lo decides"; +"Control when messages are marked as seen" = "Controla cuando los mensajes son marcados como vistos"; +"How the seen button behaves" = "Como el botón de visto se comporta"; +"Manually mark messages as seen" = "Marcar manualmente los mensajes como vistos"; +"Mark as seen?" = "¿Marcar como visto?"; +"Mark as viewed?" = "¿Marcar como visualizado?"; +"Mark seen locally" = "Marcar como visto localmente"; +"Marks messages as seen when you reply, react or send media" = "Marca los mensajes como vistos cuando respondes, reaccionas o envías contenido"; +"Marks messages as seen when you start typing" = "Marca los mensajes como vistos cuando comienzas a escribir"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "Los chats abiertos se ven como leídos solo en este dispositivo. El botón del ojo se pone naranja mientras el remitente no tenga confirmación de lectura"; +"Read receipt mode" = "Modo de confirmación de lectura"; +"Read receipts" = "Confirmación de lectura"; +"Show seen button" = "Mostrar botón de visto"; +"This will send a read receipt for the latest messages." = "Se enviará una confirmación de lectura para los mensajes más recientes."; +"This will send a view receipt for the current message." = "Se enviará una confirmación de visualización para el mensaje actual."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "Actividad"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "Añade una opción 'Descargar' al menú que aparece al mantener pulsado sobre los mensajes de voz para guardarlos como archivos M4A"; +"Allows typing and sending DMs longer than Instagram's limit" = "Permite escribir y enviar mensajes más largos que el límite de Instagram"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "Añade una opción 'Enviar archivo' al menú ⊕ en las conversaciones.\nTipos de archivos soportados puede estar limitado por Instagram"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "Añade una opción 'Archivo de audio' al menú ⊕ en las conversaciones para enviar archivos de audio como mensajes de voz"; +"Adds copy text, download GIF/audio to the note long-press menu" = "Añade las opciones copiar texto, descargar GIF/Audio al menú que aparece al mantener pulsada una nota"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "Bloquear todo: Todas las conversaciones bloqueadas — Conversaciones en la lista son excepciones.\nBloquear seleccionadas: Solo las conversaciones en la lista son bloqueadas — Todo lo demás permanece normal.\nAmbas listas son guardadas independientemente. Mantén pulsada una conversación en la bandeja de entrada para añadir o eliminar"; +"Block keep-deleted for excluded chats" = "Bloquea mantener mensajes eliminados para conversaciones excluidas"; +"Block keep-deleted for unlisted chats" = "Bloquear mantener eliminados para conversaciones sin listar"; +"Bypass DM character limit" = "Omitir límite de caracteres en mensajes"; +"Chat list" = "Lista de conversaciones"; +"Confirmation dialog before clearing preserved messages" = "Muestra un diálogo de confirmación antes de borrar mensajes guardados"; +"Copies note text directly on long press without opening the menu" = "Copia el texto de la nota directamente al mantener pulsado sin abrir el menú"; +"Copy text on hold" = "Copiar texto al mantener pulsado"; +"Adds Background, Text and Emoji buttons to the note editor" = "Añade botones de Fondo, Texto y Emoji al editor de notas"; +"Custom note themes" = "Tema de notas personalizado"; +"Disable vanish mode swipe" = "Deshabilitar deslizamiento al modo vanish"; +"Disable typing status" = "Deshabilitar estado de escritura"; +"Disable view-once limitations" = "Deshabilitar limitaciones de ver una vez"; +"Download voice messages" = "Descargar mensajes de voz"; +"Enable chat list" = "Habilitar lista de conversaciones"; +"Enable note theming" = "Habilitar temas en notas"; +"Enables the notes theme picker" = "Habilita el selector de temas para notas"; +"Files" = "Archivos"; +"Full last active date" = "Fecha de última vez completa"; +"Hide reels blend button" = "Ocultar el botón de blend"; +"Hide send to group chat" = "Ocultar enviar a chat grupal"; +"Pin recipients on long-press" = "Fijar destinatarios al pulsar prolongadamente"; +"Long-press in the share sheet to pin a chat/user to the top" = "Pulsa prolongadamente en el panel para compartir para fijar un chat/usuario arriba"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "Pulsa prolongadamente un destinatario para fijarlo o desfijarlo. Los destinatarios fijados aparecen arriba."; +"Recipient pinned" = "Destinatario fijado"; +"Recipient unpinned" = "Destinatario desfijado"; +"Couldn't resolve recipient id" = "No se pudo resolver el id del destinatario"; +"Hide video call button" = "Ocultar botón de video llamada"; +"Hide voice call button" = "Ocultar botón de llamada"; +"Hides the blend button in DMs" = "Elimina el botón de blend en las conversaciones"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "Elimina la opción de crear/enviar a chat grupal al compartir con varios destinatarios"; +"Hides typing indicator from others" = "Oculta el indicador de escribiendo para los demás"; +"Indicate unsent messages" = "Indicar eliminación de mensaje"; +"Keep deleted messages" = "Mantener mensajes eliminados"; +"Turns view once messages into normal media you can loop and pause" = "Convierte los mensajes de una sola vez en medios normales que puedes repetir y pausar"; +"Note actions" = "Acciones en notas"; +"Preserves messages that others unsend" = "Guarda los mensajes que los demás eliminen"; +"Keep my deleted messages" = "Conservar mis mensajes eliminados"; +"Also preserves messages you unsend yourself" = "También guarda los mensajes que tú elimines"; +"Prevents accidental swipe-up activation of vanish mode" = "Evita la activación accidental del modo vanish al deslizar hacia arriba"; +"Quick list button in chats" = "Botón de lista rápida en conversaciones"; +"Removes the audio call button from DM thread header" = "Elimina el botón de llamada en las conversaciones"; +"Removes the video call button from DM thread header" = "Elimina el botón de video llamada en las conversaciones"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "Reproducir mensajes visuales sin expiración. Alterna en el menú del botón ojo (👁), o como un botón por separado cuando el botón ojo (👁) está deshabilitado"; +"Search, sort, swipe to remove or toggle keep-deleted" = "Buscar y ordenar. Desliza para eliminar o alterna mantener eliminados"; +"Send audio as file" = "Enviar audio como archivo"; +"Send files (experimental)" = "Enviar archivos (Experimental)"; +"File sending not available" = "Envío de archivos no disponible"; +"Show full date instead of \"Active 2h ago\"" = "Muestra la fecha completa en vez de \"Activo hace 2 horas\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "Muestra un botón en la pestaña Mensajes para añadir o eliminar conversaciones de la lista. Mantén pulsado para más opciones"; +"Shows a notification pill when a message is unsent" = "Muestra una notificación cuando se elimine un mensaje"; +"Shows an \"Unsent\" label on preserved messages" = "Muestra una etiqueta \"Mensaje eliminado\" en mensajes guardados"; +"Unlimited replay of visual messages" = "Reproducción ilimitada de mensajes visuales"; +"Unsent message notification" = "Notificación de eliminación de mensaje"; +"Voice messages" = "Mensajes de voz"; +"Warn before clearing on refresh" = "Mostrar un aviso antes de actualizar"; +"Which chats get read-receipt blocking" = "Cuales conversaciones tienen bloqueada la confirmación de lectura"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ Deslizar para actualizar en la pestaña Mensajes borra todos los mensajes guardados. Activa la advertencia que aparece arriba para que se muestre diálogo de confirmación."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu eliminado(s)"; +"%lu selected" = "%lu seleccionados"; +"Absolute date + time" = "Fecha y hora absolutas"; +"Adjust the filters or clear the search to see more." = "Ajusta los filtros o borra la búsqueda para ver más."; +"All time" = "Todo el tiempo"; +"Browse, filter and search recorded messages" = "Explora, filtra y busca mensajes registrados"; +"Captures unsent messages with their text or media" = "Captura mensajes no enviados con su texto o medios"; +"Clear deleted-message log?" = "¿Borrar registro de mensajes eliminados?"; +"Clear from this user" = "Borrar de este usuario"; +"Clear log" = "Borrar registro"; +"Clear log for this account" = "Borrar registro de esta cuenta"; +"Clear log for this user?" = "¿Borrar registro de este usuario?"; +"Clear media files" = "Borrar archivos multimedia"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "Borrar los medios mantiene los registros (texto, remitente, hora). Borrar el registro elimina todo de esta cuenta."; +"Close" = "Cerrar"; +"Content unavailable" = "Contenido no disponible"; +"Copied" = "Copiado"; +"Copy URL" = "Copiar URL"; +"Date range" = "Rango de fechas"; +"Deleted messages" = "Mensajes eliminados"; +"Deleted messages log" = "Registro de mensajes eliminados"; +"Deleted: %@\n" = "Eliminado: %@\n"; +"Edit %lu" = "Edición %lu"; +"Edit history" = "Historial de ediciones"; +"Edited" = "Editado"; +"Empty" = "Vacío"; +"Enable deleted messages log" = "Activar registro de mensajes eliminados"; +"Enable Settings → Messages → Deleted messages log to start recording." = "Activa Ajustes → Mensajes → Registro de mensajes eliminados para empezar."; +"GIF" = "GIF"; +"Hashtag" = "Hashtag"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "Tipo: %@\n"; +"Last 30 days" = "Últimos 30 días"; +"Last 7 days" = "Últimos 7 días"; +"Link" = "Enlace"; +"Live location" = "Ubicación en tiempo real"; +"Location" = "Ubicación"; +"Logging is off" = "El registro está desactivado"; +"Media on disk" = "Medios en disco"; +"Most messages" = "Más mensajes"; +"Most recent" = "Más reciente"; +"No deleted messages yet" = "Aún no hay mensajes eliminados"; +"No matches" = "Sin coincidencias"; +"Nothing to save" = "Nada para guardar"; +"Oldest first" = "Más antiguos primero"; +"Open log" = "Abrir registro"; +"Group chat" = "Chat grupal"; +"%lu messages in %lu chats" = "%lu mensajes en %lu chats"; +"%lu people · %lu deleted" = "%lu personas · %lu eliminados"; +"When someone unsends a message, it will appear here grouped by chat." = "Cuando alguien elimina un mensaje, aparecerá aquí agrupado por chat."; +"Clear this chat" = "Borrar este chat"; +"Clear log for this chat?" = "¿Borrar el registro de este chat?"; +"Removes every preserved deleted message from this group chat." = "Elimina todos los mensajes eliminados guardados de este chat grupal."; +"Reaction removed" = "Reacción eliminada"; +"Log removed reactions" = "Registrar reacciones eliminadas"; +"Also records when someone removes a reaction, and which message it was on" = "También registra cuando alguien elimina una reacción y en qué mensaje estaba."; +"Removed a reaction" = "Eliminó una reacción"; +"on @%@: %@" = "en @%@: %@"; +"on: %@" = "en: %@"; +"a message" = "un mensaje"; +"removed %@ on: %@" = "eliminó %@ en: %@"; +"removed reaction %@" = "eliminó la reacción %@"; +"%@ removed the %@ reaction." = "%@ eliminó la reacción %@."; +"Removed %@" = "Eliminado %@"; +"Someone" = "Alguien"; +"Photo or video" = "Foto o video"; +"Refresh names & photos" = "Actualizar nombres y fotos"; +"Refreshing names & photos" = "Actualizando nombres y fotos"; +"Records every message someone unsends, grouped by chat" = "Registra cada mensaje que alguien elimina, agrupado por chat"; +"Open profile" = "Abrir perfil"; +"Original" = "Original"; +"Play" = "Reproducir"; +"Post" = "Publicación"; +"Reel" = "Reel"; +"Relative (1m / 3h / 3d ago)" = "Relativo (hace 1m / 3h / 3d)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "Elimina cada mensaje eliminado guardado y sus medios para la cuenta actual. Esto no se puede deshacer."; +"Removes every preserved deleted message and its captured media for this account." = "Elimina cada mensaje eliminado guardado y sus medios para esta cuenta."; +"Removes every preserved deleted message from this sender." = "Elimina cada mensaje eliminado guardado de este remitente."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "Elimina cada foto, video y audio guardado. Los registros mantienen su texto e información del remitente."; +"Search messages" = "Buscar mensajes"; +"Search senders or messages" = "Buscar remitentes o mensajes"; +"Select" = "Seleccionar"; +"Show edit history" = "Mostrar historial de ediciones"; +"Source URL recorded but media not stored.\n" = "URL de origen registrada pero el medio no se almacenó.\n"; +"Sticker" = "Sticker"; +"Tap to open in Instagram" = "Toca para abrir en Instagram"; +"Tap to open in Maps" = "Toca para abrir en Mapas"; +"Tap to play" = "Toca para reproducir"; +"Tap to play · %@" = "Toca para reproducir · %@"; +"Text" = "Texto"; +"This account" = "Esta cuenta"; +"Unknown" = "Desconocido"; +"Video" = "Video"; +"View" = "Ver"; +"Voice" = "Voz"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "Cuando está activado, los mensajes eliminados y sus medios se guardan en este dispositivo. Desactiva y borra el registro para limpiar el historial."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "En la herramienta Dibujar, envía una imagen como tu dibujo, desde la galería, Fotos, stickers o pegar, con un editor integrado para recortar y quitar el fondo"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "Dibuja una línea o forma, luego toca Enviar y elige de dónde tomar la imagen: galería, Fotos, stickers o pegar.\n\nLa imagen ocupa el lugar de lo que dibujaste y toma su posición y tamaño, así que dibuja más grande para una imagen más grande.\n\nReinicia Instagram para que surta efecto."; + +"Send image as drawing" = "Enviar imagen como dibujo"; + +"Bypass \"You can't send messages\"" = "Omitir «No puedes enviar mensajes»"; +"Custom chat background" = "Fondo de chat personalizado"; +"DM Save button" = "Botón Guardar de MD"; +"Incoming calls stay silent — no ring, no screen, no notification" = "Las llamadas entrantes permanecen en silencio — sin tono, sin pantalla, sin notificación"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "Haz que el botón Guardar integrado de Instagram en fotos y videos de MD descargue a Fotos, la Galería o Compartir"; +"Messages" = "Mensajes"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "Elimina el aviso del campo de texto bloqueado y lo restaura en los chats restringidos"; +"Reroute native Save" = "Redirigir Guardar nativo"; +"Save media" = "Guardar medio"; +"Silence incoming calls" = "Silenciar llamadas entrantes"; +"Threads" = "Hilos"; +"Use your own images as chat backgrounds" = "Usa tus propias imágenes como fondos de chat"; +"Activity status toggle" = "Interruptor de estado de actividad"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "Añade un punto en la cabecera de mensajes. Tócalo para activar o desactivar tu estado de actividad"; +"Activity status on" = "Estado de actividad activado"; +"Activity status off" = "Estado de actividad desactivado"; +"Couldn't change activity status" = "No se pudo cambiar el estado de actividad"; +"Check your connection and try again" = "Comprueba tu conexión e inténtalo de nuevo"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "Cámara"; +"Viewer" = "Visor"; +"Saving" = "Guardado"; +"Confirmations" = "Confirmaciones"; +"Confirm switching button" = "Botón de confirmación de cambio"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "Añade un botón junto al botón de acción para activar o desactivar la confirmación de cambio al instante"; +"Switching confirmation on" = "Confirmación de cambio activada"; +"Switching confirmation off" = "Confirmación de cambio desactivada"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "Añade un botón de galería a la cámara de Instantáneas para enviar una foto desde tu álbum"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "Añade un botón de acciones de RyukGram a la cabecera del visor de Instantáneas con entradas para expandir, guardar, compartir y guardar todo"; +"All loaded instants" = "Todas las Instantáneas cargadas"; +"Auto advance after reaction" = "Avanzar automáticamente al reaccionar"; +"Automatically moves to the next instant after you like or react" = "Pasa automáticamente a la siguiente Instantánea después de reaccionar o dar me gusta"; +"Auto close when finished" = "Cerrar automáticamente al terminar"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "Cierra el visor de Instantáneas cuando las has visto todas en lugar de quedarte en la cámara"; +"Bypasses the Instants screenshot block" = "Omite el bloqueo de capturas de pantalla en Instantáneas"; +"Could not locate the instant on screen" = "No se pudo localizar la Instantánea en pantalla"; +"Current instant" = "Instantánea actual"; +"In-app Gallery" = "Galería interna"; +"Instant" = "Instantánea"; +"Instants" = "Instantáneas"; +"Auto-saved instants log" = "Registro de Instantáneas guardadas automáticamente"; +"Auto-save instants" = "Guardado automático de Instantáneas"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "Guarda automáticamente cada Instantánea que ves, incluso al deslizar — cada una solo una vez"; +"Instants action button" = "Botón de acciones de Instantáneas"; +"No instants currently loaded" = "No hay Instantáneas cargadas"; +"No media available to save" = "No hay contenido para guardar"; +"Photos library" = "Biblioteca de Fotos"; +"Pick from" = "Elegir desde"; +"Queued %lu instants" = "%lu Instantáneas en cola"; +"Save all to Gallery" = "Guardar todas en la Galería"; +"Save all to Photos" = "Guardar todas en Fotos"; +"Save to Gallery" = "Guardar en la Galería"; +"Send from gallery" = "Enviar desde la galería"; +"Tweaks for the QuickSnap / Instants camera surface." = "Ajustes para la cámara de QuickSnap / Instants."; +"Use" = "Usar"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "Oculta también la barra de pestañas inferior — solo se ve la bandeja de entrada"; +"Show the home shortcut button in the inbox header, on the right" = "Muestra el botón de acceso directo en inicio en la cabecera de mensajes, a la derecha"; +"Greyed out until the home shortcut button is enabled in Interface" = "Aparece atenuado hasta que actives el botón de acceso directo en inicio en Interfaz"; +"Hide search tab" = "Ocultar pestaña de búsqueda"; +"Remove the search/explore button from the tab bar" = "Quita el botón de búsqueda/explorar de la barra de pestañas"; +"Hide tab bar" = "Ocultar barra de pestañas"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "Oculta todas las pestañas excepto Mensajes y Perfil. Inicia la aplicación en la pestaña Mensajes. El acceso rápido a la configuración se cambia a mantener pulsada la pestaña Mensajes."; +"Icon order" = "Orden de los íconos"; +"Launch tab" = "Pestaña inicial"; +"Swipe sideways to move between the tab bar tabs" = "Desliza de lado para cambiar entre las pestañas de la barra"; +"Messages only" = "Únicamente Mensajes"; +"Messages-only mode" = "Modo mensajería"; +"Automatic schedule" = "Programación automática"; +"DM-only client, hide tabs, auto schedule" = "Cliente solo de MD, ocultar pestañas, programación automática"; +"Start time" = "Hora de inicio"; +"End time" = "Hora de fin"; +"Switch into Messages-only on its own during a time window" = "Activar el modo mensajería automáticamente durante un intervalo de tiempo"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "Activa el modo mensajería automáticamente durante un intervalo diario (p. ej. 10:00 PM – 6:00 AM) con los interruptores de arriba. Se te pedirá reiniciar cuando el intervalo empiece y cuando termine."; +"Active now · ends %@" = "Activo ahora · termina a las %@"; +"Next window starts %@" = "El próximo intervalo empieza a las %@"; +"Messages-only starting" = "Iniciando modo mensajería"; +"Messages-only ending" = "Finalizando modo mensajería"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "Tu intervalo de modo mensajería ha empezado. Reinicia Instagram para cambiar a solo MD."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "Tu intervalo de modo mensajería ha terminado. Reinicia Instagram para recuperar las demás pestañas."; +"Navigation" = "Navegación"; +"Swipe between tabs" = "Deslizar entre pestañas"; +"Tab the app opens to. Ignored when Messages-only is on" = "Pestaña en la que inicia la aplicación. Se ignora cuando el modo mensajería está activado"; +"How the icons on the bottom tab bar are ordered" = "El orden de los iconos en la barra de pestañas inferior"; +"Hidden tabs" = "Pestañas ocultas"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "Mantén pulsado y arrastra para reordenar. Arrastra un icono hacia arriba para ocultarlo. Toca una pestaña oculta para volver a añadirla."; +"All tabs are on the bar" = "Todas las pestañas están en la barra"; +"Turn IG into a DM-only client" = "Convierte Instagram en una aplicación de mensajería instantánea"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "Todos"; +"Calls" = "Llamadas"; +"Comments & posts" = "Comentarios y publicaciones"; +"Confirm actions" = "Confirmar acciones"; +"Confirm changing theme" = "Confirmar cambiar el tema"; +"Confirm disappearing media mark as viewed" = "Confirmar marcar contenido efímero como visto"; +"Confirm DM mark as seen" = "Confirmar marcar DM como visto"; +"Confirm follow" = "Confirmar seguir"; +"Confirm follow requests" = "Confirmar solicitud de seguimiento"; +"Confirm Instants capture" = "Confirmar captura de Instantáneas"; +"Confirm Instants emoji reaction" = "Confirmar reacción con emojis en Instantáneas"; +"Confirm like: Posts" = "Confirmar me gusta en publicaciones"; +"Confirm like: Reels" = "Confirmar me gusta en reels"; +"Confirm note emoji reaction" = "Confirmar reacción con emojis en notas"; +"Confirm note like" = "Confirmar me gusta en notas"; +"Confirm posting comment" = "Confirmar publicar comentario"; +"Confirm repost" = "Confirmar repost"; +"Confirm send to group chat" = "Confirmar enviar a chat grupal"; +"Confirm sticker interaction (highlights)" = "Confirma interacción con stickers (destacadas)"; +"Confirm sticker interaction (stories)" = "Confirma interacción con stickers (historias)"; +"Confirm story emoji reaction" = "Confirmar reacción con emojis en historias"; +"Confirm story like" = "Confirmar me gusta en historias"; +"Confirm story mark as seen" = "Confirmar marcar historia como vista"; +"Confirm switching Instant" = "Confirmar cambio de Instantánea"; +"Confirm unfollow" = "Confirmar dejar de seguir"; +"Confirm vanish mode" = "Confirmar modo Vanish"; +"Confirm video call" = "Confirmar videollamada"; +"Confirm voice call" = "Confirmar llamada de voz"; +"Confirm voice messages" = "Confirmar mensaje de voz"; +"Follows" = "Sigue"; +"Likes" = "Me gusta"; +"Messaging" = "Mensajería"; +"Reaction stickers only" = "Solo stickers de reacción"; +"Reactions" = "Reacciones"; +"Send to group chat?" = "¿Enviar a chat grupal?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "Muestra una alerta antes de crear/enviar a un chat grupal desde el menú de compartir"; +"Shows an alert before marking a disappearing message as viewed" = "Muestra una alerta antes de marcar un mensaje efímero como visto"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "Muestra una alerta antes de enviar una confirmación de lectura desde el botón de visto de DM o el menú"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "Muestra una alerta antes de enviar una confirmación de visualización de historia desde el botón con forma de ojo o el menú"; +"Shows an alert before sending an emoji reaction on a note" = "Muestra una alerta antes de enviar una reacción con emojis en una nota"; +"Shows an alert before sending an emoji reaction on a story" = "Muestra una alerta antes de enviar una reacción con emojis en una historia"; +"Shows an alert before sending an emoji reaction on an Instant" = "Muestra una alerta antes de enviar una reacción con emojis en una Instantánea"; +"Shows an alert before sending a photo or video from the Instants camera" = "Muestra una alerta antes de enviar una foto o un video desde la cámara de Instantáneas"; +"Shows an alert before tapping to switch to the next/previous Instant" = "Muestra una alerta antes de tocar para cambiar a la Instantánea siguiente/anterior"; +"Asks you to confirm before a voice message sends" = "Te pide confirmación antes de enviar un mensaje de voz"; +"Shows an alert to confirm before toggling vanish mode" = "Muestra una alerta para confirmar antes de activar el modo Vanish"; +"Confirms before you accept or decline a follow request" = "Confirma antes de aceptar o rechazar una solicitud de seguimiento"; +"Confirms before a chat theme change applies" = "Confirma antes de aplicar un cambio de tema del chat"; +"Confirms before the follow button follows someone" = "Confirma antes de que el botón de seguir siga a alguien"; +"Shows an alert when you click the like button on notes to confirm the like" = "Muestra una alerta para confirmar cuando tocas el botón de me gusta en una nota"; +"Shows an alert when you click the like button on posts to confirm the like" = "Muestra una alerta para confirmar cuando tocas el botón de me gusta en publicaciones"; +"Confirms before a like lands on a reel" = "Confirma antes de dar me gusta a un reel"; +"Shows an alert when you click the like button on stories to confirm the like" = "Muestra una alerta para confirmar cuando tocas el botón de me gusta en historias"; +"Confirms before a comment posts" = "Confirma antes de publicar un comentario"; +"Shows an alert when you click the repost button to confirm before reposting" = "Muestra una alerta para confirmar cuando tocas el botón de repost"; +"Shows an alert when you click the unfollow button to confirm" = "Muestra una alerta para confirmar cuando tocas el botón de dejar de seguir"; +"Shows an alert when you click the video call button to confirm before calling" = "Muestra una alerta cuando tocas el botón de videollamada, antes de llamar"; +"Shows an alert when you click the voice call button to confirm before calling" = "Muestra una alerta cuando tocas el botón de llamada de voz, antes de llamar"; +"Shows an alert when you tap a sticker inside a highlight" = "Muestra una alerta cuando tocas un sticker dentro de una historia destacada"; +"Shows an alert when you tap a sticker on someone's story" = "Muestra una alerta cuando tocas un sticker en la historia de alguien"; +"Stories & highlights" = "Historias y destacados"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld h"; +"%ld locked" = "%ld bloqueados"; +"%ld min" = "%ld min"; +"%ldh idle" = "%ldh inactivo"; +"%ldm idle" = "%ldm inactivo"; +"%lds" = "%lds"; +"%lds idle" = "%lds inactivo"; +"%lu hidden" = "%lu ocultos"; +"4 digits" = "4 dígitos"; +"6 digits" = "6 dígitos"; +"Add hidden chat" = "Añadir chat oculto"; +"Add locked chat" = "Añadir chat bloqueado"; +"Allow Instants screenshots" = "Permitir capturas de pantalla en Instantáneas"; +"Always ask when opening again" = "Preguntar siempre al volver a abrir"; +"Ask again after Instagram returns" = "Preguntar de nuevo cuando Instagram vuelva"; +"Auto-relock after idle" = "Rebloqueo automático tras inactividad"; +"Balanced default" = "Predeterminado equilibrado"; +"Best for sensitive sections" = "Mejor para secciones sensibles"; +"Biometric" = "Biometría"; +"Change passcode" = "Cambiar código"; +"Chat hidden" = "Chat oculto"; +"Chat unhidden" = "Chat mostrado"; +"Chat locked" = "Chat bloqueado"; +"Chat unlocked" = "Chat desbloqueado"; +"Choose a code you'll remember." = "Elige un código que recuerdes."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "Elige cuánto tiempo permanece desbloqueada esta sección mientras está inactiva. Nunca la mantiene desbloqueada hasta que Instagram se cierre o pase a segundo plano."; +"Confirm current passcode" = "Confirma el código actual"; +"Confirm passcode" = "Confirma el código"; +"Could not save passcode" = "No se pudo guardar el código"; +"Create passcode" = "Crear código"; +"Derivation failed" = "Falló la derivación"; +"DM inbox" = "Bandeja de DMs"; +"Don't share unlock" = "No compartir desbloqueo"; +"Each target has its own enable, timeout, and re-lock configuration." = "Cada objetivo tiene su propia configuración de activación, tiempo de espera y rebloqueo."; +"Enable lock" = "Activar bloqueo"; +"Enter passcode" = "Introduce el código"; +"Enter value" = "Introduce un valor"; +"Enter your current passcode to change it" = "Introduce tu código actual para cambiarlo"; +"Enter your current passcode to reset it" = "Introduce tu código actual para restablecerlo"; +"Enter your passcode to continue" = "Introduce tu código para continuar"; +"every use" = "cada vez"; +"Every use" = "Cada vez"; +"Hidden chats" = "Chats ocultos"; +"Hidden chats hidden" = "Chats ocultos ocultados"; +"Hidden chats revealed" = "Chats ocultos mostrados"; +"👁 Shown in the inbox · Tap to hide" = "👁 Mostrados en la bandeja · Toca para ocultar"; +" · shown in inbox" = " · mostrados en la bandeja"; +"Hide chat" = "Ocultar chat"; +"Unhide chat" = "Mostrar chat"; +"Hold name to reveal" = "Mantén pulsado el nombre para mostrar"; +"Hide message preview" = "Ocultar vista previa del mensaje"; +"Hide this chat?" = "¿Ocultar este chat?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "Oculta la interfaz de RyukGram en capturas y grabaciones, y evita las alertas de captura de pantalla de Instagram por función."; +"Idle timeout" = "Tiempo de inactividad"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "Mantener este objetivo bloqueado por separado"; +"Less frequent prompts" = "Avisos menos frecuentes"; +"Lock" = "Bloquear"; +"Lock chat" = "Bloquear chat"; +"Lock every time" = "Bloquear siempre"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "Bloquear cada vez anula el tiempo de espera por inactividad. No compartir desbloqueo mantiene este objetivo separado."; +"Lock targets" = "Destinos de bloqueo"; +"Lock the tweak" = "Bloquear el tweak"; +"Lock this chat" = "Bloquear este chat"; +"Lock this chat?" = "¿Bloquear este chat?"; +"Lock with passcode" = "Bloquear con código"; +"Locked chats" = "Chats bloqueados"; +"Long-press a chat to lock it individually" = "Mantén pulsado un chat para bloquearlo individualmente"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "Mantén pulsado un chat → Ocultar chat para añadirlo aquí. Los chats ocultos se filtran de la bandeja hasta que los quites de esta lista."; +"Long-press a DM to add" = "Mantén pulsado un chat para añadirlo"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "Mantén pulsado el nombre de la cuenta en la parte superior de la bandeja de mensajes para mostrar u ocultar tus chats ocultos"; +"Longest idle window" = "Ventana de inactividad más larga"; +"Manage locked chats" = "Administrar chats bloqueados"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "Interruptor principal. Desactívalo para deshabilitar todos los destinos de bloqueo sin perder su configuración."; +"Never" = "Nunca"; +"No passcode set" = "Sin código establecido"; +"Nothing here yet." = "Aún no hay nada aquí."; +"Off" = "DESACTIVADO"; +"On" = "ACTIVADO"; +"On — %@" = "Activado — %@"; +"On — %@ + %ld more" = "Activado — %@ + %ld más"; +"On — no targets enabled" = "Activado — sin destinos activados"; +"Passcode" = "Código de acceso"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "Código + biometría. Bloquea la ventana de ajustes del tweak, la galería, el registro de mensajes eliminados, chats individuales y toda la app."; +"Passcode changed" = "Código cambiado"; +"Passcode reset" = "Código restablecido"; +"Passcode set" = "Código establecido"; +"Passcode too short" = "Código demasiado corto"; +"Passcodes did not match — try again" = "Los códigos no coinciden — inténtalo de nuevo"; +"Per-chat locks" = "Bloqueos por chat"; +"Prompt before Instagram opens" = "Pedir antes de abrir Instagram"; +"Prompt before Profile Analyzer opens" = "Pedir antes de abrir el Analizador de perfiles"; +"Prompt before the deleted-messages log opens" = "Pedir antes de abrir el registro de mensajes eliminados"; +"Prompt before the gallery opens" = "Pedir antes de abrir la galería"; +"Prompt before tweak settings open" = "Pedir antes de abrir los ajustes del tweak"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "Pedir en cada entrada a la bandeja de DMs, incluyendo abrir directo en mensajes"; +"Re-enter the same passcode" = "Vuelve a introducir el mismo código"; +"Re-lock on background" = "Rebloquear en segundo plano"; +"re-lock on bg" = "rebloquear en bg"; +"Recently hidden" = "Ocultados recientemente"; +"Prompt before holding the inbox name reveals hidden chats" = "Pedir antes de que mantener pulsado el nombre muestre los chats ocultos"; +"Reveal hidden chats" = "Mostrar chats ocultos"; +"Recently locked" = "Bloqueados recientemente"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "Oculta los botones de RyukGram en capturas, grabaciones de pantalla y duplicado"; +"Remove screenshot alert" = "Quitar alerta de captura de pantalla"; +"Replace inbox preview with • • •" = "Reemplazar la vista previa de la bandeja con • • •"; +"Require passcode for this section" = "Requerir código para esta sección"; +"Requires your current passcode" = "Requiere tu código actual"; +"Reset passcode" = "Restablecer código"; +"Reset passcode?" = "¿Restablecer código?"; +"Screenshots & capture" = "Capturas y grabaciones"; +"Security & Privacy" = "Seguridad y privacidad"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "Establece un código para bloquear Ajustes, Galería, el registro de mensajes eliminados, chats individuales, la bandeja de DMs, el Analizador de perfiles o Instagram."; +"Set passcode" = "Establecer código"; +"Short idle window" = "Ventana de inactividad corta"; +"Stay unlocked until app close or background" = "Permanecer desbloqueado hasta cerrar la app o pasar a segundo plano"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "Suprime la notificación de IG \"X hizo una captura de pantalla\" en historias, mensajes directos y contenido temporal"; +"Tap Unlock" = "Toca Desbloquear"; +"Tap Unlock or enter your passcode" = "Toca Desbloquear o introduce tu código"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "Esto borra el código, desactiva todos los destinos de bloqueo y desbloquea todos los chats. La galería y los datos de mensajes eliminados no se tocan."; +"Thread %@" = "Hilo %@"; +"Tweak settings" = "Ajustes del tweak"; +"Unlock" = "Desbloquear"; +"Unlock %@" = "Desbloquear %@"; +"Unlock chat" = "Desbloquear chat"; +"Unlock Instagram" = "Desbloquear Instagram"; +"Unlock this chat" = "Desbloquear este chat"; +"Use %@" = "Usar %@"; +"Username (looks up the DM thread) or raw thread ID" = "Nombre de usuario (busca el chat) o ID de chat sin procesar"; +"Username or thread ID" = "Nombre de usuario o ID de chat"; +"Wrong passcode" = "Código incorrecto"; +"Wrong passcode • %ld attempts" = "Código incorrecto • %ld intentos"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "Protección"; +"Password-protect" = "Proteger con contraseña"; +"On — tap to change" = "Activado — toca para cambiar"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "La copia se cifra con AES-256. Necesitarás esta contraseña para restaurarla; no hay forma de recuperarla si la pierdes."; +"Optional. Lock the backup behind a password so only you can restore it." = "Opcional. Protege la copia con una contraseña para que solo tú puedas restaurarla."; +"Backup password" = "Contraseña de la copia"; +"You'll need this to restore. It can't be recovered if lost." = "La necesitarás para restaurar. No se puede recuperar si la pierdes."; +"Password" = "Contraseña"; +"Confirm password" = "Confirmar contraseña"; +"Set" = "Establecer"; +"Use at least 4 characters." = "Usa al menos 4 caracteres."; +"The passwords don't match." = "Las contraseñas no coinciden."; +"Try again" = "Inténtalo de nuevo"; +"Encrypted backup" = "Copia cifrada"; +"Enter the password used to protect this backup." = "Introduce la contraseña con la que se protegió esta copia."; +"Wrong password. Try again." = "Contraseña incorrecta. Inténtalo de nuevo."; +"Decrypting backup…" = "Descifrando copia…"; +"Encrypting backup…" = "Cifrando copia…"; +"%ld of %ld selected · %@" = "%ld de %ld seleccionados · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "Marca cada conjunto que quieras incluir. Toca una fila para ver qué contiene."; + +"%lu account(s)" = "%lu cuenta(s)"; +"%lu account(s) · %lu image(s) · %@" = "%lu cuenta(s) · %lu imagen(es) · %@"; +"%lu file(s) · %@" = "%lu archivo(s) · %@"; +"%lu preferences" = "%lu preferencias"; +"(none)" = "(ninguno)"; +"Apply backup?" = "¿Aplicar copia de seguridad?"; +"Applying backup…" = "Aplicando copia de seguridad…"; +"archive error" = "error de archivo"; +"Archived snapshots" = "Capturas archivadas"; +"Backup & Restore" = "Copia de seguridad & restauración"; +"Backup exported" = "Copia de seguridad exportada"; +"Backup failed" = "Falló la copia de seguridad"; +"Backup has no importable sections." = "La copia de seguridad no tiene secciones importables."; +"Chat & story filters" = "Filtros de chats e historias"; +"Chat backgrounds" = "Fondos de chat"; +"Corrupt entry path." = "Ruta de entrada corrupta."; +"Could not decompress archive." = "No se pudo descomprimir el archivo."; +"Could not open archive." = "No se pudo abrir el archivo."; +"Could not open staging file." = "No se pudo abrir el archivo temporal."; +"Could not read the backup archive." = "No se pudo leer el archivo de copia de seguridad."; +"Could not write archive." = "No se pudo escribir el archivo."; +"Could not write backup file." = "No se pudo escribir el archivo de copia de seguridad."; +"Could not write extracted file." = "No se pudo escribir el archivo extraído."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "Los datos existentes de los elementos marcados se reemplazarán. Puede ser necesario reiniciar para que todo surta efecto."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "Exporta o importa datos de RyukGram: ajustes, filtros por cuenta, chats ocultos y bloqueados, Analizador de Perfiles, galería, fondos de chat, mensajes eliminados y el registro de confirmaciones de lectura. Elige cualquier combinación en cada página. Los ajustes se mantienen como un archivo JSON plano; los paquetes con multimedia se exportan como un .ryukbak comprimido."; +"Feature data" = "Datos de funciones"; +"Import mode" = "Modo de importación"; +"Merge" = "Combinar"; +"Replace" = "Reemplazar"; +"Add the backup's data to what's already here" = "Añade los datos de la copia a lo que ya hay aquí"; +"Clear existing data, then apply the backup" = "Borra los datos actuales y luego aplica la copia"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "Combinar conserva lo que hay en este dispositivo y añade los datos de la copia — los duplicados se combinan, incluida la galería."; +"Replace clears existing data for each ticked item, then applies the backup." = "Reemplazar borra los datos existentes de cada elemento marcado y luego aplica la copia."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "La copia se combinará con tus datos existentes — no se elimina nada y los duplicados se combinan. Puede que haga falta reiniciar para que todo surta efecto."; +"Hidden & locked chats" = "Chats ocultos y bloqueados"; +"Import" = "Importar"; +"Inspect the full manifest" = "Inspeccionar el manifiesto completo"; +"Load a .json or .ryukbak backup" = "Cargar una copia de seguridad .json o .ryukbak"; +"Not a RyukGram backup archive." = "No es un archivo de copia de seguridad de RyukGram."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "Restablecer los ajustes a sus valores por defecto y borrar los datos"; +"Swipe a row to clear it." = "Desliza una fila para limpiarla."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "Las filas marcadas como «Compartido» no están vinculadas a ninguna cuenta y siempre siguen su propia marca."; +"%lu file(s)" = "%lu archivo(s)"; +"Clear all data" = "Borrar todos los datos"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "Cada elemento de la galería, registro y grabación guardado se elimina de este dispositivo. Tus ajustes se conservan — usa Restablecer para devolverlos a sus valores por defecto. No se puede deshacer."; +"Accounts" = "Cuentas"; +"All accounts (%ld)" = "Todas las cuentas (%ld)"; +"Pick at least one account." = "Selecciona al menos una cuenta."; +"Signed in" = "Sesión iniciada"; +"Shared" = "Compartido"; +"Per-account data is limited to the accounts ticked here." = "Los datos por cuenta se limitan a las cuentas marcadas aquí."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "Los datos por cuenta solo se borran para %@. Los datos compartidos siguen su propia marca. Esto no se puede deshacer."; +"Preparing backup…" = "Preparando copia de seguridad…"; +"Reading backup…" = "Leyendo copia de seguridad…"; +"RyukGram's own data on this device" = "Los datos propios de RyukGram en este dispositivo"; +"Save settings or a full backup" = "Guardar ajustes o una copia de seguridad completa"; +"Tick what to apply. Rows not in this backup are hidden." = "Marca qué aplicar. Las filas que no están en esta copia de seguridad se ocultan."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "Marca qué incluir. Toca una fila para inspeccionarla. Añadir galería, fondos de chat o mensajes eliminados produce un paquete .ryukbak comprimido."; +"Truncated entry data." = "Datos de entrada truncados."; +"Truncated entry length." = "Longitud de entrada truncada."; +"Truncated entry path." = "Ruta de entrada truncada."; +"Unsafe entry path." = "Ruta de entrada insegura."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "Avanzado"; +"All tweak options are disabled" = "Todas las opciones del Tweak están desactivadas"; +"Auto-clear cache" = "Limpieza automática de caché"; +"Automatically opens settings when the app launches" = "Abre la configuración automáticamente cuando se inicia la aplicación"; +"Cache" = "Caché"; +"Cache cleared" = "Caché limpiada"; +"Calculating cache size…" = "Calculando tamaño de caché…"; +"Clear" = "Limpiar"; +"Clear cache" = "Limpiar caché"; +"Clear cache (%@)" = "Limpiar caché (%@)"; +"Clearing cache…" = "Limpiando caché…"; +"Clearing still scans on demand." = "La limpieza sigue escaneando bajo demanda."; +"Daily" = "Diario"; +"Disable all tweak options" = "Desactivar todas las opciones del Tweak"; +"Disable safe mode" = "Deshabilitar modo seguro"; +"Enable tweak settings quick-access" = "Habilitar acceso rápido a la configuración del Tweak"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "Instagram funciona de forma original mientras esto está activado. Desactívalo para restaurar tus ajustes."; +"Tap to re-enable everything" = "Toca para reactivar todo"; +"Turn every feature off — your settings are kept" = "Desactiva todas las funciones — tus ajustes se conservan"; +"Fix duplicate notifications" = "Corregir notificaciones duplicadas"; +"Free %@ of Instagram cache." = "Liberar %@ de la caché de Instagram."; +"Freed %@" = "Se liberaron %@"; +"Hold on the home tab to open RyukGram settings" = "Mantén pulsada la pestaña Feed (Inicio) para abrir la configuración de RyukGram"; +"Monthly" = "Mensual"; +"Nothing to clear" = "Nada que limpiar"; +"Off skips the size scan when Advanced opens." = "Desactivado omite el escaneo de tamaño al abrir Avanzado."; +"Pause playback when opening settings" = "Pausa la reproducción al abrir la configuración"; +"Always show what's new" = "Mostrar siempre las novedades"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "Mantén el punto azul en cada función nueva en lugar de quitarlo al verla"; +"Preserve messages database" = "Conservar base de datos de mensajes"; +"Pauses any playing video/audio when settings opens" = "Pausa cualquier reproducción de video o audio cuando se abre la configuración"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "Evita que Instagram restablezca la configuración después de un cierre inesperado\n(¡Bajo tu propia responsabilidad!)"; +"Prevents two banners for the same message when IG is in the foreground" = "Evita dos avisos para el mismo mensaje cuando IG está en primer plano"; +"Remove Instagram's cached images, videos, and temporary files." = "Elimina imágenes, videos y archivos temporales en caché de Instagram."; +"Reset onboarding state" = "Restablecer estado onboarding"; +"Run a silent cache clear on launch when the interval has elapsed." = "Ejecuta una limpieza silenciosa al iniciar cuando ha pasado el intervalo."; +"Show cache size" = "Mostrar tamaño de caché"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "Omite la base de datos de mensajes al limpiar — conserva DMs, borradores y mensajes guardados."; +"Show tweak settings on app launch" = "Muestra la configuración del Tweak cuando se inicia la aplicación"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "Suprime la segunda notificación que IG encola en la app mientras la extensión de notificaciones también la entrega."; +"Weekly" = "Semanal"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "Acciones"; +"Advanced experimental features" = "Funciones experimentales avanzadas"; +"All experimental toggles will be turned off. Instagram will restart." = "Se desactivarán todas las funciones experimentales. Instagram se reiniciará."; +"Direct Notes — Audio reply" = "Notas directas — Respuesta de audio"; +"Direct Notes — Avatar reply" = "Notas directas — Respuesta con avatar"; +"Direct Notes — Friend Map" = "Notas directas — Mapa de amigos"; +"Direct Notes — GIFs & stickers reply" = "Notas directas — Respuesta con GIF y stickers"; +"Direct Notes — Photo reply" = "Notas directas — Respuesta con foto"; +"Disabled after repeated crashes." = "Desactivado tras varios fallos."; +"Enables GIF/sticker replies" = "Activa las respuestas con GIF y stickers"; +"Enables photo replies" = "Activa las respuestas con foto"; +"Enables the audio-note reply type" = "Activa el tipo de respuesta con nota de audio"; +"Enables the avatar reply type" = "Activa el tipo de respuesta con avatar"; +"Experimental flags reset" = "Funciones experimentales restablecidas"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "Activa lo que quieras y pulsa Aplicar para reiniciar. Algunas pueden no funcionar en todas las cuentas o versiones de IG. Se restablecen solas si IG falla al iniciar 3 veces."; +"Forces Prism-gated experiments on" = "Fuerza la activación de los experimentos basados en Prism"; +"Forces the Homecoming home surface / nav on" = "Fuerza la activación del inicio y la navegación de Homecoming"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "Fuerza la aparición de QuickSnap / Instants en el feed, la bandeja, las historias y las notas"; +"Got it" = "Entendido"; +"Heads up" = "Atención"; +"Hidden Instagram experiments" = "Experimentos ocultos de Instagram"; +"Hidden Instagram experiments (in Advanced)" = "Experimentos ocultos de Instagram (en Avanzado)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "Notas y QuickSnap"; +"Prism design system" = "Sistema de diseño Prism"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Muestra el acceso al mapa de amigos en Notas directas"; +"Surfaces" = "Superficies"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "Estos interruptores activan experimentos ocultos de Instagram. Algunas funciones pueden no funcionar en todas las cuentas o versiones de IG. Si IG sigue fallando al iniciar, se restablecen solas tras 3 inicios fallidos."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Activa experimentos ocultos de Instagram. Algunos pueden no funcionar en todas las cuentas o versiones de IG."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "Celda de botón"; +"Change the value on the right" = "Cambia el valor a la derecha"; +"Could not delete: %@" = "No se pudo eliminar: %@"; +"Debug" = "Depuración"; +"Delete an imported override and fall back to the shipped strings" = "Elimina un archivo importado y vuelve a las cadenas integradas"; +"Deleted %@ override. Restart to apply." = "Se eliminó el archivo %@. Reinicia para aplicar."; +"Enable FLEX gesture" = "Habilitar gesto FLEX"; +"Enable file logging" = "Activar registro en archivo"; +"Export strings" = "Exportar archivo .strings"; +"Hold 5 fingers on the screen to open FLEX" = "Mantén pulsados 5 dedos en la pantalla para abrir FLEX"; +"I have %@%@" = "Tengo %@%@"; +"Import a .strings file for a language" = "Importa un archivo .strings para añadir un idioma"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "Importa un archivo .strings para actualizar una traducción. Escoge un idioma, selecciona el archivo y reinicia"; +"Link Cell" = "Celda de enlace"; +"Localization" = "Traducción"; +"Log file is empty" = "El archivo de registro está vacío"; +"Logging" = "Registro"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "Registra la propia actividad de RyukGram en un único archivo compartible en la app y sus extensiones. Desactivado por defecto: actívalo, reproduce el problema y luego compártelo."; +"Menu Cell" = "Celda de menú"; +"Navigation Cell" = "Celda de navegación"; +"No imported localization files to reset." = "No hay archivos de localización importados para restablecer."; +"No overrides" = "Sin anulaciones"; +"Open FLEX on app focus" = "Abrir FLEX al enfocar la aplicación"; +"Open FLEX on app launch" = "Abrir FLEX al iniciar la aplicación"; +"Opens FLEX when the app is focused" = "Abre FLEX cuando la aplicación es enfocada"; +"Opens FLEX when the app launches" = "Abre FLEX cuando la aplicación se inicia"; +"Pick a language and share its .strings file" = "Elige un idioma para compartir su archivo .strings"; +"Pick a language to delete the imported file" = "Elige un idioma para borrar el archivo importado"; +"Pick a language to export" = "Elige un idioma para exportar"; +"Reset localization" = "Restablecer localización"; +"Share log file" = "Compartir archivo de registro"; +"Static Cell" = "Celda estática"; +"Stepper cell" = "Celda de paso"; +"Switch Cell" = "Celda interruptor"; +"Switch Cell (Restart)" = "Cambiar celda (Reinicio)"; +"Tap the switch" = "Toca el interruptor"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "Estas funciones dependen de marcadores ocultos de Instagram y pueden no funcionar en todas las cuentas o versiones."; +"Update localization file" = "Actualizar traducción"; +"Using icon" = "Usar ícono"; +"Using image" = "Usar imagen"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "Configuración de %@"; +"%lu items" = "%lu elementos"; +"Cancelled" = "Cancelado"; +"Carousel" = "Carrusel"; +"Carousel · %lu items" = "Carrusel · %lu elementos"; +"Copied %lu URLs" = "Copiados %lu enlaces"; +"Copied caption" = "Descripción copiada"; +"Copied download URL" = "Enlace de descarga copiado"; +"Copied quality info" = "Información de calidad copiada"; +"Copied video URL" = "URL del vídeo copiada"; +"Copy all URLs" = "Copiar todos los enlaces"; +"Copy caption" = "Copiar descripción"; +"Copy download URL" = "Copiar enlace de descarga"; +"Could not extract any URLs" = "No se logró extraer ningún enlace"; +"Could not extract audio URL" = "No se logró extraer enlace de audio"; +"Could not extract media URL" = "No se logró extraer enlace de medios"; +"Could not extract photo URL" = "No se logró extraer enlace de fotos"; +"Could not extract video URL" = "No se logró extraer enlace de videos"; +"Done" = "Finalizado"; +"Download all stories and share?" = "¿Descargar todas las historias y compartir?"; +"Download all to Photos" = "Descargar todo en Fotos"; +"Download and share all" = "Descargar y compartir todo"; +"Download failed" = "Descarga fallida"; +"Downloaded %lu items" = "Descargando %lu elementos"; +"Downloading audio…" = "Descargando audio…"; +"Failed to save" = "Error al guardar"; +"File" = "Archivo"; +"HD" = "HD"; +"HD download complete" = "Descarga HD completada"; +"HD video" = "Vídeo HD"; +"Mute audio" = "Silenciar sonido"; +"No caption on this post" = "No hay descripción en esta publicación"; +"No carousel children" = "Sin carrusel hijo"; +"No cover image" = "Sin imagen de portada"; +"No media" = "Sin medios"; +"No media to expand" = "Sin medios para ampliar"; +"No media to show" = "Sin medios para mostrar"; +"No media URL" = "Sin enlace de medios"; +"No URLs" = "Sin enlaces"; +"No URLs found" = "Sin enlaces encontrados"; +"No video URL" = "Sin enlace de video"; +"Not a carousel" = "No es un carrusel"; +"Nothing to share" = "Nada para compartir"; +"Opening creator…" = "Abriendo creador..."; +"Photo library access denied" = "Acceso a la Fototeca denegado"; +"Photos access denied" = "Acceso a Fotos denegado"; +"Preparing repost…" = "Preparando repost..."; +"Raw image" = "Imagen sin procesar"; +"Repost" = "Repost"; +"Repost unavailable" = "Repost no disponible"; +"Save failed" = "Error al guardar"; +"Saved %lu items" = "Guardados %lu elementos"; +"Saved to Photos" = "Guardado en Fotos"; +"Saved to RyukGram" = "Guardado en RyukGram"; +"Saving to Photos" = "Guardando en Fotos"; +"Saving…" = "Guardando..."; +"Unmute audio" = "Activar sonido"; +"Video · %@" = "Vídeo · %@"; +"View cover" = "Ver portada"; +"View mentions" = "Ver menciones"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "Libre"; +"Chat font saved" = "Fuente de chat guardada"; +"Reopen this chat to see the new font" = "Vuelve a abrir este chat para ver la nueva fuente"; +"Remove background" = "Quitar fondo"; +"No subject found" = "No se encontró ningún sujeto"; +"No stickers yet" = "Aún no hay stickers"; +"Send drawing" = "Enviar dibujo"; +"Send my drawing" = "Enviar mi dibujo"; +"Paste image / sticker" = "Pegar imagen / sticker"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "Toca cualquier sticker de tu teclado\npara añadirlo a tu dibujo"; + +" %lu votes · avg %.0f%% " = " %lu votos · prom %.0f%% "; +"%@ can't be converted" = "No se puede convertir %@"; +"%@ unsent a message" = "%@ anuló un mensaje"; +"%@ unsent a message from %@" = "%1$@ anuló un mensaje de %2$@"; +"A message was unsent" = "Se anuló el envío de un mensaje"; +"Add" = "Añadir"; +"Add to block list" = "Añadir a la lista de bloqueo"; +"Added to block list" = "Añadido a la lista de bloqueo"; +"Added to exclude list" = "Añadido a la lista de excluidos"; +"Audio not loaded yet. Play the message first and try again." = "Audio aún no cargado. Reproduce el mensaje primero y vuelve a intentar."; +"Audio sent" = "Audio enviado"; +"Audio URL not available" = "URL de audio no disponible"; +"Audio/Video from Files" = "Audio/Video desde Archivos"; +"Blocked" = "Bloqueado"; +"Cancel" = "Cancelar"; +"Clear preserved messages?" = "¿Borrar mensajes guardados?"; +"Converting…" = "Convirtiendo..."; +"Copy link" = "Copiar enlace"; +"Copy text" = "Copiar texto"; +"Could not copy selected video" = "No se pudo copiar el vídeo seleccionado"; +"Could not find media" = "No se logró encontrar medios"; +"Could not find story media" = "No se logró encontrar medios para la historia"; +"Could not get audio data. Try again after refreshing the chat." = "No se encontró datos de audio. Intenta nuevamente luego de actualizar la conversación."; +"Disable read receipts" = "Deshabilitar confirmación de lectura"; +"Disappearing media" = "Medios efímeros"; +"Download audio" = "Descargar audio"; +"Enable read receipts" = "Habilitar confirmación de lectura"; +"Error: %@" = "Error: %@"; +"Exclude chat" = "Excluir chat"; +"Exclude from seen" = "Excluir de vistos"; +"Exclude story seen" = "Excluir de visualización de historia"; +"Excluded" = "Excluído"; +"Extracting audio…" = "Extrayendo audio..."; +"FFmpeg conversion failed" = "Falló la conversión con FFmpeg"; +"File sending not supported" = "Enviar archivos no soportado"; +"Follow" = "Seguir"; +"Following" = "Siguiendo"; +"Format not supported without FFmpegKit" = "Formato no compatible sin FFmpegKit"; +"Inserts a button on disappearing media overlays" = "Añade un botón sobre los medios efímeros"; +"Inserts a speaker button to mute/unmute disappearing media" = "Añade un botón de altavoz para silenciar/activar medios efímeros"; +"Inserts an eye button to mark the current disappearing media as viewed" = "Añade un botón de ojo para marcar los medios efímeros como vistos"; +"Link copied" = "Enlace copiado"; +"Mark as viewed" = "Marcar como visto"; +"Marking as viewed advances to the next stacked media instead of closing" = "Marcar como visto avanza al siguiente contenido apilado en lugar de cerrar"; +"Mark messages as seen" = "Marcar mensajes como vistos"; +"Mark seen" = "Marcar como vista"; +"Marked as viewed" = "Marcado como visto"; +"Marked messages as seen" = "Mensajes marcados como vistos"; +"Mentions" = "Menciones"; +"Message from %@ was unsent" = "Se anuló un mensaje de %@"; +"Message sender not found" = "No se encontró remitente del mensaje"; +"Messages settings" = "Configuración de Mensajes"; +"Mute story audio" = "Silenciar sonido de historia"; +"no audio track could be read" = "no se pudo leer ninguna pista de audio"; +"No audio URL found. Try again after refreshing the chat." = "No se encontró enlace de audio. Intenta nuevamente luego de actualizar la conversación."; +"No mentions in this story" = "Sin menciones en esta historia"; +"No thread key" = "Sin llave"; +"No video selected" = "Ningún vídeo seleccionado"; +"No voice send method found" = "No se encontró método para envío de voz"; +"Note has no downloadable content" = "La nota no tiene contenido descargable"; +"Note text copied" = "Texto de la nota copiado"; +"Open GitHub" = "Abrir GitHub"; +"Pick audio or video" = "Elegir audio o vídeo"; +"Read receipts disabled" = "Confirmación de lectura DESACTIVADA"; +"Read receipts enabled" = "Confirmación de lectura ACTIVADA"; +"Read receipts will be blocked for this chat." = "Confirmación de lectura estará bloqueado para esta conversación."; +"Read receipts will no longer be blocked for this chat." = "Confirmación de lectura ya no estará bloqueado para este chat."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "Actualizar los mensajes borrará %lu mensaje guardado. Esto no se puede deshacer."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "Actualizar los mensajes borrará %lu mensajes guardados. Esto no se puede deshacer."; +"Remove" = "Eliminar"; +"Remove from block list" = "Eliminar de la lista de bloqueo"; +"Remove from exclude list" = "Quitar de la lista de excluidos"; +"Removed" = "Eliminado"; +"Removed from list" = "Eliminado de la lista"; +"Save GIF" = "Guardar GIF"; +"Selection too short (min 0.5s)" = "Selección demasiado corta (min 0.5s)"; +"Send anyway" = "Enviar de todos modos"; +"Send Audio" = "Enviar audio"; +"Send failed: %@" = "Envío fallido: %@"; +"Send File" = "Enviar archivo"; +"Send service not found" = "Servicio de envío no encontrado"; +"Show audio toggle" = "Mostrar interruptor de audio"; +"Show mark-as-viewed button" = "Mostrar botón de marcar como visto"; +"Story read receipts disabled" = "Aviso de visualización de historia DESACTIVADO"; +"Story read receipts enabled" = "Aviso de visualización de historia ACTIVADO"; +"This chat will resume normal read-receipt behavior." = "Este chat volverá a funcionar con el sistema habitual de confirmaciones de lectura."; +"This file" = "Este archivo"; +"Total: %@" = "Total: %@"; +"Un-exclude chat" = "No excluir conversación"; +"Un-exclude story seen" = "No excluir de visualización de la historia"; +"Un-excluded" = "No excluído"; +"Unblocked" = "Desbloqueado"; +"Unlimited replay enabled" = "Reproducción ilimitada ACTIVADA"; +"Unmute story audio" = "Activar sonido de la historia"; +"Unsent" = "Mensaje eliminado"; +"Upload Audio" = "Subir Audio"; +"VC not found" = "VC no encontrado"; +"Video from Library" = "Video desde Fototeca"; +"Visual messages will expire" = "Mensajes visuales expirarán"; +"Visual messages: expiring" = "Mensajes visuales: Expirando"; +"Visual messages: unlimited replay" = "Mensajes visuales: Reproducción ilimitada"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "Añadir fondo"; +"Add Chat Background" = "Añadir fondo de chat"; +"Adds your own image backgrounds to Instagram chats" = "Añade tus propias imágenes de fondo a los chats de Instagram"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "Tras activarlo, abre cualquier chat, toca el botón de tema y luego el icono de foto en la parte superior derecha."; +"Blur" = "Desenfoque"; +"Browse chats" = "Explorar chats"; +"Browse chats (%ld)" = "Explorar chats (%ld)"; +"Change Background" = "Cambiar fondo"; +"Change default" = "Cambiar predeterminado"; +"Chat Backgrounds" = "Fondos de chat"; +"Choose an image used when no chat override exists" = "Elige una imagen para usar cuando no haya una específica del chat"; +"Clear default" = "Borrar predeterminado"; +"Couldn't import image" = "No se pudo importar la imagen"; +"Adjust settings" = "Ajustes"; +"Choose Media" = "Elegir multimedia"; +"Converting GIF" = "Convirtiendo GIF"; +"Couldn't import video" = "No se pudo importar el vídeo"; +"Crop & resize" = "Recortar y redimensionar"; +"Crop & trim" = "Recortar y acortar"; +"Custom Chat Background" = "Fondo de chat personalizado"; +"Default background" = "Fondo predeterminado"; +"Dim in dark mode" = "Atenuar en modo oscuro"; +"Enable custom backgrounds" = "Activar fondos personalizados"; +"Enter a username, chat name, or thread ID." = "Introduce un nombre de usuario, nombre de chat o ID de hilo."; +"Group" = "Grupo"; +"Image Settings" = "Ajustes de imagen"; +"Auto bubble color" = "Color de burbuja automático"; +"Bubble color" = "Color de burbuja"; +"Me" = "Yo"; +"Both" = "Ambos"; +"Gradient" = "Degradado"; +"Direction" = "Dirección"; +"Vertical" = "Vertical"; +"Horizontal" = "Horizontal"; +"Diagonal" = "Diagonal"; +"Text color" = "Color del texto"; +"Automatic (contrast)" = "Automático (contraste)"; +"Choose color…" = "Elegir color…"; +"Tap to apply · hold to edit" = "Toca para aplicar · mantén para editar"; +"Library" = "Biblioteca"; +"Library, default, and per-chat overrides will be deleted." = "Se eliminarán la biblioteca, el predeterminado y los fondos específicos de cada chat."; +"No Custom" = "Sin personalizado"; +"Opacity" = "Opacidad"; +"Photo Library" = "Fototeca"; +"Pick default" = "Elegir predeterminado"; +"Pinch + drag to position" = "Pellizca y arrastra para posicionar"; +"Quit and reopen Instagram for the change to take effect." = "Cierra y vuelve a abrir Instagram para que el cambio surta efecto."; +"Recently set" = "Configurado recientemente"; +"Remove the global fallback background" = "Eliminar el fondo de reserva global"; +"Replace the default background image" = "Reemplazar la imagen de fondo predeterminada"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "Restablecer fija la opacidad en 1.0, el desenfoque en 0 y la atenuación en 0."; +"RyukGram Gallery" = "Galería de RyukGram"; +"Search username, name, or thread ID" = "Buscar nombre de usuario, nombre o ID de hilo"; +"Set as default" = "Establecer como predeterminado"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "Toca el signo más para añadir. Toca un fondo para editarlo, establecerlo como predeterminado o eliminarlo."; +"This Chat Background" = "Fondo de este chat"; +"Thread ID" = "ID de hilo"; +"Used only when a chat does not have its own custom background." = "Se usa solo cuando un chat no tiene su propio fondo personalizado."; +"View and manage chats with custom backgrounds" = "Ver y gestionar chats con fondos personalizados"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "Añadir ubicación"; +"Add preset" = "Añadir ajuste preestablecido"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "Afecta todo lo de arriba. Cuando está desactivado, el tema y las anulaciones por superficie de RyukGram solo se aplican mientras iOS esté en modo oscuro — dejando el modo claro intacto."; +"Apply & restart" = "Aplicar y reiniciar"; +"Background" = "Fondo"; +"Behavior" = "Comportamiento"; +"Change location" = "Cambiar ubicación"; +"Clipboard is not an Instagram URL" = "El portapapeles no contiene un enlace de Instagram"; +"Comments hidden" = "Comentarios ocultos"; +"Comments shown" = "Comentarios mostrados"; +"Copied text to clipboard" = "Texto copiado al portapapeles"; +"Copy" = "Copiar"; +"Copy bio" = "Copiar presentación"; +"Copy name" = "Copiar nombre"; +"Could not find cover image" = "No se encontró imagen de portada"; +"Current: %@" = "Actual: %@"; +"Dark" = "Oscuro"; +"Disable" = "Desactivado"; +"Download GIF" = "Descargar GIF"; +"Dropped pin" = "Marcador"; +"Emoji" = "Emoji"; +"Enable" = "Activado"; +"Enable Location Services for Instagram in Settings to use your current location." = "Activa los servicios de ubicación para Instagram en Ajustes para usar tu ubicación actual."; +"Enter emoji" = "Introduce un emoji"; +"Fake location" = "Ubicación falsa"; +"Force theme" = "Forzar tema"; +"Keyboard theme" = "Tema del teclado"; +"Light" = "Claro"; +"Location access denied" = "Acceso a ubicación denegado"; +"Location Services off" = "Servicios de ubicación desactivados"; +"Name" = "Nombre"; +"Nothing to copy" = "Nada para copiar"; +"Off, Light, Dark, or OLED" = "Desactivado, Claro, Oscuro u OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "Tema OLED en chats"; +"Open Settings" = "Abrir Ajustes"; +"Optional per-surface overrides. Each one is independent of the theme above." = "Anulaciones opcionales por superficie. Cada una es independiente del tema de arriba."; +"Override iOS appearance regardless of system mode" = "Anula la apariencia de iOS sin importar el modo del sistema"; +"Override the keyboard appearance when typing" = "Cambia la apariencia del teclado al escribir"; +"Pick location" = "Elegir ubicación"; +"Pure black DM thread + incoming bubbles" = "Fondo negro puro en mensajes directos y burbujas entrantes"; +"Save" = "Guardar"; +"Save preset" = "Guardar ajuste preestablecido"; +"Saved locations" = "Ubicaciones guardadas"; +"Select color" = "Escoger color"; +"Set location" = "Establecer ubicación"; +"The theme RyukGram applies to Instagram." = "El tema que RyukGram aplica a Instagram."; +"Theme" = "Tema"; +"Turn Location Services on in Settings → Privacy to use your current location." = "Activa los servicios de ubicación en Ajustes → Privacidad para usar tu ubicación actual."; +"Type an emoji to use as the note bubble icon." = "Escribe un emoji para usarlo como icono de la burbuja de nota."; +"Profile picture" = "Foto de perfil"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "¿%@ %lu cuentas? Se procesarán las primeras %ld para evitar límites de la API."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "¿%@ %lu cuentas? Se ejecuta en orden con una pausa breve entre cada una."; +"%@ followers · %@ following" = "%@ seguidores · %@ siguiendo"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "hace %d d"; +"%dh ago" = "hace %d h"; +"%dm ago" = "hace %d min"; +"%lu accounts followed" = "%lu cuentas seguidas"; +"%lu accounts unfollowed" = "%lu cuentas sin seguir"; +"%lu followers · %lu following" = "%lu seguidores · %lu seguidos"; +"%lu followers removed" = "%lu seguidores eliminados"; +"%lu of %lu" = "%lu de %lu"; +"%lu of %lu checks on" = "%lu de %lu comprobaciones activadas"; +"%lu saved · comparing against %@" = "%lu guardados · comparando con %@"; +"(empty)" = "(vacío)"; +"(no analyzer data)" = "(sin datos del analizador)"; +"a saved snapshot" = "una captura guardada"; +"About Profile Analyzer" = "Acerca del analizador de perfil"; +"All preferences (%lu)" = "Todas las preferencias (%lu)"; +"Analysis complete" = "Análisis completado"; +"Analysis failed" = "Error en el análisis"; +"Another analysis is already running" = "Ya hay otro análisis en curso"; +"Available after your next scan" = "Disponible tras tu próximo análisis"; +"Batch follow" = "Seguir en lote"; +"Batch follow finished" = "Seguir en lote finalizado"; +"Batch remove followers" = "Eliminar seguidores en lote"; +"Batch remove followers finished" = "Eliminar seguidores en lote finalizado"; +"Batch unfollow" = "Dejar de seguir en lote"; +"Batch unfollow finished" = "Dejar de seguir en lote finalizado"; +"Categories" = "Categorías"; +"Checks" = "Comprobaciones"; +"Clear visited profiles" = "Borrar perfiles visitados"; +"Compare next scan against" = "Comparar el próximo escaneo con"; +"Comparing against %@" = "Comparando con %@"; +"Continue" = "Continuar"; +"Couldn't fetch profile information" = "No se pudo obtener la información del perfil"; +"Delete %lu snapshots? This can't be undone." = "¿Eliminar %lu capturas? Esto no se puede deshacer."; +"Delete (%lu)" = "Eliminar (%lu)"; +"Delete snapshots" = "Eliminar capturas"; +"Delete this snapshot? This can't be undone." = "¿Eliminar esta captura? Esto no se puede deshacer."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "Cada escaneo guarda una copia completa de tus seguidores y seguidos para poder compararlos más tarde. Todo permanece en este dispositivo."; +"Export" = "Exportar"; +"Fetching followers (%lu/%ld)…" = "Obteniendo seguidores (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "Obteniendo seguidos (%lu/%ld)…"; +"Fetching profile info…" = "Obteniendo información del perfil…"; +"File is not a valid RyukGram backup." = "El archivo no es una exportación válida de RyukGram."; +"Filter" = "Filtrar"; +"Filter · %lu" = "Filtrar · %lu"; +"First scan: %@" = "Primer análisis: %@"; +"First scan: we collect your followers and following lists and save them locally." = "Primer análisis: recopilamos tus listas de seguidores y seguidos y las guardamos localmente."; +"Follow back" = "Seguir de vuelta"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "Número de seguidores supera %ld — análisis desactivado para evitar límites de la API."; +"Followers" = "Seguidores"; +"Following… %lu / %lu" = "Siguiendo… %lu / %lu"; +"Gained since last scan" = "Ganados desde el último análisis"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "Aviso: esta función utiliza la API privada de Instagram. Ejecutarla de forma consecutiva o justo tras mucha actividad de seguir/dejar de seguir puede provocar un límite temporal. Úsala con moderación y bajo tu propio riesgo."; +"Import complete" = "Importación completada"; +"Include" = "Incluir"; +"Keep newest" = "Mantener las más recientes"; +"Keep newest snapshots" = "Mantener las capturas más recientes"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "Las cuentas grandes están bloqueadas: el análisis se desactiva por encima de 13.000 seguidores para evitar que Instagram aplique un límite a toda la app."; +"Last scan: %@" = "Último análisis: %@"; +"Logs every profile you open. Stays on-device." = "Registra cada perfil que abres. Se queda en el dispositivo."; +"Lost followers" = "Seguidores perdidos"; +"Most visited" = "Más visitado"; +"Mutual followers" = "Seguidores mutuos"; +"Name: %@ → %@" = "Nombre: %@ → %@"; +"New followers" = "Nuevos seguidores"; +"NEW" = "NUEVO"; +"New first" = "Nuevos primero"; +"New only" = "Solo nuevos"; +"No active Instagram session found" = "No se encontró una sesión de Instagram activa"; +"No results" = "Sin resultados"; +"No scan yet" = "Aún sin análisis"; +"Not following you back" = "No te siguen de vuelta"; +"Not verified only" = "Solo no verificadas"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "No se sube nada — todo queda en este dispositivo y puede borrarse desde el icono de la papelera."; +"Nothing was applied." = "No se aplicó nada."; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "Las capturas más antiguas que superen el límite se eliminan automáticamente"; +"Older snapshots beyond this limit are deleted on the next scan." = "Las capturas más antiguas que superen este límite se eliminan en el próximo escaneo."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "Elige qué eliminar. Capturas borra las diferencias de escaneo y cada captura registrada; perfiles visitados borra el historial de visitas."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "Elige qué categorías calcula cada análisis. Una comprobación desactivada aparece atenuada y se omite: no se calcula ni se muestra."; +"Posts" = "Publicaciones"; +"Preferences" = "Preferencias"; +"Previous scan" = "Escaneo anterior"; +"Private account" = "Cuenta privada"; +"Private only" = "Solo privadas"; +"Profile Analyzer" = "Analizador de perfil"; +"Profile Analyzer data" = "Datos del analizador de perfil"; +"Profile picture changed" = "Foto de perfil cambiada"; +"Profile updates" = "Cambios de perfil"; +"Profiles you've opened recently" = "Perfiles que abriste recientemente"; +"Raw" = "Bruto"; +"Raw JSON" = "JSON bruto"; +"Record snapshots" = "Registrar capturas"; +"Remove @%@ as a follower?" = "¿Eliminar a @%@ como seguidor?"; +"Remove follower" = "Eliminar seguidor"; +"Removing… %lu / %lu" = "Eliminando… %lu / %lu"; +"Recording" = "Grabación"; +"Request failed" = "Solicitud fallida"; +"Reset analyzer data" = "Restablecer datos del analizador"; +"Reset complete" = "Restablecimiento completado"; +"Reset everything" = "Restablecer todo"; +"Reset selected data?" = "¿Restablecer los datos seleccionados?"; +"Reset snapshots" = "Restablecer capturas"; +"Rolling — always your last run" = "Continuo — siempre tu última ejecución"; +"Run analysis" = "Ejecutar análisis"; +"Run your first analysis" = "Ejecuta tu primer análisis"; +"Save a dated entry on every scan" = "Guardar una entrada con fecha en cada escaneo"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "A partir del segundo análisis: cada análisis se compara con el anterior, mostrando seguidores nuevos/perdidos, tus propios movimientos de seguir/dejar de seguir y cambios de perfil."; +"Settings" = "Ajustes"; +"Since last scan" = "Desde el último análisis"; +"Snapshot" = "Captura"; +"Snapshot saved" = "Captura guardada"; +"Snapshots" = "Capturas"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "Las capturas te permiten archivar cada escaneo y elegir con cuál se comparan los nuevos escaneos. Seguir visitas registra cada perfil que abres para que puedas revisarlos aquí."; +"Sort" = "Ordenar"; +"Starting…" = "Iniciando…"; +"They follow you, you don't follow back" = "Te siguen, no los sigues de vuelta"; +"This can't be undone." = "No se puede deshacer."; +"Ticked data will be cleared. Tap a row to see what's stored." = "Los datos seleccionados se borrarán. Toca cualquier fila para ver qué hay guardado."; +"Today" = "Hoy"; +"Too many followers" = "Demasiados seguidores"; +"Too many followers to analyze" = "Demasiados seguidores para analizar"; +"Track visited profiles" = "Rastrear perfiles visitados"; +"Tracking" = "Seguimiento"; +"Tracking off — enable below to log visits" = "Seguimiento desactivado — actívalo abajo para registrar visitas"; +"Unfollow" = "Dejar de seguir"; +"Unfollow %lu" = "Dejar de seguir %lu"; +"Unfollow @%@?" = "¿Dejar de seguir a @%@?"; +"Unfollowed you since last scan" = "Te dejaron de seguir desde el último análisis"; +"Unfollowing… %lu / %lu" = "Dejando de seguir… %lu / %lu"; +"Unlimited" = "Ilimitado"; +"Username A → Z" = "Usuario A → Z"; +"Username Z → A" = "Usuario Z → A"; +"Username, name or picture changes" = "Cambios de usuario, nombre o foto"; +"Username: @%@ → @%@" = "Usuario: @%@ → @%@"; +"Using %@ across %lu snapshots." = "Usando %@ en %lu capturas."; +"Verified only" = "Solo verificadas"; +"Visited" = "Visitado"; +"Visited profiles" = "Perfiles visitados"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "No se ejecuta cuando los seguidores superan %ld, para evitar límites de Instagram."; +"You both follow each other" = "Os seguís mutuamente"; +"You don't follow back" = "No los sigues de vuelta"; +"You follow them, they don't follow back" = "Los sigues, no te siguen de vuelta"; +"You started following" = "Empezaste a seguir"; +"Your current scan was archived" = "Tu análisis actual se archivó"; +"You unfollowed" = "Dejaste de seguir"; +"your previous scan" = "tu escaneo anterior"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "“Escaneo anterior” siempre mide contra tu última ejecución. Elige una captura guardada para comparar con un punto fijo en el tiempo en su lugar."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ Esto se está volviendo grande — reduce el límite o elimina capturas antiguas para liberar espacio."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "Formato absoluto"; +"Add chat" = "Añadir conversación"; +"Add custom domain" = "Añadir dominio personalizado"; +"Add to list?" = "¿Añadir a la lista?"; +"Add user" = "Añadir usuario"; +"Apply" = "Aplicar"; +"Apply to" = "Aplicar a"; +"Chats" = "Conversaciones"; +"Colored" = "Coloreado"; +"Could not read file." = "No se logró leer el archivo."; +"Could not resolve user ID" = "No se pudo resolver el ID del usuario"; +"Current location" = "Ubicación actual"; +"Custom" = "Personalizada"; +"Delete" = "Eliminar"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "Cada superficie de IG usa un formateador NSDate distinto. Activa las que quieras que usen este formato."; +"Enable fake location" = "Habilitar ubicación falsa"; +"Excluded chats" = "Conversaciones excluídas"; +"Excluded users" = "Usuarios excluídos"; +"Follow default" = "Seguir predeterminada"; +"Force OFF (allow unsends)" = "Forzar DESACTIVADO (Permite anular envío)"; +"Force ON (preserve unsends)" = "Forzar ACTIVADO (Mantiene eliminados)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "Incluir segundos cuando el formato ya muestra la hora. El formato personalizado controla los segundos por sí mismo con {ss}."; +"Add custom format…" = "Añadir formato personalizado…"; +"Edit" = "Editar"; +"Template" = "Plantilla"; +"Placeholders" = "Marcadores"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "Los marcadores se reemplazan por partes de la fecha; el resto se muestra tal cual."; +"Tap a placeholder to insert it at the cursor." = "Toca un marcador para insertarlo en el cursor."; +"Included chats" = "Conversaciones incluidas"; +"Included users" = "Usuarios incluidos"; +"KD: default" = "ME: Predeterminado"; +"KD: ON" = "KD: ACTIVADO"; +"Keep-deleted" = "Mantener eliminados"; +"Keep-deleted override" = "Anular mantener eliminados"; +"Name (A–Z)" = "Nombre (A–Z)"; +"No DM thread found with @%@" = "No se encontró conversación con @%@"; +"Presets" = "Preajustes"; +"Recently added" = "Añadidos recientemente"; +"Relative time" = "Tiempo relativo"; +"Relative within" = "Relativo dentro de"; +"Remove from list" = "Eliminar de la lista"; +"Reset" = "Restablecer"; +"Search" = "Buscar"; +"Search address or place" = "Buscar dirección o lugar"; +"Search by name or username" = "Buscar por nombre o nombre de usuario"; +"Search by username or name" = "Buscar por nombre de usuario o nombre"; +"Select location on map" = "Seleccionar ubicación en el mapa"; +"Set current location" = "Establecer ubicación actual"; +"Set keep-deleted override" = "Establecer anulación de mantener eliminados"; +"Show map button" = "Botón de mostrar mapa"; +"Show relative time for dates younger than this many days. 0 disables it." = "Muestra el tiempo relativo para fechas más recientes que este número de días. 0 lo desactiva."; +"Show seconds" = "Mostrar segundos"; +"Sort by" = "Ordenar por"; +"Thread" = "Hilo"; +"Time" = "Hora"; +"Use this location" = "Usar esta ubicación"; +"User '%@' not found" = "Usuario '%@' no encontrado"; +"Username (A–Z)" = "Usuario (A–Z)"; +"Within %ld days" = "Dentro de %ld días"; +"Within 1 day" = "Dentro de 1 día"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "No se encontró contraseña"; +"No text field found" = "No se encontró campo de texto"; +"Refresh Reels?" = "¿Actualizar Reels?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu cuentas"; +"%lu loaded" = "%lu cargados"; +"%lu loaded · all loaded" = "%lu cargados · todos cargados"; +"Doesn't follow you" = "No te sigue"; +"Everyone is already loaded." = "Ya están todos cargados."; +"Filter & sort" = "Filtrar y ordenar"; +"Follows me" = "Me sigue"; +"Follows me first" = "Los que me siguen primero"; +"Follows you" = "Te sigue"; +"Hides everyone who doesn't match all picked filters." = "Oculta a todos los que no coinciden con todos los filtros seleccionados."; +"Jump to bottom" = "Ir al final"; +"Jump to top" = "Ir al principio"; +"List" = "Lista"; +"List fully loaded" = "Lista cargada por completo"; +"Load more" = "Cargar más"; +"Loaded more" = "Se cargaron más"; +"Mutuals" = "Mutuos"; +"Mutuals first" = "Mutuos primero"; +"Note copied" = "Nota copiada"; +"People I follow" = "Personas que sigo"; +"People I follow first" = "Personas que sigo primero"; +"Reverse order" = "Orden inverso"; +"Show only" = "Mostrar solo"; +"Verified" = "Verificado"; +"Verified first" = "Verificados primero"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(sin definir)"; +"720p • progressive • fastest" = "720p • Progresivo • Más rápido"; +"Add language" = "Añadir idioma"; +"Album name" = "Nombre del álbum"; +"Are you sure?" = "¿Estás seguro?"; +"Bundle" = "Paquete"; +"Copy audio URL" = "Copiar enlace de audio"; +"Copy quality info" = "Copiar información sobre la calidad"; +"Copy video URL" = "Copiar enlace de video"; +"Could not access reel media" = "No se logró acceder a los medios del reel"; +"Could not access reel photo" = "No se logró acceder a la foto del reel"; +"Could not write file." = "No se pudo escribir el archivo."; +"Download all and share?" = "¿Descargar todo y compartir?"; +"Download Quality" = "Calidad de descarga"; +"Downloading %d%%" = "Descargando %d%%"; +"e.g. 1000000" = "p. ej. 1000000"; +"Localization file not found" = "Archivo de traducción no encontrado"; +"Enter the language code (e.g. fr, de, ja)" = "Introduce el código del idioma (p. ej. fr, de, ja)"; +"Error" = "Error"; +"Extras" = "Extras"; +"FFmpegKit Debug" = "Depuración de FFmpegKit"; +"File is empty or not a valid .strings file." = "El archivo está vacío o no es un archivo .strings válido."; +"KD: OFF" = "ME: DESACTIVADO"; +"Keep-deleted: OFF" = " • Mantener eliminados: DESACTIVADO"; +"Keep-deleted: ON" = " • Mantener eliminados: ACTIVADO"; +"Later" = "Mas tarde"; +"Loading" = "Cargando"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "Nombre del álbum de Fotos donde RyukGram guarda. Déjalo vacío para restaurar el predeterminado."; +"Next" = "Siguiente"; +"No results found." = "No se encontraron resultados."; +"No!" = "¡No!"; +"Pick a language to update, or add a new one" = "Elige un idioma para actualizar o añade uno nuevo"; +"Preset" = "Preajuste"; +"Restart" = "Reiniciar"; +"Restart now" = "Reiniciar ahora"; +"Restart required" = "Reinicio requerido"; +"Saved preset \"%@\"" = "Preset \"%@\" guardado"; +"selected" = "seleccionados"; +"Shared icon, or override per button" = "Icono compartido, o anular por botón"; +"Speed" = "Velocidad"; +"Unset" = "Sin establecer"; +"Update localization" = "Actualizar traducción"; +"Updated %@ (%ld keys). Restart to apply." = "Actualizado %@ (%ld claves). Reinicia para aplicar."; +"Use default" = "Usar predeterminado"; +"Username or PK" = "Nombre de usuario o PK"; +"Username or raw user PK" = "Nombre de usuario o PK de usuario sin procesar"; +"Yes" = "Si"; +"You must restart the app to apply this change" = "Debes reiniciar la aplicación para aplicar este cambio"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "¿Te gusta RyukGram?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "Es gratis y nada sale de tu dispositivo. Si te gusta usarlo, un café lo mantiene en marcha."; +"Donate" = "Donar"; +"I already did" = "Ya lo hice"; +"Maybe later" = "Quizá más tarde"; +"This means a lot" = "Significa mucho"; +"Appreciate the support" = "Gracias por el apoyo"; +"No worries, enjoy the tweak" = "Sin problema, disfruta del tweak"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, Donar"; +"About" = "Acerca de"; +"Arabic translation" = "Traducción al árabe"; +"Chinese (Traditional and Simplified) translation" = "Traducción al chino (tradicional y simplificado)"; +"Credits" = "Créditos"; +"Developers" = "Desarrolladores"; +"installed" = "instalado"; +"Korean translation" = "Traducción al coreano"; +"Portuguese (Brazil) translation" = "Traducción al portugués (Brasil)"; +"Turkish translation" = "Traducción al turco"; +"Vietnamese translation" = "Traducción al vietnamita"; +"French translation" = "Traducción al francés"; +"Japanese translation" = "Traducción al japonés"; +"Code contributions" = "Contribuciones de código"; +"Following feed mode (from InstaSane)" = "Modo de feed de Siguiendo (de InstaSane)"; +"latest" = "última"; +"Links" = "Enlaces"; +"No releases" = "Sin versiones"; +"SCInsta developer" = "Desarrollador de SCInsta"; +"Release notes" = "Notas de la versión"; +"Releases" = "Versiones"; +"Report an issue" = "Informar de un problema"; +"Russian translation" = "Traducción al ruso"; +"RyukGram developer" = "Desarrollador de RyukGram"; +"Join Telegram channel" = "Unirse al canal de Telegram"; +"Source code" = "Código fuente"; +"View on GitHub" = "Ver en GitHub"; +"Spanish translation" = "Traducción al español"; +"Inspirations" = "Inspiraciones"; +"Inspirations, contributors, translators" = "Inspiraciones, colaboradores, traductores"; +"Code and research" = "Código e investigación"; +"Translators" = "Traductores"; +"BHInstagram developer" = "Desarrollador de BHInstagram"; +"OLED theme inspiration" = "Inspiración del tema OLED"; +"Donate to Ryuk" = "Donar a Ryuk"; +"Support RyukGram development" = "Apoyar el desarrollo de RyukGram"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram es un proyecto independiente inspirado en SCInsta."; +"Browse changes from previous releases" = "Explorar cambios de versiones anteriores"; +"Code inspiration" = "Inspiración de código"; +"zxPluginsInject sideload compatibility shim" = "Capa de compatibilidad de sideload zxPluginsInject"; +"Telegram channel" = "Canal de Telegram"; +"Testing and feature suggestions" = "Pruebas y sugerencias de funciones"; +"Version" = "Versión"; +"Version, credits, and links" = "Versión, créditos y enlaces"; +"What's new in RyukGram" = "Novedades de RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • progresivo • silencioso"; +"Audio only" = "Solo audio"; +"Audio ready" = "Audio listo"; +"Audio track %ld" = "Pista de audio %ld"; +"Download video at the highest available quality" = "Descargar video en la mejor calidad disponible"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "Descarga el video en HD mediante transmisión DASH y lo codifica en H.264. Requiere FFmpegKit."; +"Encoding in software" = "Codificando por software"; +"Encoding speed" = "Velocidad de codificación"; +"Enhanced downloads" = "Mejorar descargas"; +"Faster = lower quality" = "Más rápido = Menor calidad"; +"FFmpeg not available" = "FFmpeg no disponible"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit no está disponible. Instala el archivo IPA descargado o la variante .deb de _ffmpeg para activarlo."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "El codificador por hardware no está disponible en segundo plano — se mantuvieron tus ajustes de calidad."; +"No audio track found" = "No se encontró pista de audio"; +"Photo" = "Foto"; +"Photo quality" = "Calidad de imagen"; +"Size unknown" = "Tamaño desconocido"; +"calculating size…" = "calculando tamaño…"; +"silent" = "silencioso"; +"Use highest resolution available" = "Usar la resolución mas alta disponible"; +"Video encoder locked up — restart Instagram to encode again" = "El codificador de vídeo se bloqueó — reinicia Instagram para volver a codificar"; +"Video only" = "Solo vídeo"; +"Video-only & every audio track" = "Solo vídeo y todas las pistas de audio"; +"Video quality" = "Calidad de video"; +"Which quality to download" = "En qué calidad descargar"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' no está en esta compilación de FFmpegKit — usando h264 por hardware en su lugar."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-bit 4:2:0. ~2x más lento, degradados más suaves."; +"10-bit colour. Slower, smoother gradients. Software only." = "Color de 10-bit. Más lento, degradados más suaves. Solo software."; +"1080p30 baseline." = "Base 1080p30."; +"4K30 baseline." = "Base 4K30."; +"8-bit 4:2:0. Universal default." = "8-bit 4:2:0. Predeterminado universal."; +"8-bit 4:2:2 chroma. Niche playback." = "Croma 8-bit 4:2:2. Reproducción especializada."; +"8-bit 4:2:2 chroma. Software only." = "Croma 8-bit 4:2:2. Solo software."; +"8-bit 4:4:4 chroma. Software only." = "Croma 8-bit 4:4:4. Solo software."; +"8-bit 4:4:4 full chroma. Niche playback." = "Croma completo 8-bit 4:4:4. Reproducción especializada."; +"8-bit. Best for modern devices." = "8-bit. Mejor para dispositivos modernos."; +"Advanced encoding" = "Codificación avanzada"; +"Advanced encoding settings" = "Ajustes de codificación avanzada"; +"Archival quality." = "Calidad de archivo."; +"Audio bitrate" = "Tasa de bits de audio"; +"Audio channels" = "Canales de audio"; +"Audio codec" = "Códec de audio"; +"Audio conversion failed" = "Falló la conversión de audio"; +"Audio sample rate" = "Frecuencia de muestreo de audio"; +"Balanced. libx264 default." = "Equilibrado. Predeterminado de libx264."; +"Best practical quality per bit." = "Mejor calidad práctica por bit."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "La tasa de bits, los canales y la frecuencia de muestreo solo se aplican cuando el códec es AAC (recodificación)."; +"Cartoons / anime." = "Dibujos animados / anime."; +"Cinematic. Smaller files." = "Cinematográfico. Archivos más pequeños."; +"Codec" = "Códec"; +"Container" = "Contenedor"; +"Copy (passthrough)" = "Copiar (passthrough)"; +"CRF quality" = "Calidad CRF"; +"Downloading video…" = "Descargando vídeo…"; +"Easier to play back on weak devices." = "Más fácil de reproducir en dispositivos débiles."; +"Encoder unavailable" = "Codificador no disponible"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "Ejemplos: 8M, 12M, 25M, 4500k. Déjalo vacío para automático."; +"Failed to download video" = "Error al descargar el vídeo"; +"Fast, fixed-bitrate, GPU-accelerated." = "Rápido, tasa de bits fija, acelerado por GPU."; +"Fastest, worst compression." = "El más rápido, peor compresión."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart mueve el índice MP4 al principio para que la reproducción comience antes de que el archivo se almacene en búfer por completo. Eliminar metadatos quita las etiquetas de origen (fecha de creación, handler, codificador) del archivo."; +"FFmpeg documentation" = "Documentación de FFmpeg"; +"FFmpeg mux failed" = "Falló el mux de FFmpeg"; +"Frame rate" = "Velocidad de fotogramas"; +"H.264 level" = "Nivel H.264"; +"H.264 profile" = "Perfil H.264"; +"Hardware (VideoToolbox)" = "Hardware (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "Hardware (VideoToolbox) solo admite yuv420p — '%@' se ignoró. Cambia a Software (libx264) para usarlo."; +"Keep original audio. Fast." = "Mantener el audio original. Rápido."; +"Keep the source frame rate." = "Mantener la velocidad de fotogramas de origen."; +"Let the encoder pick." = "Dejar que el codificador elija."; +"Live-action video." = "Vídeo de acción real."; +"Lossless. Huge files." = "Sin pérdidas. Archivos enormes."; +"Low-latency streaming." = "Streaming de baja latencia."; +"Manual ffmpeg controls in place of Encoding speed." = "Controles manuales de ffmpeg en lugar de la velocidad de codificación."; +"Marginal gain, huge time cost." = "Ganancia marginal, enorme coste de tiempo."; +"Max resolution" = "Resolución máxima"; +"Mono" = "Mono"; +"No tuning. Default." = "Sin ajuste. Predeterminado."; +"None" = "Ninguno"; +"Pixel format" = "Formato de píxel"; +"Pixel format ignored" = "Formato de píxel ignorado"; +"Preserve film grain." = "Conservar el grano de película."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "Preset y Tune se aplican solo a Software (libx264). Empareja el perfil con el formato de píxel: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Las discordancias se convierten a la baja en silencio. El hardware siempre usa yuv420p."; +"Re-encode. Use when source is opus or unsupported." = "Recodificar. Úsalo cuando el origen sea opus o no compatible."; +"Reset advanced encoding" = "Restablecer codificación avanzada"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "Establecer una tasa de bits de vídeo cambia Software a tasa de bits fija e ignora CRF. Déjalo vacío para CRF. El hardware usa la tasa de bits."; +"Slideshow-like content." = "Contenido tipo presentación."; +"Slower, better compression per bit." = "Más lento, mejor compresión por bit."; +"Smaller, visible artefacts." = "Más pequeño, artefactos visibles."; +"Software (libx264)" = "Software (libx264)"; +"Standard 8-bit." = "8-bit estándar."; +"Stereo" = "Estéreo"; +"Streaming default." = "Predeterminado de streaming."; +"Strip metadata" = "Eliminar metadatos"; +"Top of AAC." = "Lo mejor de AAC."; +"Tune" = "Ajustar"; +"Unknown error" = "Error desconocido"; +"Very high quality." = "Calidad muy alta."; +"Video bitrate" = "Tasa de bits de vídeo"; +"Video codec" = "Códec de vídeo"; +"Visually lossless. RyukGram default." = "Visualmente sin pérdidas. Predeterminado de RyukGram."; +"Widest compatibility, no B-frames." = "Máxima compatibilidad, sin fotogramas B."; +"Worst quality." = "Peor calidad."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "Gestos al mantener pulsado"; +"Inserts a button in the profile navigation header" = "Inserta un botón en la cabecera de navegación del perfil"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "Añade un botón de acción de RyukGram en la cabecera del perfil con las opciones copiar, ver foto, compartir, guardar y datos del perfil. Tocar abre el menú de forma predeterminada; cambia el comportamiento al tocar en Configurar menú."; +"Configure menu" = "Configurar menú"; +"Reorder, enable/disable, set default tap, show date" = "Reordenar, activar/desactivar, definir acción al tocar, mostrar fecha"; +"Reorder, enable/disable, set default tap" = "Reordenar, activar/desactivar, definir acción al tocar"; +"RyukGram profile actions" = "Acciones de perfil de RyukGram"; +"Reorder sections" = "Reordenar secciones"; +"Drag the ≡ handle to reorder sections." = "Arrastra el manejador ≡ para reordenar las secciones."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "Arrastra el manejador ≡ para reordenar. Desactiva una fila para ocultarla del menú. Marca una sección como submenú para agrupar sus acciones en una sola entrada."; +"Show as submenu" = "Mostrar como submenú"; +"Collapse this section's actions behind a single entry" = "Agrupa las acciones de esta sección en una sola entrada"; +"Configure: %@" = "Configurar: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "Lo que ocurre al tocar una vez. Mantener pulsado siempre abre el menú completo."; +"Reset to defaults" = "Restablecer valores predeterminados"; +"This will restore the default sections, order, and toggles for this menu." = "Esto restaurará las secciones, el orden y los interruptores predeterminados de este menú."; +"Audio & visibility" = "Audio y visibilidad"; +"DM disappearing media" = "Medios efímeros en mensajes"; +"Bulk download" = "Descarga masiva"; +"Feed settings" = "Ajustes del Feed (Inicio)"; +"Reels settings" = "Ajustes de Reels"; +"Profile settings" = "Ajustes de perfil"; +"Stories settings" = "Ajustes de historias"; +"Copy ID" = "Copiar ID"; +"Copy Info" = "Copiar información"; +"Copy all info" = "Copiar toda la información"; +"Copy media URL" = "Copiar URL del contenido"; +"Copy profile link" = "Copiar enlace del perfil"; +"Copy username" = "Copiar nombre de usuario"; +"Download" = "Descargar"; +"Download to Gallery" = "Descargar en Galería"; +"Download all to Gallery" = "Descargar todo en Galería"; +"Exclude/include user" = "Excluir / incluir usuario"; +"Mute / unmute audio" = "Silenciar / activar sonido"; +"Save picture to Gallery" = "Guardar foto en Galería"; +"Share picture" = "Compartir foto"; +"View picture" = "Ver foto"; +"Bio" = "Biografía"; +"ID" = "ID"; +"Info" = "Información"; +"Profile info" = "información del perfil"; +"Profile link" = "Enlace del perfil"; +"Picture not found" = "Foto no encontrada"; +"Private profile" = "Perfil privado"; +"Profile unavailable" = "Perfil no disponible"; +"Public profile" = "Perfil público"; +"Username" = "Nombre de usuario"; +"Followers: %@" = "Seguidores: %@"; +"Following: %@" = "Siguiendo: %@"; +"Copied %@" = "%@ copiado"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(desconocido)"; +"Added %lu" = "Añadidos %lu"; +"All files deleted" = "Todos los archivos eliminados"; +"Browsing" = "Navegación"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "Se encontraron %lu elementos guardados por una versión anterior. ¿Restaurarlos en tu galería ahora?"; +"Gallery data from a previous version was found. Restore it now?" = "Se encontraron datos de galería de una versión anterior. ¿Restaurarlos ahora?"; +"Gallery restored" = "Galería restaurada"; +"Import failed" = "Error al importar"; +"Import to Gallery" = "Importar a la galería"; +"Imported" = "Importado"; +"Importing…" = "Importando…"; +"Not Now" = "Ahora no"; +"Nothing imported" = "No se importó nada"; +"Restore" = "Restaurar"; +"Restore Gallery" = "Restaurar galería"; +"Restore failed" = "Error al restaurar"; +"Restoring gallery…" = "Restaurando galería…"; +"By source" = "Por origen"; +"By type" = "Por tipo"; +"By user" = "Por usuario"; +"Clear filters" = "Limpiar filtros"; +"Comment" = "Comentario"; +"Create" = "Crear"; +"Create & Move" = "Crear y mover"; +"Delete %@?" = "¿Eliminar %@?"; +"Delete all files" = "Eliminar todos los archivos"; +"Delete all images" = "Eliminar todas las imágenes"; +"Delete all videos" = "Eliminar todos los videos"; +"Delete by user" = "Eliminar por usuario"; +"Delete DM media" = "Eliminar contenido de mensajes"; +"Delete feed posts" = "Eliminar publicaciones del Feed (Inicio)"; +"Delete files" = "Eliminar archivos"; +"Delete Folder" = "Eliminar carpeta"; +"Delete from Gallery?" = "¿Eliminar de la Galería?"; +"Delete profile pictures" = "Eliminar fotos de perfil"; +"Delete reels" = "Eliminar reels"; +"Delete selected" = "Eliminar selección"; +"Delete Selected Files?" = "¿Eliminar archivos seleccionados?"; +"Delete stories" = "Eliminar historias"; +"Delete thumbnails" = "Eliminar miniaturas"; +"Deleted from Gallery" = "Eliminado de la Galería"; +"Deleted selected files" = "Archivos seleccionados eliminados"; +"Deselect All" = "Anular selección"; +"DM media deleted" = "Contenido de mensajes eliminado"; +"DMs" = "Mensajes"; +"Each user appears as a folder next to your real folders." = "Cada usuario aparece como una carpeta junto a tus carpetas reales."; +"Each user gets a labelled section in the grid/list." = "Cada usuario tiene una sección etiquetada en la cuadrícula/lista."; +"Enable gallery" = "Activar galería"; +"Failed" = "Error"; +"Failed to delete" = "Error al eliminar"; +"Favorite" = "Favorito"; +"Favorite selected" = "Marcar selección como favoritos"; +"Favorites only" = "Solo favoritos"; +"Feed posts deleted" = "Publicaciones del Feed (Inicio) eliminadas"; +"Files deleted" = "Archivos eliminados"; +"Flat list. No grouping." = "Lista plana. Sin agrupar."; +"Folder name" = "Nombre de la carpeta"; +"Folders" = "Carpetas"; +"From RyukGram Gallery" = "Audio desde la Galería de RyukGram"; +"Gallery" = "Galería"; +"Gallery only" = "Solo Galería"; +"Gallery save mode" = "Modo de guardado de Galería"; +"Gallery Settings" = "Ajustes de Galería"; +"GIFs" = "GIFs"; +"Grid columns" = "Columnas de cuadrícula"; +"Grid view" = "Vista de cuadrícula"; +"Group by user" = "Agrupar por usuario"; +"Group first by" = "Agrupar primero por"; +"Order by" = "Ordenar por"; +"Favorites first" = "Favoritos primero"; +"Any time" = "Cualquier fecha"; +"This year" = "Este año"; +"%ld columns" = "%ld columnas"; +"Hold DM tab to open gallery" = "Mantén pulsado DM para abrir la galería"; +"Images" = "Imágenes"; +"Images deleted" = "Imágenes eliminadas"; +"Images first" = "Imágenes primero"; +"item" = "elemento"; +"items" = "elementos"; +"Largest first" = "Más grandes primero"; +"List view" = "Vista de lista"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "Mantén pulsado el botón de mensajes en la barra inferior para abrir la galería de RyukGram"; +"Manage" = "Gestionar"; +"More" = "Más"; +"Move selected" = "Mover selección"; +"Move to Folder" = "Mover a carpeta"; +"Name A-Z" = "Nombre A-Z"; +"Name Z-A" = "Nombre Z-A"; +"New Folder" = "Nueva carpeta"; +"New folder…" = "Nueva carpeta…"; +"Newest first" = "Más recientes primero"; +"No files in Gallery" = "No hay archivos en la galería"; +"No files to delete" = "No hay archivos que eliminar"; +"No matching files" = "No hay archivos coincidentes"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "Biblioteca en el dispositivo del contenido descargado mediante RyukGram. El modo de guardado decide dónde escribe realmente 'Descargar en Fotos'."; +"Open" = "Abrir"; +"Open Original Post" = "Abrir publicación original"; +"Options" = "Opciones"; +"Other" = "Otro"; +"Photos + Gallery" = "Fotos + Galería"; +"Photos only" = "Solo Fotos"; +"Profile pictures deleted" = "Fotos de perfil eliminadas"; +"Reels deleted" = "Reels eliminados"; +"Rename" = "Cambiar nombre"; +"Rename Folder" = "Cambiar nombre de la carpeta"; +"Root" = "Raíz"; +"Save media from the preview screen\nto see it here." = "Guarda contenido desde la pantalla de vista previa\npara verlo aquí."; +"Saved %lu items to Gallery" = "Guardados %lu elementos en Galería"; +"Saved to Gallery" = "Guardado en Galería"; +"Saving to Gallery" = "Guardando en Galería..."; +"Search users" = "Buscar usuarios"; +"Sections" = "Secciones"; +"Select All" = "Seleccionar todo"; +"Share" = "Compartir"; +"Share selected" = "Compartir selección"; +"Show favorites at top" = "Mostrar favoritos arriba"; +"Show gallery entries in download menus and unlock the gallery button" = "Muestra las opciones de galería en los menús de descarga y desbloquea el botón de galería"; +"Smallest first" = "Más pequeños primero"; +"Source" = "Origen"; +"Source user" = "Usuario de origen"; +"Storage" = "Almacenamiento"; +"Stories deleted" = "Historias eliminadas"; +"Story" = "Historia"; +"The original content may no longer exist." = "Es posible que el contenido original ya no exista."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "Esta carpeta contiene %ld archivo(s). Se moverán a la carpeta superior."; +"This folder is empty." = "Esta carpeta está vacía."; +"This will permanently remove %ld file%@ from the gallery." = "Esto eliminará permanentemente %ld archivo%@ de la galería."; +"This will permanently remove %ld file(s)." = "Esto eliminará permanentemente %ld archivo(s)."; +"This will permanently remove this file from the gallery." = "Esto eliminará permanentemente este archivo de la galería."; +"Thumb" = "Miniatura"; +"Thumbnails deleted" = "Miniaturas eliminadas"; +"to Gallery" = "en Galería"; +"Total files" = "Archivos totales"; +"Total size" = "Tamaño total"; +"Type" = "Tipo"; +"Unable to open original post" = "No se puede abrir la publicación original"; +"Unable to open profile" = "No se puede abrir el perfil"; +"Unfavorite" = "Quitar de favoritos"; +"Unknown user" = "Usuario desconocido"; +"User files deleted" = "Archivos del usuario eliminados"; +"Videos" = "Vídeos"; +"Videos deleted" = "Videos eliminados"; +"Videos first" = "Videos primero"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "Cuando está activo, los favoritos se fijan por encima del resto de archivos dentro del orden y la carpeta actuales."; +"Where 'Download to Photos' actually writes when gallery is on" = "Dónde escribe realmente 'Descargar en Fotos' cuando la galería está activada"; +"Yesterday" = "Ayer"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "Botón de acceso directo en inicio"; +"Show the extra button on the home top bar" = "Configura el botón extra de la barra superior de inicio"; +"Auto" = "Automático"; +"Icon" = "Icono"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "Arrastra el manejador ≡ para reordenar. Desactiva una fila para ocultar ese destino. Con una acción activa, tocar la ejecuta; con dos o más, tocar muestra un menú."; +"Changelog" = "Registro de cambios"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "Añade un botón de atajo extra junto al botón + de crear publicación en la barra superior de inicio."; +"All buttons" = "Todos los botones"; +"System" = "Sistema"; +"Instagram language" = "Idioma de Instagram"; +"Choose icon, reorder actions, and enable menu items" = "Elige el icono, reordena las acciones y activa los elementos del menú"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "Elige el icono que se muestra en la barra superior de inicio. Automático usa el icono de la acción seleccionada cuando solo hay una acción activada."; +"Configure button" = "Configurar botón"; +"Global Action Icons" = "Iconos de acción globales"; +"Interface" = "Interfaz"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "Anula el icono de un botón específico. Los botones dejados en Predeterminado siguen el icono compartido de arriba."; +"Per button" = "Por botón"; +"Show home shortcut button" = "Mostrar botón de atajo de inicio"; +"%ld new" = "%ld nuevos"; +"Tab bar" = "Barra de pestañas"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "Notificaciones universales en la app. Elige estilo, posición, enrutamiento por acción (píldora / IG nativo / apagado)."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "Arrastra la notificación para colocarla"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "Arrastra la notificación donde quieras. Por encima del centro baja; por debajo, sube."; + +"Notifications" = "Notificaciones"; +"Appearance" = "Apariencia"; +"Routing" = "Enrutamiento"; +"Style" = "Estilo"; +"Position" = "Posición"; +"Stack size" = "Tamaño de pila"; +"Duration" = "Duración"; +"Default surface" = "Superficie predeterminada"; +"System notifications" = "Notificaciones del sistema"; +"Mirror to notification centre" = "Reflejar en el centro de notificaciones"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "Mientras la app está en segundo plano, los avisos se envían al centro de notificaciones de iOS para que no se pierdan."; +"Clear when app opens" = "Borrar al abrir la app"; +"Remove mirrored notifications from notification centre when you return to the app." = "Eliminar las notificaciones reflejadas del centro de notificaciones al volver a la app."; +"Background mirror" = "Reflejo en segundo plano"; +"Show while app is open" = "Mostrar con la app abierta"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "Entrega también las notificaciones reflejadas como banners del sistema mientras usas la app, no solo en segundo plano."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "La apariencia, el enrutamiento, las notificaciones del sistema y cada anulación por acción vuelven a sus valores predeterminados."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Usa el permiso de notificaciones de Instagram. Los ajustes por acción están en el menú de cada acción, en Reflejo en segundo plano; las acciones en Desactivado nunca se reflejan."; +"Enable notifications" = "Activar notificaciones"; +"Haptic feedback" = "Vibración háptica"; +"Preview pill" = "Previsualizar píldora"; +"Preview download pill" = "Previsualizar píldora descarga"; +"Preview loading pill" = "Previsualizar píldora de carga"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "Interruptor principal. Si está apagado, no se emite ninguna notificación."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "Notificaciones universales en la app. Todos los avisos de RyukGram (descargas, copias, errores, éxitos) pasan por aquí."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal: desenfoque plano. Colorful: teñida por tono. Glow: halo de color. Island: cápsula tipo dynamic island."; +"Top slides down, bottom slides up." = "Arriba se desliza hacia abajo, abajo hacia arriba."; +"How many pills can show at once before queueing." = "Cuántas píldoras pueden mostrarse a la vez antes de hacer cola."; +"Multiplies how long toasts stay on screen." = "Multiplica cuánto duran las notificaciones en pantalla."; +"Vibration on success/error pills." = "Vibración en píldoras de éxito o error."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "Para acciones tipo aviso puedes elegir entre nuestra píldora y el aviso nativo de IG. Las anulaciones por acción están abajo."; +"What to use when an action doesn't have its own override." = "Qué usar cuando una acción no tiene su propia anulación."; +"Tap to cycle: info → success → warning → error" = "Tocar para alternar: info → éxito → advertencia → error"; +"Tap to cycle between success and failure" = "Tocar para alternar entre éxito y fallo"; +"Progress UI — pill or off only." = "Interfaz de progreso — solo píldora o apagado."; +"Minimal" = "Minimalista"; +"Colorful" = "Colorido"; +"Glow" = "Resplandor"; +"Island" = "Isla"; +"Top" = "Arriba"; +"Bottom" = "Abajo"; +"Custom pill" = "Píldora personalizada"; +"IG native toast" = "Aviso nativo de IG"; +"Short" = "Corto"; +"Normal" = "Normal"; +"Long" = "Largo"; +"Very long" = "Muy largo"; +"Downloads & saving" = "Descargas y guardado"; +"Copy to clipboard" = "Copiar al portapapeles"; +"Read receipts & seen" = "Confirmaciones de lectura"; +"Block, exclude & pin" = "Bloquear, excluir y fijar"; +"Stories & messages" = "Historias y mensajes"; +"Voice & audio" = "Voz y audio"; +"Errors" = "Errores"; +"Download progress" = "Progreso de descarga"; +"Bulk download progress" = "Progreso de descarga masiva"; +"Repost progress" = "Progreso de repost"; +"Copied post / reel URL" = "URL de publicación / reel copiada"; +"Copied comment text" = "Texto de comentario copiado"; +"Copied GIF link" = "Enlace del GIF copiado"; +"Copied note text" = "Texto de nota copiado"; +"Copied profile info" = "Información de perfil copiada"; +"Copied audio URL" = "URL de audio copiada"; +"Copied quality picker URL" = "URL de selector de calidad copiada"; +"Copied unlocked password" = "Contraseña desbloqueada copiada"; +"Copied description text" = "Texto de descripción copiado"; +"DM seen / read receipts" = "Lecturas / vistas de DM"; +"Story seen / read receipts" = "Lecturas / vistas de historia"; +"Someone read your message" = "Alguien leyó tu mensaje"; +"User blocked / unblocked" = "Usuario bloqueado / desbloqueado"; +"Chat added / removed from exclude" = "Chat añadido / quitado de exclusiones"; +"Story user added / removed from exclude" = "Usuario de historia añadido / quitado de exclusiones"; +"Share-sheet recipient pinned" = "Destinatario de compartir fijado"; +"Unsent message detected" = "Mensaje no enviado detectado"; +"Reaction removed detected" = "Reacción eliminada detectada"; +"%lu messages unsent" = "Se anuló el envío de %lu mensajes"; +"%lu reactions removed" = "%lu reacciones eliminadas"; +"%lu chats marked seen" = "%lu chats marcados como vistos"; +"%lu stories marked seen" = "%lu historias marcadas como vistas"; +"%lu of your messages read" = "%lu de tus mensajes leídos"; +"%lu notifications" = "%lu notificaciones"; +"Live comments toggled" = "Comentarios en vivo alternados"; +"Custom GIF sent" = "GIF personalizado enviado"; +"GIF favorited / unfavorited" = "GIF añadido / quitado de favoritos"; +"Voice DM sent" = "DM de voz enviado"; +"Audio extraction status" = "Estado de extracción de audio"; +"Profile Analyzer complete" = "Analizador de perfil completado"; +"Profile Analyzer progress" = "Progreso del analizador de perfil"; +"Media extraction failed" = "Error al extraer medios"; +"Permission denied" = "Permiso denegado"; +"Validation error" = "Error de validación"; +"Network / API error" = "Error de red / API"; +"Action error fallback" = "Mensaje de error de acción"; +"Unlock failed" = "Desbloqueo fallido"; +"Chat locked / unlocked" = "Chat bloqueado / desbloqueado"; +"Invalid clipboard link" = "Enlace de portapapeles inválido"; +"Experimental flag warning" = "Advertencia de bandera experimental"; +"Settings action confirmed" = "Acción de ajustes confirmada"; +"Cache clearing progress" = "Progreso de limpieza de caché"; +"Backup export / import" = "Exportación / importación de copia de seguridad"; +"Other / uncategorized" = "Otros / sin categoría"; +"Comment copied" = "Comentario copiado"; +"FFmpeg log copied" = "Registro de FFmpeg copiado"; +"GIF inserted" = "GIF insertado"; +"Story marked as seen" = "Historia marcada como vista"; +"Saved" = "Guardado"; +"Tap to retry" = "Tocar para reintentar"; +"Looks great" = "Se ve bien"; +"Something broke" = "Algo se rompió"; +"Just so you know" = "Solo para que lo sepas"; +"Success preview" = "Vista previa de éxito"; +"Error preview" = "Vista previa de error"; +"Warning preview" = "Vista previa de advertencia"; +"Info preview" = "Vista previa de info"; +"Preview download…" = "Vista previa de descarga…"; +"Colors" = "Colores"; +"+ Add new language" = "+ Añadir idioma nuevo"; +"Each chat can override this in the list" = "Cada chat puede anular esto en la lista"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "Cuando está activado, las solicitudes de ubicación de Instagram devuelven la ubicación falsa seleccionada. El botón del mapa añade un acceso rápido en el mapa de amigos."; +"Tap a preset to make it active. Swipe left to delete." = "Toca un preajuste para activarlo. Desliza a la izquierda para eliminar."; +"Override Instagram location reads." = "Anula las lecturas de ubicación de Instagram."; +"Show the quick button in Friends Map." = "Mostrar el botón rápido en el mapa de amigos."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "Elige cómo se escriben las fechas absolutas. “Predeterminado” deja intacto el formato de IG. Desliza un formato personalizado para editarlo o eliminarlo."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "Las fechas más recientes que el umbral se muestran como tiempo relativo. Las fechas más antiguas usan el formato absoluto. «Combinar con la fecha» muestra ambos — «5 ene 2026 (2h)» o «2h – 5 ene 2026»."; +"Compact style" = "Estilo compacto"; +"Example: “1h” instead of “1 hour ago”" = "Ejemplo: “1h” en lugar de “hace 1 hora”"; +"Example: “Jan 5, 2026 (2h)”" = "Ejemplo: “Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "Las APIs de audio de iOS no pudieron procesar este archivo%@%@\n\nPuedes intentar enviarlo a Instagram tal cual, o abrir un problema de soporte."; +"Combine with date" = "Combinar con la fecha"; +"Absolute then relative" = "Absoluto y luego relativo"; +"Relative – absolute" = "Relativo – absoluto"; +"Relative when young, absolute when older." = "Relativo si es reciente, absoluto si es antiguo."; +"Example: “2h – Jan 5, 2026”" = "Ejemplo: «2h – 5 ene 2026»"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "Captura medios de una sola vez retirados mientras no estás. ⚠️ Puede agotar la batería"; +"Disappearing (view-once) media" = "Medios temporales (ver una vez)"; +"Disappearing media expired before it could be saved" = "El contenido temporal caducó antes de poder guardarse"; +"Disappearing media — gone before it could be saved" = "Contenido temporal — desapareció antes de poder guardarse"; +"Disappearing only" = "Solo temporales"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Obliga a Instagram a seguir ejecutándose en segundo plano para capturar contenido temporal que alguien retira mientras no estás en la app.\n\nÚtil sobre todo para contenido de una sola vez: las fotos y vídeos normales suelen poder recuperarse sin esto. ⚠️ Puede agotar bastante la batería y no podrá capturar nada si cierras Instagram desde el selector de apps.\n\n¿Activarlo?"; +"Keep Instagram active in background" = "Mantener Instagram activo en segundo plano"; +"Media couldn’t be downloaded — the link expired" = "No se pudo descargar el contenido — el enlace caducó"; +"Media wasn’t available to save" = "El contenido no estaba disponible para guardar"; +"Retrying download…" = "Reintentando descarga…"; +"Try to download again" = "Intentar descargar de nuevo"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "Registro de confirmaciones de lectura"; +"Date" = "Fecha"; +"Reads" = "Lecturas"; +"Person" = "Persona"; +"Chat" = "Chat"; +"%@ · on @%@" = "%@ · en @%@"; +"%lu read · %@" = "%lu lectura · %@"; +"%lu reads · %@" = "%lu lecturas · %@"; +"%lu reads · %lu reader · %@" = "%lu lecturas · %lu lector · %@"; +"%lu reads · %lu readers · %@" = "%lu lecturas · %lu lectores · %@"; +"Clear all" = "Borrar todo"; +"Clear all records" = "Borrar todos los registros"; +"Detects when others read your messages and notifies you" = "Detecta cuándo otros leen tus mensajes y te avisa"; +"Ignored people & chats" = "Personas y chats ignorados"; +"Ignored" = "Ignorado"; +"Log group chats" = "Registrar chats de grupo"; +"Most reads" = "Más lecturas"; +"Notifies and records when someone reads a message you sent" = "Avisa y registra cuando alguien lee un mensaje que enviaste"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "No hay nada ignorado. Mantén pulsado a alguien en el registro para dejar de registrarlo."; +"Nothing matches your filters." = "Nada coincide con tus filtros."; +"Read %@ · %@" = "Leído %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "Guarda las lecturas en este dispositivo. Desactivado = solo notificaciones, sin guardar"; +"Resume logging" = "Reanudar registro"; +"Search by username" = "Buscar por nombre de usuario"; +"Stop logging %@" = "Dejar de registrar a %@"; +"Delete records" = "Eliminar registros"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "Al activarlo, recibirás una notificación cuando alguien lea tu mensaje. Desactiva \"Guardar en el registro\" para el modo solo avisos. Mantén pulsada una persona en el registro para dejar de registrarla."; +"Swipe to remove. Removing resumes logging for that person or chat." = "Desliza para quitar. Quitarlo reanuda el registro de esa persona o chat."; +"Updating names and photos" = "Actualizando nombres y fotos"; +"Your message" = "Tu mensaje"; +"read your message in %@" = "leyó tu mensaje en %@"; +"read your message" = "leyó tu mensaje"; +"Also track reads in group chats. Off by default — groups can be noisy" = "Rastrea también las lecturas en chats de grupo. Desactivado por defecto: los grupos pueden ser ruidosos"; +"Refreshing…" = "Actualizando…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "Generar una nueva huella"; +"New device fingerprint" = "Nueva huella de dispositivo"; +"Roll new ID" = "Generar nuevo ID"; +"Roll + clear IG data" = "Generar + borrar datos de IG"; +"Generate fresh device identifiers" = "Genera identificadores de dispositivo nuevos"; +"Enter ID manually…" = "Introducir ID manualmente…"; +"Manual device ID" = "ID de dispositivo manual"; +"Paste or type the UUID this device should report." = "Pega o escribe el UUID que debe reportar este dispositivo."; +"Device ID set" = "ID de dispositivo establecido"; +"New fingerprint ready" = "Nueva huella lista"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "¿Reiniciar Instagram ahora para que la nueva identidad de dispositivo se aplique desde un inicio limpio?"; +"Copy current ID" = "Copiar ID actual"; +"Revert to my real device ID" = "Volver a mi ID de dispositivo real"; +"Restore the original, stop masking" = "Restaura el original y deja de enmascarar"; +"Spoofing off" = "Suplantación desactivada"; +"Relaunch now" = "Reiniciar ahora"; +"Relaunch to apply" = "Reinicia para aplicar"; +"Clear device & relaunch" = "Borrar dispositivo y reiniciar"; +"Clear device & relaunch?" = "¿Borrar dispositivo y reiniciar?"; +"Clear & relaunch" = "Borrar y reiniciar"; +"Full reset to a brand-new device" = "Reinicio total a un dispositivo completamente nuevo"; +"Device ID" = "ID de dispositivo"; +"Hide button until relaunch" = "Ocultar botón hasta reiniciar"; +"Device identity" = "Identidad del dispositivo"; +"Masked" = "Enmascarado"; +"Real" = "Real"; +"Show button on login screen" = "Mostrar botón en la pantalla de inicio de sesión"; +"Floating Device ID button while signed out" = "Botón flotante de ID de dispositivo mientras no hay sesión"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Enmascara los identificadores que usa Instagram para identificar este dispositivo: ID de dispositivo, ID de dispositivo familiar, ID de proveedor e ID de máquina. Los cambios se aplican tras reiniciar. Los mismos controles aparecen en la pantalla de inicio de sesión."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "Olvida todos los inicios de sesión, cookies y la identidad de dispositivo guardada, y luego reinicia para que Instagram arranque como un dispositivo nuevo. Tendrás que iniciar sesión de nuevo."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "Genera un nuevo ID de dispositivo, ID de dispositivo familiar e ID de proveedor, y borra el ID de máquina para que Instagram se registre de nuevo como un dispositivo nuevo. O también borra los inicios de sesión guardados para un reinicio total."; +"Apple attestation" = "Atestación de Apple"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Bloquea la atestación de dispositivo de Apple que usa Instagram (DeviceCheck y App Attest). Están vinculadas al hardware y no se pueden cambiar, por lo que siguen enlazando el dispositivo entre reinicios. Al bloquearlas, Instagram ve un dispositivo que no las admite. Solo funciona mientras el enmascaramiento está activado."; +"Block Apple device attestation" = "Bloquear la atestación de dispositivo de Apple"; +"Stop the hardware attestation that links the device" = "Detén la atestación de hardware que enlaza el dispositivo"; +"Block Apple attestation: %@" = "Bloquear atestación de Apple: %@"; +"Attestation blocked" = "Atestación bloqueada"; +"Attestation allowed" = "Atestación permitida"; +"Roll + clear, then sign in fresh" = "Generar + borrar, luego inicia sesión de nuevo"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "Solicitudes de seguimiento"; +"Show follow requests" = "Mostrar solicitudes de seguimiento"; +"Check now" = "Comprobar ahora"; +"Reset tracked data" = "Restablecer datos registrados"; +"Enable tracker" = "Activar rastreador"; +"Log requests and check outcomes" = "Registrar solicitudes y comprobar resultados"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "Registra las solicitudes de seguimiento que envías y recibes, y detecta quién cancela una solicitud antes de que respondas. Todo en el dispositivo."; +"What to track" = "Qué rastrear"; +"Requests I send" = "Solicitudes que envío"; +"To private accounts" = "A cuentas privadas"; +"Requests I receive" = "Solicitudes que recibo"; +"From people who want to follow you" = "De personas que quieren seguirte"; +"Background check" = "Comprobación en segundo plano"; +"Check interval" = "Intervalo de comprobación"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "Con qué frecuencia comprobar los resultados mientras la app está abierta. También comprueba al iniciar y al abrir la lista."; +"Off (manual only)" = "Desactivado (solo manual)"; +"Every 15 minutes" = "Cada 15 minutos"; +"Every 30 minutes" = "Cada 30 minutos"; +"Every hour" = "Cada hora"; +"Every 6 hours" = "Cada 6 horas"; +"My request accepted" = "Mi solicitud aceptada"; +"A private account accepted you" = "Una cuenta privada te aceptó"; +"My request declined" = "Mi solicitud rechazada"; +"No longer pending" = "Ya no está pendiente"; +"New request received" = "Nueva solicitud recibida"; +"Someone asked to follow you" = "Alguien solicitó seguirte"; +"Request withdrawn" = "Solicitud retirada"; +"Someone cancelled their request" = "Alguien canceló su solicitud"; +"Sent by me" = "Enviadas por mí"; +"Received" = "Recibida"; +"Sent" = "Enviada"; +"Accepted" = "Aceptada"; +"Rejected" = "Rechazada"; +"Requested" = "Solicitada"; +"Approved" = "Aprobada"; +"Withdrawn" = "Retirada"; +"No follow requests tracked yet" = "Aún no hay solicitudes de seguimiento registradas"; +"Cancel requests" = "Cancelar solicitudes"; +"Delete %lu record(s) from history?" = "¿Eliminar %lu registro(s) del historial?"; +"Cancel %lu pending request(s)?" = "¿Cancelar %lu solicitud(es) pendiente(s)?"; +"Follow back %lu account(s)?" = "¿Seguir de vuelta a %lu cuenta(s)?"; +"Clear all tracked follow requests?" = "¿Borrar todas las solicitudes de seguimiento registradas?"; +"Reset tracked follow requests for this account?" = "¿Restablecer las solicitudes de seguimiento registradas de esta cuenta?"; +"Enable the tracker first" = "Primero activa el rastreador"; +"Checking…" = "Comprobando…"; +"%ld request(s) updated" = "%ld solicitud(es) actualizada(s)"; +"No changes" = "Sin cambios"; +"Working…" = "Procesando…"; +"Follow request accepted" = "Solicitud de seguimiento aceptada"; +"%@ accepted your request" = "%@ aceptó tu solicitud"; +"Follow request declined" = "Solicitud de seguimiento rechazada"; +"%@ is no longer pending" = "%@ ya no está pendiente"; +"New follow request" = "Nueva solicitud de seguimiento"; +"%@ asked to follow you" = "%@ solicitó seguirte"; +"Follow request withdrawn" = "Solicitud de seguimiento retirada"; +"%@ withdrew their request" = "%@ retiró su solicitud"; +"Follow requests log" = "Registro de solicitudes de seguimiento"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Desbloquea las funciones de pago de Instagram"; +"Turn on Instagram's paid subscriber features inside the app." = "Activa las funciones para suscriptores de pago de Instagram dentro de la app."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus es la suscripción de pago de Instagram. Estos interruptores activan sus funciones dentro de la app. Algunas funcionan por completo. Otras solo muestran la opción, porque el contenido se carga desde los servidores de Instagram y sigue requiriendo una suscripción real, así que pueden aparecer vacías o no hacer nada. Activa lo que quieras y toca Aplicar. Si Instagram no arranca tres veces seguidas, estos interruptores se restablecen solos."; +"Turn everything on" = "Activar todo"; +"Turn everything off" = "Desactivar todo"; +"Every Instagram Plus feature turns off and Instagram restarts." = "Se desactivan todas las funciones de Instagram Plus e Instagram se reinicia."; +"Story peek" = "Vistazo de historias"; +"Hold a story in the tray to preview it without opening it." = "Mantén pulsada una historia en la bandeja para previsualizarla sin abrirla."; +"Story fonts" = "Fuentes de historias"; +"Adds the subscriber fonts when you add text to a story." = "Añade las fuentes de suscriptor al agregar texto a una historia."; +"Search story viewers" = "Buscar entre quienes vieron la historia"; +"Search the list of people who viewed your story." = "Busca en la lista de personas que vieron tu historia."; +"Viewer timestamps" = "Hora de visualización"; +"Shows when each person viewed your story." = "Muestra cuándo vio tu historia cada persona."; +"Silent post to profile" = "Publicar en el perfil en silencio"; +"Share to your profile without notifying your followers." = "Comparte en tu perfil sin notificar a tus seguidores."; +"Silent post to highlights" = "Añadir a destacadas en silencio"; +"Add to a highlight without notifying your followers." = "Añade a una historia destacada sin notificar a tus seguidores."; +"Story rewatch" = "Volver a ver la historia"; +"Rewatch a story right after it finishes." = "Vuelve a ver una historia justo cuando termina."; +"Story extend" = "Ampliar historia"; +"Keep your story up longer than 24 hours." = "Mantén tu historia visible más de 24 horas."; +"Story spotlight" = "Destacar historia"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "Impulsa tu historia hacia más espectadores. Se carga desde Instagram, así que puede no funcionar."; +"Story super likes" = "Súper me gusta en historias"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "Envía súper me gusta en las historias. Se carga desde Instagram, así que puede no funcionar."; +"Message peek" = "Vistazo de mensajes"; +"Hold a chat in the inbox to preview it." = "Mantén pulsado un chat en la bandeja para previsualizarlo."; +"Chat fonts" = "Fuentes de chat"; +"Adds the subscriber fonts in direct messages." = "Añade las fuentes de suscriptor en los mensajes directos."; +"Chat themes" = "Temas de chat"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "Desbloquea los temas de chat premium. Se carga desde Instagram, así que puede no funcionar."; +"App icons" = "Iconos de la app"; +"Opens the alternate app icon picker." = "Abre el selector de iconos alternativos de la app."; +"Bio font" = "Fuente de la biografía"; +"Use a subscriber font for your bio." = "Usa una fuente de suscriptor en tu biografía."; +"Custom story lists" = "Listas de historias personalizadas"; +"Make lists to pick exactly who sees a story." = "Crea listas para elegir con exactitud quién ve una historia."; +"More pinned posts" = "Más publicaciones fijadas"; +"Pin more posts to the top of your profile." = "Fija más publicaciones en la parte superior de tu perfil."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu grabaciones"; +"1 recording" = "1 grabación"; +"30 days" = "30 días"; +"7 days" = "7 días"; +"90 days" = "90 días"; +"Adds a record button to the call screen" = "Añade un botón de grabación a la pantalla de llamada"; +"Also show recordings in the RyukGram gallery under Calls" = "Muestra también las grabaciones en la galería de RyukGram, en Llamadas"; +"Auto-delete old recordings" = "Eliminar automáticamente grabaciones antiguas"; +"Auto-record calls" = "Grabar llamadas automáticamente"; +"Auto-record ignore list" = "Lista de excepciones de grabación automática"; +"Auto-record ignored" = "Grabación automática ignorada"; +"Auto-record on" = "Grabación automática activada"; +"Block mute signal" = "Bloquear señal de silencio"; +"Both sides" = "Ambos lados"; +"Browse saved calls, grouped by person" = "Explora llamadas guardadas, agrupadas por persona"; +"Call" = "Llamada"; +"Call recorded" = "Llamada grabada"; +"Call recording" = "Grabación de llamadas"; +"Call recordings" = "Grabaciones de llamadas"; +"Camera position" = "Posición de la cámara"; +"Can't play" = "No se puede reproducir"; +"Can't record" = "No se puede grabar"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "Conversaciones excluidas de la grabación automática — mantén pulsado el botón de grabación en una llamada para añadirla"; +"Could not save the recording." = "No se pudo guardar la grabación."; +"Could not start the recorder." = "No se pudo iniciar el grabador."; +"Delete all" = "Eliminar todo"; +"Delete all recordings" = "Eliminar todas las grabaciones"; +"Delete all recordings?" = "¿Eliminar todas las grabaciones?"; +"Drag the overlay where you want it" = "Arrastra la superposición donde quieras"; +"Drag your camera window to any corner or edge." = "Arrastra la ventana de tu cámara a cualquier esquina o borde."; +"Enable call recording" = "Habilitar grabación de llamadas"; +"Export all" = "Exportar todo"; +"Full screen" = "Pantalla completa"; +"Group call" = "Llamada grupal"; +"Ignore auto-record for this chat" = "Ignorar grabación automática para esta conversación"; +"Ignored chats aren't auto-recorded. You can still record manually." = "Las conversaciones ignoradas no se graban automáticamente. Aún puedes grabar manualmente."; +"Include my camera" = "Incluir mi cámara"; +"Keep forever" = "Conservar para siempre"; +"Large" = "Grande"; +"Mute without the other side seeing you muted — your mic is still silenced" = "Silencia sin que el otro lado te vea silenciado — tu micrófono sigue silenciado"; +"Muted silently" = "Silenciado en secreto"; +"My camera size" = "Tamaño de mi cámara"; +"No call audio was captured." = "No se capturó el audio de la llamada."; +"No ignored chats. Long-press the record button in a call to ignore it." = "No hay conversaciones ignoradas. Mantén pulsado el botón de grabación en una llamada para ignorarla."; +"No recordings" = "Sin grabaciones"; +"Off records audio only, even on video calls" = "Desactivado graba solo el audio, incluso en llamadas de vídeo"; +"Only me" = "Solo yo"; +"Only them" = "Solo la otra persona"; +"Open recordings" = "Abrir grabaciones"; +"Overlay your camera as a small window on video-call recordings" = "Superpón tu cámara como una pequeña ventana en las grabaciones de videollamadas"; +"Overlay your camera on the recording" = "Superpone tu cámara en la grabación"; +"Record audio from" = "Grabar audio de"; +"Record video on video calls" = "Grabar vídeo en las videollamadas"; +"Record voice and video calls, browse them later" = "Graba llamadas de voz y de vídeo, y explóralas más tarde"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "Las llamadas grabadas se guardan solo en este dispositivo. Un indicador rojo en la barra de estado aparece mientras se graba."; +"Recorded calls will appear here." = "Las llamadas grabadas aparecerán aquí."; +"Recording call" = "Grabando llamada"; +"Recording count" = "Número de grabaciones"; +"Recording failed" = "Error de grabación"; +"Recording name" = "Nombre de la grabación"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "Graba a la otra persona (audio de la llamada) y tu micrófono. Un indicador rojo en la barra de estado aparece mientras se graba. Las grabaciones se guardan solo en este dispositivo."; +"Remove from ignore list" = "Quitar de la lista de excepciones"; +"Remove recordings older than the chosen age" = "Elimina las grabaciones más antiguas que la antigüedad elegida"; +"Rename recording" = "Cambiar nombre de la grabación"; +"Search calls" = "Buscar llamadas"; +"Set a custom name for this chat's recordings." = "Establece un nombre personalizado para las grabaciones de esta conversación."; +"Size of the overlay window" = "Tamaño de la ventana superpuesta"; +"Small" = "Pequeña"; +"Starts recording automatically when a call opens" = "Comienza a grabar automáticamente cuando se abre una llamada"; +"Sync to gallery" = "Sincronizar con la galería"; +"The recording file is missing." = "Falta el archivo de la grabación."; +"Them" = "La otra persona"; +"Them (full screen)" = "La otra persona (pantalla completa)"; +"This permanently removes every saved call recording for this account." = "Esto elimina permanentemente todas las grabaciones de llamadas guardadas de esta cuenta."; +"Unknown chat" = "Conversación desconocida"; +"Unmuted" = "Sin silenciar"; +"Which camera fills the frame" = "Qué cámara ocupa el marco"; +"Which side's voice to capture" = "De qué lado capturar la voz"; +"You" = "Tú"; +"You (full screen)" = "Tú (pantalla completa)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "Tu cámara se captura y se superpone en la grabación. Elige qué lado ocupa la pantalla, el tamaño de la superposición y arrástrala a cualquier esquina."; +"Prompt before the call recordings open" = "Preguntar antes de abrir las grabaciones de llamadas"; +"Prompt before the activity log opens" = "Pedir antes de abrir el registro de actividad"; +"Mark all as read" = "Marcar todo como leído"; +"Delete %lu chats?" = "¿Eliminar %lu conversaciones?"; +"This permanently removes their recordings." = "Esto elimina permanentemente sus grabaciones."; + +"Stories archive" = "Archivo de historias"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "Reaccionaron"; +"Reacted first" = "Reacciones primero"; +"Mutual" = "Mutuos"; +"Viewers" = "Espectadores"; +"1 viewer" = "1 espectador"; +"View viewers" = "Ver espectadores"; +"%lu views" = "%lu visualizaciones"; +"%ld likes" = "%ld me gusta"; +"0 views" = "0 visualizaciones"; +"1 like" = "1 me gusta"; +"1 view" = "1 visualización"; +"Photos" = "Fotos"; +"Oldest" = "Más antiguas"; +"Most viewed" = "Más vistas"; +"Most reacted" = "Más reacciones"; +"Open archive" = "Abrir archivo"; +"Archive settings" = "Ajustes del archivo"; +"Archiving" = "Archivando"; +"Enable stories archive" = "Activar archivo de historias"; +"Save your stories before they expire" = "Guarda tus historias antes de que caduquen"; +"Saves each story you post, with its photo or video, kept separately for each account." = "Guarda cada historia que publicas, con su foto o vídeo, por separado para cada cuenta."; +"Save and update viewers" = "Guardar y actualizar espectadores"; +"Keep each story's viewers and likers, refreshed to the final list" = "Conserva los espectadores y me gusta de cada historia, actualizados a la lista final"; +"Update viewers" = "Actualizar espectadores"; +"How often to refresh viewers for stories still live" = "Con qué frecuencia actualizar los espectadores de las historias aún activas"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "La lista de espectadores de una historia sigue creciendo durante todo su día, y luego Instagram la muestra un día más. La actualización automática obtiene la lista final cuando la historia tiene un día, para que los recuentos que guardas estén completos."; +"Notify me about pinned viewers" = "Avisarme sobre espectadores fijados"; +"A heads-up when a pinned viewer sees or likes your story" = "Un aviso cuando un espectador fijado ve o le da me gusta a tu historia"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "Recibe un aviso cuando un espectador fijado ve o le da me gusta a tu historia. Fija espectadores y gestiona la lista desde los ajustes de espectadores."; +"Viewer list & pins" = "Lista de espectadores y fijados"; +"Turn on the viewer list and manage pinned viewers" = "Activa la lista de espectadores y gestiona los espectadores fijados"; +"Turn on a custom viewer list to pin, search and sort viewers" = "Activa una lista de espectadores personalizada para fijar, buscar y ordenar espectadores"; +"Tick several to combine them." = "Marca varios para combinarlos."; +"Select stories" = "Seleccionar historias"; +"No archived stories yet. Post a story and it appears here." = "Aún no hay historias archivadas. Publica una historia y aparecerá aquí."; +"Archiving is off. Enable it in the archive settings, then post a story." = "El archivado está desactivado. Actívalo en los ajustes del archivo y luego publica una historia."; +"Delete story?" = "¿Eliminar historia?"; +"This removes the archived photo or video and its viewers." = "Esto elimina la foto o vídeo archivado y sus espectadores."; +"Delete all stories?" = "¿Eliminar todas las historias?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "Elimina todas las historias archivadas y sus espectadores de esta cuenta. Esto no se puede deshacer."; +"Delete %lu archived stories and their viewers?" = "¿Eliminar %lu historias archivadas y sus espectadores?"; +"Pinned viewer saw your story" = "Un espectador fijado vio tu historia"; +"Pinned viewer liked your story" = "A un espectador fijado le gustó tu historia"; +"Pinned viewer reacted to your story" = "Un espectador fijado reaccionó a tu historia"; +"Pinned viewers on your story" = "Espectadores fijados en tu historia"; +"%lu pinned viewers just saw, liked or reacted" = "%lu espectadores fijados acaban de ver, dar me gusta o reaccionar"; +"A pinned viewer" = "Un espectador fijado"; +"On each launch" = "En cada inicio"; diff --git a/src/Localization/Resources/fr.lproj/Localizable.strings b/src/Localization/Resources/fr.lproj/Localizable.strings new file mode 100644 index 0000000..e87401f --- /dev/null +++ b/src/Localization/Resources/fr.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "Pour plus tard : maintenez appuyé sur les trois lignes en haut à droite de votre page de profil pour rouvrir les réglages de RyukGram."; +"settings.firstrun.ok" = "J’ai compris !"; +"settings.firstrun.title" = "Infos des réglages RyukGram"; +"settings.language.english_only" = "RyukGram inclut maintenant plusieurs langues. Si votre langue manque ou doit être améliorée, aidez à la traduire en suivant le guide rapide du README."; +"settings.language.help_translate" = "Aider à traduire"; +"settings.language.system" = "Langue du système"; +"settings.language.title" = "Langue"; +"settings.language.restart.message" = "Réglages mis à jour. Redémarrez Instagram pour que les menus, boutons et notifications du reste de l’app reprennent la nouvelle langue."; +"settings.language.restart.title" = "Redémarrer pour tout appliquer"; +"settings.language.available" = "Disponibles"; +"settings.results.many" = "%lu résultats"; +"settings.results.one" = "%lu résultat"; +"settings.search.placeholder" = "Rechercher dans les réglages"; +"settings.title" = "Réglages RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "Icône du bouton d’action"; +"Adds a copy option to the comment long-press menu" = "Ajoute une option de copie au menu d’appui long des commentaires"; +"Adds a download button next to share/save on the reels audio page" = "Ajoute un bouton de téléchargement à côté de partager/enregistrer sur la page audio des reels"; +"Adds download, copy and expand options to GIF and image comments" = "Ajoute des options télécharger, copier et agrandir aux commentaires GIF et image"; +"Allow video in photo sticker" = "Autoriser la vidéo dans le sticker photo"; +"Alternate icons are not supported" = "Les icônes alternatives ne sont pas prises en charge"; +"Anonymous live viewing" = "Visionnage de lives anonyme"; +"App Icon" = "Icône de l’app"; +"Audio page" = "Page audio"; +"Auto-reveals sensitive media" = "Affiche automatiquement les médias sensibles"; +"Block surveys" = "Bloquer les sondages"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "Bloque le signal du compteur de spectateurs pour que le diffuseur ne vous voie pas — vous ne verrez pas non plus le compteur"; +"Browser" = "Navigateur"; +"Change the app icon from the bundled icons" = "Changez l’icône de l’app parmi les icônes intégrées"; +"Choose Icon" = "Choisir une icône"; +"Choose which surfaces hide ads" = "Choisir les surfaces qui masquent les pubs"; +"Comments" = "Commentaires"; +"Commerce carousels in comments and shoppable CTAs on reels" = "Carrousels commerciaux dans les commentaires et CTA d'achat sur les reels"; +"Copy comment text" = "Copier le texte du commentaire"; +"Copy description" = "Copier la description"; +"Long press a caption to copy its text" = "Appuie longuement sur une légende pour copier son texte"; +"Custom sticker colors" = "Couleurs de stickers personnalisées"; +"Custom colors aren't supported for this sticker" = "Les couleurs personnalisées ne sont pas prises en charge pour ce sticker"; +"Date format" = "Format de date"; +"Disable app haptics" = "Désactiver le retour haptique"; +"Disables haptics/vibrations within the app" = "Désactive le retour haptique et les vibrations dans l’app"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "Désactive Liquid Glass pour les comptes où il est activé par défaut. Prévaut sur les options ci-dessus"; +"Do not save recent searches" = "Ne pas enregistrer les recherches récentes"; +"Download GIF & image comments" = "Télécharger les commentaires GIF et image"; +"Download image" = "Télécharger l’image"; +"Embed domain" = "Domaine d’intégration"; +"Embed domain: %@" = "Domaine d’intégration : %@"; +"Enable liquid glass buttons" = "Activer les boutons Liquid Glass"; +"Enable liquid glass surfaces" = "Activer les surfaces Liquid Glass"; +"Enable teen app icons" = "Activer les icônes ado"; +"Enables experimental liquid glass buttons" = "Active les boutons expérimentaux Liquid Glass"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "Active Liquid Glass pour la barre d’onglets, la navigation flottante et d’autres éléments d’interface"; +"End" = "Fin"; +"Experimental features" = "Fonctionnalités expérimentales"; +"Explore & search" = "Explorer et rechercher"; +"Failed to change icon" = "Échec du changement d’icône"; +"Fixed" = "Fixe"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "Fixe empêche le rétrécissement. Masquer le fait disparaître au défilement vers le bas"; +"Focus/distractions" = "Concentration/distractions"; +"Force liquid glass off" = "Forcer la désactivation de Liquid Glass"; +"Force progressive blur" = "Forcer le flou progressif"; +"General" = "Général"; +"Gradient color" = "Couleur dégradée"; +"Hide ads" = "Masquer les pubs"; +"Hide explore posts grid" = "Masquer la grille des publications Explorer"; +"Hide friends map" = "Masquer la carte des amis"; +"Hide Meta AI" = "Masquer Meta AI"; +"Hide metrics" = "Masquer les métriques"; +"Hide notes tray" = "Masquer le bandeau des notes"; +"Hide on scroll" = "Masquer au défilement"; +"Hide TestFlight popup" = "Masquer la fenêtre TestFlight"; +"Hide trending searches" = "Masquer les recherches tendance"; +"Hide UI on capture" = "Masquer l’interface lors des captures"; +"Removes suggested accounts to follow outside the feed" = "Supprime les comptes suggérés à suivre en dehors du fil"; +"Hides like/comment/share counts on posts and reels" = "Masque les compteurs de J’aime, commentaires et partages sur les publications et reels"; +"Removes the friends map icon from the notes tray" = "Supprime l'icône de la carte des amis du bandeau de notes"; +"Removes the suggested posts grid on the explore tab" = "Supprime la grille de publications suggérées dans l'onglet Explorer"; +"Strips the Meta AI buttons and entry points from the app" = "Retire les boutons et points d'accès Meta AI de l'app"; +"Hides the notes tray in the DM inbox" = "Masque le bandeau des notes dans la boîte de réception des DM"; +"Removes suggested broadcast channels from your inbox" = "Supprime les canaux de diffusion suggérés de ta boîte de réception"; +"Hide DM search suggestions" = "Masquer les suggestions de recherche des messages"; +"Removes suggested accounts and channels from direct message search" = "Supprime les comptes et canaux suggérés de la recherche de messages directs"; +"Removes trending searches under the explore search bar" = "Supprime les recherches tendance sous la barre de recherche Explorer"; +"Hold down on the Instagram logo to change the app icon" = "Maintenez le logo Instagram appuyé pour changer l’icône de l’app"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "Garde visible le flou de bord de défilement d'iOS 26 au lieu de le laisser disparaître"; +"Lets the photo sticker picker show videos too, not just photos" = "Permet au sélecteur de sticker photo d’afficher aussi des vidéos, pas seulement des photos"; +"Liquid glass tab bar" = "Barre d’onglets Liquid Glass"; +"Live" = "Live"; +"Hold the eyedropper in stories to pick an exact text color" = "Maintiens la pipette dans les stories pour choisir une couleur précise"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "Maintenez la roue chromatique dans les éditeurs de stickers pour choisir une couleur unie ou dégradée"; +"Long-press the heart button in a live to hide or show the comments" = "Maintenez le bouton cœur dans un live pour masquer ou afficher les commentaires"; +"Long-press the search tab to open a copied Instagram link" = "Maintenez l’onglet de recherche pour ouvrir un lien Instagram copié"; +"Master switch. When off, all per-surface toggles below are ignored." = "Interrupteur principal. Désactivé, tous les boutons par surface ci-dessous sont ignorés."; +"No suggested chats" = "Aucune discussion suggérée"; +"No suggested users" = "Aucun utilisateur suggéré"; +"Notes" = "Notes"; +"Open app icon picker" = "Ouvrir le sélecteur d’icône"; +"Open link from clipboard" = "Ouvrir le lien du presse-papiers"; +"Open links in external browser" = "Ouvrir les liens dans un navigateur externe"; +"Opens links in Safari instead of Instagram's in-app browser" = "Ouvre les liens dans Safari au lieu du navigateur intégré d’Instagram"; +"Privacy" = "Confidentialité"; +"Removes ads across enabled surfaces" = "Supprime les pubs sur les surfaces activées"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "Supprime igsh, utm_source et d’autres paramètres de suivi des liens partagés"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "Supprime les redirections de suivi Instagram (l.instagram.com) et les paramètres UTM/fbclid des URL"; +"Replace domain in shared links" = "Remplacer le domaine des liens partagés"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "Remplace les dates relatives d’IG (\"3d ago\") par un format personnalisé. Choisissez dans le sélecteur où l’appliquer."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "Réécrit les liens copiés/partagés avec un domaine adapté aux aperçus dans Discord, Telegram, etc."; +"Stops search bars from saving your recent searches" = "Empêche les barres de recherche d'enregistrer tes recherches récentes"; +"Selected" = "Sélectionné"; +"Sharing" = "Partage"; +"Shopping" = "Shopping"; +"Skip sensitive content covers" = "Ignorer les voiles de contenu sensible"; +"Solid color" = "Couleur unie"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "Publications sponsorisées dans les fils principal, contextuel, vidéo et de chaînage"; +"Sponsored posts on the explore grid" = "Publications sponsorisées sur la grille d'exploration"; +"Stops Instagram's in-app surveys and feedback prompts" = "Bloque les sondages et demandes d'avis intégrés à Instagram"; +"Sponsored reels in the sundial feed" = "Reels sponsorisés dans le fil sundial"; +"Start" = "Début"; +"Story ads and sponsored entries in the story tray" = "Pubs de stories et entrées sponsorisées dans le bandeau des stories"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "Badges de statistiques sur les publications et reels dans la recherche et l’exploration. Ouvrez Détails de la carte pour choisir les statistiques affichées, les réorganiser, puis appliquer."; +"Strip tracking from links" = "Retirer le suivi des liens"; +"Strip tracking params" = "Retirer les paramètres de suivi"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "Supprime le rappel « It’s time to update Instagram Beta »"; +"Tap to apply" = "Toucher pour appliquer"; +"The selected icon will be saved and shown here the next time you open this page." = "L’icône sélectionnée sera enregistrée et affichée ici la prochaine fois que vous ouvrirez cette page."; +"Toggle live comments" = "Afficher/masquer les commentaires de live"; +"Use detailed color picker" = "Utiliser le sélecteur de couleur détaillé"; +"Used across feed, stories, reels, and DMs." = "Utilisé dans le fil, les stories, les reels et les DM"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "il y a %ld jour"; +"%ld days ago" = "il y a %ld jours"; +"%ld hour ago" = "il y a %ld heure"; +"%ld hours ago" = "il y a %ld heures"; +"%ld minute ago" = "il y a %ld minute"; +"%ld minutes ago" = "il y a %ld minutes"; +"%ld week ago" = "il y a %ld semaine"; +"%ld weeks ago" = "il y a %ld semaines"; +"%ldd" = "%ldj"; +"%ldh" = "%ldh"; +"%ldm" = "%ldm"; +"%ldw" = "%ldsem"; +"Always ask" = "Toujours demander"; +"Balanced" = "Équilibré"; +"Block all" = "Tout bloquer"; +"Block selected" = "Bloquer la sélection"; +"Button" = "Bouton"; +"Date format — %@" = "Format de date — %@"; +"Default" = "Par défaut"; +"Disabled" = "Désactivé"; +"Download and share" = "Télécharger et partager"; +"Download to Photos" = "Télécharger dans Photos"; +"Save with music" = "Enregistrer avec la musique"; +"Gallery with music" = "Galerie avec la musique"; +"Save image (no music)" = "Enregistrer l'image (sans musique)"; +"Gallery image (no music)" = "Image dans la galerie (sans musique)"; +"Photo with music" = "Photo avec musique"; +"Enabled" = "Activé"; +"Expand" = "Agrandir"; +"Explore" = "Explorer"; +"Fast" = "Rapide"; +"Feed" = "Fil"; +"Feed posts" = "Publications du fil"; +"High" = "Élevé"; +"Inbox" = "Boîte de réception"; +"just now" = "à l’instant"; +"Low" = "Faible"; +"Max" = "Max"; +"Medium" = "Moyen"; +"Mute/Unmute" = "Couper/rétablir le son"; +"Notes, comments, stories" = "Notes, commentaires, stories"; +"now" = "maintenant"; +"Open menu" = "Ouvrir le menu"; +"Pause/Play" = "Pause/lecture"; +"Profile" = "Profil"; +"Quality" = "Qualité"; +"Reels" = "Reels"; +"Requires restart" = "Redémarrage requis"; +"Save to Photos" = "Enregistrer dans Photos"; +"Share sheet" = "Feuille de partage"; +"Standard" = "Standard"; +"Toggle" = "Interrupteur"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "Fil en grille"; +"Browse your home feed as a grid of posts" = "Parcourez votre fil d’accueil sous forme de grille de publications"; +"Hide stories in grid" = "Masquer les stories dans la grille"; +"Taller cells" = "Cellules plus hautes"; +"Portrait tiles instead of squares" = "Tuiles en portrait au lieu de carrées"; +"Open post" = "Ouvrir la publication"; +"View profile" = "Voir le profil"; +"Like" = "J’aime"; +"Liked" = "Aimé"; +"Unlike" = "Ne plus aimer"; +"Unliked" = "J’aime retiré"; +"Followed" = "Abonné"; +"Unfollowed" = "Désabonné"; +"Couldn't update like" = "Impossible de mettre à jour le J’aime"; +"Couldn't update follow" = "Impossible de mettre à jour l’abonnement"; +"Follow status" = "Statut d’abonnement"; +"Shares" = "Partages"; +"Relative" = "Relatif"; +"Date and time" = "Date et heure"; +"You're all caught up" = "Vous êtes à jour"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "Remplace le fil d'accueil par une grille de publications. Basculer vers le fil d'Instagram garde la fonction activée et lui rend le fil aussitôt. Pincez pour changer les colonnes, touchez une publication pour l'ouvrir. Le sélecteur Pour vous / Abonnements reste synchronisé avec Fil principal."; +"Switch button" = "Bouton de bascule"; +"Hold the heart button" = "Appui long sur le bouton cœur"; +"Floating button" = "Bouton flottant"; +"How to switch" = "Comment basculer"; +"Hold the heart in Instagram's header" = "Appui long sur le cœur dans l'en-tête d'Instagram"; +"A small round button on the feed" = "Un petit bouton rond sur le fil"; +"Button position" = "Position du bouton"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "Faites glisser le bouton où vous voulez. Les bandes grisées sont l'en-tête et la barre d'onglets d'Instagram."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "Bascule entre la grille et le fil d'Instagram sans désactiver la grille. Désactivé, le raccourci de la barre d'accueil reste le seul moyen."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "Le bouton ne passe jamais sous l'en-tête ni sous la barre d'onglets. Maintenez-le appuyé dans le fil pour revenir ici."; +"Live preview" = "Aperçu en direct"; +"Columns" = "Colonnes"; +"Post info" = "Infos de la publication"; +"Reorder and toggle stats on each tile" = "Réordonner et activer/désactiver les statistiques sur chaque tuile"; +"Info on each post" = "Infos sur chaque publication"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "Activez ou désactivez chaque élément. Faites glisser la poignée ≡ pour réorganiser leur empilement sur la tuile."; +"Show avatar" = "Afficher l’avatar"; +"Media type badge" = "Badge de type de média"; +"Restores the default post info, order and options for the grid feed." = "Restaure les infos de publication, l’ordre et les options par défaut du fil en grille."; +"Views" = "Vues"; +"Action button" = "Bouton d’action"; +"Adds 'Profile picture' to story tray long-press menus" = "Ajoute « Photo de profil » aux menus d’appui long du bandeau des stories"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Ajoute un bouton d’action RyukGram sous chaque publication du fil avec des options télécharger/partager/copier/agrandir/repost. Par défaut, un toucher ouvre le menu ; changez ce comportement ci-dessous."; +"Choose Instagram's default feed or force the Following feed" = "Choisir le fil par défaut d’Instagram ou forcer le fil Abonnements"; +"Main feed" = "Fil principal"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "Contrôle quand et comment le fil se rafraîchit. Le rafraîchissement en arrière-plan se produit au retour dans l’app après environ 10 minutes. Le bouton Accueil rafraîchit le fil quand vous touchez l’onglet Accueil alors que vous y êtes déjà."; +"Confirm feed refresh" = "Confirmer le rafraîchissement du fil"; +"Shows an alert before a pull-to-refresh reloads the feed" = "Affiche une alerte avant que le tirer-rafraîchir ne recharge le fil"; +"Refresh stories only" = "Rafraîchir uniquement les stories"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "Le tirer-rafraîchir recharge le bandeau des stories sans rafraîchir le fil"; +"Refresh feed?" = "Rafraîchir le fil ?"; +"Default tap action" = "Action par défaut au toucher"; +"Disable background refresh" = "Désactiver le rafraîchissement en arrière-plan"; +"Disable home button refresh" = "Désactiver le rafraîchissement par Accueil"; +"Disable home button scroll" = "Désactiver le défilement par Accueil"; +"Disable video autoplay" = "Désactiver la lecture automatique des vidéos"; +"Hide" = "Masquer"; +"Hide entire feed" = "Masquer tout le fil"; +"Hide repost button" = "Masquer le bouton de repost"; +"Hide stories tray" = "Masquer le bandeau des stories"; +"Hide suggested stories" = "Masquer les stories suggérées"; +"Hide story highlights" = "Masquer les stories à la une"; +"Removes resurfaced highlights from the stories tray in feed" = "Supprime les stories à la une réapparues dans la barre des stories du fil"; +"Hides suggested accounts" = "Masque les comptes suggérés"; +"Hides suggested reels" = "Masque les reels suggérés"; +"Hides suggested threads posts" = "Masque les publications Threads suggérées"; +"Hides the repost button on feed posts" = "Masque le bouton de repost sur les publications du fil"; +"Hides the story tray at the top" = "Masque le bandeau des stories en haut"; +"Inserts a button row below like/comment/share on each post" = "Insère une rangée de boutons sous J’aime/commenter/partager sur chaque publication"; +"Long press on media to expand in full-screen viewer" = "Appui long sur le média pour l’agrandir en plein écran"; +"Start media muted" = "Démarrer le média en sourdine"; +"Expanded videos open with sound off" = "Les vidéos agrandies s’ouvrent sans le son"; +"Enhanced media resolution" = "Résolution média améliorée"; +"Media saving" = "Enregistrement des médias"; +"Spoof device profile so IG serves higher-quality images" = "Falsifier le profil de l’appareil pour qu’IG fournisse des images de meilleure qualité"; +"Media" = "Média"; +"Media zoom" = "Zoom média"; +"No suggested for you" = "Aucune suggestion pour vous"; +"No suggested posts" = "Aucune publication suggérée"; +"No suggested reels" = "Aucun reel suggéré"; +"No suggested threads" = "Aucun Threads suggéré"; +"Prevents feed from reloading when returning from background" = "Empêche le fil de se recharger au retour depuis l’arrière-plan"; +"Prevents videos from playing automatically" = "Empêche les vidéos de se lancer automatiquement"; +"Refresh" = "Rafraîchir"; +"Removes all content from your home feed" = "Supprime tout le contenu de votre fil d’accueil"; +"Removes suggested accounts from the stories tray" = "Supprime les comptes suggérés du bandeau des stories"; +"Removes suggested posts" = "Supprime les publications suggérées"; +"Scroll to top without refreshing when tapping Home" = "Remonter en haut sans rafraîchir en touchant Accueil"; +"Show action button" = "Afficher le bouton d’action"; +"Show date" = "Afficher la date"; +"Stories tray" = "Bandeau des stories"; +"Tapping Home does nothing when already on feed" = "Toucher Accueil ne fait rien lorsque vous êtes déjà sur le fil"; +"Tray long-press actions" = "Actions d’appui long du bandeau"; +"Composer doesn't accept GIFs" = "L’éditeur n’accepte pas les GIF"; +"Copy GIF link" = "Copier le lien du GIF"; +"Copy image link" = "Copier le lien de l’image"; +"Custom GIF in comments" = "GIF personnalisé dans les commentaires"; +"Favorite GIFs" = "GIF favoris"; +"Long-press a GIF in the picker to pin it — favorites show first" = "Maintenez un GIF dans le sélecteur pour l'épingler — les favoris s'affichent en premier"; +"Added to favorites" = "Ajouté aux favoris"; +"Removed from favorites" = "Retiré des favoris"; +"Favorite GIF unavailable" = "GIF favori indisponible"; +"This GIF may have been removed. Long-press it to unfavorite." = "Ce GIF a peut-être été supprimé. Appuyez longuement pour le retirer des favoris."; +"Failed to build GIF model" = "Échec de la création du modèle GIF"; +"GIF link copied" = "Lien du GIF copié"; +"Image" = "Image"; +"Image link copied" = "Lien de l’image copié"; +"Invalid Giphy URL" = "URL Giphy invalide"; +"Long-press the GIF button to paste any Giphy URL" = "Maintenez le bouton GIF pour coller n’importe quelle URL Giphy"; +"Paste Giphy Link" = "Coller le lien Giphy"; +"Paste a giphy.com URL or media ID" = "Collez une URL giphy.com ou un identifiant de média"; +"Send" = "Envoyer"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Ajoute un bouton d’action RyukGram au-dessus de la barre latérale des reels avec voir-couverture/télécharger/partager/copier/agrandir/repost. Par défaut, un toucher ouvre le menu ; changez ce comportement ci-dessous."; +"Always show progress scrubber" = "Toujours afficher la barre de progression"; +"Auto-scroll reels" = "Défilement automatique des reels"; +"Speed, seek and auto-scroll controls" = "Contrôles de vitesse, navigation et défilement automatique"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "Les contrôles activés apparaissent en maintenant le bouton ⋯ ou audio d'un reel."; +"Seek controls" = "Contrôles de navigation"; +"Auto-scroll control" = "Contrôle du défilement automatique"; +"Seek" = "Navigation"; +"Custom seek step" = "Saut personnalisé"; +"Enter the number of seconds to skip" = "Saisissez le nombre de secondes à sauter"; +"Set what a tap on a reel does" = "Définit l'action d'un appui sur un reel"; +"Confirm reel refresh" = "Confirmer le rafraîchissement des reels"; +"Custom speed" = "Vitesse personnalisée"; +"Disable auto-unmuting reels" = "Désactiver le rétablissement automatique du son des reels"; +"Disable scrolling reels" = "Désactiver le défilement des reels"; +"Disable tab button refresh" = "Désactiver le rafraîchissement par l’onglet"; +"Doom scrolling limit" = "Limite de défilement infini"; +"e.g. 1.75" = "ex. 1,75"; +"Enter a value between 0.5 and 2.0" = "Saisir une valeur entre 0,5 et 2,0"; +"Keeps the progress bar visible on every reel" = "Garde la barre de progression visible sur chaque reel"; +"Hide \"Made with Edits\" badge" = "Masquer le badge « Made with Edits »"; +"Hide friends avatars" = "Masquer les avatars des amis"; +"Hide reels header" = "Masquer l’en-tête des reels"; +"Hide social context overlay" = "Masquer la superposition de contexte social"; +"Hides the avatar bubbles next to the Friends tab in reels" = "Masque les bulles d’avatar à côté de l’onglet Amis dans les reels"; +"Hides the Edits app promo pill on reels" = "Masque la pastille promotionnelle de l’app Edits sur les reels"; +"Hides the floating overlay showing who reposted or commented on reels" = "Masque la superposition flottante indiquant qui a reposté ou commenté les reels"; +"Hides the repost button on the reels sidebar" = "Masque le bouton de repost dans la barre latérale des reels"; +"Drops the top bar while you watch reels" = "Masque la barre supérieure pendant que tu regardes des reels"; +"Hiding" = "Masquage"; +"IG default" = "Par défaut IG"; +"Limits" = "Limites"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "Limite le nombre de reels enchaînés et bloque l'actualisation"; +"Only loads %@ %@" = "Charge seulement %@ %@"; +"Places a button above the like/comment/share column on each reel" = "Place un bouton au-dessus de la colonne J’aime/commenter/partager sur chaque reel"; +"Playback speed" = "Vitesse de lecture"; +"Prevent doom scrolling" = "Empêcher le défilement infini"; +"Engagement filter" = "Filtre d'engagement"; +"Hide reels below a like, comment, view or repost count" = "Masque les reels sous un seuil de j'aime, commentaires, vues ou republications"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "Masque les reels qui n'atteignent pas chaque minimum défini. Les reels dont l'auteur masque les compteurs passent quand même, sauf si vous les masquez aussi."; +"Filter reels by engagement" = "Filtrer les reels par engagement"; +"Hide reels with hidden stats" = "Masquer les reels aux statistiques masquées"; +"Only filter the Reels tab" = "Filtrer uniquement l'onglet Reels"; +"Reels you open from a post, profile or share are never filtered" = "Les reels ouverts depuis une publication, un profil ou un partage ne sont jamais filtrés"; +"Minimums" = "Minimums"; +"Minimum likes" = "Minimum de j'aime"; +"Minimum comments" = "Minimum de commentaires"; +"Minimum views" = "Minimum de vues"; +"Minimum reposts" = "Minimum de republications"; +"Reels below this count are hidden. 0 turns this limit off." = "Les reels sous ce nombre sont masqués. 0 désactive cette limite."; +"Turns the filter off and clears every minimum." = "Désactive le filtre et efface tous les minimums."; +"Locks a reel in place so it never scrolls to the next one" = "Verrouille un reel en place pour qu'il ne passe jamais au suivant"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "Empêche les reels de réactiver le son quand tu touches le volume ou la sonnerie"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Demande confirmation avant d'actualiser le fil de reels"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "Affiche des boutons pour révéler et remplir automatiquement le mot de passe des reels verrouillés"; +"Same as general format" = "Identique au format général"; +"Shows the repost date on the \"reposted this reel\" header." = "Affiche la date de repartage dans l'en-tête « a reposté ce reel »."; +"Reposts" = "Reposts"; +"Swipe a reel left to open the author's profile" = "Glissez un reel vers la gauche pour ouvrir le profil de l’auteur"; +"Swipe left to profile" = "Glisser à gauche vers le profil"; +"Tap Controls" = "Contrôles au toucher"; +"Tap to mute on photo reels" = "Toucher pour couper le son des reels photo"; +"Tapping the Reels tab while on reels does nothing" = "Toucher l’onglet Reels depuis les reels ne fait rien"; +"Unlock password-locked reels" = "Déverrouiller les reels protégés par mot de passe"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "Quand le mode pause est activé, toucher les reels photo active/coupe le son au lieu du geste de pause natif"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "Ajoute un bouton pour filtrer et trier n'importe quelle liste d'abonnés/abonnements. Réinitialisé à la sortie."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "Ajoute une option d’affichage au menu d’appui long des stories à la une pour ouvrir la couverture en plein écran"; +"Applying restarts Instagram to load your changes." = "Appliquer redémarre Instagram pour charger vos modifications."; +"Card details" = "Détails de la carte"; +"Comment count" = "Nombre de commentaires"; +"Copy note on long press" = "Copier la note par appui long"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "Statistiques supplémentaires sur chaque carte de publication et de reel dans les grilles de profil — choisissez lesquelles, réorganisez-les, puis appliquez."; +"Fake follower count" = "Faux nombre d’abonnés"; +"Fake following count" = "Faux nombre d’abonnements"; +"Fake post count" = "Faux nombre de publications"; +"Fake profile stats" = "Fausses stats de profil"; +"Fake verified badge" = "Faux badge vérifié"; +"Fetch missing counts" = "Récupérer les compteurs manquants"; +"Filter & sort lists" = "Filtrer et trier les listes"; +"Follow indicator" = "Indicateur d’abonnement"; +"Follower & following lists" = "Listes d'abonnés et d'abonnements"; +"Follower count" = "Nombre d’abonnés"; +"Following count" = "Nombre d’abonnements"; +"Like count" = "Nombre de J’aime"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "Appui long sur une photo de profil pour l’ouvrir en plein écran avec zoom, partage et enregistrement"; +"Long press the note bubble on a profile to copy the text" = "Appui long sur la bulle de note d’un profil pour copier le texte"; +"Long press to download directly (ignored when zoom is on)" = "Appui long pour télécharger directement (ignoré quand le zoom est activé)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "Gestes d’appui long sur les éléments du profil — séparés des boutons d’action propres à chaque fonctionnalité."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "Interrupteur principal pour toutes les statistiques de la carte. Récupérer les compteurs manquants utilise l’API d’Instagram et peut atteindre les limites de requêtes."; +"Only affects your own profile header. Other users see the real numbers." = "N’affecte que l’en-tête de votre propre profil. Les autres utilisateurs voient les vrais chiffres."; +"Post count" = "Nombre de publications"; +"Profile card details" = "Détails de la carte de profil"; +"Profile stats" = "Stats du profil"; +"Repost count" = "Nombre de reposts"; +"Restores the default stats, order, and options for profile card details." = "Restaure les statistiques, l’ordre et les options par défaut des détails de la carte de profil."; +"Restores the default stats, order, and options for search & explore card details." = "Restaure les statistiques, l’ordre et les options par défaut des détails des cartes de recherche et d’exploration."; +"Save profile picture" = "Enregistrer la photo de profil"; +"Search & Explore" = "Recherche et exploration"; +"Share count" = "Nombre de partages"; +"Short numbers" = "Nombres abrégés"; +"Show a checkmark next to your name on your own profile" = "Affiche une coche à côté de votre nom sur votre propre profil"; +"Show card details" = "Afficher les détails de la carte"; +"Show full follower count" = "Afficher le nombre complet d’abonnés"; +"Show full post count" = "Afficher le nombre complet de publications"; +"Show the custom number set below" = "Affiche le nombre personnalisé défini ci-dessous"; +"Show the exact number instead of a shortened one" = "Affiche le nombre exact au lieu de la version abrégée"; +"Shows whether the profile user follows you" = "Indique si l’utilisateur du profil vous suit"; +"Tap to set" = "Toucher pour définir"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "Activez ou désactivez chaque statistique. Faites glisser la poignée ≡ pour réorganiser leur empilement sur la carte."; +"Upload date" = "Date de publication"; +"View count" = "Nombre de vues"; +"View highlight cover" = "Voir la couverture de la story à la une"; +"Views, likes, comments, shares, reposts, date" = "Vues, J’aime, commentaires, partages, reposts, date"; +"Zoom profile photo" = "Zoomer la photo de profil"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "Téléchargements actifs, en file et terminés"; +"Auto-retry attempts" = "Tentatives auto."; +"Auto-retry failed downloads" = "Réessayer auto. les téléchargements échoués"; +"Confirm before download" = "Confirmer avant téléchargement"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "Obsolète. Le bouton d’action RyukGram (configuré par fonctionnalité dans Fil/Reels/Stories) est la nouvelle méthode pour télécharger les médias. Activez ce réglage principal seulement si vous préférez l’ancien appui long à plusieurs doigts directement sur le média."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "Ne pas suspendre les téléchargements, l'encodage ou les scans de profil quand vous quittez l'app"; +"Download queue" = "File de téléchargement"; +"Downloads" = "Téléchargements"; +"Downloads with %@ %@" = "Télécharge avec %@ %@"; +"Enable long-press gesture" = "Activer le geste d’appui long"; +"Finger count for long-press" = "Nombre de doigts pour l’appui long"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "Combien de téléchargements s'exécutent à la fois — les autres attendent dans la file et démarrent dès qu'une place se libère. Les téléchargements échoués réessaient automatiquement en cas d'erreur réseau. Ouvrez le gestionnaire pour suivre, annuler ou relancer les téléchargements."; +"Keep running in background" = "Continuer en arrière-plan"; +"Legacy long-press gesture" = "Ancien geste d’appui long"; +"Long-press hold time" = "Durée de maintien de l’appui long"; +"Master toggle for the deprecated gesture workflow (off by default)" = "Réglage principal de l’ancien flux par geste (désactivé par défaut)"; +"Max simultaneous downloads" = "Téléchargements simultanés max."; +"Open download manager" = "Ouvrir le gestionnaire de téléchargements"; +"Press finger(s) for %@ %@" = "Appuyez avec le(s) doigt(s) pendant %@ %@"; +"Retry automatically when a download drops on a network error" = "Réessayer automatiquement quand un téléchargement échoue sur une erreur réseau"; +"Route saves into a custom album in Photos instead of the camera roll root" = "Enregistrer dans un album dédié dans Photos plutôt qu’à la racine de la pellicule"; +"Run up to %@ %@ at once" = "Exécuter jusqu'à %@ %@ à la fois"; +"Save action" = "Action d’enregistrement"; +"Save to dedicated album" = "Enregistrer dans un album dédié"; +"Show a confirmation dialog before starting a download" = "Afficher une confirmation avant de lancer un téléchargement"; +"Try %@ more %@ before giving up" = "Essayer encore %@ %@ avant d'abandonner"; +"What happens after the gesture downloads" = "Ce qui se passe après le téléchargement par geste"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "Quand « Enregistrer dans un album dédié » est activé, les téléchargements et les choix « Enregistrer dans Photos » de la feuille de partage sont dirigés vers un album nommé dans votre photothèque. Appuyez sur « Nom de l'album » pour le changer."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "%@ restant"; +"%@ of %@" = "%1$@ sur %2$@"; +"%@/s" = "%@/s"; +"%dh" = "%d h"; +"%dm" = "%d min"; +"%ds" = "%d s"; +"%ld downloading" = "%ld en cours"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld sont encore en cours et seront arrêtés. Les fichiers déjà enregistrés sont conservés."; +"%lu failed" = "%lu échec(s)"; +"%lu of %lu done" = "%lu sur %lu terminés"; +"%lu saved, %lu failed" = "%lu enregistrés, %lu échecs"; +"12 hours" = "12 heures"; +"1s" = "1 s"; +"24 hours" = "24 heures"; +"48 hours" = "48 heures"; +"Active" = "Actif"; +"Auto-retry" = "Nouvelle tentative auto."; +"Clear completed" = "Effacer les terminés"; +"Clear download history" = "Effacer l'historique des téléchargements"; +"Clear download history?" = "Effacer l'historique des téléchargements ?"; +"Completed" = "Terminé"; +"Don't keep" = "Ne pas conserver"; +"Download history" = "Historique des téléchargements"; +"Download settings" = "Réglages de téléchargement"; +"Downloading %lu items" = "Téléchargement de %lu éléments"; +"Downloading…" = "Téléchargement…"; +"Empty the manager's list of past downloads" = "Vide la liste des téléchargements passés du gestionnaire"; +"Encoding %d%%" = "Encodage %d%%"; +"Encoding…" = "Encodage…"; +"Extra downloads wait in line and start as slots free up." = "Les téléchargements supplémentaires attendent dans la file et démarrent dès qu'une place se libère."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "Durée pendant laquelle les téléchargements terminés, échoués et annulés restent dans le gestionnaire après la fermeture de l'app. Les fichiers ne sont jamais touchés, seulement la liste."; +"How long past downloads stay listed in the manager" = "Durée d'affichage des téléchargements passés dans le gestionnaire"; +"Keep history for" = "Conserver l'historique pendant"; +"Media you download shows up here, with its progress and where it was saved." = "Les médias que vous téléchargez apparaissent ici, avec leur progression et leur destination."; +"No downloads yet" = "Aucun téléchargement pour l'instant"; +"Preview" = "Aperçu"; +"Queued" = "En file"; +"Redownload" = "Retélécharger"; +"Retry" = "Réessayer"; +"Retrying…" = "Nouvelle tentative…"; +"Stop" = "Arrêter"; +"The files already saved are kept — this only empties the list." = "Les fichiers déjà enregistrés sont conservés, cela vide seulement la liste."; +"Waiting for a free slot" = "En attente d'un créneau libre"; +"Waiting for connection…" = "En attente de connexion…"; +"Waiting to retry" = "En attente de nouvelle tentative"; +"Waiting…" = "En attente…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "Disposer les boutons superposés"; +"Overlay layout" = "Disposition superposée"; +"Drag to position the buttons" = "Faites glisser pour positionner les boutons"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "Faites glisser les boutons sur la story. La bande grisée est la barre de réponse."; +"Send message" = "Envoyer un message"; + +"Pinned" = "Épinglés"; +"Search viewers" = "Rechercher des spectateurs"; +"No matching viewers" = "Aucun spectateur correspondant"; +"No viewers match these filters" = "Aucun spectateur ne correspond à ces filtres"; +"Unavailable" = "Indisponible"; +"Default (recent first)" = "Par défaut (récents d'abord)"; +"%lu viewers" = "%lu spectateurs"; +"Viewer pinned" = "Spectateur épinglé"; +"Viewer unpinned" = "Spectateur désépinglé"; +"Pin a viewer" = "Épingler un spectateur"; +"Pin order" = "Ordre d'épinglage"; +"Pin this viewer?" = "Épingler ce spectateur ?"; +"Filter, sort & pin viewers" = "Filtrer, trier et épingler les spectateurs"; +"Add by username, remove, reorder" = "Ajouter par nom d'utilisateur, supprimer, réordonner"; +"Pinned viewers (%lu)" = "Spectateurs épinglés (%lu)"; +"Viewers list" = "Liste des spectateurs"; +"Settings are saved and reused next time." = "Les réglages sont enregistrés et réutilisés la prochaine fois."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "Cochez-en plusieurs pour les combiner. Les spectateurs épinglés restent toujours en haut et ignorent ces filtres."; +"Pinned viewers" = "Spectateurs épinglés"; +"Pin" = "Épingler"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "Remplace la liste « qui a vu votre story » par une liste avec recherche, filtres et tri. Appuyez longuement sur un spectateur pour l'épingler en haut. Revenez à la liste native à tout moment."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "Nom d'utilisateur ou PK brut. Les spectateurs épinglés restent toujours en haut de la liste des spectateurs de votre story."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "Ajoute un bouton d’action RyukGram à côté du bouton œil sur les stories avec télécharger/partager/copier/agrandir/repost/voir les mentions. Par défaut, un toucher ouvre le menu ; changez ce comportement ci-dessous."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "Ajoute un bouton haut-parleur sur les stories pour activer/couper le son. Aussi disponible dans le menu à trois points"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "Ajoute le bouton œil sur les stories. Désactivé, le blocage des vues reste actif sans le bouton"; +"Advance on story like" = "Avancer après un J’aime sur une story"; +"Advance on story reply" = "Avancer après une réponse à une story"; +"Advance when marking as seen" = "Avancer au marquage comme vue"; +"Audio" = "Audio"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "Tout bloquer : toutes les stories sont bloquées — les utilisateurs listés sont des exceptions.\nBloquer la sélection : seuls les utilisateurs listés sont bloqués — le reste est normal.\nLes deux listes sont enregistrées indépendamment."; +"Blocking mode" = "Mode de blocage"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "Bouton = un toucher marque comme vue. Interrupteur = toucher active/désactive les accusés de lecture des stories (l’œil devient bleu quand c’est activé)"; +"Marked-seen indicator" = "Indicateur de story marquée vue"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "Retient 48 heures les stories marquées comme vues et masque ou remplit le bouton œil dessus"; +"Hide eye button" = "Masquer le bouton œil"; +"Fill eye button green" = "Remplir le bouton œil en vert"; +"Disable story seen receipt" = "Désactiver l’accusé de vue des stories"; +"Enable story user list" = "Activer la liste d’utilisateurs des stories"; +"Stops others from seeing that you viewed their story" = "Empêche les autres de voir que tu as vu leur story"; +"Inserts a button next to the seen/eye button on story overlays" = "Insère un bouton à côté du bouton vu/œil sur les stories"; +"Keep stories visually seen locally" = "Garder les stories vues localement"; +"Liking a story automatically advances to the next one after a short delay" = "Aimer une story passe automatiquement à la suivante après un court délai"; +"Manage list" = "Gérer la liste"; +"Manage list (%lu)" = "Gérer la liste (%lu)"; +"Manual seen button mode" = "Mode du bouton vu manuel"; +"Mark seen on story like" = "Marquer comme vue lors d’un J’aime"; +"Mark seen on story reply" = "Marquer comme vue lors d’une réponse"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "Marque une story comme vue dès que vous touchez le cœur, même avec le blocage des vues activé"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "Marque une story comme vue quand vous envoyez une réponse ou une réaction emoji, même avec le blocage des vues activé"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "Marque les stories comme vues localement (anneau gris) tout en bloquant l’accusé de vue côté serveur"; +"Master toggle. When off, the list is ignored" = "Réglage principal. Désactivé, la liste est ignorée"; +"Playback" = "Lecture"; +"Search, sort, swipe to remove" = "Rechercher, trier, balayer pour supprimer"; +"Seen receipts" = "Accusés de vue"; +"Sending a reply or emoji reaction automatically advances to the next story" = "Envoyer une réponse ou une réaction emoji passe automatiquement à la story suivante"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "Ajoute une entrée « Voir les mentions » au menu du bouton d’action et au menu à trois points des stories"; +"Mentions overlay button" = "Bouton de superposition des mentions"; +"Mentions count badge" = "Badge de compteur de mentions"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "Ajoute un bouton à côté du bouton action/œil sur les stories. N’apparaît que lorsque la story actuelle contient des mentions ou des publications/reels partagés"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "Affiche le nombre de comptes mentionnés uniques sous forme de badge rouge sur le bouton de superposition"; +"Hide stories midcards" = "Masquer les cartes intermédiaires des stories"; +"Removes the Trending and Music promo cards from the stories tray" = "Supprime les cartes promotionnelles Tendances et Musique du bandeau des stories"; +"Stickers" = "Stickers"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "Voir les résultats des sondages/quiz/curseurs avant d’interagir — vous pouvez toujours toucher pour voter normalement. Forcer l’ancien rétablit les stickers Quiz et Reveal dans l’éditeur de story."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "Voir les résultats des sondages/quiz/curseurs sur les reels avant d’interagir — vous pouvez toujours toucher pour voter normalement."; +"Force legacy stickers in tray" = "Forcer les anciens stickers dans le tiroir"; +"Adds Quiz and Reveal stickers back to the picker" = "Réajoute les stickers Quiz et Reveal au sélecteur"; +"Bypass Reveal sticker" = "Contourner le sticker Reveal"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "Ignorer l’étape « DM pour révéler » sur les stories avec un sticker Reveal"; +"Show quiz answer" = "Afficher la réponse du quiz"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "Entoure la bonne option sur les stickers quiz, ou l’option en tête sur les sondages"; +"Show poll vote counts" = "Afficher le nombre de votes des sondages"; +"Show vote tallies on poll options and slider count/average before you vote" = "Affiche les totaux de vote sur les options de sondage et le nombre/la moyenne des curseurs avant votre vote"; +"Stop story auto-advance" = "Arrêter l’avance automatique des stories"; +"Stories" = "Stories"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "Les stories ne passeront plus automatiquement à la suivante à la fin du minuteur. Touchez pour avancer manuellement"; +"Story audio toggle" = "Interrupteur audio des stories"; +"Story user list" = "Liste d’utilisateurs des stories"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "Toucher le bouton œil pour marquer une story comme vue passe automatiquement à la suivante"; +"This will send a story view receipt." = "Un accusé de vue sera envoyé pour cette story."; +"View story mentions" = "Voir les mentions de story"; +"Which stories get seen-receipt blocking" = "Stories concernées par le blocage des accusés de vue"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "Statut actif précis"; +"Activity log" = "Journal d'activité"; +"Loading…" = "Chargement…"; +"Notify: %@ · Log: %@" = "Notif : %@ · Journal : %@"; +"Add by user ID" = "Ajouter par identifiant"; +"Add by thread ID" = "Ajouter par ID de conversation"; +"Adding…" = "Ajout…"; +"Browse activity, grouped by person" = "Parcourir l'activité, regroupée par personne"; +"Clear activity log?" = "Effacer le journal d'activité ?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "Aucune activité pour l'instant.\nQuand quelqu'un lit votre message ou se connecte, ça apparaît ici."; +"No one found. Check the spelling or try a different name." = "Personne trouvé. Vérifiez l'orthographe ou essayez un autre nom."; +"Notify about someone" = "Notifier au sujet de quelqu'un"; +"Open some chats first, or search a username above." = "Ouvrez d'abord des conversations, ou cherchez un nom d'utilisateur ci-dessus."; +"Pick what each person notifies you about" = "Choisissez ce que chaque personne vous notifie"; +"Recent in your DMs" = "Récents dans vos messages"; +"Results" = "Résultats"; +"This removes all recorded activity on this device." = "Ceci supprime toute l'activité enregistrée sur cet appareil."; +"Active %ldd ago" = "Actif il y a %ldd"; +"Active %ldh ago" = "Actif il y a %ldh"; +"Active %ldm ago" = "Actif il y a %ldm"; +"Activity notifications" = "Notifications d'activité"; +"Also track reads in group chats. Groups can be noisy" = "Suivre aussi les lectures dans les groupes. Ils peuvent être bruyants"; +"Came online" = "S'est connecté"; +"Customise notifications" = "Personnaliser les notifications"; +"Everyone" = "Tout le monde"; +"Muted" = "Muet"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "Personne n'est encore personnalisé. Maintenez quelqu'un dans le journal d'activité pour choisir ce qu'il notifie."; +"Online, offline, typing and read receipts, per person" = "En ligne, hors ligne, saisie et accusés de lecture, par personne"; +"Per-person notifications" = "Notifications par personne"; +"Enable activity" = "Activer l'activité"; +"Track who reads your messages, comes online, goes offline or types" = "Suivez qui lit vos messages, se connecte, se déconnecte ou écrit"; +"For everyone" = "Pour tout le monde"; +"For this person" = "Pour cette personne"; +"Log only" = "Journal seul"; +"Notify only" = "Notifier seulement"; +"Notify + log" = "Notifier + journal"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "Journal seul enregistre en silence. Notifier seulement vous prévient sans le conserver. Notifier + journal fait les deux."; +"Presence" = "Présence"; +"Read your message" = "A lu votre message"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "Actualise la présence toutes les 20 s et supprime le délai de grâce d'Instagram, pour que le point vert s'éteigne dès que quelqu'un se déconnecte."; +"Started typing" = "A commencé à écrire"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "Touchez pour changer ce qu'il notifie. Balayez pour retirer et revenir aux valeurs par défaut."; +"These override the defaults for this person." = "Ceci remplace les valeurs par défaut pour cette personne."; +"Went offline" = "S'est déconnecté"; +"When someone becomes active" = "Quand quelqu'un devient actif"; +"When someone goes inactive" = "Quand quelqu'un devient inactif"; +"When someone opens a message you sent" = "Quand quelqu'un ouvre un message que vous avez envoyé"; +"When someone starts typing to you" = "Quand quelqu'un commence à vous écrire"; +"is now active" = "est actif maintenant"; +"is typing…" = "est en train d'écrire…"; +"went offline" = "s'est déconnecté"; +"Online" = "En ligne"; +"Offline" = "Hors ligne"; +"Typing" = "Saisie"; +"Filters" = "Filtres"; +"Delete the selected records? This can't be undone." = "Supprimer les enregistrements sélectionnés ? Cette action est irréversible."; +"Delete all records for the selected chats? This can't be undone." = "Supprimer tous les enregistrements des discussions sélectionnées ? Cette action est irréversible."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "Ajoute le bouton œil aux fils de DM. Désactivé, le blocage des accusés de lecture reste actif sans le bouton"; +"Auto mark seen on interact" = "Marquer vu automatiquement lors d’une interaction"; +"Auto mark seen on typing" = "Marquer vu automatiquement à la saisie"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "Bloque l’accusé de lecture automatique — le marquage comme vu n’a lieu que lorsque vous le décidez"; +"Control when messages are marked as seen" = "Contrôle quand les messages sont marqués comme vus"; +"How the seen button behaves" = "Comportement du bouton vu"; +"Manually mark messages as seen" = "Marquer manuellement les messages comme vus"; +"Mark as seen?" = "Marquer comme lu ?"; +"Mark as viewed?" = "Marquer comme vu ?"; +"Mark seen locally" = "Marquer comme vu localement"; +"Marks messages as seen when you reply, react or send media" = "Marque les messages comme vus quand vous répondez, réagissez ou envoyez un média"; +"Marks messages as seen when you start typing" = "Marque les messages comme vus lorsque vous commencez à écrire"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "Les discussions ouvertes apparaissent lues uniquement sur cet appareil. Le bouton œil devient orange tant que l'expéditeur n'a pas reçu d'accusé de lecture"; +"Read receipt mode" = "Mode des accusés de lecture"; +"Read receipts" = "Accusés de lecture"; +"Show seen button" = "Afficher le bouton vu"; +"This will send a read receipt for the latest messages." = "Un accusé de lecture sera envoyé pour les derniers messages."; +"This will send a view receipt for the current message." = "Un accusé de vue sera envoyé pour le message actuel."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "Activité"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "Ajoute une option « Télécharger » au menu d’appui long des messages vocaux pour les enregistrer en audio M4A"; +"Allows typing and sending DMs longer than Instagram's limit" = "Permet d’écrire et d’envoyer des DM plus longs que la limite d’Instagram"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "Ajoute une option « Envoyer un fichier » au menu plus des DM. Les types de fichiers pris en charge peuvent être limités par Instagram"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "Ajoute une option « Fichier audio » au menu plus des DM pour envoyer des fichiers audio comme messages vocaux"; +"Adds copy text, download GIF/audio to the note long-press menu" = "Ajoute copier le texte et télécharger GIF/audio au menu d’appui long des notes"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "Tout bloquer : toutes les discussions sont bloquées — les discussions listées sont des exceptions.\nBloquer la sélection : seules les discussions listées sont bloquées — le reste est normal.\nLes deux listes sont enregistrées indépendamment. Appui long sur une discussion dans la boîte de réception pour l’ajouter ou la retirer."; +"Block keep-deleted for excluded chats" = "Bloquer la conservation des supprimés pour les discussions exclues"; +"Block keep-deleted for unlisted chats" = "Bloquer la conservation des supprimés pour les discussions non listées"; +"Bypass DM character limit" = "Contourner la limite de caractères des DM"; +"Chat list" = "Liste de discussions"; +"Confirmation dialog before clearing preserved messages" = "Confirmation avant d’effacer les messages conservés"; +"Copies note text directly on long press without opening the menu" = "Copie directement le texte d’une note par appui long sans ouvrir le menu"; +"Copy text on hold" = "Copier le texte au maintien"; +"Adds Background, Text and Emoji buttons to the note editor" = "Ajoute des boutons Arrière-plan, Texte et Emoji à l’éditeur de note"; +"Custom note themes" = "Thèmes de notes personnalisés"; +"Disable vanish mode swipe" = "Désactiver le balayage du mode éphémère"; +"Disable typing status" = "Désactiver le statut de saisie"; +"Disable view-once limitations" = "Désactiver les limitations de vue unique"; +"Download voice messages" = "Télécharger les messages vocaux"; +"Enable chat list" = "Activer la liste de discussions"; +"Enable note theming" = "Activer les thèmes de notes"; +"Enables the notes theme picker" = "Active le sélecteur de thème des notes"; +"Files" = "Fichiers"; +"Full last active date" = "Date complète de dernière activité"; +"Hide reels blend button" = "Masquer le bouton Blend des reels"; +"Hide send to group chat" = "Masquer l’envoi à un groupe"; +"Pin recipients on long-press" = "Épingler les destinataires à l’appui long"; +"Long-press in the share sheet to pin a chat/user to the top" = "Appui long dans la feuille de partage pour épingler une discussion/un utilisateur en haut"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "Appui long sur un destinataire pour l’épingler ou le désépingler. Les destinataires épinglés s’affichent en haut."; +"Recipient pinned" = "Destinataire épinglé"; +"Recipient unpinned" = "Destinataire désépinglé"; +"Couldn't resolve recipient id" = "Impossible de résoudre l’ID du destinataire"; +"Hide video call button" = "Masquer le bouton d’appel vidéo"; +"Hide voice call button" = "Masquer le bouton d’appel vocal"; +"Hides the blend button in DMs" = "Masque le bouton Blend dans les DM"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "Supprime la ligne de création/envoi à un groupe lors du partage à plusieurs destinataires"; +"Hides typing indicator from others" = "Masque l’indicateur de saisie aux autres"; +"Indicate unsent messages" = "Indiquer les messages annulés"; +"Keep deleted messages" = "Conserver les messages supprimés"; +"Turns view once messages into normal media you can loop and pause" = "Transforme les messages à vue unique en médias normaux que tu peux relire et mettre en pause"; +"Note actions" = "Actions des notes"; +"Preserves messages that others unsend" = "Conserve les messages annulés par les autres"; +"Keep my deleted messages" = "Conserver mes messages supprimés"; +"Also preserves messages you unsend yourself" = "Conserve aussi les messages que vous annulez vous-même"; +"Prevents accidental swipe-up activation of vanish mode" = "Empêche l’activation accidentelle du mode éphémère par balayage vers le haut"; +"Quick list button in chats" = "Bouton de liste rapide dans les discussions"; +"Removes the audio call button from DM thread header" = "Retire le bouton d’appel audio de l’en-tête des fils de DM"; +"Removes the video call button from DM thread header" = "Retire le bouton d’appel vidéo de l’en-tête des fils de DM"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "Revoir les messages visuels sans expiration. À basculer dans le menu du bouton œil, ou via un bouton séparé quand le bouton œil est désactivé"; +"Search, sort, swipe to remove or toggle keep-deleted" = "Rechercher, trier, balayer pour supprimer ou basculer la conservation des supprimés"; +"Send audio as file" = "Envoyer l’audio comme fichier"; +"Send files (experimental)" = "Envoyer des fichiers (expérimental)"; +"File sending not available" = "Envoi de fichiers indisponible"; +"Show full date instead of \"Active 2h ago\"" = "Afficher la date complète au lieu de \"Active 2h ago\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "Affiche un bouton dans les fils de DM pour ajouter/retirer des discussions de la liste. Appui long pour plus d’options"; +"Shows a notification pill when a message is unsent" = "Affiche une pastille de notification lorsqu’un message est annulé"; +"Shows an \"Unsent\" label on preserved messages" = "Affiche un libellé \"Unsent\" sur les messages conservés"; +"Unlimited replay of visual messages" = "Relecture illimitée des messages visuels"; +"Unsent message notification" = "Notification de message annulé"; +"Voice messages" = "Messages vocaux"; +"Warn before clearing on refresh" = "Avertir avant l’effacement au rafraîchissement"; +"Which chats get read-receipt blocking" = "Discussions concernées par le blocage des accusés de lecture"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ Tirer pour rafraîchir dans l’onglet DM efface tous les messages conservés. Activez l’avertissement ci-dessous pour obtenir une confirmation."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu supprimés"; +"%lu selected" = "%lu sélectionné(s)"; +"Absolute date + time" = "Date + heure absolues"; +"Adjust the filters or clear the search to see more." = "Ajustez les filtres ou effacez la recherche pour en voir davantage."; +"All time" = "Depuis toujours"; +"Browse, filter and search recorded messages" = "Parcourir, filtrer et rechercher les messages enregistrés"; +"Captures unsent messages with their text or media" = "Enregistre les messages annulés avec leur texte ou leur média"; +"Clear deleted-message log?" = "Effacer le journal des messages supprimés ?"; +"Clear from this user" = "Effacer pour cet utilisateur"; +"Clear log" = "Effacer le journal"; +"Clear log for this account" = "Effacer le journal pour ce compte"; +"Clear log for this user?" = "Effacer le journal pour cet utilisateur ?"; +"Clear media files" = "Effacer les fichiers média"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "Effacer les médias conserve les enregistrements (texte, expéditeur, horodatage). Effacer le journal supprime tout pour ce compte."; +"Close" = "Fermer"; +"Content unavailable" = "Contenu indisponible"; +"Copied" = "Copié"; +"Copy URL" = "Copier l'URL"; +"Date range" = "Plage de dates"; +"Deleted messages" = "Messages supprimés"; +"Deleted messages log" = "Journal des messages supprimés"; +"Deleted: %@\n" = "Supprimé : %@\n"; +"Edit %lu" = "Modification %lu"; +"Edit history" = "Historique des modifications"; +"Edited" = "Modifié"; +"Empty" = "Vide"; +"Enable deleted messages log" = "Activer le journal des messages supprimés"; +"Enable Settings → Messages → Deleted messages log to start recording." = "Activez Réglages → Messages → Journal des messages supprimés pour commencer l’enregistrement."; +"GIF" = "GIF"; +"Hashtag" = "Hashtag"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "Type : %@\n"; +"Last 30 days" = "30 derniers jours"; +"Last 7 days" = "7 derniers jours"; +"Link" = "Lien"; +"Live location" = "Position en direct"; +"Location" = "Lieu"; +"Logging is off" = "L’enregistrement est désactivé"; +"Media on disk" = "Média sur le disque"; +"Most messages" = "Plus de messages"; +"Most recent" = "Plus récents"; +"No deleted messages yet" = "Aucun message supprimé pour le moment"; +"No matches" = "Aucune correspondance"; +"Nothing to save" = "Rien à enregistrer"; +"Oldest first" = "Plus anciens d’abord"; +"Open log" = "Ouvrir le journal"; +"Group chat" = "Discussion de groupe"; +"%lu messages in %lu chats" = "%lu messages dans %lu discussions"; +"%lu people · %lu deleted" = "%lu personnes · %lu supprimés"; +"When someone unsends a message, it will appear here grouped by chat." = "Lorsqu'un message est annulé, il apparaîtra ici, regroupé par discussion."; +"Clear this chat" = "Effacer cette discussion"; +"Clear log for this chat?" = "Effacer le journal de cette discussion ?"; +"Removes every preserved deleted message from this group chat." = "Supprime tous les messages supprimés conservés de cette discussion de groupe."; +"Reaction removed" = "Réaction retirée"; +"Log removed reactions" = "Enregistrer les réactions retirées"; +"Also records when someone removes a reaction, and which message it was on" = "Enregistre aussi lorsqu'une réaction est retirée, et sur quel message."; +"Removed a reaction" = "A retiré une réaction"; +"on @%@: %@" = "sur @%@ : %@"; +"on: %@" = "sur : %@"; +"a message" = "un message"; +"removed %@ on: %@" = "a retiré %@ sur : %@"; +"removed reaction %@" = "a retiré la réaction %@"; +"%@ removed the %@ reaction." = "%@ a retiré la réaction %@."; +"Removed %@" = "Retiré %@"; +"Someone" = "Quelqu'un"; +"Photo or video" = "Photo ou vidéo"; +"Refresh names & photos" = "Actualiser noms et photos"; +"Refreshing names & photos" = "Actualisation des noms et photos"; +"Records every message someone unsends, grouped by chat" = "Enregistre chaque message annulé, regroupé par discussion"; +"Open profile" = "Ouvrir le profil"; +"Original" = "Original"; +"Play" = "Lire"; +"Post" = "Publication"; +"Reel" = "Reel"; +"Relative (1m / 3h / 3d ago)" = "Relatif (il y a 1min/3h/3j)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "Supprime tous les messages supprimés conservés et leurs médias capturés pour le compte actuel. Cette action est irréversible."; +"Removes every preserved deleted message and its captured media for this account." = "Supprime tous les messages supprimés conservés et leurs médias capturés pour ce compte."; +"Removes every preserved deleted message from this sender." = "Supprime tous les messages supprimés conservés de cet expéditeur."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "Supprime chaque photo, vidéo et clip vocal enregistré. Les enregistrements conservent leur texte et les infos d’expéditeur."; +"Search messages" = "Rechercher des messages"; +"Search senders or messages" = "Rechercher des expéditeurs ou des messages"; +"Select" = "Sélectionner"; +"Show edit history" = "Afficher l’historique des modifications"; +"Source URL recorded but media not stored.\n" = "URL source enregistrée mais média non stocké.\n"; +"Sticker" = "Sticker"; +"Tap to open in Instagram" = "Toucher pour ouvrir dans Instagram"; +"Tap to open in Maps" = "Toucher pour ouvrir dans Plans"; +"Tap to play" = "Toucher pour lire"; +"Tap to play · %@" = "Toucher pour lire · %@"; +"Text" = "Texte"; +"This account" = "Ce compte"; +"Unknown" = "Inconnu"; +"Video" = "Vidéo"; +"View" = "Voir"; +"Voice" = "Vocal"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "Activé, les messages supprimés et leurs médias sont enregistrés sur cet appareil. Désactivez et effacez le journal pour effacer l’historique."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "Dans l’outil Dessin, envoyez une image comme dessin, depuis la galerie, Photos, des stickers ou le presse-papiers, avec un éditeur intégré pour recadrer et supprimer l’arrière-plan"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "Dessinez une ligne ou une forme, puis touchez Envoyer et choisissez la source de l’image : galerie, Photos, stickers ou presse-papiers.\n\nL’image prend la place de votre dessin et adopte sa position et sa taille, alors dessinez plus grand pour une image plus grande.\n\nRedémarrez Instagram pour appliquer le changement."; + +"Send image as drawing" = "Envoyer une image comme dessin"; + +"Bypass \"You can't send messages\"" = "Contourner « Vous ne pouvez pas envoyer de messages »"; +"Custom chat background" = "Fond de discussion personnalisé"; +"DM Save button" = "Bouton Enregistrer des DM"; +"Incoming calls stay silent — no ring, no screen, no notification" = "Les appels entrants restent silencieux — pas de sonnerie, pas d'écran, pas de notification"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "Fait télécharger le bouton Enregistrer intégré d'Instagram sur les photos et vidéos des DM vers Photos, la Galerie ou Partager"; +"Messages" = "Messages"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "Supprime la bannière de saisie bloquée et restaure le champ de texte dans les conversations restreintes"; +"Reroute native Save" = "Rediriger l'enregistrement natif"; +"Save media" = "Enregistrer le média"; +"Silence incoming calls" = "Mettre en silence les appels entrants"; +"Threads" = "Fils"; +"Use your own images as chat backgrounds" = "Utilisez vos propres images comme fonds de discussion"; +"Activity status toggle" = "Bouton d'état d'activité"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "Ajoute un point dans l'en-tête des messages. Appuyez dessus pour activer ou désactiver votre état d'activité"; +"Activity status on" = "État d'activité activé"; +"Activity status off" = "État d'activité désactivé"; +"Couldn't change activity status" = "Impossible de modifier l'état d'activité"; +"Check your connection and try again" = "Vérifiez votre connexion et réessayez"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "Appareil photo"; +"Viewer" = "Visionneuse"; +"Saving" = "Enregistrement"; +"Confirmations" = "Confirmations"; +"Confirm switching button" = "Bouton de confirmation de changement"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "Ajoute un bouton à côté du bouton d’action pour activer ou désactiver la confirmation de changement instantanément"; +"Switching confirmation on" = "Confirmation de changement activée"; +"Switching confirmation off" = "Confirmation de changement désactivée"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "Ajoute un bouton galerie à l’appareil photo des Instantanés pour envoyer une photo depuis votre album"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "Ajoute un bouton d’action RyukGram à l’en-tête du visionneur d’Instantanés avec agrandir, enregistrer, partager et tout enregistrer"; +"All loaded instants" = "Tous les Instantanés chargés"; +"Auto advance after reaction" = "Avance automatique après réaction"; +"Automatically moves to the next instant after you like or react" = "Passe automatiquement à l’Instantané suivant après un like ou une réaction"; +"Auto close when finished" = "Fermeture automatique à la fin"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "Ferme le visionneur d’Instantanés une fois que vous les avez tous vus au lieu de rester sur l’appareil photo"; +"Bypasses the Instants screenshot block" = "Contourne le blocage des captures d’écran des Instantanés"; +"Could not locate the instant on screen" = "Impossible de localiser l’Instantané à l’écran"; +"Current instant" = "Instantané actuel"; +"In-app Gallery" = "Galerie intégrée"; +"Instant" = "Instantané"; +"Instants" = "Instantanés"; +"Auto-saved instants log" = "Journal des Instantanés enregistrés automatiquement"; +"Auto-save instants" = "Enregistrement auto des Instantanés"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "Enregistre automatiquement chaque Instantané que vous regardez, y compris en balayant — chacun une seule fois"; +"Instants action button" = "Bouton d’action des Instantanés"; +"No instants currently loaded" = "Aucun Instantané chargé pour le moment"; +"No media available to save" = "Aucun média à enregistrer"; +"Photos library" = "Photothèque"; +"Pick from" = "Choisir depuis"; +"Queued %lu instants" = "%lu Instantanés en file"; +"Save all to Gallery" = "Tout enregistrer dans la galerie"; +"Save all to Photos" = "Tout enregistrer dans Photos"; +"Save to Gallery" = "Enregistrer dans la galerie"; +"Send from gallery" = "Envoyer depuis la galerie"; +"Tweaks for the QuickSnap / Instants camera surface." = "Ajustements pour la surface caméra QuickSnap / Instants."; +"Use" = "Utiliser"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "Masquer aussi la barre d’onglets du bas — seule la boîte de réception est visible"; +"Show the home shortcut button in the inbox header, on the right" = "Affiche le bouton de raccourci d’accueil dans l’en-tête des messages, à droite"; +"Greyed out until the home shortcut button is enabled in Interface" = "Grisé tant que le bouton de raccourci d’accueil n’est pas activé dans Interface"; +"Hide search tab" = "Masquer l’onglet recherche"; +"Remove the search/explore button from the tab bar" = "Retire le bouton recherche/exploration de la barre d’onglets"; +"Hide tab bar" = "Masquer la barre d’onglets"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "Masque tous les onglets sauf la boîte de réception DM + le profil et force le lancement sur la boîte de réception. Le raccourci des réglages passe à l’appui long sur l’onglet boîte de réception."; +"Icon order" = "Ordre des icônes"; +"Launch tab" = "Onglet au lancement"; +"Swipe sideways to move between the tab bar tabs" = "Balaie latéralement pour passer d'un onglet à l'autre"; +"Messages only" = "Messages seulement"; +"Messages-only mode" = "Mode messages seulement"; +"Automatic schedule" = "Programmation automatique"; +"DM-only client, hide tabs, auto schedule" = "Client messages seulement, masquer les onglets, programmation auto"; +"Start time" = "Heure de début"; +"End time" = "Heure de fin"; +"Switch into Messages-only on its own during a time window" = "Passer en mode messages seulement automatiquement pendant une plage horaire"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "Active le mode messages seulement automatiquement pendant une plage quotidienne (ex. 22:00 – 06:00) à l’aide des options ci-dessus. Un redémarrage vous sera demandé au début et à la fin de la plage."; +"Active now · ends %@" = "Actif maintenant · se termine à %@"; +"Next window starts %@" = "Prochaine plage à %@"; +"Messages-only starting" = "Mode messages seulement : début"; +"Messages-only ending" = "Mode messages seulement : fin"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "Votre plage en mode messages seulement a commencé. Redémarrez Instagram pour basculer en messages seulement."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "Votre plage en mode messages seulement est terminée. Redémarrez Instagram pour retrouver les autres onglets."; +"Navigation" = "Navigation"; +"Swipe between tabs" = "Balayer entre les onglets"; +"Tab the app opens to. Ignored when Messages-only is on" = "Onglet ouvert au lancement de l’app. Ignoré quand Messages seulement est activé"; +"How the icons on the bottom tab bar are ordered" = "L'ordre des icônes dans la barre d'onglets inférieure"; +"Hidden tabs" = "Onglets masqués"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "Maintenez et faites glisser pour réordonner. Faites glisser une icône vers le haut pour la masquer. Touchez un onglet masqué pour le rajouter."; +"All tabs are on the bar" = "Tous les onglets sont dans la barre"; +"Turn IG into a DM-only client" = "Transformer IG en client de DM uniquement"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "Tout"; +"Calls" = "Appels"; +"Comments & posts" = "Commentaires et publications"; +"Confirm actions" = "Confirmer les actions"; +"Confirm changing theme" = "Confirmer le changement de thème"; +"Confirm disappearing media mark as viewed" = "Confirmer le marquage comme vu d’un contenu éphémère"; +"Confirm DM mark as seen" = "Confirmer le marquage comme lu d’un DM"; +"Confirm follow" = "Confirmer l’abonnement"; +"Confirm follow requests" = "Confirmer les demandes d’abonnement"; +"Confirm Instants capture" = "Confirmer la capture d’Instantanés"; +"Confirm Instants emoji reaction" = "Confirmer la réaction emoji aux Instantanés"; +"Confirm like: Posts" = "Confirmer le J’aime : publications"; +"Confirm like: Reels" = "Confirmer le J’aime : reels"; +"Confirm note emoji reaction" = "Confirmer la réaction emoji aux notes"; +"Confirm note like" = "Confirmer le J’aime sur une note"; +"Confirm posting comment" = "Confirmer l’envoi du commentaire"; +"Confirm repost" = "Confirmer le repost"; +"Confirm send to group chat" = "Confirmer l’envoi à un groupe"; +"Confirm sticker interaction (highlights)" = "Confirmer l’interaction avec un sticker (stories à la une)"; +"Confirm sticker interaction (stories)" = "Confirmer l’interaction avec un sticker (stories)"; +"Confirm story emoji reaction" = "Confirmer la réaction emoji à une story"; +"Confirm story like" = "Confirmer le J’aime sur une story"; +"Confirm story mark as seen" = "Confirmer le marquage comme vue d’une story"; +"Confirm switching Instant" = "Confirmer le changement d’Instantané"; +"Confirm unfollow" = "Confirmer le désabonnement"; +"Confirm vanish mode" = "Confirmer le mode éphémère"; +"Confirm video call" = "Confirmer l’appel vidéo"; +"Confirm voice call" = "Confirmer l’appel vocal"; +"Confirm voice messages" = "Confirmer les messages vocaux"; +"Follows" = "Abonnements"; +"Likes" = "J'aime"; +"Messaging" = "Messagerie"; +"Reaction stickers only" = "Stickers de réaction uniquement"; +"Reactions" = "Réactions"; +"Send to group chat?" = "Envoyer à un groupe ?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "Affiche une alerte avant de créer/envoyer à un groupe depuis la feuille de partage"; +"Shows an alert before marking a disappearing message as viewed" = "Affiche une alerte avant de marquer un message éphémère comme vu"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "Affiche une alerte avant d’envoyer un accusé de lecture depuis le bouton vu des DM ou le menu"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "Affiche une alerte avant d’envoyer un accusé de vue de story depuis le bouton œil ou le menu"; +"Shows an alert before sending an emoji reaction on a note" = "Affiche une alerte avant d’envoyer une réaction emoji à une note"; +"Shows an alert before sending an emoji reaction on a story" = "Affiche une alerte avant d’envoyer une réaction emoji à une story"; +"Shows an alert before sending an emoji reaction on an Instant" = "Affiche une alerte avant d’envoyer une réaction emoji à un Instantané"; +"Shows an alert before sending a photo or video from the Instants camera" = "Affiche une alerte avant d’envoyer une photo ou une vidéo depuis la caméra Instantanés"; +"Shows an alert before tapping to switch to the next/previous Instant" = "Affiche une alerte avant de toucher pour passer à l’Instantané suivant/précédent"; +"Asks you to confirm before a voice message sends" = "Te demande confirmation avant d'envoyer un message vocal"; +"Shows an alert to confirm before toggling vanish mode" = "Affiche une alerte de confirmation avant de basculer le mode éphémère"; +"Confirms before you accept or decline a follow request" = "Demande confirmation avant d'accepter ou de refuser une demande d'abonnement"; +"Confirms before a chat theme change applies" = "Demande confirmation avant d'appliquer un changement de thème du chat"; +"Confirms before the follow button follows someone" = "Demande confirmation avant que le bouton s'abonner ne suive quelqu'un"; +"Shows an alert when you click the like button on notes to confirm the like" = "Affiche une alerte lorsque vous touchez le bouton J’aime sur les notes pour confirmer"; +"Shows an alert when you click the like button on posts to confirm the like" = "Affiche une alerte lorsque vous touchez le bouton J’aime sur les publications pour confirmer"; +"Confirms before a like lands on a reel" = "Demande confirmation avant de liker un reel"; +"Shows an alert when you click the like button on stories to confirm the like" = "Affiche une alerte lorsque vous touchez le bouton J’aime sur les stories pour confirmer"; +"Confirms before a comment posts" = "Demande confirmation avant de publier un commentaire"; +"Shows an alert when you click the repost button to confirm before reposting" = "Affiche une alerte lorsque vous touchez le bouton de repost pour confirmer avant de reposter"; +"Shows an alert when you click the unfollow button to confirm" = "Affiche une alerte lorsque vous touchez le bouton se désabonner pour confirmer"; +"Shows an alert when you click the video call button to confirm before calling" = "Affiche une alerte lorsque vous touchez le bouton d’appel vidéo pour confirmer avant d’appeler"; +"Shows an alert when you click the voice call button to confirm before calling" = "Affiche une alerte lorsque vous touchez le bouton d’appel vocal pour confirmer avant d’appeler"; +"Shows an alert when you tap a sticker inside a highlight" = "Affiche une alerte lorsque vous touchez un sticker dans une story à la une"; +"Shows an alert when you tap a sticker on someone's story" = "Affiche une alerte lorsque vous touchez un sticker dans la story de quelqu’un"; +"Stories & highlights" = "Stories et à la une"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld h"; +"%ld locked" = "%ld verrouillés"; +"%ld min" = "%ld min"; +"%ldh idle" = "%ldh inactif"; +"%ldm idle" = "%ldm inactif"; +"%lds" = "%lds"; +"%lds idle" = "%lds inactif"; +"%lu hidden" = "%lu masquées"; +"4 digits" = "4 chiffres"; +"6 digits" = "6 chiffres"; +"Add hidden chat" = "Ajouter une discussion masquée"; +"Add locked chat" = "Ajouter une discussion verrouillée"; +"Allow Instants screenshots" = "Autoriser les captures d’écran des Instantanés"; +"Always ask when opening again" = "Toujours demander à la réouverture"; +"Ask again after Instagram returns" = "Redemander après le retour d'Instagram"; +"Auto-relock after idle" = "Reverrouillage automatique après inactivité"; +"Balanced default" = "Équilibré par défaut"; +"Best for sensitive sections" = "Idéal pour les sections sensibles"; +"Biometric" = "Biométrie"; +"Change passcode" = "Changer le code"; +"Chat hidden" = "Discussion masquée"; +"Chat unhidden" = "Discussion affichée"; +"Chat locked" = "Discussion verrouillée"; +"Chat unlocked" = "Discussion déverrouillée"; +"Choose a code you'll remember." = "Choisissez un code dont vous vous souviendrez."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "Choisissez combien de temps cette section reste déverrouillée en inactivité. « Jamais » la garde déverrouillée jusqu'à ce qu'Instagram se ferme ou passe en arrière-plan."; +"Confirm current passcode" = "Confirmez le code actuel"; +"Confirm passcode" = "Confirmez le code"; +"Could not save passcode" = "Impossible d’enregistrer le code"; +"Create passcode" = "Créer un code"; +"Derivation failed" = "Échec de la dérivation"; +"DM inbox" = "Boîte de DM"; +"Don't share unlock" = "Ne pas partager le déverrouillage"; +"Each target has its own enable, timeout, and re-lock configuration." = "Chaque cible a sa propre configuration d'activation, de délai et de reverrouillage."; +"Enable lock" = "Activer le verrouillage"; +"Enter passcode" = "Saisissez le code"; +"Enter value" = "Saisir une valeur"; +"Enter your current passcode to change it" = "Saisissez votre code actuel pour le changer"; +"Enter your current passcode to reset it" = "Saisissez votre code actuel pour le réinitialiser"; +"Enter your passcode to continue" = "Saisissez votre code pour continuer"; +"every use" = "à chaque utilisation"; +"Every use" = "À chaque utilisation"; +"Hidden chats" = "Discussions masquées"; +"Hidden chats hidden" = "Conversations masquées cachées"; +"Hidden chats revealed" = "Conversations masquées affichées"; +"👁 Shown in the inbox · Tap to hide" = "👁 Affichées dans la boîte · Touchez pour masquer"; +" · shown in inbox" = " · affichées dans la boîte"; +"Hide chat" = "Masquer la discussion"; +"Unhide chat" = "Afficher la discussion"; +"Hold name to reveal" = "Maintenir le nom pour afficher"; +"Hide message preview" = "Masquer l’aperçu du message"; +"Hide this chat?" = "Masquer cette discussion ?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "Masque l’interface de RyukGram dans les captures et enregistrements et contourne les alertes de capture d’écran d’Instagram par fonctionnalité."; +"Idle timeout" = "Délai d’inactivité"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "Garder cette cible verrouillée séparément"; +"Less frequent prompts" = "Invites moins fréquentes"; +"Lock" = "Verrouiller"; +"Lock chat" = "Verrouiller la discussion"; +"Lock every time" = "Verrouiller à chaque fois"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "« Verrouiller à chaque fois » prime sur le délai d'inactivité. « Ne pas partager le déverrouillage » garde cette cible séparée."; +"Lock targets" = "Cibles de verrouillage"; +"Lock the tweak" = "Verrouiller le tweak"; +"Lock this chat" = "Verrouiller cette discussion"; +"Lock this chat?" = "Verrouiller cette discussion ?"; +"Lock with passcode" = "Verrouiller avec un code"; +"Locked chats" = "Discussions verrouillées"; +"Long-press a chat to lock it individually" = "Appui long sur une discussion pour la verrouiller individuellement"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "Appui long sur une discussion → Masquer la discussion pour l’ajouter ici. Les discussions masquées sont filtrées de la boîte jusqu’à ce que vous les retiriez de cette liste."; +"Long-press a DM to add" = "Appui long sur une discussion pour l’ajouter"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "Appuyez longuement sur le nom du compte en haut de la boîte de réception pour afficher ou masquer vos conversations masquées"; +"Longest idle window" = "Plus longue fenêtre d'inactivité"; +"Manage locked chats" = "Gérer les discussions verrouillées"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "Interrupteur principal. Désactivez pour désactiver toutes les cibles de verrouillage sans perdre leur configuration."; +"Never" = "Jamais"; +"No passcode set" = "Aucun code défini"; +"Nothing here yet." = "Rien ici pour l’instant."; +"Off" = "Désactivé"; +"On" = "Activé"; +"On — %@" = "Activé — %@"; +"On — %@ + %ld more" = "Activé — %@ + %ld de plus"; +"On — no targets enabled" = "Activé — aucune cible activée"; +"Passcode" = "Code d’accès"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "Code + biométrie. Verrouille la fenêtre des réglages du tweak, la galerie, le journal des messages supprimés, des discussions individuelles et toute l’app."; +"Passcode changed" = "Code modifié"; +"Passcode reset" = "Code réinitialisé"; +"Passcode set" = "Code défini"; +"Passcode too short" = "Code trop court"; +"Passcodes did not match — try again" = "Les codes ne correspondent pas — réessayez"; +"Per-chat locks" = "Verrous par discussion"; +"Prompt before Instagram opens" = "Demander avant l’ouverture d’Instagram"; +"Prompt before Profile Analyzer opens" = "Demander avant l’ouverture de l’Analyseur de profil"; +"Prompt before the deleted-messages log opens" = "Demander avant l’ouverture du journal des messages supprimés"; +"Prompt before the gallery opens" = "Demander avant l’ouverture de la galerie"; +"Prompt before tweak settings open" = "Demander avant l’ouverture des réglages du tweak"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "Demander à chaque entrée dans la boîte de DM, y compris le lancement direct sur les messages"; +"Re-enter the same passcode" = "Saisissez à nouveau le même code"; +"Re-lock on background" = "Reverrouiller en arrière-plan"; +"re-lock on bg" = "reverr. en arrière-plan"; +"Recently hidden" = "Masquées récemment"; +"Prompt before holding the inbox name reveals hidden chats" = "Demander avant que le maintien du nom n'affiche les conversations masquées"; +"Reveal hidden chats" = "Afficher les conversations masquées"; +"Recently locked" = "Verrouillées récemment"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "Masque les boutons RyukGram dans les captures, enregistrements d’écran et la recopie"; +"Remove screenshot alert" = "Supprimer l’alerte de capture d’écran"; +"Replace inbox preview with • • •" = "Remplacer l'aperçu de la boîte de réception par • • •"; +"Require passcode for this section" = "Exiger un code pour cette section"; +"Requires your current passcode" = "Nécessite votre code actuel"; +"Reset passcode" = "Réinitialiser le code"; +"Reset passcode?" = "Réinitialiser le code ?"; +"Screenshots & capture" = "Captures d’écran et enregistrements"; +"Security & Privacy" = "Sécurité et confidentialité"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "Définissez un code pour verrouiller les Réglages, la Galerie, le journal des messages supprimés, des discussions individuelles, la boîte de DM, l’Analyseur de profil ou Instagram lui-même."; +"Set passcode" = "Définir un code"; +"Short idle window" = "Courte fenêtre d'inactivité"; +"Stay unlocked until app close or background" = "Rester déverrouillé jusqu'à la fermeture ou le passage en arrière-plan de l'app"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "Supprimer la notification « X a fait une capture d'écran » d'IG dans les stories, les DM et les médias éphémères"; +"Tap Unlock" = "Touchez Déverrouiller"; +"Tap Unlock or enter your passcode" = "Touchez Déverrouiller ou saisissez votre code"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "Cela efface le code, désactive toutes les cibles de verrouillage et déverrouille toutes les discussions. La galerie et les données de messages supprimés ne sont pas touchées."; +"Thread %@" = "Fil %@"; +"Tweak settings" = "Réglages du tweak"; +"Unlock" = "Déverrouiller"; +"Unlock %@" = "Déverrouiller %@"; +"Unlock chat" = "Déverrouiller la discussion"; +"Unlock Instagram" = "Déverrouiller Instagram"; +"Unlock this chat" = "Déverrouiller cette discussion"; +"Use %@" = "Utiliser %@"; +"Username (looks up the DM thread) or raw thread ID" = "Nom d’utilisateur (recherche la discussion) ou ID brut de discussion"; +"Username or thread ID" = "Nom d’utilisateur ou ID de discussion"; +"Wrong passcode" = "Code incorrect"; +"Wrong passcode • %ld attempts" = "Code incorrect • %ld tentatives"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "Protection"; +"Password-protect" = "Protéger par mot de passe"; +"On — tap to change" = "Activé — touchez pour modifier"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "La sauvegarde est chiffrée en AES-256. Ce mot de passe sera nécessaire pour la restaurer — impossible de la récupérer en cas d'oubli."; +"Optional. Lock the backup behind a password so only you can restore it." = "Facultatif. Verrouillez la sauvegarde par un mot de passe pour que vous seul puissiez la restaurer."; +"Backup password" = "Mot de passe de la sauvegarde"; +"You'll need this to restore. It can't be recovered if lost." = "Vous en aurez besoin pour restaurer. Impossible de le récupérer en cas d'oubli."; +"Password" = "Mot de passe"; +"Confirm password" = "Confirmer le mot de passe"; +"Set" = "Définir"; +"Use at least 4 characters." = "Utilisez au moins 4 caractères."; +"The passwords don't match." = "Les mots de passe ne correspondent pas."; +"Try again" = "Réessayer"; +"Encrypted backup" = "Sauvegarde chiffrée"; +"Enter the password used to protect this backup." = "Saisissez le mot de passe utilisé pour protéger cette sauvegarde."; +"Wrong password. Try again." = "Mot de passe incorrect. Réessayez."; +"Decrypting backup…" = "Déchiffrement de la sauvegarde…"; +"Encrypting backup…" = "Chiffrement de la sauvegarde…"; +"%ld of %ld selected · %@" = "%ld sur %ld sélectionnés · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "Cochez chaque ensemble à inclure. Touchez une ligne pour voir son contenu."; + +"%lu account(s)" = "%lu compte(s)"; +"%lu account(s) · %lu image(s) · %@" = "%lu compte(s) · %lu image(s) · %@"; +"%lu file(s) · %@" = "%lu fichier(s) · %@"; +"%lu preferences" = "%lu préférences"; +"(none)" = "(aucun)"; +"Apply backup?" = "Appliquer la sauvegarde ?"; +"Applying backup…" = "Application de la sauvegarde…"; +"archive error" = "erreur d'archive"; +"Archived snapshots" = "Captures archivées"; +"Backup & Restore" = "Sauvegarde et restauration"; +"Backup exported" = "Sauvegarde exportée"; +"Backup failed" = "Échec de la sauvegarde"; +"Backup has no importable sections." = "La sauvegarde ne contient aucune section importable."; +"Chat & story filters" = "Filtres de discussions et stories"; +"Chat backgrounds" = "Fonds de discussion"; +"Corrupt entry path." = "Chemin d'entrée corrompu."; +"Could not decompress archive." = "Impossible de décompresser l'archive."; +"Could not open archive." = "Impossible d'ouvrir l'archive."; +"Could not open staging file." = "Impossible d'ouvrir le fichier temporaire."; +"Could not read the backup archive." = "Impossible de lire l'archive de sauvegarde."; +"Could not write archive." = "Impossible d'écrire l'archive."; +"Could not write backup file." = "Impossible d'écrire le fichier de sauvegarde."; +"Could not write extracted file." = "Impossible d'écrire le fichier extrait."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "Les données existantes des éléments cochés seront remplacées. Un redémarrage peut être nécessaire pour que tout prenne effet."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "Exportez ou importez les données RyukGram — réglages, filtres par compte, discussions masquées et verrouillées, Profile Analyzer, galerie, fonds de discussion, messages supprimés et journal des accusés de lecture. Choisissez n'importe quelle combinaison sur chaque page. Les réglages restent un simple fichier JSON ; les ensembles avec média s'exportent en .ryukbak compressé."; +"Feature data" = "Données des fonctionnalités"; +"Import mode" = "Mode d'importation"; +"Merge" = "Fusionner"; +"Replace" = "Remplacer"; +"Add the backup's data to what's already here" = "Ajoute les données de la sauvegarde à ce qui est déjà là"; +"Clear existing data, then apply the backup" = "Efface les données actuelles, puis applique la sauvegarde"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "Fusionner conserve ce qui est sur cet appareil et ajoute les données de la sauvegarde — les doublons sont combinés, y compris la galerie."; +"Replace clears existing data for each ticked item, then applies the backup." = "Remplacer efface les données existantes de chaque élément coché, puis applique la sauvegarde."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "La sauvegarde sera fusionnée avec vos données existantes — rien n'est supprimé, les doublons sont combinés. Un redémarrage peut être nécessaire pour que tout prenne effet."; +"Hidden & locked chats" = "Discussions masquées et verrouillées"; +"Import" = "Importer"; +"Inspect the full manifest" = "Inspecter le manifeste complet"; +"Load a .json or .ryukbak backup" = "Charger une sauvegarde .json ou .ryukbak"; +"Not a RyukGram backup archive." = "Ce n'est pas une archive de sauvegarde RyukGram."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "Remettre les réglages par défaut et effacer les données"; +"Swipe a row to clear it." = "Balayez une ligne pour la vider."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "Les lignes marquées « Partagé » ne sont liées à aucun compte et suivent toujours leur propre coche."; +"%lu file(s)" = "%lu fichier(s)"; +"Clear all data" = "Effacer toutes les données"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "Chaque élément de galerie, journal et enregistrement stocké est supprimé de cet appareil. Vos réglages sont conservés — utilisez Réinitialiser pour les remettre par défaut. Cette action est irréversible."; +"Accounts" = "Comptes"; +"All accounts (%ld)" = "Tous les comptes (%ld)"; +"Pick at least one account." = "Sélectionnez au moins un compte."; +"Signed in" = "Connecté"; +"Shared" = "Partagé"; +"Per-account data is limited to the accounts ticked here." = "Les données par compte se limitent aux comptes cochés ici."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "Les données par compte ne sont effacées que pour %@. Les données partagées suivent leur propre coche. Cette action est irréversible."; +"Preparing backup…" = "Préparation de la sauvegarde…"; +"Reading backup…" = "Lecture de la sauvegarde…"; +"RyukGram's own data on this device" = "Les données propres de RyukGram sur cet appareil"; +"Save settings or a full backup" = "Enregistrer les réglages ou une sauvegarde complète"; +"Tick what to apply. Rows not in this backup are hidden." = "Cochez ce qu'il faut appliquer. Les lignes absentes de cette sauvegarde sont masquées."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "Cochez ce qu'il faut inclure. Appuyez sur une ligne pour l'inspecter. Ajouter la galerie, les fonds de discussion ou les messages supprimés produit un ensemble .ryukbak compressé."; +"Truncated entry data." = "Données d'entrée tronquées."; +"Truncated entry length." = "Longueur d'entrée tronquée."; +"Truncated entry path." = "Chemin d'entrée tronqué."; +"Unsafe entry path." = "Chemin d'entrée non sécurisé."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "Avancé"; +"All tweak options are disabled" = "Toutes les options du tweak sont désactivées"; +"Auto-clear cache" = "Vidage automatique du cache"; +"Automatically opens settings when the app launches" = "Ouvre automatiquement les réglages au lancement de l’app"; +"Cache" = "Cache"; +"Cache cleared" = "Cache vidé"; +"Calculating cache size…" = "Calcul de la taille du cache…"; +"Clear" = "Vider"; +"Clear cache" = "Vider le cache"; +"Clear cache (%@)" = "Vider le cache (%@)"; +"Clearing cache…" = "Vidage du cache…"; +"Clearing still scans on demand." = "Le vidage analysera toujours à la demande."; +"Daily" = "Quotidien"; +"Disable all tweak options" = "Désactiver toutes les options du tweak"; +"Disable safe mode" = "Désactiver le mode sans échec"; +"Enable tweak settings quick-access" = "Activer l’accès rapide aux réglages du tweak"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "Instagram fonctionne normalement tant que ceci est activé. Désactivez-le pour restaurer vos réglages."; +"Tap to re-enable everything" = "Appuyez pour tout réactiver"; +"Turn every feature off — your settings are kept" = "Désactive toutes les fonctionnalités — vos réglages sont conservés"; +"Fix duplicate notifications" = "Corriger les notifications en double"; +"Free %@ of Instagram cache." = "Libérer %@ du cache Instagram."; +"Freed %@" = "%@ libérés"; +"Hold on the home tab to open RyukGram settings" = "Maintenez l’onglet Accueil pour ouvrir les réglages RyukGram"; +"Monthly" = "Mensuel"; +"Nothing to clear" = "Rien à vider"; +"Off skips the size scan when Advanced opens." = "Désactivé, l’analyse de taille est ignorée à l’ouverture d’Avancé."; +"Pause playback when opening settings" = "Mettre la lecture en pause à l’ouverture des réglages"; +"Always show what's new" = "Toujours afficher les nouveautés"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "Garder le point bleu sur chaque nouvelle fonctionnalité au lieu de l'effacer une fois vue"; +"Preserve messages database" = "Préserver la base de données des messages"; +"Pauses any playing video/audio when settings opens" = "Met en pause toute vidéo ou audio en cours à l’ouverture des réglages"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "Empêche Instagram de réinitialiser les réglages après un crash (à vos risques)"; +"Prevents two banners for the same message when IG is in the foreground" = "Empêche l’affichage de deux bannières pour le même message lorsque IG est au premier plan"; +"Remove Instagram's cached images, videos, and temporary files." = "Supprime les images, vidéos et fichiers temporaires en cache d’Instagram."; +"Reset onboarding state" = "Réinitialiser l’accueil initial"; +"Run a silent cache clear on launch when the interval has elapsed." = "Vide silencieusement le cache au lancement lorsque l’intervalle est écoulé."; +"Show cache size" = "Afficher la taille du cache"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "Ignorer la base de données des messages lors du vidage — conserve les DM, les brouillons et les messages enregistrés."; +"Show tweak settings on app launch" = "Afficher les réglages du tweak au lancement"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "Supprime la seconde notification qu’IG met en file dans l’app pendant que l’extension de notification la délivre aussi."; +"Weekly" = "Hebdomadaire"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "Actions"; +"Advanced experimental features" = "Fonctionnalités expérimentales avancées"; +"All experimental toggles will be turned off. Instagram will restart." = "Tous les réglages expérimentaux seront désactivés. Instagram redémarrera."; +"Direct Notes — Audio reply" = "Direct Notes — Réponse audio"; +"Direct Notes — Avatar reply" = "Direct Notes — Réponse avatar"; +"Direct Notes — Friend Map" = "Direct Notes — Carte des amis"; +"Direct Notes — GIFs & stickers reply" = "Direct Notes — Réponse GIF et stickers"; +"Direct Notes — Photo reply" = "Direct Notes — Réponse photo"; +"Disabled after repeated crashes." = "Désactivé après des crashs répétés."; +"Enables GIF/sticker replies" = "Active les réponses GIF/sticker"; +"Enables photo replies" = "Active les réponses photo"; +"Enables the audio-note reply type" = "Active le type de réponse note audio"; +"Enables the avatar reply type" = "Active le type de réponse avatar"; +"Experimental flags reset" = "Flags expérimentaux réinitialisés"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "Activez ce que vous voulez, puis touchez Appliquer pour redémarrer. Certains flags peuvent ne pas fonctionner sur tous les comptes ou versions d’IG. Les flags se réinitialisent automatiquement si IG plante 3 fois au lancement."; +"Forces Prism-gated experiments on" = "Force l’activation des expériences protégées par Prism"; +"Forces the Homecoming home surface / nav on" = "Force l’activation de la surface/navigation Homecoming"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "Force l’activation de la surface QuickSnap / Instants dans le fil, la boîte de réception, les stories et le bandeau des notes"; +"Got it" = "Compris"; +"Heads up" = "Attention"; +"Hidden Instagram experiments" = "Expériences Instagram masquées"; +"Hidden Instagram experiments (in Advanced)" = "Expériences Instagram masquées (dans Avancé)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "Notes et QuickSnap"; +"Prism design system" = "Système de design Prism"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Affiche l’entrée Carte des amis dans Direct Notes"; +"Surfaces" = "Surfaces"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "Ces réglages activent des expériences Instagram masquées. Certaines fonctionnalités peuvent ne pas fonctionner sur tous les comptes ou versions d’IG. Si IG continue de planter au lancement, les flags se réinitialisent après 3 échecs."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Activez des expériences Instagram masquées. Certaines peuvent ne pas fonctionner sur tous les comptes ou versions d’IG."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "Cellule bouton"; +"Change the value on the right" = "Changez la valeur à droite"; +"Could not delete: %@" = "Suppression impossible : %@"; +"Debug" = "Débogage"; +"Delete an imported override and fall back to the shipped strings" = "Supprimer une traduction importée et revenir aux chaînes intégrées"; +"Deleted %@ override. Restart to apply." = "Traduction %@ supprimée. Redémarrez pour appliquer."; +"Enable FLEX gesture" = "Activer le geste FLEX"; +"Enable file logging" = "Activer la journalisation dans un fichier"; +"Export strings" = "Exporter les chaînes"; +"Hold 5 fingers on the screen to open FLEX" = "Maintenez 5 doigts sur l’écran pour ouvrir FLEX"; +"I have %@%@" = "J’ai %@%@"; +"Import a .strings file for a language" = "Importer un fichier .strings pour une langue"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "Importer un fichier .strings pour mettre à jour une traduction. Choisissez une langue, sélectionnez le fichier, redémarrez."; +"Link Cell" = "Cellule lien"; +"Localization" = "Localisation"; +"Log file is empty" = "Le fichier de journal est vide"; +"Logging" = "Journalisation"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "Enregistre l'activité de RyukGram dans un seul fichier partageable, sur l'app et ses extensions. Désactivé par défaut : activez-le, reproduisez le problème, puis partagez-le."; +"Menu Cell" = "Cellule menu"; +"Navigation Cell" = "Cellule navigation"; +"No imported localization files to reset." = "Aucun fichier de localisation importé à réinitialiser."; +"No overrides" = "Aucun remplacement"; +"Open FLEX on app focus" = "Ouvrir FLEX au focus de l’app"; +"Open FLEX on app launch" = "Ouvrir FLEX au lancement de l’app"; +"Opens FLEX when the app is focused" = "Ouvre FLEX lorsque l’app reçoit le focus"; +"Opens FLEX when the app launches" = "Ouvre FLEX au lancement de l’app"; +"Pick a language and share its .strings file" = "Choisissez une langue pour partager son fichier .strings"; +"Pick a language to delete the imported file" = "Choisissez une langue pour supprimer le fichier importé"; +"Pick a language to export" = "Choisissez une langue à exporter"; +"Reset localization" = "Réinitialiser la localisation"; +"Share log file" = "Partager le fichier de journal"; +"Static Cell" = "Cellule statique"; +"Stepper cell" = "Cellule pas-à-pas"; +"Switch Cell" = "Cellule interrupteur"; +"Switch Cell (Restart)" = "Cellule interrupteur (redémarrage)"; +"Tap the switch" = "Touchez l’interrupteur"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "Ces fonctionnalités reposent sur des flags Instagram masqués et peuvent ne pas fonctionner sur tous les comptes ou versions."; +"Update localization file" = "Mettre à jour le fichier de localisation"; +"Using icon" = "Utilise une icône"; +"Using image" = "Utilise une image"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "Réglages %@"; +"%lu items" = "%lu éléments"; +"Cancelled" = "Annulé"; +"Carousel" = "Carrousel"; +"Carousel · %lu items" = "Carrousel · %lu éléments"; +"Copied %lu URLs" = "%lu URL copiées"; +"Copied caption" = "Légende copiée"; +"Copied download URL" = "URL de téléchargement copiée"; +"Copied quality info" = "Infos de qualité copiées"; +"Copied video URL" = "URL de la vidéo copiée"; +"Copy all URLs" = "Copier toutes les URL"; +"Copy caption" = "Copier la légende"; +"Copy download URL" = "Copier l’URL de téléchargement"; +"Could not extract any URLs" = "Impossible d’extraire des URL"; +"Could not extract audio URL" = "Impossible d’extraire l’URL audio"; +"Could not extract media URL" = "Impossible d’extraire l’URL du média"; +"Could not extract photo URL" = "Impossible d’extraire l’URL de la photo"; +"Could not extract video URL" = "Impossible d’extraire l’URL de la vidéo"; +"Done" = "Terminé"; +"Download all stories and share?" = "Télécharger toutes les stories et partager ?"; +"Download all to Photos" = "Tout télécharger dans Photos"; +"Download and share all" = "Tout télécharger et partager"; +"Download failed" = "Échec du téléchargement"; +"Downloaded %lu items" = "%lu éléments téléchargés"; +"Downloading audio…" = "Téléchargement de l'audio…"; +"Failed to save" = "Échec de l’enregistrement"; +"File" = "Fichier"; +"HD" = "HD"; +"HD download complete" = "Téléchargement HD terminé"; +"HD video" = "Vidéo HD"; +"Mute audio" = "Couper le son"; +"No caption on this post" = "Aucune légende sur cette publication"; +"No carousel children" = "Aucun élément de carrousel"; +"No cover image" = "Aucune image de couverture"; +"No media" = "Aucun média"; +"No media to expand" = "Aucun média à agrandir"; +"No media to show" = "Aucun média à afficher"; +"No media URL" = "Aucune URL de média"; +"No URLs" = "Aucune URL"; +"No URLs found" = "Aucune URL trouvée"; +"No video URL" = "Aucune URL vidéo"; +"Not a carousel" = "Ce n’est pas un carrousel"; +"Nothing to share" = "Rien à partager"; +"Opening creator…" = "Ouverture de l’éditeur..."; +"Photo library access denied" = "Accès à la photothèque refusé"; +"Photos access denied" = "Accès à Photos refusé"; +"Preparing repost…" = "Préparation du repost..."; +"Raw image" = "Image brute"; +"Repost" = "Repost"; +"Repost unavailable" = "Repost indisponible"; +"Save failed" = "Échec de l’enregistrement"; +"Saved %lu items" = "%lu éléments enregistrés"; +"Saved to Photos" = "Enregistré dans Photos"; +"Saved to RyukGram" = "Enregistré dans RyukGram"; +"Saving to Photos" = "Enregistrement dans Photos"; +"Saving…" = "Enregistrement..."; +"Unmute audio" = "Rétablir le son"; +"Video · %@" = "Vidéo · %@"; +"View cover" = "Voir la couverture"; +"View mentions" = "Voir les mentions"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "Libre"; +"Chat font saved" = "Police de conversation enregistrée"; +"Reopen this chat to see the new font" = "Rouvrez cette conversation pour voir la nouvelle police"; +"Remove background" = "Supprimer l’arrière-plan"; +"No subject found" = "Aucun sujet trouvé"; +"No stickers yet" = "Aucun sticker pour l’instant"; +"Send drawing" = "Envoyer un dessin"; +"Send my drawing" = "Envoyer mon dessin"; +"Paste image / sticker" = "Coller image / sticker"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "Touchez un sticker de votre clavier\npour l’ajouter à votre dessin"; + +" %lu votes · avg %.0f%% " = " %lu votes · moy. %.0f%% "; +"%@ can't be converted" = "%@ ne peut pas être converti"; +"%@ unsent a message" = "%@ a annulé un message"; +"%@ unsent a message from %@" = "%@ a annulé un message de %@"; +"A message was unsent" = "Un message a été annulé"; +"Add" = "Ajouter"; +"Add to block list" = "Ajouter à la liste de blocage"; +"Added to block list" = "Ajouté à la liste de blocage"; +"Added to exclude list" = "Ajouté à la liste d’exclusion"; +"Audio not loaded yet. Play the message first and try again." = "L’audio n’est pas encore chargé. Lancez d’abord le message puis réessayez."; +"Audio sent" = "Audio envoyé"; +"Audio URL not available" = "URL audio indisponible"; +"Audio/Video from Files" = "Audio/vidéo depuis Fichiers"; +"Blocked" = "Bloqué"; +"Cancel" = "Annuler"; +"Clear preserved messages?" = "Effacer les messages conservés ?"; +"Converting…" = "Conversion..."; +"Copy link" = "Copier le lien"; +"Copy text" = "Copier le texte"; +"Could not copy selected video" = "Impossible de copier la vidéo sélectionnée"; +"Could not find media" = "Média introuvable"; +"Could not find story media" = "Média de story introuvable"; +"Could not get audio data. Try again after refreshing the chat." = "Impossible d’obtenir les données audio. Réessayez après avoir rafraîchi la discussion."; +"Disable read receipts" = "Désactiver les accusés de lecture"; +"Disappearing media" = "Média éphémère"; +"Download audio" = "Télécharger l’audio"; +"Enable read receipts" = "Activer les accusés de lecture"; +"Error: %@" = "Erreur : %@"; +"Exclude chat" = "Exclure la discussion"; +"Exclude from seen" = "Exclure des vues"; +"Exclude story seen" = "Exclure la vue de story"; +"Excluded" = "Exclu"; +"Extracting audio…" = "Extraction de l’audio..."; +"FFmpeg conversion failed" = "Échec de la conversion FFmpeg"; +"File sending not supported" = "Envoi de fichiers non pris en charge"; +"Follow" = "Suivre"; +"Following" = "Abonné"; +"Format not supported without FFmpegKit" = "Format non pris en charge sans FFmpegKit"; +"Inserts a button on disappearing media overlays" = "Insère un bouton sur les médias éphémères"; +"Inserts a speaker button to mute/unmute disappearing media" = "Insère un bouton haut-parleur pour couper/rétablir le son des médias éphémères"; +"Inserts an eye button to mark the current disappearing media as viewed" = "Insère un bouton œil pour marquer le média éphémère actuel comme vu"; +"Link copied" = "Lien copié"; +"Mark as viewed" = "Marquer comme vu"; +"Marking as viewed advances to the next stacked media instead of closing" = "Marquer comme vu passe au média empilé suivant au lieu de fermer"; +"Mark messages as seen" = "Marquer les messages comme vus"; +"Mark seen" = "Marquer vu"; +"Marked as viewed" = "Marqué comme vu"; +"Marked messages as seen" = "Messages marqués comme vus"; +"Mentions" = "Mentions"; +"Message from %@ was unsent" = "Un message de %@ a été annulé"; +"Message sender not found" = "Expéditeur du message introuvable"; +"Messages settings" = "Réglages des messages"; +"Mute story audio" = "Couper le son de la story"; +"no audio track could be read" = "aucune piste audio n’a pu être lue"; +"No audio URL found. Try again after refreshing the chat." = "Aucune URL audio trouvée. Réessayez après avoir rafraîchi la discussion."; +"No mentions in this story" = "Aucune mention dans cette story"; +"No thread key" = "Aucune clé de fil"; +"No video selected" = "Aucune vidéo sélectionnée"; +"No voice send method found" = "Aucune méthode d’envoi vocal trouvée"; +"Note has no downloadable content" = "La note n'a aucun contenu téléchargeable"; +"Note text copied" = "Texte de la note copié"; +"Open GitHub" = "Ouvrir GitHub"; +"Pick audio or video" = "Choisir audio ou vidéo"; +"Read receipts disabled" = "Accusés de lecture désactivés"; +"Read receipts enabled" = "Accusés de lecture activés"; +"Read receipts will be blocked for this chat." = "Les accusés de lecture seront bloqués pour cette discussion."; +"Read receipts will no longer be blocked for this chat." = "Les accusés de lecture ne seront plus bloqués pour cette discussion."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "Rafraîchir l’onglet DM effacera %lu message annulé conservé. Cette action est irréversible."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "Rafraîchir l’onglet DM effacera %lu messages annulés conservés. Cette action est irréversible."; +"Remove" = "Retirer"; +"Remove from block list" = "Retirer de la liste de blocage"; +"Remove from exclude list" = "Retirer de la liste d’exclusion"; +"Removed" = "Retiré"; +"Removed from list" = "Retiré de la liste"; +"Save GIF" = "Enregistrer le GIF"; +"Selection too short (min 0.5s)" = "Sélection trop courte (min 0,5 s)"; +"Send anyway" = "Envoyer quand même"; +"Send Audio" = "Envoyer l’audio"; +"Send failed: %@" = "Échec de l’envoi : %@"; +"Send File" = "Envoyer un fichier"; +"Send service not found" = "Service d’envoi introuvable"; +"Show audio toggle" = "Afficher l’interrupteur audio"; +"Show mark-as-viewed button" = "Afficher le bouton marquer comme vu"; +"Story read receipts disabled" = "Accusés de vue des stories désactivés"; +"Story read receipts enabled" = "Accusés de vue des stories activés"; +"This chat will resume normal read-receipt behavior." = "Cette discussion reprendra le comportement normal des accusés de lecture."; +"This file" = "Ce fichier"; +"Total: %@" = "Total : %@"; +"Un-exclude chat" = "Ne plus exclure la discussion"; +"Un-exclude story seen" = "Ne plus exclure la vue de story"; +"Un-excluded" = "Réintégré"; +"Unblocked" = "Débloqué"; +"Unlimited replay enabled" = "Relecture illimitée activée"; +"Unmute story audio" = "Rétablir le son de la story"; +"Unsent" = "Annulé"; +"Upload Audio" = "Téléverser l’audio"; +"VC not found" = "VC introuvable"; +"Video from Library" = "Vidéo depuis la photothèque"; +"Visual messages will expire" = "Les messages visuels expireront"; +"Visual messages: expiring" = "Messages visuels : expiration"; +"Visual messages: unlimited replay" = "Messages visuels : relecture illimitée"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "Ajouter un fond"; +"Add Chat Background" = "Ajouter un fond de discussion"; +"Adds your own image backgrounds to Instagram chats" = "Ajoute vos propres images de fond aux discussions Instagram"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "Après activation, ouvrez une discussion, appuyez sur le bouton de thème, puis sur l'icône photo en haut à droite."; +"Blur" = "Flou"; +"Browse chats" = "Parcourir les discussions"; +"Browse chats (%ld)" = "Parcourir les discussions (%ld)"; +"Change Background" = "Changer de fond"; +"Change default" = "Changer la valeur par défaut"; +"Chat Backgrounds" = "Fonds de discussion"; +"Choose an image used when no chat override exists" = "Choisir une image utilisée quand aucun fond personnalisé n'existe"; +"Clear default" = "Effacer la valeur par défaut"; +"Couldn't import image" = "Impossible d'importer l'image"; +"Adjust settings" = "Réglages"; +"Choose Media" = "Choisir un média"; +"Converting GIF" = "Conversion du GIF"; +"Couldn't import video" = "Impossible d'importer la vidéo"; +"Crop & resize" = "Rogner et redimensionner"; +"Crop & trim" = "Rogner et couper"; +"Custom Chat Background" = "Fond de discussion personnalisé"; +"Default background" = "Fond par défaut"; +"Dim in dark mode" = "Assombrir en mode sombre"; +"Enable custom backgrounds" = "Activer les fonds personnalisés"; +"Enter a username, chat name, or thread ID." = "Saisissez un nom d'utilisateur, un nom de discussion ou un ID de fil."; +"Group" = "Groupe"; +"Image Settings" = "Réglages d'image"; +"Auto bubble color" = "Couleur de bulle automatique"; +"Bubble color" = "Couleur de bulle"; +"Me" = "Moi"; +"Both" = "Les deux"; +"Gradient" = "Dégradé"; +"Direction" = "Direction"; +"Vertical" = "Vertical"; +"Horizontal" = "Horizontal"; +"Diagonal" = "Diagonale"; +"Text color" = "Couleur du texte"; +"Automatic (contrast)" = "Automatique (contraste)"; +"Choose color…" = "Choisir une couleur…"; +"Tap to apply · hold to edit" = "Appuyez pour appliquer · maintenez pour modifier"; +"Library" = "Bibliothèque"; +"Library, default, and per-chat overrides will be deleted." = "La bibliothèque, le fond par défaut et les fonds par discussion seront supprimés."; +"No Custom" = "Aucun personnalisé"; +"Opacity" = "Opacité"; +"Photo Library" = "Photothèque"; +"Pick default" = "Choisir la valeur par défaut"; +"Pinch + drag to position" = "Pincez et glissez pour positionner"; +"Quit and reopen Instagram for the change to take effect." = "Quittez et rouvrez Instagram pour que le changement prenne effet."; +"Recently set" = "Récemment défini"; +"Remove the global fallback background" = "Supprimer le fond de secours global"; +"Replace the default background image" = "Remplacer l'image de fond par défaut"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "La réinitialisation règle l'opacité sur 1.0, le flou sur 0 et l'assombrissement sur 0."; +"RyukGram Gallery" = "Galerie RyukGram"; +"Search username, name, or thread ID" = "Rechercher un nom d'utilisateur, un nom ou un ID de fil"; +"Set as default" = "Définir par défaut"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "Appuyez sur plus pour ajouter. Appuyez sur un fond pour le modifier, le définir par défaut ou le supprimer."; +"This Chat Background" = "Fond de cette discussion"; +"Thread ID" = "ID de fil"; +"Used only when a chat does not have its own custom background." = "Utilisé uniquement quand une discussion n'a pas son propre fond personnalisé."; +"View and manage chats with custom backgrounds" = "Voir et gérer les discussions avec fonds personnalisés"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "Ajouter un lieu"; +"Add preset" = "Ajouter un préréglage"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "Affecte tout ce qui précède. Désactivé, le thème et les remplacements de surface de RyukGram ne s’appliquent que lorsque iOS est en mode sombre — le mode clair reste intact."; +"Apply & restart" = "Appliquer et redémarrer"; +"Background" = "Arrière-plan"; +"Behavior" = "Comportement"; +"Change location" = "Changer le lieu"; +"Clipboard is not an Instagram URL" = "Le presse-papiers ne contient pas une URL Instagram"; +"Comments hidden" = "Commentaires masqués"; +"Comments shown" = "Commentaires affichés"; +"Copied text to clipboard" = "Texte copié dans le presse-papiers"; +"Copy" = "Copier"; +"Copy bio" = "Copier la bio"; +"Copy name" = "Copier le nom"; +"Could not find cover image" = "Image de couverture introuvable"; +"Current: %@" = "Actuel : %@"; +"Dark" = "Sombre"; +"Disable" = "Désactiver"; +"Download GIF" = "Télécharger le GIF"; +"Dropped pin" = "Repère placé"; +"Emoji" = "Emoji"; +"Enable" = "Activer"; +"Enable Location Services for Instagram in Settings to use your current location." = "Activez les services de localisation pour Instagram dans Réglages pour utiliser votre position actuelle."; +"Enter emoji" = "Saisir un emoji"; +"Fake location" = "Fausse position"; +"Force theme" = "Forcer le thème"; +"Keyboard theme" = "Thème du clavier"; +"Light" = "Clair"; +"Location access denied" = "Accès à la position refusé"; +"Location Services off" = "Services de localisation désactivés"; +"Name" = "Nom"; +"Nothing to copy" = "Rien à copier"; +"Off, Light, Dark, or OLED" = "Désactivé, clair, sombre ou OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "Thème de discussion OLED"; +"Open Settings" = "Ouvrir les réglages"; +"Optional per-surface overrides. Each one is independent of the theme above." = "Remplacements optionnels par surface. Chacun est indépendant du thème ci-dessus."; +"Override iOS appearance regardless of system mode" = "Remplace l’apparence iOS quel que soit le mode système"; +"Override the keyboard appearance when typing" = "Remplace l’apparence du clavier lors de la saisie"; +"Pick location" = "Choisir un lieu"; +"Pure black DM thread + incoming bubbles" = "Fil de DM et bulles reçues en noir pur"; +"Save" = "Enregistrer"; +"Save preset" = "Enregistrer le préréglage"; +"Saved locations" = "Lieux enregistrés"; +"Select color" = "Sélectionner une couleur"; +"Set location" = "Définir le lieu"; +"The theme RyukGram applies to Instagram." = "Le thème que RyukGram applique à Instagram."; +"Theme" = "Thème"; +"Turn Location Services on in Settings → Privacy to use your current location." = "Activez les services de localisation dans Réglages → Confidentialité pour utiliser votre position actuelle."; +"Type an emoji to use as the note bubble icon." = "Saisissez un emoji à utiliser comme icône de la bulle de note."; +"Profile picture" = "Photo de profil"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu comptes ? Les %ld premiers seront traités pour éviter les limites de débit."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu comptes ? L’opération se fait séquentiellement avec une courte pause entre chaque."; +"%@ followers · %@ following" = "%@ abonnés · %@ abonnements"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "il y a %dj"; +"%dh ago" = "il y a %dh"; +"%dm ago" = "il y a %dmin"; +"%lu accounts followed" = "%lu comptes suivis"; +"%lu accounts unfollowed" = "%lu comptes désabonnés"; +"%lu followers · %lu following" = "%lu abonnés · %lu abonnements"; +"%lu followers removed" = "%lu abonnés supprimés"; +"%lu of %lu" = "%lu sur %lu"; +"%lu of %lu checks on" = "%lu vérifications sur %lu activées"; +"%lu saved · comparing against %@" = "%lu enregistrés · comparaison avec %@"; +"(empty)" = "(vide)"; +"(no analyzer data)" = "(aucune donnée d’analyseur)"; +"a saved snapshot" = "une capture enregistrée"; +"About Profile Analyzer" = "À propos de l’analyseur de profil"; +"All preferences (%lu)" = "Toutes les préférences (%lu)"; +"Analysis complete" = "Analyse terminée"; +"Analysis failed" = "Échec de l’analyse"; +"Another analysis is already running" = "Une autre analyse est déjà en cours"; +"Available after your next scan" = "Disponible après votre prochaine analyse"; +"Batch follow" = "Suivi par lot"; +"Batch follow finished" = "Suivi par lot terminé"; +"Batch remove followers" = "Supprimer des abonnés en lot"; +"Batch remove followers finished" = "Suppression d'abonnés en lot terminée"; +"Batch unfollow" = "Désabonnement par lot"; +"Batch unfollow finished" = "Désabonnement par lot terminé"; +"Categories" = "Catégories"; +"Checks" = "Vérifications"; +"Clear visited profiles" = "Effacer les profils visités"; +"Compare next scan against" = "Comparer le prochain scan avec"; +"Comparing against %@" = "Comparaison avec %@"; +"Continue" = "Continuer"; +"Couldn't fetch profile information" = "Impossible de récupérer les informations du profil"; +"Delete %lu snapshots? This can't be undone." = "Supprimer %lu captures ? Cette action est irréversible."; +"Delete (%lu)" = "Supprimer (%lu)"; +"Delete snapshots" = "Supprimer les captures"; +"Delete this snapshot? This can't be undone." = "Supprimer cette capture ? Cette action est irréversible."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "Chaque scan enregistre une copie complète de vos abonnés et abonnements pour pouvoir les comparer plus tard. Tout reste sur cet appareil."; +"Export" = "Exporter"; +"Fetching followers (%lu/%ld)…" = "Récupération des abonnés (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "Récupération des abonnements (%lu/%ld)…"; +"Fetching profile info…" = "Récupération des infos du profil…"; +"File is not a valid RyukGram backup." = "Le fichier n’est pas un export RyukGram valide."; +"Filter" = "Filtrer"; +"Filter · %lu" = "Filtre · %lu"; +"First scan: %@" = "Première analyse : %@"; +"First scan: we collect your followers and following lists and save them locally." = "Première analyse : nous collectons vos listes d’abonnés et d’abonnements et les enregistrons localement."; +"Follow back" = "Suivre en retour"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "Le nombre d’abonnés dépasse %ld — analyse désactivée pour éviter les limites de débit."; +"Followers" = "Abonnés"; +"Following… %lu / %lu" = "Abonnement… %lu / %lu"; +"Gained since last scan" = "Gagnés depuis la dernière analyse"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "Attention : cette fonctionnalité utilise l’API privée d’Instagram. L’exécuter plusieurs fois de suite ou juste après une activité importante de suivi/désabonnement peut déclencher une courte limitation. Utilisez-la avec parcimonie et à vos risques."; +"Import complete" = "Import terminé"; +"Include" = "Inclure"; +"Keep newest" = "Garder les plus récents"; +"Keep newest snapshots" = "Garder les captures les plus récentes"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "Les grands comptes sont bloqués : l’analyse est désactivée au-dessus de 13 000 abonnés pour éviter qu’Instagram limite toute l’app."; +"Last scan: %@" = "Dernière analyse : %@"; +"Logs every profile you open. Stays on-device." = "Enregistre chaque profil que vous ouvrez. Reste sur l’appareil."; +"Lost followers" = "Abonnés perdus"; +"Most visited" = "Plus visités"; +"Mutual followers" = "Abonnements mutuels"; +"Name: %@ → %@" = "Nom : %@ → %@"; +"New followers" = "Nouveaux abonnés"; +"NEW" = "NOUVEAU"; +"New first" = "Nouveaux d'abord"; +"New only" = "Nouveaux seulement"; +"No active Instagram session found" = "Aucune session Instagram active trouvée"; +"No results" = "Aucun résultat"; +"No scan yet" = "Aucune analyse pour le moment"; +"Not following you back" = "Ne vous suivent pas en retour"; +"Not verified only" = "Non vérifiés seulement"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "Rien n’est téléversé — tout reste sur cet appareil et peut être effacé depuis l’icône de corbeille."; +"Nothing was applied." = "Rien n’a été appliqué."; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "Les captures plus anciennes au-delà de la limite sont supprimées automatiquement"; +"Older snapshots beyond this limit are deleted on the next scan." = "Les captures plus anciennes au-delà de cette limite sont supprimées au prochain scan."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "Choisissez ce qu’il faut supprimer. « Captures » efface les différences de scan et toutes les captures enregistrées ; « profils visités » efface l’historique des visites."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "Choisissez les catégories que calcule chaque analyse. Une vérification désactivée apparaît grisée et est ignorée : elle n'est ni calculée ni affichée."; +"Posts" = "Publications"; +"Preferences" = "Préférences"; +"Previous scan" = "Scan précédent"; +"Private account" = "Compte privé"; +"Private only" = "Privés seulement"; +"Profile Analyzer" = "Analyseur de profil"; +"Profile Analyzer data" = "Données de l’analyseur de profil"; +"Profile picture changed" = "Photo de profil modifiée"; +"Profile updates" = "Mises à jour du profil"; +"Profiles you've opened recently" = "Profils que vous avez ouverts récemment"; +"Raw" = "Brut"; +"Raw JSON" = "JSON brut"; +"Record snapshots" = "Enregistrer les captures"; +"Remove @%@ as a follower?" = "Supprimer @%@ de vos abonnés ?"; +"Remove follower" = "Supprimer l'abonné"; +"Removing… %lu / %lu" = "Suppression… %lu / %lu"; +"Recording" = "Enregistrement"; +"Request failed" = "Échec de la requête"; +"Reset analyzer data" = "Réinitialiser les données de l’analyseur"; +"Reset complete" = "Réinitialisation terminée"; +"Reset everything" = "Tout réinitialiser"; +"Reset selected data?" = "Réinitialiser les données sélectionnées ?"; +"Reset snapshots" = "Réinitialiser les captures"; +"Rolling — always your last run" = "Continu — toujours votre dernier scan"; +"Run analysis" = "Lancer l’analyse"; +"Run your first analysis" = "Lancer votre première analyse"; +"Save a dated entry on every scan" = "Enregistrer une entrée datée à chaque scan"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "À partir de la deuxième analyse : chaque analyse est comparée à la précédente afin d’afficher les abonnés gagnés/perdus, vos propres suivis/désabonnements et les mises à jour de profil."; +"Settings" = "Réglages"; +"Since last scan" = "Depuis la dernière analyse"; +"Snapshot" = "Capture"; +"Snapshot saved" = "Capture enregistrée"; +"Snapshots" = "Captures"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "Les captures vous permettent d’archiver chaque scan et de choisir celle à laquelle les nouveaux scans se comparent. « Suivre les visites » enregistre chaque profil que vous ouvrez pour les consulter ici."; +"Sort" = "Trier"; +"Starting…" = "Démarrage…"; +"They follow you, you don't follow back" = "Ils vous suivent, vous ne les suivez pas en retour"; +"This can't be undone." = "Cette action est irréversible."; +"Ticked data will be cleared. Tap a row to see what's stored." = "Les données sélectionnées seront effacées. Touchez une ligne pour voir ce qui est stocké."; +"Today" = "Aujourd’hui"; +"Too many followers" = "Trop d’abonnés"; +"Too many followers to analyze" = "Trop d’abonnés à analyser"; +"Track visited profiles" = "Suivre les profils visités"; +"Tracking" = "Suivi"; +"Tracking off — enable below to log visits" = "Suivi désactivé — activez ci-dessous pour enregistrer les visites"; +"Unfollow" = "Se désabonner"; +"Unfollow %lu" = "Se désabonner de %lu"; +"Unfollow @%@?" = "Se désabonner de @%@ ?"; +"Unfollowed you since last scan" = "Vous ont désabonné depuis la dernière analyse"; +"Unfollowing… %lu / %lu" = "Désabonnement… %lu / %lu"; +"Unlimited" = "Illimité"; +"Username A → Z" = "Nom d’utilisateur A → Z"; +"Username Z → A" = "Nom d’utilisateur Z → A"; +"Username, name or picture changes" = "Changements de nom d’utilisateur, nom ou photo"; +"Username: @%@ → @%@" = "Nom d’utilisateur : @%@ → @%@"; +"Using %@ across %lu snapshots." = "Utilisation de %@ sur %lu captures."; +"Verified only" = "Vérifiés seulement"; +"Visited" = "Visité"; +"Visited profiles" = "Profils visités"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "Nous refusons de lancer l’analyse lorsque le nombre d’abonnés dépasse %ld afin d’éviter les limites de débit d’Instagram."; +"You both follow each other" = "Vous vous suivez mutuellement"; +"You don't follow back" = "Vous ne suivez pas en retour"; +"You follow them, they don't follow back" = "Vous les suivez, ils ne vous suivent pas en retour"; +"You started following" = "Vous avez commencé à suivre"; +"Your current scan was archived" = "Votre analyse actuelle a été archivée"; +"You unfollowed" = "Vous vous êtes désabonné"; +"your previous scan" = "votre scan précédent"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "« Scan précédent » se mesure toujours par rapport à votre dernier scan. Choisissez une capture enregistrée pour comparer plutôt à un point fixe dans le temps."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ Cela devient volumineux — baissez la limite ou supprimez les captures plus anciennes pour libérer de l’espace."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "Format absolu"; +"Add chat" = "Ajouter une discussion"; +"Add custom domain" = "Ajouter un domaine personnalisé"; +"Add to list?" = "Ajouter à la liste ?"; +"Add user" = "Ajouter un utilisateur"; +"Apply" = "Appliquer"; +"Apply to" = "Appliquer à"; +"Chats" = "Discussions"; +"Colored" = "Coloré"; +"Could not read file." = "Impossible de lire le fichier."; +"Could not resolve user ID" = "Impossible de résoudre l’ID utilisateur"; +"Current location" = "Position actuelle"; +"Custom" = "Personnalisé"; +"Delete" = "Supprimer"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "Chaque surface d’IG utilise un formateur NSDate différent. Activez celles auxquelles vous voulez appliquer ce format."; +"Enable fake location" = "Activer la fausse position"; +"Excluded chats" = "Discussions exclues"; +"Excluded users" = "Utilisateurs exclus"; +"Follow default" = "Suivre par défaut"; +"Force OFF (allow unsends)" = "Forcer NON (autoriser les annulations)"; +"Force ON (preserve unsends)" = "Forcer OUI (conserver les annulations)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "Inclure les secondes lorsque le format affiche déjà l’heure. Le format personnalisé gère lui-même les secondes avec {ss}."; +"Add custom format…" = "Ajouter un format personnalisé…"; +"Edit" = "Modifier"; +"Template" = "Modèle"; +"Placeholders" = "Espaces réservés"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "Les espaces réservés sont remplacés par des parties de la date ; le reste s’affiche tel quel."; +"Tap a placeholder to insert it at the cursor." = "Touchez un espace réservé pour l’insérer au niveau du curseur."; +"Included chats" = "Discussions incluses"; +"Included users" = "Utilisateurs inclus"; +"KD: default" = "CS : défaut"; +"KD: ON" = "CS : OUI"; +"Keep-deleted" = "Conservation des supprimés"; +"Keep-deleted override" = "Remplacement de conservation"; +"Name (A–Z)" = "Nom (A–Z)"; +"No DM thread found with @%@" = "Aucun fil de DM trouvé avec @%@"; +"Presets" = "Préréglages"; +"Recently added" = "Ajoutés récemment"; +"Relative time" = "Temps relatif"; +"Relative within" = "Relatif dans"; +"Remove from list" = "Retirer de la liste"; +"Reset" = "Réinitialiser"; +"Search" = "Rechercher"; +"Search address or place" = "Rechercher une adresse ou un lieu"; +"Search by name or username" = "Rechercher par nom ou nom d’utilisateur"; +"Search by username or name" = "Rechercher par nom d’utilisateur ou nom"; +"Select location on map" = "Sélectionner un lieu sur la carte"; +"Set current location" = "Définir la position actuelle"; +"Set keep-deleted override" = "Définir le remplacement de conservation"; +"Show map button" = "Afficher le bouton carte"; +"Show relative time for dates younger than this many days. 0 disables it." = "Afficher le temps relatif pour les dates plus récentes que ce nombre de jours. 0 le désactive."; +"Show seconds" = "Afficher les secondes"; +"Sort by" = "Trier par"; +"Thread" = "Fil"; +"Time" = "Heure"; +"Use this location" = "Utiliser ce lieu"; +"User '%@' not found" = "Utilisateur « %@ » introuvable"; +"Username (A–Z)" = "Nom d’utilisateur (A–Z)"; +"Within %ld days" = "Sous %ld jours"; +"Within 1 day" = "Sous 1 jour"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "Aucun mot de passe trouvé"; +"No text field found" = "Aucun champ de texte trouvé"; +"Refresh Reels?" = "Rafraîchir les reels ?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu comptes"; +"%lu loaded" = "%lu chargés"; +"%lu loaded · all loaded" = "%lu chargés · tout chargé"; +"Doesn't follow you" = "Ne vous suit pas"; +"Everyone is already loaded." = "Tout le monde est déjà chargé."; +"Filter & sort" = "Filtrer et trier"; +"Follows me" = "M'abonne"; +"Follows me first" = "M'abonne d'abord"; +"Follows you" = "Vous suit"; +"Hides everyone who doesn't match all picked filters." = "Masque tous ceux qui ne correspondent pas à tous les filtres choisis."; +"Jump to bottom" = "Aller en bas"; +"Jump to top" = "Aller en haut"; +"List" = "Liste"; +"List fully loaded" = "Liste entièrement chargée"; +"Load more" = "Charger plus"; +"Loaded more" = "Plus chargés"; +"Mutuals" = "Abonnements mutuels"; +"Mutuals first" = "Abonnements mutuels d'abord"; +"Note copied" = "Note copiée"; +"People I follow" = "Personnes que je suis"; +"People I follow first" = "Personnes que je suis d'abord"; +"Reverse order" = "Ordre inverse"; +"Show only" = "Afficher uniquement"; +"Verified" = "Vérifié"; +"Verified first" = "Vérifiés d'abord"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(non défini)"; +"720p • progressive • fastest" = "720p • progressif • le plus rapide"; +"Add language" = "Ajouter une langue"; +"Album name" = "Nom de l'album"; +"Are you sure?" = "Êtes-vous sûr ?"; +"Bundle" = "Bundle"; +"Copy audio URL" = "Copier l’URL audio"; +"Copy quality info" = "Copier les infos de qualité"; +"Copy video URL" = "Copier l’URL vidéo"; +"Could not access reel media" = "Impossible d’accéder au média du reel"; +"Could not access reel photo" = "Impossible d’accéder à la photo du reel"; +"Could not write file." = "Impossible d’écrire le fichier."; +"Download all and share?" = "Tout télécharger et partager ?"; +"Download Quality" = "Qualité de téléchargement"; +"Downloading %d%%" = "Téléchargement %d%%"; +"e.g. 1000000" = "ex. 1000000"; +"Localization file not found" = "Fichier de localisation introuvable"; +"Enter the language code (e.g. fr, de, ja)" = "Saisir le code de langue (ex. fr, de, ja)"; +"Error" = "Erreur"; +"Extras" = "Extras"; +"FFmpegKit Debug" = "Débogage FFmpegKit"; +"File is empty or not a valid .strings file." = "Le fichier est vide ou n’est pas un fichier .strings valide."; +"KD: OFF" = "CS : NON"; +"Keep-deleted: OFF" = " • Conservation des supprimés : DÉSACTIVÉ"; +"Keep-deleted: ON" = " • Conservation des supprimés : ACTIVÉ"; +"Later" = "Plus tard"; +"Loading" = "Chargement"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "Nom de l'album Photos dans lequel RyukGram enregistre. Laissez vide pour restaurer la valeur par défaut."; +"Next" = "Suivant"; +"No results found." = "Aucun résultat trouvé."; +"No!" = "Non !"; +"Pick a language to update, or add a new one" = "Choisissez une langue à mettre à jour, ou ajoutez-en une nouvelle"; +"Preset" = "Préréglage"; +"Restart" = "Redémarrer"; +"Restart now" = "Redémarrer maintenant"; +"Restart required" = "Redémarrage requis"; +"Saved preset \"%@\"" = "Préréglage « %@ » enregistré"; +"selected" = "sélectionné"; +"Shared icon, or override per button" = "Icône partagée, ou remplacement par bouton"; +"Speed" = "Vitesse"; +"Unset" = "Non défini"; +"Update localization" = "Mettre à jour la localisation"; +"Updated %@ (%ld keys). Restart to apply." = "%@ mis à jour (%ld clés). Redémarrez pour appliquer."; +"Use default" = "Utiliser la valeur par défaut"; +"Username or PK" = "Nom d'utilisateur ou PK"; +"Username or raw user PK" = "Nom d'utilisateur ou PK brut"; +"Yes" = "Oui"; +"You must restart the app to apply this change" = "Vous devez redémarrer l’app pour appliquer ce changement"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "RyukGram vous plaît ?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "C'est gratuit et rien ne quitte votre appareil. Si vous aimez l'utiliser, un café le fait vivre."; +"Donate" = "Faire un don"; +"I already did" = "Déjà fait"; +"Maybe later" = "Plus tard peut-être"; +"This means a lot" = "Ça compte beaucoup"; +"Appreciate the support" = "Merci pour le soutien"; +"No worries, enjoy the tweak" = "Pas de souci, profitez du tweak"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, Don"; +"About" = "À propos"; +"Arabic translation" = "Traduction arabe"; +"Chinese (Traditional and Simplified) translation" = "Traduction chinoise (traditionnelle et simplifiée)"; +"Credits" = "Crédits"; +"Developers" = "Développeurs"; +"installed" = "installée"; +"Korean translation" = "Traduction coréenne"; +"Portuguese (Brazil) translation" = "Traduction portugaise (Brésil)"; +"Turkish translation" = "Traduction turque"; +"Vietnamese translation" = "Traduction vietnamienne"; +"French translation" = "Traduction française"; +"Japanese translation" = "Traduction japonaise"; +"Code contributions" = "Contributions de code"; +"Following feed mode (from InstaSane)" = "Mode du fil Abonnements (depuis InstaSane)"; +"latest" = "dernière"; +"Links" = "Liens"; +"No releases" = "Aucune version"; +"SCInsta developer" = "Développeur de SCInsta"; +"Release notes" = "Notes de version"; +"Releases" = "Versions"; +"Report an issue" = "Signaler un problème"; +"Russian translation" = "Traduction russe"; +"RyukGram developer" = "Développeur RyukGram"; +"Join Telegram channel" = "Rejoindre le canal Telegram"; +"Source code" = "Code source"; +"View on GitHub" = "Voir sur GitHub"; +"Spanish translation" = "Traduction espagnole"; +"Inspirations" = "Inspirations"; +"Inspirations, contributors, translators" = "Inspirations, contributeurs, traducteurs"; +"Code and research" = "Code et recherche"; +"Translators" = "Traducteurs"; +"BHInstagram developer" = "Développeur de BHInstagram"; +"OLED theme inspiration" = "Inspiration du thème OLED"; +"Donate to Ryuk" = "Faire un don à Ryuk"; +"Support RyukGram development" = "Soutenir le développement de RyukGram"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram est un projet indépendant inspiré de SCInsta."; +"Browse changes from previous releases" = "Parcourir les changements des versions précédentes"; +"Code inspiration" = "Inspiration de code"; +"zxPluginsInject sideload compatibility shim" = "Shim de compatibilité sideload zxPluginsInject"; +"Telegram channel" = "Canal Telegram"; +"Testing and feature suggestions" = "Tests et suggestions de fonctionnalités"; +"Version" = "Version"; +"Version, credits, and links" = "Version, crédits et liens"; +"What's new in RyukGram" = "Nouveautés de RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • progressif • silencieux"; +"Audio only" = "Audio uniquement"; +"Audio ready" = "Audio prêt"; +"Audio track %ld" = "Piste audio %ld"; +"Download video at the highest available quality" = "Télécharger la vidéo dans la meilleure qualité disponible"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "Télécharge la vidéo HD via des flux DASH et l’encode en H.264. Nécessite FFmpegKit."; +"Encoding in software" = "Encodage logiciel"; +"Encoding speed" = "Vitesse d’encodage"; +"Enhanced downloads" = "Téléchargements améliorés"; +"Faster = lower quality" = "Plus rapide = qualité inférieure"; +"FFmpeg not available" = "FFmpeg indisponible"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit n’est pas disponible. Installez l’IPA sideloadée ou la variante .deb _ffmpeg pour l’activer."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "L'encodeur matériel n'est pas disponible en arrière-plan — vos réglages de qualité ont été conservés."; +"No audio track found" = "Aucune piste audio trouvée"; +"Photo" = "Photo"; +"Photo quality" = "Qualité photo"; +"Size unknown" = "Taille inconnue"; +"calculating size…" = "calcul de la taille…"; +"silent" = "silencieux"; +"Use highest resolution available" = "Utiliser la plus haute résolution disponible"; +"Video encoder locked up — restart Instagram to encode again" = "L'encodeur vidéo s'est bloqué — redémarrez Instagram pour encoder à nouveau"; +"Video only" = "Vidéo seule"; +"Video-only & every audio track" = "Vidéo seule et toutes les pistes audio"; +"Video quality" = "Qualité vidéo"; +"Which quality to download" = "Qualité à télécharger"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "« %@ » n'est pas dans cette version de FFmpegKit — utilisation du h264 matériel à la place."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-bit 4:2:0. ~2x plus lent, dégradés plus doux."; +"10-bit colour. Slower, smoother gradients. Software only." = "Couleur 10-bit. Plus lent, dégradés plus doux. Logiciel uniquement."; +"1080p30 baseline." = "Base 1080p30."; +"4K30 baseline." = "Base 4K30."; +"8-bit 4:2:0. Universal default." = "8-bit 4:2:0. Valeur universelle par défaut."; +"8-bit 4:2:2 chroma. Niche playback." = "Chroma 8-bit 4:2:2. Lecture spécialisée."; +"8-bit 4:2:2 chroma. Software only." = "Chroma 8-bit 4:2:2. Logiciel uniquement."; +"8-bit 4:4:4 chroma. Software only." = "Chroma 8-bit 4:4:4. Logiciel uniquement."; +"8-bit 4:4:4 full chroma. Niche playback." = "Chroma complet 8-bit 4:4:4. Lecture spécialisée."; +"8-bit. Best for modern devices." = "8-bit. Idéal pour les appareils modernes."; +"Advanced encoding" = "Encodage avancé"; +"Advanced encoding settings" = "Réglages d'encodage avancés"; +"Archival quality." = "Qualité d'archivage."; +"Audio bitrate" = "Débit audio"; +"Audio channels" = "Canaux audio"; +"Audio codec" = "Codec audio"; +"Audio conversion failed" = "Échec de la conversion audio"; +"Audio sample rate" = "Fréquence d'échantillonnage audio"; +"Balanced. libx264 default." = "Équilibré. Valeur par défaut de libx264."; +"Best practical quality per bit." = "Meilleure qualité pratique par bit."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "Le débit, les canaux et la fréquence d'échantillonnage ne s'appliquent que lorsque le codec est AAC (réencodage)."; +"Cartoons / anime." = "Dessins animés / anime."; +"Cinematic. Smaller files." = "Cinématique. Fichiers plus petits."; +"Codec" = "Codec"; +"Container" = "Conteneur"; +"Copy (passthrough)" = "Copier (passthrough)"; +"CRF quality" = "Qualité CRF"; +"Downloading video…" = "Téléchargement de la vidéo…"; +"Easier to play back on weak devices." = "Plus facile à lire sur les appareils peu puissants."; +"Encoder unavailable" = "Encodeur indisponible"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "Exemples : 8M, 12M, 25M, 4500k. Laissez vide pour auto."; +"Failed to download video" = "Échec du téléchargement de la vidéo"; +"Fast, fixed-bitrate, GPU-accelerated." = "Rapide, débit fixe, accéléré par GPU."; +"Fastest, worst compression." = "Le plus rapide, pire compression."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart déplace l'index MP4 au début pour que la lecture commence avant la mise en mémoire tampon complète du fichier. « Supprimer les métadonnées » retire les balises source (date de création, gestionnaire, encodeur) du fichier."; +"FFmpeg documentation" = "Documentation FFmpeg"; +"FFmpeg mux failed" = "Échec du multiplexage FFmpeg"; +"Frame rate" = "Fréquence d'images"; +"H.264 level" = "Niveau H.264"; +"H.264 profile" = "Profil H.264"; +"Hardware (VideoToolbox)" = "Matériel (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "Le matériel (VideoToolbox) ne prend en charge que yuv420p — « %@ » a été ignoré. Passez au logiciel (libx264) pour l'utiliser."; +"Keep original audio. Fast." = "Conserver l'audio d'origine. Rapide."; +"Keep the source frame rate." = "Conserver la fréquence d'images source."; +"Let the encoder pick." = "Laisser l'encodeur choisir."; +"Live-action video." = "Vidéo en prises de vue réelles."; +"Lossless. Huge files." = "Sans perte. Fichiers énormes."; +"Low-latency streaming." = "Diffusion à faible latence."; +"Manual ffmpeg controls in place of Encoding speed." = "Contrôles ffmpeg manuels à la place de la vitesse d'encodage."; +"Marginal gain, huge time cost." = "Gain marginal, coût en temps énorme."; +"Max resolution" = "Résolution max."; +"Mono" = "Mono"; +"No tuning. Default." = "Aucun réglage. Par défaut."; +"None" = "Aucun"; +"Pixel format" = "Format de pixel"; +"Pixel format ignored" = "Format de pixel ignoré"; +"Preserve film grain." = "Préserver le grain du film."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "Le préréglage et le réglage ne s'appliquent qu'au logiciel (libx264). Associez le profil au format de pixel : high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Les incompatibilités sont reconverties silencieusement. Le matériel utilise toujours yuv420p."; +"Re-encode. Use when source is opus or unsupported." = "Réencoder. À utiliser quand la source est opus ou non prise en charge."; +"Reset advanced encoding" = "Réinitialiser l'encodage avancé"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "Définir un débit vidéo fait passer le logiciel en débit fixe et ignore le CRF. Laissez vide pour le CRF. Le matériel utilise le débit."; +"Slideshow-like content." = "Contenu de type diaporama."; +"Slower, better compression per bit." = "Plus lent, meilleure compression par bit."; +"Smaller, visible artefacts." = "Plus petit, artéfacts visibles."; +"Software (libx264)" = "Logiciel (libx264)"; +"Standard 8-bit." = "8-bit standard."; +"Stereo" = "Stéréo"; +"Streaming default." = "Valeur par défaut de la diffusion."; +"Strip metadata" = "Supprimer les métadonnées"; +"Top of AAC." = "Le meilleur de l'AAC."; +"Tune" = "Réglage"; +"Unknown error" = "Erreur inconnue"; +"Very high quality." = "Très haute qualité."; +"Video bitrate" = "Débit vidéo"; +"Video codec" = "Codec vidéo"; +"Visually lossless. RyukGram default." = "Visuellement sans perte. Valeur par défaut de RyukGram."; +"Widest compatibility, no B-frames." = "Compatibilité maximale, pas d'images B."; +"Worst quality." = "Pire qualité."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "Gestes d’appui long"; +"Inserts a button in the profile navigation header" = "Insère un bouton dans l’en-tête de navigation du profil"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "Ajoute un bouton d’action RyukGram à l’en-tête du profil avec copier, voir la photo, partager, enregistrer et infos de profil. Par défaut, un toucher ouvre le menu ; changez ce comportement dans Configurer le menu."; +"Configure menu" = "Configurer le menu"; +"Reorder, enable/disable, set default tap, show date" = "Réordonner, activer/désactiver, définir l’action par défaut, afficher la date"; +"Reorder, enable/disable, set default tap" = "Réordonner, activer/désactiver, définir l’action par défaut"; +"RyukGram profile actions" = "Actions de profil RyukGram"; +"Reorder sections" = "Réordonner les sections"; +"Drag the ≡ handle to reorder sections." = "Faites glisser la poignée ≡ pour réordonner les sections."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "Faites glisser la poignée ≡ pour réordonner. Désactivez une ligne pour la masquer du menu. Marquez une section comme sous-menu pour replier ses actions derrière une entrée unique."; +"Show as submenu" = "Afficher comme sous-menu"; +"Collapse this section's actions behind a single entry" = "Replier les actions de cette section derrière une entrée unique"; +"Configure: %@" = "Configurer : %@"; +"What happens on a single tap. Long-press always opens the full menu." = "Ce qui se passe lors d’un simple toucher. L’appui long ouvre toujours le menu complet."; +"Reset to defaults" = "Réinitialiser aux valeurs par défaut"; +"This will restore the default sections, order, and toggles for this menu." = "Cela restaurera les sections, l’ordre et les réglages par défaut de ce menu."; +"Audio & visibility" = "Audio et visibilité"; +"DM disappearing media" = "Média éphémère des DM"; +"Bulk download" = "Téléchargement groupé"; +"Feed settings" = "Réglages du fil"; +"Reels settings" = "Réglages des reels"; +"Profile settings" = "Réglages du profil"; +"Stories settings" = "Réglages des stories"; +"Copy ID" = "Copier l’ID"; +"Copy Info" = "Copier les infos"; +"Copy all info" = "Copier toutes les infos"; +"Copy media URL" = "Copier l’URL du média"; +"Copy profile link" = "Copier le lien du profil"; +"Copy username" = "Copier le nom d’utilisateur"; +"Download" = "Télécharger"; +"Download to Gallery" = "Télécharger dans la galerie"; +"Download all to Gallery" = "Tout télécharger dans la galerie"; +"Exclude/include user" = "Exclure/inclure l’utilisateur"; +"Mute / unmute audio" = "Couper/rétablir le son"; +"Save picture to Gallery" = "Enregistrer la photo dans la galerie"; +"Share picture" = "Partager la photo"; +"View picture" = "Voir la photo"; +"Bio" = "Bio"; +"ID" = "ID"; +"Info" = "Infos"; +"Profile info" = "infos du profil"; +"Profile link" = "Lien du profil"; +"Picture not found" = "Photo introuvable"; +"Private profile" = "Profil privé"; +"Profile unavailable" = "Profil indisponible"; +"Public profile" = "Profil public"; +"Username" = "Nom d’utilisateur"; +"Followers: %@" = "Abonnés : %@"; +"Following: %@" = "Abonnements : %@"; +"Copied %@" = "Copié %@"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(inconnu)"; +"Added %lu" = "%lu ajoutés"; +"All files deleted" = "Tous les fichiers ont été supprimés"; +"Browsing" = "Navigation"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "%lu éléments enregistrés par une version précédente ont été trouvés. Les restaurer dans votre galerie maintenant ?"; +"Gallery data from a previous version was found. Restore it now?" = "Des données de galerie d'une version précédente ont été trouvées. Les restaurer maintenant ?"; +"Gallery restored" = "Galerie restaurée"; +"Import failed" = "Échec de l'importation"; +"Import to Gallery" = "Importer dans la galerie"; +"Imported" = "Importé"; +"Importing…" = "Importation…"; +"Not Now" = "Plus tard"; +"Nothing imported" = "Rien importé"; +"Restore" = "Restaurer"; +"Restore Gallery" = "Restaurer la galerie"; +"Restore failed" = "Échec de la restauration"; +"Restoring gallery…" = "Restauration de la galerie…"; +"By source" = "Par source"; +"By type" = "Par type"; +"By user" = "Par utilisateur"; +"Clear filters" = "Effacer les filtres"; +"Comment" = "Commentaire"; +"Create" = "Créer"; +"Create & Move" = "Créer et déplacer"; +"Delete %@?" = "Supprimer %@ ?"; +"Delete all files" = "Supprimer tous les fichiers"; +"Delete all images" = "Supprimer toutes les images"; +"Delete all videos" = "Supprimer toutes les vidéos"; +"Delete by user" = "Supprimer par utilisateur"; +"Delete DM media" = "Supprimer les médias des DM"; +"Delete feed posts" = "Supprimer les publications du fil"; +"Delete files" = "Supprimer les fichiers"; +"Delete Folder" = "Supprimer le dossier"; +"Delete from Gallery?" = "Supprimer de la galerie ?"; +"Delete profile pictures" = "Supprimer les photos de profil"; +"Delete reels" = "Supprimer les reels"; +"Delete selected" = "Supprimer la sélection"; +"Delete Selected Files?" = "Supprimer les fichiers sélectionnés ?"; +"Delete stories" = "Supprimer les stories"; +"Delete thumbnails" = "Supprimer les miniatures"; +"Deleted from Gallery" = "Supprimé de la galerie"; +"Deleted selected files" = "Fichiers sélectionnés supprimés"; +"Deselect All" = "Tout désélectionner"; +"DM media deleted" = "Médias des DM supprimés"; +"DMs" = "DM"; +"Each user appears as a folder next to your real folders." = "Chaque utilisateur apparaît comme un dossier à côté de vos vrais dossiers."; +"Each user gets a labelled section in the grid/list." = "Chaque utilisateur a une section étiquetée dans la grille/liste."; +"Enable gallery" = "Activer la galerie"; +"Failed" = "Échec"; +"Failed to delete" = "Échec de la suppression"; +"Favorite" = "Favori"; +"Favorite selected" = "Mettre la sélection en favori"; +"Favorites only" = "Favoris seulement"; +"Feed posts deleted" = "Publications du fil supprimées"; +"Files deleted" = "Fichiers supprimés"; +"Flat list. No grouping." = "Liste à plat. Sans regroupement."; +"Folder name" = "Nom du dossier"; +"Folders" = "Dossiers"; +"From RyukGram Gallery" = "Audio depuis la galerie RyukGram"; +"Gallery" = "Galerie"; +"Gallery only" = "Galerie seulement"; +"Gallery save mode" = "Mode d’enregistrement de la galerie"; +"Gallery Settings" = "Réglages de la galerie"; +"GIFs" = "GIF"; +"Grid columns" = "Colonnes de la grille"; +"Grid view" = "Vue en grille"; +"Group by user" = "Grouper par utilisateur"; +"Group first by" = "Grouper d’abord par"; +"Order by" = "Trier par"; +"Favorites first" = "Favoris d’abord"; +"Any time" = "N’importe quand"; +"This year" = "Cette année"; +"%ld columns" = "%ld colonnes"; +"Hold DM tab to open gallery" = "Maintenir l’onglet DM pour ouvrir la galerie"; +"Images" = "Images"; +"Images deleted" = "Images supprimées"; +"Images first" = "Images d’abord"; +"item" = "élément"; +"items" = "éléments"; +"Largest first" = "Les plus grands d’abord"; +"List view" = "Vue en liste"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "Maintenez le bouton de la boîte de réception dans la barre du bas pour ouvrir la galerie RyukGram"; +"Manage" = "Gérer"; +"More" = "Plus"; +"Move selected" = "Déplacer la sélection"; +"Move to Folder" = "Déplacer vers un dossier"; +"Name A-Z" = "Nom A-Z"; +"Name Z-A" = "Nom Z-A"; +"New Folder" = "Nouveau dossier"; +"New folder…" = "Nouveau dossier…"; +"Newest first" = "Plus récents d’abord"; +"No files in Gallery" = "Aucun fichier dans la galerie"; +"No files to delete" = "Aucun fichier à supprimer"; +"No matching files" = "Aucun fichier correspondant"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "Bibliothèque locale des médias téléchargés via RyukGram. Le mode d’enregistrement détermine où « Télécharger dans Photos » écrit réellement."; +"Open" = "Ouvrir"; +"Open Original Post" = "Ouvrir la publication d’origine"; +"Options" = "Options"; +"Other" = "Autre"; +"Photos + Gallery" = "Photos + Galerie"; +"Photos only" = "Photos seulement"; +"Profile pictures deleted" = "Photos de profil supprimées"; +"Reels deleted" = "Reels supprimés"; +"Rename" = "Renommer"; +"Rename Folder" = "Renommer le dossier"; +"Root" = "Racine"; +"Save media from the preview screen\nto see it here." = "Enregistrez des médias depuis l’écran d’aperçu\npour les voir ici."; +"Saved %lu items to Gallery" = "%lu éléments enregistrés dans la galerie"; +"Saved to Gallery" = "Enregistré dans la galerie"; +"Saving to Gallery" = "Enregistrement dans la galerie..."; +"Search users" = "Rechercher des utilisateurs"; +"Sections" = "Sections"; +"Select All" = "Tout sélectionner"; +"Share" = "Partager"; +"Share selected" = "Partager la sélection"; +"Show favorites at top" = "Afficher les favoris en haut"; +"Show gallery entries in download menus and unlock the gallery button" = "Afficher les entrées de galerie dans les menus de téléchargement et débloquer le bouton galerie"; +"Smallest first" = "Les plus petits d’abord"; +"Source" = "Source"; +"Source user" = "Utilisateur source"; +"Storage" = "Stockage"; +"Stories deleted" = "Stories supprimées"; +"Story" = "Story"; +"The original content may no longer exist." = "Le contenu d’origine n’existe peut-être plus."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "Ce dossier contient %ld fichier(s). Ils seront déplacés vers le dossier parent."; +"This folder is empty." = "Ce dossier est vide."; +"This will permanently remove %ld file%@ from the gallery." = "Cela supprimera définitivement %ld fichier%@ de la galerie."; +"This will permanently remove %ld file(s)." = "Cela supprimera définitivement %ld fichier(s)."; +"This will permanently remove this file from the gallery." = "Cela supprimera définitivement ce fichier de la galerie."; +"Thumb" = "Miniature"; +"Thumbnails deleted" = "Miniatures supprimées"; +"to Gallery" = "vers la galerie"; +"Total files" = "Total des fichiers"; +"Total size" = "Taille totale"; +"Type" = "Type"; +"Unable to open original post" = "Impossible d’ouvrir la publication d’origine"; +"Unable to open profile" = "Impossible d’ouvrir le profil"; +"Unfavorite" = "Retirer des favoris"; +"Unknown user" = "Utilisateur inconnu"; +"User files deleted" = "Fichiers de l’utilisateur supprimés"; +"Videos" = "Vidéos"; +"Videos deleted" = "Vidéos supprimées"; +"Videos first" = "Vidéos d’abord"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "Activé, les favoris sont épinglés au-dessus des autres fichiers dans le tri et le contexte de dossier actuels."; +"Where 'Download to Photos' actually writes when gallery is on" = "Où « Télécharger dans Photos » écrit réellement quand la galerie est activée"; +"Yesterday" = "Hier"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "Bouton de raccourci d’accueil"; +"Show the extra button on the home top bar" = "Configurer le bouton supplémentaire de la barre supérieure d’accueil"; +"Auto" = "Auto"; +"Icon" = "Icône"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "Faites glisser la poignée ≡ pour réordonner. Désactivez une ligne pour masquer cette destination. Avec une seule action activée, le toucher la déclenche ; avec deux ou plus, le toucher ouvre un menu."; +"Changelog" = "Journal des modifications"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "Ajoute un bouton de raccourci supplémentaire à côté du bouton + de création dans la barre supérieure de l'accueil."; +"All buttons" = "Tous les boutons"; +"System" = "Système"; +"Instagram language" = "Langue d'Instagram"; +"Choose icon, reorder actions, and enable menu items" = "Choisir l'icône, réorganiser les actions et activer les éléments de menu"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "Choisir l'icône affichée dans la barre supérieure de l'accueil. « Auto » utilise l'icône de l'action sélectionnée quand une seule action est activée."; +"Configure button" = "Configurer le bouton"; +"Global Action Icons" = "Icônes d'action globales"; +"Interface" = "Interface"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "Remplacer l'icône d'un bouton spécifique. Les boutons laissés sur « Par défaut » suivent l'icône partagée ci-dessus."; +"Per button" = "Par bouton"; +"Show home shortcut button" = "Afficher le bouton de raccourci d'accueil"; +"%ld new" = "%ld nouveaux"; +"Tab bar" = "Barre d'onglets"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "Notifications universelles dans l’app. Choisissez le style, la position, le routage par action (pastille personnalisée/IG natif/désactivé)."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "Faites glisser la notification pour la positionner"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "Faites glisser la notification où vous voulez. Au-dessus du centre, elle descend ; en dessous, elle monte."; + +"Notifications" = "Notifications"; +"Appearance" = "Apparence"; +"Routing" = "Routage"; +"Style" = "Style"; +"Position" = "Position"; +"Stack size" = "Taille de la pile"; +"Duration" = "Durée"; +"Default surface" = "Surface par défaut"; +"System notifications" = "Notifications système"; +"Mirror to notification centre" = "Refléter dans le centre de notifications"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "Quand l'app est en arrière-plan, les toasts sont envoyés au centre de notifications iOS pour ne pas être manqués."; +"Clear when app opens" = "Effacer à l'ouverture de l'app"; +"Remove mirrored notifications from notification centre when you return to the app." = "Supprime les notifications reflétées du centre de notifications quand vous revenez dans l'app."; +"Background mirror" = "Miroir en arrière-plan"; +"Show while app is open" = "Afficher quand l'app est ouverte"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "Diffuse aussi les notifications miroir sous forme de bannières système pendant que vous utilisez l'app, pas seulement en arrière-plan."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "L'apparence, le routage, les notifications système et chaque remplacement par action reviennent à leurs valeurs par défaut."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Utilise l'autorisation de notifications d'Instagram. Les réglages par action se trouvent dans le menu de chaque action, sous Miroir en arrière-plan ; les actions sur Désactivé ne sont jamais reflétées."; +"Enable notifications" = "Activer les notifications"; +"Haptic feedback" = "Retour haptique"; +"Preview pill" = "Aperçu de la pastille"; +"Preview download pill" = "Aperçu de la pastille de téléchargement"; +"Preview loading pill" = "Aperçu de la pastille de chargement"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "Interrupteur principal. Désactivé, aucune pastille RyukGram ni toast natif IG n’est émis."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "Notifications universelles dans l’app. Tout le retour RyukGram (téléchargements, copies, erreurs, messages de succès) passe par ici."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal : flou plat. Coloré : teinté selon le ton. Halo : auréole colorée. Island : capsule de type dynamic island."; +"Top slides down, bottom slides up." = "Le haut glisse vers le bas, le bas glisse vers le haut."; +"How many pills can show at once before queueing." = "Combien de pastilles peuvent s’afficher en même temps avant d’être mises en file."; +"Multiplies how long toasts stay on screen." = "Multiplie la durée d’affichage des toasts à l’écran."; +"Vibration on success/error pills." = "Vibration sur les pastilles de succès/erreur."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "Pour les actions de type toast, vous pouvez choisir entre notre pastille et le toast natif d’IG en bas. Les remplacements par action se trouvent ci-dessous."; +"What to use when an action doesn't have its own override." = "Ce qu’il faut utiliser quand une action n’a pas son propre remplacement."; +"Tap to cycle: info → success → warning → error" = "Toucher pour faire défiler : info → succès → avertissement → erreur"; +"Tap to cycle between success and failure" = "Toucher pour basculer entre succès et échec"; +"Progress UI — pill or off only." = "Interface de progression — pastille ou désactivée uniquement."; +"Minimal" = "Minimal"; +"Colorful" = "Coloré"; +"Glow" = "Halo"; +"Island" = "Island"; +"Top" = "Haut"; +"Bottom" = "Bas"; +"Custom pill" = "Pastille personnalisée"; +"IG native toast" = "Toast natif IG"; +"Short" = "Court"; +"Normal" = "Normal"; +"Long" = "Long"; +"Very long" = "Très long"; +"Downloads & saving" = "Téléchargements et enregistrement"; +"Copy to clipboard" = "Copier dans le presse-papiers"; +"Read receipts & seen" = "Accusés de lecture et vu"; +"Block, exclude & pin" = "Bloquer, exclure et épingler"; +"Stories & messages" = "Stories et messages"; +"Voice & audio" = "Voix et audio"; +"Errors" = "Erreurs"; +"Download progress" = "Progression du téléchargement"; +"Bulk download progress" = "Progression du téléchargement groupé"; +"Repost progress" = "Progression du repost"; +"Copied post / reel URL" = "URL de la publication/du reel copiée"; +"Copied comment text" = "Texte du commentaire copié"; +"Copied GIF link" = "Lien du GIF copié"; +"Copied note text" = "Texte de note copié"; +"Copied profile info" = "Infos de profil copiées"; +"Copied audio URL" = "URL audio copiée"; +"Copied quality picker URL" = "URL du sélecteur de qualité copiée"; +"Copied unlocked password" = "Mot de passe déverrouillé copié"; +"Copied description text" = "Texte de description copié"; +"DM seen / read receipts" = "Accusés de vue/lecture des DM"; +"Story seen / read receipts" = "Accusés de vue/lecture des stories"; +"Someone read your message" = "Quelqu'un a lu votre message"; +"User blocked / unblocked" = "Utilisateur bloqué/débloqué"; +"Chat added / removed from exclude" = "Discussion ajoutée/retirée des exclusions"; +"Story user added / removed from exclude" = "Utilisateur de story ajouté/retiré des exclusions"; +"Share-sheet recipient pinned" = "Destinataire de la feuille de partage épinglé"; +"Unsent message detected" = "Message annulé détecté"; +"Reaction removed detected" = "Suppression de réaction détectée"; +"%lu messages unsent" = "%lu messages annulés"; +"%lu reactions removed" = "%lu réactions retirées"; +"%lu chats marked seen" = "%lu discussions marquées comme vues"; +"%lu stories marked seen" = "%lu stories marquées comme vues"; +"%lu of your messages read" = "%lu de vos messages lus"; +"%lu notifications" = "%lu notifications"; +"Live comments toggled" = "Commentaires de live basculés"; +"Custom GIF sent" = "GIF personnalisé envoyé"; +"GIF favorited / unfavorited" = "GIF ajouté / retiré des favoris"; +"Voice DM sent" = "DM vocal envoyé"; +"Audio extraction status" = "Statut de l’extraction audio"; +"Profile Analyzer complete" = "Analyseur de profil terminé"; +"Profile Analyzer progress" = "Progression de l'analyseur de profil"; +"Media extraction failed" = "Échec de l’extraction du média"; +"Permission denied" = "Autorisation refusée"; +"Validation error" = "Erreur de validation"; +"Network / API error" = "Erreur réseau/API"; +"Action error fallback" = "Repli sur erreur d’action"; +"Unlock failed" = "Échec du déverrouillage"; +"Chat locked / unlocked" = "Discussion verrouillée / déverrouillée"; +"Invalid clipboard link" = "Lien du presse-papiers invalide"; +"Experimental flag warning" = "Avertissement de flag expérimental"; +"Settings action confirmed" = "Action des réglages confirmée"; +"Cache clearing progress" = "Progression du vidage du cache"; +"Backup export / import" = "Export / import de sauvegarde"; +"Other / uncategorized" = "Autre/non catégorisé"; +"Comment copied" = "Commentaire copié"; +"FFmpeg log copied" = "Journal FFmpeg copié"; +"GIF inserted" = "GIF inséré"; +"Story marked as seen" = "Story marquée comme vue"; +"Saved" = "Enregistré"; +"Tap to retry" = "Toucher pour réessayer"; +"Looks great" = "Tout va bien"; +"Something broke" = "Quelque chose s’est cassé"; +"Just so you know" = "À titre d’information"; +"Success preview" = "Aperçu de succès"; +"Error preview" = "Aperçu d’erreur"; +"Warning preview" = "Aperçu d’avertissement"; +"Info preview" = "Aperçu d’info"; +"Preview download…" = "Aperçu du téléchargement…"; +"Colors" = "Couleurs"; +"+ Add new language" = "+ Ajouter une nouvelle langue"; +"Each chat can override this in the list" = "Chaque discussion peut remplacer ce réglage dans la liste"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "Activé, les requêtes de position d’Instagram renvoient votre fausse position sélectionnée. Le bouton carte ajoute un raccourci rapide dans la Carte des amis."; +"Tap a preset to make it active. Swipe left to delete." = "Touchez un préréglage pour l’activer. Balayez vers la gauche pour supprimer."; +"Override Instagram location reads." = "Remplace les lectures de position d’Instagram."; +"Show the quick button in Friends Map." = "Afficher le bouton rapide sur la Carte des amis."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "Choisissez comment les dates absolues sont écrites. « Par défaut » laisse intact le format d’IG. Balayez un format personnalisé pour le modifier ou le supprimer."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "Les dates plus récentes que le seuil s’affichent en temps relatif. Les dates plus anciennes utilisent le format absolu. « Combiner avec la date » affiche les deux — « 5 janv. 2026 (2h) » ou « 2h – 5 janv. 2026 »."; +"Compact style" = "Style compact"; +"Example: “1h” instead of “1 hour ago”" = "Exemple : « 1h » au lieu de « il y a 1 heure »"; +"Example: “Jan 5, 2026 (2h)”" = "Exemple : « 5 janv. 2026 (2h) »"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "Les API audio d’iOS n’ont pas pu traiter ce fichier%@%@\n\nVous pouvez essayer de l’envoyer à Instagram tel quel, ou ouvrir un ticket d’assistance."; +"Combine with date" = "Combiner avec la date"; +"Absolute then relative" = "Absolu puis relatif"; +"Relative – absolute" = "Relatif – absolu"; +"Relative when young, absolute when older." = "Relatif si récent, absolu sinon."; +"Example: “2h – Jan 5, 2026”" = "Exemple : « 2h – 5 janv. 2026 »"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "Capture les médias à usage unique retirés en votre absence. ⚠️ Peut vider la batterie"; +"Disappearing (view-once) media" = "Médias éphémères (voir une fois)"; +"Disappearing media expired before it could be saved" = "Le média éphémère a expiré avant de pouvoir être enregistré"; +"Disappearing media — gone before it could be saved" = "Média éphémère — disparu avant de pouvoir être enregistré"; +"Disappearing only" = "Éphémères uniquement"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Force Instagram à continuer de tourner en arrière-plan pour capturer les médias éphémères que quelqu'un retire quand vous n'êtes pas dans l'app.\n\nSurtout utile pour les médias à usage unique — les photos/vidéos normales restent généralement récupérables sans ça. ⚠️ Peut vider votre batterie de façon importante, et ne peut rien capturer si vous fermez Instagram depuis le sélecteur d'apps.\n\nL'activer ?"; +"Keep Instagram active in background" = "Garder Instagram actif en arrière-plan"; +"Media couldn’t be downloaded — the link expired" = "Impossible de télécharger le média — le lien a expiré"; +"Media wasn’t available to save" = "Le média n'était pas disponible pour l'enregistrement"; +"Retrying download…" = "Nouvelle tentative…"; +"Try to download again" = "Réessayer le téléchargement"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "Journal des accusés de lecture"; +"Date" = "Date"; +"Reads" = "Lectures"; +"Person" = "Personne"; +"Chat" = "Discussion"; +"%@ · on @%@" = "%@ · sur @%@"; +"%lu read · %@" = "%lu lecture · %@"; +"%lu reads · %@" = "%lu lectures · %@"; +"%lu reads · %lu reader · %@" = "%lu lectures · %lu lecteur · %@"; +"%lu reads · %lu readers · %@" = "%lu lectures · %lu lecteurs · %@"; +"Clear all" = "Tout effacer"; +"Clear all records" = "Effacer tous les enregistrements"; +"Detects when others read your messages and notifies you" = "Détecte quand les autres lisent vos messages et vous prévient"; +"Ignored people & chats" = "Personnes et discussions ignorées"; +"Ignored" = "Ignoré"; +"Log group chats" = "Enregistrer les discussions de groupe"; +"Most reads" = "Le plus de lectures"; +"Notifies and records when someone reads a message you sent" = "Vous prévient et enregistre quand quelqu'un lit un message envoyé"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "Rien n'est ignoré. Appuyez longuement sur quelqu'un dans le journal pour arrêter de l'enregistrer."; +"Nothing matches your filters." = "Aucun résultat pour vos filtres."; +"Read %@ · %@" = "Lu %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "Enregistre les lectures sur cet appareil. Désactivé = notifications seules, rien n'est stocké"; +"Resume logging" = "Reprendre l'enregistrement"; +"Search by username" = "Rechercher par nom d'utilisateur"; +"Stop logging %@" = "Arrêter d'enregistrer %@"; +"Delete records" = "Supprimer les enregistrements"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "Une fois activé, une notification s'affiche quand quelqu'un lit votre message. Désactivez \"Enregistrer dans le journal\" pour le mode notifications uniquement. Appuyez longuement sur une personne dans le journal pour cesser de l'enregistrer."; +"Swipe to remove. Removing resumes logging for that person or chat." = "Balayez pour retirer. Le retrait reprend l'enregistrement de cette personne ou discussion."; +"Updating names and photos" = "Mise à jour des noms et photos"; +"Your message" = "Votre message"; +"read your message in %@" = "a lu votre message dans %@"; +"read your message" = "a lu votre message"; +"Also track reads in group chats. Off by default — groups can be noisy" = "Suivre aussi les lectures dans les groupes. Désactivé par défaut — les groupes peuvent être bruyants"; +"Refreshing…" = "Actualisation…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "Générer une nouvelle empreinte"; +"New device fingerprint" = "Nouvelle empreinte d'appareil"; +"Roll new ID" = "Générer un nouvel ID"; +"Roll + clear IG data" = "Générer + effacer les données IG"; +"Generate fresh device identifiers" = "Génère de nouveaux identifiants d'appareil"; +"Enter ID manually…" = "Saisir l'ID manuellement…"; +"Manual device ID" = "ID d'appareil manuel"; +"Paste or type the UUID this device should report." = "Collez ou saisissez l'UUID que cet appareil doit signaler."; +"Device ID set" = "ID d'appareil défini"; +"New fingerprint ready" = "Nouvelle empreinte prête"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "Redémarrer Instagram maintenant pour que la nouvelle identité d'appareil s'applique dès un démarrage propre ?"; +"Copy current ID" = "Copier l'ID actuel"; +"Revert to my real device ID" = "Revenir à mon vrai ID d'appareil"; +"Restore the original, stop masking" = "Restaure l'original et arrête le masquage"; +"Spoofing off" = "Usurpation désactivée"; +"Relaunch now" = "Redémarrer maintenant"; +"Relaunch to apply" = "Redémarrez pour appliquer"; +"Clear device & relaunch" = "Effacer l'appareil et redémarrer"; +"Clear device & relaunch?" = "Effacer l'appareil et redémarrer ?"; +"Clear & relaunch" = "Effacer et redémarrer"; +"Full reset to a brand-new device" = "Réinitialisation complète vers un appareil neuf"; +"Device ID" = "ID d'appareil"; +"Hide button until relaunch" = "Masquer le bouton jusqu'au redémarrage"; +"Device identity" = "Identité de l'appareil"; +"Masked" = "Masqué"; +"Real" = "Réel"; +"Show button on login screen" = "Afficher le bouton sur l'écran de connexion"; +"Floating Device ID button while signed out" = "Bouton ID d'appareil flottant lorsque déconnecté"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Masque les identifiants qu'Instagram utilise pour identifier cet appareil : ID d'appareil, ID d'appareil familial, ID de fournisseur et ID machine. Les changements s'appliquent après un redémarrage. Les mêmes commandes apparaissent sur l'écran de connexion."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "Oublie chaque connexion enregistrée, cookie et l'identité d'appareil stockée, puis redémarre pour qu'Instagram démarre comme un appareil neuf. Vous devrez vous reconnecter ensuite."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "Génère un nouvel ID d'appareil, ID d'appareil familial et ID de fournisseur, et efface l'ID machine pour qu'Instagram s'enregistre de nouveau comme un appareil neuf. Ou effacez aussi les connexions enregistrées pour une réinitialisation complète."; +"Apple attestation" = "Attestation Apple"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Bloque l'attestation d'appareil Apple d'Instagram (DeviceCheck et App Attest). Celles-ci sont liées au matériel et ne peuvent pas être modifiées, elles continuent donc d'associer l'appareil malgré les réinitialisations. Le blocage fait voir à Instagram un appareil qui ne les prend pas en charge. Ne fonctionne que lorsque le masquage est activé."; +"Block Apple device attestation" = "Bloquer l'attestation d'appareil Apple"; +"Stop the hardware attestation that links the device" = "Arrête l'attestation matérielle qui associe l'appareil"; +"Block Apple attestation: %@" = "Bloquer l'attestation Apple : %@"; +"Attestation blocked" = "Attestation bloquée"; +"Attestation allowed" = "Attestation autorisée"; +"Roll + clear, then sign in fresh" = "Générer + effacer, puis se reconnecter à neuf"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "Demandes d'abonnement"; +"Show follow requests" = "Afficher les demandes d'abonnement"; +"Check now" = "Vérifier maintenant"; +"Reset tracked data" = "Réinitialiser les données suivies"; +"Enable tracker" = "Activer le suivi"; +"Log requests and check outcomes" = "Enregistrer les demandes et vérifier les résultats"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "Enregistre les demandes d'abonnement que tu envoies et reçois, et repère qui annule une demande avant que tu répondes. Tout sur l'appareil."; +"What to track" = "Quoi suivre"; +"Requests I send" = "Demandes que j'envoie"; +"To private accounts" = "Vers des comptes privés"; +"Requests I receive" = "Demandes que je reçois"; +"From people who want to follow you" = "Des personnes qui veulent s'abonner à toi"; +"Background check" = "Vérification en arrière-plan"; +"Check interval" = "Intervalle de vérification"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "Fréquence de vérification des résultats lorsque l'app est ouverte. Vérifie aussi au lancement et à l'ouverture de la liste."; +"Off (manual only)" = "Désactivé (manuel uniquement)"; +"Every 15 minutes" = "Toutes les 15 minutes"; +"Every 30 minutes" = "Toutes les 30 minutes"; +"Every hour" = "Toutes les heures"; +"Every 6 hours" = "Toutes les 6 heures"; +"My request accepted" = "Ma demande acceptée"; +"A private account accepted you" = "Un compte privé t'a accepté"; +"My request declined" = "Ma demande refusée"; +"No longer pending" = "N'est plus en attente"; +"New request received" = "Nouvelle demande reçue"; +"Someone asked to follow you" = "Quelqu'un a demandé à te suivre"; +"Request withdrawn" = "Demande retirée"; +"Someone cancelled their request" = "Quelqu'un a annulé sa demande"; +"Sent by me" = "Envoyées par moi"; +"Received" = "Reçue"; +"Sent" = "Envoyée"; +"Accepted" = "Acceptée"; +"Rejected" = "Refusée"; +"Requested" = "Demandée"; +"Approved" = "Approuvée"; +"Withdrawn" = "Retirée"; +"No follow requests tracked yet" = "Aucune demande d'abonnement suivie pour l'instant"; +"Cancel requests" = "Annuler les demandes"; +"Delete %lu record(s) from history?" = "Supprimer %lu enregistrement(s) de l'historique ?"; +"Cancel %lu pending request(s)?" = "Annuler %lu demande(s) en attente ?"; +"Follow back %lu account(s)?" = "S'abonner en retour à %lu compte(s) ?"; +"Clear all tracked follow requests?" = "Effacer toutes les demandes d'abonnement suivies ?"; +"Reset tracked follow requests for this account?" = "Réinitialiser les demandes d'abonnement suivies pour ce compte ?"; +"Enable the tracker first" = "Active d'abord le suivi"; +"Checking…" = "Vérification…"; +"%ld request(s) updated" = "%ld demande(s) mise(s) à jour"; +"No changes" = "Aucun changement"; +"Working…" = "Traitement…"; +"Follow request accepted" = "Demande d'abonnement acceptée"; +"%@ accepted your request" = "%@ a accepté ta demande"; +"Follow request declined" = "Demande d'abonnement refusée"; +"%@ is no longer pending" = "%@ n'est plus en attente"; +"New follow request" = "Nouvelle demande d'abonnement"; +"%@ asked to follow you" = "%@ a demandé à te suivre"; +"Follow request withdrawn" = "Demande d'abonnement retirée"; +"%@ withdrew their request" = "%@ a retiré sa demande"; +"Follow requests log" = "Journal des demandes d'abonnement"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Débloquez les fonctionnalités payantes d'Instagram"; +"Turn on Instagram's paid subscriber features inside the app." = "Activez les fonctionnalités réservées aux abonnés payants d'Instagram directement dans l'application."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus est l'abonnement payant d'Instagram. Ces interrupteurs en activent les fonctionnalités dans l'application. Certaines fonctionnent totalement. D'autres ne font qu'afficher l'option, car le contenu provient des serveurs d'Instagram et nécessite toujours un véritable abonnement : elles peuvent donc rester vides ou ne rien faire. Activez ce que vous voulez, puis touchez Appliquer. Si Instagram ne parvient pas à démarrer trois fois de suite, ces interrupteurs se réinitialisent d'eux-mêmes."; +"Turn everything on" = "Tout activer"; +"Turn everything off" = "Tout désactiver"; +"Every Instagram Plus feature turns off and Instagram restarts." = "Toutes les fonctionnalités Instagram Plus sont désactivées et Instagram redémarre."; +"Story peek" = "Aperçu de story"; +"Hold a story in the tray to preview it without opening it." = "Maintenez une story dans la barre pour l'aperçu sans l'ouvrir."; +"Story fonts" = "Polices de story"; +"Adds the subscriber fonts when you add text to a story." = "Ajoute les polices réservées aux abonnés lorsque vous ajoutez du texte à une story."; +"Search story viewers" = "Rechercher parmi les vues"; +"Search the list of people who viewed your story." = "Recherchez dans la liste des personnes qui ont vu votre story."; +"Viewer timestamps" = "Heure des vues"; +"Shows when each person viewed your story." = "Indique à quel moment chaque personne a vu votre story."; +"Silent post to profile" = "Publication silencieuse au profil"; +"Share to your profile without notifying your followers." = "Publiez sur votre profil sans prévenir vos abonnés."; +"Silent post to highlights" = "Ajout silencieux aux à la une"; +"Add to a highlight without notifying your followers." = "Ajoutez à une story à la une sans prévenir vos abonnés."; +"Story rewatch" = "Revoir la story"; +"Rewatch a story right after it finishes." = "Revoyez une story juste après la fin."; +"Story extend" = "Prolonger la story"; +"Keep your story up longer than 24 hours." = "Gardez votre story en ligne plus de 24 heures."; +"Story spotlight" = "Mise en avant de story"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "Diffusez votre story à plus de spectateurs. Chargée depuis Instagram, elle peut ne pas fonctionner."; +"Story super likes" = "Super j'aime de story"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "Envoyez des super j'aime sur les stories. Chargés depuis Instagram, ils peuvent ne pas fonctionner."; +"Message peek" = "Aperçu de message"; +"Hold a chat in the inbox to preview it." = "Maintenez une conversation dans la boîte de réception pour l'aperçu."; +"Chat fonts" = "Polices de conversation"; +"Adds the subscriber fonts in direct messages." = "Ajoute les polices réservées aux abonnés dans les messages privés."; +"Chat themes" = "Thèmes de conversation"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "Débloque les thèmes de conversation premium. Chargés depuis Instagram, ils peuvent ne pas fonctionner."; +"App icons" = "Icônes d'application"; +"Opens the alternate app icon picker." = "Ouvre le sélecteur d'icônes alternatives de l'application."; +"Bio font" = "Police de bio"; +"Use a subscriber font for your bio." = "Utilisez une police réservée aux abonnés pour votre bio."; +"Custom story lists" = "Listes de story personnalisées"; +"Make lists to pick exactly who sees a story." = "Créez des listes pour choisir précisément qui voit une story."; +"More pinned posts" = "Plus de publications épinglées"; +"Pin more posts to the top of your profile." = "Épinglez davantage de publications en haut de votre profil."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu enregistrements"; +"1 recording" = "1 enregistrement"; +"30 days" = "30 jours"; +"7 days" = "7 jours"; +"90 days" = "90 jours"; +"Adds a record button to the call screen" = "Ajoute un bouton d’enregistrement à l’écran d’appel"; +"Also show recordings in the RyukGram gallery under Calls" = "Affiche aussi les enregistrements dans la galerie RyukGram sous Appels"; +"Auto-delete old recordings" = "Supprimer automatiquement les anciens enregistrements"; +"Auto-record calls" = "Enregistrer automatiquement les appels"; +"Auto-record ignore list" = "Liste d’exclusion de l’enregistrement automatique"; +"Auto-record ignored" = "Enregistrement automatique ignoré"; +"Auto-record on" = "Enregistrement automatique activé"; +"Block mute signal" = "Bloquer le signal de sourdine"; +"Both sides" = "Les deux côtés"; +"Browse saved calls, grouped by person" = "Parcourir les appels enregistrés, regroupés par personne"; +"Call" = "Appel"; +"Call recorded" = "Appel enregistré"; +"Call recording" = "Enregistrement d’appel"; +"Call recordings" = "Enregistrements d’appels"; +"Camera position" = "Position de la caméra"; +"Can't play" = "Lecture impossible"; +"Can't record" = "Enregistrement impossible"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "Discussions exclues de l’enregistrement automatique — appui long sur le bouton d’enregistrement pendant un appel pour ajouter"; +"Could not save the recording." = "Impossible de sauvegarder l’enregistrement."; +"Could not start the recorder." = "Impossible de démarrer l’enregistreur."; +"Delete all" = "Tout supprimer"; +"Delete all recordings" = "Supprimer tous les enregistrements"; +"Delete all recordings?" = "Supprimer tous les enregistrements ?"; +"Drag the overlay where you want it" = "Faites glisser la superposition où vous le souhaitez"; +"Drag your camera window to any corner or edge." = "Faites glisser la fenêtre de votre caméra vers n’importe quel coin ou bord."; +"Enable call recording" = "Activer l’enregistrement d’appel"; +"Export all" = "Tout exporter"; +"Full screen" = "Plein écran"; +"Group call" = "Appel de groupe"; +"Ignore auto-record for this chat" = "Ignorer l’enregistrement automatique pour cette discussion"; +"Ignored chats aren't auto-recorded. You can still record manually." = "Les discussions ignorées ne sont pas enregistrées automatiquement. Vous pouvez toujours enregistrer manuellement."; +"Include my camera" = "Inclure ma caméra"; +"Keep forever" = "Conserver indéfiniment"; +"Large" = "Grand"; +"Mute without the other side seeing you muted — your mic is still silenced" = "Couper le son sans que l’autre côté vous voie en sourdine — votre micro reste silencieux"; +"Muted silently" = "Sourdine silencieuse"; +"My camera size" = "Taille de ma caméra"; +"No call audio was captured." = "Aucun audio d’appel n’a été capturé."; +"No ignored chats. Long-press the record button in a call to ignore it." = "Aucune discussion ignorée. Appui long sur le bouton d’enregistrement pendant un appel pour l’ignorer."; +"No recordings" = "Aucun enregistrement"; +"Off records audio only, even on video calls" = "Désactivé, enregistre uniquement l’audio, même lors des appels vidéo"; +"Only me" = "Moi uniquement"; +"Only them" = "Eux uniquement"; +"Open recordings" = "Ouvrir les enregistrements"; +"Overlay your camera as a small window on video-call recordings" = "Superpose votre caméra en petite fenêtre sur les enregistrements d’appels vidéo"; +"Overlay your camera on the recording" = "Superposer votre caméra sur l’enregistrement"; +"Record audio from" = "Enregistrer l’audio de"; +"Record video on video calls" = "Enregistrer la vidéo lors des appels vidéo"; +"Record voice and video calls, browse them later" = "Enregistrez les appels vocaux et vidéo, parcourez-les plus tard"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "Les appels enregistrés sont sauvegardés uniquement sur cet appareil. Un indicateur rouge dans la barre d’état s’affiche pendant l’enregistrement."; +"Recorded calls will appear here." = "Les appels enregistrés apparaîtront ici."; +"Recording call" = "Enregistrement de l’appel"; +"Recording count" = "Nombre d’enregistrements"; +"Recording failed" = "Échec de l’enregistrement"; +"Recording name" = "Nom de l’enregistrement"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "Enregistre l’autre partie (audio de l’appel) et votre microphone. Un indicateur rouge dans la barre d’état s’affiche pendant l’enregistrement. Les enregistrements sont sauvegardés uniquement sur cet appareil."; +"Remove from ignore list" = "Retirer de la liste d’exclusion"; +"Remove recordings older than the chosen age" = "Supprimer les enregistrements plus anciens que la durée choisie"; +"Rename recording" = "Renommer l’enregistrement"; +"Search calls" = "Rechercher des appels"; +"Set a custom name for this chat's recordings." = "Définir un nom personnalisé pour les enregistrements de cette discussion."; +"Size of the overlay window" = "Taille de la fenêtre de superposition"; +"Small" = "Petit"; +"Starts recording automatically when a call opens" = "Démarre l’enregistrement automatiquement à l’ouverture d’un appel"; +"Sync to gallery" = "Synchroniser avec la galerie"; +"The recording file is missing." = "Le fichier d’enregistrement est introuvable."; +"Them" = "Eux"; +"Them (full screen)" = "Eux (plein écran)"; +"This permanently removes every saved call recording for this account." = "Cela supprime définitivement tous les enregistrements d’appels sauvegardés pour ce compte."; +"Unknown chat" = "Discussion inconnue"; +"Unmuted" = "Son rétabli"; +"Which camera fills the frame" = "Quelle caméra remplit le cadre"; +"Which side's voice to capture" = "De quel côté capturer la voix"; +"You" = "Vous"; +"You (full screen)" = "Vous (plein écran)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "Votre caméra est capturée et superposée sur l’enregistrement. Choisissez quel côté remplit l’écran, la taille de la superposition, et faites-la glisser vers n’importe quel coin."; +"Prompt before the call recordings open" = "Demander avant l’ouverture des enregistrements d’appels"; +"Prompt before the activity log opens" = "Demander avant d'ouvrir le journal d'activité"; +"Mark all as read" = "Tout marquer comme lu"; +"Delete %lu chats?" = "Supprimer %lu discussions ?"; +"This permanently removes their recordings." = "Cela supprime définitivement leurs enregistrements."; + +"Stories archive" = "Archive des stories"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "Réactions"; +"Reacted first" = "Réactions d'abord"; +"Mutual" = "Amis communs"; +"Viewers" = "Vues"; +"1 viewer" = "1 vue"; +"View viewers" = "Voir les vues"; +"%lu views" = "%lu vues"; +"%ld likes" = "%ld j'aime"; +"0 views" = "0 vue"; +"1 like" = "1 j'aime"; +"1 view" = "1 vue"; +"Photos" = "Photos"; +"Oldest" = "Plus anciennes"; +"Most viewed" = "Les plus vues"; +"Most reacted" = "Plus de réactions"; +"Open archive" = "Ouvrir l'archive"; +"Archive settings" = "Réglages de l'archive"; +"Archiving" = "Archivage"; +"Enable stories archive" = "Activer l'archive des stories"; +"Save your stories before they expire" = "Enregistrez vos stories avant qu'elles n'expirent"; +"Saves each story you post, with its photo or video, kept separately for each account." = "Enregistre chaque story que vous publiez, avec sa photo ou sa vidéo, séparément pour chaque compte."; +"Save and update viewers" = "Enregistrer et mettre à jour les vues"; +"Keep each story's viewers and likers, refreshed to the final list" = "Conservez les vues et les j'aime de chaque story, actualisés jusqu'à la liste finale"; +"Update viewers" = "Mettre à jour les vues"; +"How often to refresh viewers for stories still live" = "Fréquence d'actualisation des vues pour les stories encore en ligne"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "La liste des vues d'une story continue de s'allonger pendant toute sa journée, puis Instagram la diffuse un jour de plus. La mise à jour automatique récupère la liste finale dès qu'une story a un jour, afin que les comptes conservés soient complets."; +"Notify me about pinned viewers" = "Me notifier des vues épinglées"; +"A heads-up when a pinned viewer sees or likes your story" = "Un avertissement lorsqu'une vue épinglée voit ou aime votre story"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "Recevez une notification lorsqu'une vue épinglée voit ou aime votre story. Épinglez des vues et gérez la liste depuis les réglages des vues."; +"Viewer list & pins" = "Liste des vues & épingles"; +"Turn on the viewer list and manage pinned viewers" = "Activez la liste des vues et gérez les vues épinglées"; +"Turn on a custom viewer list to pin, search and sort viewers" = "Activez une liste des vues personnalisée pour épingler, rechercher et trier les vues"; +"Tick several to combine them." = "Cochez-en plusieurs pour les combiner."; +"Select stories" = "Sélectionner des stories"; +"No archived stories yet. Post a story and it appears here." = "Aucune story archivée pour l'instant. Publiez une story et elle apparaîtra ici."; +"Archiving is off. Enable it in the archive settings, then post a story." = "L'archivage est désactivé. Activez-le dans les réglages de l'archive, puis publiez une story."; +"Delete story?" = "Supprimer la story ?"; +"This removes the archived photo or video and its viewers." = "Ceci supprime la photo ou la vidéo archivée et ses vues."; +"Delete all stories?" = "Supprimer toutes les stories ?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "Supprime toutes les stories archivées et leurs vues pour ce compte. Cette action est irréversible."; +"Delete %lu archived stories and their viewers?" = "Supprimer %lu stories archivées et leurs vues ?"; +"Pinned viewer saw your story" = "Une vue épinglée a vu votre story"; +"Pinned viewer liked your story" = "Une vue épinglée a aimé votre story"; +"Pinned viewer reacted to your story" = "Une vue épinglée a réagi à votre story"; +"Pinned viewers on your story" = "Vues épinglées sur votre story"; +"%lu pinned viewers just saw, liked or reacted" = "%lu vues épinglées viennent de voir, d'aimer ou de réagir"; +"A pinned viewer" = "Une vue épinglée"; +"On each launch" = "À chaque lancement"; diff --git a/src/Localization/Resources/ja.lproj/Localizable.strings b/src/Localization/Resources/ja.lproj/Localizable.strings new file mode 100644 index 0000000..4325421 --- /dev/null +++ b/src/Localization/Resources/ja.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "今後の開き方: プロフィールページ右上の三本線を長押しすると、RyukGram設定を再度開けます。"; +"settings.firstrun.ok" = "了解しました!"; +"settings.firstrun.title" = "RyukGram設定について"; +"settings.language.english_only" = "RyukGramは現在英語のみに対応しています。他の言語の仕組みは用意済みで、翻訳を待っている状態です。READMEの簡単なガイドに従って、あなたの言語への翻訳に協力してください。"; +"settings.language.help_translate" = "翻訳に協力"; +"settings.language.system" = "システムのデフォルト"; +"settings.language.title" = "言語"; +"settings.language.restart.message" = "設定を更新しました。メニュー・ボタン・トーストなどアプリ全体に新しい言語を反映するには、Instagramを再起動してください。"; +"settings.language.restart.title" = "全体に反映するには再起動"; +"settings.language.available" = "対応済み"; +"settings.results.many" = "%lu 件の結果"; +"settings.results.one" = "%lu 件の結果"; +"settings.search.placeholder" = "設定を検索"; +"settings.title" = "RyukGram設定"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "アクションボタンのアイコン"; +"Adds a copy option to the comment long-press menu" = "コメントの長押しメニューにコピー項目を追加します"; +"Adds a download button next to share/save on the reels audio page" = "リールの音源ページのシェア/保存の横にダウンロードボタンを追加します"; +"Adds download, copy and expand options to GIF and image comments" = "GIF・画像コメントにダウンロード、コピー、拡大の項目を追加します"; +"Allow video in photo sticker" = "写真スタンプで動画を許可"; +"Alternate icons are not supported" = "代替アイコンには対応していません"; +"Anonymous live viewing" = "匿名でのライブ視聴"; +"App Icon" = "アプリアイコン"; +"Audio page" = "音源ページ"; +"Auto-reveals sensitive media" = "センシティブなメディアを自動的に表示します"; +"Block surveys" = "アンケートをブロック"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "視聴者数のハートビート通信をブロックし、配信者にあなたの視聴が表示されないようにします。自分も視聴者数は見られなくなります"; +"Browser" = "ブラウザ"; +"Change the app icon from the bundled icons" = "同梱のアイコンからアプリアイコンを変更します"; +"Choose Icon" = "アイコンを選択"; +"Choose which surfaces hide ads" = "広告を非表示にする画面を選択します"; +"Comments" = "コメント"; +"Commerce carousels in comments and shoppable CTAs on reels" = "コメント内のコマースカルーセルや、リールのショッピングCTA"; +"Copy comment text" = "コメントテキストをコピー"; +"Copy description" = "説明文をコピー"; +"Long press a caption to copy its text" = "キャプションを長押ししてテキストをコピー"; +"Custom sticker colors" = "スタンプのカスタムカラー"; +"Custom colors aren't supported for this sticker" = "このスタンプはカスタムカラーに対応していません"; +"Date format" = "日付形式"; +"Disable app haptics" = "アプリの触覚フィードバックを無効化"; +"Disables haptics/vibrations within the app" = "アプリ内の触覚フィードバック/バイブレーションを無効にします"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "デフォルトでリキッドグラスが有効なアカウントで、それを無効にします。上の設定より優先されます"; +"Do not save recent searches" = "検索履歴を保存しない"; +"Download GIF & image comments" = "GIF・画像コメントをダウンロード"; +"Download image" = "画像をダウンロード"; +"Embed domain" = "埋め込み用ドメイン"; +"Embed domain: %@" = "埋め込み用ドメイン: %@"; +"Enable liquid glass buttons" = "リキッドグラスボタンを有効化"; +"Enable liquid glass surfaces" = "リキッドグラスUIを有効化"; +"Enable teen app icons" = "ティーン向けアプリアイコンを有効化"; +"Enables experimental liquid glass buttons" = "実験的なリキッドグラスボタンを有効にします"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "リキッドグラスのタブバー、フローティングナビゲーションなどのUI要素を有効にします"; +"End" = "終了"; +"Experimental features" = "実験的機能"; +"Explore & search" = "発見と検索"; +"Failed to change icon" = "アイコンの変更に失敗しました"; +"Fixed" = "固定"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "「固定」は縮小を防ぎます。「非表示」は下スクロール時に消えるようにします"; +"Focus/distractions" = "集中/気を散らす要素"; +"Force liquid glass off" = "リキッドグラスを強制オフ"; +"Force progressive blur" = "プログレッシブブラーを強制"; +"General" = "一般"; +"Gradient color" = "グラデーション"; +"Hide ads" = "広告を非表示"; +"Hide explore posts grid" = "発見タブの投稿グリッドを非表示"; +"Hide friends map" = "友達マップを非表示"; +"Hide Meta AI" = "Meta AIを非表示"; +"Hide metrics" = "数値を非表示"; +"Hide notes tray" = "ノートトレイを非表示"; +"Hide on scroll" = "スクロール時に非表示"; +"Hide TestFlight popup" = "TestFlightのポップアップを非表示"; +"Hide trending searches" = "人気の検索を非表示"; +"Hide UI on capture" = "キャプチャ時にUIを隠す"; +"Removes suggested accounts to follow outside the feed" = "フィード外のおすすめアカウントを非表示にします"; +"Hides like/comment/share counts on posts and reels" = "投稿とリールのいいね/コメント/シェア数を非表示にします"; +"Removes the friends map icon from the notes tray" = "ノートトレイから友達マップのアイコンを非表示にします"; +"Removes the suggested posts grid on the explore tab" = "発見タブのおすすめ投稿グリッドを非表示にします"; +"Strips the Meta AI buttons and entry points from the app" = "アプリからMeta AIのボタンと入口を削除します"; +"Hides the notes tray in the DM inbox" = "DM受信箱のノートトレイを非表示にします"; +"Removes suggested broadcast channels from your inbox" = "受信箱からおすすめのブロードキャストチャンネルを非表示にします"; +"Hide DM search suggestions" = "DM検索のおすすめを非表示"; +"Removes suggested accounts and channels from direct message search" = "ダイレクトメッセージ検索からおすすめのアカウントとチャンネルを非表示にします"; +"Removes trending searches under the explore search bar" = "発見の検索バー下にあるトレンド検索を非表示にします"; +"Hold down on the Instagram logo to change the app icon" = "Instagramロゴを長押しするとアプリアイコンを変更できます"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "iOS 26のスクロール端のブラーをフェードアウトさせず、常に表示したままにします"; +"Lets the photo sticker picker show videos too, not just photos" = "写真スタンプの選択画面に、写真だけでなく動画も表示します"; +"Liquid glass tab bar" = "リキッドグラスのタブバー"; +"Live" = "ライブ"; +"Hold the eyedropper in stories to pick an exact text color" = "ストーリーでスポイトを長押しして正確なテキストの色を選択します"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "スタンプ編集画面のカラーホイールを長押しすると、任意の単色またはグラデーションカラーを選べます"; +"Long-press the heart button in a live to hide or show the comments" = "ライブでハートボタンを長押しすると、コメントの表示/非表示を切り替えられます"; +"Long-press the search tab to open a copied Instagram link" = "検索タブを長押しすると、コピー済みのInstagramリンクを開けます"; +"Master switch. When off, all per-surface toggles below are ignored." = "マスタースイッチです。オフのとき、下の画面ごとのトグルはすべて無視されます。"; +"No suggested chats" = "おすすめチャットを非表示"; +"No suggested users" = "おすすめユーザーを非表示"; +"Notes" = "ノート"; +"Open app icon picker" = "アプリアイコン選択を開く"; +"Open link from clipboard" = "クリップボードのリンクを開く"; +"Open links in external browser" = "リンクを外部ブラウザで開く"; +"Opens links in Safari instead of Instagram's in-app browser" = "リンクをInstagramのアプリ内ブラウザではなくSafariで開きます"; +"Privacy" = "プライバシー"; +"Removes ads across enabled surfaces" = "有効にした画面全体から広告を除去します"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "共有リンクからigsh、utm_sourceなどのトラッキングパラメータを除去します"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "URLからInstagramのトラッキングラッパー(l.instagram.com)とUTM/fbclidパラメータを除去します"; +"Replace domain in shared links" = "共有リンクのドメインを置き換え"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "IGの相対タイムスタンプ(「3日前」)をカスタム形式に置き換えます。適用する画面はピッカー内で切り替えられます。"; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "コピー/共有するリンクを埋め込み対応ドメインに書き換え、DiscordやTelegramなどでプレビューが表示されるようにします。"; +"Stops search bars from saving your recent searches" = "検索バーが最近の検索履歴を保存しないようにします"; +"Selected" = "選択中"; +"Sharing" = "共有"; +"Shopping" = "ショッピング"; +"Skip sensitive content covers" = "センシティブな内容のカバーをスキップ"; +"Solid color" = "単色"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "メイン・関連・動画・連鎖フィードの広告投稿"; +"Sponsored posts on the explore grid" = "発見タブのグリッドに表示される広告投稿"; +"Stops Instagram's in-app surveys and feedback prompts" = "Instagramのアプリ内アンケートやフィードバックの表示を停止します"; +"Sponsored reels in the sundial feed" = "サンダイヤルフィードの広告リール"; +"Start" = "開始"; +"Story ads and sponsored entries in the story tray" = "ストーリーズ広告と、ストーリートレイの広告項目"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "検索・発見の投稿やReelsに統計ピルを表示します。「カードの詳細」を開いて表示する統計の選択と並べ替えを行い、適用してください。"; +"Strip tracking from links" = "リンクからトラッキングを除去"; +"Strip tracking params" = "トラッキングパラメータを除去"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "「Instagram Betaを更新する時期です」という催促を非表示にします"; +"Tap to apply" = "タップで適用"; +"The selected icon will be saved and shown here the next time you open this page." = "選択したアイコンは保存され、次にこのページを開いたときにここに表示されます。"; +"Toggle live comments" = "ライブコメントの表示切り替え"; +"Use detailed color picker" = "詳細なカラーピッカーを使用"; +"Used across feed, stories, reels, and DMs." = "フィード、ストーリーズ、リール、DM全体で使用されます。"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld 日前"; +"%ld days ago" = "%ld 日前"; +"%ld hour ago" = "%ld 時間前"; +"%ld hours ago" = "%ld 時間前"; +"%ld minute ago" = "%ld 分前"; +"%ld minutes ago" = "%ld 分前"; +"%ld week ago" = "%ld 週間前"; +"%ld weeks ago" = "%ld 週間前"; +"%ldd" = "%ld日"; +"%ldh" = "%ld時間"; +"%ldm" = "%ld分"; +"%ldw" = "%ld週"; +"Always ask" = "毎回確認"; +"Balanced" = "バランス"; +"Block all" = "すべてブロック"; +"Block selected" = "選択したもののみブロック"; +"Button" = "ボタン"; +"Date format — %@" = "日付形式 — %@"; +"Default" = "デフォルト"; +"Disabled" = "無効"; +"Download and share" = "ダウンロードして共有"; +"Download to Photos" = "写真アプリにダウンロード"; +"Save with music" = "音楽付きで保存"; +"Gallery with music" = "音楽付きでギャラリーに保存"; +"Save image (no music)" = "画像を保存(音楽なし)"; +"Gallery image (no music)" = "ギャラリー画像(音楽なし)"; +"Photo with music" = "音楽付き写真"; +"Enabled" = "有効"; +"Expand" = "拡大表示"; +"Explore" = "発見"; +"Fast" = "高速"; +"Feed" = "フィード"; +"Feed posts" = "フィード投稿"; +"High" = "高"; +"Inbox" = "受信箱"; +"just now" = "たった今"; +"Low" = "低"; +"Max" = "最大"; +"Medium" = "中"; +"Mute/Unmute" = "ミュート/ミュート解除"; +"Notes, comments, stories" = "ノート、コメント、ストーリーズ"; +"now" = "たった今"; +"Open menu" = "メニューを開く"; +"Pause/Play" = "一時停止/再生"; +"Profile" = "プロフィール"; +"Quality" = "画質"; +"Reels" = "リール"; +"Requires restart" = "再起動が必要"; +"Save to Photos" = "写真アプリに保存"; +"Share sheet" = "共有シート"; +"Standard" = "標準"; +"Toggle" = "切り替え"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "グリッドフィード"; +"Browse your home feed as a grid of posts" = "ホームフィードを投稿のグリッドとして表示します"; +"Hide stories in grid" = "グリッドでストーリーを非表示"; +"Taller cells" = "縦長のセル"; +"Portrait tiles instead of squares" = "正方形ではなく縦長のタイル"; +"Open post" = "投稿を開く"; +"View profile" = "プロフィールを表示"; +"Like" = "いいね"; +"Liked" = "いいね済み"; +"Unlike" = "いいねを取り消す"; +"Unliked" = "いいねを取り消しました"; +"Followed" = "フォローしました"; +"Unfollowed" = "フォローを解除しました"; +"Couldn't update like" = "いいねを更新できませんでした"; +"Couldn't update follow" = "フォローを更新できませんでした"; +"Follow status" = "フォロー状況"; +"Shares" = "シェア"; +"Relative" = "相対表示"; +"Date and time" = "日付と時刻"; +"You're all caught up" = "すべて表示しました"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "ホームフィードを投稿のグリッドに置き換えます。Instagramのフィードに切り替えても機能はオンのままで、フィードはすぐに戻ります。ピンチで列数を変更、投稿をタップで開きます。おすすめ / フォロー中の切り替えはメインフィードと同期します。"; +"Switch button" = "切り替えボタン"; +"Hold the heart button" = "ハートボタンを長押し"; +"Floating button" = "フローティングボタン"; +"How to switch" = "切り替え方法"; +"Hold the heart in Instagram's header" = "Instagramのヘッダーのハートを長押し"; +"A small round button on the feed" = "フィード上の小さな丸いボタン"; +"Button position" = "ボタンの位置"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "ボタンを好きな場所にドラッグします。暗い帯はInstagramのヘッダーとタブバーです。"; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "グリッドをオフにせずにグリッドとInstagramのフィードを切り替えます。オフにするとホームバーのショートカットだけが手段になります。"; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "ボタンがヘッダーやタブバーの下に入ることはありません。フィードで長押しするとここに戻れます。"; +"Live preview" = "ライブプレビュー"; +"Columns" = "列数"; +"Post info" = "投稿情報"; +"Reorder and toggle stats on each tile" = "各タイルの統計を並べ替え・切り替えします"; +"Info on each post" = "各投稿の情報"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "各項目をオン・オフに切り替えます。≡ハンドルをドラッグしてタイル上の並び順を変更します。"; +"Show avatar" = "アバターを表示"; +"Media type badge" = "メディア種別バッジ"; +"Restores the default post info, order and options for the grid feed." = "グリッドフィードの投稿情報・並び順・オプションを初期状態に戻します。"; +"Views" = "再生回数"; +"Action button" = "アクションボタン"; +"Adds 'Profile picture' to story tray long-press menus" = "ストーリートレイの長押しメニューに「プロフィール写真」を追加します"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "各フィード投稿の下に、ダウンロード/共有/コピー/拡大/リポスト項目を備えたRyukGramアクションボタンを追加します。タップするとデフォルトでメニューが開きます。タップ時の動作は下で変更できます。"; +"Choose Instagram's default feed or force the Following feed" = "Instagramのデフォルトフィードにするか、フォロー中フィードを強制するかを選択します"; +"Main feed" = "メインフィード"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "フィードの更新タイミングと方法を制御します。バックグラウンド更新は、約10分後にアプリへ戻ったときに発生します。ホームボタン更新は、すでにホームタブにいる状態でホームタブをタップしたときに発生します。"; +"Confirm feed refresh" = "フィード更新を確認"; +"Shows an alert before a pull-to-refresh reloads the feed" = "スワイプ更新でフィードを再読み込みする前に確認を表示します"; +"Refresh stories only" = "ストーリーのみ更新"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "スワイプ更新でフィードを更新せずにストーリートレイのみ再読み込みします"; +"Refresh feed?" = "フィードを更新しますか?"; +"Default tap action" = "タップ時のデフォルト動作"; +"Disable background refresh" = "バックグラウンド更新を無効化"; +"Disable home button refresh" = "ホームボタン更新を無効化"; +"Disable home button scroll" = "ホームボタンでのスクロールを無効化"; +"Disable video autoplay" = "動画の自動再生を無効化"; +"Hide" = "非表示"; +"Hide entire feed" = "フィード全体を非表示"; +"Hide repost button" = "リポストボタンを非表示"; +"Hide stories tray" = "ストーリーズトレイを非表示"; +"Hide suggested stories" = "おすすめストーリーズを非表示"; +"Hide story highlights" = "ストーリーズハイライトを非表示"; +"Removes resurfaced highlights from the stories tray in feed" = "フィードのストーリーズトレイに再表示されるハイライトを取り除きます"; +"Hides suggested accounts" = "おすすめアカウントを非表示にします"; +"Hides suggested reels" = "おすすめリールを非表示にします"; +"Hides suggested threads posts" = "Threadsのおすすめ投稿を非表示にします"; +"Hides the repost button on feed posts" = "フィード投稿のリポストボタンを非表示にします"; +"Hides the story tray at the top" = "上部のストーリートレイを非表示にします"; +"Inserts a button row below like/comment/share on each post" = "各投稿のいいね/コメント/シェアの下にボタン列を追加します"; +"Long press on media to expand in full-screen viewer" = "メディアを長押しすると全画面ビューアで拡大表示します"; +"Start media muted" = "メディアをミュートで開始"; +"Expanded videos open with sound off" = "拡大表示した動画は無音で開きます"; +"Enhanced media resolution" = "メディア解像度の向上"; +"Media saving" = "メディア保存"; +"Spoof device profile so IG serves higher-quality images" = "デバイスプロファイルを偽装し、IGがより高画質な画像を配信するようにします"; +"Media" = "メディア"; +"Media zoom" = "メディアのズーム"; +"No suggested for you" = "「おすすめ」を非表示"; +"No suggested posts" = "おすすめ投稿を非表示"; +"No suggested reels" = "おすすめリールを非表示"; +"No suggested threads" = "Threadsのおすすめを非表示"; +"Prevents feed from reloading when returning from background" = "バックグラウンドから戻ったときにフィードが再読み込みされるのを防ぎます"; +"Prevents videos from playing automatically" = "動画が自動再生されるのを防ぎます"; +"Refresh" = "更新"; +"Removes all content from your home feed" = "ホームフィードからすべてのコンテンツを取り除きます"; +"Removes suggested accounts from the stories tray" = "ストーリーズトレイからおすすめアカウントを取り除きます"; +"Removes suggested posts" = "おすすめ投稿を取り除きます"; +"Scroll to top without refreshing when tapping Home" = "ホームをタップしたとき、更新せずに最上部へスクロールします"; +"Show action button" = "アクションボタンを表示"; +"Show date" = "日付を表示"; +"Stories tray" = "ストーリーズトレイ"; +"Tapping Home does nothing when already on feed" = "すでにフィードにいるときは、ホームをタップしても何もしません"; +"Tray long-press actions" = "トレイの長押しアクション"; +"Composer doesn't accept GIFs" = "この入力欄はGIFに対応していません"; +"Copy GIF link" = "GIFリンクをコピー"; +"Copy image link" = "画像リンクをコピー"; +"Custom GIF in comments" = "コメントにカスタムGIF"; +"Favorite GIFs" = "GIFをお気に入り"; +"Long-press a GIF in the picker to pin it — favorites show first" = "選択画面でGIFを長押しするとピン留めできます。お気に入りが先頭に表示されます"; +"Added to favorites" = "お気に入りに追加しました"; +"Removed from favorites" = "お気に入りから削除しました"; +"Favorite GIF unavailable" = "お気に入りのGIFは利用できません"; +"This GIF may have been removed. Long-press it to unfavorite." = "このGIFは削除された可能性があります。長押ししてお気に入りを解除してください。"; +"Failed to build GIF model" = "GIFモデルの生成に失敗しました"; +"GIF link copied" = "GIFリンクをコピーしました"; +"Image" = "画像"; +"Image link copied" = "画像リンクをコピーしました"; +"Invalid Giphy URL" = "無効なGiphy URLです"; +"Long-press the GIF button to paste any Giphy URL" = "GIFボタンを長押しすると、任意のGiphy URLを貼り付けられます"; +"Paste Giphy Link" = "Giphyリンクを貼り付け"; +"Paste a giphy.com URL or media ID" = "giphy.comのURLまたはメディアIDを貼り付けてください"; +"Send" = "送信"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "リールのサイドバー上部に、カバー表示/ダウンロード/共有/コピー/拡大/リポスト項目を備えたRyukGramアクションボタンを追加します。タップするとデフォルトでメニューが開きます。タップ時の動作は下で変更できます。"; +"Always show progress scrubber" = "再生バーを常に表示"; +"Auto-scroll reels" = "リールの自動スクロール"; +"Speed, seek and auto-scroll controls" = "速度・シーク・自動スクロールの操作"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "有効にした操作は、Reelsで⋯または音声ボタンを長押しすると表示されます。"; +"Seek controls" = "シーク操作"; +"Auto-scroll control" = "自動スクロール操作"; +"Seek" = "シーク"; +"Custom seek step" = "カスタムシーク幅"; +"Enter the number of seconds to skip" = "スキップする秒数を入力してください"; +"Set what a tap on a reel does" = "Reelsをタップしたときの動作を設定します"; +"Confirm reel refresh" = "リール更新を確認"; +"Custom speed" = "カスタム速度"; +"Disable auto-unmuting reels" = "リールの自動ミュート解除を無効化"; +"Disable scrolling reels" = "リールのスクロールを無効化"; +"Disable tab button refresh" = "タブボタンでの更新を無効化"; +"Doom scrolling limit" = "ドゥームスクロール制限"; +"e.g. 1.75" = "例: 1.75"; +"Enter a value between 0.5 and 2.0" = "0.5〜2.0の値を入力してください"; +"Keeps the progress bar visible on every reel" = "すべてのReelsで進行バーを表示したままにします"; +"Hide \"Made with Edits\" badge" = "「Editsで作成」バッジを非表示"; +"Hide friends avatars" = "友達のアバターを非表示"; +"Hide reels header" = "リールのヘッダーを非表示"; +"Hide social context overlay" = "ソーシャルコンテキストの表示を非表示"; +"Hides the avatar bubbles next to the Friends tab in reels" = "リールの友達タブ横のアバターバブルを非表示にします"; +"Hides the Edits app promo pill on reels" = "リール上のEditsアプリ宣伝ピルを非表示にします"; +"Hides the floating overlay showing who reposted or commented on reels" = "リールでリポスト/コメントしたユーザーを示すフローティング表示を非表示にします"; +"Hides the repost button on the reels sidebar" = "リールのサイドバーのリポストボタンを非表示にします"; +"Drops the top bar while you watch reels" = "Reels視聴中は上部バーを非表示にします"; +"Hiding" = "非表示設定"; +"IG default" = "IGデフォルト"; +"Limits" = "制限"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "連続してスクロールできるReelsの数を制限し、更新をブロックします"; +"Only loads %@ %@" = "%@ %@ のみ読み込みます"; +"Places a button above the like/comment/share column on each reel" = "各リールのいいね/コメント/シェア列の上にボタンを配置します"; +"Playback speed" = "再生速度"; +"Prevent doom scrolling" = "ドゥームスクロールを防止"; +"Engagement filter" = "エンゲージメントフィルター"; +"Hide reels below a like, comment, view or repost count" = "いいね・コメント・再生・リポスト数が基準未満のリールを非表示"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "設定したすべての最小値に届かないリールを非表示にします。投稿者が数を非表示にしているリールは、別途隠さない限り表示されます。"; +"Filter reels by engagement" = "エンゲージメントでリールをフィルター"; +"Hide reels with hidden stats" = "統計非公開のリールを非表示"; +"Only filter the Reels tab" = "リールタブのみフィルター"; +"Reels you open from a post, profile or share are never filtered" = "投稿・プロフィール・シェアから開いたリールはフィルターされません"; +"Minimums" = "最小値"; +"Minimum likes" = "最小いいね数"; +"Minimum comments" = "最小コメント数"; +"Minimum views" = "最小再生数"; +"Minimum reposts" = "最小リポスト数"; +"Reels below this count are hidden. 0 turns this limit off." = "この数未満のリールを非表示にします。0 でこの制限をオフ。"; +"Turns the filter off and clears every minimum." = "フィルターをオフにし、すべての最小値をクリアします。"; +"Locks a reel in place so it never scrolls to the next one" = "Reelsを固定して次のReelsにスクロールしないようにします"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "音量ボタンやマナースイッチを操作してもReelsのミュートが解除されないようにします"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Reelsフィードが更新される前に確認します"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "ロックされたリールでパスワードの表示と自動入力を行うボタンを表示します"; +"Same as general format" = "一般のフォーマットと同じ"; +"Shows the repost date on the \"reposted this reel\" header." = "「このReelをリポストしました」ヘッダーにリポスト日を表示します。"; +"Reposts" = "リポスト"; +"Swipe a reel left to open the author's profile" = "リールを左にスワイプすると投稿者のプロフィールが開きます"; +"Swipe left to profile" = "左スワイプでプロフィールへ"; +"Tap Controls" = "タップ操作"; +"Tap to mute on photo reels" = "写真リールをタップでミュート"; +"Tapping the Reels tab while on reels does nothing" = "リール表示中はリールタブをタップしても何もしません"; +"Unlock password-locked reels" = "パスワード付きリールのロック解除"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "一時停止モードがオンのとき、写真リールのタップは標準の一時停止ではなく音声のオン/オフになります"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "フォロワー/フォロー中のリストに絞り込み・並べ替えボタンを追加します。画面を離れるとリセットされます。"; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "ハイライトの長押しメニューに、カバーを全画面で開く表示項目を追加します"; +"Applying restarts Instagram to load your changes." = "適用すると変更を反映するためInstagramが再起動します。"; +"Card details" = "カードの詳細"; +"Comment count" = "コメント数"; +"Copy note on long press" = "長押しでノートをコピー"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "プロフィールグリッドの各投稿・Reelsカードに表示する追加統計 — 表示する項目の選択と並べ替えを行い、適用してください。"; +"Fake follower count" = "偽のフォロワー数"; +"Fake following count" = "偽のフォロー数"; +"Fake post count" = "偽の投稿数"; +"Fake profile stats" = "プロフィール統計の偽装"; +"Fake verified badge" = "偽の認証バッジ"; +"Fetch missing counts" = "不足している数値を取得"; +"Filter & sort lists" = "リストの絞り込みと並べ替え"; +"Follow indicator" = "フォロー状態の表示"; +"Follower & following lists" = "フォロワー/フォロー中リスト"; +"Follower count" = "フォロワー数"; +"Following count" = "フォロー数"; +"Like count" = "いいね数"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "プロフィール画像を長押しすると、ズーム・共有・保存が可能な全画面表示で開きます"; +"Long press the note bubble on a profile to copy the text" = "プロフィールのノート吹き出しを長押しするとテキストをコピーできます"; +"Long press to download directly (ignored when zoom is on)" = "長押しで直接ダウンロードします(ズームがオンのときは無効)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "プロフィール要素の長押しジェスチャーです。機能ごとのアクションボタンとは別に管理されます。"; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "すべてのカード統計のマスタースイッチです。不足するカウントの取得はInstagramのAPIを使用し、レート制限に達する場合があります。"; +"Only affects your own profile header. Other users see the real numbers." = "自分のプロフィールヘッダーの表示にのみ影響します。他のユーザーには実際の数値が表示されます。"; +"Post count" = "投稿数"; +"Profile card details" = "プロフィールカードの詳細"; +"Profile stats" = "プロフィール統計"; +"Repost count" = "リポスト数"; +"Restores the default stats, order, and options for profile card details." = "プロフィールカードの詳細の統計・並び順・オプションを初期状態に戻します。"; +"Restores the default stats, order, and options for search & explore card details." = "検索・発見カードの詳細の統計・並び順・オプションを初期状態に戻します。"; +"Save profile picture" = "プロフィール画像を保存"; +"Search & Explore" = "検索・発見"; +"Share count" = "シェア数"; +"Short numbers" = "数値を省略表示"; +"Show a checkmark next to your name on your own profile" = "自分のプロフィールで名前の横にチェックマークを表示します"; +"Show card details" = "カードの詳細を表示"; +"Show full follower count" = "フォロワー数を省略せず表示"; +"Show full post count" = "投稿数を省略せず表示"; +"Show the custom number set below" = "下で設定したカスタムの数値を表示します"; +"Show the exact number instead of a shortened one" = "省略せず正確な数値を表示します"; +"Shows whether the profile user follows you" = "そのユーザーがあなたをフォローしているかを表示します"; +"Tap to set" = "タップして設定"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "各統計をオン・オフに切り替えます。≡ハンドルをドラッグしてカード上の並び順を変更します。"; +"Upload date" = "投稿日"; +"View count" = "再生回数"; +"View highlight cover" = "ハイライトカバーを表示"; +"Views, likes, comments, shares, reposts, date" = "再生回数、いいね、コメント、シェア、リポスト、日付"; +"Zoom profile photo" = "プロフィール画像をズーム"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "実行中・待機中・完了したダウンロード"; +"Auto-retry attempts" = "自動再試行の回数"; +"Auto-retry failed downloads" = "失敗したダウンロードを自動で再試行"; +"Confirm before download" = "ダウンロード前に確認"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "非推奨。メディアをダウンロードする新しい方法は、RyukGramアクションボタン(フィード/リール/ストーリーズで機能ごとに設定)です。従来のメディア上での複数指長押しを使いたい場合のみ、このマスタートグルを有効にしてください。"; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "アプリを離れても、ダウンロード・エンコード・プロフィールスキャンを一時停止しません"; +"Download queue" = "ダウンロードキュー"; +"Downloads" = "ダウンロード"; +"Downloads with %@ %@" = "%@ %@ でダウンロード"; +"Enable long-press gesture" = "長押しジェスチャーを有効化"; +"Finger count for long-press" = "長押しの指の本数"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "同時に実行するダウンロードの数です。超えた分は順番待ちになり、空きができ次第開始されます。ネットワークエラーで失敗したダウンロードは自動で再試行されます。マネージャーを開くと、ダウンロードの確認・キャンセル・再試行ができます。"; +"Keep running in background" = "バックグラウンドでも実行を継続"; +"Legacy long-press gesture" = "従来の長押しジェスチャー"; +"Long-press hold time" = "長押しの時間"; +"Master toggle for the deprecated gesture workflow (off by default)" = "非推奨のジェスチャー機能のマスタートグル(デフォルトはオフ)"; +"Max simultaneous downloads" = "同時ダウンロードの最大数"; +"Open download manager" = "ダウンロードマネージャーを開く"; +"Press finger(s) for %@ %@" = "指を %@ %@ 押し続けます"; +"Retry automatically when a download drops on a network error" = "ネットワークエラーでダウンロードが中断したとき、自動で再試行します"; +"Route saves into a custom album in Photos instead of the camera roll root" = "保存先をカメラロール直下ではなく、写真アプリ内のカスタムアルバムにします"; +"Run up to %@ %@ at once" = "最大 %@ %@ を同時に実行します"; +"Save action" = "保存時の動作"; +"Save to dedicated album" = "専用アルバムに保存"; +"Show a confirmation dialog before starting a download" = "ダウンロード開始前に確認ダイアログを表示します"; +"Try %@ more %@ before giving up" = "あきらめる前に、あと %@ %@ 再試行します"; +"What happens after the gesture downloads" = "ジェスチャーでのダウンロード後の動作"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "「専用アルバムに保存」がオンのとき、ダウンロードや共有シートの「写真アプリに保存」は、写真ライブラリ内の指定した名前のアルバムに保存されます。「アルバム名」をタップすると変更できます。"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "残り%@"; +"%@ of %@" = "%@ / %@"; +"%@/s" = "%@/s"; +"%dh" = "%dh"; +"%dm" = "%dm"; +"%ds" = "%ds"; +"%ld downloading" = "%ld件ダウンロード中"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld件がまだ実行中です — 停止されます。保存済みのファイルはそのまま残ります。"; +"%lu failed" = "%lu 件失敗"; +"%lu of %lu done" = "%lu / %lu 件完了"; +"%lu saved, %lu failed" = "%lu 件保存、%lu 件失敗"; +"12 hours" = "12時間"; +"1s" = "1秒"; +"24 hours" = "24時間"; +"48 hours" = "48時間"; +"Active" = "実行中"; +"Auto-retry" = "自動再試行"; +"Clear completed" = "完了分を消去"; +"Clear download history" = "ダウンロード履歴を消去"; +"Clear download history?" = "ダウンロード履歴を消去しますか?"; +"Completed" = "完了"; +"Don't keep" = "保持しない"; +"Download history" = "ダウンロード履歴"; +"Download settings" = "ダウンロード設定"; +"Downloading %lu items" = "%lu 件をダウンロード中"; +"Downloading…" = "ダウンロード中…"; +"Empty the manager's list of past downloads" = "マネージャーの過去のダウンロード一覧を空にします"; +"Encoding %d%%" = "エンコード中 %d%%"; +"Encoding…" = "エンコード中…"; +"Extra downloads wait in line and start as slots free up." = "超えた分のダウンロードは順番待ちになり、空きができ次第開始されます。"; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "アプリを閉じた後、完了・失敗・キャンセルしたダウンロードをマネージャーに残す期間です。ファイル自体には一切手を加えず、一覧のみが対象です。"; +"How long past downloads stay listed in the manager" = "過去のダウンロードをマネージャーに一覧表示する期間"; +"Keep history for" = "履歴を保持する期間"; +"Media you download shows up here, with its progress and where it was saved." = "ダウンロードしたメディアが、進捗と保存先とともにここに表示されます。"; +"No downloads yet" = "ダウンロードはまだありません"; +"Preview" = "プレビュー"; +"Queued" = "待機中"; +"Redownload" = "再ダウンロード"; +"Retry" = "再試行"; +"Retrying…" = "再試行中…"; +"Stop" = "停止"; +"The files already saved are kept — this only empties the list." = "保存済みのファイルはそのまま残ります。一覧を空にするだけです。"; +"Waiting for a free slot" = "空きスロットを待機中"; +"Waiting for connection…" = "接続を待機中…"; +"Waiting to retry" = "再試行を待機中"; +"Waiting…" = "待機中…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "オーバーレイボタンを配置"; +"Overlay layout" = "オーバーレイのレイアウト"; +"Drag to position the buttons" = "ドラッグしてボタンを配置"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "ボタンをストーリー上にドラッグしてください。暗くなった帯は返信バーです。"; +"Send message" = "メッセージを送信"; + +"Pinned" = "ピン留め済み"; +"Search viewers" = "閲覧者を検索"; +"No matching viewers" = "一致する閲覧者はいません"; +"No viewers match these filters" = "これらのフィルターに一致する閲覧者はいません"; +"Unavailable" = "利用できません"; +"Default (recent first)" = "デフォルト(新しい順)"; +"%lu viewers" = "閲覧者 %lu 人"; +"Viewer pinned" = "閲覧者をピン留めしました"; +"Viewer unpinned" = "閲覧者のピン留めを解除しました"; +"Pin a viewer" = "閲覧者をピン留め"; +"Pin order" = "ピン留めの順序"; +"Pin this viewer?" = "この閲覧者をピン留めしますか?"; +"Filter, sort & pin viewers" = "閲覧者の絞り込み・並べ替え・ピン留め"; +"Add by username, remove, reorder" = "ユーザーネームで追加、削除、並べ替え"; +"Pinned viewers (%lu)" = "ピン留めした閲覧者 (%lu)"; +"Viewers list" = "閲覧者リスト"; +"Settings are saved and reused next time." = "設定は保存され、次回も引き継がれます。"; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "複数チェックすると組み合わせられます。ピン留めした閲覧者は常に先頭に表示され、これらの絞り込みの影響を受けません。"; +"Pinned viewers" = "ピン留めした閲覧者"; +"Pin" = "ピン留め"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "「ストーリーを見た人」の一覧を、検索・フィルター・並べ替えができる一覧に置き換えます。閲覧者を長押しすると上部に固定できます。いつでも標準の一覧に戻せます。"; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "ユーザー名またはユーザーのPKです。固定した閲覧者は、常にストーリー閲覧者一覧の上部に表示されます。"; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "ストーリーの目のボタンの横に、ダウンロード/共有/コピー/拡大/リポスト/メンション表示項目を備えたRyukGramアクションボタンを追加します。タップするとデフォルトでメニューが開きます。タップ時の動作は下で変更できます。"; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "ストーリーの画面に音声のミュート/解除用スピーカーボタンを追加します。3点メニューからも利用できます"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "ストーリー画面に目のボタンを追加します。オフにすると、ボタンなしで既読ブロックのみ有効になります"; +"Advance on story like" = "いいねで次のストーリーへ"; +"Advance on story reply" = "返信で次のストーリーへ"; +"Advance when marking as seen" = "既読にしたとき次へ進む"; +"Audio" = "音声"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "すべてブロック: すべてのストーリーがブロックされ、リストのユーザーが例外になります。\n選択したもののみブロック: リストのユーザーのみブロックされ、それ以外は通常どおりです。\n両方のリストは個別に保存されます。"; +"Blocking mode" = "ブロックモード"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "ボタン = 1タップで既読にします。切り替え = タップでストーリーの既読通知のオン/オフを切り替えます(オンのとき目のアイコンが青くなります)"; +"Marked-seen indicator" = "既読マークインジケーター"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "既読にしたストーリーを48時間記憶し、その目のボタンを非表示にするか塗りつぶします"; +"Hide eye button" = "目のボタンを非表示"; +"Fill eye button green" = "目のボタンを緑で塗りつぶす"; +"Disable story seen receipt" = "ストーリーの既読通知を無効化"; +"Enable story user list" = "ストーリーのユーザーリストを有効化"; +"Stops others from seeing that you viewed their story" = "自分が相手のストーリーを見たことを、相手に知られないようにします"; +"Inserts a button next to the seen/eye button on story overlays" = "ストーリー画面の既読/目のボタンの横にボタンを追加します"; +"Keep stories visually seen locally" = "ストーリーをローカルでは閲覧済み表示に"; +"Liking a story automatically advances to the next one after a short delay" = "ストーリーにいいねすると、少し置いて自動的に次のストーリーへ進みます"; +"Manage list" = "リストを管理"; +"Manage list (%lu)" = "リストを管理 (%lu)"; +"Manual seen button mode" = "手動既読ボタンのモード"; +"Mark seen on story like" = "いいねで既読にする"; +"Mark seen on story reply" = "返信で既読にする"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "既読ブロックがオンでも、ハートをタップした時点でそのストーリーを既読にします"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "既読ブロックがオンでも、返信や絵文字リアクションを送るとそのストーリーを既読にします"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "サーバーへの既読通知はブロックしたまま、ローカルではストーリーを閲覧済み(グレーのリング)として表示します"; +"Master toggle. When off, the list is ignored" = "マスタートグルです。オフのときリストは無視されます"; +"Playback" = "再生"; +"Search, sort, swipe to remove" = "検索・並べ替え・スワイプで削除"; +"Seen receipts" = "既読通知"; +"Sending a reply or emoji reaction automatically advances to the next story" = "返信や絵文字リアクションを送ると、自動的に次のストーリーへ進みます"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "アクションボタンメニューとストーリーの3点メニューに「メンションを表示」項目を追加します"; +"Mentions overlay button" = "メンション表示ボタン"; +"Mentions count badge" = "メンション数のバッジ"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "ストーリー画面のアクション/目のボタンの横にボタンを追加します。表示中のストーリーにメンションやシェアされた投稿/リールがあるときのみ表示されます"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "メンションされたアカウントの数を、画面のボタンに赤いバッジで表示します"; +"Hide stories midcards" = "ストーリーズのミッドカードを非表示"; +"Removes the Trending and Music promo cards from the stories tray" = "ストーリーズトレイからトレンドやミュージックの宣伝カードを取り除きます"; +"Stickers" = "スタンプ"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "アンケート/クイズ/スライダーの結果を、操作する前に確認できます。通常どおりタップして投票することも可能です。「従来のスタンプを強制表示」を有効にすると、クイズとリビールのスタンプがストーリー作成画面に復活します。"; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "リールのアンケート/クイズ/スライダーの結果を、操作する前に確認できます。通常どおりタップして投票することも可能です。"; +"Force legacy stickers in tray" = "従来のスタンプをトレイに強制表示"; +"Adds Quiz and Reveal stickers back to the picker" = "クイズとリビールのスタンプを選択画面に復活させます"; +"Bypass Reveal sticker" = "リビールスタンプをバイパス"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "リビールスタンプ付きストーリーの「DMで開放」の手順をスキップします"; +"Show quiz answer" = "クイズの正解を表示"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "クイズスタンプの正解、またはアンケートで最多の選択肢に丸を付けます"; +"Show poll vote counts" = "アンケートの票数を表示"; +"Show vote tallies on poll options and slider count/average before you vote" = "投票する前に、アンケート選択肢の得票数やスライダーの回答数/平均を表示します"; +"Stop story auto-advance" = "ストーリーの自動送りを停止"; +"Stories" = "ストーリーズ"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "タイマーが終わってもストーリーが自動的に次へ進まなくなります。タップで手動で進めてください"; +"Story audio toggle" = "ストーリーの音声切り替え"; +"Story user list" = "ストーリーのユーザーリスト"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "目のボタンをタップしてストーリーを既読にすると、自動的に次のストーリーへ進みます"; +"This will send a story view receipt." = "ストーリーの閲覧通知が送信されます。"; +"View story mentions" = "ストーリーのメンションを表示"; +"Which stories get seen-receipt blocking" = "既読通知をブロックするストーリーの対象"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "正確なアクティブ状態"; +"Activity log" = "アクティビティログ"; +"Loading…" = "読み込み中…"; +"Notify: %@ · Log: %@" = "通知: %@ · ログ: %@"; +"Add by user ID" = "ユーザーIDで追加"; +"Add by thread ID" = "スレッドIDで追加"; +"Adding…" = "追加中…"; +"Browse activity, grouped by person" = "人ごとにまとめてアクティビティを閲覧"; +"Clear activity log?" = "アクティビティログを消去しますか?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "まだアクティビティはありません。\n誰かがあなたのメッセージを読んだり、オンラインになったりすると、ここに表示されます。"; +"No one found. Check the spelling or try a different name." = "見つかりませんでした。スペルを確認するか、別の名前を試してください。"; +"Notify about someone" = "特定の人について通知"; +"Open some chats first, or search a username above." = "まずいくつかチャットを開くか、上でユーザー名を検索してください。"; +"Pick what each person notifies you about" = "人ごとに通知する内容を選択"; +"Recent in your DMs" = "DMの最近の相手"; +"Results" = "結果"; +"This removes all recorded activity on this device." = "この端末に記録されたすべてのアクティビティが削除されます。"; +"Active %ldd ago" = "%ldd前にアクティブ"; +"Active %ldh ago" = "%ldh前にアクティブ"; +"Active %ldm ago" = "%ldm前にアクティブ"; +"Activity notifications" = "アクティビティ通知"; +"Also track reads in group chats. Groups can be noisy" = "グループチャットの既読も追跡します。グループは通知が多くなることがあります"; +"Came online" = "オンラインになりました"; +"Customise notifications" = "通知をカスタマイズ"; +"Everyone" = "全員"; +"Muted" = "ミュート中"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "まだ誰もカスタマイズされていません。アクティビティログで相手を長押しして、通知する内容を選んでください。"; +"Online, offline, typing and read receipts, per person" = "オンライン・オフライン・入力中・既読を、人ごとに"; +"Per-person notifications" = "人ごとの通知"; +"Enable activity" = "アクティビティを有効化"; +"Track who reads your messages, comes online, goes offline or types" = "誰があなたのメッセージを読み、オンライン・オフラインになり、入力しているかを追跡します"; +"For everyone" = "全員に対して"; +"For this person" = "この人に対して"; +"Log only" = "ログのみ"; +"Notify only" = "通知のみ"; +"Notify + log" = "通知+ログ"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "「ログのみ」は静かに記録します。「通知のみ」は保存せずに通知します。「通知+ログ」は両方を行います。"; +"Presence" = "在席状態"; +"Read your message" = "メッセージを既読にした"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "在席状態を20秒ごとに更新し、Instagramの猶予時間をなくすことで、相手がオフラインになった瞬間に標準の緑のドットが消えます。"; +"Started typing" = "入力を開始した"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "タップすると通知する内容を変更できます。スワイプで削除して既定に戻せます。"; +"These override the defaults for this person." = "これらはこの人に対して既定の設定を上書きします。"; +"Went offline" = "オフラインになった"; +"When someone becomes active" = "誰かがアクティブになったとき"; +"When someone goes inactive" = "誰かが非アクティブになったとき"; +"When someone opens a message you sent" = "誰かがあなたの送ったメッセージを開いたとき"; +"When someone starts typing to you" = "誰かがあなたへの入力を始めたとき"; +"is now active" = "がアクティブになりました"; +"is typing…" = "が入力中…"; +"went offline" = "がオフラインになりました"; +"Online" = "オンライン"; +"Offline" = "オフライン"; +"Typing" = "入力中"; +"Filters" = "フィルター"; +"Delete the selected records? This can't be undone." = "選択した記録を削除しますか?この操作は取り消せません。"; +"Delete all records for the selected chats? This can't be undone." = "選択したチャットのすべての記録を削除しますか?この操作は取り消せません。"; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "DMスレッドに目のボタンを追加します。オフにすると、ボタンなしで既読ブロックのみ有効になります"; +"Auto mark seen on interact" = "操作時に自動で既読"; +"Auto mark seen on typing" = "入力時に自動で既読"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "自動の既読通知をブロックします。既読になるのは、あなたが選んだときだけです"; +"Control when messages are marked as seen" = "メッセージがいつ既読になるかを制御します"; +"How the seen button behaves" = "既読ボタンの動作"; +"Manually mark messages as seen" = "メッセージを手動で既読にする"; +"Mark as seen?" = "既読にしますか?"; +"Mark as viewed?" = "閲覧済みにしますか?"; +"Mark seen locally" = "ローカルで既読にする"; +"Marks messages as seen when you reply, react or send media" = "返信・リアクション・メディア送信をしたとき、メッセージを既読にします"; +"Marks messages as seen when you start typing" = "入力を始めたとき、メッセージを既読にします"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "開いたチャットはこの端末上でのみ既読表示になります。相手に既読が送られるまで目のボタンがオレンジ色になります"; +"Read receipt mode" = "既読モード"; +"Read receipts" = "既読"; +"Show seen button" = "既読ボタンを表示"; +"This will send a read receipt for the latest messages." = "最新のメッセージに既読通知が送信されます。"; +"This will send a view receipt for the current message." = "現在のメッセージに閲覧通知が送信されます。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "アクティビティ"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "ボイスメッセージの長押しメニューに「ダウンロード」項目を追加し、M4A音声として保存できるようにします"; +"Allows typing and sending DMs longer than Instagram's limit" = "Instagramの文字数制限を超えるDMの入力と送信を可能にします"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "DMのプラスメニューに「ファイルを送信」項目を追加します。対応ファイル形式はInstagram側で制限される場合があります"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "DMのプラスメニューに「音声ファイル」項目を追加し、音声ファイルをボイスメッセージとして送信できるようにします"; +"Adds copy text, download GIF/audio to the note long-press menu" = "ノートの長押しメニューにテキストのコピー、GIF/音声のダウンロードを追加します"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "すべてブロック: すべてのチャットがブロックされ、リストのチャットが例外になります。\n選択したもののみブロック: リストのチャットのみブロックされ、それ以外は通常どおりです。\n両方のリストは個別に保存されます。受信箱でチャットを長押しすると追加/削除できます。"; +"Block keep-deleted for excluded chats" = "除外チャットでは削除メッセージ保持をブロック"; +"Block keep-deleted for unlisted chats" = "リスト外チャットでは削除メッセージ保持をブロック"; +"Bypass DM character limit" = "DMの文字数制限をバイパス"; +"Chat list" = "チャットリスト"; +"Confirmation dialog before clearing preserved messages" = "保持中のメッセージを消去する前に確認ダイアログを表示します"; +"Copies note text directly on long press without opening the menu" = "長押しでメニューを開かず、ノートのテキストを直接コピーします"; +"Copy text on hold" = "長押しでテキストをコピー"; +"Adds Background, Text and Emoji buttons to the note editor" = "ノート編集画面に背景・テキスト・絵文字のボタンを追加します"; +"Custom note themes" = "ノートのカスタムテーマ"; +"Disable vanish mode swipe" = "消えるメッセージモードのスワイプを無効化"; +"Disable typing status" = "入力中ステータスを無効化"; +"Disable view-once limitations" = "1回表示の制限を無効化"; +"Download voice messages" = "ボイスメッセージをダウンロード"; +"Enable chat list" = "チャットリストを有効化"; +"Enable note theming" = "ノートテーマを有効化"; +"Enables the notes theme picker" = "ノートのテーマピッカーを有効にします"; +"Files" = "ファイル"; +"Full last active date" = "最終アクティブの完全な日時"; +"Hide reels blend button" = "リールのブレンドボタンを非表示"; +"Hide send to group chat" = "グループチャットへの送信を非表示"; +"Pin recipients on long-press" = "長押しで送信先をピン留め"; +"Long-press in the share sheet to pin a chat/user to the top" = "共有シートで長押しすると、チャット/ユーザーを一番上にピン留めできます"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "送信先を長押しするとピン留め/解除ができます。ピン留めした送信先は一番上に表示されます。"; +"Recipient pinned" = "送信先をピン留めしました"; +"Recipient unpinned" = "送信先のピン留めを解除しました"; +"Couldn't resolve recipient id" = "送信先IDを特定できませんでした"; +"Hide video call button" = "ビデオ通話ボタンを非表示"; +"Hide voice call button" = "音声通話ボタンを非表示"; +"Hides the blend button in DMs" = "DM内のブレンドボタンを非表示にします"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "複数の相手に共有するとき、グループチャット作成/送信の行を取り除きます"; +"Hides typing indicator from others" = "入力中の表示を相手に見せないようにします"; +"Indicate unsent messages" = "送信取り消しメッセージを表示"; +"Keep deleted messages" = "削除されたメッセージを保持"; +"Turns view once messages into normal media you can loop and pause" = "一度きりのメッセージを、ループや一時停止ができる通常のメディアに変えます"; +"Note actions" = "ノートのアクション"; +"Preserves messages that others unsend" = "相手が送信取り消しをしたメッセージを保持します"; +"Keep my deleted messages" = "削除したメッセージを保持"; +"Also preserves messages you unsend yourself" = "自分で送信を取り消したメッセージも保持します"; +"Prevents accidental swipe-up activation of vanish mode" = "上スワイプによる消えるメッセージモードの誤作動を防ぎます"; +"Quick list button in chats" = "チャット内のクイックリストボタン"; +"Removes the audio call button from DM thread header" = "DMスレッドのヘッダーから音声通話ボタンを取り除きます"; +"Removes the video call button from DM thread header" = "DMスレッドのヘッダーからビデオ通話ボタンを取り除きます"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "ビジュアルメッセージを期限切れなしで再生できます。目のボタンのメニュー、または目のボタンが無効の場合は単独のボタンで切り替えます"; +"Search, sort, swipe to remove or toggle keep-deleted" = "検索・並べ替え・スワイプで削除、または削除メッセージ保持の切り替えができます"; +"Send audio as file" = "音声をファイルとして送信"; +"Send files (experimental)" = "ファイルを送信(実験的)"; +"File sending not available" = "ファイル送信は利用できません"; +"Show full date instead of \"Active 2h ago\"" = "「2時間前にオンライン」の代わりに完全な日時を表示します"; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "DMスレッドに、チャットをリストへ追加/削除するボタンを表示します。長押しでその他のオプションが開きます"; +"Shows a notification pill when a message is unsent" = "メッセージが送信取り消しされたとき通知ピルを表示します"; +"Shows an \"Unsent\" label on preserved messages" = "保持したメッセージに「送信取り消し」ラベルを表示します"; +"Unlimited replay of visual messages" = "ビジュアルメッセージの無制限再生"; +"Unsent message notification" = "送信取り消しの通知"; +"Voice messages" = "ボイスメッセージ"; +"Warn before clearing on refresh" = "更新での消去前に警告"; +"Which chats get read-receipt blocking" = "既読をブロックするチャットの対象"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ DMタブで引っ張って更新すると、保持中のメッセージがすべて消去されます。確認ダイアログが必要な場合は下の警告を有効にしてください。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu 件を削除しました"; +"%lu selected" = "%lu 件選択中"; +"Absolute date + time" = "日付と時刻で表示"; +"Adjust the filters or clear the search to see more." = "フィルターを調整するか、検索をクリアするともっと表示されます。"; +"All time" = "全期間"; +"Browse, filter and search recorded messages" = "記録したメッセージの閲覧・絞り込み・検索ができます"; +"Captures unsent messages with their text or media" = "送信取り消しされたメッセージを、テキストやメディアごと記録します"; +"Clear deleted-message log?" = "削除メッセージのログを消去しますか?"; +"Clear from this user" = "このユーザーの記録を消去"; +"Clear log" = "ログを消去"; +"Clear log for this account" = "このアカウントのログを消去"; +"Clear log for this user?" = "このユーザーのログを消去しますか?"; +"Clear media files" = "メディアファイルを消去"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "メディアを消去しても記録(テキスト、送信者、日時)は残ります。ログを消去すると、このアカウントのすべてが削除されます。"; +"Close" = "閉じる"; +"Content unavailable" = "コンテンツを利用できません"; +"Copied" = "コピーしました"; +"Copy URL" = "URLをコピー"; +"Date range" = "期間"; +"Deleted messages" = "削除されたメッセージ"; +"Deleted messages log" = "削除メッセージのログ"; +"Deleted: %@\n" = "削除日時: %@\n"; +"Edit %lu" = "編集 %lu"; +"Edit history" = "編集履歴"; +"Edited" = "編集済み"; +"Empty" = "空"; +"Enable deleted messages log" = "削除メッセージのログを有効化"; +"Enable Settings → Messages → Deleted messages log to start recording." = "記録を開始するには、設定 → メッセージ → 削除メッセージのログを有効にしてください。"; +"GIF" = "GIF"; +"Hashtag" = "ハッシュタグ"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "種類: %@\n"; +"Last 30 days" = "過去30日間"; +"Last 7 days" = "過去7日間"; +"Link" = "リンク"; +"Live location" = "ライブ位置情報"; +"Location" = "位置情報"; +"Logging is off" = "ログ記録はオフです"; +"Media on disk" = "保存済みメディア"; +"Most messages" = "メッセージ数順"; +"Most recent" = "新しい順"; +"No deleted messages yet" = "削除されたメッセージはまだありません"; +"No matches" = "一致なし"; +"Nothing to save" = "保存するものがありません"; +"Oldest first" = "古い順"; +"Open log" = "ログを開く"; +"Group chat" = "グループチャット"; +"%lu messages in %lu chats" = "%lu 件のメッセージ(%lu 件のチャット)"; +"%lu people · %lu deleted" = "%lu 人 · %lu 件削除"; +"When someone unsends a message, it will appear here grouped by chat." = "誰かがメッセージを送信取り消しすると、チャットごとにここに表示されます。"; +"Clear this chat" = "このチャットの記録を消去"; +"Clear log for this chat?" = "このチャットのログを消去しますか?"; +"Removes every preserved deleted message from this group chat." = "このグループチャットで保持している削除メッセージをすべて削除します。"; +"Reaction removed" = "リアクションが削除されました"; +"Log removed reactions" = "削除されたリアクションを記録"; +"Also records when someone removes a reaction, and which message it was on" = "誰かがリアクションを取り消したことと、それがどのメッセージに対するものかも記録します"; +"Removed a reaction" = "リアクションを取り消しました"; +"on @%@: %@" = "@%@ に対して: %@"; +"on: %@" = "対象: %@"; +"a message" = "メッセージ"; +"removed %@ on: %@" = "%@ を取り消し 対象: %@"; +"removed reaction %@" = "リアクション %@ を取り消し"; +"%@ removed the %@ reaction." = "%@ が %@ のリアクションを取り消しました。"; +"Removed %@" = "%@ を取り消しました"; +"Someone" = "誰か"; +"Photo or video" = "写真または動画"; +"Refresh names & photos" = "名前と写真を更新"; +"Refreshing names & photos" = "名前と写真を更新中"; +"Records every message someone unsends, grouped by chat" = "送信取り消しされたすべてのメッセージを、チャットごとにまとめて記録します"; +"Open profile" = "プロフィールを開く"; +"Original" = "オリジナル"; +"Play" = "再生"; +"Post" = "投稿"; +"Reel" = "リール"; +"Relative (1m / 3h / 3d ago)" = "相対表示(1分前 / 3時間前 / 3日前)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "現在のアカウントで保持しているすべての削除メッセージと記録したメディアを削除します。この操作は取り消せません。"; +"Removes every preserved deleted message and its captured media for this account." = "このアカウントで保持しているすべての削除メッセージと、記録したメディアを削除します。"; +"Removes every preserved deleted message from this sender." = "この送信者の保持中の削除メッセージをすべて削除します。"; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "保存済みの写真・動画・音声クリップをすべて削除します。記録のテキストと送信者情報は残ります。"; +"Search messages" = "メッセージを検索"; +"Search senders or messages" = "送信者またはメッセージを検索"; +"Select" = "選択"; +"Show edit history" = "編集履歴を表示"; +"Source URL recorded but media not stored.\n" = "ソースURLは記録済みですが、メディアは保存されていません。\n"; +"Sticker" = "スタンプ"; +"Tap to open in Instagram" = "タップしてInstagramで開く"; +"Tap to open in Maps" = "タップしてマップで開く"; +"Tap to play" = "タップして再生"; +"Tap to play · %@" = "タップして再生 · %@"; +"Text" = "テキスト"; +"This account" = "このアカウント"; +"Unknown" = "不明"; +"Video" = "動画"; +"View" = "表示"; +"Voice" = "ボイス"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "有効にすると、削除されたメッセージとそのメディアがこのデバイスに保存されます。履歴を消すには、オフにしてログを消去してください。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "描画ツールで、ギャラリー・写真・ステッカー・貼り付けから画像を落書きとして送信できます。切り抜きと背景除去のエディター内蔵です"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "線や図形を描いてから「送信」をタップし、画像の取得元を選びます: ギャラリー・写真・ステッカー・貼り付け。\n\n画像は描いたものと置き換わり、その位置とサイズに合わせられます。大きく描くほど画像も大きくなります。\n\n反映するにはInstagramを再起動してください。"; + +"Send image as drawing" = "画像を描画として送信"; + +"Bypass \"You can't send messages\"" = "「メッセージを送信できません」をバイパス"; +"Custom chat background" = "チャットのカスタム背景"; +"DM Save button" = "DMの保存ボタン"; +"Incoming calls stay silent — no ring, no screen, no notification" = "着信を無音にします。着信音・画面表示・通知のいずれも出ません"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "DMの写真・動画にあるInstagram標準の保存ボタンで、写真アプリ・ギャラリーへの保存や共有ができるようにします"; +"Messages" = "メッセージ"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "入力ブロックのバナーを取り除き、制限されたスレッドでテキスト入力を復活させます"; +"Reroute native Save" = "標準の保存先を変更"; +"Save media" = "メディアを保存"; +"Silence incoming calls" = "着信を無音にする"; +"Threads" = "スレッド"; +"Use your own images as chat backgrounds" = "自分の画像をチャットの背景として使用します"; +"Activity status toggle" = "アクティビティ状態の切り替え"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "受信箱のヘッダーにドットを追加します。タップするとアクティビティ状態をオン・オフできます"; +"Activity status on" = "アクティビティ状態オン"; +"Activity status off" = "アクティビティ状態オフ"; +"Couldn't change activity status" = "アクティビティ状態を変更できませんでした"; +"Check your connection and try again" = "接続を確認してもう一度お試しください"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "カメラ"; +"Viewer" = "ビューア"; +"Saving" = "保存"; +"Confirmations" = "確認"; +"Confirm switching button" = "切り替え確認ボタン"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "アクションボタンの隣に、切り替え確認をその場でオン・オフできるボタンを追加します"; +"Switching confirmation on" = "切り替え確認オン"; +"Switching confirmation off" = "切り替え確認オフ"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "インスタントカメラにギャラリーボタンを追加し、アルバムから写真を送れるようにします"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "インスタントビューアのヘッダーに、拡大・保存・共有・一括保存項目を備えたRyukGramアクションボタンを追加します"; +"All loaded instants" = "読み込み済みのすべてのインスタント"; +"Auto advance after reaction" = "リアクション後に自動で次へ"; +"Automatically moves to the next instant after you like or react" = "いいねやリアクションをすると、自動的に次のインスタントへ進みます"; +"Auto close when finished" = "見終わったら自動で閉じる"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "すべて見終わるとカメラに移動せず、インスタントビューアを閉じます"; +"Bypasses the Instants screenshot block" = "インスタントのスクリーンショット制限をバイパスします"; +"Could not locate the instant on screen" = "画面上のインスタントを特定できませんでした"; +"Current instant" = "現在のインスタント"; +"In-app Gallery" = "アプリ内ギャラリー"; +"Instant" = "インスタント"; +"Instants" = "インスタント"; +"Auto-saved instants log" = "自動保存したインスタントのログ"; +"Auto-save instants" = "インスタントを自動保存"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "スワイプ中も含め、表示したすべてのインスタントを自動的に保存します(各インスタントは1回のみ)"; +"Instants action button" = "インスタントアクションボタン"; +"No instants currently loaded" = "現在読み込まれているインスタントはありません"; +"No media available to save" = "保存できるメディアがありません"; +"Photos library" = "写真ライブラリ"; +"Pick from" = "選択元"; +"Queued %lu instants" = "%lu 件のインスタントをキューに追加しました"; +"Save all to Gallery" = "すべてギャラリーに保存"; +"Save all to Photos" = "すべて写真アプリに保存"; +"Save to Gallery" = "ギャラリーに保存"; +"Send from gallery" = "ギャラリーから送信"; +"Tweaks for the QuickSnap / Instants camera surface." = "QuickSnap / Instantsカメラ画面向けの調整機能です。"; +"Use" = "使用"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "下部のタブバーも非表示にし、受信箱のみを表示します"; +"Show the home shortcut button in the inbox header, on the right" = "受信箱のヘッダーの右側にホームショートカットボタンを表示します"; +"Greyed out until the home shortcut button is enabled in Interface" = "「インターフェイス」でホームショートカットボタンを有効にするまでグレー表示されます"; +"Hide search tab" = "検索タブを非表示"; +"Remove the search/explore button from the tab bar" = "タブバーから検索/発見ボタンを取り除きます"; +"Hide tab bar" = "タブバーを非表示"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "DM受信箱とプロフィール以外のすべてのタブを非表示にし、起動時に受信箱を開くようにします。設定へのショートカットは受信箱タブの長押しに移動します。"; +"Icon order" = "アイコンの順序"; +"Launch tab" = "起動時のタブ"; +"Swipe sideways to move between the tab bar tabs" = "左右にスワイプしてタブバーのタブを切り替えます"; +"Messages only" = "メッセージのみ"; +"Messages-only mode" = "メッセージ専用モード"; +"Automatic schedule" = "自動スケジュール"; +"DM-only client, hide tabs, auto schedule" = "DM専用クライアント、タブ非表示、自動スケジュール"; +"Start time" = "開始時刻"; +"End time" = "終了時刻"; +"Switch into Messages-only on its own during a time window" = "指定した時間帯に自動でメッセージ専用に切り替えます"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "上のトグルを使って、毎日の時間帯(例:午後10:00〜午前6:00)に自動でメッセージ専用をオンにします。時間帯の開始時と終了時に再起動を求められます。"; +"Active now · ends %@" = "現在有効 · %@に終了"; +"Next window starts %@" = "次の時間帯は%@に開始"; +"Messages-only starting" = "メッセージ専用を開始"; +"Messages-only ending" = "メッセージ専用を終了"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "メッセージ専用の時間帯が始まりました。Instagramを再起動してDM専用に切り替えてください。"; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "メッセージ専用の時間帯が終了しました。Instagramを再起動して他のタブを戻してください。"; +"Navigation" = "ナビゲーション"; +"Swipe between tabs" = "スワイプでタブ切り替え"; +"Tab the app opens to. Ignored when Messages-only is on" = "アプリ起動時に開くタブです。メッセージ専用モードがオンのときは無視されます"; +"How the icons on the bottom tab bar are ordered" = "下部タブバーのアイコンの並び順"; +"Hidden tabs" = "非表示のタブ"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "長押ししてドラッグで並び替えます。アイコンを上にドラッグすると非表示になります。非表示のタブをタップすると元に戻ります。"; +"All tabs are on the bar" = "すべてのタブがバーに表示されています"; +"Turn IG into a DM-only client" = "IGをDM専用クライアントにします"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "すべて"; +"Calls" = "通話"; +"Comments & posts" = "コメントと投稿"; +"Confirm actions" = "操作の確認"; +"Confirm changing theme" = "テーマ変更を確認"; +"Confirm disappearing media mark as viewed" = "消えるメディアの閲覧済みを確認"; +"Confirm DM mark as seen" = "DMの既読を確認"; +"Confirm follow" = "フォローを確認"; +"Confirm follow requests" = "フォローリクエストを確認"; +"Confirm Instants capture" = "インスタントの撮影を確認"; +"Confirm Instants emoji reaction" = "インスタントの絵文字リアクションを確認"; +"Confirm like: Posts" = "いいねを確認: 投稿"; +"Confirm like: Reels" = "いいねを確認: リール"; +"Confirm note emoji reaction" = "ノートの絵文字リアクションを確認"; +"Confirm note like" = "ノートのいいねを確認"; +"Confirm posting comment" = "コメント投稿を確認"; +"Confirm repost" = "リポストを確認"; +"Confirm send to group chat" = "グループチャットへの送信を確認"; +"Confirm sticker interaction (highlights)" = "スタンプ操作を確認(ハイライト)"; +"Confirm sticker interaction (stories)" = "スタンプ操作を確認(ストーリーズ)"; +"Confirm story emoji reaction" = "ストーリーの絵文字リアクションを確認"; +"Confirm story like" = "ストーリーのいいねを確認"; +"Confirm story mark as seen" = "ストーリーの既読を確認"; +"Confirm switching Instant" = "インスタントの切り替えを確認"; +"Confirm unfollow" = "フォロー解除を確認"; +"Confirm vanish mode" = "消えるメッセージモードを確認"; +"Confirm video call" = "ビデオ通話を確認"; +"Confirm voice call" = "音声通話を確認"; +"Confirm voice messages" = "ボイスメッセージを確認"; +"Follows" = "フォロー"; +"Likes" = "いいね"; +"Messaging" = "メッセージ"; +"Reaction stickers only" = "リアクションスタンプのみ"; +"Reactions" = "リアクション"; +"Send to group chat?" = "グループチャットに送信しますか?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "共有シートからグループチャットを作成/送信する前に確認を表示します"; +"Shows an alert before marking a disappearing message as viewed" = "消えるメッセージを閲覧済みにする前に確認を表示します"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "DMの既読ボタンやメニューから既読通知を送る前に確認を表示します"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "目のボタンやメニューからストーリーの閲覧通知を送る前に確認を表示します"; +"Shows an alert before sending an emoji reaction on a note" = "ノートに絵文字リアクションを送る前に確認を表示します"; +"Shows an alert before sending an emoji reaction on a story" = "ストーリーに絵文字リアクションを送る前に確認を表示します"; +"Shows an alert before sending an emoji reaction on an Instant" = "インスタントに絵文字リアクションを送る前に確認を表示します"; +"Shows an alert before sending a photo or video from the Instants camera" = "インスタントカメラから写真や動画を送信する前にアラートを表示します"; +"Shows an alert before tapping to switch to the next/previous Instant" = "タップで前後のインスタントに切り替える前に確認を表示します"; +"Asks you to confirm before a voice message sends" = "ボイスメッセージを送信する前に確認します"; +"Shows an alert to confirm before toggling vanish mode" = "消えるメッセージモードを切り替える前に確認を表示します"; +"Confirms before you accept or decline a follow request" = "フォローリクエストを承認または拒否する前に確認します"; +"Confirms before a chat theme change applies" = "チャットテーマの変更を適用する前に確認します"; +"Confirms before the follow button follows someone" = "フォローボタンで誰かをフォローする前に確認します"; +"Shows an alert when you click the like button on notes to confirm the like" = "ノートのいいねボタンを押したとき、確認を表示します"; +"Shows an alert when you click the like button on posts to confirm the like" = "投稿のいいねボタンを押したとき、確認を表示します"; +"Confirms before a like lands on a reel" = "リールにいいねする前に確認します"; +"Shows an alert when you click the like button on stories to confirm the like" = "ストーリーのいいねボタンを押したとき、確認を表示します"; +"Confirms before a comment posts" = "コメントを投稿する前に確認します"; +"Shows an alert when you click the repost button to confirm before reposting" = "リポストボタンを押したとき、リポストする前に確認を表示します"; +"Shows an alert when you click the unfollow button to confirm" = "フォロー解除ボタンを押したとき、確認を表示します"; +"Shows an alert when you click the video call button to confirm before calling" = "ビデオ通話ボタンを押したとき、発信前に確認を表示します"; +"Shows an alert when you click the voice call button to confirm before calling" = "音声通話ボタンを押したとき、発信前に確認を表示します"; +"Shows an alert when you tap a sticker inside a highlight" = "ハイライト内のスタンプをタップしたときに確認を表示します"; +"Shows an alert when you tap a sticker on someone's story" = "誰かのストーリーのスタンプをタップしたときに確認を表示します"; +"Stories & highlights" = "ストーリーズとハイライト"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld 時間"; +"%ld locked" = "%ld 件ロック中"; +"%ld min" = "%ld 分"; +"%ldh idle" = "%ld 時間操作なし"; +"%ldm idle" = "%ld 分操作なし"; +"%lds" = "%ld 秒"; +"%lds idle" = "%ld 秒操作なし"; +"%lu hidden" = "%lu 件非表示"; +"4 digits" = "4桁"; +"6 digits" = "6桁"; +"Add hidden chat" = "非表示チャットを追加"; +"Add locked chat" = "ロックするチャットを追加"; +"Allow Instants screenshots" = "インスタントのスクリーンショットを許可"; +"Always ask when opening again" = "再度開くたびに毎回確認"; +"Ask again after Instagram returns" = "Instagramに戻ったときに再度確認"; +"Auto-relock after idle" = "操作がないと自動で再ロック"; +"Balanced default" = "バランスの取れたデフォルト"; +"Best for sensitive sections" = "機密性の高いセクションに最適"; +"Biometric" = "生体認証"; +"Change passcode" = "パスコードを変更"; +"Chat hidden" = "チャットを非表示にしました"; +"Chat unhidden" = "チャットの非表示を解除しました"; +"Chat locked" = "チャットをロックしました"; +"Chat unlocked" = "チャットのロックを解除しました"; +"Choose a code you'll remember." = "覚えやすいコードを選んでください。"; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "操作がない間、このセクションのロック解除を維持する時間を選びます。「なし」にすると、Instagramを閉じるかバックグラウンドに移るまで解除されたままになります。"; +"Confirm current passcode" = "現在のパスコードを確認"; +"Confirm passcode" = "パスコードを確認"; +"Could not save passcode" = "パスコードを保存できませんでした"; +"Create passcode" = "パスコードを作成"; +"Derivation failed" = "鍵の生成に失敗しました"; +"DM inbox" = "DM受信箱"; +"Don't share unlock" = "ロック解除を共有しない"; +"Each target has its own enable, timeout, and re-lock configuration." = "対象ごとに、有効化・タイムアウト・再ロックを個別に設定できます。"; +"Enable lock" = "ロックを有効化"; +"Enter passcode" = "パスコードを入力"; +"Enter value" = "値を入力"; +"Enter your current passcode to change it" = "変更するには現在のパスコードを入力してください"; +"Enter your current passcode to reset it" = "リセットするには現在のパスコードを入力してください"; +"Enter your passcode to continue" = "続けるにはパスコードを入力してください"; +"every use" = "毎回"; +"Every use" = "毎回"; +"Hidden chats" = "非表示のチャット"; +"Hidden chats hidden" = "非表示のチャットを隠しました"; +"Hidden chats revealed" = "非表示のチャットを表示しました"; +"👁 Shown in the inbox · Tap to hide" = "👁 受信箱に表示中 · タップで非表示"; +" · shown in inbox" = " · 受信箱に表示中"; +"Hide chat" = "チャットを非表示"; +"Unhide chat" = "チャットの非表示を解除"; +"Hold name to reveal" = "名前を長押しで表示"; +"Hide message preview" = "メッセージのプレビューを非表示"; +"Hide this chat?" = "このチャットを非表示にしますか?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "スクリーンショットや画面収録からRyukGramのUIを隠し、IGの機能ごとのスクリーンショット通知を回避します。"; +"Idle timeout" = "無操作タイムアウト"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "この対象を個別にロックしたままにする"; +"Less frequent prompts" = "確認の頻度を下げる"; +"Lock" = "ロック"; +"Lock chat" = "チャットをロック"; +"Lock every time" = "毎回ロック"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "「毎回ロック」は無操作タイムアウトより優先されます。「ロック解除を共有しない」は、この対象を独立させます。"; +"Lock targets" = "ロック対象"; +"Lock the tweak" = "Tweakをロック"; +"Lock this chat" = "このチャットをロック"; +"Lock this chat?" = "このチャットをロックしますか?"; +"Lock with passcode" = "パスコードでロック"; +"Locked chats" = "ロック中のチャット"; +"Long-press a chat to lock it individually" = "チャットを長押しすると個別にロックできます"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "DMスレッドを長押し →「チャットを非表示」でここに追加できます。非表示のチャットは、このリストから削除するまで受信箱に表示されません。"; +"Long-press a DM to add" = "DMを長押しで追加"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "DM受信箱上部のアカウント名を長押しして、非表示のチャットを表示または非表示にします"; +"Longest idle window" = "最も長い無操作時間"; +"Manage locked chats" = "ロック中のチャットを管理"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "マスタースイッチです。オフにすると、対象ごとの設定を残したまま、すべてのロック対象を無効にできます。"; +"Never" = "なし"; +"No passcode set" = "パスコードが設定されていません"; +"Nothing here yet." = "まだ何もありません。"; +"Off" = "オフ"; +"On" = "オン"; +"On — %@" = "オン — %@"; +"On — %@ + %ld more" = "オン — %@ ほか %ld 件"; +"On — no targets enabled" = "オン — 有効な対象なし"; +"Passcode" = "パスコード"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "パスコードと生体認証です。Tweak設定のポップアップ、ギャラリー、削除メッセージのログ、個別のチャット、アプリ全体を保護できます。"; +"Passcode changed" = "パスコードを変更しました"; +"Passcode reset" = "パスコードをリセットしました"; +"Passcode set" = "パスコードを設定しました"; +"Passcode too short" = "パスコードが短すぎます"; +"Passcodes did not match — try again" = "パスコードが一致しませんでした。もう一度お試しください"; +"Per-chat locks" = "チャットごとのロック"; +"Prompt before Instagram opens" = "Instagramを開く前に確認"; +"Prompt before Profile Analyzer opens" = "プロフィールアナライザーを開く前に確認"; +"Prompt before the deleted-messages log opens" = "削除メッセージのログを開く前に確認"; +"Prompt before the gallery opens" = "ギャラリーを開く前に確認"; +"Prompt before tweak settings open" = "Tweak設定を開く前に確認"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "起動時のメッセージ表示も含め、DM受信箱に入るたびに確認します"; +"Re-enter the same passcode" = "同じパスコードをもう一度入力してください"; +"Re-lock on background" = "バックグラウンド移行時に再ロック"; +"re-lock on bg" = "バックグラウンドで再ロック"; +"Recently hidden" = "最近非表示にした順"; +"Prompt before holding the inbox name reveals hidden chats" = "受信箱の名前を長押しして非表示のチャットを表示する前に確認します"; +"Reveal hidden chats" = "非表示のチャットを表示"; +"Recently locked" = "最近ロックした順"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "スクリーンショット、画面収録、ミラーリングからRyukGramのボタンを隠します"; +"Remove screenshot alert" = "スクリーンショット通知を削除"; +"Replace inbox preview with • • •" = "受信箱のプレビューを • • • に置き換え"; +"Require passcode for this section" = "このセクションにパスコードを要求"; +"Requires your current passcode" = "現在のパスコードが必要です"; +"Reset passcode" = "パスコードをリセット"; +"Reset passcode?" = "パスコードをリセットしますか?"; +"Screenshots & capture" = "スクリーンショットとキャプチャ"; +"Security & Privacy" = "セキュリティとプライバシー"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "設定、ギャラリー、削除メッセージ、チャット、DM受信箱、プロフィールアナライザー、あるいはInstagram本体を保護するパスコードを設定します。"; +"Set passcode" = "パスコードを設定"; +"Short idle window" = "短い無操作時間"; +"Stay unlocked until app close or background" = "アプリを閉じるかバックグラウンドに移るまで解除したままにする"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "ストーリーズ・DM・消えるメディアで、IGの「○○がスクリーンショットを撮影しました」という通知を抑制します"; +"Tap Unlock" = "「ロック解除」をタップ"; +"Tap Unlock or enter your passcode" = "「ロック解除」をタップするか、パスコードを入力してください"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "パスコードを消去し、すべてのロック対象を無効にして、すべてのチャットのロックを解除します。ギャラリーと削除メッセージ保持のデータはそのまま残ります。"; +"Thread %@" = "スレッド %@"; +"Tweak settings" = "Tweak設定"; +"Unlock" = "ロック解除"; +"Unlock %@" = "%@ のロックを解除"; +"Unlock chat" = "チャットのロックを解除"; +"Unlock Instagram" = "Instagramのロックを解除"; +"Unlock this chat" = "このチャットのロックを解除"; +"Use %@" = "%@ を使用"; +"Username (looks up the DM thread) or raw thread ID" = "ユーザーネーム(DMスレッドを検索します)またはスレッドIDを直接入力"; +"Username or thread ID" = "ユーザーネームまたはスレッドID"; +"Wrong passcode" = "パスコードが違います"; +"Wrong passcode • %ld attempts" = "パスコードが違います • %ld 回試行"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "保護"; +"Password-protect" = "パスワード保護"; +"On — tap to change" = "オン — タップで変更"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "バックアップはAES-256で暗号化されます。復元にはこのパスワードが必要で、紛失すると復元する方法はありません。"; +"Optional. Lock the backup behind a password so only you can restore it." = "任意。パスワードでバックアップをロックし、あなただけが復元できるようにします。"; +"Backup password" = "バックアップパスワード"; +"You'll need this to restore. It can't be recovered if lost." = "復元にはこれが必要です。紛失すると復元できません。"; +"Password" = "パスワード"; +"Confirm password" = "パスワードの確認"; +"Set" = "設定"; +"Use at least 4 characters." = "4文字以上を入力してください。"; +"The passwords don't match." = "パスワードが一致しません。"; +"Try again" = "もう一度お試しください"; +"Encrypted backup" = "暗号化されたバックアップ"; +"Enter the password used to protect this backup." = "このバックアップの保護に使ったパスワードを入力してください。"; +"Wrong password. Try again." = "パスワードが違います。もう一度お試しください。"; +"Decrypting backup…" = "バックアップを復号中…"; +"Encrypting backup…" = "バックアップを暗号化中…"; +"%ld of %ld selected · %@" = "%ld / %ld 件選択中 · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "含めるストアにチェックを入れてください。行をタップすると保存内容を確認できます。"; + +"%lu account(s)" = "%lu 件のアカウント"; +"%lu account(s) · %lu image(s) · %@" = "%lu 件のアカウント · %lu 件の画像 · %@"; +"%lu file(s) · %@" = "%lu 件のファイル · %@"; +"%lu preferences" = "%lu 件の設定"; +"(none)" = "(なし)"; +"Apply backup?" = "バックアップを適用しますか?"; +"Applying backup…" = "バックアップを適用中…"; +"archive error" = "アーカイブエラー"; +"Archived snapshots" = "アーカイブ済みスナップショット"; +"Backup & Restore" = "バックアップと復元"; +"Backup exported" = "バックアップをエクスポートしました"; +"Backup failed" = "バックアップに失敗しました"; +"Backup has no importable sections." = "このバックアップにはインポート可能なセクションがありません。"; +"Chat & story filters" = "チャット/ストーリーの絞り込み"; +"Chat backgrounds" = "チャットの背景"; +"Corrupt entry path." = "エントリのパスが破損しています。"; +"Could not decompress archive." = "アーカイブを解凍できませんでした。"; +"Could not open archive." = "アーカイブを開けませんでした。"; +"Could not open staging file." = "ステージングファイルを開けませんでした。"; +"Could not read the backup archive." = "バックアップアーカイブを読み込めませんでした。"; +"Could not write archive." = "アーカイブを書き込めませんでした。"; +"Could not write backup file." = "バックアップファイルを書き込めませんでした。"; +"Could not write extracted file." = "展開したファイルを書き込めませんでした。"; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "チェックした項目の既存データは置き換えられます。すべてを反映するには再起動が必要な場合があります。"; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "RyukGramのデータをエクスポート/インポートします。設定、アカウントごとの絞り込み、非表示/ロック中のチャット、プロフィールアナライザー、ギャラリー、チャットの背景、削除メッセージ、既読ログが対象です。各ページで自由に組み合わせて選択できます。設定はそのままJSONファイルとして、メディアを含むバンドルは圧縮された.ryukbakとしてエクスポートされます。"; +"Feature data" = "機能データ"; +"Import mode" = "インポートモード"; +"Merge" = "マージ"; +"Replace" = "置き換え"; +"Add the backup's data to what's already here" = "バックアップのデータを、現在のデータに追加します"; +"Clear existing data, then apply the backup" = "既存のデータを消去してから、バックアップを適用します"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "「マージ」はこのデバイスのデータを残したまま、バックアップのデータを追加します。ギャラリーを含め、重複は統合されます。"; +"Replace clears existing data for each ticked item, then applies the backup." = "「置き換え」は、チェックした各項目の既存データを消去してから、バックアップを適用します。"; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "バックアップは既存のデータにマージされます。何も削除されず、重複は統合されます。すべてを反映するには再起動が必要な場合があります。"; +"Hidden & locked chats" = "非表示/ロック中のチャット"; +"Import" = "インポート"; +"Inspect the full manifest" = "マニフェスト全体を確認"; +"Load a .json or .ryukbak backup" = ".jsonまたは.ryukbakのバックアップを読み込む"; +"Not a RyukGram backup archive." = "RyukGramのバックアップアーカイブではありません。"; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "設定を初期値に戻し、データを消去します"; +"Swipe a row to clear it." = "行をスワイプすると消去できます。"; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "「共有」と表示された行はアカウントに紐付かず、常にその行自身のチェックに従います。"; +"%lu file(s)" = "%lu 件のファイル"; +"Clear all data" = "すべてのデータを消去"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "保存されたすべてのギャラリー項目、ログ、録音がこの端末から削除されます。設定は保持されます — 初期値に戻すにはリセットを使ってください。この操作は取り消せません。"; +"Accounts" = "アカウント"; +"All accounts (%ld)" = "すべてのアカウント(%ld)"; +"Pick at least one account." = "アカウントを1つ以上選んでください。"; +"Signed in" = "ログイン中"; +"Shared" = "共有"; +"Per-account data is limited to the accounts ticked here." = "アカウントごとのデータは、ここでチェックしたアカウントに限定されます。"; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "アカウントごとのデータは%@のみ消去されます。共有データはその行自身のチェックに従います。この操作は取り消せません。"; +"Preparing backup…" = "バックアップを準備中…"; +"Reading backup…" = "バックアップを読み込み中…"; +"RyukGram's own data on this device" = "この端末上のRyukGram自身のデータ"; +"Save settings or a full backup" = "設定または完全バックアップを保存"; +"Tick what to apply. Rows not in this backup are hidden." = "適用する項目にチェックを入れてください。このバックアップに含まれない行は非表示になっています。"; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "含める項目にチェックを入れてください。行をタップすると内容を確認できます。ギャラリー・チャット背景・削除メッセージを含めると、圧縮された.ryukbakバンドルになります。"; +"Truncated entry data." = "エントリのデータが途中で切れています。"; +"Truncated entry length." = "エントリの長さが途中で切れています。"; +"Truncated entry path." = "エントリのパスが途中で切れています。"; +"Unsafe entry path." = "安全でないエントリパスです。"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "詳細設定"; +"All tweak options are disabled" = "すべてのTweak機能が無効です"; +"Auto-clear cache" = "キャッシュの自動消去"; +"Automatically opens settings when the app launches" = "アプリ起動時に自動で設定を開きます"; +"Cache" = "キャッシュ"; +"Cache cleared" = "キャッシュを消去しました"; +"Calculating cache size…" = "キャッシュサイズを計算中…"; +"Clear" = "消去"; +"Clear cache" = "キャッシュを消去"; +"Clear cache (%@)" = "キャッシュを消去 (%@)"; +"Clearing cache…" = "キャッシュを消去中…"; +"Clearing still scans on demand." = "消去時には必要に応じてスキャンが実行されます。"; +"Daily" = "毎日"; +"Disable all tweak options" = "すべてのTweak機能を無効化"; +"Disable safe mode" = "セーフモードを無効化"; +"Enable tweak settings quick-access" = "Tweak設定のクイックアクセスを有効化"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "オンの間、Instagramは標準の状態で動作します。設定を元に戻すには、これをオフにしてください。"; +"Tap to re-enable everything" = "タップですべて再び有効化"; +"Turn every feature off — your settings are kept" = "すべての機能をオフにします(設定は保持されます)"; +"Fix duplicate notifications" = "通知の重複を修正"; +"Free %@ of Instagram cache." = "Instagramのキャッシュ %@ を解放します。"; +"Freed %@" = "%@ を解放しました"; +"Hold on the home tab to open RyukGram settings" = "ホームタブを長押しするとRyukGram設定が開きます"; +"Monthly" = "毎月"; +"Nothing to clear" = "消去するものがありません"; +"Off skips the size scan when Advanced opens." = "オフにすると、詳細設定を開いたときのサイズスキャンを省略します。"; +"Pause playback when opening settings" = "設定を開いたら再生を一時停止"; +"Always show what's new" = "新機能を常に表示"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "新機能の青い点を、一度見ても消さずに表示したままにします"; +"Preserve messages database" = "メッセージデータベースを保護"; +"Pauses any playing video/audio when settings opens" = "設定を開いたとき、再生中の動画/音声を一時停止します"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "クラッシュ後にInstagramが設定をリセットするのを防ぎます(自己責任)"; +"Prevents two banners for the same message when IG is in the foreground" = "IGが前面にあるとき、同じメッセージで2つのバナーが出るのを防ぎます"; +"Remove Instagram's cached images, videos, and temporary files." = "Instagramのキャッシュ画像・動画・一時ファイルを削除します。"; +"Reset onboarding state" = "初回案内の状態をリセット"; +"Run a silent cache clear on launch when the interval has elapsed." = "設定した間隔が経過していれば、起動時にキャッシュを自動で消去します。"; +"Show cache size" = "キャッシュサイズを表示"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "消去時にメッセージデータベースをスキップし、DM・下書き・保存済みメッセージを残します。"; +"Show tweak settings on app launch" = "アプリ起動時にTweak設定を表示"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "通知拡張が配信している間に、IGがアプリ内で追加する2つ目の通知を抑制します。"; +"Weekly" = "毎週"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "アクション"; +"Advanced experimental features" = "高度な実験的機能"; +"All experimental toggles will be turned off. Instagram will restart." = "すべての実験的トグルがオフになり、Instagramが再起動します。"; +"Direct Notes — Audio reply" = "Directノート — 音声で返信"; +"Direct Notes — Avatar reply" = "Directノート — アバターで返信"; +"Direct Notes — Friend Map" = "Directノート — 友達マップ"; +"Direct Notes — GIFs & stickers reply" = "Directノート — GIF・スタンプで返信"; +"Direct Notes — Photo reply" = "Directノート — 写真で返信"; +"Disabled after repeated crashes." = "クラッシュが繰り返されたため無効化されました。"; +"Enables GIF/sticker replies" = "GIF/スタンプでの返信を有効にします"; +"Enables photo replies" = "写真での返信を有効にします"; +"Enables the audio-note reply type" = "音声ノートでの返信を有効にします"; +"Enables the avatar reply type" = "アバターでの返信を有効にします"; +"Experimental flags reset" = "実験的フラグをリセットしました"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "有効にしたい項目をオンにして「適用」をタップすると再起動します。一部のフラグはアカウントやIGのバージョンによって動作しない場合があります。IGが起動時に3回クラッシュすると、フラグは自動的にリセットされます。"; +"Forces Prism-gated experiments on" = "Prismで制限された実験的機能を強制的に有効にします"; +"Forces the Homecoming home surface / nav on" = "Homecomingのホーム画面/ナビゲーションを強制的に有効にします"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "フィード、受信箱、ストーリーズ、ノートトレイでQuickSnap / Instants画面を強制的に有効にします"; +"Got it" = "了解"; +"Heads up" = "ご注意"; +"Hidden Instagram experiments" = "Instagramの隠し実験機能"; +"Hidden Instagram experiments (in Advanced)" = "Instagramの隠し実験機能(詳細設定内)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "ノートとQuickSnap"; +"Prism design system" = "Prismデザインシステム"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Directノートに友達マップの項目を表示します"; +"Surfaces" = "画面"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "これらのトグルはInstagramの隠し実験機能を有効にします。一部の機能はアカウントやIGのバージョンによって動作しない場合があります。IGが起動時にクラッシュし続ける場合、3回失敗した時点でフラグは自動的にリセットされます。"; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Instagramの隠し実験機能を切り替えます。アカウントやIGのバージョンによっては動作しないものもあります。"; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "ボタンセル"; +"Change the value on the right" = "右側の値を変更してください"; +"Could not delete: %@" = "削除できませんでした: %@"; +"Debug" = "デバッグ"; +"Delete an imported override and fall back to the shipped strings" = "インポートした上書きファイルを削除し、同梱の文字列に戻します"; +"Deleted %@ override. Restart to apply." = "%@ の上書きを削除しました。適用するには再起動してください。"; +"Enable FLEX gesture" = "FLEXジェスチャーを有効化"; +"Enable file logging" = "ファイルへのログ記録を有効化"; +"Export strings" = "文字列をエクスポート"; +"Hold 5 fingers on the screen to open FLEX" = "画面に5本指を置き続けるとFLEXが開きます"; +"I have %@%@" = "所持数: %@%@"; +"Import a .strings file for a language" = "言語の.stringsファイルをインポート"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "翻訳を更新するには.stringsファイルをインポートします。言語を選び、ファイルを選択して再起動してください。"; +"Link Cell" = "リンクセル"; +"Localization" = "ローカライズ"; +"Log file is empty" = "ログファイルが空です"; +"Logging" = "ログ記録"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "RyukGram自体の動作を、アプリと拡張機能をまたいだ1つの共有可能なファイルに記録します。デフォルトはオフです。オンにして問題を再現し、そのファイルを共有してください。"; +"Menu Cell" = "メニューセル"; +"Navigation Cell" = "ナビゲーションセル"; +"No imported localization files to reset." = "リセットできるインポート済みローカライズファイルはありません。"; +"No overrides" = "上書きなし"; +"Open FLEX on app focus" = "アプリのフォーカス時にFLEXを開く"; +"Open FLEX on app launch" = "アプリ起動時にFLEXを開く"; +"Opens FLEX when the app is focused" = "アプリがフォーカスされたときFLEXを開きます"; +"Opens FLEX when the app launches" = "アプリ起動時にFLEXを開きます"; +"Pick a language and share its .strings file" = "言語を選んで、その.stringsファイルを共有します"; +"Pick a language to delete the imported file" = "インポートしたファイルを削除する言語を選択してください"; +"Pick a language to export" = "エクスポートする言語を選択"; +"Reset localization" = "ローカライズをリセット"; +"Share log file" = "ログファイルを共有"; +"Static Cell" = "静的セル"; +"Stepper cell" = "ステッパーセル"; +"Switch Cell" = "スイッチセル"; +"Switch Cell (Restart)" = "スイッチセル(再起動)"; +"Tap the switch" = "スイッチをタップしてください"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "これらの機能はInstagramの隠しフラグに依存しており、すべてのアカウントやバージョンで動作するとは限りません。"; +"Update localization file" = "ローカライズファイルを更新"; +"Using icon" = "アイコンを使用中"; +"Using image" = "画像を使用中"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "%@ の設定"; +"%lu items" = "%lu 件"; +"Cancelled" = "キャンセルしました"; +"Carousel" = "カルーセル"; +"Carousel · %lu items" = "カルーセル · %lu 件"; +"Copied %lu URLs" = "%lu 件のURLをコピーしました"; +"Copied caption" = "キャプションをコピーしました"; +"Copied download URL" = "ダウンロードURLをコピーしました"; +"Copied quality info" = "画質情報をコピーしました"; +"Copied video URL" = "動画URLをコピーしました"; +"Copy all URLs" = "すべてのURLをコピー"; +"Copy caption" = "キャプションをコピー"; +"Copy download URL" = "ダウンロードURLをコピー"; +"Could not extract any URLs" = "URLを抽出できませんでした"; +"Could not extract audio URL" = "音声URLを抽出できませんでした"; +"Could not extract media URL" = "メディアURLを抽出できませんでした"; +"Could not extract photo URL" = "写真URLを抽出できませんでした"; +"Could not extract video URL" = "動画URLを抽出できませんでした"; +"Done" = "完了"; +"Download all stories and share?" = "すべてのストーリーをダウンロードして共有しますか?"; +"Download all to Photos" = "すべて写真アプリにダウンロード"; +"Download and share all" = "すべてダウンロードして共有"; +"Download failed" = "ダウンロードに失敗しました"; +"Downloaded %lu items" = "%lu 件をダウンロードしました"; +"Downloading audio…" = "音声をダウンロード中…"; +"Failed to save" = "保存に失敗しました"; +"File" = "ファイル"; +"HD" = "HD"; +"HD download complete" = "HDダウンロードが完了しました"; +"HD video" = "HD動画"; +"Mute audio" = "音声をミュート"; +"No caption on this post" = "この投稿にはキャプションがありません"; +"No carousel children" = "カルーセルの子要素がありません"; +"No cover image" = "カバー画像がありません"; +"No media" = "メディアがありません"; +"No media to expand" = "拡大表示できるメディアがありません"; +"No media to show" = "表示できるメディアがありません"; +"No media URL" = "メディアURLがありません"; +"No URLs" = "URLがありません"; +"No URLs found" = "URLが見つかりませんでした"; +"No video URL" = "動画URLがありません"; +"Not a carousel" = "カルーセルではありません"; +"Nothing to share" = "共有するものがありません"; +"Opening creator…" = "作成画面を開いています…"; +"Photo library access denied" = "写真ライブラリへのアクセスが拒否されました"; +"Photos access denied" = "写真へのアクセスが拒否されました"; +"Preparing repost…" = "リポストを準備中…"; +"Raw image" = "画像そのまま"; +"Repost" = "リポスト"; +"Repost unavailable" = "リポストは利用できません"; +"Save failed" = "保存に失敗しました"; +"Saved %lu items" = "%lu 件を保存しました"; +"Saved to Photos" = "写真アプリに保存しました"; +"Saved to RyukGram" = "RyukGramに保存しました"; +"Saving to Photos" = "写真アプリに保存中"; +"Saving…" = "保存中…"; +"Unmute audio" = "ミュートを解除"; +"Video · %@" = "動画 · %@"; +"View cover" = "カバーを表示"; +"View mentions" = "メンションを表示"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "空き"; +"Chat font saved" = "チャットのフォントを保存しました"; +"Reopen this chat to see the new font" = "新しいフォントを見るにはこのチャットを開き直してください"; +"Remove background" = "背景を削除"; +"No subject found" = "被写体が見つかりません"; +"No stickers yet" = "ステッカーはまだありません"; +"Send drawing" = "描画を送信"; +"Send my drawing" = "自分の描画を送信"; +"Paste image / sticker" = "画像 / ステッカーを貼り付け"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "キーボードのステッカーをタップして\n描画に追加します"; + +" %lu votes · avg %.0f%% " = " %lu 票 · 平均 %.0f%% "; +"%@ can't be converted" = "%@ は変換できません"; +"%@ unsent a message" = "%@ がメッセージを送信取り消ししました"; +"%@ unsent a message from %@" = "%@ が %@ のメッセージを送信取り消ししました"; +"A message was unsent" = "メッセージが送信取り消しされました"; +"Add" = "追加"; +"Add to block list" = "ブロックリストに追加"; +"Added to block list" = "ブロックリストに追加しました"; +"Added to exclude list" = "除外リストに追加しました"; +"Audio not loaded yet. Play the message first and try again." = "音声がまだ読み込まれていません。先にメッセージを再生してからもう一度お試しください。"; +"Audio sent" = "音声を送信しました"; +"Audio URL not available" = "音声URLを利用できません"; +"Audio/Video from Files" = "ファイルから音声/動画"; +"Blocked" = "ブロックしました"; +"Cancel" = "キャンセル"; +"Clear preserved messages?" = "保持中のメッセージを消去しますか?"; +"Converting…" = "変換中…"; +"Copy link" = "リンクをコピー"; +"Copy text" = "テキストをコピー"; +"Could not copy selected video" = "選択した動画をコピーできませんでした"; +"Could not find media" = "メディアが見つかりませんでした"; +"Could not find story media" = "ストーリーのメディアが見つかりませんでした"; +"Could not get audio data. Try again after refreshing the chat." = "音声データを取得できませんでした。チャットを更新してからもう一度お試しください。"; +"Disable read receipts" = "既読を無効化"; +"Disappearing media" = "消えるメディア"; +"Download audio" = "音声をダウンロード"; +"Enable read receipts" = "既読を有効化"; +"Error: %@" = "エラー: %@"; +"Exclude chat" = "チャットを除外"; +"Exclude from seen" = "既読から除外"; +"Exclude story seen" = "ストーリー既読から除外"; +"Excluded" = "除外しました"; +"Extracting audio…" = "音声を抽出中…"; +"FFmpeg conversion failed" = "FFmpegでの変換に失敗しました"; +"File sending not supported" = "ファイル送信はサポートされていません"; +"Follow" = "フォロー"; +"Following" = "フォロー中"; +"Format not supported without FFmpegKit" = "この形式はFFmpegKitなしではサポートされていません"; +"Inserts a button on disappearing media overlays" = "消えるメディアの画面にボタンを追加します"; +"Inserts a speaker button to mute/unmute disappearing media" = "消えるメディアのミュート/解除用スピーカーボタンを追加します"; +"Inserts an eye button to mark the current disappearing media as viewed" = "現在の消えるメディアを閲覧済みにする目のボタンを追加します"; +"Link copied" = "リンクをコピーしました"; +"Mark as viewed" = "閲覧済みにする"; +"Marking as viewed advances to the next stacked media instead of closing" = "閲覧済みにすると、画面を閉じずに次の重なったメディアへ進みます"; +"Mark messages as seen" = "メッセージを既読にする"; +"Mark seen" = "既読にする"; +"Marked as viewed" = "閲覧済みにしました"; +"Marked messages as seen" = "メッセージを既読にしました"; +"Mentions" = "メンション"; +"Message from %@ was unsent" = "%@ からのメッセージが送信取り消しされました"; +"Message sender not found" = "メッセージの送信者が見つかりませんでした"; +"Messages settings" = "メッセージ設定"; +"Mute story audio" = "ストーリーの音声をミュート"; +"no audio track could be read" = "音声トラックを読み取れませんでした"; +"No audio URL found. Try again after refreshing the chat." = "音声URLが見つかりませんでした。チャットを更新してからもう一度お試しください。"; +"No mentions in this story" = "このストーリーにメンションはありません"; +"No thread key" = "スレッドキーがありません"; +"No video selected" = "動画が選択されていません"; +"No voice send method found" = "ボイス送信メソッドが見つかりませんでした"; +"Note has no downloadable content" = "このノートにはダウンロードできるコンテンツがありません"; +"Note text copied" = "ノートのテキストをコピーしました"; +"Open GitHub" = "GitHubを開く"; +"Pick audio or video" = "音声または動画を選択"; +"Read receipts disabled" = "既読を無効にしました"; +"Read receipts enabled" = "既読を有効にしました"; +"Read receipts will be blocked for this chat." = "このチャットでは既読がブロックされます。"; +"Read receipts will no longer be blocked for this chat." = "このチャットでは既読のブロックが解除されます。"; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "DMタブを更新すると、保持中の送信取り消しメッセージ %lu 件が消去されます。この操作は取り消せません。"; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "DMタブを更新すると、保持中の送信取り消しメッセージ %lu 件が消去されます。この操作は取り消せません。"; +"Remove" = "削除"; +"Remove from block list" = "ブロックリストから削除"; +"Remove from exclude list" = "除外リストから削除"; +"Removed" = "削除しました"; +"Removed from list" = "リストから削除しました"; +"Save GIF" = "GIFを保存"; +"Selection too short (min 0.5s)" = "選択範囲が短すぎます(最短0.5秒)"; +"Send anyway" = "そのまま送信"; +"Send Audio" = "音声を送信"; +"Send failed: %@" = "送信に失敗しました: %@"; +"Send File" = "ファイルを送信"; +"Send service not found" = "送信サービスが見つかりませんでした"; +"Show audio toggle" = "音声切り替えを表示"; +"Show mark-as-viewed button" = "閲覧済みボタンを表示"; +"Story read receipts disabled" = "ストーリーの既読を無効にしました"; +"Story read receipts enabled" = "ストーリーの既読を有効にしました"; +"This chat will resume normal read-receipt behavior." = "このチャットは通常の既読の動作に戻ります。"; +"This file" = "このファイル"; +"Total: %@" = "合計: %@"; +"Un-exclude chat" = "チャットの除外を解除"; +"Un-exclude story seen" = "ストーリー既読の除外を解除"; +"Un-excluded" = "除外を解除しました"; +"Unblocked" = "ブロックを解除しました"; +"Unlimited replay enabled" = "無制限再生を有効にしました"; +"Unmute story audio" = "ストーリー音声のミュートを解除"; +"Unsent" = "送信取り消し"; +"Upload Audio" = "音声をアップロード"; +"VC not found" = "VCが見つかりませんでした"; +"Video from Library" = "ライブラリから動画"; +"Visual messages will expire" = "ビジュアルメッセージは期限切れになります"; +"Visual messages: expiring" = "ビジュアルメッセージ: 期限あり"; +"Visual messages: unlimited replay" = "ビジュアルメッセージ: 無制限再生"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "背景を追加"; +"Add Chat Background" = "チャットの背景を追加"; +"Adds your own image backgrounds to Instagram chats" = "Instagramのチャットに自分の画像の背景を追加します"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "有効にしたあと、任意のチャットを開いてテーマボタンをタップし、右上の写真アイコンをタップしてください。"; +"Blur" = "ぼかし"; +"Browse chats" = "チャットを一覧"; +"Browse chats (%ld)" = "チャットを一覧 (%ld)"; +"Change Background" = "背景を変更"; +"Change default" = "デフォルトを変更"; +"Chat Backgrounds" = "チャットの背景"; +"Choose an image used when no chat override exists" = "チャットごとの設定がないときに使う画像を選びます"; +"Clear default" = "デフォルトを消去"; +"Couldn't import image" = "画像を読み込めませんでした"; +"Adjust settings" = "設定を調整"; +"Choose Media" = "メディアを選択"; +"Converting GIF" = "GIFを変換中"; +"Couldn't import video" = "動画を読み込めませんでした"; +"Crop & resize" = "切り取りとサイズ変更"; +"Crop & trim" = "切り取りとトリミング"; +"Custom Chat Background" = "チャットのカスタム背景"; +"Default background" = "デフォルトの背景"; +"Dim in dark mode" = "ダークモードで暗くする"; +"Enable custom backgrounds" = "カスタム背景を有効化"; +"Enter a username, chat name, or thread ID." = "ユーザーネーム、チャット名、またはスレッドIDを入力してください。"; +"Group" = "グループ"; +"Image Settings" = "画像の設定"; +"Auto bubble color" = "バブルの色を自動"; +"Bubble color" = "バブルの色"; +"Me" = "自分"; +"Both" = "両方"; +"Gradient" = "グラデーション"; +"Direction" = "方向"; +"Vertical" = "縦"; +"Horizontal" = "横"; +"Diagonal" = "斜め"; +"Text color" = "テキストの色"; +"Automatic (contrast)" = "自動(コントラスト)"; +"Choose color…" = "色を選択…"; +"Tap to apply · hold to edit" = "タップで適用 · 長押しで編集"; +"Library" = "ライブラリ"; +"Library, default, and per-chat overrides will be deleted." = "ライブラリ、デフォルト、チャットごとの設定が削除されます。"; +"No Custom" = "カスタムなし"; +"Opacity" = "不透明度"; +"Photo Library" = "写真ライブラリ"; +"Pick default" = "デフォルトを選択"; +"Pinch + drag to position" = "ピンチとドラッグで位置を調整"; +"Quit and reopen Instagram for the change to take effect." = "変更を反映するには、Instagramを終了して再度開いてください。"; +"Recently set" = "最近設定した順"; +"Remove the global fallback background" = "全体の予備背景を削除"; +"Replace the default background image" = "デフォルトの背景画像を置き換え"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "リセットすると、不透明度は1.0、ぼかしは0、暗さは0になります。"; +"RyukGram Gallery" = "RyukGramギャラリー"; +"Search username, name, or thread ID" = "ユーザーネーム、名前、スレッドIDで検索"; +"Set as default" = "デフォルトに設定"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "「+」をタップして追加します。背景をタップすると、編集・デフォルト設定・削除ができます。"; +"This Chat Background" = "このチャットの背景"; +"Thread ID" = "スレッドID"; +"Used only when a chat does not have its own custom background." = "チャットに独自のカスタム背景がないときのみ使用されます。"; +"View and manage chats with custom backgrounds" = "カスタム背景を設定したチャットを確認・管理します"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "位置情報を追加"; +"Add preset" = "プリセットを追加"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "上のすべての項目に影響します。オフの場合、RyukGramのテーマと画面ごとの上書きはiOSがダークモードのときのみ適用され、ライトモードには影響しません。"; +"Apply & restart" = "適用して再起動"; +"Background" = "背景"; +"Behavior" = "動作"; +"Change location" = "位置情報を変更"; +"Clipboard is not an Instagram URL" = "クリップボードの内容はInstagramのURLではありません"; +"Comments hidden" = "コメントを非表示にしました"; +"Comments shown" = "コメントを表示しました"; +"Copied text to clipboard" = "テキストをクリップボードにコピーしました"; +"Copy" = "コピー"; +"Copy bio" = "自己紹介をコピー"; +"Copy name" = "名前をコピー"; +"Could not find cover image" = "カバー画像が見つかりませんでした"; +"Current: %@" = "現在: %@"; +"Dark" = "ダーク"; +"Disable" = "無効化"; +"Download GIF" = "GIFをダウンロード"; +"Dropped pin" = "ドロップしたピン"; +"Emoji" = "絵文字"; +"Enable" = "有効化"; +"Enable Location Services for Instagram in Settings to use your current location." = "現在地を使用するには、設定でInstagramの位置情報サービスを有効にしてください。"; +"Enter emoji" = "絵文字を入力"; +"Fake location" = "偽の位置情報"; +"Force theme" = "テーマを強制"; +"Keyboard theme" = "キーボードテーマ"; +"Light" = "ライト"; +"Location access denied" = "位置情報へのアクセスが拒否されました"; +"Location Services off" = "位置情報サービスがオフです"; +"Name" = "名前"; +"Nothing to copy" = "コピーするものがありません"; +"Off, Light, Dark, or OLED" = "オフ、ライト、ダーク、OLEDから選択"; +"OLED" = "OLED"; +"OLED chat theme" = "OLEDチャットテーマ"; +"Open Settings" = "設定を開く"; +"Optional per-surface overrides. Each one is independent of the theme above." = "画面ごとの上書き設定(任意)です。それぞれ上のテーマとは独立しています。"; +"Override iOS appearance regardless of system mode" = "システムのモードに関係なくiOSの外観を上書きします"; +"Override the keyboard appearance when typing" = "入力時のキーボードの外観を上書きします"; +"Pick location" = "位置を選択"; +"Pure black DM thread + incoming bubbles" = "DMスレッドと受信バブルを純黒にします"; +"Save" = "保存"; +"Save preset" = "プリセットを保存"; +"Saved locations" = "保存済みの位置"; +"Select color" = "色を選択"; +"Set location" = "位置を設定"; +"The theme RyukGram applies to Instagram." = "RyukGramがInstagramに適用するテーマです。"; +"Theme" = "テーマ"; +"Turn Location Services on in Settings → Privacy to use your current location." = "現在地を使用するには、設定 → プライバシーで位置情報サービスをオンにしてください。"; +"Type an emoji to use as the note bubble icon." = "ノートの吹き出しアイコンに使う絵文字を入力してください。"; +"Profile picture" = "プロフィール写真"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@: %lu 件のアカウントを対象にしますか? レート制限を避けるため、最初の %ld 件のみ処理されます。"; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@: %lu 件のアカウントを対象にしますか? 各件の間に短い待機を挟みながら順番に実行されます。"; +"%@ followers · %@ following" = "フォロワー %@ · フォロー中 %@"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%d日前"; +"%dh ago" = "%d時間前"; +"%dm ago" = "%d分前"; +"%lu accounts followed" = "%lu 件のアカウントをフォローしました"; +"%lu accounts unfollowed" = "%lu 件のアカウントのフォローを解除しました"; +"%lu followers · %lu following" = "フォロワー %lu 人 · フォロー中 %lu 人"; +"%lu followers removed" = "%lu 人のフォロワーを削除しました"; +"%lu of %lu" = "%lu / %lu"; +"%lu of %lu checks on" = "%lu / %lu 件のチェックがオン"; +"%lu saved · comparing against %@" = "%lu 件保存 · %@ と比較中"; +"(empty)" = "(空)"; +"(no analyzer data)" = "(アナライザーデータなし)"; +"a saved snapshot" = "保存済みのスナップショット"; +"About Profile Analyzer" = "プロフィールアナライザーについて"; +"All preferences (%lu)" = "すべての設定 (%lu)"; +"Analysis complete" = "分析が完了しました"; +"Analysis failed" = "分析に失敗しました"; +"Another analysis is already running" = "別の分析がすでに実行中です"; +"Available after your next scan" = "次回のスキャン後に利用できます"; +"Batch follow" = "一括フォロー"; +"Batch follow finished" = "一括フォローが完了しました"; +"Batch remove followers" = "フォロワーを一括削除"; +"Batch remove followers finished" = "フォロワーの一括削除が完了しました"; +"Batch unfollow" = "一括フォロー解除"; +"Batch unfollow finished" = "一括フォロー解除が完了しました"; +"Categories" = "カテゴリ"; +"Checks" = "チェック項目"; +"Clear visited profiles" = "閲覧したプロフィールを消去"; +"Compare next scan against" = "次回スキャンの比較対象"; +"Comparing against %@" = "%@ と比較中"; +"Continue" = "続行"; +"Couldn't fetch profile information" = "プロフィール情報を取得できませんでした"; +"Delete %lu snapshots? This can't be undone." = "%lu 件のスナップショットを削除しますか? この操作は取り消せません。"; +"Delete (%lu)" = "削除 (%lu)"; +"Delete snapshots" = "スナップショットを削除"; +"Delete this snapshot? This can't be undone." = "このスナップショットを削除しますか? この操作は取り消せません。"; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "スキャンのたびに、フォロワーとフォロー中の完全なコピーを保存し、あとで比較できるようにします。すべてこのデバイス内に保存されます。"; +"Export" = "エクスポート"; +"Fetching followers (%lu/%ld)…" = "フォロワーを取得中 (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "フォロー中を取得中 (%lu/%ld)…"; +"Fetching profile info…" = "プロフィール情報を取得中…"; +"File is not a valid RyukGram backup." = "このファイルは有効なRyukGramのバックアップではありません。"; +"Filter" = "フィルター"; +"Filter · %lu" = "フィルター · %lu"; +"First scan: %@" = "初回スキャン: %@"; +"First scan: we collect your followers and following lists and save them locally." = "初回スキャン: フォロワーとフォロー中のリストを収集し、ローカルに保存します。"; +"Follow back" = "フォローバック"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "フォロワー数が %ld を超えています。レート制限を避けるため、分析は無効化されています。"; +"Followers" = "フォロワー"; +"Following… %lu / %lu" = "フォロー中… %lu / %lu"; +"Gained since last scan" = "前回スキャン以降に増加"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "ご注意: この機能はInstagramのプライベートAPIを使用します。連続して実行したり、フォロー/フォロー解除を多用した直後に実行すると、一時的なレート制限がかかることがあります。控えめに、自己責任でご利用ください。"; +"Import complete" = "インポートが完了しました"; +"Include" = "含める"; +"Keep newest" = "新しいものを保持"; +"Keep newest snapshots" = "新しいスナップショットを保持"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "大規模アカウントは対象外です: アプリ全体がInstagramのレート制限を受けるのを避けるため、フォロワー13,000人を超える場合は分析が無効になります。"; +"Last scan: %@" = "前回スキャン: %@"; +"Logs every profile you open. Stays on-device." = "開いたすべてのプロフィールを記録します。データはデバイス内に保存されます。"; +"Lost followers" = "減ったフォロワー"; +"Most visited" = "閲覧回数順"; +"Mutual followers" = "相互フォロー"; +"Name: %@ → %@" = "名前: %@ → %@"; +"New followers" = "新しいフォロワー"; +"NEW" = "新規"; +"New first" = "新しい順"; +"New only" = "新規のみ"; +"No active Instagram session found" = "有効なInstagramセッションが見つかりませんでした"; +"No results" = "結果なし"; +"No scan yet" = "スキャン履歴なし"; +"Not following you back" = "フォローバックされていない"; +"Not verified only" = "未認証のみ"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "何もアップロードされません。すべてこのデバイス内に保存され、ゴミ箱アイコンから消去できます。"; +"Nothing was applied." = "何も適用されませんでした。"; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "上限を超えた古いスナップショットは自動的に削除されます"; +"Older snapshots beyond this limit are deleted on the next scan." = "この上限を超えた古いスナップショットは、次回のスキャン時に削除されます。"; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "削除する対象を選択してください。スナップショットはスキャンの差分と記録済みのスナップショットをすべて消去し、閲覧したプロフィールは閲覧履歴を消去します。"; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "各スキャンで計算するカテゴリを選びます。無効なチェック項目はグレー表示になり、スキップされます。計算も表示もされません。"; +"Posts" = "投稿"; +"Preferences" = "環境設定"; +"Previous scan" = "前回のスキャン"; +"Private account" = "非公開アカウント"; +"Private only" = "非公開のみ"; +"Profile Analyzer" = "プロフィールアナライザー"; +"Profile Analyzer data" = "プロフィールアナライザーのデータ"; +"Profile picture changed" = "プロフィール画像が変更されました"; +"Profile updates" = "プロフィールの更新"; +"Profiles you've opened recently" = "最近開いたプロフィール"; +"Raw" = "無圧縮"; +"Raw JSON" = "生のJSON"; +"Record snapshots" = "スナップショットを記録"; +"Remove @%@ as a follower?" = "@%@ をフォロワーから削除しますか?"; +"Remove follower" = "フォロワーを削除"; +"Removing… %lu / %lu" = "削除中… %lu / %lu"; +"Recording" = "記録"; +"Request failed" = "リクエストに失敗しました"; +"Reset analyzer data" = "アナライザーデータをリセット"; +"Reset complete" = "リセットが完了しました"; +"Reset everything" = "すべてリセット"; +"Reset selected data?" = "選択したデータをリセットしますか?"; +"Reset snapshots" = "スナップショットをリセット"; +"Rolling — always your last run" = "ローリング(常に直近の実行)"; +"Run analysis" = "分析を実行"; +"Run your first analysis" = "初回の分析を実行"; +"Save a dated entry on every scan" = "スキャンのたびに日付付きの記録を保存"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "2回目以降のスキャン: 毎回前回のスキャンと比較し、フォロワーの増減、自分のフォロー/フォロー解除の動き、プロフィールの更新を表示できます。"; +"Settings" = "設定"; +"Since last scan" = "前回スキャン以降"; +"Snapshot" = "スナップショット"; +"Snapshot saved" = "スナップショットを保存しました"; +"Snapshots" = "スナップショット"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "スナップショットを使うと、各スキャンをアーカイブし、新しいスキャンの比較対象を選べます。「閲覧を記録」は開いたすべてのプロフィールを記録し、ここで見返せるようにします。"; +"Sort" = "並べ替え"; +"Starting…" = "開始中…"; +"They follow you, you don't follow back" = "相手はあなたをフォローしていますが、あなたはフォローしていません"; +"This can't be undone." = "この操作は取り消せません。"; +"Ticked data will be cleared. Tap a row to see what's stored." = "チェックしたデータが消去されます。行をタップすると保存内容を確認できます。"; +"Today" = "今日"; +"Too many followers" = "フォロワーが多すぎます"; +"Too many followers to analyze" = "フォロワーが多すぎて分析できません"; +"Track visited profiles" = "閲覧したプロフィールを記録"; +"Tracking" = "トラッキング"; +"Tracking off — enable below to log visits" = "トラッキングはオフです。閲覧を記録するには下で有効にしてください"; +"Unfollow" = "フォロー解除"; +"Unfollow %lu" = "%lu 件のフォローを解除"; +"Unfollow @%@?" = "@%@ のフォローを解除しますか?"; +"Unfollowed you since last scan" = "前回スキャン以降にあなたをフォロー解除"; +"Unfollowing… %lu / %lu" = "フォロー解除中… %lu / %lu"; +"Unlimited" = "無制限"; +"Username A → Z" = "ユーザーネーム A → Z"; +"Username Z → A" = "ユーザーネーム Z → A"; +"Username, name or picture changes" = "ユーザーネーム、名前、画像の変更"; +"Username: @%@ → @%@" = "ユーザーネーム: @%@ → @%@"; +"Using %@ across %lu snapshots." = "%lu 件のスナップショットで %@ を使用しています。"; +"Verified only" = "認証済みのみ"; +"Visited" = "閲覧履歴"; +"Visited profiles" = "閲覧したプロフィール"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "Instagramのレート制限を避けるため、フォロワー数が %ld を超える場合は実行しません。"; +"You both follow each other" = "相互にフォローしています"; +"You don't follow back" = "あなたがフォローバックしていない"; +"You follow them, they don't follow back" = "あなたはフォローしていますが、相手はフォローしていません"; +"You started following" = "あなたが新たにフォロー"; +"Your current scan was archived" = "現在のスキャンをアーカイブしました"; +"You unfollowed" = "あなたがフォロー解除"; +"your previous scan" = "前回のスキャン"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "「前回のスキャン」は常に直近の実行と比較します。特定の時点と比較したい場合は、保存済みのスナップショットを選んでください。"; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ サイズが大きくなっています。上限を下げるか、古いスナップショットを削除して空き容量を確保してください。"; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "絶対表示の形式"; +"Add chat" = "チャットを追加"; +"Add custom domain" = "カスタムドメインを追加"; +"Add to list?" = "リストに追加しますか?"; +"Add user" = "ユーザーを追加"; +"Apply" = "適用"; +"Apply to" = "適用先"; +"Chats" = "チャット"; +"Colored" = "カラー"; +"Could not read file." = "ファイルを読み込めませんでした。"; +"Could not resolve user ID" = "ユーザーIDを特定できませんでした"; +"Current location" = "現在地"; +"Custom" = "カスタム"; +"Delete" = "削除"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "IGの画面ごとに異なるNSDateフォーマッタを通ります。この形式を適用したいものを有効にしてください。"; +"Enable fake location" = "偽の位置情報を有効化"; +"Excluded chats" = "除外中のチャット"; +"Excluded users" = "除外中のユーザー"; +"Follow default" = "デフォルトに従う"; +"Force OFF (allow unsends)" = "強制オフ(送信取り消しを許可)"; +"Force ON (preserve unsends)" = "強制オン(送信取り消しを保持)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "形式に時刻が含まれる場合に秒を表示します。カスタム形式では{ss}で秒を直接指定できます。"; +"Add custom format…" = "カスタム形式を追加…"; +"Edit" = "編集"; +"Template" = "テンプレート"; +"Placeholders" = "プレースホルダー"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "プレースホルダーは日付の各要素に置き換えられます。それ以外はそのまま表示されます。"; +"Tap a placeholder to insert it at the cursor." = "プレースホルダーをタップすると、カーソル位置に挿入されます。"; +"Included chats" = "対象のチャット"; +"Included users" = "対象のユーザー"; +"KD: default" = "KD: デフォルト"; +"KD: ON" = "KD: オン"; +"Keep-deleted" = "削除メッセージ保持"; +"Keep-deleted override" = "削除メッセージ保持の上書き"; +"Name (A–Z)" = "名前 (A–Z)"; +"No DM thread found with @%@" = "@%@ とのDMスレッドが見つかりませんでした"; +"Presets" = "プリセット"; +"Recently added" = "追加順"; +"Relative time" = "相対表示"; +"Relative within" = "相対表示にする範囲"; +"Remove from list" = "リストから削除"; +"Reset" = "リセット"; +"Search" = "検索"; +"Search address or place" = "住所または場所を検索"; +"Search by name or username" = "名前またはユーザーネームで検索"; +"Search by username or name" = "ユーザーネームまたは名前で検索"; +"Select location on map" = "地図上で位置を選択"; +"Set current location" = "現在地に設定"; +"Set keep-deleted override" = "削除メッセージ保持の上書きを設定"; +"Show map button" = "マップボタンを表示"; +"Show relative time for dates younger than this many days. 0 disables it." = "この日数より新しい日付を相対表示にします。0にすると無効になります。"; +"Show seconds" = "秒を表示"; +"Sort by" = "並べ替え"; +"Thread" = "スレッド"; +"Time" = "時刻"; +"Use this location" = "この位置を使用"; +"User '%@' not found" = "ユーザー「%@」が見つかりませんでした"; +"Username (A–Z)" = "ユーザーネーム (A–Z)"; +"Within %ld days" = "%ld 日以内"; +"Within 1 day" = "1日以内"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "パスワードが見つかりませんでした"; +"No text field found" = "テキストフィールドが見つかりませんでした"; +"Refresh Reels?" = "リールを更新しますか?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu 件のアカウント"; +"%lu loaded" = "%lu 件読み込み済み"; +"%lu loaded · all loaded" = "%lu 件読み込み済み · すべて読み込み完了"; +"Doesn't follow you" = "フォローされていません"; +"Everyone is already loaded." = "すでに全員読み込み済みです。"; +"Filter & sort" = "絞り込みと並べ替え"; +"Follows me" = "自分をフォロー中"; +"Follows me first" = "自分をフォローしている人を先頭に"; +"Follows you" = "フォローされています"; +"Hides everyone who doesn't match all picked filters." = "選択したすべての条件に一致しない人を非表示にします。"; +"Jump to bottom" = "最下部へ移動"; +"Jump to top" = "最上部へ移動"; +"List" = "リスト"; +"List fully loaded" = "リストをすべて読み込みました"; +"Load more" = "さらに読み込む"; +"Loaded more" = "さらに読み込みました"; +"Mutuals" = "相互フォロー"; +"Mutuals first" = "相互フォローを先頭に"; +"Note copied" = "ノートをコピーしました"; +"People I follow" = "自分がフォロー中"; +"People I follow first" = "自分がフォローしている人を先頭に"; +"Reverse order" = "逆順"; +"Show only" = "表示対象"; +"Verified" = "認証済み"; +"Verified first" = "認証済みを先頭に"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(未設定)"; +"720p • progressive • fastest" = "720p • プログレッシブ • 最速"; +"Add language" = "言語を追加"; +"Album name" = "アルバム名"; +"Are you sure?" = "本当によろしいですか?"; +"Bundle" = "バンドル"; +"Copy audio URL" = "音声URLをコピー"; +"Copy quality info" = "画質情報をコピー"; +"Copy video URL" = "動画URLをコピー"; +"Could not access reel media" = "リールのメディアにアクセスできませんでした"; +"Could not access reel photo" = "リールの写真にアクセスできませんでした"; +"Could not write file." = "ファイルを書き込めませんでした。"; +"Download all and share?" = "すべてダウンロードして共有しますか?"; +"Download Quality" = "ダウンロード画質"; +"Downloading %d%%" = "ダウンロード中 %d%%"; +"e.g. 1000000" = "例: 1000000"; +"Localization file not found" = "ローカライズファイルが見つかりませんでした"; +"Enter the language code (e.g. fr, de, ja)" = "言語コードを入力してください(例: fr、de、ja)"; +"Error" = "エラー"; +"Extras" = "その他の機能"; +"FFmpegKit Debug" = "FFmpegKitデバッグ"; +"File is empty or not a valid .strings file." = "ファイルが空か、有効な.stringsファイルではありません。"; +"KD: OFF" = "KD: オフ"; +"Keep-deleted: OFF" = "削除メッセージ保持: オフ"; +"Keep-deleted: ON" = "削除メッセージ保持: オン"; +"Later" = "後で"; +"Loading" = "読み込み中"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "RyukGramの保存先となる写真アプリのアルバム名です。空にするとデフォルトに戻ります。"; +"Next" = "次へ"; +"No results found." = "結果が見つかりませんでした。"; +"No!" = "いいえ!"; +"Pick a language to update, or add a new one" = "更新する言語を選択するか、新しい言語を追加してください"; +"Preset" = "プリセット"; +"Restart" = "再起動"; +"Restart now" = "今すぐ再起動"; +"Restart required" = "再起動が必要です"; +"Saved preset \"%@\"" = "プリセット「%@」を保存しました"; +"selected" = "選択中"; +"Shared icon, or override per button" = "共通アイコン、またはボタンごとに上書き"; +"Speed" = "速度"; +"Unset" = "未設定"; +"Update localization" = "ローカライズを更新"; +"Updated %@ (%ld keys). Restart to apply." = "%@ を更新しました(%ld キー)。適用するには再起動してください。"; +"Use default" = "デフォルトを使用"; +"Username or PK" = "ユーザーネームまたはPK"; +"Username or raw user PK" = "ユーザーネームまたはユーザーPK"; +"Yes" = "はい"; +"You must restart the app to apply this change" = "この変更を適用するにはアプリを再起動する必要があります"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "RyukGramは気に入っていますか?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "無料で、データが端末外に出ることもありません。気に入っていただけたら、コーヒー1杯の支援が開発の力になります。"; +"Donate" = "寄付する"; +"I already did" = "もう支援しました"; +"Maybe later" = "また今度"; +"This means a lot" = "本当にありがとうございます"; +"Appreciate the support" = "ご支援に感謝します"; +"No worries, enjoy the tweak" = "お気になさらず、機能をお楽しみください"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub、Telegram、寄付"; +"About" = "情報"; +"Arabic translation" = "アラビア語翻訳"; +"Chinese (Traditional and Simplified) translation" = "中国語(繁体字・簡体字)翻訳"; +"Credits" = "クレジット"; +"Developers" = "開発者"; +"installed" = "インストール済み"; +"Korean translation" = "韓国語翻訳"; +"Portuguese (Brazil) translation" = "ポルトガル語(ブラジル)翻訳"; +"Turkish translation" = "トルコ語翻訳"; +"Vietnamese translation" = "ベトナム語翻訳"; +"French translation" = "フランス語翻訳"; +"Japanese translation" = "日本語翻訳"; +"Code contributions" = "コード貢献"; +"Following feed mode (from InstaSane)" = "フォロー中フィードモード(InstaSane由来)"; +"latest" = "最新"; +"Links" = "リンク"; +"No releases" = "リリースなし"; +"SCInsta developer" = "SCInsta 開発者"; +"Release notes" = "リリースノート"; +"Releases" = "リリース"; +"Report an issue" = "問題を報告"; +"Russian translation" = "ロシア語翻訳"; +"RyukGram developer" = "RyukGram開発者"; +"Join Telegram channel" = "Telegramチャンネルに参加"; +"Source code" = "ソースコード"; +"View on GitHub" = "GitHubで見る"; +"Spanish translation" = "スペイン語翻訳"; +"Inspirations" = "インスピレーション"; +"Inspirations, contributors, translators" = "インスピレーション、貢献者、翻訳者"; +"Code and research" = "コードとリサーチ"; +"Translators" = "翻訳者"; +"BHInstagram developer" = "BHInstagram 開発者"; +"OLED theme inspiration" = "OLEDテーマの着想元"; +"Donate to Ryuk" = "Ryukに寄付"; +"Support RyukGram development" = "RyukGramの開発を支援"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGramはSCInstaに触発された独立したプロジェクトです。"; +"Browse changes from previous releases" = "過去のリリースの変更点を確認できます"; +"Code inspiration" = "コードの着想元"; +"zxPluginsInject sideload compatibility shim" = "zxPluginsInjectのサイドロード互換シム"; +"Telegram channel" = "Telegramチャンネル"; +"Testing and feature suggestions" = "テストと機能提案"; +"Version" = "バージョン"; +"Version, credits, and links" = "バージョン、クレジット、リンク"; +"What's new in RyukGram" = "RyukGramの新機能"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • プログレッシブ • 無音"; +"Audio only" = "音声のみ"; +"Audio ready" = "音声の準備ができました"; +"Audio track %ld" = "音声トラック %ld"; +"Download video at the highest available quality" = "利用可能な最高画質で動画をダウンロードします"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "DASHストリーム経由でHD動画をダウンロードし、H.264にエンコードします。FFmpegKitが必要です。"; +"Encoding in software" = "ソフトウェアでエンコード中"; +"Encoding speed" = "エンコード速度"; +"Enhanced downloads" = "高画質ダウンロード"; +"Faster = lower quality" = "高速 = 低画質"; +"FFmpeg not available" = "FFmpegを利用できません"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKitを利用できません。有効にするには、サイドロード版IPAまたは_ffmpeg付き.debバリアントをインストールしてください。"; +"Hardware encoder isn't available in the background — your quality settings were kept." = "バックグラウンドではハードウェアエンコーダを利用できません。画質設定はそのまま保持されました。"; +"No audio track found" = "音声トラックが見つかりませんでした"; +"Photo" = "写真"; +"Photo quality" = "写真の画質"; +"Size unknown" = "サイズ不明"; +"calculating size…" = "サイズを計算中…"; +"silent" = "無音"; +"Use highest resolution available" = "利用可能な最高解像度を使用"; +"Video encoder locked up — restart Instagram to encode again" = "動画エンコーダが停止しました。再度エンコードするにはInstagramを再起動してください"; +"Video only" = "映像のみ"; +"Video-only & every audio track" = "映像のみ&すべての音声トラック"; +"Video quality" = "動画の画質"; +"Which quality to download" = "ダウンロードする画質"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' はこのFFmpegKitビルドに含まれていません。代わりにハードウェアh264を使用します。"; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10ビット 4:2:0。約2倍遅くなりますが、グラデーションが滑らかになります。"; +"10-bit colour. Slower, smoother gradients. Software only." = "10ビットカラー。遅くなりますが、グラデーションが滑らかになります。ソフトウェアのみ。"; +"1080p30 baseline." = "1080p30ベースライン。"; +"4K30 baseline." = "4K30ベースライン。"; +"8-bit 4:2:0. Universal default." = "8ビット 4:2:0。汎用のデフォルト。"; +"8-bit 4:2:2 chroma. Niche playback." = "8ビット 4:2:2クロマ。再生環境を選びます。"; +"8-bit 4:2:2 chroma. Software only." = "8ビット 4:2:2クロマ。ソフトウェアのみ。"; +"8-bit 4:4:4 chroma. Software only." = "8ビット 4:4:4クロマ。ソフトウェアのみ。"; +"8-bit 4:4:4 full chroma. Niche playback." = "8ビット 4:4:4フルクロマ。再生環境を選びます。"; +"8-bit. Best for modern devices." = "8ビット。最近のデバイスに最適。"; +"Advanced encoding" = "詳細なエンコード"; +"Advanced encoding settings" = "詳細なエンコード設定"; +"Archival quality." = "アーカイブ用の品質。"; +"Audio bitrate" = "音声ビットレート"; +"Audio channels" = "音声チャンネル"; +"Audio codec" = "音声コーデック"; +"Audio conversion failed" = "音声の変換に失敗しました"; +"Audio sample rate" = "音声サンプルレート"; +"Balanced. libx264 default." = "バランス型。libx264のデフォルト。"; +"Best practical quality per bit." = "ビットあたりの実用的な最高品質。"; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "ビットレート・チャンネル・サンプルレートは、コーデックがAAC(再エンコード)のときのみ適用されます。"; +"Cartoons / anime." = "アニメーション/アニメ。"; +"Cinematic. Smaller files." = "シネマティック。ファイルサイズが小さくなります。"; +"Codec" = "コーデック"; +"Container" = "コンテナ"; +"Copy (passthrough)" = "コピー(パススルー)"; +"CRF quality" = "CRF品質"; +"Downloading video…" = "動画をダウンロード中…"; +"Easier to play back on weak devices." = "非力なデバイスでも再生しやすくなります。"; +"Encoder unavailable" = "エンコーダを利用できません"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "例: 8M、12M、25M、4500k。空にすると自動になります。"; +"Failed to download video" = "動画のダウンロードに失敗しました"; +"Fast, fixed-bitrate, GPU-accelerated." = "高速・固定ビットレート・GPU支援。"; +"Fastest, worst compression." = "最速ですが、圧縮率は最も低くなります。"; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststartは、MP4のインデックスを先頭に移動し、ファイルが完全にバッファされる前に再生を始められるようにします。「メタデータを除去」は、ファイルから元のタグ(作成日、ハンドラ、エンコーダ)を取り除きます。"; +"FFmpeg documentation" = "FFmpegのドキュメント"; +"FFmpeg mux failed" = "FFmpegの多重化に失敗しました"; +"Frame rate" = "フレームレート"; +"H.264 level" = "H.264レベル"; +"H.264 profile" = "H.264プロファイル"; +"Hardware (VideoToolbox)" = "ハードウェア(VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "ハードウェア(VideoToolbox)はyuv420pのみ対応しているため、'%@' は無視されました。使用するにはソフトウェア(libx264)に切り替えてください。"; +"Keep original audio. Fast." = "元の音声をそのまま使用。高速。"; +"Keep the source frame rate." = "元のフレームレートを維持します。"; +"Let the encoder pick." = "エンコーダに任せます。"; +"Live-action video." = "実写の動画。"; +"Lossless. Huge files." = "ロスレス。ファイルサイズが非常に大きくなります。"; +"Low-latency streaming." = "低遅延ストリーミング。"; +"Manual ffmpeg controls in place of Encoding speed." = "「エンコード速度」の代わりに、ffmpegを手動で制御します。"; +"Marginal gain, huge time cost." = "効果はわずかですが、時間が大きくかかります。"; +"Max resolution" = "最大解像度"; +"Mono" = "モノラル"; +"No tuning. Default." = "チューニングなし。デフォルト。"; +"None" = "なし"; +"Pixel format" = "ピクセルフォーマット"; +"Pixel format ignored" = "ピクセルフォーマットは無視されました"; +"Preserve film grain." = "フィルムグレインを保持します。"; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "プリセットとチューニングはソフトウェア(libx264)のみに適用されます。プロファイルとピクセルフォーマットは組み合わせて使ってください: high↔yuv420p、high10↔yuv420p10le、high422↔yuv422p、high444↔yuv444p。不一致の場合は自動的に変換されます。ハードウェアは常にyuv420pを使用します。"; +"Re-encode. Use when source is opus or unsupported." = "再エンコード。元がopusまたは非対応形式のときに使用します。"; +"Reset advanced encoding" = "詳細なエンコード設定をリセット"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "動画ビットレートを設定すると、ソフトウェアは固定ビットレートに切り替わり、CRFは無視されます。CRFを使うには空にしてください。ハードウェアはビットレートを使用します。"; +"Slideshow-like content." = "スライドショーのようなコンテンツ。"; +"Slower, better compression per bit." = "遅くなりますが、ビットあたりの圧縮率が向上します。"; +"Smaller, visible artefacts." = "サイズは小さくなりますが、劣化が目立ちます。"; +"Software (libx264)" = "ソフトウェア(libx264)"; +"Standard 8-bit." = "標準の8ビット。"; +"Stereo" = "ステレオ"; +"Streaming default." = "ストリーミングのデフォルト。"; +"Strip metadata" = "メタデータを除去"; +"Top of AAC." = "AACの最高品質。"; +"Tune" = "チューニング"; +"Unknown error" = "不明なエラー"; +"Very high quality." = "非常に高い品質。"; +"Video bitrate" = "動画ビットレート"; +"Video codec" = "動画コーデック"; +"Visually lossless. RyukGram default." = "見た目上ロスレス。RyukGramのデフォルト。"; +"Widest compatibility, no B-frames." = "互換性が最も高く、Bフレームなし。"; +"Worst quality." = "最も低い品質。"; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "長押しジェスチャー"; +"Inserts a button in the profile navigation header" = "プロフィールのナビゲーションヘッダーにボタンを追加します"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "プロフィールヘッダーに、コピー・画像表示・共有・保存・プロフィール情報項目を備えたRyukGramアクションボタンを追加します。タップするとデフォルトでメニューが開きます。タップ時の動作は「メニューを設定」で変更できます。"; +"Configure menu" = "メニューを設定"; +"Reorder, enable/disable, set default tap, show date" = "並べ替え、有効/無効、デフォルトタップの設定、日付表示"; +"Reorder, enable/disable, set default tap" = "並べ替え、有効/無効、デフォルトタップの設定"; +"RyukGram profile actions" = "RyukGramプロフィールアクション"; +"Reorder sections" = "セクションを並べ替え"; +"Drag the ≡ handle to reorder sections." = "≡ ハンドルをドラッグしてセクションを並べ替えます。"; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "≡ ハンドルをドラッグして並べ替えます。行をオフにするとメニューから非表示になります。セクションをサブメニューに指定すると、そのアクションが1つの項目にまとめられます。"; +"Show as submenu" = "サブメニューとして表示"; +"Collapse this section's actions behind a single entry" = "このセクションのアクションを1つの項目にまとめます"; +"Configure: %@" = "設定: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "シングルタップ時の動作です。長押しでは常に全メニューが開きます。"; +"Reset to defaults" = "デフォルトに戻す"; +"This will restore the default sections, order, and toggles for this menu." = "このメニューのセクション、並び順、トグルがデフォルトに戻ります。"; +"Audio & visibility" = "音声と表示"; +"DM disappearing media" = "DMの消えるメディア"; +"Bulk download" = "一括ダウンロード"; +"Feed settings" = "フィード設定"; +"Reels settings" = "リール設定"; +"Profile settings" = "プロフィール設定"; +"Stories settings" = "ストーリーズ設定"; +"Copy ID" = "IDをコピー"; +"Copy Info" = "情報をコピー"; +"Copy all info" = "すべての情報をコピー"; +"Copy media URL" = "メディアURLをコピー"; +"Copy profile link" = "プロフィールリンクをコピー"; +"Copy username" = "ユーザーネームをコピー"; +"Download" = "ダウンロード"; +"Download to Gallery" = "ギャラリーにダウンロード"; +"Download all to Gallery" = "すべてギャラリーにダウンロード"; +"Exclude/include user" = "ユーザーを除外/解除"; +"Mute / unmute audio" = "音声のミュート/解除"; +"Save picture to Gallery" = "画像をギャラリーに保存"; +"Share picture" = "画像を共有"; +"View picture" = "画像を表示"; +"Bio" = "自己紹介"; +"ID" = "ID"; +"Info" = "情報"; +"Profile info" = "プロフィール情報"; +"Profile link" = "プロフィールリンク"; +"Picture not found" = "画像が見つかりませんでした"; +"Private profile" = "非公開プロフィール"; +"Profile unavailable" = "プロフィールを利用できません"; +"Public profile" = "公開プロフィール"; +"Username" = "ユーザーネーム"; +"Followers: %@" = "フォロワー: %@"; +"Following: %@" = "フォロー中: %@"; +"Copied %@" = "%@ をコピーしました"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(不明)"; +"Added %lu" = "%lu 件追加しました"; +"All files deleted" = "すべてのファイルを削除しました"; +"Browsing" = "閲覧"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "以前のバージョンで保存された %lu 件のアイテムが見つかりました。今すぐギャラリーに復元しますか?"; +"Gallery data from a previous version was found. Restore it now?" = "以前のバージョンのギャラリーデータが見つかりました。今すぐ復元しますか?"; +"Gallery restored" = "ギャラリーを復元しました"; +"Import failed" = "インポートに失敗しました"; +"Import to Gallery" = "ギャラリーにインポート"; +"Imported" = "インポートしました"; +"Importing…" = "インポート中…"; +"Not Now" = "今はしない"; +"Nothing imported" = "インポートするものがありません"; +"Restore" = "復元"; +"Restore Gallery" = "ギャラリーを復元"; +"Restore failed" = "復元に失敗しました"; +"Restoring gallery…" = "ギャラリーを復元中…"; +"By source" = "ソース別"; +"By type" = "種類別"; +"By user" = "ユーザー別"; +"Clear filters" = "フィルターをクリア"; +"Comment" = "コメント"; +"Create" = "作成"; +"Create & Move" = "作成して移動"; +"Delete %@?" = "%@ を削除しますか?"; +"Delete all files" = "すべてのファイルを削除"; +"Delete all images" = "すべての画像を削除"; +"Delete all videos" = "すべての動画を削除"; +"Delete by user" = "ユーザー別に削除"; +"Delete DM media" = "DMメディアを削除"; +"Delete feed posts" = "フィード投稿を削除"; +"Delete files" = "ファイルを削除"; +"Delete Folder" = "フォルダを削除"; +"Delete from Gallery?" = "ギャラリーから削除しますか?"; +"Delete profile pictures" = "プロフィール画像を削除"; +"Delete reels" = "リールを削除"; +"Delete selected" = "選択項目を削除"; +"Delete Selected Files?" = "選択したファイルを削除しますか?"; +"Delete stories" = "ストーリーを削除"; +"Delete thumbnails" = "サムネイルを削除"; +"Deleted from Gallery" = "ギャラリーから削除しました"; +"Deleted selected files" = "選択したファイルを削除しました"; +"Deselect All" = "すべて選択解除"; +"DM media deleted" = "DMメディアを削除しました"; +"DMs" = "DM"; +"Each user appears as a folder next to your real folders." = "各ユーザーが、実際のフォルダと並んでフォルダとして表示されます。"; +"Each user gets a labelled section in the grid/list." = "各ユーザーが、グリッド/リスト内にラベル付きのセクションとして表示されます。"; +"Enable gallery" = "ギャラリーを有効化"; +"Failed" = "失敗しました"; +"Failed to delete" = "削除に失敗しました"; +"Favorite" = "お気に入りに追加"; +"Favorite selected" = "選択項目をお気に入りに追加"; +"Favorites only" = "お気に入りのみ"; +"Feed posts deleted" = "フィード投稿を削除しました"; +"Files deleted" = "ファイルを削除しました"; +"Flat list. No grouping." = "フラットなリスト。グループ分けなし。"; +"Folder name" = "フォルダ名"; +"Folders" = "フォルダ"; +"From RyukGram Gallery" = "RyukGramギャラリーから"; +"Gallery" = "ギャラリー"; +"Gallery only" = "ギャラリーのみ"; +"Gallery save mode" = "ギャラリー保存モード"; +"Gallery Settings" = "ギャラリー設定"; +"GIFs" = "GIF"; +"Grid columns" = "グリッドの列数"; +"Grid view" = "グリッド表示"; +"Group by user" = "ユーザーごとにグループ化"; +"Group first by" = "最初にグループ化する基準"; +"Order by" = "並び順"; +"Favorites first" = "お気に入りを先頭に"; +"Any time" = "すべての期間"; +"This year" = "今年"; +"%ld columns" = "%ld 列"; +"Hold DM tab to open gallery" = "DMタブ長押しでギャラリーを開く"; +"Images" = "画像"; +"Images deleted" = "画像を削除しました"; +"Images first" = "画像を先に"; +"item" = "件"; +"items" = "件"; +"Largest first" = "サイズが大きい順"; +"List view" = "リスト表示"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "下部タブバーの受信箱ボタンを長押しするとRyukGramギャラリーが開きます"; +"Manage" = "管理"; +"More" = "その他"; +"Move selected" = "選択項目を移動"; +"Move to Folder" = "フォルダに移動"; +"Name A-Z" = "名前 A-Z"; +"Name Z-A" = "名前 Z-A"; +"New Folder" = "新規フォルダ"; +"New folder…" = "新規フォルダ…"; +"Newest first" = "新しい順"; +"No files in Gallery" = "ギャラリーにファイルがありません"; +"No files to delete" = "削除するファイルがありません"; +"No matching files" = "一致するファイルがありません"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "RyukGram経由でダウンロードしたメディアのデバイス内ライブラリです。保存モードで「写真アプリにダウンロード」の実際の保存先を選べます。"; +"Open" = "開く"; +"Open Original Post" = "元の投稿を開く"; +"Options" = "オプション"; +"Other" = "その他"; +"Photos + Gallery" = "写真アプリ+ギャラリー"; +"Photos only" = "写真アプリのみ"; +"Profile pictures deleted" = "プロフィール画像を削除しました"; +"Reels deleted" = "リールを削除しました"; +"Rename" = "名前を変更"; +"Rename Folder" = "フォルダ名を変更"; +"Root" = "ルート"; +"Save media from the preview screen\nto see it here." = "プレビュー画面からメディアを保存すると\nここに表示されます。"; +"Saved %lu items to Gallery" = "%lu 件をギャラリーに保存しました"; +"Saved to Gallery" = "ギャラリーに保存しました"; +"Saving to Gallery" = "ギャラリーに保存中"; +"Search users" = "ユーザーを検索"; +"Sections" = "セクション"; +"Select All" = "すべて選択"; +"Share" = "共有"; +"Share selected" = "選択項目を共有"; +"Show favorites at top" = "お気に入りを上部に表示"; +"Show gallery entries in download menus and unlock the gallery button" = "ダウンロードメニューにギャラリー項目を表示し、ギャラリーボタンを使えるようにします"; +"Smallest first" = "サイズが小さい順"; +"Source" = "ソース"; +"Source user" = "元のユーザー"; +"Storage" = "ストレージ"; +"Stories deleted" = "ストーリーを削除しました"; +"Story" = "ストーリー"; +"The original content may no longer exist." = "元のコンテンツはすでに存在しない可能性があります。"; +"This folder contains %ld file(s). They will be moved to the parent folder." = "このフォルダには %ld 件のファイルがあります。ファイルは親フォルダに移動されます。"; +"This folder is empty." = "このフォルダは空です。"; +"This will permanently remove %ld file%@ from the gallery." = "%ld 件のファイル%@がギャラリーから完全に削除されます。"; +"This will permanently remove %ld file(s)." = "%ld 件のファイルが完全に削除されます。"; +"This will permanently remove this file from the gallery." = "このファイルはギャラリーから完全に削除されます。"; +"Thumb" = "サムネイル"; +"Thumbnails deleted" = "サムネイルを削除しました"; +"to Gallery" = "ギャラリーへ"; +"Total files" = "合計ファイル数"; +"Total size" = "合計サイズ"; +"Type" = "種類"; +"Unable to open original post" = "元の投稿を開けませんでした"; +"Unable to open profile" = "プロフィールを開けませんでした"; +"Unfavorite" = "お気に入りを解除"; +"Unknown user" = "不明なユーザー"; +"User files deleted" = "ユーザーのファイルを削除しました"; +"Videos" = "動画"; +"Videos deleted" = "動画を削除しました"; +"Videos first" = "動画を先に"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "有効にすると、現在の並べ替えとフォルダの範囲内で、お気に入りが他のファイルより上に固定されます。"; +"Where 'Download to Photos' actually writes when gallery is on" = "ギャラリーがオンのときの「写真アプリにダウンロード」の実際の保存先"; +"Yesterday" = "昨日"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "ホームショートカットボタン"; +"Show the extra button on the home top bar" = "ホーム上部バーに追加ボタンを表示します"; +"Auto" = "自動"; +"Icon" = "アイコン"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "≡ ハンドルをドラッグして並べ替えます。アクションをオフにすると非表示になります。有効なアクションが1つの場合はタップで直接実行され、2つ以上の場合はタップでメニューが開きます。"; +"Changelog" = "更新履歴"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "ホーム上部バーの投稿作成「+」ボタンの横に、追加のショートカットボタンを配置します。"; +"All buttons" = "すべてのボタン"; +"System" = "システム"; +"Instagram language" = "Instagramの言語"; +"Choose icon, reorder actions, and enable menu items" = "アイコンの選択、アクションの並べ替え、メニュー項目の有効化ができます"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "ホーム上部バーに表示するアイコンを選びます。「自動」は、有効なアクションが1つだけのとき、そのアクションのアイコンを使用します。"; +"Configure button" = "ボタンを設定"; +"Global Action Icons" = "全体のアクションアイコン"; +"Interface" = "インターフェイス"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "特定のボタンのアイコンを上書きします。「デフォルト」のままのボタンは、上の共通アイコンに従います。"; +"Per button" = "ボタンごと"; +"Show home shortcut button" = "ホームショートカットボタンを表示"; +"%ld new" = "%ld 件の新着"; +"Tab bar" = "タブバー"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "アプリ内の共通通知です。スタイル、位置、アクションごとの振り分け(カスタムピル / IGネイティブ / オフ)を選択できます。"; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "ピルをドラッグして位置を調整"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "ピルを好きな位置にドラッグしてください。中央より上なら下から、下なら上からスライドします。"; + +"Notifications" = "通知"; +"Appearance" = "外観"; +"Routing" = "振り分け"; +"Style" = "スタイル"; +"Position" = "位置"; +"Stack size" = "同時表示数"; +"Duration" = "表示時間"; +"Default surface" = "デフォルトの表示方式"; +"System notifications" = "システム通知"; +"Mirror to notification centre" = "通知センターにミラー"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "アプリがバックグラウンドにある間、トーストを代わりにiOSの通知センターに配信し、見逃さないようにします。"; +"Clear when app opens" = "アプリを開いたら消去"; +"Remove mirrored notifications from notification centre when you return to the app." = "アプリに戻ったとき、ミラーした通知を通知センターから削除します。"; +"Background mirror" = "バックグラウンドミラー"; +"Show while app is open" = "アプリ使用中も表示"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "バックグラウンドだけでなく、アプリの使用中もミラー通知をシステムバナーとして配信します。"; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "外観、ルーティング、システム通知、およびアクションごとのすべての上書きが既定値に戻ります。"; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Instagramの通知許可を使用します。アクションごとの上書き設定は、各アクションのメニューの「バックグラウンドミラー」にあります。「オフ」に設定したアクションはミラーされません。"; +"Enable notifications" = "通知を有効化"; +"Haptic feedback" = "触覚フィードバック"; +"Preview pill" = "ピルをプレビュー"; +"Preview download pill" = "ダウンロードピルをプレビュー"; +"Preview loading pill" = "読み込みピルをプレビュー"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "マスタースイッチです。オフにすると、RyukGramのピルもIGネイティブのトーストも表示されません。"; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "アプリ内の共通通知です。RyukGramのすべてのフィードバック(ダウンロード、コピー、エラー、成功メッセージ)はここを経由します。"; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "ミニマル: フラットなブラー。カラフル: 種類ごとの色付き。グロー: 色付きの光。アイランド: Dynamic Island風カプセル。"; +"Top slides down, bottom slides up." = "上は下方向にスライドし、下は上方向にスライドします。"; +"How many pills can show at once before queueing." = "キュー待ちになる前に同時に表示できるピルの数です。"; +"Multiplies how long toasts stay on screen." = "トーストが画面に表示される時間を倍率で調整します。"; +"Vibration on success/error pills." = "成功/エラーピルで振動します。"; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "トースト形式のアクションでは、RyukGramのピルとIGネイティブの下部トーストを選べます。アクションごとの上書き設定は下にあります。"; +"What to use when an action doesn't have its own override." = "アクションに個別の上書き設定がない場合に使う方式です。"; +"Tap to cycle: info → success → warning → error" = "タップで切り替え: 情報 → 成功 → 警告 → エラー"; +"Tap to cycle between success and failure" = "タップで成功と失敗を切り替え"; +"Progress UI — pill or off only." = "進捗UIです。ピルまたはオフのみ選べます。"; +"Minimal" = "ミニマル"; +"Colorful" = "カラフル"; +"Glow" = "グロー"; +"Island" = "アイランド"; +"Top" = "上"; +"Bottom" = "下"; +"Custom pill" = "カスタムピル"; +"IG native toast" = "IGネイティブトースト"; +"Short" = "短い"; +"Normal" = "標準"; +"Long" = "長い"; +"Very long" = "非常に長い"; +"Downloads & saving" = "ダウンロードと保存"; +"Copy to clipboard" = "クリップボードにコピー"; +"Read receipts & seen" = "既読と閲覧"; +"Block, exclude & pin" = "ブロック・除外・ピン留め"; +"Stories & messages" = "ストーリーズとメッセージ"; +"Voice & audio" = "ボイスと音声"; +"Errors" = "エラー"; +"Download progress" = "ダウンロードの進捗"; +"Bulk download progress" = "一括ダウンロードの進捗"; +"Repost progress" = "リポストの進捗"; +"Copied post / reel URL" = "投稿/リールURLのコピー"; +"Copied comment text" = "コメントテキストのコピー"; +"Copied GIF link" = "GIFリンクをコピーしました"; +"Copied note text" = "ノートテキストのコピー"; +"Copied profile info" = "プロフィール情報のコピー"; +"Copied audio URL" = "音声URLのコピー"; +"Copied quality picker URL" = "画質ピッカーURLのコピー"; +"Copied unlocked password" = "解除したパスワードのコピー"; +"Copied description text" = "説明文のコピー"; +"DM seen / read receipts" = "DMの既読"; +"Story seen / read receipts" = "ストーリーの既読"; +"Someone read your message" = "メッセージが読まれました"; +"User blocked / unblocked" = "ユーザーのブロック/解除"; +"Chat added / removed from exclude" = "チャットの除外リスト追加/削除"; +"Story user added / removed from exclude" = "ストーリーユーザーの除外リスト追加/削除"; +"Share-sheet recipient pinned" = "共有シートの送信先ピン留め"; +"Unsent message detected" = "送信取り消しの検知"; +"Reaction removed detected" = "リアクションの取り消しを検知"; +"%lu messages unsent" = "%lu 件のメッセージが送信取り消しされました"; +"%lu reactions removed" = "%lu 件のリアクションが取り消されました"; +"%lu chats marked seen" = "%lu 件のチャットを既読にしました"; +"%lu stories marked seen" = "%lu 件のストーリーを既読にしました"; +"%lu of your messages read" = "あなたのメッセージが %lu 件読まれました"; +"%lu notifications" = "%lu 件の通知"; +"Live comments toggled" = "ライブコメントの切り替え"; +"Custom GIF sent" = "カスタムGIFの送信"; +"GIF favorited / unfavorited" = "GIFのお気に入り登録/解除"; +"Voice DM sent" = "ボイスDMの送信"; +"Audio extraction status" = "音声抽出の状態"; +"Profile Analyzer complete" = "プロフィールアナライザーの完了"; +"Profile Analyzer progress" = "プロフィールアナライザーの進捗"; +"Media extraction failed" = "メディア抽出の失敗"; +"Permission denied" = "権限がありません"; +"Validation error" = "検証エラー"; +"Network / API error" = "ネットワーク/APIエラー"; +"Action error fallback" = "アクションエラーのフォールバック"; +"Unlock failed" = "ロック解除に失敗しました"; +"Chat locked / unlocked" = "チャットのロック/解除"; +"Invalid clipboard link" = "無効なクリップボードリンク"; +"Experimental flag warning" = "実験的フラグの警告"; +"Settings action confirmed" = "設定アクションの確認"; +"Cache clearing progress" = "キャッシュ消去の進捗"; +"Backup export / import" = "バックアップのエクスポート/インポート"; +"Other / uncategorized" = "その他/未分類"; +"Comment copied" = "コメントをコピーしました"; +"FFmpeg log copied" = "FFmpegログをコピーしました"; +"GIF inserted" = "GIFを挿入しました"; +"Story marked as seen" = "ストーリーを既読にしました"; +"Saved" = "保存しました"; +"Tap to retry" = "タップして再試行"; +"Looks great" = "いい感じです"; +"Something broke" = "問題が発生しました"; +"Just so you know" = "お知らせ"; +"Success preview" = "成功のプレビュー"; +"Error preview" = "エラーのプレビュー"; +"Warning preview" = "警告のプレビュー"; +"Info preview" = "情報のプレビュー"; +"Preview download…" = "ダウンロードをプレビュー…"; +"Colors" = "カラー"; +"+ Add new language" = "+ 新しい言語を追加"; +"Each chat can override this in the list" = "各チャットはリスト内でこの設定を個別に上書きできます"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "オンにすると、Instagramの位置情報リクエストが、選択した偽の位置を返します。マップボタンは、友達マップ内にクイックショートカットを追加します。"; +"Tap a preset to make it active. Swipe left to delete." = "プリセットをタップすると有効になります。左にスワイプすると削除できます。"; +"Override Instagram location reads." = "Instagramの位置情報の取得を上書きします。"; +"Show the quick button in Friends Map." = "友達マップにクイックボタンを表示します。"; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "絶対的な日付の書き方を選びます。「デフォルト」はIG本来の形式をそのまま使います。カスタム形式をスワイプすると、編集または削除できます。"; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "しきい値より新しい日付は相対表示になります。それより古い日付は絶対表示に戻ります。「日付と組み合わせる」を選ぶと両方表示されます — 「2026年1月5日 (2時間)」または「2時間 – 2026年1月5日」。"; +"Compact style" = "コンパクト表示"; +"Example: “1h” instead of “1 hour ago”" = "例: 「1時間前」ではなく「1時間」"; +"Example: “Jan 5, 2026 (2h)”" = "例: 「2026年1月5日 (2時間)」"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "iOSの音声APIでこのファイルを処理できませんでした%@%@\n\nこのままInstagramに送信を試すか、サポートのIssueを作成してください。"; +"Combine with date" = "日付と組み合わせる"; +"Absolute then relative" = "絶対表示のあとに相対表示"; +"Relative – absolute" = "相対 – 絶対"; +"Relative when young, absolute when older." = "新しいときは相対表示、古いときは絶対表示にします。"; +"Example: “2h – Jan 5, 2026”" = "例: 「2時間 – 2026年1月5日」"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "アプリを離れている間に送信取り消しされた1回表示メディアを取得します。⚠️ バッテリーを消耗する場合があります"; +"Disappearing (view-once) media" = "消えるメディア(1回表示)"; +"Disappearing media expired before it could be saved" = "消えるメディアは保存する前に期限切れになりました"; +"Disappearing media — gone before it could be saved" = "消えるメディア — 保存する前に消えました"; +"Disappearing only" = "消えるメディアのみ"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Instagramをバックグラウンドで動作させ続けることで、アプリを開いていない間に送信取り消しされた消えるメディアを取得できるようにします。\n\n主に1回表示メディアに有効です。通常の写真/動画は、これがなくても復元できる場合がほとんどです。⚠️ バッテリーを大きく消耗することがあり、AppスイッチャーからInstagramを強制終了すると何も取得できません。\n\n有効にしますか?"; +"Keep Instagram active in background" = "Instagramをバックグラウンドで動作させ続ける"; +"Media couldn’t be downloaded — the link expired" = "メディアをダウンロードできませんでした — リンクが期限切れです"; +"Media wasn’t available to save" = "保存できるメディアがありませんでした"; +"Retrying download…" = "ダウンロードを再試行中…"; +"Try to download again" = "もう一度ダウンロードを試す"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "既読のログ"; +"Date" = "日時"; +"Reads" = "既読回数"; +"Person" = "相手"; +"Chat" = "チャット"; +"%@ · on @%@" = "%@ · @%@ に対して"; +"%lu read · %@" = "%lu 件既読 · %@"; +"%lu reads · %@" = "%lu 件既読 · %@"; +"%lu reads · %lu reader · %@" = "%lu 件既読 · %lu 人 · %@"; +"%lu reads · %lu readers · %@" = "%lu 件既読 · %lu 人 · %@"; +"Clear all" = "すべて消去"; +"Clear all records" = "すべての記録を消去"; +"Detects when others read your messages and notifies you" = "他のユーザーがあなたのメッセージを読んだことを検知して通知します"; +"Ignored people & chats" = "無視した相手/チャット"; +"Ignored" = "無視中"; +"Log group chats" = "グループチャットを記録"; +"Most reads" = "既読が多い順"; +"Notifies and records when someone reads a message you sent" = "誰かがあなたの送ったメッセージを読んだとき、通知して記録します"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "無視しているものはありません。ログ内の相手を長押しすると、その相手の記録を停止できます。"; +"Nothing matches your filters." = "条件に一致するものがありません。"; +"Read %@ · %@" = "既読 %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "既読をこのデバイスに記録します。オフにすると通知のみで、何も保存されません"; +"Resume logging" = "記録を再開"; +"Search by username" = "ユーザーネームで検索"; +"Stop logging %@" = "%@ の記録を停止"; +"Delete records" = "記録を削除"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "有効にすると、誰かがあなたのメッセージを読んだときに通知が届きます。トーストのみにするには「ログに保存」をオフにしてください。ログ内の相手を長押しすると、その相手の記録を停止できます。"; +"Swipe to remove. Removing resumes logging for that person or chat." = "スワイプで削除します。削除すると、その相手またはチャットの記録が再開されます。"; +"Updating names and photos" = "名前と写真を更新中"; +"Your message" = "あなたのメッセージ"; +"read your message in %@" = "%@ であなたのメッセージを読みました"; +"read your message" = "あなたのメッセージを読みました"; +"Also track reads in group chats. Off by default — groups can be noisy" = "グループチャットの既読も記録します。デフォルトはオフです。グループは通知が多くなりがちです"; +"Refreshing…" = "更新中…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "新しいフィンガープリントを生成"; +"New device fingerprint" = "新しいデバイスフィンガープリント"; +"Roll new ID" = "新しいIDを生成"; +"Roll + clear IG data" = "生成+IGデータを消去"; +"Generate fresh device identifiers" = "新しい端末識別子を生成"; +"Enter ID manually…" = "IDを手動で入力…"; +"Manual device ID" = "手動のデバイスID"; +"Paste or type the UUID this device should report." = "このデバイスが報告するUUIDを貼り付けるか入力してください。"; +"Device ID set" = "デバイスIDを設定しました"; +"New fingerprint ready" = "新しいフィンガープリントの準備ができました"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "新しい端末IDをクリーンな状態から適用するため、今すぐInstagramを再起動しますか?"; +"Copy current ID" = "現在のIDをコピー"; +"Revert to my real device ID" = "本来のデバイスIDに戻す"; +"Restore the original, stop masking" = "元の状態に戻し、マスクを停止します"; +"Spoofing off" = "偽装をオフにしました"; +"Relaunch now" = "今すぐ再起動"; +"Relaunch to apply" = "適用するには再起動"; +"Clear device & relaunch" = "デバイス情報を消去して再起動"; +"Clear device & relaunch?" = "デバイス情報を消去して再起動しますか?"; +"Clear & relaunch" = "消去して再起動"; +"Full reset to a brand-new device" = "まったく新しい端末に完全リセット"; +"Device ID" = "デバイスID"; +"Hide button until relaunch" = "再起動までボタンを非表示"; +"Device identity" = "デバイス識別情報"; +"Masked" = "マスク中"; +"Real" = "本来の状態"; +"Show button on login screen" = "ログイン画面にボタンを表示"; +"Floating Device ID button while signed out" = "サインアウト中に表示されるフローティングのデバイスIDボタン"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Instagramがこの端末を識別するために使う識別子(デバイスID、ファミリーデバイスID、ベンダーID、マシンID)をマスクします。変更は再起動後に適用されます。同じ設定はログイン画面にも表示されます。"; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "保存済みのログイン、Cookie、保存されたデバイス識別情報をすべて消去し、Instagramが新品のデバイスとして起動するよう再起動します。その後、再度サインインが必要です。"; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "新しいデバイスID、ファミリーデバイスID、ベンダーIDを生成し、マシンIDを消去して、Instagramが新しい端末として再登録されるようにします。または保存済みのログイン情報も消去して完全リセットします。"; +"Apple attestation" = "Apple 認証"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "InstagramのApple端末認証(DeviceCheckおよびApp Attest)をブロックします。これらはハードウェアに紐づいていて変更できないため、リセットしても端末を追跡し続けます。ブロックすると、Instagramにはこれらに対応していない端末として認識されます。マスクがオンのときのみ機能します。"; +"Block Apple device attestation" = "Apple端末認証をブロック"; +"Stop the hardware attestation that links the device" = "端末を紐づけるハードウェア認証を停止"; +"Block Apple attestation: %@" = "Apple認証をブロック: %@"; +"Attestation blocked" = "認証をブロックしました"; +"Attestation allowed" = "認証を許可しました"; +"Roll + clear, then sign in fresh" = "生成+消去して、新規にサインイン"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "フォローリクエスト"; +"Show follow requests" = "フォローリクエストを表示"; +"Check now" = "今すぐ確認"; +"Reset tracked data" = "追跡データをリセット"; +"Enable tracker" = "トラッカーを有効化"; +"Log requests and check outcomes" = "リクエストを記録し、結果を確認します"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "送受信したフォローリクエストを記録し、あなたが対応する前にリクエストを取り消した相手も捕捉します。すべてデバイス内で行われます。"; +"What to track" = "追跡する対象"; +"Requests I send" = "自分が送ったリクエスト"; +"To private accounts" = "非公開アカウントへのリクエスト"; +"Requests I receive" = "自分が受け取ったリクエスト"; +"From people who want to follow you" = "あなたをフォローしたい人からのリクエスト"; +"Background check" = "バックグラウンドでの確認"; +"Check interval" = "確認の間隔"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "アプリを開いている間に結果を確認する間隔です。起動時とリストを開いたときにも確認します。"; +"Off (manual only)" = "オフ(手動のみ)"; +"Every 15 minutes" = "15分ごと"; +"Every 30 minutes" = "30分ごと"; +"Every hour" = "1時間ごと"; +"Every 6 hours" = "6時間ごと"; +"My request accepted" = "自分のリクエストが承認された"; +"A private account accepted you" = "非公開アカウントがあなたを承認しました"; +"My request declined" = "自分のリクエストが拒否された"; +"No longer pending" = "保留状態が解消されました"; +"New request received" = "新しいリクエストを受け取った"; +"Someone asked to follow you" = "誰かがあなたをフォローしたいと申請しました"; +"Request withdrawn" = "リクエストが取り消された"; +"Someone cancelled their request" = "誰かがリクエストを取り消しました"; +"Sent by me" = "自分が送信"; +"Received" = "受信"; +"Sent" = "送信"; +"Accepted" = "承認済み"; +"Rejected" = "拒否済み"; +"Requested" = "リクエスト済み"; +"Approved" = "承認済み"; +"Withdrawn" = "取り消し済み"; +"No follow requests tracked yet" = "追跡中のフォローリクエストはまだありません"; +"Cancel requests" = "リクエストを取り消す"; +"Delete %lu record(s) from history?" = "履歴から %lu 件の記録を削除しますか?"; +"Cancel %lu pending request(s)?" = "保留中の %lu 件のリクエストを取り消しますか?"; +"Follow back %lu account(s)?" = "%lu 件のアカウントをフォローバックしますか?"; +"Clear all tracked follow requests?" = "追跡中のフォローリクエストをすべて消去しますか?"; +"Reset tracked follow requests for this account?" = "このアカウントの追跡中のフォローリクエストをリセットしますか?"; +"Enable the tracker first" = "先にトラッカーを有効にしてください"; +"Checking…" = "確認中…"; +"%ld request(s) updated" = "%ld 件のリクエストを更新しました"; +"No changes" = "変更なし"; +"Working…" = "処理中…"; +"Follow request accepted" = "フォローリクエストが承認されました"; +"%@ accepted your request" = "%@ があなたのリクエストを承認しました"; +"Follow request declined" = "フォローリクエストが拒否されました"; +"%@ is no longer pending" = "%@ は保留状態ではなくなりました"; +"New follow request" = "新しいフォローリクエスト"; +"%@ asked to follow you" = "%@ がフォローリクエストを申請しました"; +"Follow request withdrawn" = "フォローリクエストが取り消されました"; +"%@ withdrew their request" = "%@ がリクエストを取り消しました"; +"Follow requests log" = "フォローリクエストのログ"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Instagramの有料機能を解放"; +"Turn on Instagram's paid subscriber features inside the app." = "Instagramの有料サブスク機能をアプリ内でオンにします。"; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram PlusはInstagramの有料サブスクリプションです。これらのスイッチはアプリ内でその機能をオンにします。完全に動作するものもあります。その他はオプションを表示するだけで、コンテンツはInstagramのサーバーから読み込まれ実際のサブスクリプションが必要なため、空で表示されたり何も起きないことがあります。必要なものをオンにして「適用」をタップしてください。Instagramの起動に3回連続で失敗すると、これらのスイッチは自動でリセットされます。"; +"Turn everything on" = "すべてオンにする"; +"Turn everything off" = "すべてオフにする"; +"Every Instagram Plus feature turns off and Instagram restarts." = "すべてのInstagram Plus機能がオフになり、Instagramが再起動します。"; +"Story peek" = "ストーリーのプレビュー"; +"Hold a story in the tray to preview it without opening it." = "トレイのストーリーを長押しすると、開かずにプレビューできます。"; +"Story fonts" = "ストーリーのフォント"; +"Adds the subscriber fonts when you add text to a story." = "ストーリーにテキストを追加する際にサブスク限定フォントを追加します。"; +"Search story viewers" = "ストーリーの閲覧者を検索"; +"Search the list of people who viewed your story." = "ストーリーを閲覧した人の一覧を検索します。"; +"Viewer timestamps" = "閲覧のタイムスタンプ"; +"Shows when each person viewed your story." = "各人がいつストーリーを閲覧したかを表示します。"; +"Silent post to profile" = "プロフィールへ通知なし投稿"; +"Share to your profile without notifying your followers." = "フォロワーに通知せずにプロフィールへ投稿します。"; +"Silent post to highlights" = "ハイライトへ通知なし追加"; +"Add to a highlight without notifying your followers." = "フォロワーに通知せずにハイライトへ追加します。"; +"Story rewatch" = "ストーリーの再視聴"; +"Rewatch a story right after it finishes." = "ストーリーが終わった直後にもう一度視聴できます。"; +"Story extend" = "ストーリーの延長"; +"Keep your story up longer than 24 hours." = "ストーリーを24時間より長く公開し続けます。"; +"Story spotlight" = "ストーリーのスポットライト"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "ストーリーをより多くの閲覧者に届けます。Instagramから読み込むため、機能しないことがあります。"; +"Story super likes" = "ストーリーのスーパーいいね"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "ストーリーにスーパーいいねを送ります。Instagramから読み込むため、機能しないことがあります。"; +"Message peek" = "メッセージのプレビュー"; +"Hold a chat in the inbox to preview it." = "受信箱のチャットを長押しするとプレビューできます。"; +"Chat fonts" = "チャットのフォント"; +"Adds the subscriber fonts in direct messages." = "ダイレクトメッセージでサブスク限定フォントを追加します。"; +"Chat themes" = "チャットテーマ"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "プレミアムのチャットテーマを解放します。Instagram から読み込むため、動作しない場合があります。"; +"App icons" = "アプリアイコン"; +"Opens the alternate app icon picker." = "別のアプリアイコンの選択画面を開きます。"; +"Bio font" = "自己紹介のフォント"; +"Use a subscriber font for your bio." = "自己紹介にサブスク限定のフォントを使います。"; +"Custom story lists" = "カスタムストーリーリスト"; +"Make lists to pick exactly who sees a story." = "ストーリーを見せる相手をリストで細かく選べます。"; +"More pinned posts" = "固定投稿を追加"; +"Pin more posts to the top of your profile." = "プロフィール上部により多くの投稿を固定できます。"; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu 件の録画"; +"1 recording" = "1 件の録画"; +"30 days" = "30日"; +"7 days" = "7日"; +"90 days" = "90日"; +"Adds a record button to the call screen" = "通話画面に録画ボタンを追加します"; +"Also show recordings in the RyukGram gallery under Calls" = "RyukGram ギャラリーの「通話」にも録画を表示します"; +"Auto-delete old recordings" = "古い録画を自動削除"; +"Auto-record calls" = "通話を自動録画"; +"Auto-record ignore list" = "自動録画の除外リスト"; +"Auto-record ignored" = "自動録画を除外中"; +"Auto-record on" = "自動録画オン"; +"Block mute signal" = "ミュート通知をブロック"; +"Both sides" = "両方"; +"Browse saved calls, grouped by person" = "保存した通話を相手ごとにまとめて表示します"; +"Call" = "通話"; +"Call recorded" = "通話を録画しました"; +"Call recording" = "通話録画"; +"Call recordings" = "通話録画"; +"Camera position" = "カメラの位置"; +"Can't play" = "再生できません"; +"Can't record" = "録画できません"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "自動録画から除外するチャット — 通話中に録画ボタンを長押しして追加します"; +"Could not save the recording." = "録画を保存できませんでした。"; +"Could not start the recorder." = "録画を開始できませんでした。"; +"Delete all" = "すべて削除"; +"Delete all recordings" = "すべての録画を削除"; +"Delete all recordings?" = "すべての録画を削除しますか?"; +"Drag the overlay where you want it" = "オーバーレイを好きな位置にドラッグします"; +"Drag your camera window to any corner or edge." = "カメラウィンドウを任意の角や端にドラッグできます。"; +"Enable call recording" = "通話録画を有効にする"; +"Export all" = "すべて書き出す"; +"Full screen" = "全画面"; +"Group call" = "グループ通話"; +"Ignore auto-record for this chat" = "このチャットを自動録画から除外"; +"Ignored chats aren't auto-recorded. You can still record manually." = "除外したチャットは自動録画されません。手動での録画は可能です。"; +"Include my camera" = "自分のカメラを含める"; +"Keep forever" = "無期限で保持"; +"Large" = "大"; +"Mute without the other side seeing you muted — your mic is still silenced" = "相手に気づかれずにミュートします — マイクは無音のままです"; +"Muted silently" = "気づかれずにミュート中"; +"My camera size" = "自分のカメラのサイズ"; +"No call audio was captured." = "通話音声が取得できませんでした。"; +"No ignored chats. Long-press the record button in a call to ignore it." = "除外中のチャットはありません。通話中に録画ボタンを長押しして除外します。"; +"No recordings" = "録画はありません"; +"Off records audio only, even on video calls" = "オフの場合、ビデオ通話でも音声のみを録画します"; +"Only me" = "自分のみ"; +"Only them" = "相手のみ"; +"Open recordings" = "録画を開く"; +"Overlay your camera as a small window on video-call recordings" = "ビデオ通話の録画に自分のカメラを小窓で重ねます"; +"Overlay your camera on the recording" = "録画に自分のカメラを重ねる"; +"Record audio from" = "音声の録音対象"; +"Record video on video calls" = "ビデオ通話で映像を録画"; +"Record voice and video calls, browse them later" = "音声通話やビデオ通話を録画して、あとで見返せます"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "録画した通話はこの端末にのみ保存されます。録画中はステータスバーに赤い表示が出ます。"; +"Recorded calls will appear here." = "録画した通話がここに表示されます。"; +"Recording call" = "通話を録画中"; +"Recording count" = "録画数"; +"Recording failed" = "録画に失敗しました"; +"Recording name" = "録画名"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "相手(通話音声)と自分のマイクを録音します。録画中はステータスバーに赤い表示が出ます。録画はこの端末にのみ保存されます。"; +"Remove from ignore list" = "除外リストから削除"; +"Remove recordings older than the chosen age" = "選んだ期間より古い録画を削除します"; +"Rename recording" = "録画名を変更"; +"Search calls" = "通話を検索"; +"Set a custom name for this chat's recordings." = "このチャットの録画にカスタム名を設定します。"; +"Size of the overlay window" = "オーバーレイウィンドウのサイズ"; +"Small" = "小"; +"Starts recording automatically when a call opens" = "通話が始まると自動的に録画を開始します"; +"Sync to gallery" = "ギャラリーに同期"; +"The recording file is missing." = "録画ファイルが見つかりません。"; +"Them" = "相手"; +"Them (full screen)" = "相手(全画面)"; +"This permanently removes every saved call recording for this account." = "このアカウントで保存したすべての通話録画を完全に削除します。"; +"Unknown chat" = "不明なチャット"; +"Unmuted" = "ミュート解除"; +"Which camera fills the frame" = "画面いっぱいに映すカメラ"; +"Which side's voice to capture" = "録音する側の音声"; +"You" = "自分"; +"You (full screen)" = "自分(全画面)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "自分のカメラを取り込んで録画に重ねます。どちらを全画面にするか、オーバーレイのサイズを選び、任意の角にドラッグできます。"; +"Prompt before the call recordings open" = "通話録画を開く前に確認する"; +"Prompt before the activity log opens" = "アクティビティログを開く前に確認する"; +"Mark all as read" = "すべて既読にする"; +"Delete %lu chats?" = "%lu 件のチャットを削除しますか?"; +"This permanently removes their recordings." = "その録画を完全に削除します。"; + +"Stories archive" = "ストーリーアーカイブ"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "リアクション"; +"Reacted first" = "リアクション順"; +"Mutual" = "相互フォロー"; +"Viewers" = "閲覧者"; +"1 viewer" = "閲覧者1人"; +"View viewers" = "閲覧者を表示"; +"%lu views" = "%lu回の閲覧"; +"%ld likes" = "%ld件のいいね"; +"0 views" = "閲覧0回"; +"1 like" = "いいね1件"; +"1 view" = "閲覧1回"; +"Photos" = "写真"; +"Oldest" = "古い順"; +"Most viewed" = "閲覧数順"; +"Most reacted" = "リアクション数順"; +"Open archive" = "アーカイブを開く"; +"Archive settings" = "アーカイブの設定"; +"Archiving" = "アーカイブ"; +"Enable stories archive" = "ストーリーズアーカイブを有効にする"; +"Save your stories before they expire" = "ストーリーズが消える前に保存"; +"Saves each story you post, with its photo or video, kept separately for each account." = "投稿した各ストーリーを写真や動画ごと保存し、アカウントごとに分けて保管します。"; +"Save and update viewers" = "閲覧者を保存・更新"; +"Keep each story's viewers and likers, refreshed to the final list" = "各ストーリーの閲覧者といいねした人を保存し、最終的なリストに更新します"; +"Update viewers" = "閲覧者を更新"; +"How often to refresh viewers for stories still live" = "公開中のストーリーの閲覧者を更新する頻度"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "ストーリーの閲覧者リストは丸1日増え続け、Instagramはさらにもう1日表示します。自動更新はストーリーが1日経過した時点で最終リストを取得するため、保存する数値が完全になります。"; +"Notify me about pinned viewers" = "固定した閲覧者を通知"; +"A heads-up when a pinned viewer sees or likes your story" = "固定した閲覧者があなたのストーリーを見たり、いいねしたときに通知します"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "固定した閲覧者があなたのストーリーを見たり、いいねしたときに通知を受け取ります。閲覧者の固定やリストの管理は閲覧者設定から行えます。"; +"Viewer list & pins" = "閲覧者リストと固定"; +"Turn on the viewer list and manage pinned viewers" = "閲覧者リストを有効にして固定した閲覧者を管理"; +"Turn on a custom viewer list to pin, search and sort viewers" = "カスタム閲覧者リストを有効にして、閲覧者の固定・検索・並べ替えができます"; +"Tick several to combine them." = "複数選択すると組み合わせられます。"; +"Select stories" = "ストーリーズを選択"; +"No archived stories yet. Post a story and it appears here." = "アーカイブされたストーリーズはまだありません。ストーリーを投稿するとここに表示されます。"; +"Archiving is off. Enable it in the archive settings, then post a story." = "アーカイブがオフです。アーカイブの設定で有効にしてから、ストーリーを投稿してください。"; +"Delete story?" = "ストーリーを削除しますか?"; +"This removes the archived photo or video and its viewers." = "アーカイブされた写真や動画とその閲覧者が削除されます。"; +"Delete all stories?" = "すべてのストーリーズを削除しますか?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "このアカウントのアーカイブされたすべてのストーリーとその閲覧者を削除します。この操作は元に戻せません。"; +"Delete %lu archived stories and their viewers?" = "アーカイブされた%lu件のストーリーとその閲覧者を削除しますか?"; +"Pinned viewer saw your story" = "固定した閲覧者があなたのストーリーを見ました"; +"Pinned viewer liked your story" = "固定した閲覧者があなたのストーリーにいいねしました"; +"Pinned viewer reacted to your story" = "固定した閲覧者があなたのストーリーにリアクションしました"; +"Pinned viewers on your story" = "あなたのストーリーの固定した閲覧者"; +"%lu pinned viewers just saw, liked or reacted" = "%lu人の固定した閲覧者が閲覧・いいね・リアクションしました"; +"A pinned viewer" = "固定した閲覧者"; +"On each launch" = "起動ごと"; diff --git a/src/Localization/Resources/ko.lproj/Localizable.strings b/src/Localization/Resources/ko.lproj/Localizable.strings new file mode 100644 index 0000000..e90bbbf --- /dev/null +++ b/src/Localization/Resources/ko.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "향후: 프로필 페이지 우측 상단의 3선 메뉴를 길게 눌러 RyukGram 설정을 다시 열 수 있습니다."; +"settings.firstrun.ok" = "이해했습니다!"; +"settings.firstrun.title" = "RyukGram 설정 정보"; +"settings.language.english_only" = "RyukGram은 현재 영어만 기본 제공합니다. 다른 언어는 번역을 기다리고 있습니다 — README의 짧은 가이드를 따라 한국어 번역에 참여해 보세요."; +"settings.language.help_translate" = "번역 돕기"; +"settings.language.system" = "시스템 기본값"; +"settings.language.title" = "언어"; +"settings.language.restart.message" = "설정이 업데이트되었습니다. 앱의 다른 곳에 있는 메뉴, 버튼, 토스트에도 새 언어가 반영되도록 Instagram을 재시작하세요."; +"settings.language.restart.title" = "전체에 적용하려면 재시작하세요"; +"settings.language.available" = "사용 가능"; +"settings.results.many" = "%lu개의 결과"; +"settings.results.one" = "%lu개의 결과"; +"settings.search.placeholder" = "설정 검색"; +"settings.title" = "RyukGram 설정"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "동작 버튼 아이콘"; +"Adds a copy option to the comment long-press menu" = "댓글을 길게 누를 때 복사 옵션을 추가합니다"; +"Adds a download button next to share/save on the reels audio page" = "릴스 오디오 페이지의 공유/저장 옆에 다운로드 버튼을 추가합니다"; +"Adds download, copy and expand options to GIF and image comments" = "GIF 및 이미지 댓글에 다운로드, 복사, 확대 옵션을 추가합니다"; +"Allow video in photo sticker" = "사진 스티커에서 동영상 허용"; +"Alternate icons are not supported" = "대체 아이콘이 지원되지 않습니다"; +"Anonymous live viewing" = "익명 라이브 시청"; +"App Icon" = "앱 아이콘"; +"Audio page" = "오디오 페이지"; +"Auto-reveals sensitive media" = "민감한 콘텐츠를 자동으로 표시합니다"; +"Block surveys" = "설문조사 차단"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "시청자 수 하트비트를 차단하여 방송자가 당신을 보지 못하게 합니다 — 당신도 시청자 수를 볼 수 없습니다"; +"Browser" = "브라우저"; +"Change the app icon from the bundled icons" = "기본 제공 아이콘으로 앱 아이콘 변경"; +"Choose Icon" = "아이콘 선택"; +"Choose which surfaces hide ads" = "광고를 숨길 화면을 선택합니다"; +"Comments" = "댓글"; +"Commerce carousels in comments and shoppable CTAs on reels" = "댓글의 쇼핑 캐러셀과 릴스의 쇼핑 CTA"; +"Copy comment text" = "댓글 텍스트 복사"; +"Copy description" = "설명 복사"; +"Long press a caption to copy its text" = "캡션을 길게 눌러 텍스트 복사"; +"Custom sticker colors" = "스티커 사용자 지정 색상"; +"Custom colors aren't supported for this sticker" = "이 스티커는 사용자 지정 색상을 지원하지 않습니다"; +"Date format" = "날짜 형식"; +"Disable app haptics" = "앱 햅틱 비활성화"; +"Disables haptics/vibrations within the app" = "앱 내의 햅틱/진동을 비활성화합니다"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "기본적으로 리퀴드 글래스가 활성화된 계정에서 비활성화합니다. 위 옵션보다 우선 적용됩니다"; +"Do not save recent searches" = "최근 검색어 저장 안 함"; +"Download GIF & image comments" = "GIF 및 이미지 댓글 다운로드"; +"Download image" = "이미지 다운로드"; +"Embed domain" = "임베드 도메인"; +"Embed domain: %@" = "임베드 도메인: %@"; +"Enable liquid glass buttons" = "리퀴드 글래스 버튼 활성화"; +"Enable liquid glass surfaces" = "리퀴드 글래스 표면 활성화"; +"Enable teen app icons" = "틴(Teen) 앱 아이콘 활성화"; +"Enables experimental liquid glass buttons" = "실험적인 리퀴드 글래스 버튼을 활성화합니다"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "리퀴드 글래스 탭 바, 플로팅 내비게이션 및 기타 UI 요소를 활성화합니다"; +"End" = "끝"; +"Experimental features" = "실험실 기능"; +"Explore & search" = "탐색 및 검색"; +"Failed to change icon" = "아이콘 변경 실패"; +"Fixed" = "고정"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "고정은 축소를 방지합니다. 숨기기는 아래로 스크롤할 때 사라지게 합니다"; +"Focus/distractions" = "집중/방해 요소"; +"Force liquid glass off" = "리퀴드 글래스 강제 비활성화"; +"Force progressive blur" = "점진적 블러 강제 표시"; +"General" = "일반"; +"Gradient color" = "그라데이션 색상"; +"Hide ads" = "광고 숨기기"; +"Hide explore posts grid" = "탐색 탭 게시물 그리드 숨기기"; +"Hide friends map" = "친구 지도 숨기기"; +"Hide Meta AI" = "Meta AI 숨기기"; +"Hide metrics" = "수치 숨기기"; +"Hide notes tray" = "노트 트레이 숨기기"; +"Hide on scroll" = "스크롤 시 숨기기"; +"Hide TestFlight popup" = "TestFlight 팝업 숨기기"; +"Hide trending searches" = "인기 검색어 숨기기"; +"Hide UI on capture" = "캡처 시 UI 숨기기"; +"Removes suggested accounts to follow outside the feed" = "피드 밖의 추천 팔로우 계정을 제거"; +"Hides like/comment/share counts on posts and reels" = "게시물 및 릴스의 좋아요/댓글/공유 횟수를 숨깁니다"; +"Removes the friends map icon from the notes tray" = "노트 트레이에서 친구 지도 아이콘을 제거"; +"Removes the suggested posts grid on the explore tab" = "탐색 탭의 추천 게시물 그리드를 제거"; +"Strips the Meta AI buttons and entry points from the app" = "앱에서 Meta AI 버튼과 진입점을 제거"; +"Hides the notes tray in the DM inbox" = "DM 받은 편지함에서 노트 트레이를 숨깁니다"; +"Removes suggested broadcast channels from your inbox" = "받은 메시지함에서 추천 방송 채널을 제거"; +"Hide DM search suggestions" = "메시지 검색 추천 숨기기"; +"Removes suggested accounts and channels from direct message search" = "다이렉트 메시지 검색에서 추천 계정과 채널을 제거합니다"; +"Removes trending searches under the explore search bar" = "탐색 검색창 아래의 인기 검색어를 제거"; +"Hold down on the Instagram logo to change the app icon" = "Instagram 로고를 길게 눌러 앱 아이콘을 변경합니다"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "iOS 26의 스크롤 가장자리 블러가 사라지지 않고 계속 표시되도록 유지합니다"; +"Lets the photo sticker picker show videos too, not just photos" = "사진 스티커 선택기에서 사진뿐 아니라 동영상도 표시하도록 합니다"; +"Liquid glass tab bar" = "리퀴드 글래스 탭 바"; +"Live" = "라이브"; +"Hold the eyedropper in stories to pick an exact text color" = "스토리에서 스포이드를 길게 눌러 정확한 텍스트 색상을 선택"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "스티커 편집기에서 색상 휠을 길게 눌러 원하는 단색 또는 그라데이션 색상을 선택하세요"; +"Long-press the heart button in a live to hide or show the comments" = "라이브 중 하트 버튼을 길게 눌러 댓글을 숨기거나 표시"; +"Long-press the search tab to open a copied Instagram link" = "검색 탭을 길게 눌러 복사한 Instagram 링크 열기"; +"Master switch. When off, all per-surface toggles below are ignored." = "마스터 스위치. 끄면 아래의 화면별 토글이 모두 무시됩니다."; +"No suggested chats" = "추천 채팅 없음"; +"No suggested users" = "추천 사용자 없음"; +"Notes" = "노트"; +"Open app icon picker" = "앱 아이콘 선택기 열기"; +"Open link from clipboard" = "클립보드에서 링크 열기"; +"Open links in external browser" = "외부 브라우저에서 링크 열기"; +"Opens links in Safari instead of Instagram's in-app browser" = "Instagram 인앱 브라우저 대신 Safari에서 링크를 엽니다"; +"Privacy" = "개인정보"; +"Removes ads across enabled surfaces" = "활성화된 화면 전반에서 광고를 제거합니다"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "공유 링크에서 igsh, utm_source 및 기타 추적 매개변수를 제거합니다"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "URL에서 Instagram 추적 래퍼(l.instagram.com) 및 UTM/fbclid 매개변수를 제거합니다"; +"Replace domain in shared links" = "공유 링크의 도메인 교체"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "IG의 상대적 타임스탬프(\"3일 전\")를 사용자 지정 형식으로 바꿉니다. 선택기 내에서 적용할 영역을 전환하세요."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "복사/공유된 링크를 재작성하여 Discord, Telegram 등에서 미리보기가 잘 되는 도메인을 사용합니다."; +"Stops search bars from saving your recent searches" = "검색창이 최근 검색어를 저장하지 않게 함"; +"Selected" = "선택됨"; +"Sharing" = "공유"; +"Shopping" = "쇼핑"; +"Skip sensitive content covers" = "민감한 콘텐츠 가림 건너뛰기"; +"Solid color" = "단색"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "메인, 맥락, 동영상, 연결 피드의 스폰서 게시물"; +"Sponsored posts on the explore grid" = "탐색 그리드의 스폰서 게시물"; +"Stops Instagram's in-app surveys and feedback prompts" = "Instagram 앱 내 설문조사와 피드백 요청을 차단합니다"; +"Sponsored reels in the sundial feed" = "선다이얼 피드의 스폰서 릴스"; +"Start" = "시작"; +"Story ads and sponsored entries in the story tray" = "스토리 트레이의 스토리 광고 및 스폰서 항목"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "검색 및 탐색의 게시물과 릴스에 통계 배지를 표시합니다. 카드 정보를 열어 표시할 통계를 선택하고 순서를 바꾼 뒤 적용하세요."; +"Strip tracking from links" = "링크에서 추적 제거"; +"Strip tracking params" = "추적 매개변수 제거"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "\"It's time to update Instagram Beta\" 알림을 차단"; +"Tap to apply" = "탭하여 적용"; +"The selected icon will be saved and shown here the next time you open this page." = "선택한 아이콘은 저장되며 다음에 이 페이지를 열 때 여기에 표시됩니다."; +"Toggle live comments" = "라이브 댓글 전환"; +"Use detailed color picker" = "상세 색상 선택기 사용"; +"Used across feed, stories, reels, and DMs." = "피드, 스토리, 릴스, DM 전체에서 사용됩니다"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld일 전"; +"%ld days ago" = "%ld일 전"; +"%ld hour ago" = "%ld시간 전"; +"%ld hours ago" = "%ld시간 전"; +"%ld minute ago" = "%ld분 전"; +"%ld minutes ago" = "%ld분 전"; +"%ld week ago" = "%ld주 전"; +"%ld weeks ago" = "%ld주 전"; +"%ldd" = "%ld일"; +"%ldh" = "%ld시간"; +"%ldm" = "%ld분"; +"%ldw" = "%ld주"; +"Always ask" = "항상 묻기"; +"Balanced" = "균형"; +"Block all" = "모두 차단"; +"Block selected" = "선택 차단"; +"Button" = "버튼"; +"Date format — %@" = "날짜 형식 — %@"; +"Default" = "기본값"; +"Disabled" = "비활성화됨"; +"Download and share" = "다운로드 및 공유"; +"Download to Photos" = "사진 앱에 다운로드"; +"Save with music" = "음악과 함께 저장"; +"Gallery with music" = "음악과 함께 갤러리에"; +"Save image (no music)" = "이미지 저장 (음악 없음)"; +"Gallery image (no music)" = "이미지 갤러리에 (음악 없음)"; +"Photo with music" = "음악이 있는 사진"; +"Enabled" = "활성화됨"; +"Expand" = "확장"; +"Explore" = "탐색"; +"Fast" = "빠름"; +"Feed" = "피드"; +"Feed posts" = "피드 게시물"; +"High" = "높음"; +"Inbox" = "받은 편지함"; +"just now" = "방금 전"; +"Low" = "낮음"; +"Max" = "최대"; +"Medium" = "보통"; +"Mute/Unmute" = "음소거/해제"; +"Notes, comments, stories" = "노트, 댓글, 스토리"; +"now" = "방금"; +"Open menu" = "메뉴 열기"; +"Pause/Play" = "일시정지/재생"; +"Profile" = "프로필"; +"Quality" = "품질"; +"Reels" = "릴스"; +"Requires restart" = "재시작 필요"; +"Save to Photos" = "사진 앱에 저장"; +"Share sheet" = "공유 시트"; +"Standard" = "표준"; +"Toggle" = "토글"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "그리드 피드"; +"Browse your home feed as a grid of posts" = "홈 피드를 게시물 그리드로 탐색합니다"; +"Hide stories in grid" = "그리드에서 스토리 숨기기"; +"Taller cells" = "더 긴 셀"; +"Portrait tiles instead of squares" = "정사각형 대신 세로 타일"; +"Open post" = "게시물 열기"; +"View profile" = "프로필 보기"; +"Like" = "좋아요"; +"Liked" = "좋아요 표시됨"; +"Unlike" = "좋아요 취소"; +"Unliked" = "좋아요가 취소됨"; +"Followed" = "팔로우함"; +"Unfollowed" = "팔로우 취소됨"; +"Couldn't update like" = "좋아요를 업데이트하지 못했습니다"; +"Couldn't update follow" = "팔로우를 업데이트하지 못했습니다"; +"Follow status" = "팔로우 상태"; +"Shares" = "공유"; +"Relative" = "상대적"; +"Date and time" = "날짜 및 시간"; +"You're all caught up" = "모두 확인했습니다"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "홈 피드를 게시물 그리드로 바꿉니다. 인스타그램 피드로 전환해도 기능은 켜진 채로 피드를 바로 돌려줍니다. 손가락을 오므려 열 수를 바꾸고, 게시물을 탭하면 열립니다. 추천 / 팔로잉 전환은 메인 피드와 동기화됩니다."; +"Switch button" = "전환 버튼"; +"Hold the heart button" = "하트 버튼 길게 누르기"; +"Floating button" = "플로팅 버튼"; +"How to switch" = "전환 방법"; +"Hold the heart in Instagram's header" = "인스타그램 헤더의 하트를 길게 누르기"; +"A small round button on the feed" = "피드 위의 작고 둥근 버튼"; +"Button position" = "버튼 위치"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "버튼을 원하는 곳으로 드래그하세요. 어두운 띠는 인스타그램의 헤더와 탭 바입니다."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "그리드를 끄지 않고 그리드와 인스타그램 피드를 전환합니다. 끄면 홈 바 단축키만 남습니다."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "버튼은 헤더나 탭 바 아래에 놓이지 않습니다. 피드에서 길게 누르면 여기로 돌아옵니다."; +"Live preview" = "실시간 미리보기"; +"Columns" = "열"; +"Post info" = "게시물 정보"; +"Reorder and toggle stats on each tile" = "각 타일의 통계를 재정렬하고 전환합니다"; +"Info on each post" = "각 게시물의 정보"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "각 항목을 켜거나 끕니다. ≡ 핸들을 드래그하여 타일에 쌓이는 순서를 변경하세요."; +"Show avatar" = "아바타 표시"; +"Media type badge" = "미디어 유형 배지"; +"Restores the default post info, order and options for the grid feed." = "그리드 피드의 기본 게시물 정보, 순서, 옵션을 복원합니다."; +"Views" = "조회수"; +"Action button" = "작업 버튼"; +"Adds 'Profile picture' to story tray long-press menus" = "스토리 트레이를 길게 누를 때의 메뉴에 '프로필 사진'을 추가합니다"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "각 피드 게시물 아래에 다운로드/공유/복사/확장/리포스트 항목이 있는 RyukGram 작업 버튼을 추가합니다. 탭하면 기본적으로 메뉴가 열립니다. 아래에서 탭 동작을 변경하세요."; +"Choose Instagram's default feed or force the Following feed" = "Instagram의 기본 피드를 사용하거나 팔로잉 피드를 강제합니다"; +"Main feed" = "메인 피드"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "피드 새로고침 시점과 방법을 제어합니다. 백그라운드 새로고침은 약 10분 후 앱으로 돌아올 때 발생합니다. 홈 버튼 새로고침은 이미 홈 탭에 있을 때 홈 탭을 탭하면 발생합니다."; +"Confirm feed refresh" = "피드 새로고침 확인"; +"Shows an alert before a pull-to-refresh reloads the feed" = "당겨서 새로고침이 피드를 다시 불러오기 전에 경고를 표시합니다"; +"Refresh stories only" = "스토리만 새로고침"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "당겨서 새로고침하면 피드는 그대로 두고 스토리 트레이만 다시 불러옵니다"; +"Refresh feed?" = "피드를 새로고침하시겠습니까?"; +"Default tap action" = "기본 탭 작업"; +"Disable background refresh" = "백그라운드 새로고침 비활성화"; +"Disable home button refresh" = "홈 버튼 새로고침 비활성화"; +"Disable home button scroll" = "홈 버튼 스크롤 비활성화"; +"Disable video autoplay" = "동영상 자동 재생 비활성화"; +"Hide" = "숨기기"; +"Hide entire feed" = "전체 피드 숨기기"; +"Hide repost button" = "리포스트 버튼 숨기기"; +"Hide stories tray" = "스토리 트레이 숨기기"; +"Hide suggested stories" = "추천 스토리 숨기기"; +"Hide story highlights" = "스토리 하이라이트 숨기기"; +"Removes resurfaced highlights from the stories tray in feed" = "피드 스토리 트레이에 다시 표시되는 하이라이트를 제거합니다"; +"Hides suggested accounts" = "추천 계정 숨기기"; +"Hides suggested reels" = "추천 릴스 숨기기"; +"Hides suggested threads posts" = "추천 스레드 게시물 숨기기"; +"Hides the repost button on feed posts" = "피드 게시물에서 리포스트 버튼을 숨깁니다"; +"Hides the story tray at the top" = "상단의 스토리 트레이를 숨깁니다"; +"Inserts a button row below like/comment/share on each post" = "각 게시물의 좋아요/댓글/공유 아래에 버튼 행을 삽입합니다"; +"Long press on media to expand in full-screen viewer" = "미디어를 길게 눌러 전체 화면 뷰어로 확대합니다"; +"Start media muted" = "음소거로 미디어 시작"; +"Expanded videos open with sound off" = "확대된 동영상이 소리 꺼진 상태로 열립니다"; +"Enhanced media resolution" = "향상된 미디어 해상도"; +"Media saving" = "미디어 저장"; +"Spoof device profile so IG serves higher-quality images" = "기기 프로파일을 위조하여 IG가 고품질 이미지를 제공하도록 합니다"; +"Media" = "미디어"; +"Media zoom" = "미디어 확대"; +"No suggested for you" = "회원님을 위한 추천 없음"; +"No suggested posts" = "추천 게시물 없음"; +"No suggested reels" = "추천 릴스 없음"; +"No suggested threads" = "추천 스레드 없음"; +"Prevents feed from reloading when returning from background" = "백그라운드에서 돌아올 때 피드가 다시 로드되는 것을 방지합니다"; +"Prevents videos from playing automatically" = "동영상이 자동으로 재생되는 것을 방지합니다"; +"Refresh" = "새로고침"; +"Removes all content from your home feed" = "홈 피드에서 모든 콘텐츠를 제거합니다"; +"Removes suggested accounts from the stories tray" = "스토리 트레이에서 추천 계정을 제거합니다"; +"Removes suggested posts" = "추천 게시물을 제거합니다"; +"Scroll to top without refreshing when tapping Home" = "홈을 탭할 때 새로고침하지 않고 맨 위로 스크롤합니다"; +"Show action button" = "작업 버튼 표시"; +"Show date" = "날짜 표시"; +"Stories tray" = "스토리 트레이"; +"Tapping Home does nothing when already on feed" = "이미 피드에 있을 때 홈을 탭해도 아무 작업도 수행하지 않습니다"; +"Tray long-press actions" = "트레이 길게 누르기 작업"; +"Composer doesn't accept GIFs" = "댓글 입력기가 GIF를 지원하지 않습니다"; +"Copy GIF link" = "GIF 링크 복사"; +"Copy image link" = "이미지 링크 복사"; +"Custom GIF in comments" = "댓글에서 사용자 지정 GIF"; +"Favorite GIFs" = "즐겨찾는 GIF"; +"Long-press a GIF in the picker to pin it — favorites show first" = "선택기에서 GIF를 길게 눌러 고정하세요 — 즐겨찾기가 먼저 표시됩니다"; +"Added to favorites" = "즐겨찾기에 추가됨"; +"Removed from favorites" = "즐겨찾기에서 제거됨"; +"Favorite GIF unavailable" = "즐겨찾는 GIF를 사용할 수 없음"; +"This GIF may have been removed. Long-press it to unfavorite." = "이 GIF가 삭제되었을 수 있습니다. 길게 눌러 즐겨찾기에서 제거하세요."; +"Failed to build GIF model" = "GIF 모델 생성 실패"; +"GIF link copied" = "GIF 링크가 복사되었습니다"; +"Image" = "이미지"; +"Image link copied" = "이미지 링크가 복사되었습니다"; +"Invalid Giphy URL" = "유효하지 않은 Giphy URL"; +"Long-press the GIF button to paste any Giphy URL" = "GIF 버튼을 길게 눌러 Giphy URL을 붙여넣으세요"; +"Paste Giphy Link" = "Giphy 링크 붙여넣기"; +"Paste a giphy.com URL or media ID" = "giphy.com URL 또는 미디어 ID 붙여넣기"; +"Send" = "보내기"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "릴스 사이드바 위에 커버 보기/다운로드/공유/복사/확장/리포스트 항목이 있는 RyukGram 작업 버튼을 추가합니다. 탭하면 기본적으로 메뉴가 열립니다. 아래에서 탭 동작을 변경하세요."; +"Always show progress scrubber" = "항상 재생 진행 바 표시"; +"Auto-scroll reels" = "릴스 자동 스크롤"; +"Speed, seek and auto-scroll controls" = "속도, 탐색 및 자동 스크롤 컨트롤"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "활성화된 컨트롤은 릴스에서 ⋯ 또는 오디오 버튼을 길게 누르면 나타납니다."; +"Seek controls" = "탐색 컨트롤"; +"Auto-scroll control" = "자동 스크롤 컨트롤"; +"Seek" = "탐색"; +"Custom seek step" = "사용자 지정 탐색 간격"; +"Enter the number of seconds to skip" = "건너뛸 시간(초)을 입력하세요"; +"Set what a tap on a reel does" = "릴을 탭했을 때의 동작을 설정"; +"Confirm reel refresh" = "릴스 새로고침 확인"; +"Custom speed" = "사용자 지정 속도"; +"Disable auto-unmuting reels" = "릴스 자동 음소거 해제 비활성화"; +"Disable scrolling reels" = "릴스 스크롤 비활성화"; +"Disable tab button refresh" = "탭 버튼 새로고침 비활성화"; +"Doom scrolling limit" = "둠스크롤링 제한"; +"e.g. 1.75" = "예: 1.75"; +"Enter a value between 0.5 and 2.0" = "0.5에서 2.0 사이의 값을 입력하세요"; +"Keeps the progress bar visible on every reel" = "모든 릴에서 진행 표시줄을 계속 표시"; +"Hide \"Made with Edits\" badge" = "\"Made with Edits\" 배지 숨기기"; +"Hide friends avatars" = "친구 아바타 숨기기"; +"Hide reels header" = "릴스 헤더 숨기기"; +"Hide social context overlay" = "소셜 컨텍스트 오버레이 숨기기"; +"Hides the avatar bubbles next to the Friends tab in reels" = "릴스의 친구 탭 옆에 표시되는 아바타 버블을 숨깁니다"; +"Hides the Edits app promo pill on reels" = "릴스에서 Edits 앱 홍보 알약 배너를 숨깁니다"; +"Hides the floating overlay showing who reposted or commented on reels" = "릴스에서 누가 리포스트하거나 댓글을 달았는지 표시하는 플로팅 오버레이를 숨깁니다"; +"Hides the repost button on the reels sidebar" = "릴스 사이드바에서 리포스트 버튼을 숨깁니다"; +"Drops the top bar while you watch reels" = "릴을 보는 동안 상단 바를 숨김"; +"Hiding" = "숨김"; +"IG default" = "IG 기본값"; +"Limits" = "제한"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "연속으로 넘길 수 있는 릴 수를 제한하고 새로고침을 차단"; +"Only loads %@ %@" = "%@ %@만 로드합니다"; +"Places a button above the like/comment/share column on each reel" = "각 릴스의 좋아요/댓글/공유 열 위에 버튼을 배치합니다"; +"Playback speed" = "재생 속도"; +"Prevent doom scrolling" = "둠스크롤링 방지"; +"Engagement filter" = "참여도 필터"; +"Hide reels below a like, comment, view or repost count" = "좋아요·댓글·조회·리포스트 수가 기준 미만인 릴스 숨기기"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "설정한 모든 최소값에 못 미치는 릴스를 숨깁니다. 작성자가 수치를 숨긴 릴스는 따로 숨기지 않는 한 표시됩니다."; +"Filter reels by engagement" = "참여도로 릴스 필터링"; +"Hide reels with hidden stats" = "통계 숨김 릴스 숨기기"; +"Only filter the Reels tab" = "릴스 탭만 필터링"; +"Reels you open from a post, profile or share are never filtered" = "게시물·프로필·공유로 연 릴스는 필터링되지 않습니다"; +"Minimums" = "최소값"; +"Minimum likes" = "최소 좋아요 수"; +"Minimum comments" = "최소 댓글 수"; +"Minimum views" = "최소 조회수"; +"Minimum reposts" = "최소 리포스트 수"; +"Reels below this count are hidden. 0 turns this limit off." = "이 수 미만의 릴스는 숨겨집니다. 0이면 이 제한이 꺼집니다."; +"Turns the filter off and clears every minimum." = "필터를 끄고 모든 최소값을 지웁니다."; +"Locks a reel in place so it never scrolls to the next one" = "릴을 고정하여 다음 릴로 넘어가지 않게 함"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "볼륨이나 벨소리 키를 눌러도 릴 소리가 켜지지 않게 함"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "릴 피드를 새로고침하기 전에 확인"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "잠긴 릴스에서 비밀번호를 표시하고 자동 입력하는 버튼을 표시합니다"; +"Same as general format" = "일반 형식과 동일"; +"Shows the repost date on the \"reposted this reel\" header." = "\"이 릴을 리포스트함\" 헤더에 리포스트 날짜를 표시합니다."; +"Reposts" = "리포스트"; +"Swipe a reel left to open the author's profile" = "릴스를 왼쪽으로 스와이프하면 작성자의 프로필이 열립니다"; +"Swipe left to profile" = "왼쪽으로 스와이프하여 프로필 열기"; +"Tap Controls" = "탭 제어"; +"Tap to mute on photo reels" = "사진 릴에서 탭으로 음소거"; +"Tapping the Reels tab while on reels does nothing" = "릴스 탭에 있을 때 릴스 탭을 탭해도 아무 작업도 수행하지 않습니다"; +"Unlock password-locked reels" = "비밀번호로 잠긴 릴스 잠금 해제"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "일시정지 모드가 켜져 있을 때 사진 릴을 탭하면 기본 일시정지 대신 오디오가 전환됩니다"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "팔로워/팔로잉 목록을 필터링하고 정렬하는 버튼을 추가합니다. 나가면 초기화됩니다."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "하이라이트를 길게 누를 때의 메뉴에 커버를 전체 화면으로 여는 보기 옵션을 추가합니다"; +"Applying restarts Instagram to load your changes." = "적용하면 변경 사항을 불러오기 위해 Instagram이 재시작됩니다."; +"Card details" = "카드 정보"; +"Comment count" = "댓글 수"; +"Copy note on long press" = "길게 눌러 노트 복사"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "프로필 그리드의 각 게시물 및 릴 카드에 표시되는 추가 통계 — 원하는 항목을 선택하고 순서를 바꾼 뒤 적용하세요."; +"Fake follower count" = "가짜 팔로워 수"; +"Fake following count" = "가짜 팔로잉 수"; +"Fake post count" = "가짜 게시물 수"; +"Fake profile stats" = "가짜 프로필 통계"; +"Fake verified badge" = "가짜 인증 배지"; +"Fetch missing counts" = "누락된 수치 가져오기"; +"Filter & sort lists" = "목록 필터 및 정렬"; +"Follow indicator" = "팔로우 표시기"; +"Follower & following lists" = "팔로워 및 팔로잉 목록"; +"Follower count" = "팔로워 수"; +"Following count" = "팔로잉 수"; +"Like count" = "좋아요 수"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "프로필 사진을 길게 눌러 확대, 공유 및 저장이 가능한 전체 화면으로 엽니다"; +"Long press the note bubble on a profile to copy the text" = "프로필의 노트 말풍선을 길게 눌러 텍스트를 복사합니다"; +"Long press to download directly (ignored when zoom is on)" = "길게 눌러 바로 다운로드 (확대가 켜져 있으면 무시됨)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "프로필 요소의 길게 누르기 제스처 — 기능별 작업 버튼과 별도로 유지됩니다."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "모든 카드 통계의 기본 스위치입니다. 누락된 수치 가져오기는 Instagram API를 사용하며 요청 제한에 걸릴 수 있습니다."; +"Only affects your own profile header. Other users see the real numbers." = "본인 프로필 헤더에만 적용됩니다. 다른 사용자에게는 실제 숫자가 표시됩니다."; +"Post count" = "게시물 수"; +"Profile card details" = "프로필 카드 정보"; +"Profile stats" = "프로필 통계"; +"Repost count" = "리포스트 수"; +"Restores the default stats, order, and options for profile card details." = "프로필 카드 정보의 기본 통계, 순서, 옵션을 복원합니다."; +"Restores the default stats, order, and options for search & explore card details." = "검색 및 탐색 카드 정보의 기본 통계, 순서, 옵션을 복원합니다."; +"Save profile picture" = "프로필 사진 저장"; +"Search & Explore" = "검색 및 탐색"; +"Share count" = "공유 수"; +"Short numbers" = "축약된 숫자"; +"Show a checkmark next to your name on your own profile" = "본인 프로필 이름 옆에 체크 표시를 보여줍니다"; +"Show card details" = "카드 정보 표시"; +"Show full follower count" = "전체 팔로워 수 표시"; +"Show full post count" = "전체 게시물 수 표시"; +"Show the custom number set below" = "아래에 설정한 사용자 지정 숫자 표시"; +"Show the exact number instead of a shortened one" = "축약된 숫자 대신 정확한 숫자 표시"; +"Shows whether the profile user follows you" = "프로필 사용자가 회원님을 팔로우하는지 표시합니다"; +"Tap to set" = "탭하여 설정"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "각 통계를 켜거나 끄세요. ≡ 핸들을 드래그해 카드에 쌓이는 순서를 바꿀 수 있습니다."; +"Upload date" = "업로드 날짜"; +"View count" = "조회수"; +"View highlight cover" = "하이라이트 커버 보기"; +"Views, likes, comments, shares, reposts, date" = "조회수, 좋아요, 댓글, 공유, 리포스트, 날짜"; +"Zoom profile photo" = "프로필 사진 확대"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "진행 중·대기 중·완료된 다운로드"; +"Auto-retry attempts" = "자동 재시도 횟수"; +"Auto-retry failed downloads" = "실패한 다운로드 자동 재시도"; +"Confirm before download" = "다운로드 전 확인"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "더 이상 사용되지 않습니다. RyukGram 작업 버튼(피드/릴스/스토리에서 기능별로 구성됨)이 미디어를 다운로드하는 새로운 방법입니다. 미디어 위에서 여러 손가락으로 길게 누르는 기존 방식을 선호하는 경우에만 이 마스터 토글을 활성화하세요."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "앱을 나가도 다운로드, 인코딩, 프로필 스캔을 멈추지 않습니다"; +"Download queue" = "다운로드 대기열"; +"Downloads" = "다운로드"; +"Downloads with %@ %@" = "%@ %@(으)로 다운로드합니다"; +"Enable long-press gesture" = "길게 누르기 제스처 활성화"; +"Finger count for long-press" = "길게 누르기 손가락 개수"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "동시에 실행할 다운로드 수 — 나머지는 대기열에서 기다리다 슬롯이 비면 시작됩니다. 실패한 다운로드는 네트워크 오류 시 자동으로 재시도됩니다. 관리자를 열어 다운로드를 확인, 취소 또는 재시도하세요."; +"Keep running in background" = "백그라운드에서 계속 실행"; +"Legacy long-press gesture" = "기존 길게 누르기 제스처 (레거시)"; +"Long-press hold time" = "길게 누르기 유지 시간"; +"Master toggle for the deprecated gesture workflow (off by default)" = "더 이상 사용되지 않는 제스처 워크플로를 위한 마스터 토글 (기본적으로 꺼져 있음)"; +"Max simultaneous downloads" = "최대 동시 다운로드"; +"Open download manager" = "다운로드 관리자 열기"; +"Press finger(s) for %@ %@" = "%@ %@ 동안 손가락을 누르세요"; +"Retry automatically when a download drops on a network error" = "네트워크 오류로 다운로드가 끊기면 자동으로 재시도"; +"Route saves into a custom album in Photos instead of the camera roll root" = "기본 카메라 롤 대신 사진 앱의 전용 앨범으로 저장 경로를 지정합니다"; +"Run up to %@ %@ at once" = "한 번에 최대 %@ %@ 실행"; +"Save action" = "저장 동작"; +"Save to dedicated album" = "전용 앨범에 저장"; +"Show a confirmation dialog before starting a download" = "다운로드를 시작하기 전에 확인 대화 상자를 표시합니다"; +"Try %@ more %@ before giving up" = "포기하기 전에 %@번 더 %@ 시도"; +"What happens after the gesture downloads" = "제스처 다운로드 후 동작"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "\"전용 앨범에 저장\"이 켜져 있으면 다운로드와 공유 시트의 \"사진에 저장\" 선택이 사진 보관함의 지정된 앨범으로 저장됩니다. \"앨범 이름\"을 눌러 변경하세요."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "%@ 남음"; +"%@ of %@" = "%2$@ 중 %1$@"; +"%@/s" = "%@/초"; +"%dh" = "%d시간"; +"%dm" = "%d분"; +"%ds" = "%d초"; +"%ld downloading" = "%ld개 다운로드 중"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld개가 아직 진행 중이며 중지됩니다. 이미 저장된 파일은 그대로 남습니다."; +"%lu failed" = "%lu개 실패"; +"%lu of %lu done" = "%lu/%lu 완료"; +"%lu saved, %lu failed" = "%lu개 저장, %lu개 실패"; +"12 hours" = "12시간"; +"1s" = "1초"; +"24 hours" = "24시간"; +"48 hours" = "48시간"; +"Active" = "활성"; +"Auto-retry" = "자동 재시도"; +"Clear completed" = "완료된 항목 지우기"; +"Clear download history" = "다운로드 기록 지우기"; +"Clear download history?" = "다운로드 기록을 지울까요?"; +"Completed" = "완료"; +"Don't keep" = "보관 안 함"; +"Download history" = "다운로드 기록"; +"Download settings" = "다운로드 설정"; +"Downloading %lu items" = "항목 %lu개 다운로드 중"; +"Downloading…" = "다운로드 중…"; +"Empty the manager's list of past downloads" = "관리자의 지난 다운로드 목록을 비웁니다"; +"Encoding %d%%" = "인코딩 %d%%"; +"Encoding…" = "인코딩 중…"; +"Extra downloads wait in line and start as slots free up." = "추가 다운로드는 대기열에서 기다리다 슬롯이 비면 시작됩니다."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "앱을 닫은 뒤 완료·실패·취소된 다운로드가 관리자에 남아 있는 기간입니다. 파일 자체는 건드리지 않고 목록만 정리합니다."; +"How long past downloads stay listed in the manager" = "지난 다운로드가 관리자에 남아 있는 기간"; +"Keep history for" = "기록 보관 기간"; +"Media you download shows up here, with its progress and where it was saved." = "다운로드한 미디어가 진행률과 저장 위치와 함께 여기에 표시됩니다."; +"No downloads yet" = "아직 다운로드가 없습니다"; +"Preview" = "미리보기"; +"Queued" = "대기 중"; +"Redownload" = "다시 다운로드"; +"Retry" = "재시도"; +"Retrying…" = "재시도 중…"; +"Stop" = "중지"; +"The files already saved are kept — this only empties the list." = "이미 저장된 파일은 그대로 두고 목록만 비웁니다."; +"Waiting for a free slot" = "빈 자리를 기다리는 중"; +"Waiting for connection…" = "연결 대기 중…"; +"Waiting to retry" = "재시도 대기 중"; +"Waiting…" = "대기 중…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "오버레이 버튼 배치"; +"Overlay layout" = "오버레이 레이아웃"; +"Drag to position the buttons" = "드래그하여 버튼 위치 지정"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "버튼을 스토리 위로 드래그하세요. 어두운 영역은 답장 표시줄입니다."; +"Send message" = "메시지 보내기"; + +"Pinned" = "고정됨"; +"Search viewers" = "조회자 검색"; +"No matching viewers" = "일치하는 조회자 없음"; +"No viewers match these filters" = "이 필터와 일치하는 조회자가 없습니다"; +"Unavailable" = "사용 불가"; +"Default (recent first)" = "기본 (최신순)"; +"%lu viewers" = "조회자 %lu명"; +"Viewer pinned" = "조회자 고정됨"; +"Viewer unpinned" = "조회자 고정 해제됨"; +"Pin a viewer" = "조회자 고정"; +"Pin order" = "고정 순서"; +"Pin this viewer?" = "이 조회자를 고정할까요?"; +"Filter, sort & pin viewers" = "조회자 필터·정렬·고정"; +"Add by username, remove, reorder" = "사용자 이름으로 추가, 삭제, 순서 변경"; +"Pinned viewers (%lu)" = "고정된 조회자 (%lu)"; +"Viewers list" = "조회자 목록"; +"Settings are saved and reused next time." = "설정이 저장되어 다음에 다시 사용됩니다."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "여러 개를 선택하면 함께 적용됩니다. 고정된 조회자는 항상 맨 위에 표시되며 이 필터를 무시합니다."; +"Pinned viewers" = "고정된 조회자"; +"Pin" = "고정"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "'내 스토리를 본 사람' 목록을 검색, 필터, 정렬이 가능한 목록으로 대체합니다. 조회자를 길게 눌러 맨 위에 고정하세요. 언제든지 기본 목록으로 돌아갈 수 있습니다."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "사용자 이름 또는 사용자 PK. 고정된 조회자는 항상 스토리 조회자 목록 맨 위에 유지됩니다."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "스토리의 눈 모양 버튼 옆에 다운로드/공유/복사/확장/리포스트/멘션 보기 항목이 있는 RyukGram 작업 버튼을 추가합니다. 탭하면 기본적으로 메뉴가 열립니다. 아래에서 탭 동작을 변경하세요."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "스토리 오버레이에 오디오 음소거/해제를 위한 스피커 버튼을 추가합니다. 점 3개 메뉴에서도 사용할 수 있습니다."; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "스토리 오버레이에 눈 버튼을 추가합니다. 끄면 버튼 없이 읽음 차단이 그대로 유지됩니다."; +"Advance on story like" = "스토리 좋아요 시 다음으로 넘어가기"; +"Advance on story reply" = "스토리 답장 시 다음으로 넘어가기"; +"Advance when marking as seen" = "읽음으로 표시할 때 다음으로 넘어가기"; +"Audio" = "오디오"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "모두 차단: 모든 스토리가 차단됨 — 목록에 있는 사용자는 예외입니다.\n선택 차단: 목록에 있는 사용자만 차단됨 — 그 외에는 정상입니다.\n두 목록은 독립적으로 저장됩니다."; +"Blocking mode" = "차단 모드"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "버튼 = 한 번 탭하여 읽음으로 표시. 토글 = 탭하여 스토리 읽음 표시를 켜고 끕니다 (켜져 있으면 눈이 파란색으로 채워짐)"; +"Marked-seen indicator" = "읽음 표시 인디케이터"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "읽음으로 표시한 스토리를 48시간 동안 기억하고 해당 스토리에서 눈 버튼을 숨기거나 채웁니다."; +"Hide eye button" = "눈 버튼 숨기기"; +"Fill eye button green" = "눈 버튼 초록색으로 채우기"; +"Disable story seen receipt" = "스토리 읽음 표시 비활성화 (몰래 보기)"; +"Enable story user list" = "스토리 사용자 목록 활성화"; +"Stops others from seeing that you viewed their story" = "다른 사람이 내가 스토리를 봤다는 걸 알 수 없게 함"; +"Inserts a button next to the seen/eye button on story overlays" = "스토리 오버레이의 읽음/눈 버튼 옆에 버튼을 삽입합니다"; +"Keep stories visually seen locally" = "스토리를 로컬에서 시각적으로 읽은 상태 유지"; +"Liking a story automatically advances to the next one after a short delay" = "스토리에 좋아요를 누르면 짧은 지연 시간 후 자동으로 다음 스토리로 넘어갑니다"; +"Manage list" = "목록 관리"; +"Manage list (%lu)" = "목록 관리 (%lu)"; +"Manual seen button mode" = "수동 읽음 버튼 모드"; +"Mark seen on story like" = "스토리 좋아요 시 읽음 표시"; +"Mark seen on story reply" = "스토리 답장 시 읽음 표시"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "읽음 차단이 켜져 있어도 하트를 탭하는 순간 스토리를 읽음으로 표시합니다"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "읽음 차단이 켜져 있어도 답장이나 이모티콘 반응을 보낼 때 스토리를 읽음으로 표시합니다"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "서버에서는 여전히 읽음 표시를 차단하면서 로컬에서는 스토리를 읽음으로 표시(회색 링)합니다"; +"Master toggle. When off, the list is ignored" = "마스터 토글. 꺼져 있으면 목록이 무시됩니다"; +"Playback" = "재생"; +"Search, sort, swipe to remove" = "검색, 정렬, 스와이프하여 제거"; +"Seen receipts" = "읽음 표시"; +"Sending a reply or emoji reaction automatically advances to the next story" = "답장이나 이모티콘 반응을 보내면 자동으로 다음 스토리로 넘어갑니다"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "작업 버튼 메뉴와 스토리 점 3개 메뉴에 '멘션 보기' 항목을 추가합니다"; +"Mentions overlay button" = "멘션 오버레이 버튼"; +"Mentions count badge" = "멘션 개수 배지"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "스토리 오버레이의 작업/눈 버튼 옆에 버튼을 추가합니다. 현재 스토리에 멘션이나 공유된 게시물/릴스가 있을 때만 표시됩니다"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "오버레이 버튼에 멘션된 고유 계정 수를 빨간 배지로 표시합니다"; +"Hide stories midcards" = "스토리 미드카드 숨기기"; +"Removes the Trending and Music promo cards from the stories tray" = "스토리 트레이의 인기 / 음악 홍보 카드를 제거합니다"; +"Stickers" = "스티커"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "상호작용하기 전에 투표/퀴즈/슬라이더 결과를 미리 봅니다 — 평소처럼 탭해서 투표할 수 있습니다. '레거시 강제'는 퀴즈와 리빌 스티커를 스토리 편집기에 복원합니다."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "릴스에서 상호작용하기 전에 투표/퀴즈/슬라이더 결과를 미리 봅니다 — 평소처럼 탭해서 투표할 수 있습니다."; +"Force legacy stickers in tray" = "트레이에 레거시 스티커 강제 표시"; +"Adds Quiz and Reveal stickers back to the picker" = "퀴즈와 리빌 스티커를 선택기에 복원"; +"Bypass Reveal sticker" = "리빌 스티커 우회"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "리빌 스티커가 있는 스토리에서 DM 전송 단계를 건너뜁니다"; +"Show quiz answer" = "퀴즈 정답 표시"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "퀴즈 스티커의 정답 또는 투표의 최다 득표 옵션을 강조"; +"Show poll vote counts" = "투표 수 표시"; +"Show vote tallies on poll options and slider count/average before you vote" = "투표 전에 투표 옵션의 득표 수와 슬라이더의 평균/개수를 표시"; +"Stop story auto-advance" = "스토리 자동 넘어가기 중지"; +"Stories" = "스토리"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "타이머가 끝나도 스토리가 자동으로 다음 스토리로 건너뛰지 않습니다. 수동으로 넘어가려면 탭하세요."; +"Story audio toggle" = "스토리 오디오 토글"; +"Story user list" = "스토리 사용자 목록"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "눈 버튼을 탭하여 스토리를 읽음으로 표시하면 자동으로 다음 스토리로 넘어갑니다"; +"This will send a story view receipt." = "스토리 조회 표시가 전송됩니다."; +"View story mentions" = "스토리 멘션 보기"; +"Which stories get seen-receipt blocking" = "읽음 표시 차단을 적용할 스토리"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "정확한 활동 상태"; +"Activity log" = "활동 기록"; +"Loading…" = "불러오는 중…"; +"Notify: %@ · Log: %@" = "알림: %@ · 기록: %@"; +"Add by user ID" = "사용자 ID로 추가"; +"Add by thread ID" = "스레드 ID로 추가"; +"Adding…" = "추가하는 중…"; +"Browse activity, grouped by person" = "사람별로 묶어 활동 살펴보기"; +"Clear activity log?" = "활동 기록을 지울까요?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "아직 활동이 없습니다.\n누군가 메시지를 읽거나 온라인이 되면 여기에 표시됩니다."; +"No one found. Check the spelling or try a different name." = "찾을 수 없습니다. 철자를 확인하거나 다른 이름으로 시도하세요."; +"Notify about someone" = "특정 사람 알림"; +"Open some chats first, or search a username above." = "먼저 채팅을 열거나, 위에서 사용자 이름을 검색하세요."; +"Pick what each person notifies you about" = "각 사람이 무엇을 알릴지 선택"; +"Recent in your DMs" = "최근 대화 상대"; +"Results" = "결과"; +"This removes all recorded activity on this device." = "이 기기에 기록된 모든 활동을 삭제합니다."; +"Active %ldd ago" = "%ldd 전 활동"; +"Active %ldh ago" = "%ldh 전 활동"; +"Active %ldm ago" = "%ldm 전 활동"; +"Activity notifications" = "활동 알림"; +"Also track reads in group chats. Groups can be noisy" = "그룹 채팅의 읽음도 추적합니다. 그룹은 알림이 많을 수 있습니다"; +"Came online" = "온라인 상태가 됨"; +"Customise notifications" = "알림 맞춤 설정"; +"Everyone" = "모두"; +"Muted" = "음소거됨"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "아직 맞춤 설정된 사람이 없습니다. 활동 기록에서 누군가를 길게 눌러 알림을 선택하세요."; +"Online, offline, typing and read receipts, per person" = "온라인, 오프라인, 입력 중, 읽음 확인을 사람별로"; +"Per-person notifications" = "사람별 알림"; +"Enable activity" = "활동 사용"; +"Track who reads your messages, comes online, goes offline or types" = "메시지를 읽거나 접속·해제하거나 입력하는 사람을 추적합니다"; +"For everyone" = "모두에게"; +"For this person" = "이 사람에게"; +"Log only" = "기록만"; +"Notify only" = "알림만"; +"Notify + log" = "알림 + 기록"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "기록만은 조용히 저장합니다. 알림만은 저장하지 않고 알려줍니다. 알림 + 기록은 둘 다 합니다."; +"Presence" = "접속 상태"; +"Read your message" = "메시지를 읽음"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "20초마다 접속 상태를 새로 고치고 Instagram의 유예 시간을 제거하여 상대가 오프라인이 되는 즉시 녹색 점이 꺼집니다."; +"Started typing" = "입력을 시작함"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "탭하여 알림 항목을 변경하세요. 밀어서 제거하면 기본값으로 돌아갑니다."; +"These override the defaults for this person." = "이 사람에 대해 기본값을 덮어씁니다."; +"Went offline" = "오프라인이 됨"; +"When someone becomes active" = "누군가 활동을 시작할 때"; +"When someone goes inactive" = "누군가 비활성 상태가 될 때"; +"When someone opens a message you sent" = "누군가 보낸 메시지를 열 때"; +"When someone starts typing to you" = "누군가 나에게 입력을 시작할 때"; +"is now active" = "지금 활동 중"; +"is typing…" = "입력 중…"; +"went offline" = "오프라인이 됨"; +"Online" = "온라인"; +"Offline" = "오프라인"; +"Typing" = "입력 중"; +"Filters" = "필터"; +"Delete the selected records? This can't be undone." = "선택한 기록을 삭제할까요? 되돌릴 수 없습니다."; +"Delete all records for the selected chats? This can't be undone." = "선택한 채팅의 모든 기록을 삭제할까요? 되돌릴 수 없습니다."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "DM 스레드에 눈 버튼을 추가합니다. 끄면 버튼 없이 읽음 표시 차단이 그대로 유지됩니다."; +"Auto mark seen on interact" = "상호작용 시 자동 읽음 표시"; +"Auto mark seen on typing" = "입력 시 자동 읽음 표시"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "자동 읽음 표시를 차단합니다 — 직접 선택할 때만 읽음 표시가 전송됩니다"; +"Control when messages are marked as seen" = "메시지가 읽음으로 표시되는 시점 제어"; +"How the seen button behaves" = "읽음 버튼의 동작 방식"; +"Manually mark messages as seen" = "수동으로 메시지 읽음 표시"; +"Mark as seen?" = "읽음으로 표시할까요?"; +"Mark as viewed?" = "조회로 표시할까요?"; +"Mark seen locally" = "로컬에서 읽음으로 표시"; +"Marks messages as seen when you reply, react or send media" = "답장하거나 반응하거나 미디어를 보낼 때 메시지를 읽음으로 표시합니다"; +"Marks messages as seen when you start typing" = "입력을 시작할 때 메시지를 읽음으로 표시합니다"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "연 채팅이 이 기기에서만 읽음으로 표시됩니다. 상대에게 읽음 확인이 전송될 때까지 눈 버튼이 주황색으로 표시됩니다"; +"Read receipt mode" = "읽음 표시 모드"; +"Read receipts" = "읽음 표시"; +"Show seen button" = "읽음 버튼 표시"; +"This will send a read receipt for the latest messages." = "최근 메시지에 대한 읽음 표시가 전송됩니다."; +"This will send a view receipt for the current message." = "현재 메시지에 대한 조회 표시가 전송됩니다."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "활동"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "음성 메시지를 길게 누를 때의 메뉴에 '다운로드' 옵션을 추가하여 M4A 오디오로 저장합니다"; +"Allows typing and sending DMs longer than Instagram's limit" = "Instagram 제한보다 긴 DM을 입력하고 보낼 수 있도록 허용"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "DM의 더보기(+) 메뉴에 '파일 보내기' 옵션을 추가합니다. 지원되는 파일 형식은 Instagram에 의해 제한될 수 있습니다."; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "DM의 더보기(+) 메뉴에 '오디오 파일' 옵션을 추가하여 오디오 파일을 음성 메시지로 보냅니다"; +"Adds copy text, download GIF/audio to the note long-press menu" = "노트를 길게 누를 때의 메뉴에 텍스트 복사, GIF/오디오 다운로드를 추가합니다"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "모두 차단: 모든 채팅 차단됨 — 목록에 있는 채팅은 예외입니다.\n선택 차단: 목록에 있는 채팅만 차단됨 — 그 외에는 정상입니다.\n두 목록은 독립적으로 저장됩니다. 받은 편지함에서 채팅을 길게 눌러 추가하거나 제거하세요."; +"Block keep-deleted for excluded chats" = "제외된 채팅에 대해 삭제된 메시지 보관 차단"; +"Block keep-deleted for unlisted chats" = "목록에 없는 채팅에 대해 삭제된 메시지 보관 차단"; +"Bypass DM character limit" = "DM 글자 수 제한 우회"; +"Chat list" = "채팅 목록"; +"Confirmation dialog before clearing preserved messages" = "보존된 메시지를 지우기 전 확인 대화 상자"; +"Copies note text directly on long press without opening the menu" = "메뉴를 열지 않고 길게 누르면 노트 텍스트를 바로 복사합니다"; +"Copy text on hold" = "길게 눌러 텍스트 복사"; +"Adds Background, Text and Emoji buttons to the note editor" = "노트 편집기에 배경, 텍스트, 이모지 버튼을 추가합니다"; +"Custom note themes" = "사용자 지정 노트 테마"; +"Disable vanish mode swipe" = "배니시 모드 스와이프 비활성화"; +"Disable typing status" = "입력 중 상태 비활성화"; +"Disable view-once limitations" = "한 번 보기 제한 비활성화"; +"Download voice messages" = "음성 메시지 다운로드"; +"Enable chat list" = "채팅 목록 활성화"; +"Enable note theming" = "노트 테마 활성화"; +"Enables the notes theme picker" = "노트 테마 선택기를 활성화합니다"; +"Files" = "파일"; +"Full last active date" = "전체 마지막 활동 날짜"; +"Hide reels blend button" = "릴스 블렌드 버튼 숨기기"; +"Hide send to group chat" = "그룹 채팅으로 보내기 숨기기"; +"Pin recipients on long-press" = "길게 눌러 수신자 고정"; +"Long-press in the share sheet to pin a chat/user to the top" = "공유 시트에서 길게 눌러 채팅/사용자를 상단에 고정"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "수신자를 길게 눌러 고정하거나 고정 해제하세요. 고정된 수신자는 상단에 표시됩니다."; +"Recipient pinned" = "수신자 고정됨"; +"Recipient unpinned" = "수신자 고정 해제됨"; +"Couldn't resolve recipient id" = "수신자 ID를 확인할 수 없음"; +"Hide video call button" = "영상 통화 버튼 숨기기"; +"Hide voice call button" = "음성 통화 버튼 숨기기"; +"Hides the blend button in DMs" = "DM에서 블렌드 버튼을 숨깁니다"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "여러 명에게 공유할 때 그룹 채팅 만들기/보내기 항목을 제거합니다"; +"Hides typing indicator from others" = "다른 사람에게 회원님의 입력 중 상태를 숨깁니다"; +"Indicate unsent messages" = "전송 취소된 메시지 표시"; +"Keep deleted messages" = "삭제된 메시지 보관"; +"Turns view once messages into normal media you can loop and pause" = "한 번만 보기 메시지를 반복하고 멈출 수 있는 일반 미디어로 변환"; +"Note actions" = "노트 작업"; +"Preserves messages that others unsend" = "다른 사람이 전송 취소한 메시지를 보존합니다"; +"Keep my deleted messages" = "내 삭제된 메시지 보존"; +"Also preserves messages you unsend yourself" = "직접 전송 취소한 메시지도 보존합니다"; +"Prevents accidental swipe-up activation of vanish mode" = "실수로 위로 스와이프하여 배니시 모드가 활성화되는 것을 방지합니다"; +"Quick list button in chats" = "채팅의 빠른 목록 버튼"; +"Removes the audio call button from DM thread header" = "DM 스레드 헤더에서 음성 통화 버튼을 제거합니다"; +"Removes the video call button from DM thread header" = "DM 스레드 헤더에서 영상 통화 버튼을 제거합니다"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "만료 없이 시각적 메시지를 다시 재생합니다. 눈 버튼 메뉴에서 토글하거나 눈 버튼이 비활성화된 경우 독립형 버튼으로 표시됩니다."; +"Search, sort, swipe to remove or toggle keep-deleted" = "검색, 정렬, 스와이프하여 제거 또는 삭제된 메시지 보관 토글"; +"Send audio as file" = "오디오를 파일로 보내기"; +"Send files (experimental)" = "파일 보내기 (실험실 기능)"; +"File sending not available" = "파일 전송을 사용할 수 없음"; +"Show full date instead of \"Active 2h ago\"" = "\"2시간 전 활동\" 대신 전체 날짜 표시"; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "DM 스레드에 목록에서 채팅을 추가/제거하는 버튼을 표시합니다. 더 많은 옵션을 보려면 길게 누르세요."; +"Shows a notification pill when a message is unsent" = "메시지가 전송 취소될 때 알림 필(pill)을 표시합니다"; +"Shows an \"Unsent\" label on preserved messages" = "보존된 메시지에 \"전송 취소됨\" 라벨을 표시합니다"; +"Unlimited replay of visual messages" = "시각적 메시지 무제한 다시 보기"; +"Unsent message notification" = "전송 취소된 메시지 알림"; +"Voice messages" = "음성 메시지"; +"Warn before clearing on refresh" = "새로고침 시 지우기 전에 경고"; +"Which chats get read-receipt blocking" = "읽음 표시 차단을 적용할 채팅"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ DM 탭에서 당겨서 새로고침하면 보존된 모든 메시지가 지워집니다. 확인 대화 상자를 표시하려면 아래 경고를 활성화하세요."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu 삭제됨"; +"%lu selected" = "%lu개 선택됨"; +"Absolute date + time" = "절대 날짜+시간"; +"Adjust the filters or clear the search to see more." = "필터를 조정하거나 검색을 지워 더 많은 결과를 확인하세요."; +"All time" = "전체 기간"; +"Browse, filter and search recorded messages" = "기록된 메시지를 탐색, 필터링, 검색"; +"Captures unsent messages with their text or media" = "전송 취소된 메시지를 텍스트와 미디어와 함께 저장합니다"; +"Clear deleted-message log?" = "삭제된 메시지 로그를 지울까요?"; +"Clear from this user" = "이 사용자 기록 지우기"; +"Clear log" = "로그 지우기"; +"Clear log for this account" = "이 계정의 로그 지우기"; +"Clear log for this user?" = "이 사용자의 로그를 지울까요?"; +"Clear media files" = "미디어 파일 지우기"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "미디어를 지워도 기록(텍스트, 발신자, 시각)은 유지됩니다. 로그를 지우면 이 계정의 모든 데이터가 제거됩니다."; +"Close" = "닫기"; +"Content unavailable" = "콘텐츠를 사용할 수 없음"; +"Copied" = "복사됨"; +"Copy URL" = "URL 복사"; +"Date range" = "날짜 범위"; +"Deleted messages" = "삭제된 메시지"; +"Deleted messages log" = "삭제된 메시지 로그"; +"Deleted: %@\n" = "삭제됨: %@\n"; +"Edit %lu" = "수정 %lu"; +"Edit history" = "수정 기록"; +"Edited" = "수정됨"; +"Empty" = "비어 있음"; +"Enable deleted messages log" = "삭제된 메시지 로그 사용"; +"Enable Settings → Messages → Deleted messages log to start recording." = "설정 → 메시지 → 삭제된 메시지 로그를 활성화하여 기록을 시작하세요."; +"GIF" = "GIF"; +"Hashtag" = "해시태그"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "종류: %@\n"; +"Last 30 days" = "최근 30일"; +"Last 7 days" = "최근 7일"; +"Link" = "링크"; +"Live location" = "실시간 위치"; +"Location" = "위치"; +"Logging is off" = "기록이 꺼져 있음"; +"Media on disk" = "디스크의 미디어"; +"Most messages" = "메시지 많은 순"; +"Most recent" = "최신순"; +"No deleted messages yet" = "아직 삭제된 메시지가 없습니다"; +"No matches" = "결과 없음"; +"Nothing to save" = "저장할 내용 없음"; +"Oldest first" = "오래된 순"; +"Open log" = "로그 열기"; +"Group chat" = "그룹 채팅"; +"%lu messages in %lu chats" = "메시지 %lu개 · 채팅 %lu개"; +"%lu people · %lu deleted" = "%lu명 · %lu개 삭제됨"; +"When someone unsends a message, it will appear here grouped by chat." = "누군가 메시지를 삭제하면 채팅별로 그룹화되어 여기에 표시됩니다."; +"Clear this chat" = "이 채팅 지우기"; +"Clear log for this chat?" = "이 채팅의 기록을 지울까요?"; +"Removes every preserved deleted message from this group chat." = "이 그룹 채팅에서 보관된 모든 삭제 메시지를 제거합니다."; +"Reaction removed" = "반응 제거됨"; +"Log removed reactions" = "제거된 반응 기록"; +"Also records when someone removes a reaction, and which message it was on" = "누군가 반응을 제거할 때와 어떤 메시지였는지도 기록합니다"; +"Removed a reaction" = "반응을 제거함"; +"on @%@: %@" = "@%@님의 메시지: %@"; +"on: %@" = "메시지: %@"; +"a message" = "메시지"; +"removed %@ on: %@" = "%@ 반응 제거 · %@"; +"removed reaction %@" = "%@ 반응 제거됨"; +"%@ removed the %@ reaction." = "%@님이 %@ 반응을 제거했습니다."; +"Removed %@" = "%@ 제거됨"; +"Someone" = "누군가"; +"Photo or video" = "사진 또는 동영상"; +"Refresh names & photos" = "이름 및 사진 새로고침"; +"Refreshing names & photos" = "이름 및 사진 새로고침 중"; +"Records every message someone unsends, grouped by chat" = "누군가 삭제한 모든 메시지를 채팅별로 그룹화하여 기록합니다"; +"Open profile" = "프로필 열기"; +"Original" = "원본"; +"Play" = "재생"; +"Post" = "게시물"; +"Reel" = "릴스"; +"Relative (1m / 3h / 3d ago)" = "상대 (1분 / 3시간 / 3일 전)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "현재 계정의 모든 보존된 삭제 메시지와 캡처된 미디어를 삭제합니다. 되돌릴 수 없습니다."; +"Removes every preserved deleted message and its captured media for this account." = "이 계정의 모든 보존된 삭제 메시지와 캡처된 미디어를 삭제합니다."; +"Removes every preserved deleted message from this sender." = "이 발신자의 보존된 모든 삭제 메시지를 제거합니다."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "저장된 모든 사진, 동영상, 음성 클립을 삭제합니다. 기록은 텍스트와 발신자 정보를 유지합니다."; +"Search messages" = "메시지 검색"; +"Search senders or messages" = "발신자 또는 메시지 검색"; +"Select" = "선택"; +"Show edit history" = "수정 기록 보기"; +"Source URL recorded but media not stored.\n" = "원본 URL은 기록되었지만 미디어는 저장되지 않았습니다.\n"; +"Sticker" = "스티커"; +"Tap to open in Instagram" = "Instagram에서 열려면 탭"; +"Tap to open in Maps" = "지도에서 열려면 탭"; +"Tap to play" = "재생하려면 탭"; +"Tap to play · %@" = "재생하려면 탭 · %@"; +"Text" = "텍스트"; +"This account" = "이 계정"; +"Unknown" = "알 수 없음"; +"Video" = "동영상"; +"View" = "보기"; +"Voice" = "음성"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "활성화하면 삭제된 메시지와 미디어가 이 기기에 저장됩니다. 끄고 로그를 지우면 기록이 지워집니다."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "그리기 도구에서 이미지를 그림으로 보내기, 갤러리·사진·스티커 또는 붙여넣기에서, 자르기 및 배경 제거 편집기 내장"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "선이나 도형을 그린 다음 보내기를 누르고 이미지를 가져올 위치를 선택하세요: 갤러리, 사진, 스티커 또는 붙여넣기.\n\n이미지는 그린 자리를 대체하며 위치와 크기를 그대로 따르므로, 크게 그리면 이미지도 커집니다.\n\n적용하려면 인스타그램을 다시 시작하세요."; + +"Send image as drawing" = "이미지를 그림으로 보내기"; + +"Bypass \"You can't send messages\"" = "“메시지를 보낼 수 없습니다” 우회"; +"Custom chat background" = "맞춤 채팅 배경"; +"DM Save button" = "DM 저장 버튼"; +"Incoming calls stay silent — no ring, no screen, no notification" = "걸려오는 전화를 무음으로 유지 — 벨소리, 화면, 알림 없음"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "DM 사진 및 동영상의 Instagram 기본 저장 버튼을 사진, 갤러리 또는 공유로 다운로드하도록 변경합니다"; +"Messages" = "메시지"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "차단된 입력창 배너를 제거하고 제한된 대화에서 텍스트 입력을 복원합니다"; +"Reroute native Save" = "기본 저장 동작 변경"; +"Save media" = "미디어 저장"; +"Silence incoming calls" = "걸려오는 전화 무음"; +"Threads" = "스레드"; +"Use your own images as chat backgrounds" = "직접 만든 이미지를 채팅 배경으로 사용"; +"Activity status toggle" = "활동 상태 토글"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "받은 메시지함 헤더에 점을 추가합니다. 탭하여 활동 상태를 켜거나 끕니다"; +"Activity status on" = "활동 상태 켜짐"; +"Activity status off" = "활동 상태 꺼짐"; +"Couldn't change activity status" = "활동 상태를 변경할 수 없습니다"; +"Check your connection and try again" = "연결을 확인하고 다시 시도하세요"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "카메라"; +"Viewer" = "뷰어"; +"Saving" = "저장"; +"Confirmations" = "확인"; +"Confirm switching button" = "전환 확인 버튼"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "액션 버튼 옆에 버튼을 추가해 전환 확인을 즉시 켜거나 끕니다"; +"Switching confirmation on" = "전환 확인 켜짐"; +"Switching confirmation off" = "전환 확인 꺼짐"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "인스턴트 카메라에 갤러리 버튼을 추가하여 앨범의 사진을 보낼 수 있습니다"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "인스턴트 뷰어 헤더에 RyukGram 액션 버튼을 추가하며 확대, 저장, 공유, 일괄 저장 항목을 제공합니다"; +"All loaded instants" = "로드된 모든 인스턴트"; +"Auto advance after reaction" = "반응 후 자동 넘기기"; +"Automatically moves to the next instant after you like or react" = "좋아요를 누르거나 반응하면 자동으로 다음 인스턴트로 넘어갑니다"; +"Auto close when finished" = "다 보면 자동으로 닫기"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "모든 인스턴트를 다 보면 카메라로 넘어가지 않고 뷰어를 닫습니다"; +"Bypasses the Instants screenshot block" = "인스턴트 스크린샷 차단 우회"; +"Could not locate the instant on screen" = "화면에서 인스턴트를 찾지 못했습니다"; +"Current instant" = "현재 인스턴트"; +"In-app Gallery" = "내장 갤러리"; +"Instant" = "인스턴트"; +"Instants" = "인스턴트"; +"Auto-saved instants log" = "자동 저장된 인스턴트 기록"; +"Auto-save instants" = "인스턴트 자동 저장"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "스와이프할 때를 포함해 보는 모든 인스턴트를 자동으로 저장합니다 — 각각 한 번만"; +"Instants action button" = "인스턴트 액션 버튼"; +"No instants currently loaded" = "로드된 인스턴트 없음"; +"No media available to save" = "저장할 미디어가 없습니다"; +"Photos library" = "사진 보관함"; +"Pick from" = "선택 위치"; +"Queued %lu instants" = "인스턴트 %lu개 대기 중"; +"Save all to Gallery" = "모두 갤러리에 저장"; +"Save all to Photos" = "모두 사진에 저장"; +"Save to Gallery" = "갤러리에 저장"; +"Send from gallery" = "갤러리에서 보내기"; +"Tweaks for the QuickSnap / Instants camera surface." = "QuickSnap / Instants 카메라 화면 조정"; +"Use" = "사용"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "하단 탭 바도 숨기기 — 받은 편지함만 표시"; +"Show the home shortcut button in the inbox header, on the right" = "받은 메시지함 헤더 오른쪽에 홈 단축 버튼을 표시합니다"; +"Greyed out until the home shortcut button is enabled in Interface" = "인터페이스에서 홈 단축 버튼을 켤 때까지 회색으로 비활성화됩니다"; +"Hide search tab" = "검색 탭 숨기기"; +"Remove the search/explore button from the tab bar" = "탭 바에서 검색/탐색 버튼 제거"; +"Hide tab bar" = "탭 바 숨기기"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "DM 받은 편지함 + 프로필을 제외한 모든 탭을 숨기고 강제로 받은 편지함에서 시작하게 합니다. 설정 바로가기는 받은 편지함 탭을 길게 누르는 것으로 이동됩니다."; +"Icon order" = "아이콘 순서"; +"Launch tab" = "시작 탭"; +"Swipe sideways to move between the tab bar tabs" = "옆으로 스와이프하여 탭 바의 탭 간 이동"; +"Messages only" = "메시지 전용"; +"Messages-only mode" = "메시지 전용 모드"; +"Automatic schedule" = "자동 예약"; +"DM-only client, hide tabs, auto schedule" = "DM 전용 클라이언트, 탭 숨기기, 자동 예약"; +"Start time" = "시작 시간"; +"End time" = "종료 시간"; +"Switch into Messages-only on its own during a time window" = "지정한 시간대 동안 자동으로 메시지 전용 모드로 전환"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "위 토글을 사용해 매일 지정한 시간대(예: 오후 10:00 – 오전 6:00) 동안 메시지 전용 모드를 자동으로 켭니다. 시간대가 시작되고 끝날 때 재시작하라는 안내가 표시됩니다."; +"Active now · ends %@" = "현재 활성 · %@에 종료"; +"Next window starts %@" = "다음 시간대 %@ 시작"; +"Messages-only starting" = "메시지 전용 모드 시작"; +"Messages-only ending" = "메시지 전용 모드 종료"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "메시지 전용 모드 시간대가 시작되었습니다. 인스타그램을 재시작하여 DM 전용으로 전환하세요."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "메시지 전용 모드 시간대가 종료되었습니다. 인스타그램을 재시작하여 다른 탭을 복원하세요."; +"Navigation" = "내비게이션"; +"Swipe between tabs" = "탭 간 스와이프 전환"; +"Tab the app opens to. Ignored when Messages-only is on" = "앱이 열리는 탭입니다. 메시지 전용 모드가 켜져 있으면 무시됩니다."; +"How the icons on the bottom tab bar are ordered" = "하단 탭 바의 아이콘 정렬 순서"; +"Hidden tabs" = "숨긴 탭"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "길게 눌러 끌어 순서를 바꾸세요. 아이콘을 위로 끌면 숨겨집니다. 숨긴 탭을 탭하면 다시 추가됩니다."; +"All tabs are on the bar" = "모든 탭이 바에 있습니다"; +"Turn IG into a DM-only client" = "IG를 DM 전용 클라이언트로 전환합니다"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "모두"; +"Calls" = "통화"; +"Comments & posts" = "댓글 및 게시물"; +"Confirm actions" = "작업 확인"; +"Confirm changing theme" = "테마 변경 확인"; +"Confirm disappearing media mark as viewed" = "사라지는 미디어 조회 표시 확인"; +"Confirm DM mark as seen" = "DM 읽음 표시 확인"; +"Confirm follow" = "팔로우 확인"; +"Confirm follow requests" = "팔로우 요청 확인"; +"Confirm Instants capture" = "인스턴트 촬영 확인"; +"Confirm Instants emoji reaction" = "인스턴트 이모티콘 반응 확인"; +"Confirm like: Posts" = "게시물 좋아요 확인"; +"Confirm like: Reels" = "릴스 좋아요 확인"; +"Confirm note emoji reaction" = "노트 이모티콘 반응 확인"; +"Confirm note like" = "노트 좋아요 확인"; +"Confirm posting comment" = "댓글 게시 확인"; +"Confirm repost" = "리포스트 확인"; +"Confirm send to group chat" = "그룹 채팅으로 보내기 확인"; +"Confirm sticker interaction (highlights)" = "스티커 상호작용 확인 (하이라이트)"; +"Confirm sticker interaction (stories)" = "스티커 상호작용 확인 (스토리)"; +"Confirm story emoji reaction" = "스토리 이모티콘 반응 확인"; +"Confirm story like" = "스토리 좋아요 확인"; +"Confirm story mark as seen" = "스토리 읽음 표시 확인"; +"Confirm switching Instant" = "인스턴트 전환 확인"; +"Confirm unfollow" = "언팔로우 확인"; +"Confirm vanish mode" = "배니시 모드 확인"; +"Confirm video call" = "영상 통화 확인"; +"Confirm voice call" = "음성 통화 확인"; +"Confirm voice messages" = "음성 메시지 확인"; +"Follows" = "팔로잉"; +"Likes" = "좋아요"; +"Messaging" = "메시지"; +"Reaction stickers only" = "반응 스티커만"; +"Reactions" = "반응"; +"Send to group chat?" = "그룹 채팅으로 보내시겠습니까?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "공유 메뉴에서 그룹 채팅 만들기/보내기 전에 확인 알림을 표시합니다"; +"Shows an alert before marking a disappearing message as viewed" = "사라지는 메시지를 조회로 표시하기 전에 경고를 표시합니다"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "DM 읽음 버튼이나 메뉴에서 읽음 표시를 보내기 전에 경고를 표시합니다"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "눈 버튼이나 메뉴에서 스토리 조회 표시를 보내기 전에 경고를 표시합니다"; +"Shows an alert before sending an emoji reaction on a note" = "노트에 이모티콘 반응을 보내기 전에 경고를 표시합니다"; +"Shows an alert before sending an emoji reaction on a story" = "스토리에 이모티콘 반응을 보내기 전에 경고를 표시합니다"; +"Shows an alert before sending an emoji reaction on an Instant" = "인스턴트에 이모티콘 반응을 보내기 전에 알림 표시"; +"Shows an alert before sending a photo or video from the Instants camera" = "인스턴트 카메라에서 사진이나 동영상을 보내기 전에 알림을 표시합니다"; +"Shows an alert before tapping to switch to the next/previous Instant" = "다음/이전 인스턴트로 전환하기 위해 탭하기 전에 알림 표시"; +"Asks you to confirm before a voice message sends" = "음성 메시지를 보내기 전에 확인을 요청"; +"Shows an alert to confirm before toggling vanish mode" = "배니시 모드를 전환하기 전에 확인 경고를 표시합니다"; +"Confirms before you accept or decline a follow request" = "팔로우 요청을 수락하거나 거절하기 전에 확인"; +"Confirms before a chat theme change applies" = "채팅 테마 변경을 적용하기 전에 확인"; +"Confirms before the follow button follows someone" = "팔로우 버튼이 누군가를 팔로우하기 전에 확인"; +"Shows an alert when you click the like button on notes to confirm the like" = "노트에서 좋아요 버튼을 클릭할 때 좋아요를 확인할 경고를 표시합니다"; +"Shows an alert when you click the like button on posts to confirm the like" = "게시물에서 좋아요 버튼을 클릭할 때 좋아요를 확인할 경고를 표시합니다"; +"Confirms before a like lands on a reel" = "릴에 좋아요를 누르기 전에 확인"; +"Shows an alert when you click the like button on stories to confirm the like" = "스토리에서 좋아요 버튼을 클릭할 때 좋아요를 확인할 경고를 표시합니다"; +"Confirms before a comment posts" = "댓글을 게시하기 전에 확인"; +"Shows an alert when you click the repost button to confirm before reposting" = "리포스트 버튼을 클릭할 때 리포스트하기 전에 확인할 경고를 표시합니다"; +"Shows an alert when you click the unfollow button to confirm" = "언팔로우 버튼을 클릭할 때 확인할 경고를 표시합니다"; +"Shows an alert when you click the video call button to confirm before calling" = "영상 통화 버튼을 클릭할 때 통화 전에 확인할 경고를 표시합니다"; +"Shows an alert when you click the voice call button to confirm before calling" = "음성 통화 버튼을 클릭할 때 통화 전에 확인할 경고를 표시합니다"; +"Shows an alert when you tap a sticker inside a highlight" = "하이라이트 안의 스티커를 누를 때 경고를 표시합니다"; +"Shows an alert when you tap a sticker on someone's story" = "누군가의 스토리에서 스티커를 누를 때 경고를 표시합니다"; +"Stories & highlights" = "스토리 및 하이라이트"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld시간"; +"%ld locked" = "%ld 잠김"; +"%ld min" = "%ld분"; +"%ldh idle" = "대기 %ld시간"; +"%ldm idle" = "대기 %ld분"; +"%lds" = "%ld초"; +"%lds idle" = "대기 %ld초"; +"%lu hidden" = "%lu개 숨김"; +"4 digits" = "4자리"; +"6 digits" = "6자리"; +"Add hidden chat" = "숨긴 채팅 추가"; +"Add locked chat" = "잠긴 채팅 추가"; +"Allow Instants screenshots" = "인스턴트 스크린샷 허용"; +"Always ask when opening again" = "다시 열 때 항상 확인"; +"Ask again after Instagram returns" = "Instagram으로 돌아온 후 다시 확인"; +"Auto-relock after idle" = "대기 후 자동 재잠금"; +"Balanced default" = "균형 잡힌 기본값"; +"Best for sensitive sections" = "민감한 항목에 적합"; +"Biometric" = "생체 인증"; +"Change passcode" = "암호 변경"; +"Chat hidden" = "채팅이 숨겨졌습니다"; +"Chat unhidden" = "채팅 숨김이 해제되었습니다"; +"Chat locked" = "채팅이 잠겼습니다"; +"Chat unlocked" = "채팅이 잠금 해제되었습니다"; +"Choose a code you'll remember." = "기억할 수 있는 코드를 선택하세요."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "이 항목이 미사용 상태에서 잠금 해제로 유지되는 시간을 선택합니다. '안 함'은 Instagram을 닫거나 백그라운드로 보낼 때까지 잠금 해제로 유지합니다."; +"Confirm current passcode" = "현재 암호 확인"; +"Confirm passcode" = "암호 확인"; +"Could not save passcode" = "암호를 저장할 수 없습니다"; +"Create passcode" = "암호 생성"; +"Derivation failed" = "파생 실패"; +"DM inbox" = "DM 받은 편지함"; +"Don't share unlock" = "잠금 해제 공유 안 함"; +"Each target has its own enable, timeout, and re-lock configuration." = "각 대상은 자체 활성화, 시간 제한, 재잠금 설정을 가집니다."; +"Enable lock" = "잠금 활성화"; +"Enter passcode" = "암호 입력"; +"Enter value" = "값 입력"; +"Enter your current passcode to change it" = "변경하려면 현재 암호를 입력하세요"; +"Enter your current passcode to reset it" = "재설정하려면 현재 암호를 입력하세요"; +"Enter your passcode to continue" = "계속하려면 암호를 입력하세요"; +"every use" = "매번"; +"Every use" = "매번"; +"Hidden chats" = "숨긴 채팅"; +"Hidden chats hidden" = "숨긴 채팅 숨김"; +"Hidden chats revealed" = "숨긴 채팅 표시됨"; +"👁 Shown in the inbox · Tap to hide" = "👁 받은편지함에 표시됨 · 탭하여 숨기기"; +" · shown in inbox" = " · 받은편지함에 표시됨"; +"Hide chat" = "채팅 숨기기"; +"Unhide chat" = "채팅 숨김 해제"; +"Hold name to reveal" = "이름을 길게 눌러 표시"; +"Hide message preview" = "메시지 미리보기 숨기기"; +"Hide this chat?" = "이 채팅을 숨기시겠습니까?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "스크린샷/녹화에서 RyukGram UI를 숨기고 Instagram의 기능별 스크린샷 경고를 우회합니다."; +"Idle timeout" = "대기 시간 초과"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "이 대상을 별도로 잠금 유지"; +"Less frequent prompts" = "확인 빈도 줄이기"; +"Lock" = "잠금"; +"Lock chat" = "채팅 잠금"; +"Lock every time" = "매번 잠금"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "'매번 잠금'은 미사용 시간 제한보다 우선합니다. '잠금 해제 공유 안 함'은 이 대상을 별도로 유지합니다."; +"Lock targets" = "잠금 대상"; +"Lock the tweak" = "트윅 잠금"; +"Lock this chat" = "이 채팅 잠금"; +"Lock this chat?" = "이 채팅을 잠그시겠습니까?"; +"Lock with passcode" = "암호로 잠금"; +"Locked chats" = "잠긴 채팅"; +"Long-press a chat to lock it individually" = "채팅을 길게 눌러 개별적으로 잠그세요"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "DM 스레드를 길게 누르고 → 채팅 숨기기를 눌러 여기에 추가하세요. 숨긴 채팅은 이 목록에서 제거할 때까지 받은 편지함에서 걸러집니다."; +"Long-press a DM to add" = "추가하려면 DM을 길게 누르세요"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "DM 받은편지함 상단의 계정 이름을 길게 눌러 숨긴 채팅을 표시하거나 숨깁니다"; +"Longest idle window" = "가장 긴 미사용 시간"; +"Manage locked chats" = "잠긴 채팅 관리"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "마스터 스위치. 끄면 대상별 구성을 잃지 않고 모든 잠금 대상을 비활성화합니다."; +"Never" = "안 함"; +"No passcode set" = "설정된 암호 없음"; +"Nothing here yet." = "아직 아무것도 없습니다."; +"Off" = "끄기"; +"On" = "켜기"; +"On — %@" = "켜짐 — %@"; +"On — %@ + %ld more" = "켜짐 — %@ 외 %ld개"; +"On — no targets enabled" = "켜짐 — 활성화된 대상 없음"; +"Passcode" = "암호"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "암호 + 생체 인증. 트윅 설정 팝업, 갤러리, 삭제된 메시지 로그, 개별 채팅 및 앱 전체를 잠급니다."; +"Passcode changed" = "암호가 변경되었습니다"; +"Passcode reset" = "암호가 재설정되었습니다"; +"Passcode set" = "암호가 설정되었습니다"; +"Passcode too short" = "암호가 너무 짧습니다"; +"Passcodes did not match — try again" = "암호가 일치하지 않습니다 — 다시 시도하세요"; +"Per-chat locks" = "채팅별 잠금"; +"Prompt before Instagram opens" = "Instagram 열기 전에 요청"; +"Prompt before Profile Analyzer opens" = "프로필 분석기 열기 전에 요청"; +"Prompt before the deleted-messages log opens" = "삭제된 메시지 로그 열기 전에 요청"; +"Prompt before the gallery opens" = "갤러리 열기 전에 요청"; +"Prompt before tweak settings open" = "트윅 설정 열기 전에 요청"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "메시지로 바로 실행하는 경우를 포함해 DM 받은 편지함에 진입할 때마다 요청"; +"Re-enter the same passcode" = "같은 암호를 다시 입력"; +"Re-lock on background" = "백그라운드에서 재잠금"; +"re-lock on bg" = "백그라운드 재잠금"; +"Recently hidden" = "최근 숨김"; +"Prompt before holding the inbox name reveals hidden chats" = "이름을 길게 눌러 숨긴 채팅을 표시하기 전에 요청"; +"Reveal hidden chats" = "숨긴 채팅 표시"; +"Recently locked" = "최근 잠금"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "스크린샷, 화면 녹화 및 미러링에서 RyukGram 버튼을 가립니다"; +"Remove screenshot alert" = "스크린샷 경고 제거"; +"Replace inbox preview with • • •" = "받은 메시지함 미리보기를 • • •(으)로 대체"; +"Require passcode for this section" = "이 항목에 암호 요구"; +"Requires your current passcode" = "현재 암호가 필요합니다"; +"Reset passcode" = "암호 재설정"; +"Reset passcode?" = "암호를 재설정하시겠습니까?"; +"Screenshots & capture" = "스크린샷 및 캡처"; +"Security & Privacy" = "보안 및 개인정보"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "설정, 갤러리, 삭제된 메시지 로그, 개별 채팅, DM 받은 편지함, 프로필 분석기 또는 Instagram 자체를 잠그려면 암호를 설정하세요."; +"Set passcode" = "암호 설정"; +"Short idle window" = "짧은 미사용 시간"; +"Stay unlocked until app close or background" = "앱을 닫거나 백그라운드로 보낼 때까지 잠금 해제 유지"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "스토리, DM, 사라지는 미디어 전반에서 IG의 \"X님이 스크린샷을 찍었습니다\" 알림 차단"; +"Tap Unlock" = "잠금 해제 탭"; +"Tap Unlock or enter your passcode" = "잠금 해제를 탭하거나 암호를 입력하세요"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "암호를 지우고 모든 잠금 대상을 비활성화하며 모든 채팅을 잠금 해제합니다. 갤러리와 삭제된 메시지 데이터는 영향을 받지 않습니다."; +"Thread %@" = "스레드 %@"; +"Tweak settings" = "트윅 설정"; +"Unlock" = "잠금 해제"; +"Unlock %@" = "%@ 잠금 해제"; +"Unlock chat" = "채팅 잠금 해제"; +"Unlock Instagram" = "Instagram 잠금 해제"; +"Unlock this chat" = "이 채팅 잠금 해제"; +"Use %@" = "%@ 사용"; +"Username (looks up the DM thread) or raw thread ID" = "사용자 이름(DM 스레드 조회) 또는 스레드 ID 원본"; +"Username or thread ID" = "사용자 이름 또는 스레드 ID"; +"Wrong passcode" = "잘못된 암호"; +"Wrong passcode • %ld attempts" = "잘못된 암호 • %ld회 시도"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "보호"; +"Password-protect" = "비밀번호로 보호"; +"On — tap to change" = "켜짐 — 눌러서 변경"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "백업은 AES-256으로 암호화됩니다. 복원하려면 이 비밀번호가 필요하며, 잃어버리면 복구할 수 없습니다."; +"Optional. Lock the backup behind a password so only you can restore it." = "선택 사항. 백업을 비밀번호로 잠가 본인만 복원할 수 있게 합니다."; +"Backup password" = "백업 비밀번호"; +"You'll need this to restore. It can't be recovered if lost." = "복원하려면 이 비밀번호가 필요합니다. 잃어버리면 복구할 수 없습니다."; +"Password" = "비밀번호"; +"Confirm password" = "비밀번호 확인"; +"Set" = "설정"; +"Use at least 4 characters." = "4자 이상 사용하세요."; +"The passwords don't match." = "비밀번호가 일치하지 않습니다."; +"Try again" = "다시 시도"; +"Encrypted backup" = "암호화된 백업"; +"Enter the password used to protect this backup." = "이 백업을 보호하는 데 사용한 비밀번호를 입력하세요."; +"Wrong password. Try again." = "비밀번호가 틀렸습니다. 다시 시도하세요."; +"Decrypting backup…" = "백업 복호화 중…"; +"Encrypting backup…" = "백업 암호화 중…"; +"%ld of %ld selected · %@" = "%ld/%ld개 선택됨 · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "포함할 각 저장소를 선택하세요. 행을 눌러 저장된 내용을 확인합니다."; + +"%lu account(s)" = "계정 %lu개"; +"%lu account(s) · %lu image(s) · %@" = "계정 %lu개 · 이미지 %lu개 · %@"; +"%lu file(s) · %@" = "파일 %lu개 · %@"; +"%lu preferences" = "설정 %lu개"; +"(none)" = "(없음)"; +"Apply backup?" = "백업을 적용할까요?"; +"Applying backup…" = "백업 적용 중…"; +"archive error" = "아카이브 오류"; +"Archived snapshots" = "보관된 스냅샷"; +"Backup & Restore" = "백업 및 복원"; +"Backup exported" = "백업 내보냄"; +"Backup failed" = "백업 실패"; +"Backup has no importable sections." = "백업에 가져올 수 있는 항목이 없습니다."; +"Chat & story filters" = "채팅·스토리 필터"; +"Chat backgrounds" = "채팅 배경"; +"Corrupt entry path." = "손상된 항목 경로."; +"Could not decompress archive." = "아카이브의 압축을 풀 수 없습니다."; +"Could not open archive." = "아카이브를 열 수 없습니다."; +"Could not open staging file." = "스테이징 파일을 열 수 없습니다."; +"Could not read the backup archive." = "백업 아카이브를 읽을 수 없습니다."; +"Could not write archive." = "아카이브를 쓸 수 없습니다."; +"Could not write backup file." = "백업 파일을 쓸 수 없습니다."; +"Could not write extracted file." = "추출한 파일을 쓸 수 없습니다."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "선택한 항목의 기존 데이터가 대체됩니다. 모두 적용되려면 재시작이 필요할 수 있습니다."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "RyukGram 데이터를 내보내거나 가져옵니다 — 설정, 계정별 필터, 숨김·잠금 채팅, 프로필 분석기, 갤러리, 채팅 배경, 삭제된 메시지, 읽음 확인 기록. 각 페이지에서 원하는 조합을 선택하세요. 설정은 일반 JSON 파일로 유지되며, 미디어가 포함된 번들은 압축된 .ryukbak로 내보내집니다."; +"Feature data" = "기능 데이터"; +"Import mode" = "가져오기 모드"; +"Merge" = "병합"; +"Replace" = "교체"; +"Add the backup's data to what's already here" = "백업 데이터를 기존 데이터에 추가합니다"; +"Clear existing data, then apply the backup" = "기존 데이터를 지운 뒤 백업을 적용합니다"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "병합은 이 기기의 데이터를 유지하면서 백업 데이터를 추가합니다 — 갤러리를 포함해 중복 항목은 합쳐집니다."; +"Replace clears existing data for each ticked item, then applies the backup." = "교체는 선택한 각 항목의 기존 데이터를 지운 뒤 백업을 적용합니다."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "백업이 기존 데이터와 병합됩니다 — 아무것도 삭제되지 않으며 중복 항목은 합쳐집니다. 모두 적용되려면 재시작이 필요할 수 있습니다."; +"Hidden & locked chats" = "숨김 및 잠금 채팅"; +"Import" = "가져오기"; +"Inspect the full manifest" = "전체 매니페스트 검사"; +"Load a .json or .ryukbak backup" = ".json 또는 .ryukbak 백업 불러오기"; +"Not a RyukGram backup archive." = "RyukGram 백업 아카이브가 아닙니다."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "설정을 기본값으로 되돌리고 데이터 지우기"; +"Swipe a row to clear it." = "행을 밀어서 지우세요."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "“공용”으로 표시된 행은 계정에 묶이지 않으며 항상 자체 선택을 따릅니다."; +"%lu file(s)" = "파일 %lu개"; +"Clear all data" = "모든 데이터 지우기"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "저장된 모든 갤러리 항목, 기록, 녹음이 이 기기에서 삭제됩니다. 설정은 유지됩니다 — 재설정을 사용해 기본값으로 되돌리세요. 되돌릴 수 없습니다."; +"Accounts" = "계정"; +"All accounts (%ld)" = "모든 계정 (%ld)"; +"Pick at least one account." = "계정을 하나 이상 선택하세요."; +"Signed in" = "로그인됨"; +"Shared" = "공용"; +"Per-account data is limited to the accounts ticked here." = "계정별 데이터는 여기서 선택한 계정으로 제한됩니다."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "계정별 데이터는 %@에 대해서만 지워집니다. 공용 데이터는 자체 선택을 따릅니다. 되돌릴 수 없습니다."; +"Preparing backup…" = "백업 준비 중…"; +"Reading backup…" = "백업 읽는 중…"; +"RyukGram's own data on this device" = "이 기기에 저장된 RyukGram 자체 데이터"; +"Save settings or a full backup" = "설정 또는 전체 백업 저장"; +"Tick what to apply. Rows not in this backup are hidden." = "적용할 항목을 선택하세요. 이 백업에 없는 행은 숨겨집니다."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "포함할 항목을 선택하세요. 행을 눌러 검사할 수 있습니다. 갤러리, 채팅 배경 또는 삭제된 메시지를 추가하면 압축된 .ryukbak 번들이 생성됩니다."; +"Truncated entry data." = "잘린 항목 데이터."; +"Truncated entry length." = "잘린 항목 길이."; +"Truncated entry path." = "잘린 항목 경로."; +"Unsafe entry path." = "안전하지 않은 항목 경로."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "고급"; +"All tweak options are disabled" = "모든 트윅 옵션이 비활성화됨"; +"Auto-clear cache" = "캐시 자동 지우기"; +"Automatically opens settings when the app launches" = "앱을 실행할 때 자동으로 설정을 엽니다"; +"Cache" = "캐시"; +"Cache cleared" = "캐시 지워짐"; +"Calculating cache size…" = "캐시 크기 계산 중…"; +"Clear" = "지우기"; +"Clear cache" = "캐시 지우기"; +"Clear cache (%@)" = "캐시 지우기 (%@)"; +"Clearing cache…" = "캐시 지우는 중…"; +"Clearing still scans on demand." = "지우기는 필요할 때 여전히 스캔합니다."; +"Daily" = "매일"; +"Disable all tweak options" = "모든 트윅 옵션 비활성화"; +"Disable safe mode" = "안전 모드 비활성화"; +"Enable tweak settings quick-access" = "트윅 설정 빠른 접근 활성화"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "켜져 있는 동안 Instagram이 기본 상태로 작동합니다. 끄면 설정이 복원됩니다."; +"Tap to re-enable everything" = "탭하여 모두 다시 활성화"; +"Turn every feature off — your settings are kept" = "모든 기능 끄기 — 설정은 유지됩니다"; +"Fix duplicate notifications" = "중복 알림 수정"; +"Free %@ of Instagram cache." = "Instagram 캐시에서 %@을(를) 확보합니다."; +"Freed %@" = "%@ 확보됨"; +"Hold on the home tab to open RyukGram settings" = "홈 탭을 길게 눌러 RyukGram 설정을 엽니다"; +"Monthly" = "매월"; +"Nothing to clear" = "지울 것이 없습니다"; +"Off skips the size scan when Advanced opens." = "꺼짐은 고급 설정을 열 때 크기 스캔을 건너뜁니다."; +"Pause playback when opening settings" = "설정을 열 때 재생 일시 정지"; +"Always show what's new" = "새로운 기능 항상 표시"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "새 기능의 파란 점을 확인 후 지우지 않고 항상 표시"; +"Preserve messages database" = "메시지 데이터베이스 보존"; +"Pauses any playing video/audio when settings opens" = "설정이 열릴 때 재생 중인 비디오/오디오를 일시 정지합니다"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "충돌 후 Instagram이 설정을 재설정하는 것을 방지합니다 (본인 책임)"; +"Prevents two banners for the same message when IG is in the foreground" = "IG가 포그라운드에 있을 때 동일한 메시지에 대한 두 개의 배너를 방지합니다"; +"Remove Instagram's cached images, videos, and temporary files." = "Instagram의 캐시된 이미지, 동영상, 임시 파일을 제거합니다."; +"Reset onboarding state" = "온보딩 상태 재설정"; +"Run a silent cache clear on launch when the interval has elapsed." = "간격이 지나면 실행 시 조용히 캐시를 지웁니다."; +"Show cache size" = "캐시 크기 표시"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "지울 때 메시지 데이터베이스를 건너뜁니다 — DM, 임시 저장 메시지, 저장된 메시지를 유지합니다."; +"Show tweak settings on app launch" = "앱 실행 시 트윅 설정 표시"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "알림 확장 프로그램이 알림을 전달하는 동안 IG가 앱 내에서 추가하는 두 번째 알림을 억제합니다."; +"Weekly" = "매주"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "동작"; +"Advanced experimental features" = "고급 실험 기능"; +"All experimental toggles will be turned off. Instagram will restart." = "모든 실험 기능이 꺼지고 Instagram이 다시 시작됩니다."; +"Direct Notes — Audio reply" = "Direct 노트 — 오디오 답장"; +"Direct Notes — Avatar reply" = "Direct 노트 — 아바타 답장"; +"Direct Notes — Friend Map" = "Direct 노트 — 친구 지도"; +"Direct Notes — GIFs & stickers reply" = "Direct 노트 — GIF 및 스티커 답장"; +"Direct Notes — Photo reply" = "Direct 노트 — 사진 답장"; +"Disabled after repeated crashes." = "반복된 충돌로 비활성화됨."; +"Enables GIF/sticker replies" = "GIF/스티커 답장을 활성화합니다"; +"Enables photo replies" = "사진 답장을 활성화합니다"; +"Enables the audio-note reply type" = "오디오 노트 답장 유형을 활성화합니다"; +"Enables the avatar reply type" = "아바타 답장 유형을 활성화합니다"; +"Experimental flags reset" = "실험 플래그가 재설정됨"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "원하는 항목을 켠 다음 적용을 눌러 다시 시작하세요. 일부는 모든 계정이나 IG 버전에서 작동하지 않을 수 있습니다. IG가 실행 중 3번 충돌하면 자동으로 재설정됩니다."; +"Forces Prism-gated experiments on" = "Prism 기반 실험을 강제로 켭니다"; +"Forces the Homecoming home surface / nav on" = "Homecoming 홈 화면/내비게이션을 강제로 켭니다"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "피드, 받은 편지함, 스토리, 노트 트레이에서 QuickSnap / Instants를 강제로 표시합니다"; +"Got it" = "확인"; +"Heads up" = "알림"; +"Hidden Instagram experiments" = "Instagram 숨겨진 실험"; +"Hidden Instagram experiments (in Advanced)" = "Instagram 숨겨진 실험 (고급 설정 안)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "노트와 QuickSnap"; +"Prism design system" = "Prism 디자인 시스템"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Direct 노트에 친구 지도 항목을 표시합니다"; +"Surfaces" = "화면"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "이 토글은 숨겨진 Instagram 실험을 켭니다. 일부 기능은 모든 계정이나 IG 버전에서 작동하지 않을 수 있습니다. 실행 시 IG가 계속 충돌하면 3번 실패 후 자동으로 재설정됩니다."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "숨겨진 Instagram 실험을 켜세요. 일부는 모든 계정이나 IG 버전에서 작동하지 않을 수 있습니다."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "버튼 셀"; +"Change the value on the right" = "오른쪽의 값을 변경하세요"; +"Could not delete: %@" = "삭제할 수 없음: %@"; +"Debug" = "디버그"; +"Delete an imported override and fall back to the shipped strings" = "가져온 재정의를 삭제하고 기본 문자열로 되돌리기"; +"Deleted %@ override. Restart to apply." = "%@ 재정의를 삭제했습니다. 적용하려면 재시작하세요."; +"Enable FLEX gesture" = "FLEX 제스처 활성화"; +"Enable file logging" = "파일 로깅 사용"; +"Export strings" = "문자열 내보내기"; +"Hold 5 fingers on the screen to open FLEX" = "화면에 손가락 5개를 대고 있으면 FLEX가 열립니다"; +"I have %@%@" = "나는 %@%@를 가지고 있습니다"; +"Import a .strings file for a language" = "언어에 대한 .strings 파일 가져오기"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = ".strings 파일을 가져와 번역을 업데이트합니다. 언어를 선택하고 파일을 선택한 후 다시 시작하세요."; +"Link Cell" = "링크 셀"; +"Localization" = "지역화 (번역)"; +"Log file is empty" = "로그 파일이 비어 있음"; +"Logging" = "로깅"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "RyukGram의 자체 활동을 앱과 확장 프로그램 전반에 걸쳐 공유 가능한 하나의 파일에 기록합니다. 기본적으로 꺼져 있습니다 — 켠 뒤 문제를 재현한 다음 공유하세요."; +"Menu Cell" = "메뉴 셀"; +"Navigation Cell" = "내비게이션 셀"; +"No imported localization files to reset." = "재설정할 가져온 로컬라이제이션 파일이 없습니다."; +"No overrides" = "재정의 없음"; +"Open FLEX on app focus" = "앱이 포커스될 때 FLEX 열기"; +"Open FLEX on app launch" = "앱 실행 시 FLEX 열기"; +"Opens FLEX when the app is focused" = "앱이 활성화될 때 FLEX를 엽니다"; +"Opens FLEX when the app launches" = "앱을 실행할 때 FLEX를 엽니다"; +"Pick a language and share its .strings file" = "언어를 선택해 해당 .strings 파일 공유"; +"Pick a language to delete the imported file" = "가져온 파일을 삭제할 언어 선택"; +"Pick a language to export" = "내보낼 언어 선택"; +"Reset localization" = "로컬라이제이션 재설정"; +"Share log file" = "로그 파일 공유"; +"Static Cell" = "정적 셀"; +"Stepper cell" = "스테퍼 셀"; +"Switch Cell" = "스위치 셀"; +"Switch Cell (Restart)" = "스위치 셀 (재시작)"; +"Tap the switch" = "스위치를 탭하세요"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "이 기능은 숨겨진 Instagram 플래그에 의존하며 모든 계정이나 버전에서 작동하지 않을 수 있습니다."; +"Update localization file" = "지역화 파일 업데이트"; +"Using icon" = "아이콘 사용 중"; +"Using image" = "이미지 사용 중"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "%@ 설정"; +"%lu items" = "항목 %lu개"; +"Cancelled" = "취소됨"; +"Carousel" = "캐러셀"; +"Carousel · %lu items" = "캐러셀 · 항목 %lu개"; +"Copied %lu URLs" = "%lu개의 URL 복사됨"; +"Copied caption" = "캡션 복사됨"; +"Copied download URL" = "다운로드 URL 복사됨"; +"Copied quality info" = "품질 정보 복사됨"; +"Copied video URL" = "동영상 URL 복사됨"; +"Copy all URLs" = "모든 URL 복사"; +"Copy caption" = "캡션 복사"; +"Copy download URL" = "다운로드 URL 복사"; +"Could not extract any URLs" = "URL을 추출할 수 없습니다"; +"Could not extract audio URL" = "오디오 URL을 추출할 수 없습니다"; +"Could not extract media URL" = "미디어 URL을 추출할 수 없습니다"; +"Could not extract photo URL" = "사진 URL을 추출할 수 없습니다"; +"Could not extract video URL" = "동영상 URL을 추출할 수 없습니다"; +"Done" = "완료"; +"Download all stories and share?" = "모든 스토리를 다운로드하고 공유하시겠습니까?"; +"Download all to Photos" = "사진 앱에 모두 다운로드"; +"Download and share all" = "모두 다운로드 및 공유"; +"Download failed" = "다운로드 실패"; +"Downloaded %lu items" = "%lu개의 항목 다운로드됨"; +"Downloading audio…" = "오디오 다운로드 중…"; +"Failed to save" = "저장 실패"; +"File" = "파일"; +"HD" = "HD"; +"HD download complete" = "HD 다운로드 완료"; +"HD video" = "HD 동영상"; +"Mute audio" = "오디오 음소거"; +"No caption on this post" = "이 게시물에 캡션이 없습니다"; +"No carousel children" = "캐러셀 항목이 없습니다"; +"No cover image" = "커버 이미지가 없습니다"; +"No media" = "미디어 없음"; +"No media to expand" = "확장할 미디어가 없습니다"; +"No media to show" = "표시할 미디어가 없습니다"; +"No media URL" = "미디어 URL 없음"; +"No URLs" = "URL 없음"; +"No URLs found" = "URL을 찾을 수 없습니다"; +"No video URL" = "동영상 URL 없음"; +"Not a carousel" = "캐러셀이 아닙니다"; +"Nothing to share" = "공유할 내용 없음"; +"Opening creator…" = "크리에이터 여는 중..."; +"Photo library access denied" = "사진 보관함 접근 거부됨"; +"Photos access denied" = "사진 앱 접근 거부됨"; +"Preparing repost…" = "리포스트 준비 중..."; +"Raw image" = "원본 이미지"; +"Repost" = "리포스트"; +"Repost unavailable" = "리포스트를 사용할 수 없습니다"; +"Save failed" = "저장 실패"; +"Saved %lu items" = "%lu개의 항목 저장됨"; +"Saved to Photos" = "사진 앱에 저장됨"; +"Saved to RyukGram" = "RyukGram에 저장됨"; +"Saving to Photos" = "사진에 저장 중"; +"Saving…" = "저장 중..."; +"Unmute audio" = "오디오 음소거 해제"; +"Video · %@" = "동영상 · %@"; +"View cover" = "커버 보기"; +"View mentions" = "멘션 보기"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "자유"; +"Chat font saved" = "채팅 글꼴 저장됨"; +"Reopen this chat to see the new font" = "새 글꼴을 보려면 이 채팅을 다시 여세요"; +"Remove background" = "배경 제거"; +"No subject found" = "대상을 찾을 수 없음"; +"No stickers yet" = "아직 스티커가 없습니다"; +"Send drawing" = "그림 보내기"; +"Send my drawing" = "내 그림 보내기"; +"Paste image / sticker" = "이미지/스티커 붙여넣기"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "키보드의 스티커를 탭하여\n그림에 추가하세요"; + +" %lu votes · avg %.0f%% " = " 투표 %lu개 · 평균 %.0f%% "; +"%@ can't be converted" = "%@ 변환 불가"; +"%@ unsent a message" = "%@님이 메시지 전송을 취소했습니다"; +"%@ unsent a message from %@" = "%1$@님이 %2$@님의 메시지 전송을 취소했습니다"; +"A message was unsent" = "메시지 전송이 취소되었습니다"; +"Add" = "추가"; +"Add to block list" = "차단 목록에 추가"; +"Added to block list" = "차단 목록에 추가됨"; +"Added to exclude list" = "제외 목록에 추가됨"; +"Audio not loaded yet. Play the message first and try again." = "오디오가 아직 로드되지 않았습니다. 먼저 메시지를 재생한 다음 다시 시도하세요."; +"Audio sent" = "오디오 전송됨"; +"Audio URL not available" = "오디오 URL을 사용할 수 없음"; +"Audio/Video from Files" = "파일 앱의 오디오/비디오"; +"Blocked" = "차단됨"; +"Cancel" = "취소"; +"Clear preserved messages?" = "보존된 메시지를 지우시겠습니까?"; +"Converting…" = "변환 중..."; +"Copy link" = "링크 복사"; +"Copy text" = "텍스트 복사"; +"Could not copy selected video" = "선택한 동영상을 복사할 수 없습니다"; +"Could not find media" = "미디어를 찾을 수 없습니다"; +"Could not find story media" = "스토리 미디어를 찾을 수 없습니다"; +"Could not get audio data. Try again after refreshing the chat." = "오디오 데이터를 가져올 수 없습니다. 채팅을 새로고침한 후 다시 시도하세요."; +"Disable read receipts" = "읽음 표시 비활성화"; +"Disappearing media" = "사라지는 미디어"; +"Download audio" = "오디오 다운로드"; +"Enable read receipts" = "읽음 표시 활성화"; +"Error: %@" = "오류: %@"; +"Exclude chat" = "채팅 제외"; +"Exclude from seen" = "본 것에서 제외"; +"Exclude story seen" = "스토리 읽음 제외"; +"Excluded" = "제외됨"; +"Extracting audio…" = "오디오 추출 중..."; +"FFmpeg conversion failed" = "FFmpeg 변환 실패"; +"File sending not supported" = "파일 전송은 지원되지 않습니다"; +"Follow" = "팔로우"; +"Following" = "팔로잉"; +"Format not supported without FFmpegKit" = "FFmpegKit 없이 지원되지 않는 형식"; +"Inserts a button on disappearing media overlays" = "사라지는 미디어 오버레이에 버튼을 추가"; +"Inserts a speaker button to mute/unmute disappearing media" = "사라지는 미디어를 음소거/해제하는 스피커 버튼을 추가"; +"Inserts an eye button to mark the current disappearing media as viewed" = "현재 사라지는 미디어를 본 것으로 표시하는 눈 버튼을 추가"; +"Link copied" = "링크 복사됨"; +"Mark as viewed" = "본 것으로 표시"; +"Marking as viewed advances to the next stacked media instead of closing" = "확인함으로 표시하면 닫는 대신 다음 누적 미디어로 넘어갑니다"; +"Mark messages as seen" = "메시지를 읽음으로 표시"; +"Mark seen" = "읽음 표시"; +"Marked as viewed" = "조회한 것으로 표시됨"; +"Marked messages as seen" = "메시지를 읽음으로 표시함"; +"Mentions" = "멘션"; +"Message from %@ was unsent" = "%@님의 메시지 전송이 취소되었습니다"; +"Message sender not found" = "메시지 보낸 사람을 찾을 수 없습니다"; +"Messages settings" = "메시지 설정"; +"Mute story audio" = "스토리 오디오 음소거"; +"no audio track could be read" = "읽을 수 있는 오디오 트랙이 없음"; +"No audio URL found. Try again after refreshing the chat." = "오디오 URL을 찾을 수 없습니다. 채팅을 새로고침한 후 다시 시도하세요."; +"No mentions in this story" = "이 스토리에 멘션이 없습니다"; +"No thread key" = "스레드 키가 없습니다"; +"No video selected" = "선택된 동영상 없음"; +"No voice send method found" = "음성 전송 방법을 찾을 수 없습니다"; +"Note has no downloadable content" = "노트에 다운로드할 콘텐츠가 없습니다"; +"Note text copied" = "노트 텍스트 복사됨"; +"Open GitHub" = "GitHub 열기"; +"Pick audio or video" = "오디오 또는 동영상 선택"; +"Read receipts disabled" = "읽음 표시가 비활성화되었습니다"; +"Read receipts enabled" = "읽음 표시가 활성화되었습니다"; +"Read receipts will be blocked for this chat." = "이 채팅에 대해 읽음 표시가 차단됩니다."; +"Read receipts will no longer be blocked for this chat." = "이 채팅에 대해 더 이상 읽음 표시가 차단되지 않습니다."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "DM 탭을 새로고침하면 보존된 메시지 %lu개가 삭제됩니다. 되돌릴 수 없습니다."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "DM 탭을 새로고침하면 보존된 메시지 %lu개가 삭제됩니다. 되돌릴 수 없습니다."; +"Remove" = "제거"; +"Remove from block list" = "차단 목록에서 제거"; +"Remove from exclude list" = "제외 목록에서 제거"; +"Removed" = "제거됨"; +"Removed from list" = "목록에서 제거됨"; +"Save GIF" = "GIF 저장"; +"Selection too short (min 0.5s)" = "선택 영역이 너무 짧습니다 (최소 0.5초)"; +"Send anyway" = "그래도 보내기"; +"Send Audio" = "오디오 보내기"; +"Send failed: %@" = "전송 실패: %@"; +"Send File" = "파일 보내기"; +"Send service not found" = "전송 서비스를 찾을 수 없습니다"; +"Show audio toggle" = "오디오 토글 표시"; +"Show mark-as-viewed button" = "보기 표시 버튼 표시"; +"Story read receipts disabled" = "스토리 읽음 표시가 비활성화되었습니다"; +"Story read receipts enabled" = "스토리 읽음 표시가 활성화되었습니다"; +"This chat will resume normal read-receipt behavior." = "이 채팅은 정상적인 읽음 표시 동작을 재개합니다."; +"This file" = "이 파일"; +"Total: %@" = "총: %@"; +"Un-exclude chat" = "채팅 제외 취소"; +"Un-exclude story seen" = "스토리 읽음 제외 취소"; +"Un-excluded" = "제외 취소됨"; +"Unblocked" = "차단 해제됨"; +"Unlimited replay enabled" = "무제한 다시 보기 활성화됨"; +"Unmute story audio" = "스토리 오디오 음소거 해제"; +"Unsent" = "전송 취소됨"; +"Upload Audio" = "오디오 업로드"; +"VC not found" = "VC를 찾을 수 없습니다"; +"Video from Library" = "라이브러리에서 비디오 선택"; +"Visual messages will expire" = "시각적 메시지가 만료됩니다"; +"Visual messages: expiring" = "시각적 메시지: 만료 예정"; +"Visual messages: unlimited replay" = "시각적 메시지: 무제한 다시 보기"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "배경 추가"; +"Add Chat Background" = "채팅 배경 추가"; +"Adds your own image backgrounds to Instagram chats" = "Instagram 채팅에 직접 만든 이미지 배경을 추가합니다"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "켠 후 아무 채팅이나 열어 테마 버튼을 누른 다음 오른쪽 상단의 사진 아이콘을 누르세요."; +"Blur" = "흐림"; +"Browse chats" = "채팅 둘러보기"; +"Browse chats (%ld)" = "채팅 둘러보기 (%ld)"; +"Change Background" = "배경 변경"; +"Change default" = "기본값 변경"; +"Chat Backgrounds" = "채팅 배경"; +"Choose an image used when no chat override exists" = "채팅별 설정이 없을 때 사용할 이미지를 선택합니다"; +"Clear default" = "기본값 지우기"; +"Couldn't import image" = "이미지를 가져올 수 없습니다"; +"Adjust settings" = "설정 조정"; +"Choose Media" = "미디어 선택"; +"Converting GIF" = "GIF 변환 중"; +"Couldn't import video" = "동영상을 가져올 수 없습니다"; +"Crop & resize" = "자르기 및 크기 조절"; +"Crop & trim" = "자르기 및 트림"; +"Custom Chat Background" = "맞춤 채팅 배경"; +"Default background" = "기본 배경"; +"Dim in dark mode" = "다크 모드에서 어둡게"; +"Enable custom backgrounds" = "맞춤 배경 사용"; +"Enter a username, chat name, or thread ID." = "사용자 이름, 채팅 이름 또는 스레드 ID를 입력하세요."; +"Group" = "그룹"; +"Image Settings" = "이미지 설정"; +"Auto bubble color" = "자동 말풍선 색상"; +"Bubble color" = "말풍선 색상"; +"Me" = "나"; +"Both" = "둘 다"; +"Gradient" = "그라데이션"; +"Direction" = "방향"; +"Vertical" = "세로"; +"Horizontal" = "가로"; +"Diagonal" = "대각선"; +"Text color" = "텍스트 색상"; +"Automatic (contrast)" = "자동 (대비)"; +"Choose color…" = "색상 선택…"; +"Tap to apply · hold to edit" = "탭하여 적용 · 길게 눌러 편집"; +"Library" = "라이브러리"; +"Library, default, and per-chat overrides will be deleted." = "라이브러리, 기본값, 채팅별 설정이 삭제됩니다."; +"No Custom" = "맞춤 없음"; +"Opacity" = "불투명도"; +"Photo Library" = "사진 보관함"; +"Pick default" = "기본값 선택"; +"Pinch + drag to position" = "손가락으로 오므리거나 드래그해 위치 조정"; +"Quit and reopen Instagram for the change to take effect." = "변경 사항을 적용하려면 Instagram을 종료한 후 다시 여세요."; +"Recently set" = "최근 설정됨"; +"Remove the global fallback background" = "전역 대체 배경 제거"; +"Replace the default background image" = "기본 배경 이미지 대체"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "초기화하면 불투명도 1.0, 흐림 0, 어둡게 0으로 설정됩니다."; +"RyukGram Gallery" = "RyukGram 갤러리"; +"Search username, name, or thread ID" = "사용자 이름, 이름 또는 스레드 ID 검색"; +"Set as default" = "기본값으로 설정"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "더하기를 눌러 추가하세요. 배경을 눌러 편집, 기본값 설정 또는 삭제할 수 있습니다."; +"This Chat Background" = "이 채팅 배경"; +"Thread ID" = "스레드 ID"; +"Used only when a chat does not have its own custom background." = "채팅에 자체 맞춤 배경이 없을 때만 사용됩니다."; +"View and manage chats with custom backgrounds" = "맞춤 배경이 있는 채팅 보기 및 관리"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "위치 추가"; +"Add preset" = "프리셋 추가"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "위의 모든 항목에 영향을 줍니다. 꺼져 있을 때는 RyukGram의 테마와 표면 재정의가 iOS가 다크 모드일 때만 적용됩니다 — 라이트 모드는 그대로 유지됩니다."; +"Apply & restart" = "적용 및 재시작"; +"Background" = "배경"; +"Behavior" = "동작"; +"Change location" = "위치 변경"; +"Clipboard is not an Instagram URL" = "클립보드가 Instagram URL이 아닙니다"; +"Comments hidden" = "댓글 숨김"; +"Comments shown" = "댓글 표시됨"; +"Copied text to clipboard" = "클립보드에 텍스트 복사됨"; +"Copy" = "복사"; +"Copy bio" = "소개 복사"; +"Copy name" = "이름 복사"; +"Could not find cover image" = "커버 이미지를 찾을 수 없습니다"; +"Current: %@" = "현재: %@"; +"Dark" = "다크"; +"Disable" = "비활성화"; +"Download GIF" = "GIF 다운로드"; +"Dropped pin" = "놓은 핀"; +"Emoji" = "이모지"; +"Enable" = "활성화"; +"Enable Location Services for Instagram in Settings to use your current location." = "현재 위치를 사용하려면 설정에서 Instagram의 위치 서비스를 활성화하세요."; +"Enter emoji" = "이모지 입력"; +"Fake location" = "가짜 위치"; +"Force theme" = "테마 강제"; +"Keyboard theme" = "키보드 테마"; +"Light" = "라이트"; +"Location access denied" = "위치 접근이 거부됨"; +"Location Services off" = "위치 서비스 꺼짐"; +"Name" = "이름"; +"Nothing to copy" = "복사할 내용 없음"; +"Off, Light, Dark, or OLED" = "끄기, 라이트, 다크, OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "OLED 채팅 테마"; +"Open Settings" = "설정 열기"; +"Optional per-surface overrides. Each one is independent of the theme above." = "선택적 표면별 재정의. 각 항목은 위 테마와 독립적입니다."; +"Override iOS appearance regardless of system mode" = "시스템 모드와 관계없이 iOS 모양을 무시"; +"Override the keyboard appearance when typing" = "입력할 때 키보드 모양을 재정의"; +"Pick location" = "위치 선택"; +"Pure black DM thread + incoming bubbles" = "DM 스레드 배경과 수신 말풍선을 순수한 검정으로"; +"Save" = "저장"; +"Save preset" = "프리셋 저장"; +"Saved locations" = "저장된 위치"; +"Select color" = "색상 선택"; +"Set location" = "위치 설정"; +"The theme RyukGram applies to Instagram." = "RyukGram이 Instagram에 적용하는 테마입니다."; +"Theme" = "테마"; +"Turn Location Services on in Settings → Privacy to use your current location." = "현재 위치를 사용하려면 설정 → 개인정보에서 위치 서비스를 켜세요."; +"Type an emoji to use as the note bubble icon." = "노트 말풍선 아이콘으로 사용할 이모지를 입력하세요."; +"Profile picture" = "프로필 사진"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu개 계정? API 제한을 피하기 위해 처음 %ld개만 처리됩니다."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu개 계정? 각 요청 사이에 짧은 간격을 두고 순차적으로 실행됩니다."; +"%@ followers · %@ following" = "팔로워 %@ · 팔로잉 %@"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%d일 전"; +"%dh ago" = "%d시간 전"; +"%dm ago" = "%d분 전"; +"%lu accounts followed" = "%lu명 팔로우함"; +"%lu accounts unfollowed" = "%lu명 언팔로우함"; +"%lu followers · %lu following" = "팔로워 %lu · 팔로잉 %lu"; +"%lu followers removed" = "팔로워 %lu명 삭제됨"; +"%lu of %lu" = "%lu / %lu"; +"%lu of %lu checks on" = "검사 %lu개 중 %lu개 켜짐"; +"%lu saved · comparing against %@" = "%lu개 저장됨 · %@과(와) 비교 중"; +"(empty)" = "(비어 있음)"; +"(no analyzer data)" = "(분석 데이터 없음)"; +"a saved snapshot" = "저장된 스냅샷"; +"About Profile Analyzer" = "프로필 분석 정보"; +"All preferences (%lu)" = "모든 설정 (%lu)"; +"Analysis complete" = "분석 완료"; +"Analysis failed" = "분석 실패"; +"Another analysis is already running" = "이미 다른 분석이 진행 중입니다"; +"Available after your next scan" = "다음 분석 후 사용 가능"; +"Batch follow" = "일괄 팔로우"; +"Batch follow finished" = "일괄 팔로우 완료"; +"Batch remove followers" = "팔로워 일괄 삭제"; +"Batch remove followers finished" = "팔로워 일괄 삭제 완료"; +"Batch unfollow" = "일괄 언팔로우"; +"Batch unfollow finished" = "일괄 언팔로우 완료"; +"Categories" = "카테고리"; +"Checks" = "검사"; +"Clear visited profiles" = "방문한 프로필 지우기"; +"Compare next scan against" = "다음 스캔 비교 대상"; +"Comparing against %@" = "%@과(와) 비교 중"; +"Continue" = "계속"; +"Couldn't fetch profile information" = "프로필 정보를 가져오지 못했습니다"; +"Delete %lu snapshots? This can't be undone." = "스냅샷 %lu개를 삭제할까요? 되돌릴 수 없습니다."; +"Delete (%lu)" = "삭제 (%lu)"; +"Delete snapshots" = "스냅샷 삭제"; +"Delete this snapshot? This can't be undone." = "이 스냅샷을 삭제할까요? 되돌릴 수 없습니다."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "각 스캔은 나중에 비교할 수 있도록 팔로워와 팔로잉의 전체 사본을 저장합니다. 모든 데이터는 이 기기에만 보관됩니다."; +"Export" = "내보내기"; +"Fetching followers (%lu/%ld)…" = "팔로워 가져오는 중 (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "팔로잉 가져오는 중 (%lu/%ld)…"; +"Fetching profile info…" = "프로필 정보 가져오는 중…"; +"File is not a valid RyukGram backup." = "유효한 RyukGram 내보내기 파일이 아닙니다."; +"Filter" = "필터"; +"Filter · %lu" = "필터 · %lu"; +"First scan: %@" = "첫 분석: %@"; +"First scan: we collect your followers and following lists and save them locally." = "첫 분석: 팔로워와 팔로잉 목록을 수집해 기기에 저장합니다."; +"Follow back" = "맞팔로우"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "팔로워 수가 %ld명을 초과하여 API 제한을 피하기 위해 분석이 비활성화되었습니다."; +"Followers" = "팔로워"; +"Following… %lu / %lu" = "팔로우 중… %lu / %lu"; +"Gained since last scan" = "마지막 분석 이후 증가"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "참고: 이 기능은 Instagram 비공개 API를 사용합니다. 연속 실행하거나 팔로우/언팔로우를 많이 한 직후에 실행하면 짧은 제한에 걸릴 수 있습니다. 드물게, 본인 책임하에 사용하세요."; +"Import complete" = "가져오기 완료"; +"Include" = "포함"; +"Keep newest" = "최신 항목 유지"; +"Keep newest snapshots" = "최신 스냅샷 유지"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "대형 계정 차단: 팔로워가 13,000명을 초과하면 Instagram이 앱 전체에 제한을 걸 수 있어 분석이 비활성화됩니다."; +"Last scan: %@" = "마지막 분석: %@"; +"Logs every profile you open. Stays on-device." = "여는 모든 프로필을 기록합니다. 기기에만 저장됩니다."; +"Lost followers" = "이탈 팔로워"; +"Most visited" = "가장 많이 방문"; +"Mutual followers" = "맞팔 팔로워"; +"Name: %@ → %@" = "이름: %@ → %@"; +"New followers" = "새 팔로워"; +"NEW" = "신규"; +"New first" = "새 항목 먼저"; +"New only" = "새 항목만"; +"No active Instagram session found" = "활성화된 Instagram 세션을 찾을 수 없습니다"; +"No results" = "결과 없음"; +"No scan yet" = "분석 기록 없음"; +"Not following you back" = "맞팔하지 않음"; +"Not verified only" = "미인증 계정만"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "업로드되지 않습니다 — 모든 데이터는 이 기기에 저장되며 휴지통 아이콘으로 삭제할 수 있습니다."; +"Nothing was applied." = "적용된 내용이 없습니다."; +"OK" = "확인"; +"Older snapshots beyond the limit are removed automatically" = "제한을 초과한 오래된 스냅샷은 자동으로 제거됩니다"; +"Older snapshots beyond this limit are deleted on the next scan." = "이 제한을 초과한 오래된 스냅샷은 다음 스캔 시 삭제됩니다."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "제거할 항목을 선택하세요. 스냅샷은 스캔 차이와 기록된 모든 스냅샷을 지웁니다. 방문한 프로필은 방문 기록을 지웁니다."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "각 스캔이 계산할 카테고리를 선택하세요. 비활성화된 검사는 흐리게 표시되며 건너뛰어 계산되지도 표시되지도 않습니다."; +"Posts" = "게시물"; +"Preferences" = "설정"; +"Previous scan" = "이전 스캔"; +"Private account" = "비공개 계정"; +"Private only" = "비공개만"; +"Profile Analyzer" = "프로필 분석"; +"Profile Analyzer data" = "프로필 분석 데이터"; +"Profile picture changed" = "프로필 사진 변경됨"; +"Profile updates" = "프로필 변경"; +"Profiles you've opened recently" = "최근에 연 프로필"; +"Raw" = "원본"; +"Raw JSON" = "원본 JSON"; +"Record snapshots" = "스냅샷 기록"; +"Remove @%@ as a follower?" = "@%@님을 팔로워에서 삭제할까요?"; +"Remove follower" = "팔로워 삭제"; +"Removing… %lu / %lu" = "삭제 중… %lu / %lu"; +"Recording" = "녹음"; +"Request failed" = "요청 실패"; +"Reset analyzer data" = "분석 데이터 초기화"; +"Reset complete" = "초기화 완료"; +"Reset everything" = "모두 재설정"; +"Reset selected data?" = "선택한 데이터를 초기화할까요?"; +"Reset snapshots" = "스냅샷 재설정"; +"Rolling — always your last run" = "롤링 — 항상 마지막 실행"; +"Run analysis" = "분석 실행"; +"Run your first analysis" = "첫 분석을 실행하세요"; +"Save a dated entry on every scan" = "스캔할 때마다 날짜가 기록된 항목 저장"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "두 번째 분석부터: 매 분석마다 이전과 비교해 새/이탈 팔로워, 본인의 팔로우/언팔로우 변화, 프로필 변경을 보여줍니다."; +"Settings" = "설정"; +"Since last scan" = "마지막 분석 이후"; +"Snapshot" = "스냅샷"; +"Snapshot saved" = "스냅샷 저장됨"; +"Snapshots" = "스냅샷"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "스냅샷을 사용하면 각 스캔을 보관하고 새 스캔이 비교할 대상을 선택할 수 있습니다. 방문 추적은 열어 본 모든 프로필을 기록하여 여기서 확인할 수 있게 합니다."; +"Sort" = "정렬"; +"Starting…" = "시작 중…"; +"They follow you, you don't follow back" = "나를 팔로우 중이지만 내가 맞팔하지 않음"; +"This can't be undone." = "되돌릴 수 없습니다."; +"Ticked data will be cleared. Tap a row to see what's stored." = "선택한 데이터가 삭제됩니다. 저장된 내용을 보려면 항목을 탭하세요."; +"Today" = "오늘"; +"Too many followers" = "팔로워가 너무 많음"; +"Too many followers to analyze" = "분석하기에는 팔로워가 너무 많습니다"; +"Track visited profiles" = "방문한 프로필 추적"; +"Tracking" = "추적"; +"Tracking off — enable below to log visits" = "추적 꺼짐 — 아래에서 활성화하여 방문 기록"; +"Unfollow" = "언팔로우"; +"Unfollow %lu" = "언팔로우 %lu"; +"Unfollow @%@?" = "@%@ 언팔로우할까요?"; +"Unfollowed you since last scan" = "마지막 분석 이후 언팔로우함"; +"Unfollowing… %lu / %lu" = "언팔로우 중… %lu / %lu"; +"Unlimited" = "무제한"; +"Username A → Z" = "아이디 A → Z"; +"Username Z → A" = "아이디 Z → A"; +"Username, name or picture changes" = "아이디·이름·사진 변경"; +"Username: @%@ → @%@" = "아이디: @%@ → @%@"; +"Using %@ across %lu snapshots." = "스냅샷 %2$lu개에서 %1$@ 사용 중."; +"Verified only" = "인증 계정만"; +"Visited" = "방문함"; +"Visited profiles" = "방문한 프로필"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "Instagram API 제한을 피하기 위해 팔로워 수가 %ld명을 초과하면 실행하지 않습니다."; +"You both follow each other" = "서로 팔로우하는 사이"; +"You don't follow back" = "내가 맞팔하지 않은 사람"; +"You follow them, they don't follow back" = "팔로우 중이지만 맞팔하지 않음"; +"You started following" = "새로 팔로우 시작"; +"Your current scan was archived" = "현재 스캔이 보관되었습니다"; +"You unfollowed" = "언팔로우함"; +"your previous scan" = "이전 스캔"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "“이전 스캔”은 항상 마지막 실행을 기준으로 측정합니다. 대신 고정된 시점과 비교하려면 저장된 스냅샷을 선택하세요."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ 용량이 커지고 있습니다 — 제한을 낮추거나 오래된 스냅샷을 삭제해 공간을 확보하세요."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "절대 형식"; +"Add chat" = "채팅 추가"; +"Add custom domain" = "사용자 지정 도메인 추가"; +"Add to list?" = "목록에 추가하시겠습니까?"; +"Add user" = "사용자 추가"; +"Apply" = "적용"; +"Apply to" = "다음에 적용"; +"Chats" = "채팅"; +"Colored" = "색상"; +"Could not read file." = "파일을 읽을 수 없습니다."; +"Could not resolve user ID" = "사용자 ID를 확인할 수 없습니다"; +"Current location" = "현재 위치"; +"Custom" = "사용자 지정"; +"Delete" = "삭제"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "IG의 각 화면은 서로 다른 NSDate 포매터를 사용합니다. 이 형식을 적용할 화면을 켜세요."; +"Enable fake location" = "가짜 위치 활성화"; +"Excluded chats" = "제외된 채팅"; +"Excluded users" = "제외된 사용자"; +"Follow default" = "기본값 따르기"; +"Force OFF (allow unsends)" = "강제 끄기 (전송 취소 허용)"; +"Force ON (preserve unsends)" = "강제 켜기 (전송 취소 보존)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "형식에 시간이 포함될 때 초도 함께 표시합니다. 사용자 지정 형식은 {ss}로 초를 직접 제어합니다."; +"Add custom format…" = "사용자 지정 형식 추가…"; +"Edit" = "편집"; +"Template" = "템플릿"; +"Placeholders" = "자리표시자"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "자리표시자는 날짜 요소로 대체되며, 그 외 내용은 그대로 표시됩니다."; +"Tap a placeholder to insert it at the cursor." = "자리표시자를 탭하면 커서 위치에 삽입됩니다."; +"Included chats" = "포함된 채팅"; +"Included users" = "포함된 사용자"; +"KD: default" = "KD: 기본값"; +"KD: ON" = "KD: 켜짐"; +"Keep-deleted" = "삭제 메시지 보관"; +"Keep-deleted override" = "삭제 메시지 보관 재정의"; +"Name (A–Z)" = "이름 (가나다)"; +"No DM thread found with @%@" = "@%@의 DM 스레드를 찾을 수 없습니다"; +"Presets" = "프리셋"; +"Recently added" = "최근 추가됨"; +"Relative time" = "상대 시간"; +"Relative within" = "상대 시간 적용 범위"; +"Remove from list" = "목록에서 제거"; +"Reset" = "재설정"; +"Search" = "검색"; +"Search address or place" = "주소 또는 장소 검색"; +"Search by name or username" = "이름 또는 사용자 이름으로 검색"; +"Search by username or name" = "사용자 이름 또는 이름으로 검색"; +"Select location on map" = "지도에서 위치 선택"; +"Set current location" = "현재 위치 설정"; +"Set keep-deleted override" = "삭제 메시지 보관 재정의 설정"; +"Show map button" = "지도 버튼 표시"; +"Show relative time for dates younger than this many days. 0 disables it." = "지정한 일수보다 최근 날짜에만 상대 시간을 표시합니다. 0이면 비활성화됩니다."; +"Show seconds" = "초 표시"; +"Sort by" = "정렬 기준"; +"Thread" = "스레드"; +"Time" = "시간"; +"Use this location" = "이 위치 사용"; +"User '%@' not found" = "'%@' 사용자를 찾을 수 없습니다"; +"Username (A–Z)" = "사용자명 (가나다)"; +"Within %ld days" = "%ld일 이내"; +"Within 1 day" = "1일 이내"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "비밀번호를 찾을 수 없습니다"; +"No text field found" = "텍스트 필드를 찾을 수 없습니다"; +"Refresh Reels?" = "릴스를 새로고침하시겠습니까?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "계정 %lu개"; +"%lu loaded" = "%lu개 불러옴"; +"%lu loaded · all loaded" = "%lu개 불러옴 · 전체 불러옴"; +"Doesn't follow you" = "회원님을 팔로우하지 않음"; +"Everyone is already loaded." = "이미 모두 불러왔습니다."; +"Filter & sort" = "필터 및 정렬"; +"Follows me" = "나를 팔로우함"; +"Follows me first" = "나를 팔로우한 순"; +"Follows you" = "회원님을 팔로우함"; +"Hides everyone who doesn't match all picked filters." = "선택한 모든 필터에 맞지 않는 사람을 모두 숨깁니다."; +"Jump to bottom" = "맨 아래로 이동"; +"Jump to top" = "맨 위로 이동"; +"List" = "목록"; +"List fully loaded" = "목록 전체 불러옴"; +"Load more" = "더 불러오기"; +"Loaded more" = "추가로 불러옴"; +"Mutuals" = "맞팔"; +"Mutuals first" = "맞팔 우선"; +"Note copied" = "노트 복사됨"; +"People I follow" = "내가 팔로우하는 사람"; +"People I follow first" = "내가 팔로우하는 사람 우선"; +"Reverse order" = "순서 반대로"; +"Show only" = "다음만 표시"; +"Verified" = "인증됨"; +"Verified first" = "인증 계정 우선"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(설정 안 됨)"; +"720p • progressive • fastest" = "720p • 프로그레시브 • 가장 빠름"; +"Add language" = "언어 추가"; +"Album name" = "앨범 이름"; +"Are you sure?" = "확실합니까?"; +"Bundle" = "번들"; +"Copy audio URL" = "오디오 URL 복사"; +"Copy quality info" = "품질 정보 복사"; +"Copy video URL" = "동영상 URL 복사"; +"Could not access reel media" = "릴스 미디어에 접근할 수 없습니다"; +"Could not access reel photo" = "릴스 사진에 접근할 수 없습니다"; +"Could not write file." = "파일을 쓸 수 없습니다."; +"Download all and share?" = "모두 다운로드하고 공유하시겠습니까?"; +"Download Quality" = "다운로드 품질"; +"Downloading %d%%" = "다운로드 중 %d%%"; +"e.g. 1000000" = "예: 1000000"; +"Localization file not found" = "번역 파일을 찾을 수 없습니다"; +"Enter the language code (e.g. fr, de, ja)" = "언어 코드를 입력하세요 (예: fr, de, ja)"; +"Error" = "오류"; +"Extras" = "추가 기능"; +"FFmpegKit Debug" = "FFmpegKit 디버그"; +"File is empty or not a valid .strings file." = "파일이 비어 있거나 유효한 .strings 파일이 아닙니다."; +"KD: OFF" = "KD: 끔"; +"Keep-deleted: OFF" = " • 삭제된 메시지 보관: 끔"; +"Keep-deleted: ON" = " • 삭제된 메시지 보관: 켬"; +"Later" = "나중에"; +"Loading" = "불러오는 중"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "RyukGram이 저장하는 사진 앨범 이름입니다. 기본값으로 되돌리려면 비워 두세요."; +"Next" = "다음"; +"No results found." = "결과를 찾을 수 없습니다."; +"No!" = "아니요!"; +"Pick a language to update, or add a new one" = "업데이트할 언어를 고르거나 새 언어를 추가하세요"; +"Preset" = "프리셋"; +"Restart" = "재시작"; +"Restart now" = "지금 다시 시작"; +"Restart required" = "재시작 필요"; +"Saved preset \"%@\"" = "프리셋 \"%@\" 저장됨"; +"selected" = "선택됨"; +"Shared icon, or override per button" = "공유 아이콘 또는 버튼별 재정의"; +"Speed" = "속도"; +"Unset" = "설정 안 함"; +"Update localization" = "번역 업데이트"; +"Updated %@ (%ld keys). Restart to apply." = "%@ 업데이트됨 (%ld개 키). 다시 시작하여 적용하세요."; +"Use default" = "기본값 사용"; +"Username or PK" = "사용자 이름 또는 PK"; +"Username or raw user PK" = "사용자 이름 또는 원시 사용자 PK"; +"Yes" = "예"; +"You must restart the app to apply this change" = "이 변경 사항을 적용하려면 앱을 다시 시작해야 합니다"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "RyukGram이 마음에 드시나요?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "무료이며 기기 밖으로 나가는 정보는 없습니다. 잘 쓰고 계신다면 커피 한 잔이 큰 힘이 됩니다."; +"Donate" = "후원하기"; +"I already did" = "이미 했어요"; +"Maybe later" = "나중에"; +"This means a lot" = "정말 큰 힘이 됩니다"; +"Appreciate the support" = "응원해 주셔서 감사합니다"; +"No worries, enjoy the tweak" = "괜찮아요, 즐겁게 사용하세요"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, 후원"; +"About" = "정보"; +"Arabic translation" = "아랍어 번역"; +"Chinese (Traditional and Simplified) translation" = "중국어 (번체 및 간체) 번역"; +"Credits" = "크레딧"; +"Developers" = "개발자"; +"installed" = "설치됨"; +"Korean translation" = "한국어 번역"; +"Portuguese (Brazil) translation" = "포르투갈어 (브라질) 번역"; +"Turkish translation" = "터키어 번역"; +"Vietnamese translation" = "베트남어 번역"; +"French translation" = "프랑스어 번역"; +"Japanese translation" = "일본어 번역"; +"Code contributions" = "코드 기여"; +"Following feed mode (from InstaSane)" = "팔로잉 피드 모드 (InstaSane 기반)"; +"latest" = "최신"; +"Links" = "링크"; +"No releases" = "릴리스 없음"; +"SCInsta developer" = "SCInsta 개발자"; +"Release notes" = "릴리스 노트"; +"Releases" = "릴리스"; +"Report an issue" = "문제 신고"; +"Russian translation" = "러시아어 번역"; +"RyukGram developer" = "RyukGram 개발자"; +"Join Telegram channel" = "Telegram 채널 참여"; +"Source code" = "소스 코드"; +"View on GitHub" = "GitHub에서 보기"; +"Spanish translation" = "스페인어 번역"; +"Inspirations" = "영감"; +"Inspirations, contributors, translators" = "영감, 기여자, 번역가"; +"Code and research" = "코드 및 연구"; +"Translators" = "번역가"; +"BHInstagram developer" = "BHInstagram 개발자"; +"OLED theme inspiration" = "OLED 테마 영감"; +"Donate to Ryuk" = "Ryuk 후원하기"; +"Support RyukGram development" = "RyukGram 개발 후원"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram은 SCInsta에서 영감을 받은 독립 프로젝트입니다."; +"Browse changes from previous releases" = "이전 릴리스의 변경 사항 보기"; +"Code inspiration" = "코드 영감"; +"zxPluginsInject sideload compatibility shim" = "zxPluginsInject 사이드로드 호환성 심"; +"Telegram channel" = "Telegram 채널"; +"Testing and feature suggestions" = "테스트 및 기능 제안"; +"Version" = "버전"; +"Version, credits, and links" = "버전, 크레딧, 링크"; +"What's new in RyukGram" = "RyukGram의 새로운 기능"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • 프로그레시브 • 무음"; +"Audio only" = "오디오만"; +"Audio ready" = "오디오 준비됨"; +"Audio track %ld" = "오디오 트랙 %ld"; +"Download video at the highest available quality" = "가능한 가장 높은 품질로 동영상 다운로드"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "DASH 스트림을 통해 HD 동영상을 다운로드하고 H.264로 인코딩합니다. FFmpegKit가 필요합니다."; +"Encoding in software" = "소프트웨어로 인코딩 중"; +"Encoding speed" = "인코딩 속도"; +"Enhanced downloads" = "향상된 다운로드"; +"Faster = lower quality" = "빠름 = 낮은 품질"; +"FFmpeg not available" = "FFmpeg 사용 불가"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit을 사용할 수 없습니다. 사이드로딩된 IPA 또는 _ffmpeg .deb 버전을 설치하여 활성화하세요."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "백그라운드에서는 하드웨어 인코더를 사용할 수 없습니다 — 품질 설정은 유지되었습니다."; +"No audio track found" = "오디오 트랙을 찾을 수 없음"; +"Photo" = "사진"; +"Photo quality" = "사진 품질"; +"Size unknown" = "크기 알 수 없음"; +"calculating size…" = "크기 계산 중…"; +"silent" = "무음"; +"Use highest resolution available" = "사용 가능한 최고 해상도 사용"; +"Video encoder locked up — restart Instagram to encode again" = "비디오 인코더가 멈췄습니다 — 다시 인코딩하려면 Instagram을 재시작하세요"; +"Video only" = "비디오만"; +"Video-only & every audio track" = "비디오만 및 모든 오디오 트랙"; +"Video quality" = "비디오 품질"; +"Which quality to download" = "어떤 품질로 다운로드할지 선택하세요"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@'은(는) 이 FFmpegKit 빌드에 없습니다 — 대신 하드웨어 h264를 사용합니다."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10비트 4:2:0. 약 2배 느림, 더 매끄러운 그라데이션."; +"10-bit colour. Slower, smoother gradients. Software only." = "10비트 색상. 더 느림, 더 매끄러운 그라데이션. 소프트웨어 전용."; +"1080p30 baseline." = "1080p30 기준."; +"4K30 baseline." = "4K30 기준."; +"8-bit 4:2:0. Universal default." = "8비트 4:2:0. 범용 기본값."; +"8-bit 4:2:2 chroma. Niche playback." = "8비트 4:2:2 크로마. 일부 재생용."; +"8-bit 4:2:2 chroma. Software only." = "8비트 4:2:2 크로마. 소프트웨어 전용."; +"8-bit 4:4:4 chroma. Software only." = "8비트 4:4:4 크로마. 소프트웨어 전용."; +"8-bit 4:4:4 full chroma. Niche playback." = "8비트 4:4:4 풀 크로마. 일부 재생용."; +"8-bit. Best for modern devices." = "8비트. 최신 기기에 적합."; +"Advanced encoding" = "고급 인코딩"; +"Advanced encoding settings" = "고급 인코딩 설정"; +"Archival quality." = "보관용 품질."; +"Audio bitrate" = "오디오 비트레이트"; +"Audio channels" = "오디오 채널"; +"Audio codec" = "오디오 코덱"; +"Audio conversion failed" = "오디오 변환 실패"; +"Audio sample rate" = "오디오 샘플레이트"; +"Balanced. libx264 default." = "균형. libx264 기본값."; +"Best practical quality per bit." = "비트당 최상의 실용 품질."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "비트레이트, 채널, 샘플레이트는 코덱이 AAC(재인코딩)일 때만 적용됩니다."; +"Cartoons / anime." = "만화 / 애니메이션."; +"Cinematic. Smaller files." = "영화 같은 느낌. 더 작은 파일."; +"Codec" = "코덱"; +"Container" = "컨테이너"; +"Copy (passthrough)" = "복사 (패스스루)"; +"CRF quality" = "CRF 품질"; +"Downloading video…" = "동영상 다운로드 중…"; +"Easier to play back on weak devices." = "성능이 낮은 기기에서 재생하기 쉬움."; +"Encoder unavailable" = "인코더 사용 불가"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "예: 8M, 12M, 25M, 4500k. 자동으로 하려면 비워 두세요."; +"Failed to download video" = "동영상 다운로드 실패"; +"Fast, fixed-bitrate, GPU-accelerated." = "빠름, 고정 비트레이트, GPU 가속."; +"Fastest, worst compression." = "가장 빠름, 압축 최악."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart는 MP4 인덱스를 앞으로 옮겨 파일이 완전히 버퍼링되기 전에 재생을 시작할 수 있게 합니다. 메타데이터 제거는 파일에서 소스 태그(생성 날짜, 핸들러, 인코더)를 제거합니다."; +"FFmpeg documentation" = "FFmpeg 문서"; +"FFmpeg mux failed" = "FFmpeg 먹싱 실패"; +"Frame rate" = "프레임 레이트"; +"H.264 level" = "H.264 레벨"; +"H.264 profile" = "H.264 프로파일"; +"Hardware (VideoToolbox)" = "하드웨어 (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "하드웨어 (VideoToolbox)는 yuv420p만 지원합니다 — '%@'은(는) 무시되었습니다. 사용하려면 소프트웨어 (libx264)로 전환하세요."; +"Keep original audio. Fast." = "원본 오디오 유지. 빠름."; +"Keep the source frame rate." = "원본 프레임 레이트 유지."; +"Let the encoder pick." = "인코더가 선택하도록 함."; +"Live-action video." = "실사 동영상."; +"Lossless. Huge files." = "무손실. 매우 큰 파일."; +"Low-latency streaming." = "저지연 스트리밍."; +"Manual ffmpeg controls in place of Encoding speed." = "인코딩 속도 대신 수동 ffmpeg 컨트롤."; +"Marginal gain, huge time cost." = "미미한 향상, 막대한 시간 소요."; +"Max resolution" = "최대 해상도"; +"Mono" = "모노"; +"No tuning. Default." = "튜닝 없음. 기본값."; +"None" = "없음"; +"Pixel format" = "픽셀 포맷"; +"Pixel format ignored" = "픽셀 포맷 무시됨"; +"Preserve film grain." = "필름 그레인 유지."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "프리셋과 튠은 소프트웨어 (libx264)에만 적용됩니다. 프로파일을 픽셀 포맷과 짝지으세요: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. 불일치 시 자동으로 다운컨버트됩니다. 하드웨어는 항상 yuv420p를 사용합니다."; +"Re-encode. Use when source is opus or unsupported." = "재인코딩. 소스가 opus이거나 지원되지 않을 때 사용."; +"Reset advanced encoding" = "고급 인코딩 초기화"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "동영상 비트레이트를 설정하면 소프트웨어가 고정 비트레이트로 전환되어 CRF를 무시합니다. CRF를 사용하려면 비워 두세요. 하드웨어는 비트레이트를 사용합니다."; +"Slideshow-like content." = "슬라이드쇼 같은 콘텐츠."; +"Slower, better compression per bit." = "더 느림, 비트당 더 나은 압축."; +"Smaller, visible artefacts." = "더 작음, 눈에 띄는 화질 손상."; +"Software (libx264)" = "소프트웨어 (libx264)"; +"Standard 8-bit." = "표준 8비트."; +"Stereo" = "스테레오"; +"Streaming default." = "스트리밍 기본값."; +"Strip metadata" = "메타데이터 제거"; +"Top of AAC." = "최고급 AAC."; +"Tune" = "튠"; +"Unknown error" = "알 수 없는 오류"; +"Very high quality." = "매우 높은 품질."; +"Video bitrate" = "동영상 비트레이트"; +"Video codec" = "동영상 코덱"; +"Visually lossless. RyukGram default." = "시각적으로 무손실. RyukGram 기본값."; +"Widest compatibility, no B-frames." = "가장 넓은 호환성, B 프레임 없음."; +"Worst quality." = "최저 품질."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "길게 누르기 제스처"; +"Inserts a button in the profile navigation header" = "프로필 내비게이션 헤더에 버튼을 삽입합니다"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "프로필 헤더에 복사, 사진 보기, 공유, 저장, 프로필 정보 항목이 있는 RyukGram 작업 버튼을 추가합니다. 탭하면 기본적으로 메뉴가 열립니다. 메뉴 구성에서 탭 동작을 변경하세요."; +"Configure menu" = "메뉴 구성"; +"Reorder, enable/disable, set default tap, show date" = "순서 변경, 켜기/끄기, 기본 탭 설정, 날짜 표시"; +"Reorder, enable/disable, set default tap" = "순서 변경, 켜기/끄기, 기본 탭 설정"; +"RyukGram profile actions" = "RyukGram 프로필 작업"; +"Reorder sections" = "섹션 순서 변경"; +"Drag the ≡ handle to reorder sections." = "≡ 핸들을 끌어 섹션 순서를 바꾸세요."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "≡ 핸들을 끌어 순서를 바꾸세요. 행을 끄면 메뉴에서 숨겨집니다. 섹션을 서브메뉴로 표시하면 해당 작업이 단일 항목 뒤로 접힙니다."; +"Show as submenu" = "서브메뉴로 표시"; +"Collapse this section's actions behind a single entry" = "이 섹션의 작업을 단일 항목 뒤로 접기"; +"Configure: %@" = "구성: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "한 번 탭했을 때의 동작입니다. 길게 누르면 항상 전체 메뉴가 열립니다."; +"Reset to defaults" = "기본값으로 재설정"; +"This will restore the default sections, order, and toggles for this menu." = "이 메뉴의 기본 섹션, 순서, 토글이 복원됩니다."; +"Audio & visibility" = "오디오 및 표시"; +"DM disappearing media" = "DM 사라지는 미디어"; +"Bulk download" = "일괄 다운로드"; +"Feed settings" = "피드 설정"; +"Reels settings" = "릴스 설정"; +"Profile settings" = "프로필 설정"; +"Stories settings" = "스토리 설정"; +"Copy ID" = "ID 복사"; +"Copy Info" = "정보 복사"; +"Copy all info" = "모든 정보 복사"; +"Copy media URL" = "미디어 URL 복사"; +"Copy profile link" = "프로필 링크 복사"; +"Copy username" = "아이디 복사"; +"Download" = "다운로드"; +"Download to Gallery" = "갤러리에 다운로드"; +"Download all to Gallery" = "갤러리에 모두 다운로드"; +"Exclude/include user" = "사용자 제외/포함"; +"Mute / unmute audio" = "오디오 음소거/해제"; +"Save picture to Gallery" = "갤러리에 사진 저장"; +"Share picture" = "사진 공유"; +"View picture" = "사진 보기"; +"Bio" = "소개"; +"ID" = "ID"; +"Info" = "정보"; +"Profile info" = "프로필 정보"; +"Profile link" = "프로필 링크"; +"Picture not found" = "사진을 찾을 수 없음"; +"Private profile" = "비공개 프로필"; +"Profile unavailable" = "프로필을 사용할 수 없음"; +"Public profile" = "공개 프로필"; +"Username" = "아이디"; +"Followers: %@" = "팔로워: %@"; +"Following: %@" = "팔로잉: %@"; +"Copied %@" = "%@ 복사됨"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(알 수 없음)"; +"Added %lu" = "%lu개 추가됨"; +"All files deleted" = "모든 파일 삭제됨"; +"Browsing" = "탐색"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "이전 버전에서 저장한 항목 %lu개를 찾았습니다. 지금 갤러리로 복원할까요?"; +"Gallery data from a previous version was found. Restore it now?" = "이전 버전의 갤러리 데이터를 찾았습니다. 지금 복원할까요?"; +"Gallery restored" = "갤러리 복원됨"; +"Import failed" = "가져오기 실패"; +"Import to Gallery" = "갤러리로 가져오기"; +"Imported" = "가져옴"; +"Importing…" = "가져오는 중…"; +"Not Now" = "나중에"; +"Nothing imported" = "가져온 항목 없음"; +"Restore" = "복원"; +"Restore Gallery" = "갤러리 복원"; +"Restore failed" = "복원 실패"; +"Restoring gallery…" = "갤러리 복원 중…"; +"By source" = "출처별"; +"By type" = "유형별"; +"By user" = "사용자별"; +"Clear filters" = "필터 지우기"; +"Comment" = "댓글"; +"Create" = "만들기"; +"Create & Move" = "만들고 이동"; +"Delete %@?" = "%@을(를) 삭제할까요?"; +"Delete all files" = "모든 파일 삭제"; +"Delete all images" = "모든 이미지 삭제"; +"Delete all videos" = "모든 동영상 삭제"; +"Delete by user" = "사용자별 삭제"; +"Delete DM media" = "DM 미디어 삭제"; +"Delete feed posts" = "피드 게시물 삭제"; +"Delete files" = "파일 삭제"; +"Delete Folder" = "폴더 삭제"; +"Delete from Gallery?" = "갤러리에서 삭제할까요?"; +"Delete profile pictures" = "프로필 사진 삭제"; +"Delete reels" = "릴스 삭제"; +"Delete selected" = "선택 항목 삭제"; +"Delete Selected Files?" = "선택한 파일을 삭제하시겠습니까?"; +"Delete stories" = "스토리 삭제"; +"Delete thumbnails" = "썸네일 삭제"; +"Deleted from Gallery" = "갤러리에서 삭제됨"; +"Deleted selected files" = "선택한 파일이 삭제됨"; +"Deselect All" = "전체 선택 해제"; +"DM media deleted" = "DM 미디어 삭제됨"; +"DMs" = "DM"; +"Each user appears as a folder next to your real folders." = "각 사용자가 실제 폴더 옆에 폴더로 표시됩니다."; +"Each user gets a labelled section in the grid/list." = "각 사용자가 그리드/목록에 별도의 섹션을 가집니다."; +"Enable gallery" = "갤러리 활성화"; +"Failed" = "실패"; +"Failed to delete" = "삭제 실패"; +"Favorite" = "즐겨찾기"; +"Favorite selected" = "선택 항목 즐겨찾기"; +"Favorites only" = "즐겨찾기만"; +"Feed posts deleted" = "피드 게시물 삭제됨"; +"Files deleted" = "파일 삭제됨"; +"Flat list. No grouping." = "단일 목록. 그룹 없음."; +"Folder name" = "폴더 이름"; +"Folders" = "폴더"; +"From RyukGram Gallery" = "RyukGram 갤러리의 오디오"; +"Gallery" = "갤러리"; +"Gallery only" = "갤러리만"; +"Gallery save mode" = "갤러리 저장 모드"; +"Gallery Settings" = "갤러리 설정"; +"GIFs" = "GIF"; +"Grid columns" = "그리드 열 수"; +"Grid view" = "그리드 보기"; +"Group by user" = "사용자별 그룹화"; +"Group first by" = "우선 그룹화 기준"; +"Order by" = "정렬 기준"; +"Favorites first" = "즐겨찾기 먼저"; +"Any time" = "전체 기간"; +"This year" = "올해"; +"%ld columns" = "%ld열"; +"Hold DM tab to open gallery" = "DM 탭을 길게 눌러 갤러리 열기"; +"Images" = "이미지"; +"Images deleted" = "이미지 삭제됨"; +"Images first" = "이미지 먼저"; +"item" = "항목"; +"items" = "항목"; +"Largest first" = "큰 파일부터"; +"List view" = "목록 보기"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "하단 탭바의 받은편지함 버튼을 길게 눌러 RyukGram 갤러리를 엽니다"; +"Manage" = "관리"; +"More" = "더보기"; +"Move selected" = "선택 항목 이동"; +"Move to Folder" = "폴더로 이동"; +"Name A-Z" = "이름 A-Z"; +"Name Z-A" = "이름 Z-A"; +"New Folder" = "새 폴더"; +"New folder…" = "새 폴더…"; +"Newest first" = "최신순"; +"No files in Gallery" = "갤러리에 파일이 없습니다"; +"No files to delete" = "삭제할 파일 없음"; +"No matching files" = "일치하는 파일 없음"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "RyukGram을 통해 다운로드한 미디어의 기기 내 라이브러리입니다. 저장 모드는 '사진 앱에 다운로드'가 실제로 어디에 쓸지 선택합니다."; +"Open" = "열기"; +"Open Original Post" = "원본 게시물 열기"; +"Options" = "옵션"; +"Other" = "기타"; +"Photos + Gallery" = "사진 앱 + 갤러리"; +"Photos only" = "사진 앱만"; +"Profile pictures deleted" = "프로필 사진 삭제됨"; +"Reels deleted" = "릴스 삭제됨"; +"Rename" = "이름 변경"; +"Rename Folder" = "폴더 이름 변경"; +"Root" = "루트"; +"Save media from the preview screen\nto see it here." = "미리 보기 화면에서 미디어를 저장하면\n여기에 표시됩니다."; +"Saved %lu items to Gallery" = "갤러리에 %lu개의 항목이 저장됨"; +"Saved to Gallery" = "갤러리에 저장됨"; +"Saving to Gallery" = "갤러리에 저장 중..."; +"Search users" = "사용자 검색"; +"Sections" = "섹션"; +"Select All" = "전체 선택"; +"Share" = "공유"; +"Share selected" = "선택 항목 공유"; +"Show favorites at top" = "즐겨찾기를 상단에 표시"; +"Show gallery entries in download menus and unlock the gallery button" = "다운로드 메뉴에 갤러리 항목을 표시하고 갤러리 버튼을 활성화합니다"; +"Smallest first" = "작은 파일부터"; +"Source" = "출처"; +"Source user" = "출처 사용자"; +"Storage" = "저장 공간"; +"Stories deleted" = "스토리 삭제됨"; +"Story" = "스토리"; +"The original content may no longer exist." = "원본 콘텐츠가 더 이상 존재하지 않을 수 있습니다."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "이 폴더에는 %ld개의 파일이 있습니다. 상위 폴더로 이동됩니다."; +"This folder is empty." = "이 폴더는 비어 있습니다."; +"This will permanently remove %ld file%@ from the gallery." = "갤러리에서 %ld개 파일%@을(를) 영구적으로 제거합니다."; +"This will permanently remove %ld file(s)." = "%ld개의 파일이 영구적으로 제거됩니다."; +"This will permanently remove this file from the gallery." = "이 파일이 갤러리에서 영구적으로 제거됩니다."; +"Thumb" = "썸네일"; +"Thumbnails deleted" = "썸네일 삭제됨"; +"to Gallery" = "갤러리에"; +"Total files" = "전체 파일"; +"Total size" = "전체 크기"; +"Type" = "유형"; +"Unable to open original post" = "원본 게시물을 열 수 없음"; +"Unable to open profile" = "프로필을 열 수 없음"; +"Unfavorite" = "즐겨찾기 해제"; +"Unknown user" = "알 수 없는 사용자"; +"User files deleted" = "사용자 파일 삭제됨"; +"Videos" = "동영상"; +"Videos deleted" = "동영상 삭제됨"; +"Videos first" = "동영상 먼저"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "켜면 현재 정렬 및 폴더 컨텍스트 내에서 즐겨찾기가 다른 파일보다 위에 고정됩니다."; +"Where 'Download to Photos' actually writes when gallery is on" = "갤러리가 켜져 있을 때 '사진 앱에 다운로드'가 실제로 쓰는 위치"; +"Yesterday" = "어제"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "홈 단축 버튼"; +"Show the extra button on the home top bar" = "홈 상단 바의 추가 버튼 구성"; +"Auto" = "자동"; +"Icon" = "아이콘"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "≡ 핸들을 끌어 순서를 바꿉니다. 행을 끄면 해당 대상이 숨겨집니다. 한 동작이 켜져 있으면 탭으로 바로 실행하고, 두 개 이상이면 탭하면 메뉴를 표시합니다."; +"Changelog" = "변경 사항"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "홈 상단 바의 게시물 작성 + 버튼 옆에 추가 단축 버튼을 표시합니다."; +"All buttons" = "모든 버튼"; +"System" = "시스템"; +"Instagram language" = "Instagram 언어"; +"Choose icon, reorder actions, and enable menu items" = "아이콘 선택, 작업 순서 변경, 메뉴 항목 활성화"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "홈 상단 바에 표시되는 아이콘을 선택합니다. 자동은 작업이 하나만 활성화된 경우 선택된 작업 아이콘을 사용합니다."; +"Configure button" = "버튼 구성"; +"Global Action Icons" = "전역 작업 아이콘"; +"Interface" = "인터페이스"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "특정 버튼의 아이콘을 재정의합니다. 기본값으로 둔 버튼은 위의 공유 아이콘을 따릅니다."; +"Per button" = "버튼별"; +"Show home shortcut button" = "홈 단축 버튼 표시"; +"%ld new" = "새 %ld개"; +"Tab bar" = "탭 바"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "앱 내 통합 알림. 스타일, 위치, 작업별 라우팅을 선택하세요."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "드래그하여 알림 위치 지정"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "알림을 원하는 곳으로 드래그하세요. 가운데보다 위는 아래로, 아래는 위로 슬라이드됩니다."; + +"Notifications" = "알림"; +"Appearance" = "모양"; +"Routing" = "라우팅"; +"Style" = "스타일"; +"Position" = "위치"; +"Stack size" = "스택 크기"; +"Duration" = "지속 시간"; +"Default surface" = "기본 화면"; +"System notifications" = "시스템 알림"; +"Mirror to notification centre" = "알림 센터로 미러링"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "앱이 백그라운드에 있을 때 토스트가 iOS 알림 센터로 전달되어 놓치지 않게 됩니다."; +"Clear when app opens" = "앱 열 때 지우기"; +"Remove mirrored notifications from notification centre when you return to the app." = "앱으로 돌아오면 미러링된 알림을 알림 센터에서 제거합니다."; +"Background mirror" = "백그라운드 미러"; +"Show while app is open" = "앱 사용 중에도 표시"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "백그라운드뿐 아니라 앱을 사용하는 중에도 미러링된 알림을 시스템 배너로 전달합니다."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "모양, 라우팅, 시스템 알림 및 모든 동작별 재정의가 기본값으로 되돌아갑니다."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Instagram의 알림 권한을 사용합니다. 동작별 설정은 각 동작 메뉴의 백그라운드 미러에 있으며, 끔으로 설정된 동작은 미러링되지 않습니다."; +"Enable notifications" = "알림 활성화"; +"Haptic feedback" = "햅틱 피드백"; +"Preview pill" = "알약 미리보기"; +"Preview download pill" = "다운로드 알약 미리보기"; +"Preview loading pill" = "로딩 알약 미리보기"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "마스터 스위치. 끄면 어떤 알림도 표시되지 않습니다."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "앱 내 통합 알림. 모든 RyukGram 피드백이 여기를 거칩니다."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal: 단순 블러. Colorful: 톤별 색조. Glow: 컬러 후광. Island: 다이내믹 아일랜드 캡슐."; +"Top slides down, bottom slides up." = "위는 아래로, 아래는 위로 슬라이드합니다."; +"How many pills can show at once before queueing." = "대기열로 보내기 전에 동시에 표시할 알약 수."; +"Multiplies how long toasts stay on screen." = "토스트가 화면에 머무르는 시간을 곱합니다."; +"Vibration on success/error pills." = "성공/오류 알약에서 진동."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "토스트형 작업은 알약 또는 IG 기본 토스트 중 선택할 수 있습니다. 작업별 재정의는 아래에 있습니다."; +"What to use when an action doesn't have its own override." = "작업에 자체 재정의가 없을 때 사용할 항목입니다."; +"Tap to cycle: info → success → warning → error" = "탭하여 순환: 정보 → 성공 → 경고 → 오류"; +"Tap to cycle between success and failure" = "성공과 실패 사이를 탭하여 전환"; +"Progress UI — pill or off only." = "진행 UI — 알약 또는 끄기만 가능."; +"Minimal" = "미니멀"; +"Colorful" = "컬러풀"; +"Glow" = "글로우"; +"Island" = "아일랜드"; +"Top" = "위"; +"Bottom" = "아래"; +"Custom pill" = "사용자 지정 알약"; +"IG native toast" = "IG 기본 토스트"; +"Short" = "짧음"; +"Normal" = "보통"; +"Long" = "길게"; +"Very long" = "매우 길게"; +"Downloads & saving" = "다운로드 및 저장"; +"Copy to clipboard" = "클립보드에 복사"; +"Read receipts & seen" = "읽음 확인 및 보임"; +"Block, exclude & pin" = "차단, 제외 및 고정"; +"Stories & messages" = "스토리 및 메시지"; +"Voice & audio" = "음성 및 오디오"; +"Errors" = "오류"; +"Download progress" = "다운로드 진행"; +"Bulk download progress" = "대량 다운로드 진행"; +"Repost progress" = "리포스트 진행률"; +"Copied post / reel URL" = "게시물 / 릴스 URL 복사됨"; +"Copied comment text" = "댓글 텍스트 복사됨"; +"Copied GIF link" = "GIF 링크 복사됨"; +"Copied note text" = "노트 텍스트 복사됨"; +"Copied profile info" = "프로필 정보 복사됨"; +"Copied audio URL" = "오디오 URL 복사됨"; +"Copied quality picker URL" = "품질 선택기 URL 복사됨"; +"Copied unlocked password" = "잠금 해제된 비밀번호 복사됨"; +"Copied description text" = "설명 텍스트 복사됨"; +"DM seen / read receipts" = "DM 보임 / 읽음 확인"; +"Story seen / read receipts" = "스토리 보임 / 읽음 확인"; +"Someone read your message" = "누군가 내 메시지를 읽음"; +"User blocked / unblocked" = "사용자 차단 / 차단 해제"; +"Chat added / removed from exclude" = "채팅 제외 추가 / 제거"; +"Story user added / removed from exclude" = "스토리 사용자 제외 추가 / 제거"; +"Share-sheet recipient pinned" = "공유 시트 수신자 고정됨"; +"Unsent message detected" = "전송 취소된 메시지 감지됨"; +"Reaction removed detected" = "반응 제거 감지됨"; +"%lu messages unsent" = "메시지 %lu개 전송 취소됨"; +"%lu reactions removed" = "반응 %lu개 제거됨"; +"%lu chats marked seen" = "채팅 %lu개 읽음 표시됨"; +"%lu stories marked seen" = "스토리 %lu개 읽음 표시됨"; +"%lu of your messages read" = "내 메시지 %lu개 읽음"; +"%lu notifications" = "알림 %lu개"; +"Live comments toggled" = "라이브 댓글 전환됨"; +"Custom GIF sent" = "사용자 지정 GIF 전송됨"; +"GIF favorited / unfavorited" = "GIF 즐겨찾기 추가 / 해제"; +"Voice DM sent" = "음성 DM 전송됨"; +"Audio extraction status" = "오디오 추출 상태"; +"Profile Analyzer complete" = "프로필 분석기 완료"; +"Profile Analyzer progress" = "프로필 분석기 진행 상황"; +"Media extraction failed" = "미디어 추출 실패"; +"Permission denied" = "권한 거부됨"; +"Validation error" = "유효성 검사 오류"; +"Network / API error" = "네트워크 / API 오류"; +"Action error fallback" = "동작 오류 대체"; +"Unlock failed" = "잠금 해제 실패"; +"Chat locked / unlocked" = "채팅 잠금 / 잠금 해제"; +"Invalid clipboard link" = "잘못된 클립보드 링크"; +"Experimental flag warning" = "실험 플래그 경고"; +"Settings action confirmed" = "설정 작업 확인됨"; +"Cache clearing progress" = "캐시 지우기 진행"; +"Backup export / import" = "백업 내보내기 / 가져오기"; +"Other / uncategorized" = "기타 / 미분류"; +"Comment copied" = "댓글 복사됨"; +"FFmpeg log copied" = "FFmpeg 로그 복사됨"; +"GIF inserted" = "GIF 삽입됨"; +"Story marked as seen" = "스토리가 보임으로 표시됨"; +"Saved" = "저장됨"; +"Tap to retry" = "재시도하려면 탭"; +"Looks great" = "멋져 보입니다"; +"Something broke" = "문제가 발생했습니다"; +"Just so you know" = "참고하세요"; +"Success preview" = "성공 미리보기"; +"Error preview" = "오류 미리보기"; +"Warning preview" = "경고 미리보기"; +"Info preview" = "정보 미리보기"; +"Preview download…" = "다운로드 미리보기…"; +"Colors" = "색상"; +"+ Add new language" = "+ 새 언어 추가"; +"Each chat can override this in the list" = "각 채팅은 목록에서 개별 설정을 적용할 수 있습니다"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "활성화하면 Instagram 위치 요청이 선택한 가짜 위치를 반환합니다. 지도 버튼은 친구 지도에 빠른 바로가기를 추가합니다."; +"Tap a preset to make it active. Swipe left to delete." = "프리셋을 탭하여 활성화하세요. 왼쪽으로 밀어 삭제하세요."; +"Override Instagram location reads." = "Instagram 위치 읽기를 재정의합니다."; +"Show the quick button in Friends Map." = "친구 지도에 빠른 버튼 표시."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "절대 날짜 표기 방식을 선택하세요. “기본값”은 IG의 형식을 그대로 둡니다. 사용자 지정 형식을 스와이프하여 편집하거나 삭제할 수 있습니다."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "임계값보다 최근 날짜는 상대 시간으로 표시됩니다. 오래된 날짜는 절대 형식으로 돌아갑니다. “날짜와 결합”은 둘 다 표시합니다 — “2026년 1월 5일 (2h)” 또는 “2h – 2026년 1월 5일”."; +"Compact style" = "간결 스타일"; +"Example: “1h” instead of “1 hour ago”" = "예: “1시간 전” 대신 “1h”"; +"Example: “Jan 5, 2026 (2h)”" = "예: “Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "iOS 오디오 API가 이 파일을 처리할 수 없습니다%@%@\n\nInstagram에 그대로 보내거나 지원 이슈를 열어보세요."; +"Combine with date" = "날짜와 결합"; +"Absolute then relative" = "절대 다음 상대"; +"Relative – absolute" = "상대 – 절대"; +"Relative when young, absolute when older." = "최근이면 상대, 오래되면 절대."; +"Example: “2h – Jan 5, 2026”" = "예: “2h – 2026년 1월 5일”"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "자리를 비운 사이 취소된 한 번 보기 미디어를 포착합니다. ⚠️ 배터리 소모가 클 수 있음"; +"Disappearing (view-once) media" = "사라지는 미디어 (한 번 보기)"; +"Disappearing media expired before it could be saved" = "사라지는 미디어가 저장되기 전에 만료됨"; +"Disappearing media — gone before it could be saved" = "사라지는 미디어 — 저장되기 전에 사라짐"; +"Disappearing only" = "사라지는 미디어만"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "누군가 앱 밖에 있을 때 취소하는 사라지는 미디어를 포착할 수 있도록 Instagram을 백그라운드에서 계속 실행되게 합니다.\n\n주로 한 번 보기 미디어에 유용합니다 — 일반 사진/동영상은 보통 이 기능 없이도 복구할 수 있습니다. ⚠️ 배터리를 크게 소모할 수 있으며, 앱 전환기에서 Instagram을 강제 종료하면 아무것도 포착할 수 없습니다.\n\n사용하시겠어요?"; +"Keep Instagram active in background" = "Instagram을 백그라운드에서 활성 상태로 유지"; +"Media couldn’t be downloaded — the link expired" = "미디어를 다운로드할 수 없음 — 링크가 만료됨"; +"Media wasn’t available to save" = "저장할 미디어를 사용할 수 없음"; +"Retrying download…" = "다운로드 재시도 중…"; +"Try to download again" = "다시 다운로드 시도"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "읽음 확인 기록"; +"Date" = "날짜"; +"Reads" = "읽음"; +"Person" = "사람"; +"Chat" = "채팅"; +"%@ · on @%@" = "%@ · @%@ 계정"; +"%lu read · %@" = "%lu회 읽음 · %@"; +"%lu reads · %@" = "%lu회 읽음 · %@"; +"%lu reads · %lu reader · %@" = "%lu회 읽음 · 읽은 사람 %lu명 · %@"; +"%lu reads · %lu readers · %@" = "%lu회 읽음 · 읽은 사람 %lu명 · %@"; +"Clear all" = "모두 지우기"; +"Clear all records" = "모든 기록 지우기"; +"Detects when others read your messages and notifies you" = "다른 사람이 메시지를 읽으면 감지해 알려줍니다"; +"Ignored people & chats" = "무시한 사람 및 채팅"; +"Ignored" = "무시됨"; +"Log group chats" = "그룹 채팅 기록"; +"Most reads" = "읽음 많은 순"; +"Notifies and records when someone reads a message you sent" = "보낸 메시지를 누군가 읽으면 알리고 기록합니다"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "무시한 항목이 없습니다. 기록에서 사람을 길게 눌러 기록을 중지하세요."; +"Nothing matches your filters." = "필터와 일치하는 항목이 없습니다."; +"Read %@ · %@" = "읽음 %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "이 기기에 읽음을 저장합니다. 끄면 알림만, 저장 안 함"; +"Resume logging" = "기록 재개"; +"Search by username" = "사용자 이름으로 검색"; +"Stop logging %@" = "%@ 기록 중지"; +"Delete records" = "기록 삭제"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "활성화하면 누군가 내 메시지를 읽을 때 알림이 옵니다. 알림만 받으려면 \"기록에 저장\"을 끄세요. 기록에서 사람을 길게 눌러 기록을 중지할 수 있습니다."; +"Swipe to remove. Removing resumes logging for that person or chat." = "밀어서 제거하세요. 제거하면 해당 사람이나 채팅의 기록이 재개됩니다."; +"Updating names and photos" = "이름과 사진 업데이트 중"; +"Your message" = "내 메시지"; +"read your message in %@" = "%@에서 메시지를 읽음"; +"read your message" = "메시지를 읽음"; +"Also track reads in group chats. Off by default — groups can be noisy" = "그룹 채팅의 읽음도 추적합니다. 기본 꺼짐 — 그룹은 알림이 많을 수 있습니다"; +"Refreshing…" = "새로 고치는 중…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "새 지문 생성"; +"New device fingerprint" = "새 기기 지문"; +"Roll new ID" = "새 ID 생성"; +"Roll + clear IG data" = "새 ID 생성 + IG 데이터 삭제"; +"Generate fresh device identifiers" = "새 기기 식별자 생성"; +"Enter ID manually…" = "ID 직접 입력…"; +"Manual device ID" = "수동 기기 ID"; +"Paste or type the UUID this device should report." = "이 기기가 보고할 UUID를 붙여넣거나 입력하세요."; +"Device ID set" = "기기 ID 설정됨"; +"New fingerprint ready" = "새 지문 준비됨"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "새 기기 신원이 처음부터 깨끗하게 적용되도록 지금 Instagram을 다시 실행할까요?"; +"Copy current ID" = "현재 ID 복사"; +"Revert to my real device ID" = "내 실제 기기 ID로 되돌리기"; +"Restore the original, stop masking" = "원본 복원, 마스킹 중지"; +"Spoofing off" = "스푸핑 꺼짐"; +"Relaunch now" = "지금 다시 실행"; +"Relaunch to apply" = "적용하려면 다시 실행하세요"; +"Clear device & relaunch" = "기기 초기화 후 다시 실행"; +"Clear device & relaunch?" = "기기를 초기화하고 다시 실행할까요?"; +"Clear & relaunch" = "초기화 후 다시 실행"; +"Full reset to a brand-new device" = "완전히 새 기기로 전체 초기화"; +"Device ID" = "기기 ID"; +"Hide button until relaunch" = "재시작할 때까지 버튼 숨기기"; +"Device identity" = "기기 신원"; +"Masked" = "마스킹됨"; +"Real" = "실제"; +"Show button on login screen" = "로그인 화면에 버튼 표시"; +"Floating Device ID button while signed out" = "로그아웃 상태에서 떠 있는 기기 ID 버튼"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Instagram이 이 기기를 식별하는 데 사용하는 식별자(기기 ID, 패밀리 기기 ID, 벤더 ID, 머신 ID)를 마스킹합니다. 변경 사항은 다시 실행한 후 적용됩니다. 동일한 제어 항목이 로그인 화면에도 표시됩니다."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "저장된 모든 로그인 정보, 쿠키, 저장된 기기 신원을 잊은 다음 다시 실행하여 Instagram이 완전히 새 기기로 시작되도록 합니다. 이후 다시 로그인해야 합니다."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "새 기기 ID, 패밀리 기기 ID, 벤더 ID를 생성하고 머신 ID를 지워 Instagram이 새 기기로 다시 등록되도록 합니다. 또는 저장된 로그인 정보까지 지워 전체 초기화할 수 있습니다."; +"Apple attestation" = "Apple 증명"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Instagram의 Apple 기기 증명(DeviceCheck 및 App Attest)을 차단합니다. 이 항목들은 하드웨어에 묶여 있어 변경할 수 없으므로 초기화해도 기기를 계속 연결시킵니다. 차단하면 Instagram이 이를 지원하지 않는 기기로 인식합니다. 마스킹이 켜져 있을 때만 작동합니다."; +"Block Apple device attestation" = "Apple 기기 증명 차단"; +"Stop the hardware attestation that links the device" = "기기를 연결시키는 하드웨어 증명 중지"; +"Block Apple attestation: %@" = "Apple 증명 차단: %@"; +"Attestation blocked" = "증명 차단됨"; +"Attestation allowed" = "증명 허용됨"; +"Roll + clear, then sign in fresh" = "새로 생성 + 삭제 후 새로 로그인"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "팔로우 요청"; +"Show follow requests" = "팔로우 요청 보기"; +"Check now" = "지금 확인"; +"Reset tracked data" = "추적 데이터 초기화"; +"Enable tracker" = "트래커 켜기"; +"Log requests and check outcomes" = "요청을 기록하고 결과 확인"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "보내고 받는 팔로우 요청을 기록하고, 답하기 전에 요청을 취소하는 사람을 포착합니다. 모두 기기에서 처리됩니다."; +"What to track" = "추적할 항목"; +"Requests I send" = "내가 보내는 요청"; +"To private accounts" = "비공개 계정으로"; +"Requests I receive" = "내가 받는 요청"; +"From people who want to follow you" = "회원님을 팔로우하려는 사람들"; +"Background check" = "백그라운드 확인"; +"Check interval" = "확인 간격"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "앱이 열려 있는 동안 결과를 확인하는 빈도입니다. 실행 시와 목록을 열 때도 확인합니다."; +"Off (manual only)" = "끔 (수동만)"; +"Every 15 minutes" = "15분마다"; +"Every 30 minutes" = "30분마다"; +"Every hour" = "1시간마다"; +"Every 6 hours" = "6시간마다"; +"My request accepted" = "내 요청 수락됨"; +"A private account accepted you" = "비공개 계정이 회원님을 수락했습니다"; +"My request declined" = "내 요청 거절됨"; +"No longer pending" = "더 이상 대기 중 아님"; +"New request received" = "새 요청 수신됨"; +"Someone asked to follow you" = "누군가 회원님을 팔로우하려고 요청했습니다"; +"Request withdrawn" = "요청 취소됨"; +"Someone cancelled their request" = "누군가 요청을 취소했습니다"; +"Sent by me" = "내가 보낸 것"; +"Received" = "받음"; +"Sent" = "보냄"; +"Accepted" = "수락됨"; +"Rejected" = "거절됨"; +"Requested" = "요청됨"; +"Approved" = "승인됨"; +"Withdrawn" = "취소됨"; +"No follow requests tracked yet" = "아직 추적된 팔로우 요청이 없습니다"; +"Cancel requests" = "요청 취소"; +"Delete %lu record(s) from history?" = "기록에서 %lu개 항목을 삭제할까요?"; +"Cancel %lu pending request(s)?" = "대기 중인 요청 %lu개를 취소할까요?"; +"Follow back %lu account(s)?" = "%lu개 계정을 맞팔로우할까요?"; +"Clear all tracked follow requests?" = "추적된 팔로우 요청을 모두 지울까요?"; +"Reset tracked follow requests for this account?" = "이 계정의 추적된 팔로우 요청을 초기화할까요?"; +"Enable the tracker first" = "먼저 트래커를 켜세요"; +"Checking…" = "확인 중…"; +"%ld request(s) updated" = "요청 %ld개 업데이트됨"; +"No changes" = "변경 사항 없음"; +"Working…" = "처리 중…"; +"Follow request accepted" = "팔로우 요청 수락됨"; +"%@ accepted your request" = "%@님이 회원님의 요청을 수락했습니다"; +"Follow request declined" = "팔로우 요청 거절됨"; +"%@ is no longer pending" = "%@님이 더 이상 대기 중이 아닙니다"; +"New follow request" = "새 팔로우 요청"; +"%@ asked to follow you" = "%@님이 회원님을 팔로우하려고 요청했습니다"; +"Follow request withdrawn" = "팔로우 요청 취소됨"; +"%@ withdrew their request" = "%@님이 요청을 취소했습니다"; +"Follow requests log" = "팔로우 요청 로그"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Instagram 유료 기능 잠금 해제"; +"Turn on Instagram's paid subscriber features inside the app." = "앱 안에서 Instagram 유료 구독 기능을 켭니다."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus는 Instagram의 유료 구독입니다. 이 스위치들은 앱 안에서 해당 기능을 켭니다. 일부는 완전히 작동합니다. 나머지는 옵션만 표시되는데, 콘텐츠가 Instagram 서버에서 불러와지며 실제 구독이 필요하기 때문에 비어 있거나 아무 반응이 없을 수 있습니다. 원하는 항목을 켜고 Apply를 탭하세요. Instagram이 연속 세 번 실행에 실패하면 이 스위치들은 자동으로 초기화됩니다."; +"Turn everything on" = "모두 켜기"; +"Turn everything off" = "모두 끄기"; +"Every Instagram Plus feature turns off and Instagram restarts." = "모든 Instagram Plus 기능이 꺼지고 Instagram이 다시 시작됩니다."; +"Story peek" = "스토리 미리보기"; +"Hold a story in the tray to preview it without opening it." = "트레이에서 스토리를 길게 눌러 열지 않고 미리 봅니다."; +"Story fonts" = "스토리 글꼴"; +"Adds the subscriber fonts when you add text to a story." = "스토리에 텍스트를 추가할 때 구독자 전용 글꼴을 추가합니다."; +"Search story viewers" = "스토리 조회자 검색"; +"Search the list of people who viewed your story." = "내 스토리를 본 사람 목록을 검색합니다."; +"Viewer timestamps" = "조회 시간 표시"; +"Shows when each person viewed your story." = "각 사람이 내 스토리를 본 시간을 표시합니다."; +"Silent post to profile" = "프로필에 조용히 게시"; +"Share to your profile without notifying your followers." = "팔로워에게 알리지 않고 프로필에 공유합니다."; +"Silent post to highlights" = "하이라이트에 조용히 추가"; +"Add to a highlight without notifying your followers." = "팔로워에게 알리지 않고 하이라이트에 추가합니다."; +"Story rewatch" = "스토리 다시 보기"; +"Rewatch a story right after it finishes." = "스토리가 끝난 직후에 다시 봅니다."; +"Story extend" = "스토리 연장"; +"Keep your story up longer than 24 hours." = "스토리를 24시간보다 오래 유지합니다."; +"Story spotlight" = "스토리 스포트라이트"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "스토리를 더 많은 사람에게 노출합니다. Instagram에서 불러오므로 작동하지 않을 수 있습니다."; +"Story super likes" = "스토리 슈퍼 좋아요"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "스토리에 슈퍼 좋아요를 보냅니다. Instagram에서 불러오므로 작동하지 않을 수 있습니다."; +"Message peek" = "메시지 미리보기"; +"Hold a chat in the inbox to preview it." = "받은편지함에서 채팅을 길게 눌러 미리 봅니다."; +"Chat fonts" = "채팅 글꼴"; +"Adds the subscriber fonts in direct messages." = "다이렉트 메시지에 구독자 전용 글꼴을 추가합니다."; +"Chat themes" = "채팅 테마"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "프리미엄 채팅 테마를 잠금 해제합니다. Instagram에서 불러오므로 작동하지 않을 수 있습니다."; +"App icons" = "앱 아이콘"; +"Opens the alternate app icon picker." = "대체 앱 아이콘 선택 화면을 엽니다."; +"Bio font" = "소개 글꼴"; +"Use a subscriber font for your bio." = "소개에 구독자 전용 글꼴을 사용합니다."; +"Custom story lists" = "맞춤 스토리 목록"; +"Make lists to pick exactly who sees a story." = "스토리를 볼 사람을 정확히 고를 수 있는 목록을 만듭니다."; +"More pinned posts" = "더 많은 게시물 고정"; +"Pin more posts to the top of your profile." = "프로필 상단에 더 많은 게시물을 고정합니다."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "녹화 %lu개"; +"1 recording" = "녹화 1개"; +"30 days" = "30일"; +"7 days" = "7일"; +"90 days" = "90일"; +"Adds a record button to the call screen" = "통화 화면에 녹화 버튼을 추가합니다"; +"Also show recordings in the RyukGram gallery under Calls" = "RyukGram 갤러리의 통화 섹션에도 녹화를 표시합니다"; +"Auto-delete old recordings" = "오래된 녹화 자동 삭제"; +"Auto-record calls" = "통화 자동 녹화"; +"Auto-record ignore list" = "자동 녹화 무시 목록"; +"Auto-record ignored" = "자동 녹화 무시됨"; +"Auto-record on" = "자동 녹화 켜짐"; +"Block mute signal" = "음소거 신호 차단"; +"Both sides" = "양쪽"; +"Browse saved calls, grouped by person" = "저장된 통화를 사람별로 묶어 탐색"; +"Call" = "통화"; +"Call recorded" = "통화가 녹화되었습니다"; +"Call recording" = "통화 녹화"; +"Call recordings" = "통화 녹화"; +"Camera position" = "카메라 위치"; +"Can't play" = "재생할 수 없음"; +"Can't record" = "녹화할 수 없음"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "자동 녹화에서 제외된 채팅 — 통화 중 녹화 버튼을 길게 눌러 추가하세요"; +"Could not save the recording." = "녹화를 저장할 수 없습니다."; +"Could not start the recorder." = "녹화기를 시작할 수 없습니다."; +"Delete all" = "모두 삭제"; +"Delete all recordings" = "모든 녹화 삭제"; +"Delete all recordings?" = "모든 녹화를 삭제할까요?"; +"Drag the overlay where you want it" = "원하는 위치로 오버레이를 드래그하세요"; +"Drag your camera window to any corner or edge." = "카메라 창을 원하는 모서리나 가장자리로 드래그하세요."; +"Enable call recording" = "통화 녹화 활성화"; +"Export all" = "모두 내보내기"; +"Full screen" = "전체 화면"; +"Group call" = "그룹 통화"; +"Ignore auto-record for this chat" = "이 채팅에서 자동 녹화 무시"; +"Ignored chats aren't auto-recorded. You can still record manually." = "무시된 채팅은 자동 녹화되지 않습니다. 수동으로는 녹화할 수 있습니다."; +"Include my camera" = "내 카메라 포함"; +"Keep forever" = "영구 보관"; +"Large" = "크게"; +"Mute without the other side seeing you muted — your mic is still silenced" = "상대방이 음소거를 알 수 없게 음소거합니다 — 마이크는 여전히 꺼져 있습니다"; +"Muted silently" = "몰래 음소거됨"; +"My camera size" = "내 카메라 크기"; +"No call audio was captured." = "통화 오디오가 캡처되지 않았습니다."; +"No ignored chats. Long-press the record button in a call to ignore it." = "무시된 채팅이 없습니다. 통화 중 녹화 버튼을 길게 눌러 무시하세요."; +"No recordings" = "녹화 없음"; +"Off records audio only, even on video calls" = "끄면 영상 통화에서도 오디오만 녹화합니다"; +"Only me" = "나만"; +"Only them" = "상대방만"; +"Open recordings" = "녹화 열기"; +"Overlay your camera as a small window on video-call recordings" = "영상 통화 녹화에 내 카메라를 작은 창으로 오버레이합니다"; +"Overlay your camera on the recording" = "녹화에 내 카메라 오버레이"; +"Record audio from" = "오디오 녹음 대상"; +"Record video on video calls" = "영상 통화에서 비디오 녹화"; +"Record voice and video calls, browse them later" = "음성 및 영상 통화를 녹화하고 나중에 탐색하세요"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "녹화된 통화는 이 기기에만 저장됩니다. 녹화 중에는 빨간색 상태 표시줄 표시기가 나타납니다."; +"Recorded calls will appear here." = "녹화된 통화가 여기에 표시됩니다."; +"Recording call" = "통화 녹화 중"; +"Recording count" = "녹화 개수"; +"Recording failed" = "녹화 실패"; +"Recording name" = "녹화 이름"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "상대방(통화 오디오)과 내 마이크를 녹음합니다. 녹화 중에는 빨간색 상태 표시줄 표시기가 나타납니다. 녹화는 이 기기에만 저장됩니다."; +"Remove from ignore list" = "무시 목록에서 제거"; +"Remove recordings older than the chosen age" = "선택한 기간보다 오래된 녹화 제거"; +"Rename recording" = "녹화 이름 변경"; +"Search calls" = "통화 검색"; +"Set a custom name for this chat's recordings." = "이 채팅의 녹화에 사용자 지정 이름을 설정하세요."; +"Size of the overlay window" = "오버레이 창의 크기"; +"Small" = "작게"; +"Starts recording automatically when a call opens" = "통화가 시작되면 자동으로 녹화를 시작합니다"; +"Sync to gallery" = "갤러리에 동기화"; +"The recording file is missing." = "녹화 파일이 없습니다."; +"Them" = "상대방"; +"Them (full screen)" = "상대방 (전체 화면)"; +"This permanently removes every saved call recording for this account." = "이 계정에 저장된 모든 통화 녹화를 영구적으로 제거합니다."; +"Unknown chat" = "알 수 없는 채팅"; +"Unmuted" = "음소거 해제됨"; +"Which camera fills the frame" = "어떤 카메라가 화면을 채울지"; +"Which side's voice to capture" = "어느 쪽의 음성을 캡처할지"; +"You" = "나"; +"You (full screen)" = "나 (전체 화면)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "내 카메라가 캡처되어 녹화에 오버레이됩니다. 어느 쪽이 화면을 채울지, 오버레이 크기를 선택하고 원하는 모서리로 드래그하세요."; +"Prompt before the call recordings open" = "통화 녹화를 열기 전에 확인 표시"; +"Prompt before the activity log opens" = "활동 기록을 열기 전에 확인"; +"Mark all as read" = "모두 읽음으로 표시"; +"Delete %lu chats?" = "채팅 %lu개를 삭제할까요?"; +"This permanently removes their recordings." = "이들의 녹화를 영구적으로 제거합니다."; + +"Stories archive" = "스토리 보관함"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "반응함"; +"Reacted first" = "반응 먼저"; +"Mutual" = "맞팔"; +"Viewers" = "조회한 사람"; +"1 viewer" = "조회한 사람 1명"; +"View viewers" = "조회한 사람 보기"; +"%lu views" = "조회 %lu회"; +"%ld likes" = "좋아요 %ld개"; +"0 views" = "조회 0회"; +"1 like" = "좋아요 1개"; +"1 view" = "조회 1회"; +"Photos" = "사진"; +"Oldest" = "오래된순"; +"Most viewed" = "조회순"; +"Most reacted" = "반응순"; +"Open archive" = "보관함 열기"; +"Archive settings" = "보관 설정"; +"Archiving" = "보관"; +"Enable stories archive" = "스토리 보관 사용"; +"Save your stories before they expire" = "사라지기 전에 스토리를 저장하세요"; +"Saves each story you post, with its photo or video, kept separately for each account." = "게시하는 스토리를 사진 또는 동영상과 함께 저장하며, 계정별로 따로 보관합니다."; +"Save and update viewers" = "조회한 사람 저장 및 업데이트"; +"Keep each story's viewers and likers, refreshed to the final list" = "각 스토리의 조회자와 좋아요 누른 사람을 최종 목록으로 갱신해 보관합니다"; +"Update viewers" = "조회한 사람 업데이트"; +"How often to refresh viewers for stories still live" = "아직 게시 중인 스토리의 조회자를 갱신하는 주기"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "스토리의 조회자 목록은 하루 동안 계속 늘어나고, Instagram은 그 뒤 하루 더 이를 제공합니다. 자동 업데이트는 스토리가 하루가 지나면 최종 목록을 가져오므로, 보관되는 수치가 완전해집니다."; +"Notify me about pinned viewers" = "고정한 조회자 알림 받기"; +"A heads-up when a pinned viewer sees or likes your story" = "고정한 조회자가 내 스토리를 보거나 좋아요를 누르면 알려줍니다"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "고정한 조회자가 내 스토리를 보거나 좋아요를 누르면 알림을 받습니다. 조회자 설정에서 조회자를 고정하고 목록을 관리하세요."; +"Viewer list & pins" = "조회자 목록 & 고정"; +"Turn on the viewer list and manage pinned viewers" = "조회자 목록을 켜고 고정한 조회자를 관리하세요"; +"Turn on a custom viewer list to pin, search and sort viewers" = "사용자 지정 조회자 목록을 켜서 조회자를 고정, 검색, 정렬하세요"; +"Tick several to combine them." = "여러 개를 선택하면 함께 적용됩니다."; +"Select stories" = "스토리 선택"; +"No archived stories yet. Post a story and it appears here." = "아직 보관된 스토리가 없습니다. 스토리를 게시하면 여기에 표시됩니다."; +"Archiving is off. Enable it in the archive settings, then post a story." = "보관이 꺼져 있습니다. 보관 설정에서 사용을 켠 뒤 스토리를 게시하세요."; +"Delete story?" = "스토리를 삭제할까요?"; +"This removes the archived photo or video and its viewers." = "보관된 사진 또는 동영상과 조회한 사람이 삭제됩니다."; +"Delete all stories?" = "모든 스토리를 삭제할까요?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "이 계정의 보관된 모든 스토리와 조회한 사람이 삭제됩니다. 이 작업은 취소할 수 없습니다."; +"Delete %lu archived stories and their viewers?" = "보관된 스토리 %lu개와 조회한 사람을 삭제할까요?"; +"Pinned viewer saw your story" = "고정한 조회자가 내 스토리를 봤습니다"; +"Pinned viewer liked your story" = "고정한 조회자가 내 스토리에 좋아요를 눌렀습니다"; +"Pinned viewer reacted to your story" = "고정한 조회자가 내 스토리에 반응했습니다"; +"Pinned viewers on your story" = "내 스토리의 고정한 조회자"; +"%lu pinned viewers just saw, liked or reacted" = "고정한 조회자 %lu명이 방금 보거나 좋아요 또는 반응했습니다"; +"A pinned viewer" = "고정한 조회자"; +"On each launch" = "실행할 때마다"; diff --git a/src/Localization/Resources/pt-BR.lproj/Localizable.strings b/src/Localization/Resources/pt-BR.lproj/Localizable.strings new file mode 100644 index 0000000..8486e3b --- /dev/null +++ b/src/Localization/Resources/pt-BR.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "No futuro: segure as três linhas no canto superior direito da página do seu perfil para reabrir as configurações do RyukGram."; +"settings.firstrun.ok" = "Entendi!"; +"settings.firstrun.title" = "Informações das Configurações do RyukGram"; +"settings.language.english_only" = "RyukGram é enviado apenas em inglês no momento. Outros idiomas estão preparados e aguardando traduções — ajude a traduzir para o seu idioma seguindo o breve guia no README."; +"settings.language.help_translate" = "Ajude a traduzir"; +"settings.language.system" = "Padrão do sistema"; +"settings.language.title" = "Idioma"; +"settings.language.restart.message" = "Configurações atualizadas. Reinicie o Instagram para que os menus, botões e brindes em outras partes do aplicativo também adotem o novo idioma."; +"settings.language.restart.title" = "Reinicie para aplicar em qualquer lugar"; +"settings.language.available" = "Disponível"; +"settings.results.many" = "%lu resultados"; +"settings.results.one" = "%lu resultado"; +"settings.search.placeholder" = "Pesquisar configurações"; +"settings.title" = "Configurações do RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "Ícone do botão de ação"; +"Adds a copy option to the comment long-press menu" = "Adiciona uma opção de cópia ao menu de toque longo de comentários"; +"Adds a download button next to share/save on the reels audio page" = "Adiciona um botão de download ao lado de compartilhar/salvar na página de áudio dos reels"; +"Adds download, copy and expand options to GIF and image comments" = "Adiciona opções de download, cópia e expansão para GIF e comentários de imagens"; +"Allow video in photo sticker" = "Permitir vídeo em adesivo de foto"; +"Alternate icons are not supported" = "Ícones alternativos não são suportados"; +"Anonymous live viewing" = "Visualização ao vivo anônima"; +"App Icon" = "Ícone do aplicativo"; +"Audio page" = "Página de áudio"; +"Auto-reveals sensitive media" = "Revela automaticamente mídia confidencial"; +"Block surveys" = "Bloquear pesquisas"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "Bloqueia a pulsação da contagem de espectadores para que a emissora não veja você – você também não verá a contagem de espectadores"; +"Browser" = "Navegador"; +"Change the app icon from the bundled icons" = "Altere o ícone do aplicativo nos ícones incluídos"; +"Choose Icon" = "Escolha o ícone"; +"Choose which surfaces hide ads" = "Escolha quais plataformas ocultam anúncios"; +"Comments" = "Comentários"; +"Commerce carousels in comments and shoppable CTAs on reels" = "Carrosséis de comércio em comentários e CTAs compráveis em reels"; +"Copy comment text" = "Copiar texto do comentário"; +"Copy description" = "Copiar descrição"; +"Long press a caption to copy its text" = "Toque e segure uma legenda para copiar o texto"; +"Custom sticker colors" = "Cores de adesivos personalizados"; +"Custom colors aren't supported for this sticker" = "Cores personalizadas não são suportadas para este adesivo"; +"Date format" = "Formato de data"; +"Disable app haptics" = "Desativar a sensação tátil do aplicativo"; +"Disables haptics/vibrations within the app" = "Desativa sensação tátil/vibrações no aplicativo"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "Desativa o vidro líquido para contas que o possuem ativado por padrão. Substitui as opções acima"; +"Do not save recent searches" = "Não salve pesquisas recentes"; +"Download GIF & image comments" = "Baixar GIF e comentários de imagem"; +"Download image" = "Baixar imagem"; +"Embed domain" = "Incorporar domínio"; +"Embed domain: %@" = "Domínio incorporado: %@"; +"Enable liquid glass buttons" = "Ativar botões de vidro líquido"; +"Enable liquid glass surfaces" = "Habilitar superfícies de vidro líquido"; +"Enable teen app icons" = "Ativar ícones de aplicativos para adolescentes"; +"Enables experimental liquid glass buttons" = "Permite botões experimentais de vidro líquido"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "Ativa barra de guias de vidro líquido, navegação flutuante e outros elementos da interface do usuário"; +"End" = "Fim"; +"Experimental features" = "Recursos experimentais"; +"Explore & search" = "Explorar e pesquisar"; +"Failed to change icon" = "Falha ao alterar o ícone"; +"Fixed" = "Corrigido"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "Fixo evita o encolhimento. Ocultar faz com que desapareça ao rolar para baixo"; +"Focus/distractions" = "Foco/distrações"; +"Force liquid glass off" = "Forçar a retirada do vidro líquido"; +"Force progressive blur" = "Forçar desfoque progressivo"; +"General" = "Geral"; +"Gradient color" = "Cor gradiente"; +"Hide ads" = "Ocultar anúncios"; +"Hide explore posts grid" = "Ocultar grade de exploração de postagens"; +"Hide friends map" = "Ocultar mapa de amigos"; +"Hide Meta AI" = "Ocultar Meta AI"; +"Hide metrics" = "Ocultar métricas"; +"Hide notes tray" = "Ocultar bandeja de notas"; +"Hide on scroll" = "Ocultar na rolagem"; +"Hide TestFlight popup" = "Ocultar pop-up TestFlight"; +"Hide trending searches" = "Ocultar pesquisas populares"; +"Hide UI on capture" = "Ocultar UI na captura"; +"Removes suggested accounts to follow outside the feed" = "Remove as contas sugeridas para seguir fora do feed"; +"Hides like/comment/share counts on posts and reels" = "Oculta contagens de curtidas/comentários/compartilhamentos em postagens e reels"; +"Removes the friends map icon from the notes tray" = "Remove o ícone do mapa de amigos da bandeja de notas"; +"Removes the suggested posts grid on the explore tab" = "Remove a grade de posts sugeridos na aba Explorar"; +"Strips the Meta AI buttons and entry points from the app" = "Remove os botões e pontos de acesso do Meta AI do app"; +"Hides the notes tray in the DM inbox" = "Oculta a bandeja de notas na caixa de entrada do DM"; +"Removes suggested broadcast channels from your inbox" = "Remove os canais de transmissão sugeridos da caixa de entrada"; +"Hide DM search suggestions" = "Ocultar sugestões na busca de mensagens"; +"Removes suggested accounts and channels from direct message search" = "Remove as contas e canais sugeridos da busca de mensagens diretas"; +"Removes trending searches under the explore search bar" = "Remove as buscas em alta abaixo da barra de busca Explorar"; +"Hold down on the Instagram logo to change the app icon" = "Mantenha pressionado o logotipo do Instagram para alterar o ícone do aplicativo"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "Mantém o desfoque da borda de rolagem do iOS 26 visível em vez de deixá-lo desaparecer"; +"Lets the photo sticker picker show videos too, not just photos" = "Permite que o seletor de adesivos de fotos também mostre vídeos, não apenas fotos"; +"Liquid glass tab bar" = "Barra de abas de vidro líquido"; +"Live" = "Ao vivo"; +"Hold the eyedropper in stories to pick an exact text color" = "Segure o conta-gotas nos stories para escolher uma cor exata de texto"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "Pressione longamente a roda de cores nos editores de adesivos para escolher qualquer cor sólida ou gradiente"; +"Long-press the heart button in a live to hide or show the comments" = "Mantenha pressionado o botão de coração em uma transmissão ao vivo para ocultar ou mostrar os comentários"; +"Long-press the search tab to open a copied Instagram link" = "Mantenha pressionada a guia de pesquisa para abrir um link copiado do Instagram"; +"Master switch. When off, all per-surface toggles below are ignored." = "Interruptor mestre. Quando desativado, todas as alternâncias por superfície abaixo são ignoradas."; +"No suggested chats" = "Nenhum bate-papo sugerido"; +"No suggested users" = "Nenhum usuário sugerido"; +"Notes" = "Notas"; +"Open app icon picker" = "Abra o seletor de ícones do aplicativo"; +"Open link from clipboard" = "Abrir link da área de transferência"; +"Open links in external browser" = "Abrir links em navegador externo"; +"Opens links in Safari instead of Instagram's in-app browser" = "Abre links no Safari em vez do navegador do aplicativo do Instagram"; +"Privacy" = "Privacidade"; +"Removes ads across enabled surfaces" = "Remove anúncios em superfícies habilitadas"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "Remove igsh, utm_source e outros parâmetros de rastreamento de links compartilhados"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "Remove wrappers de rastreamento do Instagram (l.instagram.com) e parâmetros UTM/fbclid de URLs"; +"Replace domain in shared links" = "Substitua o domínio em links compartilhados"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "Substitui os horários relativos do IG (\"há 3d\") por um formato personalizado. Escolha em quais telas aplicar dentro do seletor."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "Reescreve links copiados/compartilhados para usar um domínio fácil de incorporar para visualizações no Discord, Telegram, etc."; +"Stops search bars from saving your recent searches" = "Impede que as barras de busca salvem suas buscas recentes"; +"Selected" = "Selecionado"; +"Sharing" = "Compartilhando"; +"Shopping" = "Compras"; +"Skip sensitive content covers" = "Ignorar capas de conteúdo sensível"; +"Solid color" = "Cor sólida"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "Postagens patrocinadas em feeds principais, contextuais, de vídeo e de encadeamento"; +"Sponsored posts on the explore grid" = "Postagens patrocinadas na grade de exploração"; +"Stops Instagram's in-app surveys and feedback prompts" = "Impede as pesquisas e solicitações de feedback dentro do Instagram"; +"Sponsored reels in the sundial feed" = "Momentos patrocinados no feed do relógio de sol"; +"Start" = "Começar"; +"Story ads and sponsored entries in the story tray" = "Anúncios de stories e entradas patrocinadas na bandeja de stories"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "Selos de estatísticas nas publicações e reels na busca e explorar. Abra Detalhes do cartão para escolher quais estatísticas aparecem, reordená-las e aplicar."; +"Strip tracking from links" = "Retirar rastreamento de links"; +"Strip tracking params" = "Parâmetros de rastreamento de faixa"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "Suprime o aviso \"É hora de atualizar o Instagram Beta\""; +"Tap to apply" = "Toque para aplicar"; +"The selected icon will be saved and shown here the next time you open this page." = "O ícone selecionado será salvo e mostrado aqui na próxima vez que você abrir esta página."; +"Toggle live comments" = "Alternar comentários ao vivo"; +"Use detailed color picker" = "Use o seletor de cores detalhado"; +"Used across feed, stories, reels, and DMs." = "Usado em feeds, stories, Momentos e DMs."; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld dia atrás"; +"%ld days ago" = "%ld dias atrás"; +"%ld hour ago" = "%ld hora atrás"; +"%ld hours ago" = "%ld horas atrás"; +"%ld minute ago" = "%ld minuto atrás"; +"%ld minutes ago" = "%ld minutos atrás"; +"%ld week ago" = "%ld semana atrás"; +"%ld weeks ago" = "%ld semanas atrás"; +"%ldd" = "%ldd"; +"%ldh" = "%ldh"; +"%ldm" = "%ldm"; +"%ldw" = "%ldw"; +"Always ask" = "Sempre pergunte"; +"Balanced" = "Equilibrado"; +"Block all" = "Bloquear tudo"; +"Block selected" = "Bloco selecionado"; +"Button" = "Botão"; +"Date format — %@" = "Formato de data — %@"; +"Default" = "Padrão"; +"Disabled" = "Desativado"; +"Download and share" = "Baixe e compartilhe"; +"Download to Photos" = "Baixar para fotos"; +"Save with music" = "Economize com música"; +"Gallery with music" = "Galeria com música"; +"Save image (no music)" = "Salvar imagem (sem música)"; +"Gallery image (no music)" = "Imagem na galeria (sem música)"; +"Photo with music" = "Foto com música"; +"Enabled" = "Habilitado"; +"Expand" = "Expandir"; +"Explore" = "Explorar"; +"Fast" = "Rápido"; +"Feed" = "Feed"; +"Feed posts" = "Postagens de feed"; +"High" = "Alto"; +"Inbox" = "Caixa de entrada"; +"just now" = "agora mesmo"; +"Low" = "Baixo"; +"Max" = "Máx."; +"Medium" = "Médio"; +"Mute/Unmute" = "Ativar/desativar som"; +"Notes, comments, stories" = "Notas, comentários, stories"; +"now" = "agora"; +"Open menu" = "Abrir menu"; +"Pause/Play" = "Pausar/Reproduzir"; +"Profile" = "Perfil"; +"Quality" = "Qualidade"; +"Reels" = "Reels"; +"Requires restart" = "Requer reinicialização"; +"Save to Photos" = "Salvar em fotos"; +"Share sheet" = "Compartilhar planilha"; +"Standard" = "Padrão"; +"Toggle" = "Alternar"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "Feed em grade"; +"Browse your home feed as a grid of posts" = "Navegue pelo seu feed inicial como uma grade de publicações"; +"Hide stories in grid" = "Ocultar stories na grade"; +"Taller cells" = "Células mais altas"; +"Portrait tiles instead of squares" = "Blocos em retrato em vez de quadrados"; +"Open post" = "Abrir publicação"; +"View profile" = "Ver perfil"; +"Like" = "Curtir"; +"Liked" = "Curtido"; +"Unlike" = "Descurtir"; +"Unliked" = "Descurtido"; +"Followed" = "Passou a seguir"; +"Unfollowed" = "Deixou de seguir"; +"Couldn't update like" = "Não foi possível atualizar a curtida"; +"Couldn't update follow" = "Não foi possível atualizar o seguir"; +"Follow status" = "Status de seguir"; +"Shares" = "Compartilhamentos"; +"Relative" = "Relativa"; +"Date and time" = "Data e hora"; +"You're all caught up" = "Você está em dia"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "Substitui o feed inicial por uma grade de publicações. Trocar para o feed do Instagram mantém o recurso ligado e devolve o feed na hora. Pince para mudar as colunas e toque em uma publicação para abri-la. O seletor Para você / Seguindo continua sincronizado com Feed principal."; +"Switch button" = "Botão de troca"; +"Hold the heart button" = "Segure o botão de coração"; +"Floating button" = "Botão flutuante"; +"How to switch" = "Como trocar"; +"Hold the heart in Instagram's header" = "Segure o coração no cabeçalho do Instagram"; +"A small round button on the feed" = "Um pequeno botão redondo no feed"; +"Button position" = "Posição do botão"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "Arraste o botão para onde quiser. As faixas escurecidas são o cabeçalho e a barra de abas do Instagram."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "Alterna entre a grade e o feed do Instagram sem desligar a grade. Desligado, o atalho da barra inicial fica sendo o único jeito."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "O botão nunca fica embaixo do cabeçalho nem da barra de abas. Segure o botão no feed para voltar aqui."; +"Live preview" = "Pré-visualização ao vivo"; +"Columns" = "Colunas"; +"Post info" = "Informações da publicação"; +"Reorder and toggle stats on each tile" = "Reordene e ative estatísticas em cada bloco"; +"Info on each post" = "Informações em cada publicação"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "Ative ou desative cada item. Arraste a alça ≡ para reordenar como eles se empilham no bloco."; +"Show avatar" = "Mostrar avatar"; +"Media type badge" = "Selo de tipo de mídia"; +"Restores the default post info, order and options for the grid feed." = "Restaura as informações da publicação, a ordem e as opções padrão do feed em grade."; +"Views" = "Visualizações"; +"Action button" = "Botão de ação"; +"Adds 'Profile picture' to story tray long-press menus" = "Adiciona 'Foto do perfil' aos menus de manter pressionado na bandeja de stories"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Adiciona um botão de ação RyukGram em cada postagem de feed com entradas de download/compartilhar/copiar/expandir/repost. Tap abre o menu por padrão; altere o comportamento do toque abaixo."; +"Choose Instagram's default feed or force the Following feed" = "Escolha o feed padrão do Instagram ou force o seguinte feed"; +"Main feed" = "Feed principal"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "Controla quando e como o feed é atualizado. A atualização em segundo plano ocorre ao retornar ao aplicativo após aproximadamente 10 minutos. A atualização do botão Home ocorre ao tocar na guia Home enquanto já está nela."; +"Confirm feed refresh" = "Confirmar atualização do feed"; +"Shows an alert before a pull-to-refresh reloads the feed" = "Mostra um alerta antes que puxar para atualizar recarregue o feed"; +"Refresh stories only" = "Atualizar apenas os stories"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "Puxar para atualizar recarrega a bandeja de stories sem atualizar o feed"; +"Refresh feed?" = "Atualizar feed?"; +"Default tap action" = "Ação de toque padrão"; +"Disable background refresh" = "Desativar atualização em segundo plano"; +"Disable home button refresh" = "Desativar atualização do botão home"; +"Disable home button scroll" = "Desativar rolagem do botão home"; +"Disable video autoplay" = "Desativar reprodução automática de vídeo"; +"Hide" = "Esconder"; +"Hide entire feed" = "Ocultar feed inteiro"; +"Hide repost button" = "Ocultar botão de repostagem"; +"Hide stories tray" = "Ocultar bandeja de stories"; +"Hide suggested stories" = "Ocultar stories sugeridas"; +"Hide story highlights" = "Ocultar destaques da story"; +"Removes resurfaced highlights from the stories tray in feed" = "Remove destaques ressurgidos da bandeja de stories no feed"; +"Hides suggested accounts" = "Oculta contas sugeridas"; +"Hides suggested reels" = "Oculta reels sugeridos"; +"Hides suggested threads posts" = "Oculta postagens de tópicos sugeridos"; +"Hides the repost button on feed posts" = "Oculta o botão de repostagem nas postagens do feed"; +"Hides the story tray at the top" = "Oculta a bandeja de stories na parte superior"; +"Inserts a button row below like/comment/share on each post" = "Insere uma linha de botão abaixo de curtir/comentar/compartilhar em cada postagem"; +"Long press on media to expand in full-screen viewer" = "Pressione e segure a mídia para expandir no visualizador de tela cheia"; +"Start media muted" = "Iniciar mídia silenciada"; +"Expanded videos open with sound off" = "Vídeos expandidos abertos com som desligado"; +"Enhanced media resolution" = "Resolução de mídia aprimorada"; +"Media saving" = "Economia de mídia"; +"Spoof device profile so IG serves higher-quality images" = "Falsificar o perfil do dispositivo para que o IG forneça imagens de alta qualidade"; +"Media" = "Mídia"; +"Media zoom" = "Zoom de mídia"; +"No suggested for you" = "Nenhuma sugestão para você"; +"No suggested posts" = "Nenhuma postagem sugerida"; +"No suggested reels" = "Não há reels sugeridos"; +"No suggested threads" = "Nenhum tópico sugerido"; +"Prevents feed from reloading when returning from background" = "Impede que o feed seja recarregado ao retornar do segundo plano"; +"Prevents videos from playing automatically" = "Impede que os vídeos sejam reproduzidos automaticamente"; +"Refresh" = "Atualizar"; +"Removes all content from your home feed" = "Remove todo o conteúdo do seu feed inicial"; +"Removes suggested accounts from the stories tray" = "Remove contas sugeridas da bandeja de stories"; +"Removes suggested posts" = "Remove postagens sugeridas"; +"Scroll to top without refreshing when tapping Home" = "Role para cima sem atualizar ao tocar em Início"; +"Show action button" = "Mostrar botão de ação"; +"Show date" = "Mostrar data"; +"Stories tray" = "Bandeja de stories"; +"Tapping Home does nothing when already on feed" = "Tocar em Home não faz nada quando já está no feed"; +"Tray long-press actions" = "Ações de toque longo na bandeja"; +"Composer doesn't accept GIFs" = "O compositor não aceita GIFs"; +"Copy GIF link" = "Copiar link GIF"; +"Copy image link" = "Copiar link da imagem"; +"Custom GIF in comments" = "GIF personalizado nos comentários"; +"Favorite GIFs" = "GIFs favoritos"; +"Long-press a GIF in the picker to pin it — favorites show first" = "Mantenha pressionado um GIF no seletor para fixá-lo – os favoritos são exibidos primeiro"; +"Added to favorites" = "Adicionado aos favoritos"; +"Removed from favorites" = "Removido dos favoritos"; +"Favorite GIF unavailable" = "GIF favorito indisponível"; +"This GIF may have been removed. Long-press it to unfavorite." = "Este GIF pode ter sido removido. Mantenha pressionado para desfavoritar."; +"Failed to build GIF model" = "Falha ao criar o modelo GIF"; +"GIF link copied" = "Link GIF copiado"; +"Image" = "Imagem"; +"Image link copied" = "Link da imagem copiado"; +"Invalid Giphy URL" = "URL Giphy inválido"; +"Long-press the GIF button to paste any Giphy URL" = "Mantenha pressionado o botão GIF para colar qualquer URL do Giphy"; +"Paste Giphy Link" = "Cole o link do Giphy"; +"Paste a giphy.com URL or media ID" = "Cole um URL giphy.com ou ID de mídia"; +"Send" = "Enviar"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Adiciona um botão de ação RyukGram acima da barra lateral do reel com entradas visualizar capa/baixar/compartilhar/copiar/expandir/repost. Tap abre o menu por padrão; altere o comportamento do toque abaixo."; +"Always show progress scrubber" = "Sempre mostrar o controle de progresso"; +"Auto-scroll reels" = "Rolar reels automaticamente"; +"Speed, seek and auto-scroll controls" = "Controles de velocidade, avanço e rolagem automática"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "Os controles ativados aparecem ao manter pressionado o botão ⋯ ou de áudio em um reel."; +"Seek controls" = "Controles de avanço"; +"Auto-scroll control" = "Controle de rolagem automática"; +"Seek" = "Avançar"; +"Custom seek step" = "Salto personalizado"; +"Enter the number of seconds to skip" = "Digite o número de segundos para pular"; +"Set what a tap on a reel does" = "Define o que um toque em um reel faz"; +"Confirm reel refresh" = "Confirmar atualização do reel"; +"Custom speed" = "Velocidade personalizada"; +"Disable auto-unmuting reels" = "Desativar Reels com ativação automática"; +"Disable scrolling reels" = "Desativar reels de rolagem"; +"Disable tab button refresh" = "Desativar atualização do botão da guia"; +"Doom scrolling limit" = "Limite de rolagem do Doom"; +"e.g. 1.75" = "por exemplo 1,75"; +"Enter a value between 0.5 and 2.0" = "Insira um valor entre 0,5 e 2,0"; +"Keeps the progress bar visible on every reel" = "Mantém a barra de progresso visível em todo reel"; +"Hide \"Made with Edits\" badge" = "Ocultar \"selo\" Feito com Edits"; +"Hide friends avatars" = "Ocultar avatares de amigos"; +"Hide reels header" = "Ocultar cabeçalho dos reels"; +"Hide social context overlay" = "Ocultar sobreposição de contexto social"; +"Hides the avatar bubbles next to the Friends tab in reels" = "Oculta os balões de avatar próximos à guia Amigos nos reels"; +"Hides the Edits app promo pill on reels" = "Oculta a pílula promocional do aplicativo Edits nos reels"; +"Hides the floating overlay showing who reposted or commented on reels" = "Oculta a sobreposição flutuante que mostra quem postou novamente ou comentou nos reels"; +"Hides the repost button on the reels sidebar" = "Oculta o botão de repostagem na barra lateral dos reels"; +"Drops the top bar while you watch reels" = "Oculta a barra superior enquanto você assiste reels"; +"Hiding" = "Escondendo"; +"IG default" = "Padrão de IG"; +"Limits" = "Limites"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "Limita quantos reels você rola em sequência e bloqueia a atualização"; +"Only loads %@ %@" = "Carrega apenas %@ %@"; +"Places a button above the like/comment/share column on each reel" = "Coloca um botão acima da coluna curtir/comentário/compartilhar em cada reel"; +"Playback speed" = "Velocidade de reprodução"; +"Prevent doom scrolling" = "Impedir a rolagem da destruição"; +"Engagement filter" = "Filtro de engajamento"; +"Hide reels below a like, comment, view or repost count" = "Oculta reels abaixo de um mínimo de curtidas, comentários, visualizações ou reposts"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "Oculta reels que não atingem todos os mínimos definidos. Reels com contadores ocultos pelo autor passam mesmo assim, a menos que você também os oculte."; +"Filter reels by engagement" = "Filtrar reels por engajamento"; +"Hide reels with hidden stats" = "Ocultar reels com estatísticas ocultas"; +"Only filter the Reels tab" = "Filtrar apenas a aba Reels"; +"Reels you open from a post, profile or share are never filtered" = "Reels abertos de um post, perfil ou compartilhamento nunca são filtrados"; +"Minimums" = "Mínimos"; +"Minimum likes" = "Mínimo de curtidas"; +"Minimum comments" = "Mínimo de comentários"; +"Minimum views" = "Mínimo de visualizações"; +"Minimum reposts" = "Mínimo de reposts"; +"Reels below this count are hidden. 0 turns this limit off." = "Reels abaixo desse número são ocultados. 0 desativa esse limite."; +"Turns the filter off and clears every minimum." = "Desativa o filtro e limpa todos os mínimos."; +"Locks a reel in place so it never scrolls to the next one" = "Fixa um reel no lugar para que nunca passe para o próximo"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "Impede que os reels desliguem o mudo ao apertar o volume ou o botão de toque"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Confirma antes de atualizar o feed de reels"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "Mostra botões para revelar e preencher automaticamente a senha em reels bloqueados"; +"Same as general format" = "Igual ao formato geral"; +"Shows the repost date on the \"reposted this reel\" header." = "Mostra a data da republicação no cabeçalho \"repostou este reel\"."; +"Reposts" = "Repostagens"; +"Swipe a reel left to open the author's profile" = "Deslize um reel para a esquerda para abrir o perfil do autor"; +"Swipe left to profile" = "Deslize para a esquerda para o perfil"; +"Tap Controls" = "Toque em controles"; +"Tap to mute on photo reels" = "Toque para silenciar os reels de fotos"; +"Tapping the Reels tab while on reels does nothing" = "Tocar na guia Momentos enquanto estiver nos reels não faz nada"; +"Unlock password-locked reels" = "Desbloquear reels bloqueados por senha"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "Quando o modo de pausa estiver ativado, toque nos reels de fotos para alternar o áudio em vez do gesto de pausa nativo"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "Adiciona um botão para filtrar e classificar qualquer lista de seguidores/seguidores. Reinicia quando você sai."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "Adiciona uma opção de visualização ao destaque do menu de toque longo para abrir a capa em tela inteira"; +"Applying restarts Instagram to load your changes." = "Aplicar reinicia o Instagram para carregar suas alterações."; +"Card details" = "Detalhes do cartão"; +"Comment count" = "Contagem de comentários"; +"Copy note on long press" = "Copiar nota com toque longo"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "Estatísticas extras em cada cartão de publicação e reel nas grades de perfil — escolha quais, reordene e depois aplique."; +"Fake follower count" = "Contagem de seguidores falsos"; +"Fake following count" = "Contagem de seguidores falsa"; +"Fake post count" = "Contagem de postagens falsas"; +"Fake profile stats" = "Estatísticas de perfil falso"; +"Fake verified badge" = "Selo verificado falso"; +"Fetch missing counts" = "Buscar contagens ausentes"; +"Filter & sort lists" = "Filtrar e classificar listas"; +"Follow indicator" = "Siga o indicador"; +"Follower & following lists" = "Listas de seguidores e seguidores"; +"Follower count" = "Contagem de seguidores"; +"Following count" = "Contagem seguinte"; +"Like count" = "Contagem de curtidas"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "Mantenha pressionada uma foto de perfil para abri-la em tela cheia com zoom, compartilhar e salvar"; +"Long press the note bubble on a profile to copy the text" = "Pressione longamente o balão de nota em um perfil para copiar o texto"; +"Long press to download directly (ignored when zoom is on)" = "Pressione e segure para baixar diretamente (ignorado quando o zoom está ativado)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "Gestos de pressão longa nos elementos do perfil — mantidos separados dos botões de ação por recurso."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "Interruptor principal para todas as estatísticas do cartão. Buscar contagens ausentes usa a API do Instagram e pode atingir limites de uso."; +"Only affects your own profile header. Other users see the real numbers." = "Afeta apenas o cabeçalho do seu próprio perfil. Outros usuários veem os números reais."; +"Post count" = "Contagem de postagens"; +"Profile card details" = "Detalhes do cartão de perfil"; +"Profile stats" = "Estatísticas do perfil"; +"Repost count" = "Contagem de reposts"; +"Restores the default stats, order, and options for profile card details." = "Restaura as estatísticas, a ordem e as opções padrão dos detalhes do cartão do perfil."; +"Restores the default stats, order, and options for search & explore card details." = "Restaura as estatísticas, a ordem e as opções padrão dos detalhes dos cartões de busca e explorar."; +"Save profile picture" = "Salvar foto do perfil"; +"Search & Explore" = "Busca e Explorar"; +"Share count" = "Contagem de compartilhamentos"; +"Short numbers" = "Números curtos"; +"Show a checkmark next to your name on your own profile" = "Mostre uma marca de seleção ao lado do seu nome em seu próprio perfil"; +"Show card details" = "Mostrar detalhes do cartão"; +"Show full follower count" = "Mostrar contagem completa de seguidores"; +"Show full post count" = "Mostrar contagem completa de postagens"; +"Show the custom number set below" = "Mostre o número personalizado definido abaixo"; +"Show the exact number instead of a shortened one" = "Mostrar o número exato em vez de um número abreviado"; +"Shows whether the profile user follows you" = "Mostra se o usuário do perfil segue você"; +"Tap to set" = "Toque para definir"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "Ative ou desative cada estatística. Arraste a alça ≡ para reordenar como elas se empilham no cartão."; +"Upload date" = "Data de publicação"; +"View count" = "Contagem de visualizações"; +"View highlight cover" = "Ver capa em destaque"; +"Views, likes, comments, shares, reposts, date" = "Visualizações, curtidas, comentários, compartilhamentos, reposts, data"; +"Zoom profile photo" = "Zoom na foto do perfil"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "Baixars ativos, em fila e concluídos"; +"Auto-retry attempts" = "Tentativas de repetição automática"; +"Auto-retry failed downloads" = "Tentativa automática de downloads com falha"; +"Confirm before download" = "Confirme antes de baixar"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "Obsoleto. O botão de ação RyukGram (configurado por recurso em Feed/Reels/Stories) é a nova maneira de baixar mídia. Habilite esta alternância mestre somente se você preferir o antigo toque longo com vários dedos diretamente na mídia."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "Não pause downloads, codificações ou verificações de perfil ao sair do aplicativo"; +"Download queue" = "Fila de download"; +"Downloads" = "Baixados"; +"Downloads with %@ %@" = "Baixars com %@ %@"; +"Enable long-press gesture" = "Ativar gesto de toque longo"; +"Finger count for long-press" = "Contagem de dedos para toque longo"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "Quantos downloads são executados de uma vez — os extras esperam na fila e começam à medida que os slots são liberados. Baixars com falha são repetidos automaticamente em caso de erros de rede. Abra o gerenciador para assistir, cancelar ou tentar downloads novamente."; +"Keep running in background" = "Continue correndo em segundo plano"; +"Legacy long-press gesture" = "Gesto herdado de toque longo"; +"Long-press hold time" = "Tempo de espera de toque longo"; +"Master toggle for the deprecated gesture workflow (off by default)" = "Alternância mestre para o fluxo de trabalho de gestos obsoleto (desativado por padrão)"; +"Max simultaneous downloads" = "Máximo de downloads simultâneos"; +"Open download manager" = "Abra o gerenciador de downloads"; +"Press finger(s) for %@ %@" = "Pressione o(s) dedo(s) para %@ %@"; +"Retry automatically when a download drops on a network error" = "Tentar novamente automaticamente quando um download cair devido a um erro de rede"; +"Route saves into a custom album in Photos instead of the camera roll root" = "A rota salva em um álbum personalizado em Fotos, em vez da raiz do reel da câmera"; +"Run up to %@ %@ at once" = "Execute até %@ %@ de uma só vez"; +"Save action" = "Salvar ação"; +"Save to dedicated album" = "Salvar no álbum dedicado"; +"Show a confirmation dialog before starting a download" = "Mostrar uma caixa de diálogo de confirmação antes de iniciar um download"; +"Try %@ more %@ before giving up" = "Experimente %@ mais %@ antes de desistir"; +"What happens after the gesture downloads" = "O que acontece após o download do gesto"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "Quando \"Salvar em álbum dedicado\" está ativado, downloads e escolhas de \"Salvar nas Fotos\" pela folha de compartilhamento vão para um álbum nomeado na sua biblioteca de Fotos. Toque em \"Nome do álbum\" para alterá-lo."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "%@ restante"; +"%@ of %@" = "%1$@ de %2$@"; +"%@/s" = "%@/s"; +"%dh" = "%dh"; +"%dm" = "%dmin"; +"%ds" = "%ds"; +"%ld downloading" = "%ld baixando"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld ainda em andamento serão parados. Os arquivos já salvos são mantidos."; +"%lu failed" = "%lu falhou"; +"%lu of %lu done" = "%lu de %lu concluído"; +"%lu saved, %lu failed" = "%lu salvo, %lu falhou"; +"12 hours" = "12 horas"; +"1s" = "1s"; +"24 hours" = "24 horas"; +"48 hours" = "48 horas"; +"Active" = "Ativo"; +"Auto-retry" = "Nova tentativa automática"; +"Clear completed" = "Limpeza concluída"; +"Clear download history" = "Limpar histórico de downloads"; +"Clear download history?" = "Limpar o histórico de downloads?"; +"Completed" = "Concluído"; +"Don't keep" = "Não guardar"; +"Download history" = "Histórico de downloads"; +"Download settings" = "Baixar configurações"; +"Downloading %lu items" = "Baixando %lu itens"; +"Downloading…" = "Baixando…"; +"Empty the manager's list of past downloads" = "Esvazia a lista de downloads passados do gerenciador"; +"Encoding %d%%" = "Codificação %d%%"; +"Encoding…" = "Codificação…"; +"Extra downloads wait in line and start as slots free up." = "Baixars extras aguardam na fila e começam à medida que os slots são liberados."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "Por quanto tempo downloads concluídos, com falha e cancelados ficam no gerenciador depois que você fecha o app. Os arquivos nunca são tocados, apenas a lista."; +"How long past downloads stay listed in the manager" = "Por quanto tempo downloads passados ficam listados no gerenciador"; +"Keep history for" = "Guardar histórico por"; +"Media you download shows up here, with its progress and where it was saved." = "As mídias que você baixa aparecem aqui, com o progresso e onde foram salvas."; +"No downloads yet" = "Ainda não há downloads"; +"Preview" = "Visualização"; +"Queued" = "Na fila"; +"Redownload" = "Baixar novamente"; +"Retry" = "Tentar novamente"; +"Retrying…" = "Tentando novamente…"; +"Stop" = "Parar"; +"The files already saved are kept — this only empties the list." = "Os arquivos já salvos são mantidos; isto só esvazia a lista."; +"Waiting for a free slot" = "Aguardando uma vaga livre"; +"Waiting for connection…" = "Aguardando conexão…"; +"Waiting to retry" = "Aguardando para tentar de novo"; +"Waiting…" = "Esperando…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "Organizar botões de sobreposição"; +"Overlay layout" = "Layout da sobreposição"; +"Drag to position the buttons" = "Arraste para posicionar os botões"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "Arraste os botões sobre o story. A faixa esmaecida é a barra de resposta."; +"Send message" = "Enviar mensagem"; + +"Pinned" = "Fixado"; +"Search viewers" = "Buscar visualizadores"; +"No matching viewers" = "Nenhum visualizador correspondente"; +"No viewers match these filters" = "Nenhum visualizador corresponde a esses filtros"; +"Unavailable" = "Indisponível"; +"Default (recent first)" = "Padrão (recente primeiro)"; +"%lu viewers" = "%lu espectadores"; +"Viewer pinned" = "Visualizador fixado"; +"Viewer unpinned" = "Visualizador desafixado"; +"Pin a viewer" = "Fixar um visualizador"; +"Pin order" = "Ordem dos pinos"; +"Pin this viewer?" = "Fixar este visualizador?"; +"Filter, sort & pin viewers" = "Filtrar, classificar e fixar visualizadores"; +"Add by username, remove, reorder" = "Adicionar por nome de usuário, remover, reordenar"; +"Pinned viewers (%lu)" = "Espectadores fixados (%lu)"; +"Viewers list" = "Lista de espectadores"; +"Settings are saved and reused next time." = "As configurações são salvas e reutilizadas na próxima vez."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "Marque vários para combiná-los. Os visualizadores fixados sempre ficam no topo e ignoram esses filtros."; +"Pinned viewers" = "Espectadores fixados"; +"Pin" = "Alfinete"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "Substitui a lista 'quem viu seu story' por uma lista com busca, filtros e ordenação. Mantenha pressionado um visualizador para fixá-lo no topo. Volte para a lista nativa quando quiser."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "Nome de usuário ou PK do usuário. Espectadores fixados sempre permanecem no topo da lista de espectadores do seu story."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "Adiciona um botão de ação RyukGram próximo ao botão de olho em stories com entradas de download/compartilhar/copiar/expandir/repost/visualizar menções. Tap abre o menu por padrão; altere o comportamento do toque abaixo."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "Adiciona um botão de alto-falante à sobreposição da story para ativar/desativar o áudio. Também disponível no menu de 3 pontos"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "Adiciona o botão de olho às sobreposições de stories. Desligado continua bloqueado sem o botão"; +"Advance on story like" = "Avance na story como"; +"Advance on story reply" = "Avançar na resposta da story"; +"Advance when marking as seen" = "Avance ao marcar como visto"; +"Audio" = "Áudio"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "Bloquear todos: todas as stories são bloqueadas — os usuários listados são exceções.\nBloquear selecionado: apenas os usuários listados são bloqueados — todo o resto é normal.\nAmbas as listas são salvas de forma independente."; +"Blocking mode" = "Modo de bloqueio"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "Botão = marca de visto ao toque unico. Alternar = toque para ativar/desativar as confirmações de leitura da story (os olhos ficam azuis quando ativados)"; +"Marked-seen indicator" = "Indicador de visto marcado"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "Lembra por 48 horas os stories que você marcou como vistos e oculta ou preenche o botão de olho neles"; +"Hide eye button" = "Ocultar botão de olho"; +"Fill eye button green" = "Preencher botão de olho de verde"; +"Disable story seen receipt" = "Desativar recibo de story vista"; +"Enable story user list" = "Ativar lista de usuários da story"; +"Stops others from seeing that you viewed their story" = "Impede que os outros vejam que você viu o story deles"; +"Inserts a button next to the seen/eye button on story overlays" = "Insere um botão próximo ao botão visto/olho nas sobreposições de stories"; +"Keep stories visually seen locally" = "Mantenha as stories visualmente vistas localmente"; +"Liking a story automatically advances to the next one after a short delay" = "Curtir uma story avança automaticamente para a próxima após um pequeno atraso"; +"Manage list" = "Gerenciar lista"; +"Manage list (%lu)" = "Gerenciar lista (%lu)"; +"Manual seen button mode" = "Modo de botão visto manualmente"; +"Mark seen on story like" = "Marca como visto a story"; +"Mark seen on story reply" = "Marca como visto na resposta da story"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "Marca uma story como vista no momento em que você toca no coração, mesmo com o bloqueio de vista ativado"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "Marca uma story como vista quando você envia uma resposta ou reação de emoji, mesmo com o bloqueio de vista ativado"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "Marca stories como vistas localmente (anel cinza) enquanto ainda bloqueia o recibo visto no servidor"; +"Master toggle. When off, the list is ignored" = "Alternância mestre. Quando desativado, a lista é ignorada"; +"Playback" = "Reprodução"; +"Search, sort, swipe to remove" = "Pesquise, classifique, deslize para remover"; +"Seen receipts" = "Recibos vistos"; +"Sending a reply or emoji reaction automatically advances to the next story" = "Enviar uma resposta ou reação emoji avança automaticamente para a próxima story"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "Adiciona uma entrada 'Ver menções' ao menu do botão de ação e ao menu de três pontos da story"; +"Mentions overlay button" = "Menciona o botão de sobreposição"; +"Mentions count badge" = "Selo de contagem de menções"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "Adiciona um botão próximo ao botão de ação/olho na sobreposição da story. Aparece apenas quando a story atual tem menções ou postagens/momentos compartilhados"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "Mostra o número de contas mencionadas únicas como um emblema vermelho no botão de sobreposição"; +"Hide stories midcards" = "Ocultar cartões intermediários de stories"; +"Removes the Trending and Music promo cards from the stories tray" = "Remove os cards promocionais de Tendências e Música da bandeja de stories"; +"Stickers" = "Adesivos"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "Dê uma olhada nos resultados da enquete/questionário/controle deslizante antes de interagir – você ainda pode tocar para votar normalmente. Force Legacy adiciona os adesivos Quiz e Reveal de volta ao compositor da story."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "Dê uma olhada nos resultados da enquete/questionário/controle deslizante nos reels antes de interagir – você ainda pode tocar para votar normalmente."; +"Force legacy stickers in tray" = "Forçar adesivos legados na bandeja"; +"Adds Quiz and Reveal stickers back to the picker" = "Adiciona adesivos de questionário e revelação de volta ao seletor"; +"Bypass Reveal sticker" = "Ignorar adesivo de revelação"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "Pule a etapa de DM para revelar stories com um adesivo de revelação"; +"Show quiz answer" = "Mostrar resposta do questionário"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "Circule a opção correta nos adesivos do questionário ou a opção principal nas enquetes"; +"Show poll vote counts" = "Mostrar contagens de votos nas enquetes"; +"Show vote tallies on poll options and slider count/average before you vote" = "Mostre contagens de votos nas opções de enquete e contagem/média do controle deslizante antes de votar"; +"Stop story auto-advance" = "Interromper o avanço automático da story"; +"Stories" = "Stories"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "As stories não passarão automaticamente para a próxima quando o cronômetro terminar. Toque para avançar manualmente"; +"Story audio toggle" = "Alternar áudio da story"; +"Story user list" = "Lista de usuários da story"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "Tocar no botão de olho para marcar uma story como vista avança automaticamente para a próxima story"; +"This will send a story view receipt." = "Isso enviará um recibo de visualização da story."; +"View story mentions" = "Ver menções à story"; +"Which stories get seen-receipt blocking" = "Quais stories são bloqueadas por recibo visto"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "Status ativo preciso"; +"Activity log" = "Registro de atividade"; +"Loading…" = "Carregando…"; +"Notify: %@ · Log: %@" = "Notificar: %@ · Registro: %@"; +"Add by user ID" = "Adicionar por ID de usuário"; +"Add by thread ID" = "Adicionar por ID de conversa"; +"Adding…" = "Adicionando…"; +"Browse activity, grouped by person" = "Ver a atividade, agrupada por pessoa"; +"Clear activity log?" = "Limpar o registro de atividade?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "Ainda não há atividade.\nQuando alguém ler sua mensagem ou ficar online, aparecerá aqui."; +"No one found. Check the spelling or try a different name." = "Ninguém encontrado. Verifique a grafia ou tente outro nome."; +"Notify about someone" = "Notificar sobre alguém"; +"Open some chats first, or search a username above." = "Abra algumas conversas primeiro, ou busque um nome de usuário acima."; +"Pick what each person notifies you about" = "Escolha o que cada pessoa notifica"; +"Recent in your DMs" = "Recentes nas suas mensagens"; +"Results" = "Resultados"; +"This removes all recorded activity on this device." = "Isto remove toda a atividade registrada neste dispositivo."; +"Active %ldd ago" = "Ativo há %ldd"; +"Active %ldh ago" = "Ativo há %ldh"; +"Active %ldm ago" = "Ativo há %ldm"; +"Activity notifications" = "Notificações de atividade"; +"Also track reads in group chats. Groups can be noisy" = "Também registrar leituras em grupos. Grupos podem ser barulhentos"; +"Came online" = "Ficou online"; +"Customise notifications" = "Personalizar notificações"; +"Everyone" = "Todos"; +"Muted" = "Silenciado"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "Ninguém foi personalizado ainda. Mantenha pressionado alguém no registro de atividade para escolher o que notificar."; +"Online, offline, typing and read receipts, per person" = "Online, offline, digitando e confirmações de leitura, por pessoa"; +"Per-person notifications" = "Notificações por pessoa"; +"Enable activity" = "Ativar atividade"; +"Track who reads your messages, comes online, goes offline or types" = "Acompanha quem lê suas mensagens, fica online, sai ou está digitando"; +"For everyone" = "Para todos"; +"For this person" = "Para esta pessoa"; +"Log only" = "Somente registro"; +"Notify only" = "Somente notificar"; +"Notify + log" = "Notificar + registro"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "Somente registro salva em silêncio. Somente notificar avisa você sem guardar. Notificar + registro faz as duas coisas."; +"Presence" = "Presença"; +"Read your message" = "Leu sua mensagem"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "Atualiza a presença a cada 20 s e remove o período de tolerância do Instagram, para o ponto verde apagar assim que alguém fica offline."; +"Started typing" = "Começou a digitar"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "Toque para mudar o que notifica. Deslize para remover e voltar aos padrões."; +"These override the defaults for this person." = "Isto substitui os padrões para esta pessoa."; +"Went offline" = "Ficou offline"; +"When someone becomes active" = "Quando alguém fica ativo"; +"When someone goes inactive" = "Quando alguém fica inativo"; +"When someone opens a message you sent" = "Quando alguém abre uma mensagem que você enviou"; +"When someone starts typing to you" = "Quando alguém começa a digitar para você"; +"is now active" = "está ativo agora"; +"is typing…" = "está digitando…"; +"went offline" = "ficou offline"; +"Online" = "Online"; +"Offline" = "Offline"; +"Typing" = "Digitando"; +"Filters" = "Filtros"; +"Delete the selected records? This can't be undone." = "Excluir os registros selecionados? Isso não pode ser desfeito."; +"Delete all records for the selected chats? This can't be undone." = "Excluir todos os registros dos chats selecionados? Isso não pode ser desfeito."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "Adiciona o botão de olho aos threads DM. Desligado mantém o bloqueio de recibos ativado sem o botão"; +"Auto mark seen on interact" = "Marcação automática de vista na interação"; +"Auto mark seen on typing" = "Marcação automática de vista ao digitar"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "Bloqueia a confirmação de leitura automática – a marcação de vista só acontece quando você escolhe"; +"Control when messages are marked as seen" = "Controle quando as mensagens são marcadas como vistas"; +"How the seen button behaves" = "Como o botão visto se comporta"; +"Manually mark messages as seen" = "Marcar manualmente as mensagens como vistas"; +"Mark as seen?" = "Marcar como visto?"; +"Mark as viewed?" = "Marcar como visualizado?"; +"Mark seen locally" = "Marcar como visto localmente"; +"Marks messages as seen when you reply, react or send media" = "Marca mensagens como vistas quando você responde, reage ou envia mídia"; +"Marks messages as seen when you start typing" = "Marca as mensagens como vistas quando você começa a digitar"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "Chats abertos aparecem como lidos apenas neste aparelho. O botão do olho fica laranja enquanto o remetente não tiver confirmação de leitura"; +"Read receipt mode" = "Modo de recibo de leitura"; +"Read receipts" = "Ler recibos"; +"Show seen button" = "Mostrar botão visto"; +"This will send a read receipt for the latest messages." = "Isso enviará uma confirmação de leitura para as mensagens mais recentes."; +"This will send a view receipt for the current message." = "Isso enviará um recibo de visualização da mensagem atual."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "Atividade"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "Adiciona uma opção de ‘Baixar’ ao menu de toque longo em mensagens de voz para salvá-las como áudio M4A"; +"Allows typing and sending DMs longer than Instagram's limit" = "Permite digitar e enviar DMs por mais tempo que o limite do Instagram"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "Adiciona uma opção ‘Enviar arquivo’ ao menu de adição em DMs. Os tipos de arquivos suportados podem ser limitados pelo Instagram"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "Adiciona uma opção ‘Arquivo de Áudio’ ao menu mais em DMs para enviar arquivos de áudio como mensagens de voz"; +"Adds copy text, download GIF/audio to the note long-press menu" = "Adiciona cópia de texto, download de GIF/áudio ao menu de toque longo da nota"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "Bloquear todos: todos os chats bloqueados — os chats listados são exceções.\nBloquear selecionado: apenas os chats listados são bloqueados — todo o resto é normal.\nAmbas as listas são salvas de forma independente. Mantenha pressionado um bate-papo na caixa de entrada para adicioná-lo ou removê-lo."; +"Block keep-deleted for excluded chats" = "Bloquear manter excluído para bate-papos excluídos"; +"Block keep-deleted for unlisted chats" = "Bloquear manter excluído para bate-papos não listados"; +"Bypass DM character limit" = "Ignorar limite de caracteres DM"; +"Chat list" = "Lista de bate-papo"; +"Confirmation dialog before clearing preserved messages" = "Caixa de diálogo de confirmação antes de limpar mensagens preservadas"; +"Copies note text directly on long press without opening the menu" = "Copia o texto da nota diretamente ao pressionar longamente sem abrir o menu"; +"Copy text on hold" = "Copiar texto em espera"; +"Adds Background, Text and Emoji buttons to the note editor" = "Adiciona botões de fundo, texto e emoji ao editor de notas"; +"Custom note themes" = "Temas de notas personalizados"; +"Disable vanish mode swipe" = "Desativar modo de desaparecimento deslizar"; +"Disable typing status" = "Desativar status de digitação"; +"Disable view-once limitations" = "Desativar limitações de visualização única"; +"Download voice messages" = "Baixar mensagens de voz"; +"Enable chat list" = "Ativar lista de bate-papo"; +"Enable note theming" = "Ativar tema de nota"; +"Enables the notes theme picker" = "Ativa o seletor de tema de notas"; +"Files" = "Arquivos"; +"Full last active date" = "Última data ativa completa"; +"Hide reels blend button" = "Ocultar botão de mistura de reels"; +"Hide send to group chat" = "Ocultar envio para bate-papo em grupo"; +"Pin recipients on long-press" = "Fixar destinatários ao pressionar longamente"; +"Long-press in the share sheet to pin a chat/user to the top" = "Mantenha pressionado na planilha de compartilhamento para fixar um bate-papo/usuário no topo"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "Mantenha um destinatário pressionado para fixar ou desafixar. Destinatários fixados são renderizados na parte superior."; +"Recipient pinned" = "Destinatário fixado"; +"Recipient unpinned" = "Destinatário desafixado"; +"Couldn't resolve recipient id" = "Não foi possível resolver o ID do destinatário"; +"Hide video call button" = "Ocultar botão de videochamada"; +"Hide voice call button" = "Ocultar botão de chamada de voz"; +"Hides the blend button in DMs" = "Oculta o botão de mesclagem em DMs"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "Remove a linha criar/enviar para bate-papo em grupo ao compartilhar com vários destinatários"; +"Hides typing indicator from others" = "Oculta o indicador de digitação de outras pessoas"; +"Indicate unsent messages" = "Indicar mensagens não enviadas"; +"Keep deleted messages" = "Manter mensagens excluídas"; +"Turns view once messages into normal media you can loop and pause" = "Transforma mensagens de ver uma vez em mídia normal que você pode repetir e pausar"; +"Note actions" = "Ações de observação"; +"Preserves messages that others unsend" = "Preserva mensagens que outras pessoas não enviam"; +"Keep my deleted messages" = "Manter minhas mensagens excluídas"; +"Also preserves messages you unsend yourself" = "Também preserva mensagens que você remove"; +"Prevents accidental swipe-up activation of vanish mode" = "Impede a ativação acidental do modo de desaparecimento ao deslizar para cima"; +"Quick list button in chats" = "Botão de lista rápida em bate-papos"; +"Removes the audio call button from DM thread header" = "Remove o botão de chamada de áudio do cabeçalho do tópico DM"; +"Removes the video call button from DM thread header" = "Remove o botão de videochamada do cabeçalho do tópico DM"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "Reproduza mensagens visuais sem expirar. Alternar no menu do botão de olho ou como botão independente quando o botão de olho estiver desativado"; +"Search, sort, swipe to remove or toggle keep-deleted" = "Pesquise, classifique, deslize para remover ou alternar para manter excluído"; +"Send audio as file" = "Enviar áudio como arquivo"; +"Send files (experimental)" = "Enviar arquivos (experimental)"; +"File sending not available" = "Envio de arquivo não disponível"; +"Show full date instead of \"Active 2h ago\"" = "Mostras a data completa ao invés de \"Ativo há duas horas atrás\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "Mostra um botão em tópicos DM para adicionar/remover chats da lista. Pressione longamente para mais opções"; +"Shows a notification pill when a message is unsent" = "Mostra uma pílula de notificação quando uma mensagem não é enviada"; +"Shows an \"Unsent\" label on preserved messages" = "Mostra um rótulo \"Não enviada\" nas mensagens preservadas"; +"Unlimited replay of visual messages" = "Repetição ilimitada de mensagens visuais"; +"Unsent message notification" = "Notificação de mensagem não enviada"; +"Voice messages" = "Mensagens de voz"; +"Warn before clearing on refresh" = "Avisar antes de limpar na atualização"; +"Which chats get read-receipt blocking" = "Quais bate-papos recebem bloqueio de confirmação de leitura"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ Puxar para atualizar na guia DMs limpa todas as mensagens preservadas. Ative o aviso abaixo para obter uma caixa de diálogo de confirmação."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu excluído"; +"%lu selected" = "%lu selecionado"; +"Absolute date + time" = "Data + hora absoluta"; +"Adjust the filters or clear the search to see more." = "Ajuste os filtros ou limpe a pesquisa para ver mais."; +"All time" = "Todo o tempo"; +"Browse, filter and search recorded messages" = "Navegue, filtre e pesquise mensagens gravadas"; +"Captures unsent messages with their text or media" = "Captura mensagens não enviadas com seu texto ou mídia"; +"Clear deleted-message log?" = "Limpar registro de mensagens excluídas?"; +"Clear from this user" = "Limpar deste usuário"; +"Clear log" = "Limpar registro"; +"Clear log for this account" = "Limpar registro desta conta"; +"Clear log for this user?" = "Limpar registro deste usuário?"; +"Clear media files" = "Limpar arquivos de mídia"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "A limpeza da mídia mantém os registros (texto, remetente, carimbo de data/hora). Limpar o log remove tudo desta conta."; +"Close" = "Fechar"; +"Content unavailable" = "Conteúdo indisponível"; +"Copied" = "Copiado"; +"Copy URL" = "Copiar URL"; +"Date range" = "Período"; +"Deleted messages" = "Mensagens excluídas"; +"Deleted messages log" = "Registro de mensagens excluídas"; +"Deleted: %@\n" = "Excluído: %@\n"; +"Edit %lu" = "Editar %lu"; +"Edit history" = "Editar histórico"; +"Edited" = "Editado"; +"Empty" = "Vazio"; +"Enable deleted messages log" = "Habilitar registro de mensagens excluídas"; +"Enable Settings → Messages → Deleted messages log to start recording." = "Ative Configurações → Mensagens → Registro de mensagens excluídas para iniciar a gravação."; +"GIF" = "GIFs"; +"Hashtag" = "Hashtag"; +"IGTV" = "IG TV"; +"Kind: %@\n" = "Tipo: %@\n"; +"Last 30 days" = "Últimos 30 dias"; +"Last 7 days" = "Últimos 7 dias"; +"Link" = "Ligação"; +"Live location" = "Localização ao vivo"; +"Location" = "Localização"; +"Logging is off" = "O login está desativado"; +"Media on disk" = "Mídia em disco"; +"Most messages" = "A maioria das mensagens"; +"Most recent" = "Mais recente"; +"No deleted messages yet" = "Nenhuma mensagem excluída ainda"; +"No matches" = "Nenhuma correspondência"; +"Nothing to save" = "Nada para salvar"; +"Oldest first" = "Mais antigo primeiro"; +"Open log" = "Abrir registro"; +"Group chat" = "Bate-papo em grupo"; +"%lu messages in %lu chats" = "%lu mensagens em %lu bate-papos"; +"%lu people · %lu deleted" = "%lu pessoas · %lu excluídas"; +"When someone unsends a message, it will appear here grouped by chat." = "Quando alguém cancelar o envio de uma mensagem, ela aparecerá aqui agrupada por chat."; +"Clear this chat" = "Limpar este bate-papo"; +"Clear log for this chat?" = "Limpar registro deste bate-papo?"; +"Removes every preserved deleted message from this group chat." = "Remove todas as mensagens excluídas preservadas deste bate-papo em grupo."; +"Reaction removed" = "Reação removida"; +"Log removed reactions" = "Registrar reações removidas"; +"Also records when someone removes a reaction, and which message it was on" = "Também registra quando alguém remove uma reação e em qual mensagem ela estava"; +"Removed a reaction" = "Removida uma reação"; +"on @%@: %@" = "em @%@: %@"; +"on: %@" = "em: %@"; +"a message" = "uma mensagem"; +"removed %@ on: %@" = "removido %@ em: %@"; +"removed reaction %@" = "reação removida %@"; +"%@ removed the %@ reaction." = "%@ removeu a reação %@."; +"Removed %@" = "%@ removido"; +"Someone" = "Alguém"; +"Photo or video" = "Foto ou vídeo"; +"Refresh names & photos" = "Atualizar nomes e fotos"; +"Refreshing names & photos" = "Atualizando nomes e fotos"; +"Records every message someone unsends, grouped by chat" = "Registra todas as mensagens que alguém não envia, agrupadas por chat"; +"Open profile" = "Abrir perfil"; +"Original" = "Originais"; +"Play" = "Jogar"; +"Post" = "Postar"; +"Reel" = "Carretel"; +"Relative (1m / 3h / 3d ago)" = "Relativo (1m / 3h / 3d atrás)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "Remove todas as mensagens excluídas preservadas e sua mídia capturada da conta atual. Isto não pode ser desfeito."; +"Removes every preserved deleted message and its captured media for this account." = "Remove todas as mensagens excluídas preservadas e sua mídia capturada para esta conta."; +"Removes every preserved deleted message from this sender." = "Remove todas as mensagens excluídas preservadas deste remetente."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "Remove todas as fotos, vídeos e clipes de voz salvos. Os registros mantêm seu texto e informações do remetente."; +"Search messages" = "Pesquisar mensagens"; +"Search senders or messages" = "Pesquise remetentes ou mensagens"; +"Select" = "Selecione"; +"Show edit history" = "Mostrar histórico de edições"; +"Source URL recorded but media not stored.\n" = "URL de origem registrado, mas mídia não armazenada.\n"; +"Sticker" = "Adesivo"; +"Tap to open in Instagram" = "Toque para abrir no Instagram"; +"Tap to open in Maps" = "Toque para abrir no Maps"; +"Tap to play" = "Toque para jogar"; +"Tap to play · %@" = "Toque para jogar · %@"; +"Text" = "Texto"; +"This account" = "Esta conta"; +"Unknown" = "Desconhecido"; +"Video" = "Vídeo"; +"View" = "Ver"; +"Voice" = "Voz"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "Quando ativado, as mensagens excluídas e suas mídias são salvas neste dispositivo. Desative e limpe o registro para limpar o histórico."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "Na ferramenta Desenhar, envie uma imagem como seu desenho, da galeria, Fotos, stickers ou colar, com editor integrado para cortar e remover o fundo"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "Desenhe uma linha ou forma, toque em Enviar e escolha de onde pegar a imagem: galeria, Fotos, stickers ou colar.\n\nA imagem ocupa o lugar do que você desenhou e assume sua posição e tamanho, então desenhe maior para uma imagem maior.\n\nReinicie o Instagram para aplicar."; + +"Send image as drawing" = "Enviar imagem como desenho"; + +"Bypass \"You can't send messages\"" = "Ignora \"Você não pode enviar mensagens\""; +"Custom chat background" = "Plano de fundo de bate-papo personalizado"; +"DM Save button" = "Botão Salvar DM"; +"Incoming calls stay silent — no ring, no screen, no notification" = "As chamadas recebidas permanecem silenciosas – sem toque, sem tela, sem notificação"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "Faça o botão Salvar integrado do Instagram no download de fotos e vídeos DM para Fotos, Galeria ou Compartilhar"; +"Messages" = "Mensagens"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "Remove o banner do compositor bloqueado e restaura a entrada de texto em threads restritos"; +"Reroute native Save" = "Redirecionar Salvar nativo"; +"Save media" = "Salvar mídia"; +"Silence incoming calls" = "Silenciar chamadas recebidas"; +"Threads" = "Threads"; +"Use your own images as chat backgrounds" = "Use suas próprias imagens como plano de fundo do bate-papo"; +"Activity status toggle" = "Botão de status de atividade"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "Adiciona um ponto no cabeçalho das mensagens. Toque para ativar ou desativar seu status de atividade"; +"Activity status on" = "Status de atividade ativado"; +"Activity status off" = "Status de atividade desativado"; +"Couldn't change activity status" = "Não foi possível alterar o status de atividade"; +"Check your connection and try again" = "Verifique sua conexão e tente novamente"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "Câmera"; +"Viewer" = "Visualizador"; +"Saving" = "Salvamento"; +"Confirmations" = "Confirmações"; +"Confirm switching button" = "Botão de confirmação de troca"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "Adiciona um botão ao lado do botão de ação para ativar ou desativar a confirmação de troca na hora"; +"Switching confirmation on" = "Confirmação de troca ativada"; +"Switching confirmation off" = "Confirmação de troca desativada"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "Adiciona um botão de galeria à câmera Instantes para que você possa enviar uma foto do seu álbum"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "Adiciona um botão de ação RyukGram ao cabeçalho do visualizador Instantes com entradas para expandir, salvar, compartilhar e salvar em massa"; +"All loaded instants" = "Todos os Instantes carregados"; +"Auto advance after reaction" = "Avanço automático após reação"; +"Automatically moves to the next instant after you like or react" = "Move automaticamente para o próximo Instante depois que você curtir ou reagir"; +"Auto close when finished" = "Fechar automaticamente ao terminar"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "Fecha o visualizador Instantes depois que você vê todos, em vez de parar na câmera"; +"Bypasses the Instants screenshot block" = "Ignora o bloqueio de captura de tela dos Instantes"; +"Could not locate the instant on screen" = "Não foi possível localizar o Instante na tela"; +"Current instant" = "Instante atual"; +"In-app Gallery" = "Galeria no aplicativo"; +"Instant" = "Instante"; +"Instants" = "Instantes"; +"Auto-saved instants log" = "Registro de Instantes salvos automaticamente"; +"Auto-save instants" = "Salvar Instantes automaticamente"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "Salva automaticamente cada Instante que você visualiza, inclusive enquanto desliza — cada um apenas uma vez"; +"Instants action button" = "Botão de ação Instantes"; +"No instants currently loaded" = "Nenhum Instante carregado no momento"; +"No media available to save" = "Nenhuma mídia disponível para salvar"; +"Photos library" = "Biblioteca de fotos"; +"Pick from" = "Escolha de"; +"Queued %lu instants" = "%lu Instantes na fila"; +"Save all to Gallery" = "Salvar tudo na Galeria"; +"Save all to Photos" = "Salvar tudo em fotos"; +"Save to Gallery" = "Salvar na Galeria"; +"Send from gallery" = "Enviar da galeria"; +"Tweaks for the QuickSnap / Instants camera surface." = "Ajustes para a superfície da câmera QuickSnap / Instants."; +"Use" = "Usar"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "Oculte também a barra da guia inferior – apenas a caixa de entrada fica visível"; +"Show the home shortcut button in the inbox header, on the right" = "Mostra o botão de atalho para casa no cabeçalho das mensagens, à direita"; +"Greyed out until the home shortcut button is enabled in Interface" = "Fica esmaecido até ativar o botão de atalho para casa em Interface"; +"Hide search tab" = "Ocultar guia de pesquisa"; +"Remove the search/explore button from the tab bar" = "Remova o botão pesquisar/explorar da barra de guias"; +"Hide tab bar" = "Ocultar barra de guias"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "Oculta todas as guias, exceto caixa de entrada DM + perfil, e força o lançamento na caixa de entrada. O atalho de configurações passa para um toque longo na guia da caixa de entrada."; +"Icon order" = "Ordem dos ícones"; +"Launch tab" = "Guia Iniciar"; +"Swipe sideways to move between the tab bar tabs" = "Deslize para os lados para mudar entre as abas da barra"; +"Messages only" = "Apenas mensagens"; +"Messages-only mode" = "Modo somente mensagens"; +"Automatic schedule" = "Agendamento automático"; +"DM-only client, hide tabs, auto schedule" = "Cliente só de DM, ocultar abas, agendamento automático"; +"Start time" = "Horário de início"; +"End time" = "Horário de término"; +"Switch into Messages-only on its own during a time window" = "Ativar o modo apenas-mensagens automaticamente durante um intervalo de tempo"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "Ativa o modo apenas-mensagens automaticamente durante um intervalo diário (ex.: 22:00 – 06:00) usando os botões acima. Você será solicitado a reiniciar quando o intervalo começar e terminar."; +"Active now · ends %@" = "Ativo agora · termina às %@"; +"Next window starts %@" = "Próximo intervalo começa às %@"; +"Messages-only starting" = "Iniciando modo apenas-mensagens"; +"Messages-only ending" = "Encerrando modo apenas-mensagens"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "Seu intervalo do modo apenas-mensagens começou. Reinicie o Instagram para mudar para apenas DM."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "Seu intervalo do modo apenas-mensagens terminou. Reinicie o Instagram para trazer de volta as outras abas."; +"Navigation" = "Navegação"; +"Swipe between tabs" = "Deslize entre as guias"; +"Tab the app opens to. Ignored when Messages-only is on" = "Guia para a qual o aplicativo é aberto. Ignorado quando Somente mensagens está ativado"; +"How the icons on the bottom tab bar are ordered" = "A ordem dos ícones na barra de abas inferior"; +"Hidden tabs" = "Abas ocultas"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "Mantenha pressionado e arraste para reordenar. Arraste um ícone para cima para ocultá-lo. Toque em uma aba oculta para adicioná-la de volta."; +"All tabs are on the bar" = "Todas as abas estão na barra"; +"Turn IG into a DM-only client" = "Transforme IG em um cliente somente DM"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "Todos"; +"Calls" = "Chamadas"; +"Comments & posts" = "Comentários e postagens"; +"Confirm actions" = "Confirmar ações"; +"Confirm changing theme" = "Confirme a mudança do tema"; +"Confirm disappearing media mark as viewed" = "Confirme o desaparecimento da marca de mídia conforme visualizada"; +"Confirm DM mark as seen" = "Confirme a marca DM como vista"; +"Confirm follow" = "Confirmar seguir"; +"Confirm follow requests" = "Confirmar solicitações de acompanhamento"; +"Confirm Instants capture" = "Confirmar captura de Instantes"; +"Confirm Instants emoji reaction" = "Confirmar reação com emoji nos Instantes"; +"Confirm like: Posts" = "Confirme como: Postagens"; +"Confirm like: Reels" = "Confirme como: Momentos"; +"Confirm note emoji reaction" = "Confirme a reação do emoji da nota"; +"Confirm note like" = "Confirme a nota como"; +"Confirm posting comment" = "Confirmar postagem do comentário"; +"Confirm repost" = "Confirmar repostagem"; +"Confirm send to group chat" = "Confirme o envio para bate-papo em grupo"; +"Confirm sticker interaction (highlights)" = "Confirme a interação do adesivo (destaques)"; +"Confirm sticker interaction (stories)" = "Confirme a interação dos adesivos (stories)"; +"Confirm story emoji reaction" = "Confirme a reação do emoji da story"; +"Confirm story like" = "Confirme a story como"; +"Confirm story mark as seen" = "Confirme a marca da story como vista"; +"Confirm switching Instant" = "Confirmar troca de Instante"; +"Confirm unfollow" = "Confirmar deixar de seguir"; +"Confirm vanish mode" = "Confirme o modo de desaparecimento"; +"Confirm video call" = "Confirmar videochamada"; +"Confirm voice call" = "Confirmar chamada de voz"; +"Confirm voice messages" = "Confirmar mensagens de voz"; +"Follows" = "Segue"; +"Likes" = "Curtidas"; +"Messaging" = "Mensagens"; +"Reaction stickers only" = "Somente adesivos de reação"; +"Reactions" = "Reações"; +"Send to group chat?" = "Enviar para bate-papo em grupo?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "Mostra um alerta antes de criar/enviar para um bate-papo em grupo a partir da planilha de compartilhamento"; +"Shows an alert before marking a disappearing message as viewed" = "Mostra um alerta antes de marcar uma mensagem que desaparece como visualizada"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "Mostra um alerta antes de enviar uma confirmação de leitura do botão ou menu DM visto"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "Mostra um alerta antes de enviar um recibo de visualização de story a partir do botão de olho ou menu"; +"Shows an alert before sending an emoji reaction on a note" = "Mostra um alerta antes de enviar uma reação emoji em uma nota"; +"Shows an alert before sending an emoji reaction on a story" = "Mostra um alerta antes de enviar uma reação emoji em uma story"; +"Shows an alert before sending an emoji reaction on an Instant" = "Mostra um alerta antes de enviar uma reação com emoji em um Instante"; +"Shows an alert before sending a photo or video from the Instants camera" = "Mostra um alerta antes de enviar uma foto ou vídeo da câmera Instantes"; +"Shows an alert before tapping to switch to the next/previous Instant" = "Mostra um alerta antes de tocar para alternar para o Instante seguinte/anterior"; +"Asks you to confirm before a voice message sends" = "Pede confirmação antes de enviar uma mensagem de voz"; +"Shows an alert to confirm before toggling vanish mode" = "Mostra um alerta para confirmar antes de alternar para o modo desaparecer"; +"Confirms before you accept or decline a follow request" = "Confirma antes de aceitar ou recusar uma solicitação de seguir"; +"Confirms before a chat theme change applies" = "Confirma antes de aplicar uma mudança de tema do chat"; +"Confirms before the follow button follows someone" = "Confirma antes de o botão seguir seguir alguém"; +"Shows an alert when you click the like button on notes to confirm the like" = "Mostra um alerta quando você clica no botão curtir nas notas para confirmar o like"; +"Shows an alert when you click the like button on posts to confirm the like" = "Mostra um alerta quando você clica no botão curtir nas postagens para confirmar a curtida"; +"Confirms before a like lands on a reel" = "Confirma antes de uma curtida cair em um reel"; +"Shows an alert when you click the like button on stories to confirm the like" = "Mostra um alerta quando você clica no botão curtir nos stories para confirmar o like"; +"Confirms before a comment posts" = "Confirma antes de publicar um comentário"; +"Shows an alert when you click the repost button to confirm before reposting" = "Mostra um alerta quando você clica no botão de repostagem para confirmar antes de repostar"; +"Shows an alert when you click the unfollow button to confirm" = "Mostra um alerta quando você clica no botão deixar de seguir para confirmar"; +"Shows an alert when you click the video call button to confirm before calling" = "Mostra um alerta quando você clica no botão de videochamada para confirmar antes de ligar"; +"Shows an alert when you click the voice call button to confirm before calling" = "Mostra um alerta quando você clica no botão de chamada de voz para confirmar antes de ligar"; +"Shows an alert when you tap a sticker inside a highlight" = "Mostra um alerta quando você toca em um adesivo dentro de um destaque"; +"Shows an alert when you tap a sticker on someone's story" = "Mostra um alerta quando você toca em um adesivo no story de alguém"; +"Stories & highlights" = "Stories e destaques"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ldh"; +"%ld locked" = "%ld bloqueado"; +"%ld min" = "%ld min"; +"%ldh idle" = "%ldh ocioso"; +"%ldm idle" = "%ldm ocioso"; +"%lds" = "%lds"; +"%lds idle" = "%lds inativo"; +"%lu hidden" = "%lu oculto"; +"4 digits" = "4 dígitos"; +"6 digits" = "6 dígitos"; +"Add hidden chat" = "Adicionar bate-papo oculto"; +"Add locked chat" = "Adicionar bate-papo bloqueado"; +"Allow Instants screenshots" = "Permitir capturas de tela dos Instantes"; +"Always ask when opening again" = "Sempre pergunte ao abrir novamente"; +"Ask again after Instagram returns" = "Pergunte novamente após o retorno do Instagram"; +"Auto-relock after idle" = "Rebloqueio automático após inatividade"; +"Balanced default" = "Padrão equilibrado"; +"Best for sensitive sections" = "Melhor para seções sensíveis"; +"Biometric" = "Biométrico"; +"Change passcode" = "Alterar senha"; +"Chat hidden" = "Bate-papo oculto"; +"Chat unhidden" = "Conversa exibida"; +"Chat locked" = "Bate-papo bloqueado"; +"Chat unlocked" = "Bate-papo desbloqueado"; +"Choose a code you'll remember." = "Escolha um código do qual você se lembrará."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "Escolha por quanto tempo esta seção permanecerá desbloqueada enquanto estiver inativa. Nunca o mantém desbloqueado até que o Instagram feche ou vá para segundo plano."; +"Confirm current passcode" = "Confirme a senha atual"; +"Confirm passcode" = "Confirmar senha"; +"Could not save passcode" = "Não foi possível salvar a senha"; +"Create passcode" = "Criar senha"; +"Derivation failed" = "Falha na derivação"; +"DM inbox" = "Caixa de entrada DM"; +"Don't share unlock" = "Não compartilhe o desbloqueio"; +"Each target has its own enable, timeout, and re-lock configuration." = "Cada destino tem sua própria configuração de ativação, tempo limite e rebloqueio."; +"Enable lock" = "Ativar bloqueio"; +"Enter passcode" = "Digite a senha"; +"Enter value" = "Insira o valor"; +"Enter your current passcode to change it" = "Digite sua senha atual para alterá-la"; +"Enter your current passcode to reset it" = "Digite sua senha atual para redefini-la"; +"Enter your passcode to continue" = "Digite sua senha para continuar"; +"every use" = "cada uso"; +"Every use" = "Cada uso"; +"Hidden chats" = "Bate-papos ocultos"; +"Hidden chats hidden" = "Conversas ocultas ocultadas"; +"Hidden chats revealed" = "Conversas ocultas exibidas"; +"👁 Shown in the inbox · Tap to hide" = "👁 Exibidos na caixa · Toque para ocultar"; +" · shown in inbox" = " · exibidos na caixa"; +"Hide chat" = "Ocultar bate-papo"; +"Unhide chat" = "Mostrar conversa"; +"Hold name to reveal" = "Segure o nome para exibir"; +"Hide message preview" = "Ocultar visualização da mensagem"; +"Hide this chat?" = "Ocultar este bate-papo?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "Oculta a interface do RyukGram de capturas de tela/gravações e direciona os alertas de captura de tela por recurso do IG."; +"Idle timeout" = "Tempo limite de inatividade"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "Mantenha este alvo bloqueado separadamente"; +"Less frequent prompts" = "Solicitações menos frequentes"; +"Lock" = "Bloquear"; +"Lock chat" = "Bloquear bate-papo"; +"Lock every time" = "Bloqueie sempre"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "Bloquear sempre substitui o tempo limite de inatividade. Não compartilhar o desbloqueio mantém esse alvo separado."; +"Lock targets" = "Bloquear alvos"; +"Lock the tweak" = "Bloqueie o ajuste"; +"Lock this chat" = "Bloquear este bate-papo"; +"Lock this chat?" = "Bloquear este bate-papo?"; +"Lock with passcode" = "Bloquear com senha"; +"Locked chats" = "Bate-papos bloqueados"; +"Long-press a chat to lock it individually" = "Mantenha um bate-papo pressionado para bloqueá-lo individualmente"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "Mantenha pressionado um tópico DM → Ocultar bate-papo para adicioná-lo aqui. Os bate-papos ocultos são filtrados da caixa de entrada até que você os remova desta lista."; +"Long-press a DM to add" = "Pressione e segure um DM para adicionar"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "Mantenha pressionado o nome da conta no topo da caixa de mensagens para mostrar ou ocultar suas conversas ocultas"; +"Longest idle window" = "Janela ociosa mais longa"; +"Manage locked chats" = "Gerenciar bate-papos bloqueados"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "Interruptor mestre. Desligue para desativar todos os alvos de bloqueio sem perder a configuração por destino."; +"Never" = "Nunca"; +"No passcode set" = "Nenhuma senha definida"; +"Nothing here yet." = "Nada aqui ainda."; +"Off" = "Desligado"; +"On" = "Ligado"; +"On — %@" = "Ativado — %@"; +"On — %@ + %ld more" = "Ativado — %@ + %ld mais"; +"On — no targets enabled" = "Ativado — nenhum destino ativado"; +"Passcode" = "Senha"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "Senha + biometria. Acesse o pop-up de configurações de ajuste, galeria, registro de mensagens excluídas, bate-papos individuais e todo o aplicativo."; +"Passcode changed" = "Senha alterada"; +"Passcode reset" = "Redefinição de senha"; +"Passcode set" = "Conjunto de senha"; +"Passcode too short" = "Senha muito curta"; +"Passcodes did not match — try again" = "As senhas não correspondem. Tente novamente"; +"Per-chat locks" = "Bloqueios por chat"; +"Prompt before Instagram opens" = "Avisar antes que o Instagram abra"; +"Prompt before Profile Analyzer opens" = "Avisar antes que o Profile Analyzer seja aberto"; +"Prompt before the deleted-messages log opens" = "Avisar antes que o log de mensagens excluídas seja aberto"; +"Prompt before the gallery opens" = "Avisar antes que a galeria seja aberta"; +"Prompt before tweak settings open" = "Avisar antes de ajustar as configurações abertas"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "Avisar sobre cada entrada na caixa de entrada do DM, incluindo lançamento de mensagens"; +"Re-enter the same passcode" = "Digite novamente a mesma senha"; +"Re-lock on background" = "Bloquear novamente em segundo plano"; +"re-lock on bg" = "bloquear novamente no bg"; +"Recently hidden" = "Ocultado recentemente"; +"Prompt before holding the inbox name reveals hidden chats" = "Pedir antes que segurar o nome exiba as conversas ocultas"; +"Reveal hidden chats" = "Exibir conversas ocultas"; +"Recently locked" = "Bloqueado recentemente"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "Redija botões RyukGram de capturas de tela, gravações de tela e espelhamento"; +"Remove screenshot alert" = "Remover alerta de captura de tela"; +"Replace inbox preview with • • •" = "Substitua a visualização da caixa de entrada por • • •"; +"Require passcode for this section" = "Exigir senha para esta seção"; +"Requires your current passcode" = "Requer sua senha atual"; +"Reset passcode" = "Redefinir senha"; +"Reset passcode?" = "Redefinir senha?"; +"Screenshots & capture" = "Capturas de tela e captura"; +"Security & Privacy" = "Segurança e privacidade"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "Defina uma senha para proteger Configurações, Galeria, mensagens excluídas, bate-papos, caixa de entrada de DM, Analisador de Perfil ou o próprio Instagram."; +"Set passcode" = "Definir senha"; +"Short idle window" = "Janela ociosa curta"; +"Stay unlocked until app close or background" = "Fique desbloqueado até o aplicativo fechar ou em segundo plano"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "Suprime a notificação \"X fez uma captura de tela\" do IG em Stories, DMs e mídia temporária"; +"Tap Unlock" = "Toque em Desbloquear"; +"Tap Unlock or enter your passcode" = "Toque em Desbloquear ou digite sua senha"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "Isso limpa a senha, desativa todos os alvos de bloqueio e desbloqueia todos os bate-papos. Os dados da Galeria e Keep-Deleted permanecem intactos."; +"Thread %@" = "Tópico %@"; +"Tweak settings" = "Ajustar configurações"; +"Unlock" = "Desbloquear"; +"Unlock %@" = "Desbloquear %@"; +"Unlock chat" = "Desbloquear bate-papo"; +"Unlock Instagram" = "Desbloquear Instagram"; +"Unlock this chat" = "Desbloquear este bate-papo"; +"Use %@" = "Usar %@"; +"Username (looks up the DM thread) or raw thread ID" = "Nome de usuário (procura o thread DM) ou ID do thread bruto"; +"Username or thread ID" = "Nome de usuário ou ID do tópico"; +"Wrong passcode" = "Senha errada"; +"Wrong passcode • %ld attempts" = "Senha errada • %ld tentativas"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "Proteção"; +"Password-protect" = "Proteger com senha"; +"On — tap to change" = "Ativado — toque para alterar"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "O backup é criptografado com AES-256. Você precisará desta senha para restaurá-lo — não há como recuperá-la se for perdida."; +"Optional. Lock the backup behind a password so only you can restore it." = "Opcional. Bloqueie o backup com uma senha para que só você possa restaurá-lo."; +"Backup password" = "Senha do backup"; +"You'll need this to restore. It can't be recovered if lost." = "Você precisará dela para restaurar. Não pode ser recuperada se for perdida."; +"Password" = "Senha"; +"Confirm password" = "Confirmar senha"; +"Set" = "Definir"; +"Use at least 4 characters." = "Use pelo menos 4 caracteres."; +"The passwords don't match." = "As senhas não coincidem."; +"Try again" = "Tentar de novo"; +"Encrypted backup" = "Backup criptografado"; +"Enter the password used to protect this backup." = "Digite a senha usada para proteger este backup."; +"Wrong password. Try again." = "Senha incorreta. Tente de novo."; +"Decrypting backup…" = "Descriptografando backup…"; +"Encrypting backup…" = "Criptografando backup…"; +"%ld of %ld selected · %@" = "%ld de %ld selecionados · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "Marque cada conjunto a incluir. Toque em uma linha para ver o que contém."; + +"%lu account(s)" = "%lu conta(s)"; +"%lu account(s) · %lu image(s) · %@" = "%lu conta(s) · %lu imagem(s) · %@"; +"%lu file(s) · %@" = "%lu arquivo(s) · %@"; +"%lu preferences" = "%lu preferências"; +"(none)" = "(nenhum)"; +"Apply backup?" = "Aplicar backup?"; +"Applying backup…" = "Aplicando backup…"; +"archive error" = "erro de arquivo"; +"Archived snapshots" = "Instantâneos arquivados"; +"Backup & Restore" = "Backup e restauração"; +"Backup exported" = "Backup exportado"; +"Backup failed" = "Falha no backup"; +"Backup has no importable sections." = "O backup não possui seções importáveis."; +"Chat & story filters" = "Filtros de bate-papo e story"; +"Chat backgrounds" = "Planos de fundo de bate-papo"; +"Corrupt entry path." = "Caminho de entrada corrompido."; +"Could not decompress archive." = "Não foi possível descompactar o arquivo."; +"Could not open archive." = "Não foi possível abrir o arquivo."; +"Could not open staging file." = "Não foi possível abrir o arquivo de teste."; +"Could not read the backup archive." = "Não foi possível ler o arquivo de backup."; +"Could not write archive." = "Não foi possível gravar o arquivo."; +"Could not write backup file." = "Não foi possível gravar o arquivo de backup."; +"Could not write extracted file." = "Não foi possível gravar o arquivo extraído."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "Os dados existentes para os itens marcados serão substituídos. Pode ser necessário reiniciar para que tudo tenha efeito."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "Exporte ou importe dados do RyukGram - configurações, filtros por conta, bate-papos ocultos e bloqueados, analisador de perfil, galeria, planos de fundo de bate-papo, mensagens excluídas e registro de recibos de leitura. Escolha qualquer combinação em cada página. As configurações permanecem em um arquivo JSON simples; vem com exportação de mídia como um .ryukbak compactado."; +"Feature data" = "Dados de recursos"; +"Import mode" = "Modo de importação"; +"Merge" = "Mesclar"; +"Replace" = "Substituir"; +"Add the backup's data to what's already here" = "Adicione os dados do backup ao que já está aqui"; +"Clear existing data, then apply the backup" = "Limpe os dados existentes e aplique o backup"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "Mesclar mantém o que está neste dispositivo e adiciona os dados do backup – as duplicatas são combinadas, incluindo a galeria."; +"Replace clears existing data for each ticked item, then applies the backup." = "Substituir limpa os dados existentes para cada item marcado e aplica o backup."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "O backup será mesclado aos seus dados existentes – nada é excluído, as duplicatas são combinadas. Pode ser necessário reiniciar para que tudo tenha efeito."; +"Hidden & locked chats" = "Bate-papos ocultos e bloqueados"; +"Import" = "Importar"; +"Inspect the full manifest" = "Inspecione o manifesto completo"; +"Load a .json or .ryukbak backup" = "Carregar um backup .json ou .ryukbak"; +"Not a RyukGram backup archive." = "Não é um arquivo de backup do RyukGram."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "Voltar as configurações ao padrão e limpar os dados"; +"Swipe a row to clear it." = "Deslize uma linha para limpá-la."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "As linhas marcadas como «Compartilhado» não estão vinculadas a nenhuma conta e sempre seguem a própria marcação."; +"%lu file(s)" = "%lu arquivo(s)"; +"Clear all data" = "Limpar todos os dados"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "Cada item da galeria, registro e gravação armazenado é apagado deste aparelho. Suas configurações são mantidas — use Redefinir para voltá-las ao padrão. Isso não pode ser desfeito."; +"Accounts" = "Contas"; +"All accounts (%ld)" = "Todas as contas (%ld)"; +"Pick at least one account." = "Selecione pelo menos uma conta."; +"Signed in" = "Conectado"; +"Shared" = "Compartilhado"; +"Per-account data is limited to the accounts ticked here." = "Os dados por conta se limitam às contas marcadas aqui."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "Os dados por conta são limpos apenas para %@. Os dados compartilhados seguem a própria marcação. Não pode ser desfeito."; +"Preparing backup…" = "Preparando backup…"; +"Reading backup…" = "Lendo backup…"; +"RyukGram's own data on this device" = "Os dados do próprio RyukGram neste dispositivo"; +"Save settings or a full backup" = "Salve as configurações ou um backup completo"; +"Tick what to apply. Rows not in this backup are hidden." = "Marque o que aplicar. As linhas que não estão neste backup ficam ocultas."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "Marque o que incluir. Toque em uma linha para inspecioná-la. Adicionar galeria, planos de fundo de bate-papo ou mensagens excluídas produz um pacote .ryukbak compactado."; +"Truncated entry data." = "Dados de entrada truncados."; +"Truncated entry length." = "Comprimento de entrada truncado."; +"Truncated entry path." = "Caminho de entrada truncado."; +"Unsafe entry path." = "Caminho de entrada inseguro."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "Avançado"; +"All tweak options are disabled" = "Todas as opções de ajuste estão desativadas"; +"Auto-clear cache" = "Limpar cache automaticamente"; +"Automatically opens settings when the app launches" = "Abre automaticamente as configurações quando o aplicativo é iniciado"; +"Cache" = "Cache"; +"Cache cleared" = "Cache limpo"; +"Calculating cache size…" = "Calculando o tamanho do cache…"; +"Clear" = "Limpar"; +"Clear cache" = "Limpar cache"; +"Clear cache (%@)" = "Limpar cache (%@)"; +"Clearing cache…" = "Limpando cache…"; +"Clearing still scans on demand." = "A limpeza ainda verifica sob demanda."; +"Daily" = "Diariamente"; +"Disable all tweak options" = "Desative todas as opções de ajuste"; +"Disable safe mode" = "Desative o modo de segurança"; +"Enable tweak settings quick-access" = "Habilite o acesso rápido às configurações de ajuste"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "O Instagram mantém estoque enquanto isso está ativado. Desligue-o novamente para restaurar suas configurações."; +"Tap to re-enable everything" = "Toque para reativar tudo"; +"Turn every feature off — your settings are kept" = "Desative todos os recursos – suas configurações serão mantidas"; +"Fix duplicate notifications" = "Corrigir notificações duplicadas"; +"Free %@ of Instagram cache." = "%@ de cache do Instagram grátis."; +"Freed %@" = "Liberado %@"; +"Hold on the home tab to open RyukGram settings" = "Mantenha pressionada a guia inicial para abrir as configurações do RyukGram"; +"Monthly" = "Mensalmente"; +"Nothing to clear" = "Nada para limpar"; +"Off skips the size scan when Advanced opens." = "Desativado ignora a verificação de tamanho quando Avançado é aberto."; +"Pause playback when opening settings" = "Pausar a reprodução ao abrir as configurações"; +"Always show what's new" = "Sempre mostre o que há de novo"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "Mantenha o ponto azul em cada novo recurso em vez de apagá-lo depois de visualizado"; +"Preserve messages database" = "Preservar banco de dados de mensagens"; +"Pauses any playing video/audio when settings opens" = "Pausa qualquer reprodução de vídeo/áudio quando as configurações são abertas"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "Impede que o Instagram redefina as configurações após travamentos (por sua conta e risco)"; +"Prevents two banners for the same message when IG is in the foreground" = "Evita dois banners para a mesma mensagem quando o IG está em primeiro plano"; +"Remove Instagram's cached images, videos, and temporary files." = "Remova imagens, vídeos e arquivos temporários armazenados em cache do Instagram."; +"Reset onboarding state" = "Redefinir estado de integração"; +"Run a silent cache clear on launch when the interval has elapsed." = "Execute uma limpeza silenciosa do cache na inicialização quando o intervalo tiver decorrido."; +"Show cache size" = "Mostrar tamanho do cache"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "Ignore o banco de dados de mensagens ao limpar – mantém DMs, rascunhos e mensagens salvas."; +"Show tweak settings on app launch" = "Mostrar configurações de ajustes ao iniciar o aplicativo"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "Suprime a segunda notificação que o IG enfileira no aplicativo enquanto a extensão de notificação também a entrega."; +"Weekly" = "Semanalmente"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "Ações"; +"Advanced experimental features" = "Recursos experimentais avançados"; +"All experimental toggles will be turned off. Instagram will restart." = "Todas as alternâncias experimentais serão desativadas. O Instagram será reiniciado."; +"Direct Notes — Audio reply" = "Notas diretas – resposta de áudio"; +"Direct Notes — Avatar reply" = "Notas diretas – resposta do avatar"; +"Direct Notes — Friend Map" = "Notas diretas – Mapa de amigos"; +"Direct Notes — GIFs & stickers reply" = "Notas diretas – resposta de GIFs e adesivos"; +"Direct Notes — Photo reply" = "Notas diretas – resposta com foto"; +"Disabled after repeated crashes." = "Desativado após travamentos repetidos."; +"Enables GIF/sticker replies" = "Ativa respostas GIF/adesivos"; +"Enables photo replies" = "Permite respostas com fotos"; +"Enables the audio-note reply type" = "Ativa o tipo de resposta de nota de áudio"; +"Enables the avatar reply type" = "Ativa o tipo de resposta do avatar"; +"Experimental flags reset" = "Redefinição de sinalizadores experimentais"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "Vire o que deseja e toque em Aplicar para reiniciar. Alguns sinalizadores podem não funcionar em todas as contas ou versões do IG. Sinaliza a reinicialização automática se o IG travar na inicialização 3 vezes."; +"Forces Prism-gated experiments on" = "Força experimentos controlados por prisma em"; +"Forces the Homecoming home surface / nav on" = "Força a superfície / navegação do Homecoming Home"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "Força a superfície QuickSnap / Instants no Feed, na caixa de entrada, nos Stories e na bandeja de notas"; +"Got it" = "Entendi"; +"Heads up" = "Atenção"; +"Hidden Instagram experiments" = "Experimentos ocultos do Instagram"; +"Hidden Instagram experiments (in Advanced)" = "Experimentos ocultos do Instagram (em Avançado)"; +"Homecoming" = "Regresso a casa"; +"Notes & QuickSnap" = "Notas e QuickSnap"; +"Prism design system" = "Sistema de design de prisma"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Mostra a entrada do mapa de amigos no Direct Notes"; +"Surfaces" = "Superfícies"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "Esses botões ativam os experimentos ocultos do Instagram. Alguns recursos podem não funcionar em todas as contas ou versões do IG. Se o IG continuar travando na inicialização, os sinalizadores serão redefinidos automaticamente após três inicializações com falha."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Alterne experimentos ocultos do Instagram. Alguns podem não funcionar em todas as contas ou versões do IG."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "Célula de botão"; +"Change the value on the right" = "Altere o valor à direita"; +"Could not delete: %@" = "Não foi possível excluir: %@"; +"Debug" = "Depurar"; +"Delete an imported override and fall back to the shipped strings" = "Exclua uma substituição importada e retorne às strings enviadas"; +"Deleted %@ override. Restart to apply." = "Substituição %@ excluída. Reinicie para aplicar."; +"Enable FLEX gesture" = "Ativar gesto FLEX"; +"Enable file logging" = "Habilitar registro de arquivos"; +"Export strings" = "Exportar strings"; +"Hold 5 fingers on the screen to open FLEX" = "Segure 5 dedos na tela para abrir o FLEX"; +"I have %@%@" = "Eu tenho %@%@"; +"Import a .strings file for a language" = "Importe um arquivo .strings para um idioma"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "Importe um arquivo .strings para atualizar uma tradução. Escolha um idioma, selecione o arquivo e reinicie."; +"Link Cell" = "Vincular célula"; +"Localization" = "Localização"; +"Log file is empty" = "O arquivo de log está vazio"; +"Logging" = "Registro"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "Registra a própria atividade do RyukGram em um arquivo compartilhável no aplicativo e em suas extensões. Desativado por padrão: ative-o, reproduza o problema e compartilhe."; +"Menu Cell" = "Célula do menu"; +"Navigation Cell" = "Célula de navegação"; +"No imported localization files to reset." = "Nenhum arquivo de localização importado para redefinir."; +"No overrides" = "Sem substituições"; +"Open FLEX on app focus" = "Abra o FLEX no foco do aplicativo"; +"Open FLEX on app launch" = "Abra o FLEX ao iniciar o aplicativo"; +"Opens FLEX when the app is focused" = "Abre o FLEX quando o aplicativo está focado"; +"Opens FLEX when the app launches" = "Abre o FLEX quando o aplicativo é iniciado"; +"Pick a language and share its .strings file" = "Escolha um idioma e compartilhe seu arquivo .strings"; +"Pick a language to delete the imported file" = "Escolha um idioma para excluir o arquivo importado"; +"Pick a language to export" = "Escolha um idioma para exportar"; +"Reset localization" = "Redefinir localização"; +"Share log file" = "Compartilhar arquivo de log"; +"Static Cell" = "Célula Estática"; +"Stepper cell" = "Célula escalonada"; +"Switch Cell" = "Trocar de célula"; +"Switch Cell (Restart)" = "Trocar célula (reiniciar)"; +"Tap the switch" = "Toque no interruptor"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "Esses recursos dependem de sinalizadores ocultos do Instagram e podem não funcionar em todas as contas ou versões."; +"Update localization file" = "Atualizar arquivo de localização"; +"Using icon" = "Usando ícone"; +"Using image" = "Usando imagem"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "%@ configurações"; +"%lu items" = "%lu itens"; +"Cancelled" = "Cancelado"; +"Carousel" = "Carrossel"; +"Carousel · %lu items" = "Carrossel · %lu itens"; +"Copied %lu URLs" = "%lu URLs copiados"; +"Copied caption" = "Legenda copiada"; +"Copied download URL" = "URL de download copiado"; +"Copied quality info" = "Informações de qualidade copiadas"; +"Copied video URL" = "URL do vídeo copiado"; +"Copy all URLs" = "Copie todos os URLs"; +"Copy caption" = "Copiar legenda"; +"Copy download URL" = "Copiar URL de download"; +"Could not extract any URLs" = "Não foi possível extrair nenhum URL"; +"Could not extract audio URL" = "Não foi possível extrair o URL do áudio"; +"Could not extract media URL" = "Não foi possível extrair o URL da mídia"; +"Could not extract photo URL" = "Não foi possível extrair o URL da foto"; +"Could not extract video URL" = "Não foi possível extrair o URL do vídeo"; +"Done" = "Concluído"; +"Download all stories and share?" = "Baixar todas as stories e compartilhar?"; +"Download all to Photos" = "Baixe tudo para fotos"; +"Download and share all" = "Baixe e compartilhe tudo"; +"Download failed" = "Falha no download"; +"Downloaded %lu items" = "%lu itens baixados"; +"Downloading audio…" = "Baixando áudio…"; +"Failed to save" = "Falha ao salvar"; +"File" = "Arquivo"; +"HD" = "alta definição"; +"HD download complete" = "Baixar em HD concluído"; +"HD video" = "Vídeo HD"; +"Mute audio" = "Silenciar áudio"; +"No caption on this post" = "Sem legenda neste post"; +"No carousel children" = "Não há crianças no carrossel"; +"No cover image" = "Sem imagem de capa"; +"No media" = "Sem mídia"; +"No media to expand" = "Nenhuma mídia para expandir"; +"No media to show" = "Nenhuma mídia para mostrar"; +"No media URL" = "Nenhum URL de mídia"; +"No URLs" = "Sem URLs"; +"No URLs found" = "Nenhum URL encontrado"; +"No video URL" = "Nenhum URL do vídeo"; +"Not a carousel" = "Não é um carrossel"; +"Nothing to share" = "Nada para compartilhar"; +"Opening creator…" = "Criador de abertura…"; +"Photo library access denied" = "Acesso à biblioteca de fotos negado"; +"Photos access denied" = "Acesso às fotos negado"; +"Preparing repost…" = "Preparando repostagem…"; +"Raw image" = "Imagem bruta"; +"Repost" = "Repostagem"; +"Repost unavailable" = "Repostagem indisponível"; +"Save failed" = "Falha ao salvar"; +"Saved %lu items" = "%lu itens salvos"; +"Saved to Photos" = "Salvo em fotos"; +"Saved to RyukGram" = "Salvo no RyukGram"; +"Saving to Photos" = "Salvando em fotos"; +"Saving…" = "Salvando…"; +"Unmute audio" = "Ativar áudio"; +"Video · %@" = "Vídeo · %@"; +"View cover" = "Ver capa"; +"View mentions" = "Ver menções"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "Livre"; +"Chat font saved" = "Fonte de conversa salva"; +"Reopen this chat to see the new font" = "Reabra esta conversa para ver a nova fonte"; +"Remove background" = "Remover fundo"; +"No subject found" = "Nenhum sujeito encontrado"; +"No stickers yet" = "Ainda não há stickers"; +"Send drawing" = "Enviar desenho"; +"Send my drawing" = "Enviar meu desenho"; +"Paste image / sticker" = "Colar imagem / sticker"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "Toque em qualquer sticker do teclado\npara adicioná-lo ao seu desenho"; + +" %lu votes · avg %.0f%% " = "%lu votos · média %.0f%%"; +"%@ can't be converted" = "%@ não pode ser convertido"; +"%@ unsent a message" = "%@ não enviou uma mensagem"; +"%@ unsent a message from %@" = "%@ não enviou uma mensagem de %@"; +"A message was unsent" = "Uma mensagem não foi enviada"; +"Add" = "Adicionar"; +"Add to block list" = "Adicionar à lista de bloqueio"; +"Added to block list" = "Adicionado à lista de bloqueio"; +"Added to exclude list" = "Adicionado à lista de exclusão"; +"Audio not loaded yet. Play the message first and try again." = "Áudio ainda não carregado. Reproduza a mensagem primeiro e tente novamente."; +"Audio sent" = "Áudio enviado"; +"Audio URL not available" = "URL de áudio não disponível"; +"Audio/Video from Files" = "Áudio/vídeo de arquivos"; +"Blocked" = "Bloqueado"; +"Cancel" = "Cancelar"; +"Clear preserved messages?" = "Limpar mensagens preservadas?"; +"Converting…" = "Convertendo…"; +"Copy link" = "Copiar link"; +"Copy text" = "Copiar texto"; +"Could not copy selected video" = "Não foi possível copiar o vídeo selecionado"; +"Could not find media" = "Não foi possível encontrar a mídia"; +"Could not find story media" = "Não foi possível encontrar a mídia da story"; +"Could not get audio data. Try again after refreshing the chat." = "Não foi possível obter dados de áudio. Tente novamente após atualizar o chat."; +"Disable read receipts" = "Desativar confirmações de leitura"; +"Disappearing media" = "Mídia desaparecendo"; +"Download audio" = "Baixar áudio"; +"Enable read receipts" = "Habilitar confirmações de leitura"; +"Error: %@" = "Erro: %@"; +"Exclude chat" = "Excluir bate-papo"; +"Exclude from seen" = "Excluir do visto"; +"Exclude story seen" = "Excluir story vista"; +"Excluded" = "Excluído"; +"Extracting audio…" = "Extraindo áudio…"; +"FFmpeg conversion failed" = "Falha na conversão do FFmpeg"; +"File sending not supported" = "Envio de arquivo não suportado"; +"Follow" = "Seguir"; +"Following" = "Seguindo"; +"Format not supported without FFmpegKit" = "Formato não suportado sem FFmpegKit"; +"Inserts a button on disappearing media overlays" = "Insere um botão nas sobreposições de mídia que desaparecem"; +"Inserts a speaker button to mute/unmute disappearing media" = "Insere um botão de alto-falante para ativar/desativar o som da mídia que desaparece"; +"Inserts an eye button to mark the current disappearing media as viewed" = "Insere um botão de olho para marcar a mídia que está desaparecendo como visualizada"; +"Link copied" = "Link copiado"; +"Mark as viewed" = "Marcar como visualizado"; +"Marking as viewed advances to the next stacked media instead of closing" = "Marcar como visualizado avança para a próxima mídia empilhada em vez de fechar"; +"Mark messages as seen" = "Marcar mensagens como vistas"; +"Mark seen" = "Marcar visto"; +"Marked as viewed" = "Marcado como visualizado"; +"Marked messages as seen" = "Mensagens marcadas como vistas"; +"Mentions" = "Menções"; +"Message from %@ was unsent" = "A mensagem de %@ não foi enviada"; +"Message sender not found" = "Remetente da mensagem não encontrado"; +"Messages settings" = "Configurações de mensagens"; +"Mute story audio" = "Silenciar áudio da story"; +"no audio track could be read" = "nenhuma faixa de áudio pôde ser lida"; +"No audio URL found. Try again after refreshing the chat." = "Nenhum URL de áudio encontrado. Tente novamente após atualizar o chat."; +"No mentions in this story" = "Nenhuma menção nesta story"; +"No thread key" = "Nenhuma chave de discussão"; +"No video selected" = "Nenhum vídeo selecionado"; +"No voice send method found" = "Nenhum método de envio de voz encontrado"; +"Note has no downloadable content" = "Nota não tem conteúdo para download"; +"Note text copied" = "Texto da nota copiado"; +"Open GitHub" = "Abra o GitHub"; +"Pick audio or video" = "Escolha áudio ou vídeo"; +"Read receipts disabled" = "Confirmações de leitura desativadas"; +"Read receipts enabled" = "Confirmações de leitura ativadas"; +"Read receipts will be blocked for this chat." = "As confirmações de leitura serão bloqueadas para este chat."; +"Read receipts will no longer be blocked for this chat." = "As confirmações de leitura não serão mais bloqueadas para este chat."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "Atualizar a guia DMs limpará %lu mensagens não enviadas preservadas. Isto não pode ser desfeito."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "Atualizar a guia DMs limpará %lu mensagens não enviadas preservadas. Isto não pode ser desfeito."; +"Remove" = "Remover"; +"Remove from block list" = "Remover da lista de bloqueio"; +"Remove from exclude list" = "Remover da lista de exclusão"; +"Removed" = "Removido"; +"Removed from list" = "Removido da lista"; +"Save GIF" = "Salvar GIF"; +"Selection too short (min 0.5s)" = "Seleção muito curta (min 0,5s)"; +"Send anyway" = "Enviar mesmo assim"; +"Send Audio" = "Enviar áudio"; +"Send failed: %@" = "Falha no envio: %@"; +"Send File" = "Enviar arquivo"; +"Send service not found" = "Serviço de envio não encontrado"; +"Show audio toggle" = "Mostrar alternância de áudio"; +"Show mark-as-viewed button" = "Mostrar botão marcar como visualizado"; +"Story read receipts disabled" = "Confirmações de leitura de stories desativadas"; +"Story read receipts enabled" = "Confirmações de leitura de stories ativadas"; +"This chat will resume normal read-receipt behavior." = "Este bate-papo retomará o comportamento normal de recepção de leitura."; +"This file" = "Este arquivo"; +"Total: %@" = "Total: %@"; +"Un-exclude chat" = "Cancelar exclusão de bate-papo"; +"Un-exclude story seen" = "Cancelar exclusão da story vista"; +"Un-excluded" = "Não excluído"; +"Unblocked" = "Desbloqueado"; +"Unlimited replay enabled" = "Replay ilimitado ativado"; +"Unmute story audio" = "Ativar áudio da story"; +"Unsent" = "Não enviado"; +"Upload Audio" = "Carregar áudio"; +"VC not found" = "VC não encontrado"; +"Video from Library" = "Vídeo da Biblioteca"; +"Visual messages will expire" = "As mensagens visuais expirarão"; +"Visual messages: expiring" = "Mensagens visuais: expirando"; +"Visual messages: unlimited replay" = "Mensagens visuais: repetição ilimitada"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "Adicionar plano de fundo"; +"Add Chat Background" = "Adicionar plano de fundo do bate-papo"; +"Adds your own image backgrounds to Instagram chats" = "Adiciona seus próprios fundos de imagem aos bate-papos do Instagram"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "Após ativar, abra qualquer bate-papo, toque no botão do tema e, em seguida, toque no ícone da foto no canto superior direito."; +"Blur" = "Desfoque"; +"Browse chats" = "Navegue pelos bate-papos"; +"Browse chats (%ld)" = "Navegar nos bate-papos (%ld)"; +"Change Background" = "Alterar plano de fundo"; +"Change default" = "Alterar padrão"; +"Chat Backgrounds" = "Fundos de bate-papo"; +"Choose an image used when no chat override exists" = "Escolha uma imagem usada quando não houver substituição de bate-papo"; +"Clear default" = "Limpar padrão"; +"Couldn't import image" = "Não foi possível importar a imagem"; +"Adjust settings" = "Ajustes"; +"Choose Media" = "Escolher mídia"; +"Converting GIF" = "Convertendo GIF"; +"Couldn't import video" = "Não foi possível importar o vídeo"; +"Crop & resize" = "Cortar e redimensionar"; +"Crop & trim" = "Cortar e aparar"; +"Custom Chat Background" = "Fundo de bate-papo personalizado"; +"Default background" = "Plano de fundo padrão"; +"Dim in dark mode" = "Escureça no modo escuro"; +"Enable custom backgrounds" = "Habilite planos de fundo personalizados"; +"Enter a username, chat name, or thread ID." = "Insira um nome de usuário, nome de bate-papo ou ID do tópico."; +"Group" = "Grupo"; +"Image Settings" = "Configurações de imagem"; +"Auto bubble color" = "Cor da bolha automática"; +"Bubble color" = "Cor da bolha"; +"Me" = "Eu"; +"Both" = "Ambos"; +"Gradient" = "Gradiente"; +"Direction" = "Direção"; +"Vertical" = "Verticais"; +"Horizontal" = "Horizontais"; +"Diagonal" = "Diagonal"; +"Text color" = "Cor do texto"; +"Automatic (contrast)" = "Automático (contraste)"; +"Choose color…" = "Escolha a cor…"; +"Tap to apply · hold to edit" = "Toque para aplicar · segure para editar"; +"Library" = "Biblioteca"; +"Library, default, and per-chat overrides will be deleted." = "As substituições de biblioteca, padrão e por chat serão excluídas."; +"No Custom" = "Sem costume"; +"Opacity" = "Opacidade"; +"Photo Library" = "Biblioteca de fotos"; +"Pick default" = "Escolha o padrão"; +"Pinch + drag to position" = "Aperte + arraste para posicionar"; +"Quit and reopen Instagram for the change to take effect." = "Saia e reabra o Instagram para que a alteração tenha efeito."; +"Recently set" = "Definido recentemente"; +"Remove the global fallback background" = "Remova o plano de fundo substituto global"; +"Replace the default background image" = "Substitua a imagem de fundo padrão"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "Redefinir define a opacidade para 1,0, desfoque para 0 e escurecimento para 0."; +"RyukGram Gallery" = "Galeria RyukGram"; +"Search username, name, or thread ID" = "Pesquise nome de usuário, nome ou ID do tópico"; +"Set as default" = "Definir como padrão"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "Toque em mais para adicionar. Toque em um plano de fundo para editar, definir como padrão ou excluir."; +"This Chat Background" = "Este plano de fundo do bate-papo"; +"Thread ID" = "ID do tópico"; +"Used only when a chat does not have its own custom background." = "Usado somente quando um chat não possui seu próprio plano de fundo personalizado."; +"View and manage chats with custom backgrounds" = "Visualize e gerencie bate-papos com planos de fundo personalizados"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "Adicionar local"; +"Add preset" = "Adicionar predefinição"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "Afeta tudo acima. Quando desativado, o tema e as substituições de superfície do RyukGram só se aplicam enquanto o iOS está no modo escuro – deixando o modo claro intacto."; +"Apply & restart" = "Aplicar e reiniciar"; +"Background" = "Plano de fundo"; +"Behavior" = "Comportamento"; +"Change location" = "Alterar local"; +"Clipboard is not an Instagram URL" = "A área de transferência não é um URL do Instagram"; +"Comments hidden" = "Comentários ocultos"; +"Comments shown" = "Comentários mostrados"; +"Copied text to clipboard" = "Texto copiado para a área de transferência"; +"Copy" = "Copiar"; +"Copy bio" = "Copiar biografia"; +"Copy name" = "Copiar nome"; +"Could not find cover image" = "Não foi possível encontrar a imagem da capa"; +"Current: %@" = "Atual: %@"; +"Dark" = "Escuro"; +"Disable" = "Desativar"; +"Download GIF" = "Baixar GIF"; +"Dropped pin" = "Alfinete caído"; +"Emoji" = "Emoji"; +"Enable" = "Habilitar"; +"Enable Location Services for Instagram in Settings to use your current location." = "Ative os Serviços de Localização do Instagram em Configurações para usar sua localização atual."; +"Enter emoji" = "Digite o emoticon"; +"Fake location" = "Localização falsa"; +"Force theme" = "Tema de força"; +"Keyboard theme" = "Tema do teclado"; +"Light" = "Luz"; +"Location access denied" = "Acesso ao local negado"; +"Location Services off" = "Serviços de localização desativados"; +"Name" = "Nome"; +"Nothing to copy" = "Nada para copiar"; +"Off, Light, Dark, or OLED" = "Desligado, Claro, Escuro ou OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "Tema de bate-papo OLED"; +"Open Settings" = "Abra Configurações"; +"Optional per-surface overrides. Each one is independent of the theme above." = "Substituições opcionais por superfície. Cada um é independente do tema acima."; +"Override iOS appearance regardless of system mode" = "Substituir a aparência do iOS independentemente do modo do sistema"; +"Override the keyboard appearance when typing" = "Substituir a aparência do teclado ao digitar"; +"Pick location" = "Escolha o local"; +"Pure black DM thread + incoming bubbles" = "Fio DM preto puro + bolhas de entrada"; +"Save" = "Salvar"; +"Save preset" = "Salvar predefinição"; +"Saved locations" = "Locais salvos"; +"Select color" = "Selecione a cor"; +"Set location" = "Definir localização"; +"The theme RyukGram applies to Instagram." = "O tema RyukGram se aplica ao Instagram."; +"Theme" = "Tema"; +"Turn Location Services on in Settings → Privacy to use your current location." = "Ative os Serviços de Localização em Configurações → Privacidade para usar sua localização atual."; +"Type an emoji to use as the note bubble icon." = "Digite um emoji para usar como ícone de balão de nota."; +"Profile picture" = "Foto do perfil"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu contas? O primeiro %ld será processado para evitar limites de taxa."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu contas? Isso é executado sequencialmente com uma pequena pausa entre cada um."; +"%@ followers · %@ following" = "%@ seguidores · %@ seguindo"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%dd atrás"; +"%dh ago" = "%dh atrás"; +"%dm ago" = "%dm atrás"; +"%lu accounts followed" = "%lu contas seguidas"; +"%lu accounts unfollowed" = "%lu contas deixaram de ser seguidas"; +"%lu followers · %lu following" = "%lu seguidores · %lu seguidores"; +"%lu followers removed" = "%lu seguidores removidos"; +"%lu of %lu" = "%lu de %lu"; +"%lu of %lu checks on" = "%lu de %lu verifica"; +"%lu saved · comparing against %@" = "%lu salvo · comparando com %@"; +"(empty)" = "(vazio)"; +"(no analyzer data)" = "(sem dados do analisador)"; +"a saved snapshot" = "um instantâneo salvo"; +"About Profile Analyzer" = "Sobre o Analisador de Perfil"; +"All preferences (%lu)" = "Todas as preferências (%lu)"; +"Analysis complete" = "Análise concluída"; +"Analysis failed" = "Falha na análise"; +"Another analysis is already running" = "Outra análise já está em execução"; +"Available after your next scan" = "Disponível após sua próxima digitalização"; +"Batch follow" = "Acompanhamento em lote"; +"Batch follow finished" = "Acompanhamento do lote concluído"; +"Batch remove followers" = "Remover seguidores em lote"; +"Batch remove followers finished" = "Remoção de seguidores em lote concluída"; +"Batch unfollow" = "Deixar de seguir em lote"; +"Batch unfollow finished" = "Deixar de seguir em lote concluído"; +"Categories" = "Categorias"; +"Checks" = "Cheques"; +"Clear visited profiles" = "Limpar perfis visitados"; +"Compare next scan against" = "Compare a próxima verificação com"; +"Comparing against %@" = "Comparando com %@"; +"Continue" = "Continuar"; +"Couldn't fetch profile information" = "Não foi possível buscar as informações do perfil"; +"Delete %lu snapshots? This can't be undone." = "Excluir %lu instantâneos? Isso não pode ser desfeito."; +"Delete (%lu)" = "Excluir (%lu)"; +"Delete snapshots" = "Excluir instantâneos"; +"Delete this snapshot? This can't be undone." = "Excluir este instantâneo? Isso não pode ser desfeito."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "Cada varredura salva uma cópia completa de seus seguidores e seguidores para que você possa comparar mais tarde. Tudo fica neste dispositivo."; +"Export" = "Exportar"; +"Fetching followers (%lu/%ld)…" = "Buscando seguidores (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "Buscando o seguinte (%lu/%ld)…"; +"Fetching profile info…" = "Buscando informações do perfil…"; +"File is not a valid RyukGram backup." = "O arquivo não é um backup válido do RyukGram."; +"Filter" = "Filtro"; +"Filter · %lu" = "Filtrar · %lu"; +"First scan: %@" = "Primeira verificação: %@"; +"First scan: we collect your followers and following lists and save them locally." = "Primeira verificação: coletamos seus seguidores e listas a seguir e os salvamos localmente."; +"Follow back" = "Siga de volta"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "A contagem de seguidores excede %ld — análise desativada para evitar limites de taxa."; +"Followers" = "Seguidores"; +"Following… %lu / %lu" = "Seguindo… %lu / %lu"; +"Gained since last scan" = "Obtido desde a última varredura"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "Atenção: este recurso acessa a API privada do Instagram. Executá-lo repetidamente ou logo após atividades intensas de seguir/deixar de seguir pode acionar um limite temporário. Use com moderação e por sua conta e risco."; +"Import complete" = "Importação concluída"; +"Include" = "Incluir"; +"Keep newest" = "Mantenha o mais recente"; +"Keep newest snapshots" = "Manter os instantâneos mais recentes"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "Contas grandes são bloqueadas: a análise é desativada acima de 13.000 seguidores para evitar que o Instagram limite a taxa de todo o aplicativo."; +"Last scan: %@" = "Última verificação: %@"; +"Logs every profile you open. Stays on-device." = "Registra todos os perfis que você abre. Permanece no dispositivo."; +"Lost followers" = "Seguidores perdidos"; +"Most visited" = "Mais visitados"; +"Mutual followers" = "Seguidores mútuos"; +"Name: %@ → %@" = "Nome: %@ → %@"; +"New followers" = "Novos seguidores"; +"NEW" = "NOVO"; +"New first" = "Novo primeiro"; +"New only" = "Novo apenas"; +"No active Instagram session found" = "Nenhuma sessão ativa do Instagram encontrada"; +"No results" = "Nenhum resultado"; +"No scan yet" = "Nenhuma verificação ainda"; +"Not following you back" = "Não te seguindo de volta"; +"Not verified only" = "Não verificado apenas"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "Nada é carregado – tudo permanece neste dispositivo e pode ser apagado do ícone da lixeira."; +"Nothing was applied." = "Nada foi aplicado."; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "Instantâneos mais antigos além do limite são removidos automaticamente"; +"Older snapshots beyond this limit are deleted on the next scan." = "Os instantâneos mais antigos que ultrapassarem esse limite serão excluídos na próxima verificação."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "Escolha o que remover. Instantâneos limpa as diferenças de varredura e todos os instantâneos gravados; perfis visitados apaga o histórico de visitas."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "Escolha quais categorias cada varredura computa. Uma verificação desativada fica esmaecida e ignorada — ela não será calculada ou mostrada."; +"Posts" = "Postagens"; +"Preferences" = "Preferências"; +"Previous scan" = "Verificação anterior"; +"Private account" = "Conta privada"; +"Private only" = "Apenas privado"; +"Profile Analyzer" = "Analisador de perfil"; +"Profile Analyzer data" = "Dados do Analisador de Perfil"; +"Profile picture changed" = "Foto do perfil alterada"; +"Profile updates" = "Atualizações de perfil"; +"Profiles you've opened recently" = "Perfis que você abriu recentemente"; +"Raw" = "Cru"; +"Raw JSON" = "JSON bruto"; +"Record snapshots" = "Gravar instantâneos"; +"Remove @%@ as a follower?" = "Remover @%@ como seguidor?"; +"Remove follower" = "Remover seguidor"; +"Removing… %lu / %lu" = "Removendo… %lu / %lu"; +"Recording" = "Gravação"; +"Request failed" = "Falha na solicitação"; +"Reset analyzer data" = "Redefinir dados do analisador"; +"Reset complete" = "Redefinição concluída"; +"Reset everything" = "Redefinir tudo"; +"Reset selected data?" = "Redefinir dados selecionados?"; +"Reset snapshots" = "Redefinir instantâneos"; +"Rolling — always your last run" = "Rolando - sempre sua última corrida"; +"Run analysis" = "Executar análise"; +"Run your first analysis" = "Execute sua primeira análise"; +"Save a dated entry on every scan" = "Salve uma entrada datada em cada digitalização"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "Segunda verificação em diante: cada verificação é comparada com a anterior, para que possamos mostrar seguidores ganhos/perdidos, seus próprios movimentos de seguir/deixar de seguir e atualizações de perfil."; +"Settings" = "Configurações"; +"Since last scan" = "Desde a última verificação"; +"Snapshot" = "Instantâneo"; +"Snapshot saved" = "Instantâneo salvo"; +"Snapshots" = "Instantâneos"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "Os instantâneos permitem arquivar cada verificação e escolher com qual delas as novas verificações serão comparadas. Rastrear visitas registra cada perfil que você abre para que você possa revisá-los aqui."; +"Sort" = "Classificar"; +"Starting…" = "Começando…"; +"They follow you, you don't follow back" = "Eles seguem você, você não segue de volta"; +"This can't be undone." = "Isso não pode ser desfeito."; +"Ticked data will be cleared. Tap a row to see what's stored." = "Os dados marcados serão apagados. Toque em uma linha para ver o que está armazenado."; +"Today" = "Hoje"; +"Too many followers" = "Muitos seguidores"; +"Too many followers to analyze" = "Muitos seguidores para analisar"; +"Track visited profiles" = "Rastreie perfis visitados"; +"Tracking" = "Rastreamento"; +"Tracking off — enable below to log visits" = "Rastreamento desativado – ative abaixo para registrar visitas"; +"Unfollow" = "Deixar de seguir"; +"Unfollow %lu" = "Deixar de seguir %lu"; +"Unfollow @%@?" = "Deixar de seguir @%@?"; +"Unfollowed you since last scan" = "Parei de seguir você desde a última verificação"; +"Unfollowing… %lu / %lu" = "Parando de seguir… %lu / %lu"; +"Unlimited" = "Ilimitado"; +"Username A → Z" = "Nome de usuário A → Z"; +"Username Z → A" = "Nome de usuário Z → A"; +"Username, name or picture changes" = "Mudanças de nome de usuário, nome ou imagem"; +"Username: @%@ → @%@" = "Nome de usuário: @%@ → @%@"; +"Using %@ across %lu snapshots." = "Usando %@ em %lu instantâneos."; +"Verified only" = "Somente verificado"; +"Visited" = "Visitado"; +"Visited profiles" = "Perfis visitados"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "Recusamo-nos a concorrer quando a contagem de seguidores excede %ld para evitar limites de taxa do Instagram."; +"You both follow each other" = "Vocês dois seguem um ao outro"; +"You don't follow back" = "Você não segue de volta"; +"You follow them, they don't follow back" = "Você os segue, eles não seguem de volta"; +"You started following" = "Você começou a seguir"; +"Your current scan was archived" = "Sua verificação atual foi arquivada"; +"You unfollowed" = "Você deixou de seguir"; +"your previous scan" = "sua verificação anterior"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "A “verificação anterior” sempre é medida em relação à sua última execução. Em vez disso, escolha um instantâneo salvo para comparar com um ponto fixo no tempo."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ Isso está ficando grande — diminua o limite ou exclua os instantâneos mais antigos para liberar espaço."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "Formato absoluto"; +"Add chat" = "Adicionar bate-papo"; +"Add custom domain" = "Adicionar domínio personalizado"; +"Add to list?" = "Adicionar à lista?"; +"Add user" = "Adicionar usuário"; +"Apply" = "Aplicar"; +"Apply to" = "Candidatar-se a"; +"Chats" = "Conversas"; +"Colored" = "Colorido"; +"Could not read file." = "Não foi possível ler o arquivo."; +"Could not resolve user ID" = "Não foi possível resolver o ID do usuário"; +"Current location" = "Localização atual"; +"Custom" = "Personalizado"; +"Delete" = "Excluir"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "Cada superfície no IG passa por um formatador NSDate diferente. Alterne aqueles aos quais deseja que este formato se aplique."; +"Enable fake location" = "Ativar localização falsa"; +"Excluded chats" = "Bate-papos excluídos"; +"Excluded users" = "Usuários excluídos"; +"Follow default" = "Siga o padrão"; +"Force OFF (allow unsends)" = "Forçar OFF (permitir cancelamento de envio)"; +"Force ON (preserve unsends)" = "Forçar ON (preservar envios não enviados)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "Inclui segundos quando o formato já mostra a hora. O formato personalizado controla os segundos com {ss}."; +"Add custom format…" = "Adicionar formato personalizado…"; +"Edit" = "Editar"; +"Template" = "Modelo"; +"Placeholders" = "Espaços reservados"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "Os espaços reservados são substituídos por partes de data; qualquer outra coisa é mostrada como está."; +"Tap a placeholder to insert it at the cursor." = "Toque em um espaço reservado para inseri-lo no cursor."; +"Included chats" = "Bate-papos incluídos"; +"Included users" = "Usuários incluídos"; +"KD: default" = "KD: padrão"; +"KD: ON" = "KD: LIGADO"; +"Keep-deleted" = "Manter excluído"; +"Keep-deleted override" = "Substituição manter excluída"; +"Name (A–Z)" = "Nome (A – Z)"; +"No DM thread found with @%@" = "Nenhum tópico DM encontrado com @%@"; +"Presets" = "Predefinições"; +"Recently added" = "Adicionado recentemente"; +"Relative time" = "Tempo relativo"; +"Relative within" = "Relativo dentro"; +"Remove from list" = "Remover da lista"; +"Reset" = "Reiniciar"; +"Search" = "Pesquisar"; +"Search address or place" = "Pesquise endereço ou local"; +"Search by name or username" = "Pesquise por nome ou nome de usuário"; +"Search by username or name" = "Pesquise por nome de usuário ou nome"; +"Select location on map" = "Selecione a localização no mapa"; +"Set current location" = "Definir localização atual"; +"Set keep-deleted override" = "Definir substituição para manter excluído"; +"Show map button" = "Mostrar botão do mapa"; +"Show relative time for dates younger than this many days. 0 disables it." = "Mostre o tempo relativo para datas anteriores a esse número de dias. 0 o desativa."; +"Show seconds" = "Mostrar segundos"; +"Sort by" = "Classificar por"; +"Thread" = "Tópico"; +"Time" = "Hora"; +"Use this location" = "Usar este local"; +"User '%@' not found" = "Usuário '%@' não encontrado"; +"Username (A–Z)" = "Nome de usuário (A – Z)"; +"Within %ld days" = "Dentro de %ld dias"; +"Within 1 day" = "Dentro de 1 dia"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "Nenhuma senha encontrada"; +"No text field found" = "Nenhum campo de texto encontrado"; +"Refresh Reels?" = "Atualizar reels?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu contas"; +"%lu loaded" = "%lu carregado"; +"%lu loaded · all loaded" = "%lu carregado · todos carregados"; +"Doesn't follow you" = "Não te segue"; +"Everyone is already loaded." = "Todo mundo já está carregado."; +"Filter & sort" = "Filtrar e classificar"; +"Follows me" = "Me segue"; +"Follows me first" = "Me segue primeiro"; +"Follows you" = "Segue você"; +"Hides everyone who doesn't match all picked filters." = "Oculta todos que não correspondem a todos os filtros escolhidos."; +"Jump to bottom" = "Ir para baixo"; +"Jump to top" = "Ir para o topo"; +"List" = "Lista"; +"List fully loaded" = "Lista totalmente carregada"; +"Load more" = "Carregar mais"; +"Loaded more" = "Carregou mais"; +"Mutuals" = "Mútuos"; +"Mutuals first" = "Mútuos primeiro"; +"Note copied" = "Nota copiada"; +"People I follow" = "Pessoas que eu sigo"; +"People I follow first" = "Pessoas que sigo primeiro"; +"Reverse order" = "Ordem inversa"; +"Show only" = "Mostrar apenas"; +"Verified" = "Verificado"; +"Verified first" = "Verificado primeiro"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(desativado)"; +"720p • progressive • fastest" = "720p • progressivo • mais rápido"; +"Add language" = "Adicionar idioma"; +"Album name" = "Nome do álbum"; +"Are you sure?" = "Tem certeza?"; +"Bundle" = "Pacote"; +"Copy audio URL" = "Copiar URL de áudio"; +"Copy quality info" = "Copie informações de qualidade"; +"Copy video URL" = "Copiar URL do vídeo"; +"Could not access reel media" = "Não foi possível acessar a mídia em reel"; +"Could not access reel photo" = "Não foi possível acessar a foto do reel"; +"Could not write file." = "Não foi possível gravar o arquivo."; +"Download all and share?" = "Baixar tudo e compartilhar?"; +"Download Quality" = "Qualidade de download"; +"Downloading %d%%" = "Baixando %d%%"; +"e.g. 1000000" = "por exemplo 1.000.000"; +"Localization file not found" = "Arquivo de localização não encontrado"; +"Enter the language code (e.g. fr, de, ja)" = "Insira o código do idioma (por exemplo, fr, de, ja)"; +"Error" = "Erro"; +"Extras" = "Adicionais"; +"FFmpegKit Debug" = "Depuração FFmpegKit"; +"File is empty or not a valid .strings file." = "O arquivo está vazio ou não é um arquivo .strings válido."; +"KD: OFF" = "KD: DESLIGADO"; +"Keep-deleted: OFF" = "Manter excluído: DESLIGADO"; +"Keep-deleted: ON" = "Manter excluído: ATIVADO"; +"Later" = "Mais tarde"; +"Loading" = "Carregando"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "Nome do álbum de fotos em que RyukGram salva. Deixe em branco para restaurar o padrão."; +"Next" = "Próximo"; +"No results found." = "Nenhum resultado encontrado."; +"No!" = "Não!"; +"Pick a language to update, or add a new one" = "Escolha um idioma para atualizar ou adicione um novo"; +"Preset" = "Predefinido"; +"Restart" = "Reiniciar"; +"Restart now" = "Reinicie agora"; +"Restart required" = "É necessário reiniciar"; +"Saved preset \"%@\"" = "Predefinição \"%@\" salva"; +"selected" = "selecionado"; +"Shared icon, or override per button" = "Ícone compartilhado ou substituição por botão"; +"Speed" = "Velocidade"; +"Unset" = "Desativar"; +"Update localization" = "Atualizar localização"; +"Updated %@ (%ld keys). Restart to apply." = "Atualizado %@ (chaves%ld). Reinicie para aplicar."; +"Use default" = "Usar padrão"; +"Username or PK" = "Nome de usuário ou PK"; +"Username or raw user PK" = "Nome de usuário ou PK de usuário bruto"; +"Yes" = "Sim"; +"You must restart the app to apply this change" = "Você deve reiniciar o aplicativo para aplicar esta alteração"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "Curtindo o RyukGram?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "É grátis e nada sai do seu dispositivo. Se você gosta de usar, um café mantém tudo funcionando."; +"Donate" = "Doar"; +"I already did" = "Já doei"; +"Maybe later" = "Talvez depois"; +"This means a lot" = "Isso significa muito"; +"Appreciate the support" = "Obrigado pelo apoio"; +"No worries, enjoy the tweak" = "Sem problemas, aproveite o tweak"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, Doar"; +"About" = "Sobre"; +"Arabic translation" = "Tradução árabe"; +"Chinese (Traditional and Simplified) translation" = "Tradução para chinês (tradicional e simplificado)"; +"Credits" = "Créditos"; +"Developers" = "Desenvolvedores"; +"installed" = "instalado"; +"Korean translation" = "Tradução coreana"; +"Portuguese (Brazil) translation" = "Tradução para português (Brasil)"; +"Turkish translation" = "Tradução turca"; +"Vietnamese translation" = "Tradução vietnamita"; +"French translation" = "Tradução francesa"; +"Japanese translation" = "Tradução em japonês"; +"Code contributions" = "Contribuições de código"; +"Following feed mode (from InstaSane)" = "Seguindo o modo de feed (do InstaSane)"; +"latest" = "mais recente"; +"Links" = "Ligações"; +"No releases" = "Sem lançamentos"; +"SCInsta developer" = "Desenvolvedor do SCInsta"; +"Release notes" = "Notas de lançamento"; +"Releases" = "Lançamentos"; +"Report an issue" = "Informar um problema"; +"Russian translation" = "Tradução russa"; +"RyukGram developer" = "Desenvolvedor RyukGram"; +"Join Telegram channel" = "Junte-se ao canal Telegram"; +"Source code" = "Código fonte"; +"View on GitHub" = "Ver no GitHub"; +"Spanish translation" = "Tradução espanhola"; +"Inspirations" = "Inspirações"; +"Inspirations, contributors, translators" = "Inspirações, colaboradores, tradutores"; +"Code and research" = "Código e pesquisa"; +"Translators" = "Tradutores"; +"BHInstagram developer" = "Desenvolvedor do BHInstagram"; +"OLED theme inspiration" = "Inspiração do tema OLED"; +"Donate to Ryuk" = "Doe para Ryuk"; +"Support RyukGram development" = "Apoie o desenvolvimento do RyukGram"; +"RyukGram is an independent project inspired by SCInsta." = "O RyukGram é um projeto independente inspirado no SCInsta."; +"Browse changes from previous releases" = "Procure alterações de versões anteriores"; +"Code inspiration" = "Inspiração de código"; +"zxPluginsInject sideload compatibility shim" = "correção de compatibilidade de carregamento lateral zxPluginsInject"; +"Telegram channel" = "Canal de telegrama"; +"Testing and feature suggestions" = "Testes e sugestões de recursos"; +"Version" = "Versão"; +"Version, credits, and links" = "Versão, créditos e links"; +"What's new in RyukGram" = "O que há de novo no RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • progressivo • silencioso"; +"Audio only" = "Apenas áudio"; +"Audio ready" = "Áudio pronto"; +"Audio track %ld" = "Faixa de áudio %ld"; +"Download video at the highest available quality" = "Baixe o vídeo com a mais alta qualidade disponível"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "Baixa vídeo HD via fluxos DASH e codifica para H.264. Requer FFmpegKit."; +"Encoding in software" = "Codificação em software"; +"Encoding speed" = "Velocidade de codificação"; +"Enhanced downloads" = "Baixars aprimorados"; +"Faster = lower quality" = "Mais rápido = qualidade inferior"; +"FFmpeg not available" = "FFmpeg não disponível"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit não está disponível. Instale o IPA carregado lateralmente ou a variante _ffmpeg .deb para ativar."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "O codificador de hardware não está disponível em segundo plano — suas configurações de qualidade foram mantidas."; +"No audio track found" = "Nenhuma faixa de áudio encontrada"; +"Photo" = "Foto"; +"Photo quality" = "Qualidade da foto"; +"Size unknown" = "Tamanho desconhecido"; +"calculating size…" = "calculando o tamanho…"; +"silent" = "silencioso"; +"Use highest resolution available" = "Use a resolução mais alta disponível"; +"Video encoder locked up — restart Instagram to encode again" = "Codificador de vídeo bloqueado – reinicie o Instagram para codificar novamente"; +"Video only" = "Somente vídeo"; +"Video-only & every audio track" = "Somente vídeo e todas as faixas de áudio"; +"Video quality" = "Qualidade de vídeo"; +"Which quality to download" = "Qual qualidade baixar"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' não está nesta compilação do FFmpegKit - usando hardware h264."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "4:2:0 de 10 bits. Gradientes ~2x mais lentos e suaves."; +"10-bit colour. Slower, smoother gradients. Software only." = "Cor de 10 bits. Gradientes mais lentos e suaves. Somente software."; +"1080p30 baseline." = "Linha de base 1080p30."; +"4K30 baseline." = "Linha de base 4K30."; +"8-bit 4:2:0. Universal default." = "4:2:0 de 8 bits. Padrão universal."; +"8-bit 4:2:2 chroma. Niche playback." = "Croma 4:2:2 de 8 bits. Reprodução de nicho."; +"8-bit 4:2:2 chroma. Software only." = "Croma 4:2:2 de 8 bits. Somente software."; +"8-bit 4:4:4 chroma. Software only." = "Croma 4:4:4 de 8 bits. Somente software."; +"8-bit 4:4:4 full chroma. Niche playback." = "Croma completo 4:4:4 de 8 bits. Reprodução de nicho."; +"8-bit. Best for modern devices." = "8 bits. Melhor para dispositivos modernos."; +"Advanced encoding" = "Codificação avançada"; +"Advanced encoding settings" = "Configurações avançadas de codificação"; +"Archival quality." = "Qualidade arquivística."; +"Audio bitrate" = "Taxa de bits de áudio"; +"Audio channels" = "Canais de áudio"; +"Audio codec" = "Codec de áudio"; +"Audio conversion failed" = "Falha na conversão de áudio"; +"Audio sample rate" = "Taxa de amostragem de áudio"; +"Balanced. libx264 default." = "Equilibrado. padrão libx264."; +"Best practical quality per bit." = "Melhor qualidade prática por bit."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "A taxa de bits, os canais e a taxa de amostragem se aplicam somente quando o codec é AAC (recodificação)."; +"Cartoons / anime." = "Desenhos animados/animes."; +"Cinematic. Smaller files." = "Cinematográfico. Arquivos menores."; +"Codec" = "Codec"; +"Container" = "Recipiente"; +"Copy (passthrough)" = "Copiar (passagem)"; +"CRF quality" = "Qualidade CRF"; +"Downloading video…" = "Baixando vídeo…"; +"Easier to play back on weak devices." = "Mais fácil de reproduzir em dispositivos fracos."; +"Encoder unavailable" = "Codificador indisponível"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "Exemplos: 8M, 12M, 25M, 4500k. Deixe em branco para automático."; +"Failed to download video" = "Falha ao baixar o vídeo"; +"Fast, fixed-bitrate, GPU-accelerated." = "Rápido, com taxa de bits fixa e acelerado por GPU."; +"Fastest, worst compression." = "Compressão mais rápida e pior."; +"Faststart" = "Início rápido"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart move o índice MP4 para o início para que a reprodução comece antes que o arquivo seja totalmente armazenado em buffer. Remover metadados remove tags de origem (data de criação, manipulador, codificador) do arquivo."; +"FFmpeg documentation" = "Documentação FFmpeg"; +"FFmpeg mux failed" = "Falha no mux FFmpeg"; +"Frame rate" = "Taxa de quadros"; +"H.264 level" = "Nível H.264"; +"H.264 profile" = "Perfil H.264"; +"Hardware (VideoToolbox)" = "Hardware (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "Hardware (VideoToolbox) suporta apenas yuv420p — '%@' foi ignorado. Mude para Software (libx264) para usá-lo."; +"Keep original audio. Fast." = "Mantenha o áudio original. Rápido."; +"Keep the source frame rate." = "Mantenha a taxa de quadros de origem."; +"Let the encoder pick." = "Deixe o codificador escolher."; +"Live-action video." = "Vídeo de ação ao vivo."; +"Lossless. Huge files." = "Sem perdas. Arquivos enormes."; +"Low-latency streaming." = "Streaming de baixa latência."; +"Manual ffmpeg controls in place of Encoding speed." = "Controles manuais do ffmpeg no lugar da velocidade de codificação."; +"Marginal gain, huge time cost." = "Ganho marginal, enorme custo de tempo."; +"Max resolution" = "Resolução máxima"; +"Mono" = "Mono"; +"No tuning. Default." = "Sem sintonia. Padrão."; +"None" = "Nenhum"; +"Pixel format" = "Formato de pixels"; +"Pixel format ignored" = "Formato de pixel ignorado"; +"Preserve film grain." = "Preservar a granulação do filme."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "Preset e Tune aplicam-se apenas ao software (libx264). Perfil de par com formato de pixel: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. As incompatibilidades são convertidas silenciosamente. O hardware sempre usa yuv420p."; +"Re-encode. Use when source is opus or unsupported." = "Recodificar. Use quando a fonte for Opus ou não for suportada."; +"Reset advanced encoding" = "Redefinir codificação avançada"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "Definir uma taxa de bits de vídeo muda o software para taxa de bits fixa e ignora o CRF. Deixe em branco para CRF. O hardware usa taxa de bits."; +"Slideshow-like content." = "Conteúdo semelhante a uma apresentação de slides."; +"Slower, better compression per bit." = "Compressão por bit mais lenta e melhor."; +"Smaller, visible artefacts." = "Artefatos menores e visíveis."; +"Software (libx264)" = "Programas (libx264)"; +"Standard 8-bit." = "Padrão de 8 bits."; +"Stereo" = "Estéreo"; +"Streaming default." = "Padrão de streaming."; +"Strip metadata" = "Remover metadados"; +"Top of AAC." = "Topo da AAC."; +"Tune" = "Sintonia"; +"Unknown error" = "Erro desconhecido"; +"Very high quality." = "Qualidade muito alta."; +"Video bitrate" = "Taxa de bits de vídeo"; +"Video codec" = "Codec de vídeo"; +"Visually lossless. RyukGram default." = "Visualmente sem perdas. Padrão do RyukGram."; +"Widest compatibility, no B-frames." = "Maior compatibilidade, sem quadros B."; +"Worst quality." = "Pior qualidade."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "Gestos de pressão longa"; +"Inserts a button in the profile navigation header" = "Insere um botão no cabeçalho de navegação do perfil"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "Adiciona um botão de ação RyukGram ao cabeçalho do perfil com entradas para copiar, visualizar imagem, compartilhar, salvar e informações do perfil. Tap abre o menu por padrão; altere o comportamento do toque no menu Configurar."; +"Configure menu" = "Configurar menu"; +"Reorder, enable/disable, set default tap, show date" = "Reordenar, ativar/desativar, definir toque padrão, mostrar data"; +"Reorder, enable/disable, set default tap" = "Reordenar, ativar/desativar, definir toque padrão"; +"RyukGram profile actions" = "Ações do perfil RyukGram"; +"Reorder sections" = "Reordenar seções"; +"Drag the ≡ handle to reorder sections." = "Arraste a alça ≡ para reordenar as seções."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "Arraste a alça ≡ para reordenar. Desative uma linha para ocultá-la do menu. Marque uma seção como um submenu para recolher suas ações atrás de uma única entrada."; +"Show as submenu" = "Mostrar como submenu"; +"Collapse this section's actions behind a single entry" = "Recolher as ações desta seção em uma única entrada"; +"Configure: %@" = "Configurar: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "O que acontece com um único toque. Manter pressionado sempre abre o menu completo."; +"Reset to defaults" = "Redefinir para os padrões"; +"This will restore the default sections, order, and toggles for this menu." = "Isso restaurará as seções, ordem e alternância padrão deste menu."; +"Audio & visibility" = "Áudio e visibilidade"; +"DM disappearing media" = "DM desaparecendo mídia"; +"Bulk download" = "Baixar em massa"; +"Feed settings" = "Configurações de feed"; +"Reels settings" = "Configurações de reels"; +"Profile settings" = "Configurações de perfil"; +"Stories settings" = "Configurações de stories"; +"Copy ID" = "Copiar ID"; +"Copy Info" = "Copiar informações"; +"Copy all info" = "Copiar todas as informações"; +"Copy media URL" = "Copiar URL da mídia"; +"Copy profile link" = "Copiar link do perfil"; +"Copy username" = "Copiar nome de usuário"; +"Download" = "Baixar"; +"Download to Gallery" = "Baixar para a Galeria"; +"Download all to Gallery" = "Baixe tudo para a Galeria"; +"Exclude/include user" = "Excluir/incluir usuário"; +"Mute / unmute audio" = "Ativar/desativar áudio"; +"Save picture to Gallery" = "Salvar imagem na Galeria"; +"Share picture" = "Compartilhar foto"; +"View picture" = "Ver foto"; +"Bio" = "Biografia"; +"ID" = "ID"; +"Info" = "Informações"; +"Profile info" = "informações do perfil"; +"Profile link" = "Link do perfil"; +"Picture not found" = "Imagem não encontrada"; +"Private profile" = "Perfil privado"; +"Profile unavailable" = "Perfil indisponível"; +"Public profile" = "Perfil público"; +"Username" = "Nome de usuário"; +"Followers: %@" = "Seguidores: %@"; +"Following: %@" = "Seguindo: %@"; +"Copied %@" = "Copiado %@"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(desconhecido)"; +"Added %lu" = "%lu adicionados"; +"All files deleted" = "Todos os arquivos excluídos"; +"Browsing" = "Navegando"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "Foram encontrados %lu itens salvos por uma versão anterior. Restaurá-los na sua galeria agora?"; +"Gallery data from a previous version was found. Restore it now?" = "Dados de galeria de uma versão anterior foram encontrados. Restaurar agora?"; +"Gallery restored" = "Galeria restaurada"; +"Import failed" = "Falha na importação"; +"Import to Gallery" = "Importar para a galeria"; +"Imported" = "Importado"; +"Importing…" = "Importando…"; +"Not Now" = "Agora não"; +"Nothing imported" = "Nada importado"; +"Restore" = "Restaurar"; +"Restore Gallery" = "Restaurar galeria"; +"Restore failed" = "Falha na restauração"; +"Restoring gallery…" = "Restaurando galeria…"; +"By source" = "Por fonte"; +"By type" = "Por tipo"; +"By user" = "Por usuário"; +"Clear filters" = "Limpar filtros"; +"Comment" = "Comentário"; +"Create" = "Criar"; +"Create & Move" = "Criar e mover"; +"Delete %@?" = "Excluir %@?"; +"Delete all files" = "Exclua todos os arquivos"; +"Delete all images" = "Excluir todas as imagens"; +"Delete all videos" = "Excluir todos os vídeos"; +"Delete by user" = "Excluir por usuário"; +"Delete DM media" = "Excluir mídia DM"; +"Delete feed posts" = "Excluir postagens de feed"; +"Delete files" = "Excluir arquivos"; +"Delete Folder" = "Excluir pasta"; +"Delete from Gallery?" = "Excluir da Galeria?"; +"Delete profile pictures" = "Excluir fotos de perfil"; +"Delete reels" = "Excluir reels"; +"Delete selected" = "Excluir selecionado"; +"Delete Selected Files?" = "Excluir arquivos selecionados?"; +"Delete stories" = "Excluir stories"; +"Delete thumbnails" = "Excluir miniaturas"; +"Deleted from Gallery" = "Excluído da Galeria"; +"Deleted selected files" = "Arquivos selecionados excluídos"; +"Deselect All" = "Desmarcar tudo"; +"DM media deleted" = "Mídia DM excluída"; +"DMs" = "Mensagens diretas"; +"Each user appears as a folder next to your real folders." = "Cada usuário aparece como uma pasta próxima às suas pastas reais."; +"Each user gets a labelled section in the grid/list." = "Cada usuário obtém uma seção rotulada na grade/lista."; +"Enable gallery" = "Ativar galeria"; +"Failed" = "Falha"; +"Failed to delete" = "Falha ao excluir"; +"Favorite" = "Favorito"; +"Favorite selected" = "Favorito selecionado"; +"Favorites only" = "Somente favoritos"; +"Feed posts deleted" = "Postagens de feed excluídas"; +"Files deleted" = "Arquivos excluídos"; +"Flat list. No grouping." = "Lista plana. Sem agrupamento."; +"Folder name" = "Nome da pasta"; +"Folders" = "Pastas"; +"From RyukGram Gallery" = "Da Galeria RyukGram"; +"Gallery" = "Galeria"; +"Gallery only" = "Apenas galeria"; +"Gallery save mode" = "Modo de salvar galeria"; +"Gallery Settings" = "Configurações da galeria"; +"GIFs" = "GIFs"; +"Grid columns" = "Colunas da grade"; +"Grid view" = "Visualização em grade"; +"Group by user" = "Agrupar por usuário"; +"Group first by" = "Agrupar primeiro por"; +"Order by" = "Ordenar por"; +"Favorites first" = "Favoritos primeiro"; +"Any time" = "Qualquer data"; +"This year" = "Este ano"; +"%ld columns" = "%ld colunas"; +"Hold DM tab to open gallery" = "Segure a guia DM para abrir a galeria"; +"Images" = "Imagens"; +"Images deleted" = "Imagens excluídas"; +"Images first" = "Imagens primeiro"; +"item" = "artigo"; +"items" = "itens"; +"Largest first" = "Maior primeiro"; +"List view" = "Visualização de lista"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "Pressione longamente o botão da caixa de entrada na barra inferior da guia para abrir a galeria RyukGram"; +"Manage" = "Gerenciar"; +"More" = "Mais"; +"Move selected" = "Mover selecionado"; +"Move to Folder" = "Mover para pasta"; +"Name A-Z" = "Nome A-Z"; +"Name Z-A" = "Nome Z-A"; +"New Folder" = "Nova pasta"; +"New folder…" = "Nova pasta…"; +"Newest first" = "O mais novo primeiro"; +"No files in Gallery" = "Nenhum arquivo na Galeria"; +"No files to delete" = "Nenhum arquivo para excluir"; +"No matching files" = "Nenhum arquivo correspondente"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "Biblioteca de mídia no dispositivo baixada por meio do RyukGram. O modo de salvamento escolhe onde ‘Baixar to Photos’ realmente escreve."; +"Open" = "Abrir"; +"Open Original Post" = "Abrir postagem original"; +"Options" = "Opções"; +"Other" = "Outro"; +"Photos + Gallery" = "Fotos + Galeria"; +"Photos only" = "Somente fotos"; +"Profile pictures deleted" = "Fotos de perfil excluídas"; +"Reels deleted" = "Momentos excluídos"; +"Rename" = "Renomear"; +"Rename Folder" = "Renomear pasta"; +"Root" = "Raiz"; +"Save media from the preview screen\nto see it here." = "Salve a mídia da tela de visualização\para vê-la aqui."; +"Saved %lu items to Gallery" = "%lu itens salvos na Galeria"; +"Saved to Gallery" = "Salvo na Galeria"; +"Saving to Gallery" = "Salvando na Galeria"; +"Search users" = "Pesquisar usuários"; +"Sections" = "Seções"; +"Select All" = "Selecionar tudo"; +"Share" = "Compartilhar"; +"Share selected" = "Compartilhar selecionado"; +"Show favorites at top" = "Mostrar favoritos no topo"; +"Show gallery entries in download menus and unlock the gallery button" = "Mostrar entradas da galeria nos menus de download e desbloquear o botão da galeria"; +"Smallest first" = "O menor primeiro"; +"Source" = "Fonte"; +"Source user" = "Usuário de origem"; +"Storage" = "Armazenamento"; +"Stories deleted" = "Stories excluídas"; +"Story" = "Story"; +"The original content may no longer exist." = "O conteúdo original pode não existir mais."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "Esta pasta contém %ld arquivo(s). Eles serão movidos para a pasta pai."; +"This folder is empty." = "Esta pasta está vazia."; +"This will permanently remove %ld file%@ from the gallery." = "Isso removerá permanentemente %ld file%@ da galeria."; +"This will permanently remove %ld file(s)." = "Isso removerá permanentemente %ld arquivo(s)."; +"This will permanently remove this file from the gallery." = "Isso removerá permanentemente este arquivo da galeria."; +"Thumb" = "Polegar"; +"Thumbnails deleted" = "Miniaturas excluídas"; +"to Gallery" = "para a Galeria"; +"Total files" = "Total de arquivos"; +"Total size" = "Tamanho total"; +"Type" = "Tipo"; +"Unable to open original post" = "Não foi possível abrir a postagem original"; +"Unable to open profile" = "Não foi possível abrir o perfil"; +"Unfavorite" = "Não favorito"; +"Unknown user" = "Usuário desconhecido"; +"User files deleted" = "Arquivos de usuário excluídos"; +"Videos" = "Vídeos"; +"Videos deleted" = "Vídeos excluídos"; +"Videos first" = "Vídeos primeiro"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "Quando ativado, os favoritos são fixados acima de outros arquivos dentro da classificação atual e do contexto da pasta."; +"Where 'Download to Photos' actually writes when gallery is on" = "Onde 'Baixar to Photos' realmente escreve quando a galeria está ativada"; +"Yesterday" = "Ontem"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "Botão de atalho para casa"; +"Show the extra button on the home top bar" = "Mostrar o botão extra na barra superior inicial"; +"Auto" = "Automático"; +"Icon" = "Ícone"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "Arraste a alça ≡ para reordenar. Desative as ações para ocultá-las. Com uma ação habilitada, tocar a dispara diretamente. Com dois ou mais, tocar abre um menu."; +"Changelog" = "Registro de alterações"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "Adiciona um botão de atalho extra ao lado do botão create-post + na barra superior da página inicial."; +"All buttons" = "Todos os botões"; +"System" = "Sistema"; +"Instagram language" = "Idioma do Instagram"; +"Choose icon, reorder actions, and enable menu items" = "Escolha o ícone, reordene as ações e ative os itens do menu"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "Escolha o ícone mostrado na barra superior inicial. Auto usa o ícone de ação selecionado quando apenas uma ação está habilitada."; +"Configure button" = "Botão Configurar"; +"Global Action Icons" = "Ícones de ação global"; +"Interface" = "Interface"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "Substitua o ícone de um botão específico. Os botões deixados em Padrão seguem o ícone compartilhado acima."; +"Per button" = "Por botão"; +"Show home shortcut button" = "Mostrar botão de atalho para casa"; +"%ld new" = "%ld novos"; +"Tab bar" = "Barra de guias"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "Notificações universais no aplicativo. Escolha estilo, posição e roteamento por ação (pílula personalizada / nativo de IG / desativado)."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "Arraste a notificação para posicioná-la"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "Arraste a notificação para onde quiser. Acima do centro desliza para baixo; abaixo, para cima."; + +"Notifications" = "Notificações"; +"Appearance" = "Aparência"; +"Routing" = "Roteamento"; +"Style" = "Estilo"; +"Position" = "Posição"; +"Stack size" = "Tamanho da pilha"; +"Duration" = "Duração"; +"Default surface" = "Superfície padrão"; +"System notifications" = "Notificações do sistema"; +"Mirror to notification centre" = "Espelhar para centro de notificação"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "Enquanto o aplicativo está em segundo plano, os brindes são entregues na central de notificações do iOS para que não sejam perdidos."; +"Clear when app opens" = "Limpar quando o aplicativo abrir"; +"Remove mirrored notifications from notification centre when you return to the app." = "Remova notificações espelhadas da central de notificações ao retornar ao aplicativo."; +"Background mirror" = "Espelho de fundo"; +"Show while app is open" = "Mostrar com o app aberto"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "Também entrega as notificações espelhadas como banners do sistema enquanto você usa o app, não só em segundo plano."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "Aparência, roteamento, notificações do sistema e cada substituição por ação voltam aos padrões."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Usa a permissão de notificação do Instagram. As substituições por ação ficam no menu de cada ação em Espelho de fundo; ações definidas como Desativadas nunca são espelhadas."; +"Enable notifications" = "Habilitar notificações"; +"Haptic feedback" = "Feedback tátil"; +"Preview pill" = "Pílula de visualização"; +"Preview download pill" = "Pílula de download de pré-visualização"; +"Preview loading pill" = "Pré-visualizar o carregamento do comprimido"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "Interruptor mestre. Quando desligado, nenhuma pílula RyukGram ou brindes nativos de IG são emitidos."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "Notificações universais no aplicativo. Todos os comentários do RyukGram (downloads, cópias, erros, mensagens de sucesso) passam por aqui."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Mínimo: desfoque plano. Colorido: tingido por tom. Brilho: halo colorido. Ilha: cápsula de ilha dinâmica."; +"Top slides down, bottom slides up." = "A parte superior desliza para baixo, a parte inferior desliza para cima."; +"How many pills can show at once before queueing." = "Quantos comprimidos podem ser exibidos de uma vez antes de entrar na fila."; +"Multiplies how long toasts stay on screen." = "Multiplica quanto tempo os brindes permanecem na tela."; +"Vibration on success/error pills." = "Vibração em pílulas de sucesso/erro."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "Para ações no estilo brinde, você pode escolher entre nossa pílula e o brinde inferior nativo do IG. As substituições por ação estão abaixo."; +"What to use when an action doesn't have its own override." = "O que usar quando uma ação não tem sua própria substituição."; +"Tap to cycle: info → success → warning → error" = "Toque para alternar: informações → sucesso → aviso → erro"; +"Tap to cycle between success and failure" = "Toque para alternar entre sucesso e fracasso"; +"Progress UI — pill or off only." = "UI de progresso – apenas pílula ou desligada."; +"Minimal" = "Mínimo"; +"Colorful" = "Colorido"; +"Glow" = "Brilho"; +"Island" = "Ilha"; +"Top" = "Superior"; +"Bottom" = "Inferior"; +"Custom pill" = "Pílula personalizada"; +"IG native toast" = "Brinde nativo IG"; +"Short" = "Curto"; +"Normal" = "Normais"; +"Long" = "Longo"; +"Very long" = "Muito longo"; +"Downloads & saving" = "Baixar e salvar"; +"Copy to clipboard" = "Copiar para a área de transferência"; +"Read receipts & seen" = "Ler recibos e ver"; +"Block, exclude & pin" = "Bloquear, excluir e fixar"; +"Stories & messages" = "Stories e mensagens"; +"Voice & audio" = "Voz e áudio"; +"Errors" = "Erros"; +"Download progress" = "Progresso do download"; +"Bulk download progress" = "Progresso do download em massa"; +"Repost progress" = "Repostar o progresso"; +"Copied post / reel URL" = "URL da postagem/momento copiado"; +"Copied comment text" = "Texto do comentário copiado"; +"Copied GIF link" = "Link GIF copiado"; +"Copied note text" = "Texto da nota copiado"; +"Copied profile info" = "Informações do perfil copiadas"; +"Copied audio URL" = "URL de áudio copiado"; +"Copied quality picker URL" = "URL do seletor de qualidade copiado"; +"Copied unlocked password" = "Senha desbloqueada copiada"; +"Copied description text" = "Texto de descrição copiado"; +"DM seen / read receipts" = "DM visto / lido recibos"; +"Story seen / read receipts" = "Story vista/recibos de leitura"; +"Someone read your message" = "Alguém leu sua mensagem"; +"User blocked / unblocked" = "Usuário bloqueado/desbloqueado"; +"Chat added / removed from exclude" = "Bate-papo adicionado/removido da exclusão"; +"Story user added / removed from exclude" = "Usuário da story adicionado/removido da exclusão"; +"Share-sheet recipient pinned" = "Destinatário da planilha de compartilhamento fixado"; +"Unsent message detected" = "Mensagem não enviada detectada"; +"Reaction removed detected" = "Reação removida detectada"; +"%lu messages unsent" = "%lu mensagens não enviadas"; +"%lu reactions removed" = "%lu reações removidas"; +"%lu chats marked seen" = "%lu chats marcados como vistos"; +"%lu stories marked seen" = "%lu stories marcadas como vistas"; +"%lu of your messages read" = "%lu das suas mensagens lidas"; +"%lu notifications" = "%lu notificações"; +"Live comments toggled" = "Comentários ao vivo alternados"; +"Custom GIF sent" = "GIF personalizado enviado"; +"GIF favorited / unfavorited" = "GIF favorito/desfavorecido"; +"Voice DM sent" = "DM de voz enviado"; +"Audio extraction status" = "Status de extração de áudio"; +"Profile Analyzer complete" = "Analisador de perfil concluído"; +"Profile Analyzer progress" = "Progresso do Analisador de Perfil"; +"Media extraction failed" = "Falha na extração de mídia"; +"Permission denied" = "Permissão negada"; +"Validation error" = "Erro de validação"; +"Network / API error" = "Erro de rede/API"; +"Action error fallback" = "Fallback de erro de ação"; +"Unlock failed" = "Falha no desbloqueio"; +"Chat locked / unlocked" = "Bate-papo bloqueado/desbloqueado"; +"Invalid clipboard link" = "Link da área de transferência inválido"; +"Experimental flag warning" = "Aviso de sinalizador experimental"; +"Settings action confirmed" = "Ação de configurações confirmada"; +"Cache clearing progress" = "Progresso da limpeza do cache"; +"Backup export / import" = "Exportação/importação de backup"; +"Other / uncategorized" = "Outro / sem categoria"; +"Comment copied" = "Comentário copiado"; +"FFmpeg log copied" = "Log do FFmpeg copiado"; +"GIF inserted" = "GIF inserido"; +"Story marked as seen" = "Story marcada como vista"; +"Saved" = "Salvo"; +"Tap to retry" = "Toque para tentar novamente"; +"Looks great" = "Parece ótimo"; +"Something broke" = "Algo quebrou"; +"Just so you know" = "Só para você saber"; +"Success preview" = "Visualização de sucesso"; +"Error preview" = "Visualização de erros"; +"Warning preview" = "Visualização de aviso"; +"Info preview" = "Visualização de informações"; +"Preview download…" = "Pré-visualização do download…"; +"Colors" = "Cores"; +"+ Add new language" = "+ Adicionar novo idioma"; +"Each chat can override this in the list" = "Cada chat pode substituir isso na lista"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "Quando ativado, as solicitações de localização do Instagram retornam a localização falsa selecionada. O botão do mapa adiciona um atalho rápido dentro do Mapa de Amigos."; +"Tap a preset to make it active. Swipe left to delete." = "Toque em uma predefinição para ativá-la. Deslize para a esquerda para excluir."; +"Override Instagram location reads." = "Substituir leituras de localização do Instagram."; +"Show the quick button in Friends Map." = "Mostre o botão rápido no Mapa de Amigos."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "Escolha como as datas absolutas são escritas. “Padrão” deixa o formato do próprio IG intacto. Passe um formato personalizado para editá-lo ou excluí-lo."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "As datas anteriores ao limite são mostradas como tempo relativo. As datas mais antigas voltam ao formato absoluto. “Combinar com data” mostra ambos – “5 de janeiro de 2026 (2h)” ou “2h – 5 de janeiro de 2026”."; +"Compact style" = "Estilo compacto"; +"Example: “1h” instead of “1 hour ago”" = "Exemplo: “1h” em vez de “1 hora atrás”"; +"Example: “Jan 5, 2026 (2h)”" = "Exemplo: “5 de janeiro de 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "As APIs de áudio do iOS não conseguiram processar este arquivo%@%@\n\nVocê pode tentar enviá-lo para o Instagram como está ou abrir um problema de suporte."; +"Combine with date" = "Combinar com data"; +"Absolute then relative" = "Absoluto e depois relativo"; +"Relative – absolute" = "Relativo - absoluto"; +"Relative when young, absolute when older." = "Relativo quando jovem, absoluto quando mais velho."; +"Example: “2h – Jan 5, 2026”" = "Exemplo: “2h – 5 de janeiro de 2026”"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "Capture mídia de visualização única não enviada enquanto você estiver ausente. ⚠️ Pode esgotar a bateria"; +"Disappearing (view-once) media" = "Mídia desaparecendo (visualizar uma vez)"; +"Disappearing media expired before it could be saved" = "A mídia desaparecida expirou antes de poder ser salva"; +"Disappearing media — gone before it could be saved" = "Mídia desaparecendo – desapareceu antes que pudesse ser salva"; +"Disappearing only" = "Desaparecendo apenas"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Força o Instagram a continuar sendo executado em segundo plano para que ele possa capturar mídia que desaparece e que alguém cancela o envio enquanto você não está no aplicativo.\n\nPrincipalmente útil para mídia de visualização única: fotos/vídeos normais geralmente ainda podem ser recuperados sem ele. ⚠️ Pode esgotar significativamente sua bateria e não conseguir capturar nada se você forçar o encerramento do Instagram no alternador de aplicativos.\n\nAtivar?"; +"Keep Instagram active in background" = "Mantenha o Instagram ativo em segundo plano"; +"Media couldn’t be downloaded — the link expired" = "Não foi possível baixar a mídia – o link expirou"; +"Media wasn’t available to save" = "A mídia não estava disponível para salvar"; +"Retrying download…" = "Tentando baixar novamente…"; +"Try to download again" = "Tente baixar novamente"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "Registro de recibos de leitura"; +"Date" = "Data"; +"Reads" = "Lê"; +"Person" = "Pessoa"; +"Chat" = "Bate-papo"; +"%@ · on @%@" = "%@ · em @%@"; +"%lu read · %@" = "%lu leu · %@"; +"%lu reads · %@" = "%lu lê · %@"; +"%lu reads · %lu reader · %@" = "%lu lê · %lu leitor · %@"; +"%lu reads · %lu readers · %@" = "%lu lê · %lu leitores · %@"; +"Clear all" = "Limpar tudo"; +"Clear all records" = "Limpar todos os registros"; +"Detects when others read your messages and notifies you" = "Detecta quando outras pessoas leem suas mensagens e notifica você"; +"Ignored people & chats" = "Pessoas e bate-papos ignorados"; +"Ignored" = "Ignorado"; +"Log group chats" = "Registrar bate-papos em grupo"; +"Most reads" = "Mais leituras"; +"Notifies and records when someone reads a message you sent" = "Notifica e registra quando alguém lê uma mensagem que você enviou"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "Nada é ignorado. Mantenha alguém pressionado no registro para parar de registrá-lo."; +"Nothing matches your filters." = "Nada corresponde aos seus filtros."; +"Read %@ · %@" = "Leia %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "Grave leituras neste dispositivo. Desativado = apenas notificações, nada armazenado"; +"Resume logging" = "Retomar registro"; +"Search by username" = "Pesquisar por nome de usuário"; +"Stop logging %@" = "Pare de registrar %@"; +"Delete records" = "Excluir registros"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "Quando ativado, uma notificação é disparada quando alguém lê sua mensagem. Desative \"Salvar no registro\" para o modo apenas notificação. Mantenha pressionada uma pessoa no registro para parar de registrá-la."; +"Swipe to remove. Removing resumes logging for that person or chat." = "Deslize para remover. A remoção retoma o registro dessa pessoa ou bate-papo."; +"Updating names and photos" = "Atualizando nomes e fotos"; +"Your message" = "Sua mensagem"; +"read your message in %@" = "leia sua mensagem em %@"; +"read your message" = "leia sua mensagem"; +"Also track reads in group chats. Off by default — groups can be noisy" = "Acompanhe também leituras em bate-papos em grupo. Desativado por padrão — os grupos podem ser barulhentos"; +"Refreshing…" = "Refrescante…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "Role uma nova impressão digital"; +"New device fingerprint" = "Nova impressão digital do dispositivo"; +"Roll new ID" = "Gerar novo ID"; +"Roll + clear IG data" = "Gerar + limpar dados do IG"; +"Generate fresh device identifiers" = "Gerar identificadores de dispositivo novos"; +"Enter ID manually…" = "Insira o ID manualmente…"; +"Manual device ID" = "ID manual do dispositivo"; +"Paste or type the UUID this device should report." = "Cole ou digite o UUID que este dispositivo deve relatar."; +"Device ID set" = "Conjunto de ID do dispositivo"; +"New fingerprint ready" = "Nova impressão pronta"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "Reiniciar o Instagram agora para que a nova identidade de dispositivo seja aplicada a partir de um início limpo?"; +"Copy current ID" = "Copiar ID atual"; +"Revert to my real device ID" = "Reverter para meu ID de dispositivo real"; +"Restore the original, stop masking" = "Restaure o original, pare de mascarar"; +"Spoofing off" = "Falsificando"; +"Relaunch now" = "Reinicie agora"; +"Relaunch to apply" = "Reinicie para se inscrever"; +"Clear device & relaunch" = "Limpar dispositivo e reiniciar"; +"Clear device & relaunch?" = "Limpar dispositivo e reiniciar?"; +"Clear & relaunch" = "Limpar e reiniciar"; +"Full reset to a brand-new device" = "Redefinição total para um dispositivo totalmente novo"; +"Device ID" = "ID do dispositivo"; +"Hide button until relaunch" = "Ocultar botão até reabrir"; +"Device identity" = "Identidade do dispositivo"; +"Masked" = "Mascarado"; +"Real" = "Verdadeiro"; +"Show button on login screen" = "Mostrar botão na tela de login"; +"Floating Device ID button while signed out" = "Botão flutuante de ID do dispositivo enquanto você está desconectado"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Mascara os identificadores que o Instagram usa para criar a impressão deste dispositivo: ID de dispositivo, ID de dispositivo da família, ID de fornecedor e ID de máquina. As alterações são aplicadas após reiniciar. Os mesmos controles aparecem na tela de login."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "Esquece cada login salvo, cookie e identidade de dispositivo armazenada e, em seguida, reinicia para que o Instagram comece como um dispositivo totalmente novo. Você fará login novamente depois."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "Gera um novo ID de dispositivo, ID de dispositivo da família e ID de fornecedor, e limpa o ID de máquina para que o Instagram se registre novamente como um dispositivo novo. Ou também apague os logins salvos para uma redefinição total."; +"Apple attestation" = "Atestado da Apple"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Bloqueia o atestado de dispositivo Apple do Instagram (DeviceCheck e App Attest). Eles estão vinculados ao hardware e não podem ser alterados, então continuam ligando o dispositivo entre as redefinições. Bloquear faz o Instagram ver um dispositivo que não os suporta. Só funciona enquanto o mascaramento estiver ativado."; +"Block Apple device attestation" = "Bloquear atestado de dispositivo Apple"; +"Stop the hardware attestation that links the device" = "Interromper o atestado de hardware que liga o dispositivo"; +"Block Apple attestation: %@" = "Bloquear atestado da Apple: %@"; +"Attestation blocked" = "Atestado bloqueado"; +"Attestation allowed" = "Atestado permitido"; +"Roll + clear, then sign in fresh" = "Gerar + limpar e, em seguida, entrar do zero"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "Seguir solicitações"; +"Show follow requests" = "Mostrar solicitações para seguir"; +"Check now" = "Verifique agora"; +"Reset tracked data" = "Redefinir dados rastreados"; +"Enable tracker" = "Ativar rastreador"; +"Log requests and check outcomes" = "Registrar solicitações e verificar resultados"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "Os registros seguem as solicitações que você envia e recebe e detectam quem cancela uma solicitação antes de você responder. Tudo no dispositivo."; +"What to track" = "O que rastrear"; +"Requests I send" = "Solicitações que envio"; +"To private accounts" = "Para contas privadas"; +"Requests I receive" = "Pedidos que recebo"; +"From people who want to follow you" = "De pessoas que querem te seguir"; +"Background check" = "Verificação de antecedentes"; +"Check interval" = "Verifique o intervalo"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "Com que frequência verificar os resultados enquanto o aplicativo está aberto. Também verifica no lançamento e quando você abre a lista."; +"Off (manual only)" = "Desligado (somente manual)"; +"Every 15 minutes" = "A cada 15 minutos"; +"Every 30 minutes" = "A cada 30 minutos"; +"Every hour" = "A cada hora"; +"Every 6 hours" = "A cada 6 horas"; +"My request accepted" = "Meu pedido foi aceito"; +"A private account accepted you" = "Uma conta privada aceitou você"; +"My request declined" = "Meu pedido foi recusado"; +"No longer pending" = "Não está mais pendente"; +"New request received" = "Nova solicitação recebida"; +"Someone asked to follow you" = "Alguém pediu para te seguir"; +"Request withdrawn" = "Solicitação retirada"; +"Someone cancelled their request" = "Alguém cancelou a solicitação"; +"Sent by me" = "Enviado por mim"; +"Received" = "Recebido"; +"Sent" = "Enviado"; +"Accepted" = "Aceito"; +"Rejected" = "Rejeitado"; +"Requested" = "Solicitado"; +"Approved" = "Aprovado"; +"Withdrawn" = "Retirado"; +"No follow requests tracked yet" = "Nenhuma solicitação de acompanhamento foi rastreada ainda"; +"Cancel requests" = "Cancelar solicitações"; +"Delete %lu record(s) from history?" = "Excluir %lu registro(s) do histórico?"; +"Cancel %lu pending request(s)?" = "Cancelar %lu solicitação(ões) pendente(s)?"; +"Follow back %lu account(s)?" = "Seguir de volta %lu conta(s)?"; +"Clear all tracked follow requests?" = "Limpar todas as solicitações de acompanhamento rastreadas?"; +"Reset tracked follow requests for this account?" = "Redefinir solicitações de acompanhamento rastreadas para esta conta?"; +"Enable the tracker first" = "Habilite o rastreador primeiro"; +"Checking…" = "Verificando…"; +"%ld request(s) updated" = "%ld solicitações atualizadas"; +"No changes" = "Sem alterações"; +"Working…" = "Trabalhando…"; +"Follow request accepted" = "Seguir solicitação aceita"; +"%@ accepted your request" = "%@ aceitou sua solicitação"; +"Follow request declined" = "Seguir solicitação recusada"; +"%@ is no longer pending" = "%@ não está mais pendente"; +"New follow request" = "Nova solicitação de acompanhamento"; +"%@ asked to follow you" = "%@ pediu para seguir você"; +"Follow request withdrawn" = "Seguir solicitação retirada"; +"%@ withdrew their request" = "%@ retirou o pedido"; +"Follow requests log" = "Acompanhar registro de solicitações"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Desbloqueie os recursos pagos do Instagram"; +"Turn on Instagram's paid subscriber features inside the app." = "Ative os recursos de assinante pagos do Instagram dentro do app."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "O Instagram Plus é a assinatura paga do Instagram. Estas opções ativam seus recursos dentro do app. Alguns funcionam por completo. Outros apenas revelam a opção, pois o conteúdo é carregado dos servidores do Instagram e ainda exige uma assinatura real, então podem aparecer vazios ou não fazer nada. Ative o que quiser e toque em Aplicar. Se o Instagram não abrir três vezes seguidas, estas opções se redefinem sozinhas."; +"Turn everything on" = "Ativar tudo"; +"Turn everything off" = "Desativar tudo"; +"Every Instagram Plus feature turns off and Instagram restarts." = "Todos os recursos do Instagram Plus são desativados e o Instagram reinicia."; +"Story peek" = "Espiar story"; +"Hold a story in the tray to preview it without opening it." = "Segure um story na barra para visualizá-lo sem abri-lo."; +"Story fonts" = "Fontes de story"; +"Adds the subscriber fonts when you add text to a story." = "Adiciona as fontes de assinante ao inserir texto em um story."; +"Search story viewers" = "Buscar quem viu o story"; +"Search the list of people who viewed your story." = "Pesquise na lista de pessoas que viram seu story."; +"Viewer timestamps" = "Horário das visualizações"; +"Shows when each person viewed your story." = "Mostra quando cada pessoa viu seu story."; +"Silent post to profile" = "Publicar no perfil sem avisar"; +"Share to your profile without notifying your followers." = "Publique no seu perfil sem notificar seus seguidores."; +"Silent post to highlights" = "Adicionar aos destaques sem avisar"; +"Add to a highlight without notifying your followers." = "Adicione a um destaque sem notificar seus seguidores."; +"Story rewatch" = "Rever story"; +"Rewatch a story right after it finishes." = "Reveja um story logo após ele terminar."; +"Story extend" = "Estender story"; +"Keep your story up longer than 24 hours." = "Mantenha seu story no ar por mais de 24 horas."; +"Story spotlight" = "Destaque de story"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "Impulsione seu story para mais pessoas. Carrega do Instagram, então pode não funcionar."; +"Story super likes" = "Supercurtidas em stories"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "Envie supercurtidas em stories. Carrega do Instagram, então pode não funcionar."; +"Message peek" = "Espiar mensagem"; +"Hold a chat in the inbox to preview it." = "Segure uma conversa na caixa de mensagens para visualizá-la."; +"Chat fonts" = "Fontes de conversa"; +"Adds the subscriber fonts in direct messages." = "Adiciona as fontes de assinante nas mensagens diretas."; +"Chat themes" = "Temas de conversa"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "Desbloqueia os temas de conversa premium. Carrega do Instagram, então pode não funcionar."; +"App icons" = "Ícones do app"; +"Opens the alternate app icon picker." = "Abre o seletor de ícones alternativos do app."; +"Bio font" = "Fonte da bio"; +"Use a subscriber font for your bio." = "Use uma fonte de assinante na sua bio."; +"Custom story lists" = "Listas personalizadas de story"; +"Make lists to pick exactly who sees a story." = "Crie listas para escolher exatamente quem vê um story."; +"More pinned posts" = "Mais publicações fixadas"; +"Pin more posts to the top of your profile." = "Fixe mais publicações no topo do seu perfil."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu gravações"; +"1 recording" = "1 gravação"; +"30 days" = "30 dias"; +"7 days" = "7 dias"; +"90 days" = "90 dias"; +"Adds a record button to the call screen" = "Adiciona um botão de gravação à tela de chamada"; +"Also show recordings in the RyukGram gallery under Calls" = "Também mostra as gravações na galeria do RyukGram em Chamadas"; +"Auto-delete old recordings" = "Excluir gravações antigas automaticamente"; +"Auto-record calls" = "Gravar chamadas automaticamente"; +"Auto-record ignore list" = "Lista de ignorados da gravação automática"; +"Auto-record ignored" = "Gravação automática ignorada"; +"Auto-record on" = "Gravação automática ativada"; +"Block mute signal" = "Bloquear sinal de mudo"; +"Both sides" = "Ambos os lados"; +"Browse saved calls, grouped by person" = "Navegue pelas chamadas salvas, agrupadas por pessoa"; +"Call" = "Chamada"; +"Call recorded" = "Chamada gravada"; +"Call recording" = "Gravação de chamadas"; +"Call recordings" = "Gravações de chamadas"; +"Camera position" = "Posição da câmera"; +"Can't play" = "Não é possível reproduzir"; +"Can't record" = "Não é possível gravar"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "Chats excluídos da gravação automática — mantenha pressionado o botão de gravação em uma chamada para adicionar"; +"Could not save the recording." = "Não foi possível salvar a gravação."; +"Could not start the recorder." = "Não foi possível iniciar o gravador."; +"Delete all" = "Excluir todas"; +"Delete all recordings" = "Excluir todas as gravações"; +"Delete all recordings?" = "Excluir todas as gravações?"; +"Drag the overlay where you want it" = "Arraste a sobreposição para onde quiser"; +"Drag your camera window to any corner or edge." = "Arraste a janela da câmera para qualquer canto ou borda."; +"Enable call recording" = "Ativar gravação de chamadas"; +"Export all" = "Exportar todas"; +"Full screen" = "Tela cheia"; +"Group call" = "Chamada em grupo"; +"Ignore auto-record for this chat" = "Ignorar gravação automática deste chat"; +"Ignored chats aren't auto-recorded. You can still record manually." = "Chats ignorados não são gravados automaticamente. Você ainda pode gravar manualmente."; +"Include my camera" = "Incluir minha câmera"; +"Keep forever" = "Manter para sempre"; +"Large" = "Grande"; +"Mute without the other side seeing you muted — your mic is still silenced" = "Silencie sem que o outro lado veja que você silenciou — seu microfone continua desligado"; +"Muted silently" = "Silenciado sem aviso"; +"My camera size" = "Tamanho da minha câmera"; +"No call audio was captured." = "Nenhum áudio da chamada foi capturado."; +"No ignored chats. Long-press the record button in a call to ignore it." = "Nenhum chat ignorado. Mantenha pressionado o botão de gravação em uma chamada para ignorá-lo."; +"No recordings" = "Nenhuma gravação"; +"Off records audio only, even on video calls" = "Desativado grava apenas áudio, mesmo em chamadas de vídeo"; +"Only me" = "Apenas eu"; +"Only them" = "Apenas eles"; +"Open recordings" = "Abrir gravações"; +"Overlay your camera as a small window on video-call recordings" = "Sobreponha sua câmera como uma pequena janela nas gravações de chamadas de vídeo"; +"Overlay your camera on the recording" = "Sobrepor sua câmera na gravação"; +"Record audio from" = "Gravar áudio de"; +"Record video on video calls" = "Gravar vídeo em chamadas de vídeo"; +"Record voice and video calls, browse them later" = "Grave chamadas de voz e vídeo e navegue por elas depois"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "As chamadas gravadas são salvas apenas neste dispositivo. Um indicador vermelho na barra de status aparece durante a gravação."; +"Recorded calls will appear here." = "As chamadas gravadas aparecerão aqui."; +"Recording call" = "Gravando chamada"; +"Recording count" = "Contagem de gravações"; +"Recording failed" = "Falha na gravação"; +"Recording name" = "Nome da gravação"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "Grava a outra parte (áudio da chamada) e seu microfone. Um indicador vermelho na barra de status aparece durante a gravação. As gravações são salvas apenas neste dispositivo."; +"Remove from ignore list" = "Remover da lista de ignorados"; +"Remove recordings older than the chosen age" = "Remove gravações mais antigas que o período escolhido"; +"Rename recording" = "Renomear gravação"; +"Search calls" = "Buscar chamadas"; +"Set a custom name for this chat's recordings." = "Defina um nome personalizado para as gravações deste chat."; +"Size of the overlay window" = "Tamanho da janela de sobreposição"; +"Small" = "Pequena"; +"Starts recording automatically when a call opens" = "Inicia a gravação automaticamente quando uma chamada abre"; +"Sync to gallery" = "Sincronizar com a galeria"; +"The recording file is missing." = "O arquivo de gravação está ausente."; +"Them" = "Eles"; +"Them (full screen)" = "Eles (tela cheia)"; +"This permanently removes every saved call recording for this account." = "Isso remove permanentemente todas as gravações de chamadas salvas desta conta."; +"Unknown chat" = "Chat desconhecido"; +"Unmuted" = "Som reativado"; +"Which camera fills the frame" = "Qual câmera preenche o quadro"; +"Which side's voice to capture" = "Qual lado da voz capturar"; +"You" = "Você"; +"You (full screen)" = "Você (tela cheia)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "Sua câmera é capturada e sobreposta na gravação. Escolha qual lado preenche a tela, o tamanho da sobreposição e arraste-a para qualquer canto."; +"Prompt before the call recordings open" = "Pedir antes de abrir as gravações de chamadas"; +"Prompt before the activity log opens" = "Pedir antes de abrir o registro de atividade"; +"Mark all as read" = "Marcar todas como lidas"; +"Delete %lu chats?" = "Excluir %lu chats?"; +"This permanently removes their recordings." = "Isso remove permanentemente as gravações deles."; + +"Stories archive" = "Arquivo de stories"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "Reagiram"; +"Reacted first" = "Reações primeiro"; +"Mutual" = "Amigos em comum"; +"Viewers" = "Quem viu"; +"1 viewer" = "1 visualização"; +"View viewers" = "Ver quem viu"; +"%lu views" = "%lu visualizações"; +"%ld likes" = "%ld curtidas"; +"0 views" = "0 visualizações"; +"1 like" = "1 curtida"; +"1 view" = "1 visualização"; +"Photos" = "Fotos"; +"Oldest" = "Mais antigos"; +"Most viewed" = "Mais visualizados"; +"Most reacted" = "Mais reações"; +"Open archive" = "Abrir arquivo"; +"Archive settings" = "Configurações do arquivo"; +"Archiving" = "Arquivamento"; +"Enable stories archive" = "Ativar arquivo de stories"; +"Save your stories before they expire" = "Salve seus stories antes que expirem"; +"Saves each story you post, with its photo or video, kept separately for each account." = "Salva cada story que você publica, com a foto ou o vídeo, separado por conta."; +"Save and update viewers" = "Salvar e atualizar quem viu"; +"Keep each story's viewers and likers, refreshed to the final list" = "Mantém quem viu e curtiu cada story, atualizado até a lista final"; +"Update viewers" = "Atualizar quem viu"; +"How often to refresh viewers for stories still live" = "Com que frequência atualizar quem viu os stories ainda no ar"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "A lista de quem viu um story continua crescendo pelo dia inteiro, e o Instagram a mantém por mais um. A atualização automática busca a lista final quando o story completa um dia, para que as contagens salvas fiquem completas."; +"Notify me about pinned viewers" = "Avisar sobre pessoas fixadas"; +"A heads-up when a pinned viewer sees or likes your story" = "Um aviso quando uma pessoa fixada vê ou curte seu story"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "Receba um aviso quando uma pessoa fixada vê ou curte seu story. Fixe pessoas e gerencie a lista nas configurações de quem viu."; +"Viewer list & pins" = "Lista de quem viu & fixados"; +"Turn on the viewer list and manage pinned viewers" = "Ative a lista de quem viu e gerencie as pessoas fixadas"; +"Turn on a custom viewer list to pin, search and sort viewers" = "Ative uma lista personalizada de quem viu para fixar, buscar e ordenar"; +"Tick several to combine them." = "Marque vários para combiná-los."; +"Select stories" = "Selecionar stories"; +"No archived stories yet. Post a story and it appears here." = "Nenhum story arquivado ainda. Publique um story e ele aparece aqui."; +"Archiving is off. Enable it in the archive settings, then post a story." = "O arquivamento está desativado. Ative nas configurações do arquivo e publique um story."; +"Delete story?" = "Excluir story?"; +"This removes the archived photo or video and its viewers." = "Isso remove a foto ou o vídeo arquivado e quem viu."; +"Delete all stories?" = "Excluir todos os stories?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "Remove todos os stories arquivados e quem viu desta conta. Isso não pode ser desfeito."; +"Delete %lu archived stories and their viewers?" = "Excluir %lu stories arquivados e quem os viu?"; +"Pinned viewer saw your story" = "Uma pessoa fixada viu seu story"; +"Pinned viewer liked your story" = "Uma pessoa fixada curtiu seu story"; +"Pinned viewer reacted to your story" = "Uma pessoa fixada reagiu ao seu story"; +"Pinned viewers on your story" = "Pessoas fixadas no seu story"; +"%lu pinned viewers just saw, liked or reacted" = "%lu pessoas fixadas acabaram de ver, curtir ou reagir"; +"A pinned viewer" = "Uma pessoa fixada"; +"On each launch" = "A cada abertura"; diff --git a/src/Localization/Resources/ru.lproj/Localizable.strings b/src/Localization/Resources/ru.lproj/Localizable.strings new file mode 100644 index 0000000..c3a304e --- /dev/null +++ b/src/Localization/Resources/ru.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "На будущее: удерживайте кнопку с тремя линиями в правом верхнем углу страницы профиля, чтобы снова открыть настройки RyukGram."; +"settings.firstrun.ok" = "Понятно!"; +"settings.firstrun.title" = "Информация о настройках RyukGram"; +"settings.language.english_only" = "Сейчас RyukGram поставляется только с английским языком. Другие языки уже подключены и ждут перевода — помочь перевести приложение на свой язык можно по короткой инструкции в README."; +"settings.language.help_translate" = "Помочь с переводом"; +"settings.language.system" = "Системный язык"; +"settings.language.title" = "Язык"; +"settings.language.restart.message" = "Настройки обновлены. Перезапустите Instagram, чтобы меню, кнопки и уведомления в остальной части приложения также использовали новый язык."; +"settings.language.restart.title" = "Перезапустите, чтобы применить везде"; +"settings.language.available" = "Доступные"; +"settings.results.many" = "%lu результатов"; +"settings.results.one" = "%lu результат"; +"settings.search.placeholder" = "Поиск по настройкам"; +"settings.title" = "Настройки RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "Иконка кнопки действий"; +"Adds a copy option to the comment long-press menu" = "Добавляет команду копирования в контекстное меню комментария"; +"Adds a download button next to share/save on the reels audio page" = "Добавляет кнопку скачивания рядом с поделиться/сохранить на странице аудио в reels"; +"Adds download, copy and expand options to GIF and image comments" = "Добавляет пункты скачивания, копирования и развёртывания для GIF и изображений в комментариях"; +"Allow video in photo sticker" = "Разрешить видео в фото‑стикере"; +"Alternate icons are not supported" = "Альтернативные значки не поддерживаются"; +"Anonymous live viewing" = "Анонимный просмотр трансляций"; +"App Icon" = "Значок приложения"; +"Audio page" = "Страница аудио"; +"Auto-reveals sensitive media" = "Автоматически показывает чувствительный контент"; +"Block surveys" = "Блокировать опросы"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "Блокирует heartbeat счётчика зрителей, чтобы трансляция не видела вас — вы также не увидите счётчик зрителей"; +"Browser" = "Браузер"; +"Change the app icon from the bundled icons" = "Изменить значок приложения из встроенных значков"; +"Choose Icon" = "Выбрать значок"; +"Choose which surfaces hide ads" = "Выберите, где скрывать рекламу"; +"Comments" = "Комментарии"; +"Commerce carousels in comments and shoppable CTAs on reels" = "Торговые карусели в комментариях и покупки в Reels"; +"Copy comment text" = "Копировать текст комментария"; +"Copy description" = "Копировать описание"; +"Long press a caption to copy its text" = "Удерживайте подпись, чтобы скопировать её текст"; +"Custom sticker colors" = "Свои цвета стикеров"; +"Custom colors aren't supported for this sticker" = "Свои цвета не поддерживаются для этого стикера"; +"Date format" = "Формат даты"; +"Disable app haptics" = "Отключить тактильную отдачу"; +"Disables haptics/vibrations within the app" = "Отключает тактильную отдачу и вибрацию в приложении"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "Отключает Liquid Glass для аккаунтов, где он включён по умолчанию. Переопределяет параметры выше"; +"Do not save recent searches" = "Не сохранять недавние поиски"; +"Download GIF & image comments" = "Скачивать GIF и изображения в комментариях"; +"Download image" = "Скачать изображение"; +"Embed domain" = "Домен для предпросмотра"; +"Embed domain: %@" = "Домен для предпросмотра: %@"; +"Enable liquid glass buttons" = "Включить кнопки Liquid Glass"; +"Enable liquid glass surfaces" = "Включить поверхности Liquid Glass"; +"Enable teen app icons" = "Включить teen-иконки приложения"; +"Enables experimental liquid glass buttons" = "Включает экспериментальные кнопки Liquid Glass"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "Активирует эффект Liquid Glass у панели вкладок, плавающей навигации и прочих элементов интерфейса"; +"End" = "Конец"; +"Experimental features" = "Экспериментальные функции"; +"Explore & search" = "Интересное и поиск"; +"Failed to change icon" = "Не удалось изменить значок"; +"Fixed" = "Зафиксировано"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "«Зафиксировано» предотвращает уменьшение. «Скрывать» делает панель невидимой при прокрутке вниз"; +"Focus/distractions" = "Фокус/отвлечения"; +"Force liquid glass off" = "Принудительно отключить Liquid Glass"; +"Force progressive blur" = "Принудительное прогрессивное размытие"; +"General" = "Общие"; +"Gradient color" = "Градиент"; +"Hide ads" = "Скрыть рекламу"; +"Hide explore posts grid" = "Скрыть сетку постов в Explore"; +"Hide friends map" = "Скрыть карту друзей"; +"Hide Meta AI" = "Скрыть Meta AI"; +"Hide metrics" = "Скрыть метрики"; +"Hide notes tray" = "Скрыть панель заметок"; +"Hide on scroll" = "Скрывать при прокрутке"; +"Hide TestFlight popup" = "Скрыть окно TestFlight"; +"Hide trending searches" = "Скрыть популярные запросы"; +"Hide UI on capture" = "Скрыть интерфейс при захвате"; +"Removes suggested accounts to follow outside the feed" = "Убирает рекомендованные аккаунты вне ленты"; +"Hides like/comment/share counts on posts and reels" = "Прячет числа лайков, комментариев и репостов на публикациях и рилсах"; +"Removes the friends map icon from the notes tray" = "Убирает значок карты друзей из панели заметок"; +"Removes the suggested posts grid on the explore tab" = "Убирает сетку рекомендованных публикаций во вкладке «Интересное»"; +"Strips the Meta AI buttons and entry points from the app" = "Удаляет кнопки и точки входа Meta AI из приложения"; +"Hides the notes tray in the DM inbox" = "Прячет ленту заметок во входящих личных сообщениях"; +"Removes suggested broadcast channels from your inbox" = "Убирает рекомендованные каналы трансляций из папки сообщений"; +"Hide DM search suggestions" = "Скрыть подсказки в поиске сообщений"; +"Removes suggested accounts and channels from direct message search" = "Убирает рекомендуемые аккаунты и каналы из поиска в личных сообщениях"; +"Removes trending searches under the explore search bar" = "Убирает популярные запросы под строкой поиска «Интересное»"; +"Hold down on the Instagram logo to change the app icon" = "Зажмите логотип Instagram, чтобы поменять иконку приложения"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "Сохраняет размытие края прокрутки iOS 26 видимым, не давая ему исчезнуть"; +"Lets the photo sticker picker show videos too, not just photos" = "Позволяет в галерее фото‑стикера показывать также видео, а не только фото"; +"Liquid glass tab bar" = "Панель вкладок Liquid Glass"; +"Live" = "Прямые трансляции"; +"Hold the eyedropper in stories to pick an exact text color" = "Удерживайте пипетку в историях, чтобы выбрать точный цвет текста"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "Зажмите цветовое колесо в редакторе стикеров, чтобы выбрать любой сплошной цвет или градиент"; +"Long-press the heart button in a live to hide or show the comments" = "Удерживайте кнопку сердца в прямой трансляции, чтобы скрыть или показать комментарии"; +"Long-press the search tab to open a copied Instagram link" = "Удерживайте вкладку поиска, чтобы открыть скопированную ссылку Instagram"; +"Master switch. When off, all per-surface toggles below are ignored." = "Главный переключатель. Когда выключен, все переключатели ниже игнорируются."; +"No suggested chats" = "Без рекомендуемых чатов"; +"No suggested users" = "Без рекомендуемых пользователей"; +"Notes" = "Заметки"; +"Open app icon picker" = "Открыть выбор иконки приложения"; +"Open link from clipboard" = "Открыть ссылку из буфера обмена"; +"Open links in external browser" = "Открывать ссылки во внешнем браузере"; +"Opens links in Safari instead of Instagram's in-app browser" = "Открывает ссылки в Safari, минуя встроенный браузер Instagram"; +"Privacy" = "Конфиденциальность"; +"Removes ads across enabled surfaces" = "Убирает рекламу во включённых разделах"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "Вычищает igsh, utm_source и прочие отслеживающие параметры из пересылаемых ссылок"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "Вырезает из ссылок трекинговые обёртки Instagram (l.instagram.com) и параметры UTM и fbclid"; +"Replace domain in shared links" = "Заменять домен в общих ссылках"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "Заменяет относительные отметки времени IG (\"3d ago\") собственным форматом. Разделы, где это работает, отмечаются внутри окна выбора."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "Меняет в скопированных и отправляемых ссылках домен на пригодный для встраивания, чтобы предпросмотр работал в Discord, Telegram и подобных"; +"Stops search bars from saving your recent searches" = "Запрещает строкам поиска сохранять недавние запросы"; +"Selected" = "Выбрано"; +"Sharing" = "Поделиться"; +"Shopping" = "Покупки"; +"Skip sensitive content covers" = "Пропускать предупреждения о чувствительном контенте"; +"Solid color" = "Сплошной цвет"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "Спонсируемые публикации в основной, контекстной, видео- и связанной ленте"; +"Sponsored posts on the explore grid" = "Спонсируемые публикации в сетке «Интересное»"; +"Stops Instagram's in-app surveys and feedback prompts" = "Отключает опросы и запросы отзывов внутри Instagram"; +"Sponsored reels in the sundial feed" = "Спонсируемые Reels в ленте Reels"; +"Start" = "Начало"; +"Story ads and sponsored entries in the story tray" = "Реклама в историях и спонсируемые записи в ленте историй"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "Значки статистики на публикациях и реилс в поиске и интересном. Откройте «Детали карточки», чтобы выбрать показываемую статистику, изменить порядок и применить."; +"Strip tracking from links" = "Удалять трекинг из ссылок"; +"Strip tracking params" = "Удалять параметры отслеживания"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "Подавляет уведомление \"It's time to update Instagram Beta\""; +"Tap to apply" = "Нажмите, чтобы применить"; +"The selected icon will be saved and shown here the next time you open this page." = "Выбранный значок будет сохранён и показан здесь при следующем открытии этой страницы."; +"Toggle live comments" = "Переключить комментарии прямой трансляции"; +"Use detailed color picker" = "Использовать подробный выбор цвета"; +"Used across feed, stories, reels, and DMs." = "Используется в ленте, историях, роликах и ЛС"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld дн. назад"; +"%ld days ago" = "%ld дн. назад"; +"%ld hour ago" = "%ld ч. назад"; +"%ld hours ago" = "%ld ч. назад"; +"%ld minute ago" = "%ld мин. назад"; +"%ld minutes ago" = "%ld мин. назад"; +"%ld week ago" = "%ld нед. назад"; +"%ld weeks ago" = "%ld нед. назад"; +"%ldd" = "%ldд"; +"%ldh" = "%ldч"; +"%ldm" = "%ldм"; +"%ldw" = "%ldн"; +"Always ask" = "Всегда спрашивать"; +"Balanced" = "Сбалансированный"; +"Block all" = "Блокировать всё"; +"Block selected" = "Блокировать выбранное"; +"Button" = "Кнопка"; +"Date format — %@" = "Формат даты — %@"; +"Default" = "По умолчанию"; +"Disabled" = "Выключено"; +"Download and share" = "Скачать и поделиться"; +"Download to Photos" = "Скачать в Фото"; +"Save with music" = "Сохранить с музыкой"; +"Gallery with music" = "В галерею с музыкой"; +"Save image (no music)" = "Сохранить изображение (без музыки)"; +"Gallery image (no music)" = "В галерею изображение (без музыки)"; +"Photo with music" = "Фото с музыкой"; +"Enabled" = "Включено"; +"Expand" = "Развернуть"; +"Explore" = "Обзор"; +"Fast" = "Быстро"; +"Feed" = "Лента"; +"Feed posts" = "Публикации в ленте"; +"High" = "Высокое"; +"Inbox" = "Входящие"; +"just now" = "только что"; +"Low" = "Низкое"; +"Max" = "Макс"; +"Medium" = "Среднее"; +"Mute/Unmute" = "Звук вкл./выкл."; +"Notes, comments, stories" = "Заметки, комментарии, истории"; +"now" = "сейчас"; +"Open menu" = "Открыть меню"; +"Pause/Play" = "Пауза/воспроизведение"; +"Profile" = "Профиль"; +"Quality" = "Качество"; +"Reels" = "Рилсы"; +"Requires restart" = "Требуется перезапуск"; +"Save to Photos" = "Сохранить в Фото"; +"Share sheet" = "Меню \"Поделиться\""; +"Standard" = "Стандартный"; +"Toggle" = "Переключатель"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "Лента-сетка"; +"Browse your home feed as a grid of posts" = "Просматривайте главную ленту в виде сетки публикаций"; +"Hide stories in grid" = "Скрыть истории в сетке"; +"Taller cells" = "Более высокие ячейки"; +"Portrait tiles instead of squares" = "Вертикальные плитки вместо квадратов"; +"Open post" = "Открыть публикацию"; +"View profile" = "Открыть профиль"; +"Like" = "Нравится"; +"Liked" = "Отметка «Нравится» поставлена"; +"Unlike" = "Убрать отметку «Нравится»"; +"Unliked" = "Отметка «Нравится» убрана"; +"Followed" = "Вы подписались"; +"Unfollowed" = "Вы отписались"; +"Couldn't update like" = "Не удалось обновить отметку «Нравится»"; +"Couldn't update follow" = "Не удалось обновить подписку"; +"Follow status" = "Статус подписки"; +"Shares" = "Пересылки"; +"Relative" = "Относительная"; +"Date and time" = "Дата и время"; +"You're all caught up" = "Вы всё просмотрели"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "Заменяет главную ленту сеткой публикаций. Переключение на ленту Instagram не выключает функцию и сразу возвращает ленту. Сведите пальцы, чтобы изменить число столбцов, и коснитесь публикации, чтобы открыть её. Переключатель «Для вас» / «Подписки» остаётся синхронным с главной лентой."; +"Switch button" = "Кнопка переключения"; +"Hold the heart button" = "Долгое нажатие на сердечко"; +"Floating button" = "Плавающая кнопка"; +"How to switch" = "Способ переключения"; +"Hold the heart in Instagram's header" = "Долгое нажатие на сердечко в шапке Instagram"; +"A small round button on the feed" = "Небольшая круглая кнопка на ленте"; +"Button position" = "Положение кнопки"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "Перетащите кнопку куда хотите. Затемнённые полосы — шапка и панель вкладок Instagram."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "Переключает между сеткой и лентой Instagram, не выключая сетку. При «Выкл.» остаётся только ярлык на главной панели."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "Кнопка никогда не оказывается под шапкой или панелью вкладок. Удерживайте её в ленте, чтобы вернуться сюда."; +"Live preview" = "Живой предпросмотр"; +"Columns" = "Столбцы"; +"Post info" = "Информация о публикации"; +"Reorder and toggle stats on each tile" = "Изменение порядка и вкл./выкл. статистики на каждой плитке"; +"Info on each post" = "Информация на каждой публикации"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "Включайте или отключайте каждый элемент. Перетаскивайте маркер ≡, чтобы изменить порядок их наложения на плитке."; +"Show avatar" = "Показывать аватар"; +"Media type badge" = "Значок типа медиа"; +"Restores the default post info, order and options for the grid feed." = "Восстанавливает информацию о публикациях, порядок и параметры по умолчанию для сетки ленты."; +"Views" = "Просмотры"; +"Action button" = "Кнопка действий"; +"Adds 'Profile picture' to story tray long-press menus" = "Добавляет пункт \"Фото профиля\" в меню удержания панели историй"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Помещает кнопку действий RyukGram под каждой публикацией ленты с командами загрузка/поделиться/копировать/развернуть/репост. Обычное касание раскрывает меню; настроить реакцию на касание можно ниже."; +"Choose Instagram's default feed or force the Following feed" = "Выберите ленту Instagram по умолчанию или принудительно используйте ленту Подписки"; +"Main feed" = "Главная лента"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "Определяет, в какой момент и каким образом обновляется лента. Фоновое обновление происходит при возврате в приложение спустя примерно 10 минут. Обновление через Home происходит при касании вкладки Home, когда она уже открыта."; +"Confirm feed refresh" = "Подтверждать обновление ленты"; +"Shows an alert before a pull-to-refresh reloads the feed" = "Показывает предупреждение перед тем, как обновление жестом перезагрузит ленту"; +"Refresh stories only" = "Обновлять только истории"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "Обновление жестом перезагружает панель историй, не обновляя ленту"; +"Refresh feed?" = "Обновить ленту?"; +"Default tap action" = "Действие по нажатию"; +"Disable background refresh" = "Отключить фоновое обновление"; +"Disable home button refresh" = "Отключить обновление кнопкой Home"; +"Disable home button scroll" = "Отключить прокрутку кнопкой Home"; +"Disable video autoplay" = "Отключить автовоспроизведение видео"; +"Hide" = "Скрыть"; +"Hide entire feed" = "Скрыть всю ленту"; +"Hide repost button" = "Скрыть кнопку репоста"; +"Hide stories tray" = "Скрыть панель историй"; +"Hide suggested stories" = "Скрыть рекомендуемые истории"; +"Hide story highlights" = "Скрыть актуальное из историй"; +"Removes resurfaced highlights from the stories tray in feed" = "Убирает повторно появляющееся актуальное из ленты историй"; +"Hides suggested accounts" = "Скрывает рекомендуемые аккаунты"; +"Hides suggested reels" = "Скрывает рекомендуемые рилсы"; +"Hides suggested threads posts" = "Скрывает рекомендуемые посты Threads"; +"Hides the repost button on feed posts" = "Прячет кнопку репоста на публикациях ленты"; +"Hides the story tray at the top" = "Прячет верхнюю ленту историй"; +"Inserts a button row below like/comment/share on each post" = "Ставит ряд кнопок под лайком, комментарием и репостом у каждой публикации"; +"Long press on media to expand in full-screen viewer" = "Долгое нажатие на медиа раскрывает его в полноэкранном просмотрщике"; +"Start media muted" = "Запускать медиа без звука"; +"Expanded videos open with sound off" = "Развёрнутые видео открываются без звука"; +"Enhanced media resolution" = "Улучшенное разрешение медиа"; +"Media saving" = "Сохранение медиа"; +"Spoof device profile so IG serves higher-quality images" = "Подменяет профиль устройства, чтобы IG отдавал изображения высшего качества"; +"Media" = "Медиа"; +"Media zoom" = "Увеличение медиа"; +"No suggested for you" = "Без рекомендаций для вас"; +"No suggested posts" = "Без рекомендуемых постов"; +"No suggested reels" = "Без рекомендуемых рилсов"; +"No suggested threads" = "Без рекомендуемых Threads"; +"Prevents feed from reloading when returning from background" = "Мешает ленте перезагружаться при возвращении из фонового режима"; +"Prevents videos from playing automatically" = "Не даёт видео воспроизводиться автоматически"; +"Refresh" = "Обновление"; +"Removes all content from your home feed" = "Полностью очищает вашу домашнюю ленту от содержимого"; +"Removes suggested accounts from the stories tray" = "Убирает рекомендованные аккаунты из ленты историй"; +"Removes suggested posts" = "Убирает рекомендуемые посты"; +"Scroll to top without refreshing when tapping Home" = "Прокрутка к началу без обновления при касании Home"; +"Show action button" = "Показывать кнопку действий"; +"Show date" = "Показывать дату"; +"Stories tray" = "Панель историй"; +"Tapping Home does nothing when already on feed" = "Касание Home бездействует, когда лента уже открыта"; +"Tray long-press actions" = "Действия удержания на панели"; +"Composer doesn't accept GIFs" = "Поле комментария не принимает GIF"; +"Copy GIF link" = "Копировать ссылку GIF"; +"Copy image link" = "Копировать ссылку на изображение"; +"Custom GIF in comments" = "Свой GIF в комментариях"; +"Favorite GIFs" = "Избранные GIF"; +"Long-press a GIF in the picker to pin it — favorites show first" = "Удерживайте GIF в подборщике, чтобы закрепить его — избранные показываются первыми"; +"Added to favorites" = "Добавлено в избранное"; +"Removed from favorites" = "Удалено из избранного"; +"Favorite GIF unavailable" = "Избранный GIF недоступен"; +"This GIF may have been removed. Long-press it to unfavorite." = "Возможно, этот GIF был удалён. Нажмите и удерживайте, чтобы убрать из избранного."; +"Failed to build GIF model" = "Не удалось создать модель GIF"; +"GIF link copied" = "Ссылка GIF скопирована"; +"Image" = "Изображение"; +"Image link copied" = "Ссылка на изображение скопирована"; +"Invalid Giphy URL" = "Неверная ссылка Giphy"; +"Long-press the GIF button to paste any Giphy URL" = "Удерживайте кнопку GIF, чтобы вставить любую ссылку Giphy"; +"Paste Giphy Link" = "Вставить ссылку Giphy"; +"Paste a giphy.com URL or media ID" = "Вставьте ссылку giphy.com или ID медиа"; +"Send" = "Отправить"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Помещает кнопку действий RyukGram над боковой панелью рилса с командами обложка/загрузка/поделиться/копировать/развернуть/репост. Обычное касание раскрывает меню; настроить реакцию на касание можно ниже."; +"Always show progress scrubber" = "Всегда показывать полосу прогресса"; +"Auto-scroll reels" = "Автопрокрутка рилсов"; +"Speed, seek and auto-scroll controls" = "Управление скоростью, перемоткой и автопрокруткой"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "Включённые элементы появляются при удержании кнопки ⋯ или аудио на Reels."; +"Seek controls" = "Перемотка"; +"Auto-scroll control" = "Управление автопрокруткой"; +"Seek" = "Перемотка"; +"Custom seek step" = "Свой шаг перемотки"; +"Enter the number of seconds to skip" = "Введите число секунд для перемотки"; +"Set what a tap on a reel does" = "Задаёт действие по нажатию на reel"; +"Confirm reel refresh" = "Подтверждать обновление рилсов"; +"Custom speed" = "Своя скорость"; +"Disable auto-unmuting reels" = "Отключить авто-включение звука в рилсах"; +"Disable scrolling reels" = "Отключить прокрутку рилсов"; +"Disable tab button refresh" = "Отключить обновление кнопкой вкладки"; +"Doom scrolling limit" = "Лимит doomscrolling"; +"e.g. 1.75" = "напр. 1.75"; +"Enter a value between 0.5 and 2.0" = "Введите значение от 0.5 до 2.0"; +"Keeps the progress bar visible on every reel" = "Всегда показывает полосу прогресса на каждом reel"; +"Hide \"Made with Edits\" badge" = "Скрыть значок «Made with Edits»"; +"Hide friends avatars" = "Скрыть аватары друзей"; +"Hide reels header" = "Скрыть заголовок рилсов"; +"Hide social context overlay" = "Скрыть плавающий социальный контекст"; +"Hides the avatar bubbles next to the Friends tab in reels" = "Скрывает аватары рядом с вкладкой «Друзья» в рилсах"; +"Hides the Edits app promo pill on reels" = "Скрывает рекламную плашку приложения Edits в рилсах"; +"Hides the floating overlay showing who reposted or commented on reels" = "Скрывает плавающую панель с информацией о том, кто репостнул или прокомментировал рилс"; +"Hides the repost button on the reels sidebar" = "Прячет кнопку репоста на боковой панели рилсов"; +"Drops the top bar while you watch reels" = "Скрывает верхнюю панель при просмотре reels"; +"Hiding" = "Скрытие"; +"IG default" = "IG по умолчанию"; +"Limits" = "Ограничения"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "Ограничивает число reels подряд и блокирует обновление"; +"Only loads %@ %@" = "Загружает только %@ %@"; +"Places a button above the like/comment/share column on each reel" = "Ставит кнопку над столбцом лайк/комментарий/репост на каждом рилсе"; +"Playback speed" = "Скорость воспроизведения"; +"Prevent doom scrolling" = "Предотвратить doomscrolling"; +"Engagement filter" = "Фильтр вовлечённости"; +"Hide reels below a like, comment, view or repost count" = "Скрывает reels с числом лайков, комментариев, просмотров или репостов ниже заданного"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "Скрывает reels, не достигшие каждого заданного минимума. Reels, у которых автор скрыл счётчики, проходят, если вы не скрываете и их."; +"Filter reels by engagement" = "Фильтровать reels по вовлечённости"; +"Hide reels with hidden stats" = "Скрывать reels со скрытой статистикой"; +"Only filter the Reels tab" = "Фильтровать только вкладку Reels"; +"Reels you open from a post, profile or share are never filtered" = "Reels, открытые из поста, профиля или по ссылке, не фильтруются"; +"Minimums" = "Минимумы"; +"Minimum likes" = "Минимум лайков"; +"Minimum comments" = "Минимум комментариев"; +"Minimum views" = "Минимум просмотров"; +"Minimum reposts" = "Минимум репостов"; +"Reels below this count are hidden. 0 turns this limit off." = "Reels ниже этого числа скрываются. 0 отключает этот лимит."; +"Turns the filter off and clears every minimum." = "Выключает фильтр и сбрасывает все минимумы."; +"Locks a reel in place so it never scrolls to the next one" = "Фиксирует reel на месте, чтобы он не переходил к следующему"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "Не даёт reels включать звук при нажатии кнопки громкости или переключателя звонка"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Запрашивает подтверждение перед обновлением ленты reels"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "Показывает кнопки для раскрытия и автоподстановки пароля на закрытых рилсах"; +"Same as general format" = "Как в общем формате"; +"Shows the repost date on the \"reposted this reel\" header." = "Показывает дату репоста в заголовке «репостнул этот reel»."; +"Reposts" = "Репосты"; +"Swipe a reel left to open the author's profile" = "Свайпните рилс влево, чтобы открыть профиль автора"; +"Swipe left to profile" = "Свайп влево к профилю"; +"Tap Controls" = "Управление нажатием"; +"Tap to mute on photo reels" = "Нажмите для отключения звука в фото-Reels"; +"Tapping the Reels tab while on reels does nothing" = "Касание вкладки Reels бездействует, когда рилсы уже открыты"; +"Unlock password-locked reels" = "Разблокировать рилсы с паролем"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "Когда режим паузы включён, нажатие на фото-Reels переключает звук вместо стандартной паузы"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "Добавляет кнопку для фильтрации и сортировки любого списка подписчиков/подписок. Сбрасывается при выходе."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "Добавляет в контекстное меню актуального команду, открывающую обложку на весь экран"; +"Applying restarts Instagram to load your changes." = "Применение перезапустит Instagram для загрузки изменений."; +"Card details" = "Детали карточки"; +"Comment count" = "Число комментариев"; +"Copy note on long press" = "Копировать заметку по удержанию"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "Дополнительная статистика на каждой карточке публикации и Reels в сетке профиля — выберите нужные, измените порядок и примените."; +"Fake follower count" = "Поддельное число подписчиков"; +"Fake following count" = "Поддельное число подписок"; +"Fake post count" = "Поддельное число публикаций"; +"Fake profile stats" = "Поддельная статистика профиля"; +"Fake verified badge" = "Поддельная галочка"; +"Fetch missing counts" = "Запросить недостающие счётчики"; +"Filter & sort lists" = "Фильтровать и сортировать списки"; +"Follow indicator" = "Индикатор подписки"; +"Follower & following lists" = "Списки подписчиков и подписок"; +"Follower count" = "Число подписчиков"; +"Following count" = "Число подписок"; +"Like count" = "Число отметок «Нравится»"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "Долгое нажатие на фото профиля открывает его на весь экран с масштабированием, отправкой и сохранением"; +"Long press the note bubble on a profile to copy the text" = "Долгое нажатие на облачко заметки в профиле копирует её текст"; +"Long press to download directly (ignored when zoom is on)" = "Долгое нажатие запускает загрузку напрямую (не действует при включённом масштабировании)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "Жесты удержания на элементах профиля — вынесены отдельно от кнопок действий конкретных функций."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "Главный переключатель для всей статистики карточки. Запрос недостающих счётчиков использует API Instagram и может достичь лимитов запросов."; +"Only affects your own profile header. Other users see the real numbers." = "Влияет только на заголовок вашего собственного профиля. Другие пользователи видят реальные числа."; +"Post count" = "Число публикаций"; +"Profile card details" = "Детали карточки профиля"; +"Profile stats" = "Статистика профиля"; +"Repost count" = "Число репостов"; +"Restores the default stats, order, and options for profile card details." = "Восстанавливает статистику, порядок и параметры по умолчанию для деталей карточки профиля."; +"Restores the default stats, order, and options for search & explore card details." = "Восстанавливает статистику, порядок и параметры по умолчанию для деталей карточек в поиске и интересном."; +"Save profile picture" = "Сохранить фото профиля"; +"Search & Explore" = "Поиск и интересное"; +"Share count" = "Число пересылок"; +"Short numbers" = "Сокращённые числа"; +"Show a checkmark next to your name on your own profile" = "Показывать галочку рядом с вашим именем в вашем профиле"; +"Show card details" = "Показывать детали карточки"; +"Show full follower count" = "Показывать полное число подписчиков"; +"Show full post count" = "Показывать полное число публикаций"; +"Show the custom number set below" = "Показывает заданное ниже число"; +"Show the exact number instead of a shortened one" = "Показывает точное число вместо сокращённого"; +"Shows whether the profile user follows you" = "Сообщает, подписан ли владелец профиля на вас"; +"Tap to set" = "Нажмите, чтобы задать"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "Включайте или отключайте каждую метрику. Перетаскивайте маркер ≡, чтобы изменить порядок их наложения на карточке."; +"Upload date" = "Дата публикации"; +"View count" = "Число просмотров"; +"View highlight cover" = "Посмотреть обложку хайлайта"; +"Views, likes, comments, shares, reposts, date" = "Просмотры, отметки «Нравится», комментарии, пересылки, репосты, дата"; +"Zoom profile photo" = "Увеличение фото профиля"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "Активные, в очереди и завершённые загрузки"; +"Auto-retry attempts" = "Попытки автоповтора"; +"Auto-retry failed downloads" = "Автоповтор неудачных загрузок"; +"Confirm before download" = "Подтверждать перед скачиванием"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "Устаревшая функция. Теперь медиа скачиваются через кнопку действий RyukGram, которая настраивается отдельно в разделах Лента/Рилсы/Истории. Включайте этот общий тумблер, только если вам ближе прежний жест удержания несколькими пальцами прямо на медиа."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "Не приостанавливать загрузки, кодирование и сканирование профилей при выходе из приложения"; +"Download queue" = "Очередь загрузок"; +"Downloads" = "Загрузки"; +"Downloads with %@ %@" = "Скачивает с %@ %@"; +"Enable long-press gesture" = "Включить жест долгого нажатия"; +"Finger count for long-press" = "Количество пальцев для удержания"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "Сколько загрузок выполняется одновременно — лишние ждут в очереди и запускаются по мере освобождения слотов. Неудачные загрузки повторяются автоматически при сетевых ошибках. Откройте менеджер, чтобы наблюдать, отменять или повторять загрузки."; +"Keep running in background" = "Продолжать работу в фоне"; +"Legacy long-press gesture" = "Старый жест долгого нажатия"; +"Long-press hold time" = "Длительность удержания"; +"Master toggle for the deprecated gesture workflow (off by default)" = "Общий тумблер устаревшего сценария с жестом (изначально отключён)"; +"Max simultaneous downloads" = "Макс. одновременных загрузок"; +"Open download manager" = "Открыть менеджер загрузок"; +"Press finger(s) for %@ %@" = "Нажмите %@ %@ пальцем(ами)"; +"Retry automatically when a download drops on a network error" = "Повторять автоматически, когда загрузка обрывается из-за сетевой ошибки"; +"Route saves into a custom album in Photos instead of the camera roll root" = "Сохранять в отдельный альбом в Фото вместо корня медиатеки"; +"Run up to %@ %@ at once" = "Запускать до %@ %@ одновременно"; +"Save action" = "Действие после сохранения"; +"Save to dedicated album" = "Сохранять в отдельный альбом"; +"Show a confirmation dialog before starting a download" = "Спрашивать подтверждение до начала загрузки"; +"Try %@ more %@ before giving up" = "Попробовать ещё %@ %@ перед отказом"; +"What happens after the gesture downloads" = "Что следует после загрузки жестом"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "Когда «Сохранять в отдельный альбом» включено, загрузки и выбор «Сохранить в Фото» из меню «Поделиться» направляются в именованный альбом вашей медиатеки «Фото». Нажмите «Название альбома», чтобы изменить его."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "осталось %@"; +"%@ of %@" = "%1$@ из %2$@"; +"%@/s" = "%@/с"; +"%dh" = "%dч"; +"%dm" = "%dм"; +"%ds" = "%dс"; +"%ld downloading" = "Загружается: %ld"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld ещё выполняются — они будут остановлены. Уже сохранённые файлы останутся."; +"%lu failed" = "%lu с ошибкой"; +"%lu of %lu done" = "%lu из %lu готово"; +"%lu saved, %lu failed" = "%lu сохранено, %lu с ошибкой"; +"12 hours" = "12 часов"; +"1s" = "1с"; +"24 hours" = "24 часа"; +"48 hours" = "48 часов"; +"Active" = "Активные"; +"Auto-retry" = "Автоповтор"; +"Clear completed" = "Очистить завершённые"; +"Clear download history" = "Очистить историю загрузок"; +"Clear download history?" = "Очистить историю загрузок?"; +"Completed" = "Завершено"; +"Don't keep" = "Не хранить"; +"Download history" = "История загрузок"; +"Download settings" = "Настройки загрузки"; +"Downloading %lu items" = "Загрузка %lu объектов"; +"Downloading…" = "Загрузка…"; +"Empty the manager's list of past downloads" = "Очистить список прошлых загрузок в менеджере"; +"Encoding %d%%" = "Кодирование %d%%"; +"Encoding…" = "Кодирование…"; +"Extra downloads wait in line and start as slots free up." = "Лишние загрузки ждут в очереди и запускаются по мере освобождения слотов."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "Как долго завершённые, неудачные и отменённые загрузки остаются в менеджере после закрытия приложения. Сами файлы не трогаются — только список."; +"How long past downloads stay listed in the manager" = "Как долго прошлые загрузки остаются в менеджере"; +"Keep history for" = "Хранить историю"; +"Media you download shows up here, with its progress and where it was saved." = "Загружаемые медиа появятся здесь: прогресс и место сохранения."; +"No downloads yet" = "Загрузок пока нет"; +"Preview" = "Предпросмотр"; +"Queued" = "В очереди"; +"Redownload" = "Загрузить заново"; +"Retry" = "Повторить"; +"Retrying…" = "Повтор…"; +"Stop" = "Остановить"; +"The files already saved are kept — this only empties the list." = "Уже сохранённые файлы останутся — очищается только список."; +"Waiting for a free slot" = "Ожидание свободного слота"; +"Waiting for connection…" = "Ожидание соединения…"; +"Waiting to retry" = "Ожидание повтора"; +"Waiting…" = "Ожидание…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "Расположить кнопки оверлея"; +"Overlay layout" = "Расположение оверлея"; +"Drag to position the buttons" = "Перетащите, чтобы разместить кнопки"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "Перетащите кнопки на историю. Затемнённая полоса — это панель ответа."; +"Send message" = "Отправить сообщение"; + +"Pinned" = "Закреплённые"; +"Search viewers" = "Поиск зрителей"; +"No matching viewers" = "Нет подходящих зрителей"; +"No viewers match these filters" = "Нет зрителей, соответствующих этим фильтрам"; +"Unavailable" = "Недоступно"; +"Default (recent first)" = "По умолчанию (сначала новые)"; +"%lu viewers" = "Зрителей: %lu"; +"Viewer pinned" = "Зритель закреплён"; +"Viewer unpinned" = "Зритель откреплён"; +"Pin a viewer" = "Закрепить зрителя"; +"Pin order" = "Порядок закрепления"; +"Pin this viewer?" = "Закрепить этого зрителя?"; +"Filter, sort & pin viewers" = "Фильтр, сортировка и закрепление зрителей"; +"Add by username, remove, reorder" = "Добавить по имени пользователя, удалить, изменить порядок"; +"Pinned viewers (%lu)" = "Закреплённые зрители (%lu)"; +"Viewers list" = "Список зрителей"; +"Settings are saved and reused next time." = "Настройки сохраняются и применяются в следующий раз."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "Отметьте несколько, чтобы объединить их. Закреплённые зрители всегда остаются вверху и игнорируют эти фильтры."; +"Pinned viewers" = "Закреплённые зрители"; +"Pin" = "Закрепить"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "Заменяет список «кто смотрел вашу историю» списком с поиском, фильтрами и сортировкой. Нажмите и удерживайте зрителя, чтобы закрепить его вверху. В любой момент можно вернуться к стандартному списку."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "Имя пользователя или сырой PK. Закреплённые зрители всегда остаются вверху списка зрителей вашей истории."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "Помещает кнопку действий RyukGram возле кнопки-глаза в историях с командами загрузка/поделиться/копировать/развернуть/репост/упоминания. Обычное касание раскрывает меню; настроить реакцию на касание можно ниже."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "Помещает кнопку динамика поверх истории для включения и отключения звука. Доступна и в меню из трёх точек"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "Добавляет кнопку глаза в интерфейс историй. Если выключено, блокировка просмотров остаётся включённой, но без кнопки"; +"Advance on story like" = "Переходить дальше после лайка истории"; +"Advance on story reply" = "Переходить дальше после ответа на историю"; +"Advance when marking as seen" = "Переходить дальше при отметке как просмотренной"; +"Audio" = "Аудио"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "Блокировать все: под запретом любые истории, а перечисленные пользователи — исключения.\nБлокировать выбранные: под запретом только перечисленные пользователи, остальные показываются как обычно.\nСписки хранятся раздельно."; +"Blocking mode" = "Режим блокировки"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "Кнопка = одним касанием помечает просмотренным. Переключатель = касание включает или отключает отметки о просмотре историй (при включении глаз заливается синим)"; +"Marked-seen indicator" = "Индикатор отмеченных просмотренными"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "Запоминает на 48 часов истории, отмеченные просмотренными, и скрывает или закрашивает на них кнопку глаза"; +"Hide eye button" = "Скрыть кнопку глаза"; +"Fill eye button green" = "Закрасить кнопку глаза зелёным"; +"Disable story seen receipt" = "Отключить уведомления о просмотре историй"; +"Enable story user list" = "Включить список пользователей историй"; +"Stops others from seeing that you viewed their story" = "Скрывает от других, что вы посмотрели их историю"; +"Inserts a button next to the seen/eye button on story overlays" = "Ставит кнопку рядом с кнопкой просмотра-глаза поверх историй"; +"Keep stories visually seen locally" = "Помечать истории просмотренными только локально"; +"Liking a story automatically advances to the next one after a short delay" = "Лайк истории через небольшую паузу сам ведёт к следующей"; +"Manage list" = "Управлять списком"; +"Manage list (%lu)" = "Управлять списком (%lu)"; +"Manual seen button mode" = "Режим ручной кнопки просмотра"; +"Mark seen on story like" = "Отмечать как просмотренное при лайке истории"; +"Mark seen on story reply" = "Отмечать как просмотренное при ответе на историю"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "Помечает историю просмотренной сразу при касании сердечка, даже когда блокировка просмотров активна"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "Помечает историю просмотренной при отправке ответа или эмодзи-реакции, даже когда блокировка просмотров активна"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "Помечает истории просмотренными только у вас (серый ободок), продолжая скрывать отметку о просмотре на сервере"; +"Master toggle. When off, the list is ignored" = "Общий тумблер. В отключённом состоянии список не учитывается"; +"Playback" = "Воспроизведение"; +"Search, sort, swipe to remove" = "Поиск, сортировка, свайп для удаления"; +"Seen receipts" = "Уведомления о просмотре"; +"Sending a reply or emoji reaction automatically advances to the next story" = "Ответ или эмодзи-реакция автоматически ведёт к следующей истории"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "Добавляет пункт «Показать упоминания» в меню кнопки действий и в меню истории с тремя точками"; +"Mentions overlay button" = "Кнопка упоминаний поверх истории"; +"Mentions count badge" = "Значок количества упоминаний"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "Добавляет кнопку рядом с кнопкой действия/глаза на оверлее истории. Появляется только если в текущей истории есть упоминания или прикреплённые посты/рилсы"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "Показывает количество уникальных упомянутых аккаунтов красным значком на кнопке"; +"Hide stories midcards" = "Скрыть промокарты в историях"; +"Removes the Trending and Music promo cards from the stories tray" = "Удаляет промокарты «Тренды» и «Музыка» из ленты историй"; +"Stickers" = "Стикеры"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "Смотрите результаты опросов/викторин/слайдера до взаимодействия — вы по-прежнему можете нажать для голосования. «Принудительно добавить устаревшие» возвращает стикеры викторины и «Раскрыть» в редактор истории."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "Смотрите результаты опросов/викторин/слайдера в reels до взаимодействия — вы по-прежнему можете нажать для голосования."; +"Force legacy stickers in tray" = "Принудительно добавить устаревшие стикеры"; +"Adds Quiz and Reveal stickers back to the picker" = "Возвращает стикеры викторины и «Раскрыть» в выбор стикеров"; +"Bypass Reveal sticker" = "Обход стикера «Раскрыть»"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "Пропускает отправку сообщения для раскрытия историй со стикером «Раскрыть»"; +"Show quiz answer" = "Показывать ответ викторины"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "Обводит правильный вариант в викторине или лидирующий в опросе"; +"Show poll vote counts" = "Показывать количество голосов опроса"; +"Show vote tallies on poll options and slider count/average before you vote" = "Показывает число голосов по вариантам опроса и среднее/количество слайдера до голосования"; +"Stop story auto-advance" = "Остановить авто-переход историй"; +"Stories" = "Истории"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "По окончании таймера истории не перескакивают на следующую сами. Переход выполняется касанием вручную"; +"Story audio toggle" = "Переключатель звука истории"; +"Story user list" = "Список пользователей истории"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "Касание кнопки-глаза для отметки истории просмотренной само переводит к следующей истории"; +"This will send a story view receipt." = "Будет отправлено уведомление о просмотре истории."; +"View story mentions" = "Посмотреть упоминания в истории"; +"Which stories get seen-receipt blocking" = "Для каких историй блокируются уведомления о просмотре"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "Точный статус активности"; +"Activity log" = "Журнал активности"; +"Loading…" = "Загрузка…"; +"Notify: %@ · Log: %@" = "Уведомл.: %@ · Журнал: %@"; +"Add by user ID" = "Добавить по ID пользователя"; +"Add by thread ID" = "Добавить по ID чата"; +"Adding…" = "Добавление…"; +"Browse activity, grouped by person" = "Просмотр активности по людям"; +"Clear activity log?" = "Очистить журнал активности?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "Пока нет активности.\nКогда кто-то прочитает ваше сообщение или выйдет в сеть, это появится здесь."; +"No one found. Check the spelling or try a different name." = "Никого не найдено. Проверьте написание или попробуйте другое имя."; +"Notify about someone" = "Уведомлять об одном человеке"; +"Open some chats first, or search a username above." = "Сначала откройте несколько чатов или найдите имя пользователя выше."; +"Pick what each person notifies you about" = "Выберите, о чём уведомляет каждый человек"; +"Recent in your DMs" = "Недавние в переписке"; +"Results" = "Результаты"; +"This removes all recorded activity on this device." = "Это удалит всю записанную активность на этом устройстве."; +"Active %ldd ago" = "Активность %ldd назад"; +"Active %ldh ago" = "Активность %ldh назад"; +"Active %ldm ago" = "Активность %ldm назад"; +"Activity notifications" = "Уведомления об активности"; +"Also track reads in group chats. Groups can be noisy" = "Также отслеживать прочтения в групповых чатах. Группы могут быть шумными"; +"Came online" = "Появился в сети"; +"Customise notifications" = "Настроить уведомления"; +"Everyone" = "Все"; +"Muted" = "Без звука"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "Пока никто не настроен. Удерживайте кого-нибудь в журнале активности, чтобы выбрать уведомления."; +"Online, offline, typing and read receipts, per person" = "В сети, не в сети, печатает и отметки о прочтении — для каждого"; +"Per-person notifications" = "Уведомления по людям"; +"Enable activity" = "Включить активность"; +"Track who reads your messages, comes online, goes offline or types" = "Отслеживайте, кто читает ваши сообщения, заходит, выходит или печатает"; +"For everyone" = "Для всех"; +"For this person" = "Для этого человека"; +"Log only" = "Только журнал"; +"Notify only" = "Только уведомление"; +"Notify + log" = "Уведомление + журнал"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "«Только журнал» сохраняет без звука. «Только уведомление» оповещает без записи. «Уведомление + журнал» делает и то, и другое."; +"Presence" = "Присутствие"; +"Read your message" = "Прочитал ваше сообщение"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "Обновляет присутствие каждые 20 с и убирает льготный период Instagram, чтобы зелёная точка гасла, как только человек выходит из сети."; +"Started typing" = "Начал печатать"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "Нажмите, чтобы изменить уведомления. Смахните, чтобы удалить и вернуться к настройкам по умолчанию."; +"These override the defaults for this person." = "Это переопределяет настройки по умолчанию для этого человека."; +"Went offline" = "Вышел из сети"; +"When someone becomes active" = "Когда кто-то становится активным"; +"When someone goes inactive" = "Когда кто-то становится неактивным"; +"When someone opens a message you sent" = "Когда кто-то открывает отправленное вами сообщение"; +"When someone starts typing to you" = "Когда кто-то начинает вам печатать"; +"is now active" = "сейчас в сети"; +"is typing…" = "печатает…"; +"went offline" = "вышел из сети"; +"Online" = "В сети"; +"Offline" = "Не в сети"; +"Typing" = "Печатает"; +"Filters" = "Фильтры"; +"Delete the selected records? This can't be undone." = "Удалить выбранные записи? Отменить это будет нельзя."; +"Delete all records for the selected chats? This can't be undone." = "Удалить все записи для выбранных чатов? Отменить это будет нельзя."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "Добавляет кнопку глаза в диалоги DM. Если выключено, блокировка уведомлений о прочтении остаётся включённой, но без кнопки"; +"Auto mark seen on interact" = "Авто-отметка при взаимодействии"; +"Auto mark seen on typing" = "Авто-отметка при наборе"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "Блокирует автоматическое уведомление о прочтении — отметка как просмотренное отправляется только когда вы сами выбираете"; +"Control when messages are marked as seen" = "Задаёт момент, в который сообщения помечаются прочитанными"; +"How the seen button behaves" = "Как работает кнопка просмотра"; +"Manually mark messages as seen" = "Вручную отмечать сообщения как просмотренные"; +"Mark as seen?" = "Отметить как просмотренное?"; +"Mark as viewed?" = "Отметить как просмотренное?"; +"Mark seen locally" = "Отмечать прочитанным локально"; +"Marks messages as seen when you reply, react or send media" = "Отмечает сообщения как просмотренные при ответе, реакции или отправке медиа"; +"Marks messages as seen when you start typing" = "Помечает сообщения прочитанными, как только вы начинаете набор текста"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "Открытые чаты выглядят прочитанными только на этом устройстве. Кнопка глаза остаётся оранжевой, пока отправитель не получил отметку о прочтении"; +"Read receipt mode" = "Режим уведомлений о прочтении"; +"Read receipts" = "Уведомления о прочтении"; +"Show seen button" = "Показывать кнопку просмотра"; +"This will send a read receipt for the latest messages." = "Будет отправлено уведомление о прочтении для последних сообщений."; +"This will send a view receipt for the current message." = "Будет отправлено уведомление о просмотре для текущего сообщения."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "Активность"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "Добавляет команду \"Скачать\" в контекстное меню голосовых сообщений для сохранения их в виде аудио M4A"; +"Allows typing and sending DMs longer than Instagram's limit" = "Позволяет вводить и отправлять сообщения длиннее лимита Instagram"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "Добавляет команду \"Отправить файл\" в меню с плюсом в личных сообщениях. Набор поддерживаемых форматов может ограничиваться самим Instagram"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "Добавляет команду \"Аудиофайл\" в меню с плюсом в личных сообщениях, чтобы пересылать аудиофайлы как голосовые"; +"Adds copy text, download GIF/audio to the note long-press menu" = "Добавляет в контекстное меню заметки копирование текста и загрузку GIF или аудио"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "Блокировать все: под запретом любые чаты, а перечисленные — исключения.\nБлокировать выбранные: под запретом только перечисленные чаты, остальные работают как обычно.\nСписки хранятся раздельно. Долгое нажатие на чат во входящих добавляет его или убирает."; +"Block keep-deleted for excluded chats" = "Блокировать keep-deleted для исключённых чатов"; +"Block keep-deleted for unlisted chats" = "Блокировать keep-deleted для чатов вне списка"; +"Bypass DM character limit" = "Обойти лимит символов в сообщениях"; +"Chat list" = "Список чатов"; +"Confirmation dialog before clearing preserved messages" = "Запрос подтверждения до удаления сохранённых сообщений"; +"Copies note text directly on long press without opening the menu" = "Долгое нажатие сразу копирует текст заметки, не разворачивая меню"; +"Copy text on hold" = "Копировать текст по удержанию"; +"Adds Background, Text and Emoji buttons to the note editor" = "Добавляет кнопки фона, текста и эмодзи в редактор заметки"; +"Custom note themes" = "Пользовательские темы заметок"; +"Disable vanish mode swipe" = "Отключить свайп для режима Vanish"; +"Disable typing status" = "Отключить статус набора"; +"Disable view-once limitations" = "Отключить ограничения view-once"; +"Download voice messages" = "Скачивать голосовые сообщения"; +"Enable chat list" = "Включить список чатов"; +"Enable note theming" = "Включить темы заметок"; +"Enables the notes theme picker" = "Включает выбор темы заметок"; +"Files" = "Файлы"; +"Full last active date" = "Полная дата последней активности"; +"Hide reels blend button" = "Скрыть кнопку Blend в рилсах"; +"Hide send to group chat" = "Скрыть «Отправить в групповой чат»"; +"Pin recipients on long-press" = "Закреплять получателей долгим нажатием"; +"Long-press in the share sheet to pin a chat/user to the top" = "Долгое нажатие в окне «Поделиться», чтобы закрепить чат/пользователя сверху"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "Долгое нажатие на получателя, чтобы закрепить или открепить. Закреплённые получатели отображаются сверху."; +"Recipient pinned" = "Получатель закреплён"; +"Recipient unpinned" = "Получатель откреплён"; +"Couldn't resolve recipient id" = "Не удалось определить ID получателя"; +"Hide video call button" = "Скрыть кнопку видеозвонка"; +"Hide voice call button" = "Скрыть кнопку голосового звонка"; +"Hides the blend button in DMs" = "Прячет кнопку Blend в личных сообщениях"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "Убирает строку создания/отправки в групповой чат при отправке нескольким получателям"; +"Hides typing indicator from others" = "Скрывает индикатор набора текста от других"; +"Indicate unsent messages" = "Показывать отозванные сообщения"; +"Keep deleted messages" = "Сохранять удалённые сообщения"; +"Turns view once messages into normal media you can loop and pause" = "Превращает одноразовые сообщения в обычные медиа с повтором и паузой"; +"Note actions" = "Действия с заметками"; +"Preserves messages that others unsend" = "Сохраняет сообщения, которые другие отзывают"; +"Keep my deleted messages" = "Сохранять мои удалённые сообщения"; +"Also preserves messages you unsend yourself" = "Также сохраняет сообщения, которые вы отзываете сами"; +"Prevents accidental swipe-up activation of vanish mode" = "Предотвращает случайное включение режима Vanish свайпом вверх"; +"Quick list button in chats" = "Кнопка быстрого списка в чатах"; +"Removes the audio call button from DM thread header" = "Убирает кнопку аудиозвонка из шапки переписки в личных сообщениях"; +"Removes the video call button from DM thread header" = "Убирает кнопку видеозвонка из шапки переписки в личных сообщениях"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "Даёт пересматривать визуальные сообщения без их исчезновения. Включается в меню кнопки-глаза либо отдельной кнопкой, если кнопка-глаз выключена"; +"Search, sort, swipe to remove or toggle keep-deleted" = "Поиск, сортировка, свайп для удаления либо переключения keep-deleted"; +"Send audio as file" = "Отправлять аудио как файл"; +"Send files (experimental)" = "Отправка файлов (экспериментально)"; +"File sending not available" = "Отправка файлов недоступна"; +"Show full date instead of \"Active 2h ago\"" = "Отображать полную дату вместо \"Active 2h ago\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "Выводит в переписках личных сообщений кнопку для добавления и удаления чатов из списка. Долгое нажатие открывает дополнительные варианты"; +"Shows a notification pill when a message is unsent" = "Выводит уведомление-плашку, когда сообщение отзывают"; +"Shows an \"Unsent\" label on preserved messages" = "Ставит пометку \"Отозвано\" на сохранённых сообщениях"; +"Unlimited replay of visual messages" = "Неограниченный повтор визуальных сообщений"; +"Unsent message notification" = "Уведомление об отозванном сообщении"; +"Voice messages" = "Голосовые сообщения"; +"Warn before clearing on refresh" = "Предупреждать перед очисткой при обновлении"; +"Which chats get read-receipt blocking" = "Для каких чатов блокируются уведомления о прочтении"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ Обновление жестом во вкладке DMs стирает все сохранённые сообщения. Активируйте предупреждение ниже, чтобы получать запрос подтверждения."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu удалено"; +"%lu selected" = "Выбрано: %lu"; +"Absolute date + time" = "Точная дата и время"; +"Adjust the filters or clear the search to see more." = "Измените фильтры или очистите поиск, чтобы увидеть больше."; +"All time" = "Всё время"; +"Browse, filter and search recorded messages" = "Просмотр, фильтрация и поиск записанных сообщений"; +"Captures unsent messages with their text or media" = "Захватывает отозванные сообщения вместе с текстом и медиа"; +"Clear deleted-message log?" = "Очистить журнал удалённых сообщений?"; +"Clear from this user" = "Очистить от этого пользователя"; +"Clear log" = "Очистить журнал"; +"Clear log for this account" = "Очистить журнал этого аккаунта"; +"Clear log for this user?" = "Очистить журнал этого пользователя?"; +"Clear media files" = "Очистить медиафайлы"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "Очистка медиа сохраняет записи (текст, отправитель, время). Очистка журнала удаляет всё для этого аккаунта."; +"Close" = "Закрыть"; +"Content unavailable" = "Контент недоступен"; +"Copied" = "Скопировано"; +"Copy URL" = "Копировать URL"; +"Date range" = "Диапазон дат"; +"Deleted messages" = "Удалённые сообщения"; +"Deleted messages log" = "Журнал удалённых сообщений"; +"Deleted: %@\n" = "Удалено: %@\n"; +"Edit %lu" = "Изменение %lu"; +"Edit history" = "История изменений"; +"Edited" = "Изменено"; +"Empty" = "Пусто"; +"Enable deleted messages log" = "Включить журнал удалённых сообщений"; +"Enable Settings → Messages → Deleted messages log to start recording." = "Включите Настройки → Сообщения → Журнал удалённых сообщений, чтобы начать запись."; +"GIF" = "GIF"; +"Hashtag" = "Хэштег"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "Тип: %@\n"; +"Last 30 days" = "Последние 30 дней"; +"Last 7 days" = "Последние 7 дней"; +"Link" = "Ссылка"; +"Live location" = "Геопозиция в реальном времени"; +"Location" = "Место"; +"Logging is off" = "Запись отключена"; +"Media on disk" = "Медиа на диске"; +"Most messages" = "Больше всего сообщений"; +"Most recent" = "Сначала новые"; +"No deleted messages yet" = "Удалённых сообщений пока нет"; +"No matches" = "Ничего не найдено"; +"Nothing to save" = "Нечего сохранять"; +"Oldest first" = "Сначала старые"; +"Open log" = "Открыть журнал"; +"Group chat" = "Групповой чат"; +"%lu messages in %lu chats" = "%lu сообщений в %lu чатах"; +"%lu people · %lu deleted" = "%lu чел. · %lu удалено"; +"When someone unsends a message, it will appear here grouped by chat." = "Когда кто-то отменяет отправку сообщения, оно появится здесь, сгруппированное по чатам."; +"Clear this chat" = "Очистить этот чат"; +"Clear log for this chat?" = "Очистить журнал этого чата?"; +"Removes every preserved deleted message from this group chat." = "Удаляет все сохранённые удалённые сообщения из этого группового чата."; +"Reaction removed" = "Реакция удалена"; +"Log removed reactions" = "Записывать удалённые реакции"; +"Also records when someone removes a reaction, and which message it was on" = "Также записывает, когда кто-то удаляет реакцию и к какому сообщению она относилась."; +"Removed a reaction" = "Удалил(а) реакцию"; +"on @%@: %@" = "на @%@: %@"; +"on: %@" = "на: %@"; +"a message" = "сообщение"; +"removed %@ on: %@" = "удалил %@ на: %@"; +"removed reaction %@" = "удалил реакцию %@"; +"%@ removed the %@ reaction." = "%@ удалил(а) реакцию %@."; +"Removed %@" = "Удалено %@"; +"Someone" = "Кто-то"; +"Photo or video" = "Фото или видео"; +"Refresh names & photos" = "Обновить имена и фото"; +"Refreshing names & photos" = "Обновление имён и фото"; +"Records every message someone unsends, grouped by chat" = "Записывает каждое отменённое сообщение, группируя по чатам"; +"Open profile" = "Открыть профиль"; +"Original" = "Оригинал"; +"Play" = "Воспроизвести"; +"Post" = "Публикация"; +"Reel" = "Reels"; +"Relative (1m / 3h / 3d ago)" = "Относительное (1 мин / 3 ч / 3 д назад)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "Удаляет все сохранённые удалённые сообщения и их медиа для текущего аккаунта. Действие необратимо."; +"Removes every preserved deleted message and its captured media for this account." = "Удаляет все сохранённые удалённые сообщения и их медиа для этого аккаунта."; +"Removes every preserved deleted message from this sender." = "Удаляет все сохранённые удалённые сообщения от этого отправителя."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "Удаляет каждую сохранённую фотографию, видео и голосовое сообщение. Записи сохраняют текст и информацию об отправителе."; +"Search messages" = "Поиск сообщений"; +"Search senders or messages" = "Поиск отправителей или сообщений"; +"Select" = "Выбрать"; +"Show edit history" = "Показать историю изменений"; +"Source URL recorded but media not stored.\n" = "URL источника записан, но медиа не сохранено.\n"; +"Sticker" = "Стикер"; +"Tap to open in Instagram" = "Нажмите, чтобы открыть в Instagram"; +"Tap to open in Maps" = "Нажмите, чтобы открыть в Картах"; +"Tap to play" = "Нажмите для воспроизведения"; +"Tap to play · %@" = "Нажмите для воспроизведения · %@"; +"Text" = "Текст"; +"This account" = "Этот аккаунт"; +"Unknown" = "Неизвестно"; +"Video" = "Видео"; +"View" = "Просмотр"; +"Voice" = "Голос"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "Когда включено, удалённые сообщения и их медиа сохраняются на этом устройстве. Отключите и очистите журнал, чтобы стереть историю."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "В инструменте рисования отправьте изображение как рисунок из галереи, Фото, стикеров или вставки, со встроенным редактором обрезки и удаления фона"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "Нарисуйте линию или фигуру, затем нажмите «Отправить» и выберите источник изображения: галерея, Фото, стикеры или вставка.\n\nИзображение занимает место нарисованного и повторяет его положение и размер, поэтому рисуйте крупнее для большего изображения.\n\nПерезапустите Instagram, чтобы изменения вступили в силу."; + +"Send image as drawing" = "Отправить изображение как рисунок"; + +"Bypass \"You can't send messages\"" = "Обход «Вы не можете отправлять сообщения»"; +"Custom chat background" = "Свой фон чата"; +"DM Save button" = "Кнопка сохранения в Директе"; +"Incoming calls stay silent — no ring, no screen, no notification" = "Входящие звонки остаются беззвучными — без звонка, экрана и уведомления"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "Кнопка сохранения Instagram на фото и видео в Директе будет сохранять в «Фото», Галерею или «Поделиться»"; +"Messages" = "Сообщения"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "Убирает баннер заблокированного поля ввода и восстанавливает ввод текста в ограниченных чатах"; +"Reroute native Save" = "Переопределить кнопку сохранения"; +"Save media" = "Сохранить медиа"; +"Silence incoming calls" = "Заглушать входящие звонки"; +"Threads" = "Диалоги"; +"Use your own images as chat backgrounds" = "Использовать свои изображения как фоны чатов"; +"Activity status toggle" = "Переключатель статуса активности"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "Добавляет точку в шапку входящих. Нажмите, чтобы включить или выключить статус активности"; +"Activity status on" = "Статус активности включён"; +"Activity status off" = "Статус активности выключен"; +"Couldn't change activity status" = "Не удалось изменить статус активности"; +"Check your connection and try again" = "Проверьте подключение и повторите попытку"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "Камера"; +"Viewer" = "Просмотр"; +"Saving" = "Сохранение"; +"Confirmations" = "Подтверждения"; +"Confirm switching button" = "Кнопка подтверждения переключения"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "Добавляет кнопку рядом с кнопкой действий, чтобы мгновенно включать или выключать подтверждение переключения"; +"Switching confirmation on" = "Подтверждение переключения включено"; +"Switching confirmation off" = "Подтверждение переключения выключено"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "Добавляет кнопку галереи в камеру Моментов, чтобы отправить фото из альбома"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "Добавляет кнопку действий RyukGram в заголовок просмотрщика Моментов с пунктами для развёртывания, сохранения, отправки и массового сохранения"; +"All loaded instants" = "Все загруженные Моменты"; +"Auto advance after reaction" = "Автопереход после реакции"; +"Automatically moves to the next instant after you like or react" = "Автоматически переходит к следующему Моменту после лайка или реакции"; +"Auto close when finished" = "Автозакрытие по завершении"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "Закрывает просмотрщик Моментов после того, как вы посмотрели все, вместо перехода к камере"; +"Bypasses the Instants screenshot block" = "Снимает блокировку скриншотов в Моментах"; +"Could not locate the instant on screen" = "Не удалось найти Момент на экране"; +"Current instant" = "Текущий Момент"; +"In-app Gallery" = "Встроенная галерея"; +"Instant" = "Момент"; +"Instants" = "Моменты"; +"Auto-saved instants log" = "Журнал автосохранённых Моментов"; +"Auto-save instants" = "Автосохранение Моментов"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "Автоматически сохраняет каждый просмотренный Момент, в том числе при свайпе — каждый только один раз"; +"Instants action button" = "Кнопка действий Моментов"; +"No instants currently loaded" = "Сейчас нет загруженных Моментов"; +"No media available to save" = "Нет медиа для сохранения"; +"Photos library" = "Медиатека"; +"Pick from" = "Выбрать из"; +"Queued %lu instants" = "В очереди: %lu Моментов"; +"Save all to Gallery" = "Сохранить все в Галерею"; +"Save all to Photos" = "Сохранить все в Фото"; +"Save to Gallery" = "Сохранить в Галерею"; +"Send from gallery" = "Отправить из галереи"; +"Tweaks for the QuickSnap / Instants camera surface." = "Настройки экрана камеры QuickSnap / Instants."; +"Use" = "Использовать"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "Также скрыть нижнюю панель вкладок — видна только папка входящих"; +"Show the home shortcut button in the inbox header, on the right" = "Показывает кнопку ярлыка на главной в шапке входящих, справа"; +"Greyed out until the home shortcut button is enabled in Interface" = "Неактивна, пока кнопка ярлыка на главной не включена в разделе «Интерфейс»"; +"Hide search tab" = "Скрыть вкладку поиска"; +"Remove the search/explore button from the tab bar" = "Убрать кнопку поиска/обзора с панели вкладок"; +"Hide tab bar" = "Скрыть панель вкладок"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "Оставляет только вкладки входящих личных сообщений и профиля, а запуск ведёт сразу во входящие. Переход к настройкам переносится на долгое нажатие вкладки входящих."; +"Icon order" = "Порядок иконок"; +"Launch tab" = "Стартовая вкладка"; +"Swipe sideways to move between the tab bar tabs" = "Проведите в сторону, чтобы переключаться между вкладками"; +"Messages only" = "Только сообщения"; +"Messages-only mode" = "Режим только сообщений"; +"Automatic schedule" = "Автоматическое расписание"; +"DM-only client, hide tabs, auto schedule" = "Только личные сообщения, скрыть вкладки, авторасписание"; +"Start time" = "Время начала"; +"End time" = "Время окончания"; +"Switch into Messages-only on its own during a time window" = "Автоматически включать режим только сообщений в заданный промежуток времени"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "Автоматически включает режим только сообщений в ежедневном промежутке (напр. 22:00 – 06:00) с помощью переключателей выше. Вам будет предложено перезапустить приложение в начале и в конце промежутка."; +"Active now · ends %@" = "Активен · до %@"; +"Next window starts %@" = "Следующий промежуток в %@"; +"Messages-only starting" = "Включение режима только сообщений"; +"Messages-only ending" = "Выключение режима только сообщений"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "Промежуток режима только сообщений начался. Перезапустите Instagram, чтобы перейти к только сообщениям."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "Промежуток режима только сообщений закончился. Перезапустите Instagram, чтобы вернуть остальные вкладки."; +"Navigation" = "Навигация"; +"Swipe between tabs" = "Свайп между вкладками"; +"Tab the app opens to. Ignored when Messages-only is on" = "Вкладка, открываемая при запуске. Не действует при включённом режиме только сообщений"; +"How the icons on the bottom tab bar are ordered" = "Порядок значков на нижней панели вкладок"; +"Hidden tabs" = "Скрытые вкладки"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "Удерживайте и перетаскивайте, чтобы изменить порядок. Потяните значок вверх, чтобы скрыть его. Нажмите на скрытую вкладку, чтобы вернуть её."; +"All tabs are on the bar" = "Все вкладки на панели"; +"Turn IG into a DM-only client" = "Сделать из IG клиент исключительно для личных сообщений"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "Все"; +"Calls" = "Звонки"; +"Comments & posts" = "Комментарии и публикации"; +"Confirm actions" = "Подтверждение действий"; +"Confirm changing theme" = "Подтверждать смену темы"; +"Confirm disappearing media mark as viewed" = "Подтверждать отметку исчезающих сообщений как просмотренных"; +"Confirm DM mark as seen" = "Подтверждать отметку DM как прочитанных"; +"Confirm follow" = "Подтверждать подписку"; +"Confirm follow requests" = "Подтверждать запросы на подписку"; +"Confirm Instants capture" = "Подтверждать съёмку Моментов"; +"Confirm Instants emoji reaction" = "Подтверждать эмодзи-реакцию на Моменты"; +"Confirm like: Posts" = "Подтверждать лайк: посты"; +"Confirm like: Reels" = "Подтверждать лайк: рилсы"; +"Confirm note emoji reaction" = "Подтверждать эмодзи-реакцию на заметку"; +"Confirm note like" = "Подтверждать лайк заметки"; +"Confirm posting comment" = "Подтверждать отправку комментария"; +"Confirm repost" = "Подтверждать репост"; +"Confirm send to group chat" = "Подтверждать отправку в групповой чат"; +"Confirm sticker interaction (highlights)" = "Подтверждать взаимодействие со стикером (актуальное)"; +"Confirm sticker interaction (stories)" = "Подтверждать взаимодействие со стикером (истории)"; +"Confirm story emoji reaction" = "Подтверждать эмодзи-реакцию на историю"; +"Confirm story like" = "Подтверждать лайк истории"; +"Confirm story mark as seen" = "Подтверждать отметку истории как просмотренной"; +"Confirm switching Instant" = "Подтверждать переключение Момента"; +"Confirm unfollow" = "Подтверждать отписку"; +"Confirm vanish mode" = "Подтверждать режим исчезновения"; +"Confirm video call" = "Подтверждать видеозвонок"; +"Confirm voice call" = "Подтверждать аудиозвонок"; +"Confirm voice messages" = "Подтверждать голосовые сообщения"; +"Follows" = "Подписки"; +"Likes" = "Лайки"; +"Messaging" = "Сообщения"; +"Reaction stickers only" = "Только стикеры реакций"; +"Reactions" = "Реакции"; +"Send to group chat?" = "Отправить в групповой чат?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "Показывает подтверждение перед созданием/отправкой в групповой чат из меню «Поделиться»"; +"Shows an alert before marking a disappearing message as viewed" = "Показывает подтверждение перед отметкой исчезающего сообщения как просмотренного"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "Показывает подтверждение перед отправкой уведомления о прочтении с кнопки просмотра DM или из меню"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "Показывает подтверждение перед отправкой уведомления о просмотре истории с кнопки глаза или из меню"; +"Shows an alert before sending an emoji reaction on a note" = "Показывает подтверждение перед отправкой эмодзи-реакции на заметку"; +"Shows an alert before sending an emoji reaction on a story" = "Запрашивает подтверждение до отправки эмодзи-реакции на историю"; +"Shows an alert before sending an emoji reaction on an Instant" = "Показывает подтверждение перед отправкой эмодзи-реакции на Момент"; +"Shows an alert before sending a photo or video from the Instants camera" = "Показывает предупреждение перед отправкой фото или видео из камеры Моментов"; +"Shows an alert before tapping to switch to the next/previous Instant" = "Показывает подтверждение перед нажатием для переключения на следующий/предыдущий Момент"; +"Asks you to confirm before a voice message sends" = "Запрашивает подтверждение перед отправкой голосового сообщения"; +"Shows an alert to confirm before toggling vanish mode" = "Показывает подтверждение перед включением режима исчезновения"; +"Confirms before you accept or decline a follow request" = "Запрашивает подтверждение перед принятием или отклонением запроса на подписку"; +"Confirms before a chat theme change applies" = "Запрашивает подтверждение перед сменой темы чата"; +"Confirms before the follow button follows someone" = "Запрашивает подтверждение перед тем, как кнопка подписки подпишется на кого-то"; +"Shows an alert when you click the like button on notes to confirm the like" = "Показывает подтверждение при нажатии кнопки лайка на заметках"; +"Shows an alert when you click the like button on posts to confirm the like" = "Запрашивает подтверждение при нажатии лайка на публикациях"; +"Confirms before a like lands on a reel" = "Запрашивает подтверждение перед лайком reel"; +"Shows an alert when you click the like button on stories to confirm the like" = "Запрашивает подтверждение при нажатии лайка на историях"; +"Confirms before a comment posts" = "Запрашивает подтверждение перед публикацией комментария"; +"Shows an alert when you click the repost button to confirm before reposting" = "Показывает подтверждение при нажатии кнопки репоста перед повторной публикацией"; +"Shows an alert when you click the unfollow button to confirm" = "Запрашивает подтверждение при нажатии кнопки отписки"; +"Shows an alert when you click the video call button to confirm before calling" = "Показывает подтверждение при нажатии кнопки видеозвонка"; +"Shows an alert when you click the voice call button to confirm before calling" = "Показывает подтверждение при нажатии кнопки аудиозвонка"; +"Shows an alert when you tap a sticker inside a highlight" = "Показывает подтверждение при нажатии на стикер в актуальном"; +"Shows an alert when you tap a sticker on someone's story" = "Показывает подтверждение при нажатии на стикер в чьей-то истории"; +"Stories & highlights" = "Истории и актуальное"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld ч"; +"%ld locked" = "%ld заблокировано"; +"%ld min" = "%ld мин"; +"%ldh idle" = "%ld ч простоя"; +"%ldm idle" = "%ld мин простоя"; +"%lds" = "%ld с"; +"%lds idle" = "%ld с простоя"; +"%lu hidden" = "%lu скрыто"; +"4 digits" = "4 цифры"; +"6 digits" = "6 цифр"; +"Add hidden chat" = "Добавить скрытый чат"; +"Add locked chat" = "Добавить заблокированный чат"; +"Allow Instants screenshots" = "Разрешить скриншоты Моментов"; +"Always ask when opening again" = "Всегда спрашивать при повторном открытии"; +"Ask again after Instagram returns" = "Спрашивать снова после возврата в Instagram"; +"Auto-relock after idle" = "Авто-блокировка после простоя"; +"Balanced default" = "Сбалансированный по умолчанию"; +"Best for sensitive sections" = "Лучше для конфиденциальных разделов"; +"Biometric" = "Биометрия"; +"Change passcode" = "Сменить код-пароль"; +"Chat hidden" = "Чат скрыт"; +"Chat unhidden" = "Чат показан"; +"Chat locked" = "Чат заблокирован"; +"Chat unlocked" = "Чат разблокирован"; +"Choose a code you'll remember." = "Выберите код, который запомните."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "Выберите, как долго этот раздел остаётся разблокированным при бездействии. «Никогда» — пока Instagram не закроется или не уйдёт в фон."; +"Confirm current passcode" = "Подтвердите текущий код-пароль"; +"Confirm passcode" = "Подтвердите код-пароль"; +"Could not save passcode" = "Не удалось сохранить код-пароль"; +"Create passcode" = "Создать код-пароль"; +"Derivation failed" = "Не удалось вывести ключ"; +"DM inbox" = "Входящие DM"; +"Don't share unlock" = "Не делиться разблокировкой"; +"Each target has its own enable, timeout, and re-lock configuration." = "У каждой цели свои настройки включения, тайм-аута и повторной блокировки."; +"Enable lock" = "Включить блокировку"; +"Enter passcode" = "Введите код-пароль"; +"Enter value" = "Введите значение"; +"Enter your current passcode to change it" = "Введите текущий код-пароль, чтобы изменить его"; +"Enter your current passcode to reset it" = "Введите текущий код-пароль, чтобы сбросить его"; +"Enter your passcode to continue" = "Введите код-пароль, чтобы продолжить"; +"every use" = "каждый раз"; +"Every use" = "Каждый раз"; +"Hidden chats" = "Скрытые чаты"; +"Hidden chats hidden" = "Скрытые чаты скрыты"; +"Hidden chats revealed" = "Скрытые чаты показаны"; +"👁 Shown in the inbox · Tap to hide" = "👁 Показаны во входящих · Нажмите, чтобы скрыть"; +" · shown in inbox" = " · показаны во входящих"; +"Hide chat" = "Скрыть чат"; +"Unhide chat" = "Показать чат"; +"Hold name to reveal" = "Удерживайте имя, чтобы показать"; +"Hide message preview" = "Скрыть предпросмотр сообщения"; +"Hide this chat?" = "Скрыть этот чат?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "Скрывает интерфейс RyukGram на скриншотах и записях и обходит уведомления Instagram о скриншотах по функциям."; +"Idle timeout" = "Тайм-аут простоя"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "Держать эту цель заблокированной отдельно"; +"Less frequent prompts" = "Реже запрашивать"; +"Lock" = "Блокировка"; +"Lock chat" = "Заблокировать чат"; +"Lock every time" = "Блокировать каждый раз"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "«Блокировать каждый раз» переопределяет тайм-аут бездействия. «Не делиться разблокировкой» держит эту цель отдельно."; +"Lock targets" = "Цели блокировки"; +"Lock the tweak" = "Заблокировать твик"; +"Lock this chat" = "Заблокировать этот чат"; +"Lock this chat?" = "Заблокировать этот чат?"; +"Lock with passcode" = "Блокировать код-паролем"; +"Locked chats" = "Заблокированные чаты"; +"Long-press a chat to lock it individually" = "Долгое нажатие на чат, чтобы заблокировать его отдельно"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "Долгое нажатие на чат → Скрыть чат, чтобы добавить его сюда. Скрытые чаты исключаются из входящих, пока вы не удалите их из этого списка."; +"Long-press a DM to add" = "Долгое нажатие на чат, чтобы добавить"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "Нажмите и удерживайте имя аккаунта вверху папки сообщений, чтобы показать или скрыть скрытые чаты"; +"Longest idle window" = "Самое долгое время бездействия"; +"Manage locked chats" = "Управление заблокированными чатами"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "Главный переключатель. Отключите, чтобы отключить все цели блокировки, не теряя настройки каждой."; +"Never" = "Никогда"; +"No passcode set" = "Код-пароль не задан"; +"Nothing here yet." = "Здесь пока ничего нет."; +"Off" = "Выкл."; +"On" = "Вкл."; +"On — %@" = "Вкл. — %@"; +"On — %@ + %ld more" = "Вкл. — %@ + ещё %ld"; +"On — no targets enabled" = "Вкл. — нет включённых целей"; +"Passcode" = "Код-пароль"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "Код-пароль + биометрия. Блокирует окно настроек твика, галерею, журнал удалённых сообщений, отдельные чаты и всё приложение."; +"Passcode changed" = "Код-пароль изменён"; +"Passcode reset" = "Код-пароль сброшен"; +"Passcode set" = "Код-пароль задан"; +"Passcode too short" = "Код-пароль слишком короткий"; +"Passcodes did not match — try again" = "Коды не совпадают — попробуйте ещё раз"; +"Per-chat locks" = "Блокировки по чатам"; +"Prompt before Instagram opens" = "Запрашивать перед открытием Instagram"; +"Prompt before Profile Analyzer opens" = "Запрашивать перед открытием Анализатора профиля"; +"Prompt before the deleted-messages log opens" = "Запрашивать перед открытием журнала удалённых сообщений"; +"Prompt before the gallery opens" = "Запрашивать перед открытием галереи"; +"Prompt before tweak settings open" = "Запрашивать перед открытием настроек твика"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "Запрашивать при каждом входе во входящие DM, включая прямой запуск в сообщения"; +"Re-enter the same passcode" = "Введите тот же код-пароль ещё раз"; +"Re-lock on background" = "Блокировка при сворачивании"; +"re-lock on bg" = "блок. при сворач."; +"Recently hidden" = "Недавно скрытые"; +"Prompt before holding the inbox name reveals hidden chats" = "Запрашивать перед тем, как удержание имени покажет скрытые чаты"; +"Reveal hidden chats" = "Показать скрытые чаты"; +"Recently locked" = "Недавно заблокированные"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "Скрывает кнопки RyukGram на скриншотах, записях экрана и при зеркалировании"; +"Remove screenshot alert" = "Убрать уведомление о скриншоте"; +"Replace inbox preview with • • •" = "Заменить превью входящих на • • •"; +"Require passcode for this section" = "Запрашивать код-пароль для этого раздела"; +"Requires your current passcode" = "Требуется текущий код-пароль"; +"Reset passcode" = "Сбросить код-пароль"; +"Reset passcode?" = "Сбросить код-пароль?"; +"Screenshots & capture" = "Скриншоты и запись"; +"Security & Privacy" = "Безопасность и конфиденциальность"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "Задайте код-пароль, чтобы блокировать Настройки, Галерею, журнал удалённых сообщений, отдельные чаты, входящие DM, Анализатор профиля или сам Instagram."; +"Set passcode" = "Задать код-пароль"; +"Short idle window" = "Короткое время бездействия"; +"Stay unlocked until app close or background" = "Оставаться разблокированным до закрытия приложения или ухода в фон"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "Подавлять уведомление Instagram «X сделал скриншот» в историях, личных сообщениях и исчезающих медиа"; +"Tap Unlock" = "Нажмите «Разблокировать»"; +"Tap Unlock or enter your passcode" = "Нажмите «Разблокировать» или введите код-пароль"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "Это очистит код-пароль, отключит все цели блокировки и разблокирует все чаты. Галерея и данные удалённых сообщений не затрагиваются."; +"Thread %@" = "Тред %@"; +"Tweak settings" = "Настройки твика"; +"Unlock" = "Разблокировать"; +"Unlock %@" = "Разблокировать %@"; +"Unlock chat" = "Разблокировать чат"; +"Unlock Instagram" = "Разблокировать Instagram"; +"Unlock this chat" = "Разблокировать этот чат"; +"Use %@" = "Использовать %@"; +"Username (looks up the DM thread) or raw thread ID" = "Имя пользователя (находит чат) или сырой ID чата"; +"Username or thread ID" = "Имя пользователя или ID чата"; +"Wrong passcode" = "Неверный код-пароль"; +"Wrong passcode • %ld attempts" = "Неверный код-пароль • %ld попыток"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "Защита"; +"Password-protect" = "Защитить паролем"; +"On — tap to change" = "Включено — нажмите, чтобы изменить"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "Резервная копия шифруется по AES-256. Этот пароль понадобится для восстановления — восстановить его при утере невозможно."; +"Optional. Lock the backup behind a password so only you can restore it." = "Необязательно. Защитите копию паролем, чтобы восстановить её могли только вы."; +"Backup password" = "Пароль резервной копии"; +"You'll need this to restore. It can't be recovered if lost." = "Он понадобится для восстановления. При утере восстановить невозможно."; +"Password" = "Пароль"; +"Confirm password" = "Подтвердите пароль"; +"Set" = "Задать"; +"Use at least 4 characters." = "Используйте не менее 4 символов."; +"The passwords don't match." = "Пароли не совпадают."; +"Try again" = "Попробуйте снова"; +"Encrypted backup" = "Зашифрованная копия"; +"Enter the password used to protect this backup." = "Введите пароль, которым защищена эта копия."; +"Wrong password. Try again." = "Неверный пароль. Попробуйте снова."; +"Decrypting backup…" = "Расшифровка копии…"; +"Encrypting backup…" = "Шифрование копии…"; +"%ld of %ld selected · %@" = "Выбрано %ld из %ld · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "Отметьте каждый набор данных для включения. Нажмите строку, чтобы посмотреть содержимое."; + +"%lu account(s)" = "%lu аккаунт(ов)"; +"%lu account(s) · %lu image(s) · %@" = "%lu аккаунт(ов) · %lu изображ. · %@"; +"%lu file(s) · %@" = "%lu файл(ов) · %@"; +"%lu preferences" = "%lu настроек"; +"(none)" = "(нет)"; +"Apply backup?" = "Применить резервную копию?"; +"Applying backup…" = "Применение резервной копии…"; +"archive error" = "ошибка архива"; +"Archived snapshots" = "Архивные снимки"; +"Backup & Restore" = "Резервная копия и восстановление"; +"Backup exported" = "Резервная копия экспортирована"; +"Backup failed" = "Ошибка резервного копирования"; +"Backup has no importable sections." = "В резервной копии нет разделов для импорта."; +"Chat & story filters" = "Фильтры чатов и историй"; +"Chat backgrounds" = "Фоны чатов"; +"Corrupt entry path." = "Повреждённый путь записи."; +"Could not decompress archive." = "Не удалось распаковать архив."; +"Could not open archive." = "Не удалось открыть архив."; +"Could not open staging file." = "Не удалось открыть промежуточный файл."; +"Could not read the backup archive." = "Не удалось прочитать архив резервной копии."; +"Could not write archive." = "Не удалось записать архив."; +"Could not write backup file." = "Не удалось записать файл резервной копии."; +"Could not write extracted file." = "Не удалось записать извлечённый файл."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "Существующие данные для отмеченных пунктов будут заменены. Может потребоваться перезапуск, чтобы всё вступило в силу."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "Экспорт или импорт данных RyukGram — настройки, фильтры по аккаунтам, скрытые и заблокированные чаты, Анализатор профилей, галерея, фоны чатов, удалённые сообщения и журнал прочтений. Выбирайте любое сочетание на каждой странице. Настройки сохраняются в обычный файл JSON; пакеты с медиа экспортируются как сжатый .ryukbak."; +"Feature data" = "Данные функций"; +"Import mode" = "Режим импорта"; +"Merge" = "Объединить"; +"Replace" = "Заменить"; +"Add the backup's data to what's already here" = "Добавляет данные резервной копии к уже имеющимся"; +"Clear existing data, then apply the backup" = "Очищает текущие данные, затем применяет резервную копию"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "Объединение сохраняет данные на этом устройстве и добавляет данные из копии — дубликаты объединяются, включая галерею."; +"Replace clears existing data for each ticked item, then applies the backup." = "Замена очищает существующие данные каждого отмеченного пункта, затем применяет копию."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "Резервная копия будет объединена с вашими данными — ничего не удаляется, дубликаты объединяются. Для полного применения может потребоваться перезапуск."; +"Hidden & locked chats" = "Скрытые и заблокированные чаты"; +"Import" = "Импорт"; +"Inspect the full manifest" = "Просмотреть полный манифест"; +"Load a .json or .ryukbak backup" = "Загрузить резервную копию .json или .ryukbak"; +"Not a RyukGram backup archive." = "Это не архив резервной копии RyukGram."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "Вернуть настройки к значениям по умолчанию и очистить данные"; +"Swipe a row to clear it." = "Смахните строку, чтобы очистить её."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "Строки с пометкой «Общее» не привязаны к аккаунту и всегда следуют своей отметке."; +"%lu file(s)" = "%lu файл(ов)"; +"Clear all data" = "Очистить все данные"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "Каждый сохранённый элемент галереи, журнал и запись удаляются с этого устройства. Ваши настройки сохраняются — используйте Сбросить, чтобы вернуть их к значениям по умолчанию. Отменить это будет нельзя."; +"Accounts" = "Аккаунты"; +"All accounts (%ld)" = "Все аккаунты (%ld)"; +"Pick at least one account." = "Выберите хотя бы один аккаунт."; +"Signed in" = "Выполнен вход"; +"Shared" = "Общее"; +"Per-account data is limited to the accounts ticked here." = "Данные по аккаунтам ограничены аккаунтами, отмеченными здесь."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "Данные аккаунтов очищаются только для %@. Общие данные следуют своей отметке. Действие необратимо."; +"Preparing backup…" = "Подготовка резервной копии…"; +"Reading backup…" = "Чтение резервной копии…"; +"RyukGram's own data on this device" = "Собственные данные RyukGram на этом устройстве"; +"Save settings or a full backup" = "Сохранить настройки или полную резервную копию"; +"Tick what to apply. Rows not in this backup are hidden." = "Отметьте, что применить. Строки, которых нет в этой резервной копии, скрыты."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "Отметьте, что включить. Нажмите строку, чтобы просмотреть её. Добавление галереи, фонов чатов или удалённых сообщений создаёт сжатый пакет .ryukbak."; +"Truncated entry data." = "Усечённые данные записи."; +"Truncated entry length." = "Усечённая длина записи."; +"Truncated entry path." = "Усечённый путь записи."; +"Unsafe entry path." = "Небезопасный путь записи."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "Дополнительно"; +"All tweak options are disabled" = "Все опции твика отключены"; +"Auto-clear cache" = "Автоочистка кэша"; +"Automatically opens settings when the app launches" = "Сам открывает настройки сразу после старта приложения"; +"Cache" = "Кэш"; +"Cache cleared" = "Кэш очищен"; +"Calculating cache size…" = "Вычисление размера кэша…"; +"Clear" = "Очистить"; +"Clear cache" = "Очистить кэш"; +"Clear cache (%@)" = "Очистить кэш (%@)"; +"Clearing cache…" = "Очистка кэша…"; +"Clearing still scans on demand." = "Очистка по-прежнему сканирует по запросу."; +"Daily" = "Ежедневно"; +"Disable all tweak options" = "Отключить все опции твика"; +"Disable safe mode" = "Отключить безопасный режим"; +"Enable tweak settings quick-access" = "Включить быстрый доступ к настройкам твика"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "Пока включено, Instagram работает как обычно. Выключите, чтобы восстановить настройки."; +"Tap to re-enable everything" = "Нажмите, чтобы снова включить всё"; +"Turn every feature off — your settings are kept" = "Отключить все функции — настройки сохранятся"; +"Fix duplicate notifications" = "Исправить дублирующиеся уведомления"; +"Free %@ of Instagram cache." = "Освободить %@ кэша Instagram."; +"Freed %@" = "Освобождено %@"; +"Hold on the home tab to open RyukGram settings" = "Задержите палец на вкладке Home, чтобы вызвать настройки RyukGram"; +"Monthly" = "Ежемесячно"; +"Nothing to clear" = "Нечего очищать"; +"Off skips the size scan when Advanced opens." = "В выключенном состоянии пропускает сканирование размера при открытии «Дополнительно»."; +"Pause playback when opening settings" = "Ставить воспроизведение на паузу при открытии настроек"; +"Always show what's new" = "Всегда показывать новинки"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "Оставлять синюю точку на каждой новой функции, не убирая её после просмотра"; +"Preserve messages database" = "Сохранять базу данных сообщений"; +"Pauses any playing video/audio when settings opens" = "Приостанавливает любое идущее видео или аудио при входе в настройки"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "Мешает Instagram обнулять настройки после аварий (на ваш риск)"; +"Prevents two banners for the same message when IG is in the foreground" = "Предотвращает появление двух баннеров для одного сообщения, когда IG на переднем плане"; +"Remove Instagram's cached images, videos, and temporary files." = "Удаляет кэшированные изображения, видео и временные файлы Instagram."; +"Reset onboarding state" = "Сбросить состояние онбординга"; +"Run a silent cache clear on launch when the interval has elapsed." = "Выполняет тихую очистку кэша при запуске, когда истёк интервал."; +"Show cache size" = "Показывать размер кэша"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "Пропускать базу данных сообщений при очистке — сохраняет ЛС, черновики и сохранённые сообщения."; +"Show tweak settings on app launch" = "Открывать настройки твика при старте приложения"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "Подавляет второе уведомление, которое IG ставит в очередь в приложении, пока его также доставляет расширение уведомлений."; +"Weekly" = "Еженедельно"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "Действия"; +"Advanced experimental features" = "Расширенные экспериментальные функции"; +"All experimental toggles will be turned off. Instagram will restart." = "Все экспериментальные переключатели будут отключены. Instagram перезапустится."; +"Direct Notes — Audio reply" = "Direct-заметки — ответ голосом"; +"Direct Notes — Avatar reply" = "Direct-заметки — ответ аватаром"; +"Direct Notes — Friend Map" = "Direct-заметки — карта друзей"; +"Direct Notes — GIFs & stickers reply" = "Direct-заметки — ответ GIF и стикерами"; +"Direct Notes — Photo reply" = "Direct-заметки — ответ фото"; +"Disabled after repeated crashes." = "Отключено после повторных сбоев."; +"Enables GIF/sticker replies" = "Включает ответы GIF и стикерами"; +"Enables photo replies" = "Включает ответы фото"; +"Enables the audio-note reply type" = "Включает ответы голосовой заметкой"; +"Enables the avatar reply type" = "Включает ответы аватаром"; +"Experimental flags reset" = "Экспериментальные флаги сброшены"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "Включите нужное и нажмите «Применить», чтобы перезапустить. Некоторые флаги могут не работать на всех аккаунтах или версиях IG. Сбрасываются автоматически после 3 сбоев запуска."; +"Forces Prism-gated experiments on" = "Принудительно включает эксперименты под Prism"; +"Forces the Homecoming home surface / nav on" = "Принудительно включает интерфейс и навигацию Homecoming"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "Принудительно показывает QuickSnap / Instants в ленте, чатах, историях и заметках"; +"Got it" = "Понятно"; +"Heads up" = "Внимание"; +"Hidden Instagram experiments" = "Скрытые эксперименты Instagram"; +"Hidden Instagram experiments (in Advanced)" = "Скрытые эксперименты Instagram (в разделе «Дополнительно»)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "Заметки и QuickSnap"; +"Prism design system" = "Дизайн-система Prism"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Показывает вход на карту друзей в Direct-заметках"; +"Surfaces" = "Интерфейсы"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "Эти переключатели включают скрытые эксперименты Instagram. Некоторые функции могут не работать на всех аккаунтах или версиях IG. Если IG падает при запуске, флаги сбрасываются после 3 неудачных стартов."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Переключайте скрытые эксперименты Instagram. Некоторые могут не работать на всех аккаунтах или версиях IG."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "Ячейка кнопки"; +"Change the value on the right" = "Задайте значение в правой части"; +"Could not delete: %@" = "Не удалось удалить: %@"; +"Debug" = "Отладка"; +"Delete an imported override and fall back to the shipped strings" = "Удалить импортированный файл и вернуться к встроенным строкам"; +"Deleted %@ override. Restart to apply." = "Файл %@ удалён. Перезапустите для применения."; +"Enable FLEX gesture" = "Включить жест FLEX"; +"Enable file logging" = "Вести лог в файл"; +"Export strings" = "Экспортировать строки"; +"Hold 5 fingers on the screen to open FLEX" = "Прижмите к экрану пять пальцев, чтобы вызвать FLEX"; +"I have %@%@" = "У меня есть %@%@"; +"Import a .strings file for a language" = "Загрузить файл .strings для выбранного языка"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "Загрузите файл .strings для обновления перевода. Укажите язык, выберите файл и перезапустите приложение."; +"Link Cell" = "Ячейка ссылки"; +"Localization" = "Локализация"; +"Log file is empty" = "Файл лога пуст"; +"Logging" = "Логирование"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "Записывает собственную активность RyukGram в один общий файл в приложении и его расширениях. По умолчанию выключено — включите, воспроизведите проблему и поделитесь."; +"Menu Cell" = "Ячейка меню"; +"Navigation Cell" = "Ячейка навигации"; +"No imported localization files to reset." = "Нет импортированных файлов локализации для сброса."; +"No overrides" = "Нет переопределений"; +"Open FLEX on app focus" = "Открывать FLEX при возврате в приложение"; +"Open FLEX on app launch" = "Открывать FLEX при запуске приложения"; +"Opens FLEX when the app is focused" = "Вызывает FLEX, когда приложение выходит на передний план"; +"Opens FLEX when the app launches" = "Вызывает FLEX при старте приложения"; +"Pick a language and share its .strings file" = "Выберите язык, чтобы поделиться его файлом .strings"; +"Pick a language to delete the imported file" = "Выберите язык, чтобы удалить импортированный файл"; +"Pick a language to export" = "Выберите язык для экспорта"; +"Reset localization" = "Сбросить локализацию"; +"Share log file" = "Поделиться файлом лога"; +"Static Cell" = "Статическая ячейка"; +"Stepper cell" = "Ячейка степпера"; +"Switch Cell" = "Ячейка переключателя"; +"Switch Cell (Restart)" = "Ячейка переключателя (перезапуск)"; +"Tap the switch" = "Нажмите переключатель"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "Эти функции используют скрытые флаги Instagram и могут работать не на всех аккаунтах или версиях."; +"Update localization file" = "Обновить файл локализации"; +"Using icon" = "Используя иконку"; +"Using image" = "Используя изображение"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "Настройки %@"; +"%lu items" = "%lu объектов"; +"Cancelled" = "Отменено"; +"Carousel" = "Карусель"; +"Carousel · %lu items" = "Карусель · %lu объектов"; +"Copied %lu URLs" = "Скопировано URL: %lu"; +"Copied caption" = "Подпись скопирована"; +"Copied download URL" = "URL загрузки скопирован"; +"Copied quality info" = "Сведения о качестве скопированы"; +"Copied video URL" = "URL видео скопирован"; +"Copy all URLs" = "Копировать все URL"; +"Copy caption" = "Копировать подпись"; +"Copy download URL" = "Копировать URL загрузки"; +"Could not extract any URLs" = "Не удалось извлечь ни одного URL"; +"Could not extract audio URL" = "Не удалось извлечь URL аудио"; +"Could not extract media URL" = "Не удалось извлечь URL медиа"; +"Could not extract photo URL" = "Не удалось извлечь URL фото"; +"Could not extract video URL" = "Не удалось извлечь URL видео"; +"Done" = "Готово"; +"Download all stories and share?" = "Скачать все истории и поделиться?"; +"Download all to Photos" = "Скачать всё в Фото"; +"Download and share all" = "Скачать всё и поделиться"; +"Download failed" = "Ошибка скачивания"; +"Downloaded %lu items" = "Скачано элементов: %lu"; +"Downloading audio…" = "Загрузка аудио…"; +"Failed to save" = "Не удалось сохранить"; +"File" = "Файл"; +"HD" = "HD"; +"HD download complete" = "HD-загрузка завершена"; +"HD video" = "HD-видео"; +"Mute audio" = "Выключить звук"; +"No caption on this post" = "У этого поста нет подписи"; +"No carousel children" = "У карусели нет элементов"; +"No cover image" = "Нет обложки"; +"No media" = "Нет медиа"; +"No media to expand" = "Нет медиа для разворачивания"; +"No media to show" = "Нет медиа для показа"; +"No media URL" = "Нет URL медиа"; +"No URLs" = "Нет URL"; +"No URLs found" = "URL не найдены"; +"No video URL" = "Нет URL видео"; +"Not a carousel" = "Это не карусель"; +"Nothing to share" = "Нечем поделиться"; +"Opening creator…" = "Открытие автора..."; +"Photo library access denied" = "Доступ к медиатеке Фото запрещён"; +"Photos access denied" = "Доступ к Фото запрещён"; +"Preparing repost…" = "Подготовка репоста..."; +"Raw image" = "Исходное изображение"; +"Repost" = "Репост"; +"Repost unavailable" = "Репост недоступен"; +"Save failed" = "Ошибка сохранения"; +"Saved %lu items" = "Сохранено элементов: %lu"; +"Saved to Photos" = "Сохранено в Фото"; +"Saved to RyukGram" = "Сохранено в RyukGram"; +"Saving to Photos" = "Сохранение в «Фото»"; +"Saving…" = "Сохранение..."; +"Unmute audio" = "Включить звук"; +"Video · %@" = "Видео · %@"; +"View cover" = "Посмотреть обложку"; +"View mentions" = "Посмотреть упоминания"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "Свободно"; +"Chat font saved" = "Шрифт чата сохранён"; +"Reopen this chat to see the new font" = "Откройте чат заново, чтобы увидеть новый шрифт"; +"Remove background" = "Удалить фон"; +"No subject found" = "Объект не найден"; +"No stickers yet" = "Пока нет стикеров"; +"Send drawing" = "Отправить рисунок"; +"Send my drawing" = "Отправить мой рисунок"; +"Paste image / sticker" = "Вставить изображение / стикер"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "Нажмите любой стикер на клавиатуре,\nчтобы добавить его в рисунок"; + +" %lu votes · avg %.0f%% " = " %lu голосов · среднее %.0f%% "; +"%@ can't be converted" = "Не удалось преобразовать %@"; +"%@ unsent a message" = "%@ отозвал(а) сообщение"; +"%@ unsent a message from %@" = "%1$@ отозвал(а) сообщение от %2$@"; +"A message was unsent" = "Сообщение было отозвано"; +"Add" = "Добавить"; +"Add to block list" = "Добавить в список блокировки"; +"Added to block list" = "Добавлено в список блокировки"; +"Added to exclude list" = "Добавлено в список исключений"; +"Audio not loaded yet. Play the message first and try again." = "Аудио пока не загружено. Запустите сообщение, а затем повторите попытку."; +"Audio sent" = "Аудио отправлено"; +"Audio URL not available" = "URL аудио недоступен"; +"Audio/Video from Files" = "Аудио/видео из Файлов"; +"Blocked" = "Заблокировано"; +"Cancel" = "Отмена"; +"Clear preserved messages?" = "Очистить сохранённые сообщения?"; +"Converting…" = "Конвертация..."; +"Copy link" = "Копировать ссылку"; +"Copy text" = "Копировать текст"; +"Could not copy selected video" = "Не удалось скопировать выбранное видео"; +"Could not find media" = "Не удалось найти медиа"; +"Could not find story media" = "Не удалось найти медиа истории"; +"Could not get audio data. Try again after refreshing the chat." = "Получить аудиоданные не удалось. Обновите чат и повторите попытку."; +"Disable read receipts" = "Отключить уведомления о прочтении"; +"Disappearing media" = "Исчезающие медиа"; +"Download audio" = "Скачать аудио"; +"Enable read receipts" = "Включить уведомления о прочтении"; +"Error: %@" = "Ошибка: %@"; +"Exclude chat" = "Исключить чат"; +"Exclude from seen" = "Исключить из просмотренных"; +"Exclude story seen" = "Исключить просмотр истории"; +"Excluded" = "Исключено"; +"Extracting audio…" = "Извлечение аудио..."; +"FFmpeg conversion failed" = "Не удалось выполнить преобразование через FFmpeg"; +"File sending not supported" = "Отправка файлов не поддерживается"; +"Follow" = "Подписаться"; +"Following" = "Подписки"; +"Format not supported without FFmpegKit" = "Формат не поддерживается без FFmpegKit"; +"Inserts a button on disappearing media overlays" = "Добавляет кнопку на оверлей исчезающих медиа"; +"Inserts a speaker button to mute/unmute disappearing media" = "Добавляет кнопку динамика для звука исчезающих медиа"; +"Inserts an eye button to mark the current disappearing media as viewed" = "Добавляет кнопку-глаз для отметки текущего исчезающего медиа как просмотренного"; +"Link copied" = "Ссылка скопирована"; +"Mark as viewed" = "Отметить как просмотренное"; +"Marking as viewed advances to the next stacked media instead of closing" = "Отметка как просмотренного переключает на следующий медиафайл в стопке вместо закрытия"; +"Mark messages as seen" = "Отметить сообщения как просмотренные"; +"Mark seen" = "Отметить просмотр"; +"Marked as viewed" = "Отмечено как просмотренное"; +"Marked messages as seen" = "Сообщения отмечены как просмотренные"; +"Mentions" = "Упоминания"; +"Message from %@ was unsent" = "Сообщение от %@ было отозвано"; +"Message sender not found" = "Отправитель сообщения не найден"; +"Messages settings" = "Настройки сообщений"; +"Mute story audio" = "Выключить звук истории"; +"no audio track could be read" = "не удалось прочитать аудиодорожку"; +"No audio URL found. Try again after refreshing the chat." = "Ссылка на аудио не обнаружена. Обновите чат и повторите попытку."; +"No mentions in this story" = "В этой истории нет упоминаний"; +"No thread key" = "Нет ключа диалога"; +"No video selected" = "Видео не выбрано"; +"No voice send method found" = "Не найден способ отправки голосового сообщения"; +"Note has no downloadable content" = "В заметке нет содержимого для загрузки"; +"Note text copied" = "Текст заметки скопирован"; +"Open GitHub" = "Открыть GitHub"; +"Pick audio or video" = "Выберите аудио или видео"; +"Read receipts disabled" = "Уведомления о прочтении отключены"; +"Read receipts enabled" = "Уведомления о прочтении включены"; +"Read receipts will be blocked for this chat." = "В этом чате отметки о прочтении будут скрыты."; +"Read receipts will no longer be blocked for this chat." = "В этом чате отметки о прочтении снова станут видимыми."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "Обновление DM удалит %lu сохранённое сообщение. Это нельзя отменить."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "Обновление DM удалит %lu сохранённых сообщений. Это нельзя отменить."; +"Remove" = "Удалить"; +"Remove from block list" = "Убрать из списка блокировки"; +"Remove from exclude list" = "Удалить из списка исключений"; +"Removed" = "Удалено"; +"Removed from list" = "Удалено из списка"; +"Save GIF" = "Сохранить GIF"; +"Selection too short (min 0.5s)" = "Слишком короткий фрагмент (минимум 0.5 с)"; +"Send anyway" = "Всё равно отправить"; +"Send Audio" = "Отправить аудио"; +"Send failed: %@" = "Ошибка отправки: %@"; +"Send File" = "Отправить файл"; +"Send service not found" = "Сервис отправки не найден"; +"Show audio toggle" = "Показывать переключатель звука"; +"Show mark-as-viewed button" = "Показывать кнопку отметки о просмотре"; +"Story read receipts disabled" = "Уведомления о просмотре историй отключены"; +"Story read receipts enabled" = "Уведомления о просмотре историй включены"; +"This chat will resume normal read-receipt behavior." = "В этом чате отметки о прочтении вернутся к обычной работе."; +"This file" = "Этот файл"; +"Total: %@" = "Всего: %@"; +"Un-exclude chat" = "Убрать чат из исключений"; +"Un-exclude story seen" = "Убрать просмотр истории из исключений"; +"Un-excluded" = "Исключение убрано"; +"Unblocked" = "Разблокировано"; +"Unlimited replay enabled" = "Неограниченный повтор включён"; +"Unmute story audio" = "Включить звук истории"; +"Unsent" = "Отозвано"; +"Upload Audio" = "Загрузить аудио"; +"VC not found" = "VC не найден"; +"Video from Library" = "Видео из медиатеки"; +"Visual messages will expire" = "Визуальные сообщения истекут"; +"Visual messages: expiring" = "Визуальные сообщения: с истечением"; +"Visual messages: unlimited replay" = "Визуальные сообщения: неограниченный повтор"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "Добавить фон"; +"Add Chat Background" = "Добавить фон чата"; +"Adds your own image backgrounds to Instagram chats" = "Добавляет собственные фоны-изображения в чаты Instagram"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "После включения откройте любой чат, нажмите кнопку темы, затем значок фото в правом верхнем углу."; +"Blur" = "Размытие"; +"Browse chats" = "Просмотр чатов"; +"Browse chats (%ld)" = "Просмотр чатов (%ld)"; +"Change Background" = "Изменить фон"; +"Change default" = "Изменить по умолчанию"; +"Chat Backgrounds" = "Фоны чатов"; +"Choose an image used when no chat override exists" = "Выберите изображение, используемое при отсутствии настройки для чата"; +"Clear default" = "Сбросить по умолчанию"; +"Couldn't import image" = "Не удалось импортировать изображение"; +"Adjust settings" = "Настройки"; +"Choose Media" = "Выбрать медиа"; +"Converting GIF" = "Конвертация GIF"; +"Couldn't import video" = "Не удалось импортировать видео"; +"Crop & resize" = "Обрезка и размер"; +"Crop & trim" = "Обрезка и подрезка"; +"Custom Chat Background" = "Свой фон чата"; +"Default background" = "Фон по умолчанию"; +"Dim in dark mode" = "Затемнять в тёмной теме"; +"Enable custom backgrounds" = "Включить свои фоны"; +"Enter a username, chat name, or thread ID." = "Введите имя пользователя, название чата или ID треда."; +"Group" = "Группа"; +"Image Settings" = "Настройки изображения"; +"Auto bubble color" = "Авто-цвет пузырьков"; +"Bubble color" = "Цвет пузырьков"; +"Me" = "Я"; +"Both" = "Оба"; +"Gradient" = "Градиент"; +"Direction" = "Направление"; +"Vertical" = "Вертикально"; +"Horizontal" = "Горизонтально"; +"Diagonal" = "Диагонально"; +"Text color" = "Цвет текста"; +"Automatic (contrast)" = "Автоматически (контраст)"; +"Choose color…" = "Выбрать цвет…"; +"Tap to apply · hold to edit" = "Нажмите, чтобы применить · удерживайте для изменения"; +"Library" = "Библиотека"; +"Library, default, and per-chat overrides will be deleted." = "Библиотека, фон по умолчанию и настройки чатов будут удалены."; +"No Custom" = "Без своего"; +"Opacity" = "Непрозрачность"; +"Photo Library" = "Медиатека"; +"Pick default" = "Выбрать по умолчанию"; +"Pinch + drag to position" = "Сведите пальцы и перетащите для позиционирования"; +"Quit and reopen Instagram for the change to take effect." = "Закройте и снова откройте Instagram, чтобы изменение вступило в силу."; +"Recently set" = "Недавно заданные"; +"Remove the global fallback background" = "Удалить глобальный запасной фон"; +"Replace the default background image" = "Заменить изображение фона по умолчанию"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "Сброс устанавливает непрозрачность 1.0, размытие 0, затемнение 0."; +"RyukGram Gallery" = "Галерея RyukGram"; +"Search username, name, or thread ID" = "Поиск по имени пользователя, имени или ID треда"; +"Set as default" = "Сделать по умолчанию"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "Нажмите «плюс» для добавления. Нажмите фон, чтобы изменить, сделать по умолчанию или удалить."; +"This Chat Background" = "Фон этого чата"; +"Thread ID" = "ID треда"; +"Used only when a chat does not have its own custom background." = "Используется только когда у чата нет собственного фона."; +"View and manage chats with custom backgrounds" = "Просмотр и управление чатами со своими фонами"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "Добавить местоположение"; +"Add preset" = "Добавить пресет"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "Влияет на всё выше. Когда выключено, тема RyukGram и переопределения поверхностей применяются только если iOS в тёмном режиме — светлый режим остаётся нетронутым."; +"Apply & restart" = "Применить и перезапустить"; +"Background" = "Фон"; +"Behavior" = "Поведение"; +"Change location" = "Изменить местоположение"; +"Clipboard is not an Instagram URL" = "В буфере обмена нет ссылки Instagram"; +"Comments hidden" = "Комментарии скрыты"; +"Comments shown" = "Комментарии показаны"; +"Copied text to clipboard" = "Текст скопирован в буфер обмена"; +"Copy" = "Копировать"; +"Copy bio" = "Копировать био"; +"Copy name" = "Копировать имя"; +"Could not find cover image" = "Не удалось найти изображение обложки"; +"Current: %@" = "Текущее: %@"; +"Dark" = "Тёмная"; +"Disable" = "Отключить"; +"Download GIF" = "Скачать GIF"; +"Dropped pin" = "Установленная метка"; +"Emoji" = "Эмодзи"; +"Enable" = "Включить"; +"Enable Location Services for Instagram in Settings to use your current location." = "Включите службы геолокации для Instagram в настройках, чтобы использовать текущее местоположение."; +"Enter emoji" = "Введите эмодзи"; +"Fake location" = "Поддельное местоположение"; +"Force theme" = "Принудительная тема"; +"Keyboard theme" = "Тема клавиатуры"; +"Light" = "Светлая"; +"Location access denied" = "Доступ к геолокации запрещён"; +"Location Services off" = "Службы геолокации выключены"; +"Name" = "Имя"; +"Nothing to copy" = "Нечего копировать"; +"Off, Light, Dark, or OLED" = "Выкл., Светлая, Тёмная или OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "Тема OLED для чатов"; +"Open Settings" = "Открыть настройки"; +"Optional per-surface overrides. Each one is independent of the theme above." = "Дополнительные переопределения по поверхностям. Каждое независимо от темы выше."; +"Override iOS appearance regardless of system mode" = "Переопределять оформление iOS независимо от режима системы"; +"Override the keyboard appearance when typing" = "Переопределить внешний вид клавиатуры при вводе"; +"Pick location" = "Выбрать местоположение"; +"Pure black DM thread + incoming bubbles" = "Чистый чёрный фон чатов и входящих сообщений"; +"Save" = "Сохранить"; +"Save preset" = "Сохранить пресет"; +"Saved locations" = "Сохранённые местоположения"; +"Select color" = "Выбрать цвет"; +"Set location" = "Установить местоположение"; +"The theme RyukGram applies to Instagram." = "Тема, которую RyukGram применяет к Instagram."; +"Theme" = "Тема"; +"Turn Location Services on in Settings → Privacy to use your current location." = "Включите службы геолокации в Настройках → Конфиденциальность, чтобы использовать текущее местоположение."; +"Type an emoji to use as the note bubble icon." = "Введите эмодзи для использования в качестве значка пузыря заметки."; +"Profile picture" = "Фото профиля"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu аккаунт(ов)? Обработаны будут первые %ld, чтобы не упереться в лимиты."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu аккаунт(ов)? Запускается последовательно с небольшой паузой между каждым."; +"%@ followers · %@ following" = "%@ подписчиков · %@ подписок"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%d д назад"; +"%dh ago" = "%d ч назад"; +"%dm ago" = "%d мин назад"; +"%lu accounts followed" = "Подписались на %lu"; +"%lu accounts unfollowed" = "Отписались от %lu"; +"%lu followers · %lu following" = "%lu подписчиков · %lu подписок"; +"%lu followers removed" = "%lu подписчиков удалено"; +"%lu of %lu" = "%lu из %lu"; +"%lu of %lu checks on" = "Включено проверок: %lu из %lu"; +"%lu saved · comparing against %@" = "%lu сохранено · сравнение с %@"; +"(empty)" = "(пусто)"; +"(no analyzer data)" = "(нет данных анализатора)"; +"a saved snapshot" = "сохранённый снимок"; +"About Profile Analyzer" = "О разделе «Анализ профиля»"; +"All preferences (%lu)" = "Все настройки (%lu)"; +"Analysis complete" = "Анализ завершён"; +"Analysis failed" = "Ошибка анализа"; +"Another analysis is already running" = "Другой анализ уже выполняется"; +"Available after your next scan" = "Доступно после следующего анализа"; +"Batch follow" = "Массовая подписка"; +"Batch follow finished" = "Массовая подписка завершена"; +"Batch remove followers" = "Массовое удаление подписчиков"; +"Batch remove followers finished" = "Массовое удаление подписчиков завершено"; +"Batch unfollow" = "Массовая отписка"; +"Batch unfollow finished" = "Массовая отписка завершена"; +"Categories" = "Категории"; +"Checks" = "Проверки"; +"Clear visited profiles" = "Очистить просмотренные профили"; +"Compare next scan against" = "Сравнить следующее сканирование с"; +"Comparing against %@" = "Сравнение с %@"; +"Continue" = "Продолжить"; +"Couldn't fetch profile information" = "Не удалось получить информацию о профиле"; +"Delete %lu snapshots? This can't be undone." = "Удалить %lu снимков? Это нельзя отменить."; +"Delete (%lu)" = "Удалить (%lu)"; +"Delete snapshots" = "Удалить снимки"; +"Delete this snapshot? This can't be undone." = "Удалить этот снимок? Это нельзя отменить."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "Каждое сканирование сохраняет полную копию ваших подписчиков и подписок, чтобы потом можно было сравнить. Все данные остаются на этом устройстве."; +"Export" = "Экспорт"; +"Fetching followers (%lu/%ld)…" = "Загрузка подписчиков (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "Загрузка подписок (%lu/%ld)…"; +"Fetching profile info…" = "Загрузка информации профиля…"; +"File is not a valid RyukGram backup." = "Файл не является корректным экспортом RyukGram."; +"Filter" = "Фильтр"; +"Filter · %lu" = "Фильтр · %lu"; +"First scan: %@" = "Первый анализ: %@"; +"First scan: we collect your followers and following lists and save them locally." = "Первый анализ: собираем ваши списки подписчиков и подписок и сохраняем их локально."; +"Follow back" = "Подписаться в ответ"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "Число подписчиков больше %ld — анализ отключён, чтобы не упереться в лимиты API."; +"Followers" = "Подписчики"; +"Following… %lu / %lu" = "Подписка… %lu / %lu"; +"Gained since last scan" = "Появились с последнего анализа"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "Внимание: функция использует приватный API Instagram. Запуск подряд или сразу после активных подписок/отписок может привести к временному лимиту. Используйте с умеренностью и на свой риск."; +"Import complete" = "Импорт завершён"; +"Include" = "Включить"; +"Keep newest" = "Хранить новейшие"; +"Keep newest snapshots" = "Хранить новейшие снимки"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "Большие аккаунты заблокированы: анализ отключён при количестве подписчиков больше 13 000, чтобы Instagram не ограничил всё приложение."; +"Last scan: %@" = "Последний анализ: %@"; +"Logs every profile you open. Stays on-device." = "Записывает каждый открываемый профиль. Хранится только на устройстве."; +"Lost followers" = "Потерянные подписчики"; +"Most visited" = "Самые посещаемые"; +"Mutual followers" = "Взаимные подписчики"; +"Name: %@ → %@" = "Имя: %@ → %@"; +"New followers" = "Новые подписчики"; +"NEW" = "НОВОЕ"; +"New first" = "Сначала новые"; +"New only" = "Только новые"; +"No active Instagram session found" = "Активная сессия Instagram не найдена"; +"No results" = "Нет результатов"; +"No scan yet" = "Анализа ещё нет"; +"Not following you back" = "Не подписаны на вас в ответ"; +"Not verified only" = "Только неверифицированные"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "Ничего не загружается — все данные остаются на этом устройстве и могут быть удалены по иконке корзины."; +"Nothing was applied." = "Ничего не применено."; +"OK" = "ОК"; +"Older snapshots beyond the limit are removed automatically" = "Старые снимки сверх лимита удаляются автоматически"; +"Older snapshots beyond this limit are deleted on the next scan." = "Старые снимки сверх этого лимита удаляются при следующем сканировании."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "Выберите, что удалить. «Снимки» очищает различия сканирований и все записанные снимки; «посещённые профили» стирает историю посещений."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "Выберите, какие категории вычисляет каждое сканирование. Отключённая проверка отображается серой и пропускается — она не вычисляется и не отображается."; +"Posts" = "Публикации"; +"Preferences" = "Настройки"; +"Previous scan" = "Предыдущее сканирование"; +"Private account" = "Закрытый аккаунт"; +"Private only" = "Только закрытые"; +"Profile Analyzer" = "Анализ профиля"; +"Profile Analyzer data" = "Данные анализатора профиля"; +"Profile picture changed" = "Фото профиля изменено"; +"Profile updates" = "Изменения профиля"; +"Profiles you've opened recently" = "Недавно открытые профили"; +"Raw" = "Сырое"; +"Raw JSON" = "Сырой JSON"; +"Record snapshots" = "Записывать снимки"; +"Remove @%@ as a follower?" = "Удалить @%@ из подписчиков?"; +"Remove follower" = "Удалить подписчика"; +"Removing… %lu / %lu" = "Удаление… %lu / %lu"; +"Recording" = "Запись"; +"Request failed" = "Запрос не выполнен"; +"Reset analyzer data" = "Сбросить данные анализатора"; +"Reset complete" = "Сброс завершён"; +"Reset everything" = "Сбросить всё"; +"Reset selected data?" = "Сбросить выбранные данные?"; +"Reset snapshots" = "Сбросить снимки"; +"Rolling — always your last run" = "Скользящее — всегда ваш последний запуск"; +"Run analysis" = "Запустить анализ"; +"Run your first analysis" = "Запустите первый анализ"; +"Save a dated entry on every scan" = "Сохранять датированную запись при каждом сканировании"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "Со второго анализа: каждый сравнивается с предыдущим — видно новых/потерянных подписчиков, ваши собственные подписки/отписки и изменения профилей."; +"Settings" = "Настройки"; +"Since last scan" = "С последнего анализа"; +"Snapshot" = "Снимок"; +"Snapshot saved" = "Снимок сохранён"; +"Snapshots" = "Снимки"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "Снимки позволяют архивировать каждое сканирование и выбирать, с каким из них сравнивать новые. «Отслеживать посещения» записывает каждый открытый профиль, чтобы вы могли просмотреть их здесь."; +"Sort" = "Сортировка"; +"Starting…" = "Начинаем…"; +"They follow you, you don't follow back" = "Они подписаны на вас, вы — нет"; +"This can't be undone." = "Отменить это будет нельзя."; +"Ticked data will be cleared. Tap a row to see what's stored." = "Выбранные данные будут удалены. Нажмите любую строку, чтобы увидеть, что сохранено."; +"Today" = "Сегодня"; +"Too many followers" = "Слишком много подписчиков"; +"Too many followers to analyze" = "Слишком много подписчиков для анализа"; +"Track visited profiles" = "Отслеживать просмотренные профили"; +"Tracking" = "Отслеживание"; +"Tracking off — enable below to log visits" = "Отслеживание выключено — включите ниже для записи посещений"; +"Unfollow" = "Отписаться"; +"Unfollow %lu" = "Отписаться от %lu"; +"Unfollow @%@?" = "Отписаться от @%@?"; +"Unfollowed you since last scan" = "Отписались от вас с последнего анализа"; +"Unfollowing… %lu / %lu" = "Отписка… %lu / %lu"; +"Unlimited" = "Без ограничений"; +"Username A → Z" = "Логин А → Я"; +"Username Z → A" = "Логин Я → А"; +"Username, name or picture changes" = "Изменения логина, имени или фото"; +"Username: @%@ → @%@" = "Логин: @%@ → @%@"; +"Using %@ across %lu snapshots." = "Используется %@ для %lu снимков."; +"Verified only" = "Только верифицированные"; +"Visited" = "Посещено"; +"Visited profiles" = "Просмотренные профили"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "Не запускается, когда подписчиков больше %ld — во избежание лимитов Instagram."; +"You both follow each other" = "Вы подписаны друг на друга"; +"You don't follow back" = "Вы не подписаны в ответ"; +"You follow them, they don't follow back" = "Вы подписаны на них, они — нет"; +"You started following" = "Вы подписались"; +"Your current scan was archived" = "Текущее сканирование перенесено в архив"; +"You unfollowed" = "Вы отписались"; +"your previous scan" = "ваше предыдущее сканирование"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "«Предыдущее сканирование» всегда сравнивает с вашим последним запуском. Выберите сохранённый снимок, чтобы сравнивать с фиксированным моментом времени."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ Размер растёт — снизьте лимит или удалите старые снимки, чтобы освободить место."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "Абсолютный формат"; +"Add chat" = "Добавить чат"; +"Add custom domain" = "Добавить свой домен"; +"Add to list?" = "Добавить в список?"; +"Add user" = "Добавить пользователя"; +"Apply" = "Применить"; +"Apply to" = "Применить к"; +"Chats" = "Чаты"; +"Colored" = "Цветной"; +"Could not read file." = "Не удалось прочитать файл."; +"Could not resolve user ID" = "Не удалось определить ID пользователя"; +"Current location" = "Текущее местоположение"; +"Custom" = "Свои"; +"Delete" = "Удалить"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "Каждая поверхность IG использует свой форматтер NSDate. Включите те, к которым нужно применить этот формат."; +"Enable fake location" = "Включить поддельное местоположение"; +"Excluded chats" = "Исключённые чаты"; +"Excluded users" = "Исключённые пользователи"; +"Follow default" = "Следовать значению по умолчанию"; +"Force OFF (allow unsends)" = "Принудительно ВЫКЛ. (разрешить отзыв)"; +"Force ON (preserve unsends)" = "Принудительно ВКЛ. (сохранять отозванные)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "Включать секунды, когда формат уже показывает время. Пользовательский формат сам управляет секундами через {ss}."; +"Add custom format…" = "Добавить пользовательский формат…"; +"Edit" = "Изменить"; +"Template" = "Шаблон"; +"Placeholders" = "Заполнители"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "Заполнители заменяются частями даты; всё остальное отображается как есть."; +"Tap a placeholder to insert it at the cursor." = "Нажмите на заполнитель, чтобы вставить его в позицию курсора."; +"Included chats" = "Включённые чаты"; +"Included users" = "Включённые пользователи"; +"KD: default" = "KD: по умолчанию"; +"KD: ON" = "KD: ВКЛ."; +"Keep-deleted" = "Хранить удалённые"; +"Keep-deleted override" = "Переопределение keep-deleted"; +"Name (A–Z)" = "Имя (А–Я)"; +"No DM thread found with @%@" = "Переписка в личных сообщениях с @%@ не обнаружена"; +"Presets" = "Пресеты"; +"Recently added" = "Недавно добавленные"; +"Relative time" = "Относительное время"; +"Relative within" = "Относительно в пределах"; +"Remove from list" = "Убрать из списка"; +"Reset" = "Сбросить"; +"Search" = "Поиск"; +"Search address or place" = "Искать адрес или место"; +"Search by name or username" = "Поиск по имени или имени пользователя"; +"Search by username or name" = "Поиск по имени пользователя или имени"; +"Select location on map" = "Выбрать местоположение на карте"; +"Set current location" = "Установить текущее местоположение"; +"Set keep-deleted override" = "Задать переопределение keep-deleted"; +"Show map button" = "Показывать кнопку карты"; +"Show relative time for dates younger than this many days. 0 disables it." = "Показывать относительное время для дат младше указанного числа дней. 0 отключает."; +"Show seconds" = "Показывать секунды"; +"Sort by" = "Сортировать по"; +"Thread" = "Тред"; +"Time" = "Время"; +"Use this location" = "Использовать это местоположение"; +"User '%@' not found" = "Пользователь '%@' не найден"; +"Username (A–Z)" = "Пользователь (А–Я)"; +"Within %ld days" = "В пределах %ld дней"; +"Within 1 day" = "В пределах 1 дня"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "Пароль не найден"; +"No text field found" = "Текстовое поле не найдено"; +"Refresh Reels?" = "Обновить рилсы?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu аккаунтов"; +"%lu loaded" = "%lu загружено"; +"%lu loaded · all loaded" = "%lu загружено · все загружены"; +"Doesn't follow you" = "Не подписан на вас"; +"Everyone is already loaded." = "Все уже загружены."; +"Filter & sort" = "Фильтр и сортировка"; +"Follows me" = "Подписан на меня"; +"Follows me first" = "Сначала подписанные на меня"; +"Follows you" = "Подписан на вас"; +"Hides everyone who doesn't match all picked filters." = "Скрывает всех, кто не соответствует всем выбранным фильтрам."; +"Jump to bottom" = "Перейти вниз"; +"Jump to top" = "Перейти вверх"; +"List" = "Список"; +"List fully loaded" = "Список полностью загружен"; +"Load more" = "Загрузить ещё"; +"Loaded more" = "Загружено ещё"; +"Mutuals" = "Взаимные"; +"Mutuals first" = "Сначала взаимные"; +"Note copied" = "Заметка скопирована"; +"People I follow" = "Мои подписки"; +"People I follow first" = "Сначала мои подписки"; +"Reverse order" = "Обратный порядок"; +"Show only" = "Показывать только"; +"Verified" = "Подтверждённые"; +"Verified first" = "Сначала подтверждённые"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(не задано)"; +"720p • progressive • fastest" = "720p • прогрессивный • самый быстрый"; +"Add language" = "Добавить язык"; +"Album name" = "Название альбома"; +"Are you sure?" = "Вы уверены?"; +"Bundle" = "Пакет"; +"Copy audio URL" = "Копировать URL аудио"; +"Copy quality info" = "Копировать информацию о качестве"; +"Copy video URL" = "Копировать URL видео"; +"Could not access reel media" = "Не удалось получить доступ к медиа рилса"; +"Could not access reel photo" = "Не удалось получить доступ к фото рилса"; +"Could not write file." = "Не удалось записать файл."; +"Download all and share?" = "Скачать всё и поделиться?"; +"Download Quality" = "Качество загрузки"; +"Downloading %d%%" = "Скачивание %d%%"; +"e.g. 1000000" = "напр. 1000000"; +"Localization file not found" = "Файл локализации не найден"; +"Enter the language code (e.g. fr, de, ja)" = "Введите код языка (например, fr, de, ja)"; +"Error" = "Ошибка"; +"Extras" = "Дополнительно"; +"FFmpegKit Debug" = "Отладка FFmpegKit"; +"File is empty or not a valid .strings file." = "Файл пуст или не является допустимым файлом .strings."; +"KD: OFF" = "KD: ВЫКЛ."; +"Keep-deleted: OFF" = " • Хранить удалённые: ВЫКЛ."; +"Keep-deleted: ON" = " • Хранить удалённые: ВКЛ."; +"Later" = "Позже"; +"Loading" = "Загрузка"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "Название альбома в «Фото», куда сохраняет RyukGram. Оставьте пустым, чтобы вернуть значение по умолчанию."; +"Next" = "Далее"; +"No results found." = "Ничего не найдено."; +"No!" = "Нет!"; +"Pick a language to update, or add a new one" = "Выберите язык для обновления или добавьте новый"; +"Preset" = "Пресет"; +"Restart" = "Перезапустить"; +"Restart now" = "Перезапустить сейчас"; +"Restart required" = "Требуется перезапуск"; +"Saved preset \"%@\"" = "Пресет \"%@\" сохранён"; +"selected" = "выбрано"; +"Shared icon, or override per button" = "Общий значок или переопределение по кнопкам"; +"Speed" = "Скорость"; +"Unset" = "Не задано"; +"Update localization" = "Обновить локализацию"; +"Updated %@ (%ld keys). Restart to apply." = "Обновлено %@ (%ld ключей). Перезапустите для применения."; +"Use default" = "Использовать по умолчанию"; +"Username or PK" = "Имя пользователя или PK"; +"Username or raw user PK" = "Имя пользователя или необработанный PK"; +"Yes" = "Да"; +"You must restart the app to apply this change" = "Для вступления изменения в силу перезапустите приложение"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "Нравится RyukGram?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "Это бесплатно, и ничего не покидает ваше устройство. Если вам нравится, чашка кофе поможет проекту жить."; +"Donate" = "Поддержать"; +"I already did" = "Уже поддержал"; +"Maybe later" = "Может, позже"; +"This means a lot" = "Это много значит"; +"Appreciate the support" = "Спасибо за поддержку"; +"No worries, enjoy the tweak" = "Ничего страшного, пользуйтесь на здоровье"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, поддержать"; +"About" = "О программе"; +"Arabic translation" = "Арабский перевод"; +"Chinese (Traditional and Simplified) translation" = "Китайский перевод (традиционный и упрощённый)"; +"Credits" = "Благодарности"; +"Developers" = "Разработчики"; +"installed" = "установлено"; +"Korean translation" = "Корейский перевод"; +"Portuguese (Brazil) translation" = "Перевод на португальский (Бразилия)"; +"Turkish translation" = "Турецкий перевод"; +"Vietnamese translation" = "Вьетнамский перевод"; +"French translation" = "Французский перевод"; +"Japanese translation" = "Японский перевод"; +"Code contributions" = "Вклад в код"; +"Following feed mode (from InstaSane)" = "Режим ленты Подписки (из InstaSane)"; +"latest" = "последняя"; +"Links" = "Ссылки"; +"No releases" = "Нет выпусков"; +"SCInsta developer" = "Разработчик SCInsta"; +"Release notes" = "Примечания к выпуску"; +"Releases" = "Выпуски"; +"Report an issue" = "Сообщить о проблеме"; +"Russian translation" = "Русский перевод"; +"RyukGram developer" = "Разработчик RyukGram"; +"Join Telegram channel" = "Присоединиться к Telegram-каналу"; +"Source code" = "Исходный код"; +"View on GitHub" = "Открыть на GitHub"; +"Spanish translation" = "Испанский перевод"; +"Inspirations" = "Источники вдохновения"; +"Inspirations, contributors, translators" = "Источники вдохновения, контрибьюторы, переводчики"; +"Code and research" = "Код и исследования"; +"Translators" = "Переводчики"; +"BHInstagram developer" = "Разработчик BHInstagram"; +"OLED theme inspiration" = "Вдохновение OLED-темы"; +"Donate to Ryuk" = "Поддержать Ryuk"; +"Support RyukGram development" = "Поддержать разработку RyukGram"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram — это независимый проект, вдохновлённый SCInsta."; +"Browse changes from previous releases" = "Посмотреть изменения в прошлых версиях"; +"Code inspiration" = "Вдохновение для кода"; +"zxPluginsInject sideload compatibility shim" = "Прослойка совместимости sideload zxPluginsInject"; +"Telegram channel" = "Telegram-канал"; +"Testing and feature suggestions" = "Тестирование и предложения функций"; +"Version" = "Версия"; +"Version, credits, and links" = "Версия, благодарности и ссылки"; +"What's new in RyukGram" = "Что нового в RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • прогрессивный • без звука"; +"Audio only" = "Только аудио"; +"Audio ready" = "Аудио готово"; +"Audio track %ld" = "Аудиодорожка %ld"; +"Download video at the highest available quality" = "Загружать ролики в наивысшем доступном качестве"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "Загружает HD-видео из DASH-потоков и перекодирует в H.264. Нужен FFmpegKit."; +"Encoding in software" = "Кодирование программно"; +"Encoding speed" = "Скорость кодирования"; +"Enhanced downloads" = "Расширенные загрузки"; +"Faster = lower quality" = "Быстрее = ниже качество"; +"FFmpeg not available" = "FFmpeg недоступен"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit отсутствует. Для активации поставьте IPA через сайдлоад либо вариант .deb с _ffmpeg."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "Аппаратный кодировщик недоступен в фоне — ваши настройки качества сохранены."; +"No audio track found" = "Аудиодорожка не найдена"; +"Photo" = "Фото"; +"Photo quality" = "Качество фото"; +"Size unknown" = "Размер неизвестен"; +"calculating size…" = "вычисление размера…"; +"silent" = "без звука"; +"Use highest resolution available" = "Использовать максимально доступное разрешение"; +"Video encoder locked up — restart Instagram to encode again" = "Видеокодировщик завис — перезапустите Instagram, чтобы кодировать снова"; +"Video only" = "Только видео"; +"Video-only & every audio track" = "Только видео и все аудиодорожки"; +"Video quality" = "Качество видео"; +"Which quality to download" = "Какое качество скачивать"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' нет в этой сборке FFmpegKit — используется аппаратный h264."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-бит 4:2:0. ~2x медленнее, плавнее градиенты."; +"10-bit colour. Slower, smoother gradients. Software only." = "10-бит цвет. Медленнее, плавнее градиенты. Только программно."; +"1080p30 baseline." = "Базовый 1080p30."; +"4K30 baseline." = "Базовый 4K30."; +"8-bit 4:2:0. Universal default." = "8-бит 4:2:0. Универсальный по умолчанию."; +"8-bit 4:2:2 chroma. Niche playback." = "8-бит 4:2:2 цветность. Нишевое воспроизведение."; +"8-bit 4:2:2 chroma. Software only." = "8-бит 4:2:2 цветность. Только программно."; +"8-bit 4:4:4 chroma. Software only." = "8-бит 4:4:4 цветность. Только программно."; +"8-bit 4:4:4 full chroma. Niche playback." = "8-бит 4:4:4 полная цветность. Нишевое воспроизведение."; +"8-bit. Best for modern devices." = "8-бит. Лучше для современных устройств."; +"Advanced encoding" = "Расширенное кодирование"; +"Advanced encoding settings" = "Настройки расширенного кодирования"; +"Archival quality." = "Архивное качество."; +"Audio bitrate" = "Битрейт аудио"; +"Audio channels" = "Аудиоканалы"; +"Audio codec" = "Аудиокодек"; +"Audio conversion failed" = "Не удалось преобразовать аудио"; +"Audio sample rate" = "Частота дискретизации аудио"; +"Balanced. libx264 default." = "Сбалансированный. По умолчанию для libx264."; +"Best practical quality per bit." = "Лучшее практическое качество на бит."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "Битрейт, каналы и частота дискретизации применяются только при кодеке AAC (перекодирование)."; +"Cartoons / anime." = "Мультфильмы / аниме."; +"Cinematic. Smaller files." = "Кинематографично. Файлы меньше."; +"Codec" = "Кодек"; +"Container" = "Контейнер"; +"Copy (passthrough)" = "Копировать (без перекодирования)"; +"CRF quality" = "Качество CRF"; +"Downloading video…" = "Загрузка видео…"; +"Easier to play back on weak devices." = "Проще воспроизводить на слабых устройствах."; +"Encoder unavailable" = "Кодировщик недоступен"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "Примеры: 8M, 12M, 25M, 4500k. Оставьте пустым для авто."; +"Failed to download video" = "Не удалось загрузить видео"; +"Fast, fixed-bitrate, GPU-accelerated." = "Быстро, фиксированный битрейт, ускорение GPU."; +"Fastest, worst compression." = "Быстрее всего, худшее сжатие."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart перемещает индекс MP4 в начало, чтобы воспроизведение начиналось до полной буферизации файла. «Удалить метаданные» убирает из файла исходные теги (дата создания, обработчик, кодировщик)."; +"FFmpeg documentation" = "Документация FFmpeg"; +"FFmpeg mux failed" = "Не удалось выполнить мультиплексирование FFmpeg"; +"Frame rate" = "Частота кадров"; +"H.264 level" = "Уровень H.264"; +"H.264 profile" = "Профиль H.264"; +"Hardware (VideoToolbox)" = "Аппаратно (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "Аппаратное (VideoToolbox) поддерживает только yuv420p — '%@' проигнорирован. Переключитесь на программное (libx264), чтобы использовать его."; +"Keep original audio. Fast." = "Сохранить исходное аудио. Быстро."; +"Keep the source frame rate." = "Сохранить исходную частоту кадров."; +"Let the encoder pick." = "Пусть выберет кодировщик."; +"Live-action video." = "Реальное видео."; +"Lossless. Huge files." = "Без потерь. Огромные файлы."; +"Low-latency streaming." = "Стриминг с низкой задержкой."; +"Manual ffmpeg controls in place of Encoding speed." = "Ручное управление ffmpeg вместо скорости кодирования."; +"Marginal gain, huge time cost." = "Незначительный выигрыш, огромные затраты времени."; +"Max resolution" = "Макс. разрешение"; +"Mono" = "Моно"; +"No tuning. Default." = "Без настройки. По умолчанию."; +"None" = "Нет"; +"Pixel format" = "Формат пикселей"; +"Pixel format ignored" = "Формат пикселей проигнорирован"; +"Preserve film grain." = "Сохранить зернистость плёнки."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "Preset и Tune применяются только к программному (libx264). Сочетайте профиль с форматом пикселей: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Несоответствия незаметно понижают формат. Аппаратное всегда использует yuv420p."; +"Re-encode. Use when source is opus or unsupported." = "Перекодировать. Используйте, если источник opus или не поддерживается."; +"Reset advanced encoding" = "Сбросить расширенное кодирование"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "Задание битрейта видео переводит программное кодирование в режим фиксированного битрейта и игнорирует CRF. Оставьте пустым для CRF. Аппаратное использует битрейт."; +"Slideshow-like content." = "Контент типа слайд-шоу."; +"Slower, better compression per bit." = "Медленнее, лучше сжатие на бит."; +"Smaller, visible artefacts." = "Меньше, заметные артефакты."; +"Software (libx264)" = "Программно (libx264)"; +"Standard 8-bit." = "Стандартный 8-бит."; +"Stereo" = "Стерео"; +"Streaming default." = "По умолчанию для стриминга."; +"Strip metadata" = "Удалить метаданные"; +"Top of AAC." = "Максимум для AAC."; +"Tune" = "Настроить"; +"Unknown error" = "Неизвестная ошибка"; +"Very high quality." = "Очень высокое качество."; +"Video bitrate" = "Битрейт видео"; +"Video codec" = "Видеокодек"; +"Visually lossless. RyukGram default." = "Визуально без потерь. По умолчанию для RyukGram."; +"Widest compatibility, no B-frames." = "Самая широкая совместимость, без B-кадров."; +"Worst quality." = "Худшее качество."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "Жесты длительного нажатия"; +"Inserts a button in the profile navigation header" = "Добавляет кнопку в навигационный заголовок профиля"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "Добавляет кнопку действий RyukGram в заголовок профиля с пунктами копирования, просмотра фото, поделиться, сохранить и сведения о профиле. По умолчанию нажатие открывает меню; поведение можно изменить в разделе «Настроить меню»."; +"Configure menu" = "Настроить меню"; +"Reorder, enable/disable, set default tap, show date" = "Изменение порядка, вкл./выкл., действие по умолчанию, показ даты"; +"Reorder, enable/disable, set default tap" = "Изменение порядка, вкл./выкл., действие по умолчанию"; +"RyukGram profile actions" = "Действия профиля RyukGram"; +"Reorder sections" = "Изменить порядок разделов"; +"Drag the ≡ handle to reorder sections." = "Перетаскивайте маркер ≡, чтобы изменить порядок разделов."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "Перетаскивайте маркер ≡, чтобы изменить порядок. Выключите строку, чтобы скрыть её из меню. Отметьте раздел как подменю, чтобы свернуть его действия за одним пунктом."; +"Show as submenu" = "Показывать как подменю"; +"Collapse this section's actions behind a single entry" = "Свернуть действия этого раздела за один пункт"; +"Configure: %@" = "Настроить: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "Что происходит при одиночном нажатии. Долгое нажатие всегда открывает полное меню."; +"Reset to defaults" = "Сбросить к значениям по умолчанию"; +"This will restore the default sections, order, and toggles for this menu." = "Это восстановит разделы, порядок и переключатели этого меню по умолчанию."; +"Audio & visibility" = "Аудио и видимость"; +"DM disappearing media" = "Исчезающие медиа в DM"; +"Bulk download" = "Массовое скачивание"; +"Feed settings" = "Настройки ленты"; +"Reels settings" = "Настройки рилсов"; +"Profile settings" = "Настройки профиля"; +"Stories settings" = "Настройки историй"; +"Copy ID" = "Копировать ID"; +"Copy Info" = "Копировать сведения"; +"Copy all info" = "Копировать всю информацию"; +"Copy media URL" = "Копировать ссылку на медиа"; +"Copy profile link" = "Копировать ссылку на профиль"; +"Copy username" = "Копировать логин"; +"Download" = "Скачать"; +"Download to Gallery" = "Скачать в Галерею"; +"Download all to Gallery" = "Скачать всё в Галерею"; +"Exclude/include user" = "Исключить/включить пользователя"; +"Mute / unmute audio" = "Включить/выключить звук"; +"Save picture to Gallery" = "Сохранить фото в Галерею"; +"Share picture" = "Поделиться фото"; +"View picture" = "Просмотреть фото"; +"Bio" = "Био"; +"ID" = "ID"; +"Info" = "Сведения"; +"Profile info" = "информация профиля"; +"Profile link" = "Ссылка на профиль"; +"Picture not found" = "Фото не найдено"; +"Private profile" = "Закрытый профиль"; +"Profile unavailable" = "Профиль недоступен"; +"Public profile" = "Открытый профиль"; +"Username" = "Логин"; +"Followers: %@" = "Подписчики: %@"; +"Following: %@" = "Подписки: %@"; +"Copied %@" = "Скопировано: %@"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(неизвестно)"; +"Added %lu" = "Добавлено %lu"; +"All files deleted" = "Все файлы удалены"; +"Browsing" = "Просмотр"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "Найдено %lu элементов, сохранённых предыдущей версией. Восстановить их в галерею сейчас?"; +"Gallery data from a previous version was found. Restore it now?" = "Найдены данные галереи от предыдущей версии. Восстановить сейчас?"; +"Gallery restored" = "Галерея восстановлена"; +"Import failed" = "Ошибка импорта"; +"Import to Gallery" = "Импорт в галерею"; +"Imported" = "Импортировано"; +"Importing…" = "Импорт…"; +"Not Now" = "Не сейчас"; +"Nothing imported" = "Ничего не импортировано"; +"Restore" = "Восстановить"; +"Restore Gallery" = "Восстановить галерею"; +"Restore failed" = "Не удалось восстановить"; +"Restoring gallery…" = "Восстановление галереи…"; +"By source" = "По источнику"; +"By type" = "По типу"; +"By user" = "По пользователю"; +"Clear filters" = "Сбросить фильтры"; +"Comment" = "Комментарий"; +"Create" = "Создать"; +"Create & Move" = "Создать и переместить"; +"Delete %@?" = "Удалить %@?"; +"Delete all files" = "Удалить все файлы"; +"Delete all images" = "Удалить все изображения"; +"Delete all videos" = "Удалить все видео"; +"Delete by user" = "Удалить по пользователю"; +"Delete DM media" = "Удалить медиа из DM"; +"Delete feed posts" = "Удалить посты ленты"; +"Delete files" = "Удалить файлы"; +"Delete Folder" = "Удалить папку"; +"Delete from Gallery?" = "Удалить из Галереи?"; +"Delete profile pictures" = "Удалить фото профилей"; +"Delete reels" = "Удалить рилсы"; +"Delete selected" = "Удалить выбранное"; +"Delete Selected Files?" = "Удалить выбранные файлы?"; +"Delete stories" = "Удалить истории"; +"Delete thumbnails" = "Удалить миниатюры"; +"Deleted from Gallery" = "Удалено из Галереи"; +"Deleted selected files" = "Выбранные файлы удалены"; +"Deselect All" = "Снять выделение"; +"DM media deleted" = "Медиа из DM удалены"; +"DMs" = "Сообщения"; +"Each user appears as a folder next to your real folders." = "Каждый пользователь отображается как папка рядом с вашими реальными папками."; +"Each user gets a labelled section in the grid/list." = "Каждый пользователь получает отдельный раздел в сетке/списке."; +"Enable gallery" = "Включить Галерею"; +"Failed" = "Ошибка"; +"Failed to delete" = "Не удалось удалить"; +"Favorite" = "В избранное"; +"Favorite selected" = "В избранное выбранное"; +"Favorites only" = "Только избранное"; +"Feed posts deleted" = "Посты ленты удалены"; +"Files deleted" = "Файлы удалены"; +"Flat list. No grouping." = "Плоский список. Без группировки."; +"Folder name" = "Имя папки"; +"Folders" = "Папки"; +"From RyukGram Gallery" = "Аудио из Галереи RyukGram"; +"Gallery" = "Галерея"; +"Gallery only" = "Только Галерея"; +"Gallery save mode" = "Режим сохранения Галереи"; +"Gallery Settings" = "Настройки Галереи"; +"GIFs" = "GIF"; +"Grid columns" = "Столбцы сетки"; +"Grid view" = "Сеткой"; +"Group by user" = "Группировать по пользователю"; +"Group first by" = "Сначала группировать по"; +"Order by" = "Сортировать по"; +"Favorites first" = "Сначала избранное"; +"Any time" = "Любое время"; +"This year" = "В этом году"; +"%ld columns" = "Столбцов: %ld"; +"Hold DM tab to open gallery" = "Удерживайте вкладку DM, чтобы открыть галерею"; +"Images" = "Изображения"; +"Images deleted" = "Изображения удалены"; +"Images first" = "Сначала изображения"; +"item" = "файл"; +"items" = "файлов"; +"Largest first" = "Сначала большие"; +"List view" = "Списком"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "Удерживайте кнопку входящих в нижней панели, чтобы открыть галерею RyukGram"; +"Manage" = "Управление"; +"More" = "Ещё"; +"Move selected" = "Переместить выбранное"; +"Move to Folder" = "Переместить в папку"; +"Name A-Z" = "Имя А–Я"; +"Name Z-A" = "Имя Я–А"; +"New Folder" = "Новая папка"; +"New folder…" = "Новая папка…"; +"Newest first" = "Сначала новые"; +"No files in Gallery" = "В Галерее нет файлов"; +"No files to delete" = "Нет файлов для удаления"; +"No matching files" = "Нет подходящих файлов"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "Локальная библиотека медиа, скачанного через RyukGram. Режим сохранения определяет, куда фактически записывает «Скачать в Фото»."; +"Open" = "Открыть"; +"Open Original Post" = "Открыть оригинальный пост"; +"Options" = "Параметры"; +"Other" = "Другое"; +"Photos + Gallery" = "Фото + Галерея"; +"Photos only" = "Только Фото"; +"Profile pictures deleted" = "Фото профилей удалены"; +"Reels deleted" = "Рилсы удалены"; +"Rename" = "Переименовать"; +"Rename Folder" = "Переименовать папку"; +"Root" = "Корень"; +"Save media from the preview screen\nto see it here." = "Сохраняйте медиа с экрана предпросмотра,\nчтобы увидеть их здесь."; +"Saved %lu items to Gallery" = "Сохранено в Галерею: %lu"; +"Saved to Gallery" = "Сохранено в Галерею"; +"Saving to Gallery" = "Сохранение в Галерею…"; +"Search users" = "Поиск пользователей"; +"Sections" = "Разделы"; +"Select All" = "Выбрать все"; +"Share" = "Поделиться"; +"Share selected" = "Поделиться выбранным"; +"Show favorites at top" = "Показывать избранное сверху"; +"Show gallery entries in download menus and unlock the gallery button" = "Показывать пункты Галереи в меню скачивания и разблокировать кнопку Галереи"; +"Smallest first" = "Сначала маленькие"; +"Source" = "Источник"; +"Source user" = "Источник — пользователь"; +"Storage" = "Хранилище"; +"Stories deleted" = "Истории удалены"; +"Story" = "История"; +"The original content may no longer exist." = "Исходный контент может больше не существовать."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "В этой папке файлов: %ld. Они будут перемещены в родительскую папку."; +"This folder is empty." = "Эта папка пуста."; +"This will permanently remove %ld file%@ from the gallery." = "Это безвозвратно удалит из галереи файлов: %ld%@."; +"This will permanently remove %ld file(s)." = "Это безвозвратно удалит файлов: %ld."; +"This will permanently remove this file from the gallery." = "Это безвозвратно удалит этот файл из галереи."; +"Thumb" = "Миниатюра"; +"Thumbnails deleted" = "Миниатюры удалены"; +"to Gallery" = "в Галерею"; +"Total files" = "Всего файлов"; +"Total size" = "Общий размер"; +"Type" = "Тип"; +"Unable to open original post" = "Не удалось открыть исходный пост"; +"Unable to open profile" = "Не удалось открыть профиль"; +"Unfavorite" = "Убрать из избранного"; +"Unknown user" = "Неизвестный пользователь"; +"User files deleted" = "Файлы пользователя удалены"; +"Videos" = "Видео"; +"Videos deleted" = "Видео удалены"; +"Videos first" = "Сначала видео"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "Когда включено, избранное закрепляется над остальными файлами в текущей сортировке и папке."; +"Where 'Download to Photos' actually writes when gallery is on" = "Куда фактически пишет «Скачать в Фото», когда Галерея включена"; +"Yesterday" = "Вчера"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "Кнопка ярлыка на главной"; +"Show the extra button on the home top bar" = "Настройте дополнительную кнопку на верхней панели главной"; +"Auto" = "Авто"; +"Icon" = "Значок"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "Перетащите маркер ≡ для изменения порядка. Отключите строку, чтобы скрыть это направление. При одном включённом действии нажатие выполняет его; при двух и более — открывает меню."; +"Changelog" = "История изменений"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "Добавляет дополнительную кнопку рядом с кнопкой «+» создания публикации на верхней панели."; +"All buttons" = "Все кнопки"; +"System" = "Система"; +"Instagram language" = "Язык Instagram"; +"Choose icon, reorder actions, and enable menu items" = "Выберите значок, измените порядок действий и включите пункты меню"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "Выберите значок на верхней панели. «Авто» использует значок действия, когда включено только одно действие."; +"Configure button" = "Настроить кнопку"; +"Global Action Icons" = "Глобальные значки действий"; +"Interface" = "Интерфейс"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "Переопределить значок для конкретной кнопки. Кнопки на значении «По умолчанию» используют общий значок выше."; +"Per button" = "По кнопкам"; +"Show home shortcut button" = "Показывать кнопку-ярлык на главной"; +"%ld new" = "%ld новых"; +"Tab bar" = "Панель вкладок"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "Универсальные уведомления. Выберите стиль, положение, маршрутизацию по действиям (плашка / IG / выкл)."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "Перетащите уведомление, чтобы разместить его"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "Перетащите уведомление куда хотите. Выше центра — выезжает вниз, ниже — вверх."; + +"Notifications" = "Уведомления"; +"Appearance" = "Внешний вид"; +"Routing" = "Маршрутизация"; +"Style" = "Стиль"; +"Position" = "Положение"; +"Stack size" = "Размер стопки"; +"Duration" = "Длительность"; +"Default surface" = "Поверхность по умолчанию"; +"System notifications" = "Системные уведомления"; +"Mirror to notification centre" = "Дублировать в центр уведомлений"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "Пока приложение в фоне, тосты доставляются в центр уведомлений iOS, чтобы вы их не пропустили."; +"Clear when app opens" = "Очищать при открытии"; +"Remove mirrored notifications from notification centre when you return to the app." = "Удалять дублированные уведомления из центра уведомлений при возврате в приложение."; +"Background mirror" = "Фоновое дублирование"; +"Show while app is open" = "Показывать при открытом приложении"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "Доставлять зеркальные уведомления как системные баннеры не только в фоне, но и во время использования приложения."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "Оформление, маршрутизация, системные уведомления и все переопределения для действий вернутся к значениям по умолчанию."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Использует разрешение Instagram на уведомления. Настройки для каждого действия — в меню действия, пункт Фоновое дублирование; действия со значением Выкл никогда не дублируются."; +"Enable notifications" = "Включить уведомления"; +"Haptic feedback" = "Тактильная отдача"; +"Preview pill" = "Превью плашки"; +"Preview download pill" = "Превью плашки загрузки"; +"Preview loading pill" = "Превью плашки загрузки"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "Главный выключатель. Когда выключен, никакие уведомления не показываются."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "Универсальные уведомления в приложении. Все сообщения RyukGram (загрузки, копирование, ошибки, успехи) проходят здесь."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal: плоское размытие. Colorful: тонированная. Glow: цветной ореол. Island: капсула Dynamic Island."; +"Top slides down, bottom slides up." = "Сверху сдвигается вниз, снизу — вверх."; +"How many pills can show at once before queueing." = "Сколько плашек может показываться одновременно до очереди."; +"Multiplies how long toasts stay on screen." = "Умножает время показа уведомлений."; +"Vibration on success/error pills." = "Вибрация для плашек успеха/ошибки."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "Для действий-уведомлений выбирайте между нашей плашкой и стандартным уведомлением IG. Переопределения по действиям ниже."; +"What to use when an action doesn't have its own override." = "Что использовать, когда у действия нет собственного переопределения."; +"Tap to cycle: info → success → warning → error" = "Нажмите для переключения: инфо → успех → предупреждение → ошибка"; +"Tap to cycle between success and failure" = "Нажмите для переключения между успехом и неудачей"; +"Progress UI — pill or off only." = "Интерфейс прогресса — только плашка или выкл."; +"Minimal" = "Минимальный"; +"Colorful" = "Цветной"; +"Glow" = "Свечение"; +"Island" = "Островок"; +"Top" = "Сверху"; +"Bottom" = "Снизу"; +"Custom pill" = "Кастомная плашка"; +"IG native toast" = "Стандартное уведомление IG"; +"Short" = "Короткий"; +"Normal" = "Обычный"; +"Long" = "Длинный"; +"Very long" = "Очень длинный"; +"Downloads & saving" = "Загрузки и сохранение"; +"Copy to clipboard" = "Копирование в буфер"; +"Read receipts & seen" = "Отметки о прочтении"; +"Block, exclude & pin" = "Блок, исключения и закрепление"; +"Stories & messages" = "Истории и сообщения"; +"Voice & audio" = "Голос и аудио"; +"Errors" = "Ошибки"; +"Download progress" = "Прогресс загрузки"; +"Bulk download progress" = "Прогресс массовой загрузки"; +"Repost progress" = "Прогресс репоста"; +"Copied post / reel URL" = "URL поста / рилса скопирован"; +"Copied comment text" = "Текст комментария скопирован"; +"Copied GIF link" = "Ссылка на GIF скопирована"; +"Copied note text" = "Текст заметки скопирован"; +"Copied profile info" = "Информация профиля скопирована"; +"Copied audio URL" = "URL аудио скопирован"; +"Copied quality picker URL" = "URL выбора качества скопирован"; +"Copied unlocked password" = "Разблокированный пароль скопирован"; +"Copied description text" = "Текст описания скопирован"; +"DM seen / read receipts" = "Прочтение / просмотры в DM"; +"Story seen / read receipts" = "Прочтение / просмотры историй"; +"Someone read your message" = "Кто-то прочитал ваше сообщение"; +"User blocked / unblocked" = "Пользователь заблокирован / разблокирован"; +"Chat added / removed from exclude" = "Чат добавлен / удалён из исключений"; +"Story user added / removed from exclude" = "Пользователь историй добавлен / удалён из исключений"; +"Share-sheet recipient pinned" = "Получатель в листе поделиться закреплён"; +"Unsent message detected" = "Обнаружено отозванное сообщение"; +"Reaction removed detected" = "Обнаружено удаление реакции"; +"%lu messages unsent" = "%lu сообщений отозвано"; +"%lu reactions removed" = "%lu реакций удалено"; +"%lu chats marked seen" = "%lu чатов отмечено прочитанными"; +"%lu stories marked seen" = "%lu историй отмечено просмотренными"; +"%lu of your messages read" = "%lu ваших сообщений прочитано"; +"%lu notifications" = "%lu уведомлений"; +"Live comments toggled" = "Комментарии в эфире переключены"; +"Custom GIF sent" = "Кастомный GIF отправлен"; +"GIF favorited / unfavorited" = "GIF добавлен / убран из избранного"; +"Voice DM sent" = "Голосовое DM отправлено"; +"Audio extraction status" = "Статус извлечения аудио"; +"Profile Analyzer complete" = "Анализ профиля завершён"; +"Profile Analyzer progress" = "Ход анализа профиля"; +"Media extraction failed" = "Не удалось извлечь медиа"; +"Permission denied" = "Доступ запрещён"; +"Validation error" = "Ошибка валидации"; +"Network / API error" = "Ошибка сети / API"; +"Action error fallback" = "Резервная ошибка действия"; +"Unlock failed" = "Не удалось разблокировать"; +"Chat locked / unlocked" = "Чат заблокирован / разблокирован"; +"Invalid clipboard link" = "Неверная ссылка из буфера"; +"Experimental flag warning" = "Предупреждение об экспериментальном флаге"; +"Settings action confirmed" = "Действие в настройках подтверждено"; +"Cache clearing progress" = "Очистка кэша"; +"Backup export / import" = "Экспорт / импорт резервной копии"; +"Other / uncategorized" = "Прочее / без категории"; +"Comment copied" = "Комментарий скопирован"; +"FFmpeg log copied" = "Лог FFmpeg скопирован"; +"GIF inserted" = "GIF вставлен"; +"Story marked as seen" = "История отмечена прочитанной"; +"Saved" = "Сохранено"; +"Tap to retry" = "Нажмите, чтобы повторить"; +"Looks great" = "Выглядит отлично"; +"Something broke" = "Что-то сломалось"; +"Just so you know" = "К сведению"; +"Success preview" = "Превью успеха"; +"Error preview" = "Превью ошибки"; +"Warning preview" = "Превью предупреждения"; +"Info preview" = "Превью информации"; +"Preview download…" = "Превью загрузки…"; +"Colors" = "Цвета"; +"+ Add new language" = "+ Добавить новый язык"; +"Each chat can override this in the list" = "Каждый чат может переопределить это в списке"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "Если включено, запросы Instagram о местоположении возвращают выбранное фиктивное местоположение. Кнопка карты добавляет быстрый ярлык в Карте друзей."; +"Tap a preset to make it active. Swipe left to delete." = "Нажмите пресет, чтобы активировать. Смахните влево для удаления."; +"Override Instagram location reads." = "Переопределяет чтение местоположения Instagram."; +"Show the quick button in Friends Map." = "Показывать быструю кнопку в Карте друзей."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "Выберите формат абсолютных дат. “По умолчанию” оставляет формат IG без изменений. Смахните пользовательский формат, чтобы изменить или удалить его."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "Даты младше порога отображаются как относительное время. Более старые даты используют абсолютный формат. «Объединить с датой» показывает оба — «5 янв 2026 (2ч)» или «2ч – 5 янв 2026»."; +"Compact style" = "Компактный стиль"; +"Example: “1h” instead of “1 hour ago”" = "Пример: “1h” вместо “1 час назад”"; +"Example: “Jan 5, 2026 (2h)”" = "Пример: “Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "Аудио-API iOS не смогли обработать этот файл%@%@\n\nМожно попробовать отправить его в Instagram как есть или открыть запрос в поддержку."; +"Combine with date" = "Объединить с датой"; +"Absolute then relative" = "Сначала абсолютное, затем относительное"; +"Relative – absolute" = "Относительное – абсолютное"; +"Relative when young, absolute when older." = "Относительное для недавних, абсолютное для старых."; +"Example: “2h – Jan 5, 2026”" = "Пример: «2ч – 5 янв 2026»"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "Перехват одноразовых медиа, отменённых в ваше отсутствие. ⚠️ Может разряжать батарею"; +"Disappearing (view-once) media" = "Исчезающие медиа (одноразовый просмотр)"; +"Disappearing media expired before it could be saved" = "Исчезающие медиа истекли до того, как их удалось сохранить"; +"Disappearing media — gone before it could be saved" = "Исчезающие медиа — пропали до того, как их удалось сохранить"; +"Disappearing only" = "Только исчезающие"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Заставляет Instagram продолжать работать в фоне, чтобы перехватывать исчезающие медиа, которые кто-то отменяет, пока вас нет в приложении.\n\nВ основном полезно для одноразовых медиа — обычные фото/видео обычно можно восстановить и без этого. ⚠️ Может существенно разряжать батарею и ничего не перехватит, если вы закроете Instagram через переключатель приложений.\n\nВключить?"; +"Keep Instagram active in background" = "Держать Instagram активным в фоне"; +"Media couldn’t be downloaded — the link expired" = "Не удалось загрузить медиа — срок действия ссылки истёк"; +"Media wasn’t available to save" = "Медиа недоступно для сохранения"; +"Retrying download…" = "Повторная загрузка…"; +"Try to download again" = "Попробовать загрузить снова"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "Журнал прочтений"; +"Date" = "Дата"; +"Reads" = "Прочтения"; +"Person" = "Человек"; +"Chat" = "Чат"; +"%@ · on @%@" = "%@ · в @%@"; +"%lu read · %@" = "%lu прочтение · %@"; +"%lu reads · %@" = "%lu прочтений · %@"; +"%lu reads · %lu reader · %@" = "%lu прочтений · %lu читатель · %@"; +"%lu reads · %lu readers · %@" = "%lu прочтений · %lu читателей · %@"; +"Clear all" = "Очистить всё"; +"Clear all records" = "Очистить все записи"; +"Detects when others read your messages and notifies you" = "Определяет, когда другие читают ваши сообщения, и уведомляет"; +"Ignored people & chats" = "Игнорируемые люди и чаты"; +"Ignored" = "Игнорируется"; +"Log group chats" = "Записывать групповые чаты"; +"Most reads" = "Больше прочтений"; +"Notifies and records when someone reads a message you sent" = "Уведомляет и записывает, когда кто-то читает ваше сообщение"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "Ничего не игнорируется. Удерживайте человека в журнале, чтобы перестать его записывать."; +"Nothing matches your filters." = "Ничего не соответствует фильтрам."; +"Read %@ · %@" = "Прочитано %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "Сохранять прочтения на устройстве. Выкл = только уведомления, без хранения"; +"Resume logging" = "Возобновить запись"; +"Search by username" = "Поиск по имени пользователя"; +"Stop logging %@" = "Не записывать %@"; +"Delete records" = "Удалить записи"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "Когда включено, приходит уведомление, когда кто-то читает ваше сообщение. Отключите \"Сохранять в журнал\" для режима только уведомлений. Долгое нажатие на человека в журнале — перестать его записывать."; +"Swipe to remove. Removing resumes logging for that person or chat." = "Смахните, чтобы удалить. Удаление возобновит запись для этого человека или чата."; +"Updating names and photos" = "Обновление имён и фото"; +"Your message" = "Ваше сообщение"; +"read your message in %@" = "прочитал(а) ваше сообщение в %@"; +"read your message" = "прочитал(а) ваше сообщение"; +"Also track reads in group chats. Off by default — groups can be noisy" = "Отслеживать прочтения и в группах. По умолчанию выкл — в группах много активности"; +"Refreshing…" = "Обновление…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "Сгенерировать новый отпечаток"; +"New device fingerprint" = "Новый отпечаток устройства"; +"Roll new ID" = "Сгенерировать новый ID"; +"Roll + clear IG data" = "Сгенерировать + очистить данные IG"; +"Generate fresh device identifiers" = "Создать новые идентификаторы устройства"; +"Enter ID manually…" = "Ввести ID вручную…"; +"Manual device ID" = "ID устройства вручную"; +"Paste or type the UUID this device should report." = "Вставьте или введите UUID, который должно сообщать это устройство."; +"Device ID set" = "ID устройства задан"; +"New fingerprint ready" = "Новый отпечаток готов"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "Перезапустить Instagram сейчас, чтобы новый идентификатор устройства применился с чистого старта?"; +"Copy current ID" = "Скопировать текущий ID"; +"Revert to my real device ID" = "Вернуть мой настоящий ID устройства"; +"Restore the original, stop masking" = "Восстановить оригинал и прекратить маскировку"; +"Spoofing off" = "Подмена выключена"; +"Relaunch now" = "Перезапустить сейчас"; +"Relaunch to apply" = "Перезапустите, чтобы применить"; +"Clear device & relaunch" = "Очистить устройство и перезапустить"; +"Clear device & relaunch?" = "Очистить устройство и перезапустить?"; +"Clear & relaunch" = "Очистить и перезапустить"; +"Full reset to a brand-new device" = "Полный сброс до совершенно нового устройства"; +"Device ID" = "ID устройства"; +"Hide button until relaunch" = "Скрыть кнопку до перезапуска"; +"Device identity" = "Идентификатор устройства"; +"Masked" = "Замаскирован"; +"Real" = "Настоящий"; +"Show button on login screen" = "Показывать кнопку на экране входа"; +"Floating Device ID button while signed out" = "Плавающая кнопка ID устройства, когда вы не вошли"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Маскирует идентификаторы, которые Instagram использует для отпечатка этого устройства: ID устройства, семейный ID устройства, ID поставщика и ID машины. Изменения вступают в силу после перезапуска. Те же элементы управления появляются на экране входа."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "Забывает все сохранённые входы, файлы cookie и сохранённый идентификатор устройства, затем перезапускает приложение, чтобы Instagram запустился как совершенно новое устройство. После этого нужно будет войти снова."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "Генерирует новые ID устройства, семейный ID устройства, ID поставщика и очищает ID машины, чтобы Instagram перерегистрировался как новое устройство. Либо также очистите сохранённые входы для полного сброса."; +"Apple attestation" = "Аттестация Apple"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Блокирует аттестацию устройства Apple для Instagram (DeviceCheck и App Attest). Они привязаны к оборудованию и не могут быть изменены, поэтому продолжают связывать устройство после сбросов. Блокировка заставляет Instagram видеть устройство, которое их не поддерживает. Работает только при включённой маскировке."; +"Block Apple device attestation" = "Блокировать аттестацию устройства Apple"; +"Stop the hardware attestation that links the device" = "Остановить аппаратную аттестацию, связывающую устройство"; +"Block Apple attestation: %@" = "Блокировать аттестацию Apple: %@"; +"Attestation blocked" = "Аттестация заблокирована"; +"Attestation allowed" = "Аттестация разрешена"; +"Roll + clear, then sign in fresh" = "Сгенерировать + очистить, затем войти заново"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "Запросы на подписку"; +"Show follow requests" = "Показать запросы на подписку"; +"Check now" = "Проверить сейчас"; +"Reset tracked data" = "Сбросить отслеживаемые данные"; +"Enable tracker" = "Включить трекер"; +"Log requests and check outcomes" = "Записывать запросы и проверять результаты"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "Записывает запросы на подписку, которые вы отправляете и получаете, и фиксирует, кто отменяет запрос до вашего ответа. Всё на устройстве."; +"What to track" = "Что отслеживать"; +"Requests I send" = "Запросы, которые я отправляю"; +"To private accounts" = "В закрытые аккаунты"; +"Requests I receive" = "Запросы, которые я получаю"; +"From people who want to follow you" = "От людей, которые хотят на вас подписаться"; +"Background check" = "Фоновая проверка"; +"Check interval" = "Интервал проверки"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "Как часто проверять результаты, пока приложение открыто. Также проверяет при запуске и при открытии списка."; +"Off (manual only)" = "Выкл. (только вручную)"; +"Every 15 minutes" = "Каждые 15 минут"; +"Every 30 minutes" = "Каждые 30 минут"; +"Every hour" = "Каждый час"; +"Every 6 hours" = "Каждые 6 часов"; +"My request accepted" = "Мой запрос принят"; +"A private account accepted you" = "Закрытый аккаунт принял вас"; +"My request declined" = "Мой запрос отклонён"; +"No longer pending" = "Больше не в ожидании"; +"New request received" = "Получен новый запрос"; +"Someone asked to follow you" = "Кто-то хочет на вас подписаться"; +"Request withdrawn" = "Запрос отозван"; +"Someone cancelled their request" = "Кто-то отменил свой запрос"; +"Sent by me" = "Отправленные мной"; +"Received" = "Получен"; +"Sent" = "Отправлен"; +"Accepted" = "Принят"; +"Rejected" = "Отклонён"; +"Requested" = "Запрошен"; +"Approved" = "Одобрен"; +"Withdrawn" = "Отозван"; +"No follow requests tracked yet" = "Пока нет отслеживаемых запросов"; +"Cancel requests" = "Отменить запросы"; +"Delete %lu record(s) from history?" = "Удалить записей из истории: %lu?"; +"Cancel %lu pending request(s)?" = "Отменить запросов в ожидании: %lu?"; +"Follow back %lu account(s)?" = "Подписаться в ответ на аккаунтов: %lu?"; +"Clear all tracked follow requests?" = "Очистить все отслеживаемые запросы на подписку?"; +"Reset tracked follow requests for this account?" = "Сбросить отслеживаемые запросы для этого аккаунта?"; +"Enable the tracker first" = "Сначала включите трекер"; +"Checking…" = "Проверка…"; +"%ld request(s) updated" = "Обновлено запросов: %ld"; +"No changes" = "Без изменений"; +"Working…" = "Выполняется…"; +"Follow request accepted" = "Запрос на подписку принят"; +"%@ accepted your request" = "%@ принял(а) ваш запрос"; +"Follow request declined" = "Запрос на подписку отклонён"; +"%@ is no longer pending" = "%@ больше не в ожидании"; +"New follow request" = "Новый запрос на подписку"; +"%@ asked to follow you" = "%@ хочет подписаться на вас"; +"Follow request withdrawn" = "Запрос на подписку отозван"; +"%@ withdrew their request" = "%@ отозвал(а) свой запрос"; +"Follow requests log" = "Журнал запросов на подписку"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Откройте платные функции Instagram"; +"Turn on Instagram's paid subscriber features inside the app." = "Включите платные функции подписки Instagram прямо в приложении."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus — это платная подписка Instagram. Эти переключатели включают её функции внутри приложения. Некоторые работают полностью. Другие лишь открывают доступ к пункту меню, поскольку содержимое загружается с серверов Instagram и всё равно требует настоящей подписки, поэтому они могут оказаться пустыми или ничего не делать. Включите то, что нужно, и нажмите Применить. Если Instagram не запускается три раза подряд, эти переключатели сбрасываются автоматически."; +"Turn everything on" = "Включить всё"; +"Turn everything off" = "Выключить всё"; +"Every Instagram Plus feature turns off and Instagram restarts." = "Все функции Instagram Plus выключатся, и Instagram перезапустится."; +"Story peek" = "Предпросмотр историй"; +"Hold a story in the tray to preview it without opening it." = "Удерживайте историю в ленте, чтобы посмотреть её, не открывая."; +"Story fonts" = "Шрифты историй"; +"Adds the subscriber fonts when you add text to a story." = "Добавляет шрифты для подписчиков при добавлении текста к истории."; +"Search story viewers" = "Поиск по зрителям истории"; +"Search the list of people who viewed your story." = "Ищите по списку людей, посмотревших вашу историю."; +"Viewer timestamps" = "Время просмотра"; +"Shows when each person viewed your story." = "Показывает, когда каждый человек посмотрел вашу историю."; +"Silent post to profile" = "Тихая публикация в профиль"; +"Share to your profile without notifying your followers." = "Публикуйте в профиль, не уведомляя подписчиков."; +"Silent post to highlights" = "Тихое добавление в актуальное"; +"Add to a highlight without notifying your followers." = "Добавляйте в актуальное, не уведомляя подписчиков."; +"Story rewatch" = "Повтор истории"; +"Rewatch a story right after it finishes." = "Пересматривайте историю сразу после её окончания."; +"Story extend" = "Продление истории"; +"Keep your story up longer than 24 hours." = "Оставляйте историю дольше 24 часов."; +"Story spotlight" = "Продвижение истории"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "Покажите свою историю большему числу зрителей. Загружается из Instagram, поэтому может не работать."; +"Story super likes" = "Супер-лайки историй"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "Отправляйте супер-лайки на истории. Загружается из Instagram, поэтому может не работать."; +"Message peek" = "Предпросмотр сообщений"; +"Hold a chat in the inbox to preview it." = "Удерживайте чат во входящих, чтобы посмотреть его."; +"Chat fonts" = "Шрифты чатов"; +"Adds the subscriber fonts in direct messages." = "Добавляет шрифты для подписчиков в личных сообщениях."; +"Chat themes" = "Темы чатов"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "Открывает премиум-темы чатов. Загружается из Instagram, поэтому может не работать."; +"App icons" = "Значки приложения"; +"Opens the alternate app icon picker." = "Открывает выбор альтернативных значков приложения."; +"Bio font" = "Шрифт описания"; +"Use a subscriber font for your bio." = "Используйте шрифт для подписчиков в описании профиля."; +"Custom story lists" = "Свои списки историй"; +"Make lists to pick exactly who sees a story." = "Создавайте списки, чтобы точно выбирать, кто увидит историю."; +"More pinned posts" = "Больше закреплённых публикаций"; +"Pin more posts to the top of your profile." = "Закрепляйте больше публикаций вверху профиля."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu записей"; +"1 recording" = "1 запись"; +"30 days" = "30 дней"; +"7 days" = "7 дней"; +"90 days" = "90 дней"; +"Adds a record button to the call screen" = "Добавляет кнопку записи на экран звонка"; +"Also show recordings in the RyukGram gallery under Calls" = "Также показывать записи в галерее RyukGram в разделе «Звонки»"; +"Auto-delete old recordings" = "Автоудаление старых записей"; +"Auto-record calls" = "Автозапись звонков"; +"Auto-record ignore list" = "Список исключений автозаписи"; +"Auto-record ignored" = "Исключено из автозаписи"; +"Auto-record on" = "Автозапись включена"; +"Block mute signal" = "Блокировать сигнал отключения звука"; +"Both sides" = "Обе стороны"; +"Browse saved calls, grouped by person" = "Просмотр сохранённых звонков по людям"; +"Call" = "Звонок"; +"Call recorded" = "Звонок записан"; +"Call recording" = "Запись звонков"; +"Call recordings" = "Записи звонков"; +"Camera position" = "Положение камеры"; +"Can't play" = "Не удаётся воспроизвести"; +"Can't record" = "Не удаётся записать"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "Чаты, исключённые из автозаписи — удерживайте кнопку записи во время звонка, чтобы добавить"; +"Could not save the recording." = "Не удалось сохранить запись."; +"Could not start the recorder." = "Не удалось запустить запись."; +"Delete all" = "Удалить всё"; +"Delete all recordings" = "Удалить все записи"; +"Delete all recordings?" = "Удалить все записи?"; +"Drag the overlay where you want it" = "Перетащите оверлей в нужное место"; +"Drag your camera window to any corner or edge." = "Перетащите окно камеры в любой угол или к краю."; +"Enable call recording" = "Включить запись звонков"; +"Export all" = "Экспортировать всё"; +"Full screen" = "Во весь экран"; +"Group call" = "Групповой звонок"; +"Ignore auto-record for this chat" = "Исключить этот чат из автозаписи"; +"Ignored chats aren't auto-recorded. You can still record manually." = "Исключённые чаты не записываются автоматически. Вы по-прежнему можете записывать вручную."; +"Include my camera" = "Включить мою камеру"; +"Keep forever" = "Хранить всегда"; +"Large" = "Большой"; +"Mute without the other side seeing you muted — your mic is still silenced" = "Отключите звук так, чтобы собеседник не видел этого — ваш микрофон всё равно выключен"; +"Muted silently" = "Тихо отключён"; +"My camera size" = "Размер моей камеры"; +"No call audio was captured." = "Аудио звонка не было записано."; +"No ignored chats. Long-press the record button in a call to ignore it." = "Нет исключённых чатов. Удерживайте кнопку записи во время звонка, чтобы исключить его."; +"No recordings" = "Нет записей"; +"Off records audio only, even on video calls" = "В выключенном состоянии записывает только аудио, даже при видеозвонках"; +"Only me" = "Только я"; +"Only them" = "Только собеседник"; +"Open recordings" = "Открыть записи"; +"Overlay your camera as a small window on video-call recordings" = "Накладывает вашу камеру маленьким окном на записи видеозвонков"; +"Overlay your camera on the recording" = "Накладывать вашу камеру на запись"; +"Record audio from" = "Записывать аудио с"; +"Record video on video calls" = "Записывать видео при видеозвонках"; +"Record voice and video calls, browse them later" = "Записывайте голосовые и видеозвонки, просматривайте их позже"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "Записанные звонки сохраняются только на этом устройстве. Во время записи в строке состояния отображается красный индикатор."; +"Recorded calls will appear here." = "Записанные звонки появятся здесь."; +"Recording call" = "Запись звонка"; +"Recording count" = "Количество записей"; +"Recording failed" = "Запись не удалась"; +"Recording name" = "Название записи"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "Записывает собеседника (аудио звонка) и ваш микрофон. Во время записи в строке состояния отображается красный индикатор. Записи сохраняются только на этом устройстве."; +"Remove from ignore list" = "Убрать из списка исключений"; +"Remove recordings older than the chosen age" = "Удалять записи старше выбранного срока"; +"Rename recording" = "Переименовать запись"; +"Search calls" = "Поиск по звонкам"; +"Set a custom name for this chat's recordings." = "Задайте своё название для записей этого чата."; +"Size of the overlay window" = "Размер окна оверлея"; +"Small" = "Маленький"; +"Starts recording automatically when a call opens" = "Автоматически начинает запись при открытии звонка"; +"Sync to gallery" = "Синхронизировать с галереей"; +"The recording file is missing." = "Файл записи отсутствует."; +"Them" = "Собеседник"; +"Them (full screen)" = "Собеседник (во весь экран)"; +"This permanently removes every saved call recording for this account." = "Это безвозвратно удалит все сохранённые записи звонков для этого аккаунта."; +"Unknown chat" = "Неизвестный чат"; +"Unmuted" = "Звук включён"; +"Which camera fills the frame" = "Какая камера заполняет кадр"; +"Which side's voice to capture" = "Чей голос записывать"; +"You" = "Вы"; +"You (full screen)" = "Вы (во весь экран)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "Ваша камера записывается и накладывается на запись. Выберите, чья сторона заполняет экран, размер оверлея, и перетащите его в любой угол."; +"Prompt before the call recordings open" = "Запрашивать перед открытием записей звонков"; +"Prompt before the activity log opens" = "Запрашивать перед открытием журнала активности"; +"Mark all as read" = "Отметить все как прочитанные"; +"Delete %lu chats?" = "Удалить %lu чатов?"; +"This permanently removes their recordings." = "Это безвозвратно удалит их записи."; + +"Stories archive" = "Архив историй"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "Реакции"; +"Reacted first" = "Сначала с реакциями"; +"Mutual" = "Взаимные"; +"Viewers" = "Зрители"; +"1 viewer" = "1 зритель"; +"View viewers" = "Показать зрителей"; +"%lu views" = "%lu просмотров"; +"%ld likes" = "%ld отметок «Нравится»"; +"0 views" = "0 просмотров"; +"1 like" = "1 отметка «Нравится»"; +"1 view" = "1 просмотр"; +"Photos" = "Фото"; +"Oldest" = "Сначала старые"; +"Most viewed" = "По просмотрам"; +"Most reacted" = "По реакциям"; +"Open archive" = "Открыть архив"; +"Archive settings" = "Настройки архива"; +"Archiving" = "Архивирование"; +"Enable stories archive" = "Включить архив историй"; +"Save your stories before they expire" = "Сохраняйте истории до того, как они исчезнут"; +"Saves each story you post, with its photo or video, kept separately for each account." = "Сохраняет каждую опубликованную историю с фото или видео, отдельно для каждого аккаунта."; +"Save and update viewers" = "Сохранять и обновлять зрителей"; +"Keep each story's viewers and likers, refreshed to the final list" = "Сохраняет зрителей и тех, кто поставил «Нравится», с обновлением до финального списка"; +"Update viewers" = "Обновлять зрителей"; +"How often to refresh viewers for stories still live" = "Как часто обновлять зрителей для ещё активных историй"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "Список зрителей истории пополняется в течение суток, затем Instagram показывает её ещё один день. Автообновление получает финальный список, когда истории исполняется сутки, поэтому сохранённые данные полны."; +"Notify me about pinned viewers" = "Уведомлять о закреплённых зрителях"; +"A heads-up when a pinned viewer sees or likes your story" = "Оповещение, когда закреплённый зритель смотрит или отмечает вашу историю"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "Получайте уведомление, когда закреплённый зритель смотрит или отмечает вашу историю. Закрепляйте зрителей и управляйте списком в настройках зрителей."; +"Viewer list & pins" = "Список зрителей и закрепления"; +"Turn on the viewer list and manage pinned viewers" = "Включите список зрителей и управляйте закреплёнными"; +"Turn on a custom viewer list to pin, search and sort viewers" = "Включите свой список зрителей, чтобы закреплять, искать и сортировать их"; +"Tick several to combine them." = "Отметьте несколько, чтобы объединить их."; +"Select stories" = "Выбрать истории"; +"No archived stories yet. Post a story and it appears here." = "Пока нет архивных историй. Опубликуйте историю, и она появится здесь."; +"Archiving is off. Enable it in the archive settings, then post a story." = "Архивирование выключено. Включите его в настройках архива, затем опубликуйте историю."; +"Delete story?" = "Удалить историю?"; +"This removes the archived photo or video and its viewers." = "Это удалит архивное фото или видео и его зрителей."; +"Delete all stories?" = "Удалить все истории?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "Удаляет все архивные истории и их зрителей для этого аккаунта. Это действие нельзя отменить."; +"Delete %lu archived stories and their viewers?" = "Удалить %lu архивных историй и их зрителей?"; +"Pinned viewer saw your story" = "Закреплённый зритель посмотрел вашу историю"; +"Pinned viewer liked your story" = "Закреплённый зритель отметил вашу историю"; +"Pinned viewer reacted to your story" = "Закреплённый зритель отреагировал на вашу историю"; +"Pinned viewers on your story" = "Закреплённые зрители вашей истории"; +"%lu pinned viewers just saw, liked or reacted" = "%lu закреплённых зрителей посмотрели, отметили или отреагировали"; +"A pinned viewer" = "Закреплённый зритель"; +"On each launch" = "При каждом запуске"; diff --git a/src/Localization/Resources/tr.lproj/Localizable.strings b/src/Localization/Resources/tr.lproj/Localizable.strings new file mode 100644 index 0000000..b252910 --- /dev/null +++ b/src/Localization/Resources/tr.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "İleride RyukGram ayarlarını yeniden açmak için profil sayfanızın sağ üstündeki üç çizgiye basılı tutun."; +"settings.firstrun.ok" = "Anladım!"; +"settings.firstrun.title" = "RyukGram Ayar Bilgisi"; +"settings.language.english_only" = "RyukGram şu anda yalnızca İngilizce ile geliyor. Diğer diller hazır ve çeviri bekliyor — README'deki kısa rehberi izleyerek kendi dilinize çevirmeye yardımcı olun."; +"settings.language.help_translate" = "Çeviriye katkı sağla"; +"settings.language.system" = "Sistem varsayılanı"; +"settings.language.title" = "Dil"; +"settings.language.restart.message" = "Ayarlar güncellendi. Uygulamanın diğer yerlerindeki menülerin, düğmelerin ve bildirimlerin de yeni dili kullanması için Instagram'ı yeniden başlatın."; +"settings.language.restart.title" = "Her yerde uygulamak için yeniden başlat"; +"settings.language.available" = "Mevcut"; +"settings.results.many" = "%lu sonuç"; +"settings.results.one" = "%lu sonuç"; +"settings.search.placeholder" = "Ayarlarda ara"; +"settings.title" = "RyukGram Ayarları"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "Eylem düğmesi simgesi"; +"Adds a copy option to the comment long-press menu" = "Yorum uzun basma menüsüne kopyalama seçeneği ekler"; +"Adds a download button next to share/save on the reels audio page" = "Reels ses sayfasında paylaş/kaydet yanına indirme düğmesi ekler"; +"Adds download, copy and expand options to GIF and image comments" = "GIF ve görsel yorumlara indirme, kopyalama ve büyütme seçenekleri ekler"; +"Allow video in photo sticker" = "Foto etiketinde videoya izin ver"; +"Alternate icons are not supported" = "Alternatif simgeler desteklenmiyor"; +"Anonymous live viewing" = "Canlıyı anonim izleme"; +"App Icon" = "Uygulama Simgesi"; +"Audio page" = "Ses sayfası"; +"Auto-reveals sensitive media" = "Hassas medyayı otomatik gösterir"; +"Block surveys" = "Anketleri engelle"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "Yayıncının sizi görmemesi için izleyici sayısı sinyalini engeller — siz de izleyici sayısını göremezsiniz"; +"Browser" = "Tarayıcı"; +"Change the app icon from the bundled icons" = "Uygulama simgesini paketlenmiş simgelerden değiştir"; +"Choose Icon" = "Simge Seç"; +"Choose which surfaces hide ads" = "Hangi yüzeylerin reklamları gizleyeceğini seçin"; +"Comments" = "Yorumlar"; +"Commerce carousels in comments and shoppable CTAs on reels" = "Yorumlardaki ticaret galerileri ve reels'lerdeki alışveriş CTA'ları"; +"Copy comment text" = "Yorum metnini kopyala"; +"Copy description" = "Açıklamayı kopyala"; +"Long press a caption to copy its text" = "Metnini kopyalamak için açıklamaya uzun bas"; +"Custom sticker colors" = "Özel etiket renkleri"; +"Custom colors aren't supported for this sticker" = "Bu etiket için özel renkler desteklenmiyor"; +"Date format" = "Tarih biçimi"; +"Disable app haptics" = "Uygulama titreşimini kapat"; +"Disables haptics/vibrations within the app" = "Uygulama içindeki dokunsal geri bildirimleri/titreşimleri kapatır"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "Liquid glass'ı varsayılan olarak etkin olan hesaplarda kapatır. Yukarıdaki seçenekleri geçersiz kılar"; +"Do not save recent searches" = "Son aramaları kaydetme"; +"Download GIF & image comments" = "GIF ve görsel yorumlarını indir"; +"Download image" = "Görseli indir"; +"Embed domain" = "Gömme alan adı"; +"Embed domain: %@" = "Gömme alan adı: %@"; +"Enable liquid glass buttons" = "Liquid glass butonlarını etkinleştir"; +"Enable liquid glass surfaces" = "Liquid glass yüzeylerini etkinleştir"; +"Enable teen app icons" = "Genç uygulama simgelerini etkinleştir"; +"Enables experimental liquid glass buttons" = "Deneysel liquid glass butonlarını etkinleştirir"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "Liquid glass sekme çubuğunu, kayan gezinmeyi ve diğer arayüz öğelerini etkinleştirir"; +"End" = "Bitiş"; +"Experimental features" = "Deneysel özellikler"; +"Explore & search" = "Keşfet ve ara"; +"Failed to change icon" = "Simge değiştirilemedi"; +"Fixed" = "Sabit"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "Sabit küçülmeyi önler. Gizle aşağı kaydırırken çubuğun kaybolmasını sağlar"; +"Focus/distractions" = "Odak/dikkat dağıtıcılar"; +"Force liquid glass off" = "Liquid glass'ı zorla kapat"; +"Force progressive blur" = "Aşamalı bulanıklığı zorla"; +"General" = "Genel"; +"Gradient color" = "Gradyan renk"; +"Hide ads" = "Reklamları gizle"; +"Hide explore posts grid" = "Keşfet gönderi ızgarasını gizle"; +"Hide friends map" = "Arkadaş haritasını gizle"; +"Hide Meta AI" = "Meta AI'ı gizle"; +"Hide metrics" = "İstatistikleri gizle"; +"Hide notes tray" = "Notlar bölümünü gizle"; +"Hide on scroll" = "Kaydırırken gizle"; +"Hide TestFlight popup" = "TestFlight açılır penceresini gizle"; +"Hide trending searches" = "Trend aramaları gizle"; +"Hide UI on capture" = "Ekran kaydında arayüzü gizle"; +"Removes suggested accounts to follow outside the feed" = "Akış dışındaki önerilen takip hesaplarını kaldırır"; +"Hides like/comment/share counts on posts and reels" = "Gönderilerde ve reels'te beğeni/yorum/paylaşım sayılarını gizler"; +"Removes the friends map icon from the notes tray" = "Notlar tepsisinden arkadaş haritası simgesini kaldırır"; +"Removes the suggested posts grid on the explore tab" = "Keşfet sekmesindeki önerilen gönderi ızgarasını kaldırır"; +"Strips the Meta AI buttons and entry points from the app" = "Meta AI düğmelerini ve giriş noktalarını uygulamadan kaldırır"; +"Hides the notes tray in the DM inbox" = "DM gelen kutusundaki notlar bölümünü gizler"; +"Removes suggested broadcast channels from your inbox" = "Gelen kutundan önerilen yayın kanallarını kaldırır"; +"Hide DM search suggestions" = "Mesaj aramasındaki önerileri gizle"; +"Removes suggested accounts and channels from direct message search" = "Direkt mesaj aramasından önerilen hesapları ve kanalları kaldırır"; +"Removes trending searches under the explore search bar" = "Keşfet arama çubuğunun altındaki popüler aramaları kaldırır"; +"Hold down on the Instagram logo to change the app icon" = "Uygulama simgesini değiştirmek için Instagram logosuna basılı tutun"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "iOS 26 kaydırma kenarı bulanıklığının kaybolmasını engelleyip görünür tutar"; +"Lets the photo sticker picker show videos too, not just photos" = "Foto etiketi seçicisinin sadece fotoğrafları değil videoları da göstermesini sağlar"; +"Liquid glass tab bar" = "Liquid glass sekme çubuğu"; +"Live" = "Canlı"; +"Hold the eyedropper in stories to pick an exact text color" = "Tam bir metin rengi seçmek için hikâyelerde damlalığa uzun bas"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "Düz veya gradyan herhangi bir renk seçmek için etiket düzenleyicilerindeki renk çarkına uzun basın"; +"Long-press the heart button in a live to hide or show the comments" = "Yorumları gizlemek veya göstermek için canlı yayındaki kalp butonuna uzun basın"; +"Long-press the search tab to open a copied Instagram link" = "Kopyalanmış bir Instagram bağlantısını açmak için arama sekmesine uzun basın"; +"Master switch. When off, all per-surface toggles below are ignored." = "Ana anahtar. Kapalıyken aşağıdaki yüzey başına tüm anahtarlar yok sayılır."; +"No suggested chats" = "Önerilen sohbetleri kapat"; +"No suggested users" = "Önerilen kullanıcıları kapat"; +"Notes" = "Notlar"; +"Open app icon picker" = "Uygulama simgesi seçicisini aç"; +"Open link from clipboard" = "Panodan bağlantı aç"; +"Open links in external browser" = "Bağlantıları harici tarayıcıda aç"; +"Opens links in Safari instead of Instagram's in-app browser" = "Bağlantıları Instagram'ın uygulama içi tarayıcısı yerine Safari'de açar"; +"Privacy" = "Gizlilik"; +"Removes ads across enabled surfaces" = "Etkin yüzeylerde reklamları kaldırır"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "Paylaşılan bağlantılardan igsh, utm_source ve diğer takip parametrelerini kaldırır"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "URL'lerden Instagram takip yönlendirmelerini (l.instagram.com) ve UTM/fbclid parametrelerini kaldırır"; +"Replace domain in shared links" = "Paylaşılan bağlantılarda alan adını değiştir"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "IG'nin göreli zaman damgalarını (\"3 gün önce\") özel bir biçimle değiştirir. Seçici içinden hangi yüzeylere uygulanacağını açıp kapatın."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "Kopyalanan/paylaşılan bağlantıları Discord, Telegram vb. önizlemeler için gömüme uygun bir alan adı kullanacak şekilde yeniden yazar."; +"Stops search bars from saving your recent searches" = "Arama çubuklarının son aramalarını kaydetmesini engeller"; +"Selected" = "Seçili"; +"Sharing" = "Paylaşım"; +"Shopping" = "Alışveriş"; +"Skip sensitive content covers" = "Hassas içerik kapaklarını atla"; +"Solid color" = "Düz renk"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "Ana, bağlamsal, video ve zincirleme akışlardaki sponsorlu gönderiler"; +"Sponsored posts on the explore grid" = "Keşfet ızgarasındaki sponsorlu gönderiler"; +"Stops Instagram's in-app surveys and feedback prompts" = "Instagram'ın uygulama içi anketlerini ve geri bildirim isteklerini engeller"; +"Sponsored reels in the sundial feed" = "Sundial akışındaki sponsorlu reels'ler"; +"Start" = "Başlangıç"; +"Story ads and sponsored entries in the story tray" = "Hikaye tepsisindeki hikaye reklamları ve sponsorlu girişler"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "Arama ve keşfetteki gönderi ve reels'lerde istatistik rozetleri. Hangi istatistiklerin görüneceğini seçmek, sıralamak ve uygulamak için Kart detaylarını açın."; +"Strip tracking from links" = "Bağlantılardan takip verilerini kaldır"; +"Strip tracking params" = "Takip parametrelerini kaldır"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "\"It's time to update Instagram Beta\" bildirimini bastırır"; +"Tap to apply" = "Uygulamak için dokun"; +"The selected icon will be saved and shown here the next time you open this page." = "Seçilen simge kaydedilecek ve bu sayfayı bir sonraki açışınızda burada gösterilecek."; +"Toggle live comments" = "Canlı yorumları aç/kapat"; +"Use detailed color picker" = "Gelişmiş renk seçici kullan"; +"Used across feed, stories, reels, and DMs." = "Akış, hikayeler, Reels ve DM'lerde kullanılır"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld gün önce"; +"%ld days ago" = "%ld gün önce"; +"%ld hour ago" = "%ld saat önce"; +"%ld hours ago" = "%ld saat önce"; +"%ld minute ago" = "%ld dakika önce"; +"%ld minutes ago" = "%ld dakika önce"; +"%ld week ago" = "%ld hafta önce"; +"%ld weeks ago" = "%ld hafta önce"; +"%ldd" = "%ldg"; +"%ldh" = "%ldsa"; +"%ldm" = "%lddk"; +"%ldw" = "%ldh"; +"Always ask" = "Her zaman sor"; +"Balanced" = "Dengeli"; +"Block all" = "Tümünü engelle"; +"Block selected" = "Seçilenleri engelle"; +"Button" = "Buton"; +"Date format — %@" = "Tarih biçimi — %@"; +"Default" = "Varsayılan"; +"Disabled" = "Kapalı"; +"Download and share" = "İndir ve paylaş"; +"Download to Photos" = "Fotoğraflar'a indir"; +"Save with music" = "Müzikle kaydet"; +"Gallery with music" = "Müzikle galeriye"; +"Save image (no music)" = "Resmi kaydet (müziksiz)"; +"Gallery image (no music)" = "Resmi galeriye (müziksiz)"; +"Photo with music" = "Müzikli fotoğraf"; +"Enabled" = "Açık"; +"Expand" = "Genişlet"; +"Explore" = "Keşfet"; +"Fast" = "Hızlı"; +"Feed" = "Akış"; +"Feed posts" = "Akış gönderileri"; +"High" = "Yüksek"; +"Inbox" = "Gelen kutusu"; +"just now" = "az önce"; +"Low" = "Düşük"; +"Max" = "Maksimum"; +"Medium" = "Orta"; +"Mute/Unmute" = "Sesi kapat/aç"; +"Notes, comments, stories" = "Notlar, yorumlar, hikayeler"; +"now" = "şimdi"; +"Open menu" = "Menüyü aç"; +"Pause/Play" = "Duraklat/Oynat"; +"Profile" = "Profil"; +"Quality" = "Kalite"; +"Reels" = "Reels"; +"Requires restart" = "Yeniden başlatma gerekir"; +"Save to Photos" = "Fotoğraflar'a kaydet"; +"Share sheet" = "Paylaşım sayfası"; +"Standard" = "Standart"; +"Toggle" = "Aç/Kapat"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "Izgara akış"; +"Browse your home feed as a grid of posts" = "Ana akışınızı gönderilerden oluşan bir ızgara olarak görüntüleyin"; +"Hide stories in grid" = "Izgarada hikayeleri gizle"; +"Taller cells" = "Daha uzun hücreler"; +"Portrait tiles instead of squares" = "Kareler yerine dikey döşemeler"; +"Open post" = "Gönderiyi aç"; +"View profile" = "Profili görüntüle"; +"Like" = "Beğen"; +"Liked" = "Beğenildi"; +"Unlike" = "Beğenmekten vazgeç"; +"Unliked" = "Beğeni geri alındı"; +"Followed" = "Takip edildi"; +"Unfollowed" = "Takipten çıkıldı"; +"Couldn't update like" = "Beğeni güncellenemedi"; +"Couldn't update follow" = "Takip güncellenemedi"; +"Follow status" = "Takip durumu"; +"Shares" = "Paylaşımlar"; +"Relative" = "Göreli"; +"Date and time" = "Tarih ve saat"; +"You're all caught up" = "Hepsini gördünüz"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "Ana akışı gönderilerden oluşan bir ızgarayla değiştirir. Instagram akışına geçmek özelliği açık bırakır ve akışı hemen geri verir. Sütun sayısını değiştirmek için sıkıştırın, açmak için bir gönderiye dokunun. Senin İçin / Takip Edilenler anahtarı Ana akış ile eşitli kalır."; +"Switch button" = "Değiştirme düğmesi"; +"Hold the heart button" = "Kalp düğmesini basılı tut"; +"Floating button" = "Kayan düğme"; +"How to switch" = "Nasıl geçilir"; +"Hold the heart in Instagram's header" = "Instagram başlığındaki kalbi basılı tut"; +"A small round button on the feed" = "Akışta küçük yuvarlak bir düğme"; +"Button position" = "Düğme konumu"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "Düğmeyi istediğin yere sürükle. Soluk şeritler Instagram'ın başlığı ve sekme çubuğudur."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "Izgarayı kapatmadan ızgara ile Instagram akışı arasında geçiş yapar. Kapalıyken tek yol ana çubuk kısayolu olur."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "Düğme asla başlığın ya da sekme çubuğunun altında kalmaz. Akışta düğmeye basılı tutarak buraya dönebilirsin."; +"Live preview" = "Canlı önizleme"; +"Columns" = "Sütunlar"; +"Post info" = "Gönderi bilgisi"; +"Reorder and toggle stats on each tile" = "Her döşemede istatistikleri sıralayın ve açıp kapatın"; +"Info on each post" = "Her gönderideki bilgiler"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "Her öğeyi açın veya kapatın. Döşemede nasıl sıralandıklarını değiştirmek için ≡ tutamağını sürükleyin."; +"Show avatar" = "Avatarı göster"; +"Media type badge" = "Medya türü rozeti"; +"Restores the default post info, order and options for the grid feed." = "Izgara akış için varsayılan gönderi bilgisini, sırayı ve seçenekleri geri yükler."; +"Views" = "Görüntülenmeler"; +"Action button" = "Eylem butonu"; +"Adds 'Profile picture' to story tray long-press menus" = "Hikaye çubuğu uzun basma menülerine 'Profil fotoğrafı' seçeneğini ekler"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Her akış gönderisinin altına indirme/paylaşma/kopyalama/genişletme/yeniden paylaşma seçenekleri olan bir RyukGram eylem butonu ekler. Varsayılan olarak dokunma menüyü açar; dokunma davranışını aşağıdan değiştirin."; +"Choose Instagram's default feed or force the Following feed" = "Instagram'ın varsayılan akışını seçin veya Takip Edilenler akışını zorlayın"; +"Main feed" = "Ana akış"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "Akışın ne zaman ve nasıl yenileneceğini kontrol eder. Arka plan yenileme, yaklaşık 10 dakika sonra uygulamaya geri dönüldüğünde gerçekleşir. Ana sayfa butonu yenilemesi, zaten Ana Sayfa sekmesindeyken sekmeye dokunulduğunda gerçekleşir."; +"Confirm feed refresh" = "Akış yenilemeyi onayla"; +"Shows an alert before a pull-to-refresh reloads the feed" = "Çekerek yenileme akışı yeniden yüklemeden önce bir uyarı gösterir"; +"Refresh stories only" = "Yalnızca hikayeleri yenile"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "Çekerek yenileme, akışı yenilemeden hikaye çubuğunu yeniden yükler"; +"Refresh feed?" = "Akış yenilensin mi?"; +"Default tap action" = "Varsayılan dokunma eylemi"; +"Disable background refresh" = "Arka plan yenilemeyi kapat"; +"Disable home button refresh" = "Ana sayfa butonu yenilemeyi kapat"; +"Disable home button scroll" = "Ana sayfa butonu kaydırmasını kapat"; +"Disable video autoplay" = "Video otomatik oynatmayı kapat"; +"Hide" = "Gizle"; +"Hide entire feed" = "Tüm akışı gizle"; +"Hide repost button" = "Yeniden paylaş butonunu gizle"; +"Hide stories tray" = "Hikaye çubuğunu gizle"; +"Hide suggested stories" = "Önerilen hikayeleri gizle"; +"Hide story highlights" = "Öne çıkan hikayeleri gizle"; +"Removes resurfaced highlights from the stories tray in feed" = "Akıştaki hikaye şeridinde yeniden beliren öne çıkanları kaldırır"; +"Hides suggested accounts" = "Önerilen hesapları gizler"; +"Hides suggested reels" = "Önerilen reels'i gizler"; +"Hides suggested threads posts" = "Önerilen Threads gönderilerini gizler"; +"Hides the repost button on feed posts" = "Akış gönderilerindeki yeniden paylaş butonunu gizler"; +"Hides the story tray at the top" = "Üstteki hikaye çubuğunu gizler"; +"Inserts a button row below like/comment/share on each post" = "Her gönderide beğen/yorum/paylaş altına bir buton satırı ekler"; +"Long press on media to expand in full-screen viewer" = "Medyayı tam ekran görüntüleyicide açmak için uzun basın"; +"Start media muted" = "Medyayı sessiz başlat"; +"Expanded videos open with sound off" = "Genişletilen videolar sesi kapalı açılır"; +"Enhanced media resolution" = "Geliştirilmiş medya çözünürlüğü"; +"Media saving" = "Medya kaydetme"; +"Spoof device profile so IG serves higher-quality images" = "IG'nin daha yüksek kaliteli görseller sunması için cihaz profilini taklit eder"; +"Media" = "Medya"; +"Media zoom" = "Medya yakınlaştırma"; +"No suggested for you" = "Sana önerilenler yok"; +"No suggested posts" = "Önerilen gönderi yok"; +"No suggested reels" = "Önerilen reels yok"; +"No suggested threads" = "Önerilen Threads yok"; +"Prevents feed from reloading when returning from background" = "Arka plandan dönüldüğünde akışın yeniden yüklenmesini engeller"; +"Prevents videos from playing automatically" = "Videoların otomatik oynatılmasını engeller"; +"Refresh" = "Yenile"; +"Removes all content from your home feed" = "Ana sayfa akışınızdaki tüm içeriği kaldırır"; +"Removes suggested accounts from the stories tray" = "Hikaye çubuğundaki önerilen hesapları kaldırır"; +"Removes suggested posts" = "Önerilen gönderileri kaldırır"; +"Scroll to top without refreshing when tapping Home" = "Ana Sayfa'ya dokununca yenilemeden en üste kaydır"; +"Show action button" = "Eylem butonunu göster"; +"Show date" = "Tarihi göster"; +"Stories tray" = "Hikaye çubuğu"; +"Tapping Home does nothing when already on feed" = "Zaten akıştayken Ana Sayfa'ya dokunmak hiçbir şey yapmaz"; +"Tray long-press actions" = "Çubuk uzun basma eylemleri"; +"Composer doesn't accept GIFs" = "Yazma alanı GIF kabul etmiyor"; +"Copy GIF link" = "GIF bağlantısını kopyala"; +"Copy image link" = "Görsel bağlantısını kopyala"; +"Custom GIF in comments" = "Yorumlarda özel GIF"; +"Favorite GIFs" = "Favori GIF'ler"; +"Long-press a GIF in the picker to pin it — favorites show first" = "Sabitlemek için seçicide bir GIF'e basılı tutun — favoriler önce gösterilir"; +"Added to favorites" = "Favorilere eklendi"; +"Removed from favorites" = "Favorilerden çıkarıldı"; +"Favorite GIF unavailable" = "Favori GIF kullanılamıyor"; +"This GIF may have been removed. Long-press it to unfavorite." = "Bu GIF kaldırılmış olabilir. Favorilerden çıkarmak için uzun basın."; +"Failed to build GIF model" = "GIF modeli oluşturulamadı"; +"GIF link copied" = "GIF bağlantısı kopyalandı"; +"Image" = "Görsel"; +"Image link copied" = "Görsel bağlantısı kopyalandı"; +"Invalid Giphy URL" = "Geçersiz Giphy URL'si"; +"Long-press the GIF button to paste any Giphy URL" = "Herhangi bir Giphy URL'sini yapıştırmak için GIF düğmesine uzun basın"; +"Paste Giphy Link" = "Giphy bağlantısı yapıştır"; +"Paste a giphy.com URL or media ID" = "Bir giphy.com URL'si ya da medya kimliği yapıştırın"; +"Send" = "Gönder"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Reels yan çubuğunun üstüne kapak görüntüleme/indirme/paylaşma/kopyalama/genişletme/yeniden paylaşma seçenekleri olan bir RyukGram eylem butonu ekler. Varsayılan olarak dokunma menüyü açar; dokunma davranışını aşağıdan değiştirin."; +"Always show progress scrubber" = "İlerleme çubuğunu her zaman göster"; +"Auto-scroll reels" = "Reels otomatik kaydır"; +"Speed, seek and auto-scroll controls" = "Hız, atlama ve otomatik kaydırma denetimleri"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "Etkin denetimler, bir reel'de ⋯ veya ses düğmesini basılı tuttuğunuzda görünür."; +"Seek controls" = "Atlama denetimleri"; +"Auto-scroll control" = "Otomatik kaydırma denetimi"; +"Seek" = "Atla"; +"Custom seek step" = "Özel atlama adımı"; +"Enter the number of seconds to skip" = "Atlanacak saniye sayısını girin"; +"Set what a tap on a reel does" = "Bir reel'e dokununca ne olacağını ayarlar"; +"Confirm reel refresh" = "Reels yenilemeyi onayla"; +"Custom speed" = "Özel hız"; +"Disable auto-unmuting reels" = "Reels otomatik sesi açmayı kapat"; +"Disable scrolling reels" = "Reels kaydırmayı kapat"; +"Disable tab button refresh" = "Sekme butonu yenilemeyi kapat"; +"Doom scrolling limit" = "Sonsuz kaydırma limiti"; +"e.g. 1.75" = "örn. 1.75"; +"Enter a value between 0.5 and 2.0" = "0.5 ile 2.0 arasında bir değer girin"; +"Keeps the progress bar visible on every reel" = "İlerleme çubuğunu her reel'de görünür tutar"; +"Hide \"Made with Edits\" badge" = "\"Made with Edits\" rozetini gizle"; +"Hide friends avatars" = "Arkadaş avatarlarını gizle"; +"Hide reels header" = "Reels üst çubuğunu gizle"; +"Hide social context overlay" = "Sosyal bağlam katmanını gizle"; +"Hides the avatar bubbles next to the Friends tab in reels" = "Reels'taki Arkadaşlar sekmesinin yanındaki avatar baloncuklarını gizler"; +"Hides the Edits app promo pill on reels" = "Reels'taki Edits uygulaması tanıtım hapını gizler"; +"Hides the floating overlay showing who reposted or commented on reels" = "Reels'ta kimin yeniden paylaştığını veya yorum yaptığını gösteren yüzen katmanı gizler"; +"Hides the repost button on the reels sidebar" = "Reels yan çubuğundaki yeniden paylaş butonunu gizler"; +"Drops the top bar while you watch reels" = "Reels izlerken üst çubuğu gizler"; +"Hiding" = "Gizleme"; +"IG default" = "IG varsayılanı"; +"Limits" = "Limitler"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "Peş peşe kaydırabileceğin reel sayısını sınırlar ve yenilemeyi engeller"; +"Only loads %@ %@" = "Yalnızca %@ %@ yükler"; +"Places a button above the like/comment/share column on each reel" = "Her reel'de beğeni/yorum/paylaş sütununun üstüne bir buton yerleştirir"; +"Playback speed" = "Oynatma hızı"; +"Prevent doom scrolling" = "Sonsuz kaydırmayı engelle"; +"Engagement filter" = "Etkileşim filtresi"; +"Hide reels below a like, comment, view or repost count" = "Beğeni, yorum, izlenme veya repost sayısı eşiğin altındaki reels'leri gizler"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "Belirlediğin her minimuma ulaşmayan reels'leri gizler. Sayıları yazar tarafından gizlenen reels'ler, onları da gizlemedikçe geçer."; +"Filter reels by engagement" = "Reels'leri etkileşime göre filtrele"; +"Hide reels with hidden stats" = "İstatistikleri gizli reels'leri gizle"; +"Only filter the Reels tab" = "Yalnızca Reels sekmesini filtrele"; +"Reels you open from a post, profile or share are never filtered" = "Bir gönderiden, profilden veya paylaşımdan açtığın reels'ler asla filtrelenmez"; +"Minimums" = "Minimumlar"; +"Minimum likes" = "Minimum beğeni"; +"Minimum comments" = "Minimum yorum"; +"Minimum views" = "Minimum izlenme"; +"Minimum reposts" = "Minimum repost"; +"Reels below this count are hidden. 0 turns this limit off." = "Bu sayının altındaki reels'ler gizlenir. 0 bu sınırı kapatır."; +"Turns the filter off and clears every minimum." = "Filtreyi kapatır ve tüm minimumları temizler."; +"Locks a reel in place so it never scrolls to the next one" = "Bir reel'i yerinde kilitler, böylece asla sonrakine geçmez"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "Ses veya zil tuşuna basınca reels'in sesinin açılmasını önler"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Reels akışı yenilenmeden önce onay ister"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "Kilitli reels'te şifreyi göstermek ve otomatik doldurmak için butonlar gösterir"; +"Same as general format" = "Genel biçimle aynı"; +"Shows the repost date on the \"reposted this reel\" header." = "\"Bu reel'i yeniden paylaştı\" başlığında yeniden paylaşım tarihini gösterir."; +"Reposts" = "Yeniden paylaşımlar"; +"Swipe a reel left to open the author's profile" = "Bir reel'i sola kaydırarak yazarının profilini aç"; +"Swipe left to profile" = "Sola kaydırarak profili aç"; +"Tap Controls" = "Dokunma kontrolleri"; +"Tap to mute on photo reels" = "Fotoğraf reels'te dokunarak sesi kapat"; +"Tapping the Reels tab while on reels does nothing" = "Reels'teyken Reels sekmesine dokunmak hiçbir şey yapmaz"; +"Unlock password-locked reels" = "Şifreli reels'leri aç"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "Duraklatma modu açıkken fotoğraf reels'e dokunmak, yerel duraklatma hareketi yerine sesi açıp kapatır"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "Herhangi bir takipçi/takip listesini filtrelemek ve sıralamak için bir düğme ekler. Çıkınca sıfırlanır."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "Öne çıkanlar uzun basma menüsüne kapağı tam ekranda açmak için görüntüleme seçeneği ekler"; +"Applying restarts Instagram to load your changes." = "Uygulamak, değişikliklerinizi yüklemek için Instagram’ı yeniden başlatır."; +"Card details" = "Kart detayları"; +"Comment count" = "Yorum sayısı"; +"Copy note on long press" = "Uzun basınca notu kopyala"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "Profil ızgaralarındaki her gönderi ve reel kartında gösterilen ek istatistikler — hangilerini istediğinizi seçin, sıralayın ve uygulayın."; +"Fake follower count" = "Sahte takipçi sayısı"; +"Fake following count" = "Sahte takip edilen sayısı"; +"Fake post count" = "Sahte gönderi sayısı"; +"Fake profile stats" = "Sahte profil istatistikleri"; +"Fake verified badge" = "Sahte doğrulama rozeti"; +"Fetch missing counts" = "Eksik sayıları getir"; +"Filter & sort lists" = "Listeleri filtrele ve sırala"; +"Follow indicator" = "Takip göstergesi"; +"Follower & following lists" = "Takipçi ve takip listeleri"; +"Follower count" = "Takipçi sayısı"; +"Following count" = "Takip edilen sayısı"; +"Like count" = "Beğeni sayısı"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "Profil fotoğrafını yakınlaştırma, paylaşma ve kaydetme seçenekleriyle tam ekranda açmak için uzun basın"; +"Long press the note bubble on a profile to copy the text" = "Metni kopyalamak için profildeki not balonuna uzun basın"; +"Long press to download directly (ignored when zoom is on)" = "Doğrudan indirmek için uzun basın (yakınlaştırma açıkken yok sayılır)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "Profil öğelerindeki uzun basma hareketleri — özellik başına eylem butonlarından ayrı tutulur."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "Tüm kart istatistikleri için ana anahtar. Eksik sayıları getir, Instagram API’sini kullanır ve istek sınırlarına takılabilir."; +"Only affects your own profile header. Other users see the real numbers." = "Yalnızca kendi profil başlığınızı etkiler. Diğer kullanıcılar gerçek sayıları görür."; +"Post count" = "Gönderi sayısı"; +"Profile card details" = "Profil kartı detayları"; +"Profile stats" = "Profil istatistikleri"; +"Repost count" = "Repost sayısı"; +"Restores the default stats, order, and options for profile card details." = "Profil kartı detayları için varsayılan istatistikleri, sırayı ve seçenekleri geri yükler."; +"Restores the default stats, order, and options for search & explore card details." = "Arama ve keşfet kartı detayları için varsayılan istatistikleri, sırayı ve seçenekleri geri yükler."; +"Save profile picture" = "Profil fotoğrafını kaydet"; +"Search & Explore" = "Arama ve Keşfet"; +"Share count" = "Paylaşım sayısı"; +"Short numbers" = "Kısa sayılar"; +"Show a checkmark next to your name on your own profile" = "Kendi profilinizde adınızın yanında onay işareti gösterir"; +"Show card details" = "Kart detaylarını göster"; +"Show full follower count" = "Tam takipçi sayısını göster"; +"Show full post count" = "Tam gönderi sayısını göster"; +"Show the custom number set below" = "Aşağıda ayarlanan özel sayıyı gösterir"; +"Show the exact number instead of a shortened one" = "Kısaltılmış sayı yerine tam sayıyı gösterir"; +"Shows whether the profile user follows you" = "Profil kullanıcısının sizi takip edip etmediğini gösterir"; +"Tap to set" = "Ayarlamak için dokun"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "Her istatistiği açın veya kapatın. Kartta nasıl sıralandıklarını değiştirmek için ≡ tutamağını sürükleyin."; +"Upload date" = "Yükleme tarihi"; +"View count" = "Görüntülenme sayısı"; +"View highlight cover" = "Öne çıkan kapak görselini görüntüle"; +"Views, likes, comments, shares, reposts, date" = "Görüntülenmeler, beğeniler, yorumlar, paylaşımlar, repostlar, tarih"; +"Zoom profile photo" = "Profil fotoğrafını yakınlaştır"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "Etkin, sırada bekleyen ve tamamlanan indirmeler"; +"Auto-retry attempts" = "Otomatik yeniden deneme sayısı"; +"Auto-retry failed downloads" = "Başarısız indirmeleri otomatik yeniden dene"; +"Confirm before download" = "İndirmeden önce onayla"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "Kullanımdan kaldırıldı. RyukGram eylem butonu (Akış/Reels/Hikayeler içinde özellik bazında yapılandırılır) medya indirmenin yeni yoludur. Bu ana anahtarı yalnızca medyanın üzerinde eski çok parmaklı uzun basma yöntemini tercih ediyorsanız etkinleştirin."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "Uygulamadan çıktığınızda indirmeleri, kodlamayı veya profil taramalarını duraklatma"; +"Download queue" = "İndirme kuyruğu"; +"Downloads" = "İndirmeler"; +"Downloads with %@ %@" = "%@ %@ ile indirir"; +"Enable long-press gesture" = "Uzun basma hareketini etkinleştir"; +"Finger count for long-press" = "Uzun basma için parmak sayısı"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "Aynı anda kaç indirmenin çalışacağı — ekstralar sırada bekler ve yuvalar boşaldıkça başlar. Başarısız indirmeler ağ hatalarında otomatik olarak yeniden denenir. İndirmeleri izlemek, iptal etmek veya yeniden denemek için yöneticiyi açın."; +"Keep running in background" = "Arka planda çalışmaya devam et"; +"Legacy long-press gesture" = "Eski uzun basma hareketi"; +"Long-press hold time" = "Uzun basma bekleme süresi"; +"Master toggle for the deprecated gesture workflow (off by default)" = "Kullanımdan kaldırılan hareket iş akışı için ana anahtar (varsayılan olarak kapalı)"; +"Max simultaneous downloads" = "Maks eşzamanlı indirme"; +"Open download manager" = "İndirme yöneticisini aç"; +"Press finger(s) for %@ %@" = "%@ %@ boyunca parmakla basın"; +"Retry automatically when a download drops on a network error" = "Bir indirme ağ hatasıyla düştüğünde otomatik olarak yeniden dene"; +"Route saves into a custom album in Photos instead of the camera roll root" = "Kayıtları film rulosu kökü yerine Fotoğraflar'da özel bir albüme yönlendir"; +"Run up to %@ %@ at once" = "Aynı anda en fazla %@ %@ çalıştır"; +"Save action" = "Kaydetme eylemi"; +"Save to dedicated album" = "Özel albüme kaydet"; +"Show a confirmation dialog before starting a download" = "İndirme başlamadan önce onay iletişim kutusu göster"; +"Try %@ more %@ before giving up" = "Vazgeçmeden önce %@ kez daha %@ dene"; +"What happens after the gesture downloads" = "Hareket indirmeden sonra ne olacağı"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "\"Özel albüme kaydet\" açıkken, indirmeler ve paylaşım sayfası \"Fotoğraflar'a kaydet\" seçimleri Fotoğraflar kitaplığınızdaki adlandırılmış bir albüme yönlendirilir. Değiştirmek için \"Albüm adı\"na dokunun."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "%@ kaldı"; +"%@ of %@" = "%1$@ / %2$@"; +"%@/s" = "%@/sn"; +"%dh" = "%dsa"; +"%dm" = "%ddk"; +"%ds" = "%dsn"; +"%ld downloading" = "%ld indiriliyor"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld hâlâ sürüyor ve durdurulacak. Kaydedilmiş dosyalar korunur."; +"%lu failed" = "%lu başarısız"; +"%lu of %lu done" = "%lu / %lu tamamlandı"; +"%lu saved, %lu failed" = "%lu kaydedildi, %lu başarısız"; +"12 hours" = "12 saat"; +"1s" = "1sn"; +"24 hours" = "24 saat"; +"48 hours" = "48 saat"; +"Active" = "Etkin"; +"Auto-retry" = "Otomatik yeniden dene"; +"Clear completed" = "Tamamlananları temizle"; +"Clear download history" = "İndirme geçmişini temizle"; +"Clear download history?" = "İndirme geçmişi temizlensin mi?"; +"Completed" = "Tamamlandı"; +"Don't keep" = "Tutma"; +"Download history" = "İndirme geçmişi"; +"Download settings" = "İndirme ayarları"; +"Downloading %lu items" = "%lu öğe indiriliyor"; +"Downloading…" = "İndiriliyor…"; +"Empty the manager's list of past downloads" = "Yöneticideki geçmiş indirme listesini boşaltır"; +"Encoding %d%%" = "Kodlanıyor %d%%"; +"Encoding…" = "Kodlanıyor…"; +"Extra downloads wait in line and start as slots free up." = "Ekstra indirmeler sırada bekler ve yuvalar boşaldıkça başlar."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "Uygulamayı kapattıktan sonra tamamlanan, başarısız ve iptal edilen indirmelerin yöneticide ne kadar kalacağı. Dosyalara asla dokunulmaz, yalnızca liste temizlenir."; +"How long past downloads stay listed in the manager" = "Geçmiş indirmelerin yöneticide ne kadar kalacağı"; +"Keep history for" = "Geçmişi şu kadar tut"; +"Media you download shows up here, with its progress and where it was saved." = "İndirdiğin medya, ilerlemesi ve nereye kaydedildiğiyle birlikte burada görünür."; +"No downloads yet" = "Henüz indirme yok"; +"Preview" = "Önizleme"; +"Queued" = "Sırada"; +"Redownload" = "Yeniden indir"; +"Retry" = "Yeniden dene"; +"Retrying…" = "Yeniden deneniyor…"; +"Stop" = "Durdur"; +"The files already saved are kept — this only empties the list." = "Kaydedilmiş dosyalar korunur — bu yalnızca listeyi boşaltır."; +"Waiting for a free slot" = "Boş yer bekleniyor"; +"Waiting for connection…" = "Bağlantı bekleniyor…"; +"Waiting to retry" = "Yeniden denemek için bekliyor"; +"Waiting…" = "Bekleniyor…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "Yer paylaşımı düğmelerini düzenle"; +"Overlay layout" = "Yer paylaşımı düzeni"; +"Drag to position the buttons" = "Düğmeleri konumlandırmak için sürükleyin"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "Düğmeleri hikâyenin üzerine sürükleyin. Soluk şerit yanıt çubuğudur."; +"Send message" = "Mesaj gönder"; + +"Pinned" = "Sabitlenenler"; +"Search viewers" = "İzleyicilerde ara"; +"No matching viewers" = "Eşleşen izleyici yok"; +"No viewers match these filters" = "Bu filtrelerle eşleşen izleyici yok"; +"Unavailable" = "Kullanılamıyor"; +"Default (recent first)" = "Varsayılan (önce en yeni)"; +"%lu viewers" = "%lu görüntüleyen"; +"Viewer pinned" = "Görüntüleyen sabitlendi"; +"Viewer unpinned" = "Görüntüleyenin sabitlemesi kaldırıldı"; +"Pin a viewer" = "Bir görüntüleyeni sabitle"; +"Pin order" = "Sabitleme sırası"; +"Pin this viewer?" = "Bu görüntüleyen sabitlensin mi?"; +"Filter, sort & pin viewers" = "Görüntüleyenleri filtrele, sırala ve sabitle"; +"Add by username, remove, reorder" = "Kullanıcı adıyla ekle, kaldır, yeniden sırala"; +"Pinned viewers (%lu)" = "Sabitlenen görüntüleyenler (%lu)"; +"Viewers list" = "Görüntüleyenler listesi"; +"Settings are saved and reused next time." = "Ayarlar kaydedilir ve bir sonraki sefer yeniden kullanılır."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "Birden fazlasını seçerek birleştirin. Sabitlenen görüntüleyenler her zaman en üstte kalır ve bu filtreleri yok sayar."; +"Pinned viewers" = "Sabitlenen görüntüleyenler"; +"Pin" = "Sabitle"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "'Hikayeni kimler gördü' listesini aranabilir, filtrelenebilir ve sıralanabilir bir listeyle değiştirir. Bir izleyiciyi en üste sabitlemek için uzun basın. İstediğiniz zaman yerel listeye dönün."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "Kullanıcı adı veya ham kullanıcı PK'si. Sabitlenen görüntüleyenler her zaman hikâye görüntüleyenleri listenizin en üstünde kalır."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "Hikayelerde göz butonunun yanına indirme/paylaşma/kopyalama/genişletme/yeniden paylaşma/bahsedilenleri görüntüleme seçenekleri olan bir RyukGram eylem butonu ekler. Varsayılan olarak dokunma menüyü açar; dokunma davranışını aşağıdan değiştirin."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "Hikaye katmanına sesi açıp kapatmak için hoparlör butonu ekler. 3 nokta menüsünde de bulunur"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "Hikaye katmanlarına göz butonunu ekler. Kapalıyken görüldü engelleme buton olmadan açık kalır"; +"Advance on story like" = "Hikaye beğenilince ilerle"; +"Advance on story reply" = "Hikayeye yanıt verince ilerle"; +"Advance when marking as seen" = "Görüldü olarak işaretleyince ilerle"; +"Audio" = "Ses"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "Tümünü engelle: tüm hikayeler engellenir — listedeki kullanıcılar istisnadır.\nSeçilenleri engelle: yalnızca listedeki kullanıcılar engellenir — diğer her şey normaldir.\nİki liste bağımsız olarak kaydedilir."; +"Blocking mode" = "Engelleme modu"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "Buton = tek dokunuşta görüldü işaretler. Anahtar = dokunma hikaye okundu bilgisini açıp kapatır (açıkken göz mavi dolar)"; +"Marked-seen indicator" = "Görüldü işareti göstergesi"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "Görüldü olarak işaretlediğiniz hikayeleri 48 saat hatırlar ve üzerlerinde göz butonunu gizler veya doldurur"; +"Hide eye button" = "Göz butonunu gizle"; +"Fill eye button green" = "Göz butonunu yeşil doldur"; +"Disable story seen receipt" = "Hikaye görüldü bilgisini kapat"; +"Enable story user list" = "Hikaye kullanıcı listesini etkinleştir"; +"Stops others from seeing that you viewed their story" = "Başkalarının hikâyelerini gördüğünü fark etmesini engeller"; +"Inserts a button next to the seen/eye button on story overlays" = "Hikaye katmanlarında görüldü/göz butonunun yanına bir buton ekler"; +"Keep stories visually seen locally" = "Hikayeleri yerelde görsel olarak görüldü tut"; +"Liking a story automatically advances to the next one after a short delay" = "Bir hikayeyi beğenmek kısa bir gecikmeden sonra otomatik olarak sonrakine ilerletir"; +"Manage list" = "Listeyi yönet"; +"Manage list (%lu)" = "Listeyi yönet (%lu)"; +"Manual seen button mode" = "Manuel görüldü butonu modu"; +"Mark seen on story like" = "Hikaye beğenisinde görüldü işaretle"; +"Mark seen on story reply" = "Hikaye yanıtında görüldü işaretle"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "Görüldü engelleme açık olsa bile kalbe dokunduğunuz anda hikayeyi görüldü olarak işaretler"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "Görüldü engelleme açık olsa bile yanıt veya emoji tepkisi gönderdiğinizde hikayeyi görüldü olarak işaretler"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "Sunucuda görüldü bilgisini engellemeye devam ederken hikayeleri yerelde görüldü (gri halka) işaretler"; +"Master toggle. When off, the list is ignored" = "Ana anahtar. Kapalıyken liste yok sayılır"; +"Playback" = "Oynatma"; +"Search, sort, swipe to remove" = "Ara, sırala, kaldırmak için kaydır"; +"Seen receipts" = "Görüldü bilgileri"; +"Sending a reply or emoji reaction automatically advances to the next story" = "Yanıt veya emoji tepkisi göndermek otomatik olarak sonraki hikayeye ilerletir"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "Eylem düğmesi menüsüne ve hikaye 3 nokta menüsüne 'Bahsetmeleri görüntüle' girişi ekler"; +"Mentions overlay button" = "Bahsetmeler katman düğmesi"; +"Mentions count badge" = "Bahsetme sayısı rozeti"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "Hikaye katmanındaki eylem/göz düğmesinin yanına bir düğme ekler. Yalnızca geçerli hikayede bahsetmeler veya paylaşılan gönderiler/Reels olduğunda görünür"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "Bindirme düğmesinde benzersiz bahsedilen hesap sayısını kırmızı bir rozetle gösterir"; +"Hide stories midcards" = "Hikâye orta kartlarını gizle"; +"Removes the Trending and Music promo cards from the stories tray" = "Hikâye tepsisindeki Trend ve Müzik tanıtım kartlarını kaldırır"; +"Stickers" = "Çıkartmalar"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "Etkileşime geçmeden önce anket/quiz/kaydırıcı sonuçlarına göz atın — normal şekilde oy vermek için yine dokunabilirsiniz. “Force legacy”, Quiz ve Reveal etiketlerini hikaye düzenleyiciye geri ekler."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "Etkileşmeden önce reels üzerindeki anket/quiz/kaydırıcı sonuçlarına göz atın — yine normal şekilde oy vermek için dokunabilirsiniz."; +"Force legacy stickers in tray" = "Eski etiketleri çubukta zorla göster"; +"Adds Quiz and Reveal stickers back to the picker" = "Quiz ve Reveal etiketlerini seçiciye geri ekler"; +"Bypass Reveal sticker" = "Reveal etiketini atla"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "Reveal etiketli hikayelerde DM ile gösterme adımını atla"; +"Show quiz answer" = "Quiz yanıtını göster"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "Quiz çıkartmalarında doğru seçeneği veya anketlerde önde olan seçeneği daire içine alır"; +"Show poll vote counts" = "Anket oy sayılarını göster"; +"Show vote tallies on poll options and slider count/average before you vote" = "Oy vermeden önce anket seçeneklerindeki oy toplamlarını ve kaydırıcı sayı/ortalamasını göster"; +"Stop story auto-advance" = "Hikaye otomatik ilerlemeyi durdur"; +"Stories" = "Hikayeler"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "Sayaç bitince hikayeler otomatik olarak sonrakine geçmez. Manuel ilerlemek için dokunun"; +"Story audio toggle" = "Hikaye sesi anahtarı"; +"Story user list" = "Hikaye kullanıcı listesi"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "Bir hikayeyi görüldü işaretlemek için göz butonuna dokunmak otomatik olarak sonraki hikayeye ilerletir"; +"This will send a story view receipt." = "Hikaye için görüldü bilgisi gönderilecek."; +"View story mentions" = "Hikaye bahsetmelerini görüntüle"; +"Which stories get seen-receipt blocking" = "Hangi hikayelerde görüldü bilgisi engellensin"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "Doğru etkin durumu"; +"Activity log" = "Etkinlik kaydı"; +"Loading…" = "Yükleniyor…"; +"Notify: %@ · Log: %@" = "Bildir: %@ · Kayıt: %@"; +"Add by user ID" = "Kullanıcı kimliğiyle ekle"; +"Add by thread ID" = "Sohbet kimliğiyle ekle"; +"Adding…" = "Ekleniyor…"; +"Browse activity, grouped by person" = "Etkinliği kişiye göre gruplanmış olarak görüntüle"; +"Clear activity log?" = "Etkinlik kaydı temizlensin mi?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "Henüz etkinlik yok.\nBiri mesajını okuduğunda veya çevrimiçi olduğunda burada görünür."; +"No one found. Check the spelling or try a different name." = "Kimse bulunamadı. Yazımı kontrol edin veya başka bir ad deneyin."; +"Notify about someone" = "Bir kişi hakkında bildir"; +"Open some chats first, or search a username above." = "Önce birkaç sohbet açın veya yukarıdan bir kullanıcı adı arayın."; +"Pick what each person notifies you about" = "Her kişinin neyi bildireceğini seçin"; +"Recent in your DMs" = "Mesajlarındaki son kişiler"; +"Results" = "Sonuçlar"; +"This removes all recorded activity on this device." = "Bu, bu cihazdaki tüm kayıtlı etkinliği kaldırır."; +"Active %ldd ago" = "%ldd önce etkindi"; +"Active %ldh ago" = "%ldh önce etkindi"; +"Active %ldm ago" = "%ldm önce etkindi"; +"Activity notifications" = "Etkinlik bildirimleri"; +"Also track reads in group chats. Groups can be noisy" = "Grup sohbetlerindeki okumaları da izle. Gruplar yoğun olabilir"; +"Came online" = "Çevrimiçi oldu"; +"Customise notifications" = "Bildirimleri özelleştir"; +"Everyone" = "Herkes"; +"Muted" = "Sessize alındı"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "Henüz kimse özelleştirilmedi. Neyin bildirileceğini seçmek için etkinlik kaydında birine basılı tutun."; +"Online, offline, typing and read receipts, per person" = "Kişiye göre çevrimiçi, çevrimdışı, yazıyor ve okundu bilgisi"; +"Per-person notifications" = "Kişiye göre bildirimler"; +"Enable activity" = "Etkinliği aç"; +"Track who reads your messages, comes online, goes offline or types" = "Mesajlarını kimin okuduğunu, çevrimiçi olduğunu, çıktığını ya da yazdığını izle"; +"For everyone" = "Herkes için"; +"For this person" = "Bu kişi için"; +"Log only" = "Yalnızca kayıt"; +"Notify only" = "Yalnızca bildirim"; +"Notify + log" = "Bildirim + kayıt"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "Yalnızca kayıt sessizce kaydeder. Yalnızca bildirim kaydetmeden haber verir. Bildirim + kayıt ikisini de yapar."; +"Presence" = "Durum"; +"Read your message" = "Mesajınızı okudu"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "Durumu her 20 saniyede bir yeniler ve Instagram'ın bekleme süresini kaldırır; böylece biri çevrimdışı olur olmaz yeşil nokta söner."; +"Started typing" = "Yazmaya başladı"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "Neyin bildirileceğini değiştirmek için dokunun. Kaldırıp varsayılanlara dönmek için kaydırın."; +"These override the defaults for this person." = "Bunlar bu kişi için varsayılanları geçersiz kılar."; +"Went offline" = "Çevrimdışı oldu"; +"When someone becomes active" = "Biri etkin olduğunda"; +"When someone goes inactive" = "Biri etkin olmadığında"; +"When someone opens a message you sent" = "Biri gönderdiğiniz mesajı açtığında"; +"When someone starts typing to you" = "Biri size yazmaya başladığında"; +"is now active" = "şu anda etkin"; +"is typing…" = "yazıyor…"; +"went offline" = "çevrimdışı oldu"; +"Online" = "Çevrimiçi"; +"Offline" = "Çevrimdışı"; +"Typing" = "Yazıyor"; +"Filters" = "Filtreler"; +"Delete the selected records? This can't be undone." = "Seçili kayıtlar silinsin mi? Bu geri alınamaz."; +"Delete all records for the selected chats? This can't be undone." = "Seçili sohbetlerin tüm kayıtları silinsin mi? Bu geri alınamaz."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "DM konuşmalarına göz butonunu ekler. Kapalıyken okundu bilgisi engelleme buton olmadan açık kalır"; +"Auto mark seen on interact" = "Etkileşimde otomatik görüldü işaretle"; +"Auto mark seen on typing" = "Yazarken otomatik görüldü işaretle"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "Otomatik okundu bilgisini engeller — görüldü işareti yalnızca siz seçtiğinizde gönderilir"; +"Control when messages are marked as seen" = "Mesajların ne zaman görüldü işaretleneceğini kontrol eder"; +"How the seen button behaves" = "Görüldü butonunun nasıl davranacağı"; +"Manually mark messages as seen" = "Mesajları manuel olarak görüldü işaretle"; +"Mark as seen?" = "Görüldü olarak işaretlensin mi?"; +"Mark as viewed?" = "Görüntülendi olarak işaretlensin mi?"; +"Mark seen locally" = "Yerel olarak görüldü işaretle"; +"Marks messages as seen when you reply, react or send media" = "Yanıtladığında, tepki verdiğinde veya medya gönderdiğinde mesajları görüldü işaretler"; +"Marks messages as seen when you start typing" = "Yazmaya başladığınızda mesajları görüldü işaretler"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "Açılan sohbetler yalnızca bu cihazda okunmuş görünür. Gönderene okundu bilgisi gitmediği sürece göz düğmesi turuncu olur"; +"Read receipt mode" = "Okundu bilgisi modu"; +"Read receipts" = "Okundu bilgileri"; +"Show seen button" = "Görüldü butonunu göster"; +"This will send a read receipt for the latest messages." = "En son mesajlar için okundu bilgisi gönderilecek."; +"This will send a view receipt for the current message." = "Bu mesaj için görüntülendi bilgisi gönderilecek."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "Etkinlik"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "Sesli mesajları M4A ses olarak kaydetmek için uzun basma menüsüne 'İndir' seçeneği ekler"; +"Allows typing and sending DMs longer than Instagram's limit" = "Instagram'ın sınırından daha uzun mesajlar yazıp göndermenize izin verir"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "DM'lerde artı menüsüne 'Dosya Gönder' seçeneği ekler. Desteklenen dosya türleri Instagram tarafından sınırlanabilir"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "Ses dosyalarını sesli mesaj olarak göndermek için DM'lerde artı menüsüne 'Ses Dosyası' seçeneği ekler"; +"Adds copy text, download GIF/audio to the note long-press menu" = "Not uzun basma menüsüne metin kopyalama, GIF/ses indirme seçenekleri ekler"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "Tümünü engelle: tüm sohbetler engellenir — listedeki sohbetler istisnadır.\nSeçilenleri engelle: yalnızca listedeki sohbetler engellenir — diğer her şey normaldir.\nİki liste bağımsız olarak kaydedilir. Eklemek veya kaldırmak için gelen kutusunda bir sohbete uzun basın."; +"Block keep-deleted for excluded chats" = "Hariç tutulan sohbetlerde silinenleri tutmayı engelle"; +"Block keep-deleted for unlisted chats" = "Listelenmemiş sohbetlerde silinenleri tutmayı engelle"; +"Bypass DM character limit" = "Mesaj karakter sınırını atla"; +"Chat list" = "Sohbet listesi"; +"Confirmation dialog before clearing preserved messages" = "Korunan mesajları temizlemeden önce onay iletişim kutusu"; +"Copies note text directly on long press without opening the menu" = "Uzun basınca menüyü açmadan not metnini doğrudan kopyalar"; +"Copy text on hold" = "Basılı tutunca metni kopyala"; +"Adds Background, Text and Emoji buttons to the note editor" = "Not düzenleyiciye Arka Plan, Metin ve Emoji düğmeleri ekler"; +"Custom note themes" = "Özel not temaları"; +"Disable vanish mode swipe" = "Kaybolma modu kaydırmasını kapat"; +"Disable typing status" = "Yazıyor durumunu kapat"; +"Disable view-once limitations" = "Bir kez görüntüleme sınırlamalarını kapat"; +"Download voice messages" = "Sesli mesajları indir"; +"Enable chat list" = "Sohbet listesini etkinleştir"; +"Enable note theming" = "Not temalarını etkinleştir"; +"Enables the notes theme picker" = "Not tema seçicisini etkinleştirir"; +"Files" = "Dosyalar"; +"Full last active date" = "Tam son aktiflik tarihi"; +"Hide reels blend button" = "Reels blend butonunu gizle"; +"Hide send to group chat" = "Grup sohbetine gönder seçeneğini gizle"; +"Pin recipients on long-press" = "Uzun basışla alıcıları sabitle"; +"Long-press in the share sheet to pin a chat/user to the top" = "Paylaş sayfasında bir sohbeti/kullanıcıyı en üste sabitlemek için uzun basın"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "Bir alıcıya uzun basarak sabitleyin veya kaldırın. Sabitlenen alıcılar en üstte görünür."; +"Recipient pinned" = "Alıcı sabitlendi"; +"Recipient unpinned" = "Alıcı sabitlemesi kaldırıldı"; +"Couldn't resolve recipient id" = "Alıcı kimliği çözümlenemedi"; +"Hide video call button" = "Görüntülü arama butonunu gizle"; +"Hide voice call button" = "Sesli arama butonunu gizle"; +"Hides the blend button in DMs" = "DM'lerde blend butonunu gizler"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "Birden fazla alıcıyla paylaşırken grup sohbeti oluştur/gönder satırını kaldırır"; +"Hides typing indicator from others" = "Yazıyor göstergesini başkalarından gizler"; +"Indicate unsent messages" = "Gönderilmemiş mesajları belirt"; +"Keep deleted messages" = "Silinen mesajları tut"; +"Turns view once messages into normal media you can loop and pause" = "Tek görüntülük mesajları döngüye alıp duraklatabileceğin normal medyaya dönüştürür"; +"Note actions" = "Not eylemleri"; +"Preserves messages that others unsend" = "Başkalarının geri aldığı mesajları korur"; +"Keep my deleted messages" = "Sildiğim mesajları koru"; +"Also preserves messages you unsend yourself" = "Kendi geri aldığın mesajları da korur"; +"Prevents accidental swipe-up activation of vanish mode" = "Kaybolma modunun yanlışlıkla yukarı kaydırmayla etkinleşmesini engeller"; +"Quick list button in chats" = "Sohbetlerde hızlı liste butonu"; +"Removes the audio call button from DM thread header" = "DM konuşma başlığından sesli arama butonunu kaldırır"; +"Removes the video call button from DM thread header" = "DM konuşma başlığından görüntülü arama butonunu kaldırır"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "Görsel mesajları süresi dolmadan tekrar oynatır. Göz butonu menüsünden açıp kapatın veya göz butonu kapalıyken bağımsız buton olarak kullanın"; +"Search, sort, swipe to remove or toggle keep-deleted" = "Ara, sırala, kaldırmak veya silinenleri tutmayı açıp kapatmak için kaydır"; +"Send audio as file" = "Sesi dosya olarak gönder"; +"Send files (experimental)" = "Dosya gönder (deneysel)"; +"File sending not available" = "Dosya gönderme kullanılamıyor"; +"Show full date instead of \"Active 2h ago\"" = "\"2 saat önce aktifti\" yerine tam tarihi göster"; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "Sohbetleri listeye eklemek/kaldırmak için DM konuşmalarında bir buton gösterir. Daha fazla seçenek için uzun basın"; +"Shows a notification pill when a message is unsent" = "Bir mesaj geri alındığında bildirim etiketi gösterir"; +"Shows an \"Unsent\" label on preserved messages" = "Korunan mesajlarda \"Geri alındı\" etiketi gösterir"; +"Unlimited replay of visual messages" = "Görsel mesajları sınırsız tekrar oynatma"; +"Unsent message notification" = "Geri alınan mesaj bildirimi"; +"Voice messages" = "Sesli mesajlar"; +"Warn before clearing on refresh" = "Yenilemede temizlemeden önce uyar"; +"Which chats get read-receipt blocking" = "Hangi sohbetlerde okundu bilgisi engellensin"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ DM sekmesinde yenilemek için çekme, tüm korunan mesajları temizler. Onay iletişim kutusu almak için aşağıdaki uyarıyı etkinleştirin."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu silindi"; +"%lu selected" = "%lu seçildi"; +"Absolute date + time" = "Tarih ve saat (mutlak)"; +"Adjust the filters or clear the search to see more." = "Daha fazlasını görmek için filtreleri değiştirin veya aramayı temizleyin."; +"All time" = "Tüm zamanlar"; +"Browse, filter and search recorded messages" = "Kaydedilen mesajlarda gezin, filtrele ve ara"; +"Captures unsent messages with their text or media" = "Gönderilmeyen mesajları metni veya medyasıyla yakalar"; +"Clear deleted-message log?" = "Silinmiş mesaj günlüğü temizlensin mi?"; +"Clear from this user" = "Bu kullanıcıdan temizle"; +"Clear log" = "Günlüğü temizle"; +"Clear log for this account" = "Bu hesabın günlüğünü temizle"; +"Clear log for this user?" = "Bu kullanıcının günlüğü temizlensin mi?"; +"Clear media files" = "Medya dosyalarını temizle"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "Medyayı temizlemek kayıtları (metin, gönderen, zaman) korur. Günlüğü temizlemek bu hesabın her şeyini siler."; +"Close" = "Kapat"; +"Content unavailable" = "İçerik kullanılamıyor"; +"Copied" = "Kopyalandı"; +"Copy URL" = "URL'yi kopyala"; +"Date range" = "Tarih aralığı"; +"Deleted messages" = "Silinmiş mesajlar"; +"Deleted messages log" = "Silinmiş mesaj günlüğü"; +"Deleted: %@\n" = "Silindi: %@\n"; +"Edit %lu" = "Düzenleme %lu"; +"Edit history" = "Düzenleme geçmişi"; +"Edited" = "Düzenlendi"; +"Empty" = "Boş"; +"Enable deleted messages log" = "Silinmiş mesaj günlüğünü etkinleştir"; +"Enable Settings → Messages → Deleted messages log to start recording." = "Kayda başlamak için Ayarlar → Mesajlar → Silinmiş mesaj günlüğü’nü etkinleştirin."; +"GIF" = "GIF"; +"Hashtag" = "Hashtag"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "Tür: %@\n"; +"Last 30 days" = "Son 30 gün"; +"Last 7 days" = "Son 7 gün"; +"Link" = "Bağlantı"; +"Live location" = "Canlı konum"; +"Location" = "Konum"; +"Logging is off" = "Kayıt kapalı"; +"Media on disk" = "Diskteki medya"; +"Most messages" = "En çok mesaj"; +"Most recent" = "En yeniler"; +"No deleted messages yet" = "Henüz silinmiş mesaj yok"; +"No matches" = "Eşleşme yok"; +"Nothing to save" = "Kaydedilecek bir şey yok"; +"Oldest first" = "Önce en eski"; +"Open log" = "Günlüğü aç"; +"Group chat" = "Grup sohbeti"; +"%lu messages in %lu chats" = "%lu mesaj · %lu sohbet"; +"%lu people · %lu deleted" = "%lu kişi · %lu silindi"; +"When someone unsends a message, it will appear here grouped by chat." = "Biri bir mesajı geri çektiğinde, burada sohbete göre gruplanmış olarak görünür."; +"Clear this chat" = "Bu sohbeti temizle"; +"Clear log for this chat?" = "Bu sohbetin günlüğü temizlensin mi?"; +"Removes every preserved deleted message from this group chat." = "Bu grup sohbetinde saklanan tüm silinmiş mesajları kaldırır."; +"Reaction removed" = "Tepki kaldırıldı"; +"Log removed reactions" = "Kaldırılan tepkileri kaydet"; +"Also records when someone removes a reaction, and which message it was on" = "Birinin bir tepkiyi kaldırdığını ve hangi mesajda olduğunu da kaydeder."; +"Removed a reaction" = "Bir tepkiyi kaldırdı"; +"on @%@: %@" = "@%@ kişisinin mesajında: %@"; +"on: %@" = "şu mesajda: %@"; +"a message" = "bir mesaj"; +"removed %@ on: %@" = "%@ tepkisini kaldırdı: %@"; +"removed reaction %@" = "%@ tepkisini kaldırdı"; +"%@ removed the %@ reaction." = "%@, %@ tepkisini kaldırdı."; +"Removed %@" = "%@ kaldırıldı"; +"Someone" = "Biri"; +"Photo or video" = "Fotoğraf veya video"; +"Refresh names & photos" = "Adları ve fotoğrafları yenile"; +"Refreshing names & photos" = "Adlar ve fotoğraflar yenileniyor"; +"Records every message someone unsends, grouped by chat" = "Birinin geri çektiği her mesajı sohbete göre gruplayarak kaydeder"; +"Open profile" = "Profili aç"; +"Original" = "Orijinal"; +"Play" = "Oynat"; +"Post" = "Gönderi"; +"Reel" = "Reel"; +"Relative (1m / 3h / 3d ago)" = "Göreli (1d / 3sa / 3g önce)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "Geçerli hesap için saklanan her silinmiş mesajı ve yakalanan medyasını kaldırır. Geri alınamaz."; +"Removes every preserved deleted message and its captured media for this account." = "Bu hesap için saklanan her silinmiş mesajı ve yakalanan medyasını kaldırır."; +"Removes every preserved deleted message from this sender." = "Bu göndericinin saklanan her silinmiş mesajını kaldırır."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "Kaydedilen her fotoğraf, video ve ses klibini kaldırır. Kayıtlar metni ve gönderen bilgisini korur."; +"Search messages" = "Mesaj ara"; +"Search senders or messages" = "Gönderen veya mesaj ara"; +"Select" = "Seç"; +"Show edit history" = "Düzenleme geçmişini göster"; +"Source URL recorded but media not stored.\n" = "Kaynak URL kaydedildi ancak medya saklanmadı.\n"; +"Sticker" = "Çıkartma"; +"Tap to open in Instagram" = "Instagram'da açmak için dokunun"; +"Tap to open in Maps" = "Haritalar'da açmak için dokunun"; +"Tap to play" = "Oynatmak için dokunun"; +"Tap to play · %@" = "Oynatmak için dokunun · %@"; +"Text" = "Metin"; +"This account" = "Bu hesap"; +"Unknown" = "Bilinmiyor"; +"Video" = "Video"; +"View" = "Görüntüle"; +"Voice" = "Ses"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "Etkinleştirildiğinde, silinmiş mesajlar ve medyaları bu cihaza kaydedilir. Geçmişi silmek için kapatın ve günlüğü temizleyin."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "Çizim aracında bir görseli çizim olarak gönder; galeri, Fotoğraflar, sticker veya yapıştırdan; kırpma ve arka plan kaldırma düzenleyicisiyle"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "Bir çizgi veya şekil çiz, sonra Gönder’e dokun ve görselin kaynağını seç: galeri, Fotoğraflar, sticker veya yapıştır.\n\nGörsel, çizdiğin şeyin yerini alır ve konumu ile boyutunu kullanır; daha büyük çizersen görsel de büyük olur.\n\nUygulanması için Instagram’ı yeniden başlat."; + +"Send image as drawing" = "Görseli çizim olarak gönder"; + +"Bypass \"You can't send messages\"" = "“Mesaj gönderemezsiniz” uyarısını atla"; +"Custom chat background" = "Özel sohbet arka planı"; +"DM Save button" = "DM Kaydet düğmesi"; +"Incoming calls stay silent — no ring, no screen, no notification" = "Gelen aramalar sessiz kalır — zil yok, ekran yok, bildirim yok"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "Instagram'ın DM fotoğraf ve videolarındaki yerleşik Kaydet düğmesini Fotoğraflar'a, Galeri'ye veya Paylaş'a indirecek şekilde ayarlar"; +"Messages" = "Mesajlar"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "Engellenmiş yazma alanı başlığını kaldırır ve kısıtlı sohbetlerde metin girişini geri getirir"; +"Reroute native Save" = "Yerleşik Kaydet'i yönlendir"; +"Save media" = "Medyayı kaydet"; +"Silence incoming calls" = "Gelen aramaları sustur"; +"Threads" = "Konular"; +"Use your own images as chat backgrounds" = "Kendi görsellerinizi sohbet arka planı olarak kullanın"; +"Activity status toggle" = "Etkinlik durumu düğmesi"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "Gelen kutusu başlığına bir nokta ekler. Etkinlik durumunuzu açmak veya kapatmak için dokunun"; +"Activity status on" = "Etkinlik durumu açık"; +"Activity status off" = "Etkinlik durumu kapalı"; +"Couldn't change activity status" = "Etkinlik durumu değiştirilemedi"; +"Check your connection and try again" = "Bağlantınızı kontrol edip tekrar deneyin"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "Kamera"; +"Viewer" = "Görüntüleyici"; +"Saving" = "Kaydetme"; +"Confirmations" = "Onaylar"; +"Confirm switching button" = "Geçiş onayı düğmesi"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "Geçiş onayını anında açıp kapatmak için eylem düğmesinin yanına bir düğme ekler"; +"Switching confirmation on" = "Geçiş onayı açık"; +"Switching confirmation off" = "Geçiş onayı kapalı"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "Albümünüzden fotoğraf göndermek için Anlık kamerasına bir galeri butonu ekler"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "Anlık görüntüleyicisinin başlığına genişlet, kaydet, paylaş ve tümünü kaydet girişleri içeren bir RyukGram eylem düğmesi ekler"; +"All loaded instants" = "Yüklü tüm anlıklar"; +"Auto advance after reaction" = "Tepkiden sonra otomatik ilerle"; +"Automatically moves to the next instant after you like or react" = "Beğendikten veya tepki verdikten sonra otomatik olarak sonraki anlığa geçer"; +"Auto close when finished" = "Bittiğinde otomatik kapat"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "Hepsini gördükten sonra kamerada kalmak yerine Anlık görüntüleyicisini kapatır"; +"Bypasses the Instants screenshot block" = "Anlık ekran görüntüsü engelini atlar"; +"Could not locate the instant on screen" = "Ekrandaki anlık bulunamadı"; +"Current instant" = "Geçerli anlık"; +"In-app Gallery" = "Uygulama içi galeri"; +"Instant" = "Anlık"; +"Instants" = "Anlık"; +"Auto-saved instants log" = "Otomatik kaydedilen anlık günlüğü"; +"Auto-save instants" = "Anlıkları otomatik kaydet"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "Kaydırırken dahil, görüntülediğiniz her anlığı otomatik kaydeder — her biri yalnızca bir kez"; +"Instants action button" = "Anlık eylem düğmesi"; +"No instants currently loaded" = "Şu anda yüklü anlık yok"; +"No media available to save" = "Kaydedilecek medya yok"; +"Photos library" = "Fotoğraflar kitaplığı"; +"Pick from" = "Şuradan seç"; +"Queued %lu instants" = "%lu anlık kuyruğa alındı"; +"Save all to Gallery" = "Hepsini galeriye kaydet"; +"Save all to Photos" = "Hepsini Fotoğraflar'a kaydet"; +"Save to Gallery" = "Galeriye kaydet"; +"Send from gallery" = "Galeriden gönder"; +"Tweaks for the QuickSnap / Instants camera surface." = "QuickSnap / Instants kamera ekranı için ayarlar."; +"Use" = "Kullan"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "Alt sekme çubuğunu da gizle — yalnızca gelen kutusu görünür"; +"Show the home shortcut button in the inbox header, on the right" = "Ana sayfa kısayol düğmesini gelen kutusu başlığında, sağda gösterir"; +"Greyed out until the home shortcut button is enabled in Interface" = "Ana sayfa kısayol düğmesi Arayüz’de etkinleştirilene kadar soluk görünür"; +"Hide search tab" = "Arama sekmesini gizle"; +"Remove the search/explore button from the tab bar" = "Sekme çubuğundan arama/keşfet düğmesini kaldır"; +"Hide tab bar" = "Sekme çubuğunu gizle"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "DM gelen kutusu + profil dışındaki tüm sekmeleri gizler ve uygulamayı gelen kutusunda açmaya zorlar. Ayarlar kısayolu gelen kutusu sekmesine uzun basmaya taşınır."; +"Icon order" = "Simge sırası"; +"Launch tab" = "Açılış sekmesi"; +"Swipe sideways to move between the tab bar tabs" = "Sekme çubuğundaki sekmeler arasında geçmek için yana kaydır"; +"Messages only" = "Yalnızca mesajlar"; +"Messages-only mode" = "Yalnızca mesajlar modu"; +"Automatic schedule" = "Otomatik zamanlama"; +"DM-only client, hide tabs, auto schedule" = "Yalnızca DM istemcisi, sekmeleri gizle, otomatik zamanlama"; +"Start time" = "Başlangıç saati"; +"End time" = "Bitiş saati"; +"Switch into Messages-only on its own during a time window" = "Bir zaman aralığı boyunca yalnızca mesajlar moduna otomatik geç"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "Yukarıdaki anahtarları kullanarak her gün belirli bir aralıkta (örn. 22:00 – 06:00) yalnızca mesajlar modunu otomatik açar. Aralık başladığında ve bittiğinde yeniden başlatmanız istenir."; +"Active now · ends %@" = "Şu an etkin · %@ bitiyor"; +"Next window starts %@" = "Sonraki aralık %@ başlıyor"; +"Messages-only starting" = "Yalnızca mesajlar modu başlıyor"; +"Messages-only ending" = "Yalnızca mesajlar modu bitiyor"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "Yalnızca mesajlar modu aralığınız başladı. Yalnızca DM'ye geçmek için Instagram'ı yeniden başlatın."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "Yalnızca mesajlar modu aralığınız bitti. Diğer sekmeleri geri getirmek için Instagram'ı yeniden başlatın."; +"Navigation" = "Gezinme"; +"Swipe between tabs" = "Sekmeler arasında kaydır"; +"Tab the app opens to. Ignored when Messages-only is on" = "Uygulamanın açılacağı sekme. Yalnızca Mesajlar açıkken yok sayılır"; +"How the icons on the bottom tab bar are ordered" = "Alt sekme çubuğundaki simgelerin sıralaması"; +"Hidden tabs" = "Gizli sekmeler"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "Yeniden sıralamak için basılı tutup sürükleyin. Bir simgeyi gizlemek için yukarı sürükleyin. Geri eklemek için gizli bir sekmeye dokunun."; +"All tabs are on the bar" = "Tüm sekmeler çubukta"; +"Turn IG into a DM-only client" = "IG'yi yalnızca DM istemcisine dönüştür"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "Tümü"; +"Calls" = "Aramalar"; +"Comments & posts" = "Yorumlar ve gönderiler"; +"Confirm actions" = "Eylemleri onayla"; +"Confirm changing theme" = "Tema değiştirmeyi onayla"; +"Confirm disappearing media mark as viewed" = "Kaybolan medyayı görüntülendi olarak işaretlemeyi onayla"; +"Confirm DM mark as seen" = "DM'i görüldü olarak işaretlemeyi onayla"; +"Confirm follow" = "Takip etmeyi onayla"; +"Confirm follow requests" = "Takip isteklerini onayla"; +"Confirm Instants capture" = "Anlık çekimini onayla"; +"Confirm Instants emoji reaction" = "Anlık emoji tepkisini onayla"; +"Confirm like: Posts" = "Beğeniyi onayla: Gönderiler"; +"Confirm like: Reels" = "Beğeniyi onayla: Reels"; +"Confirm note emoji reaction" = "Not emoji tepkisini onayla"; +"Confirm note like" = "Not beğenisini onayla"; +"Confirm posting comment" = "Yorum göndermeyi onayla"; +"Confirm repost" = "Yeniden paylaşmayı onayla"; +"Confirm send to group chat" = "Grup sohbetine göndermeyi onayla"; +"Confirm sticker interaction (highlights)" = "Çıkartma etkileşimini onayla (öne çıkanlar)"; +"Confirm sticker interaction (stories)" = "Çıkartma etkileşimini onayla (hikayeler)"; +"Confirm story emoji reaction" = "Hikaye emoji tepkisini onayla"; +"Confirm story like" = "Hikaye beğenisini onayla"; +"Confirm story mark as seen" = "Hikayeyi görüldü olarak işaretlemeyi onayla"; +"Confirm switching Instant" = "Anlık değiştirmeyi onayla"; +"Confirm unfollow" = "Takibi bırakmayı onayla"; +"Confirm vanish mode" = "Kaybolma modunu onayla"; +"Confirm video call" = "Görüntülü aramayı onayla"; +"Confirm voice call" = "Sesli aramayı onayla"; +"Confirm voice messages" = "Sesli mesajları onayla"; +"Follows" = "Takip ediyor"; +"Likes" = "Beğeniler"; +"Messaging" = "Mesajlaşma"; +"Reaction stickers only" = "Yalnızca tepki etiketleri"; +"Reactions" = "Tepkiler"; +"Send to group chat?" = "Grup sohbetine gönderilsin mi?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "Paylaşım sayfasından bir grup sohbeti oluşturmadan/göndermeden önce uyarı gösterir"; +"Shows an alert before marking a disappearing message as viewed" = "Kaybolan bir mesajı görüntülendi olarak işaretlemeden önce uyarı gösterir"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "DM görüldü butonundan veya menüden okundu bilgisi göndermeden önce uyarı gösterir"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "Göz butonundan veya menüden hikaye görüntüleme bilgisi göndermeden önce uyarı gösterir"; +"Shows an alert before sending an emoji reaction on a note" = "Bir nota emoji tepkisi göndermeden önce uyarı gösterir"; +"Shows an alert before sending an emoji reaction on a story" = "Bir hikayeye emoji tepkisi göndermeden önce uyarı gösterir"; +"Shows an alert before sending an emoji reaction on an Instant" = "Bir anlığa emoji tepkisi göndermeden önce uyarı gösterir"; +"Shows an alert before sending a photo or video from the Instants camera" = "Anlık kamerasından fotoğraf veya video göndermeden önce uyarı gösterir"; +"Shows an alert before tapping to switch to the next/previous Instant" = "Sonraki/önceki anlığa geçmek için dokunmadan önce uyarı gösterir"; +"Asks you to confirm before a voice message sends" = "Sesli mesaj gönderilmeden önce onay ister"; +"Shows an alert to confirm before toggling vanish mode" = "Kaybolma modunu açıp kapatmadan önce onay uyarısı gösterir"; +"Confirms before you accept or decline a follow request" = "Bir takip isteğini kabul veya reddetmeden önce onay ister"; +"Confirms before a chat theme change applies" = "Sohbet teması değişikliği uygulanmadan önce onay ister"; +"Confirms before the follow button follows someone" = "Takip düğmesi birini takip etmeden önce onay ister"; +"Shows an alert when you click the like button on notes to confirm the like" = "Notlarda beğeniyi onaylamak için beğen butonuna tıkladığınızda uyarı gösterir"; +"Shows an alert when you click the like button on posts to confirm the like" = "Gönderilerde beğeniyi onaylamak için beğen butonuna tıkladığınızda uyarı gösterir"; +"Confirms before a like lands on a reel" = "Bir reel'e beğeni gitmeden önce onay ister"; +"Shows an alert when you click the like button on stories to confirm the like" = "Hikayelerde beğeniyi onaylamak için beğen butonuna tıkladığınızda uyarı gösterir"; +"Confirms before a comment posts" = "Bir yorum gönderilmeden önce onay ister"; +"Shows an alert when you click the repost button to confirm before reposting" = "Yeniden paylaşmadan önce onaylamak için yeniden paylaş butonuna tıkladığınızda uyarı gösterir"; +"Shows an alert when you click the unfollow button to confirm" = "Takibi bırakmayı onaylamak için takibi bırak butonuna tıkladığınızda uyarı gösterir"; +"Shows an alert when you click the video call button to confirm before calling" = "Aramadan önce onaylamak için görüntülü arama butonuna tıkladığınızda uyarı gösterir"; +"Shows an alert when you click the voice call button to confirm before calling" = "Aramadan önce onaylamak için sesli arama butonuna tıkladığınızda uyarı gösterir"; +"Shows an alert when you tap a sticker inside a highlight" = "Öne çıkan içindeki çıkartmaya dokunduğunuzda uyarı gösterir"; +"Shows an alert when you tap a sticker on someone's story" = "Birinin hikayesindeki çıkartmaya dokunduğunuzda uyarı gösterir"; +"Stories & highlights" = "Hikayeler ve öne çıkanlar"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld sa"; +"%ld locked" = "%ld kilitli"; +"%ld min" = "%ld dk"; +"%ldh idle" = "%ld sa boşta"; +"%ldm idle" = "%ld dk boşta"; +"%lds" = "%ld sn"; +"%lds idle" = "%ld sn boşta"; +"%lu hidden" = "%lu gizli"; +"4 digits" = "4 hane"; +"6 digits" = "6 hane"; +"Add hidden chat" = "Gizli sohbet ekle"; +"Add locked chat" = "Kilitli sohbet ekle"; +"Allow Instants screenshots" = "Anlık ekran görüntülerine izin ver"; +"Always ask when opening again" = "Tekrar açarken her zaman sor"; +"Ask again after Instagram returns" = "Instagram geri döndükten sonra tekrar sor"; +"Auto-relock after idle" = "Boşta kaldıktan sonra otomatik yeniden kilitle"; +"Balanced default" = "Dengeli varsayılan"; +"Best for sensitive sections" = "Hassas bölümler için en iyisi"; +"Biometric" = "Biyometrik"; +"Change passcode" = "Şifreyi değiştir"; +"Chat hidden" = "Sohbet gizlendi"; +"Chat unhidden" = "Sohbet gösterildi"; +"Chat locked" = "Sohbet kilitlendi"; +"Chat unlocked" = "Sohbet kilidi açıldı"; +"Choose a code you'll remember." = "Hatırlayacağınız bir kod seçin."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "Bu bölümün boştayken ne kadar süre kilitsiz kalacağını seçin. Asla, Instagram kapanana veya arka plana geçene kadar kilitsiz tutar."; +"Confirm current passcode" = "Mevcut şifreyi onayla"; +"Confirm passcode" = "Şifreyi onayla"; +"Could not save passcode" = "Şifre kaydedilemedi"; +"Create passcode" = "Şifre oluştur"; +"Derivation failed" = "Türetme başarısız"; +"DM inbox" = "DM gelen kutusu"; +"Don't share unlock" = "Kilit açmayı paylaşma"; +"Each target has its own enable, timeout, and re-lock configuration." = "Her hedefin kendi etkinleştirme, zaman aşımı ve yeniden kilitleme yapılandırması vardır."; +"Enable lock" = "Kilidi etkinleştir"; +"Enter passcode" = "Şifreyi gir"; +"Enter value" = "Değer gir"; +"Enter your current passcode to change it" = "Değiştirmek için mevcut şifrenizi girin"; +"Enter your current passcode to reset it" = "Sıfırlamak için mevcut parolanızı girin"; +"Enter your passcode to continue" = "Devam etmek için şifrenizi girin"; +"every use" = "her kullanımda"; +"Every use" = "Her kullanımda"; +"Hidden chats" = "Gizli sohbetler"; +"Hidden chats hidden" = "Gizli sohbetler gizlendi"; +"Hidden chats revealed" = "Gizli sohbetler gösterildi"; +"👁 Shown in the inbox · Tap to hide" = "👁 Gelen kutusunda gösteriliyor · Gizlemek için dokun"; +" · shown in inbox" = " · gelen kutusunda gösteriliyor"; +"Hide chat" = "Sohbeti gizle"; +"Unhide chat" = "Sohbeti göster"; +"Hold name to reveal" = "Göstermek için ada basılı tut"; +"Hide message preview" = "Mesaj önizlemesini gizle"; +"Hide this chat?" = "Bu sohbet gizlensin mi?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "RyukGram arayüzünü ekran görüntülerinden/kayıtlardan gizler ve Instagram’ın özellik bazlı ekran görüntüsü uyarılarını atlatır."; +"Idle timeout" = "Boşta kalma süresi"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "Bu hedefi ayrı olarak kilitli tut"; +"Less frequent prompts" = "Daha seyrek istemler"; +"Lock" = "Kilitle"; +"Lock chat" = "Sohbeti kilitle"; +"Lock every time" = "Her seferinde kilitle"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "Her seferinde kilitle, boşta zaman aşımını geçersiz kılar. Kilit açmayı paylaşma, bu hedefi ayrı tutar."; +"Lock targets" = "Kilit hedefleri"; +"Lock the tweak" = "Tweak’i kilitle"; +"Lock this chat" = "Bu sohbeti kilitle"; +"Lock this chat?" = "Bu sohbet kilitlensin mi?"; +"Lock with passcode" = "Şifre ile kilitle"; +"Locked chats" = "Kilitli sohbetler"; +"Long-press a chat to lock it individually" = "Bireysel olarak kilitlemek için bir sohbete uzun basın"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "Bir DM sohbetine uzun basın → Sohbeti gizle’ye dokunarak buraya ekleyin. Gizli sohbetler bu listeden çıkarana kadar gelen kutusundan filtrelenir."; +"Long-press a DM to add" = "Eklemek için bir DM’ye uzun basın"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "Gizli sohbetlerini göstermek veya gizlemek için DM gelen kutusunun üstündeki hesap adına uzun bas"; +"Longest idle window" = "En uzun boşta süresi"; +"Manage locked chats" = "Kilitli sohbetleri yönet"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "Ana anahtar. Hedef başına yapılandırmayı kaybetmeden tüm kilit hedeflerini devre dışı bırakmak için kapatın."; +"Never" = "Asla"; +"No passcode set" = "Şifre ayarlanmadı"; +"Nothing here yet." = "Burada henüz bir şey yok."; +"Off" = "Kapalı"; +"On" = "Açık"; +"On — %@" = "Açık — %@"; +"On — %@ + %ld more" = "Açık — %@ + %ld diğer"; +"On — no targets enabled" = "Açık — etkin hedef yok"; +"Passcode" = "Şifre"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "Şifre + biyometrik. Tweak ayarları penceresini, galeriyi, silinen mesajlar günlüğünü, bireysel sohbetleri ve tüm uygulamayı kilitler."; +"Passcode changed" = "Şifre değiştirildi"; +"Passcode reset" = "Şifre sıfırlandı"; +"Passcode set" = "Şifre ayarlandı"; +"Passcode too short" = "Parola çok kısa"; +"Passcodes did not match — try again" = "Şifreler eşleşmedi — tekrar deneyin"; +"Per-chat locks" = "Sohbet başına kilitler"; +"Prompt before Instagram opens" = "Instagram açılmadan önce sor"; +"Prompt before Profile Analyzer opens" = "Profil Analizörü açılmadan önce sor"; +"Prompt before the deleted-messages log opens" = "Silinen mesajlar günlüğü açılmadan önce sor"; +"Prompt before the gallery opens" = "Galeri açılmadan önce sor"; +"Prompt before tweak settings open" = "Tweak ayarları açılmadan önce sor"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "Doğrudan mesajlara açılış dahil, DM gelen kutusuna her girişte sor"; +"Re-enter the same passcode" = "Aynı şifreyi tekrar gir"; +"Re-lock on background" = "Arka planda yeniden kilitle"; +"re-lock on bg" = "arka planda yeniden kilitle"; +"Recently hidden" = "Son gizlenenler"; +"Prompt before holding the inbox name reveals hidden chats" = "Ada uzun basmak gizli sohbetleri göstermeden önce iste"; +"Reveal hidden chats" = "Gizli sohbetleri göster"; +"Recently locked" = "Son kilitlenenler"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "Ekran görüntüleri, ekran kayıtları ve yansıtmada RyukGram düğmelerini gizler"; +"Remove screenshot alert" = "Ekran görüntüsü uyarısını kaldır"; +"Replace inbox preview with • • •" = "Gelen kutusu önizlemesini • • • ile değiştir"; +"Require passcode for this section" = "Bu bölüm için parola iste"; +"Requires your current passcode" = "Mevcut parolanızı gerektirir"; +"Reset passcode" = "Şifreyi sıfırla"; +"Reset passcode?" = "Şifre sıfırlansın mı?"; +"Screenshots & capture" = "Ekran görüntüsü ve kayıt"; +"Security & Privacy" = "Güvenlik ve gizlilik"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "Ayarları, Galeriyi, silinen mesajlar günlüğünü, bireysel sohbetleri, DM gelen kutusunu, Profil Analizörü veya Instagram’ın kendisini kilitlemek için bir şifre ayarlayın."; +"Set passcode" = "Şifre ayarla"; +"Short idle window" = "Kısa boşta süresi"; +"Stay unlocked until app close or background" = "Uygulama kapanana veya arka plana geçene kadar kilitsiz kal"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "IG'nin \"X ekran görüntüsü aldı\" bildirimini hikayeler, DM'ler ve kaybolan medya genelinde gizle"; +"Tap Unlock" = "Kilidi aç’a dokun"; +"Tap Unlock or enter your passcode" = "Kilidi aç’a dokun veya şifreni gir"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "Bu, şifreyi siler, tüm kilit hedeflerini devre dışı bırakır ve tüm sohbetlerin kilidini açar. Galeri ve silinen mesaj verileri etkilenmez."; +"Thread %@" = "Sohbet %@"; +"Tweak settings" = "Tweak ayarları"; +"Unlock" = "Kilidi aç"; +"Unlock %@" = "%@ kilidini aç"; +"Unlock chat" = "Sohbet kilidini aç"; +"Unlock Instagram" = "Instagram kilidini aç"; +"Unlock this chat" = "Bu sohbetin kilidini aç"; +"Use %@" = "%@ kullan"; +"Username (looks up the DM thread) or raw thread ID" = "Kullanıcı adı (DM sohbetini bulur) veya ham sohbet kimliği"; +"Username or thread ID" = "Kullanıcı adı veya sohbet kimliği"; +"Wrong passcode" = "Yanlış şifre"; +"Wrong passcode • %ld attempts" = "Yanlış parola • %ld deneme"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "Koruma"; +"Password-protect" = "Parolayla koru"; +"On — tap to change" = "Açık — değiştirmek için dokunun"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "Yedek AES-256 ile şifrelenir. Geri yüklemek için bu parola gerekir — kaybedilirse kurtarmanın yolu yoktur."; +"Optional. Lock the backup behind a password so only you can restore it." = "İsteğe bağlı. Yedeği bir parolayla kilitleyin, böylece yalnızca siz geri yükleyebilirsiniz."; +"Backup password" = "Yedek parolası"; +"You'll need this to restore. It can't be recovered if lost." = "Geri yüklemek için bu gerekir. Kaybedilirse kurtarılamaz."; +"Password" = "Parola"; +"Confirm password" = "Parolayı onayla"; +"Set" = "Ayarla"; +"Use at least 4 characters." = "En az 4 karakter kullanın."; +"The passwords don't match." = "Parolalar eşleşmiyor."; +"Try again" = "Tekrar dene"; +"Encrypted backup" = "Şifreli yedek"; +"Enter the password used to protect this backup." = "Bu yedeği korumak için kullanılan parolayı girin."; +"Wrong password. Try again." = "Yanlış parola. Tekrar deneyin."; +"Decrypting backup…" = "Yedek şifresi çözülüyor…"; +"Encrypting backup…" = "Yedek şifreleniyor…"; +"%ld of %ld selected · %@" = "%ld/%ld seçili · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "Dahil edilecek her veri kümesini işaretleyin. İçeriğini görmek için bir satıra dokunun."; + +"%lu account(s)" = "%lu hesap"; +"%lu account(s) · %lu image(s) · %@" = "%lu hesap · %lu görsel · %@"; +"%lu file(s) · %@" = "%lu dosya · %@"; +"%lu preferences" = "%lu tercih"; +"(none)" = "(yok)"; +"Apply backup?" = "Yedek uygulansın mı?"; +"Applying backup…" = "Yedek uygulanıyor…"; +"archive error" = "arşiv hatası"; +"Archived snapshots" = "Arşivlenen anlık görüntüler"; +"Backup & Restore" = "Yedekle ve Geri Yükle"; +"Backup exported" = "Yedek dışa aktarıldı"; +"Backup failed" = "Yedekleme başarısız"; +"Backup has no importable sections." = "Yedekte içe aktarılabilir bölüm yok."; +"Chat & story filters" = "Sohbet ve hikaye filtreleri"; +"Chat backgrounds" = "Sohbet arka planları"; +"Corrupt entry path." = "Bozuk giriş yolu."; +"Could not decompress archive." = "Arşiv açılamadı."; +"Could not open archive." = "Arşiv açılamadı."; +"Could not open staging file." = "Hazırlama dosyası açılamadı."; +"Could not read the backup archive." = "Yedek arşivi okunamadı."; +"Could not write archive." = "Arşiv yazılamadı."; +"Could not write backup file." = "Yedek dosyası yazılamadı."; +"Could not write extracted file." = "Çıkarılan dosya yazılamadı."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "İşaretli öğeler için mevcut veriler değiştirilecek. Her şeyin etkili olması için yeniden başlatma gerekebilir."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "RyukGram verilerini dışa veya içe aktarın — ayarlar, hesap başına filtreler, gizli ve kilitli sohbetler, Profil Analizcisi, galeri, sohbet arka planları, silinen mesajlar ve okundu bilgisi kaydı. Her sayfada herhangi bir kombinasyonu seçin. Ayarlar düz bir JSON dosyası olarak kalır; medya içeren paketler sıkıştırılmış bir .ryukbak olarak dışa aktarılır."; +"Feature data" = "Özellik verileri"; +"Import mode" = "İçe aktarma modu"; +"Merge" = "Birleştir"; +"Replace" = "Değiştir"; +"Add the backup's data to what's already here" = "Yedeğin verilerini buradakilere ekler"; +"Clear existing data, then apply the backup" = "Mevcut verileri temizler, ardından yedeği uygular"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "Birleştir bu cihazdakileri korur ve yedeğin verilerini ekler — galeri dahil, yinelenenler birleştirilir."; +"Replace clears existing data for each ticked item, then applies the backup." = "Değiştir, işaretlenen her öğenin mevcut verilerini temizler ve ardından yedeği uygular."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "Yedek mevcut verilerinizle birleştirilecek — hiçbir şey silinmez, yinelenenler birleştirilir. Her şeyin etkili olması için yeniden başlatma gerekebilir."; +"Hidden & locked chats" = "Gizli ve kilitli sohbetler"; +"Import" = "İçe aktar"; +"Inspect the full manifest" = "Tam manifesti incele"; +"Load a .json or .ryukbak backup" = "Bir .json veya .ryukbak yedeği yükle"; +"Not a RyukGram backup archive." = "RyukGram yedek arşivi değil."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "Ayarları varsayılanlara döndürüp verileri temizle"; +"Swipe a row to clear it." = "Bir satırı temizlemek için kaydırın."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "“Ortak” olarak işaretlenen satırlar bir hesaba bağlı değildir ve her zaman kendi işaretini izler."; +"%lu file(s)" = "%lu dosya"; +"Clear all data" = "Tüm verileri temizle"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "Saklanan her galeri öğesi, kaydı ve ses kaydı bu cihazdan silinir. Ayarlarınız korunur — varsayılanlara döndürmek için Sıfırla'yı kullanın. Bu geri alınamaz."; +"Accounts" = "Hesaplar"; +"All accounts (%ld)" = "Tüm hesaplar (%ld)"; +"Pick at least one account." = "En az bir hesap seçin."; +"Signed in" = "Oturum açık"; +"Shared" = "Ortak"; +"Per-account data is limited to the accounts ticked here." = "Hesap başına veriler burada işaretlenen hesaplarla sınırlıdır."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "Hesap başına veriler yalnızca %@ için temizlenir. Ortak veriler kendi işaretini izler. Bu geri alınamaz."; +"Preparing backup…" = "Yedek hazırlanıyor…"; +"Reading backup…" = "Yedek okunuyor…"; +"RyukGram's own data on this device" = "RyukGram'ın bu cihazdaki kendi verileri"; +"Save settings or a full backup" = "Ayarları veya tam yedeği kaydet"; +"Tick what to apply. Rows not in this backup are hidden." = "Neyin uygulanacağını işaretleyin. Bu yedekte olmayan satırlar gizlidir."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "Neyin dahil edileceğini işaretleyin. İncelemek için bir satıra dokunun. Galeri, sohbet arka planları veya silinen mesajları eklemek sıkıştırılmış bir .ryukbak paketi oluşturur."; +"Truncated entry data." = "Kesik giriş verisi."; +"Truncated entry length." = "Kesik giriş uzunluğu."; +"Truncated entry path." = "Kesik giriş yolu."; +"Unsafe entry path." = "Güvensiz giriş yolu."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "Gelişmiş"; +"All tweak options are disabled" = "Tüm Tweak seçenekleri devre dışı"; +"Auto-clear cache" = "Önbelleği otomatik temizle"; +"Automatically opens settings when the app launches" = "Uygulama açıldığında ayarları otomatik açar"; +"Cache" = "Önbellek"; +"Cache cleared" = "Önbellek temizlendi"; +"Calculating cache size…" = "Önbellek boyutu hesaplanıyor…"; +"Clear" = "Temizle"; +"Clear cache" = "Önbelleği temizle"; +"Clear cache (%@)" = "Önbelleği temizle (%@)"; +"Clearing cache…" = "Önbellek temizleniyor…"; +"Clearing still scans on demand." = "Temizleme yine de gerektiğinde tarama yapar."; +"Daily" = "Günlük"; +"Disable all tweak options" = "Tüm Tweak seçeneklerini devre dışı bırak"; +"Disable safe mode" = "Güvenli modu kapat"; +"Enable tweak settings quick-access" = "Tweak ayarlarına hızlı erişimi etkinleştir"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "Bu açıkken Instagram normal şekilde çalışır. Ayarlarını geri yüklemek için kapat."; +"Tap to re-enable everything" = "Her şeyi yeniden etkinleştirmek için dokun"; +"Turn every feature off — your settings are kept" = "Tüm özellikleri kapat — ayarların korunur"; +"Fix duplicate notifications" = "Yinelenen bildirimleri düzelt"; +"Free %@ of Instagram cache." = "Instagram önbelleğinden %@ boşalt."; +"Freed %@" = "%@ boşaltıldı"; +"Hold on the home tab to open RyukGram settings" = "RyukGram ayarlarını açmak için ana sayfa sekmesine basılı tutun"; +"Monthly" = "Aylık"; +"Nothing to clear" = "Temizlenecek bir şey yok"; +"Off skips the size scan when Advanced opens." = "Kapalıyken Gelişmiş açıldığında boyut taraması atlanır."; +"Pause playback when opening settings" = "Ayarlar açılırken oynatmayı duraklat"; +"Always show what's new" = "Yenilikleri her zaman göster"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "Mavi noktayı görüntüledikten sonra kaldırmak yerine her yeni özellikte tut"; +"Preserve messages database" = "Mesaj veritabanını koru"; +"Pauses any playing video/audio when settings opens" = "Ayarlar açıldığında oynayan video/sesi duraklatır"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "Çökmelerden sonra Instagram'ın ayarları sıfırlamasını engeller (risk size aittir)"; +"Prevents two banners for the same message when IG is in the foreground" = "IG ön plandayken aynı mesaj için iki bildirimin gösterilmesini önler"; +"Remove Instagram's cached images, videos, and temporary files." = "Instagram'ın önbelleğe alınmış görsellerini, videolarını ve geçici dosyalarını kaldırır."; +"Reset onboarding state" = "İlk kullanım durumunu sıfırla"; +"Run a silent cache clear on launch when the interval has elapsed." = "Aralık dolduğunda açılışta sessiz önbellek temizliği çalıştırır."; +"Show cache size" = "Önbellek boyutunu göster"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "Temizlik sırasında mesaj veritabanını atla — DM'leri, taslakları ve kayıtlı mesajları korur."; +"Show tweak settings on app launch" = "Uygulama açılışında tweak ayarlarını göster"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "Bildirim uzantısı da bildirimi iletirken IG'nin uygulama içinde sıraya aldığı ikinci bildirimi bastırır."; +"Weekly" = "Haftalık"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "Eylemler"; +"Advanced experimental features" = "Gelişmiş deneysel özellikler"; +"All experimental toggles will be turned off. Instagram will restart." = "Tüm deneysel anahtarlar kapatılacak. Instagram yeniden başlatılacak."; +"Direct Notes — Audio reply" = "Direct Notes — Sesli yanıt"; +"Direct Notes — Avatar reply" = "Direct Notes — Avatar yanıtı"; +"Direct Notes — Friend Map" = "Direct Notes — Arkadaş Haritası"; +"Direct Notes — GIFs & stickers reply" = "Direct Notes — GIF ve çıkartma yanıtı"; +"Direct Notes — Photo reply" = "Direct Notes — Fotoğraf yanıtı"; +"Disabled after repeated crashes." = "Tekrarlanan çökmelerden sonra devre dışı bırakıldı."; +"Enables GIF/sticker replies" = "GIF/çıkartma yanıtlarını etkinleştirir"; +"Enables photo replies" = "Fotoğraf yanıtlarını etkinleştirir"; +"Enables the audio-note reply type" = "Sesli not yanıt türünü etkinleştirir"; +"Enables the avatar reply type" = "Avatar yanıt türünü etkinleştirir"; +"Experimental flags reset" = "Deneysel bayraklar sıfırlandı"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "Açmak istediklerinizi etkinleştirin, ardından yeniden başlatmak için Uygula'ya dokunun. Bazı bayraklar her hesapta veya IG sürümünde çalışmayabilir. IG açılışta 3 kez çökerse bayraklar otomatik sıfırlanır."; +"Forces Prism-gated experiments on" = "Prism ile kısıtlanan deneyleri açmaya zorlar"; +"Forces the Homecoming home surface / nav on" = "Homecoming ana yüzeyini/gezinmesini açmaya zorlar"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "QuickSnap / Instants yüzeyini akışta, gelen kutusunda, hikayelerde ve notlar tepsisinde açmaya zorlar"; +"Got it" = "Anladım"; +"Heads up" = "Dikkat"; +"Hidden Instagram experiments" = "Gizli Instagram deneyleri"; +"Hidden Instagram experiments (in Advanced)" = "Gizli Instagram deneyleri (Gelişmiş içinde)"; +"Homecoming" = "Eve dönüş"; +"Notes & QuickSnap" = "Notlar ve QuickSnap"; +"Prism design system" = "Prism tasarım sistemi"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Direct Notes içinde arkadaş haritası girişini gösterir"; +"Surfaces" = "Yüzeyler"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "Bu anahtarlar gizli Instagram deneylerini açar. Bazı özellikler her hesapta veya IG sürümünde çalışmayabilir. IG açılışta çökmeye devam ederse bayraklar 3 başarısız başlatmadan sonra otomatik sıfırlanır."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Gizli Instagram deneylerini açıp kapatın. Bazıları her hesapta veya IG sürümünde çalışmayabilir."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "Buton hücresi"; +"Change the value on the right" = "Sağdaki değeri değiştir"; +"Could not delete: %@" = "Silinemedi: %@"; +"Debug" = "Hata ayıklama"; +"Delete an imported override and fall back to the shipped strings" = "İçe aktarılan geçersiz kılmayı sil ve paketle gelen metinlere geri dön"; +"Deleted %@ override. Restart to apply." = "%@ geçersiz kılma silindi. Uygulamak için yeniden başlatın."; +"Enable FLEX gesture" = "FLEX hareketini etkinleştir"; +"Enable file logging" = "Dosyaya günlük kaydını etkinleştir"; +"Export strings" = "Metinleri dışa aktar"; +"Hold 5 fingers on the screen to open FLEX" = "FLEX'i açmak için ekranda 5 parmağınızı basılı tutun"; +"I have %@%@" = "Bende %@%@ var"; +"Import a .strings file for a language" = "Bir dil için .strings dosyası içe aktar"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "Bir çeviriyi güncellemek için .strings dosyası içe aktarın. Bir dil seçin, dosyayı seçin, yeniden başlatın."; +"Link Cell" = "Bağlantı hücresi"; +"Localization" = "Yerelleştirme"; +"Log file is empty" = "Günlük dosyası boş"; +"Logging" = "Günlük kaydı"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "RyukGram'ın kendi etkinliğini uygulama ve uzantılarında paylaşılabilir tek bir dosyaya kaydeder. Varsayılan olarak kapalı — açın, sorunu yeniden oluşturun, sonra paylaşın."; +"Menu Cell" = "Menü hücresi"; +"Navigation Cell" = "Gezinme hücresi"; +"No imported localization files to reset." = "Sıfırlanacak içe aktarılmış yerelleştirme dosyası yok."; +"No overrides" = "Geçersiz kılma yok"; +"Open FLEX on app focus" = "Uygulama odaklandığında FLEX'i aç"; +"Open FLEX on app launch" = "Uygulama açılışında FLEX'i aç"; +"Opens FLEX when the app is focused" = "Uygulama odaklandığında FLEX'i açar"; +"Opens FLEX when the app launches" = "Uygulama açıldığında FLEX'i açar"; +"Pick a language and share its .strings file" = ".strings dosyasını paylaşmak için bir dil seçin"; +"Pick a language to delete the imported file" = "İçe aktarılan dosyayı silmek için bir dil seçin"; +"Pick a language to export" = "Dışa aktarmak için bir dil seçin"; +"Reset localization" = "Yerelleştirmeyi sıfırla"; +"Share log file" = "Günlük dosyasını paylaş"; +"Static Cell" = "Statik hücre"; +"Stepper cell" = "Adımlayıcı hücre"; +"Switch Cell" = "Anahtar hücresi"; +"Switch Cell (Restart)" = "Anahtar hücresi (Yeniden başlatma)"; +"Tap the switch" = "Anahtara dokun"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "Bu özellikler gizli Instagram bayraklarına dayanır ve tüm hesaplarda veya sürümlerde çalışmayabilir."; +"Update localization file" = "Yerelleştirme dosyasını güncelle"; +"Using icon" = "Simge kullanılıyor"; +"Using image" = "Görsel kullanılıyor"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "%@ ayarları"; +"%lu items" = "%lu öğe"; +"Cancelled" = "İptal edildi"; +"Carousel" = "Galeri"; +"Carousel · %lu items" = "Galeri · %lu öğe"; +"Copied %lu URLs" = "%lu URL kopyalandı"; +"Copied caption" = "Açıklama kopyalandı"; +"Copied download URL" = "İndirme URL'si kopyalandı"; +"Copied quality info" = "Kalite bilgisi kopyalandı"; +"Copied video URL" = "Video URL'si kopyalandı"; +"Copy all URLs" = "Tüm URL'leri kopyala"; +"Copy caption" = "Açıklamayı kopyala"; +"Copy download URL" = "İndirme URL'sini kopyala"; +"Could not extract any URLs" = "Hiç URL çıkarılamadı"; +"Could not extract audio URL" = "Ses URL'si çıkarılamadı"; +"Could not extract media URL" = "Medya URL'si çıkarılamadı"; +"Could not extract photo URL" = "Fotoğraf URL'si çıkarılamadı"; +"Could not extract video URL" = "Video URL'si çıkarılamadı"; +"Done" = "Tamamlandı"; +"Download all stories and share?" = "Tüm hikayeler indirilip paylaşılsın mı?"; +"Download all to Photos" = "Tümünü Fotoğraflar'a indir"; +"Download and share all" = "Tümünü indir ve paylaş"; +"Download failed" = "İndirme başarısız"; +"Downloaded %lu items" = "%lu öğe indirildi"; +"Downloading audio…" = "Ses indiriliyor…"; +"Failed to save" = "Kaydedilemedi"; +"File" = "Dosya"; +"HD" = "HD"; +"HD download complete" = "HD indirme tamamlandı"; +"HD video" = "HD video"; +"Mute audio" = "Sesi kapat"; +"No caption on this post" = "Bu gönderide açıklama yok"; +"No carousel children" = "Carousel öğesi yok"; +"No cover image" = "Kapak görseli yok"; +"No media" = "Medya yok"; +"No media to expand" = "Genişletilecek medya yok"; +"No media to show" = "Gösterilecek medya yok"; +"No media URL" = "Medya URL'si yok"; +"No URLs" = "URL yok"; +"No URLs found" = "URL bulunamadı"; +"No video URL" = "Video URL'si yok"; +"Not a carousel" = "Carousel değil"; +"Nothing to share" = "Paylaşılacak bir şey yok"; +"Opening creator…" = "Oluşturucu açılıyor..."; +"Photo library access denied" = "Fotoğraf arşivi erişimi reddedildi"; +"Photos access denied" = "Fotoğraflar erişimi reddedildi"; +"Preparing repost…" = "Yeniden paylaşım hazırlanıyor..."; +"Raw image" = "Ham görsel"; +"Repost" = "Yeniden paylaş"; +"Repost unavailable" = "Yeniden paylaşım kullanılamıyor"; +"Save failed" = "Kaydetme başarısız"; +"Saved %lu items" = "%lu öğe kaydedildi"; +"Saved to Photos" = "Fotoğraflar'a kaydedildi"; +"Saved to RyukGram" = "RyukGram'a kaydedildi"; +"Saving to Photos" = "Fotoğraflar'a kaydediliyor"; +"Saving…" = "Kaydediliyor..."; +"Unmute audio" = "Sesi aç"; +"Video · %@" = "Video · %@"; +"View cover" = "Kapağı görüntüle"; +"View mentions" = "Bahsetmeleri görüntüle"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "Serbest"; +"Chat font saved" = "Sohbet yazı tipi kaydedildi"; +"Reopen this chat to see the new font" = "Yeni yazı tipini görmek için bu sohbeti yeniden açın"; +"Remove background" = "Arka planı kaldır"; +"No subject found" = "Konu bulunamadı"; +"No stickers yet" = "Henüz sticker yok"; +"Send drawing" = "Çizim gönder"; +"Send my drawing" = "Çizimimi gönder"; +"Paste image / sticker" = "Resim / sticker yapıştır"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "Klavyendeki bir sticker’a dokun\nve çizimine ekle"; + +" %lu votes · avg %.0f%% " = " %lu oy · ort %.0f%% "; +"%@ can't be converted" = "%@ dönüştürülemiyor"; +"%@ unsent a message" = "%@ bir mesajı geri aldı"; +"%@ unsent a message from %@" = "%1$@, %2$@ kişisinden gelen bir mesajı geri aldı"; +"A message was unsent" = "Bir mesaj geri alındı"; +"Add" = "Ekle"; +"Add to block list" = "Engel listesine ekle"; +"Added to block list" = "Engel listesine eklendi"; +"Added to exclude list" = "Hariç tutma listesine eklendi"; +"Audio not loaded yet. Play the message first and try again." = "Ses henüz yüklenmedi. Önce mesajı oynatıp tekrar deneyin."; +"Audio sent" = "Ses gönderildi"; +"Audio URL not available" = "Ses URL'si kullanılamıyor"; +"Audio/Video from Files" = "Dosyalardan Ses/Video"; +"Blocked" = "Engellendi"; +"Cancel" = "İptal"; +"Clear preserved messages?" = "Korunan mesajlar temizlensin mi?"; +"Converting…" = "Dönüştürülüyor..."; +"Copy link" = "Bağlantıyı kopyala"; +"Copy text" = "Metni kopyala"; +"Could not copy selected video" = "Seçili video kopyalanamadı"; +"Could not find media" = "Medya bulunamadı"; +"Could not find story media" = "Hikaye medyası bulunamadı"; +"Could not get audio data. Try again after refreshing the chat." = "Ses verisi alınamadı. Sohbeti yeniledikten sonra tekrar deneyin."; +"Disable read receipts" = "Okundu bilgilerini kapat"; +"Disappearing media" = "Kaybolan medya"; +"Download audio" = "Sesi indir"; +"Enable read receipts" = "Okundu bilgilerini etkinleştir"; +"Error: %@" = "Hata: %@"; +"Exclude chat" = "Sohbeti hariç tut"; +"Exclude from seen" = "Görüldüden hariç tut"; +"Exclude story seen" = "Hikaye görüldüden hariç tut"; +"Excluded" = "Hariç tutuldu"; +"Extracting audio…" = "Ses çıkarılıyor..."; +"FFmpeg conversion failed" = "FFmpeg dönüştürme başarısız oldu"; +"File sending not supported" = "Dosya gönderme desteklenmiyor"; +"Follow" = "Takip et"; +"Following" = "Takip ediliyor"; +"Format not supported without FFmpegKit" = "FFmpegKit olmadan biçim desteklenmiyor"; +"Inserts a button on disappearing media overlays" = "Kaybolan medya katmanlarına bir buton ekler"; +"Inserts a speaker button to mute/unmute disappearing media" = "Kaybolan medyanın sesini kapatmak/açmak için hoparlör butonu ekler"; +"Inserts an eye button to mark the current disappearing media as viewed" = "Mevcut kaybolan medyayı görüntülendi olarak işaretlemek için göz butonu ekler"; +"Link copied" = "Bağlantı kopyalandı"; +"Mark as viewed" = "Görüntülendi olarak işaretle"; +"Marking as viewed advances to the next stacked media instead of closing" = "Görüldü olarak işaretlemek kapatmak yerine sıradaki yığılı medyaya geçer"; +"Mark messages as seen" = "Mesajları görüldü işaretle"; +"Mark seen" = "Görüldü işaretle"; +"Marked as viewed" = "Görüntülendi olarak işaretlendi"; +"Marked messages as seen" = "Mesajlar görüldü işaretlendi"; +"Mentions" = "Bahsetmeler"; +"Message from %@ was unsent" = "%@ kişisinden gelen mesaj geri alındı"; +"Message sender not found" = "Mesaj gönderen bulunamadı"; +"Messages settings" = "Mesaj ayarları"; +"Mute story audio" = "Hikaye sesini kapat"; +"no audio track could be read" = "ses kanalı okunamadı"; +"No audio URL found. Try again after refreshing the chat." = "Ses URL'si bulunamadı. Sohbeti yeniledikten sonra tekrar deneyin."; +"No mentions in this story" = "Bu hikayede bahsetme yok"; +"No thread key" = "Konu anahtarı yok"; +"No video selected" = "Video seçilmedi"; +"No voice send method found" = "Ses gönderme yöntemi bulunamadı"; +"Note has no downloadable content" = "Notta indirilebilir içerik yok"; +"Note text copied" = "Not metni kopyalandı"; +"Open GitHub" = "GitHub'ı aç"; +"Pick audio or video" = "Ses veya video seç"; +"Read receipts disabled" = "Okundu bilgileri kapatıldı"; +"Read receipts enabled" = "Okundu bilgileri etkinleştirildi"; +"Read receipts will be blocked for this chat." = "Bu sohbet için okundu bilgileri engellenecek."; +"Read receipts will no longer be blocked for this chat." = "Bu sohbet için okundu bilgileri artık engellenmeyecek."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "DM sekmesini yenilemek %lu korunan mesajı silecek. Bu geri alınamaz."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "DM sekmesini yenilemek %lu korunan mesajı silecek. Bu geri alınamaz."; +"Remove" = "Kaldır"; +"Remove from block list" = "Engel listesinden kaldır"; +"Remove from exclude list" = "Hariç tutma listesinden kaldır"; +"Removed" = "Kaldırıldı"; +"Removed from list" = "Listeden kaldırıldı"; +"Save GIF" = "GIF'i kaydet"; +"Selection too short (min 0.5s)" = "Seçim çok kısa (min. 0,5 sn)"; +"Send anyway" = "Yine de gönder"; +"Send Audio" = "Ses Gönder"; +"Send failed: %@" = "Gönderme başarısız: %@"; +"Send File" = "Dosya Gönder"; +"Send service not found" = "Gönderme servisi bulunamadı"; +"Show audio toggle" = "Ses anahtarını göster"; +"Show mark-as-viewed button" = "Görüntülendi işaretleme butonunu göster"; +"Story read receipts disabled" = "Hikaye okundu bilgileri kapatıldı"; +"Story read receipts enabled" = "Hikaye okundu bilgileri etkinleştirildi"; +"This chat will resume normal read-receipt behavior." = "Bu sohbet normal okundu bilgisi davranışına dönecek."; +"This file" = "Bu dosya"; +"Total: %@" = "Toplam: %@"; +"Un-exclude chat" = "Sohbeti hariç tutmadan çıkar"; +"Un-exclude story seen" = "Hikaye görüldü hariç tutmadan çıkar"; +"Un-excluded" = "Hariç tutmadan çıkarıldı"; +"Unblocked" = "Engel kaldırıldı"; +"Unlimited replay enabled" = "Sınırsız tekrar oynatma etkin"; +"Unmute story audio" = "Hikaye sesini aç"; +"Unsent" = "Geri alındı"; +"Upload Audio" = "Ses Yükle"; +"VC not found" = "VC bulunamadı"; +"Video from Library" = "Arşivden video"; +"Visual messages will expire" = "Görsel mesajların süresi dolacak"; +"Visual messages: expiring" = "Görsel mesajlar: süresi doluyor"; +"Visual messages: unlimited replay" = "Görsel mesajlar: sınırsız tekrar"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "Arka Plan Ekle"; +"Add Chat Background" = "Sohbet Arka Planı Ekle"; +"Adds your own image backgrounds to Instagram chats" = "Instagram sohbetlerine kendi görsel arka planlarınızı ekler"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "Etkinleştirdikten sonra herhangi bir sohbeti açın, tema düğmesine dokunun, ardından sağ üstteki fotoğraf simgesine dokunun."; +"Blur" = "Bulanıklık"; +"Browse chats" = "Sohbetlere göz at"; +"Browse chats (%ld)" = "Sohbetlere göz at (%ld)"; +"Change Background" = "Arka Planı Değiştir"; +"Change default" = "Varsayılanı değiştir"; +"Chat Backgrounds" = "Sohbet Arka Planları"; +"Choose an image used when no chat override exists" = "Sohbet için özel ayar yokken kullanılacak bir görsel seçin"; +"Clear default" = "Varsayılanı temizle"; +"Couldn't import image" = "Görsel içe aktarılamadı"; +"Adjust settings" = "Ayarlar"; +"Choose Media" = "Medya seç"; +"Converting GIF" = "GIF dönüştürülüyor"; +"Couldn't import video" = "Video içe aktarılamadı"; +"Crop & resize" = "Kırp ve yeniden boyutlandır"; +"Crop & trim" = "Kırp ve buda"; +"Custom Chat Background" = "Özel Sohbet Arka Planı"; +"Default background" = "Varsayılan arka plan"; +"Dim in dark mode" = "Karanlık modda karart"; +"Enable custom backgrounds" = "Özel arka planları etkinleştir"; +"Enter a username, chat name, or thread ID." = "Bir kullanıcı adı, sohbet adı veya thread ID girin."; +"Group" = "Grup"; +"Image Settings" = "Görsel Ayarları"; +"Auto bubble color" = "Otomatik baloncuk rengi"; +"Bubble color" = "Baloncuk rengi"; +"Me" = "Ben"; +"Both" = "İkisi de"; +"Gradient" = "Gradyan"; +"Direction" = "Yön"; +"Vertical" = "Dikey"; +"Horizontal" = "Yatay"; +"Diagonal" = "Çapraz"; +"Text color" = "Metin rengi"; +"Automatic (contrast)" = "Otomatik (kontrast)"; +"Choose color…" = "Renk seç…"; +"Tap to apply · hold to edit" = "Uygulamak için dokun · düzenlemek için basılı tut"; +"Library" = "Kitaplık"; +"Library, default, and per-chat overrides will be deleted." = "Kitaplık, varsayılan ve sohbet başına özel ayarlar silinecek."; +"No Custom" = "Özel Yok"; +"Opacity" = "Opaklık"; +"Photo Library" = "Fotoğraf Kitaplığı"; +"Pick default" = "Varsayılanı seç"; +"Pinch + drag to position" = "Konumlandırmak için sıkıştır + sürükle"; +"Quit and reopen Instagram for the change to take effect." = "Değişikliğin etkili olması için Instagram'dan çıkıp yeniden açın."; +"Recently set" = "Yakın zamanda ayarlandı"; +"Remove the global fallback background" = "Genel yedek arka planı kaldır"; +"Replace the default background image" = "Varsayılan arka plan görselini değiştir"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "Sıfırlama opaklığı 1.0, bulanıklığı 0, kararmayı 0 yapar."; +"RyukGram Gallery" = "RyukGram Galerisi"; +"Search username, name, or thread ID" = "Kullanıcı adı, ad veya thread ID ara"; +"Set as default" = "Varsayılan olarak ayarla"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "Eklemek için artıya dokunun. Düzenlemek, varsayılan yapmak veya silmek için bir arka plana dokunun."; +"This Chat Background" = "Bu Sohbet Arka Planı"; +"Thread ID" = "Sohbet kimliği"; +"Used only when a chat does not have its own custom background." = "Yalnızca bir sohbetin kendi özel arka planı olmadığında kullanılır."; +"View and manage chats with custom backgrounds" = "Özel arka planlı sohbetleri görüntüleyin ve yönetin"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "Konum ekle"; +"Add preset" = "Hazır ayar ekle"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "Yukarıdaki her şeyi etkiler. Kapalıyken RyukGram'ın teması ve yüzey geçersiz kılmaları yalnızca iOS karanlık moddayken uygulanır — aydınlık mod olduğu gibi kalır."; +"Apply & restart" = "Uygula ve yeniden başlat"; +"Background" = "Arka plan"; +"Behavior" = "Davranış"; +"Change location" = "Konumu değiştir"; +"Clipboard is not an Instagram URL" = "Pano bir Instagram URL'si değil"; +"Comments hidden" = "Yorumlar gizlendi"; +"Comments shown" = "Yorumlar gösterildi"; +"Copied text to clipboard" = "Metin panoya kopyalandı"; +"Copy" = "Kopyala"; +"Copy bio" = "Biyografiyi kopyala"; +"Copy name" = "Adı kopyala"; +"Could not find cover image" = "Kapak görseli bulunamadı"; +"Current: %@" = "Geçerli: %@"; +"Dark" = "Karanlık"; +"Disable" = "Kapat"; +"Download GIF" = "GIF indir"; +"Dropped pin" = "Bırakılan iğne"; +"Emoji" = "Emoji"; +"Enable" = "Etkinleştir"; +"Enable Location Services for Instagram in Settings to use your current location." = "Geçerli konumunuzu kullanmak için Ayarlar'da Instagram için Konum Servisleri'ni etkinleştirin."; +"Enter emoji" = "Emoji girin"; +"Fake location" = "Sahte konum"; +"Force theme" = "Temayı zorla uygula"; +"Keyboard theme" = "Klavye teması"; +"Light" = "Açık"; +"Location access denied" = "Konum erişimi reddedildi"; +"Location Services off" = "Konum Servisleri kapalı"; +"Name" = "Ad"; +"Nothing to copy" = "Kopyalanacak bir şey yok"; +"Off, Light, Dark, or OLED" = "Kapalı, Açık, Koyu veya OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "OLED sohbet teması"; +"Open Settings" = "Ayarları Aç"; +"Optional per-surface overrides. Each one is independent of the theme above." = "İsteğe bağlı yüzey başına geçersiz kılmalar. Her biri yukarıdaki temadan bağımsızdır."; +"Override iOS appearance regardless of system mode" = "Sistem modundan bağımsız olarak iOS görünümünü geçersiz kıl"; +"Override the keyboard appearance when typing" = "Yazarken klavye görünümünü geçersiz kıl"; +"Pick location" = "Konum seç"; +"Pure black DM thread + incoming bubbles" = "Saf siyah DM dizisi + gelen mesaj baloncukları"; +"Save" = "Kaydet"; +"Save preset" = "Hazır ayarı kaydet"; +"Saved locations" = "Kayıtlı konumlar"; +"Select color" = "Renk seç"; +"Set location" = "Konumu ayarla"; +"The theme RyukGram applies to Instagram." = "RyukGram'ın Instagram'a uyguladığı tema."; +"Theme" = "Tema"; +"Turn Location Services on in Settings → Privacy to use your current location." = "Geçerli konumunuzu kullanmak için Ayarlar → Gizlilik içinde Konum Servisleri'ni açın."; +"Type an emoji to use as the note bubble icon." = "Not balonu simgesi olarak kullanılacak emojiyi yazın."; +"Profile picture" = "Profil fotoğrafı"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu hesap? Hız sınırlarından kaçınmak için ilk %ld işlenecek."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu hesap? Bu, her biri arasında kısa bir duraklamayla sırayla çalışır."; +"%@ followers · %@ following" = "%@ takipçi · %@ takip"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%d g önce"; +"%dh ago" = "%d sa önce"; +"%dm ago" = "%d dk önce"; +"%lu accounts followed" = "%lu hesap takip edildi"; +"%lu accounts unfollowed" = "%lu hesabın takibi bırakıldı"; +"%lu followers · %lu following" = "%lu takipçi · %lu takip edilen"; +"%lu followers removed" = "%lu takipçi kaldırıldı"; +"%lu of %lu" = "%lu / %lu"; +"%lu of %lu checks on" = "%lu denetimden %lu tanesi açık"; +"%lu saved · comparing against %@" = "%lu kaydedildi · %@ ile karşılaştırılıyor"; +"(empty)" = "(boş)"; +"(no analyzer data)" = "(analizör verisi yok)"; +"a saved snapshot" = "kaydedilmiş bir anlık görüntü"; +"About Profile Analyzer" = "Profil Analizörü hakkında"; +"All preferences (%lu)" = "Tüm tercihler (%lu)"; +"Analysis complete" = "Analiz tamamlandı"; +"Analysis failed" = "Analiz başarısız"; +"Another analysis is already running" = "Başka bir analiz zaten çalışıyor"; +"Available after your next scan" = "Bir sonraki taramanızdan sonra kullanılabilir"; +"Batch follow" = "Toplu takip"; +"Batch follow finished" = "Toplu takip tamamlandı"; +"Batch remove followers" = "Toplu takipçi kaldırma"; +"Batch remove followers finished" = "Toplu takipçi kaldırma tamamlandı"; +"Batch unfollow" = "Toplu takibi bırak"; +"Batch unfollow finished" = "Toplu takibi bırakma tamamlandı"; +"Categories" = "Kategoriler"; +"Checks" = "Denetimler"; +"Clear visited profiles" = "Ziyaret edilen profilleri temizle"; +"Compare next scan against" = "Sonraki taramayı şununla karşılaştır"; +"Comparing against %@" = "%@ ile karşılaştırılıyor"; +"Continue" = "Devam"; +"Couldn't fetch profile information" = "Profil bilgileri alınamadı"; +"Delete %lu snapshots? This can't be undone." = "%lu anlık görüntü silinsin mi? Bu geri alınamaz."; +"Delete (%lu)" = "Sil (%lu)"; +"Delete snapshots" = "Anlık görüntüleri sil"; +"Delete this snapshot? This can't be undone." = "Bu anlık görüntü silinsin mi? Bu geri alınamaz."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "Her tarama, daha sonra karşılaştırabilmeniz için takipçilerinizin ve takip ettiklerinizin tam bir kopyasını kaydeder. Her şey bu cihazda kalır."; +"Export" = "Dışa aktar"; +"Fetching followers (%lu/%ld)…" = "Takipçiler alınıyor (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "Takip edilenler alınıyor (%lu/%ld)…"; +"Fetching profile info…" = "Profil bilgisi alınıyor…"; +"File is not a valid RyukGram backup." = "Dosya geçerli bir RyukGram dışa aktarımı değil."; +"Filter" = "Filtre"; +"Filter · %lu" = "Filtre · %lu"; +"First scan: %@" = "İlk tarama: %@"; +"First scan: we collect your followers and following lists and save them locally." = "İlk tarama: takipçi ve takip edilen listelerinizi toplar ve yerelde kaydederiz."; +"Follow back" = "Geri takip et"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "Takipçi sayısı %ld değerini aşıyor — hız sınırlarından kaçınmak için analiz devre dışı."; +"Followers" = "Takipçiler"; +"Following… %lu / %lu" = "Takip ediliyor… %lu / %lu"; +"Gained since last scan" = "Son taramadan beri kazanılan"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "Dikkat: bu özellik Instagram'ın özel API'sini kullanır. Arka arkaya veya yoğun takip/takip bırakma etkinliğinden hemen sonra çalıştırmak kısa süreli hız sınırını tetikleyebilir. Seyrek ve kendi riskinizle kullanın."; +"Import complete" = "İçe aktarma tamamlandı"; +"Include" = "Dahil et"; +"Keep newest" = "En yenileri sakla"; +"Keep newest snapshots" = "En yeni anlık görüntüleri sakla"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "Büyük hesaplar engellenir: Instagram'ın tüm uygulamayı hız sınırına sokmasını önlemek için 13.000 takipçinin üzerinde analiz devre dışıdır."; +"Last scan: %@" = "Son tarama: %@"; +"Logs every profile you open. Stays on-device." = "Açtığınız her profili günlüğe kaydeder. Yalnızca cihazda kalır."; +"Lost followers" = "Kaybedilen takipçiler"; +"Most visited" = "En çok ziyaret edilen"; +"Mutual followers" = "Karşılıklı takipçiler"; +"Name: %@ → %@" = "Ad: %@ → %@"; +"New followers" = "Yeni takipçiler"; +"NEW" = "YENİ"; +"New first" = "Önce yeniler"; +"New only" = "Yalnızca yeniler"; +"No active Instagram session found" = "Aktif Instagram oturumu bulunamadı"; +"No results" = "Sonuç yok"; +"No scan yet" = "Henüz tarama yok"; +"Not following you back" = "Sizi geri takip etmiyor"; +"Not verified only" = "Yalnızca doğrulanmamış"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "Hiçbir şey yüklenmez — her şey bu cihazda kalır ve çöp kutusu simgesinden silinebilir."; +"Nothing was applied." = "Hiçbir şey uygulanmadı."; +"OK" = "Tamam"; +"Older snapshots beyond the limit are removed automatically" = "Sınırın ötesindeki eski anlık görüntüler otomatik olarak kaldırılır"; +"Older snapshots beyond this limit are deleted on the next scan." = "Bu sınırın ötesindeki eski anlık görüntüler bir sonraki taramada silinir."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "Neyin kaldırılacağını seçin. Anlık görüntüler, tarama farklarını ve kaydedilen her anlık görüntüyü temizler; ziyaret edilen profiller, ziyaret geçmişini siler."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "Her taramanın hangi kategorileri hesaplayacağını seçin. Devre dışı bir denetim soluk görünür ve atlanır — hesaplanmaz ve gösterilmez."; +"Posts" = "Gönderiler"; +"Preferences" = "Tercihler"; +"Previous scan" = "Önceki tarama"; +"Private account" = "Gizli hesap"; +"Private only" = "Yalnızca gizli"; +"Profile Analyzer" = "Profil Analizörü"; +"Profile Analyzer data" = "Profil Analizörü verileri"; +"Profile picture changed" = "Profil fotoğrafı değişti"; +"Profile updates" = "Profil güncellemeleri"; +"Profiles you've opened recently" = "Son zamanlarda açtığınız profiller"; +"Raw" = "Ham"; +"Raw JSON" = "Ham JSON"; +"Record snapshots" = "Anlık görüntü kaydet"; +"Remove @%@ as a follower?" = "@%@ takipçilerden kaldırılsın mı?"; +"Remove follower" = "Takipçiyi kaldır"; +"Removing… %lu / %lu" = "Kaldırılıyor… %lu / %lu"; +"Recording" = "Kaydediliyor"; +"Request failed" = "İstek başarısız"; +"Reset analyzer data" = "Analizör verilerini sıfırla"; +"Reset complete" = "Sıfırlama tamamlandı"; +"Reset everything" = "Her şeyi sıfırla"; +"Reset selected data?" = "Seçili veriler sıfırlansın mı?"; +"Reset snapshots" = "Anlık görüntüleri sıfırla"; +"Rolling — always your last run" = "Sürekli güncel — her zaman son çalıştırmanız"; +"Run analysis" = "Analizi çalıştır"; +"Run your first analysis" = "İlk analizinizi çalıştırın"; +"Save a dated entry on every scan" = "Her taramada tarihli bir giriş kaydet"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "İkinci taramadan itibaren her tarama bir öncekiyle karşılaştırılır; böylece kazanılan/kaybedilen takipçileri, kendi takip/takip bırakma hareketlerinizi ve profil güncellemelerini gösterebiliriz."; +"Settings" = "Ayarlar"; +"Since last scan" = "Son taramadan beri"; +"Snapshot" = "Anlık görüntü"; +"Snapshot saved" = "Anlık görüntü kaydedildi"; +"Snapshots" = "Anlık görüntüler"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "Anlık görüntüler her taramayı arşivlemenize ve yeni taramaların hangisiyle karşılaştırılacağını seçmenize olanak tanır. Ziyaretleri izle, açtığınız her profili kaydeder, böylece burada inceleyebilirsiniz."; +"Sort" = "Sırala"; +"Starting…" = "Başlatılıyor…"; +"They follow you, you don't follow back" = "Onlar sizi takip ediyor, siz geri takip etmiyorsunuz"; +"This can't be undone." = "Bu geri alınamaz."; +"Ticked data will be cleared. Tap a row to see what's stored." = "Seçili veriler temizlenecek. Nelerin saklandığını görmek için herhangi bir satıra dokunun."; +"Today" = "Bugün"; +"Too many followers" = "Çok fazla takipçi"; +"Too many followers to analyze" = "Analiz edilemeyecek kadar fazla takipçi"; +"Track visited profiles" = "Ziyaret edilen profilleri izle"; +"Tracking" = "İzleme"; +"Tracking off — enable below to log visits" = "İzleme kapalı — ziyaretleri kaydetmek için aşağıdan etkinleştirin"; +"Unfollow" = "Takibi bırak"; +"Unfollow %lu" = "%lu kişinin takibini bırak"; +"Unfollow @%@?" = "@%@ takibi bırakılsın mı?"; +"Unfollowed you since last scan" = "Son taramadan beri sizi takipten çıkardı"; +"Unfollowing… %lu / %lu" = "Takip bırakılıyor… %lu / %lu"; +"Unlimited" = "Sınırsız"; +"Username A → Z" = "Kullanıcı adı A → Z"; +"Username Z → A" = "Kullanıcı adı Z → A"; +"Username, name or picture changes" = "Kullanıcı adı, ad veya fotoğraf değişiklikleri"; +"Username: @%@ → @%@" = "Kullanıcı adı: @%@ → @%@"; +"Using %@ across %lu snapshots." = "%lu anlık görüntü genelinde %@ kullanılıyor."; +"Verified only" = "Yalnızca doğrulanmış"; +"Visited" = "Ziyaret edildi"; +"Visited profiles" = "Ziyaret edilen profiller"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "Instagram hız sınırlarından kaçınmak için takipçi sayısı %ld değerini aştığında çalışmayı reddediyoruz."; +"You both follow each other" = "Birbirinizi takip ediyorsunuz"; +"You don't follow back" = "Geri takip etmiyorsunuz"; +"You follow them, they don't follow back" = "Siz onları takip ediyorsunuz, onlar geri takip etmiyor"; +"You started following" = "Takip etmeye başladınız"; +"Your current scan was archived" = "Mevcut taramanız arşivlendi"; +"You unfollowed" = "Takibi bıraktınız"; +"your previous scan" = "önceki taramanız"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "“Önceki tarama” her zaman son çalıştırmanıza göre ölçer. Bunun yerine sabit bir zaman noktasıyla karşılaştırmak için kaydedilmiş bir anlık görüntü seçin."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ Bu büyüyor — yer açmak için sınırı düşürün veya eski anlık görüntüleri silin."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "Mutlak biçim"; +"Add chat" = "Sohbet ekle"; +"Add custom domain" = "Özel alan adı ekle"; +"Add to list?" = "Listeye eklensin mi?"; +"Add user" = "Kullanıcı ekle"; +"Apply" = "Uygula"; +"Apply to" = "Şuna uygula"; +"Chats" = "Sohbetler"; +"Colored" = "Renkli"; +"Could not read file." = "Dosya okunamadı."; +"Could not resolve user ID" = "Kullanıcı kimliği çözümlenemedi"; +"Current location" = "Geçerli konum"; +"Custom" = "Özel"; +"Delete" = "Sil"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "IG'deki her yüzey farklı bir NSDate biçimlendirici kullanır. Bu biçimin uygulanmasını istediğiniz yüzeyleri açın."; +"Enable fake location" = "Sahte konumu etkinleştir"; +"Excluded chats" = "Hariç tutulan sohbetler"; +"Excluded users" = "Hariç tutulan kullanıcılar"; +"Follow default" = "Varsayılanı izle"; +"Force OFF (allow unsends)" = "Kapalıya zorla (geri almaya izin ver)"; +"Force ON (preserve unsends)" = "Açığa zorla (geri alınanları koru)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "Biçim zaman içeriyorsa saniyeleri de göster. Özel biçim, saniyeleri {ss} ile kendisi kontrol eder."; +"Add custom format…" = "Özel biçim ekle…"; +"Edit" = "Düzenle"; +"Template" = "Şablon"; +"Placeholders" = "Yer tutucular"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "Yer tutucular tarih parçalarıyla değiştirilir; geri kalan her şey olduğu gibi gösterilir."; +"Tap a placeholder to insert it at the cursor." = "Bir yer tutucuya dokunarak imlecin olduğu yere ekleyin."; +"Included chats" = "Dahil edilen sohbetler"; +"Included users" = "Dahil edilen kullanıcılar"; +"KD: default" = "ST: varsayılan"; +"KD: ON" = "ST: AÇIK"; +"Keep-deleted" = "Silinenleri tut"; +"Keep-deleted override" = "Silinenleri tut geçersiz kılması"; +"Name (A–Z)" = "Ad (A–Z)"; +"No DM thread found with @%@" = "@%@ ile DM konuşması bulunamadı"; +"Presets" = "Hazır ayarlar"; +"Recently added" = "Son eklenenler"; +"Relative time" = "Göreli zaman"; +"Relative within" = "Göreli süre"; +"Remove from list" = "Listeden kaldır"; +"Reset" = "Sıfırla"; +"Search" = "Ara"; +"Search address or place" = "Adres veya yer ara"; +"Search by name or username" = "Ada veya kullanıcı adına göre ara"; +"Search by username or name" = "Kullanıcı adına veya ada göre ara"; +"Select location on map" = "Haritada konum seç"; +"Set current location" = "Geçerli konumu ayarla"; +"Set keep-deleted override" = "Silinenleri tut geçersiz kılmasını ayarla"; +"Show map button" = "Harita butonunu göster"; +"Show relative time for dates younger than this many days. 0 disables it." = "Belirtilen günden daha yeni tarihler için göreli zaman göster. 0 kapatır."; +"Show seconds" = "Saniyeleri göster"; +"Sort by" = "Şuna göre sırala"; +"Thread" = "Sohbet"; +"Time" = "Saat"; +"Use this location" = "Bu konumu kullan"; +"User '%@' not found" = "'%@' kullanıcısı bulunamadı"; +"Username (A–Z)" = "Kullanıcı adı (A–Z)"; +"Within %ld days" = "%ld gün içinde"; +"Within 1 day" = "1 gün içinde"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "Şifre bulunamadı"; +"No text field found" = "Metin alanı bulunamadı"; +"Refresh Reels?" = "Reels yenilensin mi?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu hesap"; +"%lu loaded" = "%lu yüklendi"; +"%lu loaded · all loaded" = "%lu yüklendi · tümü yüklendi"; +"Doesn't follow you" = "Sizi takip etmiyor"; +"Everyone is already loaded." = "Herkes zaten yüklendi."; +"Filter & sort" = "Filtrele ve sırala"; +"Follows me" = "Beni takip ediyor"; +"Follows me first" = "Önce beni takip edenler"; +"Follows you" = "Sizi takip ediyor"; +"Hides everyone who doesn't match all picked filters." = "Seçili filtrelerin tümüyle eşleşmeyen herkesi gizler."; +"Jump to bottom" = "En alta atla"; +"Jump to top" = "En üste atla"; +"List" = "Liste"; +"List fully loaded" = "Liste tamamen yüklendi"; +"Load more" = "Daha fazla yükle"; +"Loaded more" = "Daha fazlası yüklendi"; +"Mutuals" = "Karşılıklı"; +"Mutuals first" = "Önce karşılıklılar"; +"Note copied" = "Not kopyalandı"; +"People I follow" = "Takip ettiklerim"; +"People I follow first" = "Önce takip ettiklerim"; +"Reverse order" = "Ters sırala"; +"Show only" = "Yalnızca göster"; +"Verified" = "Doğrulanmış"; +"Verified first" = "Önce doğrulanmışlar"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(ayarsız)"; +"720p • progressive • fastest" = "720p • aşamalı • en hızlı"; +"Add language" = "Dil ekle"; +"Album name" = "Albüm adı"; +"Are you sure?" = "Emin misiniz?"; +"Bundle" = "Paket"; +"Copy audio URL" = "Ses URL'sini kopyala"; +"Copy quality info" = "Kalite bilgisini kopyala"; +"Copy video URL" = "Video URL'sini kopyala"; +"Could not access reel media" = "Reel medyasına erişilemedi"; +"Could not access reel photo" = "Reel fotoğrafına erişilemedi"; +"Could not write file." = "Dosya yazılamadı."; +"Download all and share?" = "Tümünü indirip paylaşılsın mı?"; +"Download Quality" = "İndirme Kalitesi"; +"Downloading %d%%" = "İndiriliyor %%%d"; +"e.g. 1000000" = "örn. 1000000"; +"Localization file not found" = "Çeviri dosyası bulunamadı"; +"Enter the language code (e.g. fr, de, ja)" = "Dil kodunu girin (ör. fr, de, ja)"; +"Error" = "Hata"; +"Extras" = "Ekstralar"; +"FFmpegKit Debug" = "FFmpegKit Hata Ayıklama"; +"File is empty or not a valid .strings file." = "Dosya boş veya geçerli bir .strings dosyası değil."; +"KD: OFF" = "KD: KAPALI"; +"Keep-deleted: OFF" = " • Silinenleri sakla: KAPALI"; +"Keep-deleted: ON" = " • Silinenleri sakla: AÇIK"; +"Later" = "Daha sonra"; +"Loading" = "Yükleniyor"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "RyukGram'ın kaydettiği Fotoğraflar albümünün adı. Varsayılana dönmek için boş bırakın."; +"Next" = "İleri"; +"No results found." = "Sonuç bulunamadı."; +"No!" = "Hayır!"; +"Pick a language to update, or add a new one" = "Güncellemek için bir dil seçin veya yeni bir tane ekleyin"; +"Preset" = "Hazır ayar"; +"Restart" = "Yeniden başlat"; +"Restart now" = "Şimdi yeniden başlat"; +"Restart required" = "Yeniden başlatma gerekli"; +"Saved preset \"%@\"" = "Kaydedilen ön ayar \"%@\""; +"selected" = "seçildi"; +"Shared icon, or override per button" = "Paylaşılan simge veya düğme başına geçersiz kıl"; +"Speed" = "Hız"; +"Unset" = "Ayarlanmamış"; +"Update localization" = "Çeviriyi güncelle"; +"Updated %@ (%ld keys). Restart to apply." = "%@ güncellendi (%ld anahtar). Uygulamak için yeniden başlatın."; +"Use default" = "Varsayılanı kullan"; +"Username or PK" = "Kullanıcı adı veya PK"; +"Username or raw user PK" = "Kullanıcı adı veya ham kullanıcı PK"; +"Yes" = "Evet"; +"You must restart the app to apply this change" = "Bu değişikliği uygulamak için uygulamayı yeniden başlatmalısınız"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "RyukGram'ı beğendin mi?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "Ücretsiz ve hiçbir şey cihazından dışarı çıkmıyor. Kullanmaktan keyif alıyorsan bir kahve devam etmesini sağlar."; +"Donate" = "Bağış yap"; +"I already did" = "Zaten yaptım"; +"Maybe later" = "Belki sonra"; +"This means a lot" = "Bu çok şey ifade ediyor"; +"Appreciate the support" = "Desteğin için teşekkürler"; +"No worries, enjoy the tweak" = "Sorun değil, tweak'in tadını çıkar"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, Bağış"; +"About" = "Hakkında"; +"Arabic translation" = "Arapça çeviri"; +"Chinese (Traditional and Simplified) translation" = "Çince (Geleneksel ve Basitleştirilmiş) çevirisi"; +"Credits" = "Katkıda bulunanlar"; +"Developers" = "Geliştiriciler"; +"installed" = "yüklü"; +"Korean translation" = "Korece çeviri"; +"Portuguese (Brazil) translation" = "Portekizce (Brezilya) çevirisi"; +"Turkish translation" = "Türkçe çeviri"; +"Vietnamese translation" = "Vietnamca çeviri"; +"French translation" = "Fransızca çeviri"; +"Japanese translation" = "Japonca çeviri"; +"Code contributions" = "Kod katkıları"; +"Following feed mode (from InstaSane)" = "Takip Edilenler akış modu (InstaSane'den)"; +"latest" = "en son"; +"Links" = "Bağlantılar"; +"No releases" = "Sürüm yok"; +"SCInsta developer" = "SCInsta geliştiricisi"; +"Release notes" = "Sürüm notları"; +"Releases" = "Sürümler"; +"Report an issue" = "Sorun bildir"; +"Russian translation" = "Rusça çeviri"; +"RyukGram developer" = "RyukGram geliştiricisi"; +"Join Telegram channel" = "Telegram kanalına katıl"; +"Source code" = "Kaynak kod"; +"View on GitHub" = "GitHub'da görüntüle"; +"Spanish translation" = "İspanyolca çeviri"; +"Inspirations" = "İlham kaynakları"; +"Inspirations, contributors, translators" = "İlham kaynakları, katkıda bulunanlar, çevirmenler"; +"Code and research" = "Kod ve araştırma"; +"Translators" = "Çevirmenler"; +"BHInstagram developer" = "BHInstagram geliştiricisi"; +"OLED theme inspiration" = "OLED tema ilhamı"; +"Donate to Ryuk" = "Ryuk'a bağış yap"; +"Support RyukGram development" = "RyukGram geliştirmesini destekle"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram, SCInsta'dan ilham alan bağımsız bir projedir."; +"Browse changes from previous releases" = "Önceki sürümlerdeki değişikliklere göz at"; +"Code inspiration" = "Kod ilhamı"; +"zxPluginsInject sideload compatibility shim" = "zxPluginsInject sideload uyumluluk katmanı"; +"Telegram channel" = "Telegram kanalı"; +"Testing and feature suggestions" = "Test ve özellik önerileri"; +"Version" = "Sürüm"; +"Version, credits, and links" = "Sürüm, katkılar ve bağlantılar"; +"What's new in RyukGram" = "RyukGram'da yenilikler"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • aşamalı • sessiz"; +"Audio only" = "Yalnızca ses"; +"Audio ready" = "Ses hazır"; +"Audio track %ld" = "Ses parçası %ld"; +"Download video at the highest available quality" = "Videoyu mevcut en yüksek kalitede indir"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "HD videoyu DASH akışları üzerinden indirir ve H.264'e kodlar. FFmpegKit gerektirir."; +"Encoding in software" = "Yazılımla kodlanıyor"; +"Encoding speed" = "Kodlama hızı"; +"Enhanced downloads" = "Gelişmiş indirmeler"; +"Faster = lower quality" = "Daha hızlı = daha düşük kalite"; +"FFmpeg not available" = "FFmpeg kullanılamıyor"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit kullanılamıyor. Etkinleştirmek için sideload edilmiş IPA'yı veya _ffmpeg .deb varyantını yükleyin."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "Donanım kodlayıcı arka planda kullanılamıyor — kalite ayarlarınız korundu."; +"No audio track found" = "Ses parçası bulunamadı"; +"Photo" = "Fotoğraf"; +"Photo quality" = "Fotoğraf kalitesi"; +"Size unknown" = "Boyut bilinmiyor"; +"calculating size…" = "boyut hesaplanıyor…"; +"silent" = "sessiz"; +"Use highest resolution available" = "Mevcut en yüksek çözünürlüğü kullan"; +"Video encoder locked up — restart Instagram to encode again" = "Video kodlayıcı kilitlendi — yeniden kodlamak için Instagram'ı yeniden başlatın"; +"Video only" = "Yalnızca video"; +"Video-only & every audio track" = "Yalnızca video ve tüm ses parçaları"; +"Video quality" = "Video kalitesi"; +"Which quality to download" = "Hangi kalitenin indirileceği"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' bu FFmpegKit derlemesinde yok — bunun yerine donanım h264 kullanılıyor."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-bit 4:2:0. ~2x daha yavaş, daha pürüzsüz geçişler."; +"10-bit colour. Slower, smoother gradients. Software only." = "10-bit renk. Daha yavaş, daha pürüzsüz geçişler. Yalnızca yazılım."; +"1080p30 baseline." = "1080p30 temel."; +"4K30 baseline." = "4K30 temel."; +"8-bit 4:2:0. Universal default." = "8-bit 4:2:0. Evrensel varsayılan."; +"8-bit 4:2:2 chroma. Niche playback." = "8-bit 4:2:2 kroma. Niş oynatma."; +"8-bit 4:2:2 chroma. Software only." = "8-bit 4:2:2 kroma. Yalnızca yazılım."; +"8-bit 4:4:4 chroma. Software only." = "8-bit 4:4:4 kroma. Yalnızca yazılım."; +"8-bit 4:4:4 full chroma. Niche playback." = "8-bit 4:4:4 tam kroma. Niş oynatma."; +"8-bit. Best for modern devices." = "8-bit. Modern cihazlar için en iyisi."; +"Advanced encoding" = "Gelişmiş kodlama"; +"Advanced encoding settings" = "Gelişmiş kodlama ayarları"; +"Archival quality." = "Arşiv kalitesi."; +"Audio bitrate" = "Ses bit hızı"; +"Audio channels" = "Ses kanalları"; +"Audio codec" = "Ses codec'i"; +"Audio conversion failed" = "Ses dönüştürme başarısız"; +"Audio sample rate" = "Ses örnekleme hızı"; +"Balanced. libx264 default." = "Dengeli. libx264 varsayılanı."; +"Best practical quality per bit." = "Bit başına en iyi pratik kalite."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "Bit hızı, kanallar ve örnekleme hızı yalnızca codec AAC olduğunda (yeniden kodlama) geçerlidir."; +"Cartoons / anime." = "Çizgi film / anime."; +"Cinematic. Smaller files." = "Sinematik. Daha küçük dosyalar."; +"Codec" = "Codec"; +"Container" = "Konteyner"; +"Copy (passthrough)" = "Kopyala (geçiş)"; +"CRF quality" = "CRF kalitesi"; +"Downloading video…" = "Video indiriliyor…"; +"Easier to play back on weak devices." = "Zayıf cihazlarda oynatması daha kolay."; +"Encoder unavailable" = "Kodlayıcı kullanılamıyor"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "Örnekler: 8M, 12M, 25M, 4500k. Otomatik için boş bırakın."; +"Failed to download video" = "Video indirilemedi"; +"Fast, fixed-bitrate, GPU-accelerated." = "Hızlı, sabit bit hızı, GPU hızlandırmalı."; +"Fastest, worst compression." = "En hızlı, en kötü sıkıştırma."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart, MP4 dizinini başa taşır, böylece oynatma dosya tamamen arabelleğe alınmadan başlar. Meta verileri çıkar, kaynak etiketlerini (oluşturma tarihi, işleyici, kodlayıcı) dosyadan kaldırır."; +"FFmpeg documentation" = "FFmpeg belgeleri"; +"FFmpeg mux failed" = "FFmpeg birleştirme başarısız"; +"Frame rate" = "Kare hızı"; +"H.264 level" = "H.264 seviyesi"; +"H.264 profile" = "H.264 profili"; +"Hardware (VideoToolbox)" = "Donanım (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "Donanım (VideoToolbox) yalnızca yuv420p destekler — '%@' yok sayıldı. Kullanmak için Yazılım (libx264) seçeneğine geçin."; +"Keep original audio. Fast." = "Orijinal sesi koru. Hızlı."; +"Keep the source frame rate." = "Kaynak kare hızını koru."; +"Let the encoder pick." = "Kodlayıcı seçsin."; +"Live-action video." = "Gerçek çekim video."; +"Lossless. Huge files." = "Kayıpsız. Çok büyük dosyalar."; +"Low-latency streaming." = "Düşük gecikmeli akış."; +"Manual ffmpeg controls in place of Encoding speed." = "Kodlama hızı yerine manuel ffmpeg kontrolleri."; +"Marginal gain, huge time cost." = "Marjinal kazanç, büyük zaman maliyeti."; +"Max resolution" = "Maks çözünürlük"; +"Mono" = "Mono"; +"No tuning. Default." = "Ayar yok. Varsayılan."; +"None" = "Yok"; +"Pixel format" = "Piksel biçimi"; +"Pixel format ignored" = "Piksel biçimi yok sayıldı"; +"Preserve film grain." = "Film grenini koru."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "Ön ayar ve İnce ayar yalnızca Yazılım (libx264) için geçerlidir. Profili piksel biçimiyle eşleştirin: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Uyumsuzluklar sessizce alt biçime dönüştürülür. Donanım her zaman yuv420p kullanır."; +"Re-encode. Use when source is opus or unsupported." = "Yeniden kodla. Kaynak opus veya desteklenmiyorsa kullanın."; +"Reset advanced encoding" = "Gelişmiş kodlamayı sıfırla"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "Bir video bit hızı ayarlamak Yazılım'ı sabit bit hızına geçirir ve CRF'yi yok sayar. CRF için boş bırakın. Donanım bit hızını kullanır."; +"Slideshow-like content." = "Slayt gösterisi benzeri içerik."; +"Slower, better compression per bit." = "Daha yavaş, bit başına daha iyi sıkıştırma."; +"Smaller, visible artefacts." = "Daha küçük, görünür bozulmalar."; +"Software (libx264)" = "Yazılım (libx264)"; +"Standard 8-bit." = "Standart 8-bit."; +"Stereo" = "Stereo"; +"Streaming default." = "Akış varsayılanı."; +"Strip metadata" = "Meta verileri çıkar"; +"Top of AAC." = "AAC'nin en üstü."; +"Tune" = "İnce ayar"; +"Unknown error" = "Bilinmeyen hata"; +"Very high quality." = "Çok yüksek kalite."; +"Video bitrate" = "Video bit hızı"; +"Video codec" = "Video codec'i"; +"Visually lossless. RyukGram default." = "Görsel olarak kayıpsız. RyukGram varsayılanı."; +"Widest compatibility, no B-frames." = "En geniş uyumluluk, B-kare yok."; +"Worst quality." = "En kötü kalite."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "Uzun basma hareketleri"; +"Inserts a button in the profile navigation header" = "Profil gezinme başlığına bir düğme ekler"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "Profil başlığına kopyalama, fotoğrafı görüntüleme, paylaşma, kaydetme ve profil bilgisi girişlerine sahip bir RyukGram eylem düğmesi ekler. Varsayılan olarak dokunma menüyü açar; dokunma davranışını Menüyü yapılandır bölümünden değiştirin."; +"Configure menu" = "Menüyü yapılandır"; +"Reorder, enable/disable, set default tap, show date" = "Yeniden sırala, etkinleştir/devre dışı bırak, varsayılan dokunmayı ayarla, tarihi göster"; +"Reorder, enable/disable, set default tap" = "Yeniden sırala, etkinleştir/devre dışı bırak, varsayılan dokunmayı ayarla"; +"RyukGram profile actions" = "RyukGram profil eylemleri"; +"Reorder sections" = "Bölümleri yeniden sırala"; +"Drag the ≡ handle to reorder sections." = "Bölümleri yeniden sıralamak için ≡ tutamağını sürükleyin."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "Yeniden sıralamak için ≡ tutamağını sürükleyin. Bir satırı kapatarak menüden gizleyin. Bir bölümü alt menü olarak işaretleyerek eylemlerini tek bir girişin arkasında toplayın."; +"Show as submenu" = "Alt menü olarak göster"; +"Collapse this section's actions behind a single entry" = "Bu bölümün eylemlerini tek bir girişin arkasında topla"; +"Configure: %@" = "Yapılandır: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "Tek dokunmada ne olacağı. Uzun basma her zaman tam menüyü açar."; +"Reset to defaults" = "Varsayılanlara sıfırla"; +"This will restore the default sections, order, and toggles for this menu." = "Bu işlem, bu menü için varsayılan bölümleri, sıralamayı ve anahtarları geri yükler."; +"Audio & visibility" = "Ses ve görünürlük"; +"DM disappearing media" = "DM kaybolan medya"; +"Bulk download" = "Toplu indirme"; +"Feed settings" = "Akış ayarları"; +"Reels settings" = "Reels ayarları"; +"Profile settings" = "Profil ayarları"; +"Stories settings" = "Hikaye ayarları"; +"Copy ID" = "Kimliği kopyala"; +"Copy Info" = "Bilgileri kopyala"; +"Copy all info" = "Tüm bilgileri kopyala"; +"Copy media URL" = "Medya URL'sini kopyala"; +"Copy profile link" = "Profil bağlantısını kopyala"; +"Copy username" = "Kullanıcı adını kopyala"; +"Download" = "İndir"; +"Download to Gallery" = "Galeriye indir"; +"Download all to Gallery" = "Tümünü Galeriye indir"; +"Exclude/include user" = "Kullanıcıyı hariç tut/dahil et"; +"Mute / unmute audio" = "Sesi kapat / aç"; +"Save picture to Gallery" = "Fotoğrafı Galeriye kaydet"; +"Share picture" = "Fotoğrafı paylaş"; +"View picture" = "Fotoğrafı görüntüle"; +"Bio" = "Biyografi"; +"ID" = "Kimlik"; +"Info" = "Bilgi"; +"Profile info" = "profil bilgileri"; +"Profile link" = "Profil bağlantısı"; +"Picture not found" = "Fotoğraf bulunamadı"; +"Private profile" = "Gizli profil"; +"Profile unavailable" = "Profil kullanılamıyor"; +"Public profile" = "Herkese açık profil"; +"Username" = "Kullanıcı adı"; +"Followers: %@" = "Takipçiler: %@"; +"Following: %@" = "Takip edilen: %@"; +"Copied %@" = "%@ kopyalandı"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(bilinmiyor)"; +"Added %lu" = "%lu eklendi"; +"All files deleted" = "Tüm dosyalar silindi"; +"Browsing" = "Göz atma"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "Önceki bir sürüm tarafından kaydedilen %lu öğe bulundu. Şimdi galerine geri yüklensin mi?"; +"Gallery data from a previous version was found. Restore it now?" = "Önceki bir sürümden galeri verisi bulundu. Şimdi geri yüklensin mi?"; +"Gallery restored" = "Galeri geri yüklendi"; +"Import failed" = "İçe aktarma başarısız"; +"Import to Gallery" = "Galeriye aktar"; +"Imported" = "İçe aktarıldı"; +"Importing…" = "İçe aktarılıyor…"; +"Not Now" = "Şimdi değil"; +"Nothing imported" = "Hiçbir şey aktarılmadı"; +"Restore" = "Geri yükle"; +"Restore Gallery" = "Galeriyi geri yükle"; +"Restore failed" = "Geri yükleme başarısız"; +"Restoring gallery…" = "Galeri geri yükleniyor…"; +"By source" = "Kaynağa göre"; +"By type" = "Türe göre"; +"By user" = "Kullanıcıya göre"; +"Clear filters" = "Filtreleri temizle"; +"Comment" = "Yorum"; +"Create" = "Oluştur"; +"Create & Move" = "Oluştur ve Taşı"; +"Delete %@?" = "%@ silinsin mi?"; +"Delete all files" = "Tüm dosyaları sil"; +"Delete all images" = "Tüm görselleri sil"; +"Delete all videos" = "Tüm videoları sil"; +"Delete by user" = "Kullanıcıya göre sil"; +"Delete DM media" = "DM medyasını sil"; +"Delete feed posts" = "Akış gönderilerini sil"; +"Delete files" = "Dosyaları sil"; +"Delete Folder" = "Klasörü Sil"; +"Delete from Gallery?" = "Galeriden silinsin mi?"; +"Delete profile pictures" = "Profil fotoğraflarını sil"; +"Delete reels" = "Reels'i sil"; +"Delete selected" = "Seçilenleri sil"; +"Delete Selected Files?" = "Seçili Dosyalar Silinsin mi?"; +"Delete stories" = "Hikayeleri sil"; +"Delete thumbnails" = "Küçük resimleri sil"; +"Deleted from Gallery" = "Galeriden silindi"; +"Deleted selected files" = "Seçili dosyalar silindi"; +"Deselect All" = "Seçimi kaldır"; +"DM media deleted" = "DM medyası silindi"; +"DMs" = "DM'ler"; +"Each user appears as a folder next to your real folders." = "Her kullanıcı, gerçek klasörlerinizin yanında bir klasör olarak görünür."; +"Each user gets a labelled section in the grid/list." = "Her kullanıcı, ızgara/listede etiketli bir bölüm alır."; +"Enable gallery" = "Galeriyi etkinleştir"; +"Failed" = "Başarısız"; +"Failed to delete" = "Silinemedi"; +"Favorite" = "Favorilere ekle"; +"Favorite selected" = "Seçilenleri favorilere ekle"; +"Favorites only" = "Yalnızca favoriler"; +"Feed posts deleted" = "Akış gönderileri silindi"; +"Files deleted" = "Dosyalar silindi"; +"Flat list. No grouping." = "Düz liste. Gruplama yok."; +"Folder name" = "Klasör adı"; +"Folders" = "Klasörler"; +"From RyukGram Gallery" = "RyukGram Galerisinden ses"; +"Gallery" = "Galeri"; +"Gallery only" = "Yalnızca Galeri"; +"Gallery save mode" = "Galeri kayıt modu"; +"Gallery Settings" = "Galeri Ayarları"; +"GIFs" = "GIF'ler"; +"Grid columns" = "Izgara sütunları"; +"Grid view" = "Izgara görünümü"; +"Group by user" = "Kullanıcıya göre grupla"; +"Group first by" = "Önce şuna göre grupla"; +"Order by" = "Sıralama ölçütü"; +"Favorites first" = "Önce favoriler"; +"Any time" = "Her zaman"; +"This year" = "Bu yıl"; +"%ld columns" = "%ld sütun"; +"Hold DM tab to open gallery" = "Galeri için DM sekmesini basılı tutun"; +"Images" = "Görseller"; +"Images deleted" = "Görseller silindi"; +"Images first" = "Önce görseller"; +"item" = "öğe"; +"items" = "öğe"; +"Largest first" = "Önce en büyük"; +"List view" = "Liste görünümü"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "RyukGram galerisini açmak için alt sekme çubuğundaki gelen kutusu düğmesine uzun basın"; +"Manage" = "Yönet"; +"More" = "Daha fazla"; +"Move selected" = "Seçilenleri taşı"; +"Move to Folder" = "Klasöre Taşı"; +"Name A-Z" = "Ad A-Z"; +"Name Z-A" = "Ad Z-A"; +"New Folder" = "Yeni Klasör"; +"New folder…" = "Yeni klasör…"; +"Newest first" = "Önce en yeni"; +"No files in Gallery" = "Galeride dosya yok"; +"No files to delete" = "Silinecek dosya yok"; +"No matching files" = "Eşleşen dosya yok"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "RyukGram aracılığıyla indirilen medyanın cihazdaki kitaplığı. Kayıt modu, 'Fotoğraflar'a indir' işleminin gerçekte nereye yazacağını belirler."; +"Open" = "Aç"; +"Open Original Post" = "Orijinal Gönderiyi Aç"; +"Options" = "Seçenekler"; +"Other" = "Diğer"; +"Photos + Gallery" = "Fotoğraflar + Galeri"; +"Photos only" = "Yalnızca Fotoğraflar"; +"Profile pictures deleted" = "Profil fotoğrafları silindi"; +"Reels deleted" = "Reels silindi"; +"Rename" = "Yeniden adlandır"; +"Rename Folder" = "Klasörü Yeniden Adlandır"; +"Root" = "Kök"; +"Save media from the preview screen\nto see it here." = "Burada görmek için medyayı önizleme\nekranından kaydedin."; +"Saved %lu items to Gallery" = "Galeriye %lu öğe kaydedildi"; +"Saved to Gallery" = "Galeriye kaydedildi"; +"Saving to Gallery" = "Galeriye kaydediliyor..."; +"Search users" = "Kullanıcı ara"; +"Sections" = "Bölümler"; +"Select All" = "Tümünü seç"; +"Share" = "Paylaş"; +"Share selected" = "Seçilenleri paylaş"; +"Show favorites at top" = "Favorileri üstte göster"; +"Show gallery entries in download menus and unlock the gallery button" = "İndirme menülerinde galeri girişlerini göster ve galeri düğmesinin kilidini aç"; +"Smallest first" = "Önce en küçük"; +"Source" = "Kaynak"; +"Source user" = "Kaynak kullanıcı"; +"Storage" = "Depolama"; +"Stories deleted" = "Hikayeler silindi"; +"Story" = "Hikaye"; +"The original content may no longer exist." = "Orijinal içerik artık mevcut olmayabilir."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "Bu klasör %ld dosya içeriyor. Üst klasöre taşınacak."; +"This folder is empty." = "Bu klasör boş."; +"This will permanently remove %ld file%@ from the gallery." = "Bu işlem galeriden %ld dosya%@ kalıcı olarak kaldıracak."; +"This will permanently remove %ld file(s)." = "Bu işlem, %ld dosyayı kalıcı olarak kaldırır."; +"This will permanently remove this file from the gallery." = "Bu işlem, bu dosyayı galeriden kalıcı olarak kaldırır."; +"Thumb" = "Küçük resim"; +"Thumbnails deleted" = "Küçük resimler silindi"; +"to Gallery" = "Galeriye"; +"Total files" = "Toplam dosya"; +"Total size" = "Toplam boyut"; +"Type" = "Tür"; +"Unable to open original post" = "Orijinal gönderi açılamadı"; +"Unable to open profile" = "Profil açılamadı"; +"Unfavorite" = "Favorilerden çıkar"; +"Unknown user" = "Bilinmeyen kullanıcı"; +"User files deleted" = "Kullanıcı dosyaları silindi"; +"Videos" = "Videolar"; +"Videos deleted" = "Videolar silindi"; +"Videos first" = "Önce videolar"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "Etkinleştirildiğinde favoriler, geçerli sıralama ve klasör bağlamında diğer dosyaların üzerine sabitlenir."; +"Where 'Download to Photos' actually writes when gallery is on" = "Galeri açıkken 'Fotoğraflar'a indir' işleminin gerçekte nereye yazacağı"; +"Yesterday" = "Dün"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "Ana sayfa kısayol düğmesi"; +"Show the extra button on the home top bar" = "Ana sayfa üst çubuğundaki ek düğmeyi yapılandırın"; +"Auto" = "Otomatik"; +"Icon" = "Simge"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "Yeniden sıralamak için ≡ tutamacını sürükleyin. Bir satırı kapatarak o hedefi gizleyin. Bir eylem açıkken dokunma onu çalıştırır; iki veya daha fazlasıyla dokunma menü gösterir."; +"Changelog" = "Değişiklik günlüğü"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "Ana ekran üst çubuğundaki gönderi oluştur + düğmesinin yanına ekstra bir kısayol düğmesi ekler."; +"All buttons" = "Tüm düğmeler"; +"System" = "Sistem"; +"Instagram language" = "Instagram dili"; +"Choose icon, reorder actions, and enable menu items" = "Simge seçin, eylemleri yeniden sıralayın ve menü öğelerini etkinleştirin"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "Ana ekran üst çubuğunda gösterilen simgeyi seçin. Yalnızca bir eylem etkinken Otomatik, seçili eylem simgesini kullanır."; +"Configure button" = "Düğmeyi yapılandır"; +"Global Action Icons" = "Genel Eylem Simgeleri"; +"Interface" = "Arayüz"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "Belirli bir düğmenin simgesini geçersiz kıl. Varsayılan bırakılan düğmeler yukarıdaki paylaşılan simgeyi izler."; +"Per button" = "Düğme başına"; +"Show home shortcut button" = "Ana ekran kısayol düğmesini göster"; +"%ld new" = "%ld yeni"; +"Tab bar" = "Sekme çubuğu"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "Uygulama içi evrensel bildirimler. Stil, konum, işlem başına yönlendirme seçin."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "Konumlandırmak için bildirimi sürükleyin"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "Bildirimi istediğiniz yere sürükleyin. Ortanın üstü aşağı, altı yukarı kayar."; + +"Notifications" = "Bildirimler"; +"Appearance" = "Görünüm"; +"Routing" = "Yönlendirme"; +"Style" = "Stil"; +"Position" = "Konum"; +"Stack size" = "Yığın boyutu"; +"Duration" = "Süre"; +"Default surface" = "Varsayılan yüzey"; +"System notifications" = "Sistem bildirimleri"; +"Mirror to notification centre" = "Bildirim merkezine yansıt"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "Uygulama arka plandayken bildirimler kaçırılmamaları için iOS bildirim merkezine iletilir."; +"Clear when app opens" = "Uygulama açılınca temizle"; +"Remove mirrored notifications from notification centre when you return to the app." = "Uygulamaya döndüğünüzde yansıtılan bildirimleri bildirim merkezinden kaldırır."; +"Background mirror" = "Arka plan yansıtma"; +"Show while app is open" = "Uygulama açıkken göster"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "Yansıtılan bildirimleri yalnızca arka planda değil, uygulamayı kullanırken de sistem başlıkları olarak gönder."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "Görünüm, yönlendirme, sistem bildirimleri ve her eyleme özel geçersiz kılma varsayılanlarına döner."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Instagram'ın bildirim iznini kullanır. Eylem bazlı ayarlar her eylemin menüsündeki Arka plan yansıtma altındadır; Kapalı olarak ayarlanan eylemler asla yansıtılmaz."; +"Enable notifications" = "Bildirimleri etkinleştir"; +"Haptic feedback" = "Dokunsal geri bildirim"; +"Preview pill" = "Hap önizlemesi"; +"Preview download pill" = "İndirme hapı önizlemesi"; +"Preview loading pill" = "Yükleme hapı önizlemesi"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "Ana anahtar. Kapalıyken hiçbir bildirim gösterilmez."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "Uygulama içi evrensel bildirimler. Tüm RyukGram geri bildirimleri buradan geçer."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal: düz blur. Colorful: ton renkli. Glow: renkli halka. Island: dinamik ada kapsülü."; +"Top slides down, bottom slides up." = "Üst aşağı, alt yukarı kayar."; +"How many pills can show at once before queueing." = "Sıraya alınmadan önce aynı anda kaç hap gösterilebilir."; +"Multiplies how long toasts stay on screen." = "Bildirimlerin ekranda kalma süresini çarpar."; +"Vibration on success/error pills." = "Başarı/hata haplarında titreşim."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "Uyarı tarzı işlemler için hap veya IG yerel uyarısı arasında seçim yapabilirsiniz. İşlem başına geçersiz kılmalar aşağıda."; +"What to use when an action doesn't have its own override." = "Bir işlemin kendi geçersiz kılması yoksa ne kullanılacak."; +"Tap to cycle: info → success → warning → error" = "Geçiş için dokun: bilgi → başarı → uyarı → hata"; +"Tap to cycle between success and failure" = "Başarı ve başarısızlık arasında geçiş için dokun"; +"Progress UI — pill or off only." = "İlerleme arayüzü — yalnızca hap veya kapalı."; +"Minimal" = "Minimal"; +"Colorful" = "Renkli"; +"Glow" = "Parıltı"; +"Island" = "Ada"; +"Top" = "Üst"; +"Bottom" = "Alt"; +"Custom pill" = "Özel hap"; +"IG native toast" = "IG yerel uyarısı"; +"Short" = "Kısa"; +"Normal" = "Normal"; +"Long" = "Uzun"; +"Very long" = "Çok uzun"; +"Downloads & saving" = "İndirmeler ve kaydetme"; +"Copy to clipboard" = "Panoya kopyala"; +"Read receipts & seen" = "Okundu bilgileri"; +"Block, exclude & pin" = "Engelle, hariç tut ve sabitle"; +"Stories & messages" = "Hikayeler ve mesajlar"; +"Voice & audio" = "Ses ve audio"; +"Errors" = "Hatalar"; +"Download progress" = "İndirme ilerlemesi"; +"Bulk download progress" = "Toplu indirme ilerlemesi"; +"Repost progress" = "Yeniden paylaşım ilerlemesi"; +"Copied post / reel URL" = "Gönderi / reel URL'si kopyalandı"; +"Copied comment text" = "Yorum metni kopyalandı"; +"Copied GIF link" = "GIF bağlantısı kopyalandı"; +"Copied note text" = "Not metni kopyalandı"; +"Copied profile info" = "Profil bilgileri kopyalandı"; +"Copied audio URL" = "Ses URL'si kopyalandı"; +"Copied quality picker URL" = "Kalite seçici URL'si kopyalandı"; +"Copied unlocked password" = "Açılan şifre kopyalandı"; +"Copied description text" = "Açıklama metni kopyalandı"; +"DM seen / read receipts" = "DM görüldü / okundu"; +"Story seen / read receipts" = "Hikaye görüldü / okundu"; +"Someone read your message" = "Birisi mesajınızı okudu"; +"User blocked / unblocked" = "Kullanıcı engellendi / engel kaldırıldı"; +"Chat added / removed from exclude" = "Sohbet hariç tutulanlardan eklendi / çıkarıldı"; +"Story user added / removed from exclude" = "Hikaye kullanıcısı hariç tutulanlardan eklendi / çıkarıldı"; +"Share-sheet recipient pinned" = "Paylaşım sayfası alıcısı sabitlendi"; +"Unsent message detected" = "Geri çekilmiş mesaj algılandı"; +"Reaction removed detected" = "Tepki kaldırma algılandı"; +"%lu messages unsent" = "%lu mesaj geri alındı"; +"%lu reactions removed" = "%lu tepki kaldırıldı"; +"%lu chats marked seen" = "%lu sohbet görüldü olarak işaretlendi"; +"%lu stories marked seen" = "%lu hikaye görüldü olarak işaretlendi"; +"%lu of your messages read" = "%lu mesajınız okundu"; +"%lu notifications" = "%lu bildirim"; +"Live comments toggled" = "Canlı yorumlar değiştirildi"; +"Custom GIF sent" = "Özel GIF gönderildi"; +"GIF favorited / unfavorited" = "GIF favorilere eklendi / çıkarıldı"; +"Voice DM sent" = "Sesli DM gönderildi"; +"Audio extraction status" = "Ses çıkarma durumu"; +"Profile Analyzer complete" = "Profil Analizcisi tamamlandı"; +"Profile Analyzer progress" = "Profil Analizcisi ilerlemesi"; +"Media extraction failed" = "Medya çıkarma başarısız"; +"Permission denied" = "İzin reddedildi"; +"Validation error" = "Doğrulama hatası"; +"Network / API error" = "Ağ / API hatası"; +"Action error fallback" = "İşlem hata yedeği"; +"Unlock failed" = "Kilit açma başarısız"; +"Chat locked / unlocked" = "Sohbet kilitlendi / kilidi açıldı"; +"Invalid clipboard link" = "Geçersiz pano bağlantısı"; +"Experimental flag warning" = "Deneysel bayrak uyarısı"; +"Settings action confirmed" = "Ayar işlemi onaylandı"; +"Cache clearing progress" = "Önbellek temizleme ilerlemesi"; +"Backup export / import" = "Yedek dışa / içe aktarma"; +"Other / uncategorized" = "Diğer / kategorisiz"; +"Comment copied" = "Yorum kopyalandı"; +"FFmpeg log copied" = "FFmpeg günlüğü kopyalandı"; +"GIF inserted" = "GIF eklendi"; +"Story marked as seen" = "Hikaye görüldü olarak işaretlendi"; +"Saved" = "Kaydedildi"; +"Tap to retry" = "Yeniden denemek için dokun"; +"Looks great" = "Harika görünüyor"; +"Something broke" = "Bir şey bozuldu"; +"Just so you know" = "Bilginize"; +"Success preview" = "Başarı önizleme"; +"Error preview" = "Hata önizleme"; +"Warning preview" = "Uyarı önizleme"; +"Info preview" = "Bilgi önizleme"; +"Preview download…" = "İndirme önizleme…"; +"Colors" = "Renkler"; +"+ Add new language" = "+ Yeni dil ekle"; +"Each chat can override this in the list" = "Her sohbet bunu listede geçersiz kılabilir"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "Açıkken, Instagram konum istekleri seçilen sahte konumu döndürür. Harita düğmesi Arkadaşlar Haritası içine bir kısayol ekler."; +"Tap a preset to make it active. Swipe left to delete." = "Etkinleştirmek için bir ön ayara dokunun. Silmek için sola kaydırın."; +"Override Instagram location reads." = "Instagram'ın konum okumalarını geçersiz kılar."; +"Show the quick button in Friends Map." = "Hızlı düğmeyi Arkadaşlar Haritası içinde göster."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "Mutlak tarihlerin nasıl yazılacağını seçin. “Varsayılan”, IG'nin kendi biçimine dokunmaz. Özel bir biçimi düzenlemek veya silmek için kaydırın."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "Eşikten yeni tarihler göreli zaman olarak gösterilir. Eski tarihler mutlak biçime döner. “Tarih ile birleştir” her ikisini de gösterir — “5 Oca 2026 (2s)” veya “2s – 5 Oca 2026”."; +"Compact style" = "Sıkışık stil"; +"Example: “1h” instead of “1 hour ago”" = "Örnek: “1 saat önce” yerine “1h”"; +"Example: “Jan 5, 2026 (2h)”" = "Örnek: “Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "iOS ses API'leri bu dosyayı işleyemedi%@%@\n\nDosyayı Instagram'a olduğu gibi göndermeyi deneyebilir veya bir destek bildirimi açabilirsiniz."; +"Combine with date" = "Tarih ile birleştir"; +"Absolute then relative" = "Önce mutlak, sonra göreli"; +"Relative – absolute" = "Göreli – mutlak"; +"Relative when young, absolute when older." = "Yeniyse göreli, eskiyse mutlak."; +"Example: “2h – Jan 5, 2026”" = "Örnek: “2s – 5 Oca 2026”"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "Siz yokken geri alınan tek seferlik medyayı yakalar. ⚠️ Pili tüketebilir"; +"Disappearing (view-once) media" = "Kaybolan medya (tek seferlik)"; +"Disappearing media expired before it could be saved" = "Kaybolan medya kaydedilemeden süresi doldu"; +"Disappearing media — gone before it could be saved" = "Kaybolan medya — kaydedilemeden yok oldu"; +"Disappearing only" = "Yalnızca kaybolan"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Birinin siz uygulamada değilken geri aldığı kaybolan medyayı yakalayabilmesi için Instagram'ı arka planda çalışmaya devam etmeye zorlar.\n\nÖzellikle tek seferlik medya için yararlıdır — normal fotoğraf/videolar bunsuz da genellikle kurtarılabilir. ⚠️ Pilinizi önemli ölçüde tüketebilir ve Instagram'ı uygulama değiştiriciden zorla kapatırsanız hiçbir şeyi yakalayamaz.\n\nEtkinleştirilsin mi?"; +"Keep Instagram active in background" = "Instagram'ı arka planda etkin tut"; +"Media couldn’t be downloaded — the link expired" = "Medya indirilemedi — bağlantının süresi doldu"; +"Media wasn’t available to save" = "Medya kaydetmek için kullanılamadı"; +"Retrying download…" = "İndirme yeniden deneniyor…"; +"Try to download again" = "Yeniden indirmeyi dene"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "Okundu bilgisi kaydı"; +"Date" = "Tarih"; +"Reads" = "Okumalar"; +"Person" = "Kişi"; +"Chat" = "Sohbet"; +"%@ · on @%@" = "%@ · @%@ hesabında"; +"%lu read · %@" = "%lu okuma · %@"; +"%lu reads · %@" = "%lu okuma · %@"; +"%lu reads · %lu reader · %@" = "%lu okuma · %lu okuyan · %@"; +"%lu reads · %lu readers · %@" = "%lu okuma · %lu okuyan · %@"; +"Clear all" = "Tümünü temizle"; +"Clear all records" = "Tüm kayıtları temizle"; +"Detects when others read your messages and notifies you" = "Başkaları mesajlarınızı okuduğunda algılar ve bildirir"; +"Ignored people & chats" = "Yoksayılan kişiler ve sohbetler"; +"Ignored" = "Yoksayıldı"; +"Log group chats" = "Grup sohbetlerini kaydet"; +"Most reads" = "En çok okuma"; +"Notifies and records when someone reads a message you sent" = "Gönderdiğiniz mesajı biri okuduğunda bildirir ve kaydeder"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "Yoksayılan yok. Kaydı durdurmak için kayıttaki kişiye uzun basın."; +"Nothing matches your filters." = "Filtrelerinizle eşleşen yok."; +"Read %@ · %@" = "Okundu %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "Okumaları bu cihazda kaydeder. Kapalı = yalnızca bildirim, kayıt yok"; +"Resume logging" = "Kaydı sürdür"; +"Search by username" = "Kullanıcı adına göre ara"; +"Stop logging %@" = "%@ kaydını durdur"; +"Delete records" = "Kayıtları sil"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "Etkinleştirildiğinde, birisi mesajınızı okuduğunda bildirim alırsınız. Yalnızca bildirim modu için \"Kayda kaydet\"i kapatın. Kayıtta bir kişiye uzun basarak kaydı durdurabilirsiniz."; +"Swipe to remove. Removing resumes logging for that person or chat." = "Kaldırmak için kaydırın. Kaldırmak o kişinin veya sohbetin kaydını sürdürür."; +"Updating names and photos" = "Adlar ve fotoğraflar güncelleniyor"; +"Your message" = "Mesajınız"; +"read your message in %@" = "%@ içinde mesajınızı okudu"; +"read your message" = "mesajınızı okudu"; +"Also track reads in group chats. Off by default — groups can be noisy" = "Grup sohbetlerindeki okumaları da izle. Varsayılan kapalı — gruplar yoğun olabilir"; +"Refreshing…" = "Yenileniyor…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "Yeni bir parmak izi oluştur"; +"New device fingerprint" = "Yeni cihaz parmak izi"; +"Roll new ID" = "Yeni kimlik oluştur"; +"Roll + clear IG data" = "Oluştur + IG verilerini temizle"; +"Generate fresh device identifiers" = "Yeni cihaz tanımlayıcıları oluştur"; +"Enter ID manually…" = "Kimliği elle gir…"; +"Manual device ID" = "Elle cihaz kimliği"; +"Paste or type the UUID this device should report." = "Bu cihazın bildirmesi gereken UUID'yi yapıştırın veya yazın."; +"Device ID set" = "Cihaz kimliği ayarlandı"; +"New fingerprint ready" = "Yeni parmak izi hazır"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "Yeni cihaz kimliğinin temiz bir başlangıçtan itibaren uygulanması için Instagram şimdi yeniden başlatılsın mı?"; +"Copy current ID" = "Geçerli kimliği kopyala"; +"Revert to my real device ID" = "Gerçek cihaz kimliğime dön"; +"Restore the original, stop masking" = "Orijinali geri yükle, maskelemeyi durdur"; +"Spoofing off" = "Sahteleme kapalı"; +"Relaunch now" = "Şimdi yeniden başlat"; +"Relaunch to apply" = "Uygulamak için yeniden başlatın"; +"Clear device & relaunch" = "Cihazı temizle ve yeniden başlat"; +"Clear device & relaunch?" = "Cihaz temizlensin ve yeniden başlatılsın mı?"; +"Clear & relaunch" = "Temizle ve yeniden başlat"; +"Full reset to a brand-new device" = "Yepyeni bir cihaza tam sıfırlama"; +"Device ID" = "Cihaz kimliği"; +"Hide button until relaunch" = "Yeniden başlatana kadar düğmeyi gizle"; +"Device identity" = "Cihaz kimliği"; +"Masked" = "Maskeli"; +"Real" = "Gerçek"; +"Show button on login screen" = "Giriş ekranında düğmeyi göster"; +"Floating Device ID button while signed out" = "Oturum kapalıyken yüzen Cihaz Kimliği düğmesi"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Instagram'ın bu cihazın parmak izini çıkarmak için kullandığı tanımlayıcıları maskeler: cihaz kimliği, aile cihaz kimliği, satıcı kimliği ve makine kimliği. Değişiklikler yeniden başlatmadan sonra uygulanır. Aynı denetimler giriş ekranında da görünür."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "Kayıtlı tüm oturumları, çerezleri ve saklanan cihaz kimliğini unutur, ardından Instagram'ı yepyeni bir cihaz olarak başlatmak için yeniden başlatır. Sonrasında tekrar giriş yapmanız gerekir."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "Yeni bir cihaz kimliği, aile cihaz kimliği, satıcı kimliği oluşturur ve makine kimliğini temizler; böylece Instagram yeni bir cihaz olarak yeniden kaydolur. Ya da tam sıfırlama için kayıtlı oturumları da silin."; +"Apple attestation" = "Apple doğrulaması"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Instagram'ın Apple cihaz doğrulamasını (DeviceCheck ve App Attest) engeller. Bunlar donanıma bağlıdır ve değiştirilemez; bu yüzden sıfırlamalar boyunca cihazı ilişkilendirmeye devam ederler. Engellemek, Instagram'ın bunları desteklemeyen bir cihaz görmesini sağlar. Yalnızca maskeleme açıkken çalışır."; +"Block Apple device attestation" = "Apple cihaz doğrulamasını engelle"; +"Stop the hardware attestation that links the device" = "Cihazı ilişkilendiren donanım doğrulamasını durdur"; +"Block Apple attestation: %@" = "Apple doğrulamasını engelle: %@"; +"Attestation blocked" = "Doğrulama engellendi"; +"Attestation allowed" = "Doğrulamaya izin verildi"; +"Roll + clear, then sign in fresh" = "Oluştur + temizle, ardından yeniden giriş yap"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "Takip istekleri"; +"Show follow requests" = "Takip isteklerini göster"; +"Check now" = "Şimdi kontrol et"; +"Reset tracked data" = "İzlenen verileri sıfırla"; +"Enable tracker" = "İzleyiciyi etkinleştir"; +"Log requests and check outcomes" = "İstekleri kaydet ve sonuçları kontrol et"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "Gönderdiğin ve aldığın takip isteklerini kaydeder ve sen yanıtlamadan isteği iptal edenleri yakalar. Tümü cihazda."; +"What to track" = "Ne izlenecek"; +"Requests I send" = "Gönderdiğim istekler"; +"To private accounts" = "Gizli hesaplara"; +"Requests I receive" = "Aldığım istekler"; +"From people who want to follow you" = "Seni takip etmek isteyenlerden"; +"Background check" = "Arka planda kontrol"; +"Check interval" = "Kontrol aralığı"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "Uygulama açıkken sonuçların ne sıklıkta kontrol edileceği. Ayrıca açılışta ve listeyi açtığında da kontrol eder."; +"Off (manual only)" = "Kapalı (yalnızca manuel)"; +"Every 15 minutes" = "Her 15 dakikada"; +"Every 30 minutes" = "Her 30 dakikada"; +"Every hour" = "Her saat"; +"Every 6 hours" = "Her 6 saatte"; +"My request accepted" = "İsteğim kabul edildi"; +"A private account accepted you" = "Gizli bir hesap seni kabul etti"; +"My request declined" = "İsteğim reddedildi"; +"No longer pending" = "Artık beklemede değil"; +"New request received" = "Yeni istek alındı"; +"Someone asked to follow you" = "Biri seni takip etmek istedi"; +"Request withdrawn" = "İstek geri çekildi"; +"Someone cancelled their request" = "Biri isteğini iptal etti"; +"Sent by me" = "Gönderdiklerim"; +"Received" = "Alındı"; +"Sent" = "Gönderildi"; +"Accepted" = "Kabul edildi"; +"Rejected" = "Reddedildi"; +"Requested" = "İstendi"; +"Approved" = "Onaylandı"; +"Withdrawn" = "Geri çekildi"; +"No follow requests tracked yet" = "Henüz izlenen takip isteği yok"; +"Cancel requests" = "İstekleri iptal et"; +"Delete %lu record(s) from history?" = "Geçmişten %lu kayıt silinsin mi?"; +"Cancel %lu pending request(s)?" = "%lu bekleyen istek iptal edilsin mi?"; +"Follow back %lu account(s)?" = "%lu hesabı geri takip et?"; +"Clear all tracked follow requests?" = "İzlenen tüm takip istekleri temizlensin mi?"; +"Reset tracked follow requests for this account?" = "Bu hesap için izlenen takip istekleri sıfırlansın mı?"; +"Enable the tracker first" = "Önce izleyiciyi etkinleştir"; +"Checking…" = "Kontrol ediliyor…"; +"%ld request(s) updated" = "%ld istek güncellendi"; +"No changes" = "Değişiklik yok"; +"Working…" = "İşleniyor…"; +"Follow request accepted" = "Takip isteği kabul edildi"; +"%@ accepted your request" = "%@ isteğini kabul etti"; +"Follow request declined" = "Takip isteği reddedildi"; +"%@ is no longer pending" = "%@ artık beklemede değil"; +"New follow request" = "Yeni takip isteği"; +"%@ asked to follow you" = "%@ seni takip etmek istedi"; +"Follow request withdrawn" = "Takip isteği geri çekildi"; +"%@ withdrew their request" = "%@ isteğini geri çekti"; +"Follow requests log" = "Takip istekleri günlüğü"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Instagram'ın ücretli özelliklerini aç"; +"Turn on Instagram's paid subscriber features inside the app." = "Instagram'ın ücretli abone özelliklerini uygulama içinde etkinleştir."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus, Instagram'ın ücretli aboneliğidir. Bu anahtarlar, özelliklerini uygulama içinde etkinleştirir. Bazıları tamamen çalışır. Diğerleri yalnızca seçeneği gösterir; çünkü içerik Instagram sunucularından yüklenir ve hâlâ gerçek bir abonelik gerektirir, bu yüzden boş görünebilir veya hiçbir şey yapmayabilir. İstediklerini aç ve Uygula'ya dokun. Instagram üst üste üç kez açılmazsa, bu anahtarlar kendini sıfırlar."; +"Turn everything on" = "Hepsini aç"; +"Turn everything off" = "Hepsini kapat"; +"Every Instagram Plus feature turns off and Instagram restarts." = "Tüm Instagram Plus özellikleri kapanır ve Instagram yeniden başlar."; +"Story peek" = "Hikaye önizleme"; +"Hold a story in the tray to preview it without opening it." = "Açmadan önizlemek için tepsideki bir hikayeye uzun bas."; +"Story fonts" = "Hikaye yazı tipleri"; +"Adds the subscriber fonts when you add text to a story." = "Bir hikayeye metin eklerken abone yazı tiplerini ekler."; +"Search story viewers" = "Hikaye görüntüleyenlerde ara"; +"Search the list of people who viewed your story." = "Hikayeni görüntüleyenlerin listesinde ara."; +"Viewer timestamps" = "Görüntüleme zamanları"; +"Shows when each person viewed your story." = "Her kişinin hikayeni ne zaman görüntülediğini gösterir."; +"Silent post to profile" = "Profile sessiz paylaşım"; +"Share to your profile without notifying your followers." = "Takipçilerine bildirim göndermeden profilinde paylaş."; +"Silent post to highlights" = "Öne çıkanlara sessiz paylaşım"; +"Add to a highlight without notifying your followers." = "Takipçilerine bildirim göndermeden bir öne çıkana ekle."; +"Story rewatch" = "Hikayeyi tekrar izle"; +"Rewatch a story right after it finishes." = "Bir hikayeyi bittikten hemen sonra tekrar izle."; +"Story extend" = "Hikaye süresini uzat"; +"Keep your story up longer than 24 hours." = "Hikayeni 24 saatten uzun süre yayında tut."; +"Story spotlight" = "Hikaye vitrini"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "Hikayeni daha fazla kişiye ulaştır. Instagram'dan yüklenir, bu yüzden çalışmayabilir."; +"Story super likes" = "Hikaye süper beğeniler"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "Hikayelere süper beğeni gönder. Instagram'dan yüklenir, bu yüzden çalışmayabilir."; +"Message peek" = "Mesaj önizleme"; +"Hold a chat in the inbox to preview it." = "Önizlemek için gelen kutusundaki bir sohbete uzun bas."; +"Chat fonts" = "Sohbet yazı tipleri"; +"Adds the subscriber fonts in direct messages." = "Direkt mesajlarda abone yazı tiplerini ekler."; +"Chat themes" = "Sohbet temaları"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "Premium sohbet temalarını açar. Instagram'dan yüklenir, bu yüzden çalışmayabilir."; +"App icons" = "Uygulama simgeleri"; +"Opens the alternate app icon picker." = "Alternatif uygulama simgesi seçiciyi açar."; +"Bio font" = "Biyografi yazı tipi"; +"Use a subscriber font for your bio." = "Biyografin için bir abone yazı tipi kullan."; +"Custom story lists" = "Özel hikaye listeleri"; +"Make lists to pick exactly who sees a story." = "Bir hikayeyi tam olarak kimin göreceğini seçmek için listeler oluştur."; +"More pinned posts" = "Daha fazla sabitlenmiş gönderi"; +"Pin more posts to the top of your profile." = "Profilinin üstüne daha fazla gönderi sabitle."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu kayıt"; +"1 recording" = "1 kayıt"; +"30 days" = "30 gün"; +"7 days" = "7 gün"; +"90 days" = "90 gün"; +"Adds a record button to the call screen" = "Arama ekranına bir kayıt düğmesi ekler"; +"Also show recordings in the RyukGram gallery under Calls" = "Kayıtları RyukGram galerisinde Aramalar altında da göster"; +"Auto-delete old recordings" = "Eski kayıtları otomatik sil"; +"Auto-record calls" = "Aramaları otomatik kaydet"; +"Auto-record ignore list" = "Otomatik kayıt yok sayma listesi"; +"Auto-record ignored" = "Otomatik kayıt yok sayıldı"; +"Auto-record on" = "Otomatik kayıt açık"; +"Block mute signal" = "Sessize alma sinyalini engelle"; +"Both sides" = "Her iki taraf"; +"Browse saved calls, grouped by person" = "Kaydedilen aramalara kişiye göre gruplanmış olarak gözat"; +"Call" = "Arama"; +"Call recorded" = "Arama kaydedildi"; +"Call recording" = "Arama kaydı"; +"Call recordings" = "Arama kayıtları"; +"Camera position" = "Kamera konumu"; +"Can't play" = "Oynatılamıyor"; +"Can't record" = "Kaydedilemiyor"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "Otomatik kayıttan hariç tutulan sohbetler — eklemek için aramada kayıt düğmesine uzun basın"; +"Could not save the recording." = "Kayıt kaydedilemedi."; +"Could not start the recorder." = "Kaydedici başlatılamadı."; +"Delete all" = "Tümünü sil"; +"Delete all recordings" = "Tüm kayıtları sil"; +"Delete all recordings?" = "Tüm kayıtlar silinsin mi?"; +"Drag the overlay where you want it" = "Yer paylaşımını istediğiniz yere sürükleyin"; +"Drag your camera window to any corner or edge." = "Kamera pencerenizi herhangi bir köşeye veya kenara sürükleyin."; +"Enable call recording" = "Arama kaydını etkinleştir"; +"Export all" = "Tümünü dışa aktar"; +"Full screen" = "Tam ekran"; +"Group call" = "Grup araması"; +"Ignore auto-record for this chat" = "Bu sohbet için otomatik kaydı yok say"; +"Ignored chats aren't auto-recorded. You can still record manually." = "Yok sayılan sohbetler otomatik kaydedilmez. Yine de manuel olarak kaydedebilirsiniz."; +"Include my camera" = "Kameramı dahil et"; +"Keep forever" = "Sonsuza dek sakla"; +"Large" = "Büyük"; +"Mute without the other side seeing you muted — your mic is still silenced" = "Karşı taraf sizi sessize aldığınızı görmeden sesi kapatın — mikrofonunuz yine de susturulur"; +"Muted silently" = "Sessizce susturuldu"; +"My camera size" = "Kameramın boyutu"; +"No call audio was captured." = "Hiç arama sesi yakalanmadı."; +"No ignored chats. Long-press the record button in a call to ignore it." = "Yok sayılan sohbet yok. Yok saymak için aramada kayıt düğmesine uzun basın."; +"No recordings" = "Kayıt yok"; +"Off records audio only, even on video calls" = "Kapalıyken görüntülü aramalarda bile yalnızca ses kaydeder"; +"Only me" = "Yalnızca ben"; +"Only them" = "Yalnızca karşı taraf"; +"Open recordings" = "Kayıtları aç"; +"Overlay your camera as a small window on video-call recordings" = "Görüntülü arama kayıtlarında kameranızı küçük bir pencere olarak yerleştirin"; +"Overlay your camera on the recording" = "Kameranızı kaydın üzerine yerleştirin"; +"Record audio from" = "Sesi şuradan kaydet"; +"Record video on video calls" = "Görüntülü aramalarda video kaydet"; +"Record voice and video calls, browse them later" = "Sesli ve görüntülü aramaları kaydedin, sonra gözatın"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "Kaydedilen aramalar yalnızca bu cihazda saklanır. Kayıt sırasında kırmızı bir durum çubuğu göstergesi görünür."; +"Recorded calls will appear here." = "Kaydedilen aramalar burada görünecek."; +"Recording call" = "Arama kaydediliyor"; +"Recording count" = "Kayıt sayısı"; +"Recording failed" = "Kayıt başarısız"; +"Recording name" = "Kayıt adı"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "Karşı tarafı (arama sesi) ve mikrofonunuzu kaydeder. Kayıt sırasında kırmızı bir durum çubuğu göstergesi görünür. Kayıtlar yalnızca bu cihazda saklanır."; +"Remove from ignore list" = "Yok sayma listesinden kaldır"; +"Remove recordings older than the chosen age" = "Seçilen yaştan daha eski kayıtları kaldır"; +"Rename recording" = "Kaydı yeniden adlandır"; +"Search calls" = "Aramalarda ara"; +"Set a custom name for this chat's recordings." = "Bu sohbetin kayıtları için özel bir ad belirleyin."; +"Size of the overlay window" = "Yer paylaşımı penceresinin boyutu"; +"Small" = "Küçük"; +"Starts recording automatically when a call opens" = "Bir arama açıldığında otomatik olarak kaydetmeye başlar"; +"Sync to gallery" = "Galeriye eşitle"; +"The recording file is missing." = "Kayıt dosyası eksik."; +"Them" = "Karşı taraf"; +"Them (full screen)" = "Karşı taraf (tam ekran)"; +"This permanently removes every saved call recording for this account." = "Bu, bu hesap için kaydedilmiş tüm arama kayıtlarını kalıcı olarak kaldırır."; +"Unknown chat" = "Bilinmeyen sohbet"; +"Unmuted" = "Susturma kaldırıldı"; +"Which camera fills the frame" = "Hangi kamera çerçeveyi doldursun"; +"Which side's voice to capture" = "Hangi tarafın sesi yakalansın"; +"You" = "Siz"; +"You (full screen)" = "Siz (tam ekran)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "Kameranız yakalanır ve kaydın üzerine yerleştirilir. Hangi tarafın ekranı dolduracağını, yer paylaşımı boyutunu seçin ve herhangi bir köşeye sürükleyin."; +"Prompt before the call recordings open" = "Arama kayıtları açılmadan önce sor"; +"Prompt before the activity log opens" = "Etkinlik kaydını açmadan önce sor"; +"Mark all as read" = "Tümünü okundu işaretle"; +"Delete %lu chats?" = "%lu sohbet silinsin mi?"; +"This permanently removes their recordings." = "Bu, kayıtlarını kalıcı olarak kaldırır."; + +"Stories archive" = "Hikaye arşivi"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "Tepki verenler"; +"Reacted first" = "Önce tepkiler"; +"Mutual" = "Karşılıklı"; +"Viewers" = "Görüntüleyenler"; +"1 viewer" = "1 görüntüleyen"; +"View viewers" = "Görüntüleyenleri gör"; +"%lu views" = "%lu görüntülenme"; +"%ld likes" = "%ld beğeni"; +"0 views" = "0 görüntülenme"; +"1 like" = "1 beğeni"; +"1 view" = "1 görüntülenme"; +"Photos" = "Fotoğraflar"; +"Oldest" = "En eski"; +"Most viewed" = "En çok görüntülenen"; +"Most reacted" = "En çok tepki alan"; +"Open archive" = "Arşivi aç"; +"Archive settings" = "Arşiv ayarları"; +"Archiving" = "Arşivleme"; +"Enable stories archive" = "Hikaye arşivini etkinleştir"; +"Save your stories before they expire" = "Hikayelerini süresi dolmadan kaydet"; +"Saves each story you post, with its photo or video, kept separately for each account." = "Paylaştığın her hikayeyi fotoğrafı veya videosuyla birlikte, her hesap için ayrı tutarak kaydeder."; +"Save and update viewers" = "Görüntüleyenleri kaydet ve güncelle"; +"Keep each story's viewers and likers, refreshed to the final list" = "Her hikayenin görüntüleyenlerini ve beğenenlerini, son listeye göre yenilenmiş olarak sakla"; +"Update viewers" = "Görüntüleyenleri güncelle"; +"How often to refresh viewers for stories still live" = "Hâlâ yayında olan hikayeler için görüntüleyenlerin ne sıklıkla yenileneceği"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "Bir hikayenin görüntüleyen listesi tam bir gün boyunca büyümeye devam eder, ardından Instagram onu bir gün daha sunar. Otomatik güncelleme, bir hikaye bir günlük olduğunda son listeyi alır, böylece sakladığın sayılar eksiksiz olur."; +"Notify me about pinned viewers" = "Sabitlenen görüntüleyenler hakkında beni bilgilendir"; +"A heads-up when a pinned viewer sees or likes your story" = "Sabitlenen bir görüntüleyen hikayeni gördüğünde veya beğendiğinde bir hatırlatma"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "Sabitlenen bir görüntüleyen hikayeni gördüğünde veya beğendiğinde bildirim al. Görüntüleyenleri sabitle ve listeyi görüntüleyen ayarlarından yönet."; +"Viewer list & pins" = "Görüntüleyen listesi & sabitlemeler"; +"Turn on the viewer list and manage pinned viewers" = "Görüntüleyen listesini aç ve sabitlenen görüntüleyenleri yönet"; +"Turn on a custom viewer list to pin, search and sort viewers" = "Görüntüleyenleri sabitlemek, aramak ve sıralamak için özel bir görüntüleyen listesi aç"; +"Tick several to combine them." = "Birleştirmek için birkaçını işaretle."; +"Select stories" = "Hikayeleri seç"; +"No archived stories yet. Post a story and it appears here." = "Henüz arşivlenmiş hikaye yok. Bir hikaye paylaş, burada görünsün."; +"Archiving is off. Enable it in the archive settings, then post a story." = "Arşivleme kapalı. Arşiv ayarlarından etkinleştir, ardından bir hikaye paylaş."; +"Delete story?" = "Hikaye silinsin mi?"; +"This removes the archived photo or video and its viewers." = "Bu, arşivlenmiş fotoğrafı veya videoyu ve görüntüleyenlerini kaldırır."; +"Delete all stories?" = "Tüm hikayeler silinsin mi?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "Bu hesap için arşivlenmiş her hikayeyi ve görüntüleyenlerini kaldırır. Bu geri alınamaz."; +"Delete %lu archived stories and their viewers?" = "%lu arşivlenmiş hikaye ve görüntüleyenleri silinsin mi?"; +"Pinned viewer saw your story" = "Sabitlenen görüntüleyen hikayeni gördü"; +"Pinned viewer liked your story" = "Sabitlenen görüntüleyen hikayeni beğendi"; +"Pinned viewer reacted to your story" = "Sabitlenen görüntüleyen hikayene tepki verdi"; +"Pinned viewers on your story" = "Hikayendeki sabitlenen görüntüleyenler"; +"%lu pinned viewers just saw, liked or reacted" = "%lu sabitlenen görüntüleyen az önce gördü, beğendi veya tepki verdi"; +"A pinned viewer" = "Sabitlenen bir görüntüleyen"; +"On each launch" = "Her açılışta"; diff --git a/src/Localization/Resources/vi.lproj/Localizable.strings b/src/Localization/Resources/vi.lproj/Localizable.strings new file mode 100644 index 0000000..07bb8fa --- /dev/null +++ b/src/Localization/Resources/vi.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "Trong tương lai: Nhấn giữ vào biểu tượng ba gạch ở góc trên bên phải trang hồ sơ để mở lại cài đặt RyukGram."; +"settings.firstrun.ok" = "Tôi hiểu rồi!"; +"settings.firstrun.title" = "Thông tin cài đặt RyukGram"; +"settings.language.english_only" = "RyukGram hiện chỉ hỗ trợ tiếng Anh. Các ngôn ngữ khác đã được chuẩn bị và đang chờ bản dịch — hãy giúp dịch sang ngôn ngữ của bạn bằng cách làm theo hướng dẫn ngắn trong README."; +"settings.language.help_translate" = "Giúp dịch"; +"settings.language.system" = "Mặc định hệ thống"; +"settings.language.title" = "Ngôn ngữ"; +"settings.language.restart.message" = "Đã cập nhật cài đặt. Khởi động lại Instagram để các menu, nút và thông báo ở những nơi khác trong ứng dụng cũng sử dụng ngôn ngữ mới."; +"settings.language.restart.title" = "Khởi động lại để áp dụng mọi nơi"; +"settings.language.available" = "Khả dụng"; +"settings.results.many" = "%lu kết quả"; +"settings.results.one" = "%lu kết quả"; +"settings.search.placeholder" = "Tìm kiếm cài đặt"; +"settings.title" = "Cài đặt RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "Biểu tượng nút hành động"; +"Adds a copy option to the comment long-press menu" = "Thêm tùy chọn sao chép vào menu nhấn giữ bình luận"; +"Adds a download button next to share/save on the reels audio page" = "Thêm nút tải xuống cạnh nút chia sẻ/lưu trên trang âm thanh reel"; +"Adds download, copy and expand options to GIF and image comments" = "Thêm tùy chọn tải xuống, sao chép và phóng to cho bình luận GIF và ảnh"; +"Allow video in photo sticker" = "Cho phép video trong sticker ảnh"; +"Alternate icons are not supported" = "Không hỗ trợ biểu tượng thay thế"; +"Anonymous live viewing" = "Xem live ẩn danh"; +"App Icon" = "Biểu tượng ứng dụng"; +"Audio page" = "Trang âm thanh"; +"Auto-reveals sensitive media" = "Tự động hiển thị media nhạy cảm"; +"Block surveys" = "Chặn khảo sát"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "Chặn tín hiệu số lượng người xem để người phát không thấy bạn — bạn cũng sẽ không thấy số lượng người xem"; +"Browser" = "Trình duyệt"; +"Change the app icon from the bundled icons" = "Đổi biểu tượng ứng dụng từ các biểu tượng có sẵn"; +"Choose Icon" = "Chọn biểu tượng"; +"Choose which surfaces hide ads" = "Chọn các khu vực ẩn quảng cáo"; +"Comments" = "Bình luận"; +"Commerce carousels in comments and shoppable CTAs on reels" = "Băng chuyền mua sắm trong bình luận và CTA mua sắm trên reels"; +"Copy comment text" = "Sao chép văn bản bình luận"; +"Copy description" = "Sao chép mô tả"; +"Long press a caption to copy its text" = "Nhấn giữ chú thích để sao chép nội dung"; +"Custom sticker colors" = "Màu sticker tùy chỉnh"; +"Custom colors aren't supported for this sticker" = "Sticker này không hỗ trợ màu tùy chỉnh"; +"Date format" = "Định dạng ngày"; +"Disable app haptics" = "Tắt rung phản hồi ứng dụng"; +"Disables haptics/vibrations within the app" = "Tắt rung/phản hồi rung trong ứng dụng"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "Tắt kính lỏng cho các tài khoản được bật mặc định. Ghi đè các tùy chọn ở trên"; +"Do not save recent searches" = "Không lưu tìm kiếm gần đây"; +"Download GIF & image comments" = "Tải bình luận GIF và ảnh"; +"Download image" = "Tải hình ảnh"; +"Embed domain" = "Tên miền nhúng"; +"Embed domain: %@" = "Tên miền nhúng: %@"; +"Enable liquid glass buttons" = "Bật nút kính lỏng"; +"Enable liquid glass surfaces" = "Bật bề mặt kính lỏng"; +"Enable teen app icons" = "Bật biểu tượng ứng dụng teen"; +"Enables experimental liquid glass buttons" = "Bật nút kính lỏng thử nghiệm"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "Bật thanh tab kính lỏng, điều hướng nổi và các thành phần UI khác"; +"End" = "Kết thúc"; +"Experimental features" = "Tính năng thử nghiệm"; +"Explore & search" = "Khám phá & tìm kiếm"; +"Failed to change icon" = "Không thể đổi biểu tượng"; +"Fixed" = "Cố định"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "Cố định ngăn thu nhỏ. Ẩn sẽ làm nó biến mất khi cuộn xuống"; +"Focus/distractions" = "Tập trung/xao nhãng"; +"Force liquid glass off" = "Buộc tắt kính lỏng"; +"Force progressive blur" = "Buộc làm mờ chuyển tiếp"; +"General" = "Chung"; +"Gradient color" = "Màu gradient"; +"Hide ads" = "Ẩn quảng cáo"; +"Hide explore posts grid" = "Ẩn lưới bài viết khám phá"; +"Hide friends map" = "Ẩn bản đồ bạn bè"; +"Hide Meta AI" = "Ẩn Meta AI"; +"Hide metrics" = "Ẩn chỉ số"; +"Hide notes tray" = "Ẩn khay ghi chú"; +"Hide on scroll" = "Ẩn khi cuộn"; +"Hide TestFlight popup" = "Ẩn popup TestFlight"; +"Hide trending searches" = "Ẩn tìm kiếm xu hướng"; +"Hide UI on capture" = "Ẩn UI khi chụp"; +"Removes suggested accounts to follow outside the feed" = "Xóa các tài khoản gợi ý theo dõi ngoài bảng feed"; +"Hides like/comment/share counts on posts and reels" = "Ẩn số lượt thích/bình luận/chia sẻ trên bài viết và reel"; +"Removes the friends map icon from the notes tray" = "Xóa biểu tượng bản đồ bạn bè khỏi khay ghi chú"; +"Removes the suggested posts grid on the explore tab" = "Xóa lưới bài viết gợi ý trong tab Khám phá"; +"Strips the Meta AI buttons and entry points from the app" = "Loại bỏ các nút và điểm truy cập Meta AI khỏi ứng dụng"; +"Hides the notes tray in the DM inbox" = "Ẩn khay ghi chú trong hộp thư DM"; +"Removes suggested broadcast channels from your inbox" = "Xóa các kênh phát sóng gợi ý khỏi hộp thư"; +"Hide DM search suggestions" = "Ẩn gợi ý tìm kiếm tin nhắn"; +"Removes suggested accounts and channels from direct message search" = "Xóa các tài khoản và kênh được đề xuất khỏi tìm kiếm tin nhắn trực tiếp"; +"Removes trending searches under the explore search bar" = "Xóa các tìm kiếm thịnh hành dưới thanh tìm kiếm Khám phá"; +"Hold down on the Instagram logo to change the app icon" = "Nhấn giữ logo Instagram để đổi biểu tượng ứng dụng"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "Giữ hiệu ứng làm mờ mép cuộn của iOS 26 luôn hiển thị thay vì để nó mờ dần"; +"Lets the photo sticker picker show videos too, not just photos" = "Cho phép bộ chọn sticker ảnh hiển thị cả video, không chỉ ảnh"; +"Liquid glass tab bar" = "Thanh tab kính lỏng"; +"Live" = "Live"; +"Hold the eyedropper in stories to pick an exact text color" = "Giữ ống hút màu trong story để chọn màu chữ chính xác"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "Nhấn giữ bánh xe màu trong trình chỉnh sửa sticker để chọn màu đặc hoặc gradient bất kỳ"; +"Long-press the heart button in a live to hide or show the comments" = "Nhấn giữ nút tim trong live để ẩn hoặc hiện bình luận"; +"Long-press the search tab to open a copied Instagram link" = "Nhấn giữ tab tìm kiếm để mở liên kết Instagram đã sao chép"; +"Master switch. When off, all per-surface toggles below are ignored." = "Công tắc chính. Khi tắt, mọi nút bật/tắt theo từng khu vực bên dưới đều bị bỏ qua."; +"No suggested chats" = "Không có cuộc trò chuyện được đề xuất"; +"No suggested users" = "Không có người dùng được đề xuất"; +"Notes" = "Ghi chú"; +"Open app icon picker" = "Mở bộ chọn biểu tượng ứng dụng"; +"Open link from clipboard" = "Mở liên kết từ khay nhớ tạm"; +"Open links in external browser" = "Mở liên kết trong trình duyệt ngoài"; +"Opens links in Safari instead of Instagram's in-app browser" = "Mở liên kết bằng Safari thay vì trình duyệt trong ứng dụng của Instagram"; +"Privacy" = "Quyền riêng tư"; +"Removes ads across enabled surfaces" = "Xóa quảng cáo trên các khu vực đã bật"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "Xóa igsh, utm_source và các tham số theo dõi khác khỏi liên kết chia sẻ"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "Xóa lớp theo dõi của Instagram (l.instagram.com) và tham số UTM/fbclid khỏi URL"; +"Replace domain in shared links" = "Thay tên miền trong liên kết chia sẻ"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "Thay thời gian tương đối của IG (\"3 ngày trước\") bằng định dạng tùy chỉnh. Chọn nơi áp dụng trong bộ chọn."; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "Viết lại liên kết sao chép/chia sẻ để dùng tên miền hỗ trợ nhúng xem trước trên Discord, Telegram, v.v."; +"Stops search bars from saving your recent searches" = "Ngăn thanh tìm kiếm lưu các tìm kiếm gần đây của bạn"; +"Selected" = "Đã chọn"; +"Sharing" = "Chia sẻ"; +"Shopping" = "Mua sắm"; +"Skip sensitive content covers" = "Bỏ qua lớp che nội dung nhạy cảm"; +"Solid color" = "Màu đặc"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "Bài đăng được tài trợ trong bảng tin chính, theo ngữ cảnh, video và nối tiếp"; +"Sponsored posts on the explore grid" = "Bài đăng được tài trợ trên lưới khám phá"; +"Stops Instagram's in-app surveys and feedback prompts" = "Chặn các khảo sát và lời nhắc phản hồi trong ứng dụng Instagram"; +"Sponsored reels in the sundial feed" = "Reels được tài trợ trong bảng tin sundial"; +"Start" = "Bắt đầu"; +"Story ads and sponsored entries in the story tray" = "Quảng cáo tin và mục được tài trợ trong khay tin"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "Huy hiệu thống kê trên bài viết và reels trong tìm kiếm và khám phá. Mở Chi tiết thẻ để chọn thống kê hiển thị, sắp xếp lại rồi áp dụng."; +"Strip tracking from links" = "Xóa theo dõi khỏi liên kết"; +"Strip tracking params" = "Xóa tham số theo dõi"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "Ẩn thông báo \"Đã đến lúc cập nhật Instagram Beta\""; +"Tap to apply" = "Chạm để áp dụng"; +"The selected icon will be saved and shown here the next time you open this page." = "Biểu tượng đã chọn sẽ được lưu và hiển thị tại đây vào lần tiếp theo bạn mở trang này."; +"Toggle live comments" = "Bật/tắt bình luận trực tiếp"; +"Use detailed color picker" = "Dùng bộ chọn màu chi tiết"; +"Used across feed, stories, reels, and DMs." = "Dùng cho bảng tin, tin, reel và DM"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld ngày trước"; +"%ld days ago" = "%ld ngày trước"; +"%ld hour ago" = "%ld giờ trước"; +"%ld hours ago" = "%ld giờ trước"; +"%ld minute ago" = "%ld phút trước"; +"%ld minutes ago" = "%ld phút trước"; +"%ld week ago" = "%ld tuần trước"; +"%ld weeks ago" = "%ld tuần trước"; +"%ldd" = "%ldng"; +"%ldh" = "%ldg"; +"%ldm" = "%ldp"; +"%ldw" = "%ldt"; +"Always ask" = "Luôn hỏi"; +"Balanced" = "Cân bằng"; +"Block all" = "Chặn tất cả"; +"Block selected" = "Chặn đã chọn"; +"Button" = "Nút"; +"Date format — %@" = "Định dạng ngày — %@"; +"Default" = "Mặc định"; +"Disabled" = "Đã tắt"; +"Download and share" = "Tải xuống và chia sẻ"; +"Download to Photos" = "Tải vào Ảnh"; +"Save with music" = "Lưu kèm nhạc"; +"Gallery with music" = "Thư viện kèm nhạc"; +"Save image (no music)" = "Lưu ảnh (không nhạc)"; +"Gallery image (no music)" = "Thư viện ảnh (không nhạc)"; +"Photo with music" = "Ảnh kèm nhạc"; +"Enabled" = "Đã bật"; +"Expand" = "Mở rộng"; +"Explore" = "Khám phá"; +"Fast" = "Nhanh"; +"Feed" = "Bảng tin"; +"Feed posts" = "Bài đăng trên Feed"; +"High" = "Cao"; +"Inbox" = "Hộp thư"; +"just now" = "vừa xong"; +"Low" = "Thấp"; +"Max" = "Tối đa"; +"Medium" = "Trung bình"; +"Mute/Unmute" = "Tắt/Bật âm thanh"; +"Notes, comments, stories" = "Ghi chú, bình luận, story"; +"now" = "ngay bây giờ"; +"Open menu" = "Mở menu"; +"Pause/Play" = "Tạm dừng/Phát"; +"Profile" = "Hồ sơ"; +"Quality" = "Chất lượng"; +"Reels" = "Reels"; +"Requires restart" = "Cần khởi động lại"; +"Save to Photos" = "Lưu vào Ảnh"; +"Share sheet" = "Bảng chia sẻ"; +"Standard" = "Tiêu chuẩn"; +"Toggle" = "Bật/Tắt"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "Bảng tin dạng lưới"; +"Browse your home feed as a grid of posts" = "Xem bảng tin trang chủ dưới dạng lưới bài viết"; +"Hide stories in grid" = "Ẩn tin trong lưới"; +"Taller cells" = "Ô cao hơn"; +"Portrait tiles instead of squares" = "Ô dọc thay vì ô vuông"; +"Open post" = "Mở bài viết"; +"View profile" = "Xem hồ sơ"; +"Like" = "Thích"; +"Liked" = "Đã thích"; +"Unlike" = "Bỏ thích"; +"Unliked" = "Đã bỏ thích"; +"Followed" = "Đã theo dõi"; +"Unfollowed" = "Đã bỏ theo dõi"; +"Couldn't update like" = "Không thể cập nhật lượt thích"; +"Couldn't update follow" = "Không thể cập nhật theo dõi"; +"Follow status" = "Trạng thái theo dõi"; +"Shares" = "Lượt chia sẻ"; +"Relative" = "Tương đối"; +"Date and time" = "Ngày và giờ"; +"You're all caught up" = "Bạn đã xem hết"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "Thay bảng tin chính bằng lưới bài viết. Chuyển sang bảng tin Instagram vẫn giữ tính năng bật và trả lại bảng tin ngay. Chụm để đổi số cột, chạm một bài viết để mở. Công tắc Dành cho bạn / Đang theo dõi vẫn đồng bộ với Bảng tin chính."; +"Switch button" = "Nút chuyển"; +"Hold the heart button" = "Giữ nút trái tim"; +"Floating button" = "Nút nổi"; +"How to switch" = "Cách chuyển"; +"Hold the heart in Instagram's header" = "Giữ trái tim trên đầu trang Instagram"; +"A small round button on the feed" = "Một nút tròn nhỏ trên bảng tin"; +"Button position" = "Vị trí nút"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "Kéo nút đến nơi bạn muốn. Các dải mờ là đầu trang và thanh tab của Instagram."; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "Chuyển giữa lưới và bảng tin Instagram mà không tắt lưới. Khi tắt, lối tắt trên thanh chính là cách duy nhất."; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "Nút không bao giờ nằm dưới đầu trang hay thanh tab. Giữ nút trên bảng tin để quay lại đây."; +"Live preview" = "Xem trước trực tiếp"; +"Columns" = "Số cột"; +"Post info" = "Thông tin bài viết"; +"Reorder and toggle stats on each tile" = "Sắp xếp lại và bật/tắt thống kê trên mỗi ô"; +"Info on each post" = "Thông tin trên mỗi bài viết"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "Bật hoặc tắt từng mục. Kéo tay cầm ≡ để sắp xếp lại cách chúng xếp chồng trên ô."; +"Show avatar" = "Hiển thị ảnh đại diện"; +"Media type badge" = "Huy hiệu loại phương tiện"; +"Restores the default post info, order and options for the grid feed." = "Khôi phục thông tin bài viết, thứ tự và tùy chọn mặc định cho bảng tin dạng lưới."; +"Views" = "Lượt xem"; +"Action button" = "Nút hành động"; +"Adds 'Profile picture' to story tray long-press menus" = "Thêm 'Ảnh đại diện' vào menu nhấn giữ khay tin"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Thêm nút hành động RyukGram bên dưới mỗi bài viết bảng tin với các mục tải xuống/chia sẻ/sao chép/mở rộng/đăng lại. Chạm sẽ mở menu theo mặc định; thay đổi hành vi chạm bên dưới."; +"Choose Instagram's default feed or force the Following feed" = "Chọn bảng tin mặc định của Instagram hoặc buộc dùng bảng tin Đang theo dõi"; +"Main feed" = "Bảng tin chính"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "Kiểm soát thời điểm và cách bảng tin làm mới. Làm mới nền xảy ra khi quay lại ứng dụng sau khoảng 10 phút. Làm mới nút Trang chủ xảy ra khi chạm vào tab Trang chủ khi đã ở trong đó."; +"Confirm feed refresh" = "Xác nhận làm mới bảng tin"; +"Shows an alert before a pull-to-refresh reloads the feed" = "Hiển thị cảnh báo trước khi kéo để làm mới tải lại bảng tin"; +"Refresh stories only" = "Chỉ làm mới tin"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "Kéo để làm mới sẽ tải lại khay tin mà không làm mới bảng tin"; +"Refresh feed?" = "Làm mới bảng tin?"; +"Default tap action" = "Hành động chạm mặc định"; +"Disable background refresh" = "Tắt làm mới nền"; +"Disable home button refresh" = "Tắt làm mới nút Trang chủ"; +"Disable home button scroll" = "Tắt cuộn nút Trang chủ"; +"Disable video autoplay" = "Tắt tự động phát video"; +"Hide" = "Ẩn"; +"Hide entire feed" = "Ẩn toàn bộ bảng tin"; +"Hide repost button" = "Ẩn nút đăng lại"; +"Hide stories tray" = "Ẩn khay tin"; +"Hide suggested stories" = "Ẩn tin được đề xuất"; +"Hide story highlights" = "Ẩn tin nổi bật"; +"Removes resurfaced highlights from the stories tray in feed" = "Xóa tin nổi bật xuất hiện lại khỏi thanh tin trong bảng tin"; +"Hides suggested accounts" = "Ẩn tài khoản được đề xuất"; +"Hides suggested reels" = "Ẩn reel được đề xuất"; +"Hides suggested threads posts" = "Ẩn bài viết Threads được đề xuất"; +"Hides the repost button on feed posts" = "Ẩn nút đăng lại trên bài viết bảng tin"; +"Hides the story tray at the top" = "Ẩn khay tin ở phía trên"; +"Inserts a button row below like/comment/share on each post" = "Chèn hàng nút bên dưới thích/bình luận/chia sẻ trên mỗi bài viết"; +"Long press on media to expand in full-screen viewer" = "Nhấn giữ media để mở rộng trong trình xem toàn màn hình"; +"Start media muted" = "Bắt đầu media tắt tiếng"; +"Expanded videos open with sound off" = "Video mở rộng mở với âm thanh tắt"; +"Enhanced media resolution" = "Độ phân giải media nâng cao"; +"Media saving" = "Lưu media"; +"Spoof device profile so IG serves higher-quality images" = "Giả lập hồ sơ thiết bị để IG cung cấp hình ảnh chất lượng cao hơn"; +"Media" = "Phương tiện"; +"Media zoom" = "Thu phóng media"; +"No suggested for you" = "Không có đề xuất cho bạn"; +"No suggested posts" = "Không có bài viết được đề xuất"; +"No suggested reels" = "Không có reel được đề xuất"; +"No suggested threads" = "Không có Threads được đề xuất"; +"Prevents feed from reloading when returning from background" = "Ngăn bảng tin tải lại khi quay lại từ nền"; +"Prevents videos from playing automatically" = "Ngăn video tự động phát"; +"Refresh" = "Làm mới"; +"Removes all content from your home feed" = "Xóa toàn bộ nội dung khỏi bảng tin trang chủ"; +"Removes suggested accounts from the stories tray" = "Xóa tài khoản được đề xuất khỏi khay tin"; +"Removes suggested posts" = "Xóa bài viết được đề xuất"; +"Scroll to top without refreshing when tapping Home" = "Cuộn lên đầu mà không làm mới khi nhấn Trang chủ"; +"Show action button" = "Hiển thị nút hành động"; +"Show date" = "Hiển thị ngày"; +"Stories tray" = "Khay tin"; +"Tapping Home does nothing when already on feed" = "Nhấn Trang chủ sẽ không làm gì khi đang ở bảng tin"; +"Tray long-press actions" = "Hành động nhấn giữ khay"; +"Composer doesn't accept GIFs" = "Trình soạn không chấp nhận GIF"; +"Copy GIF link" = "Sao chép liên kết GIF"; +"Copy image link" = "Sao chép liên kết hình ảnh"; +"Custom GIF in comments" = "GIF tùy chỉnh trong bình luận"; +"Favorite GIFs" = "GIF yêu thích"; +"Long-press a GIF in the picker to pin it — favorites show first" = "Nhấn giữ một GIF trong bộ chọn để ghim — mục yêu thích hiển thị trước"; +"Added to favorites" = "Đã thêm vào mục yêu thích"; +"Removed from favorites" = "Đã xóa khỏi mục yêu thích"; +"Favorite GIF unavailable" = "GIF yêu thích không khả dụng"; +"This GIF may have been removed. Long-press it to unfavorite." = "GIF này có thể đã bị xóa. Nhấn giữ để bỏ yêu thích."; +"Failed to build GIF model" = "Không thể xây dựng mô hình GIF"; +"GIF link copied" = "Đã sao chép liên kết GIF"; +"Image" = "Hình ảnh"; +"Image link copied" = "Đã sao chép liên kết hình ảnh"; +"Invalid Giphy URL" = "URL Giphy không hợp lệ"; +"Long-press the GIF button to paste any Giphy URL" = "Nhấn giữ nút GIF để dán URL Giphy bất kỳ"; +"Paste Giphy Link" = "Dán liên kết Giphy"; +"Paste a giphy.com URL or media ID" = "Dán URL giphy.com hoặc ID media"; +"Send" = "Gửi"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "Thêm nút hành động RyukGram phía trên thanh bên reel với các mục xem ảnh bìa/tải xuống/chia sẻ/sao chép/mở rộng/đăng lại. Chạm sẽ mở menu theo mặc định; thay đổi hành vi chạm bên dưới."; +"Always show progress scrubber" = "Luôn hiển thị thanh tua tiến trình"; +"Auto-scroll reels" = "Tự động cuộn reel"; +"Speed, seek and auto-scroll controls" = "Điều khiển tốc độ, tua và tự động cuộn"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "Các điều khiển đã bật sẽ xuất hiện khi bạn giữ nút ⋯ hoặc nút âm thanh trên reel."; +"Seek controls" = "Điều khiển tua"; +"Auto-scroll control" = "Điều khiển tự động cuộn"; +"Seek" = "Tua"; +"Custom seek step" = "Bước tua tùy chỉnh"; +"Enter the number of seconds to skip" = "Nhập số giây cần bỏ qua"; +"Set what a tap on a reel does" = "Đặt hành động khi chạm vào reel"; +"Confirm reel refresh" = "Xác nhận làm mới reel"; +"Custom speed" = "Tốc độ tùy chỉnh"; +"Disable auto-unmuting reels" = "Tắt tự động bật tiếng reel"; +"Disable scrolling reels" = "Tắt cuộn reel"; +"Disable tab button refresh" = "Tắt làm mới nút tab"; +"Doom scrolling limit" = "Giới hạn cuộn vô tận"; +"e.g. 1.75" = "ví dụ 1.75"; +"Enter a value between 0.5 and 2.0" = "Nhập giá trị từ 0.5 đến 2.0"; +"Keeps the progress bar visible on every reel" = "Luôn hiển thị thanh tiến trình trên mọi reel"; +"Hide \"Made with Edits\" badge" = "Ẩn huy hiệu \"Tạo bằng Edits\""; +"Hide friends avatars" = "Ẩn ảnh đại diện bạn bè"; +"Hide reels header" = "Ẩn tiêu đề reel"; +"Hide social context overlay" = "Ẩn lớp phủ ngữ cảnh xã hội"; +"Hides the avatar bubbles next to the Friends tab in reels" = "Ẩn bong bóng ảnh đại diện cạnh tab Bạn bè trong reel"; +"Hides the Edits app promo pill on reels" = "Ẩn pill quảng bá ứng dụng Edits trên reel"; +"Hides the floating overlay showing who reposted or commented on reels" = "Ẩn lớp phủ nổi hiển thị ai đã đăng lại hoặc bình luận trên reel"; +"Hides the repost button on the reels sidebar" = "Ẩn nút đăng lại trên thanh bên reel"; +"Drops the top bar while you watch reels" = "Ẩn thanh trên cùng khi bạn xem reels"; +"Hiding" = "Ẩn"; +"IG default" = "Mặc định IG"; +"Limits" = "Giới hạn"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "Giới hạn số reels bạn lướt liên tiếp và chặn làm mới"; +"Only loads %@ %@" = "Chỉ tải %@ %@"; +"Places a button above the like/comment/share column on each reel" = "Đặt một nút phía trên cột thích/bình luận/chia sẻ trên mỗi reel"; +"Playback speed" = "Tốc độ phát"; +"Prevent doom scrolling" = "Ngăn cuộn vô tận"; +"Engagement filter" = "Bộ lọc tương tác"; +"Hide reels below a like, comment, view or repost count" = "Ẩn reels có lượt thích, bình luận, lượt xem hoặc đăng lại dưới ngưỡng"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "Ẩn những reels không đạt mọi mức tối thiểu bạn đặt. Reels bị tác giả ẩn số liệu vẫn hiển thị trừ khi bạn cũng ẩn chúng."; +"Filter reels by engagement" = "Lọc reels theo tương tác"; +"Hide reels with hidden stats" = "Ẩn reels có số liệu bị ẩn"; +"Only filter the Reels tab" = "Chỉ lọc thẻ Reels"; +"Reels you open from a post, profile or share are never filtered" = "Reels mở từ bài viết, trang cá nhân hoặc chia sẻ không bao giờ bị lọc"; +"Minimums" = "Mức tối thiểu"; +"Minimum likes" = "Lượt thích tối thiểu"; +"Minimum comments" = "Bình luận tối thiểu"; +"Minimum views" = "Lượt xem tối thiểu"; +"Minimum reposts" = "Đăng lại tối thiểu"; +"Reels below this count are hidden. 0 turns this limit off." = "Reels dưới số này sẽ bị ẩn. 0 tắt giới hạn này."; +"Turns the filter off and clears every minimum." = "Tắt bộ lọc và xoá mọi mức tối thiểu."; +"Locks a reel in place so it never scrolls to the next one" = "Khóa reel tại chỗ để không bao giờ chuyển sang reel kế tiếp"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "Ngăn reels bật tiếng khi bạn nhấn phím âm lượng hoặc chuông"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "Xác nhận trước khi làm mới bảng tin reels"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "Hiển thị nút hiện và tự động điền mật khẩu trên reel bị khóa"; +"Same as general format" = "Giống định dạng chung"; +"Shows the repost date on the \"reposted this reel\" header." = "Hiển thị ngày đăng lại trên tiêu đề \"đã đăng lại reel này\"."; +"Reposts" = "Đăng lại"; +"Swipe a reel left to open the author's profile" = "Vuốt một reel sang trái để mở hồ sơ của tác giả"; +"Swipe left to profile" = "Vuốt sang trái để mở hồ sơ"; +"Tap Controls" = "Điều khiển chạm"; +"Tap to mute on photo reels" = "Chạm để tắt tiếng trên reel ảnh"; +"Tapping the Reels tab while on reels does nothing" = "Chạm tab Reels khi đang ở reel sẽ không làm gì"; +"Unlock password-locked reels" = "Mở khóa reel bị khóa bằng mật khẩu"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "Khi bật chế độ tạm dừng, chạm vào reel ảnh sẽ bật/tắt âm thanh thay vì thao tác tạm dừng mặc định"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "Thêm nút lọc & sắp xếp mọi danh sách người theo dõi/đang theo dõi. Đặt lại khi bạn thoát."; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "Thêm tùy chọn xem vào menu nhấn giữ highlight để mở ảnh bìa toàn màn hình"; +"Applying restarts Instagram to load your changes." = "Áp dụng sẽ khởi động lại Instagram để tải các thay đổi của bạn."; +"Card details" = "Chi tiết thẻ"; +"Comment count" = "Số bình luận"; +"Copy note on long press" = "Sao chép ghi chú khi nhấn giữ"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "Thống kê bổ sung hiển thị trên mỗi thẻ bài đăng và reel trong lưới hồ sơ — chọn mục bạn muốn, sắp xếp lại rồi áp dụng."; +"Fake follower count" = "Giả số người theo dõi"; +"Fake following count" = "Giả số đang theo dõi"; +"Fake post count" = "Giả số bài viết"; +"Fake profile stats" = "Giả thống kê hồ sơ"; +"Fake verified badge" = "Giả huy hiệu xác minh"; +"Fetch missing counts" = "Tải số đếm còn thiếu"; +"Filter & sort lists" = "Lọc & sắp xếp danh sách"; +"Follow indicator" = "Chỉ báo theo dõi"; +"Follower & following lists" = "Danh sách người theo dõi & đang theo dõi"; +"Follower count" = "Số người theo dõi"; +"Following count" = "Số đang theo dõi"; +"Like count" = "Số lượt thích"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "Nhấn giữ ảnh đại diện để mở toàn màn hình với phóng to, chia sẻ và lưu"; +"Long press the note bubble on a profile to copy the text" = "Nhấn giữ bong bóng ghi chú trên hồ sơ để sao chép văn bản"; +"Long press to download directly (ignored when zoom is on)" = "Nhấn giữ để tải trực tiếp (bị bỏ qua khi bật thu phóng)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "Cử chỉ nhấn giữ trên các thành phần hồ sơ — được tách riêng khỏi các nút hành động theo tính năng."; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "Công tắc chính cho mọi thống kê thẻ. Tải số đếm còn thiếu dùng API của Instagram và có thể chạm giới hạn yêu cầu."; +"Only affects your own profile header. Other users see the real numbers." = "Chỉ ảnh hưởng đến phần đầu hồ sơ của bạn. Người dùng khác sẽ thấy số thật."; +"Post count" = "Số bài viết"; +"Profile card details" = "Chi tiết thẻ hồ sơ"; +"Profile stats" = "Thống kê hồ sơ"; +"Repost count" = "Số lượt đăng lại"; +"Restores the default stats, order, and options for profile card details." = "Khôi phục thống kê, thứ tự và tùy chọn mặc định cho chi tiết thẻ hồ sơ."; +"Restores the default stats, order, and options for search & explore card details." = "Khôi phục thống kê, thứ tự và tùy chọn mặc định cho chi tiết thẻ tìm kiếm và khám phá."; +"Save profile picture" = "Lưu ảnh hồ sơ"; +"Search & Explore" = "Tìm kiếm & Khám phá"; +"Share count" = "Số lượt chia sẻ"; +"Short numbers" = "Số rút gọn"; +"Show a checkmark next to your name on your own profile" = "Hiển thị dấu tích cạnh tên trên hồ sơ của bạn"; +"Show card details" = "Hiển thị chi tiết thẻ"; +"Show full follower count" = "Hiển thị đầy đủ số người theo dõi"; +"Show full post count" = "Hiển thị đầy đủ số bài viết"; +"Show the custom number set below" = "Hiển thị số tùy chỉnh đặt bên dưới"; +"Show the exact number instead of a shortened one" = "Hiển thị số chính xác thay vì số rút gọn"; +"Shows whether the profile user follows you" = "Hiển thị liệu người dùng hồ sơ có theo dõi bạn không"; +"Tap to set" = "Chạm để đặt"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "Bật hoặc tắt từng thống kê. Kéo tay cầm ≡ để sắp xếp lại cách chúng xếp chồng trên thẻ."; +"Upload date" = "Ngày đăng"; +"View count" = "Số lượt xem"; +"View highlight cover" = "Xem ảnh bìa highlight"; +"Views, likes, comments, shares, reposts, date" = "Lượt xem, lượt thích, bình luận, chia sẻ, đăng lại, ngày"; +"Zoom profile photo" = "Phóng to ảnh đại diện"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "Tải xuống đang chạy, chờ và đã xong"; +"Auto-retry attempts" = "Số lần tự động thử lại"; +"Auto-retry failed downloads" = "Tự động thử lại các lượt tải thất bại"; +"Confirm before download" = "Xác nhận trước khi tải xuống"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "Đã lỗi thời. Nút hành động RyukGram (được cấu hình theo từng tính năng trong Feed/Reels/Stories) là cách mới để tải media. Chỉ bật công tắc chính này nếu bạn thích kiểu nhấn giữ nhiều ngón trực tiếp trên media như cũ."; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "Không tạm dừng tải xuống, mã hóa hoặc quét hồ sơ khi bạn rời ứng dụng"; +"Download queue" = "Hàng đợi tải xuống"; +"Downloads" = "Tải xuống"; +"Downloads with %@ %@" = "Tải xuống với %@ %@"; +"Enable long-press gesture" = "Bật cử chỉ nhấn giữ"; +"Finger count for long-press" = "Số ngón tay để nhấn giữ"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "Số lượt tải chạy cùng lúc — các lượt dư chờ trong hàng đợi và bắt đầu khi có chỗ trống. Lượt tải thất bại tự động thử lại khi lỗi mạng. Mở trình quản lý để theo dõi, hủy hoặc thử lại các lượt tải."; +"Keep running in background" = "Tiếp tục chạy nền"; +"Legacy long-press gesture" = "Cử chỉ nhấn giữ cũ"; +"Long-press hold time" = "Thời gian giữ nhấn"; +"Master toggle for the deprecated gesture workflow (off by default)" = "Công tắc chính cho quy trình cử chỉ đã lỗi thời (tắt theo mặc định)"; +"Max simultaneous downloads" = "Số lượt tải đồng thời tối đa"; +"Open download manager" = "Mở trình quản lý tải xuống"; +"Press finger(s) for %@ %@" = "Nhấn ngón tay trong %@ %@"; +"Retry automatically when a download drops on a network error" = "Tự động thử lại khi một lượt tải bị rớt do lỗi mạng"; +"Route saves into a custom album in Photos instead of the camera roll root" = "Lưu vào album riêng trong Ảnh thay vì thư viện camera"; +"Run up to %@ %@ at once" = "Chạy tối đa %@ %@ cùng lúc"; +"Save action" = "Hành động lưu"; +"Save to dedicated album" = "Lưu vào album riêng"; +"Show a confirmation dialog before starting a download" = "Hiển thị hộp thoại xác nhận trước khi bắt đầu tải xuống"; +"Try %@ more %@ before giving up" = "Thử thêm %@ %@ trước khi bỏ cuộc"; +"What happens after the gesture downloads" = "Điều gì xảy ra sau khi cử chỉ tải xuống"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "Khi bật \"Lưu vào album riêng\", các lượt tải xuống và lựa chọn \"Lưu vào Ảnh\" từ bảng chia sẻ sẽ được đưa vào một album có tên trong thư viện Ảnh của bạn. Chạm \"Tên album\" để thay đổi."; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "còn %@"; +"%@ of %@" = "%1$@ trên %2$@"; +"%@/s" = "%@/giây"; +"%dh" = "%dg"; +"%dm" = "%dph"; +"%ds" = "%dgy"; +"%ld downloading" = "%ld đang tải"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld mục vẫn đang chạy và sẽ bị dừng. Các tệp đã lưu vẫn được giữ."; +"%lu failed" = "%lu thất bại"; +"%lu of %lu done" = "Hoàn tất %lu trên %lu"; +"%lu saved, %lu failed" = "Đã lưu %lu, %lu thất bại"; +"12 hours" = "12 giờ"; +"1s" = "1gy"; +"24 hours" = "24 giờ"; +"48 hours" = "48 giờ"; +"Active" = "Đang hoạt động"; +"Auto-retry" = "Tự động thử lại"; +"Clear completed" = "Xóa mục đã xong"; +"Clear download history" = "Xóa lịch sử tải về"; +"Clear download history?" = "Xóa lịch sử tải về?"; +"Completed" = "Đã hoàn tất"; +"Don't keep" = "Không giữ"; +"Download history" = "Lịch sử tải về"; +"Download settings" = "Cài đặt tải xuống"; +"Downloading %lu items" = "Đang tải %lu mục"; +"Downloading…" = "Đang tải…"; +"Empty the manager's list of past downloads" = "Dọn danh sách các mục đã tải trong trình quản lý"; +"Encoding %d%%" = "Đang mã hóa %d%%"; +"Encoding…" = "Đang mã hóa…"; +"Extra downloads wait in line and start as slots free up." = "Các lượt tải dư chờ trong hàng đợi và bắt đầu khi có chỗ trống."; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "Các mục tải xong, thất bại và đã hủy còn ở trong trình quản lý bao lâu sau khi bạn đóng ứng dụng. Tệp không bị đụng tới, chỉ dọn danh sách."; +"How long past downloads stay listed in the manager" = "Các mục đã tải còn hiện trong trình quản lý bao lâu"; +"Keep history for" = "Giữ lịch sử trong"; +"Media you download shows up here, with its progress and where it was saved." = "Media bạn tải về sẽ hiện ở đây, kèm tiến trình và nơi đã lưu."; +"No downloads yet" = "Chưa có lượt tải nào"; +"Preview" = "Xem trước"; +"Queued" = "Đang chờ"; +"Redownload" = "Tải lại"; +"Retry" = "Thử lại"; +"Retrying…" = "Đang thử lại…"; +"Stop" = "Dừng"; +"The files already saved are kept — this only empties the list." = "Các tệp đã lưu vẫn được giữ — thao tác này chỉ dọn danh sách."; +"Waiting for a free slot" = "Đang chờ chỗ trống"; +"Waiting for connection…" = "Đang chờ kết nối…"; +"Waiting to retry" = "Chờ thử lại"; +"Waiting…" = "Đang chờ…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "Sắp xếp nút lớp phủ"; +"Overlay layout" = "Bố cục lớp phủ"; +"Drag to position the buttons" = "Kéo để đặt vị trí các nút"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "Kéo các nút lên tin. Dải mờ là thanh trả lời."; +"Send message" = "Gửi tin nhắn"; + +"Pinned" = "Đã ghim"; +"Search viewers" = "Tìm người xem"; +"No matching viewers" = "Không có người xem phù hợp"; +"No viewers match these filters" = "Không có người xem nào khớp bộ lọc này"; +"Unavailable" = "Không khả dụng"; +"Default (recent first)" = "Mặc định (mới nhất trước)"; +"%lu viewers" = "%lu người xem"; +"Viewer pinned" = "Đã ghim người xem"; +"Viewer unpinned" = "Đã bỏ ghim người xem"; +"Pin a viewer" = "Ghim người xem"; +"Pin order" = "Thứ tự ghim"; +"Pin this viewer?" = "Ghim người xem này?"; +"Filter, sort & pin viewers" = "Lọc, sắp xếp & ghim người xem"; +"Add by username, remove, reorder" = "Thêm theo tên người dùng, xóa, sắp xếp lại"; +"Pinned viewers (%lu)" = "Người xem đã ghim (%lu)"; +"Viewers list" = "Danh sách người xem"; +"Settings are saved and reused next time." = "Cài đặt được lưu và dùng lại cho lần sau."; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "Chọn nhiều mục để kết hợp. Người xem đã ghim luôn ở trên cùng và bỏ qua các bộ lọc này."; +"Pinned viewers" = "Người xem đã ghim"; +"Pin" = "Ghim"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "Thay thế danh sách 'ai đã xem tin của bạn' bằng danh sách có thể tìm kiếm, lọc và sắp xếp. Nhấn giữ một người xem để ghim lên đầu. Quay lại danh sách gốc bất cứ lúc nào."; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "Tên người dùng hoặc PK người dùng. Người xem đã ghim luôn ở đầu danh sách người xem tin của bạn."; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "Thêm nút hành động RyukGram cạnh nút con mắt trên tin với các mục tải xuống/chia sẻ/sao chép/mở rộng/đăng lại/xem lượt nhắc. Chạm sẽ mở menu theo mặc định; thay đổi hành vi chạm bên dưới."; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "Thêm nút loa vào lớp phủ tin để bật/tắt âm thanh. Cũng có trong menu ba chấm"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "Thêm nút con mắt vào lớp phủ tin. Khi tắt, việc chặn đã xem vẫn bật mà không có nút"; +"Advance on story like" = "Chuyển tiếp khi thích tin"; +"Advance on story reply" = "Chuyển tiếp khi trả lời tin"; +"Advance when marking as seen" = "Chuyển tiếp khi đánh dấu đã xem"; +"Audio" = "Âm thanh"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "Chặn tất cả: mọi tin đều bị chặn — người dùng trong danh sách là ngoại lệ.\nChặn đã chọn: chỉ người dùng trong danh sách bị chặn — mọi thứ khác bình thường.\nCả hai danh sách được lưu độc lập."; +"Blocking mode" = "Chế độ chặn"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "Nút = chạm một lần để đánh dấu đã xem. Công tắc = chạm để bật/tắt thông báo đã xem tin (mắt chuyển xanh khi bật)"; +"Marked-seen indicator" = "Chỉ báo đã đánh dấu xem"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "Ghi nhớ trong 48 giờ các tin bạn đã đánh dấu là đã xem và ẩn hoặc tô nút con mắt trên đó"; +"Hide eye button" = "Ẩn nút con mắt"; +"Fill eye button green" = "Tô nút con mắt màu xanh lá"; +"Disable story seen receipt" = "Tắt thông báo đã xem tin"; +"Enable story user list" = "Bật danh sách người xem tin"; +"Stops others from seeing that you viewed their story" = "Ngăn người khác thấy rằng bạn đã xem story của họ"; +"Inserts a button next to the seen/eye button on story overlays" = "Chèn nút cạnh nút đã xem/con mắt trên lớp phủ tin"; +"Keep stories visually seen locally" = "Giữ trạng thái đã xem tin cục bộ"; +"Liking a story automatically advances to the next one after a short delay" = "Thích một tin sẽ tự động chuyển sang tin tiếp theo sau một khoảng ngắn"; +"Manage list" = "Quản lý danh sách"; +"Manage list (%lu)" = "Quản lý danh sách (%lu)"; +"Manual seen button mode" = "Chế độ nút đã xem thủ công"; +"Mark seen on story like" = "Đánh dấu đã xem khi thích tin"; +"Mark seen on story reply" = "Đánh dấu đã xem khi trả lời tin"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "Đánh dấu tin là đã xem ngay khi bạn chạm tim, kể cả khi bật chặn đã xem"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "Đánh dấu tin là đã xem khi bạn gửi trả lời hoặc phản ứng emoji, kể cả khi bật chặn đã xem"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "Đánh dấu tin là đã xem cục bộ (vòng xám) trong khi vẫn chặn thông báo đã xem trên máy chủ"; +"Master toggle. When off, the list is ignored" = "Công tắc chính. Khi tắt, danh sách sẽ bị bỏ qua"; +"Playback" = "Phát lại"; +"Search, sort, swipe to remove" = "Tìm kiếm, sắp xếp, vuốt để xóa"; +"Seen receipts" = "Thông báo đã xem"; +"Sending a reply or emoji reaction automatically advances to the next story" = "Gửi trả lời hoặc phản ứng emoji sẽ tự động chuyển sang tin tiếp theo"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "Thêm mục 'Xem lượt nhắc' vào menu nút hành động và menu ba chấm trên tin"; +"Mentions overlay button" = "Nút lớp phủ lượt nhắc"; +"Mentions count badge" = "Huy hiệu số lượt nhắc"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "Thêm nút cạnh nút hành động/con mắt trên lớp phủ tin. Chỉ xuất hiện khi tin hiện tại có lượt nhắc hoặc bài viết/reel được chia sẻ"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "Hiển thị số lượng tài khoản được nhắc duy nhất dưới dạng huy hiệu đỏ trên nút lớp phủ"; +"Hide stories midcards" = "Ẩn thẻ giữa trong tin"; +"Removes the Trending and Music promo cards from the stories tray" = "Xóa thẻ quảng bá Xu hướng và Âm nhạc khỏi khay tin"; +"Stickers" = "Sticker"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "Xem trước kết quả thăm dò/quiz/thanh trượt trước khi tương tác — bạn vẫn có thể chạm để bình chọn bình thường. Buộc cũ sẽ thêm lại sticker Quiz và Reveal vào trình soạn tin."; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "Xem trước kết quả thăm dò/quiz/thanh trượt trên reel trước khi tương tác — bạn vẫn có thể chạm để bình chọn bình thường."; +"Force legacy stickers in tray" = "Buộc sticker cũ trong khay"; +"Adds Quiz and Reveal stickers back to the picker" = "Thêm lại sticker Quiz và Reveal vào bộ chọn"; +"Bypass Reveal sticker" = "Bỏ qua sticker Reveal"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "Bỏ qua bước DM-để-hiển-thị trên tin có sticker Reveal"; +"Show quiz answer" = "Hiển thị đáp án quiz"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "Khoanh tùy chọn đúng trên sticker quiz hoặc tùy chọn dẫn đầu trên bình chọn"; +"Show poll vote counts" = "Hiển thị số phiếu bình chọn"; +"Show vote tallies on poll options and slider count/average before you vote" = "Hiển thị số phiếu và số lượng/trung bình thanh trượt trước khi bạn bỏ phiếu"; +"Stop story auto-advance" = "Dừng tự động chuyển tin"; +"Stories" = "Tin"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "Tin sẽ không tự chuyển sang cái tiếp theo khi hết thời gian. Chạm để chuyển thủ công"; +"Story audio toggle" = "Nút bật/tắt âm thanh tin"; +"Story user list" = "Danh sách người xem tin"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "Chạm nút con mắt để đánh dấu đã xem sẽ tự động chuyển sang tin tiếp theo"; +"This will send a story view receipt." = "Thao tác này sẽ gửi xác nhận đã xem tin."; +"View story mentions" = "Xem lượt nhắc trong tin"; +"Which stories get seen-receipt blocking" = "Tin nào bị chặn thông báo đã xem"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "Trạng thái hoạt động chính xác"; +"Activity log" = "Nhật ký hoạt động"; +"Loading…" = "Đang tải…"; +"Notify: %@ · Log: %@" = "Thông báo: %@ · Nhật ký: %@"; +"Add by user ID" = "Thêm bằng ID người dùng"; +"Add by thread ID" = "Thêm bằng ID cuộc trò chuyện"; +"Adding…" = "Đang thêm…"; +"Browse activity, grouped by person" = "Xem hoạt động, nhóm theo từng người"; +"Clear activity log?" = "Xóa nhật ký hoạt động?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "Chưa có hoạt động nào.\nKhi ai đó đọc tin nhắn của bạn hoặc trực tuyến, nó sẽ hiện ở đây."; +"No one found. Check the spelling or try a different name." = "Không tìm thấy ai. Kiểm tra chính tả hoặc thử tên khác."; +"Notify about someone" = "Thông báo về một người"; +"Open some chats first, or search a username above." = "Hãy mở vài cuộc trò chuyện trước, hoặc tìm một tên người dùng ở trên."; +"Pick what each person notifies you about" = "Chọn mỗi người thông báo cho bạn điều gì"; +"Recent in your DMs" = "Gần đây trong tin nhắn của bạn"; +"Results" = "Kết quả"; +"This removes all recorded activity on this device." = "Thao tác này xóa toàn bộ hoạt động đã ghi trên thiết bị này."; +"Active %ldd ago" = "Hoạt động %ldd trước"; +"Active %ldh ago" = "Hoạt động %ldh trước"; +"Active %ldm ago" = "Hoạt động %ldm trước"; +"Activity notifications" = "Thông báo hoạt động"; +"Also track reads in group chats. Groups can be noisy" = "Theo dõi lượt đọc trong nhóm chat nữa. Nhóm có thể gây nhiễu"; +"Came online" = "Đã trực tuyến"; +"Customise notifications" = "Tùy chỉnh thông báo"; +"Everyone" = "Mọi người"; +"Muted" = "Đã tắt tiếng"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "Chưa có ai được tùy chỉnh. Nhấn giữ một người trong nhật ký hoạt động để chọn thông báo."; +"Online, offline, typing and read receipts, per person" = "Trực tuyến, ngoại tuyến, đang nhập và đã xem, theo từng người"; +"Per-person notifications" = "Thông báo theo từng người"; +"Enable activity" = "Bật hoạt động"; +"Track who reads your messages, comes online, goes offline or types" = "Theo dõi ai đọc tin nhắn, trực tuyến, ngoại tuyến hay đang nhập"; +"For everyone" = "Cho mọi người"; +"For this person" = "Cho người này"; +"Log only" = "Chỉ nhật ký"; +"Notify only" = "Chỉ thông báo"; +"Notify + log" = "Thông báo + nhật ký"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "Chỉ nhật ký lưu lại âm thầm. Chỉ thông báo báo cho bạn mà không lưu. Thông báo + nhật ký làm cả hai."; +"Presence" = "Hiện diện"; +"Read your message" = "Đã đọc tin nhắn của bạn"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "Làm mới trạng thái mỗi 20 giây và bỏ khoảng thời gian gia hạn của Instagram, để chấm xanh tắt ngay khi ai đó ngoại tuyến."; +"Started typing" = "Bắt đầu nhập"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "Chạm để thay đổi thông báo. Vuốt để xóa và trở về mặc định."; +"These override the defaults for this person." = "Những mục này ghi đè mặc định cho người này."; +"Went offline" = "Đã ngoại tuyến"; +"When someone becomes active" = "Khi ai đó trở nên hoạt động"; +"When someone goes inactive" = "Khi ai đó không hoạt động"; +"When someone opens a message you sent" = "Khi ai đó mở tin nhắn bạn đã gửi"; +"When someone starts typing to you" = "Khi ai đó bắt đầu nhập cho bạn"; +"is now active" = "hiện đang hoạt động"; +"is typing…" = "đang nhập…"; +"went offline" = "đã ngoại tuyến"; +"Online" = "Trực tuyến"; +"Offline" = "Ngoại tuyến"; +"Typing" = "Đang nhập"; +"Filters" = "Bộ lọc"; +"Delete the selected records? This can't be undone." = "Xóa các bản ghi đã chọn? Không thể hoàn tác."; +"Delete all records for the selected chats? This can't be undone." = "Xóa tất cả bản ghi của các cuộc trò chuyện đã chọn? Không thể hoàn tác."; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "Thêm nút con mắt vào cuộc trò chuyện DM. Khi tắt, việc chặn xác nhận đã đọc vẫn bật mà không có nút"; +"Auto mark seen on interact" = "Tự động đánh dấu đã xem khi tương tác"; +"Auto mark seen on typing" = "Tự động đánh dấu đã xem khi nhập"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "Chặn xác nhận đã đọc tự động — chỉ đánh dấu đã xem khi bạn chọn"; +"Control when messages are marked as seen" = "Kiểm soát thời điểm tin nhắn được đánh dấu đã xem"; +"How the seen button behaves" = "Cách nút đã xem hoạt động"; +"Manually mark messages as seen" = "Đánh dấu tin nhắn là đã xem thủ công"; +"Mark as seen?" = "Đánh dấu là đã xem?"; +"Mark as viewed?" = "Đánh dấu là đã xem nội dung?"; +"Mark seen locally" = "Đánh dấu đã xem cục bộ"; +"Marks messages as seen when you reply, react or send media" = "Đánh dấu tin nhắn là đã xem khi bạn trả lời, thả cảm xúc hoặc gửi phương tiện"; +"Marks messages as seen when you start typing" = "Đánh dấu tin nhắn là đã xem khi bạn bắt đầu nhập"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "Các đoạn chat đã mở chỉ hiển thị là đã xem trên thiết bị này. Nút con mắt chuyển màu cam khi người gửi vẫn chưa nhận được xác nhận đã xem"; +"Read receipt mode" = "Chế độ xác nhận đã đọc"; +"Read receipts" = "Xác nhận đã đọc"; +"Show seen button" = "Hiển thị nút đã xem"; +"This will send a read receipt for the latest messages." = "Thao tác này sẽ gửi xác nhận đã đọc cho các tin nhắn mới nhất."; +"This will send a view receipt for the current message." = "Thao tác này sẽ gửi xác nhận đã xem cho tin nhắn hiện tại."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "Hoạt động"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "Thêm tùy chọn 'Tải xuống' vào menu nhấn giữ của tin nhắn thoại để lưu dưới dạng âm thanh M4A"; +"Allows typing and sending DMs longer than Instagram's limit" = "Cho phép nhập và gửi DM dài hơn giới hạn của Instagram"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "Thêm tùy chọn 'Gửi tệp' vào menu dấu cộng trong DM. Loại tệp được hỗ trợ có thể bị Instagram giới hạn"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "Thêm tùy chọn 'Tệp âm thanh' vào menu dấu cộng trong DM để gửi tệp âm thanh dưới dạng tin nhắn thoại"; +"Adds copy text, download GIF/audio to the note long-press menu" = "Thêm sao chép văn bản, tải GIF/âm thanh vào menu nhấn giữ ghi chú"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "Chặn tất cả: mọi cuộc trò chuyện đều bị chặn — các cuộc trò chuyện trong danh sách là ngoại lệ.\nChặn đã chọn: chỉ các cuộc trò chuyện trong danh sách bị chặn — mọi thứ khác bình thường.\nCả hai danh sách được lưu độc lập. Nhấn giữ cuộc trò chuyện trong hộp thư để thêm hoặc xóa."; +"Block keep-deleted for excluded chats" = "Chặn giữ tin đã xóa cho cuộc trò chuyện bị loại trừ"; +"Block keep-deleted for unlisted chats" = "Chặn giữ tin đã xóa cho cuộc trò chuyện không có trong danh sách"; +"Bypass DM character limit" = "Bỏ qua giới hạn ký tự DM"; +"Chat list" = "Danh sách trò chuyện"; +"Confirmation dialog before clearing preserved messages" = "Hộp thoại xác nhận trước khi xóa tin nhắn đã lưu giữ"; +"Copies note text directly on long press without opening the menu" = "Sao chép trực tiếp văn bản ghi chú khi nhấn giữ mà không mở menu"; +"Copy text on hold" = "Sao chép văn bản khi giữ"; +"Adds Background, Text and Emoji buttons to the note editor" = "Thêm nút Nền, Văn bản và Emoji vào trình chỉnh sửa ghi chú"; +"Custom note themes" = "Giao diện ghi chú tùy chỉnh"; +"Disable vanish mode swipe" = "Tắt vuốt chế độ biến mất"; +"Disable typing status" = "Tắt trạng thái đang nhập"; +"Disable view-once limitations" = "Tắt giới hạn xem một lần"; +"Download voice messages" = "Tải tin nhắn thoại"; +"Enable chat list" = "Bật danh sách trò chuyện"; +"Enable note theming" = "Bật giao diện ghi chú"; +"Enables the notes theme picker" = "Bật bộ chọn giao diện ghi chú"; +"Files" = "Tệp"; +"Full last active date" = "Ngày hoạt động cuối đầy đủ"; +"Hide reels blend button" = "Ẩn nút trộn reel"; +"Hide send to group chat" = "Ẩn gửi tới nhóm trò chuyện"; +"Pin recipients on long-press" = "Ghim người nhận khi nhấn giữ"; +"Long-press in the share sheet to pin a chat/user to the top" = "Nhấn giữ trong bảng chia sẻ để ghim cuộc trò chuyện/người dùng lên trên cùng"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "Nhấn giữ một người nhận để ghim hoặc bỏ ghim. Người nhận đã ghim hiển thị ở trên cùng."; +"Recipient pinned" = "Đã ghim người nhận"; +"Recipient unpinned" = "Đã bỏ ghim người nhận"; +"Couldn't resolve recipient id" = "Không thể phân giải ID người nhận"; +"Hide video call button" = "Ẩn nút gọi video"; +"Hide voice call button" = "Ẩn nút gọi thoại"; +"Hides the blend button in DMs" = "Ẩn nút blend trong DM"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "Xóa hàng tạo/gửi tới nhóm trò chuyện khi chia sẻ tới nhiều người nhận"; +"Hides typing indicator from others" = "Ẩn trạng thái đang nhập khỏi người khác"; +"Indicate unsent messages" = "Hiển thị tin nhắn đã thu hồi"; +"Keep deleted messages" = "Giữ tin nhắn đã xóa"; +"Turns view once messages into normal media you can loop and pause" = "Biến tin nhắn xem một lần thành nội dung thường có thể lặp và tạm dừng"; +"Note actions" = "Hành động ghi chú"; +"Preserves messages that others unsend" = "Giữ lại tin nhắn người khác đã thu hồi"; +"Keep my deleted messages" = "Giữ tin nhắn tôi đã xóa"; +"Also preserves messages you unsend yourself" = "Cũng giữ lại tin nhắn bạn tự thu hồi"; +"Prevents accidental swipe-up activation of vanish mode" = "Ngăn vô tình vuốt lên kích hoạt chế độ biến mất"; +"Quick list button in chats" = "Nút danh sách nhanh trong trò chuyện"; +"Removes the audio call button from DM thread header" = "Xóa nút gọi thoại khỏi đầu đoạn chat DM"; +"Removes the video call button from DM thread header" = "Xóa nút gọi video khỏi đầu đoạn chat DM"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "Phát lại tin nhắn hình ảnh mà không hết hạn. Bật trong menu nút con mắt hoặc dùng nút riêng khi nút con mắt bị tắt"; +"Search, sort, swipe to remove or toggle keep-deleted" = "Tìm kiếm, sắp xếp, vuốt để xóa hoặc bật giữ mục đã xóa"; +"Send audio as file" = "Gửi âm thanh dưới dạng tệp"; +"Send files (experimental)" = "Gửi tệp (thử nghiệm)"; +"File sending not available" = "Không thể gửi tệp"; +"Show full date instead of \"Active 2h ago\"" = "Hiển thị ngày đầy đủ thay vì \"Hoạt động 2 giờ trước\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "Hiển thị nút trong đoạn chat DM để thêm/xóa chat khỏi danh sách. Nhấn giữ để xem thêm tùy chọn"; +"Shows a notification pill when a message is unsent" = "Hiển thị pill thông báo khi tin nhắn bị thu hồi"; +"Shows an \"Unsent\" label on preserved messages" = "Hiển thị nhãn \"Đã thu hồi\" trên tin nhắn được giữ lại"; +"Unlimited replay of visual messages" = "Phát lại không giới hạn tin nhắn hình ảnh"; +"Unsent message notification" = "Thông báo tin nhắn đã thu hồi"; +"Voice messages" = "Tin nhắn thoại"; +"Warn before clearing on refresh" = "Cảnh báo trước khi xóa khi làm mới"; +"Which chats get read-receipt blocking" = "Cuộc trò chuyện nào bị chặn thông báo đã xem"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ Kéo để làm mới trong tab DM sẽ xóa toàn bộ tin nhắn đã lưu giữ. Bật cảnh báo bên dưới để hiển thị hộp thoại xác nhận."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "Đã xóa %@%lu"; +"%lu selected" = "Đã chọn %lu"; +"Absolute date + time" = "Ngày + giờ tuyệt đối"; +"Adjust the filters or clear the search to see more." = "Điều chỉnh bộ lọc hoặc xóa tìm kiếm để xem thêm."; +"All time" = "Mọi lúc"; +"Browse, filter and search recorded messages" = "Duyệt, lọc và tìm kiếm tin nhắn đã ghi"; +"Captures unsent messages with their text or media" = "Lưu lại tin nhắn đã thu hồi cùng văn bản hoặc media"; +"Clear deleted-message log?" = "Xóa nhật ký tin nhắn đã xóa?"; +"Clear from this user" = "Xóa từ người dùng này"; +"Clear log" = "Xóa nhật ký"; +"Clear log for this account" = "Xóa nhật ký cho tài khoản này"; +"Clear log for this user?" = "Xóa nhật ký của người dùng này?"; +"Clear media files" = "Xóa tệp media"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "Xóa media giữ lại các bản ghi (văn bản, người gửi, thời gian). Xóa nhật ký sẽ xóa mọi thứ cho tài khoản này."; +"Close" = "Đóng"; +"Content unavailable" = "Nội dung không khả dụng"; +"Copied" = "Đã sao chép"; +"Copy URL" = "Sao chép URL"; +"Date range" = "Khoảng thời gian"; +"Deleted messages" = "Tin nhắn đã xóa"; +"Deleted messages log" = "Nhật ký tin nhắn đã xóa"; +"Deleted: %@\n" = "Đã xóa: %@\n"; +"Edit %lu" = "Chỉnh sửa %lu"; +"Edit history" = "Lịch sử chỉnh sửa"; +"Edited" = "Đã chỉnh sửa"; +"Empty" = "Trống"; +"Enable deleted messages log" = "Bật nhật ký tin nhắn đã xóa"; +"Enable Settings → Messages → Deleted messages log to start recording." = "Bật Cài đặt → Tin nhắn → Nhật ký tin nhắn đã xóa để bắt đầu ghi."; +"GIF" = "GIF"; +"Hashtag" = "Hashtag"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "Loại: %@\n"; +"Last 30 days" = "30 ngày qua"; +"Last 7 days" = "7 ngày qua"; +"Link" = "Liên kết"; +"Live location" = "Vị trí trực tiếp"; +"Location" = "Vị trí"; +"Logging is off" = "Ghi nhật ký đang tắt"; +"Media on disk" = "Media trên ổ đĩa"; +"Most messages" = "Nhiều tin nhắn nhất"; +"Most recent" = "Mới nhất"; +"No deleted messages yet" = "Chưa có tin nhắn đã xóa"; +"No matches" = "Không có kết quả khớp"; +"Nothing to save" = "Không có gì để lưu"; +"Oldest first" = "Cũ nhất trước"; +"Open log" = "Mở nhật ký"; +"Group chat" = "Trò chuyện nhóm"; +"%lu messages in %lu chats" = "%lu tin nhắn trong %lu cuộc trò chuyện"; +"%lu people · %lu deleted" = "%lu người · %lu đã xóa"; +"When someone unsends a message, it will appear here grouped by chat." = "Khi ai đó thu hồi một tin nhắn, nó sẽ xuất hiện ở đây theo từng cuộc trò chuyện."; +"Clear this chat" = "Xóa cuộc trò chuyện này"; +"Clear log for this chat?" = "Xóa nhật ký cho cuộc trò chuyện này?"; +"Removes every preserved deleted message from this group chat." = "Xóa mọi tin nhắn đã xóa được lưu từ cuộc trò chuyện nhóm này."; +"Reaction removed" = "Đã gỡ biểu cảm"; +"Log removed reactions" = "Ghi lại biểu cảm đã gỡ"; +"Also records when someone removes a reaction, and which message it was on" = "Cũng ghi lại khi ai đó gỡ biểu cảm và biểu cảm đó ở tin nhắn nào."; +"Removed a reaction" = "Đã gỡ một biểu cảm"; +"on @%@: %@" = "trên @%@: %@"; +"on: %@" = "trên: %@"; +"a message" = "một tin nhắn"; +"removed %@ on: %@" = "đã gỡ %@ trên: %@"; +"removed reaction %@" = "đã gỡ biểu cảm %@"; +"%@ removed the %@ reaction." = "%@ đã gỡ biểu cảm %@."; +"Removed %@" = "Đã gỡ %@"; +"Someone" = "Ai đó"; +"Photo or video" = "Ảnh hoặc video"; +"Refresh names & photos" = "Làm mới tên và ảnh"; +"Refreshing names & photos" = "Đang làm mới tên và ảnh"; +"Records every message someone unsends, grouped by chat" = "Ghi lại mọi tin nhắn bị thu hồi, nhóm theo cuộc trò chuyện"; +"Open profile" = "Mở hồ sơ"; +"Original" = "Gốc"; +"Play" = "Phát"; +"Post" = "Bài viết"; +"Reel" = "Reel"; +"Relative (1m / 3h / 3d ago)" = "Tương đối (1p / 3g / 3 ngày trước)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "Xóa mọi tin nhắn đã xóa được lưu giữ và media đã chụp cho tài khoản hiện tại. Không thể hoàn tác."; +"Removes every preserved deleted message and its captured media for this account." = "Xóa mọi tin nhắn đã xóa được lưu giữ và media đã chụp cho tài khoản này."; +"Removes every preserved deleted message from this sender." = "Xóa mọi tin nhắn đã xóa được lưu giữ từ người gửi này."; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "Xóa mọi ảnh, video và đoạn thoại đã lưu. Bản ghi vẫn giữ văn bản và thông tin người gửi."; +"Search messages" = "Tìm kiếm tin nhắn"; +"Search senders or messages" = "Tìm kiếm người gửi hoặc tin nhắn"; +"Select" = "Chọn"; +"Show edit history" = "Hiện lịch sử chỉnh sửa"; +"Source URL recorded but media not stored.\n" = "Đã ghi URL nguồn nhưng media không được lưu.\n"; +"Sticker" = "Nhãn dán"; +"Tap to open in Instagram" = "Chạm để mở trong Instagram"; +"Tap to open in Maps" = "Chạm để mở trong Maps"; +"Tap to play" = "Chạm để phát"; +"Tap to play · %@" = "Chạm để phát · %@"; +"Text" = "Văn bản"; +"This account" = "Tài khoản này"; +"Unknown" = "Không xác định"; +"Video" = "Video"; +"View" = "Xem"; +"Voice" = "Thoại"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "Khi bật, tin nhắn đã xóa và media của chúng sẽ được lưu trên thiết bị này. Tắt và xóa nhật ký để xóa lịch sử."; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "Trong công cụ Vẽ, gửi ảnh dưới dạng bản vẽ từ thư viện, Ảnh, nhãn dán hoặc dán, với trình chỉnh sửa cắt và xóa nền tích hợp"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "Vẽ một đường hoặc hình, rồi chạm Gửi và chọn nguồn ảnh: thư viện, Ảnh, nhãn dán hoặc dán.\n\nẢnh sẽ thay chỗ nét bạn vẽ và lấy đúng vị trí và kích thước, nên vẽ to hơn để có ảnh to hơn.\n\nKhởi động lại Instagram để áp dụng."; + +"Send image as drawing" = "Gửi ảnh dưới dạng bản vẽ"; + +"Bypass \"You can't send messages\"" = "Bỏ qua “Bạn không thể gửi tin nhắn”"; +"Custom chat background" = "Hình nền trò chuyện tùy chỉnh"; +"DM Save button" = "Nút Lưu trong DM"; +"Incoming calls stay silent — no ring, no screen, no notification" = "Cuộc gọi đến luôn im lặng — không chuông, không màn hình, không thông báo"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "Khiến nút Lưu tích hợp của Instagram trên ảnh và video trong DM tải về Ảnh, Thư viện hoặc Chia sẻ"; +"Messages" = "Tin nhắn"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "Xóa biểu ngữ ô nhập bị chặn và khôi phục ô nhập văn bản trong các cuộc trò chuyện bị hạn chế"; +"Reroute native Save" = "Chuyển hướng nút Lưu gốc"; +"Save media" = "Lưu phương tiện"; +"Silence incoming calls" = "Tắt tiếng cuộc gọi đến"; +"Threads" = "Threads"; +"Use your own images as chat backgrounds" = "Dùng ảnh của riêng bạn làm hình nền trò chuyện"; +"Activity status toggle" = "Nút bật/tắt trạng thái hoạt động"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "Thêm một chấm vào tiêu đề hộp thư. Chạm để bật hoặc tắt trạng thái hoạt động của bạn"; +"Activity status on" = "Đã bật trạng thái hoạt động"; +"Activity status off" = "Đã tắt trạng thái hoạt động"; +"Couldn't change activity status" = "Không thể thay đổi trạng thái hoạt động"; +"Check your connection and try again" = "Kiểm tra kết nối và thử lại"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "Máy ảnh"; +"Viewer" = "Trình xem"; +"Saving" = "Lưu"; +"Confirmations" = "Xác nhận"; +"Confirm switching button" = "Nút xác nhận chuyển"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "Thêm một nút bên cạnh nút thao tác để bật hoặc tắt xác nhận chuyển ngay lập tức"; +"Switching confirmation on" = "Đã bật xác nhận chuyển"; +"Switching confirmation off" = "Đã tắt xác nhận chuyển"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "Thêm nút thư viện vào camera Instants để bạn có thể gửi ảnh từ album"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "Thêm nút hành động RyukGram vào tiêu đề trình xem Instants với các mục mở rộng, lưu, chia sẻ và lưu hàng loạt"; +"All loaded instants" = "Tất cả Instants đã tải"; +"Auto advance after reaction" = "Tự động chuyển sau khi thả cảm xúc"; +"Automatically moves to the next instant after you like or react" = "Tự động chuyển sang Instant tiếp theo sau khi bạn thích hoặc thả cảm xúc"; +"Auto close when finished" = "Tự động đóng khi xem xong"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "Đóng trình xem Instants sau khi bạn đã xem hết thay vì dừng ở máy ảnh"; +"Bypasses the Instants screenshot block" = "Bỏ qua chặn chụp màn hình Instants"; +"Could not locate the instant on screen" = "Không thể định vị Instant trên màn hình"; +"Current instant" = "Instant hiện tại"; +"In-app Gallery" = "Thư viện trong ứng dụng"; +"Instant" = "Instant"; +"Instants" = "Instants"; +"Auto-saved instants log" = "Nhật ký Instants đã tự động lưu"; +"Auto-save instants" = "Tự động lưu Instants"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "Tự động lưu mọi Instant bạn xem, kể cả khi vuốt — mỗi cái chỉ một lần"; +"Instants action button" = "Nút hành động Instants"; +"No instants currently loaded" = "Hiện không có Instants nào được tải"; +"No media available to save" = "Không có media nào để lưu"; +"Photos library" = "Thư viện Ảnh"; +"Pick from" = "Chọn từ"; +"Queued %lu instants" = "Đã xếp hàng %lu Instants"; +"Save all to Gallery" = "Lưu tất cả vào Thư viện"; +"Save all to Photos" = "Lưu tất cả vào Ảnh"; +"Save to Gallery" = "Lưu vào Thư viện"; +"Send from gallery" = "Gửi từ thư viện"; +"Tweaks for the QuickSnap / Instants camera surface." = "Tinh chỉnh cho giao diện camera QuickSnap / Instants."; +"Use" = "Dùng"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "Cũng ẩn thanh tab dưới cùng — chỉ hiển thị hộp thư"; +"Show the home shortcut button in the inbox header, on the right" = "Hiển thị nút phím tắt trang chủ ở tiêu đề hộp thư, bên phải"; +"Greyed out until the home shortcut button is enabled in Interface" = "Bị làm mờ cho đến khi bật nút phím tắt trang chủ trong Giao diện"; +"Hide search tab" = "Ẩn tab tìm kiếm"; +"Remove the search/explore button from the tab bar" = "Xóa nút tìm kiếm/khám phá khỏi thanh tab"; +"Hide tab bar" = "Ẩn thanh tab"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "Ẩn mọi tab ngoại trừ hộp thư DM + hồ sơ và buộc khởi chạy vào hộp thư. Phím tắt cài đặt được chuyển sang nhấn giữ trên tab hộp thư."; +"Icon order" = "Thứ tự biểu tượng"; +"Launch tab" = "Tab khởi chạy"; +"Swipe sideways to move between the tab bar tabs" = "Vuốt ngang để chuyển giữa các tab trên thanh tab"; +"Messages only" = "Chỉ tin nhắn"; +"Messages-only mode" = "Chế độ chỉ tin nhắn"; +"Automatic schedule" = "Lịch tự động"; +"DM-only client, hide tabs, auto schedule" = "Chỉ DM, ẩn tab, lịch tự động"; +"Start time" = "Thời gian bắt đầu"; +"End time" = "Thời gian kết thúc"; +"Switch into Messages-only on its own during a time window" = "Tự động bật chế độ chỉ tin nhắn trong một khung giờ"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "Tự động bật chế độ chỉ tin nhắn trong khung giờ hằng ngày (vd. 22:00 – 06:00) bằng các nút ở trên. Bạn sẽ được nhắc khởi động lại khi khung giờ bắt đầu và kết thúc."; +"Active now · ends %@" = "Đang bật · kết thúc lúc %@"; +"Next window starts %@" = "Khung giờ tiếp theo bắt đầu lúc %@"; +"Messages-only starting" = "Bắt đầu chế độ chỉ tin nhắn"; +"Messages-only ending" = "Kết thúc chế độ chỉ tin nhắn"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "Khung giờ chế độ chỉ tin nhắn đã bắt đầu. Khởi động lại Instagram để chuyển sang chỉ DM."; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "Khung giờ chế độ chỉ tin nhắn đã kết thúc. Khởi động lại Instagram để khôi phục các tab khác."; +"Navigation" = "Điều hướng"; +"Swipe between tabs" = "Vuốt giữa các tab"; +"Tab the app opens to. Ignored when Messages-only is on" = "Tab ứng dụng mở vào. Bị bỏ qua khi bật chỉ Tin nhắn"; +"How the icons on the bottom tab bar are ordered" = "Thứ tự các biểu tượng trên thanh tab dưới cùng"; +"Hidden tabs" = "Tab đã ẩn"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "Nhấn giữ và kéo để sắp xếp lại. Kéo một biểu tượng lên trên để ẩn nó. Chạm vào một tab đã ẩn để thêm lại."; +"All tabs are on the bar" = "Tất cả tab đều ở trên thanh"; +"Turn IG into a DM-only client" = "Biến IG thành ứng dụng chỉ nhắn tin"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "Tất cả"; +"Calls" = "Cuộc gọi"; +"Comments & posts" = "Bình luận & bài đăng"; +"Confirm actions" = "Xác nhận hành động"; +"Confirm changing theme" = "Xác nhận đổi giao diện"; +"Confirm disappearing media mark as viewed" = "Xác nhận đánh dấu nội dung tự hủy là đã xem"; +"Confirm DM mark as seen" = "Xác nhận đánh dấu DM là đã xem"; +"Confirm follow" = "Xác nhận theo dõi"; +"Confirm follow requests" = "Xác nhận yêu cầu theo dõi"; +"Confirm Instants capture" = "Xác nhận chụp Instants"; +"Confirm Instants emoji reaction" = "Xác nhận phản ứng emoji với Instant"; +"Confirm like: Posts" = "Xác nhận thích: Bài viết"; +"Confirm like: Reels" = "Xác nhận thích: Reel"; +"Confirm note emoji reaction" = "Xác nhận phản ứng emoji với ghi chú"; +"Confirm note like" = "Xác nhận thích ghi chú"; +"Confirm posting comment" = "Xác nhận đăng bình luận"; +"Confirm repost" = "Xác nhận đăng lại"; +"Confirm send to group chat" = "Xác nhận gửi tới nhóm trò chuyện"; +"Confirm sticker interaction (highlights)" = "Xác nhận tương tác sticker (highlight)"; +"Confirm sticker interaction (stories)" = "Xác nhận tương tác sticker (tin)"; +"Confirm story emoji reaction" = "Xác nhận phản ứng emoji với tin"; +"Confirm story like" = "Xác nhận thích tin"; +"Confirm story mark as seen" = "Xác nhận đánh dấu tin là đã xem"; +"Confirm switching Instant" = "Xác nhận chuyển Instant"; +"Confirm unfollow" = "Xác nhận bỏ theo dõi"; +"Confirm vanish mode" = "Xác nhận chế độ biến mất"; +"Confirm video call" = "Xác nhận cuộc gọi video"; +"Confirm voice call" = "Xác nhận cuộc gọi thoại"; +"Confirm voice messages" = "Xác nhận tin nhắn thoại"; +"Follows" = "Theo dõi"; +"Likes" = "Lượt thích"; +"Messaging" = "Nhắn tin"; +"Reaction stickers only" = "Chỉ sticker phản ứng"; +"Reactions" = "Cảm xúc"; +"Send to group chat?" = "Gửi tới nhóm trò chuyện?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "Hiển thị cảnh báo trước khi tạo/gửi tới nhóm trò chuyện từ bảng chia sẻ"; +"Shows an alert before marking a disappearing message as viewed" = "Hiển thị cảnh báo trước khi đánh dấu tin nhắn tự hủy là đã xem"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "Hiển thị cảnh báo trước khi gửi xác nhận đã đọc từ nút đã xem trong DM hoặc menu"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "Hiển thị cảnh báo trước khi gửi xác nhận đã xem tin từ nút con mắt hoặc menu"; +"Shows an alert before sending an emoji reaction on a note" = "Hiển thị cảnh báo trước khi gửi phản ứng emoji trên ghi chú"; +"Shows an alert before sending an emoji reaction on a story" = "Hiển thị cảnh báo trước khi gửi phản ứng emoji trên tin"; +"Shows an alert before sending an emoji reaction on an Instant" = "Hiển thị cảnh báo trước khi gửi phản ứng emoji trên Instant"; +"Shows an alert before sending a photo or video from the Instants camera" = "Hiển thị cảnh báo trước khi gửi ảnh hoặc video từ máy ảnh Instants"; +"Shows an alert before tapping to switch to the next/previous Instant" = "Hiển thị cảnh báo trước khi chạm để chuyển sang Instant kế tiếp/trước đó"; +"Asks you to confirm before a voice message sends" = "Yêu cầu xác nhận trước khi gửi tin nhắn thoại"; +"Shows an alert to confirm before toggling vanish mode" = "Hiển thị cảnh báo xác nhận trước khi bật/tắt chế độ biến mất"; +"Confirms before you accept or decline a follow request" = "Xác nhận trước khi bạn chấp nhận hoặc từ chối yêu cầu theo dõi"; +"Confirms before a chat theme change applies" = "Xác nhận trước khi áp dụng thay đổi chủ đề trò chuyện"; +"Confirms before the follow button follows someone" = "Xác nhận trước khi nút theo dõi theo dõi một người"; +"Shows an alert when you click the like button on notes to confirm the like" = "Hiển thị cảnh báo khi bạn nhấn nút thích trên ghi chú để xác nhận"; +"Shows an alert when you click the like button on posts to confirm the like" = "Hiển thị cảnh báo xác nhận khi bạn nhấn nút thích trên bài viết"; +"Confirms before a like lands on a reel" = "Xác nhận trước khi thả tim cho một reel"; +"Shows an alert when you click the like button on stories to confirm the like" = "Hiển thị cảnh báo xác nhận khi bạn nhấn nút thích trên tin"; +"Confirms before a comment posts" = "Xác nhận trước khi đăng bình luận"; +"Shows an alert when you click the repost button to confirm before reposting" = "Hiển thị cảnh báo xác nhận khi bạn nhấn nút đăng lại trước khi đăng lại"; +"Shows an alert when you click the unfollow button to confirm" = "Hiển thị cảnh báo xác nhận khi bạn nhấn nút bỏ theo dõi"; +"Shows an alert when you click the video call button to confirm before calling" = "Hiển thị cảnh báo xác nhận khi bạn nhấn nút gọi video trước khi gọi"; +"Shows an alert when you click the voice call button to confirm before calling" = "Hiển thị cảnh báo xác nhận khi bạn nhấn nút gọi thoại trước khi gọi"; +"Shows an alert when you tap a sticker inside a highlight" = "Hiển thị cảnh báo khi bạn chạm sticker trong highlight"; +"Shows an alert when you tap a sticker on someone's story" = "Hiển thị cảnh báo khi bạn chạm sticker trên tin của người khác"; +"Stories & highlights" = "Tin & tin nổi bật"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld giờ"; +"%ld locked" = "%ld đã khoá"; +"%ld min" = "%ld phút"; +"%ldh idle" = "nhàn rỗi %ld giờ"; +"%ldm idle" = "nhàn rỗi %ld phút"; +"%lds" = "%ldgi"; +"%lds idle" = "nhàn rỗi %lds"; +"%lu hidden" = "%lu đã ẩn"; +"4 digits" = "4 chữ số"; +"6 digits" = "6 chữ số"; +"Add hidden chat" = "Thêm chat đã ẩn"; +"Add locked chat" = "Thêm chat đã khoá"; +"Allow Instants screenshots" = "Cho phép chụp Instants"; +"Always ask when opening again" = "Luôn hỏi khi mở lại"; +"Ask again after Instagram returns" = "Hỏi lại sau khi Instagram quay lại"; +"Auto-relock after idle" = "Tự khoá lại sau khi nhàn rỗi"; +"Balanced default" = "Mặc định cân bằng"; +"Best for sensitive sections" = "Tốt nhất cho các mục nhạy cảm"; +"Biometric" = "Sinh trắc học"; +"Change passcode" = "Đổi mật khẩu"; +"Chat hidden" = "Đã ẩn chat"; +"Chat unhidden" = "Đã bỏ ẩn chat"; +"Chat locked" = "Đã khoá chat"; +"Chat unlocked" = "Đã mở khoá chat"; +"Choose a code you'll remember." = "Chọn mã bạn sẽ nhớ."; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "Chọn thời gian mục này vẫn mở khóa khi không hoạt động. Không bao giờ giữ mở khóa cho đến khi Instagram đóng hoặc chạy nền."; +"Confirm current passcode" = "Xác nhận mật khẩu hiện tại"; +"Confirm passcode" = "Xác nhận mật khẩu"; +"Could not save passcode" = "Không thể lưu mật khẩu"; +"Create passcode" = "Tạo mật khẩu"; +"Derivation failed" = "Tạo khóa thất bại"; +"DM inbox" = "Hộp thư DM"; +"Don't share unlock" = "Không dùng chung mở khóa"; +"Each target has its own enable, timeout, and re-lock configuration." = "Mỗi mục tiêu có cấu hình bật, hết giờ và khóa lại riêng."; +"Enable lock" = "Bật khóa"; +"Enter passcode" = "Nhập mật khẩu"; +"Enter value" = "Nhập giá trị"; +"Enter your current passcode to change it" = "Nhập mật khẩu hiện tại để thay đổi"; +"Enter your current passcode to reset it" = "Nhập mật mã hiện tại để đặt lại"; +"Enter your passcode to continue" = "Nhập mật khẩu để tiếp tục"; +"every use" = "mỗi lần dùng"; +"Every use" = "Mỗi lần dùng"; +"Hidden chats" = "Chat đã ẩn"; +"Hidden chats hidden" = "Đã ẩn trò chuyện ẩn"; +"Hidden chats revealed" = "Đã hiện trò chuyện ẩn"; +"👁 Shown in the inbox · Tap to hide" = "👁 Đang hiện trong hộp thư · Chạm để ẩn"; +" · shown in inbox" = " · đang hiện trong hộp thư"; +"Hide chat" = "Ẩn chat"; +"Unhide chat" = "Bỏ ẩn chat"; +"Hold name to reveal" = "Giữ tên để hiện"; +"Hide message preview" = "Ẩn xem trước tin nhắn"; +"Hide this chat?" = "Ẩn chat này?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "Ẩn giao diện RyukGram khỏi ảnh chụp/bản ghi và bỏ qua cảnh báo chụp màn hình của Instagram cho từng tính năng."; +"Idle timeout" = "Hết thời gian nhàn rỗi"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "Giữ mục tiêu này khóa riêng"; +"Less frequent prompts" = "Hỏi ít thường xuyên hơn"; +"Lock" = "Khoá"; +"Lock chat" = "Khoá chat"; +"Lock every time" = "Khoá mỗi lần"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "Khóa mỗi lần ưu tiên hơn thời gian chờ không hoạt động. Không dùng chung mở khóa giữ mục tiêu này tách biệt."; +"Lock targets" = "Mục tiêu khoá"; +"Lock the tweak" = "Khoá tweak"; +"Lock this chat" = "Khoá chat này"; +"Lock this chat?" = "Khoá chat này?"; +"Lock with passcode" = "Khoá bằng mật khẩu"; +"Locked chats" = "Chat đã khoá"; +"Long-press a chat to lock it individually" = "Giữ lâu một chat để khoá riêng nó"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "Giữ lâu một chat DM → Ẩn chat để thêm vào đây. Chat đã ẩn sẽ bị lọc khỏi hộp thư cho đến khi bạn xoá khỏi danh sách này."; +"Long-press a DM to add" = "Giữ lâu một DM để thêm"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "Nhấn giữ tên tài khoản ở đầu hộp thư DM để hiện hoặc ẩn các cuộc trò chuyện ẩn của bạn"; +"Longest idle window" = "Khoảng chờ không hoạt động dài nhất"; +"Manage locked chats" = "Quản lý chat đã khoá"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "Công tắc chính. Tắt để vô hiệu hoá mọi mục tiêu khoá mà không mất cấu hình từng mục tiêu."; +"Never" = "Không bao giờ"; +"No passcode set" = "Chưa đặt mật khẩu"; +"Nothing here yet." = "Chưa có gì ở đây."; +"Off" = "Tắt"; +"On" = "Bật"; +"On — %@" = "Bật — %@"; +"On — %@ + %ld more" = "Bật — %@ + thêm %ld"; +"On — no targets enabled" = "Bật — chưa bật mục tiêu nào"; +"Passcode" = "Mật khẩu"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "Mật khẩu + sinh trắc học. Khoá cửa sổ cài đặt tweak, bộ sưu tập, nhật ký tin nhắn đã xoá, từng chat và toàn bộ ứng dụng."; +"Passcode changed" = "Đã đổi mật khẩu"; +"Passcode reset" = "Đã đặt lại mật khẩu"; +"Passcode set" = "Đã đặt mật khẩu"; +"Passcode too short" = "Mật mã quá ngắn"; +"Passcodes did not match — try again" = "Mật khẩu không khớp — thử lại"; +"Per-chat locks" = "Khoá theo từng chat"; +"Prompt before Instagram opens" = "Hỏi trước khi mở Instagram"; +"Prompt before Profile Analyzer opens" = "Hỏi trước khi mở Phân tích hồ sơ"; +"Prompt before the deleted-messages log opens" = "Hỏi trước khi mở nhật ký tin nhắn đã xoá"; +"Prompt before the gallery opens" = "Hỏi trước khi mở bộ sưu tập"; +"Prompt before tweak settings open" = "Hỏi trước khi mở cài đặt tweak"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "Hỏi mỗi khi vào hộp thư DM, kể cả mở thẳng vào tin nhắn"; +"Re-enter the same passcode" = "Nhập lại cùng mật khẩu"; +"Re-lock on background" = "Khoá lại khi vào nền"; +"re-lock on bg" = "khoá lại khi nền"; +"Recently hidden" = "Đã ẩn gần đây"; +"Prompt before holding the inbox name reveals hidden chats" = "Yêu cầu trước khi giữ tên hiển thị các cuộc trò chuyện ẩn"; +"Reveal hidden chats" = "Hiện trò chuyện ẩn"; +"Recently locked" = "Đã khoá gần đây"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "Ẩn các nút RyukGram khỏi ảnh chụp, bản ghi màn hình và phản chiếu"; +"Remove screenshot alert" = "Xoá cảnh báo chụp màn hình"; +"Replace inbox preview with • • •" = "Thay bản xem trước hộp thư bằng • • •"; +"Require passcode for this section" = "Yêu cầu mật mã cho mục này"; +"Requires your current passcode" = "Yêu cầu mật mã hiện tại của bạn"; +"Reset passcode" = "Đặt lại mật khẩu"; +"Reset passcode?" = "Đặt lại mật khẩu?"; +"Screenshots & capture" = "Chụp & quay màn hình"; +"Security & Privacy" = "Bảo mật & Quyền riêng tư"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "Đặt mật khẩu để khoá Cài đặt, Bộ sưu tập, nhật ký tin nhắn đã xoá, từng chat, hộp thư DM, Phân tích hồ sơ hoặc chính Instagram."; +"Set passcode" = "Đặt mật khẩu"; +"Short idle window" = "Khoảng chờ không hoạt động ngắn"; +"Stay unlocked until app close or background" = "Giữ mở khóa cho đến khi đóng ứng dụng hoặc chạy nền"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "Chặn thông báo \"X đã chụp màn hình\" của IG trên tin, tin nhắn và media biến mất"; +"Tap Unlock" = "Chạm Mở khoá"; +"Tap Unlock or enter your passcode" = "Chạm Mở khoá hoặc nhập mật khẩu"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "Thao tác này xoá mật khẩu, tắt mọi mục tiêu khoá và mở khoá toàn bộ chat. Bộ sưu tập và dữ liệu tin nhắn đã xoá không bị ảnh hưởng."; +"Thread %@" = "Cuộc trò chuyện %@"; +"Tweak settings" = "Cài đặt tweak"; +"Unlock" = "Mở khoá"; +"Unlock %@" = "Mở khoá %@"; +"Unlock chat" = "Mở khoá chat"; +"Unlock Instagram" = "Mở khoá Instagram"; +"Unlock this chat" = "Mở khoá chat này"; +"Use %@" = "Dùng %@"; +"Username (looks up the DM thread) or raw thread ID" = "Tên người dùng (tra cứu chat DM) hoặc ID chat thô"; +"Username or thread ID" = "Tên người dùng hoặc ID chat"; +"Wrong passcode" = "Sai mật khẩu"; +"Wrong passcode • %ld attempts" = "Sai mật mã • %ld lần thử"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "Bảo vệ"; +"Password-protect" = "Bảo vệ bằng mật khẩu"; +"On — tap to change" = "Bật — chạm để thay đổi"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "Bản sao lưu được mã hóa bằng AES-256. Bạn sẽ cần mật khẩu này để khôi phục — không có cách nào lấy lại nếu bị mất."; +"Optional. Lock the backup behind a password so only you can restore it." = "Tùy chọn. Khóa bản sao lưu bằng mật khẩu để chỉ bạn mới khôi phục được."; +"Backup password" = "Mật khẩu sao lưu"; +"You'll need this to restore. It can't be recovered if lost." = "Bạn sẽ cần mật khẩu này để khôi phục. Không thể lấy lại nếu bị mất."; +"Password" = "Mật khẩu"; +"Confirm password" = "Xác nhận mật khẩu"; +"Set" = "Đặt"; +"Use at least 4 characters." = "Dùng ít nhất 4 ký tự."; +"The passwords don't match." = "Mật khẩu không khớp."; +"Try again" = "Thử lại"; +"Encrypted backup" = "Bản sao lưu đã mã hóa"; +"Enter the password used to protect this backup." = "Nhập mật khẩu đã dùng để bảo vệ bản sao lưu này."; +"Wrong password. Try again." = "Sai mật khẩu. Thử lại."; +"Decrypting backup…" = "Đang giải mã bản sao lưu…"; +"Encrypting backup…" = "Đang mã hóa bản sao lưu…"; +"%ld of %ld selected · %@" = "Đã chọn %ld/%ld · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "Chọn từng kho dữ liệu để đưa vào. Chạm vào một hàng để xem nội dung."; + +"%lu account(s)" = "%lu tài khoản"; +"%lu account(s) · %lu image(s) · %@" = "%lu tài khoản · %lu ảnh · %@"; +"%lu file(s) · %@" = "%lu tệp · %@"; +"%lu preferences" = "%lu tùy chọn"; +"(none)" = "(không có)"; +"Apply backup?" = "Áp dụng bản sao lưu?"; +"Applying backup…" = "Đang áp dụng bản sao lưu…"; +"archive error" = "lỗi lưu trữ"; +"Archived snapshots" = "Ảnh chụp đã lưu trữ"; +"Backup & Restore" = "Sao lưu & Khôi phục"; +"Backup exported" = "Đã xuất bản sao lưu"; +"Backup failed" = "Sao lưu thất bại"; +"Backup has no importable sections." = "Bản sao lưu không có mục nào để nhập."; +"Chat & story filters" = "Bộ lọc trò chuyện & tin"; +"Chat backgrounds" = "Hình nền trò chuyện"; +"Corrupt entry path." = "Đường dẫn mục bị hỏng."; +"Could not decompress archive." = "Không thể giải nén tệp lưu trữ."; +"Could not open archive." = "Không thể mở tệp lưu trữ."; +"Could not open staging file." = "Không thể mở tệp tạm."; +"Could not read the backup archive." = "Không thể đọc tệp sao lưu."; +"Could not write archive." = "Không thể ghi tệp lưu trữ."; +"Could not write backup file." = "Không thể ghi tệp sao lưu."; +"Could not write extracted file." = "Không thể ghi tệp đã giải nén."; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "Dữ liệu hiện có của các mục đã chọn sẽ bị thay thế. Có thể cần khởi động lại để mọi thứ có hiệu lực."; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "Xuất hoặc nhập dữ liệu RyukGram — cài đặt, bộ lọc theo từng tài khoản, cuộc trò chuyện ẩn & đã khóa, Profile Analyzer, thư viện, hình nền trò chuyện, tin nhắn đã xóa và nhật ký đã xem. Chọn bất kỳ tổ hợp nào ở mỗi trang. Cài đặt được giữ dưới dạng tệp JSON thuần; gói có kèm media được xuất dưới dạng .ryukbak nén."; +"Feature data" = "Dữ liệu tính năng"; +"Import mode" = "Chế độ nhập"; +"Merge" = "Gộp"; +"Replace" = "Thay thế"; +"Add the backup's data to what's already here" = "Thêm dữ liệu của bản sao lưu vào dữ liệu hiện có"; +"Clear existing data, then apply the backup" = "Xóa dữ liệu hiện tại, sau đó áp dụng bản sao lưu"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "Gộp giữ lại dữ liệu trên thiết bị này và thêm dữ liệu của bản sao lưu — các mục trùng được gộp lại, bao gồm cả thư viện."; +"Replace clears existing data for each ticked item, then applies the backup." = "Thay thế xóa dữ liệu hiện có của từng mục được chọn, sau đó áp dụng bản sao lưu."; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "Bản sao lưu sẽ được gộp vào dữ liệu hiện có của bạn — không có gì bị xóa, các mục trùng được gộp lại. Có thể cần khởi động lại để mọi thứ có hiệu lực."; +"Hidden & locked chats" = "Cuộc trò chuyện ẩn & đã khóa"; +"Import" = "Nhập"; +"Inspect the full manifest" = "Xem toàn bộ manifest"; +"Load a .json or .ryukbak backup" = "Tải bản sao lưu .json hoặc .ryukbak"; +"Not a RyukGram backup archive." = "Không phải tệp sao lưu RyukGram."; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "Đưa cài đặt về mặc định và xóa dữ liệu"; +"Swipe a row to clear it." = "Vuốt một hàng để xóa."; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "Các hàng được đánh dấu “Dùng chung” không gắn với tài khoản nào và luôn theo lựa chọn riêng của chúng."; +"%lu file(s)" = "%lu tệp"; +"Clear all data" = "Xóa tất cả dữ liệu"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "Mọi mục thư viện, nhật ký và bản ghi đã lưu sẽ bị xóa khỏi thiết bị này. Cài đặt của bạn được giữ lại — dùng Đặt lại để đưa chúng về mặc định. Không thể hoàn tác."; +"Accounts" = "Tài khoản"; +"All accounts (%ld)" = "Tất cả tài khoản (%ld)"; +"Pick at least one account." = "Hãy chọn ít nhất một tài khoản."; +"Signed in" = "Đang đăng nhập"; +"Shared" = "Dùng chung"; +"Per-account data is limited to the accounts ticked here." = "Dữ liệu theo từng tài khoản chỉ giới hạn ở các tài khoản được chọn ở đây."; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "Dữ liệu theo từng tài khoản chỉ bị xóa cho %@. Dữ liệu dùng chung theo lựa chọn riêng của nó. Không thể hoàn tác."; +"Preparing backup…" = "Đang chuẩn bị bản sao lưu…"; +"Reading backup…" = "Đang đọc bản sao lưu…"; +"RyukGram's own data on this device" = "Dữ liệu riêng của RyukGram trên thiết bị này"; +"Save settings or a full backup" = "Lưu cài đặt hoặc bản sao lưu đầy đủ"; +"Tick what to apply. Rows not in this backup are hidden." = "Chọn nội dung cần áp dụng. Các hàng không có trong bản sao lưu này sẽ bị ẩn."; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "Chọn nội dung cần đưa vào. Chạm một hàng để xem chi tiết. Thêm thư viện, hình nền trò chuyện hoặc tin nhắn đã xóa sẽ tạo gói .ryukbak nén."; +"Truncated entry data." = "Dữ liệu mục bị cắt cụt."; +"Truncated entry length." = "Độ dài mục bị cắt cụt."; +"Truncated entry path." = "Đường dẫn mục bị cắt cụt."; +"Unsafe entry path." = "Đường dẫn mục không an toàn."; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "Nâng cao"; +"All tweak options are disabled" = "Tất cả tùy chọn tweak đã tắt"; +"Auto-clear cache" = "Tự động xóa bộ nhớ đệm"; +"Automatically opens settings when the app launches" = "Tự động mở cài đặt khi ứng dụng khởi chạy"; +"Cache" = "Bộ nhớ đệm"; +"Cache cleared" = "Đã xóa bộ nhớ đệm"; +"Calculating cache size…" = "Đang tính kích thước bộ nhớ đệm…"; +"Clear" = "Xóa"; +"Clear cache" = "Xóa bộ nhớ đệm"; +"Clear cache (%@)" = "Xóa bộ nhớ đệm (%@)"; +"Clearing cache…" = "Đang xóa bộ nhớ đệm…"; +"Clearing still scans on demand." = "Việc xóa vẫn quét theo yêu cầu."; +"Daily" = "Hàng ngày"; +"Disable all tweak options" = "Tắt tất cả tùy chọn tweak"; +"Disable safe mode" = "Tắt chế độ an toàn"; +"Enable tweak settings quick-access" = "Bật truy cập nhanh cài đặt tweak"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "Instagram chạy như gốc khi bật mục này. Tắt đi để khôi phục cài đặt của bạn."; +"Tap to re-enable everything" = "Chạm để bật lại tất cả"; +"Turn every feature off — your settings are kept" = "Tắt mọi tính năng — cài đặt của bạn được giữ lại"; +"Fix duplicate notifications" = "Sửa thông báo trùng lặp"; +"Free %@ of Instagram cache." = "Giải phóng %@ bộ nhớ đệm Instagram."; +"Freed %@" = "Đã giải phóng %@"; +"Hold on the home tab to open RyukGram settings" = "Nhấn giữ tab trang chủ để mở cài đặt RyukGram"; +"Monthly" = "Hàng tháng"; +"Nothing to clear" = "Không có gì để xóa"; +"Off skips the size scan when Advanced opens." = "Tắt sẽ bỏ qua quét kích thước khi mở Nâng cao."; +"Pause playback when opening settings" = "Tạm dừng phát khi mở cài đặt"; +"Always show what's new" = "Luôn hiển thị tính năng mới"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "Giữ chấm xanh trên mọi tính năng mới thay vì xóa sau khi xem"; +"Preserve messages database" = "Giữ cơ sở dữ liệu tin nhắn"; +"Pauses any playing video/audio when settings opens" = "Tạm dừng mọi video/âm thanh đang phát khi mở cài đặt"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "Ngăn Instagram đặt lại cài đặt sau khi gặp sự cố (tự chịu rủi ro)"; +"Prevents two banners for the same message when IG is in the foreground" = "Ngăn hai biểu ngữ cho cùng một tin nhắn khi IG đang chạy nền trước"; +"Remove Instagram's cached images, videos, and temporary files." = "Xóa ảnh, video và tệp tạm đã lưu trong bộ nhớ đệm của Instagram."; +"Reset onboarding state" = "Đặt lại trạng thái hướng dẫn"; +"Run a silent cache clear on launch when the interval has elapsed." = "Tự động xóa bộ nhớ đệm âm thầm khi khởi chạy nếu đã đến thời gian."; +"Show cache size" = "Hiển thị kích thước bộ nhớ đệm"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "Bỏ qua cơ sở dữ liệu tin nhắn khi xóa — giữ DM, bản nháp và tin nhắn đã lưu."; +"Show tweak settings on app launch" = "Hiển thị cài đặt tweak khi khởi chạy ứng dụng"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "Loại bỏ thông báo thứ hai mà IG đưa vào hàng đợi trong ứng dụng khi tiện ích thông báo cũng đang gửi nó."; +"Weekly" = "Hàng tuần"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "Hành động"; +"Advanced experimental features" = "Tính năng thử nghiệm nâng cao"; +"All experimental toggles will be turned off. Instagram will restart." = "Tất cả công tắc thử nghiệm sẽ bị tắt. Instagram sẽ khởi động lại."; +"Direct Notes — Audio reply" = "Ghi chú trực tiếp — Trả lời âm thanh"; +"Direct Notes — Avatar reply" = "Ghi chú trực tiếp — Trả lời avatar"; +"Direct Notes — Friend Map" = "Ghi chú trực tiếp — Bản đồ bạn bè"; +"Direct Notes — GIFs & stickers reply" = "Ghi chú trực tiếp — Trả lời GIF & sticker"; +"Direct Notes — Photo reply" = "Ghi chú trực tiếp — Trả lời ảnh"; +"Disabled after repeated crashes." = "Đã tắt sau nhiều lần gặp sự cố."; +"Enables GIF/sticker replies" = "Bật trả lời bằng GIF/sticker"; +"Enables photo replies" = "Bật trả lời bằng ảnh"; +"Enables the audio-note reply type" = "Bật kiểu trả lời ghi chú âm thanh"; +"Enables the avatar reply type" = "Bật kiểu trả lời avatar"; +"Experimental flags reset" = "Đã đặt lại cờ thử nghiệm"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "Bật những gì bạn muốn, sau đó chạm Áp dụng để khởi động lại. Một số cờ có thể không hoạt động trên mọi tài khoản hoặc phiên bản IG. Cờ sẽ tự đặt lại nếu IG gặp sự cố khi khởi chạy 3 lần."; +"Forces Prism-gated experiments on" = "Buộc bật thử nghiệm bị khóa bởi Prism"; +"Forces the Homecoming home surface / nav on" = "Buộc bật giao diện / điều hướng Homecoming"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "Buộc bật giao diện QuickSnap / Instants trong bảng tin, hộp thư, tin và khay ghi chú"; +"Got it" = "Đã hiểu"; +"Heads up" = "Lưu ý"; +"Hidden Instagram experiments" = "Thử nghiệm Instagram ẩn"; +"Hidden Instagram experiments (in Advanced)" = "Thử nghiệm Instagram ẩn (trong Nâng cao)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "Ghi chú & QuickSnap"; +"Prism design system" = "Hệ thống thiết kế Prism"; +"QuickSnap (Instants)" = "QuickSnap (Instants)"; +"Shows the friend map entry in Direct Notes" = "Hiển thị mục bản đồ bạn bè trong Ghi chú trực tiếp"; +"Surfaces" = "Giao diện"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "Các công tắc này bật thử nghiệm ẩn của Instagram. Một số tính năng có thể không hoạt động trên mọi tài khoản hoặc phiên bản IG. Nếu IG liên tục gặp sự cố khi khởi chạy, các cờ sẽ tự đặt lại sau 3 lần khởi động thất bại."; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "Bật/tắt thử nghiệm ẩn của Instagram. Một số có thể không hoạt động trên mọi tài khoản hoặc phiên bản IG."; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "Ô nút"; +"Change the value on the right" = "Thay đổi giá trị bên phải"; +"Could not delete: %@" = "Không thể xóa: %@"; +"Debug" = "Gỡ lỗi"; +"Delete an imported override and fall back to the shipped strings" = "Xóa ghi đè đã nhập và quay về chuỗi mặc định"; +"Deleted %@ override. Restart to apply." = "Đã xóa ghi đè %@. Khởi động lại để áp dụng."; +"Enable FLEX gesture" = "Bật cử chỉ FLEX"; +"Enable file logging" = "Bật ghi nhật ký ra tệp"; +"Export strings" = "Xuất chuỗi"; +"Hold 5 fingers on the screen to open FLEX" = "Giữ 5 ngón tay trên màn hình để mở FLEX"; +"I have %@%@" = "Tôi có %@%@"; +"Import a .strings file for a language" = "Nhập tệp .strings cho một ngôn ngữ"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "Nhập tệp .strings để cập nhật bản dịch. Chọn ngôn ngữ, chọn tệp, khởi động lại."; +"Link Cell" = "Ô liên kết"; +"Localization" = "Bản địa hóa"; +"Log file is empty" = "Tệp nhật ký trống"; +"Logging" = "Ghi nhật ký"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "Ghi lại hoạt động của riêng RyukGram vào một tệp duy nhất có thể chia sẻ trên ứng dụng và các tiện ích mở rộng. Mặc định tắt — bật lên, tái hiện sự cố, rồi chia sẻ."; +"Menu Cell" = "Ô menu"; +"Navigation Cell" = "Ô điều hướng"; +"No imported localization files to reset." = "Không có tệp bản địa hóa đã nhập để đặt lại."; +"No overrides" = "Không có ghi đè"; +"Open FLEX on app focus" = "Mở FLEX khi ứng dụng được chọn"; +"Open FLEX on app launch" = "Mở FLEX khi khởi chạy ứng dụng"; +"Opens FLEX when the app is focused" = "Mở FLEX khi ứng dụng được chọn"; +"Opens FLEX when the app launches" = "Mở FLEX khi ứng dụng khởi chạy"; +"Pick a language and share its .strings file" = "Chọn ngôn ngữ để chia sẻ tệp .strings của nó"; +"Pick a language to delete the imported file" = "Chọn ngôn ngữ để xóa tệp đã nhập"; +"Pick a language to export" = "Chọn ngôn ngữ để xuất"; +"Reset localization" = "Đặt lại bản địa hóa"; +"Share log file" = "Chia sẻ tệp nhật ký"; +"Static Cell" = "Ô tĩnh"; +"Stepper cell" = "Ô bước"; +"Switch Cell" = "Ô công tắc"; +"Switch Cell (Restart)" = "Ô công tắc (Khởi động lại)"; +"Tap the switch" = "Chạm công tắc"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "Các tính năng này phụ thuộc vào cờ ẩn của Instagram và có thể không hoạt động trên mọi tài khoản hoặc phiên bản."; +"Update localization file" = "Cập nhật tệp bản địa hóa"; +"Using icon" = "Đang dùng biểu tượng"; +"Using image" = "Đang dùng ảnh"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "Cài đặt %@"; +"%lu items" = "%lu mục"; +"Cancelled" = "Đã hủy"; +"Carousel" = "Băng chuyền"; +"Carousel · %lu items" = "Băng chuyền · %lu mục"; +"Copied %lu URLs" = "Đã sao chép %lu URL"; +"Copied caption" = "Đã sao chép chú thích"; +"Copied download URL" = "Đã sao chép URL tải xuống"; +"Copied quality info" = "Đã sao chép thông tin chất lượng"; +"Copied video URL" = "Đã sao chép URL video"; +"Copy all URLs" = "Sao chép tất cả URL"; +"Copy caption" = "Sao chép chú thích"; +"Copy download URL" = "Sao chép URL tải xuống"; +"Could not extract any URLs" = "Không thể trích xuất URL nào"; +"Could not extract audio URL" = "Không thể trích xuất URL âm thanh"; +"Could not extract media URL" = "Không thể trích xuất URL media"; +"Could not extract photo URL" = "Không thể trích xuất URL ảnh"; +"Could not extract video URL" = "Không thể trích xuất URL video"; +"Done" = "Xong"; +"Download all stories and share?" = "Tải tất cả tin và chia sẻ?"; +"Download all to Photos" = "Tải tất cả vào Ảnh"; +"Download and share all" = "Tải xuống và chia sẻ tất cả"; +"Download failed" = "Tải xuống thất bại"; +"Downloaded %lu items" = "Đã tải %lu mục"; +"Downloading audio…" = "Đang tải âm thanh…"; +"Failed to save" = "Lưu thất bại"; +"File" = "Tệp"; +"HD" = "HD"; +"HD download complete" = "Tải HD hoàn tất"; +"HD video" = "Video HD"; +"Mute audio" = "Tắt âm thanh"; +"No caption on this post" = "Không có chú thích trong bài viết này"; +"No carousel children" = "Không có mục con carousel"; +"No cover image" = "Không có ảnh bìa"; +"No media" = "Không có media"; +"No media to expand" = "Không có media để mở rộng"; +"No media to show" = "Không có media để hiển thị"; +"No media URL" = "Không có URL media"; +"No URLs" = "Không có URL"; +"No URLs found" = "Không tìm thấy URL"; +"No video URL" = "Không có URL video"; +"Not a carousel" = "Không phải carousel"; +"Nothing to share" = "Không có gì để chia sẻ"; +"Opening creator…" = "Đang mở người tạo..."; +"Photo library access denied" = "Quyền truy cập thư viện ảnh bị từ chối"; +"Photos access denied" = "Quyền truy cập Ảnh bị từ chối"; +"Preparing repost…" = "Đang chuẩn bị đăng lại..."; +"Raw image" = "Ảnh thô"; +"Repost" = "Đăng lại"; +"Repost unavailable" = "Không thể đăng lại"; +"Save failed" = "Lưu thất bại"; +"Saved %lu items" = "Đã lưu %lu mục"; +"Saved to Photos" = "Đã lưu vào Ảnh"; +"Saved to RyukGram" = "Đã lưu vào RyukGram"; +"Saving to Photos" = "Đang lưu vào Ảnh"; +"Saving…" = "Đang lưu..."; +"Unmute audio" = "Bật âm thanh"; +"Video · %@" = "Video · %@"; +"View cover" = "Xem ảnh bìa"; +"View mentions" = "Xem lượt nhắc"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "Tự do"; +"Chat font saved" = "Đã lưu phông chữ trò chuyện"; +"Reopen this chat to see the new font" = "Mở lại cuộc trò chuyện này để xem phông chữ mới"; +"Remove background" = "Xóa nền"; +"No subject found" = "Không tìm thấy chủ thể"; +"No stickers yet" = "Chưa có nhãn dán"; +"Send drawing" = "Gửi bản vẽ"; +"Send my drawing" = "Gửi bản vẽ của tôi"; +"Paste image / sticker" = "Dán ảnh / nhãn dán"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "Chạm vào nhãn dán trên bàn phím\nđể thêm vào bản vẽ"; + +" %lu votes · avg %.0f%% " = " %lu lượt bình chọn · trung bình %.0f%% "; +"%@ can't be converted" = "%@ không thể chuyển đổi"; +"%@ unsent a message" = "%@ đã thu hồi một tin nhắn"; +"%@ unsent a message from %@" = "%@ đã thu hồi một tin nhắn từ %@"; +"A message was unsent" = "Một tin nhắn đã được thu hồi"; +"Add" = "Thêm"; +"Add to block list" = "Thêm vào danh sách chặn"; +"Added to block list" = "Đã thêm vào danh sách chặn"; +"Added to exclude list" = "Đã thêm vào danh sách loại trừ"; +"Audio not loaded yet. Play the message first and try again." = "Âm thanh chưa được tải. Hãy phát tin nhắn trước rồi thử lại."; +"Audio sent" = "Đã gửi âm thanh"; +"Audio URL not available" = "URL âm thanh không khả dụng"; +"Audio/Video from Files" = "Âm thanh/Video từ Tệp"; +"Blocked" = "Đã chặn"; +"Cancel" = "Hủy"; +"Clear preserved messages?" = "Xóa tin nhắn đã lưu giữ?"; +"Converting…" = "Đang chuyển đổi..."; +"Copy link" = "Sao chép liên kết"; +"Copy text" = "Sao chép văn bản"; +"Could not copy selected video" = "Không thể sao chép video đã chọn"; +"Could not find media" = "Không thể tìm thấy media"; +"Could not find story media" = "Không thể tìm thấy media tin"; +"Could not get audio data. Try again after refreshing the chat." = "Không thể lấy dữ liệu âm thanh. Hãy thử lại sau khi làm mới cuộc trò chuyện."; +"Disable read receipts" = "Tắt xác nhận đã đọc"; +"Disappearing media" = "Media biến mất"; +"Download audio" = "Tải âm thanh"; +"Enable read receipts" = "Bật xác nhận đã đọc"; +"Error: %@" = "Lỗi: %@"; +"Exclude chat" = "Loại trừ cuộc trò chuyện"; +"Exclude from seen" = "Loại trừ khỏi đã xem"; +"Exclude story seen" = "Loại trừ đã xem tin"; +"Excluded" = "Đã loại trừ"; +"Extracting audio…" = "Đang trích xuất âm thanh..."; +"FFmpeg conversion failed" = "Chuyển đổi FFmpeg thất bại"; +"File sending not supported" = "Không hỗ trợ gửi tệp"; +"Follow" = "Theo dõi"; +"Following" = "Đang theo dõi"; +"Format not supported without FFmpegKit" = "Không hỗ trợ định dạng nếu thiếu FFmpegKit"; +"Inserts a button on disappearing media overlays" = "Chèn nút trên lớp phủ media biến mất"; +"Inserts a speaker button to mute/unmute disappearing media" = "Chèn nút loa để bật/tắt âm thanh media biến mất"; +"Inserts an eye button to mark the current disappearing media as viewed" = "Chèn nút con mắt để đánh dấu media biến mất hiện tại là đã xem"; +"Link copied" = "Đã sao chép liên kết"; +"Mark as viewed" = "Đánh dấu là đã xem"; +"Marking as viewed advances to the next stacked media instead of closing" = "Đánh dấu đã xem sẽ chuyển sang phương tiện xếp chồng tiếp theo thay vì đóng lại"; +"Mark messages as seen" = "Đánh dấu tin nhắn là đã xem"; +"Mark seen" = "Đánh dấu đã xem"; +"Marked as viewed" = "Đã đánh dấu là đã xem"; +"Marked messages as seen" = "Đã đánh dấu tin nhắn là đã xem"; +"Mentions" = "Lượt nhắc"; +"Message from %@ was unsent" = "Tin nhắn từ %@ đã bị thu hồi"; +"Message sender not found" = "Không tìm thấy người gửi tin nhắn"; +"Messages settings" = "Cài đặt tin nhắn"; +"Mute story audio" = "Tắt âm thanh tin"; +"no audio track could be read" = "không đọc được bản âm thanh"; +"No audio URL found. Try again after refreshing the chat." = "Không tìm thấy URL âm thanh. Hãy thử lại sau khi làm mới cuộc trò chuyện."; +"No mentions in this story" = "Không có lượt nhắc trong tin này"; +"No thread key" = "Không có khóa thread"; +"No video selected" = "Chưa chọn video"; +"No voice send method found" = "Không tìm thấy phương thức gửi thoại"; +"Note has no downloadable content" = "Ghi chú không có nội dung tải xuống được"; +"Note text copied" = "Đã sao chép văn bản ghi chú"; +"Open GitHub" = "Mở GitHub"; +"Pick audio or video" = "Chọn âm thanh hoặc video"; +"Read receipts disabled" = "Đã tắt xác nhận đã đọc"; +"Read receipts enabled" = "Đã bật xác nhận đã đọc"; +"Read receipts will be blocked for this chat." = "Xác nhận đã đọc sẽ bị chặn cho cuộc trò chuyện này."; +"Read receipts will no longer be blocked for this chat." = "Xác nhận đã đọc sẽ không còn bị chặn cho cuộc trò chuyện này."; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "Làm mới tab DM sẽ xóa %lu tin nhắn đã thu hồi được lưu giữ. Không thể hoàn tác."; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "Làm mới tab DM sẽ xóa %lu tin nhắn đã thu hồi được lưu giữ. Không thể hoàn tác."; +"Remove" = "Xóa"; +"Remove from block list" = "Xóa khỏi danh sách chặn"; +"Remove from exclude list" = "Xóa khỏi danh sách loại trừ"; +"Removed" = "Đã xóa"; +"Removed from list" = "Đã xóa khỏi danh sách"; +"Save GIF" = "Lưu GIF"; +"Selection too short (min 0.5s)" = "Đoạn chọn quá ngắn (tối thiểu 0.5 giây)"; +"Send anyway" = "Vẫn gửi"; +"Send Audio" = "Gửi âm thanh"; +"Send failed: %@" = "Gửi thất bại: %@"; +"Send File" = "Gửi tệp"; +"Send service not found" = "Không tìm thấy dịch vụ gửi"; +"Show audio toggle" = "Hiển thị nút bật/tắt âm thanh"; +"Show mark-as-viewed button" = "Hiển thị nút đánh dấu đã xem"; +"Story read receipts disabled" = "Đã tắt xác nhận đã xem tin"; +"Story read receipts enabled" = "Đã bật xác nhận đã xem tin"; +"This chat will resume normal read-receipt behavior." = "Cuộc trò chuyện này sẽ trở lại hành vi xác nhận đã đọc bình thường."; +"This file" = "Tệp này"; +"Total: %@" = "Tổng: %@"; +"Un-exclude chat" = "Bỏ loại trừ cuộc trò chuyện"; +"Un-exclude story seen" = "Bỏ loại trừ đã xem tin"; +"Un-excluded" = "Đã bỏ loại trừ"; +"Unblocked" = "Đã bỏ chặn"; +"Unlimited replay enabled" = "Đã bật phát lại không giới hạn"; +"Unmute story audio" = "Bật âm thanh tin"; +"Unsent" = "Đã thu hồi"; +"Upload Audio" = "Tải âm thanh lên"; +"VC not found" = "Không tìm thấy VC"; +"Video from Library" = "Video từ Thư viện"; +"Visual messages will expire" = "Tin nhắn hình ảnh sẽ hết hạn"; +"Visual messages: expiring" = "Tin nhắn hình ảnh: sẽ hết hạn"; +"Visual messages: unlimited replay" = "Tin nhắn hình ảnh: phát lại không giới hạn"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "Thêm hình nền"; +"Add Chat Background" = "Thêm hình nền trò chuyện"; +"Adds your own image backgrounds to Instagram chats" = "Thêm hình nền của riêng bạn vào các cuộc trò chuyện Instagram"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "Sau khi bật, mở một cuộc trò chuyện bất kỳ, chạm nút chủ đề, rồi chạm biểu tượng ảnh ở góc trên bên phải."; +"Blur" = "Làm mờ"; +"Browse chats" = "Duyệt cuộc trò chuyện"; +"Browse chats (%ld)" = "Duyệt cuộc trò chuyện (%ld)"; +"Change Background" = "Đổi hình nền"; +"Change default" = "Đổi mặc định"; +"Chat Backgrounds" = "Hình nền trò chuyện"; +"Choose an image used when no chat override exists" = "Chọn ảnh dùng khi không có thiết lập riêng cho cuộc trò chuyện"; +"Clear default" = "Xóa mặc định"; +"Couldn't import image" = "Không thể nhập ảnh"; +"Adjust settings" = "Điều chỉnh cài đặt"; +"Choose Media" = "Chọn phương tiện"; +"Converting GIF" = "Đang chuyển đổi GIF"; +"Couldn't import video" = "Không thể nhập video"; +"Crop & resize" = "Cắt và đổi kích thước"; +"Crop & trim" = "Cắt và xén"; +"Custom Chat Background" = "Hình nền trò chuyện tùy chỉnh"; +"Default background" = "Hình nền mặc định"; +"Dim in dark mode" = "Làm tối ở chế độ tối"; +"Enable custom backgrounds" = "Bật hình nền tùy chỉnh"; +"Enter a username, chat name, or thread ID." = "Nhập tên người dùng, tên cuộc trò chuyện hoặc ID thread."; +"Group" = "Nhóm"; +"Image Settings" = "Cài đặt ảnh"; +"Auto bubble color" = "Màu bong bóng tự động"; +"Bubble color" = "Màu bong bóng"; +"Me" = "Tôi"; +"Both" = "Cả hai"; +"Gradient" = "Chuyển sắc"; +"Direction" = "Hướng"; +"Vertical" = "Dọc"; +"Horizontal" = "Ngang"; +"Diagonal" = "Chéo"; +"Text color" = "Màu chữ"; +"Automatic (contrast)" = "Tự động (tương phản)"; +"Choose color…" = "Chọn màu…"; +"Tap to apply · hold to edit" = "Chạm để áp dụng · giữ để chỉnh sửa"; +"Library" = "Thư viện"; +"Library, default, and per-chat overrides will be deleted." = "Thư viện, mặc định và các thiết lập riêng theo cuộc trò chuyện sẽ bị xóa."; +"No Custom" = "Không tùy chỉnh"; +"Opacity" = "Độ mờ"; +"Photo Library" = "Thư viện ảnh"; +"Pick default" = "Chọn mặc định"; +"Pinch + drag to position" = "Chụm + kéo để định vị"; +"Quit and reopen Instagram for the change to take effect." = "Thoát và mở lại Instagram để thay đổi có hiệu lực."; +"Recently set" = "Đặt gần đây"; +"Remove the global fallback background" = "Xóa hình nền dự phòng toàn cục"; +"Replace the default background image" = "Thay ảnh nền mặc định"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "Đặt lại đưa độ mờ về 1.0, làm mờ về 0, làm tối về 0."; +"RyukGram Gallery" = "Thư viện RyukGram"; +"Search username, name, or thread ID" = "Tìm tên người dùng, tên hoặc ID thread"; +"Set as default" = "Đặt làm mặc định"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "Chạm dấu cộng để thêm. Chạm một hình nền để chỉnh sửa, đặt làm mặc định hoặc xóa."; +"This Chat Background" = "Hình nền cuộc trò chuyện này"; +"Thread ID" = "ID thread"; +"Used only when a chat does not have its own custom background." = "Chỉ dùng khi một cuộc trò chuyện không có hình nền tùy chỉnh riêng."; +"View and manage chats with custom backgrounds" = "Xem và quản lý các cuộc trò chuyện có hình nền tùy chỉnh"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "Thêm vị trí"; +"Add preset" = "Thêm cài đặt sẵn"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "Ảnh hưởng đến mọi thứ ở trên. Khi tắt, giao diện và ghi đè bề mặt của RyukGram chỉ áp dụng khi iOS ở chế độ tối — không đụng đến chế độ sáng."; +"Apply & restart" = "Áp dụng & khởi động lại"; +"Background" = "Nền"; +"Behavior" = "Hành vi"; +"Change location" = "Đổi vị trí"; +"Clipboard is not an Instagram URL" = "Bảng tạm không phải URL Instagram"; +"Comments hidden" = "Đã ẩn bình luận"; +"Comments shown" = "Đã hiện bình luận"; +"Copied text to clipboard" = "Đã sao chép văn bản vào bảng tạm"; +"Copy" = "Sao chép"; +"Copy bio" = "Sao chép tiểu sử"; +"Copy name" = "Sao chép tên"; +"Could not find cover image" = "Không thể tìm thấy ảnh bìa"; +"Current: %@" = "Hiện tại: %@"; +"Dark" = "Tối"; +"Disable" = "Tắt"; +"Download GIF" = "Tải GIF"; +"Dropped pin" = "Đã ghim vị trí"; +"Emoji" = "Emoji"; +"Enable" = "Bật"; +"Enable Location Services for Instagram in Settings to use your current location." = "Bật Dịch vụ định vị cho Instagram trong Cài đặt để sử dụng vị trí hiện tại của bạn."; +"Enter emoji" = "Nhập emoji"; +"Fake location" = "Vị trí giả"; +"Force theme" = "Buộc giao diện"; +"Keyboard theme" = "Giao diện bàn phím"; +"Light" = "Sáng"; +"Location access denied" = "Quyền truy cập vị trí bị từ chối"; +"Location Services off" = "Dịch vụ định vị đã tắt"; +"Name" = "Tên"; +"Nothing to copy" = "Không có gì để sao chép"; +"Off, Light, Dark, or OLED" = "Tắt, Sáng, Tối, hoặc OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "Giao diện chat OLED"; +"Open Settings" = "Mở Cài đặt"; +"Optional per-surface overrides. Each one is independent of the theme above." = "Tùy chọn ghi đè theo từng giao diện. Mỗi cái độc lập với giao diện ở trên."; +"Override iOS appearance regardless of system mode" = "Ghi đè giao diện iOS bất kể chế độ hệ thống"; +"Override the keyboard appearance when typing" = "Ghi đè giao diện bàn phím khi nhập"; +"Pick location" = "Chọn vị trí"; +"Pure black DM thread + incoming bubbles" = "Đoạn chat DM + bong bóng nhận màu đen tuyền"; +"Save" = "Lưu"; +"Save preset" = "Lưu cài đặt sẵn"; +"Saved locations" = "Vị trí đã lưu"; +"Select color" = "Chọn màu"; +"Set location" = "Đặt vị trí"; +"The theme RyukGram applies to Instagram." = "Giao diện mà RyukGram áp dụng cho Instagram."; +"Theme" = "Giao diện"; +"Turn Location Services on in Settings → Privacy to use your current location." = "Bật Dịch vụ định vị trong Cài đặt → Quyền riêng tư để sử dụng vị trí hiện tại của bạn."; +"Type an emoji to use as the note bubble icon." = "Nhập một emoji để dùng làm biểu tượng bong bóng ghi chú."; +"Profile picture" = "Ảnh đại diện"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu tài khoản? %ld tài khoản đầu tiên sẽ được xử lý để tránh giới hạn tốc độ."; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu tài khoản? Thao tác này chạy tuần tự với khoảng nghỉ ngắn giữa mỗi lần."; +"%@ followers · %@ following" = "%@ người theo dõi · %@ đang theo dõi"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%d ngày trước"; +"%dh ago" = "%d giờ trước"; +"%dm ago" = "%d phút trước"; +"%lu accounts followed" = "Đã theo dõi %lu tài khoản"; +"%lu accounts unfollowed" = "Đã bỏ theo dõi %lu tài khoản"; +"%lu followers · %lu following" = "%lu người theo dõi · %lu đang theo dõi"; +"%lu followers removed" = "Đã xóa %lu người theo dõi"; +"%lu of %lu" = "%lu trên %lu"; +"%lu of %lu checks on" = "Đã bật %lu trên %lu mục kiểm tra"; +"%lu saved · comparing against %@" = "Đã lưu %lu · so sánh với %@"; +"(empty)" = "(trống)"; +"(no analyzer data)" = "(không có dữ liệu phân tích)"; +"a saved snapshot" = "một ảnh chụp đã lưu"; +"About Profile Analyzer" = "Giới thiệu về Phân tích hồ sơ"; +"All preferences (%lu)" = "Tất cả tùy chọn (%lu)"; +"Analysis complete" = "Phân tích hoàn tất"; +"Analysis failed" = "Phân tích thất bại"; +"Another analysis is already running" = "Một phân tích khác đang chạy"; +"Available after your next scan" = "Có sẵn sau lần quét tiếp theo"; +"Batch follow" = "Theo dõi hàng loạt"; +"Batch follow finished" = "Đã hoàn tất theo dõi hàng loạt"; +"Batch remove followers" = "Xóa người theo dõi hàng loạt"; +"Batch remove followers finished" = "Đã hoàn tất xóa người theo dõi hàng loạt"; +"Batch unfollow" = "Bỏ theo dõi hàng loạt"; +"Batch unfollow finished" = "Đã hoàn tất bỏ theo dõi hàng loạt"; +"Categories" = "Danh mục"; +"Checks" = "Mục kiểm tra"; +"Clear visited profiles" = "Xóa hồ sơ đã ghé"; +"Compare next scan against" = "So sánh lần quét tới với"; +"Comparing against %@" = "Đang so sánh với %@"; +"Continue" = "Tiếp tục"; +"Couldn't fetch profile information" = "Không thể lấy thông tin hồ sơ"; +"Delete %lu snapshots? This can't be undone." = "Xóa %lu ảnh chụp? Không thể hoàn tác."; +"Delete (%lu)" = "Xóa (%lu)"; +"Delete snapshots" = "Xóa ảnh chụp"; +"Delete this snapshot? This can't be undone." = "Xóa ảnh chụp này? Không thể hoàn tác."; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "Mỗi lần quét lưu một bản sao đầy đủ người theo dõi và đang theo dõi của bạn để bạn so sánh sau này. Mọi thứ đều ở trên thiết bị này."; +"Export" = "Xuất"; +"Fetching followers (%lu/%ld)…" = "Đang lấy người theo dõi (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "Đang lấy đang theo dõi (%lu/%ld)…"; +"Fetching profile info…" = "Đang lấy thông tin hồ sơ…"; +"File is not a valid RyukGram backup." = "Tệp không phải bản xuất RyukGram hợp lệ."; +"Filter" = "Lọc"; +"Filter · %lu" = "Lọc · %lu"; +"First scan: %@" = "Lần quét đầu tiên: %@"; +"First scan: we collect your followers and following lists and save them locally." = "Lần quét đầu tiên: chúng tôi thu thập danh sách người theo dõi và đang theo dõi của bạn rồi lưu cục bộ."; +"Follow back" = "Theo dõi lại"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "Số người theo dõi vượt quá %ld — đã tắt phân tích để tránh giới hạn tốc độ."; +"Followers" = "Người theo dõi"; +"Following… %lu / %lu" = "Đang theo dõi… %lu / %lu"; +"Gained since last scan" = "Tăng từ lần quét trước"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "Lưu ý: tính năng này sử dụng API riêng tư của Instagram. Chạy liên tiếp hoặc ngay sau hoạt động theo dõi/bỏ theo dõi nhiều có thể kích hoạt giới hạn tốc độ ngắn hạn. Hãy sử dụng hạn chế và tự chịu rủi ro."; +"Import complete" = "Đã nhập hoàn tất"; +"Include" = "Bao gồm"; +"Keep newest" = "Giữ mới nhất"; +"Keep newest snapshots" = "Giữ ảnh chụp mới nhất"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "Tài khoản lớn bị chặn: phân tích bị vô hiệu hóa trên 13.000 người theo dõi để tránh Instagram giới hạn tốc độ toàn bộ ứng dụng."; +"Last scan: %@" = "Lần quét cuối: %@"; +"Logs every profile you open. Stays on-device." = "Ghi lại mọi hồ sơ bạn mở. Chỉ lưu trên thiết bị."; +"Lost followers" = "Người theo dõi đã mất"; +"Most visited" = "Ghé nhiều nhất"; +"Mutual followers" = "Người theo dõi chung"; +"Name: %@ → %@" = "Tên: %@ → %@"; +"New followers" = "Người theo dõi mới"; +"NEW" = "MỚI"; +"New first" = "Mới trước"; +"New only" = "Chỉ mới"; +"No active Instagram session found" = "Không tìm thấy phiên Instagram đang hoạt động"; +"No results" = "Không có kết quả"; +"No scan yet" = "Chưa quét"; +"Not following you back" = "Không theo dõi lại bạn"; +"Not verified only" = "Chỉ chưa xác minh"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "Không có gì được tải lên — mọi thứ đều ở trên thiết bị này và có thể xóa bằng biểu tượng thùng rác."; +"Nothing was applied." = "Không có gì được áp dụng."; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "Ảnh chụp cũ vượt quá giới hạn sẽ tự động bị xóa"; +"Older snapshots beyond this limit are deleted on the next scan." = "Ảnh chụp cũ vượt quá giới hạn này sẽ bị xóa ở lần quét tiếp theo."; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "Chọn nội dung cần xóa. Ảnh chụp xóa các khác biệt quét và mọi ảnh chụp đã ghi; hồ sơ đã xem xóa lịch sử truy cập."; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "Chọn những danh mục mà mỗi lần quét sẽ tính toán. Mục kiểm tra bị tắt sẽ hiển thị mờ và bị bỏ qua — không được tính toán hay hiển thị."; +"Posts" = "Bài viết"; +"Preferences" = "Tùy chọn"; +"Previous scan" = "Lần quét trước"; +"Private account" = "Tài khoản riêng tư"; +"Private only" = "Chỉ riêng tư"; +"Profile Analyzer" = "Phân tích hồ sơ"; +"Profile Analyzer data" = "Dữ liệu Phân tích hồ sơ"; +"Profile picture changed" = "Ảnh hồ sơ đã thay đổi"; +"Profile updates" = "Cập nhật hồ sơ"; +"Profiles you've opened recently" = "Hồ sơ bạn đã mở gần đây"; +"Raw" = "Thô"; +"Raw JSON" = "JSON thô"; +"Record snapshots" = "Ghi ảnh chụp"; +"Remove @%@ as a follower?" = "Xóa @%@ khỏi người theo dõi?"; +"Remove follower" = "Xóa người theo dõi"; +"Removing… %lu / %lu" = "Đang xóa… %lu / %lu"; +"Recording" = "Đang ghi"; +"Request failed" = "Yêu cầu thất bại"; +"Reset analyzer data" = "Đặt lại dữ liệu phân tích"; +"Reset complete" = "Đã đặt lại hoàn tất"; +"Reset everything" = "Đặt lại mọi thứ"; +"Reset selected data?" = "Đặt lại dữ liệu đã chọn?"; +"Reset snapshots" = "Đặt lại ảnh chụp"; +"Rolling — always your last run" = "Cuốn chiếu — luôn là lần chạy gần nhất của bạn"; +"Run analysis" = "Chạy phân tích"; +"Run your first analysis" = "Chạy phân tích đầu tiên"; +"Save a dated entry on every scan" = "Lưu một mục có ngày tháng cho mỗi lần quét"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "Từ lần quét thứ hai trở đi: mỗi lần quét sẽ so sánh với lần trước để hiển thị người theo dõi tăng/giảm, lượt theo dõi/bỏ theo dõi của bạn và cập nhật hồ sơ."; +"Settings" = "Cài đặt"; +"Since last scan" = "Kể từ lần quét trước"; +"Snapshot" = "Ảnh chụp"; +"Snapshot saved" = "Đã lưu ảnh chụp"; +"Snapshots" = "Ảnh chụp"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "Ảnh chụp cho phép bạn lưu trữ mỗi lần quét và chọn lần nào để các lần quét mới so sánh với. Theo dõi truy cập ghi lại mọi hồ sơ bạn mở để bạn xem lại tại đây."; +"Sort" = "Sắp xếp"; +"Starting…" = "Đang khởi động…"; +"They follow you, you don't follow back" = "Họ theo dõi bạn, bạn chưa theo dõi lại"; +"This can't be undone." = "Không thể hoàn tác."; +"Ticked data will be cleared. Tap a row to see what's stored." = "Dữ liệu đã chọn sẽ bị xóa. Chạm vào bất kỳ hàng nào để xem nội dung đã lưu."; +"Today" = "Hôm nay"; +"Too many followers" = "Quá nhiều người theo dõi"; +"Too many followers to analyze" = "Quá nhiều người theo dõi để phân tích"; +"Track visited profiles" = "Theo dõi hồ sơ đã ghé"; +"Tracking" = "Theo dõi"; +"Tracking off — enable below to log visits" = "Theo dõi đã tắt — bật bên dưới để ghi lượt ghé"; +"Unfollow" = "Bỏ theo dõi"; +"Unfollow %lu" = "Bỏ theo dõi %lu"; +"Unfollow @%@?" = "Bỏ theo dõi @%@?"; +"Unfollowed you since last scan" = "Đã bỏ theo dõi bạn từ lần quét trước"; +"Unfollowing… %lu / %lu" = "Đang bỏ theo dõi… %lu / %lu"; +"Unlimited" = "Không giới hạn"; +"Username A → Z" = "Tên người dùng A → Z"; +"Username Z → A" = "Tên người dùng Z → A"; +"Username, name or picture changes" = "Thay đổi tên người dùng, tên hoặc ảnh"; +"Username: @%@ → @%@" = "Tên người dùng: @%@ → @%@"; +"Using %@ across %lu snapshots." = "Đang dùng %@ trên %lu ảnh chụp."; +"Verified only" = "Chỉ đã xác minh"; +"Visited" = "Đã ghé"; +"Visited profiles" = "Hồ sơ đã ghé"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "Chúng tôi từ chối chạy khi số lượng người theo dõi vượt quá %ld để tránh giới hạn tốc độ của Instagram."; +"You both follow each other" = "Hai bạn theo dõi lẫn nhau"; +"You don't follow back" = "Bạn không theo dõi lại"; +"You follow them, they don't follow back" = "Bạn theo dõi họ, họ không theo dõi lại"; +"You started following" = "Bạn đã bắt đầu theo dõi"; +"Your current scan was archived" = "Lần quét hiện tại của bạn đã được lưu trữ"; +"You unfollowed" = "Bạn đã bỏ theo dõi"; +"your previous scan" = "lần quét trước của bạn"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "“Lần quét trước” luôn đo lường so với lần chạy gần nhất của bạn. Chọn một ảnh chụp đã lưu để so sánh với một thời điểm cố định thay vào đó."; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ Dung lượng đang lớn dần — hãy giảm giới hạn hoặc xóa ảnh chụp cũ để giải phóng dung lượng."; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "Định dạng tuyệt đối"; +"Add chat" = "Thêm cuộc trò chuyện"; +"Add custom domain" = "Thêm tên miền tùy chỉnh"; +"Add to list?" = "Thêm vào danh sách?"; +"Add user" = "Thêm người dùng"; +"Apply" = "Áp dụng"; +"Apply to" = "Áp dụng cho"; +"Chats" = "Cuộc trò chuyện"; +"Colored" = "Có màu"; +"Could not read file." = "Không thể đọc tệp."; +"Could not resolve user ID" = "Không thể phân giải ID người dùng"; +"Current location" = "Vị trí hiện tại"; +"Custom" = "Tùy chỉnh"; +"Delete" = "Xóa"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "Mỗi giao diện trong IG sử dụng bộ định dạng NSDate khác nhau. Bật những giao diện bạn muốn áp dụng định dạng này."; +"Enable fake location" = "Bật vị trí giả"; +"Excluded chats" = "Cuộc trò chuyện bị loại trừ"; +"Excluded users" = "Người dùng bị loại trừ"; +"Follow default" = "Theo dõi mặc định"; +"Force OFF (allow unsends)" = "Buộc TẮT (cho phép thu hồi)"; +"Force ON (preserve unsends)" = "Buộc BẬT (giữ tin đã thu hồi)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "Bao gồm giây khi định dạng đã hiển thị giờ. Định dạng tùy chỉnh tự kiểm soát giây bằng {ss}."; +"Add custom format…" = "Thêm định dạng tùy chỉnh…"; +"Edit" = "Chỉnh sửa"; +"Template" = "Mẫu"; +"Placeholders" = "Phần giữ chỗ"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "Phần giữ chỗ được thay bằng các thành phần ngày; phần còn lại hiển thị nguyên văn."; +"Tap a placeholder to insert it at the cursor." = "Chạm vào phần giữ chỗ để chèn tại vị trí con trỏ."; +"Included chats" = "Cuộc trò chuyện được bao gồm"; +"Included users" = "Người dùng được bao gồm"; +"KD: default" = "KD: mặc định"; +"KD: ON" = "KD: BẬT"; +"Keep-deleted" = "Giữ đã xóa"; +"Keep-deleted override" = "Ghi đè giữ đã xóa"; +"Name (A–Z)" = "Tên (A–Z)"; +"No DM thread found with @%@" = "Không tìm thấy cuộc trò chuyện DM với @%@"; +"Presets" = "Cài đặt sẵn"; +"Recently added" = "Mới thêm gần đây"; +"Relative time" = "Thời gian tương đối"; +"Relative within" = "Tương đối trong"; +"Remove from list" = "Xóa khỏi danh sách"; +"Reset" = "Đặt lại"; +"Search" = "Tìm kiếm"; +"Search address or place" = "Tìm địa chỉ hoặc địa điểm"; +"Search by name or username" = "Tìm theo tên hoặc tên người dùng"; +"Search by username or name" = "Tìm theo tên người dùng hoặc tên"; +"Select location on map" = "Chọn vị trí trên bản đồ"; +"Set current location" = "Đặt vị trí hiện tại"; +"Set keep-deleted override" = "Đặt ghi đè giữ đã xóa"; +"Show map button" = "Hiển thị nút bản đồ"; +"Show relative time for dates younger than this many days. 0 disables it." = "Hiển thị thời gian tương đối cho ngày trẻ hơn số ngày này. 0 sẽ tắt."; +"Show seconds" = "Hiển thị giây"; +"Sort by" = "Sắp xếp theo"; +"Thread" = "Cuộc trò chuyện"; +"Time" = "Giờ"; +"Use this location" = "Dùng vị trí này"; +"User '%@' not found" = "Không tìm thấy người dùng '%@'"; +"Username (A–Z)" = "Tên người dùng (A–Z)"; +"Within %ld days" = "Trong %ld ngày"; +"Within 1 day" = "Trong 1 ngày"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "Không tìm thấy mật khẩu"; +"No text field found" = "Không tìm thấy trường văn bản"; +"Refresh Reels?" = "Làm mới Reels?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu tài khoản"; +"%lu loaded" = "Đã tải %lu"; +"%lu loaded · all loaded" = "Đã tải %lu · đã tải hết"; +"Doesn't follow you" = "Không theo dõi bạn"; +"Everyone is already loaded." = "Đã tải hết mọi người."; +"Filter & sort" = "Lọc & sắp xếp"; +"Follows me" = "Theo dõi tôi"; +"Follows me first" = "Theo dõi tôi trước"; +"Follows you" = "Theo dõi bạn"; +"Hides everyone who doesn't match all picked filters." = "Ẩn tất cả những người không khớp mọi bộ lọc đã chọn."; +"Jump to bottom" = "Nhảy xuống cuối"; +"Jump to top" = "Nhảy lên đầu"; +"List" = "Danh sách"; +"List fully loaded" = "Đã tải hết danh sách"; +"Load more" = "Tải thêm"; +"Loaded more" = "Đã tải thêm"; +"Mutuals" = "Theo dõi lẫn nhau"; +"Mutuals first" = "Theo dõi lẫn nhau trước"; +"Note copied" = "Đã sao chép ghi chú"; +"People I follow" = "Người tôi theo dõi"; +"People I follow first" = "Người tôi theo dõi trước"; +"Reverse order" = "Đảo thứ tự"; +"Show only" = "Chỉ hiện"; +"Verified" = "Đã xác minh"; +"Verified first" = "Đã xác minh trước"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(chưa đặt)"; +"720p • progressive • fastest" = "720p • progressive • nhanh nhất"; +"Add language" = "Thêm ngôn ngữ"; +"Album name" = "Tên album"; +"Are you sure?" = "Bạn có chắc không?"; +"Bundle" = "Bundle"; +"Copy audio URL" = "Sao chép URL âm thanh"; +"Copy quality info" = "Sao chép thông tin chất lượng"; +"Copy video URL" = "Sao chép URL video"; +"Could not access reel media" = "Không thể truy cập media reel"; +"Could not access reel photo" = "Không thể truy cập ảnh reel"; +"Could not write file." = "Không thể ghi tệp."; +"Download all and share?" = "Tải tất cả và chia sẻ?"; +"Download Quality" = "Chất lượng tải xuống"; +"Downloading %d%%" = "Đang tải %d%%"; +"e.g. 1000000" = "ví dụ: 1000000"; +"Localization file not found" = "Không tìm thấy tệp bản địa hóa"; +"Enter the language code (e.g. fr, de, ja)" = "Nhập mã ngôn ngữ (vd: fr, de, ja)"; +"Error" = "Lỗi"; +"Extras" = "Bổ sung"; +"FFmpegKit Debug" = "Gỡ lỗi FFmpegKit"; +"File is empty or not a valid .strings file." = "Tệp trống hoặc không phải tệp .strings hợp lệ."; +"KD: OFF" = "KD: TẮT"; +"Keep-deleted: OFF" = " • Giữ đã xóa: TẮT"; +"Keep-deleted: ON" = " • Giữ đã xóa: BẬT"; +"Later" = "Để sau"; +"Loading" = "Đang tải"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "Tên album Ảnh mà RyukGram lưu vào. Để trống để khôi phục mặc định."; +"Next" = "Tiếp"; +"No results found." = "Không tìm thấy kết quả."; +"No!" = "Không!"; +"Pick a language to update, or add a new one" = "Chọn ngôn ngữ để cập nhật, hoặc thêm ngôn ngữ mới"; +"Preset" = "Cài đặt sẵn"; +"Restart" = "Khởi động lại"; +"Restart now" = "Khởi động lại ngay"; +"Restart required" = "Cần khởi động lại"; +"Saved preset \"%@\"" = "Đã lưu cài đặt sẵn \"%@\""; +"selected" = "đã chọn"; +"Shared icon, or override per button" = "Biểu tượng chung, hoặc ghi đè theo từng nút"; +"Speed" = "Tốc độ"; +"Unset" = "Bỏ đặt"; +"Update localization" = "Cập nhật bản địa hóa"; +"Updated %@ (%ld keys). Restart to apply." = "Đã cập nhật %@ (%ld khóa). Khởi động lại để áp dụng."; +"Use default" = "Dùng mặc định"; +"Username or PK" = "Tên người dùng hoặc PK"; +"Username or raw user PK" = "Tên người dùng hoặc PK người dùng thô"; +"Yes" = "Có"; +"You must restart the app to apply this change" = "Bạn phải khởi động lại ứng dụng để áp dụng thay đổi này"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "Bạn thấy RyukGram thế nào?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "Nó miễn phí và không có gì rời khỏi thiết bị của bạn. Nếu bạn thích dùng nó, một ly cà phê sẽ giúp nó tiếp tục."; +"Donate" = "Ủng hộ"; +"I already did" = "Tôi đã ủng hộ rồi"; +"Maybe later" = "Để sau"; +"This means a lot" = "Điều này có ý nghĩa rất lớn"; +"Appreciate the support" = "Cảm ơn vì đã ủng hộ"; +"No worries, enjoy the tweak" = "Không sao, chúc bạn dùng vui"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub, Telegram, Ủng hộ"; +"About" = "Giới thiệu"; +"Arabic translation" = "Bản dịch tiếng Ả Rập"; +"Chinese (Traditional and Simplified) translation" = "Bản dịch tiếng Trung (phồn thể và giản thể)"; +"Credits" = "Ghi công"; +"Developers" = "Nhà phát triển"; +"installed" = "đã cài đặt"; +"Korean translation" = "Bản dịch tiếng Hàn"; +"Portuguese (Brazil) translation" = "Bản dịch tiếng Bồ Đào Nha (Brazil)"; +"Turkish translation" = "Bản dịch tiếng Thổ Nhĩ Kỳ"; +"Vietnamese translation" = "Bản dịch tiếng Việt"; +"French translation" = "Bản dịch tiếng Pháp"; +"Japanese translation" = "Bản dịch tiếng Nhật"; +"Code contributions" = "Đóng góp mã"; +"Following feed mode (from InstaSane)" = "Chế độ bảng tin Đang theo dõi (từ InstaSane)"; +"latest" = "mới nhất"; +"Links" = "Liên kết"; +"No releases" = "Không có bản phát hành"; +"SCInsta developer" = "Nhà phát triển SCInsta"; +"Release notes" = "Ghi chú phát hành"; +"Releases" = "Bản phát hành"; +"Report an issue" = "Báo cáo sự cố"; +"Russian translation" = "Bản dịch tiếng Nga"; +"RyukGram developer" = "Nhà phát triển RyukGram"; +"Join Telegram channel" = "Tham gia kênh Telegram"; +"Source code" = "Mã nguồn"; +"View on GitHub" = "Xem trên GitHub"; +"Spanish translation" = "Bản dịch tiếng Tây Ban Nha"; +"Inspirations" = "Nguồn cảm hứng"; +"Inspirations, contributors, translators" = "Cảm hứng, người đóng góp, dịch giả"; +"Code and research" = "Mã và nghiên cứu"; +"Translators" = "Dịch giả"; +"BHInstagram developer" = "Nhà phát triển BHInstagram"; +"OLED theme inspiration" = "Cảm hứng giao diện OLED"; +"Donate to Ryuk" = "Ủng hộ Ryuk"; +"Support RyukGram development" = "Ủng hộ phát triển RyukGram"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram là một dự án độc lập lấy cảm hứng từ SCInsta."; +"Browse changes from previous releases" = "Duyệt các thay đổi từ bản phát hành trước"; +"Code inspiration" = "Cảm hứng mã"; +"zxPluginsInject sideload compatibility shim" = "Lớp tương thích sideload zxPluginsInject"; +"Telegram channel" = "Kênh Telegram"; +"Testing and feature suggestions" = "Thử nghiệm và đề xuất tính năng"; +"Version" = "Phiên bản"; +"Version, credits, and links" = "Phiên bản, ghi công và liên kết"; +"What's new in RyukGram" = "Có gì mới trong RyukGram"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • progressive • im lặng"; +"Audio only" = "Chỉ âm thanh"; +"Audio ready" = "Âm thanh sẵn sàng"; +"Audio track %ld" = "Bản âm thanh %ld"; +"Download video at the highest available quality" = "Tải video ở chất lượng cao nhất hiện có"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "Tải video HD qua luồng DASH và mã hóa sang H.264. Yêu cầu FFmpegKit."; +"Encoding in software" = "Đang mã hóa bằng phần mềm"; +"Encoding speed" = "Tốc độ mã hóa"; +"Enhanced downloads" = "Tải xuống nâng cao"; +"Faster = lower quality" = "Nhanh hơn = chất lượng thấp hơn"; +"FFmpeg not available" = "FFmpeg không khả dụng"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit không khả dụng. Hãy cài IPA sideload hoặc biến thể .deb _ffmpeg để bật."; +"Hardware encoder isn't available in the background — your quality settings were kept." = "Bộ mã hóa phần cứng không khả dụng khi chạy nền — cài đặt chất lượng của bạn vẫn được giữ."; +"No audio track found" = "Không tìm thấy bản âm thanh"; +"Photo" = "Ảnh"; +"Photo quality" = "Chất lượng ảnh"; +"Size unknown" = "Không rõ kích thước"; +"calculating size…" = "đang tính kích thước…"; +"silent" = "im lặng"; +"Use highest resolution available" = "Dùng độ phân giải cao nhất hiện có"; +"Video encoder locked up — restart Instagram to encode again" = "Bộ mã hóa video bị treo — khởi động lại Instagram để mã hóa lại"; +"Video only" = "Chỉ video"; +"Video-only & every audio track" = "Chỉ video và mọi bản âm thanh"; +"Video quality" = "Chất lượng video"; +"Which quality to download" = "Chọn chất lượng để tải xuống"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "'%@' không có trong bản FFmpegKit này — dùng h264 phần cứng thay thế."; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-bit 4:2:0. Chậm hơn ~2 lần, chuyển màu mượt hơn."; +"10-bit colour. Slower, smoother gradients. Software only." = "Màu 10-bit. Chậm hơn, chuyển màu mượt hơn. Chỉ phần mềm."; +"1080p30 baseline." = "Cơ bản 1080p30."; +"4K30 baseline." = "Cơ bản 4K30."; +"8-bit 4:2:0. Universal default." = "8-bit 4:2:0. Mặc định phổ thông."; +"8-bit 4:2:2 chroma. Niche playback." = "Chroma 8-bit 4:2:2. Phát lại chuyên biệt."; +"8-bit 4:2:2 chroma. Software only." = "Chroma 8-bit 4:2:2. Chỉ phần mềm."; +"8-bit 4:4:4 chroma. Software only." = "Chroma 8-bit 4:4:4. Chỉ phần mềm."; +"8-bit 4:4:4 full chroma. Niche playback." = "Chroma đầy đủ 8-bit 4:4:4. Phát lại chuyên biệt."; +"8-bit. Best for modern devices." = "8-bit. Tốt nhất cho thiết bị hiện đại."; +"Advanced encoding" = "Mã hóa nâng cao"; +"Advanced encoding settings" = "Cài đặt mã hóa nâng cao"; +"Archival quality." = "Chất lượng lưu trữ."; +"Audio bitrate" = "Bitrate âm thanh"; +"Audio channels" = "Kênh âm thanh"; +"Audio codec" = "Codec âm thanh"; +"Audio conversion failed" = "Chuyển đổi âm thanh thất bại"; +"Audio sample rate" = "Tần số lấy mẫu âm thanh"; +"Balanced. libx264 default." = "Cân bằng. Mặc định libx264."; +"Best practical quality per bit." = "Chất lượng thực tế tốt nhất trên mỗi bit."; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "Bitrate, kênh và tần số lấy mẫu chỉ áp dụng khi codec là AAC (mã hóa lại)."; +"Cartoons / anime." = "Hoạt hình / anime."; +"Cinematic. Smaller files." = "Điện ảnh. Tệp nhỏ hơn."; +"Codec" = "Codec"; +"Container" = "Định dạng chứa"; +"Copy (passthrough)" = "Sao chép (truyền thẳng)"; +"CRF quality" = "Chất lượng CRF"; +"Downloading video…" = "Đang tải video…"; +"Easier to play back on weak devices." = "Dễ phát lại hơn trên thiết bị yếu."; +"Encoder unavailable" = "Bộ mã hóa không khả dụng"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "Ví dụ: 8M, 12M, 25M, 4500k. Để trống để tự động."; +"Failed to download video" = "Tải video thất bại"; +"Fast, fixed-bitrate, GPU-accelerated." = "Nhanh, bitrate cố định, tăng tốc GPU."; +"Fastest, worst compression." = "Nhanh nhất, nén kém nhất."; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart chuyển chỉ mục MP4 lên đầu để phát lại bắt đầu trước khi tệp được nạp đệm đầy đủ. Xóa siêu dữ liệu loại bỏ các thẻ nguồn (ngày tạo, trình xử lý, bộ mã hóa) khỏi tệp."; +"FFmpeg documentation" = "Tài liệu FFmpeg"; +"FFmpeg mux failed" = "FFmpeg ghép luồng thất bại"; +"Frame rate" = "Tốc độ khung hình"; +"H.264 level" = "Cấp độ H.264"; +"H.264 profile" = "Hồ sơ H.264"; +"Hardware (VideoToolbox)" = "Phần cứng (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "Phần cứng (VideoToolbox) chỉ hỗ trợ yuv420p — '%@' đã bị bỏ qua. Chuyển sang Phần mềm (libx264) để dùng."; +"Keep original audio. Fast." = "Giữ âm thanh gốc. Nhanh."; +"Keep the source frame rate." = "Giữ tốc độ khung hình nguồn."; +"Let the encoder pick." = "Để bộ mã hóa tự chọn."; +"Live-action video." = "Video người thật."; +"Lossless. Huge files." = "Không mất dữ liệu. Tệp rất lớn."; +"Low-latency streaming." = "Truyền phát độ trễ thấp."; +"Manual ffmpeg controls in place of Encoding speed." = "Điều khiển ffmpeg thủ công thay cho Tốc độ mã hóa."; +"Marginal gain, huge time cost." = "Cải thiện không đáng kể, tốn rất nhiều thời gian."; +"Max resolution" = "Độ phân giải tối đa"; +"Mono" = "Mono"; +"No tuning. Default." = "Không tinh chỉnh. Mặc định."; +"None" = "Không có"; +"Pixel format" = "Định dạng điểm ảnh"; +"Pixel format ignored" = "Đã bỏ qua định dạng điểm ảnh"; +"Preserve film grain." = "Giữ hạt phim."; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "Preset và Tune chỉ áp dụng cho Phần mềm (libx264). Ghép hồ sơ với định dạng điểm ảnh: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Không khớp sẽ tự hạ cấp thầm lặng. Phần cứng luôn dùng yuv420p."; +"Re-encode. Use when source is opus or unsupported." = "Mã hóa lại. Dùng khi nguồn là opus hoặc không được hỗ trợ."; +"Reset advanced encoding" = "Đặt lại mã hóa nâng cao"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "Đặt bitrate video chuyển Phần mềm sang bitrate cố định và bỏ qua CRF. Để trống để dùng CRF. Phần cứng dùng bitrate."; +"Slideshow-like content." = "Nội dung kiểu trình chiếu."; +"Slower, better compression per bit." = "Chậm hơn, nén tốt hơn trên mỗi bit."; +"Smaller, visible artefacts." = "Nhỏ hơn, có hiện tượng nhiễu thấy được."; +"Software (libx264)" = "Phần mềm (libx264)"; +"Standard 8-bit." = "8-bit tiêu chuẩn."; +"Stereo" = "Stereo"; +"Streaming default." = "Mặc định truyền phát."; +"Strip metadata" = "Xóa siêu dữ liệu"; +"Top of AAC." = "Cao nhất của AAC."; +"Tune" = "Điều chỉnh"; +"Unknown error" = "Lỗi không xác định"; +"Very high quality." = "Chất lượng rất cao."; +"Video bitrate" = "Bitrate video"; +"Video codec" = "Codec video"; +"Visually lossless. RyukGram default." = "Không mất dữ liệu về thị giác. Mặc định RyukGram."; +"Widest compatibility, no B-frames." = "Tương thích rộng nhất, không có B-frame."; +"Worst quality." = "Chất lượng kém nhất."; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "Cử chỉ nhấn giữ"; +"Inserts a button in the profile navigation header" = "Chèn nút trong tiêu đề điều hướng hồ sơ"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "Thêm nút hành động RyukGram vào tiêu đề hồ sơ với các mục sao chép, xem ảnh, chia sẻ, lưu và thông tin hồ sơ. Chạm mở menu theo mặc định; thay đổi hành vi chạm trong menu Cấu hình."; +"Configure menu" = "Cấu hình menu"; +"Reorder, enable/disable, set default tap, show date" = "Sắp xếp lại, bật/tắt, đặt chạm mặc định, hiển thị ngày"; +"Reorder, enable/disable, set default tap" = "Sắp xếp lại, bật/tắt, đặt chạm mặc định"; +"RyukGram profile actions" = "Hành động hồ sơ RyukGram"; +"Reorder sections" = "Sắp xếp lại các phần"; +"Drag the ≡ handle to reorder sections." = "Kéo tay nắm ≡ để sắp xếp lại các phần."; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "Kéo tay nắm ≡ để sắp xếp lại. Tắt một hàng để ẩn nó khỏi menu. Đánh dấu một phần là menu phụ để thu gọn các hành động sau một mục duy nhất."; +"Show as submenu" = "Hiển thị dưới dạng menu phụ"; +"Collapse this section's actions behind a single entry" = "Thu gọn hành động của phần này sau một mục duy nhất"; +"Configure: %@" = "Cấu hình: %@"; +"What happens on a single tap. Long-press always opens the full menu." = "Điều xảy ra khi chạm một lần. Nhấn giữ luôn mở menu đầy đủ."; +"Reset to defaults" = "Đặt lại về mặc định"; +"This will restore the default sections, order, and toggles for this menu." = "Thao tác này sẽ khôi phục các phần, thứ tự và công tắc mặc định cho menu này."; +"Audio & visibility" = "Âm thanh & hiển thị"; +"DM disappearing media" = "Media biến mất trong DM"; +"Bulk download" = "Tải hàng loạt"; +"Feed settings" = "Cài đặt bảng tin"; +"Reels settings" = "Cài đặt reel"; +"Profile settings" = "Cài đặt hồ sơ"; +"Stories settings" = "Cài đặt tin"; +"Copy ID" = "Sao chép ID"; +"Copy Info" = "Sao chép thông tin"; +"Copy all info" = "Sao chép tất cả thông tin"; +"Copy media URL" = "Sao chép URL media"; +"Copy profile link" = "Sao chép liên kết hồ sơ"; +"Copy username" = "Sao chép tên người dùng"; +"Download" = "Tải xuống"; +"Download to Gallery" = "Tải vào Thư viện"; +"Download all to Gallery" = "Tải tất cả vào Thư viện"; +"Exclude/include user" = "Loại trừ/bao gồm người dùng"; +"Mute / unmute audio" = "Tắt / bật âm thanh"; +"Save picture to Gallery" = "Lưu ảnh vào Thư viện"; +"Share picture" = "Chia sẻ ảnh"; +"View picture" = "Xem ảnh"; +"Bio" = "Tiểu sử"; +"ID" = "ID"; +"Info" = "Thông tin"; +"Profile info" = "thông tin hồ sơ"; +"Profile link" = "Liên kết hồ sơ"; +"Picture not found" = "Không tìm thấy ảnh"; +"Private profile" = "Hồ sơ riêng tư"; +"Profile unavailable" = "Hồ sơ không khả dụng"; +"Public profile" = "Hồ sơ công khai"; +"Username" = "Tên người dùng"; +"Followers: %@" = "Người theo dõi: %@"; +"Following: %@" = "Đang theo dõi: %@"; +"Copied %@" = "Đã sao chép %@"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(không xác định)"; +"Added %lu" = "Đã thêm %lu"; +"All files deleted" = "Đã xóa tất cả tệp"; +"Browsing" = "Duyệt"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "Đã tìm thấy %lu mục được lưu bởi phiên bản trước. Khôi phục vào thư viện ngay bây giờ?"; +"Gallery data from a previous version was found. Restore it now?" = "Đã tìm thấy dữ liệu thư viện từ phiên bản trước. Khôi phục ngay bây giờ?"; +"Gallery restored" = "Đã khôi phục thư viện"; +"Import failed" = "Nhập thất bại"; +"Import to Gallery" = "Nhập vào thư viện"; +"Imported" = "Đã nhập"; +"Importing…" = "Đang nhập…"; +"Not Now" = "Để sau"; +"Nothing imported" = "Không có gì được nhập"; +"Restore" = "Khôi phục"; +"Restore Gallery" = "Khôi phục thư viện"; +"Restore failed" = "Khôi phục thất bại"; +"Restoring gallery…" = "Đang khôi phục thư viện…"; +"By source" = "Theo nguồn"; +"By type" = "Theo loại"; +"By user" = "Theo người dùng"; +"Clear filters" = "Xóa bộ lọc"; +"Comment" = "Bình luận"; +"Create" = "Tạo"; +"Create & Move" = "Tạo & Di chuyển"; +"Delete %@?" = "Xóa %@?"; +"Delete all files" = "Xóa tất cả tệp"; +"Delete all images" = "Xóa tất cả hình ảnh"; +"Delete all videos" = "Xóa tất cả video"; +"Delete by user" = "Xóa theo người dùng"; +"Delete DM media" = "Xóa media DM"; +"Delete feed posts" = "Xóa bài viết bảng tin"; +"Delete files" = "Xóa tệp"; +"Delete Folder" = "Xóa thư mục"; +"Delete from Gallery?" = "Xóa khỏi Thư viện?"; +"Delete profile pictures" = "Xóa ảnh hồ sơ"; +"Delete reels" = "Xóa reel"; +"Delete selected" = "Xóa đã chọn"; +"Delete Selected Files?" = "Xóa tệp đã chọn?"; +"Delete stories" = "Xóa tin"; +"Delete thumbnails" = "Xóa ảnh thu nhỏ"; +"Deleted from Gallery" = "Đã xóa khỏi Thư viện"; +"Deleted selected files" = "Đã xóa tệp đã chọn"; +"Deselect All" = "Bỏ chọn tất cả"; +"DM media deleted" = "Đã xóa media DM"; +"DMs" = "DM"; +"Each user appears as a folder next to your real folders." = "Mỗi người dùng xuất hiện dưới dạng thư mục bên cạnh các thư mục thực của bạn."; +"Each user gets a labelled section in the grid/list." = "Mỗi người dùng có một phần được dán nhãn trong lưới/danh sách."; +"Enable gallery" = "Bật thư viện"; +"Failed" = "Thất bại"; +"Failed to delete" = "Xóa thất bại"; +"Favorite" = "Yêu thích"; +"Favorite selected" = "Yêu thích đã chọn"; +"Favorites only" = "Chỉ yêu thích"; +"Feed posts deleted" = "Đã xóa bài viết bảng tin"; +"Files deleted" = "Đã xóa tệp"; +"Flat list. No grouping." = "Danh sách phẳng. Không nhóm."; +"Folder name" = "Tên thư mục"; +"Folders" = "Thư mục"; +"From RyukGram Gallery" = "Âm thanh từ Thư viện RyukGram"; +"Gallery" = "Thư viện"; +"Gallery only" = "Chỉ Thư viện"; +"Gallery save mode" = "Chế độ lưu thư viện"; +"Gallery Settings" = "Cài đặt Thư viện"; +"GIFs" = "GIF"; +"Grid columns" = "Số cột lưới"; +"Grid view" = "Chế độ xem lưới"; +"Group by user" = "Nhóm theo người dùng"; +"Group first by" = "Nhóm trước theo"; +"Order by" = "Sắp xếp theo"; +"Favorites first" = "Yêu thích trước"; +"Any time" = "Bất kỳ lúc nào"; +"This year" = "Năm nay"; +"%ld columns" = "%ld cột"; +"Hold DM tab to open gallery" = "Giữ tab DM để mở thư viện"; +"Images" = "Hình ảnh"; +"Images deleted" = "Đã xóa hình ảnh"; +"Images first" = "Hình ảnh trước"; +"item" = "mục"; +"items" = "mục"; +"Largest first" = "Lớn nhất trước"; +"List view" = "Chế độ xem danh sách"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "Nhấn giữ nút hộp thư trên thanh tab dưới để mở thư viện RyukGram"; +"Manage" = "Quản lý"; +"More" = "Thêm"; +"Move selected" = "Di chuyển đã chọn"; +"Move to Folder" = "Di chuyển đến thư mục"; +"Name A-Z" = "Tên A-Z"; +"Name Z-A" = "Tên Z-A"; +"New Folder" = "Thư mục mới"; +"New folder…" = "Thư mục mới…"; +"Newest first" = "Mới nhất trước"; +"No files in Gallery" = "Không có tệp trong Thư viện"; +"No files to delete" = "Không có tệp để xóa"; +"No matching files" = "Không có tệp khớp"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "Thư viện media trên thiết bị được tải qua RyukGram. Chế độ lưu chọn nơi 'Tải vào Ảnh' thực sự ghi."; +"Open" = "Mở"; +"Open Original Post" = "Mở bài viết gốc"; +"Options" = "Tùy chọn"; +"Other" = "Khác"; +"Photos + Gallery" = "Ảnh + Thư viện"; +"Photos only" = "Chỉ Ảnh"; +"Profile pictures deleted" = "Đã xóa ảnh hồ sơ"; +"Reels deleted" = "Đã xóa reel"; +"Rename" = "Đổi tên"; +"Rename Folder" = "Đổi tên thư mục"; +"Root" = "Gốc"; +"Save media from the preview screen\nto see it here." = "Lưu media từ màn hình xem trước\nđể xem nó ở đây."; +"Saved %lu items to Gallery" = "Đã lưu %lu mục vào Thư viện"; +"Saved to Gallery" = "Đã lưu vào Thư viện"; +"Saving to Gallery" = "Đang lưu vào Thư viện..."; +"Search users" = "Tìm người dùng"; +"Sections" = "Phần"; +"Select All" = "Chọn tất cả"; +"Share" = "Chia sẻ"; +"Share selected" = "Chia sẻ đã chọn"; +"Show favorites at top" = "Hiển thị mục yêu thích trên cùng"; +"Show gallery entries in download menus and unlock the gallery button" = "Hiển thị mục thư viện trong menu tải xuống và mở khóa nút thư viện"; +"Smallest first" = "Nhỏ nhất trước"; +"Source" = "Nguồn"; +"Source user" = "Người dùng nguồn"; +"Storage" = "Lưu trữ"; +"Stories deleted" = "Đã xóa tin"; +"Story" = "Tin"; +"The original content may no longer exist." = "Nội dung gốc có thể không còn tồn tại."; +"This folder contains %ld file(s). They will be moved to the parent folder." = "Thư mục này chứa %ld tệp. Chúng sẽ được di chuyển sang thư mục cha."; +"This folder is empty." = "Thư mục này trống."; +"This will permanently remove %ld file%@ from the gallery." = "Thao tác này sẽ xóa vĩnh viễn %ld tệp%@ khỏi thư viện."; +"This will permanently remove %ld file(s)." = "Thao tác này sẽ xóa vĩnh viễn %ld tệp."; +"This will permanently remove this file from the gallery." = "Thao tác này sẽ xóa vĩnh viễn tệp này khỏi thư viện."; +"Thumb" = "Thu nhỏ"; +"Thumbnails deleted" = "Đã xóa ảnh thu nhỏ"; +"to Gallery" = "vào Thư viện"; +"Total files" = "Tổng số tệp"; +"Total size" = "Tổng dung lượng"; +"Type" = "Loại"; +"Unable to open original post" = "Không thể mở bài viết gốc"; +"Unable to open profile" = "Không thể mở hồ sơ"; +"Unfavorite" = "Bỏ yêu thích"; +"Unknown user" = "Người dùng không xác định"; +"User files deleted" = "Đã xóa tệp người dùng"; +"Videos" = "Video"; +"Videos deleted" = "Đã xóa video"; +"Videos first" = "Video trước"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "Khi bật, mục yêu thích được ghim phía trên các tệp khác trong ngữ cảnh sắp xếp và thư mục hiện tại."; +"Where 'Download to Photos' actually writes when gallery is on" = "Nơi 'Tải vào Ảnh' thực sự ghi khi bật thư viện"; +"Yesterday" = "Hôm qua"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "Nút phím tắt trang chủ"; +"Show the extra button on the home top bar" = "Cấu hình nút phụ trên thanh trên cùng của trang chủ"; +"Auto" = "Tự động"; +"Icon" = "Biểu tượng"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "Kéo tay nắm ≡ để sắp xếp lại. Tắt một hàng để ẩn đích đến đó. Khi chỉ bật một hành động, chạm sẽ kích hoạt nó; khi có hai hoặc nhiều hơn, chạm sẽ mở menu."; +"Changelog" = "Nhật ký thay đổi"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "Thêm nút lối tắt bên cạnh nút tạo bài đăng + trên thanh trên cùng của trang chủ."; +"All buttons" = "Tất cả nút"; +"System" = "Hệ thống"; +"Instagram language" = "Ngôn ngữ Instagram"; +"Choose icon, reorder actions, and enable menu items" = "Chọn biểu tượng, sắp xếp lại thao tác và bật các mục trong menu"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "Chọn biểu tượng hiển thị trên thanh trên cùng của trang chủ. Tự động dùng biểu tượng thao tác đã chọn khi chỉ bật một thao tác."; +"Configure button" = "Cấu hình nút"; +"Global Action Icons" = "Biểu tượng thao tác toàn cục"; +"Interface" = "Giao diện"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "Ghi đè biểu tượng cho một nút cụ thể. Các nút để ở Mặc định sẽ theo biểu tượng chung ở trên."; +"Per button" = "Theo từng nút"; +"Show home shortcut button" = "Hiện nút lối tắt trang chủ"; +"%ld new" = "%ld mới"; +"Tab bar" = "Thanh tab"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "Thông báo trong ứng dụng phổ quát. Chọn kiểu, vị trí, định tuyến theo từng hành động (pill tùy chỉnh / IG gốc / tắt)."; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "Kéo để đặt vị trí thông báo"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "Kéo thông báo đến nơi bạn muốn. Trên giữa thì trượt xuống, dưới thì trượt lên."; + +"Notifications" = "Thông báo"; +"Appearance" = "Giao diện"; +"Routing" = "Định tuyến"; +"Style" = "Kiểu"; +"Position" = "Vị trí"; +"Stack size" = "Kích thước chồng"; +"Duration" = "Thời lượng"; +"Default surface" = "Bề mặt mặc định"; +"System notifications" = "Thông báo hệ thống"; +"Mirror to notification centre" = "Phản chiếu vào trung tâm thông báo"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "Khi ứng dụng chạy nền, các thông báo nhanh sẽ được gửi vào trung tâm thông báo iOS để bạn không bỏ lỡ."; +"Clear when app opens" = "Xóa khi mở ứng dụng"; +"Remove mirrored notifications from notification centre when you return to the app." = "Xóa các thông báo phản chiếu khỏi trung tâm thông báo khi bạn quay lại ứng dụng."; +"Background mirror" = "Phản chiếu nền"; +"Show while app is open" = "Hiển thị khi đang mở ứng dụng"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "Cũng gửi thông báo phản chiếu dưới dạng biểu ngữ hệ thống khi bạn đang dùng ứng dụng, không chỉ khi chạy nền."; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "Giao diện, định tuyến, thông báo hệ thống và mọi tùy chỉnh theo từng hành động trở về mặc định."; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "Dùng quyền thông báo của Instagram. Tùy chỉnh theo từng hành động nằm trong menu của mỗi hành động, mục Phản chiếu nền; hành động đặt Tắt sẽ không bao giờ được phản chiếu."; +"Enable notifications" = "Bật thông báo"; +"Haptic feedback" = "Phản hồi rung"; +"Preview pill" = "Xem trước pill"; +"Preview download pill" = "Xem trước pill tải xuống"; +"Preview loading pill" = "Xem trước pill đang tải"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "Công tắc chính. Khi tắt, không có pill RyukGram hay toast IG gốc nào được phát ra."; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "Thông báo trong ứng dụng phổ quát. Mọi phản hồi của RyukGram (tải xuống, sao chép, lỗi, thông báo thành công) đều đi qua đây."; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Tối giản: làm mờ phẳng. Sắc màu: nhuộm theo tông. Phát sáng: viền sáng có màu. Đảo: viên nang dynamic island."; +"Top slides down, bottom slides up." = "Trên trượt xuống, dưới trượt lên."; +"How many pills can show at once before queueing." = "Số pill có thể hiển thị cùng lúc trước khi xếp hàng."; +"Multiplies how long toasts stay on screen." = "Nhân thời gian toast hiển thị trên màn hình."; +"Vibration on success/error pills." = "Rung trên pill thành công/lỗi."; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "Đối với hành động kiểu toast, bạn có thể chọn giữa pill của chúng tôi và toast dưới gốc của IG. Ghi đè theo từng hành động ở bên dưới."; +"What to use when an action doesn't have its own override." = "Dùng gì khi một hành động không có ghi đè riêng."; +"Tap to cycle: info → success → warning → error" = "Chạm để xoay vòng: thông tin → thành công → cảnh báo → lỗi"; +"Tap to cycle between success and failure" = "Chạm để xoay vòng giữa thành công và thất bại"; +"Progress UI — pill or off only." = "Giao diện tiến trình — chỉ pill hoặc tắt."; +"Minimal" = "Tối giản"; +"Colorful" = "Sắc màu"; +"Glow" = "Phát sáng"; +"Island" = "Đảo"; +"Top" = "Trên"; +"Bottom" = "Dưới"; +"Custom pill" = "Pill tùy chỉnh"; +"IG native toast" = "Toast IG gốc"; +"Short" = "Ngắn"; +"Normal" = "Bình thường"; +"Long" = "Dài"; +"Very long" = "Rất dài"; +"Downloads & saving" = "Tải xuống & lưu"; +"Copy to clipboard" = "Sao chép vào bảng tạm"; +"Read receipts & seen" = "Xác nhận đã đọc & đã xem"; +"Block, exclude & pin" = "Chặn, loại trừ & ghim"; +"Stories & messages" = "Tin & tin nhắn"; +"Voice & audio" = "Thoại & âm thanh"; +"Errors" = "Lỗi"; +"Download progress" = "Tiến trình tải xuống"; +"Bulk download progress" = "Tiến trình tải hàng loạt"; +"Repost progress" = "Tiến trình đăng lại"; +"Copied post / reel URL" = "Đã sao chép URL bài viết / reel"; +"Copied comment text" = "Đã sao chép văn bản bình luận"; +"Copied GIF link" = "Đã sao chép liên kết GIF"; +"Copied note text" = "Đã sao chép văn bản ghi chú"; +"Copied profile info" = "Đã sao chép thông tin hồ sơ"; +"Copied audio URL" = "Đã sao chép URL âm thanh"; +"Copied quality picker URL" = "Đã sao chép URL bộ chọn chất lượng"; +"Copied unlocked password" = "Đã sao chép mật khẩu đã mở khóa"; +"Copied description text" = "Đã sao chép văn bản mô tả"; +"DM seen / read receipts" = "Xác nhận đã xem / đã đọc DM"; +"Story seen / read receipts" = "Xác nhận đã xem / đã đọc tin"; +"Someone read your message" = "Ai đó đã đọc tin nhắn của bạn"; +"User blocked / unblocked" = "Đã chặn / bỏ chặn người dùng"; +"Chat added / removed from exclude" = "Đã thêm / xóa cuộc trò chuyện khỏi loại trừ"; +"Story user added / removed from exclude" = "Đã thêm / xóa người dùng tin khỏi loại trừ"; +"Share-sheet recipient pinned" = "Đã ghim người nhận bảng chia sẻ"; +"Unsent message detected" = "Đã phát hiện tin nhắn thu hồi"; +"Reaction removed detected" = "Phát hiện gỡ biểu cảm"; +"%lu messages unsent" = "Đã thu hồi %lu tin nhắn"; +"%lu reactions removed" = "Đã gỡ %lu biểu cảm"; +"%lu chats marked seen" = "Đã đánh dấu đã xem %lu cuộc trò chuyện"; +"%lu stories marked seen" = "Đã đánh dấu đã xem %lu tin"; +"%lu of your messages read" = "%lu tin nhắn của bạn đã được đọc"; +"%lu notifications" = "%lu thông báo"; +"Live comments toggled" = "Đã bật/tắt bình luận trực tiếp"; +"Custom GIF sent" = "Đã gửi GIF tùy chỉnh"; +"GIF favorited / unfavorited" = "Đã thêm / xóa GIF khỏi mục yêu thích"; +"Voice DM sent" = "Đã gửi DM thoại"; +"Audio extraction status" = "Trạng thái trích xuất âm thanh"; +"Profile Analyzer complete" = "Đã hoàn tất phân tích hồ sơ"; +"Profile Analyzer progress" = "Tiến trình phân tích hồ sơ"; +"Media extraction failed" = "Trích xuất media thất bại"; +"Permission denied" = "Quyền bị từ chối"; +"Validation error" = "Lỗi xác thực"; +"Network / API error" = "Lỗi mạng / API"; +"Action error fallback" = "Phương án dự phòng lỗi hành động"; +"Unlock failed" = "Mở khoá thất bại"; +"Chat locked / unlocked" = "Khoá / mở khoá chat"; +"Invalid clipboard link" = "Liên kết bảng tạm không hợp lệ"; +"Experimental flag warning" = "Cảnh báo cờ thử nghiệm"; +"Settings action confirmed" = "Đã xác nhận hành động cài đặt"; +"Cache clearing progress" = "Tiến trình xóa bộ nhớ đệm"; +"Backup export / import" = "Xuất / nhập bản sao lưu"; +"Other / uncategorized" = "Khác / chưa phân loại"; +"Comment copied" = "Đã sao chép bình luận"; +"FFmpeg log copied" = "Đã sao chép nhật ký FFmpeg"; +"GIF inserted" = "Đã chèn GIF"; +"Story marked as seen" = "Đã đánh dấu tin là đã xem"; +"Saved" = "Đã lưu"; +"Tap to retry" = "Chạm để thử lại"; +"Looks great" = "Trông tuyệt vời"; +"Something broke" = "Có gì đó hỏng"; +"Just so you know" = "Chỉ để bạn biết"; +"Success preview" = "Xem trước thành công"; +"Error preview" = "Xem trước lỗi"; +"Warning preview" = "Xem trước cảnh báo"; +"Info preview" = "Xem trước thông tin"; +"Preview download…" = "Xem trước tải xuống…"; +"Colors" = "Màu sắc"; +"+ Add new language" = "+ Thêm ngôn ngữ mới"; +"Each chat can override this in the list" = "Mỗi cuộc trò chuyện có thể ghi đè điều này trong danh sách"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "Khi bật, các yêu cầu vị trí của Instagram sẽ trả về vị trí giả bạn đã chọn. Nút bản đồ thêm phím tắt nhanh trong Bản đồ bạn bè."; +"Tap a preset to make it active. Swipe left to delete." = "Chạm vào một cài đặt sẵn để kích hoạt. Vuốt sang trái để xóa."; +"Override Instagram location reads." = "Ghi đè đọc vị trí của Instagram."; +"Show the quick button in Friends Map." = "Hiển thị nút nhanh trong Bản đồ bạn bè."; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "Chọn cách viết ngày tuyệt đối. “Mặc định” giữ nguyên định dạng của IG. Vuốt một định dạng tùy chỉnh để chỉnh sửa hoặc xóa."; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "Ngày trẻ hơn ngưỡng hiển thị dưới dạng thời gian tương đối. Ngày cũ hơn quay về định dạng tuyệt đối. “Kết hợp với ngày” hiển thị cả hai — “05/01/2026 (2g)” hoặc “2g – 05/01/2026”."; +"Compact style" = "Kiểu rút gọn"; +"Example: “1h” instead of “1 hour ago”" = "Ví dụ: “1g” thay vì “1 giờ trước”"; +"Example: “Jan 5, 2026 (2h)”" = "Ví dụ: “05/01/2026 (2g)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "API âm thanh iOS không thể xử lý tệp này%@%@\n\nBạn có thể thử gửi nó tới Instagram nguyên trạng, hoặc mở issue hỗ trợ."; +"Combine with date" = "Kết hợp với ngày"; +"Absolute then relative" = "Tuyệt đối rồi tương đối"; +"Relative – absolute" = "Tương đối – tuyệt đối"; +"Relative when young, absolute when older." = "Tương đối nếu mới, tuyệt đối nếu cũ."; +"Example: “2h – Jan 5, 2026”" = "Ví dụ: “2g – 05/01/2026”"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "Bắt giữ nội dung xem một lần bị thu hồi khi bạn vắng mặt. ⚠️ Có thể hao pin"; +"Disappearing (view-once) media" = "Nội dung biến mất (xem một lần)"; +"Disappearing media expired before it could be saved" = "Nội dung biến mất đã hết hạn trước khi kịp lưu"; +"Disappearing media — gone before it could be saved" = "Nội dung biến mất — đã mất trước khi kịp lưu"; +"Disappearing only" = "Chỉ nội dung biến mất"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "Buộc Instagram tiếp tục chạy nền để có thể bắt giữ nội dung biến mất mà ai đó thu hồi khi bạn không ở trong ứng dụng.\n\nChủ yếu hữu ích cho nội dung xem một lần — ảnh/video thông thường thường vẫn khôi phục được mà không cần đến nó. ⚠️ Có thể hao pin đáng kể và không thể bắt giữ gì nếu bạn buộc thoát Instagram từ trình chuyển ứng dụng.\n\nBật chứ?"; +"Keep Instagram active in background" = "Giữ Instagram hoạt động ở chế độ nền"; +"Media couldn’t be downloaded — the link expired" = "Không thể tải nội dung — liên kết đã hết hạn"; +"Media wasn’t available to save" = "Nội dung không khả dụng để lưu"; +"Retrying download…" = "Đang thử tải lại…"; +"Try to download again" = "Thử tải lại"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "Nhật ký đã xem"; +"Date" = "Ngày"; +"Reads" = "Lượt xem"; +"Person" = "Người"; +"Chat" = "Trò chuyện"; +"%@ · on @%@" = "%@ · trên @%@"; +"%lu read · %@" = "%lu lượt xem · %@"; +"%lu reads · %@" = "%lu lượt xem · %@"; +"%lu reads · %lu reader · %@" = "%lu lượt xem · %lu người · %@"; +"%lu reads · %lu readers · %@" = "%lu lượt xem · %lu người · %@"; +"Clear all" = "Xóa tất cả"; +"Clear all records" = "Xóa tất cả bản ghi"; +"Detects when others read your messages and notifies you" = "Phát hiện khi người khác đọc tin nhắn và thông báo cho bạn"; +"Ignored people & chats" = "Người và cuộc trò chuyện bị bỏ qua"; +"Ignored" = "Đã bỏ qua"; +"Log group chats" = "Ghi lại nhóm chat"; +"Most reads" = "Nhiều lượt xem nhất"; +"Notifies and records when someone reads a message you sent" = "Thông báo và ghi lại khi ai đó đọc tin nhắn bạn gửi"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "Không có gì bị bỏ qua. Nhấn giữ một người trong nhật ký để ngừng ghi lại."; +"Nothing matches your filters." = "Không có gì khớp với bộ lọc."; +"Read %@ · %@" = "Đã xem %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "Lưu lượt xem trên thiết bị này. Tắt = chỉ thông báo, không lưu"; +"Resume logging" = "Tiếp tục ghi"; +"Search by username" = "Tìm theo tên người dùng"; +"Stop logging %@" = "Ngừng ghi %@"; +"Delete records" = "Xóa bản ghi"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "Khi bật, bạn sẽ nhận thông báo khi ai đó đọc tin nhắn của bạn. Tắt \"Lưu vào nhật ký\" để chỉ nhận thông báo. Nhấn giữ một người trong nhật ký để ngừng ghi lại họ."; +"Swipe to remove. Removing resumes logging for that person or chat." = "Vuốt để xóa. Xóa sẽ tiếp tục ghi lại người hoặc cuộc trò chuyện đó."; +"Updating names and photos" = "Đang cập nhật tên và ảnh"; +"Your message" = "Tin nhắn của bạn"; +"read your message in %@" = "đã đọc tin nhắn của bạn trong %@"; +"read your message" = "đã đọc tin nhắn của bạn"; +"Also track reads in group chats. Off by default — groups can be noisy" = "Theo dõi cả lượt xem trong nhóm. Mặc định tắt — nhóm có thể gây nhiễu"; +"Refreshing…" = "Đang làm mới…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "Tạo dấu vân tay mới"; +"New device fingerprint" = "Dấu vân tay thiết bị mới"; +"Roll new ID" = "Tạo ID mới"; +"Roll + clear IG data" = "Tạo mới + xóa dữ liệu IG"; +"Generate fresh device identifiers" = "Tạo định danh thiết bị mới"; +"Enter ID manually…" = "Nhập ID thủ công…"; +"Manual device ID" = "ID thiết bị thủ công"; +"Paste or type the UUID this device should report." = "Dán hoặc nhập UUID mà thiết bị này nên báo cáo."; +"Device ID set" = "Đã đặt ID thiết bị"; +"New fingerprint ready" = "Dấu vân tay mới đã sẵn sàng"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "Khởi động lại Instagram ngay để danh tính thiết bị mới được áp dụng từ một khởi đầu sạch?"; +"Copy current ID" = "Sao chép ID hiện tại"; +"Revert to my real device ID" = "Khôi phục ID thiết bị thật của tôi"; +"Restore the original, stop masking" = "Khôi phục bản gốc, ngừng che"; +"Spoofing off" = "Đã tắt giả mạo"; +"Relaunch now" = "Khởi động lại ngay"; +"Relaunch to apply" = "Khởi động lại để áp dụng"; +"Clear device & relaunch" = "Xóa thiết bị và khởi động lại"; +"Clear device & relaunch?" = "Xóa thiết bị và khởi động lại?"; +"Clear & relaunch" = "Xóa và khởi động lại"; +"Full reset to a brand-new device" = "Đặt lại toàn bộ thành một thiết bị hoàn toàn mới"; +"Device ID" = "ID thiết bị"; +"Hide button until relaunch" = "Ẩn nút cho đến khi khởi động lại"; +"Device identity" = "Danh tính thiết bị"; +"Masked" = "Đã che"; +"Real" = "Thật"; +"Show button on login screen" = "Hiển thị nút trên màn hình đăng nhập"; +"Floating Device ID button while signed out" = "Nút ID thiết bị nổi khi chưa đăng nhập"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "Che các định danh mà Instagram dùng để nhận dạng thiết bị này: ID thiết bị, ID thiết bị gia đình, ID nhà cung cấp và ID máy. Các thay đổi có hiệu lực sau khi khởi động lại. Các điều khiển tương tự cũng xuất hiện trên màn hình đăng nhập."; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "Quên mọi thông tin đăng nhập đã lưu, cookie và danh tính thiết bị đã lưu, sau đó khởi động lại để Instagram bắt đầu như một thiết bị hoàn toàn mới. Sau đó bạn sẽ phải đăng nhập lại."; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "Tạo ID thiết bị, ID thiết bị gia đình, ID nhà cung cấp mới và xóa ID máy để Instagram đăng ký lại như một thiết bị mới. Hoặc xóa luôn thông tin đăng nhập đã lưu để đặt lại toàn bộ."; +"Apple attestation" = "Chứng thực Apple"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "Chặn chứng thực thiết bị Apple của Instagram (DeviceCheck và App Attest). Chúng gắn với phần cứng và không thể thay đổi, nên vẫn liên kết thiết bị qua các lần đặt lại. Việc chặn khiến Instagram thấy một thiết bị không hỗ trợ chúng. Chỉ hoạt động khi đang bật chế độ che."; +"Block Apple device attestation" = "Chặn chứng thực thiết bị Apple"; +"Stop the hardware attestation that links the device" = "Dừng chứng thực phần cứng liên kết thiết bị"; +"Block Apple attestation: %@" = "Chặn chứng thực Apple: %@"; +"Attestation blocked" = "Đã chặn chứng thực"; +"Attestation allowed" = "Đã cho phép chứng thực"; +"Roll + clear, then sign in fresh" = "Tạo mới + xóa, rồi đăng nhập mới"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "Yêu cầu theo dõi"; +"Show follow requests" = "Hiện yêu cầu theo dõi"; +"Check now" = "Kiểm tra ngay"; +"Reset tracked data" = "Đặt lại dữ liệu đã theo dõi"; +"Enable tracker" = "Bật trình theo dõi"; +"Log requests and check outcomes" = "Ghi lại yêu cầu và kiểm tra kết quả"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "Ghi lại các yêu cầu theo dõi bạn gửi và nhận, và phát hiện ai hủy yêu cầu trước khi bạn trả lời. Tất cả trên thiết bị."; +"What to track" = "Theo dõi những gì"; +"Requests I send" = "Yêu cầu tôi gửi"; +"To private accounts" = "Đến tài khoản riêng tư"; +"Requests I receive" = "Yêu cầu tôi nhận"; +"From people who want to follow you" = "Từ những người muốn theo dõi bạn"; +"Background check" = "Kiểm tra nền"; +"Check interval" = "Khoảng thời gian kiểm tra"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "Tần suất kiểm tra kết quả khi ứng dụng đang mở. Cũng kiểm tra khi khởi động và khi bạn mở danh sách."; +"Off (manual only)" = "Tắt (chỉ thủ công)"; +"Every 15 minutes" = "Mỗi 15 phút"; +"Every 30 minutes" = "Mỗi 30 phút"; +"Every hour" = "Mỗi giờ"; +"Every 6 hours" = "Mỗi 6 giờ"; +"My request accepted" = "Yêu cầu của tôi được chấp nhận"; +"A private account accepted you" = "Một tài khoản riêng tư đã chấp nhận bạn"; +"My request declined" = "Yêu cầu của tôi bị từ chối"; +"No longer pending" = "Không còn đang chờ"; +"New request received" = "Đã nhận yêu cầu mới"; +"Someone asked to follow you" = "Có người yêu cầu theo dõi bạn"; +"Request withdrawn" = "Yêu cầu đã bị rút lại"; +"Someone cancelled their request" = "Có người đã hủy yêu cầu"; +"Sent by me" = "Tôi đã gửi"; +"Received" = "Đã nhận"; +"Sent" = "Đã gửi"; +"Accepted" = "Đã chấp nhận"; +"Rejected" = "Đã từ chối"; +"Requested" = "Đã yêu cầu"; +"Approved" = "Đã duyệt"; +"Withdrawn" = "Đã rút lại"; +"No follow requests tracked yet" = "Chưa có yêu cầu theo dõi nào được theo dõi"; +"Cancel requests" = "Hủy yêu cầu"; +"Delete %lu record(s) from history?" = "Xóa %lu bản ghi khỏi lịch sử?"; +"Cancel %lu pending request(s)?" = "Hủy %lu yêu cầu đang chờ?"; +"Follow back %lu account(s)?" = "Theo dõi lại %lu tài khoản?"; +"Clear all tracked follow requests?" = "Xóa tất cả yêu cầu theo dõi đã theo dõi?"; +"Reset tracked follow requests for this account?" = "Đặt lại các yêu cầu theo dõi đã theo dõi cho tài khoản này?"; +"Enable the tracker first" = "Bật trình theo dõi trước"; +"Checking…" = "Đang kiểm tra…"; +"%ld request(s) updated" = "Đã cập nhật %ld yêu cầu"; +"No changes" = "Không có thay đổi"; +"Working…" = "Đang xử lý…"; +"Follow request accepted" = "Yêu cầu theo dõi đã được chấp nhận"; +"%@ accepted your request" = "%@ đã chấp nhận yêu cầu của bạn"; +"Follow request declined" = "Yêu cầu theo dõi đã bị từ chối"; +"%@ is no longer pending" = "%@ không còn đang chờ"; +"New follow request" = "Yêu cầu theo dõi mới"; +"%@ asked to follow you" = "%@ đã yêu cầu theo dõi bạn"; +"Follow request withdrawn" = "Yêu cầu theo dõi đã bị rút lại"; +"%@ withdrew their request" = "%@ đã rút lại yêu cầu"; +"Follow requests log" = "Nhật ký yêu cầu theo dõi"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "Mở khóa các tính năng trả phí của Instagram"; +"Turn on Instagram's paid subscriber features inside the app." = "Bật các tính năng dành cho người đăng ký trả phí của Instagram ngay trong ứng dụng."; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus là gói đăng ký trả phí của Instagram. Các công tắc này bật những tính năng đó ngay trong ứng dụng. Một số hoạt động đầy đủ. Số khác chỉ hiện ra tùy chọn, vì nội dung được tải từ máy chủ của Instagram và vẫn cần một gói đăng ký thật, nên chúng có thể hiện trống hoặc không làm gì cả. Bật những gì bạn muốn rồi chạm Apply. Nếu Instagram không khởi động được ba lần liên tiếp, các công tắc này sẽ tự đặt lại."; +"Turn everything on" = "Bật tất cả"; +"Turn everything off" = "Tắt tất cả"; +"Every Instagram Plus feature turns off and Instagram restarts." = "Mọi tính năng Instagram Plus sẽ tắt và Instagram khởi động lại."; +"Story peek" = "Xem nhanh tin"; +"Hold a story in the tray to preview it without opening it." = "Giữ một tin trong khay để xem trước mà không cần mở."; +"Story fonts" = "Phông chữ tin"; +"Adds the subscriber fonts when you add text to a story." = "Thêm các phông chữ dành cho người đăng ký khi bạn thêm chữ vào tin."; +"Search story viewers" = "Tìm người xem tin"; +"Search the list of people who viewed your story." = "Tìm trong danh sách những người đã xem tin của bạn."; +"Viewer timestamps" = "Thời điểm người xem"; +"Shows when each person viewed your story." = "Hiển thị thời điểm mỗi người đã xem tin của bạn."; +"Silent post to profile" = "Đăng lên trang cá nhân âm thầm"; +"Share to your profile without notifying your followers." = "Chia sẻ lên trang cá nhân mà không thông báo cho người theo dõi."; +"Silent post to highlights" = "Thêm vào tin nổi bật âm thầm"; +"Add to a highlight without notifying your followers." = "Thêm vào tin nổi bật mà không thông báo cho người theo dõi."; +"Story rewatch" = "Xem lại tin"; +"Rewatch a story right after it finishes." = "Xem lại một tin ngay sau khi tin kết thúc."; +"Story extend" = "Kéo dài tin"; +"Keep your story up longer than 24 hours." = "Giữ tin của bạn hiển thị lâu hơn 24 giờ."; +"Story spotlight" = "Làm nổi bật tin"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "Quảng bá tin của bạn đến nhiều người xem hơn. Tải từ Instagram nên có thể không hoạt động."; +"Story super likes" = "Siêu thích tin"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "Gửi siêu thích cho các tin. Tải từ Instagram nên có thể không hoạt động."; +"Message peek" = "Xem nhanh tin nhắn"; +"Hold a chat in the inbox to preview it." = "Giữ một cuộc trò chuyện trong hộp thư để xem trước."; +"Chat fonts" = "Phông chữ trò chuyện"; +"Adds the subscriber fonts in direct messages." = "Thêm các phông chữ dành cho người đăng ký trong tin nhắn trực tiếp."; +"Chat themes" = "Chủ đề trò chuyện"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "Mở khóa các chủ đề trò chuyện cao cấp. Tải từ Instagram nên có thể không hoạt động."; +"App icons" = "Biểu tượng ứng dụng"; +"Opens the alternate app icon picker." = "Mở bộ chọn biểu tượng ứng dụng thay thế."; +"Bio font" = "Phông chữ tiểu sử"; +"Use a subscriber font for your bio." = "Dùng phông chữ dành cho người đăng ký cho phần tiểu sử của bạn."; +"Custom story lists" = "Danh sách tin tùy chỉnh"; +"Make lists to pick exactly who sees a story." = "Tạo danh sách để chọn chính xác ai được xem một tin."; +"More pinned posts" = "Ghim thêm bài viết"; +"Pin more posts to the top of your profile." = "Ghim thêm bài viết lên đầu trang cá nhân của bạn."; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu bản ghi"; +"1 recording" = "1 bản ghi"; +"30 days" = "30 ngày"; +"7 days" = "7 ngày"; +"90 days" = "90 ngày"; +"Adds a record button to the call screen" = "Thêm nút ghi vào màn hình cuộc gọi"; +"Also show recordings in the RyukGram gallery under Calls" = "Cũng hiển thị bản ghi trong thư viện RyukGram dưới mục Cuộc gọi"; +"Auto-delete old recordings" = "Tự động xóa bản ghi cũ"; +"Auto-record calls" = "Tự động ghi cuộc gọi"; +"Auto-record ignore list" = "Danh sách bỏ qua tự động ghi"; +"Auto-record ignored" = "Đã bỏ qua tự động ghi"; +"Auto-record on" = "Đã bật tự động ghi"; +"Block mute signal" = "Chặn tín hiệu tắt tiếng"; +"Both sides" = "Cả hai bên"; +"Browse saved calls, grouped by person" = "Duyệt cuộc gọi đã lưu, nhóm theo người"; +"Call" = "Cuộc gọi"; +"Call recorded" = "Đã ghi cuộc gọi"; +"Call recording" = "Ghi cuộc gọi"; +"Call recordings" = "Bản ghi cuộc gọi"; +"Camera position" = "Vị trí camera"; +"Can't play" = "Không thể phát"; +"Can't record" = "Không thể ghi"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "Các cuộc trò chuyện bị loại khỏi tự động ghi — nhấn giữ nút ghi trong cuộc gọi để thêm"; +"Could not save the recording." = "Không thể lưu bản ghi."; +"Could not start the recorder." = "Không thể khởi động trình ghi."; +"Delete all" = "Xóa tất cả"; +"Delete all recordings" = "Xóa tất cả bản ghi"; +"Delete all recordings?" = "Xóa tất cả bản ghi?"; +"Drag the overlay where you want it" = "Kéo lớp phủ đến vị trí bạn muốn"; +"Drag your camera window to any corner or edge." = "Kéo cửa sổ camera của bạn đến bất kỳ góc hoặc cạnh nào."; +"Enable call recording" = "Bật ghi cuộc gọi"; +"Export all" = "Xuất tất cả"; +"Full screen" = "Toàn màn hình"; +"Group call" = "Cuộc gọi nhóm"; +"Ignore auto-record for this chat" = "Bỏ qua tự động ghi cho cuộc trò chuyện này"; +"Ignored chats aren't auto-recorded. You can still record manually." = "Các cuộc trò chuyện đã bỏ qua sẽ không được tự động ghi. Bạn vẫn có thể ghi thủ công."; +"Include my camera" = "Bao gồm camera của tôi"; +"Keep forever" = "Giữ mãi mãi"; +"Large" = "Lớn"; +"Mute without the other side seeing you muted — your mic is still silenced" = "Tắt tiếng mà bên kia không thấy bạn đã tắt tiếng — micro của bạn vẫn được tắt tiếng"; +"Muted silently" = "Đã tắt tiếng thầm lặng"; +"My camera size" = "Kích thước camera của tôi"; +"No call audio was captured." = "Không thu được âm thanh cuộc gọi nào."; +"No ignored chats. Long-press the record button in a call to ignore it." = "Không có cuộc trò chuyện nào bị bỏ qua. Nhấn giữ nút ghi trong cuộc gọi để bỏ qua."; +"No recordings" = "Không có bản ghi"; +"Off records audio only, even on video calls" = "Khi tắt chỉ ghi âm thanh, ngay cả với cuộc gọi video"; +"Only me" = "Chỉ mình tôi"; +"Only them" = "Chỉ họ"; +"Open recordings" = "Mở bản ghi"; +"Overlay your camera as a small window on video-call recordings" = "Phủ camera của bạn dưới dạng cửa sổ nhỏ trên bản ghi cuộc gọi video"; +"Overlay your camera on the recording" = "Phủ camera của bạn lên bản ghi"; +"Record audio from" = "Ghi âm thanh từ"; +"Record video on video calls" = "Ghi video trong cuộc gọi video"; +"Record voice and video calls, browse them later" = "Ghi cuộc gọi thoại và video, duyệt lại sau"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "Cuộc gọi đã ghi chỉ được lưu trên thiết bị này. Một chỉ báo đỏ trên thanh trạng thái hiển thị trong khi ghi."; +"Recorded calls will appear here." = "Cuộc gọi đã ghi sẽ xuất hiện tại đây."; +"Recording call" = "Đang ghi cuộc gọi"; +"Recording count" = "Số bản ghi"; +"Recording failed" = "Ghi thất bại"; +"Recording name" = "Tên bản ghi"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "Ghi bên kia (âm thanh cuộc gọi) và micro của bạn. Một chỉ báo đỏ trên thanh trạng thái hiển thị trong khi ghi. Bản ghi chỉ được lưu trên thiết bị này."; +"Remove from ignore list" = "Xóa khỏi danh sách bỏ qua"; +"Remove recordings older than the chosen age" = "Xóa các bản ghi cũ hơn thời gian đã chọn"; +"Rename recording" = "Đổi tên bản ghi"; +"Search calls" = "Tìm kiếm cuộc gọi"; +"Set a custom name for this chat's recordings." = "Đặt tên tùy chỉnh cho bản ghi của cuộc trò chuyện này."; +"Size of the overlay window" = "Kích thước cửa sổ lớp phủ"; +"Small" = "Nhỏ"; +"Starts recording automatically when a call opens" = "Tự động bắt đầu ghi khi cuộc gọi mở"; +"Sync to gallery" = "Đồng bộ tới thư viện"; +"The recording file is missing." = "Tệp bản ghi bị thiếu."; +"Them" = "Họ"; +"Them (full screen)" = "Họ (toàn màn hình)"; +"This permanently removes every saved call recording for this account." = "Thao tác này xóa vĩnh viễn mọi bản ghi cuộc gọi đã lưu cho tài khoản này."; +"Unknown chat" = "Cuộc trò chuyện không xác định"; +"Unmuted" = "Đã bật tiếng"; +"Which camera fills the frame" = "Camera nào lấp đầy khung hình"; +"Which side's voice to capture" = "Ghi giọng nói của bên nào"; +"You" = "Bạn"; +"You (full screen)" = "Bạn (toàn màn hình)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "Camera của bạn được ghi và phủ lên bản ghi. Chọn bên nào lấp đầy màn hình, kích thước lớp phủ và kéo nó đến bất kỳ góc nào."; +"Prompt before the call recordings open" = "Nhắc trước khi mở bản ghi cuộc gọi"; +"Prompt before the activity log opens" = "Hỏi trước khi mở nhật ký hoạt động"; +"Mark all as read" = "Đánh dấu tất cả là đã đọc"; +"Delete %lu chats?" = "Xóa %lu cuộc trò chuyện?"; +"This permanently removes their recordings." = "Thao tác này xóa vĩnh viễn bản ghi của họ."; + +"Stories archive" = "Kho lưu trữ tin"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "Đã thả cảm xúc"; +"Reacted first" = "Cảm xúc trước"; +"Mutual" = "Theo dõi lẫn nhau"; +"Viewers" = "Người xem"; +"1 viewer" = "1 người xem"; +"View viewers" = "Xem người xem"; +"%lu views" = "%lu lượt xem"; +"%ld likes" = "%ld lượt thích"; +"0 views" = "0 lượt xem"; +"1 like" = "1 lượt thích"; +"1 view" = "1 lượt xem"; +"Photos" = "Ảnh"; +"Oldest" = "Cũ nhất"; +"Most viewed" = "Xem nhiều nhất"; +"Most reacted" = "Nhiều cảm xúc nhất"; +"Open archive" = "Mở lưu trữ"; +"Archive settings" = "Cài đặt lưu trữ"; +"Archiving" = "Lưu trữ"; +"Enable stories archive" = "Bật lưu trữ tin"; +"Save your stories before they expire" = "Lưu tin của bạn trước khi hết hạn"; +"Saves each story you post, with its photo or video, kept separately for each account." = "Lưu mỗi tin bạn đăng, kèm ảnh hoặc video, giữ riêng cho từng tài khoản."; +"Save and update viewers" = "Lưu và cập nhật người xem"; +"Keep each story's viewers and likers, refreshed to the final list" = "Giữ danh sách người xem và người thích của mỗi tin, cập nhật đến danh sách cuối cùng"; +"Update viewers" = "Cập nhật người xem"; +"How often to refresh viewers for stories still live" = "Tần suất làm mới người xem cho các tin còn hoạt động"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "Danh sách người xem của một tin tiếp tục tăng trong suốt một ngày, rồi Instagram hiển thị thêm một ngày nữa. Tự động cập nhật lấy danh sách cuối cùng khi tin được một ngày tuổi, nên số liệu bạn giữ luôn đầy đủ."; +"Notify me about pinned viewers" = "Thông báo cho tôi về người xem đã ghim"; +"A heads-up when a pinned viewer sees or likes your story" = "Báo cho bạn khi một người xem đã ghim xem hoặc thích tin của bạn"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "Nhận thông báo khi một người xem đã ghim xem hoặc thích tin của bạn. Ghim người xem và quản lý danh sách từ cài đặt người xem."; +"Viewer list & pins" = "Danh sách người xem & ghim"; +"Turn on the viewer list and manage pinned viewers" = "Bật danh sách người xem và quản lý người xem đã ghim"; +"Turn on a custom viewer list to pin, search and sort viewers" = "Bật danh sách người xem tùy chỉnh để ghim, tìm kiếm và sắp xếp người xem"; +"Tick several to combine them." = "Chọn nhiều mục để kết hợp chúng."; +"Select stories" = "Chọn tin"; +"No archived stories yet. Post a story and it appears here." = "Chưa có tin nào được lưu trữ. Đăng một tin và nó sẽ xuất hiện ở đây."; +"Archiving is off. Enable it in the archive settings, then post a story." = "Lưu trữ đang tắt. Bật nó trong cài đặt lưu trữ, rồi đăng một tin."; +"Delete story?" = "Xóa tin?"; +"This removes the archived photo or video and its viewers." = "Thao tác này xóa ảnh hoặc video đã lưu trữ và người xem của nó."; +"Delete all stories?" = "Xóa tất cả tin?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "Xóa mọi tin đã lưu trữ và người xem của chúng cho tài khoản này. Không thể hoàn tác."; +"Delete %lu archived stories and their viewers?" = "Xóa %lu tin đã lưu trữ và người xem của chúng?"; +"Pinned viewer saw your story" = "Người xem đã ghim đã xem tin của bạn"; +"Pinned viewer liked your story" = "Người xem đã ghim đã thích tin của bạn"; +"Pinned viewer reacted to your story" = "Người xem đã ghim đã bày tỏ cảm xúc với tin của bạn"; +"Pinned viewers on your story" = "Người xem đã ghim trên tin của bạn"; +"%lu pinned viewers just saw, liked or reacted" = "%lu người xem đã ghim vừa xem, thích hoặc bày tỏ cảm xúc"; +"A pinned viewer" = "Một người xem đã ghim"; +"On each launch" = "Mỗi lần khởi động"; diff --git a/src/Localization/Resources/zh-Hans.lproj/Localizable.strings b/src/Localization/Resources/zh-Hans.lproj/Localizable.strings new file mode 100644 index 0000000..87598b8 --- /dev/null +++ b/src/Localization/Resources/zh-Hans.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "未来:在个人页面右上角的三条线上长按,即可重新开启 RyukGram 设定。"; +"settings.firstrun.ok" = "我了解了!"; +"settings.firstrun.title" = "RyukGram 设定资讯"; +"settings.language.english_only" = "RyukGram 目前仅内建英文。其他语言已接好接线等待翻译 — 请依 README 的简短指南协助翻译。"; +"settings.language.help_translate" = "协助翻译"; +"settings.language.system" = "系统预设"; +"settings.language.title" = "语言"; +"settings.language.restart.message" = "设置已更新。请重启 Instagram,让应用其他位置的菜单、按钮和提示也使用新语言。"; +"settings.language.restart.title" = "重启以全局应用"; +"settings.language.available" = "可用"; +"settings.results.many" = "%lu 笔结果"; +"settings.results.one" = "%lu 笔结果"; +"settings.search.placeholder" = "搜寻设定"; +"settings.title" = "RyukGram 设定"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "操作按钮图标"; +"Adds a copy option to the comment long-press menu" = "在留言长按选单中新增复制选项"; +"Adds a download button next to share/save on the reels audio page" = "在 Reels 音频页的分享/收藏旁新增下载按钮"; +"Adds download, copy and expand options to GIF and image comments" = "为 GIF 与图片评论新增下载、复制与展开选项"; +"Allow video in photo sticker" = "照片贴纸允许视频"; +"Alternate icons are not supported" = "不支持备用图标"; +"Anonymous live viewing" = "匿名观看直播"; +"App Icon" = "应用图标"; +"Audio page" = "音频页"; +"Auto-reveals sensitive media" = "自动显示敏感内容"; +"Block surveys" = "屏蔽调查问卷"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "封锁观众数心跳,让直播主看不到你 — 你也看不到观众数"; +"Browser" = "浏览器"; +"Change the app icon from the bundled icons" = "从内置图标中更换应用图标"; +"Choose Icon" = "选择图标"; +"Choose which surfaces hide ads" = "选择在哪些界面隐藏广告"; +"Comments" = "留言"; +"Commerce carousels in comments and shoppable CTAs on reels" = "评论中的购物轮播和 Reels 上的购物行动号召"; +"Copy comment text" = "复制留言文字"; +"Copy description" = "复制描述"; +"Long press a caption to copy its text" = "长按标题即可复制其文字"; +"Custom sticker colors" = "自定义贴纸颜色"; +"Custom colors aren't supported for this sticker" = "此贴纸不支持自定义颜色"; +"Date format" = "日期格式"; +"Disable app haptics" = "关闭应用触觉反馈"; +"Disables haptics/vibrations within the app" = "关闭应用内的触觉/震动反馈"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "为默认启用液态玻璃的账号关闭该效果。优先于上方选项"; +"Do not save recent searches" = "不储存最近搜寻纪录"; +"Download GIF & image comments" = "下载 GIF 与图片评论"; +"Download image" = "下载图片"; +"Embed domain" = "嵌入网域"; +"Embed domain: %@" = "嵌入网域:%@"; +"Enable liquid glass buttons" = "启用液态玻璃按钮"; +"Enable liquid glass surfaces" = "启用液态玻璃介面"; +"Enable teen app icons" = "启用青少年应用程式图示"; +"Enables experimental liquid glass buttons" = "启用实验性液态玻璃按钮"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "启用液态玻璃标签列、浮动导航及其他介面元素"; +"End" = "结束"; +"Experimental features" = "实验性功能"; +"Explore & search" = "探索和搜索"; +"Failed to change icon" = "更换图标失败"; +"Fixed" = "固定"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "固定可防止缩小。隐藏可在向下滚动时让其消失"; +"Focus/distractions" = "专注/分心"; +"Force liquid glass off" = "强制关闭液态玻璃"; +"Force progressive blur" = "强制渐进模糊"; +"General" = "一般"; +"Gradient color" = "渐变色"; +"Hide ads" = "隐藏广告"; +"Hide explore posts grid" = "隐藏探索贴文网格"; +"Hide friends map" = "隐藏好友地图"; +"Hide Meta AI" = "隐藏 Meta AI"; +"Hide metrics" = "隐藏指标"; +"Hide notes tray" = "隐藏笔记托盘"; +"Hide on scroll" = "滚动时隐藏"; +"Hide TestFlight popup" = "隐藏 TestFlight 弹窗"; +"Hide trending searches" = "隐藏热门搜寻"; +"Hide UI on capture" = "录影/截图时隐藏 UI"; +"Removes suggested accounts to follow outside the feed" = "移除动态之外的推荐关注账户"; +"Hides like/comment/share counts on posts and reels" = "隐藏贴文和短片的喜欢/留言/分享数"; +"Removes the friends map icon from the notes tray" = "从便签栏移除好友地图图标"; +"Removes the suggested posts grid on the explore tab" = "移除探索页的推荐帖子网格"; +"Strips the Meta AI buttons and entry points from the app" = "移除应用中的 Meta AI 按钮和入口"; +"Hides the notes tray in the DM inbox" = "隐藏私讯收件匣中的笔记托盘"; +"Removes suggested broadcast channels from your inbox" = "从收件箱移除推荐的广播频道"; +"Hide DM search suggestions" = "隐藏私讯搜索建议"; +"Removes suggested accounts and channels from direct message search" = "从私讯搜索中移除建议的账户和频道"; +"Removes trending searches under the explore search bar" = "移除探索搜索栏下方的热门搜索"; +"Hold down on the Instagram logo to change the app icon" = "长按 Instagram 标志以更换应用程式图示"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "保持 iOS 26 滚动边缘模糊可见,而不是让它淡出"; +"Lets the photo sticker picker show videos too, not just photos" = "让照片贴纸选择器也显示视频,而不仅仅是照片"; +"Liquid glass tab bar" = "液态玻璃标签栏"; +"Live" = "直播"; +"Hold the eyedropper in stories to pick an exact text color" = "在快拍中长按吸管以选取精确的文字颜色"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "长按贴纸编辑器中的色轮,即可选择任意纯色或渐变色"; +"Long-press the heart button in a live to hide or show the comments" = "在直播中长按爱心按钮以隐藏或显示留言"; +"Long-press the search tab to open a copied Instagram link" = "长按搜寻分页以开启复制的 Instagram 连结"; +"Master switch. When off, all per-surface toggles below are ignored." = "总开关。关闭时,下方所有按界面的开关都将被忽略。"; +"No suggested chats" = "无建议聊天"; +"No suggested users" = "无建议用户"; +"Notes" = "笔记"; +"Open app icon picker" = "开启应用程式图示选择器"; +"Open link from clipboard" = "从剪贴簿开启连结"; +"Open links in external browser" = "在外部浏览器开启连结"; +"Opens links in Safari instead of Instagram's in-app browser" = "在 Safari 而非 Instagram 内建浏览器开启连结"; +"Privacy" = "隐私"; +"Removes ads across enabled surfaces" = "在已启用的界面中移除广告"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "移除分享连结中的 igsh、utm_source 及其他追踪参数"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "移除 Instagram 追踪包装器(l.instagram.com)及 URL 中的 UTM/fbclid 参数"; +"Replace domain in shared links" = "替换分享连结中的网域"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "将 IG 的相对时间戳记(\"3d ago\")替换为自订格式。可在选择器中切换套用范围。"; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "重写复制/分享的连结,使用适合 Discord、Telegram 等预览的嵌入友好网域"; +"Stops search bars from saving your recent searches" = "阻止搜索栏保存你的最近搜索记录"; +"Selected" = "已选择"; +"Sharing" = "分享"; +"Shopping" = "购物"; +"Skip sensitive content covers" = "略过敏感内容遮罩"; +"Solid color" = "纯色"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "主流、情境、视频和延伸信息流中的赞助帖子"; +"Sponsored posts on the explore grid" = "探索网格中的赞助帖子"; +"Stops Instagram's in-app surveys and feedback prompts" = "阻止 Instagram 应用内的调查问卷和反馈提示"; +"Sponsored reels in the sundial feed" = "Sundial 信息流中的赞助 Reels"; +"Start" = "起始"; +"Story ads and sponsored entries in the story tray" = "快拍栏中的快拍广告和赞助条目"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "在搜索与探索的帖子和 Reels 上显示统计标签。打开卡片详情选择显示哪些统计、重新排序后应用。"; +"Strip tracking from links" = "移除连结中的追踪"; +"Strip tracking params" = "移除追踪参数"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "抑制\"It's time to update Instagram Beta\"提示"; +"Tap to apply" = "点按以应用"; +"The selected icon will be saved and shown here the next time you open this page." = "所选图标将被保存,并在下次打开此页面时显示在此处。"; +"Toggle live comments" = "切换直播留言"; +"Use detailed color picker" = "使用详细色彩选择器"; +"Used across feed, stories, reels, and DMs." = "用于动态、快拍、Reels 和私信"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld 天前"; +"%ld days ago" = "%ld 天前"; +"%ld hour ago" = "%ld 小时前"; +"%ld hours ago" = "%ld 小时前"; +"%ld minute ago" = "%ld 分钟前"; +"%ld minutes ago" = "%ld 分钟前"; +"%ld week ago" = "%ld 周前"; +"%ld weeks ago" = "%ld 周前"; +"%ldd" = "%ld天"; +"%ldh" = "%ld小时"; +"%ldm" = "%ld分"; +"%ldw" = "%ld周"; +"Always ask" = "总是询问"; +"Balanced" = "平衡"; +"Block all" = "全部封锁"; +"Block selected" = "封锁选取项目"; +"Button" = "按钮"; +"Date format — %@" = "日期格式 — %@"; +"Default" = "预设"; +"Disabled" = "停用"; +"Download and share" = "下载并分享"; +"Download to Photos" = "下载至相簿"; +"Save with music" = "保存(含音乐)"; +"Gallery with music" = "存入图库(含音乐)"; +"Save image (no music)" = "保存图片(无音乐)"; +"Gallery image (no music)" = "存入图库(无音乐)"; +"Photo with music" = "带音乐的照片"; +"Enabled" = "启用"; +"Expand" = "展开"; +"Explore" = "探索"; +"Fast" = "快速"; +"Feed" = "动态消息"; +"Feed posts" = "动态帖子"; +"High" = "高"; +"Inbox" = "收件箱"; +"just now" = "刚刚"; +"Low" = "低"; +"Max" = "最大"; +"Medium" = "中等"; +"Mute/Unmute" = "静音/取消静音"; +"Notes, comments, stories" = "笔记、评论、快拍"; +"now" = "刚刚"; +"Open menu" = "打开选单"; +"Pause/Play" = "暂停/播放"; +"Profile" = "个人档案"; +"Quality" = "画质"; +"Reels" = "短片"; +"Requires restart" = "需要重新启动"; +"Save to Photos" = "储存到相簿"; +"Share sheet" = "分享表单"; +"Standard" = "标准"; +"Toggle" = "切换"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "网格动态"; +"Browse your home feed as a grid of posts" = "以网格方式浏览你的主页动态"; +"Hide stories in grid" = "在网格中隐藏快拍"; +"Taller cells" = "更高的单元格"; +"Portrait tiles instead of squares" = "使用纵向图块而非方形"; +"Open post" = "打开帖子"; +"View profile" = "查看主页"; +"Like" = "点赞"; +"Liked" = "已点赞"; +"Unlike" = "取消点赞"; +"Unliked" = "已取消点赞"; +"Followed" = "已追踪"; +"Unfollowed" = "已取消追踪"; +"Couldn't update like" = "无法更新点赞"; +"Couldn't update follow" = "无法更新追踪"; +"Follow status" = "追踪状态"; +"Shares" = "分享数"; +"Relative" = "相对时间"; +"Date and time" = "日期和时间"; +"You're all caught up" = "你已看完全部内容"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "用帖子网格替换主页信息流。切换到 Instagram 信息流不会关闭该功能,并会立即把信息流交还。双指捏合更改列数,点按帖子即可打开。为你推荐 / 正在关注的切换与主信息流保持同步。"; +"Switch button" = "切换按钮"; +"Hold the heart button" = "长按爱心按钮"; +"Floating button" = "悬浮按钮"; +"How to switch" = "如何切换"; +"Hold the heart in Instagram's header" = "长按 Instagram 顶栏的爱心"; +"A small round button on the feed" = "信息流上的小圆形按钮"; +"Button position" = "按钮位置"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "把按钮拖到你想要的位置。变暗的条带是 Instagram 的顶栏和标签栏。"; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "在不关闭网格的情况下切换网格与 Instagram 信息流。关闭后只能用主页栏快捷方式。"; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "按钮绝不会位于顶栏或标签栏下方。在动态中长按按钮即可回到这里。"; +"Live preview" = "实时预览"; +"Columns" = "列数"; +"Post info" = "帖子信息"; +"Reorder and toggle stats on each tile" = "重新排序并切换每个图块上的统计信息"; +"Info on each post" = "每则帖子的信息"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "开启或关闭每个项目。拖动 ≡ 手柄可重新排序它们在图块上的堆叠方式。"; +"Show avatar" = "显示头像"; +"Media type badge" = "媒体类型标记"; +"Restores the default post info, order and options for the grid feed." = "恢复网格动态的默认帖子信息、顺序和选项。"; +"Views" = "观看数"; +"Action button" = "动作按钮"; +"Adds 'Profile picture' to story tray long-press menus" = "在限时动态长按选单中新增「头像」"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "在每则动态消息贴文下方新增 RyukGram 动作按钮,包含下载/分享/复制/展开/转贴选项。预设点击会开启选单;可于下方更改点击行为。"; +"Choose Instagram's default feed or force the Following feed" = "选择 Instagram 的默认动态或强制使用「正在关注」动态"; +"Main feed" = "主动态"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "控制动态消息的刷新时间与方式。背景刷新会在约 10 分钟后返回应用时执行。首页按钮刷新会在已在首页标签时点击该标签执行。"; +"Confirm feed refresh" = "确认动态重新整理"; +"Shows an alert before a pull-to-refresh reloads the feed" = "下拉重新整理动态前显示警告"; +"Refresh stories only" = "仅重新整理限时动态"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "下拉重新整理只会重新载入限时动态列,不会重新整理动态"; +"Refresh feed?" = "重新整理动态?"; +"Default tap action" = "预设点击动作"; +"Disable background refresh" = "停用背景刷新"; +"Disable home button refresh" = "停用首页按钮刷新"; +"Disable home button scroll" = "停用首页按钮滚动"; +"Disable video autoplay" = "停用影片自动播放"; +"Hide" = "隐藏"; +"Hide entire feed" = "隐藏整个动态消息"; +"Hide repost button" = "隐藏转贴按钮"; +"Hide stories tray" = "隐藏限时动态列"; +"Hide suggested stories" = "隐藏建议的限时动态"; +"Hide story highlights" = "隐藏快拍精选"; +"Removes resurfaced highlights from the stories tray in feed" = "移除信息流快拍栏中重新出现的精选"; +"Hides suggested accounts" = "隐藏建议帐号"; +"Hides suggested reels" = "隐藏建议短片"; +"Hides suggested threads posts" = "隐藏建议的 Threads 贴文"; +"Hides the repost button on feed posts" = "隐藏动态消息贴文上的转贴按钮"; +"Hides the story tray at the top" = "隐藏顶部限时动态列"; +"Inserts a button row below like/comment/share on each post" = "在每则贴文的赞/留言/分享下方插入按钮列"; +"Long press on media to expand in full-screen viewer" = "长按媒体以在全萤幕检视器中展开"; +"Start media muted" = "媒体静音启动"; +"Expanded videos open with sound off" = "展开的视频以静音方式打开"; +"Enhanced media resolution" = "增强媒体分辨率"; +"Media saving" = "媒体保存"; +"Spoof device profile so IG serves higher-quality images" = "伪装设备配置使 IG 提供更高质量的图像"; +"Media" = "媒体"; +"Media zoom" = "媒体缩放"; +"No suggested for you" = "没有为您推荐"; +"No suggested posts" = "没有推荐的贴文"; +"No suggested reels" = "没有推荐的短片"; +"No suggested threads" = "没有推荐的串列"; +"Prevents feed from reloading when returning from background" = "防止从背景返回时重新载入动态消息"; +"Prevents videos from playing automatically" = "防止影片自动播放"; +"Refresh" = "重新整理"; +"Removes all content from your home feed" = "移除主页动态中的所有内容"; +"Removes suggested accounts from the stories tray" = "从限时动态列移除推荐帐号"; +"Removes suggested posts" = "移除推荐贴文"; +"Scroll to top without refreshing when tapping Home" = "点击首页时卷动至顶端但不重新整理"; +"Show action button" = "显示操作按钮"; +"Show date" = "显示日期"; +"Stories tray" = "限时动态列"; +"Tapping Home does nothing when already on feed" = "已在动态页时点击首页不执行任何操作"; +"Tray long-press actions" = "限时动态列长按操作"; +"Composer doesn't accept GIFs" = "评论编辑器不接受 GIF"; +"Copy GIF link" = "复制 GIF 链接"; +"Copy image link" = "复制图片链接"; +"Custom GIF in comments" = "评论中自定义 GIF"; +"Favorite GIFs" = "收藏 GIF"; +"Long-press a GIF in the picker to pin it — favorites show first" = "在选择器中长按 GIF 即可置顶 — 收藏的 GIF 优先显示"; +"Added to favorites" = "已添加到收藏"; +"Removed from favorites" = "已从收藏中移除"; +"Favorite GIF unavailable" = "收藏的 GIF 不可用"; +"This GIF may have been removed. Long-press it to unfavorite." = "此 GIF 可能已被移除。长按可取消收藏。"; +"Failed to build GIF model" = "无法建立 GIF 模型"; +"GIF link copied" = "已复制 GIF 链接"; +"Image" = "图片"; +"Image link copied" = "已复制图片链接"; +"Invalid Giphy URL" = "无效的 Giphy 链接"; +"Long-press the GIF button to paste any Giphy URL" = "长按 GIF 按钮粘贴任意 Giphy 链接"; +"Paste Giphy Link" = "粘贴 Giphy 链接"; +"Paste a giphy.com URL or media ID" = "粘贴 giphy.com 网址或媒体 ID"; +"Send" = "发送"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "在短片侧边栏上方新增 RyukGram 操作按钮,包含观看封面/下载/分享/复制/展开/转贴项目。预设点击开启选单;可在下方更改点击行为。"; +"Always show progress scrubber" = "始终显示进度条"; +"Auto-scroll reels" = "自动卷动短片"; +"Speed, seek and auto-scroll controls" = "速度、快进和自动滚动控制"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "在 Reels 上长按 ⋯ 或音频按钮时会显示已启用的控制项。"; +"Seek controls" = "快进控制"; +"Auto-scroll control" = "自动滚动控制"; +"Seek" = "快进"; +"Custom seek step" = "自定义快进步长"; +"Enter the number of seconds to skip" = "输入要跳过的秒数"; +"Set what a tap on a reel does" = "设置轻点 reel 时的操作"; +"Confirm reel refresh" = "确认短片重新整理"; +"Custom speed" = "自定义速度"; +"Disable auto-unmuting reels" = "停用短片自动取消静音"; +"Disable scrolling reels" = "停用短片卷动"; +"Disable tab button refresh" = "停用分页按钮重新整理"; +"Doom scrolling limit" = "限制无止尽卷动"; +"e.g. 1.75" = "例如 1.75"; +"Enter a value between 0.5 and 2.0" = "请输入 0.5 到 2.0 之间的值"; +"Keeps the progress bar visible on every reel" = "在每个 reel 上始终显示进度条"; +"Hide \"Made with Edits\" badge" = "隐藏\"Made with Edits\"徽章"; +"Hide friends avatars" = "隐藏好友头像"; +"Hide reels header" = "隐藏短片标题列"; +"Hide social context overlay" = "隐藏社交内容浮动覆盖层"; +"Hides the avatar bubbles next to the Friends tab in reels" = "隐藏 Reels 中好友标签旁的头像气泡"; +"Hides the Edits app promo pill on reels" = "在 Reels 中隐藏 Edits 应用推广胶囊"; +"Hides the floating overlay showing who reposted or commented on reels" = "隐藏 Reels 上显示谁转发或评论的浮动覆盖层"; +"Hides the repost button on the reels sidebar" = "隐藏短片侧边栏的转贴按钮"; +"Drops the top bar while you watch reels" = "观看 reels 时隐藏顶部栏"; +"Hiding" = "隐藏"; +"IG default" = "IG 预设"; +"Limits" = "限制"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "限制连续滑动的 reels 数量并阻止刷新"; +"Only loads %@ %@" = "只载入 %@ %@"; +"Places a button above the like/comment/share column on each reel" = "在每个短片的按赞/留言/分享栏上方放置一个按钮"; +"Playback speed" = "播放速度"; +"Prevent doom scrolling" = "防止无止尽卷动"; +"Engagement filter" = "互动过滤"; +"Hide reels below a like, comment, view or repost count" = "隐藏点赞、评论、播放或转发数低于阈值的 Reels"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "隐藏未达到你设定的每个最低值的 Reels。作者隐藏数据的 Reels 会照常显示,除非你也选择隐藏。"; +"Filter reels by engagement" = "按互动过滤 Reels"; +"Hide reels with hidden stats" = "隐藏数据不公开的 Reels"; +"Only filter the Reels tab" = "仅过滤 Reels 标签页"; +"Reels you open from a post, profile or share are never filtered" = "从帖子、主页或分享打开的 Reels 不会被过滤"; +"Minimums" = "最低值"; +"Minimum likes" = "最低点赞数"; +"Minimum comments" = "最低评论数"; +"Minimum views" = "最低播放量"; +"Minimum reposts" = "最低转发数"; +"Reels below this count are hidden. 0 turns this limit off." = "低于此数的 Reels 将被隐藏。0 表示关闭该限制。"; +"Turns the filter off and clears every minimum." = "关闭过滤并清除所有最低值。"; +"Locks a reel in place so it never scrolls to the next one" = "将 reel 锁定在原位,永不滑到下一个"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "按下音量键或响铃键时不让 reels 取消静音"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "刷新 reels 动态前请你确认"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "显示按钮以揭露并自动填入锁定短片的密码"; +"Same as general format" = "与通用格式相同"; +"Shows the repost date on the \"reposted this reel\" header." = "在\"转发了这个 Reel\"标题旁显示转发日期。"; +"Reposts" = "重新发布"; +"Swipe a reel left to open the author's profile" = "向左滑动短片以打开作者主页"; +"Swipe left to profile" = "向左滑动打开主页"; +"Tap Controls" = "点击控制"; +"Tap to mute on photo reels" = "点击图片短片以静音"; +"Tapping the Reels tab while on reels does nothing" = "在短片页面点击短片标签无反应"; +"Unlock password-locked reels" = "解锁密码保护的短片"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "启用暂停模式时,点击图片短片会切换音讯,而非原生的暂停手势"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "为任意粉丝/关注列表添加筛选和排序按钮。离开时重置。"; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "在精选长按选单新增检视选项,可全萤幕开启封面"; +"Applying restarts Instagram to load your changes." = "应用会重启 Instagram 以加载你的更改。"; +"Card details" = "卡片详情"; +"Comment count" = "评论数"; +"Copy note on long press" = "长按复制备注"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "在资料网格中每个帖子和 Reels 卡片上显示的额外统计 — 选择需要的项目,重新排序后再应用。"; +"Fake follower count" = "伪造粉丝数"; +"Fake following count" = "伪造追踪数"; +"Fake post count" = "伪造贴文数"; +"Fake profile stats" = "伪造个人档案数据"; +"Fake verified badge" = "伪造认证徽章"; +"Fetch missing counts" = "获取缺失的计数"; +"Filter & sort lists" = "筛选和排序列表"; +"Follow indicator" = "追踪指示器"; +"Follower & following lists" = "粉丝和关注列表"; +"Follower count" = "粉丝数"; +"Following count" = "追踪数"; +"Like count" = "点赞数"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "长按个人档案图片可全萤幕开启,并支援缩放、分享与储存"; +"Long press the note bubble on a profile to copy the text" = "长按个人档案上的备注气泡以复制文字"; +"Long press to download directly (ignored when zoom is on)" = "长按直接下载(启用缩放时忽略)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "个人档案元素的长按手势 — 与每项功能的操作按钮分开维护。"; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "所有卡片统计的总开关。获取缺失的计数会使用 Instagram 的 API,可能触发速率限制。"; +"Only affects your own profile header. Other users see the real numbers." = "仅影响你自己的个人档案页首。其他用户看到的是真实数字。"; +"Post count" = "贴文数"; +"Profile card details" = "资料卡详情"; +"Profile stats" = "个人资料统计"; +"Repost count" = "转发数"; +"Restores the default stats, order, and options for profile card details." = "恢复资料卡详情的默认统计、顺序和选项。"; +"Restores the default stats, order, and options for search & explore card details." = "恢复搜索与探索卡片详情的默认统计、顺序和选项。"; +"Save profile picture" = "储存个人档案图片"; +"Search & Explore" = "搜索与探索"; +"Share count" = "分享数"; +"Short numbers" = "缩写数字"; +"Show a checkmark next to your name on your own profile" = "在你自己的个人档案名称旁显示打勾符号"; +"Show card details" = "显示卡片详情"; +"Show full follower count" = "显示完整粉丝数"; +"Show full post count" = "显示完整帖子数"; +"Show the custom number set below" = "显示下方设置的自定义数字"; +"Show the exact number instead of a shortened one" = "显示精确数字而非缩写数字"; +"Shows whether the profile user follows you" = "显示该用户是否追踪你"; +"Tap to set" = "点击以设定"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "开启或关闭每项统计。拖动 ≡ 手柄可重新排列它们在卡片上的堆叠顺序。"; +"Upload date" = "发布日期"; +"View count" = "观看数"; +"View highlight cover" = "检视精选封面"; +"Views, likes, comments, shares, reposts, date" = "观看数、点赞、评论、分享、转发、日期"; +"Zoom profile photo" = "缩放个人档案照片"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "进行中、排队中和已完成的下载"; +"Auto-retry attempts" = "自动重试次数"; +"Auto-retry failed downloads" = "自动重试失败的下载"; +"Confirm before download" = "下载前确认"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "已弃用。RyukGram 动作按钮(在动态/短片/限时动态中依功能设定)是下载媒体的新方式。仅当你偏好旧版多指长按直接下载媒体时,才启用此主开关。"; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "离开应用时不暂停下载、编码或主页扫描"; +"Download queue" = "下载队列"; +"Downloads" = "下载"; +"Downloads with %@ %@" = "下载 %@ %@"; +"Enable long-press gesture" = "启用长按手势"; +"Finger count for long-press" = "长按所需手指数"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "同时运行多少个下载 — 多余的会排队,并在有空位时开始。下载在网络错误时会自动重试。打开管理器可查看、取消或重试下载。"; +"Keep running in background" = "在后台保持运行"; +"Legacy long-press gesture" = "旧版长按手势"; +"Long-press hold time" = "长按持续时间"; +"Master toggle for the deprecated gesture workflow (off by default)" = "已弃用手势流程的主开关(预设关闭)"; +"Max simultaneous downloads" = "最大同时下载数"; +"Open download manager" = "打开下载管理器"; +"Press finger(s) for %@ %@" = "按压 %@ %@ 手指"; +"Retry automatically when a download drops on a network error" = "下载因网络错误中断时自动重试"; +"Route saves into a custom album in Photos instead of the camera roll root" = "将储存路径导向专用相簿,而非相机胶卷根目录"; +"Run up to %@ %@ at once" = "最多同时运行 %@ 个%@"; +"Save action" = "储存动作"; +"Save to dedicated album" = "保存到专用相册"; +"Show a confirmation dialog before starting a download" = "开始下载前显示确认对话框"; +"Try %@ more %@ before giving up" = "放弃前再尝试 %@ 次%@"; +"What happens after the gesture downloads" = "手势下载后的动作"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "开启 \"保存到专用相册\" 后,下载和分享菜单中的 \"存储到照片\" 操作会被归入你照片图库中的一个命名相册。点按 \"相册名称\" 可更改它。"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "剩余 %@"; +"%@ of %@" = "%1$@ / %2$@"; +"%@/s" = "%@/秒"; +"%dh" = "%d小时"; +"%dm" = "%d分"; +"%ds" = "%d秒"; +"%ld downloading" = "%ld 项下载中"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld 项仍在进行,将被停止。已保存的文件会保留。"; +"%lu failed" = "%lu 个失败"; +"%lu of %lu done" = "已完成 %lu / %lu"; +"%lu saved, %lu failed" = "已保存 %lu 个,%lu 个失败"; +"12 hours" = "12 小时"; +"1s" = "1秒"; +"24 hours" = "24 小时"; +"48 hours" = "48 小时"; +"Active" = "进行中"; +"Auto-retry" = "自动重试"; +"Clear completed" = "清除已完成"; +"Clear download history" = "清除下载历史"; +"Clear download history?" = "清除下载历史?"; +"Completed" = "已完成"; +"Don't keep" = "不保留"; +"Download history" = "下载历史"; +"Download settings" = "下载设置"; +"Downloading %lu items" = "正在下载 %lu 个项目"; +"Downloading…" = "正在下载…"; +"Empty the manager's list of past downloads" = "清空管理器中的过往下载列表"; +"Encoding %d%%" = "编码中 %d%%"; +"Encoding…" = "正在编码…"; +"Extra downloads wait in line and start as slots free up." = "多余的下载会排队,并在有空位时开始。"; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "关闭应用后,已完成、失败和已取消的下载在管理器中保留多久。文件本身不会被改动,只清理列表。"; +"How long past downloads stay listed in the manager" = "过往下载在管理器中保留多久"; +"Keep history for" = "历史保留时长"; +"Media you download shows up here, with its progress and where it was saved." = "你下载的媒体会显示在这里,包括进度和保存位置。"; +"No downloads yet" = "暂无下载"; +"Preview" = "预览"; +"Queued" = "排队中"; +"Redownload" = "重新下载"; +"Retry" = "重试"; +"Retrying…" = "正在重试…"; +"Stop" = "停止"; +"The files already saved are kept — this only empties the list." = "已保存的文件会保留,这里只清空列表。"; +"Waiting for a free slot" = "等待空闲位置"; +"Waiting for connection…" = "正在等待连接…"; +"Waiting to retry" = "等待重试"; +"Waiting…" = "正在等待…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "排列叠加按钮"; +"Overlay layout" = "叠加布局"; +"Drag to position the buttons" = "拖动以放置按钮"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "将按钮拖到快拍上。变暗的区域是回复栏。"; +"Send message" = "发送消息"; + +"Pinned" = "已置顶"; +"Search viewers" = "搜索查看者"; +"No matching viewers" = "无匹配的查看者"; +"No viewers match these filters" = "没有查看者符合这些筛选条件"; +"Unavailable" = "不可用"; +"Default (recent first)" = "默认(最近优先)"; +"%lu viewers" = "%lu 位观看者"; +"Viewer pinned" = "已置顶观看者"; +"Viewer unpinned" = "已取消置顶观看者"; +"Pin a viewer" = "置顶观看者"; +"Pin order" = "置顶顺序"; +"Pin this viewer?" = "置顶该观看者?"; +"Filter, sort & pin viewers" = "筛选、排序和置顶观看者"; +"Add by username, remove, reorder" = "按用户名添加、移除、重新排序"; +"Pinned viewers (%lu)" = "已置顶观看者 (%lu)"; +"Viewers list" = "观看者列表"; +"Settings are saved and reused next time." = "设置会被保存并在下次沿用。"; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "勾选多个可组合使用。已置顶的观看者始终显示在最上方,并忽略这些筛选。"; +"Pinned viewers" = "已置顶观看者"; +"Pin" = "置顶"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "将“谁看了我的快拍”列表替换为可搜索、筛选、排序的列表。长按查看者可将其置顶。随时可切换回原生列表。"; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "用户名或原始用户 PK。已置顶的观看者始终保持在你的快拍观看者列表顶部。"; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "在限时动态的观看按钮旁新增 RyukGram 动作按钮,包含下载/分享/复制/展开/转发/查看提及等选项。预设点击开启选单;可在下方更改点击行为。"; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "在限时动态覆盖层新增喇叭按钮,可静音/取消静音音讯。此功能亦可在三点选单中使用"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "在故事覆盖层加入眼睛按钮。关闭时仍保留已查看封锁,只是不显示按钮"; +"Advance on story like" = "按赞后自动切换限时动态"; +"Advance on story reply" = "回复后自动切换限时动态"; +"Advance when marking as seen" = "标记为已看后自动切换限时动态"; +"Audio" = "音讯"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "全部封锁:封锁所有限时动态 — 列表用户为例外。\n选择封锁:仅封锁列表用户 — 其他正常。\n两个列表独立储存。"; +"Blocking mode" = "封锁模式"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "按钮 = 单击标记已查看。切换 = 点击切换故事已读回条开/关(开启时眼睛填满蓝色)"; +"Marked-seen indicator" = "标记已看指示"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "记住你标记为已查看的故事 48 小时,并在这些故事上隐藏或填充眼睛按钮"; +"Hide eye button" = "隐藏眼睛按钮"; +"Fill eye button green" = "眼睛按钮填充为绿色"; +"Disable story seen receipt" = "停用故事已读回条"; +"Enable story user list" = "启用故事用户列表"; +"Stops others from seeing that you viewed their story" = "让别人看不到你看过他们的快拍"; +"Inserts a button next to the seen/eye button on story overlays" = "在故事覆盖层的已查看/眼睛按钮旁插入一个按钮"; +"Keep stories visually seen locally" = "在本机保留限时动态为已观看"; +"Liking a story automatically advances to the next one after a short delay" = "喜欢故事后短暂延迟自动跳到下一则"; +"Manage list" = "管理列表"; +"Manage list (%lu)" = "管理列表 (%lu)"; +"Manual seen button mode" = "手动已查看按钮模式"; +"Mark seen on story like" = "喜欢故事时标记为已查看"; +"Mark seen on story reply" = "回复故事时标记为已查看"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "点击爱心时即标记故事为已查看,即使启用已查看封锁"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "发送回复或表情反应时标记故事为已查看,即使启用已查看封锁"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "在本机标记限时动态为已观看(灰圈),同时仍封锁伺服器端的已读回条"; +"Master toggle. When off, the list is ignored" = "主开关。关闭时忽略列表"; +"Playback" = "播放"; +"Search, sort, swipe to remove" = "搜寻、排序、滑动移除"; +"Seen receipts" = "已读回条"; +"Sending a reply or emoji reaction automatically advances to the next story" = "发送回复或表情反应后自动跳到下一则故事"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "在操作按钮菜单和限时动态三点菜单中新增「查看提及」选项"; +"Mentions overlay button" = "提及浮层按钮"; +"Mentions count badge" = "提及数量徽章"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "在限时动态浮层的操作/眼睛按钮旁新增一个按钮。仅当当前限时动态包含提及或分享的帖子/短视频时显示"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "在叠加按钮上以红色徽章显示被提及账户的数量"; +"Hide stories midcards" = "隐藏故事中插卡"; +"Removes the Trending and Music promo cards from the stories tray" = "从故事栏中移除热门和音乐推广卡"; +"Stickers" = "贴图"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "在互动前预览投票/测验/滑块结果 — 仍可正常点击投票。“强制显示旧版”会将测验与揭晓贴纸加回快拍编辑器。"; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "在 Reels 互动前预览投票/测验/滑杆结果 — 仍可照常点击投票。"; +"Force legacy stickers in tray" = "强制显示旧版贴纸"; +"Adds Quiz and Reveal stickers back to the picker" = "将测验与揭晓贴纸加回选择器"; +"Bypass Reveal sticker" = "略过揭晓贴纸"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "略过向作者发送消息才能揭晓的步骤,直接观看含揭晓贴纸的快拍"; +"Show quiz answer" = "显示测验答案"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "圈选测验贴图中的正确选项,或投票中得票最多的选项"; +"Show poll vote counts" = "显示投票计数"; +"Show vote tallies on poll options and slider count/average before you vote" = "在投票前显示投票选项的票数以及滑杆的平均/计数"; +"Stop story auto-advance" = "停止故事自动跳转"; +"Stories" = "故事"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "故事计时结束时不会自动跳到下一则。点击手动前进"; +"Story audio toggle" = "故事音讯切换"; +"Story user list" = "故事用户列表"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "点击眼睛按钮标记故事为已查看后自动跳到下一则故事"; +"This will send a story view receipt." = "将会送出故事的已查看回条。"; +"View story mentions" = "查看故事提及"; +"Which stories get seen-receipt blocking" = "哪些故事会封锁已读回条"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "精确的活动状态"; +"Activity log" = "活动记录"; +"Loading…" = "加载中…"; +"Notify: %@ · Log: %@" = "通知:%@ · 记录:%@"; +"Add by user ID" = "按用户 ID 添加"; +"Add by thread ID" = "按会话 ID 添加"; +"Adding…" = "正在添加…"; +"Browse activity, grouped by person" = "按人分组浏览活动"; +"Clear activity log?" = "清空活动记录?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "还没有活动。\n当有人读了你的消息或上线时,会显示在这里。"; +"No one found. Check the spelling or try a different name." = "未找到任何人。请检查拼写或换个名字试试。"; +"Notify about someone" = "关于某人的通知"; +"Open some chats first, or search a username above." = "先打开一些聊天,或在上方搜索用户名。"; +"Pick what each person notifies you about" = "选择每个人通知你的内容"; +"Recent in your DMs" = "私信中的最近联系人"; +"Results" = "结果"; +"This removes all recorded activity on this device." = "这将删除此设备上记录的所有活动。"; +"Active %ldd ago" = "%ldd 前活跃"; +"Active %ldh ago" = "%ldh 前活跃"; +"Active %ldm ago" = "%ldm 前活跃"; +"Activity notifications" = "活动通知"; +"Also track reads in group chats. Groups can be noisy" = "也跟踪群聊中的已读。群聊可能很吵"; +"Came online" = "已上线"; +"Customise notifications" = "自定义通知"; +"Everyone" = "所有人"; +"Muted" = "已静音"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "还没有人被自定义。在活动记录中长按某人以选择通知内容。"; +"Online, offline, typing and read receipts, per person" = "按人设置在线、离线、正在输入和已读回执"; +"Per-person notifications" = "按人通知"; +"Enable activity" = "启用活动"; +"Track who reads your messages, comes online, goes offline or types" = "记录谁读了你的消息、上线、离线或正在输入"; +"For everyone" = "对所有人"; +"For this person" = "对此人"; +"Log only" = "仅记录"; +"Notify only" = "仅通知"; +"Notify + log" = "通知 + 记录"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "仅记录会静默保存。仅通知只提醒你但不保存。通知 + 记录两者都做。"; +"Presence" = "在线状态"; +"Read your message" = "读了你的消息"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "每 20 秒刷新一次在线状态并取消 Instagram 的宽限期,这样对方一离线绿点就会熄灭。"; +"Started typing" = "开始输入"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "点按可更改通知内容。滑动可移除并恢复为默认。"; +"These override the defaults for this person." = "这些将覆盖此人的默认设置。"; +"Went offline" = "已离线"; +"When someone becomes active" = "当有人变为活跃时"; +"When someone goes inactive" = "当有人变为不活跃时"; +"When someone opens a message you sent" = "当有人打开你发送的消息时"; +"When someone starts typing to you" = "当有人开始给你输入时"; +"is now active" = "现在活跃"; +"is typing…" = "正在输入…"; +"went offline" = "已离线"; +"Online" = "在线"; +"Offline" = "离线"; +"Typing" = "正在输入"; +"Filters" = "筛选"; +"Delete the selected records? This can't be undone." = "删除所选记录?此操作无法复原。"; +"Delete all records for the selected chats? This can't be undone." = "删除所选聊天的全部记录?此操作无法复原。"; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "在私讯串中加入眼睛按钮。关闭时仍保留已读回条封锁,只是不显示按钮"; +"Auto mark seen on interact" = "互动时自动标记为已查看"; +"Auto mark seen on typing" = "输入时自动标记为已查看"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "封锁自动已读回条 — 只在你选择时才标记为已查看"; +"Control when messages are marked as seen" = "控制讯息何时标记为已查看"; +"How the seen button behaves" = "已查看按钮的行为方式"; +"Manually mark messages as seen" = "手动标记讯息为已读"; +"Mark as seen?" = "标记为已查看?"; +"Mark as viewed?" = "标记为已观看?"; +"Mark seen locally" = "本地标记为已读"; +"Marks messages as seen when you reply, react or send media" = "当你回复、回应或发送媒体时标记讯息为已读"; +"Marks messages as seen when you start typing" = "当你开始输入时标记讯息为已读"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "打开的聊天仅在本设备上显示为已读。在对方收到已读回执前,眼睛按钮会显示为橙色"; +"Read receipt mode" = "已读回条模式"; +"Read receipts" = "已读回条"; +"Show seen button" = "显示已查看按钮"; +"This will send a read receipt for the latest messages." = "将会送出最新讯息的已读回条。"; +"This will send a view receipt for the current message." = "将会送出目前讯息的已观看回条。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "活动"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "在语音讯息的长按选单中新增「下载」选项,以储存为 M4A 音讯档"; +"Allows typing and sending DMs longer than Instagram's limit" = "允许输入和发送超过 Instagram 限制的私信"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "在私讯的加号选单中新增「传送档案」选项。支援的档案类型可能受 Instagram 限制"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "在私讯的加号选单中新增「音讯档案」选项,以语音讯息形式传送音讯档案"; +"Adds copy text, download GIF/audio to the note long-press menu" = "在备注的长按选单中新增复制文字、下载 GIF/音讯功能"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "全部封锁:所有聊天封锁 — 列出的聊天为例外。\n选择封锁:仅封锁列出的聊天 — 其他皆正常。\n两个列表独立储存。长按收件匣中的聊天以新增或移除。"; +"Block keep-deleted for excluded chats" = "对排除的聊天封锁保留删除讯息"; +"Block keep-deleted for unlisted chats" = "对未列出的聊天封锁保留删除讯息"; +"Bypass DM character limit" = "绕过私信字符限制"; +"Chat list" = "聊天列表"; +"Confirmation dialog before clearing preserved messages" = "清除保留讯息前的确认对话框"; +"Copies note text directly on long press without opening the menu" = "长按直接复制备注文字,不开启选单"; +"Copy text on hold" = "长按复制文字"; +"Adds Background, Text and Emoji buttons to the note editor" = "在便签编辑器中添加背景、文本和表情符号按钮"; +"Custom note themes" = "自订备注主题"; +"Disable vanish mode swipe" = "停用 Vanish 模式滑动手势"; +"Disable typing status" = "停用输入状态"; +"Disable view-once limitations" = "停用一次观看限制"; +"Download voice messages" = "下载语音讯息"; +"Enable chat list" = "启用聊天列表"; +"Enable note theming" = "启用备注主题功能"; +"Enables the notes theme picker" = "启用备注主题选择器"; +"Files" = "档案"; +"Full last active date" = "完整最后活跃日期"; +"Hide reels blend button" = "隐藏 Reels 混合按钮"; +"Hide send to group chat" = "隐藏发送到群聊"; +"Pin recipients on long-press" = "长按以置顶接收者"; +"Long-press in the share sheet to pin a chat/user to the top" = "在分享面板中长按以将聊天/用户置顶"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "长按接收者以置顶或取消置顶。置顶的接收者显示在顶部。"; +"Recipient pinned" = "接收者已置顶"; +"Recipient unpinned" = "已取消置顶"; +"Couldn't resolve recipient id" = "无法解析接收者 ID"; +"Hide video call button" = "隐藏视讯通话按钮"; +"Hide voice call button" = "隐藏语音通话按钮"; +"Hides the blend button in DMs" = "在私讯中隐藏混合按钮"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "分享给多位收件人时移除创建/发送到群聊的选项"; +"Hides typing indicator from others" = "隐藏他人输入指示器"; +"Indicate unsent messages" = "标示未送出讯息"; +"Keep deleted messages" = "保留已删除讯息"; +"Turns view once messages into normal media you can loop and pause" = "将阅后即焚消息变为可循环、可暂停的普通媒体"; +"Note actions" = "备注操作"; +"Preserves messages that others unsend" = "保留他人收回的讯息"; +"Keep my deleted messages" = "保留我删除的讯息"; +"Also preserves messages you unsend yourself" = "也保留你自己收回的讯息"; +"Prevents accidental swipe-up activation of vanish mode" = "防止误触上滑启用 Vanish 模式"; +"Quick list button in chats" = "聊天中的快速列表按钮"; +"Removes the audio call button from DM thread header" = "从私讯页首移除语音通话按钮"; +"Removes the video call button from DM thread header" = "从私讯页首移除视讯通话按钮"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "重播视觉讯息且不会过期。可在眼睛按钮选单切换,或当眼睛按钮被禁用时作为独立按钮"; +"Search, sort, swipe to remove or toggle keep-deleted" = "搜寻、排序、滑动移除或切换保留已删除"; +"Send audio as file" = "以档案形式传送音讯"; +"Send files (experimental)" = "传送档案(实验性功能)"; +"File sending not available" = "文件发送不可用"; +"Show full date instead of \"Active 2h ago\"" = "显示完整日期,取代 \"Active 2h ago\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "在私讯页显示按钮以新增/移除聊天至列表。长按可查看更多选项"; +"Shows a notification pill when a message is unsent" = "讯息撤回时显示通知标签"; +"Shows an \"Unsent\" label on preserved messages" = "在保留讯息上显示 \"Unsent\" 标签"; +"Unlimited replay of visual messages" = "视觉讯息无限重播"; +"Unsent message notification" = "讯息撤回通知"; +"Voice messages" = "语音讯息"; +"Warn before clearing on refresh" = "刷新时清除前先警告"; +"Which chats get read-receipt blocking" = "哪些聊天会被阻挡已读回条"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ 私讯分页下拉刷新会清除所有保留讯息。启用以下警告可显示确认对话框。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu 已删除"; +"%lu selected" = "已选 %lu 项"; +"Absolute date + time" = "绝对日期+时间"; +"Adjust the filters or clear the search to see more." = "调整筛选条件或清除搜索以查看更多。"; +"All time" = "全部时间"; +"Browse, filter and search recorded messages" = "浏览、筛选和搜索已记录的消息"; +"Captures unsent messages with their text or media" = "捕获撤回的消息及其文本或媒体"; +"Clear deleted-message log?" = "清除已删除消息日志?"; +"Clear from this user" = "清除此用户记录"; +"Clear log" = "清除日志"; +"Clear log for this account" = "清除此账号的日志"; +"Clear log for this user?" = "清除此用户的日志?"; +"Clear media files" = "清除媒体文件"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "清除媒体会保留记录(文本、发送者、时间戳)。清除日志会删除此账号的所有内容。"; +"Close" = "关闭"; +"Content unavailable" = "内容不可用"; +"Copied" = "已复制"; +"Copy URL" = "复制链接"; +"Date range" = "日期范围"; +"Deleted messages" = "已删除的消息"; +"Deleted messages log" = "已删除消息日志"; +"Deleted: %@\n" = "删除时间:%@\n"; +"Edit %lu" = "编辑 %lu"; +"Edit history" = "编辑历史"; +"Edited" = "已编辑"; +"Empty" = "空"; +"Enable deleted messages log" = "启用已删除消息日志"; +"Enable Settings → Messages → Deleted messages log to start recording." = "启用 设置 → 消息 → 已删除消息日志 以开始记录。"; +"GIF" = "GIF"; +"Hashtag" = "话题标签"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "类型:%@\n"; +"Last 30 days" = "最近 30 天"; +"Last 7 days" = "最近 7 天"; +"Link" = "链接"; +"Live location" = "实时位置"; +"Location" = "位置"; +"Logging is off" = "记录已关闭"; +"Media on disk" = "磁盘上的媒体"; +"Most messages" = "消息最多"; +"Most recent" = "最新"; +"No deleted messages yet" = "还没有已删除的消息"; +"No matches" = "没有匹配项"; +"Nothing to save" = "无可储存内容"; +"Oldest first" = "最早优先"; +"Open log" = "打开日志"; +"Group chat" = "群聊"; +"%lu messages in %lu chats" = "%lu 条消息,%lu 个聊天"; +"%lu people · %lu deleted" = "%lu 人 · %lu 条已删除"; +"When someone unsends a message, it will appear here grouped by chat." = "当有人撤回消息时,它会按聊天分组显示在这里。"; +"Clear this chat" = "清除此聊天"; +"Clear log for this chat?" = "清除此聊天的记录?"; +"Removes every preserved deleted message from this group chat." = "移除此群聊中所有已保存的已删除消息。"; +"Reaction removed" = "已移除回应"; +"Log removed reactions" = "记录已移除的回应"; +"Also records when someone removes a reaction, and which message it was on" = "同时记录有人移除回应的时间,以及它属于哪条消息。"; +"Removed a reaction" = "移除了一个回应"; +"on @%@: %@" = "于 @%@:%@"; +"on: %@" = "于:%@"; +"a message" = "一条消息"; +"removed %@ on: %@" = "移除了 %@ · %@"; +"removed reaction %@" = "移除了回应 %@"; +"%@ removed the %@ reaction." = "%@ 移除了 %@ 回应。"; +"Removed %@" = "移除于 %@"; +"Someone" = "某人"; +"Photo or video" = "照片或视频"; +"Refresh names & photos" = "刷新名称和头像"; +"Refreshing names & photos" = "正在刷新名称和头像"; +"Records every message someone unsends, grouped by chat" = "记录每条被撤回的消息,并按聊天分组"; +"Open profile" = "打开个人主页"; +"Original" = "原始"; +"Play" = "播放"; +"Post" = "帖子"; +"Reel" = "Reel"; +"Relative (1m / 3h / 3d ago)" = "相对 (1分钟 / 3小时 / 3天前)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "移除当前账号所有保留的已删除消息及其捕获的媒体。此操作无法撤销。"; +"Removes every preserved deleted message and its captured media for this account." = "移除此账号所有保留的已删除消息及其捕获的媒体。"; +"Removes every preserved deleted message from this sender." = "移除此发送者所有保留的已删除消息。"; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "移除所有已保存的照片、视频和语音片段。记录保留其文本和发送者信息。"; +"Search messages" = "搜索消息"; +"Search senders or messages" = "搜索发送者或消息"; +"Select" = "选择"; +"Show edit history" = "显示编辑历史"; +"Source URL recorded but media not stored.\n" = "已记录源 URL,但未存储媒体。\n"; +"Sticker" = "贴纸"; +"Tap to open in Instagram" = "点击在 Instagram 中打开"; +"Tap to open in Maps" = "点击在地图中打开"; +"Tap to play" = "点击播放"; +"Tap to play · %@" = "点击播放 · %@"; +"Text" = "文本"; +"This account" = "此账号"; +"Unknown" = "未知"; +"Video" = "视频"; +"View" = "查看"; +"Voice" = "语音"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "启用后,已删除的消息及其媒体会保存在本设备。关闭并清除日志以擦除历史记录。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "在绘图工具中,将图片作为涂鸦发送,来自图库、照片、贴纸或粘贴,内置裁剪与背景移除编辑器"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "画一条线或形状,然后点按发送并选择图片来源:图库、照片、贴纸或粘贴。\n\n图片会取代你画的内容,并沿用其位置和大小,所以画得越大图片越大。\n\n重启 Instagram 后生效。"; + +"Send image as drawing" = "将图片作为涂鸦发送"; + +"Bypass \"You can't send messages\"" = "绕过“你无法发送消息”"; +"Custom chat background" = "自定义聊天背景"; +"DM Save button" = "私信保存按钮"; +"Incoming calls stay silent — no ring, no screen, no notification" = "来电保持静默 — 无铃声、无界面、无通知"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "让 Instagram 私信图片和视频上的原生保存按钮改为下载到“照片”、图库或共享"; +"Messages" = "讯息"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "移除被屏蔽的输入栏横幅,并在受限对话中恢复文本输入框"; +"Reroute native Save" = "重定向原生保存"; +"Save media" = "保存媒体"; +"Silence incoming calls" = "静音来电"; +"Threads" = "主题串"; +"Use your own images as chat backgrounds" = "用你自己的图片作为聊天背景"; +"Activity status toggle" = "活动状态开关"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "在收件箱标题栏添加一个圆点。点按即可开启或关闭你的活动状态"; +"Activity status on" = "活动状态已开启"; +"Activity status off" = "活动状态已关闭"; +"Couldn't change activity status" = "无法更改活动状态"; +"Check your connection and try again" = "请检查网络连接后重试"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "相机"; +"Viewer" = "查看器"; +"Saving" = "保存"; +"Confirmations" = "确认"; +"Confirm switching button" = "切换确认按钮"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "在操作按钮旁添加一个按钮,可即时开启或关闭切换确认"; +"Switching confirmation on" = "切换确认已开启"; +"Switching confirmation off" = "切换确认已关闭"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "为即时相机加入相册按钮,让你从相册发送照片"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "在即时查看器顶栏添加 RyukGram 操作按钮,包含展开、保存、分享和批量保存条目"; +"All loaded instants" = "已加载的所有即时"; +"Auto advance after reaction" = "互动后自动切换"; +"Automatically moves to the next instant after you like or react" = "点赞或回应后自动切换到下一个即时"; +"Auto close when finished" = "看完后自动关闭"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "看完所有即时后关闭查看器,而不是停留在相机界面"; +"Bypasses the Instants screenshot block" = "绕过即时截屏拦截"; +"Could not locate the instant on screen" = "未能在屏幕上定位即时"; +"Current instant" = "当前即时"; +"In-app Gallery" = "应用内图库"; +"Instant" = "即时"; +"Instants" = "即时"; +"Auto-saved instants log" = "自动保存的即时记录"; +"Auto-save instants" = "自动保存即时"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "自动保存你查看的每个即时(包括滑动时)— 每个仅保存一次"; +"Instants action button" = "即时操作按钮"; +"No instants currently loaded" = "当前没有已加载的即时"; +"No media available to save" = "没有可保存的媒体"; +"Photos library" = "照片图库"; +"Pick from" = "选择来源"; +"Queued %lu instants" = "已排队 %lu 条即时"; +"Save all to Gallery" = "全部保存到相册"; +"Save all to Photos" = "全部保存到「照片」"; +"Save to Gallery" = "保存到相册"; +"Send from gallery" = "从相册发送"; +"Tweaks for the QuickSnap / Instants camera surface." = "QuickSnap / Instants 相机界面调整。"; +"Use" = "使用"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "同时隐藏底部分页列 — 仅显示收件匣"; +"Show the home shortcut button in the inbox header, on the right" = "在收件箱标题栏右侧显示主页快捷按钮"; +"Greyed out until the home shortcut button is enabled in Interface" = "在「界面」中启用主页快捷按钮前显示为灰色"; +"Hide search tab" = "隐藏搜索分页"; +"Remove the search/explore button from the tab bar" = "从分页列移除搜索/探索按钮"; +"Hide tab bar" = "隐藏分页列"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "隐藏除私讯收件匣与个人档案外的所有分页,并强制启动至收件匣。设定捷径改为长按收件匣分页。"; +"Icon order" = "图示排序"; +"Launch tab" = "启动分页"; +"Swipe sideways to move between the tab bar tabs" = "左右滑动即可在标签栏各标签间切换"; +"Messages only" = "仅限讯息"; +"Messages-only mode" = "仅限讯息模式"; +"Automatic schedule" = "自动排程"; +"DM-only client, hide tabs, auto schedule" = "仅限私讯客户端、隐藏分页、自动排程"; +"Start time" = "开始时间"; +"End time" = "结束时间"; +"Switch into Messages-only on its own during a time window" = "在某个时间段内自动切换到仅限讯息模式"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "使用上方开关,在每天的某个时间段(例如晚上 10:00 – 早上 6:00)自动开启仅限讯息模式。时间段开始和结束时会提示你重新启动。"; +"Active now · ends %@" = "当前启用 · %@ 结束"; +"Next window starts %@" = "下个时间段 %@ 开始"; +"Messages-only starting" = "仅限讯息模式开始"; +"Messages-only ending" = "仅限讯息模式结束"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "你的仅限讯息时间段已开始。重新启动 Instagram 以切换到仅限私讯。"; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "你的仅限讯息时间段已结束。重新启动 Instagram 以恢复其他分页。"; +"Navigation" = "导览"; +"Swipe between tabs" = "在分页间滑动"; +"Tab the app opens to. Ignored when Messages-only is on" = "应用程式开启时的分页。启用仅限讯息时忽略此设定"; +"How the icons on the bottom tab bar are ordered" = "底部标签栏图标的排列顺序"; +"Hidden tabs" = "隐藏的分页"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "按住并拖动以重新排序。向上拖动图标可将其隐藏。点按隐藏的分页可将其重新添加。"; +"All tabs are on the bar" = "所有分页都在栏上"; +"Turn IG into a DM-only client" = "将 IG 变成仅限私讯的客户端"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "全部"; +"Calls" = "通话"; +"Comments & posts" = "评论和帖子"; +"Confirm actions" = "确认操作"; +"Confirm changing theme" = "确认更换主题"; +"Confirm disappearing media mark as viewed" = "确认将阅后即焚内容标记为已查看"; +"Confirm DM mark as seen" = "确认将私讯标记为已读"; +"Confirm follow" = "确认追踪"; +"Confirm follow requests" = "确认追踪请求"; +"Confirm Instants capture" = "确认即时拍照"; +"Confirm Instants emoji reaction" = "确认即时表情反应"; +"Confirm like: Posts" = "确认按赞:贴文"; +"Confirm like: Reels" = "确认按赞:Reels"; +"Confirm note emoji reaction" = "确认笔记表情反应"; +"Confirm note like" = "确认笔记按赞"; +"Confirm posting comment" = "确认发布留言"; +"Confirm repost" = "确认转贴"; +"Confirm send to group chat" = "确认发送到群聊"; +"Confirm sticker interaction (highlights)" = "确认贴图互动(精选)"; +"Confirm sticker interaction (stories)" = "确认贴图互动(限时动态)"; +"Confirm story emoji reaction" = "确认限时动态表情反应"; +"Confirm story like" = "确认限时动态按赞"; +"Confirm story mark as seen" = "确认将限时动态标记为已查看"; +"Confirm switching Instant" = "确认切换即时"; +"Confirm unfollow" = "确认取消追踪"; +"Confirm vanish mode" = "确认消失模式"; +"Confirm video call" = "确认视讯通话"; +"Confirm voice call" = "确认语音通话"; +"Confirm voice messages" = "确认语音讯息"; +"Follows" = "关注"; +"Likes" = "点赞"; +"Messaging" = "消息"; +"Reaction stickers only" = "仅限反应贴纸"; +"Reactions" = "回应"; +"Send to group chat?" = "发送到群聊?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "从分享菜单创建/发送到群聊前显示提示"; +"Shows an alert before marking a disappearing message as viewed" = "将阅后即焚讯息标记为已查看前显示提示"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "从私讯已查看按钮或选单送出已读回条前显示提示"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "从眼睛按钮或选单送出限时动态查看回条前显示提示"; +"Shows an alert before sending an emoji reaction on a note" = "发送笔记表情反应前显示警告"; +"Shows an alert before sending an emoji reaction on a story" = "发送限时动态表情反应前显示警告"; +"Shows an alert before sending an emoji reaction on an Instant" = "在向即时发送表情反应前显示提示"; +"Shows an alert before sending a photo or video from the Instants camera" = "从即时相机发送照片或视频前显示提示"; +"Shows an alert before tapping to switch to the next/previous Instant" = "在点击切换到下一个/上一个即时前显示提示"; +"Asks you to confirm before a voice message sends" = "发送语音消息前请你确认"; +"Shows an alert to confirm before toggling vanish mode" = "切换消失模式前显示确认提示"; +"Confirms before you accept or decline a follow request" = "接受或拒绝关注请求前请你确认"; +"Confirms before a chat theme change applies" = "应用聊天主题更改前请你确认"; +"Confirms before the follow button follows someone" = "关注按钮关注某人前请你确认"; +"Shows an alert when you click the like button on notes to confirm the like" = "点击笔记按赞按钮时显示确认警告"; +"Shows an alert when you click the like button on posts to confirm the like" = "点击贴文按赞按钮时显示确认警告"; +"Confirms before a like lands on a reel" = "给 reel 点赞前请你确认"; +"Shows an alert when you click the like button on stories to confirm the like" = "点击限时动态按赞按钮时显示确认警告"; +"Confirms before a comment posts" = "发布评论前请你确认"; +"Shows an alert when you click the repost button to confirm before reposting" = "点击转贴按钮前显示确认提示"; +"Shows an alert when you click the unfollow button to confirm" = "点击取消追踪按钮时显示确认提示"; +"Shows an alert when you click the video call button to confirm before calling" = "点击视讯通话按钮时显示确认警告"; +"Shows an alert when you click the voice call button to confirm before calling" = "点击语音通话按钮时显示确认警告"; +"Shows an alert when you tap a sticker inside a highlight" = "点击精选中的贴图时显示确认提示"; +"Shows an alert when you tap a sticker on someone's story" = "点击他人限时动态贴图时显示确认提示"; +"Stories & highlights" = "快拍和精选"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld 小时"; +"%ld locked" = "%ld 个已锁定"; +"%ld min" = "%ld 分钟"; +"%ldh idle" = "闲置 %ld 小时"; +"%ldm idle" = "闲置 %ld 分钟"; +"%lds" = "%ld 秒"; +"%lds idle" = "闲置 %ld 秒"; +"%lu hidden" = "%lu 个已隐藏"; +"4 digits" = "4 位数"; +"6 digits" = "6 位数"; +"Add hidden chat" = "添加隐藏的聊天"; +"Add locked chat" = "添加已锁定的聊天"; +"Allow Instants screenshots" = "允许即时截图"; +"Always ask when opening again" = "再次打开时总是询问"; +"Ask again after Instagram returns" = "Instagram 返回后再次询问"; +"Auto-relock after idle" = "闲置后自动重新锁定"; +"Balanced default" = "均衡默认"; +"Best for sensitive sections" = "最适合敏感部分"; +"Biometric" = "生物识别"; +"Change passcode" = "更改密码"; +"Chat hidden" = "已隐藏聊天"; +"Chat unhidden" = "已取消隐藏聊天"; +"Chat locked" = "已锁定聊天"; +"Chat unlocked" = "已解锁聊天"; +"Choose a code you'll remember." = "请选择你能记住的密码。"; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "选择此部分在闲置时保持解锁的时长。“永不”将保持解锁直到 Instagram 关闭或进入后台。"; +"Confirm current passcode" = "确认当前密码"; +"Confirm passcode" = "确认密码"; +"Could not save passcode" = "无法保存密码"; +"Create passcode" = "创建密码"; +"Derivation failed" = "派生失败"; +"DM inbox" = "私信收件箱"; +"Don't share unlock" = "不共享解锁"; +"Each target has its own enable, timeout, and re-lock configuration." = "每个目标都有自己的启用、超时和重新锁定配置。"; +"Enable lock" = "启用锁定"; +"Enter passcode" = "输入密码"; +"Enter value" = "输入值"; +"Enter your current passcode to change it" = "输入当前密码以更改"; +"Enter your current passcode to reset it" = "输入当前密码以重置"; +"Enter your passcode to continue" = "输入密码以继续"; +"every use" = "每次使用"; +"Every use" = "每次使用"; +"Hidden chats" = "已隐藏的聊天"; +"Hidden chats hidden" = "已隐藏隐藏聊天"; +"Hidden chats revealed" = "已显示隐藏聊天"; +"👁 Shown in the inbox · Tap to hide" = "👁 已在收件箱显示 · 点按隐藏"; +" · shown in inbox" = " · 已在收件箱显示"; +"Hide chat" = "隐藏聊天"; +"Unhide chat" = "取消隐藏聊天"; +"Hold name to reveal" = "长按名称以显示"; +"Hide message preview" = "隐藏消息预览"; +"Hide this chat?" = "隐藏此聊天?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "从截图/录屏中隐藏 RyukGram 界面,并绕过 Instagram 按功能触发的截图警告。"; +"Idle timeout" = "闲置超时"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "单独锁定此目标"; +"Less frequent prompts" = "更少的提示"; +"Lock" = "锁定"; +"Lock chat" = "锁定聊天"; +"Lock every time" = "每次都锁定"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "“每次锁定”会覆盖闲置超时。“不共享解锁”会让此目标保持独立。"; +"Lock targets" = "锁定目标"; +"Lock the tweak" = "锁定 tweak"; +"Lock this chat" = "锁定此聊天"; +"Lock this chat?" = "锁定此聊天?"; +"Lock with passcode" = "使用密码锁定"; +"Locked chats" = "已锁定的聊天"; +"Long-press a chat to lock it individually" = "长按某个聊天以单独锁定它"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "长按一个私信会话 → 隐藏聊天即可添加到此处。已隐藏的聊天会从收件箱中过滤,直到你从此列表中移除。"; +"Long-press a DM to add" = "长按私信进行添加"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "长按私信收件箱顶部的账户名称以显示或隐藏您的隐藏聊天"; +"Longest idle window" = "最长闲置时间"; +"Manage locked chats" = "管理已锁定的聊天"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "主开关。关闭可在不丢失各目标配置的情况下停用所有锁定目标。"; +"Never" = "永不"; +"No passcode set" = "未设置密码"; +"Nothing here yet." = "这里还没有内容。"; +"Off" = "关闭"; +"On" = "开启"; +"On — %@" = "开启 — %@"; +"On — %@ + %ld more" = "开启 — %@ 等 %ld 项"; +"On — no targets enabled" = "开启 — 未启用任何目标"; +"Passcode" = "密码"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "密码 + 生物识别。锁定 tweak 设置弹窗、相册、已删除消息日志、单个聊天以及整个应用。"; +"Passcode changed" = "已更改密码"; +"Passcode reset" = "已重置密码"; +"Passcode set" = "已设置密码"; +"Passcode too short" = "密码太短"; +"Passcodes did not match — try again" = "密码不一致 — 请重试"; +"Per-chat locks" = "每个聊天的锁定"; +"Prompt before Instagram opens" = "Instagram 打开前要求验证"; +"Prompt before Profile Analyzer opens" = "个人资料分析器打开前要求验证"; +"Prompt before the deleted-messages log opens" = "已删除消息日志打开前要求验证"; +"Prompt before the gallery opens" = "相册打开前要求验证"; +"Prompt before tweak settings open" = "tweak 设置打开前要求验证"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "每次进入私信收件箱时都要求验证,包括直接启动到消息"; +"Re-enter the same passcode" = "再次输入相同的密码"; +"Re-lock on background" = "在后台时重新锁定"; +"re-lock on bg" = "后台重新锁定"; +"Recently hidden" = "最近隐藏"; +"Prompt before holding the inbox name reveals hidden chats" = "长按名称显示隐藏聊天前先询问"; +"Reveal hidden chats" = "显示隐藏聊天"; +"Recently locked" = "最近锁定"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "在截图、录屏和镜像中隐藏 RyukGram 按钮"; +"Remove screenshot alert" = "移除截图警告"; +"Replace inbox preview with • • •" = "用 • • • 替换收件箱预览"; +"Require passcode for this section" = "此部分需要密码"; +"Requires your current passcode" = "需要你的当前密码"; +"Reset passcode" = "重置密码"; +"Reset passcode?" = "重置密码?"; +"Screenshots & capture" = "截图与录制"; +"Security & Privacy" = "安全与隐私"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "设置密码以锁定「设置」、相册、已删除消息日志、单个聊天、私信收件箱、个人资料分析器或 Instagram 本身。"; +"Set passcode" = "设置密码"; +"Short idle window" = "较短闲置时间"; +"Stay unlocked until app close or background" = "保持解锁直到应用关闭或进入后台"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "在快拍、私信和阅后即焚媒体中屏蔽 IG 的 \"X 截屏了\" 通知"; +"Tap Unlock" = "点击解锁"; +"Tap Unlock or enter your passcode" = "点击解锁或输入密码"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "此操作将清除密码、停用所有锁定目标并解锁所有聊天。相册和已删除消息的数据不会受到影响。"; +"Thread %@" = "会话 %@"; +"Tweak settings" = "Tweak 设定"; +"Unlock" = "解锁"; +"Unlock %@" = "解锁 %@"; +"Unlock chat" = "解锁聊天"; +"Unlock Instagram" = "解锁 Instagram"; +"Unlock this chat" = "解锁此聊天"; +"Use %@" = "使用 %@"; +"Username (looks up the DM thread) or raw thread ID" = "用户名(查找私信会话)或原始会话 ID"; +"Username or thread ID" = "用户名或会话 ID"; +"Wrong passcode" = "密码错误"; +"Wrong passcode • %ld attempts" = "密码错误 • 已尝试 %ld 次"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "保护"; +"Password-protect" = "密码保护"; +"On — tap to change" = "已开启 — 点按可更改"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "备份使用 AES-256 加密。恢复时需要此密码,一旦丢失将无法找回。"; +"Optional. Lock the backup behind a password so only you can restore it." = "可选。用密码锁定备份,只有你才能恢复。"; +"Backup password" = "备份密码"; +"You'll need this to restore. It can't be recovered if lost." = "恢复时需要它,一旦丢失将无法找回。"; +"Password" = "密码"; +"Confirm password" = "确认密码"; +"Set" = "设置"; +"Use at least 4 characters." = "至少使用 4 个字符。"; +"The passwords don't match." = "两次密码不一致。"; +"Try again" = "重试"; +"Encrypted backup" = "加密备份"; +"Enter the password used to protect this backup." = "输入用于保护此备份的密码。"; +"Wrong password. Try again." = "密码错误。请重试。"; +"Decrypting backup…" = "正在解密备份…"; +"Encrypting backup…" = "正在加密备份…"; +"%ld of %ld selected · %@" = "已选 %ld/%ld · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "勾选要包含的每个数据集。点按某行可查看其内容。"; + +"%lu account(s)" = "%lu 个账号"; +"%lu account(s) · %lu image(s) · %@" = "%lu 个账号 · %lu 张图片 · %@"; +"%lu file(s) · %@" = "%lu 个文件 · %@"; +"%lu preferences" = "%lu 项设置"; +"(none)" = "(无)"; +"Apply backup?" = "应用备份?"; +"Applying backup…" = "正在应用备份…"; +"archive error" = "归档错误"; +"Archived snapshots" = "已归档的快照"; +"Backup & Restore" = "备份与还原"; +"Backup exported" = "备份已导出"; +"Backup failed" = "备份失败"; +"Backup has no importable sections." = "备份中没有可导入的部分。"; +"Chat & story filters" = "聊天和快拍筛选"; +"Chat backgrounds" = "聊天背景"; +"Corrupt entry path." = "条目路径损坏。"; +"Could not decompress archive." = "无法解压归档。"; +"Could not open archive." = "无法打开归档。"; +"Could not open staging file." = "无法打开暂存文件。"; +"Could not read the backup archive." = "无法读取备份归档。"; +"Could not write archive." = "无法写入归档。"; +"Could not write backup file." = "无法写入备份文件。"; +"Could not write extracted file." = "无法写入解压的文件。"; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "已勾选项目的现有数据将被替换。可能需要重启才能让所有更改生效。"; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "导出或导入 RyukGram 数据 — 设置、按账号筛选、隐藏和锁定的聊天、主页分析器、图库、聊天背景、已删除的消息和已读回执记录。可在每个页面任意组合选择。设置仍为纯 JSON 文件;包含媒体的捆绑包将导出为压缩的 .ryukbak。"; +"Feature data" = "功能数据"; +"Import mode" = "导入模式"; +"Merge" = "合并"; +"Replace" = "替换"; +"Add the backup's data to what's already here" = "将备份数据添加到现有数据中"; +"Clear existing data, then apply the backup" = "先清除现有数据,再应用备份"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "合并会保留此设备上的数据并加入备份中的数据 — 重复项会被合并,包括图库。"; +"Replace clears existing data for each ticked item, then applies the backup." = "替换会先清除每个勾选项目的现有数据,再应用备份。"; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "备份将与现有数据合并 — 不会删除任何内容,重复项会被合并。可能需要重启才能完全生效。"; +"Hidden & locked chats" = "隐藏和锁定的聊天"; +"Import" = "导入"; +"Inspect the full manifest" = "查看完整清单"; +"Load a .json or .ryukbak backup" = "加载 .json 或 .ryukbak 备份"; +"Not a RyukGram backup archive." = "不是 RyukGram 备份归档。"; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "将设定恢复为默认值并清除数据"; +"Swipe a row to clear it." = "滑动行即可清除。"; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "标记为「共用」的行不属于任何账号,始终按其自身勾选处理。"; +"%lu file(s)" = "%lu 个文件"; +"Clear all data" = "清除所有数据"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "存储的每个图库项目、记录和录音都会从此设备中删除。你的设定会保留 — 使用重设可将其恢复为默认值。此操作无法复原。"; +"Accounts" = "账号"; +"All accounts (%ld)" = "所有账号(%ld)"; +"Pick at least one account." = "请至少选择一个账号。"; +"Signed in" = "已登录"; +"Shared" = "共用"; +"Per-account data is limited to the accounts ticked here." = "按账号存储的数据仅限于此处勾选的账号。"; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "仅清除 %@ 的账号数据。共用数据按其自身勾选处理。此操作无法撤销。"; +"Preparing backup…" = "正在准备备份…"; +"Reading backup…" = "正在读取备份…"; +"RyukGram's own data on this device" = "RyukGram 在此设备上的自有数据"; +"Save settings or a full backup" = "保存设置或完整备份"; +"Tick what to apply. Rows not in this backup are hidden." = "勾选要应用的内容。此备份中不存在的行已隐藏。"; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "勾选要包含的内容。点按某行可查看。添加图库、聊天背景或已删除的消息会生成压缩的 .ryukbak 捆绑包。"; +"Truncated entry data." = "条目数据被截断。"; +"Truncated entry length." = "条目长度被截断。"; +"Truncated entry path." = "条目路径被截断。"; +"Unsafe entry path." = "条目路径不安全。"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "进阶"; +"All tweak options are disabled" = "所有调整选项已禁用"; +"Auto-clear cache" = "自动清除快取"; +"Automatically opens settings when the app launches" = "启动应用程式时自动开启设定"; +"Cache" = "快取"; +"Cache cleared" = "快取已清除"; +"Calculating cache size…" = "计算快取大小中…"; +"Clear" = "清除"; +"Clear cache" = "清除快取"; +"Clear cache (%@)" = "清除快取 (%@)"; +"Clearing cache…" = "清除快取中…"; +"Clearing still scans on demand." = "关闭时仍会按需扫描。"; +"Daily" = "每日"; +"Disable all tweak options" = "禁用所有调整选项"; +"Disable safe mode" = "停用安全模式"; +"Enable tweak settings quick-access" = "启用调整设定快速存取"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "开启时 Instagram 以原始状态运行。关闭即可恢复你的设置。"; +"Tap to re-enable everything" = "点按以重新启用全部"; +"Turn every feature off — your settings are kept" = "关闭所有功能 — 保留你的设置"; +"Fix duplicate notifications" = "修复重复通知"; +"Free %@ of Instagram cache." = "释放 %@ 的 Instagram 快取。"; +"Freed %@" = "已释放 %@"; +"Hold on the home tab to open RyukGram settings" = "长按主页标签以开启 RyukGram 设定"; +"Monthly" = "每月"; +"Nothing to clear" = "无可清除内容"; +"Off skips the size scan when Advanced opens." = "关闭时,开启进阶页不会扫描大小。"; +"Pause playback when opening settings" = "开启设定时暂停播放"; +"Always show what's new" = "始终显示新功能"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "在每个新功能上保留蓝点,而不是查看后清除"; +"Preserve messages database" = "保留消息数据库"; +"Pauses any playing video/audio when settings opens" = "设定开启时暂停任何正在播放的影片/音讯"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "防止 Instagram 崩溃后重置设定(风险自负)"; +"Prevents two banners for the same message when IG is in the foreground" = "当 IG 在前台时,防止同一条消息显示两个横幅"; +"Remove Instagram's cached images, videos, and temporary files." = "移除 Instagram 的快取图片、影片及暂存档案。"; +"Reset onboarding state" = "重设引导状态"; +"Run a silent cache clear on launch when the interval has elapsed." = "启动时在达到间隔后静默清除快取。"; +"Show cache size" = "显示快取大小"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "清除时略过消息数据库 — 保留私信、草稿与已保存的消息。"; +"Show tweak settings on app launch" = "启动应用程式时显示调整设定"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "当通知扩展同时投递通知时,抑制 IG 在应用内排队的第二条通知。"; +"Weekly" = "每周"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "操作"; +"Advanced experimental features" = "进阶实验功能"; +"All experimental toggles will be turned off. Instagram will restart." = "所有实验开关都会关闭,Instagram 将重新启动。"; +"Direct Notes — Audio reply" = "Direct 记事 — 语音回复"; +"Direct Notes — Avatar reply" = "Direct 记事 — Avatar 回复"; +"Direct Notes — Friend Map" = "Direct 记事 — 朋友地图"; +"Direct Notes — GIFs & stickers reply" = "Direct 记事 — GIF 与贴图回复"; +"Direct Notes — Photo reply" = "Direct 记事 — 照片回复"; +"Disabled after repeated crashes." = "因多次闪退已停用。"; +"Enables GIF/sticker replies" = "启用 GIF/贴图回复"; +"Enables photo replies" = "启用照片回复"; +"Enables the audio-note reply type" = "启用语音记事回复"; +"Enables the avatar reply type" = "启用 Avatar 回复"; +"Experimental flags reset" = "实验旗标已重置"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "选择要启用的项目后点「套用」以重新启动。部分功能可能无法在所有帐号或 IG 版本上运作。若 IG 连续 3 次启动闪退,旗标会自动重置。"; +"Forces Prism-gated experiments on" = "强制启用 Prism 相关实验"; +"Forces the Homecoming home surface / nav on" = "强制启用 Homecoming 首页/导览"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "强制在动态、收件匣、限时动态与记事列显示 QuickSnap/Instants"; +"Got it" = "了解"; +"Heads up" = "注意"; +"Hidden Instagram experiments" = "隐藏的 Instagram 实验"; +"Hidden Instagram experiments (in Advanced)" = "隐藏的 Instagram 实验(位于进阶设定)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "记事与 QuickSnap"; +"Prism design system" = "Prism 设计系统"; +"QuickSnap (Instants)" = "QuickSnap(Instants)"; +"Shows the friend map entry in Direct Notes" = "在 Direct 记事显示朋友地图入口"; +"Surfaces" = "介面"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "这些开关会启用 Instagram 的隐藏实验。部分功能可能无法在所有帐号或 IG 版本上运作。若 IG 连续 3 次启动闪退,旗标会自动重置。"; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "启用 Instagram 的隐藏实验。部分可能无法在所有帐号或 IG 版本上运作。"; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "按钮栏位"; +"Change the value on the right" = "更改右侧数值"; +"Could not delete: %@" = "无法删除:%@"; +"Debug" = "除错"; +"Delete an imported override and fall back to the shipped strings" = "删除汇入的覆写档并回退到内建字串"; +"Deleted %@ override. Restart to apply." = "已删除 %@ 覆写档。重新启动以套用。"; +"Enable FLEX gesture" = "启用 FLEX 手势"; +"Enable file logging" = "启用文件日志"; +"Export strings" = "汇出字串"; +"Hold 5 fingers on the screen to open FLEX" = "用五指按住萤幕以开启 FLEX"; +"I have %@%@" = "我有 %@%@"; +"Import a .strings file for a language" = "为语言汇入 .strings 档"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "汇入 .strings 档以更新翻译。选择语言、挑选档案,然后重新启动。"; +"Link Cell" = "连结栏位"; +"Localization" = "本地化"; +"Log file is empty" = "日志文件为空"; +"Logging" = "日志"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "将 RyukGram 自身的活动记录到一个可分享的文件中,覆盖应用及其扩展。默认关闭——开启后重现问题,然后分享。"; +"Menu Cell" = "选单栏位"; +"Navigation Cell" = "导览单元"; +"No imported localization files to reset." = "无可重设的汇入本地化档案。"; +"No overrides" = "无覆写"; +"Open FLEX on app focus" = "应用程式聚焦时开启 FLEX"; +"Open FLEX on app launch" = "应用程式启动时开启 FLEX"; +"Opens FLEX when the app is focused" = "应用程式聚焦时开启 FLEX"; +"Opens FLEX when the app launches" = "应用程式启动时开启 FLEX"; +"Pick a language and share its .strings file" = "选择要分享其 .strings 档的语言"; +"Pick a language to delete the imported file" = "选择要删除汇入档的语言"; +"Pick a language to export" = "选择要汇出的语言"; +"Reset localization" = "重设本地化"; +"Share log file" = "分享日志文件"; +"Static Cell" = "静态栏位"; +"Stepper cell" = "步进器栏位"; +"Switch Cell" = "切换栏位"; +"Switch Cell (Restart)" = "切换栏位(重新启动)"; +"Tap the switch" = "点击切换开关"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "这些功能依赖隐藏的 Instagram 标志,可能不适用于所有帐号或版本。"; +"Update localization file" = "更新本地化档案"; +"Using icon" = "使用图示"; +"Using image" = "使用图片"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "%@ 设定"; +"%lu items" = "%lu 个项目"; +"Cancelled" = "已取消"; +"Carousel" = "轮播"; +"Carousel · %lu items" = "轮播 · %lu 个项目"; +"Copied %lu URLs" = "已复制 %lu 个网址"; +"Copied caption" = "已复制说明文字"; +"Copied download URL" = "已复制下载网址"; +"Copied quality info" = "已复制画质信息"; +"Copied video URL" = "已复制视频链接"; +"Copy all URLs" = "复制所有网址"; +"Copy caption" = "复制说明文字"; +"Copy download URL" = "复制下载网址"; +"Could not extract any URLs" = "无法撷取任何网址"; +"Could not extract audio URL" = "无法撷取音频网址"; +"Could not extract media URL" = "无法撷取媒体网址"; +"Could not extract photo URL" = "无法撷取照片网址"; +"Could not extract video URL" = "无法撷取影片网址"; +"Done" = "完成"; +"Download all stories and share?" = "下载所有限时动态并分享?"; +"Download all to Photos" = "全部下载到「照片」"; +"Download and share all" = "全部下载并分享"; +"Download failed" = "下载失败"; +"Downloaded %lu items" = "已下载 %lu 项目"; +"Downloading audio…" = "正在下载音频…"; +"Failed to save" = "储存失败"; +"File" = "文件"; +"HD" = "HD"; +"HD download complete" = "高清下载完成"; +"HD video" = "HD 视频"; +"Mute audio" = "静音音讯"; +"No caption on this post" = "此贴文无说明文字"; +"No carousel children" = "无轮播子项目"; +"No cover image" = "无封面图片"; +"No media" = "无媒体"; +"No media to expand" = "无媒体可展开"; +"No media to show" = "无媒体可显示"; +"No media URL" = "无媒体网址"; +"No URLs" = "无网址"; +"No URLs found" = "找不到网址"; +"No video URL" = "无影片网址"; +"Not a carousel" = "非轮播贴文"; +"Nothing to share" = "无可分享内容"; +"Opening creator…" = "正在开启创作者..."; +"Photo library access denied" = "照片库存取被拒"; +"Photos access denied" = "照片存取被拒"; +"Preparing repost…" = "准备重新发布..."; +"Raw image" = "原始图片"; +"Repost" = "重新发布"; +"Repost unavailable" = "无法重新发布"; +"Save failed" = "储存失败"; +"Saved %lu items" = "已储存 %lu 项目"; +"Saved to Photos" = "已储存至照片"; +"Saved to RyukGram" = "已储存至 RyukGram"; +"Saving to Photos" = "正在保存到照片"; +"Saving…" = "正在储存..."; +"Unmute audio" = "取消静音"; +"Video · %@" = "视频 · %@"; +"View cover" = "查看封面"; +"View mentions" = "查看提及"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "自由"; +"Chat font saved" = "聊天字体已保存"; +"Reopen this chat to see the new font" = "重新打开此聊天以查看新字体"; +"Remove background" = "移除背景"; +"No subject found" = "未找到主体"; +"No stickers yet" = "还没有贴纸"; +"Send drawing" = "发送涂鸦"; +"Send my drawing" = "发送我的涂鸦"; +"Paste image / sticker" = "粘贴图片/贴纸"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "点按键盘上的任意贴纸\n将其添加到你的涂鸦"; + +" %lu votes · avg %.0f%% " = " %lu 票 · 平均 %.0f%% "; +"%@ can't be converted" = "无法转换 %@"; +"%@ unsent a message" = "%@ 撤回了一条消息"; +"%@ unsent a message from %@" = "%1$@ 撤回了 %2$@ 的消息"; +"A message was unsent" = "讯息已撤回"; +"Add" = "新增"; +"Add to block list" = "加入封锁名单"; +"Added to block list" = "已加入封锁名单"; +"Added to exclude list" = "已加入排除清单"; +"Audio not loaded yet. Play the message first and try again." = "音讯尚未载入。请先播放讯息后再试。"; +"Audio sent" = "音讯已传送"; +"Audio URL not available" = "音讯网址无法取得"; +"Audio/Video from Files" = "来自档案的音讯/影片"; +"Blocked" = "已封锁"; +"Cancel" = "取消"; +"Clear preserved messages?" = "要清除保留的讯息吗?"; +"Converting…" = "转换中..."; +"Copy link" = "复制链接"; +"Copy text" = "复制文字"; +"Could not copy selected video" = "无法复制所选视频"; +"Could not find media" = "找不到媒体"; +"Could not find story media" = "找不到故事媒体"; +"Could not get audio data. Try again after refreshing the chat." = "无法取得音讯资料。请刷新聊天后再试。"; +"Disable read receipts" = "停用已读回条"; +"Disappearing media" = "消失讯息媒体"; +"Download audio" = "下载音讯"; +"Enable read receipts" = "启用已读回条"; +"Error: %@" = "错误:%@"; +"Exclude chat" = "排除聊天"; +"Exclude from seen" = "排除已读"; +"Exclude story seen" = "排除故事已读"; +"Excluded" = "已排除"; +"Extracting audio…" = "撷取音讯中..."; +"FFmpeg conversion failed" = "FFmpeg 转换失败"; +"File sending not supported" = "不支援档案传送"; +"Follow" = "追踪"; +"Following" = "已追踪"; +"Format not supported without FFmpegKit" = "没有 FFmpegKit 不支持此格式"; +"Inserts a button on disappearing media overlays" = "在消失讯息媒体覆盖层上插入按钮"; +"Inserts a speaker button to mute/unmute disappearing media" = "插入喇叭按钮以静音/取消静音消失讯息媒体"; +"Inserts an eye button to mark the current disappearing media as viewed" = "插入眼睛按钮,将当前消失讯息媒体标记为已检视"; +"Link copied" = "已复制链接"; +"Mark as viewed" = "标记为已检视"; +"Marking as viewed advances to the next stacked media instead of closing" = "标记为已查看会前进到下一个堆叠的媒体,而不是关闭"; +"Mark messages as seen" = "标记讯息为已读"; +"Mark seen" = "标记已读"; +"Marked as viewed" = "标记为已阅览"; +"Marked messages as seen" = "标记讯息为已查看"; +"Mentions" = "提及"; +"Message from %@ was unsent" = "%@ 的消息已撤回"; +"Message sender not found" = "找不到讯息发送者"; +"Messages settings" = "讯息设定"; +"Mute story audio" = "静音故事音讯"; +"no audio track could be read" = "无法读取音频轨道"; +"No audio URL found. Try again after refreshing the chat." = "找不到音讯 URL。请刷新聊天后再试。"; +"No mentions in this story" = "此故事中无提及"; +"No thread key" = "找不到讨论串金钥"; +"No video selected" = "未选择视频"; +"No voice send method found" = "找不到语音发送方式"; +"Note has no downloadable content" = "便签没有可下载的内容"; +"Note text copied" = "笔记文字已复制"; +"Open GitHub" = "开启 GitHub"; +"Pick audio or video" = "选择音频或视频"; +"Read receipts disabled" = "已停用已读回条"; +"Read receipts enabled" = "已启用已读回条"; +"Read receipts will be blocked for this chat." = "此聊天将封锁已读回条。"; +"Read receipts will no longer be blocked for this chat." = "此聊天将不再封锁已读回条。"; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "刷新私信标签将清除 %lu 条保留的撤回消息。此操作无法撤销。"; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "刷新私信标签将清除 %lu 条保留的撤回消息。此操作无法撤销。"; +"Remove" = "移除"; +"Remove from block list" = "从封锁清单移除"; +"Remove from exclude list" = "从排除清单移除"; +"Removed" = "已移除"; +"Removed from list" = "已从清单移除"; +"Save GIF" = "储存 GIF"; +"Selection too short (min 0.5s)" = "选取太短(最短 0.5 秒)"; +"Send anyway" = "仍要传送"; +"Send Audio" = "传送音讯"; +"Send failed: %@" = "传送失败:%@"; +"Send File" = "发送文件"; +"Send service not found" = "找不到传送服务"; +"Show audio toggle" = "显示音讯切换"; +"Show mark-as-viewed button" = "显示标记已检视按钮"; +"Story read receipts disabled" = "故事已读回条已停用"; +"Story read receipts enabled" = "故事已读回条已启用"; +"This chat will resume normal read-receipt behavior." = "此聊天将恢复正常的已读回条行为。"; +"This file" = "此文件"; +"Total: %@" = "总计:%@"; +"Un-exclude chat" = "取消排除聊天"; +"Un-exclude story seen" = "取消排除故事已读"; +"Un-excluded" = "已取消排除"; +"Unblocked" = "已解除封锁"; +"Unlimited replay enabled" = "已启用无限重播"; +"Unmute story audio" = "取消静音故事音讯"; +"Unsent" = "未发送"; +"Upload Audio" = "上传音讯"; +"VC not found" = "找不到 VC"; +"Video from Library" = "从资料库选择影片"; +"Visual messages will expire" = "视觉讯息将会过期"; +"Visual messages: expiring" = "视觉讯息:即将过期"; +"Visual messages: unlimited replay" = "视觉讯息:无限重播"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "添加背景"; +"Add Chat Background" = "添加聊天背景"; +"Adds your own image backgrounds to Instagram chats" = "为 Instagram 聊天添加你自己的图片背景"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "启用后,打开任意聊天,点按主题按钮,再点按右上角的照片图标。"; +"Blur" = "模糊"; +"Browse chats" = "浏览聊天"; +"Browse chats (%ld)" = "浏览聊天 (%ld)"; +"Change Background" = "更改背景"; +"Change default" = "更改默认"; +"Chat Backgrounds" = "聊天背景"; +"Choose an image used when no chat override exists" = "选择在没有聊天单独设置时使用的图片"; +"Clear default" = "清除默认"; +"Couldn't import image" = "无法导入图片"; +"Adjust settings" = "调整设置"; +"Choose Media" = "选择媒体"; +"Converting GIF" = "正在转换 GIF"; +"Couldn't import video" = "无法导入视频"; +"Crop & resize" = "裁剪与调整大小"; +"Crop & trim" = "裁剪与修剪"; +"Custom Chat Background" = "自定义聊天背景"; +"Default background" = "默认背景"; +"Dim in dark mode" = "深色模式下变暗"; +"Enable custom backgrounds" = "启用自定义背景"; +"Enter a username, chat name, or thread ID." = "输入用户名、聊天名称或会话 ID。"; +"Group" = "群组"; +"Image Settings" = "图片设置"; +"Auto bubble color" = "自动气泡颜色"; +"Bubble color" = "气泡颜色"; +"Me" = "我"; +"Both" = "两者"; +"Gradient" = "渐变"; +"Direction" = "方向"; +"Vertical" = "垂直"; +"Horizontal" = "水平"; +"Diagonal" = "对角线"; +"Text color" = "文字颜色"; +"Automatic (contrast)" = "自动(对比度)"; +"Choose color…" = "选择颜色…"; +"Tap to apply · hold to edit" = "点按应用 · 长按编辑"; +"Library" = "图库"; +"Library, default, and per-chat overrides will be deleted." = "图库、默认背景和每个聊天的单独设置都将被删除。"; +"No Custom" = "无自定义"; +"Opacity" = "不透明度"; +"Photo Library" = "照片图库"; +"Pick default" = "选择默认"; +"Pinch + drag to position" = "捏合 + 拖动以定位"; +"Quit and reopen Instagram for the change to take effect." = "退出并重新打开 Instagram 以使更改生效。"; +"Recently set" = "最近设置"; +"Remove the global fallback background" = "移除全局后备背景"; +"Replace the default background image" = "替换默认背景图片"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "重置会将不透明度设为 1.0,模糊设为 0,变暗设为 0。"; +"RyukGram Gallery" = "RyukGram 图库"; +"Search username, name, or thread ID" = "搜索用户名、名称或会话 ID"; +"Set as default" = "设为默认"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "点按加号添加。点按某个背景可编辑、设为默认或删除。"; +"This Chat Background" = "此聊天背景"; +"Thread ID" = "会话 ID"; +"Used only when a chat does not have its own custom background." = "仅在聊天没有自己的自定义背景时使用。"; +"View and manage chats with custom backgrounds" = "查看和管理带有自定义背景的聊天"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "新增位置"; +"Add preset" = "新增预设"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "影响上方所有项。关闭时,RyukGram 的主题和界面覆盖仅在 iOS 处于深色模式时生效——浅色模式保持不变。"; +"Apply & restart" = "套用并重新启动"; +"Background" = "背景"; +"Behavior" = "行为"; +"Change location" = "更改位置"; +"Clipboard is not an Instagram URL" = "剪贴簿内容不是 Instagram 网址"; +"Comments hidden" = "留言已隐藏"; +"Comments shown" = "留言已显示"; +"Copied text to clipboard" = "文字已复制到剪贴簿"; +"Copy" = "复制"; +"Copy bio" = "复制个人简介"; +"Copy name" = "复制名称"; +"Could not find cover image" = "找不到封面图片"; +"Current: %@" = "目前:%@"; +"Dark" = "深色"; +"Disable" = "停用"; +"Download GIF" = "下载 GIF"; +"Dropped pin" = "钉选位置"; +"Emoji" = "表情符号"; +"Enable" = "启用"; +"Enable Location Services for Instagram in Settings to use your current location." = "请在设定中为 Instagram 启用定位服务以使用目前位置。"; +"Enter emoji" = "输入表情符号"; +"Fake location" = "假位置"; +"Force theme" = "强制主题"; +"Keyboard theme" = "键盘主题"; +"Light" = "浅色"; +"Location access denied" = "定位存取被拒"; +"Location Services off" = "定位服务已关闭"; +"Name" = "名称"; +"Nothing to copy" = "无内容可复制"; +"Off, Light, Dark, or OLED" = "关闭、浅色、深色或 OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "OLED 聊天主题"; +"Open Settings" = "开启设定"; +"Optional per-surface overrides. Each one is independent of the theme above." = "可选的按界面覆盖。每项独立于上方的主题。"; +"Override iOS appearance regardless of system mode" = "无论系统模式如何都覆盖 iOS 外观"; +"Override the keyboard appearance when typing" = "输入时覆盖键盘外观"; +"Pick location" = "选择位置"; +"Pure black DM thread + incoming bubbles" = "纯黑色私信背景与收到消息气泡"; +"Save" = "储存"; +"Save preset" = "储存预设"; +"Saved locations" = "已储存位置"; +"Select color" = "选择颜色"; +"Set location" = "设定位置"; +"The theme RyukGram applies to Instagram." = "RyukGram 应用于 Instagram 的主题。"; +"Theme" = "主题"; +"Turn Location Services on in Settings → Privacy to use your current location." = "请在设定 → 隐私中开启定位服务以使用目前位置。"; +"Type an emoji to use as the note bubble icon." = "输入用作便笺气泡图标的表情符号。"; +"Profile picture" = "头像"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu 个帐号?为避免速率限制,仅处理前 %ld 个。"; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu 个帐号?此操作会依序执行,每个之间有短暂停顿。"; +"%@ followers · %@ following" = "%@ 粉丝 · %@ 关注"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%d 天前"; +"%dh ago" = "%d 小时前"; +"%dm ago" = "%d 分钟前"; +"%lu accounts followed" = "已追踪 %lu 个帐号"; +"%lu accounts unfollowed" = "已取消追踪 %lu 个帐号"; +"%lu followers · %lu following" = "%lu 粉丝 · %lu 追踪中"; +"%lu followers removed" = "已移除 %lu 位粉丝"; +"%lu of %lu" = "%lu / %lu"; +"%lu of %lu checks on" = "已开启 %2$lu 项检查中的 %1$lu 项"; +"%lu saved · comparing against %@" = "已保存 %lu 个 · 对比基准 %@"; +"(empty)" = "(空)"; +"(no analyzer data)" = "(无分析器资料)"; +"a saved snapshot" = "已保存的快照"; +"About Profile Analyzer" = "关于个人档案分析器"; +"All preferences (%lu)" = "所有偏好设定 (%lu)"; +"Analysis complete" = "分析完成"; +"Analysis failed" = "分析失败"; +"Another analysis is already running" = "已经有另一个分析正在执行"; +"Available after your next scan" = "将于下次扫描后提供"; +"Batch follow" = "批次追踪"; +"Batch follow finished" = "批次追踪完成"; +"Batch remove followers" = "批量移除粉丝"; +"Batch remove followers finished" = "批量移除粉丝已完成"; +"Batch unfollow" = "批次取消追踪"; +"Batch unfollow finished" = "批次取消追踪完成"; +"Categories" = "类别"; +"Checks" = "检查项"; +"Clear visited profiles" = "清除浏览过的个人资料"; +"Compare next scan against" = "下次扫描的对比基准"; +"Comparing against %@" = "对比基准 %@"; +"Continue" = "继续"; +"Couldn't fetch profile information" = "无法取得个人资料资讯"; +"Delete %lu snapshots? This can't be undone." = "删除 %lu 个快照?此操作无法撤销。"; +"Delete (%lu)" = "删除 (%lu)"; +"Delete snapshots" = "删除快照"; +"Delete this snapshot? This can't be undone." = "删除此快照?此操作无法撤销。"; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "每次扫描都会完整保存你的粉丝和关注列表,以便日后对比。所有数据都保留在本设备上。"; +"Export" = "汇出"; +"Fetching followers (%lu/%ld)…" = "正在取得粉丝 (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "正在取得追踪中 (%lu/%ld)…"; +"Fetching profile info…" = "正在取得个人资料资讯…"; +"File is not a valid RyukGram backup." = "档案不是有效的 RyukGram 汇出档。"; +"Filter" = "筛选"; +"Filter · %lu" = "筛选 · %lu"; +"First scan: %@" = "首次扫描:%@"; +"First scan: we collect your followers and following lists and save them locally." = "首次扫描:我们会收集你的粉丝及追踪清单并储存在本机。"; +"Follow back" = "回关"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "粉丝数超过 %ld — 已停用分析以避免速率限制。"; +"Followers" = "粉丝"; +"Following… %lu / %lu" = "追踪中… %lu / %lu"; +"Gained since last scan" = "自上次扫描后增加"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "注意:此功能会呼叫 Instagram 的私有 API。连续执行或在大量追踪/取消追踪活动之后立即执行可能触发短暂速率限制。请谨慎使用,风险自负。"; +"Import complete" = "汇入完成"; +"Include" = "包含"; +"Keep newest" = "保留最新"; +"Keep newest snapshots" = "保留最新的快照"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "大型帐号已被封锁:粉丝数超过 13,000 时停用分析,以避免 Instagram 对整个应用程式施加速率限制。"; +"Last scan: %@" = "上次扫描:%@"; +"Logs every profile you open. Stays on-device." = "记录你打开的每个个人资料,仅保存于设备上。"; +"Lost followers" = "失去的粉丝"; +"Most visited" = "最常浏览"; +"Mutual followers" = "互相追踪"; +"Name: %@ → %@" = "名称:%@ → %@"; +"New followers" = "新粉丝"; +"NEW" = "新"; +"New first" = "新的优先"; +"New only" = "仅限新增"; +"No active Instagram session found" = "找不到已登入的 Instagram 工作阶段"; +"No results" = "无结果"; +"No scan yet" = "尚未扫描"; +"Not following you back" = "未回追你"; +"Not verified only" = "仅限未认证"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "不会上传任何资料 — 所有资料仅保留在此装置,可透过垃圾桶图示清除。"; +"Nothing was applied." = "未套用任何变更。"; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "超出上限的旧快照会被自动删除"; +"Older snapshots beyond this limit are deleted on the next scan." = "超出此上限的旧快照将在下次扫描时被删除。"; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "选择要移除的内容。“快照”会清除扫描差异和每个已记录的快照;“访问过的主页”会清除访问记录。"; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "选择每次扫描计算哪些类别。已关闭的检查会显示为灰色并被跳过——既不会计算也不会显示。"; +"Posts" = "贴文"; +"Preferences" = "偏好设定"; +"Previous scan" = "上次扫描"; +"Private account" = "私人帐号"; +"Private only" = "仅限私人"; +"Profile Analyzer" = "个人档案分析器"; +"Profile Analyzer data" = "个人档案分析器资料"; +"Profile picture changed" = "大头贴已变更"; +"Profile updates" = "个人档案更新"; +"Profiles you've opened recently" = "你最近打开的个人资料"; +"Raw" = "原始"; +"Raw JSON" = "原始 JSON"; +"Record snapshots" = "记录快照"; +"Remove @%@ as a follower?" = "将 @%@ 从粉丝中移除?"; +"Remove follower" = "移除粉丝"; +"Removing… %lu / %lu" = "正在移除… %lu / %lu"; +"Recording" = "录制"; +"Request failed" = "请求失败"; +"Reset analyzer data" = "重设分析器资料"; +"Reset complete" = "重设完成"; +"Reset everything" = "全部重置"; +"Reset selected data?" = "要重设选取的资料吗?"; +"Reset snapshots" = "重置快照"; +"Rolling — always your last run" = "滚动 — 始终为你的上次运行"; +"Run analysis" = "执行分析"; +"Run your first analysis" = "执行首次分析"; +"Save a dated entry on every scan" = "每次扫描时保存一条带日期的记录"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "第二次扫描起:每次扫描都会与上一次比较,以显示增加/失去的粉丝、你自己的追踪/取消追踪动作,以及个人档案更新。"; +"Settings" = "设定"; +"Since last scan" = "自上次扫描后"; +"Snapshot" = "快照"; +"Snapshot saved" = "快照已保存"; +"Snapshots" = "快照"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "快照可让你归档每次扫描并选择新扫描的对比基准。“追踪访问”会记录你打开的每个主页,以便在此查看。"; +"Sort" = "排序"; +"Starting…" = "开始中…"; +"They follow you, you don't follow back" = "对方追踪你,你未回追"; +"This can't be undone." = "此操作无法复原。"; +"Ticked data will be cleared. Tap a row to see what's stored." = "选取的资料将被清除。点击任一列以检视已储存内容。"; +"Today" = "今天"; +"Too many followers" = "粉丝过多"; +"Too many followers to analyze" = "粉丝数量过多,无法分析"; +"Track visited profiles" = "追踪浏览过的个人资料"; +"Tracking" = "追踪"; +"Tracking off — enable below to log visits" = "追踪已关闭 — 在下方启用以记录浏览"; +"Unfollow" = "取消追踪"; +"Unfollow %lu" = "取消追踪 %lu"; +"Unfollow @%@?" = "取消追踪 @%@?"; +"Unfollowed you since last scan" = "自上次扫描后取消追踪你"; +"Unfollowing… %lu / %lu" = "取消追踪中… %lu / %lu"; +"Unlimited" = "无限制"; +"Username A → Z" = "使用者名称 A → Z"; +"Username Z → A" = "使用者名称 Z → A"; +"Username, name or picture changes" = "使用者名称、名称或大头贴变更"; +"Username: @%@ → @%@" = "使用者名称:@%@ → @%@"; +"Using %@ across %lu snapshots." = "在 %lu 个快照中使用 %@。"; +"Verified only" = "仅限已认证"; +"Visited" = "已浏览"; +"Visited profiles" = "浏览过的个人资料"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "粉丝数超过 %ld 时我们拒绝执行,以避免 Instagram 速率限制。"; +"You both follow each other" = "你们互相追踪"; +"You don't follow back" = "你未回追"; +"You follow them, they don't follow back" = "你追踪对方,对方未回追"; +"You started following" = "你开始追踪"; +"Your current scan was archived" = "您当前的扫描已归档"; +"You unfollowed" = "你已取消追踪"; +"your previous scan" = "你的上次扫描"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "“上次扫描”始终以你的上次运行为基准。改选一个已保存的快照可与固定时间点对比。"; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ 占用越来越大 — 降低上限或删除较旧的快照以释放空间。"; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "绝对格式"; +"Add chat" = "新增聊天"; +"Add custom domain" = "新增自订网域"; +"Add to list?" = "要加入清单吗?"; +"Add user" = "新增使用者"; +"Apply" = "套用"; +"Apply to" = "套用至"; +"Chats" = "聊天"; +"Colored" = "彩色"; +"Could not read file." = "无法读取档案。"; +"Could not resolve user ID" = "无法解析使用者 ID"; +"Current location" = "目前位置"; +"Custom" = "自订"; +"Delete" = "删除"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "IG 的每个界面使用不同的 NSDate 格式化器。开启你希望应用此格式的界面。"; +"Enable fake location" = "启用假位置"; +"Excluded chats" = "排除的聊天"; +"Excluded users" = "排除的使用者"; +"Follow default" = "遵循预设"; +"Force OFF (allow unsends)" = "强制关闭(允许撤回)"; +"Force ON (preserve unsends)" = "强制开启(保留撤回)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "当格式已显示时间时也包含秒。自定义格式通过 {ss} 自行控制秒。"; +"Add custom format…" = "添加自定义格式…"; +"Edit" = "编辑"; +"Template" = "模板"; +"Placeholders" = "占位符"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "占位符会被替换为日期部分;其余内容按原样显示。"; +"Tap a placeholder to insert it at the cursor." = "点按占位符即可在光标处插入。"; +"Included chats" = "包含的聊天"; +"Included users" = "包含的使用者"; +"KD: default" = "KD:预设"; +"KD: ON" = "KD:开启"; +"Keep-deleted" = "保留已删除"; +"Keep-deleted override" = "保留已删除覆写"; +"Name (A–Z)" = "名称 (A–Z)"; +"No DM thread found with @%@" = "找不到与 @%@ 的私讯串"; +"Presets" = "预设组合"; +"Recently added" = "最近新增"; +"Relative time" = "相对时间"; +"Relative within" = "相对时间范围"; +"Remove from list" = "从清单移除"; +"Reset" = "重设"; +"Search" = "搜寻"; +"Search address or place" = "搜寻地址或地点"; +"Search by name or username" = "依名称或使用者名称搜寻"; +"Search by username or name" = "依使用者名称或名称搜寻"; +"Select location on map" = "在地图上选择位置"; +"Set current location" = "设定目前位置"; +"Set keep-deleted override" = "设定保留已删除覆写"; +"Show map button" = "显示地图按钮"; +"Show relative time for dates younger than this many days. 0 disables it." = "对早于此天数的日期显示相对时间。0 表示关闭。"; +"Show seconds" = "显示秒数"; +"Sort by" = "排序依据"; +"Thread" = "会话"; +"Time" = "时间"; +"Use this location" = "使用此位置"; +"User '%@' not found" = "找不到使用者 '%@'"; +"Username (A–Z)" = "使用者名称 (A–Z)"; +"Within %ld days" = "%ld 天以内"; +"Within 1 day" = "1 天以内"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "找不到密码"; +"No text field found" = "找不到文字栏位"; +"Refresh Reels?" = "重新整理 Reels?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu 个账号"; +"%lu loaded" = "已加载 %lu 个"; +"%lu loaded · all loaded" = "已加载 %lu 个 · 全部加载完毕"; +"Doesn't follow you" = "未追踪你"; +"Everyone is already loaded." = "所有人已加载完毕。"; +"Filter & sort" = "筛选和排序"; +"Follows me" = "关注了我"; +"Follows me first" = "关注我的优先"; +"Follows you" = "追踪你"; +"Hides everyone who doesn't match all picked filters." = "隐藏所有不符合全部所选筛选条件的人。"; +"Jump to bottom" = "跳到底部"; +"Jump to top" = "跳到顶部"; +"List" = "列表"; +"List fully loaded" = "列表已全部加载"; +"Load more" = "加载更多"; +"Loaded more" = "已加载更多"; +"Mutuals" = "互相关注"; +"Mutuals first" = "互相关注优先"; +"Note copied" = "备注已复制"; +"People I follow" = "我关注的人"; +"People I follow first" = "我关注的人优先"; +"Reverse order" = "倒序"; +"Show only" = "仅显示"; +"Verified" = "已认证"; +"Verified first" = "已认证优先"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(未设置)"; +"720p • progressive • fastest" = "720p • 渐进式 • 最快"; +"Add language" = "添加语言"; +"Album name" = "相册名称"; +"Are you sure?" = "你确定吗?"; +"Bundle" = "合集"; +"Copy audio URL" = "复制音讯网址"; +"Copy quality info" = "复制品质资讯"; +"Copy video URL" = "复制影片网址"; +"Could not access reel media" = "无法存取 Reels 媒体"; +"Could not access reel photo" = "无法存取 Reels 照片"; +"Could not write file." = "无法写入文件。"; +"Download all and share?" = "下载全部并分享?"; +"Download Quality" = "下载品质"; +"Downloading %d%%" = "正在下载 %d%%"; +"e.g. 1000000" = "例如 1000000"; +"Localization file not found" = "未找到翻译文件"; +"Enter the language code (e.g. fr, de, ja)" = "输入语言代码(例如 fr、de、ja)"; +"Error" = "错误"; +"Extras" = "附加项目"; +"FFmpegKit Debug" = "FFmpegKit 除错"; +"File is empty or not a valid .strings file." = "文件为空或不是有效的 .strings 文件。"; +"KD: OFF" = "KD:关闭"; +"Keep-deleted: OFF" = " • 保留已删除:关闭"; +"Keep-deleted: ON" = " • 保留已删除:开启"; +"Later" = "稍后"; +"Loading" = "加载中"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "RyukGram 保存到的“照片”相册名称。留空则恢复默认。"; +"Next" = "下一步"; +"No results found." = "未找到结果。"; +"No!" = "不要!"; +"Pick a language to update, or add a new one" = "选择要更新的语言,或添加新语言"; +"Preset" = "预设"; +"Restart" = "重新启动"; +"Restart now" = "立即重新启动"; +"Restart required" = "需要重新启动"; +"Saved preset \"%@\"" = "已保存预设 \"%@\""; +"selected" = "已选择"; +"Shared icon, or override per button" = "共享图标,或按按钮单独覆盖"; +"Speed" = "速度"; +"Unset" = "未设置"; +"Update localization" = "更新翻译"; +"Updated %@ (%ld keys). Restart to apply." = "已更新 %@(%ld 个键)。重新启动以应用。"; +"Use default" = "使用默认"; +"Username or PK" = "用户名或 PK"; +"Username or raw user PK" = "用户名或原始用户 PK"; +"Yes" = "是"; +"You must restart the app to apply this change" = "您必须重新启动应用程式以套用此变更"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "喜欢 RyukGram 吗?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "它是免费的,也没有任何数据离开你的设备。如果你用得开心,一杯咖啡就能让它继续下去。"; +"Donate" = "捐赠"; +"I already did" = "我已经捐过了"; +"Maybe later" = "以后再说"; +"This means a lot" = "这对我意义重大"; +"Appreciate the support" = "感谢支持"; +"No worries, enjoy the tweak" = "没关系,好好享用吧"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub、Telegram、捐赠"; +"About" = "关于"; +"Arabic translation" = "阿拉伯文翻译"; +"Chinese (Traditional and Simplified) translation" = "中文(繁体与简体)翻译"; +"Credits" = "制作团队"; +"Developers" = "开发者"; +"installed" = "已安装"; +"Korean translation" = "韩文翻译"; +"Portuguese (Brazil) translation" = "葡萄牙语(巴西)翻译"; +"Turkish translation" = "土耳其语翻译"; +"Vietnamese translation" = "越南语翻译"; +"French translation" = "法语翻译"; +"Japanese translation" = "日语翻译"; +"Code contributions" = "代码贡献"; +"Following feed mode (from InstaSane)" = "正在关注动态模式(来自 InstaSane)"; +"latest" = "最新"; +"Links" = "连结"; +"No releases" = "无版本发行"; +"SCInsta developer" = "SCInsta 开发者"; +"Release notes" = "版本说明"; +"Releases" = "版本发行"; +"Report an issue" = "回报问题"; +"Russian translation" = "俄文翻译"; +"RyukGram developer" = "RyukGram 开发者"; +"Join Telegram channel" = "加入 Telegram 频道"; +"Source code" = "原始码"; +"View on GitHub" = "在 GitHub 查看"; +"Spanish translation" = "西班牙文翻译"; +"Inspirations" = "灵感来源"; +"Inspirations, contributors, translators" = "灵感来源、贡献者、翻译者"; +"Code and research" = "代码与研究"; +"Translators" = "翻译者"; +"BHInstagram developer" = "BHInstagram 开发者"; +"OLED theme inspiration" = "OLED 主题灵感"; +"Donate to Ryuk" = "捐赠 Ryuk"; +"Support RyukGram development" = "支持 RyukGram 开发"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram 是一个受 SCInsta 启发的独立项目。"; +"Browse changes from previous releases" = "查看以往版本的更改"; +"Code inspiration" = "代码灵感"; +"zxPluginsInject sideload compatibility shim" = "zxPluginsInject 侧载兼容性垫片"; +"Telegram channel" = "Telegram 频道"; +"Testing and feature suggestions" = "测试与功能建议"; +"Version" = "版本"; +"Version, credits, and links" = "版本、制作团队与连结"; +"What's new in RyukGram" = "RyukGram 有什么新功能"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • 渐进式 • 静音"; +"Audio only" = "仅音讯"; +"Audio ready" = "音讯就绪"; +"Audio track %ld" = "音轨 %ld"; +"Download video at the highest available quality" = "下载最高可用品质的影片"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "透过 DASH 串流下载 HD 影片并编码为 H.264。需要 FFmpegKit。"; +"Encoding in software" = "正在使用软件编码"; +"Encoding speed" = "编码速度"; +"Enhanced downloads" = "增强下载"; +"Faster = lower quality" = "速度越快 = 品质越低"; +"FFmpeg not available" = "FFmpeg 不可用"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit 不可用。请安装侧载的 IPA 或 _ffmpeg .deb 版本以启用。"; +"Hardware encoder isn't available in the background — your quality settings were kept." = "后台无法使用硬件编码器 — 已保留你的画质设置。"; +"No audio track found" = "找不到音讯轨"; +"Photo" = "照片"; +"Photo quality" = "照片品质"; +"Size unknown" = "大小未知"; +"calculating size…" = "正在计算大小…"; +"silent" = "静音"; +"Use highest resolution available" = "使用最高可用解析度"; +"Video encoder locked up — restart Instagram to encode again" = "视频编码器已卡死 — 请重启 Instagram 后再编码"; +"Video only" = "仅视频"; +"Video-only & every audio track" = "仅视频和所有音轨"; +"Video quality" = "影片品质"; +"Which quality to download" = "选择下载的品质"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "此 FFmpegKit 构建不包含 “%@” — 改用硬件 h264。"; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10 位 4:2:0。慢约 2 倍,渐变更平滑。"; +"10-bit colour. Slower, smoother gradients. Software only." = "10 位色彩。较慢,渐变更平滑。仅限软件编码。"; +"1080p30 baseline." = "1080p30 基准。"; +"4K30 baseline." = "4K30 基准。"; +"8-bit 4:2:0. Universal default." = "8 位 4:2:0。通用默认。"; +"8-bit 4:2:2 chroma. Niche playback." = "8 位 4:2:2 色度。小众播放。"; +"8-bit 4:2:2 chroma. Software only." = "8 位 4:2:2 色度。仅限软件编码。"; +"8-bit 4:4:4 chroma. Software only." = "8 位 4:4:4 色度。仅限软件编码。"; +"8-bit 4:4:4 full chroma. Niche playback." = "8 位 4:4:4 全色度。小众播放。"; +"8-bit. Best for modern devices." = "8 位。最适合现代设备。"; +"Advanced encoding" = "高级编码"; +"Advanced encoding settings" = "高级编码设置"; +"Archival quality." = "归档级画质。"; +"Audio bitrate" = "音频比特率"; +"Audio channels" = "音频声道"; +"Audio codec" = "音频编码器"; +"Audio conversion failed" = "音频转换失败"; +"Audio sample rate" = "音频采样率"; +"Balanced. libx264 default." = "均衡。libx264 默认。"; +"Best practical quality per bit." = "每比特最佳实用画质。"; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "比特率、声道和采样率仅在编码器为 AAC(重新编码)时生效。"; +"Cartoons / anime." = "卡通 / 动画。"; +"Cinematic. Smaller files." = "电影感。文件更小。"; +"Codec" = "编码器"; +"Container" = "容器"; +"Copy (passthrough)" = "复制(直通)"; +"CRF quality" = "CRF 画质"; +"Downloading video…" = "正在下载视频…"; +"Easier to play back on weak devices." = "在性能较弱的设备上更易播放。"; +"Encoder unavailable" = "编码器不可用"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "例如:8M、12M、25M、4500k。留空则自动。"; +"Failed to download video" = "下载视频失败"; +"Fast, fixed-bitrate, GPU-accelerated." = "快速、固定比特率、GPU 加速。"; +"Fastest, worst compression." = "最快,压缩率最差。"; +"Faststart" = "快速启动"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "“快速启动”会将 MP4 索引移到文件开头,使文件未完全缓冲即可开始播放。“清除元数据”会从文件中移除源标签(创建日期、处理器、编码器)。"; +"FFmpeg documentation" = "FFmpeg 文档"; +"FFmpeg mux failed" = "FFmpeg 混流失败"; +"Frame rate" = "帧率"; +"H.264 level" = "H.264 级别"; +"H.264 profile" = "H.264 配置"; +"Hardware (VideoToolbox)" = "硬件 (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "硬件 (VideoToolbox) 仅支持 yuv420p — 已忽略 “%@”。切换到软件 (libx264) 以使用它。"; +"Keep original audio. Fast." = "保留原始音频。快速。"; +"Keep the source frame rate." = "保留源帧率。"; +"Let the encoder pick." = "由编码器决定。"; +"Live-action video." = "实拍视频。"; +"Lossless. Huge files." = "无损。文件极大。"; +"Low-latency streaming." = "低延迟流媒体。"; +"Manual ffmpeg controls in place of Encoding speed." = "用手动 ffmpeg 控制取代编码速度。"; +"Marginal gain, huge time cost." = "收益微小,耗时巨大。"; +"Max resolution" = "最大分辨率"; +"Mono" = "单声道"; +"No tuning. Default." = "无调优。默认。"; +"None" = "无"; +"Pixel format" = "像素格式"; +"Pixel format ignored" = "已忽略像素格式"; +"Preserve film grain." = "保留胶片颗粒。"; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "预设和调优仅适用于软件 (libx264)。配置应与像素格式搭配:high↔yuv420p、high10↔yuv420p10le、high422↔yuv422p、high444↔yuv444p。不匹配时会静默降级转换。硬件始终使用 yuv420p。"; +"Re-encode. Use when source is opus or unsupported." = "重新编码。当源为 opus 或不受支持时使用。"; +"Reset advanced encoding" = "重置高级编码"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "设置视频比特率会使软件编码切换为固定比特率并忽略 CRF。留空则使用 CRF。硬件编码使用比特率。"; +"Slideshow-like content." = "幻灯片类内容。"; +"Slower, better compression per bit." = "较慢,每比特压缩更好。"; +"Smaller, visible artefacts." = "更小,有可见瑕疵。"; +"Software (libx264)" = "软件 (libx264)"; +"Standard 8-bit." = "标准 8 位。"; +"Stereo" = "立体声"; +"Streaming default." = "流媒体默认。"; +"Strip metadata" = "清除元数据"; +"Top of AAC." = "AAC 顶级。"; +"Tune" = "调优"; +"Unknown error" = "未知错误"; +"Very high quality." = "极高画质。"; +"Video bitrate" = "视频比特率"; +"Video codec" = "视频编码器"; +"Visually lossless. RyukGram default." = "视觉无损。RyukGram 默认。"; +"Widest compatibility, no B-frames." = "兼容性最广,无 B 帧。"; +"Worst quality." = "最差画质。"; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "长按手势"; +"Inserts a button in the profile navigation header" = "在个人资料导航栏中插入一个按钮"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "在个人资料标题栏新增 RyukGram 操作按钮,包含复制、查看图片、分享、保存和资料信息选项。默认点击打开菜单;可在「配置菜单」中更改点击行为。"; +"Configure menu" = "配置菜单"; +"Reorder, enable/disable, set default tap, show date" = "重新排序、启用/禁用、设置默认点击、显示日期"; +"Reorder, enable/disable, set default tap" = "重新排序、启用/禁用、设置默认点击"; +"RyukGram profile actions" = "RyukGram 个人资料操作"; +"Reorder sections" = "重新排序分区"; +"Drag the ≡ handle to reorder sections." = "拖动 ≡ 手柄以重新排序分区。"; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "拖动 ≡ 手柄以重新排序。关闭某行可在菜单中隐藏。将分区标记为子菜单可将其操作折叠到单个条目下。"; +"Show as submenu" = "显示为子菜单"; +"Collapse this section's actions behind a single entry" = "将此分区的操作折叠到单个条目下"; +"Configure: %@" = "配置:%@"; +"What happens on a single tap. Long-press always opens the full menu." = "单击时执行的操作。长按始终会打开完整菜单。"; +"Reset to defaults" = "恢复默认"; +"This will restore the default sections, order, and toggles for this menu." = "这将恢复此菜单的默认分区、顺序和开关设置。"; +"Audio & visibility" = "音频与可见性"; +"DM disappearing media" = "私信阅后即焚媒体"; +"Bulk download" = "批量下载"; +"Feed settings" = "动态设置"; +"Reels settings" = "短视频设置"; +"Profile settings" = "个人资料设置"; +"Stories settings" = "限时动态设置"; +"Copy ID" = "复制 ID"; +"Copy Info" = "复制信息"; +"Copy all info" = "复制所有信息"; +"Copy media URL" = "复制媒体网址"; +"Copy profile link" = "复制个人资料链接"; +"Copy username" = "复制用户名"; +"Download" = "下载"; +"Download to Gallery" = "下载到图库"; +"Download all to Gallery" = "全部下载到图库"; +"Exclude/include user" = "排除/包含用户"; +"Mute / unmute audio" = "静音/取消静音"; +"Save picture to Gallery" = "保存图片到图库"; +"Share picture" = "分享图片"; +"View picture" = "查看图片"; +"Bio" = "简介"; +"ID" = "ID"; +"Info" = "信息"; +"Profile info" = "个人资料信息"; +"Profile link" = "个人资料链接"; +"Picture not found" = "找不到图片"; +"Private profile" = "私密资料"; +"Profile unavailable" = "个人资料不可用"; +"Public profile" = "公开资料"; +"Username" = "用户名"; +"Followers: %@" = "粉丝:%@"; +"Following: %@" = "关注:%@"; +"Copied %@" = "已复制 %@"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(未知)"; +"Added %lu" = "已添加 %lu"; +"All files deleted" = "已删除所有文件"; +"Browsing" = "浏览"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "找到 %lu 个由旧版本保存的项目。现在恢复到你的图库吗?"; +"Gallery data from a previous version was found. Restore it now?" = "找到了旧版本的图库数据。现在恢复吗?"; +"Gallery restored" = "图库已恢复"; +"Import failed" = "导入失败"; +"Import to Gallery" = "导入到图库"; +"Imported" = "已导入"; +"Importing…" = "正在导入…"; +"Not Now" = "暂不"; +"Nothing imported" = "未导入任何内容"; +"Restore" = "恢复"; +"Restore Gallery" = "恢复图库"; +"Restore failed" = "恢复失败"; +"Restoring gallery…" = "正在恢复图库…"; +"By source" = "按来源"; +"By type" = "按类型"; +"By user" = "按用户"; +"Clear filters" = "清除筛选"; +"Comment" = "留言"; +"Create" = "创建"; +"Create & Move" = "创建并移动"; +"Delete %@?" = "要删除 %@ 吗?"; +"Delete all files" = "删除所有文件"; +"Delete all images" = "删除所有图片"; +"Delete all videos" = "删除所有视频"; +"Delete by user" = "按用户删除"; +"Delete DM media" = "删除私信媒体"; +"Delete feed posts" = "删除动态帖子"; +"Delete files" = "删除文件"; +"Delete Folder" = "删除文件夹"; +"Delete from Gallery?" = "要从图库删除吗?"; +"Delete profile pictures" = "删除头像"; +"Delete reels" = "删除短视频"; +"Delete selected" = "删除所选"; +"Delete Selected Files?" = "删除所选文件?"; +"Delete stories" = "删除限时动态"; +"Delete thumbnails" = "删除缩略图"; +"Deleted from Gallery" = "已从图库删除"; +"Deleted selected files" = "已删除所选文件"; +"Deselect All" = "取消全选"; +"DM media deleted" = "私信媒体已删除"; +"DMs" = "私信"; +"Each user appears as a folder next to your real folders." = "每个用户以文件夹形式与实际文件夹并列显示。"; +"Each user gets a labelled section in the grid/list." = "每个用户在网格/列表中拥有带标签的分区。"; +"Enable gallery" = "启用图库"; +"Failed" = "失败"; +"Failed to delete" = "删除失败"; +"Favorite" = "收藏"; +"Favorite selected" = "收藏所选"; +"Favorites only" = "仅收藏"; +"Feed posts deleted" = "动态帖子已删除"; +"Files deleted" = "文件已删除"; +"Flat list. No grouping." = "扁平列表,不分组。"; +"Folder name" = "文件夹名称"; +"Folders" = "文件夹"; +"From RyukGram Gallery" = "来自 RyukGram 图库的音频"; +"Gallery" = "图库"; +"Gallery only" = "仅图库"; +"Gallery save mode" = "图库保存模式"; +"Gallery Settings" = "图库设置"; +"GIFs" = "GIF"; +"Grid columns" = "网格列数"; +"Grid view" = "网格视图"; +"Group by user" = "按用户分组"; +"Group first by" = "优先分组方式"; +"Order by" = "排序方式"; +"Favorites first" = "收藏优先"; +"Any time" = "任何时间"; +"This year" = "今年"; +"%ld columns" = "%ld 列"; +"Hold DM tab to open gallery" = "长按 DM 标签打开图库"; +"Images" = "图片"; +"Images deleted" = "图片已删除"; +"Images first" = "图片优先"; +"item" = "项"; +"items" = "项"; +"Largest first" = "最大优先"; +"List view" = "列表视图"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "长按底部标签栏中的收件箱按钮打开 RyukGram 图库"; +"Manage" = "管理"; +"More" = "更多"; +"Move selected" = "移动所选"; +"Move to Folder" = "移动到文件夹"; +"Name A-Z" = "名称 A-Z"; +"Name Z-A" = "名称 Z-A"; +"New Folder" = "新建文件夹"; +"New folder…" = "新建文件夹…"; +"Newest first" = "最新优先"; +"No files in Gallery" = "图库中没有文件"; +"No files to delete" = "无可删除文件"; +"No matching files" = "没有匹配的文件"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "通过 RyukGram 下载的媒体的本机库。保存模式决定「下载到照片」实际写入的位置。"; +"Open" = "打开"; +"Open Original Post" = "打开原帖子"; +"Options" = "选项"; +"Other" = "其他"; +"Photos + Gallery" = "照片 + 图库"; +"Photos only" = "仅照片"; +"Profile pictures deleted" = "头像已删除"; +"Reels deleted" = "短视频已删除"; +"Rename" = "重命名"; +"Rename Folder" = "重命名文件夹"; +"Root" = "根目录"; +"Save media from the preview screen\nto see it here." = "在预览界面保存媒体\n即可在此查看。"; +"Saved %lu items to Gallery" = "已保存 %lu 项到图库"; +"Saved to Gallery" = "已保存到图库"; +"Saving to Gallery" = "正在保存到图库..."; +"Search users" = "搜索用户"; +"Sections" = "分区"; +"Select All" = "全选"; +"Share" = "分享"; +"Share selected" = "分享所选"; +"Show favorites at top" = "收藏置顶"; +"Show gallery entries in download menus and unlock the gallery button" = "在下载菜单中显示图库条目并解锁图库按钮"; +"Smallest first" = "最小优先"; +"Source" = "来源"; +"Source user" = "来源用户"; +"Storage" = "存储"; +"Stories deleted" = "限时动态已删除"; +"Story" = "限时动态"; +"The original content may no longer exist." = "原始内容可能已不存在。"; +"This folder contains %ld file(s). They will be moved to the parent folder." = "此文件夹包含 %ld 个文件。它们将被移动到上级文件夹。"; +"This folder is empty." = "此文件夹为空。"; +"This will permanently remove %ld file%@ from the gallery." = "这将从图库中永久删除 %ld 个文件%@。"; +"This will permanently remove %ld file(s)." = "这将永久删除 %ld 个文件。"; +"This will permanently remove this file from the gallery." = "这将从图库中永久删除此文件。"; +"Thumb" = "缩略图"; +"Thumbnails deleted" = "缩略图已删除"; +"to Gallery" = "到图库"; +"Total files" = "文件总数"; +"Total size" = "总大小"; +"Type" = "类型"; +"Unable to open original post" = "无法打开原始帖子"; +"Unable to open profile" = "无法打开个人资料"; +"Unfavorite" = "取消收藏"; +"Unknown user" = "未知用户"; +"User files deleted" = "用户文件已删除"; +"Videos" = "视频"; +"Videos deleted" = "视频已删除"; +"Videos first" = "视频优先"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "启用后,收藏会在当前排序和文件夹中置顶显示,位于其他文件之上。"; +"Where 'Download to Photos' actually writes when gallery is on" = "启用图库时「下载到照片」实际写入的位置"; +"Yesterday" = "昨天"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "主页快捷按钮"; +"Show the extra button on the home top bar" = "配置主页顶栏的额外按钮"; +"Auto" = "自动"; +"Icon" = "图标"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "拖动 ≡ 手柄重新排序。关闭某行以隐藏该目的地。启用一项操作时点击直接触发;启用两项或以上时点击显示菜单。"; +"Changelog" = "更新日志"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "在主页顶栏的发帖 + 按钮旁添加一个额外的快捷按钮。"; +"All buttons" = "所有按钮"; +"System" = "系统"; +"Instagram language" = "Instagram 语言"; +"Choose icon, reorder actions, and enable menu items" = "选择图标、重排操作并启用菜单项"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "选择显示在主页顶栏上的图标。“自动”会在仅启用一个操作时使用该操作的图标。"; +"Configure button" = "配置按钮"; +"Global Action Icons" = "全局操作图标"; +"Interface" = "界面"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "为特定按钮覆盖图标。保持为“默认”的按钮将沿用上方的共享图标。"; +"Per button" = "按按钮"; +"Show home shortcut button" = "显示主页快捷按钮"; +"%ld new" = "%ld 条新"; +"Tab bar" = "标签栏"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "应用内统一通知。选择样式、位置和按操作路由(药丸 / IG 原生 / 关闭)。"; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "拖动以放置通知"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "将通知拖到想要的位置。高于中心向下滑出,低于则向上。"; + +"Notifications" = "通知"; +"Appearance" = "外观"; +"Routing" = "路由"; +"Style" = "样式"; +"Position" = "位置"; +"Stack size" = "堆叠数量"; +"Duration" = "持续时间"; +"Default surface" = "默认显示方式"; +"System notifications" = "系统通知"; +"Mirror to notification centre" = "镜像到通知中心"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "应用在后台时,弹窗提示会改为发送到 iOS 通知中心,避免错过。"; +"Clear when app opens" = "打开应用时清除"; +"Remove mirrored notifications from notification centre when you return to the app." = "返回应用时,从通知中心移除已镜像的通知。"; +"Background mirror" = "后台镜像"; +"Show while app is open" = "应用打开时也显示"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "不仅在后台,使用应用时也将镜像通知以系统横幅形式发送。"; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "外观、路由、系统通知以及每项操作的覆盖设置均恢复为默认值。"; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "使用 Instagram 的通知权限。每个操作的设置位于其菜单中的“后台镜像”;设为关闭的操作不会被镜像。"; +"Enable notifications" = "启用通知"; +"Haptic feedback" = "触感反馈"; +"Preview pill" = "预览药丸"; +"Preview download pill" = "预览下载药丸"; +"Preview loading pill" = "预览加载药丸"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "主开关。关闭后将不显示任何通知。"; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "应用内统一通知。所有 RyukGram 反馈都从这里发出。"; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal:简单模糊。Colorful:按色调着色。Glow:彩色光环。Island:动态岛胶囊。"; +"Top slides down, bottom slides up." = "顶部下滑,底部上滑."; +"How many pills can show at once before queueing." = "在排队前同时显示的药丸数量。"; +"Multiplies how long toasts stay on screen." = "将通知在屏幕上的停留时间乘以倍数。"; +"Vibration on success/error pills." = "成功/错误药丸震动反馈。"; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "对于提示型操作可在我们的药丸和 IG 原生提示之间选择。下方为各操作覆盖。"; +"What to use when an action doesn't have its own override." = "操作没有自身覆盖时使用的方式。"; +"Tap to cycle: info → success → warning → error" = "点击循环:信息 → 成功 → 警告 → 错误"; +"Tap to cycle between success and failure" = "点击在成功与失败之间切换"; +"Progress UI — pill or off only." = "进度 UI — 仅限药丸或关闭。"; +"Minimal" = "极简"; +"Colorful" = "彩色"; +"Glow" = "辉光"; +"Island" = "灵动岛"; +"Top" = "顶部"; +"Bottom" = "底部"; +"Custom pill" = "自定义药丸"; +"IG native toast" = "IG 原生提示"; +"Short" = "短"; +"Normal" = "正常"; +"Long" = "长"; +"Very long" = "非常长"; +"Downloads & saving" = "下载与保存"; +"Copy to clipboard" = "复制到剪贴板"; +"Read receipts & seen" = "已读回执与查看"; +"Block, exclude & pin" = "屏蔽、排除与置顶"; +"Stories & messages" = "故事与消息"; +"Voice & audio" = "语音与音频"; +"Errors" = "错误"; +"Download progress" = "下载进度"; +"Bulk download progress" = "批量下载进度"; +"Repost progress" = "重新发布进度"; +"Copied post / reel URL" = "已复制帖子 / 短视频链接"; +"Copied comment text" = "已复制评论文字"; +"Copied GIF link" = "已复制 GIF 链接"; +"Copied note text" = "已复制便签文字"; +"Copied profile info" = "已复制个人资料信息"; +"Copied audio URL" = "已复制音频链接"; +"Copied quality picker URL" = "已复制画质选择器链接"; +"Copied unlocked password" = "已复制解锁密码"; +"Copied description text" = "已复制描述文字"; +"DM seen / read receipts" = "私信已读 / 查看"; +"Story seen / read receipts" = "故事已读 / 查看"; +"Someone read your message" = "有人已读你的消息"; +"User blocked / unblocked" = "用户已屏蔽 / 取消屏蔽"; +"Chat added / removed from exclude" = "聊天已添加 / 移出排除"; +"Story user added / removed from exclude" = "故事用户已添加 / 移出排除"; +"Share-sheet recipient pinned" = "分享对象已置顶"; +"Unsent message detected" = "检测到撤回的消息"; +"Reaction removed detected" = "检测到移除回应"; +"%lu messages unsent" = "已撤回 %lu 条消息"; +"%lu reactions removed" = "已移除 %lu 个回应"; +"%lu chats marked seen" = "已将 %lu 个聊天标记为已读"; +"%lu stories marked seen" = "已将 %lu 个限时动态标记为已看"; +"%lu of your messages read" = "你的 %lu 条消息已读"; +"%lu notifications" = "%lu 条通知"; +"Live comments toggled" = "已切换直播评论"; +"Custom GIF sent" = "已发送自定义 GIF"; +"GIF favorited / unfavorited" = "GIF 已收藏 / 取消收藏"; +"Voice DM sent" = "已发送语音私信"; +"Audio extraction status" = "音频提取状态"; +"Profile Analyzer complete" = "个人资料分析完成"; +"Profile Analyzer progress" = "个人资料分析进度"; +"Media extraction failed" = "媒体提取失败"; +"Permission denied" = "权限被拒"; +"Validation error" = "验证错误"; +"Network / API error" = "网络 / API 错误"; +"Action error fallback" = "操作错误回退"; +"Unlock failed" = "解锁失败"; +"Chat locked / unlocked" = "聊天已锁定 / 解锁"; +"Invalid clipboard link" = "剪贴板链接无效"; +"Experimental flag warning" = "实验性标志警告"; +"Settings action confirmed" = "设置操作已确认"; +"Cache clearing progress" = "缓存清理进度"; +"Backup export / import" = "备份导出 / 导入"; +"Other / uncategorized" = "其他 / 未分类"; +"Comment copied" = "评论已复制"; +"FFmpeg log copied" = "已复制 FFmpeg 日志"; +"GIF inserted" = "已插入 GIF"; +"Story marked as seen" = "故事已标记为已查看"; +"Saved" = "已保存"; +"Tap to retry" = "点击重试"; +"Looks great" = "看起来不错"; +"Something broke" = "出错了"; +"Just so you know" = "提醒一下"; +"Success preview" = "成功预览"; +"Error preview" = "错误预览"; +"Warning preview" = "警告预览"; +"Info preview" = "信息预览"; +"Preview download…" = "预览下载…"; +"Colors" = "颜色"; +"+ Add new language" = "+ 添加新语言"; +"Each chat can override this in the list" = "每个对话可在列表中单独设置"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "启用后,Instagram 位置请求将返回您选定的伪造位置。地图按钮在朋友地图中添加快捷方式。"; +"Tap a preset to make it active. Swipe left to delete." = "点击预设以激活。向左滑动删除。"; +"Override Instagram location reads." = "覆盖 Instagram 的位置读取。"; +"Show the quick button in Friends Map." = "在朋友地图中显示快捷按钮。"; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "选择绝对日期的写法。“默认”保留 IG 自己的格式。左滑自定义格式可编辑或删除。"; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "早于阈值的日期显示为相对时间。较旧的日期回退到绝对格式。“与日期合并”同时显示两者 — “2026 年 1 月 5 日 (2h)” 或 “2h – 2026 年 1 月 5 日”。"; +"Compact style" = "紧凑样式"; +"Example: “1h” instead of “1 hour ago”" = "示例:“1h” 替代 “1 小时前”"; +"Example: “Jan 5, 2026 (2h)”" = "示例:“Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "iOS 音频 API 无法处理此文件%@%@\n\n您可以尝试按原样发送到 Instagram,或提交支持问题。"; +"Combine with date" = "与日期合并"; +"Absolute then relative" = "先绝对再相对"; +"Relative – absolute" = "相对 – 绝对"; +"Relative when young, absolute when older." = "较近时显示相对,较远时显示绝对。"; +"Example: “2h – Jan 5, 2026”" = "例如:“2h – 2026 年 1 月 5 日”"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "捕获你不在时被撤回的阅后即焚内容。⚠️ 可能耗电"; +"Disappearing (view-once) media" = "阅后即焚内容(看一次)"; +"Disappearing media expired before it could be saved" = "阅后即焚内容在保存前已过期"; +"Disappearing media — gone before it could be saved" = "阅后即焚内容 — 还没来得及保存就消失了"; +"Disappearing only" = "仅阅后即焚"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "强制 Instagram 在后台持续运行,以便捕获他人在你不在应用时撤回的阅后即焚内容。\n\n主要对阅后即焚内容有用 — 普通照片/视频通常无需它也能恢复。⚠️ 可能会显著耗电,而且如果你从应用切换器强制退出 Instagram,将无法捕获任何内容。\n\n要启用吗?"; +"Keep Instagram active in background" = "让 Instagram 在后台保持活跃"; +"Media couldn’t be downloaded — the link expired" = "无法下载内容 — 链接已过期"; +"Media wasn’t available to save" = "内容无法保存"; +"Retrying download…" = "正在重试下载…"; +"Try to download again" = "重新尝试下载"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "已读回执记录"; +"Date" = "日期"; +"Reads" = "已读"; +"Person" = "用户"; +"Chat" = "聊天"; +"%@ · on @%@" = "%@ · 在 @%@"; +"%lu read · %@" = "%lu 次已读 · %@"; +"%lu reads · %@" = "%lu 次已读 · %@"; +"%lu reads · %lu reader · %@" = "%lu 次已读 · %lu 人 · %@"; +"%lu reads · %lu readers · %@" = "%lu 次已读 · %lu 人 · %@"; +"Clear all" = "全部清除"; +"Clear all records" = "清除所有记录"; +"Detects when others read your messages and notifies you" = "检测他人何时读了你的消息并通知你"; +"Ignored people & chats" = "已忽略的用户和聊天"; +"Ignored" = "已忽略"; +"Log group chats" = "记录群聊"; +"Most reads" = "已读最多"; +"Notifies and records when someone reads a message you sent" = "当有人读了你发送的消息时通知并记录"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "没有忽略项。在记录中长按某人可停止记录。"; +"Nothing matches your filters." = "没有符合筛选的内容。"; +"Read %@ · %@" = "已读 %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "在本设备记录已读。关闭 = 仅通知,不保存"; +"Resume logging" = "恢复记录"; +"Search by username" = "按用户名搜索"; +"Stop logging %@" = "停止记录 %@"; +"Delete records" = "删除记录"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "开启后,有人读了你的消息时会收到通知。关闭「保存到记录」可只接收提醒。长按记录中的某人可停止记录。"; +"Swipe to remove. Removing resumes logging for that person or chat." = "滑动以移除。移除后将恢复记录该用户或聊天。"; +"Updating names and photos" = "正在更新名称和头像"; +"Your message" = "你的消息"; +"read your message in %@" = "在 %@ 中读了你的消息"; +"read your message" = "读了你的消息"; +"Also track reads in group chats. Off by default — groups can be noisy" = "同时追踪群聊中的已读。默认关闭——群聊可能较吵"; +"Refreshing…" = "正在刷新…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "生成新指纹"; +"New device fingerprint" = "新设备指纹"; +"Roll new ID" = "生成新 ID"; +"Roll + clear IG data" = "生成新 ID + 清除 IG 数据"; +"Generate fresh device identifiers" = "生成全新的设备标识符"; +"Enter ID manually…" = "手动输入 ID…"; +"Manual device ID" = "手动设备 ID"; +"Paste or type the UUID this device should report." = "粘贴或输入此设备应上报的 UUID。"; +"Device ID set" = "已设置设备 ID"; +"New fingerprint ready" = "新指纹已就绪"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "立即重启 Instagram,让新的设备身份从干净的状态开始生效?"; +"Copy current ID" = "复制当前 ID"; +"Revert to my real device ID" = "恢复为我的真实设备 ID"; +"Restore the original, stop masking" = "恢复原始值并停止遮罩"; +"Spoofing off" = "伪装已关闭"; +"Relaunch now" = "立即重启"; +"Relaunch to apply" = "重启以应用"; +"Clear device & relaunch" = "清除设备并重启"; +"Clear device & relaunch?" = "清除设备并重启?"; +"Clear & relaunch" = "清除并重启"; +"Full reset to a brand-new device" = "完整重置为全新设备"; +"Device ID" = "设备 ID"; +"Hide button until relaunch" = "隐藏按钮直到重启"; +"Device identity" = "设备身份"; +"Masked" = "已遮罩"; +"Real" = "真实"; +"Show button on login screen" = "在登录界面显示按钮"; +"Floating Device ID button while signed out" = "退出登录时显示的浮动设备 ID 按钮"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "遮罩 Instagram 用于识别此设备指纹的标识符:设备 ID、家庭设备 ID、供应商 ID 和机器 ID。更改在重启后生效。同样的控件也会出现在登录界面。"; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "忘记所有已保存的登录信息、Cookie 和存储的设备身份,然后重启,让 Instagram 以全新设备启动。之后你需要重新登录。"; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "生成全新的设备 ID、家庭设备 ID、供应商 ID 并清除机器 ID,让 Instagram 重新注册为新设备。或者同时清除已保存的登录信息以完整重置。"; +"Apple attestation" = "Apple 认证"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "阻止 Instagram 的 Apple 设备认证(DeviceCheck 和 App Attest)。它们与硬件绑定且无法更改,因此即使重置也会持续关联到该设备。阻止后,Instagram 会认为该设备不支持这些功能。仅在遮罩开启时有效。"; +"Block Apple device attestation" = "阻止 Apple 设备认证"; +"Stop the hardware attestation that links the device" = "停止关联设备的硬件认证"; +"Block Apple attestation: %@" = "阻止 Apple 认证:%@"; +"Attestation blocked" = "认证已阻止"; +"Attestation allowed" = "认证已允许"; +"Roll + clear, then sign in fresh" = "生成新 ID + 清除,然后重新登录"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "关注请求"; +"Show follow requests" = "显示关注请求"; +"Check now" = "立即检查"; +"Reset tracked data" = "重置已记录的数据"; +"Enable tracker" = "启用追踪器"; +"Log requests and check outcomes" = "记录请求并检查结果"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "记录你发送和收到的关注请求,并捕捉在你回应之前撤回请求的人。全部在设备本地。"; +"What to track" = "追踪内容"; +"Requests I send" = "我发送的请求"; +"To private accounts" = "发往私密账号"; +"Requests I receive" = "我收到的请求"; +"From people who want to follow you" = "来自想关注你的人"; +"Background check" = "后台检查"; +"Check interval" = "检查间隔"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "应用打开时检查结果的频率。也会在启动时和打开列表时检查。"; +"Off (manual only)" = "关闭(仅手动)"; +"Every 15 minutes" = "每 15 分钟"; +"Every 30 minutes" = "每 30 分钟"; +"Every hour" = "每小时"; +"Every 6 hours" = "每 6 小时"; +"My request accepted" = "我的请求已接受"; +"A private account accepted you" = "一个私密账号接受了你"; +"My request declined" = "我的请求已拒绝"; +"No longer pending" = "不再等待"; +"New request received" = "收到新请求"; +"Someone asked to follow you" = "有人请求关注你"; +"Request withdrawn" = "请求已撤回"; +"Someone cancelled their request" = "有人取消了请求"; +"Sent by me" = "我发送的"; +"Received" = "已收到"; +"Sent" = "已发送"; +"Accepted" = "已接受"; +"Rejected" = "已拒绝"; +"Requested" = "已请求"; +"Approved" = "已批准"; +"Withdrawn" = "已撤回"; +"No follow requests tracked yet" = "尚未记录任何关注请求"; +"Cancel requests" = "取消请求"; +"Delete %lu record(s) from history?" = "从历史记录中删除 %lu 条记录?"; +"Cancel %lu pending request(s)?" = "取消 %lu 个待处理请求?"; +"Follow back %lu account(s)?" = "回关 %lu 个账号?"; +"Clear all tracked follow requests?" = "清除所有已记录的关注请求?"; +"Reset tracked follow requests for this account?" = "重置此账号已记录的关注请求?"; +"Enable the tracker first" = "请先启用追踪器"; +"Checking…" = "正在检查…"; +"%ld request(s) updated" = "已更新 %ld 个请求"; +"No changes" = "无变化"; +"Working…" = "处理中…"; +"Follow request accepted" = "关注请求已接受"; +"%@ accepted your request" = "%@ 接受了你的请求"; +"Follow request declined" = "关注请求已拒绝"; +"%@ is no longer pending" = "%@ 不再处于等待状态"; +"New follow request" = "新的关注请求"; +"%@ asked to follow you" = "%@ 请求关注你"; +"Follow request withdrawn" = "关注请求已撤回"; +"%@ withdrew their request" = "%@ 撤回了请求"; +"Follow requests log" = "关注请求日志"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "解锁 Instagram 的付费功能"; +"Turn on Instagram's paid subscriber features inside the app." = "在应用内启用 Instagram 的付费订阅功能。"; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus 是 Instagram 的付费订阅。这些开关会在应用内启用它的功能。部分功能可完全使用;其余只会显示对应选项,因为内容需从 Instagram 服务器加载,仍需真实订阅,所以可能显示为空或无任何反应。开启你想要的功能后点按“应用”。如果 Instagram 连续三次启动失败,这些开关会自动重置。"; +"Turn everything on" = "全部开启"; +"Turn everything off" = "全部关闭"; +"Every Instagram Plus feature turns off and Instagram restarts." = "所有 Instagram Plus 功能将关闭,Instagram 会重新启动。"; +"Story peek" = "快拍预览"; +"Hold a story in the tray to preview it without opening it." = "在快拍栏中长按即可预览,无需打开。"; +"Story fonts" = "快拍字体"; +"Adds the subscriber fonts when you add text to a story." = "在快拍中添加文字时提供订阅专属字体。"; +"Search story viewers" = "搜索快拍浏览者"; +"Search the list of people who viewed your story." = "在浏览过你快拍的人员列表中搜索。"; +"Viewer timestamps" = "浏览时间"; +"Shows when each person viewed your story." = "显示每个人浏览你快拍的时间。"; +"Silent post to profile" = "静默发布到主页"; +"Share to your profile without notifying your followers." = "发布到主页,不通知你的粉丝。"; +"Silent post to highlights" = "静默添加到精选"; +"Add to a highlight without notifying your followers." = "添加到精选,不通知你的粉丝。"; +"Story rewatch" = "重看快拍"; +"Rewatch a story right after it finishes." = "快拍播放结束后立即重看。"; +"Story extend" = "延长快拍"; +"Keep your story up longer than 24 hours." = "让你的快拍保留超过 24 小时。"; +"Story spotlight" = "快拍聚光"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "将你的快拍推送给更多观众。内容从 Instagram 加载,可能无法使用。"; +"Story super likes" = "快拍超级赞"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "在快拍上发送超级赞。内容从 Instagram 加载,可能无法使用。"; +"Message peek" = "消息预览"; +"Hold a chat in the inbox to preview it." = "在收件箱中长按聊天即可预览。"; +"Chat fonts" = "聊天字体"; +"Adds the subscriber fonts in direct messages." = "在私信中提供订阅专属字体。"; +"Chat themes" = "聊天主题"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "解锁高级聊天主题。内容从 Instagram 加载,可能无法使用。"; +"App icons" = "应用图标"; +"Opens the alternate app icon picker." = "打开备用应用图标选择器。"; +"Bio font" = "简介字体"; +"Use a subscriber font for your bio." = "为你的简介使用订阅专属字体。"; +"Custom story lists" = "自定义快拍列表"; +"Make lists to pick exactly who sees a story." = "创建列表以精确指定谁能看到快拍。"; +"More pinned posts" = "更多置顶帖子"; +"Pin more posts to the top of your profile." = "在你的主页顶部置顶更多帖子。"; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu 个录音"; +"1 recording" = "1 个录音"; +"30 days" = "30 天"; +"7 days" = "7 天"; +"90 days" = "90 天"; +"Adds a record button to the call screen" = "在通话界面添加录制按钮"; +"Also show recordings in the RyukGram gallery under Calls" = "同时在 RyukGram 图库的「通话」下显示录音"; +"Auto-delete old recordings" = "自动删除旧录音"; +"Auto-record calls" = "自动录制通话"; +"Auto-record ignore list" = "自动录制忽略列表"; +"Auto-record ignored" = "已忽略自动录制"; +"Auto-record on" = "自动录制已开启"; +"Block mute signal" = "屏蔽静音信号"; +"Both sides" = "双方"; +"Browse saved calls, grouped by person" = "浏览已保存的通话,按联系人分组"; +"Call" = "通话"; +"Call recorded" = "通话已录制"; +"Call recording" = "通话录制"; +"Call recordings" = "通话录音"; +"Camera position" = "摄像头位置"; +"Can't play" = "无法播放"; +"Can't record" = "无法录制"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "已从自动录制中排除的聊天 — 在通话中长按录制按钮以添加"; +"Could not save the recording." = "无法保存录音。"; +"Could not start the recorder." = "无法启动录制器。"; +"Delete all" = "全部删除"; +"Delete all recordings" = "删除所有录音"; +"Delete all recordings?" = "删除所有录音?"; +"Drag the overlay where you want it" = "将叠加层拖到你想要的位置"; +"Drag your camera window to any corner or edge." = "将你的摄像头窗口拖到任意角落或边缘。"; +"Enable call recording" = "启用通话录制"; +"Export all" = "全部导出"; +"Full screen" = "全屏"; +"Group call" = "群组通话"; +"Ignore auto-record for this chat" = "忽略此聊天的自动录制"; +"Ignored chats aren't auto-recorded. You can still record manually." = "已忽略的聊天不会自动录制。你仍可手动录制。"; +"Include my camera" = "包含我的摄像头"; +"Keep forever" = "永久保留"; +"Large" = "大"; +"Mute without the other side seeing you muted — your mic is still silenced" = "静音时对方不会看到你已静音 — 你的麦克风仍会被静音"; +"Muted silently" = "静默静音"; +"My camera size" = "我的摄像头大小"; +"No call audio was captured." = "未捕获到通话音频。"; +"No ignored chats. Long-press the record button in a call to ignore it." = "没有已忽略的聊天。在通话中长按录制按钮以忽略。"; +"No recordings" = "暂无录音"; +"Off records audio only, even on video calls" = "关闭时仅录制音频,即使是视频通话"; +"Only me" = "仅我"; +"Only them" = "仅对方"; +"Open recordings" = "打开录音"; +"Overlay your camera as a small window on video-call recordings" = "在视频通话录制中将你的摄像头叠加为小窗口"; +"Overlay your camera on the recording" = "将你的摄像头叠加到录制上"; +"Record audio from" = "录制音频来源"; +"Record video on video calls" = "在视频通话中录制视频"; +"Record voice and video calls, browse them later" = "录制语音和视频通话,稍后浏览"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "录制的通话仅保存在本设备。录制时状态栏会显示红色指示器。"; +"Recorded calls will appear here." = "录制的通话将显示在这里。"; +"Recording call" = "正在录制通话"; +"Recording count" = "录音数量"; +"Recording failed" = "录制失败"; +"Recording name" = "录音名称"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "录制对方(通话音频)和你的麦克风。录制时状态栏会显示红色指示器。录音仅保存在本设备。"; +"Remove from ignore list" = "从忽略列表中移除"; +"Remove recordings older than the chosen age" = "移除超过所选时长的录音"; +"Rename recording" = "重命名录音"; +"Search calls" = "搜索通话"; +"Set a custom name for this chat's recordings." = "为此聊天的录音设置自定义名称。"; +"Size of the overlay window" = "叠加窗口的大小"; +"Small" = "小"; +"Starts recording automatically when a call opens" = "通话开启时自动开始录制"; +"Sync to gallery" = "同步到图库"; +"The recording file is missing." = "录音文件丢失。"; +"Them" = "对方"; +"Them (full screen)" = "对方(全屏)"; +"This permanently removes every saved call recording for this account." = "这将永久移除此账号所有已保存的通话录音。"; +"Unknown chat" = "未知聊天"; +"Unmuted" = "已取消静音"; +"Which camera fills the frame" = "哪个摄像头填满画面"; +"Which side's voice to capture" = "捕获哪一方的声音"; +"You" = "你"; +"You (full screen)" = "你(全屏)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "你的摄像头会被捕获并叠加到录制上。选择哪一方填满屏幕、叠加大小,并将其拖到任意角落。"; +"Prompt before the call recordings open" = "打开通话录音前先提示"; +"Prompt before the activity log opens" = "打开活动记录前询问"; +"Mark all as read" = "全部标记为已读"; +"Delete %lu chats?" = "删除 %lu 个聊天?"; +"This permanently removes their recordings." = "这将永久移除它们的录音。"; + +"Stories archive" = "快拍存档"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "已回应"; +"Reacted first" = "回应优先"; +"Mutual" = "互相关注"; +"Viewers" = "查看者"; +"1 viewer" = "1 位查看者"; +"View viewers" = "查看查看者"; +"%lu views" = "%lu 次浏览"; +"%ld likes" = "%ld 个赞"; +"0 views" = "0 次浏览"; +"1 like" = "1 个赞"; +"1 view" = "1 次浏览"; +"Photos" = "照片"; +"Oldest" = "最早"; +"Most viewed" = "浏览最多"; +"Most reacted" = "回应最多"; +"Open archive" = "打开存档"; +"Archive settings" = "存档设置"; +"Archiving" = "存档"; +"Enable stories archive" = "启用快拍存档"; +"Save your stories before they expire" = "在快拍过期前保存它们"; +"Saves each story you post, with its photo or video, kept separately for each account." = "保存你发布的每条快拍及其照片或视频,并为每个账户分别存放。"; +"Save and update viewers" = "保存并更新查看者"; +"Keep each story's viewers and likers, refreshed to the final list" = "保留每条快拍的查看者和点赞者,并刷新为最终列表"; +"Update viewers" = "更新查看者"; +"How often to refresh viewers for stories still live" = "为仍在展示的快拍刷新查看者的频率"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "快拍的查看者列表会在展示的一整天内持续增长,之后 Instagram 还会再展示一天。自动更新会在快拍满一天后获取最终列表,让你保留的数据完整无缺。"; +"Notify me about pinned viewers" = "通知我关于置顶查看者的动态"; +"A heads-up when a pinned viewer sees or likes your story" = "当置顶查看者查看或点赞你的快拍时提醒你"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "当置顶查看者查看或点赞你的快拍时收到通知。可在查看者设置中置顶查看者并管理列表。"; +"Viewer list & pins" = "查看者列表和置顶"; +"Turn on the viewer list and manage pinned viewers" = "开启查看者列表并管理置顶查看者"; +"Turn on a custom viewer list to pin, search and sort viewers" = "开启自定义查看者列表以置顶、搜索和排序查看者"; +"Tick several to combine them." = "勾选多项即可组合使用。"; +"Select stories" = "选择快拍"; +"No archived stories yet. Post a story and it appears here." = "暂无已存档的快拍。发布一条快拍后它会显示在这里。"; +"Archiving is off. Enable it in the archive settings, then post a story." = "存档已关闭。请在存档设置中启用,然后发布一条快拍。"; +"Delete story?" = "删除快拍?"; +"This removes the archived photo or video and its viewers." = "这会移除已存档的照片或视频及其查看者。"; +"Delete all stories?" = "删除全部快拍?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "移除此账户所有已存档的快拍及其查看者。此操作无法撤销。"; +"Delete %lu archived stories and their viewers?" = "删除 %lu 条已存档快拍及其查看者?"; +"Pinned viewer saw your story" = "置顶查看者查看了你的快拍"; +"Pinned viewer liked your story" = "置顶查看者点赞了你的快拍"; +"Pinned viewer reacted to your story" = "置顶查看者回应了你的快拍"; +"Pinned viewers on your story" = "你快拍上的置顶查看者"; +"%lu pinned viewers just saw, liked or reacted" = "%lu 位置顶查看者刚刚查看、点赞或回应"; +"A pinned viewer" = "一位置顶查看者"; +"On each launch" = "每次启动时"; diff --git a/src/Localization/Resources/zh-Hant.lproj/Localizable.strings b/src/Localization/Resources/zh-Hant.lproj/Localizable.strings new file mode 100644 index 0000000..d011626 --- /dev/null +++ b/src/Localization/Resources/zh-Hant.lproj/Localizable.strings @@ -0,0 +1,3013 @@ +/* + * RyukGram — Localizable.strings (English source of truth) + * ------------------------------------------------------------------------- + * + * Every user-facing string in RyukGram goes through the macro + * RYGLocalized(@"English text here") + * in the Objective-C source. The argument is BOTH the lookup key and the + * English fallback, so if a translation is missing the user still sees + * clean English — nothing ever breaks. + * + * + * HOW TO ADD A NEW LANGUAGE + * ------------------------------------------------------------------------- + * + * 1. Copy this file into a new folder named after the language code: + * src/Localization/Resources/.lproj/Localizable.strings + * e.g. ar.lproj (Arabic) + * es.lproj (Spanish) + * fr.lproj (French) + * 2. Translate the RIGHT-hand side of every `"key" = "value";` line. + * Do NOT touch the left-hand side — that is the lookup key and must + * stay identical to the English version, otherwise the app will never + * find your translation. + * 3. Keep every format specifier (%@, %lu, %d, %lld, %1$@, …) exactly + * as-is, in the same order. If you need to reorder them, switch to + * positional specifiers (%1$@ %2$lu). + * 4. Keep embedded quotes escaped with a backslash: \" — and newlines + * as \n. + * 5. Open a pull request at https://github.com/faroukbmiled/RyukGram/pulls + * so we can ship the language in the next release. + * + * + * HOW TO ADD A NEW STRING IN CODE + * ------------------------------------------------------------------------- + * + * Just wrap the English text with RYGLocalized(...) in the .m / .x / .xm + * file — the helper resolves to the English text automatically when no + * translation exists. Then add the same English text as BOTH the key and + * the value inside the matching section below, e.g. + * + * "Download all items" = "Download all items"; + * + * Translators copy that line into their own .lproj and translate only the + * right-hand side. + * + * + * FILE FORMAT NOTES + * ------------------------------------------------------------------------- + * + * - UTF-8, LF line endings. + * - Slash-star block comments and double-slash line comments both work. + * - DO NOT nest one slash-star block comment inside another — the + * parser will close the outer block at the first inner close marker + * and every lookup in the file will silently fail. + * - Keys and values are both quoted; every line ends with a semicolon. + */ + +////////////////////////////////////////////////////////////////////////////// +// CHROME — TOP BAR, LANGUAGE PICKER, FIRST-RUN // +// Shown on the root Settings screen: title, search bar, the globe language // +// menu, and the one-time welcome alert. These use dotted keys (settings.*) // +// and are hand-authored rather than extracted from English source. // +////////////////////////////////////////////////////////////////////////////// + +"settings.firstrun.message" = "未來:在個人頁面右上角的三條線上長按,即可重新開啟 RyukGram 設定。"; +"settings.firstrun.ok" = "我了解了!"; +"settings.firstrun.title" = "RyukGram 設定資訊"; +"settings.language.english_only" = "RyukGram 目前僅內建英文。其他語言已接好接線等待翻譯 — 請依 README 的簡短指南協助翻譯。"; +"settings.language.help_translate" = "協助翻譯"; +"settings.language.system" = "系統預設"; +"settings.language.title" = "語言"; +"settings.language.restart.message" = "設定已更新。請重新啟動 Instagram,讓應用其他地方的選單、按鈕和提示也採用新語言。"; +"settings.language.restart.title" = "重新啟動以全面套用"; +"settings.language.available" = "可用"; +"settings.results.many" = "%lu 筆結果"; +"settings.results.one" = "%lu 筆結果"; +"settings.search.placeholder" = "搜尋設定"; +"settings.title" = "RyukGram 設定"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL // +// Settings → General tab // +////////////////////////////////////////////////////////////////////////////// + +"Action button icon" = "操作按鈕圖示"; +"Adds a copy option to the comment long-press menu" = "在留言長按選單中新增複製選項"; +"Adds a download button next to share/save on the reels audio page" = "在 Reels 音訊頁的分享/收藏旁新增下載按鈕"; +"Adds download, copy and expand options to GIF and image comments" = "為 GIF 與圖片留言新增下載、複製與展開選項"; +"Allow video in photo sticker" = "相片貼圖允許影片"; +"Alternate icons are not supported" = "不支援替代圖示"; +"Anonymous live viewing" = "匿名觀看直播"; +"App Icon" = "應用程式圖示"; +"Audio page" = "音訊頁"; +"Auto-reveals sensitive media" = "自動顯示敏感內容"; +"Block surveys" = "封鎖問卷調查"; +"Blocks the viewer-count heartbeat so the broadcaster doesn't see you — you also won't see the viewer count" = "封鎖觀眾數心跳,讓直播主看不到你 — 你也看不到觀眾數"; +"Browser" = "瀏覽器"; +"Change the app icon from the bundled icons" = "從內建圖示中變更應用程式圖示"; +"Choose Icon" = "選擇圖示"; +"Choose which surfaces hide ads" = "選擇要在哪些介面隱藏廣告"; +"Comments" = "留言"; +"Commerce carousels in comments and shoppable CTAs on reels" = "留言中的商品輪播與連續短片上的購物 CTA"; +"Copy comment text" = "複製留言文字"; +"Copy description" = "複製描述"; +"Long press a caption to copy its text" = "長按說明文字即可複製其內容"; +"Custom sticker colors" = "自訂貼圖色彩"; +"Custom colors aren't supported for this sticker" = "此貼圖不支援自訂色彩"; +"Date format" = "日期格式"; +"Disable app haptics" = "關閉應用觸覺反饋"; +"Disables haptics/vibrations within the app" = "關閉應用內的觸覺/震動反饋"; +"Disables liquid glass for accounts that have it enabled by default. Overrides the options above" = "為預設啟用液態玻璃的帳號關閉該效果。優先於上方選項"; +"Do not save recent searches" = "不儲存最近搜尋紀錄"; +"Download GIF & image comments" = "下載 GIF 與圖片留言"; +"Download image" = "下載圖片"; +"Embed domain" = "嵌入網域"; +"Embed domain: %@" = "嵌入網域:%@"; +"Enable liquid glass buttons" = "啟用液態玻璃按鈕"; +"Enable liquid glass surfaces" = "啟用液態玻璃介面"; +"Enable teen app icons" = "啟用青少年應用程式圖示"; +"Enables experimental liquid glass buttons" = "啟用實驗性液態玻璃按鈕"; +"Enables liquid glass tab bar, floating navigation, and other UI elements" = "啟用液態玻璃標籤列、浮動導航及其他介面元素"; +"End" = "結束"; +"Experimental features" = "實驗性功能"; +"Explore & search" = "探索與搜尋"; +"Failed to change icon" = "變更圖示失敗"; +"Fixed" = "固定"; +"Fixed prevents shrinking. Hide makes it disappear when scrolling down" = "固定可防止縮小。隱藏可在向下滾動時讓其消失"; +"Focus/distractions" = "專注/分心"; +"Force liquid glass off" = "強制關閉液態玻璃"; +"Force progressive blur" = "強制漸進模糊"; +"General" = "一般"; +"Gradient color" = "漸層色"; +"Hide ads" = "隱藏廣告"; +"Hide explore posts grid" = "隱藏探索貼文網格"; +"Hide friends map" = "隱藏好友地圖"; +"Hide Meta AI" = "隱藏 Meta AI"; +"Hide metrics" = "隱藏指標"; +"Hide notes tray" = "隱藏筆記托盤"; +"Hide on scroll" = "滾動時隱藏"; +"Hide TestFlight popup" = "隱藏 TestFlight 彈窗"; +"Hide trending searches" = "隱藏熱門搜尋"; +"Hide UI on capture" = "錄影/截圖時隱藏 UI"; +"Removes suggested accounts to follow outside the feed" = "移除動態以外的推薦追蹤帳號"; +"Hides like/comment/share counts on posts and reels" = "隱藏貼文和短片的喜歡/留言/分享數"; +"Removes the friends map icon from the notes tray" = "從記事列移除好友地圖圖示"; +"Removes the suggested posts grid on the explore tab" = "移除探索頁的推薦貼文格狀排列"; +"Strips the Meta AI buttons and entry points from the app" = "移除應用程式中的 Meta AI 按鈕與入口"; +"Hides the notes tray in the DM inbox" = "隱藏私訊收件匣中的筆記托盤"; +"Removes suggested broadcast channels from your inbox" = "從收件匣移除推薦的廣播頻道"; +"Hide DM search suggestions" = "隱藏私訊搜尋建議"; +"Removes suggested accounts and channels from direct message search" = "從私訊搜尋中移除建議的帳號和頻道"; +"Removes trending searches under the explore search bar" = "移除探索搜尋列下方的熱門搜尋"; +"Hold down on the Instagram logo to change the app icon" = "長按 Instagram 標誌以更換應用程式圖示"; +"Keeps the iOS 26 scroll-edge blur visible instead of letting it fade out" = "保持 iOS 26 捲動邊緣模糊可見,而非讓它淡出"; +"Lets the photo sticker picker show videos too, not just photos" = "讓相片貼圖選擇器也顯示影片,不只是相片"; +"Liquid glass tab bar" = "液態玻璃標籤列"; +"Live" = "直播"; +"Hold the eyedropper in stories to pick an exact text color" = "在限時動態中長按滴管以選取精確的文字顏色"; +"Long-press the color wheel in sticker editors to pick any solid or gradient color" = "長按貼圖編輯器中的色彩輪盤,即可選擇任意純色或漸層色"; +"Long-press the heart button in a live to hide or show the comments" = "在直播中長按愛心按鈕以隱藏或顯示留言"; +"Long-press the search tab to open a copied Instagram link" = "長按搜尋分頁以開啟複製的 Instagram 連結"; +"Master switch. When off, all per-surface toggles below are ignored." = "總開關。關閉時,下方所有個別介面的開關都會被忽略。"; +"No suggested chats" = "無建議聊天"; +"No suggested users" = "無建議用戶"; +"Notes" = "筆記"; +"Open app icon picker" = "開啟應用程式圖示選擇器"; +"Open link from clipboard" = "從剪貼簿開啟連結"; +"Open links in external browser" = "在外部瀏覽器開啟連結"; +"Opens links in Safari instead of Instagram's in-app browser" = "在 Safari 而非 Instagram 內建瀏覽器開啟連結"; +"Privacy" = "隱私"; +"Removes ads across enabled surfaces" = "在已啟用的介面移除廣告"; +"Removes igsh, utm_source, and other tracking parameters from shared links" = "移除分享連結中的 igsh、utm_source 及其他追蹤參數"; +"Removes Instagram tracking wrappers (l.instagram.com) and UTM/fbclid params from URLs" = "移除 Instagram 追蹤包裝器(l.instagram.com)及 URL 中的 UTM/fbclid 參數"; +"Replace domain in shared links" = "替換分享連結中的網域"; +"Replace IG's relative timestamps (\"3d ago\") with a custom format. Toggle which surfaces it applies to inside the picker." = "將 IG 的相對時間戳記(\"3d ago\")替換為自訂格式。可在選擇器中切換套用範圍。"; +"Rewrites copied/shared links to use an embed-friendly domain for previews in Discord, Telegram, etc." = "重寫複製/分享的連結,使用適合 Discord、Telegram 等預覽的嵌入友好網域"; +"Stops search bars from saving your recent searches" = "阻止搜尋列儲存你的最近搜尋記錄"; +"Selected" = "已選擇"; +"Sharing" = "分享"; +"Shopping" = "購物"; +"Skip sensitive content covers" = "略過敏感內容遮罩"; +"Solid color" = "純色"; +"Sponsored posts in main, contextual, video, and chaining feeds" = "主動態、情境、影片與串接動態中的贊助貼文"; +"Sponsored posts on the explore grid" = "探索格狀畫面中的贊助貼文"; +"Stops Instagram's in-app surveys and feedback prompts" = "阻擋 Instagram 應用程式內的問卷調查與意見回饋提示"; +"Sponsored reels in the sundial feed" = "日晷動態中的贊助連續短片"; +"Start" = "起始"; +"Story ads and sponsored entries in the story tray" = "限時動態列中的廣告與贊助項目"; +"Stat pills on the posts and reels in search and explore. Open Card details to pick which stats show, reorder them, then apply." = "在搜尋與探索的貼文和 Reels 上顯示統計標籤。開啟卡片詳情選擇顯示哪些統計、重新排序後套用。"; +"Strip tracking from links" = "移除連結中的追蹤"; +"Strip tracking params" = "移除追蹤參數"; +"Suppresses the \"It's time to update Instagram Beta\" nag" = "抑制「It's time to update Instagram Beta」提示"; +"Tap to apply" = "點擊以套用"; +"The selected icon will be saved and shown here the next time you open this page." = "所選圖示將會儲存,並於下次開啟此頁面時顯示於此。"; +"Toggle live comments" = "切換直播留言"; +"Use detailed color picker" = "使用詳細色彩選擇器"; +"Used across feed, stories, reels, and DMs." = "用於動態、限動、Reels 和私訊"; + +////////////////////////////////////////////////////////////////////////////// +// DATE FORMAT // +// Settings → Date format tab // +////////////////////////////////////////////////////////////////////////////// + +"%ld day ago" = "%ld 天前"; +"%ld days ago" = "%ld 天前"; +"%ld hour ago" = "%ld 小時前"; +"%ld hours ago" = "%ld 小時前"; +"%ld minute ago" = "%ld 分鐘前"; +"%ld minutes ago" = "%ld 分鐘前"; +"%ld week ago" = "%ld 週前"; +"%ld weeks ago" = "%ld 週前"; +"%ldd" = "%ld天"; +"%ldh" = "%ld時"; +"%ldm" = "%ld分"; +"%ldw" = "%ld週"; +"Always ask" = "總是詢問"; +"Balanced" = "平衡"; +"Block all" = "全部封鎖"; +"Block selected" = "封鎖選取項目"; +"Button" = "按鈕"; +"Date format — %@" = "日期格式 — %@"; +"Default" = "預設"; +"Disabled" = "停用"; +"Download and share" = "下載並分享"; +"Download to Photos" = "下載至相簿"; +"Save with music" = "儲存(含音樂)"; +"Gallery with music" = "存入圖庫(含音樂)"; +"Save image (no music)" = "儲存圖片(無音樂)"; +"Gallery image (no music)" = "存入圖庫(無音樂)"; +"Photo with music" = "帶音樂的照片"; +"Enabled" = "啟用"; +"Expand" = "展開"; +"Explore" = "探索"; +"Fast" = "快速"; +"Feed" = "動態消息"; +"Feed posts" = "動態貼文"; +"High" = "高"; +"Inbox" = "收件箱"; +"just now" = "剛剛"; +"Low" = "低"; +"Max" = "最大"; +"Medium" = "中等"; +"Mute/Unmute" = "靜音/取消靜音"; +"Notes, comments, stories" = "筆記、留言、限時動態"; +"now" = "剛剛"; +"Open menu" = "打開選單"; +"Pause/Play" = "暫停/播放"; +"Profile" = "個人檔案"; +"Quality" = "畫質"; +"Reels" = "短片"; +"Requires restart" = "需要重新啟動"; +"Save to Photos" = "儲存到相簿"; +"Share sheet" = "分享表單"; +"Standard" = "標準"; +"Toggle" = "切換"; + +////////////////////////////////////////////////////////////////////////////// +// FEED // +// Settings → Feed tab // +////////////////////////////////////////////////////////////////////////////// + +"Grid feed" = "網格動態"; +"Browse your home feed as a grid of posts" = "以貼文網格瀏覽你的主頁動態"; +"Hide stories in grid" = "隱藏網格中的限時動態"; +"Taller cells" = "更高的圖塊"; +"Portrait tiles instead of squares" = "直式圖塊,取代方形"; +"Open post" = "開啟貼文"; +"View profile" = "查看個人檔案"; +"Like" = "喜歡"; +"Liked" = "已喜歡"; +"Unlike" = "取消喜歡"; +"Unliked" = "已取消喜歡"; +"Followed" = "已追蹤"; +"Unfollowed" = "已取消追蹤"; +"Couldn't update like" = "無法更新喜歡狀態"; +"Couldn't update follow" = "無法更新追蹤狀態"; +"Follow status" = "追蹤狀態"; +"Shares" = "分享數"; +"Relative" = "相對"; +"Date and time" = "日期和時間"; +"You're all caught up" = "你已看完所有內容"; +"Replaces the home feed with a grid of posts. Switching to Instagram's own feed keeps the feature on and hands the feed straight back. Pinch to change columns, tap a post to open it. The For You / Following switch stays in sync with Main feed." = "用貼文網格取代主頁動態。切換到 Instagram 動態不會關閉此功能,並會立即把動態交還。雙指捏合更改欄數,點按貼文即可開啟。為你推薦 / 追蹤中的切換與主動態保持同步。"; +"Switch button" = "切換按鈕"; +"Hold the heart button" = "長按愛心按鈕"; +"Floating button" = "浮動按鈕"; +"How to switch" = "如何切換"; +"Hold the heart in Instagram's header" = "長按 Instagram 頂部的愛心"; +"A small round button on the feed" = "動態上的小圓形按鈕"; +"Button position" = "按鈕位置"; +"Drag the button where you want it. The dimmed strips are Instagram's header and tab bar." = "把按鈕拖到你想要的位置。變暗的條帶是 Instagram 的頂部列和標籤列。"; +"Switches between the grid and Instagram's feed without turning the grid off. Off leaves the home bar shortcut as the only way." = "在不關閉網格的情況下切換網格與 Instagram 動態。關閉後只能用主頁列捷徑。"; +"The button never sits under the header or the tab bar. Hold it on the feed to come back here." = "按鈕絕不會位於頂部列或標籤列下方。在動態中長按按鈕即可回到這裡。"; +"Live preview" = "即時預覽"; +"Columns" = "欄數"; +"Post info" = "貼文資訊"; +"Reorder and toggle stats on each tile" = "重新排序並切換每個圖塊上的統計"; +"Info on each post" = "每則貼文上的資訊"; +"Toggle each item on or off. Drag the ≡ handle to reorder how they stack on the tile." = "開啟或關閉每個項目。拖曳 ≡ 控點可重新排列它們在圖塊上的堆疊順序。"; +"Show avatar" = "顯示頭像"; +"Media type badge" = "媒體類型徽章"; +"Restores the default post info, order and options for the grid feed." = "還原網格動態的預設貼文資訊、順序與選項。"; +"Views" = "觀看數"; +"Action button" = "動作按鈕"; +"Adds 'Profile picture' to story tray long-press menus" = "在限時動態長按選單中新增「大頭貼照」"; +"Adds a RyukGram action button under each feed post with download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "在每則動態消息貼文下方新增 RyukGram 動作按鈕,包含下載/分享/複製/展開/轉貼選項。預設點擊會開啟選單;可於下方更改點擊行為。"; +"Choose Instagram's default feed or force the Following feed" = "選擇 Instagram 預設動態或強制使用「追蹤中」動態"; +"Main feed" = "主要動態"; +"Controls when and how the feed refreshes. Background refresh occurs when returning to the app after ~10 minutes. Home button refresh occurs when tapping the Home tab while already on it." = "控制動態消息的刷新時間與方式。背景刷新會在約 10 分鐘後返回應用時執行。首頁按鈕刷新會在已在首頁標籤時點擊該標籤執行。"; +"Confirm feed refresh" = "確認動態重新整理"; +"Shows an alert before a pull-to-refresh reloads the feed" = "下拉重新整理動態前顯示警告"; +"Refresh stories only" = "僅重新整理限時動態"; +"Pull-to-refresh reloads the stories tray without refreshing the feed" = "下拉重新整理只會重新載入限時動態列,不會重新整理動態"; +"Refresh feed?" = "重新整理動態?"; +"Default tap action" = "預設點擊動作"; +"Disable background refresh" = "停用背景刷新"; +"Disable home button refresh" = "停用首頁按鈕刷新"; +"Disable home button scroll" = "停用首頁按鈕滾動"; +"Disable video autoplay" = "停用影片自動播放"; +"Hide" = "隱藏"; +"Hide entire feed" = "隱藏整個動態消息"; +"Hide repost button" = "隱藏轉貼按鈕"; +"Hide stories tray" = "隱藏限時動態列"; +"Hide suggested stories" = "隱藏建議的限時動態"; +"Hide story highlights" = "隱藏限時動態精選"; +"Removes resurfaced highlights from the stories tray in feed" = "移除動態消息限時動態列中重新出現的精選"; +"Hides suggested accounts" = "隱藏建議帳號"; +"Hides suggested reels" = "隱藏建議短片"; +"Hides suggested threads posts" = "隱藏建議的 Threads 貼文"; +"Hides the repost button on feed posts" = "隱藏動態消息貼文上的轉貼按鈕"; +"Hides the story tray at the top" = "隱藏頂部限時動態列"; +"Inserts a button row below like/comment/share on each post" = "在每則貼文的讚/留言/分享下方插入按鈕列"; +"Long press on media to expand in full-screen viewer" = "長按媒體以在全螢幕檢視器中展開"; +"Start media muted" = "媒體靜音啟動"; +"Expanded videos open with sound off" = "展開的影片以靜音方式開啟"; +"Enhanced media resolution" = "強化媒體解析度"; +"Media saving" = "媒體儲存"; +"Spoof device profile so IG serves higher-quality images" = "偽裝裝置設定讓 IG 提供更高品質的圖片"; +"Media" = "媒體"; +"Media zoom" = "媒體縮放"; +"No suggested for you" = "沒有為您推薦"; +"No suggested posts" = "沒有推薦的貼文"; +"No suggested reels" = "沒有推薦的短片"; +"No suggested threads" = "沒有推薦的串列"; +"Prevents feed from reloading when returning from background" = "防止從背景返回時重新載入動態消息"; +"Prevents videos from playing automatically" = "防止影片自動播放"; +"Refresh" = "重新整理"; +"Removes all content from your home feed" = "移除主頁動態中的所有內容"; +"Removes suggested accounts from the stories tray" = "從限時動態列移除推薦帳號"; +"Removes suggested posts" = "移除推薦貼文"; +"Scroll to top without refreshing when tapping Home" = "點擊首頁時捲動至頂端但不重新整理"; +"Show action button" = "顯示操作按鈕"; +"Show date" = "顯示日期"; +"Stories tray" = "限時動態列"; +"Tapping Home does nothing when already on feed" = "已在動態頁時點擊首頁不執行任何操作"; +"Tray long-press actions" = "限時動態列長按操作"; +"Composer doesn't accept GIFs" = "留言編輯器不接受 GIF"; +"Copy GIF link" = "複製 GIF 連結"; +"Copy image link" = "複製圖片連結"; +"Custom GIF in comments" = "留言中自訂 GIF"; +"Favorite GIFs" = "收藏 GIF"; +"Long-press a GIF in the picker to pin it — favorites show first" = "在選擇器中長按 GIF 即可置頂 — 收藏的 GIF 優先顯示"; +"Added to favorites" = "已加入收藏"; +"Removed from favorites" = "已從收藏中移除"; +"Favorite GIF unavailable" = "收藏的 GIF 無法使用"; +"This GIF may have been removed. Long-press it to unfavorite." = "此 GIF 可能已被移除。長按即可取消收藏。"; +"Failed to build GIF model" = "無法建立 GIF 模型"; +"GIF link copied" = "已複製 GIF 連結"; +"Image" = "圖片"; +"Image link copied" = "已複製圖片連結"; +"Invalid Giphy URL" = "無效的 Giphy 連結"; +"Long-press the GIF button to paste any Giphy URL" = "長按 GIF 按鈕貼上任意 Giphy 連結"; +"Paste Giphy Link" = "貼上 Giphy 連結"; +"Paste a giphy.com URL or media ID" = "貼上 giphy.com 網址或媒體 ID"; +"Send" = "傳送"; + +////////////////////////////////////////////////////////////////////////////// +// REELS // +// Settings → Reels tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a RyukGram action button above the reel sidebar with view-cover/download/share/copy/expand/repost entries. Tap opens the menu by default; change the tap behavior below." = "在短片側邊欄上方新增 RyukGram 操作按鈕,包含觀看封面/下載/分享/複製/展開/轉貼項目。預設點擊開啟選單;可在下方更改點擊行為。"; +"Always show progress scrubber" = "始終顯示進度條"; +"Auto-scroll reels" = "自動捲動短片"; +"Speed, seek and auto-scroll controls" = "速度、快轉和自動捲動控制"; +"Enabled controls appear when you hold the ⋯ or audio button on a reel." = "在連續短片上長按 ⋯ 或音訊按鈕時會顯示已啟用的控制項。"; +"Seek controls" = "快轉控制"; +"Auto-scroll control" = "自動捲動控制"; +"Seek" = "快轉"; +"Custom seek step" = "自訂快轉間隔"; +"Enter the number of seconds to skip" = "輸入要跳過的秒數"; +"Set what a tap on a reel does" = "設定輕點 reel 時的操作"; +"Confirm reel refresh" = "確認短片重新整理"; +"Custom speed" = "自訂速度"; +"Disable auto-unmuting reels" = "停用短片自動取消靜音"; +"Disable scrolling reels" = "停用短片捲動"; +"Disable tab button refresh" = "停用分頁按鈕重新整理"; +"Doom scrolling limit" = "限制無止盡捲動"; +"e.g. 1.75" = "例如 1.75"; +"Enter a value between 0.5 and 2.0" = "請輸入介於 0.5 到 2.0 之間的數值"; +"Keeps the progress bar visible on every reel" = "在每個 reel 上持續顯示進度列"; +"Hide \"Made with Edits\" badge" = "隱藏\"Made with Edits\"徽章"; +"Hide friends avatars" = "隱藏好友頭像"; +"Hide reels header" = "隱藏短片標題列"; +"Hide social context overlay" = "隱藏社交內容浮動覆蓋層"; +"Hides the avatar bubbles next to the Friends tab in reels" = "隱藏 Reels 中好友分頁旁的頭像氣泡"; +"Hides the Edits app promo pill on reels" = "在 Reels 中隱藏 Edits 應用程式推廣膠囊"; +"Hides the floating overlay showing who reposted or commented on reels" = "隱藏 Reels 上顯示誰轉發或留言的浮動覆蓋層"; +"Hides the repost button on the reels sidebar" = "隱藏短片側邊欄的轉貼按鈕"; +"Drops the top bar while you watch reels" = "觀看 reels 時隱藏頂部列"; +"Hiding" = "隱藏"; +"IG default" = "IG 預設"; +"Limits" = "限制"; +"Caps how many reels you can scroll in a row and blocks the refresh" = "限制連續滑動的 reels 數量並阻止重新整理"; +"Only loads %@ %@" = "只載入 %@ %@"; +"Places a button above the like/comment/share column on each reel" = "在每個短片的按讚/留言/分享欄上方放置一個按鈕"; +"Playback speed" = "播放速度"; +"Prevent doom scrolling" = "防止無止盡捲動"; +"Engagement filter" = "互動篩選"; +"Hide reels below a like, comment, view or repost count" = "隱藏讚數、留言、觀看或轉發低於門檻的 Reels"; +"Hides reels that don't reach every minimum you set. Reels whose counts are hidden by the author pass through unless you hide them too." = "隱藏未達到你設定的每個最低值的 Reels。作者隱藏數據的 Reels 仍會顯示,除非你也選擇隱藏。"; +"Filter reels by engagement" = "依互動篩選 Reels"; +"Hide reels with hidden stats" = "隱藏數據不公開的 Reels"; +"Only filter the Reels tab" = "僅篩選 Reels 分頁"; +"Reels you open from a post, profile or share are never filtered" = "從貼文、個人檔案或分享開啟的 Reels 不會被篩選"; +"Minimums" = "最低值"; +"Minimum likes" = "最低讚數"; +"Minimum comments" = "最低留言數"; +"Minimum views" = "最低觀看數"; +"Minimum reposts" = "最低轉發數"; +"Reels below this count are hidden. 0 turns this limit off." = "低於此數的 Reels 會被隱藏。0 代表關閉此限制。"; +"Turns the filter off and clears every minimum." = "關閉篩選並清除所有最低值。"; +"Locks a reel in place so it never scrolls to the next one" = "將 reel 鎖定在原位,永不滑到下一個"; +"Keeps reels from unmuting when you hit a volume or ringer key" = "按下音量鍵或響鈴鍵時不讓 reels 取消靜音"; +"RyukGram" = "RyukGram"; +"Confirms before the reels feed refreshes" = "重新整理 reels 動態前請你確認"; +"Shows buttons to reveal and auto-fill the password on locked reels" = "顯示按鈕以揭露並自動填入鎖定短片的密碼"; +"Same as general format" = "與一般格式相同"; +"Shows the repost date on the \"reposted this reel\" header." = "在「轉發了這個 Reel」標題旁顯示轉發日期。"; +"Reposts" = "重新發布"; +"Swipe a reel left to open the author's profile" = "向左滑動短片以開啟作者的個人檔案"; +"Swipe left to profile" = "向左滑動開啟個人檔案"; +"Tap Controls" = "點擊控制"; +"Tap to mute on photo reels" = "點擊圖片短片以靜音"; +"Tapping the Reels tab while on reels does nothing" = "在短片頁面點擊短片標籤無反應"; +"Unlock password-locked reels" = "解鎖密碼保護的短片"; +"When pause mode is on, tap on photo reels toggles audio instead of the native pause gesture" = "啟用暫停模式時,點擊圖片短片會切換音訊,而非原生的暫停手勢"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE // +// Settings → Profile tab // +////////////////////////////////////////////////////////////////////////////// + +"Adds a button to filter & sort any followers/following list. Resets when you leave." = "新增一個按鈕來篩選與排序任何粉絲/追蹤中清單。離開時會重設。"; +"Adds a view option to the highlight long-press menu to open the cover in full-screen" = "在精選長按選單新增檢視選項,可全螢幕開啟封面"; +"Applying restarts Instagram to load your changes." = "套用會重新啟動 Instagram 以載入你的變更。"; +"Card details" = "卡片詳情"; +"Comment count" = "留言數"; +"Copy note on long press" = "長按複製備註"; +"Extra stats shown on each post and reel card in profile grids — pick which, reorder them, then apply." = "在個人檔案格線中每個貼文和 Reels 卡片上顯示的額外統計 — 選擇需要的項目,重新排序後再套用。"; +"Fake follower count" = "偽造粉絲數"; +"Fake following count" = "偽造追蹤數"; +"Fake post count" = "偽造貼文數"; +"Fake profile stats" = "偽造個人檔案數據"; +"Fake verified badge" = "偽造認證徽章"; +"Fetch missing counts" = "獲取缺失的計數"; +"Filter & sort lists" = "篩選與排序清單"; +"Follow indicator" = "追蹤指示器"; +"Follower & following lists" = "粉絲與追蹤中清單"; +"Follower count" = "粉絲數"; +"Following count" = "追蹤數"; +"Like count" = "讚數"; +"Long press a profile picture to open it in full-screen with zoom, share, and save" = "長按個人檔案圖片可全螢幕開啟,並支援縮放、分享與儲存"; +"Long press the note bubble on a profile to copy the text" = "長按個人檔案上的備註氣泡以複製文字"; +"Long press to download directly (ignored when zoom is on)" = "長按直接下載(啟用縮放時忽略)"; +"Long-press gestures on profile elements — kept separate from the per-feature action buttons." = "個人檔案元素的長按手勢 — 與每項功能的操作按鈕分開維護。"; +"Master switch for all card stats. Fetch missing counts uses Instagram's API and may hit rate limits." = "所有卡片統計的總開關。獲取缺失的計數會使用 Instagram 的 API,可能觸發速率限制。"; +"Only affects your own profile header. Other users see the real numbers." = "僅影響你自己的個人檔案頁首。其他用戶看到的是真實數字。"; +"Post count" = "貼文數"; +"Profile card details" = "個人檔案卡片詳情"; +"Profile stats" = "個人檔案統計"; +"Repost count" = "轉發數"; +"Restores the default stats, order, and options for profile card details." = "還原個人檔案卡片詳情的預設統計、順序與選項。"; +"Restores the default stats, order, and options for search & explore card details." = "還原搜尋與探索卡片詳情的預設統計、順序與選項。"; +"Save profile picture" = "儲存個人檔案圖片"; +"Search & Explore" = "搜尋與探索"; +"Share count" = "分享數"; +"Short numbers" = "縮寫數字"; +"Show a checkmark next to your name on your own profile" = "在你自己的個人檔案名稱旁顯示打勾符號"; +"Show card details" = "顯示卡片詳情"; +"Show full follower count" = "顯示完整粉絲數"; +"Show full post count" = "顯示完整貼文數"; +"Show the custom number set below" = "顯示下方設定的自訂數字"; +"Show the exact number instead of a shortened one" = "顯示精確數字而非縮寫數字"; +"Shows whether the profile user follows you" = "顯示該用戶是否追蹤你"; +"Tap to set" = "點擊以設定"; +"Toggle each stat on or off. Drag the ≡ handle to reorder how they stack on the card." = "開啟或關閉每項統計。拖曳 ≡ 控點可重新排列它們在卡片上的堆疊順序。"; +"Upload date" = "發佈日期"; +"View count" = "觀看數"; +"View highlight cover" = "檢視精選封面"; +"Views, likes, comments, shares, reposts, date" = "觀看數、讚、留言、分享、轉發、日期"; +"Zoom profile photo" = "縮放個人檔案照片"; + +////////////////////////////////////////////////////////////////////////////// +// SAVING & DOWNLOADS // +// Settings → Saving tab // +////////////////////////////////////////////////////////////////////////////// + +"Active, queued, and finished downloads" = "進行中、佇列中與已完成的下載"; +"Auto-retry attempts" = "自動重試次數"; +"Auto-retry failed downloads" = "自動重試失敗的下載"; +"Confirm before download" = "下載前確認"; +"Deprecated. The RyukGram action button (configured per feature in Feed/Reels/Stories) is the new way to download media. Enable this master toggle only if you prefer the old multi-finger long-press directly on the media." = "已棄用。RyukGram 動作按鈕(在動態/短片/限時動態中依功能設定)是下載媒體的新方式。僅當你偏好舊版多指長按直接下載媒體時,才啟用此主開關。"; +"Don't pause downloads, encoding, or profile scans when you leave the app" = "離開 App 時不暫停下載、編碼或個人檔案掃描"; +"Download queue" = "下載佇列"; +"Downloads" = "下載"; +"Downloads with %@ %@" = "下載 %@ %@"; +"Enable long-press gesture" = "啟用長按手勢"; +"Finger count for long-press" = "長按所需手指數"; +"How many downloads run at once — extras wait in line and start as slots free up. Failed downloads retry automatically on network errors. Open the manager to watch, cancel, or retry downloads." = "同時進行的下載數量 — 多餘的會排隊等候,待有空檔時開始。失敗的下載在網路錯誤時會自動重試。開啟管理員可查看、取消或重試下載。"; +"Keep running in background" = "在背景持續執行"; +"Legacy long-press gesture" = "舊版長按手勢"; +"Long-press hold time" = "長按持續時間"; +"Master toggle for the deprecated gesture workflow (off by default)" = "已棄用手勢流程的主開關(預設關閉)"; +"Max simultaneous downloads" = "最大同時下載數"; +"Open download manager" = "開啟下載管理員"; +"Press finger(s) for %@ %@" = "按壓 %@ %@ 手指"; +"Retry automatically when a download drops on a network error" = "下載因網路錯誤中斷時自動重試"; +"Route saves into a custom album in Photos instead of the camera roll root" = "將儲存路徑導向專用相簿,而非相機膠卷根目錄"; +"Run up to %@ %@ at once" = "最多同時執行 %@ 個%@"; +"Save action" = "儲存動作"; +"Save to dedicated album" = "儲存至專屬相簿"; +"Show a confirmation dialog before starting a download" = "開始下載前顯示確認對話框"; +"Try %@ more %@ before giving up" = "放棄前再嘗試 %@ 次%@"; +"What happens after the gesture downloads" = "手勢下載後的動作"; +"When \"Save to dedicated album\" is on, downloads and share-sheet \"Save to Photos\" picks are routed into a named album in your Photos library. Tap \"Album name\" to change it." = "當「儲存至專屬相簿」開啟時,下載與分享頁的「儲存至照片」選擇會被導入你「照片」圖庫中的指定相簿。點一下「相簿名稱」即可變更。"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOAD QUEUE & MANAGER // +// Download queue settings + the in-app download manager: // +// active/queued/finished lists, concurrency, auto-retry, background. // +////////////////////////////////////////////////////////////////////////////// + +"%@ left" = "剩餘 %@"; +"%@ of %@" = "%1$@ / %2$@"; +"%@/s" = "%@/秒"; +"%dh" = "%d小時"; +"%dm" = "%d分"; +"%ds" = "%d秒"; +"%ld downloading" = "%ld 項下載中"; +"%ld still running — they'll be stopped. The files already saved are kept." = "%ld 項仍在進行,將被停止。已儲存的檔案會保留。"; +"%lu failed" = "%lu 個失敗"; +"%lu of %lu done" = "已完成 %lu / %lu"; +"%lu saved, %lu failed" = "已儲存 %lu 個,%lu 個失敗"; +"12 hours" = "12 小時"; +"1s" = "1秒"; +"24 hours" = "24 小時"; +"48 hours" = "48 小時"; +"Active" = "進行中"; +"Auto-retry" = "自動重試"; +"Clear completed" = "清除已完成"; +"Clear download history" = "清除下載紀錄"; +"Clear download history?" = "清除下載紀錄?"; +"Completed" = "已完成"; +"Don't keep" = "不保留"; +"Download history" = "下載紀錄"; +"Download settings" = "下載設定"; +"Downloading %lu items" = "正在下載 %lu 個項目"; +"Downloading…" = "正在下載…"; +"Empty the manager's list of past downloads" = "清空管理器中的過往下載列表"; +"Encoding %d%%" = "編碼中 %d%%"; +"Encoding…" = "編碼中…"; +"Extra downloads wait in line and start as slots free up." = "多餘的下載會排隊等候,待有空檔時開始。"; +"How long finished, failed and cancelled downloads stay in the manager after you close the app. The files themselves are never touched — only the list." = "關閉 App 後,已完成、失敗和已取消的下載在管理器中保留多久。檔案本身不會被更動,只清理列表。"; +"How long past downloads stay listed in the manager" = "過往下載在管理器中保留多久"; +"Keep history for" = "紀錄保留時間"; +"Media you download shows up here, with its progress and where it was saved." = "你下載的媒體會顯示在這裡,包括進度和儲存位置。"; +"No downloads yet" = "尚無下載"; +"Preview" = "預覽"; +"Queued" = "已排入佇列"; +"Redownload" = "重新下載"; +"Retry" = "重試"; +"Retrying…" = "正在重試…"; +"Stop" = "停止"; +"The files already saved are kept — this only empties the list." = "已儲存的檔案會保留,這裡只清空列表。"; +"Waiting for a free slot" = "等待空閒位置"; +"Waiting for connection…" = "正在等待連線…"; +"Waiting to retry" = "等待重試"; +"Waiting…" = "等待中…"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES // +// Settings → Stories tab // +////////////////////////////////////////////////////////////////////////////// + +"Arrange overlay buttons" = "排列疊加按鈕"; +"Overlay layout" = "疊加版面"; +"Drag to position the buttons" = "拖曳以放置按鈕"; +"Drag the buttons onto the story. The dimmed strip is the reply bar." = "將按鈕拖到限時動態上。變暗的區域是回覆列。"; +"Send message" = "傳送訊息"; + +"Pinned" = "已置頂"; +"Search viewers" = "搜尋查看者"; +"No matching viewers" = "無符合的查看者"; +"No viewers match these filters" = "沒有查看者符合這些篩選條件"; +"Unavailable" = "無法使用"; +"Default (recent first)" = "預設(最近優先)"; +"%lu viewers" = "%lu 位觀看者"; +"Viewer pinned" = "已置頂觀看者"; +"Viewer unpinned" = "已取消置頂觀看者"; +"Pin a viewer" = "置頂觀看者"; +"Pin order" = "置頂順序"; +"Pin this viewer?" = "置頂此觀看者?"; +"Filter, sort & pin viewers" = "篩選、排序和置頂觀看者"; +"Add by username, remove, reorder" = "依使用者名稱新增、移除、重新排序"; +"Pinned viewers (%lu)" = "已置頂觀看者 (%lu)"; +"Viewers list" = "觀看者列表"; +"Settings are saved and reused next time." = "設定會被儲存並在下次沿用。"; +"Tick several to combine them. Pinned viewers always stay on top and ignore these filters." = "勾選多個可組合使用。已置頂的觀看者一律顯示在最上方,並忽略這些篩選。"; +"Pinned viewers" = "已置頂觀看者"; +"Pin" = "置頂"; +"Replaces the 'who viewed my story' list with a searchable, filterable, sortable list. Long-press a viewer to pin them to the top. Switch back to the native list any time." = "將「誰看了我的限時動態」清單替換為可搜尋、篩選、排序的清單。長按查看者可將其置頂。隨時可切換回原生清單。"; +"Username or raw user PK. Pinned viewers always stay at the top of your story viewers list." = "使用者名稱或原始使用者 PK。已置頂的觀看者一律保持在你的限時動態觀看者列表頂端。"; + +"Adds a RyukGram action button next to the eye button on stories with download/share/copy/expand/repost/view-mentions entries. Tap opens the menu by default; change the tap behavior below." = "在限時動態的觀看按鈕旁新增 RyukGram 動作按鈕,包含下載/分享/複製/展開/轉發/查看提及等選項。預設點擊開啟選單;可在下方更改點擊行為。"; +"Adds a speaker button to the story overlay to unmute/mute audio. Also available in the 3-dot menu" = "在限時動態覆蓋層新增喇叭按鈕,可靜音/取消靜音音訊。此功能亦可在三點選單中使用"; +"Adds the eye button to story overlays. Off keeps seen blocking on without the button" = "在故事覆蓋層加入眼睛按鈕。關閉時仍保留已查看封鎖,只是不顯示按鈕"; +"Advance on story like" = "按讚後自動切換限時動態"; +"Advance on story reply" = "回覆後自動切換限時動態"; +"Advance when marking as seen" = "標記為已看後自動切換限時動態"; +"Audio" = "音訊"; +"Block all: all stories blocked — listed users are exceptions.\nBlock selected: only listed users are blocked — everything else is normal.\nBoth lists are saved independently." = "全部封鎖:封鎖所有限時動態 — 列表用戶為例外。\n選擇封鎖:僅封鎖列表用戶 — 其他正常。\n兩個列表獨立儲存。"; +"Blocking mode" = "封鎖模式"; +"Button = single-tap mark seen. Toggle = tap toggles story read receipts on/off (eye fills blue when on)" = "按鈕 = 單擊標記已查看。切換 = 點擊切換故事已讀回條開/關(開啟時眼睛填滿藍色)"; +"Marked-seen indicator" = "標記已看指示"; +"Remembers stories you marked as seen for 48 hours and hides or fills the eye button on them" = "記住你標記為已查看的故事 48 小時,並在這些故事上隱藏或填滿眼睛按鈕"; +"Hide eye button" = "隱藏眼睛按鈕"; +"Fill eye button green" = "眼睛按鈕填滿綠色"; +"Disable story seen receipt" = "停用故事已讀回條"; +"Enable story user list" = "啟用故事用戶列表"; +"Stops others from seeing that you viewed their story" = "讓他人看不到你已看過他們的限時動態"; +"Inserts a button next to the seen/eye button on story overlays" = "在故事覆蓋層的已查看/眼睛按鈕旁插入一個按鈕"; +"Keep stories visually seen locally" = "在本機保留限時動態為已觀看"; +"Liking a story automatically advances to the next one after a short delay" = "喜歡故事後短暫延遲自動跳到下一則"; +"Manage list" = "管理列表"; +"Manage list (%lu)" = "管理列表 (%lu)"; +"Manual seen button mode" = "手動已查看按鈕模式"; +"Mark seen on story like" = "喜歡故事時標記為已查看"; +"Mark seen on story reply" = "回覆故事時標記為已查看"; +"Marks a story as seen the moment you tap the heart, even with seen blocking on" = "點擊愛心時即標記故事為已查看,即使啟用已查看封鎖"; +"Marks a story as seen when you send a reply or emoji reaction, even with seen blocking on" = "發送回覆或表情反應時標記故事為已查看,即使啟用已查看封鎖"; +"Marks stories as seen locally (grey ring) while still blocking the seen receipt on the server" = "在本機標記限時動態為已觀看(灰圈),同時仍封鎖伺服器端的已讀回條"; +"Master toggle. When off, the list is ignored" = "主開關。關閉時忽略列表"; +"Playback" = "播放"; +"Search, sort, swipe to remove" = "搜尋、排序、滑動移除"; +"Seen receipts" = "已讀回條"; +"Sending a reply or emoji reaction automatically advances to the next story" = "發送回覆或表情反應後自動跳到下一則故事"; +"Adds a 'View mentions' entry to the action button menu and story 3-dot menu" = "在操作按鈕選單與限時動態三點選單新增「查看提及」項目"; +"Mentions overlay button" = "提及覆蓋按鈕"; +"Mentions count badge" = "提及數量徽章"; +"Adds a button next to the action/eye button on the story overlay. Only appears when the current story has mentions or shared posts/reels" = "在限時動態覆蓋層的操作/眼睛按鈕旁新增按鈕。僅在目前限時動態含有提及或分享貼文/短片時顯示"; +"Shows the number of unique mentioned accounts as a red badge on the overlay button" = "在覆蓋按鈕上以紅色徽章顯示被提及帳號的數量"; +"Hide stories midcards" = "隱藏限時動態中插卡"; +"Removes the Trending and Music promo cards from the stories tray" = "從限時動態列移除熱門與音樂推廣卡"; +"Stickers" = "貼圖"; +"Peek at poll/quiz/slider results before interacting — you can still tap to vote normally. Force legacy adds the Quiz and Reveal stickers back to the story composer." = "在互動前預覽投票/測驗/滑桿結果 — 仍可照常點擊投票。「強制顯示舊版」會將測驗與揭曉貼圖加回限動編輯器。"; +"Peek at poll/quiz/slider results on reels before interacting — you can still tap to vote normally." = "在 Reels 互動前預覽投票/測驗/滑桿結果 — 仍可照常點擊投票。"; +"Force legacy stickers in tray" = "強制顯示舊版貼圖"; +"Adds Quiz and Reveal stickers back to the picker" = "將測驗與揭曉貼圖加回貼圖選擇器"; +"Bypass Reveal sticker" = "略過揭曉貼圖"; +"Skip the DM-to-reveal step on stories with a Reveal sticker" = "略過向作者傳訊才能揭曉的步驟,直接觀看含揭曉貼圖的限動"; +"Show quiz answer" = "顯示測驗答案"; +"Circle the correct option on quiz stickers, or the leading option on polls" = "圈選測驗貼圖中的正確選項,或投票中得票最多的選項"; +"Show poll vote counts" = "顯示投票計數"; +"Show vote tallies on poll options and slider count/average before you vote" = "在投票前顯示投票選項的票數以及滑桿的平均/計數"; +"Stop story auto-advance" = "停止故事自動跳轉"; +"Stories" = "故事"; +"Stories won't auto-skip to the next one when the timer ends. Tap to advance manually" = "故事計時結束時不會自動跳到下一則。點擊手動前進"; +"Story audio toggle" = "故事音訊切換"; +"Story user list" = "故事用戶列表"; +"Tapping the eye button to mark a story as seen advances to the next story automatically" = "點擊眼睛按鈕標記故事為已查看後自動跳到下一則故事"; +"This will send a story view receipt." = "將會送出故事的已查看回條。"; +"View story mentions" = "查看故事提及"; +"Which stories get seen-receipt blocking" = "哪些故事會封鎖已讀回條"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — ACTIVITY NOTIFICATIONS // +// Settings → Activity notifications + the in-app activity log // +////////////////////////////////////////////////////////////////////////////// + +"Accurate active status" = "精確的活動狀態"; +"Activity log" = "活動記錄"; +"Loading…" = "載入中…"; +"Notify: %@ · Log: %@" = "通知:%@ · 記錄:%@"; +"Add by user ID" = "以使用者 ID 新增"; +"Add by thread ID" = "以對話 ID 新增"; +"Adding…" = "正在新增…"; +"Browse activity, grouped by person" = "按人分組瀏覽活動"; +"Clear activity log?" = "清空活動記錄?"; +"No activity yet.\nWhen someone reads your message or comes online, it shows up here." = "還沒有活動。\n當有人讀了你的訊息或上線時,會顯示在這裡。"; +"No one found. Check the spelling or try a different name." = "找不到任何人。請檢查拼字或換個名字試試。"; +"Notify about someone" = "關於某人的通知"; +"Open some chats first, or search a username above." = "先開啟一些聊天,或在上方搜尋使用者名稱。"; +"Pick what each person notifies you about" = "選擇每個人通知你的內容"; +"Recent in your DMs" = "私訊中的最近聯絡人"; +"Results" = "結果"; +"This removes all recorded activity on this device." = "這將刪除此裝置上記錄的所有活動。"; +"Active %ldd ago" = "%ldd 前活躍"; +"Active %ldh ago" = "%ldh 前活躍"; +"Active %ldm ago" = "%ldm 前活躍"; +"Activity notifications" = "活動通知"; +"Also track reads in group chats. Groups can be noisy" = "也追蹤群組聊天中的已讀。群組可能很吵"; +"Came online" = "已上線"; +"Customise notifications" = "自訂通知"; +"Everyone" = "所有人"; +"Muted" = "已靜音"; +"No one is customised yet. Hold someone in the activity log to choose what they notify." = "還沒有人被自訂。在活動記錄中長按某人以選擇通知內容。"; +"Online, offline, typing and read receipts, per person" = "按人設定在線、離線、正在輸入和已讀回執"; +"Per-person notifications" = "按人通知"; +"Enable activity" = "啟用活動"; +"Track who reads your messages, comes online, goes offline or types" = "記錄誰讀了你的訊息、上線、離線或正在輸入"; +"For everyone" = "對所有人"; +"For this person" = "對此人"; +"Log only" = "僅記錄"; +"Notify only" = "僅通知"; +"Notify + log" = "通知 + 記錄"; +"Log only records silently. Notify only pings you without keeping it. Notify + log does both." = "僅記錄會靜默保存。僅通知只提醒你但不保存。通知 + 記錄兩者都做。"; +"Presence" = "在線狀態"; +"Read your message" = "讀了你的訊息"; +"Refresh presence every 20s and drop Instagram's grace period, so the native green dot turns off the moment someone goes offline." = "每 20 秒重新整理一次在線狀態並取消 Instagram 的寬限期,這樣對方一離線綠點就會熄滅。"; +"Started typing" = "開始輸入"; +"Tap to change what they notify. Swipe to remove and fall back to the defaults." = "點按可變更通知內容。滑動可移除並恢復為預設。"; +"These override the defaults for this person." = "這些將覆蓋此人的預設設定。"; +"Went offline" = "已離線"; +"When someone becomes active" = "當有人變為活躍時"; +"When someone goes inactive" = "當有人變為不活躍時"; +"When someone opens a message you sent" = "當有人開啟你傳送的訊息時"; +"When someone starts typing to you" = "當有人開始向你輸入時"; +"is now active" = "現在活躍"; +"is typing…" = "正在輸入…"; +"went offline" = "已離線"; +"Online" = "線上"; +"Offline" = "離線"; +"Typing" = "正在輸入"; +"Filters" = "篩選"; +"Delete the selected records? This can't be undone." = "刪除所選記錄?此操作無法復原。"; +"Delete all records for the selected chats? This can't be undone." = "刪除所選聊天的全部記錄?此操作無法復原。"; + +"Adds the eye button to DM threads. Off keeps receipt blocking on without the button" = "在私訊串中加入眼睛按鈕。關閉時仍保留已讀回條封鎖,只是不顯示按鈕"; +"Auto mark seen on interact" = "互動時自動標記為已查看"; +"Auto mark seen on typing" = "輸入時自動標記為已查看"; +"Blocks the auto read receipt — mark seen happens only when you choose" = "封鎖自動已讀回條 — 只在你選擇時才標記為已查看"; +"Control when messages are marked as seen" = "控制訊息何時標記為已查看"; +"How the seen button behaves" = "已查看按鈕的行為方式"; +"Manually mark messages as seen" = "手動標記訊息為已讀"; +"Mark as seen?" = "標記為已查看?"; +"Mark as viewed?" = "標記為已觀看?"; +"Mark seen locally" = "本機標記為已讀"; +"Marks messages as seen when you reply, react or send media" = "當你回覆、回應或發送媒體時標記訊息為已讀"; +"Marks messages as seen when you start typing" = "當你開始輸入時標記訊息為已讀"; +"Opened chats look read on this device only. The eye button turns orange while the sender still has no read receipt" = "開啟的聊天僅在此裝置上顯示為已讀。在對方收到已讀回條前,眼睛按鈕會顯示為橘色"; +"Read receipt mode" = "已讀回條模式"; +"Read receipts" = "已讀回條"; +"Show seen button" = "顯示已查看按鈕"; +"This will send a read receipt for the latest messages." = "將會送出最新訊息的已讀回條。"; +"This will send a view receipt for the current message." = "將會送出目前訊息的已觀看回條。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — KEEP DELETED // +// Settings → Keep deleted messages tab // +////////////////////////////////////////////////////////////////////////////// + +"Activity" = "活動"; +"Adds a 'Download' option to the long-press menu on voice messages to save them as M4A audio" = "在語音訊息的長按選單中新增「下載」選項,以儲存為 M4A 音訊檔"; +"Allows typing and sending DMs longer than Instagram's limit" = "允許輸入和傳送超過 Instagram 限制的私訊"; +"Adds a 'Send File' option to the plus menu in DMs. Supported file types may be limited by Instagram" = "在私訊的加號選單中新增「傳送檔案」選項。支援的檔案類型可能受 Instagram 限制"; +"Adds an 'Audio File' option to the plus menu in DMs to send audio files as voice messages" = "在私訊的加號選單中新增「音訊檔案」選項,以語音訊息形式傳送音訊檔案"; +"Adds copy text, download GIF/audio to the note long-press menu" = "在備註的長按選單中新增複製文字、下載 GIF/音訊功能"; +"Block all: all chats blocked — listed chats are exceptions.\nBlock selected: only listed chats are blocked — everything else is normal.\nBoth lists are saved independently. Long-press a chat in the inbox to add or remove." = "全部封鎖:所有聊天封鎖 — 列出的聊天為例外。\n選擇封鎖:僅封鎖列出的聊天 — 其他皆正常。\n兩個列表獨立儲存。長按收件匣中的聊天以新增或移除。"; +"Block keep-deleted for excluded chats" = "對排除的聊天封鎖保留刪除訊息"; +"Block keep-deleted for unlisted chats" = "對未列出的聊天封鎖保留刪除訊息"; +"Bypass DM character limit" = "繞過私訊字元限制"; +"Chat list" = "聊天列表"; +"Confirmation dialog before clearing preserved messages" = "清除保留訊息前的確認對話框"; +"Copies note text directly on long press without opening the menu" = "長按直接複製備註文字,不開啟選單"; +"Copy text on hold" = "長按複製文字"; +"Adds Background, Text and Emoji buttons to the note editor" = "在備註編輯器中加入背景、文字和表情符號按鈕"; +"Custom note themes" = "自訂備註主題"; +"Disable vanish mode swipe" = "停用 Vanish 模式滑動手勢"; +"Disable typing status" = "停用輸入狀態"; +"Disable view-once limitations" = "停用一次觀看限制"; +"Download voice messages" = "下載語音訊息"; +"Enable chat list" = "啟用聊天列表"; +"Enable note theming" = "啟用備註主題功能"; +"Enables the notes theme picker" = "啟用備註主題選擇器"; +"Files" = "檔案"; +"Full last active date" = "完整最後活躍日期"; +"Hide reels blend button" = "隱藏 Reels 混合按鈕"; +"Hide send to group chat" = "隱藏傳送到群組聊天"; +"Pin recipients on long-press" = "長按以置頂收件者"; +"Long-press in the share sheet to pin a chat/user to the top" = "在分享面板中長按以將聊天/使用者置頂"; +"Long-press a recipient to pin or unpin. Pinned recipients render at the top." = "長按收件者以置頂或取消置頂。置頂的收件者顯示在頂部。"; +"Recipient pinned" = "收件者已置頂"; +"Recipient unpinned" = "已取消置頂"; +"Couldn't resolve recipient id" = "無法解析收件者 ID"; +"Hide video call button" = "隱藏視訊通話按鈕"; +"Hide voice call button" = "隱藏語音通話按鈕"; +"Hides the blend button in DMs" = "在私訊中隱藏混合按鈕"; +"Removes the create/send to group chat row when sharing to multiple recipients" = "分享給多位收件人時移除建立/傳送到群組聊天的選項"; +"Hides typing indicator from others" = "隱藏他人輸入指示器"; +"Indicate unsent messages" = "標示未送出訊息"; +"Keep deleted messages" = "保留已刪除訊息"; +"Turns view once messages into normal media you can loop and pause" = "將閱後即焚訊息變為可循環、可暫停的一般媒體"; +"Note actions" = "備註操作"; +"Preserves messages that others unsend" = "保留他人收回的訊息"; +"Keep my deleted messages" = "保留我刪除的訊息"; +"Also preserves messages you unsend yourself" = "也保留你自己收回的訊息"; +"Prevents accidental swipe-up activation of vanish mode" = "防止誤觸上滑啟用 Vanish 模式"; +"Quick list button in chats" = "聊天中的快速列表按鈕"; +"Removes the audio call button from DM thread header" = "從私訊頁首移除語音通話按鈕"; +"Removes the video call button from DM thread header" = "從私訊頁首移除視訊通話按鈕"; +"Replay visual messages without expiring. Toggle in the eye button menu, or as a standalone button when the eye button is disabled" = "重播視覺訊息且不會過期。可在眼睛按鈕選單切換,或當眼睛按鈕被禁用時作為獨立按鈕"; +"Search, sort, swipe to remove or toggle keep-deleted" = "搜尋、排序、滑動移除或切換保留已刪除"; +"Send audio as file" = "以檔案形式傳送音訊"; +"Send files (experimental)" = "傳送檔案(實驗性功能)"; +"File sending not available" = "檔案傳送不可用"; +"Show full date instead of \"Active 2h ago\"" = "顯示完整日期,取代 \"Active 2h ago\""; +"Shows a button in DM threads to add/remove chats from the list. Long-press for more options" = "在私訊頁顯示按鈕以新增/移除聊天至列表。長按可查看更多選項"; +"Shows a notification pill when a message is unsent" = "訊息撤回時顯示通知標籤"; +"Shows an \"Unsent\" label on preserved messages" = "在保留訊息上顯示 \"Unsent\" 標籤"; +"Unlimited replay of visual messages" = "視覺訊息無限重播"; +"Unsent message notification" = "訊息撤回通知"; +"Voice messages" = "語音訊息"; +"Warn before clearing on refresh" = "刷新時清除前先警告"; +"Which chats get read-receipt blocking" = "哪些聊天會被阻擋已讀回條"; +"⚠️ Pull-to-refresh in the DMs tab clears all preserved messages. Enable the warning below to get a confirmation dialog." = "⚠️ 私訊分頁下拉刷新會清除所有保留訊息。啟用以下警告可顯示確認對話框。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES — DELETED MESSAGES LOG // +// Settings → Messages → Deleted messages log + the in-app log UI // +////////////////////////////////////////////////////////////////////////////// + +"%@%lu deleted" = "%@%lu 已刪除"; +"%lu selected" = "已選 %lu 項"; +"Absolute date + time" = "絕對日期+時間"; +"Adjust the filters or clear the search to see more." = "調整篩選條件或清除搜尋以查看更多。"; +"All time" = "全部時間"; +"Browse, filter and search recorded messages" = "瀏覽、篩選並搜尋已記錄的訊息"; +"Captures unsent messages with their text or media" = "擷取被取消傳送的訊息及其文字或媒體"; +"Clear deleted-message log?" = "清除已刪除訊息紀錄?"; +"Clear from this user" = "清除此使用者紀錄"; +"Clear log" = "清除紀錄"; +"Clear log for this account" = "清除此帳號的紀錄"; +"Clear log for this user?" = "清除此使用者的紀錄?"; +"Clear media files" = "清除媒體檔案"; +"Clearing media keeps the records (text, sender, timestamp). Clearing the log removes everything for this account." = "清除媒體會保留紀錄(文字、寄件人、時間戳)。清除紀錄會刪除此帳號的所有內容。"; +"Close" = "關閉"; +"Content unavailable" = "內容無法使用"; +"Copied" = "已複製"; +"Copy URL" = "複製網址"; +"Date range" = "日期範圍"; +"Deleted messages" = "已刪除的訊息"; +"Deleted messages log" = "已刪除訊息紀錄"; +"Deleted: %@\n" = "刪除時間:%@\n"; +"Edit %lu" = "編輯 %lu"; +"Edit history" = "編輯紀錄"; +"Edited" = "已編輯"; +"Empty" = "空"; +"Enable deleted messages log" = "啟用已刪除訊息紀錄"; +"Enable Settings → Messages → Deleted messages log to start recording." = "啟用 設定 → 訊息 → 已刪除訊息紀錄 以開始記錄。"; +"GIF" = "GIF"; +"Hashtag" = "主題標籤"; +"IGTV" = "IGTV"; +"Kind: %@\n" = "類型:%@\n"; +"Last 30 days" = "最近 30 天"; +"Last 7 days" = "最近 7 天"; +"Link" = "連結"; +"Live location" = "即時位置"; +"Location" = "位置"; +"Logging is off" = "紀錄已關閉"; +"Media on disk" = "磁碟上的媒體"; +"Most messages" = "訊息最多"; +"Most recent" = "最新"; +"No deleted messages yet" = "尚無已刪除的訊息"; +"No matches" = "沒有符合項目"; +"Nothing to save" = "無可儲存內容"; +"Oldest first" = "最舊優先"; +"Open log" = "開啟紀錄"; +"Group chat" = "群組聊天"; +"%lu messages in %lu chats" = "%lu 則訊息,%lu 個聊天"; +"%lu people · %lu deleted" = "%lu 人 · %lu 則已刪除"; +"When someone unsends a message, it will appear here grouped by chat." = "當有人收回訊息時,會按聊天分組顯示在這裡。"; +"Clear this chat" = "清除此聊天"; +"Clear log for this chat?" = "清除此聊天的記錄?"; +"Removes every preserved deleted message from this group chat." = "移除此群組聊天中所有已保存的已刪除訊息。"; +"Reaction removed" = "已移除回應"; +"Log removed reactions" = "記錄已移除的回應"; +"Also records when someone removes a reaction, and which message it was on" = "同時記錄有人移除回應的時間,以及它屬於哪則訊息。"; +"Removed a reaction" = "移除了一個回應"; +"on @%@: %@" = "於 @%@:%@"; +"on: %@" = "於:%@"; +"a message" = "一則訊息"; +"removed %@ on: %@" = "移除了 %@ · %@"; +"removed reaction %@" = "移除了回應 %@"; +"%@ removed the %@ reaction." = "%@ 移除了 %@ 回應。"; +"Removed %@" = "移除於 %@"; +"Someone" = "某人"; +"Photo or video" = "相片或影片"; +"Refresh names & photos" = "重新整理名稱和相片"; +"Refreshing names & photos" = "正在重新整理名稱和相片"; +"Records every message someone unsends, grouped by chat" = "記錄每則被收回的訊息,並按聊天分組"; +"Open profile" = "開啟個人檔案"; +"Original" = "原始"; +"Play" = "播放"; +"Post" = "貼文"; +"Reel" = "Reel"; +"Relative (1m / 3h / 3d ago)" = "相對 (1分鐘 / 3小時 / 3天前)"; +"Removes every preserved deleted message and its captured media for the current account. This cannot be undone." = "移除目前帳號所有保留的已刪除訊息及其擷取的媒體。此動作無法復原。"; +"Removes every preserved deleted message and its captured media for this account." = "移除此帳號所有保留的已刪除訊息及其擷取的媒體。"; +"Removes every preserved deleted message from this sender." = "移除此寄件人所有保留的已刪除訊息。"; +"Removes every saved photo, video and voice clip. Records keep their text and sender info." = "移除所有已儲存的相片、影片和語音片段。紀錄保留其文字和寄件人資訊。"; +"Search messages" = "搜尋訊息"; +"Search senders or messages" = "搜尋寄件人或訊息"; +"Select" = "選擇"; +"Show edit history" = "顯示編輯紀錄"; +"Source URL recorded but media not stored.\n" = "已記錄來源 URL,但未儲存媒體。\n"; +"Sticker" = "貼圖"; +"Tap to open in Instagram" = "點擊在 Instagram 中開啟"; +"Tap to open in Maps" = "點擊在地圖中開啟"; +"Tap to play" = "點擊播放"; +"Tap to play · %@" = "點擊播放 · %@"; +"Text" = "文字"; +"This account" = "此帳號"; +"Unknown" = "未知"; +"Video" = "影片"; +"View" = "檢視"; +"Voice" = "語音"; +"When enabled, deleted messages and their media are saved on this device. Toggle off and clear the log to wipe history." = "啟用時,已刪除的訊息及其媒體會儲存在本裝置。關閉並清除紀錄即可清除歷史記錄。"; + +////////////////////////////////////////////////////////////////////////////// +// MESSAGES // +// Settings → Messages tab // +////////////////////////////////////////////////////////////////////////////// + +"In the Draw tool, send an image as your doodle, from the gallery, Photos, stickers or paste, with a built-in crop and background removal editor" = "在繪圖工具中,將圖片作為塗鴉傳送,來自圖庫、照片、貼圖或貼上,內建裁剪與移除背景編輯器"; +"Draw a line or shape, then tap Send and pick where to get the image from: gallery, Photos, stickers or paste.\n\nThe image takes the place of what you drew and matches its position and size, so draw bigger for a bigger image.\n\nRestart Instagram for it to take effect." = "畫一條線或形狀,然後點按傳送並選擇圖片來源:圖庫、照片、貼圖或貼上。\n\n圖片會取代你畫的內容,並沿用其位置與大小,所以畫得越大圖片越大。\n\n重新啟動 Instagram 後生效。"; + +"Send image as drawing" = "將圖片作為塗鴉傳送"; + +"Bypass \"You can't send messages\"" = "繞過「你無法傳送訊息」"; +"Custom chat background" = "自訂聊天背景"; +"DM Save button" = "私訊儲存按鈕"; +"Incoming calls stay silent — no ring, no screen, no notification" = "來電保持靜音 — 不響鈴、不顯示畫面、不通知"; +"Make Instagram's built-in Save button on DM photos & videos download to Photos, the Gallery, or Share" = "讓 Instagram 私訊圖片和影片上的原生儲存按鈕改為下載到「照片」、圖庫或分享"; +"Messages" = "訊息"; +"Removes the blocked composer banner and restores the text input in restricted threads" = "移除被封鎖的輸入列橫幅,並在受限對話中還原文字輸入框"; +"Reroute native Save" = "重新導向原生儲存"; +"Save media" = "儲存媒體"; +"Silence incoming calls" = "將來電靜音"; +"Threads" = "主題串"; +"Use your own images as chat backgrounds" = "使用你自己的圖片作為聊天背景"; +"Activity status toggle" = "活動狀態開關"; +"Adds a dot to the inbox header. Tap it to turn your activity status on or off" = "在收件匣標題列新增一個圓點。點按即可開啟或關閉你的活動狀態"; +"Activity status on" = "活動狀態已開啟"; +"Activity status off" = "活動狀態已關閉"; +"Couldn't change activity status" = "無法變更活動狀態"; +"Check your connection and try again" = "請檢查網路連線後重試"; + +////////////////////////////////////////////////////////////////////////////// +// INSTANTS // +// Settings → Instants // +////////////////////////////////////////////////////////////////////////////// + +"%@ (%lu)" = "%@ (%lu)"; +"Camera" = "相機"; +"Viewer" = "檢視器"; +"Saving" = "儲存"; +"Confirmations" = "確認"; +"Confirm switching button" = "切換確認按鈕"; +"Adds a button next to the action button that turns the switching confirmation on or off on the spot" = "在操作按鈕旁新增一個按鈕,可即時開啟或關閉切換確認"; +"Switching confirmation on" = "切換確認已開啟"; +"Switching confirmation off" = "切換確認已關閉"; +"Adds a gallery button to the instants camera so you can send a photo from your album" = "為即時相機加入相簿按鈕,讓你從相簿傳送相片"; +"Adds a RyukGram action button to the instants viewer header with expand, save, share, and bulk-save entries" = "在即時檢視器頂列新增 RyukGram 動作按鈕,包含展開、儲存、分享和批次儲存項目"; +"All loaded instants" = "已載入的所有即時"; +"Auto advance after reaction" = "互動後自動切換"; +"Automatically moves to the next instant after you like or react" = "按讚或回應後自動切換到下一個即時"; +"Auto close when finished" = "看完後自動關閉"; +"Closes the instants viewer once you have seen them all instead of landing on the camera" = "看完所有即時後關閉檢視器,而不是停留在相機介面"; +"Bypasses the Instants screenshot block" = "繞過即時截圖封鎖"; +"Could not locate the instant on screen" = "找不到螢幕上的即時"; +"Current instant" = "目前即時"; +"In-app Gallery" = "應用內圖庫"; +"Instant" = "即時"; +"Instants" = "即時"; +"Auto-saved instants log" = "自動儲存的即時記錄"; +"Auto-save instants" = "自動儲存即時"; +"Automatically saves every instant you view, including as you swipe — each one only once" = "自動儲存你檢視的每個即時(包括滑動時)— 每個僅儲存一次"; +"Instants action button" = "即時動作按鈕"; +"No instants currently loaded" = "目前沒有已載入的即時"; +"No media available to save" = "沒有可儲存的媒體"; +"Photos library" = "照片圖庫"; +"Pick from" = "選擇來源"; +"Queued %lu instants" = "已排隊 %lu 個即時"; +"Save all to Gallery" = "全部儲存至相簿"; +"Save all to Photos" = "全部儲存至「照片」"; +"Save to Gallery" = "儲存至相簿"; +"Send from gallery" = "從相簿傳送"; +"Tweaks for the QuickSnap / Instants camera surface." = "QuickSnap / Instants 相機介面調整。"; +"Use" = "使用"; + +////////////////////////////////////////////////////////////////////////////// +// NAVIGATION // +// Settings → Navigation tab // +////////////////////////////////////////////////////////////////////////////// + +"Also hide the bottom tab bar — only the inbox is visible" = "同時隱藏底部分頁列 — 僅顯示收件匣"; +"Show the home shortcut button in the inbox header, on the right" = "在收件匣標題列右側顯示主頁捷徑按鈕"; +"Greyed out until the home shortcut button is enabled in Interface" = "在「介面」中啟用主頁捷徑按鈕前會顯示為灰色"; +"Hide search tab" = "隱藏搜尋分頁"; +"Remove the search/explore button from the tab bar" = "從分頁列移除搜尋/探索按鈕"; +"Hide tab bar" = "隱藏分頁列"; +"Hides every tab except DM inbox + profile and forces launch into the inbox. Settings shortcut moves to long-press on the inbox tab." = "隱藏除私訊收件匣與個人檔案外的所有分頁,並強制啟動至收件匣。設定捷徑改為長按收件匣分頁。"; +"Icon order" = "圖示排序"; +"Launch tab" = "啟動分頁"; +"Swipe sideways to move between the tab bar tabs" = "左右滑動即可在標籤列各標籤間切換"; +"Messages only" = "僅限訊息"; +"Messages-only mode" = "僅限訊息模式"; +"Automatic schedule" = "自動排程"; +"DM-only client, hide tabs, auto schedule" = "僅限私訊用戶端、隱藏分頁、自動排程"; +"Start time" = "開始時間"; +"End time" = "結束時間"; +"Switch into Messages-only on its own during a time window" = "在某個時間段內自動切換到僅限訊息模式"; +"Turn Messages-only on by itself during a daily window (e.g. 10:00 PM – 6:00 AM) using the toggles above. You'll be asked to restart when the window starts and when it ends." = "使用上方開關,在每天的某個時間段(例如晚上 10:00 – 早上 6:00)自動開啟僅限訊息模式。時間段開始和結束時會提示你重新啟動。"; +"Active now · ends %@" = "目前啟用 · %@ 結束"; +"Next window starts %@" = "下個時間段 %@ 開始"; +"Messages-only starting" = "僅限訊息模式開始"; +"Messages-only ending" = "僅限訊息模式結束"; +"Your Messages-only window has started. Restart Instagram to switch to DM-only." = "你的僅限訊息時間段已開始。重新啟動 Instagram 以切換到僅限私訊。"; +"Your Messages-only window has ended. Restart Instagram to bring back the other tabs." = "你的僅限訊息時間段已結束。重新啟動 Instagram 以還原其他分頁。"; +"Navigation" = "導覽"; +"Swipe between tabs" = "在分頁間滑動"; +"Tab the app opens to. Ignored when Messages-only is on" = "應用程式開啟時的分頁。啟用僅限訊息時忽略此設定"; +"How the icons on the bottom tab bar are ordered" = "底部標籤列圖示的排列順序"; +"Hidden tabs" = "隱藏的分頁"; +"Hold and drag to reorder. Drag an icon up to hide it. Tap a hidden tab to add it back." = "按住並拖曳以重新排序。向上拖曳圖示即可隱藏。點按隱藏的分頁即可重新加入。"; +"All tabs are on the bar" = "所有分頁都在列上"; +"Turn IG into a DM-only client" = "將 IG 變成僅限私訊的客戶端"; + +////////////////////////////////////////////////////////////////////////////// +// CONFIRM ACTIONS // +// Settings → Confirm actions tab // +////////////////////////////////////////////////////////////////////////////// + +"All" = "全部"; +"Calls" = "通話"; +"Comments & posts" = "留言與貼文"; +"Confirm actions" = "確認操作"; +"Confirm changing theme" = "確認更換主題"; +"Confirm disappearing media mark as viewed" = "確認將閱後即焚內容標記為已查看"; +"Confirm DM mark as seen" = "確認將私訊標記為已讀"; +"Confirm follow" = "確認追蹤"; +"Confirm follow requests" = "確認追蹤請求"; +"Confirm Instants capture" = "確認即時拍照"; +"Confirm Instants emoji reaction" = "確認即時表情反應"; +"Confirm like: Posts" = "確認按讚:貼文"; +"Confirm like: Reels" = "確認按讚:Reels"; +"Confirm note emoji reaction" = "確認筆記表情反應"; +"Confirm note like" = "確認筆記按讚"; +"Confirm posting comment" = "確認發佈留言"; +"Confirm repost" = "確認轉貼"; +"Confirm send to group chat" = "確認傳送到群組聊天"; +"Confirm sticker interaction (highlights)" = "確認貼圖互動(精選)"; +"Confirm sticker interaction (stories)" = "確認貼圖互動(限時動態)"; +"Confirm story emoji reaction" = "確認限時動態表情反應"; +"Confirm story like" = "確認限時動態按讚"; +"Confirm story mark as seen" = "確認將限時動態標記為已查看"; +"Confirm switching Instant" = "確認切換即時"; +"Confirm unfollow" = "確認取消追蹤"; +"Confirm vanish mode" = "確認消失模式"; +"Confirm video call" = "確認視訊通話"; +"Confirm voice call" = "確認語音通話"; +"Confirm voice messages" = "確認語音訊息"; +"Follows" = "追蹤中"; +"Likes" = "讚"; +"Messaging" = "訊息"; +"Reaction stickers only" = "僅限反應貼圖"; +"Reactions" = "回應"; +"Send to group chat?" = "傳送到群組聊天?"; +"Shows an alert before creating/sending to a group chat from the share sheet" = "從分享選單建立/傳送到群組聊天前顯示提示"; +"Shows an alert before marking a disappearing message as viewed" = "將閱後即焚訊息標記為已查看前顯示提示"; +"Shows an alert before sending a read receipt from the DM seen button or menu" = "從私訊已查看按鈕或選單送出已讀回條前顯示提示"; +"Shows an alert before sending a story view receipt from the eye button or menu" = "從眼睛按鈕或選單送出限時動態查看回條前顯示提示"; +"Shows an alert before sending an emoji reaction on a note" = "發送筆記表情反應前顯示警告"; +"Shows an alert before sending an emoji reaction on a story" = "發送限時動態表情反應前顯示警告"; +"Shows an alert before sending an emoji reaction on an Instant" = "在向即時傳送表情反應前顯示提示"; +"Shows an alert before sending a photo or video from the Instants camera" = "從即時相機傳送相片或影片前顯示提示"; +"Shows an alert before tapping to switch to the next/previous Instant" = "在點擊切換到下一個/上一個即時前顯示提示"; +"Asks you to confirm before a voice message sends" = "傳送語音訊息前請你確認"; +"Shows an alert to confirm before toggling vanish mode" = "切換消失模式前顯示確認提示"; +"Confirms before you accept or decline a follow request" = "接受或拒絕追蹤請求前請你確認"; +"Confirms before a chat theme change applies" = "套用聊天主題變更前請你確認"; +"Confirms before the follow button follows someone" = "追蹤按鈕追蹤某人前請你確認"; +"Shows an alert when you click the like button on notes to confirm the like" = "點擊筆記按讚按鈕時顯示確認警告"; +"Shows an alert when you click the like button on posts to confirm the like" = "點擊貼文按讚按鈕時顯示確認警告"; +"Confirms before a like lands on a reel" = "為 reel 按讚前請你確認"; +"Shows an alert when you click the like button on stories to confirm the like" = "點擊限時動態按讚按鈕時顯示確認警告"; +"Confirms before a comment posts" = "發布留言前請你確認"; +"Shows an alert when you click the repost button to confirm before reposting" = "點擊轉貼按鈕前顯示確認提示"; +"Shows an alert when you click the unfollow button to confirm" = "點擊取消追蹤按鈕時顯示確認提示"; +"Shows an alert when you click the video call button to confirm before calling" = "點擊視訊通話按鈕時顯示確認警告"; +"Shows an alert when you click the voice call button to confirm before calling" = "點擊語音通話按鈕時顯示確認警告"; +"Shows an alert when you tap a sticker inside a highlight" = "點擊精選中的貼圖時顯示確認提示"; +"Shows an alert when you tap a sticker on someone's story" = "點擊他人限時動態貼圖時顯示確認提示"; +"Stories & highlights" = "限時動態與精選"; + +////////////////////////////////////////////////////////////////////////////// +// SECURITY & PRIVACY // +// Settings → Security & Privacy // +////////////////////////////////////////////////////////////////////////////// + +"%ld h" = "%ld 小時"; +"%ld locked" = "%ld 個已鎖定"; +"%ld min" = "%ld 分鐘"; +"%ldh idle" = "閒置 %ld 小時"; +"%ldm idle" = "閒置 %ld 分鐘"; +"%lds" = "%ld 秒"; +"%lds idle" = "閒置 %ld 秒"; +"%lu hidden" = "%lu 個已隱藏"; +"4 digits" = "4 位數"; +"6 digits" = "6 位數"; +"Add hidden chat" = "新增隱藏的聊天"; +"Add locked chat" = "新增已鎖定的聊天"; +"Allow Instants screenshots" = "允許即時截圖"; +"Always ask when opening again" = "再次開啟時總是詢問"; +"Ask again after Instagram returns" = "Instagram 返回後再次詢問"; +"Auto-relock after idle" = "閒置後自動重新鎖定"; +"Balanced default" = "平衡預設"; +"Best for sensitive sections" = "最適合敏感區塊"; +"Biometric" = "生物辨識"; +"Change passcode" = "更改密碼"; +"Chat hidden" = "已隱藏聊天"; +"Chat unhidden" = "已取消隱藏聊天"; +"Chat locked" = "已鎖定聊天"; +"Chat unlocked" = "已解鎖聊天"; +"Choose a code you'll remember." = "請選擇你能記住的密碼。"; +"Choose how long this section stays unlocked while idle. Never keeps it unlocked until Instagram closes or goes to background." = "選擇此區塊在閒置時保持解鎖的時間。選「永不」會保持解鎖,直到 Instagram 關閉或進入背景。"; +"Confirm current passcode" = "確認目前密碼"; +"Confirm passcode" = "確認密碼"; +"Could not save passcode" = "無法儲存密碼"; +"Create passcode" = "建立密碼"; +"Derivation failed" = "衍生失敗"; +"DM inbox" = "私訊收件匣"; +"Don't share unlock" = "不共用解鎖狀態"; +"Each target has its own enable, timeout, and re-lock configuration." = "每個目標都有各自的啟用、逾時與重新鎖定設定。"; +"Enable lock" = "啟用鎖定"; +"Enter passcode" = "輸入密碼"; +"Enter value" = "輸入值"; +"Enter your current passcode to change it" = "輸入目前密碼以更改"; +"Enter your current passcode to reset it" = "輸入目前的密碼以重設"; +"Enter your passcode to continue" = "輸入密碼以繼續"; +"every use" = "每次使用"; +"Every use" = "每次使用"; +"Hidden chats" = "已隱藏的聊天"; +"Hidden chats hidden" = "已隱藏隱藏聊天"; +"Hidden chats revealed" = "已顯示隱藏聊天"; +"👁 Shown in the inbox · Tap to hide" = "👁 已在收件匣顯示 · 點按隱藏"; +" · shown in inbox" = " · 已在收件匣顯示"; +"Hide chat" = "隱藏聊天"; +"Unhide chat" = "取消隱藏聊天"; +"Hold name to reveal" = "長按名稱以顯示"; +"Hide message preview" = "隱藏訊息預覽"; +"Hide this chat?" = "隱藏此聊天?"; +"Hides RyukGram UI from screenshots/recordings and routes around IG's per-feature screenshot alerts." = "從截圖/錄影中隱藏 RyukGram 介面,並繞過 Instagram 各功能的截圖警告。"; +"Idle timeout" = "閒置逾時"; +"Instagram" = "Instagram"; +"Keep this target locked separately" = "讓此目標分開鎖定"; +"Less frequent prompts" = "減少提示頻率"; +"Lock" = "鎖定"; +"Lock chat" = "鎖定聊天"; +"Lock every time" = "每次都鎖定"; +"Lock every time overrides idle timeout. Don't share unlock keeps this target separate." = "「每次都鎖定」會覆寫閒置逾時設定。「不共用解鎖狀態」會讓此目標保持獨立。"; +"Lock targets" = "鎖定目標"; +"Lock the tweak" = "鎖定 tweak"; +"Lock this chat" = "鎖定此聊天"; +"Lock this chat?" = "鎖定此聊天?"; +"Lock with passcode" = "使用密碼鎖定"; +"Locked chats" = "已鎖定的聊天"; +"Long-press a chat to lock it individually" = "長按某個聊天以單獨鎖定它"; +"Long-press a DM thread → Hide chat to add it here. Hidden chats are filtered out of the inbox until you remove them from this list." = "長按一個私訊會話 → 隱藏聊天即可加入此處。已隱藏的聊天會從收件匣中過濾,直到你從此列表中移除。"; +"Long-press a DM to add" = "長按私訊以加入"; +"Long-press the account name atop the DM inbox to show or hide your hidden chats" = "長按私訊收件匣頂部的帳號名稱以顯示或隱藏您的隱藏聊天"; +"Longest idle window" = "最長閒置時間"; +"Manage locked chats" = "管理已鎖定的聊天"; +"Master switch. Turn off to disable every lock target without losing per-target configuration." = "主開關。關閉可在不遺失各目標設定的情況下停用所有鎖定目標。"; +"Never" = "永不"; +"No passcode set" = "未設定密碼"; +"Nothing here yet." = "這裡還沒有內容。"; +"Off" = "關閉"; +"On" = "開啟"; +"On — %@" = "開啟 — %@"; +"On — %@ + %ld more" = "開啟 — %@ 等 %ld 項"; +"On — no targets enabled" = "開啟 — 未啟用任何目標"; +"Passcode" = "密碼"; +"Passcode + biometric. Gate the tweak settings popup, gallery, deleted-messages log, individual chats and the whole app." = "密碼 + 生物辨識。鎖定 tweak 設定彈窗、相簿、已刪除訊息紀錄、個別聊天以及整個應用程式。"; +"Passcode changed" = "已更改密碼"; +"Passcode reset" = "已重設密碼"; +"Passcode set" = "已設定密碼"; +"Passcode too short" = "密碼太短"; +"Passcodes did not match — try again" = "密碼不一致 — 請重試"; +"Per-chat locks" = "每個聊天的鎖定"; +"Prompt before Instagram opens" = "Instagram 開啟前要求驗證"; +"Prompt before Profile Analyzer opens" = "個人檔案分析器開啟前要求驗證"; +"Prompt before the deleted-messages log opens" = "已刪除訊息紀錄開啟前要求驗證"; +"Prompt before the gallery opens" = "相簿開啟前要求驗證"; +"Prompt before tweak settings open" = "tweak 設定開啟前要求驗證"; +"Prompt on every entry to the DM inbox, including launch-to-messages" = "每次進入私訊收件匣時都要求驗證,包括直接啟動到訊息"; +"Re-enter the same passcode" = "再次輸入相同的密碼"; +"Re-lock on background" = "進入背景時重新鎖定"; +"re-lock on bg" = "背景重新鎖定"; +"Recently hidden" = "最近隱藏"; +"Prompt before holding the inbox name reveals hidden chats" = "長按名稱顯示隱藏聊天前先詢問"; +"Reveal hidden chats" = "顯示隱藏聊天"; +"Recently locked" = "最近鎖定"; +"Redact RyukGram buttons from screenshots, screen recordings, and mirroring" = "在截圖、螢幕錄影和鏡像中隱藏 RyukGram 按鈕"; +"Remove screenshot alert" = "移除截圖警告"; +"Replace inbox preview with • • •" = "將收件匣預覽替換為 • • •"; +"Require passcode for this section" = "此區塊需要密碼"; +"Requires your current passcode" = "需要你目前的密碼"; +"Reset passcode" = "重設密碼"; +"Reset passcode?" = "重設密碼?"; +"Screenshots & capture" = "截圖與錄製"; +"Security & Privacy" = "安全與隱私"; +"Set a passcode to protect Settings, Gallery, deleted messages, chats, the DM inbox, Profile Analyzer, or Instagram itself." = "設定密碼以鎖定「設定」、相簿、已刪除訊息紀錄、個別聊天、私訊收件匣、個人檔案分析器或 Instagram 本身。"; +"Set passcode" = "設定密碼"; +"Short idle window" = "短閒置時間"; +"Stay unlocked until app close or background" = "保持解鎖直到 App 關閉或進入背景"; +"Suppress IG's \"X took a screenshot\" notification across stories, DMs and disappearing media" = "在限時動態、私訊與限閱媒體中隱藏 IG 的「X 已截圖」通知"; +"Tap Unlock" = "點一下「解鎖」"; +"Tap Unlock or enter your passcode" = "點一下「解鎖」或輸入密碼"; +"This clears the passcode, disables every lock target, and unlocks all chats. Gallery and Keep-Deleted data are untouched." = "此操作將清除密碼、停用所有鎖定目標並解鎖所有聊天。相簿和已刪除訊息的資料不會受到影響。"; +"Thread %@" = "對話 %@"; +"Tweak settings" = "Tweak 設定"; +"Unlock" = "解鎖"; +"Unlock %@" = "解鎖 %@"; +"Unlock chat" = "解鎖聊天"; +"Unlock Instagram" = "解鎖 Instagram"; +"Unlock this chat" = "解鎖此聊天"; +"Use %@" = "使用 %@"; +"Username (looks up the DM thread) or raw thread ID" = "使用者名稱(查找私訊會話)或原始會話 ID"; +"Username or thread ID" = "使用者名稱或會話 ID"; +"Wrong passcode" = "密碼錯誤"; +"Wrong passcode • %ld attempts" = "密碼錯誤 • 已嘗試 %ld 次"; + +////////////////////////////////////////////////////////////////////////////// +// BACKUP & RESTORE // +// Settings → Backup & Restore tab // +////////////////////////////////////////////////////////////////////////////// +"Protection" = "保護"; +"Password-protect" = "密碼保護"; +"On — tap to change" = "已開啟 — 點一下可更改"; +"The backup is scrambled with AES-256. You'll need this password to restore it — there's no way to recover it if lost." = "備份以 AES-256 加密。還原時需要此密碼,一旦遺失將無法找回。"; +"Optional. Lock the backup behind a password so only you can restore it." = "可選。用密碼鎖定備份,只有你才能還原。"; +"Backup password" = "備份密碼"; +"You'll need this to restore. It can't be recovered if lost." = "還原時需要它,一旦遺失將無法找回。"; +"Password" = "密碼"; +"Confirm password" = "確認密碼"; +"Set" = "設定"; +"Use at least 4 characters." = "至少使用 4 個字元。"; +"The passwords don't match." = "兩次密碼不一致。"; +"Try again" = "重試"; +"Encrypted backup" = "加密備份"; +"Enter the password used to protect this backup." = "輸入用於保護此備份的密碼。"; +"Wrong password. Try again." = "密碼錯誤。請重試。"; +"Decrypting backup…" = "正在解密備份…"; +"Encrypting backup…" = "正在加密備份…"; +"%ld of %ld selected · %@" = "已選 %ld/%ld · %@"; +"Tick each store to include. Tap a row to inspect what's stored." = "勾選要包含的每個資料集。點一下某列可查看其內容。"; + +"%lu account(s)" = "%lu 個帳號"; +"%lu account(s) · %lu image(s) · %@" = "%lu 個帳號 · %lu 張圖片 · %@"; +"%lu file(s) · %@" = "%lu 個檔案 · %@"; +"%lu preferences" = "%lu 項偏好設定"; +"(none)" = "(無)"; +"Apply backup?" = "套用備份?"; +"Applying backup…" = "正在套用備份…"; +"archive error" = "封存錯誤"; +"Archived snapshots" = "已封存的快照"; +"Backup & Restore" = "備份與還原"; +"Backup exported" = "備份已匯出"; +"Backup failed" = "備份失敗"; +"Backup has no importable sections." = "備份中沒有可匯入的項目。"; +"Chat & story filters" = "聊天與限時動態篩選"; +"Chat backgrounds" = "聊天背景"; +"Corrupt entry path." = "項目路徑損毀。"; +"Could not decompress archive." = "無法解壓縮封存檔。"; +"Could not open archive." = "無法開啟封存檔。"; +"Could not open staging file." = "無法開啟暫存檔。"; +"Could not read the backup archive." = "無法讀取備份封存檔。"; +"Could not write archive." = "無法寫入封存檔。"; +"Could not write backup file." = "無法寫入備份檔。"; +"Could not write extracted file." = "無法寫入解壓縮後的檔案。"; +"Existing data for the ticked items will be replaced. A restart may be needed for everything to take effect." = "已勾選項目的現有資料將被取代。可能需要重新啟動才能完全生效。"; +"Export or import RyukGram data — settings, per-account filters, hidden & locked chats, Profile Analyzer, gallery, chat backgrounds, deleted messages and the read receipts log. Pick any combination on each page. Settings stay a plain JSON file; bundles with media export as a compressed .ryukbak." = "匯出或匯入 RyukGram 資料 — 設定、各帳號篩選、隱藏與鎖定的聊天、個人檔案分析器、圖庫、聊天背景、已刪除訊息與已讀回條記錄。每一頁可任意組合。設定維持為純 JSON 檔;含媒體的套組會匯出為壓縮的 .ryukbak。"; +"Feature data" = "功能資料"; +"Import mode" = "匯入模式"; +"Merge" = "合併"; +"Replace" = "取代"; +"Add the backup's data to what's already here" = "將備份資料加入現有資料"; +"Clear existing data, then apply the backup" = "先清除現有資料,再套用備份"; +"Merge keeps what's on this device and adds the backup's data — duplicates are combined, including the gallery." = "合併會保留此裝置上的資料並加入備份的資料 — 重複項目會被合併,包括圖庫。"; +"Replace clears existing data for each ticked item, then applies the backup." = "取代會先清除每個勾選項目的現有資料,再套用備份。"; +"The backup will be merged into your existing data — nothing is deleted, duplicates are combined. A restart may be needed for everything to take effect." = "備份將與你現有的資料合併 — 不會刪除任何內容,重複項目會被合併。可能需要重新啟動才能完全生效。"; +"Hidden & locked chats" = "隱藏與鎖定的聊天"; +"Import" = "匯入"; +"Inspect the full manifest" = "檢視完整資訊清單"; +"Load a .json or .ryukbak backup" = "載入 .json 或 .ryukbak 備份"; +"Not a RyukGram backup archive." = "並非 RyukGram 備份封存檔。"; +"PK %@" = "PK %@"; +"Put settings back to defaults and clear data" = "將設定還原為預設值並清除資料"; +"Swipe a row to clear it." = "滑動列即可清除。"; +"Rows marked Shared aren't tied to an account and always follow their own tick." = "標記為「共用」的列不屬於任何帳號,一律依其自身勾選處理。"; +"%lu file(s)" = "%lu 個檔案"; +"Clear all data" = "清除所有資料"; +"Every stored gallery item, log and recording is deleted from this device. Your settings are kept — use Reset to restore those to defaults. This can't be undone." = "儲存的每個圖庫項目、記錄和錄音都會從此裝置中刪除。你的設定會保留 — 使用重設可將其還原為預設值。此操作無法復原。"; +"Accounts" = "帳號"; +"All accounts (%ld)" = "所有帳號(%ld)"; +"Pick at least one account." = "請至少選擇一個帳號。"; +"Signed in" = "已登入"; +"Shared" = "共用"; +"Per-account data is limited to the accounts ticked here." = "各帳號的資料僅限於此處勾選的帳號。"; +"Per-account data is cleared for %@ only. Shared data follows its own tick. This can't be undone." = "僅清除 %@ 的帳號資料。共用資料依其自身勾選處理。此操作無法復原。"; +"Preparing backup…" = "正在準備備份…"; +"Reading backup…" = "正在讀取備份…"; +"RyukGram's own data on this device" = "RyukGram 在此裝置上的自有資料"; +"Save settings or a full backup" = "儲存設定或完整備份"; +"Tick what to apply. Rows not in this backup are hidden." = "勾選要套用的項目。此備份中不存在的列會被隱藏。"; +"Tick what to include. Tap a row to inspect it. Adding gallery, chat backgrounds or deleted messages produces a compressed .ryukbak bundle." = "勾選要包含的項目。點一下任一列可檢視。加入圖庫、聊天背景或已刪除訊息會產生壓縮的 .ryukbak 套組。"; +"Truncated entry data." = "項目資料被截斷。"; +"Truncated entry length." = "項目長度被截斷。"; +"Truncated entry path." = "項目路徑被截斷。"; +"Unsafe entry path." = "不安全的項目路徑。"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED // +// Settings → Advanced tab // +////////////////////////////////////////////////////////////////////////////// + +"Advanced" = "進階"; +"All tweak options are disabled" = "所有調整選項已停用"; +"Auto-clear cache" = "自動清除快取"; +"Automatically opens settings when the app launches" = "啟動應用程式時自動開啟設定"; +"Cache" = "快取"; +"Cache cleared" = "快取已清除"; +"Calculating cache size…" = "計算快取大小中…"; +"Clear" = "清除"; +"Clear cache" = "清除快取"; +"Clear cache (%@)" = "清除快取 (%@)"; +"Clearing cache…" = "清除快取中…"; +"Clearing still scans on demand." = "關閉時仍會按需掃描。"; +"Daily" = "每日"; +"Disable all tweak options" = "停用所有調整選項"; +"Disable safe mode" = "停用安全模式"; +"Enable tweak settings quick-access" = "啟用調整設定快速存取"; +"Instagram runs stock while this is on. Turn it back off to restore your settings." = "開啟時 Instagram 以原始狀態運行。關閉即可還原你的設定。"; +"Tap to re-enable everything" = "點按以重新啟用全部"; +"Turn every feature off — your settings are kept" = "關閉所有功能 — 保留你的設定"; +"Fix duplicate notifications" = "修復重複通知"; +"Free %@ of Instagram cache." = "釋放 %@ 的 Instagram 快取。"; +"Freed %@" = "已釋放 %@"; +"Hold on the home tab to open RyukGram settings" = "長按主頁標籤以開啟 RyukGram 設定"; +"Monthly" = "每月"; +"Nothing to clear" = "無可清除內容"; +"Off skips the size scan when Advanced opens." = "關閉時,開啟進階頁不會掃描大小。"; +"Pause playback when opening settings" = "開啟設定時暫停播放"; +"Always show what's new" = "一律顯示新功能"; +"Keep the blue dot on every new feature instead of clearing it once viewed" = "在每個新功能上保留藍點,而非檢視後清除"; +"Preserve messages database" = "保留訊息資料庫"; +"Pauses any playing video/audio when settings opens" = "設定開啟時暫停任何正在播放的影片/音訊"; +"Prevents Instagram from resetting settings after crashes (at your own risk)" = "防止 Instagram 崩潰後重置設定(風險自負)"; +"Prevents two banners for the same message when IG is in the foreground" = "當 IG 在前景時,防止同一則訊息顯示兩個橫幅"; +"Remove Instagram's cached images, videos, and temporary files." = "移除 Instagram 的快取圖片、影片及暫存檔案。"; +"Reset onboarding state" = "重設引導狀態"; +"Run a silent cache clear on launch when the interval has elapsed." = "啟動時在達到間隔後靜默清除快取。"; +"Show cache size" = "顯示快取大小"; +"Skip the messages database when clearing — keeps DMs, drafts, and saved messages." = "清除時略過訊息資料庫 — 保留私訊、草稿與已保存訊息。"; +"Show tweak settings on app launch" = "啟動應用程式時顯示調整設定"; +"Suppresses the second notification IG enqueues in-app while the notification extension is also delivering it." = "當通知擴充功能同時投遞通知時,抑制 IG 在應用程式內排隊的第二則通知。"; +"Weekly" = "每週"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED EXPERIMENTAL // +// Settings → Advanced → Advanced experimental features // +////////////////////////////////////////////////////////////////////////////// + +"Actions" = "操作"; +"Advanced experimental features" = "進階實驗功能"; +"All experimental toggles will be turned off. Instagram will restart." = "所有實驗開關都會關閉,Instagram 將重新啟動。"; +"Direct Notes — Audio reply" = "Direct 記事 — 語音回覆"; +"Direct Notes — Avatar reply" = "Direct 記事 — Avatar 回覆"; +"Direct Notes — Friend Map" = "Direct 記事 — 朋友地圖"; +"Direct Notes — GIFs & stickers reply" = "Direct 記事 — GIF 與貼圖回覆"; +"Direct Notes — Photo reply" = "Direct 記事 — 照片回覆"; +"Disabled after repeated crashes." = "因多次閃退已停用。"; +"Enables GIF/sticker replies" = "啟用 GIF/貼圖回覆"; +"Enables photo replies" = "啟用照片回覆"; +"Enables the audio-note reply type" = "啟用語音記事回覆"; +"Enables the avatar reply type" = "啟用 Avatar 回覆"; +"Experimental flags reset" = "實驗旗標已重置"; +"Flip what you want on, then tap Apply to restart. Some flags may not work on every account or IG version. Flags auto-reset if IG crashes on launch 3 times." = "選擇要啟用的項目後點「套用」以重新啟動。部分功能可能無法在所有帳號或 IG 版本上運作。若 IG 連續 3 次啟動閃退,旗標會自動重置。"; +"Forces Prism-gated experiments on" = "強制啟用 Prism 相關實驗"; +"Forces the Homecoming home surface / nav on" = "強制啟用 Homecoming 首頁/導覽"; +"Forces the QuickSnap / Instants surface on in feed, inbox, stories, and notes tray" = "強制在動態、收件匣、限時動態與記事列顯示 QuickSnap/Instants"; +"Got it" = "了解"; +"Heads up" = "注意"; +"Hidden Instagram experiments" = "隱藏的 Instagram 實驗"; +"Hidden Instagram experiments (in Advanced)" = "隱藏的 Instagram 實驗(位於進階設定)"; +"Homecoming" = "Homecoming"; +"Notes & QuickSnap" = "記事與 QuickSnap"; +"Prism design system" = "Prism 設計系統"; +"QuickSnap (Instants)" = "QuickSnap(Instants)"; +"Shows the friend map entry in Direct Notes" = "在 Direct 記事顯示朋友地圖入口"; +"Surfaces" = "介面"; +"These toggles flip hidden Instagram experiments on. Some features may not work on every account or IG version. If IG keeps crashing on launch, the flags auto-reset after 3 failed starts." = "這些開關會啟用 Instagram 的隱藏實驗。部分功能可能無法在所有帳號或 IG 版本上運作。若 IG 連續 3 次啟動閃退,旗標會自動重置。"; +"Toggle hidden Instagram experiments. Some may not work on every account or IG version." = "啟用 Instagram 的隱藏實驗。部分可能無法在所有帳號或 IG 版本上運作。"; + +////////////////////////////////////////////////////////////////////////////// +// DEBUG // +// Settings → Debug tab // +////////////////////////////////////////////////////////////////////////////// + +"Button Cell" = "按鈕欄位"; +"Change the value on the right" = "更改右側數值"; +"Could not delete: %@" = "無法刪除:%@"; +"Debug" = "除錯"; +"Delete an imported override and fall back to the shipped strings" = "刪除匯入的覆寫檔並回退到內建字串"; +"Deleted %@ override. Restart to apply." = "已刪除 %@ 覆寫檔。重新啟動以套用。"; +"Enable FLEX gesture" = "啟用 FLEX 手勢"; +"Enable file logging" = "啟用檔案記錄"; +"Export strings" = "匯出字串"; +"Hold 5 fingers on the screen to open FLEX" = "用五指按住螢幕以開啟 FLEX"; +"I have %@%@" = "我有 %@%@"; +"Import a .strings file for a language" = "為語言匯入 .strings 檔"; +"Import a .strings file to update a translation. Pick a language, select the file, restart." = "匯入 .strings 檔以更新翻譯。選擇語言、挑選檔案,然後重新啟動。"; +"Link Cell" = "連結欄位"; +"Localization" = "本地化"; +"Log file is empty" = "記錄檔為空"; +"Logging" = "記錄"; +"Logs RyukGram's own activity to one shareable file across the app and its extensions. Off by default — turn it on, reproduce the issue, then share." = "將 RyukGram 自身的活動記錄到一個可分享的檔案中,涵蓋 App 及其擴充功能。預設關閉——開啟後重現問題,然後分享。"; +"Menu Cell" = "選單欄位"; +"Navigation Cell" = "導覽單元"; +"No imported localization files to reset." = "無可重設的匯入本地化檔案。"; +"No overrides" = "無覆寫"; +"Open FLEX on app focus" = "應用程式聚焦時開啟 FLEX"; +"Open FLEX on app launch" = "應用程式啟動時開啟 FLEX"; +"Opens FLEX when the app is focused" = "應用程式聚焦時開啟 FLEX"; +"Opens FLEX when the app launches" = "應用程式啟動時開啟 FLEX"; +"Pick a language and share its .strings file" = "選擇要分享其 .strings 檔的語言"; +"Pick a language to delete the imported file" = "選擇要刪除匯入檔的語言"; +"Pick a language to export" = "選擇要匯出的語言"; +"Reset localization" = "重設本地化"; +"Share log file" = "分享記錄檔"; +"Static Cell" = "靜態欄位"; +"Stepper cell" = "步進器欄位"; +"Switch Cell" = "切換欄位"; +"Switch Cell (Restart)" = "切換欄位(重新啟動)"; +"Tap the switch" = "點擊切換開關"; +"These features rely on hidden Instagram flags and may not work on all accounts or versions." = "這些功能依賴隱藏的 Instagram 標誌,可能不適用於所有帳號或版本。"; +"Update localization file" = "更新本地化檔案"; +"Using icon" = "使用圖示"; +"Using image" = "使用圖片"; + +////////////////////////////////////////////////////////////////////////////// +// DOWNLOADS & MEDIA ACTIONS // +// Action button menus, download/share/copy toasts, quality picker pills. // +////////////////////////////////////////////////////////////////////////////// + +"%@ settings" = "%@ 設定"; +"%lu items" = "%lu 個項目"; +"Cancelled" = "已取消"; +"Carousel" = "輪播"; +"Carousel · %lu items" = "輪播 · %lu 個項目"; +"Copied %lu URLs" = "已複製 %lu 個網址"; +"Copied caption" = "已複製說明文字"; +"Copied download URL" = "已複製下載網址"; +"Copied quality info" = "已複製品質資訊"; +"Copied video URL" = "已複製影片網址"; +"Copy all URLs" = "複製所有網址"; +"Copy caption" = "複製說明文字"; +"Copy download URL" = "複製下載網址"; +"Could not extract any URLs" = "無法擷取任何網址"; +"Could not extract audio URL" = "無法擷取音訊網址"; +"Could not extract media URL" = "無法擷取媒體網址"; +"Could not extract photo URL" = "無法擷取照片網址"; +"Could not extract video URL" = "無法擷取影片網址"; +"Done" = "完成"; +"Download all stories and share?" = "下載所有限時動態並分享?"; +"Download all to Photos" = "全部下載到「照片」"; +"Download and share all" = "全部下載並分享"; +"Download failed" = "下載失敗"; +"Downloaded %lu items" = "已下載 %lu 項目"; +"Downloading audio…" = "正在下載音訊…"; +"Failed to save" = "儲存失敗"; +"File" = "檔案"; +"HD" = "HD"; +"HD download complete" = "高清下載完成"; +"HD video" = "HD 影片"; +"Mute audio" = "靜音音訊"; +"No caption on this post" = "此貼文無說明文字"; +"No carousel children" = "無輪播子項目"; +"No cover image" = "無封面圖片"; +"No media" = "無媒體"; +"No media to expand" = "無媒體可展開"; +"No media to show" = "無媒體可顯示"; +"No media URL" = "無媒體網址"; +"No URLs" = "無網址"; +"No URLs found" = "找不到網址"; +"No video URL" = "無影片網址"; +"Not a carousel" = "非輪播貼文"; +"Nothing to share" = "無可分享內容"; +"Opening creator…" = "正在開啟創作者..."; +"Photo library access denied" = "照片庫存取被拒"; +"Photos access denied" = "照片存取被拒"; +"Preparing repost…" = "準備重新發布..."; +"Raw image" = "原始圖片"; +"Repost" = "重新發布"; +"Repost unavailable" = "無法重新發布"; +"Save failed" = "儲存失敗"; +"Saved %lu items" = "已儲存 %lu 項目"; +"Saved to Photos" = "已儲存至照片"; +"Saved to RyukGram" = "已儲存至 RyukGram"; +"Saving to Photos" = "正在儲存至「照片」"; +"Saving…" = "正在儲存..."; +"Unmute audio" = "取消靜音"; +"Video · %@" = "影片 · %@"; +"View cover" = "查看封面"; +"View mentions" = "查看提及"; + +////////////////////////////////////////////////////////////////////////////// +// STORIES & MESSAGES (FEATURES) // +// Buttons, menu entries, toasts and alerts shown while watching stories or // +// inside DM threads. // +////////////////////////////////////////////////////////////////////////////// + +"Free" = "自由"; +"Chat font saved" = "聊天字型已儲存"; +"Reopen this chat to see the new font" = "重新開啟此聊天以查看新字型"; +"Remove background" = "移除背景"; +"No subject found" = "找不到主體"; +"No stickers yet" = "尚無貼圖"; +"Send drawing" = "傳送塗鴉"; +"Send my drawing" = "傳送我的塗鴉"; +"Paste image / sticker" = "貼上圖片/貼圖"; +"Tap any sticker on your keyboard\nto add it to your drawing" = "點按鍵盤上的任何貼圖\n加入你的塗鴉"; + +" %lu votes · avg %.0f%% " = " %lu 票 · 平均 %.0f%% "; +"%@ can't be converted" = "無法轉換 %@"; +"%@ unsent a message" = "%@ 撤回了一則訊息"; +"%@ unsent a message from %@" = "%1$@ 撤回了 %2$@ 的訊息"; +"A message was unsent" = "訊息已撤回"; +"Add" = "新增"; +"Add to block list" = "加入封鎖名單"; +"Added to block list" = "已加入封鎖名單"; +"Added to exclude list" = "已加入排除清單"; +"Audio not loaded yet. Play the message first and try again." = "音訊尚未載入。請先播放訊息後再試。"; +"Audio sent" = "音訊已傳送"; +"Audio URL not available" = "音訊網址無法取得"; +"Audio/Video from Files" = "來自檔案的音訊/影片"; +"Blocked" = "已封鎖"; +"Cancel" = "取消"; +"Clear preserved messages?" = "要清除保留的訊息嗎?"; +"Converting…" = "轉換中..."; +"Copy link" = "複製連結"; +"Copy text" = "複製文字"; +"Could not copy selected video" = "無法複製所選影片"; +"Could not find media" = "找不到媒體"; +"Could not find story media" = "找不到故事媒體"; +"Could not get audio data. Try again after refreshing the chat." = "無法取得音訊資料。請刷新聊天後再試。"; +"Disable read receipts" = "停用已讀回條"; +"Disappearing media" = "消失訊息媒體"; +"Download audio" = "下載音訊"; +"Enable read receipts" = "啟用已讀回條"; +"Error: %@" = "錯誤:%@"; +"Exclude chat" = "排除聊天"; +"Exclude from seen" = "排除已讀"; +"Exclude story seen" = "排除故事已讀"; +"Excluded" = "已排除"; +"Extracting audio…" = "擷取音訊中..."; +"FFmpeg conversion failed" = "FFmpeg 轉換失敗"; +"File sending not supported" = "不支援檔案傳送"; +"Follow" = "追蹤"; +"Following" = "已追蹤"; +"Format not supported without FFmpegKit" = "沒有 FFmpegKit 不支援此格式"; +"Inserts a button on disappearing media overlays" = "在消失訊息媒體覆蓋層上插入按鈕"; +"Inserts a speaker button to mute/unmute disappearing media" = "插入喇叭按鈕以靜音/取消靜音消失訊息媒體"; +"Inserts an eye button to mark the current disappearing media as viewed" = "插入眼睛按鈕,將當前消失訊息媒體標記為已檢視"; +"Link copied" = "已複製連結"; +"Mark as viewed" = "標記為已檢視"; +"Marking as viewed advances to the next stacked media instead of closing" = "標記為已檢視會前進到下一個堆疊的媒體,而不是關閉"; +"Mark messages as seen" = "標記訊息為已讀"; +"Mark seen" = "標記已讀"; +"Marked as viewed" = "標記為已閱覽"; +"Marked messages as seen" = "標記訊息為已查看"; +"Mentions" = "提及"; +"Message from %@ was unsent" = "%@ 的訊息已撤回"; +"Message sender not found" = "找不到訊息發送者"; +"Messages settings" = "訊息設定"; +"Mute story audio" = "靜音故事音訊"; +"no audio track could be read" = "無法讀取音訊軌道"; +"No audio URL found. Try again after refreshing the chat." = "找不到音訊 URL。請刷新聊天後再試。"; +"No mentions in this story" = "此故事中無提及"; +"No thread key" = "找不到討論串金鑰"; +"No video selected" = "未選擇影片"; +"No voice send method found" = "找不到語音發送方式"; +"Note has no downloadable content" = "備註沒有可下載的內容"; +"Note text copied" = "筆記文字已複製"; +"Open GitHub" = "開啟 GitHub"; +"Pick audio or video" = "選擇音訊或影片"; +"Read receipts disabled" = "已停用已讀回條"; +"Read receipts enabled" = "已啟用已讀回條"; +"Read receipts will be blocked for this chat." = "此聊天將封鎖已讀回條。"; +"Read receipts will no longer be blocked for this chat." = "此聊天將不再封鎖已讀回條。"; +"Refreshing the DMs tab will clear %lu preserved unsent message. This cannot be undone." = "重新整理私訊分頁會清除 %lu 則保留的訊息。此操作無法復原。"; +"Refreshing the DMs tab will clear %lu preserved unsent messages. This cannot be undone." = "重新整理私訊分頁會清除 %lu 則保留的訊息。此操作無法復原。"; +"Remove" = "移除"; +"Remove from block list" = "從封鎖清單移除"; +"Remove from exclude list" = "從排除清單移除"; +"Removed" = "已移除"; +"Removed from list" = "已從清單移除"; +"Save GIF" = "儲存 GIF"; +"Selection too short (min 0.5s)" = "選取太短(最短 0.5 秒)"; +"Send anyway" = "仍要傳送"; +"Send Audio" = "傳送音訊"; +"Send failed: %@" = "傳送失敗:%@"; +"Send File" = "傳送檔案"; +"Send service not found" = "找不到傳送服務"; +"Show audio toggle" = "顯示音訊切換"; +"Show mark-as-viewed button" = "顯示標記已檢視按鈕"; +"Story read receipts disabled" = "故事已讀回條已停用"; +"Story read receipts enabled" = "故事已讀回條已啟用"; +"This chat will resume normal read-receipt behavior." = "此聊天將恢復正常的已讀回條行為。"; +"This file" = "此檔案"; +"Total: %@" = "總計:%@"; +"Un-exclude chat" = "取消排除聊天"; +"Un-exclude story seen" = "取消排除故事已讀"; +"Un-excluded" = "已取消排除"; +"Unblocked" = "已解除封鎖"; +"Unlimited replay enabled" = "已啟用無限重播"; +"Unmute story audio" = "取消靜音故事音訊"; +"Unsent" = "未發送"; +"Upload Audio" = "上傳音訊"; +"VC not found" = "找不到 VC"; +"Video from Library" = "從資料庫選擇影片"; +"Visual messages will expire" = "視覺訊息將會過期"; +"Visual messages: expiring" = "視覺訊息:即將過期"; +"Visual messages: unlimited replay" = "視覺訊息:無限重播"; + +////////////////////////////////////////////////////////////////////////////// +// CHAT BACKGROUNDS // +// Custom per-chat image backgrounds: importer, library, per-image // +// settings, chat picker, defaults. // +////////////////////////////////////////////////////////////////////////////// + +"Add Background" = "新增背景"; +"Add Chat Background" = "新增聊天背景"; +"Adds your own image backgrounds to Instagram chats" = "為 Instagram 聊天加入你自己的圖片背景"; +"After enabling, open any chat, tap the theme button, then tap the photo icon at the top-right." = "啟用後,開啟任一聊天,點一下主題按鈕,再點右上角的相片圖示。"; +"Blur" = "模糊"; +"Browse chats" = "瀏覽聊天"; +"Browse chats (%ld)" = "瀏覽聊天 (%ld)"; +"Change Background" = "變更背景"; +"Change default" = "變更預設"; +"Chat Backgrounds" = "聊天背景"; +"Choose an image used when no chat override exists" = "選擇一張圖片,於聊天未設定個別背景時使用"; +"Clear default" = "清除預設"; +"Couldn't import image" = "無法匯入圖片"; +"Adjust settings" = "調整設定"; +"Choose Media" = "選擇媒體"; +"Converting GIF" = "正在轉換 GIF"; +"Couldn't import video" = "無法匯入影片"; +"Crop & resize" = "裁剪與調整大小"; +"Crop & trim" = "裁剪與修剪"; +"Custom Chat Background" = "自訂聊天背景"; +"Default background" = "預設背景"; +"Dim in dark mode" = "深色模式時調暗"; +"Enable custom backgrounds" = "啟用自訂背景"; +"Enter a username, chat name, or thread ID." = "輸入使用者名稱、聊天名稱或對話 ID。"; +"Group" = "群組"; +"Image Settings" = "圖片設定"; +"Auto bubble color" = "自動氣泡顏色"; +"Bubble color" = "氣泡顏色"; +"Me" = "我"; +"Both" = "兩者"; +"Gradient" = "漸層"; +"Direction" = "方向"; +"Vertical" = "垂直"; +"Horizontal" = "水平"; +"Diagonal" = "對角線"; +"Text color" = "文字顏色"; +"Automatic (contrast)" = "自動(對比)"; +"Choose color…" = "選擇顏色…"; +"Tap to apply · hold to edit" = "點按套用 · 長按編輯"; +"Library" = "圖庫"; +"Library, default, and per-chat overrides will be deleted." = "圖庫、預設與各聊天個別設定都將被刪除。"; +"No Custom" = "無自訂"; +"Opacity" = "不透明度"; +"Photo Library" = "照片圖庫"; +"Pick default" = "選擇預設"; +"Pinch + drag to position" = "捏合 + 拖曳以調整位置"; +"Quit and reopen Instagram for the change to take effect." = "結束並重新開啟 Instagram 以使變更生效。"; +"Recently set" = "最近設定"; +"Remove the global fallback background" = "移除全域備用背景"; +"Replace the default background image" = "替換預設背景圖片"; +"Reset sets opacity to 1.0, blur to 0, dim to 0." = "重設會將不透明度設為 1.0、模糊設為 0、調暗設為 0。"; +"RyukGram Gallery" = "RyukGram 圖庫"; +"Search username, name, or thread ID" = "搜尋使用者名稱、名稱或對話 ID"; +"Set as default" = "設為預設"; +"Tap plus to add. Tap a background to edit, set as default, or delete." = "點一下加號以新增。點一下背景可編輯、設為預設或刪除。"; +"This Chat Background" = "此聊天背景"; +"Thread ID" = "對話 ID"; +"Used only when a chat does not have its own custom background." = "僅在聊天沒有自己的自訂背景時使用。"; +"View and manage chats with custom backgrounds" = "查看與管理具有自訂背景的聊天"; + +////////////////////////////////////////////////////////////////////////////// +// GENERAL FEATURES // +// Strings inside per-feature overlays: fake location, color picker, notes // +// customization, profile copy, etc. // +////////////////////////////////////////////////////////////////////////////// + +"Add location" = "新增位置"; +"Add preset" = "新增預設"; +"Affects everything above. When off, RyukGram's theme and surface overrides only apply while iOS is in dark mode — leaving light mode untouched." = "影響上方所有項。關閉時,RyukGram 的主題和介面覆蓋僅在 iOS 處於深色模式時生效——淺色模式保持不變。"; +"Apply & restart" = "套用並重新啟動"; +"Background" = "背景"; +"Behavior" = "行為"; +"Change location" = "更改位置"; +"Clipboard is not an Instagram URL" = "剪貼簿內容不是 Instagram 網址"; +"Comments hidden" = "留言已隱藏"; +"Comments shown" = "留言已顯示"; +"Copied text to clipboard" = "文字已複製到剪貼簿"; +"Copy" = "複製"; +"Copy bio" = "複製個人簡介"; +"Copy name" = "複製名稱"; +"Could not find cover image" = "找不到封面圖片"; +"Current: %@" = "目前:%@"; +"Dark" = "深色"; +"Disable" = "停用"; +"Download GIF" = "下載 GIF"; +"Dropped pin" = "釘選位置"; +"Emoji" = "表情符號"; +"Enable" = "啟用"; +"Enable Location Services for Instagram in Settings to use your current location." = "請在設定中為 Instagram 啟用定位服務以使用目前位置。"; +"Enter emoji" = "輸入表情符號"; +"Fake location" = "假位置"; +"Force theme" = "強制主題"; +"Keyboard theme" = "鍵盤主題"; +"Light" = "淺色"; +"Location access denied" = "定位存取被拒"; +"Location Services off" = "定位服務已關閉"; +"Name" = "名稱"; +"Nothing to copy" = "無內容可複製"; +"Off, Light, Dark, or OLED" = "關閉、淺色、深色或 OLED"; +"OLED" = "OLED"; +"OLED chat theme" = "OLED 聊天主題"; +"Open Settings" = "開啟設定"; +"Optional per-surface overrides. Each one is independent of the theme above." = "可選的按介面覆蓋。每項獨立於上方的主題。"; +"Override iOS appearance regardless of system mode" = "無論系統模式如何都覆蓋 iOS 外觀"; +"Override the keyboard appearance when typing" = "打字時覆寫鍵盤外觀"; +"Pick location" = "選擇位置"; +"Pure black DM thread + incoming bubbles" = "純黑色私訊背景與收到訊息氣泡"; +"Save" = "儲存"; +"Save preset" = "儲存預設"; +"Saved locations" = "已儲存位置"; +"Select color" = "選擇顏色"; +"Set location" = "設定位置"; +"The theme RyukGram applies to Instagram." = "RyukGram 套用於 Instagram 的主題。"; +"Theme" = "主題"; +"Turn Location Services on in Settings → Privacy to use your current location." = "請在設定 → 隱私中開啟定位服務以使用目前位置。"; +"Type an emoji to use as the note bubble icon." = "輸入用作便箋氣泡圖示的表情符號。"; +"Profile picture" = "大頭貼照"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE ANALYZER // +// Settings → Profile Analyzer // +////////////////////////////////////////////////////////////////////////////// + +"%@ %lu accounts? The first %ld will be processed to avoid rate limits." = "%@ %lu 個帳號?為避免速率限制,僅處理前 %ld 個。"; +"%@ %lu accounts? This runs sequentially with a short pause between each." = "%@ %lu 個帳號?此操作會依序執行,每個之間有短暫停頓。"; +"%@ followers · %@ following" = "%@ 位粉絲 · %@ 個追蹤中"; +"%@ · %ld" = "%@ · %ld"; +"%dd ago" = "%d 天前"; +"%dh ago" = "%d 小時前"; +"%dm ago" = "%d 分鐘前"; +"%lu accounts followed" = "已追蹤 %lu 個帳號"; +"%lu accounts unfollowed" = "已取消追蹤 %lu 個帳號"; +"%lu followers · %lu following" = "%lu 粉絲 · %lu 追蹤中"; +"%lu followers removed" = "已移除 %lu 位粉絲"; +"%lu of %lu" = "%lu / %lu"; +"%lu of %lu checks on" = "已開啟 %2$lu 項檢查中的 %1$lu 項"; +"%lu saved · comparing against %@" = "已儲存 %lu 個 · 比對對象為 %@"; +"(empty)" = "(空)"; +"(no analyzer data)" = "(無分析器資料)"; +"a saved snapshot" = "已儲存的快照"; +"About Profile Analyzer" = "關於個人檔案分析器"; +"All preferences (%lu)" = "所有偏好設定 (%lu)"; +"Analysis complete" = "分析完成"; +"Analysis failed" = "分析失敗"; +"Another analysis is already running" = "已經有另一個分析正在執行"; +"Available after your next scan" = "將於下次掃描後提供"; +"Batch follow" = "批次追蹤"; +"Batch follow finished" = "批次追蹤完成"; +"Batch remove followers" = "批次移除粉絲"; +"Batch remove followers finished" = "批次移除粉絲已完成"; +"Batch unfollow" = "批次取消追蹤"; +"Batch unfollow finished" = "批次取消追蹤完成"; +"Categories" = "類別"; +"Checks" = "檢查項"; +"Clear visited profiles" = "清除瀏覽過的個人檔案"; +"Compare next scan against" = "下次掃描的比對對象"; +"Comparing against %@" = "比對對象為 %@"; +"Continue" = "繼續"; +"Couldn't fetch profile information" = "無法取得個人資料資訊"; +"Delete %lu snapshots? This can't be undone." = "刪除 %lu 個快照?此動作無法復原。"; +"Delete (%lu)" = "刪除 (%lu)"; +"Delete snapshots" = "刪除快照"; +"Delete this snapshot? This can't be undone." = "刪除此快照?此動作無法復原。"; +"Each scan saves a full copy of your followers and following so you can compare against it later. Everything stays on this device." = "每次掃描都會完整儲存你的粉絲與追蹤中清單,方便日後比對。所有資料都保留在此裝置上。"; +"Export" = "匯出"; +"Fetching followers (%lu/%ld)…" = "正在取得粉絲 (%lu/%ld)…"; +"Fetching following (%lu/%ld)…" = "正在取得追蹤中 (%lu/%ld)…"; +"Fetching profile info…" = "正在取得個人資料資訊…"; +"File is not a valid RyukGram backup." = "檔案不是有效的 RyukGram 匯出檔。"; +"Filter" = "篩選"; +"Filter · %lu" = "篩選 · %lu"; +"First scan: %@" = "首次掃描:%@"; +"First scan: we collect your followers and following lists and save them locally." = "首次掃描:我們會收集你的粉絲及追蹤清單並儲存在本機。"; +"Follow back" = "回追"; +"Follower count exceeds %ld — analysis disabled to avoid rate limits." = "粉絲數超過 %ld — 已停用分析以避免速率限制。"; +"Followers" = "粉絲"; +"Following… %lu / %lu" = "追蹤中… %lu / %lu"; +"Gained since last scan" = "自上次掃描後增加"; +"Heads up: this feature hits Instagram's private API. Running it back-to-back or right after heavy follow/unfollow activity can trigger a short rate-limit. Use it sparingly and at your own risk." = "注意:此功能會呼叫 Instagram 的私有 API。連續執行或在大量追蹤/取消追蹤活動之後立即執行可能觸發短暫速率限制。請謹慎使用,風險自負。"; +"Import complete" = "匯入完成"; +"Include" = "包含"; +"Keep newest" = "保留最新"; +"Keep newest snapshots" = "保留最新的快照"; +"Large accounts are blocked: analysis is disabled above 13,000 followers to avoid Instagram rate-limiting the whole app." = "大型帳號已被封鎖:粉絲數超過 13,000 時停用分析,以避免 Instagram 對整個應用程式施加速率限制。"; +"Last scan: %@" = "上次掃描:%@"; +"Logs every profile you open. Stays on-device." = "記錄你開啟的每個個人檔案,僅保存於裝置上。"; +"Lost followers" = "失去的粉絲"; +"Most visited" = "最常瀏覽"; +"Mutual followers" = "互相追蹤"; +"Name: %@ → %@" = "名稱:%@ → %@"; +"New followers" = "新粉絲"; +"NEW" = "新"; +"New first" = "新的優先"; +"New only" = "僅限新增"; +"No active Instagram session found" = "找不到已登入的 Instagram 工作階段"; +"No results" = "無結果"; +"No scan yet" = "尚未掃描"; +"Not following you back" = "未回追你"; +"Not verified only" = "僅限未認證"; +"Nothing is uploaded — everything stays on this device and can be wiped from the trash icon." = "不會上傳任何資料 — 所有資料僅保留在此裝置,可透過垃圾桶圖示清除。"; +"Nothing was applied." = "未套用任何變更。"; +"OK" = "OK"; +"Older snapshots beyond the limit are removed automatically" = "超出上限的舊快照會自動移除"; +"Older snapshots beyond this limit are deleted on the next scan." = "超出此上限的舊快照會在下次掃描時刪除。"; +"Pick what to remove. Snapshots clears the scan diffs and every recorded snapshot; visited profiles wipes the visit history." = "選擇要移除的項目。「快照」會清除掃描差異與所有已記錄的快照;「造訪過的個人檔案」會清除造訪紀錄。"; +"Pick which categories each scan computes. A disabled check is greyed out and skipped — it won't be calculated or shown." = "選擇每次掃描計算哪些類別。已關閉的檢查會顯示為灰色並被略過——既不會計算也不會顯示。"; +"Posts" = "貼文"; +"Preferences" = "偏好設定"; +"Previous scan" = "上次掃描"; +"Private account" = "私人帳號"; +"Private only" = "僅限私人"; +"Profile Analyzer" = "個人檔案分析器"; +"Profile Analyzer data" = "個人檔案分析器資料"; +"Profile picture changed" = "大頭貼已變更"; +"Profile updates" = "個人檔案更新"; +"Profiles you've opened recently" = "你最近開啟的個人檔案"; +"Raw" = "原始"; +"Raw JSON" = "原始 JSON"; +"Record snapshots" = "記錄快照"; +"Remove @%@ as a follower?" = "將 @%@ 從粉絲中移除?"; +"Remove follower" = "移除粉絲"; +"Removing… %lu / %lu" = "正在移除… %lu / %lu"; +"Recording" = "錄製中"; +"Request failed" = "請求失敗"; +"Reset analyzer data" = "重設分析器資料"; +"Reset complete" = "重設完成"; +"Reset everything" = "全部重設"; +"Reset selected data?" = "要重設選取的資料嗎?"; +"Reset snapshots" = "重設快照"; +"Rolling — always your last run" = "滾動式 — 永遠是你最近一次的執行"; +"Run analysis" = "執行分析"; +"Run your first analysis" = "執行首次分析"; +"Save a dated entry on every scan" = "每次掃描都儲存一筆附日期的紀錄"; +"Second scan onward: each scan compares against the last, so we can show gained/lost followers, your own follow/unfollow moves, and profile updates." = "第二次掃描起:每次掃描都會與上一次比較,以顯示增加/失去的粉絲、你自己的追蹤/取消追蹤動作,以及個人檔案更新。"; +"Settings" = "設定"; +"Since last scan" = "自上次掃描後"; +"Snapshot" = "快照"; +"Snapshot saved" = "快照已儲存"; +"Snapshots" = "快照"; +"Snapshots let you archive each scan and pick which one new scans compare against. Track visits records every profile you open so you can review them here." = "快照可讓你封存每次掃描,並選擇新掃描的比對對象。追蹤造訪會記錄你開啟的每個個人檔案,方便你在此查看。"; +"Sort" = "排序"; +"Starting…" = "開始中…"; +"They follow you, you don't follow back" = "對方追蹤你,你未回追"; +"This can't be undone." = "此操作無法復原。"; +"Ticked data will be cleared. Tap a row to see what's stored." = "選取的資料將被清除。點擊任一列以檢視已儲存內容。"; +"Today" = "今天"; +"Too many followers" = "粉絲過多"; +"Too many followers to analyze" = "粉絲數量過多,無法分析"; +"Track visited profiles" = "追蹤瀏覽過的個人檔案"; +"Tracking" = "追蹤"; +"Tracking off — enable below to log visits" = "追蹤已關閉 — 在下方啟用以記錄瀏覽"; +"Unfollow" = "取消追蹤"; +"Unfollow %lu" = "取消追蹤 %lu"; +"Unfollow @%@?" = "取消追蹤 @%@?"; +"Unfollowed you since last scan" = "自上次掃描後取消追蹤你"; +"Unfollowing… %lu / %lu" = "取消追蹤中… %lu / %lu"; +"Unlimited" = "無限制"; +"Username A → Z" = "使用者名稱 A → Z"; +"Username Z → A" = "使用者名稱 Z → A"; +"Username, name or picture changes" = "使用者名稱、名稱或大頭貼變更"; +"Username: @%@ → @%@" = "使用者名稱:@%@ → @%@"; +"Using %@ across %lu snapshots." = "在 %lu 個快照中使用 %@。"; +"Verified only" = "僅限已認證"; +"Visited" = "已瀏覽"; +"Visited profiles" = "瀏覽過的個人檔案"; +"We refuse to run when the follower count exceeds %ld to avoid Instagram rate limits." = "粉絲數超過 %ld 時我們拒絕執行,以避免 Instagram 速率限制。"; +"You both follow each other" = "你們互相追蹤"; +"You don't follow back" = "你未回追"; +"You follow them, they don't follow back" = "你追蹤對方,對方未回追"; +"You started following" = "你開始追蹤"; +"Your current scan was archived" = "您目前的掃描已封存"; +"You unfollowed" = "你已取消追蹤"; +"your previous scan" = "你的上次掃描"; +"“Previous scan” always measures against your last run. Pick a saved snapshot to compare against a fixed point in time instead." = "「上次掃描」一律以你最近一次的執行為基準。選擇已儲存的快照可改為比對固定的時間點。"; +"⚠️ This is getting large — lower the limit or delete older snapshots to free space." = "⚠️ 容量越來越大 — 請降低上限或刪除舊快照以釋放空間。"; + +////////////////////////////////////////////////////////////////////////////// +// SETTINGS VIEWS & DIALOGS // +// Excluded-lists managers, backup/restore flows, in-picker labels. // +////////////////////////////////////////////////////////////////////////////// + +"Absolute format" = "絕對格式"; +"Add chat" = "新增聊天"; +"Add custom domain" = "新增自訂網域"; +"Add to list?" = "要加入清單嗎?"; +"Add user" = "新增使用者"; +"Apply" = "套用"; +"Apply to" = "套用至"; +"Chats" = "聊天"; +"Colored" = "彩色"; +"Could not read file." = "無法讀取檔案。"; +"Could not resolve user ID" = "無法解析使用者 ID"; +"Current location" = "目前位置"; +"Custom" = "自訂"; +"Delete" = "刪除"; +"Each surface in IG goes through a different NSDate formatter. Toggle the ones you want this format to apply to." = "IG 的每個介面使用不同的 NSDate 格式化器。開啟你想套用此格式的介面。"; +"Enable fake location" = "啟用假位置"; +"Excluded chats" = "排除的聊天"; +"Excluded users" = "排除的使用者"; +"Follow default" = "遵循預設"; +"Force OFF (allow unsends)" = "強制關閉(允許撤回)"; +"Force ON (preserve unsends)" = "強制開啟(保留撤回)"; +"Include seconds when the format already shows time. The custom format controls seconds itself with {ss}." = "當格式已顯示時間時也包含秒。自訂格式透過 {ss} 自行控制秒。"; +"Add custom format…" = "新增自訂格式…"; +"Edit" = "編輯"; +"Template" = "範本"; +"Placeholders" = "佔位符"; +"Placeholders are replaced with date parts; anything else is shown as-is." = "佔位符會被替換為日期部分;其餘內容按原樣顯示。"; +"Tap a placeholder to insert it at the cursor." = "點按佔位符即可在游標處插入。"; +"Included chats" = "包含的聊天"; +"Included users" = "包含的使用者"; +"KD: default" = "KD:預設"; +"KD: ON" = "KD:開啟"; +"Keep-deleted" = "保留已刪除"; +"Keep-deleted override" = "保留已刪除覆寫"; +"Name (A–Z)" = "名稱 (A–Z)"; +"No DM thread found with @%@" = "找不到與 @%@ 的私訊串"; +"Presets" = "預設組合"; +"Recently added" = "最近新增"; +"Relative time" = "相對時間"; +"Relative within" = "相對時間範圍"; +"Remove from list" = "從清單移除"; +"Reset" = "重設"; +"Search" = "搜尋"; +"Search address or place" = "搜尋地址或地點"; +"Search by name or username" = "依名稱或使用者名稱搜尋"; +"Search by username or name" = "依使用者名稱或名稱搜尋"; +"Select location on map" = "在地圖上選擇位置"; +"Set current location" = "設定目前位置"; +"Set keep-deleted override" = "設定保留已刪除覆寫"; +"Show map button" = "顯示地圖按鈕"; +"Show relative time for dates younger than this many days. 0 disables it." = "比指定天數新的日期會顯示相對時間。0 表示關閉。"; +"Show seconds" = "顯示秒數"; +"Sort by" = "排序依據"; +"Thread" = "對話"; +"Time" = "時間"; +"Use this location" = "使用此位置"; +"User '%@' not found" = "找不到使用者 '%@'"; +"Username (A–Z)" = "使用者名稱 (A–Z)"; +"Within %ld days" = "%ld 天以內"; +"Within 1 day" = "1 天以內"; + +////////////////////////////////////////////////////////////////////////////// +// REELS (FEATURES) // +// Strings from Reels. // +////////////////////////////////////////////////////////////////////////////// + +"No password found" = "找不到密碼"; +"No text field found" = "找不到文字欄位"; +"Refresh Reels?" = "重新整理 Reels?"; + +////////////////////////////////////////////////////////////////////////////// +// PROFILE (FEATURES) // +// Strings from Profile. // +////////////////////////////////////////////////////////////////////////////// + +"%lu accounts" = "%lu 個帳號"; +"%lu loaded" = "已載入 %lu 個"; +"%lu loaded · all loaded" = "已載入 %lu 個 · 全部載入完成"; +"Doesn't follow you" = "未追蹤你"; +"Everyone is already loaded." = "所有人都已載入。"; +"Filter & sort" = "篩選與排序"; +"Follows me" = "追蹤我"; +"Follows me first" = "追蹤我的優先"; +"Follows you" = "追蹤你"; +"Hides everyone who doesn't match all picked filters." = "隱藏所有不符合全部所選篩選條件的人。"; +"Jump to bottom" = "跳至底部"; +"Jump to top" = "跳至頂部"; +"List" = "清單"; +"List fully loaded" = "清單已全部載入"; +"Load more" = "載入更多"; +"Loaded more" = "已載入更多"; +"Mutuals" = "互相追蹤"; +"Mutuals first" = "互相追蹤的優先"; +"Note copied" = "備註已複製"; +"People I follow" = "我追蹤的人"; +"People I follow first" = "我追蹤的人優先"; +"Reverse order" = "反向排序"; +"Show only" = "僅顯示"; +"Verified" = "已驗證"; +"Verified first" = "已驗證的優先"; + +////////////////////////////////////////////////////////////////////////////// +// MISC // +// Anything that didn't fit a named section. Usually short labels. // +////////////////////////////////////////////////////////////////////////////// + +"(unset)" = "(未設定)"; +"720p • progressive • fastest" = "720p • 漸進式 • 最快"; +"Add language" = "新增語言"; +"Album name" = "相簿名稱"; +"Are you sure?" = "你確定嗎?"; +"Bundle" = "Bundle"; +"Copy audio URL" = "複製音訊網址"; +"Copy quality info" = "複製品質資訊"; +"Copy video URL" = "複製影片網址"; +"Could not access reel media" = "無法存取 Reels 媒體"; +"Could not access reel photo" = "無法存取 Reels 照片"; +"Could not write file." = "無法寫入檔案。"; +"Download all and share?" = "全部下載並分享?"; +"Download Quality" = "下載品質"; +"Downloading %d%%" = "正在下載 %d%%"; +"e.g. 1000000" = "例如 1000000"; +"Localization file not found" = "找不到翻譯檔案"; +"Enter the language code (e.g. fr, de, ja)" = "請輸入語言代碼(例如 fr、de、ja)"; +"Error" = "錯誤"; +"Extras" = "附加項目"; +"FFmpegKit Debug" = "FFmpegKit 除錯"; +"File is empty or not a valid .strings file." = "檔案是空的或不是有效的 .strings 檔案。"; +"KD: OFF" = "保留已刪除:關閉"; +"Keep-deleted: OFF" = " • 保留已刪除:關閉"; +"Keep-deleted: ON" = " • 保留已刪除:開啟"; +"Later" = "稍後"; +"Loading" = "載入中"; +"Name of the Photos album RyukGram saves into. Leave empty to restore the default." = "RyukGram 儲存到的「照片」相簿名稱。留空以恢復預設。"; +"Next" = "下一步"; +"No results found." = "找不到結果。"; +"No!" = "不要!"; +"Pick a language to update, or add a new one" = "選擇要更新的語言,或新增一種語言"; +"Preset" = "預設組合"; +"Restart" = "重新啟動"; +"Restart now" = "立即重新啟動"; +"Restart required" = "需要重新啟動"; +"Saved preset \"%@\"" = "已儲存預設組合 \"%@\""; +"selected" = "已選取"; +"Shared icon, or override per button" = "共用圖示,或可個別按鈕覆寫"; +"Speed" = "速度"; +"Unset" = "未設定"; +"Update localization" = "更新翻譯"; +"Updated %@ (%ld keys). Restart to apply." = "已更新 %@(%ld 個鍵)。重新啟動以套用。"; +"Use default" = "使用預設"; +"Username or PK" = "使用者名稱或 PK"; +"Username or raw user PK" = "使用者名稱或原始使用者 PK"; +"Yes" = "是"; +"You must restart the app to apply this change" = "您必須重新啟動應用程式以套用此變更"; + +////////////////////////////////////////////////////////////////////////////// +// ABOUT / CREDITS // +// Strings from the About / Credits footer of Settings. // +////////////////////////////////////////////////////////////////////////////// + +"Enjoying RyukGram?" = "喜歡 RyukGram 嗎?"; +"It's free, and nothing leaves your device. If you enjoy using it, a coffee keeps it going." = "它是免費的,也沒有任何資料離開你的裝置。如果你用得開心,一杯咖啡就能讓它繼續下去。"; +"Donate" = "捐贈"; +"I already did" = "我已經捐過了"; +"Maybe later" = "以後再說"; +"This means a lot" = "這對我意義重大"; +"Appreciate the support" = "感謝支持"; +"No worries, enjoy the tweak" = "沒關係,好好享用吧"; +"%@ — GitHub, Telegram, Donate" = "%@ — GitHub、Telegram、捐贈"; +"About" = "關於"; +"Arabic translation" = "阿拉伯文翻譯"; +"Chinese (Traditional and Simplified) translation" = "中文(繁體與簡體)翻譯"; +"Credits" = "製作團隊"; +"Developers" = "開發者"; +"installed" = "已安裝"; +"Korean translation" = "韓文翻譯"; +"Portuguese (Brazil) translation" = "葡萄牙文(巴西)翻譯"; +"Turkish translation" = "土耳其語翻譯"; +"Vietnamese translation" = "越南語翻譯"; +"French translation" = "法語翻譯"; +"Japanese translation" = "日語翻譯"; +"Code contributions" = "程式碼貢獻"; +"Following feed mode (from InstaSane)" = "追蹤中動態模式(來自 InstaSane)"; +"latest" = "最新"; +"Links" = "連結"; +"No releases" = "無版本發行"; +"SCInsta developer" = "SCInsta 開發者"; +"Release notes" = "版本說明"; +"Releases" = "版本發行"; +"Report an issue" = "回報問題"; +"Russian translation" = "俄文翻譯"; +"RyukGram developer" = "RyukGram 開發者"; +"Join Telegram channel" = "加入 Telegram 頻道"; +"Source code" = "原始碼"; +"View on GitHub" = "在 GitHub 查看"; +"Spanish translation" = "西班牙文翻譯"; +"Inspirations" = "靈感來源"; +"Inspirations, contributors, translators" = "靈感來源、貢獻者、翻譯者"; +"Code and research" = "程式碼與研究"; +"Translators" = "翻譯者"; +"BHInstagram developer" = "BHInstagram 開發者"; +"OLED theme inspiration" = "OLED 主題靈感"; +"Donate to Ryuk" = "捐贈 Ryuk"; +"Support RyukGram development" = "支持 RyukGram 開發"; +"RyukGram is an independent project inspired by SCInsta." = "RyukGram 是一個受 SCInsta 啟發的獨立專案。"; +"Browse changes from previous releases" = "查看以往版本的變更"; +"Code inspiration" = "程式碼靈感"; +"zxPluginsInject sideload compatibility shim" = "zxPluginsInject 側載相容性墊片"; +"Telegram channel" = "Telegram 頻道"; +"Testing and feature suggestions" = "測試與功能建議"; +"Version" = "版本"; +"Version, credits, and links" = "版本、製作團隊與連結"; +"What's new in RyukGram" = "RyukGram 有什麼新功能"; + +////////////////////////////////////////////////////////////////////////////// +// HD DOWNLOADS // +// Enhanced / HD downloads settings (DASH + FFmpegKit encoding). // +////////////////////////////////////////////////////////////////////////////// + +"720p • progressive • silent" = "720p • 漸進式 • 靜音"; +"Audio only" = "僅音訊"; +"Audio ready" = "音訊就緒"; +"Audio track %ld" = "音軌 %ld"; +"Download video at the highest available quality" = "下載最高可用品質的影片"; +"Downloads HD video via DASH streams and encodes to H.264. Requires FFmpegKit." = "透過 DASH 串流下載 HD 影片並編碼為 H.264。需要 FFmpegKit。"; +"Encoding in software" = "正在使用軟體編碼"; +"Encoding speed" = "編碼速度"; +"Enhanced downloads" = "增強下載"; +"Faster = lower quality" = "速度越快 = 品質越低"; +"FFmpeg not available" = "FFmpeg 不可用"; +"FFmpegKit is not available. Install the sideloaded IPA or the _ffmpeg .deb variant to enable." = "FFmpegKit 不可用。請安裝側載的 IPA 或 _ffmpeg .deb 版本以啟用。"; +"Hardware encoder isn't available in the background — your quality settings were kept." = "背景無法使用硬體編碼器 — 已保留你的畫質設定。"; +"No audio track found" = "找不到音訊軌"; +"Photo" = "照片"; +"Photo quality" = "照片品質"; +"Size unknown" = "大小未知"; +"calculating size…" = "正在計算大小…"; +"silent" = "靜音"; +"Use highest resolution available" = "使用最高可用解析度"; +"Video encoder locked up — restart Instagram to encode again" = "影片編碼器已卡死 — 請重新啟動 Instagram 後再編碼"; +"Video only" = "僅影片"; +"Video-only & every audio track" = "僅影片與所有音軌"; +"Video quality" = "影片品質"; +"Which quality to download" = "選擇下載的品質"; + +////////////////////////////////////////////////////////////////////////////// +// ADVANCED ENCODING // +// Advanced encoding page — codecs, profiles, CRF/bitrate, audio, // +// container. Manual ffmpeg controls behind “Advanced encoding” toggle. // +////////////////////////////////////////////////////////////////////////////// + +"'%@' is not in this FFmpegKit build — using hardware h264 instead." = "此 FFmpegKit 版本不含「%@」— 改用硬體 h264。"; +"10-bit 4:2:0. ~2x slower, smoother gradients." = "10-bit 4:2:0。慢約 2 倍,漸層更平滑。"; +"10-bit colour. Slower, smoother gradients. Software only." = "10-bit 色彩。較慢,漸層更平滑。僅限軟體。"; +"1080p30 baseline." = "1080p30 基準。"; +"4K30 baseline." = "4K30 基準。"; +"8-bit 4:2:0. Universal default." = "8-bit 4:2:0。通用預設。"; +"8-bit 4:2:2 chroma. Niche playback." = "8-bit 4:2:2 色度。小眾播放。"; +"8-bit 4:2:2 chroma. Software only." = "8-bit 4:2:2 色度。僅限軟體。"; +"8-bit 4:4:4 chroma. Software only." = "8-bit 4:4:4 色度。僅限軟體。"; +"8-bit 4:4:4 full chroma. Niche playback." = "8-bit 4:4:4 完整色度。小眾播放。"; +"8-bit. Best for modern devices." = "8-bit。最適合現代裝置。"; +"Advanced encoding" = "進階編碼"; +"Advanced encoding settings" = "進階編碼設定"; +"Archival quality." = "封存品質。"; +"Audio bitrate" = "音訊位元率"; +"Audio channels" = "音訊聲道"; +"Audio codec" = "音訊編碼器"; +"Audio conversion failed" = "音訊轉換失敗"; +"Audio sample rate" = "音訊取樣率"; +"Balanced. libx264 default." = "平衡。libx264 預設。"; +"Best practical quality per bit." = "每位元最佳實用品質。"; +"Bitrate, channels, and sample rate apply only when the codec is AAC (re-encoding)." = "位元率、聲道與取樣率僅在編碼器為 AAC(重新編碼)時適用。"; +"Cartoons / anime." = "卡通/動畫。"; +"Cinematic. Smaller files." = "電影感。檔案較小。"; +"Codec" = "編碼器"; +"Container" = "容器"; +"Copy (passthrough)" = "複製(直通)"; +"CRF quality" = "CRF 品質"; +"Downloading video…" = "正在下載影片…"; +"Easier to play back on weak devices." = "在效能較弱的裝置上更易播放。"; +"Encoder unavailable" = "編碼器無法使用"; +"Examples: 8M, 12M, 25M, 4500k. Leave empty for auto." = "範例:8M、12M、25M、4500k。留空為自動。"; +"Failed to download video" = "下載影片失敗"; +"Fast, fixed-bitrate, GPU-accelerated." = "快速、固定位元率、GPU 加速。"; +"Fastest, worst compression." = "最快,壓縮最差。"; +"Faststart" = "Faststart"; +"Faststart moves the MP4 index to the start so playback begins before the file fully buffers. Strip metadata removes source tags (creation date, handler, encoder) from the file." = "Faststart 會將 MP4 索引移到檔案開頭,讓播放在檔案完整緩衝前就能開始。移除中繼資料會從檔案移除來源標籤(建立日期、處理常式、編碼器)。"; +"FFmpeg documentation" = "FFmpeg 說明文件"; +"FFmpeg mux failed" = "FFmpeg 混流失敗"; +"Frame rate" = "幀率"; +"H.264 level" = "H.264 等級"; +"H.264 profile" = "H.264 設定檔"; +"Hardware (VideoToolbox)" = "硬體 (VideoToolbox)"; +"Hardware (VideoToolbox) only supports yuv420p — '%@' was ignored. Switch to Software (libx264) to use it." = "硬體 (VideoToolbox) 僅支援 yuv420p — 已忽略「%@」。切換到軟體 (libx264) 才能使用。"; +"Keep original audio. Fast." = "保留原始音訊。快速。"; +"Keep the source frame rate." = "保留來源幀率。"; +"Let the encoder pick." = "由編碼器選擇。"; +"Live-action video." = "實拍影片。"; +"Lossless. Huge files." = "無損。檔案龐大。"; +"Low-latency streaming." = "低延遲串流。"; +"Manual ffmpeg controls in place of Encoding speed." = "以手動 ffmpeg 控制取代編碼速度。"; +"Marginal gain, huge time cost." = "效益微小,耗時極大。"; +"Max resolution" = "最大解析度"; +"Mono" = "單聲道"; +"No tuning. Default." = "不調校。預設。"; +"None" = "無"; +"Pixel format" = "像素格式"; +"Pixel format ignored" = "像素格式已忽略"; +"Preserve film grain." = "保留膠片顆粒。"; +"Preset and Tune apply to Software (libx264) only. Pair profile with pixel format: high↔yuv420p, high10↔yuv420p10le, high422↔yuv422p, high444↔yuv444p. Mismatches downconvert silently. Hardware always uses yuv420p." = "預設組合與調校僅適用於軟體 (libx264)。設定檔需搭配對應的像素格式:high↔yuv420p、high10↔yuv420p10le、high422↔yuv422p、high444↔yuv444p。不相符時會靜默降轉。硬體一律使用 yuv420p。"; +"Re-encode. Use when source is opus or unsupported." = "重新編碼。當來源為 opus 或不支援時使用。"; +"Reset advanced encoding" = "重設進階編碼"; +"Setting a video bitrate switches Software to fixed-bitrate and ignores CRF. Leave empty for CRF. Hardware uses bitrate." = "設定影片位元率會讓軟體切換為固定位元率並忽略 CRF。留空則使用 CRF。硬體使用位元率。"; +"Slideshow-like content." = "幻燈片類內容。"; +"Slower, better compression per bit." = "較慢,每位元壓縮更佳。"; +"Smaller, visible artefacts." = "檔案較小,有可見瑕疵。"; +"Software (libx264)" = "軟體 (libx264)"; +"Standard 8-bit." = "標準 8-bit。"; +"Stereo" = "立體聲"; +"Streaming default." = "串流預設。"; +"Strip metadata" = "移除中繼資料"; +"Top of AAC." = "AAC 最高品質。"; +"Tune" = "調校"; +"Unknown error" = "未知錯誤"; +"Very high quality." = "非常高品質。"; +"Video bitrate" = "影片位元率"; +"Video codec" = "影片編碼器"; +"Visually lossless. RyukGram default." = "視覺無損。RyukGram 預設。"; +"Widest compatibility, no B-frames." = "最廣相容性,無 B 影格。"; +"Worst quality." = "最差品質。"; + +////////////////////////////////////////////////////////////////////////////// +// ACTION MENU CONFIG // +// Profile action button: per-section toggles, reorder handles, default-tap // +// behavior, reset confirmations, action catalog labels. // +////////////////////////////////////////////////////////////////////////////// + +"Long-press gestures" = "長按手勢"; +"Inserts a button in the profile navigation header" = "在個人檔案導覽列中插入按鈕"; +"Adds a RyukGram action button to the profile header with copy, view picture, share, save, and profile-info entries. Tap opens the menu by default; change the tap behavior in Configure menu." = "在個人檔案頁首新增 RyukGram 操作按鈕,包含複製、查看大頭貼、分享、儲存與個人檔案資訊項目。預設點擊開啟選單;可在「設定選單」中更改點擊行為。"; +"Configure menu" = "設定選單"; +"Reorder, enable/disable, set default tap, show date" = "重新排序、啟用/停用、設定預設點擊、顯示日期"; +"Reorder, enable/disable, set default tap" = "重新排序、啟用/停用、設定預設點擊"; +"RyukGram profile actions" = "RyukGram 個人檔案操作"; +"Reorder sections" = "重新排序區段"; +"Drag the ≡ handle to reorder sections." = "拖曳 ≡ 把手重新排序區段。"; +"Drag the ≡ handle to reorder. Toggle a row off to hide it from the menu. Mark a section as a submenu to collapse its actions behind a single entry." = "拖曳 ≡ 把手重新排序。關閉某列以從選單中隱藏。將區段標記為子選單可將其操作收合於單一項目下。"; +"Show as submenu" = "顯示為子選單"; +"Collapse this section's actions behind a single entry" = "將此區段的操作收合於單一項目下"; +"Configure: %@" = "設定:%@"; +"What happens on a single tap. Long-press always opens the full menu." = "單擊時的動作。長按始終開啟完整選單。"; +"Reset to defaults" = "重設為預設值"; +"This will restore the default sections, order, and toggles for this menu." = "此操作會還原此選單的預設區段、順序與開關。"; +"Audio & visibility" = "音訊與顯示"; +"DM disappearing media" = "私訊消失訊息媒體"; +"Bulk download" = "批次下載"; +"Feed settings" = "動態消息設定"; +"Reels settings" = "短片設定"; +"Profile settings" = "個人檔案設定"; +"Stories settings" = "限時動態設定"; +"Copy ID" = "複製 ID"; +"Copy Info" = "複製資訊"; +"Copy all info" = "複製所有資訊"; +"Copy media URL" = "複製媒體網址"; +"Copy profile link" = "複製個人檔案連結"; +"Copy username" = "複製使用者名稱"; +"Download" = "下載"; +"Download to Gallery" = "下載至圖庫"; +"Download all to Gallery" = "全部下載至圖庫"; +"Exclude/include user" = "排除/包含使用者"; +"Mute / unmute audio" = "靜音/取消靜音音訊"; +"Save picture to Gallery" = "儲存圖片至圖庫"; +"Share picture" = "分享圖片"; +"View picture" = "查看圖片"; +"Bio" = "個人簡介"; +"ID" = "ID"; +"Info" = "資訊"; +"Profile info" = "個人檔案資訊"; +"Profile link" = "個人檔案連結"; +"Picture not found" = "找不到圖片"; +"Private profile" = "私人個人檔案"; +"Profile unavailable" = "個人檔案無法使用"; +"Public profile" = "公開個人檔案"; +"Username" = "使用者名稱"; +"Followers: %@" = "粉絲:%@"; +"Following: %@" = "追蹤中:%@"; +"Copied %@" = "已複製 %@"; + +////////////////////////////////////////////////////////////////////////////// +// GALLERY // +// On-device media library: enable + save mode, browsing, filters, sort, // +// delete tools, picker entries, and the Photos/Gallery download submenu. // +////////////////////////////////////////////////////////////////////////////// + +"%.0f kbps" = "%.0f kbps"; +"%.1f Mbps" = "%.1f Mbps"; +"(unknown)" = "(未知)"; +"Added %lu" = "已加入 %lu"; +"All files deleted" = "已刪除所有檔案"; +"Browsing" = "瀏覽"; +"Found %lu items saved by a previous version. Restore them into your gallery now?" = "找到 %lu 個由舊版本儲存的項目。現在還原到你的圖庫嗎?"; +"Gallery data from a previous version was found. Restore it now?" = "找到了舊版本的圖庫資料。現在還原嗎?"; +"Gallery restored" = "圖庫已還原"; +"Import failed" = "匯入失敗"; +"Import to Gallery" = "匯入到圖庫"; +"Imported" = "已匯入"; +"Importing…" = "正在匯入…"; +"Not Now" = "暫不"; +"Nothing imported" = "未匯入任何內容"; +"Restore" = "還原"; +"Restore Gallery" = "還原圖庫"; +"Restore failed" = "還原失敗"; +"Restoring gallery…" = "正在還原圖庫…"; +"By source" = "依來源"; +"By type" = "依類型"; +"By user" = "依使用者"; +"Clear filters" = "清除篩選"; +"Comment" = "留言"; +"Create" = "建立"; +"Create & Move" = "建立並移動"; +"Delete %@?" = "要刪除 %@ 嗎?"; +"Delete all files" = "刪除所有檔案"; +"Delete all images" = "刪除所有圖片"; +"Delete all videos" = "刪除所有影片"; +"Delete by user" = "依使用者刪除"; +"Delete DM media" = "刪除私訊媒體"; +"Delete feed posts" = "刪除動態貼文"; +"Delete files" = "刪除檔案"; +"Delete Folder" = "刪除資料夾"; +"Delete from Gallery?" = "要從圖庫刪除嗎?"; +"Delete profile pictures" = "刪除大頭貼"; +"Delete reels" = "刪除短片"; +"Delete selected" = "刪除所選項目"; +"Delete Selected Files?" = "刪除所選檔案?"; +"Delete stories" = "刪除限時動態"; +"Delete thumbnails" = "刪除縮圖"; +"Deleted from Gallery" = "已從圖庫刪除"; +"Deleted selected files" = "已刪除所選檔案"; +"Deselect All" = "取消全選"; +"DM media deleted" = "已刪除私訊媒體"; +"DMs" = "私訊"; +"Each user appears as a folder next to your real folders." = "每位使用者以資料夾形式與真實資料夾並列顯示。"; +"Each user gets a labelled section in the grid/list." = "每位使用者在格狀/清單中擁有具標籤的區段。"; +"Enable gallery" = "啟用圖庫"; +"Failed" = "失敗"; +"Failed to delete" = "刪除失敗"; +"Favorite" = "我的最愛"; +"Favorite selected" = "將所選加入我的最愛"; +"Favorites only" = "僅我的最愛"; +"Feed posts deleted" = "已刪除動態貼文"; +"Files deleted" = "已刪除檔案"; +"Flat list. No grouping." = "平面清單,不分組。"; +"Folder name" = "資料夾名稱"; +"Folders" = "資料夾"; +"From RyukGram Gallery" = "來自 RyukGram 圖庫的音訊"; +"Gallery" = "圖庫"; +"Gallery only" = "僅圖庫"; +"Gallery save mode" = "圖庫儲存模式"; +"Gallery Settings" = "圖庫設定"; +"GIFs" = "GIF"; +"Grid columns" = "網格欄數"; +"Grid view" = "網格檢視"; +"Group by user" = "依使用者分組"; +"Group first by" = "優先分組方式"; +"Order by" = "排序方式"; +"Favorites first" = "收藏優先"; +"Any time" = "任何時間"; +"This year" = "今年"; +"%ld columns" = "%ld 欄"; +"Hold DM tab to open gallery" = "長按 DM 分頁開啟圖庫"; +"Images" = "圖片"; +"Images deleted" = "已刪除圖片"; +"Images first" = "圖片優先"; +"item" = "項目"; +"items" = "項目"; +"Largest first" = "最大優先"; +"List view" = "清單檢視"; +"Long-press the inbox button in the bottom tab bar to open RyukGram gallery" = "長按底部分頁列的收件匣按鈕以開啟 RyukGram 圖庫"; +"Manage" = "管理"; +"More" = "更多"; +"Move selected" = "移動所選項目"; +"Move to Folder" = "移至資料夾"; +"Name A-Z" = "名稱 A-Z"; +"Name Z-A" = "名稱 Z-A"; +"New Folder" = "新增資料夾"; +"New folder…" = "新資料夾…"; +"Newest first" = "最新優先"; +"No files in Gallery" = "圖庫中沒有檔案"; +"No files to delete" = "無可刪除的檔案"; +"No matching files" = "沒有符合的檔案"; +"On-device library of media downloaded through RyukGram. Save mode picks where 'Download to Photos' actually writes." = "透過 RyukGram 下載的媒體在裝置上的庫存。儲存模式決定「下載至照片」實際寫入的位置。"; +"Open" = "開啟"; +"Open Original Post" = "開啟原始貼文"; +"Options" = "選項"; +"Other" = "其他"; +"Photos + Gallery" = "「照片」+ 圖庫"; +"Photos only" = "僅「照片」"; +"Profile pictures deleted" = "已刪除大頭貼"; +"Reels deleted" = "已刪除短片"; +"Rename" = "重新命名"; +"Rename Folder" = "重新命名資料夾"; +"Root" = "根目錄"; +"Save media from the preview screen\nto see it here." = "從預覽畫面儲存媒體\n即可在此看到。"; +"Saved %lu items to Gallery" = "已儲存 %lu 個項目至圖庫"; +"Saved to Gallery" = "已儲存至圖庫"; +"Saving to Gallery" = "正在儲存至圖庫..."; +"Search users" = "搜尋使用者"; +"Sections" = "區段"; +"Select All" = "全選"; +"Share" = "分享"; +"Share selected" = "分享所選項目"; +"Show favorites at top" = "我的最愛置頂顯示"; +"Show gallery entries in download menus and unlock the gallery button" = "在下載選單中顯示圖庫項目並解鎖圖庫按鈕"; +"Smallest first" = "最小優先"; +"Source" = "來源"; +"Source user" = "來源使用者"; +"Storage" = "儲存空間"; +"Stories deleted" = "已刪除限時動態"; +"Story" = "限時動態"; +"The original content may no longer exist." = "原始內容可能已不存在。"; +"This folder contains %ld file(s). They will be moved to the parent folder." = "此資料夾包含 %ld 個檔案。它們將被移至上層資料夾。"; +"This folder is empty." = "此資料夾為空。"; +"This will permanently remove %ld file%@ from the gallery." = "這將從圖庫永久移除 %ld 個檔案%@。"; +"This will permanently remove %ld file(s)." = "此操作將永久移除 %ld 個檔案。"; +"This will permanently remove this file from the gallery." = "此操作將永久從圖庫移除此檔案。"; +"Thumb" = "縮圖"; +"Thumbnails deleted" = "已刪除縮圖"; +"to Gallery" = "至圖庫"; +"Total files" = "檔案總數"; +"Total size" = "總大小"; +"Type" = "類型"; +"Unable to open original post" = "無法開啟原始貼文"; +"Unable to open profile" = "無法開啟個人檔案"; +"Unfavorite" = "取消我的最愛"; +"Unknown user" = "未知使用者"; +"User files deleted" = "已刪除使用者檔案"; +"Videos" = "影片"; +"Videos deleted" = "已刪除影片"; +"Videos first" = "影片優先"; +"When enabled, favorites are pinned above other files inside the current sort and folder context." = "啟用時,我的最愛會在目前排序與資料夾範圍內固定顯示於其他檔案上方。"; +"Where 'Download to Photos' actually writes when gallery is on" = "啟用圖庫時「下載至照片」實際寫入的位置"; +"Yesterday" = "昨天"; + +////////////////////////////////////////////////////////////////////////////// +// HOME SHORTCUT // +// Extra button on the home top bar (right of the create-post +) — picks // +// between Gallery, Changelog, etc. Configure-screen and the row reorderer. // +////////////////////////////////////////////////////////////////////////////// + +"Home shortcut button" = "主頁捷徑按鈕"; +"Show the extra button on the home top bar" = "設定主頁頂列的額外按鈕"; +"Auto" = "自動"; +"Icon" = "圖示"; +"Drag the ≡ handle to reorder. Toggle actions off to hide them. With one action enabled, tapping fires it directly. With two or more, tapping opens a menu." = "拖曳 ≡ 把手重新排序。關閉某列以隱藏該目標。啟用一項動作時點擊直接觸發;啟用兩項或以上時點擊顯示選單。"; +"Changelog" = "更新紀錄"; + +////////////////////////////////////////////////////////////////////////////// +// INTERFACE PAGE // +// Settings → Interface (renamed Navigation tab) // +////////////////////////////////////////////////////////////////////////////// + +"Adds an extra shortcut button beside the create-post + button on the home top bar." = "在首頁頂部列建立貼文「+」按鈕旁新增一個額外的捷徑按鈕。"; +"All buttons" = "所有按鈕"; +"System" = "系統"; +"Instagram language" = "Instagram 語言"; +"Choose icon, reorder actions, and enable menu items" = "選擇圖示、重新排序動作並啟用選單項目"; +"Choose the icon shown on the home top bar. Auto uses the selected action icon when only one action is enabled." = "選擇顯示在首頁頂部列的圖示。「自動」會在僅啟用一個動作時使用該動作的圖示。"; +"Configure button" = "設定按鈕"; +"Global Action Icons" = "全域動作圖示"; +"Interface" = "介面"; +"Override the icon for a specific button. Buttons left on Default follow the shared icon above." = "覆寫特定按鈕的圖示。維持「預設」的按鈕會沿用上方的共用圖示。"; +"Per button" = "個別按鈕"; +"Show home shortcut button" = "顯示首頁捷徑按鈕"; +"%ld new" = "%ld 則新"; +"Tab bar" = "標籤列"; +"Universal in-app notifications. Pick style, position, per-action routing (custom pill / IG-native / off)." = "應用內統一通知。選擇樣式、位置和按操作路由(藥丸 / IG 原生 / 關閉)。"; + +////////////////////////////////////////////////////////////////////////////// +// NOTIFICATIONS // +// Settings → Interface → Notifications + the universal pill / toast system // +////////////////////////////////////////////////////////////////////////////// + +"Drag the pill to position it" = "拖曳以放置通知"; +"Drag the pill where you want it. Higher than center slides down, lower slides up." = "將通知拖到想要的位置。高於中心向下滑出,低於則向上。"; + +"Notifications" = "通知"; +"Appearance" = "外觀"; +"Routing" = "路由"; +"Style" = "樣式"; +"Position" = "位置"; +"Stack size" = "堆疊數量"; +"Duration" = "持續時間"; +"Default surface" = "預設顯示方式"; +"System notifications" = "系統通知"; +"Mirror to notification centre" = "鏡像到通知中心"; +"While the app is in the background, toasts are delivered to the iOS notification centre instead so they aren't missed." = "App 在背景時,彈出提示會改為傳送到 iOS 通知中心,避免錯過。"; +"Clear when app opens" = "開啟 App 時清除"; +"Remove mirrored notifications from notification centre when you return to the app." = "返回 App 時,從通知中心移除已鏡像的通知。"; +"Background mirror" = "背景鏡像"; +"Show while app is open" = "應用程式開啟時也顯示"; +"Also deliver mirrored notifications as system banners while you're using the app, not just in the background." = "不僅在背景,使用應用程式時也將鏡像通知以系統橫幅形式傳送。"; +"Appearance, routing, system notifications and every per-action override return to their defaults." = "外觀、路由、系統通知以及每項操作的覆寫設定皆恢復為預設值。"; +"Uses Instagram's notification permission. Per-action overrides live in each action's menu under Background mirror; actions set to Off never mirror." = "使用 Instagram 的通知權限。每個動作的設定位於其選單中的「背景鏡像」;設為關閉的動作不會被鏡像。"; +"Enable notifications" = "啟用通知"; +"Haptic feedback" = "觸感回饋"; +"Preview pill" = "預覽藥丸"; +"Preview download pill" = "預覽下載藥丸"; +"Preview loading pill" = "預覽載入藥丸"; +"Master switch. When off, no RyukGram pills or IG-native toasts are emitted." = "主開關。關閉後將不顯示任何通知。"; +"Universal in-app notifications. All RyukGram feedback (downloads, copies, errors, success messages) routes through here." = "應用內統一通知。所有 RyukGram 回饋都從這裡發出。"; +"Minimal: flat blur. Colorful: tinted by tone. Glow: colored halo. Island: dynamic-island capsule." = "Minimal:簡單模糊。Colorful:依色調著色。Glow:彩色光環。Island:動態島膠囊。"; +"Top slides down, bottom slides up." = "頂部下滑,底部上滑."; +"How many pills can show at once before queueing." = "在排隊前同時顯示的藥丸數量。"; +"Multiplies how long toasts stay on screen." = "將通知在螢幕上的停留時間乘以倍數。"; +"Vibration on success/error pills." = "成功/錯誤藥丸震動回饋。"; +"For toast-style actions you can choose between our pill and IG's native bottom toast. Per-action overrides live below." = "對於提示型操作可在我們的藥丸與 IG 原生提示之間選擇。下方為各操作覆蓋。"; +"What to use when an action doesn't have its own override." = "操作沒有自身覆蓋時使用的方式。"; +"Tap to cycle: info → success → warning → error" = "點擊循環:資訊 → 成功 → 警告 → 錯誤"; +"Tap to cycle between success and failure" = "點擊在成功與失敗之間切換"; +"Progress UI — pill or off only." = "進度 UI — 僅限藥丸或關閉。"; +"Minimal" = "極簡"; +"Colorful" = "繽紛"; +"Glow" = "光暈"; +"Island" = "島嶼"; +"Top" = "頂部"; +"Bottom" = "底部"; +"Custom pill" = "自訂藥丸"; +"IG native toast" = "IG 原生提示"; +"Short" = "短"; +"Normal" = "正常"; +"Long" = "長"; +"Very long" = "非常長"; +"Downloads & saving" = "下載與儲存"; +"Copy to clipboard" = "複製到剪貼簿"; +"Read receipts & seen" = "已讀回執與查看"; +"Block, exclude & pin" = "封鎖、排除與置頂"; +"Stories & messages" = "限時動態與訊息"; +"Voice & audio" = "語音與音訊"; +"Errors" = "錯誤"; +"Download progress" = "下載進度"; +"Bulk download progress" = "批次下載進度"; +"Repost progress" = "重新發布進度"; +"Copied post / reel URL" = "已複製貼文 / 連續短片連結"; +"Copied comment text" = "已複製留言文字"; +"Copied GIF link" = "已複製 GIF 連結"; +"Copied note text" = "已複製便籤文字"; +"Copied profile info" = "已複製個人檔案資訊"; +"Copied audio URL" = "已複製音訊連結"; +"Copied quality picker URL" = "已複製畫質選擇器連結"; +"Copied unlocked password" = "已複製解鎖密碼"; +"Copied description text" = "已複製描述文字"; +"DM seen / read receipts" = "私訊已讀 / 查看"; +"Story seen / read receipts" = "限時動態已讀 / 查看"; +"Someone read your message" = "有人已讀你的訊息"; +"User blocked / unblocked" = "使用者已封鎖 / 解除封鎖"; +"Chat added / removed from exclude" = "聊天已加入 / 移出排除"; +"Story user added / removed from exclude" = "限時動態使用者已加入 / 移出排除"; +"Share-sheet recipient pinned" = "分享對象已釘選"; +"Unsent message detected" = "偵測到收回的訊息"; +"Reaction removed detected" = "偵測到移除回應"; +"%lu messages unsent" = "已撤回 %lu 則訊息"; +"%lu reactions removed" = "已移除 %lu 個回應"; +"%lu chats marked seen" = "已將 %lu 個聊天標示為已讀"; +"%lu stories marked seen" = "已將 %lu 則限時動態標示為已看"; +"%lu of your messages read" = "你的 %lu 則訊息已讀"; +"%lu notifications" = "%lu 則通知"; +"Live comments toggled" = "已切換直播留言"; +"Custom GIF sent" = "已傳送自訂 GIF"; +"GIF favorited / unfavorited" = "GIF 已收藏 / 取消收藏"; +"Voice DM sent" = "已傳送語音私訊"; +"Audio extraction status" = "音訊擷取狀態"; +"Profile Analyzer complete" = "個人檔案分析完成"; +"Profile Analyzer progress" = "個人檔案分析進度"; +"Media extraction failed" = "媒體擷取失敗"; +"Permission denied" = "權限被拒"; +"Validation error" = "驗證錯誤"; +"Network / API error" = "網路 / API 錯誤"; +"Action error fallback" = "操作錯誤回退"; +"Unlock failed" = "解鎖失敗"; +"Chat locked / unlocked" = "聊天已鎖定 / 解鎖"; +"Invalid clipboard link" = "剪貼簿連結無效"; +"Experimental flag warning" = "實驗標誌警告"; +"Settings action confirmed" = "設定操作已確認"; +"Cache clearing progress" = "快取清理進度"; +"Backup export / import" = "備份匯出 / 匯入"; +"Other / uncategorized" = "其他 / 未分類"; +"Comment copied" = "留言已複製"; +"FFmpeg log copied" = "已複製 FFmpeg 日誌"; +"GIF inserted" = "已插入 GIF"; +"Story marked as seen" = "限時動態已標記為已看"; +"Saved" = "已儲存"; +"Tap to retry" = "點擊重試"; +"Looks great" = "看起來不錯"; +"Something broke" = "出錯了"; +"Just so you know" = "提醒一下"; +"Success preview" = "成功預覽"; +"Error preview" = "錯誤預覽"; +"Warning preview" = "警告預覽"; +"Info preview" = "資訊預覽"; +"Preview download…" = "預覽下載…"; +"Colors" = "顏色"; +"+ Add new language" = "+ 加入新語言"; +"Each chat can override this in the list" = "每個對話可在清單中單獨設定"; +"When on, Instagram location requests return your selected fake location. The map button adds a quick shortcut inside Friends Map." = "啟用後,Instagram 位置請求將回傳您選定的偽造位置。地圖按鈕在朋友地圖中加入快捷方式。"; +"Tap a preset to make it active. Swipe left to delete." = "點擊預設以啟用。向左滑動刪除。"; +"Override Instagram location reads." = "覆寫 Instagram 的位置讀取。"; +"Show the quick button in Friends Map." = "在朋友地圖中顯示快捷按鈕。"; +"Pick how absolute dates are written. “Default” leaves IG's own format untouched. Swipe a custom format to edit or delete it." = "選擇絕對日期的寫法。“預設”保留 IG 自己的格式。左滑自訂格式可編輯或刪除。"; +"Dates younger than the threshold show as relative time. Older dates fall back to the absolute format. “Combine with date” shows both — “Jan 5, 2026 (2h)” or “2h – Jan 5, 2026”." = "比閾值更近的日期顯示為相對時間。較舊的日期回退為絕對格式。「與日期合併」同時顯示兩者 — 「2026 年 1 月 5 日 (2h)」或「2h – 2026 年 1 月 5 日」。"; +"Compact style" = "緊湊樣式"; +"Example: “1h” instead of “1 hour ago”" = "範例:“1h” 替代 “1 小時前”"; +"Example: “Jan 5, 2026 (2h)”" = "範例:“Jan 5, 2026 (2h)”"; +"iOS audio APIs couldn't process this file%@%@\n\nYou can try sending it to Instagram as-is, or open a support issue." = "iOS 音訊 API 無法處理此檔案%@%@\n\n您可以嘗試按原樣傳送到 Instagram,或提交支援問題。"; +"Combine with date" = "與日期合併"; +"Absolute then relative" = "先絕對後相對"; +"Relative – absolute" = "相對 – 絕對"; +"Relative when young, absolute when older." = "較近顯示相對,較遠顯示絕對。"; +"Example: “2h – Jan 5, 2026”" = "例如:「2h – 2026 年 1 月 5 日」"; +"Catch view-once media unsent while you're away. ⚠️ May drain battery" = "擷取你不在時被收回的限看一次內容。⚠️ 可能耗電"; +"Disappearing (view-once) media" = "限時內容(限看一次)"; +"Disappearing media expired before it could be saved" = "限時內容在儲存前已過期"; +"Disappearing media — gone before it could be saved" = "限時內容 — 還來不及儲存就消失了"; +"Disappearing only" = "僅限時內容"; +"Forces Instagram to keep running in the background so it can capture disappearing media that someone unsends while you're not in the app.\n\nMainly useful for view-once media — normal photos/videos are usually still recoverable without it. ⚠️ May significantly drain your battery, and can't capture anything if you force-quit Instagram from the app switcher.\n\nEnable it?" = "強制 Instagram 在背景持續執行,以便擷取他人在你不在應用程式時收回的限時內容。\n\n主要對限看一次內容有用 — 一般相片/影片通常不用它也能復原。⚠️ 可能會明顯耗電,而且如果你從應用程式切換器強制結束 Instagram,將無法擷取任何內容。\n\n要啟用嗎?"; +"Keep Instagram active in background" = "讓 Instagram 在背景保持活躍"; +"Media couldn’t be downloaded — the link expired" = "無法下載內容 — 連結已過期"; +"Media wasn’t available to save" = "內容無法儲存"; +"Retrying download…" = "正在重試下載…"; +"Try to download again" = "重新嘗試下載"; + +////////////////////////////////////////////////////////////////////////// +// READ RECEIPTS // +////////////////////////////////////////////////////////////////////////// + +"Read receipts log" = "已讀回條記錄"; +"Date" = "日期"; +"Reads" = "已讀"; +"Person" = "用戶"; +"Chat" = "聊天"; +"%@ · on @%@" = "%@ · 在 @%@"; +"%lu read · %@" = "%lu 次已讀 · %@"; +"%lu reads · %@" = "%lu 次已讀 · %@"; +"%lu reads · %lu reader · %@" = "%lu 次已讀 · %lu 人 · %@"; +"%lu reads · %lu readers · %@" = "%lu 次已讀 · %lu 人 · %@"; +"Clear all" = "全部清除"; +"Clear all records" = "清除所有記錄"; +"Detects when others read your messages and notifies you" = "偵測他人何時讀了你的訊息並通知你"; +"Ignored people & chats" = "已忽略的用戶和聊天"; +"Ignored" = "已忽略"; +"Log group chats" = "記錄群聊"; +"Most reads" = "已讀最多"; +"Notifies and records when someone reads a message you sent" = "當有人讀了你發送的訊息時通知並記錄"; +"Nothing is ignored. Long-press someone in the log to stop logging them." = "沒有忽略項。在記錄中長按某人可停止記錄。"; +"Nothing matches your filters." = "沒有符合篩選的內容。"; +"Read %@ · %@" = "已讀 %@ · %@"; +"Record reads on this device. Off = notifications only, nothing stored" = "在本裝置記錄已讀。關閉 = 僅通知,不儲存"; +"Resume logging" = "恢復記錄"; +"Search by username" = "按用戶名搜尋"; +"Stop logging %@" = "停止記錄 %@"; +"Delete records" = "刪除記錄"; +"When enabled, a notification fires when someone reads your message. Turn off \"Save to log\" for toast-only mode. Long-press a person in the log to stop logging them." = "開啟後,有人讀取你的訊息時會收到通知。關閉「儲存到記錄」可只接收提醒。長按記錄中的某人可停止記錄。"; +"Swipe to remove. Removing resumes logging for that person or chat." = "滑動以移除。移除後將恢復記錄該用戶或聊天。"; +"Updating names and photos" = "正在更新名稱和頭像"; +"Your message" = "你的訊息"; +"read your message in %@" = "在 %@ 中讀了你的訊息"; +"read your message" = "讀了你的訊息"; +"Also track reads in group chats. Off by default — groups can be noisy" = "同時追蹤群聊中的已讀。預設關閉——群聊可能較吵"; +"Refreshing…" = "正在重新整理…"; + +////////////////////////////////////////////////////////////////////////////// +// DEVICE ID // +// Settings -> Advanced -> Device ID, and the login-screen Device ID button // +////////////////////////////////////////////////////////////////////////////// +"Roll a new fingerprint" = "產生新指紋"; +"New device fingerprint" = "新裝置指紋"; +"Roll new ID" = "產生新 ID"; +"Roll + clear IG data" = "產生新 ID + 清除 IG 資料"; +"Generate fresh device identifiers" = "產生全新的裝置識別碼"; +"Enter ID manually…" = "手動輸入 ID…"; +"Manual device ID" = "手動裝置 ID"; +"Paste or type the UUID this device should report." = "貼上或輸入此裝置應回報的 UUID。"; +"Device ID set" = "已設定裝置 ID"; +"New fingerprint ready" = "新指紋已就緒"; +"Relaunch Instagram now so the new device identity applies from a clean start?" = "立即重新啟動 Instagram,讓新的裝置身分從乾淨狀態開始套用嗎?"; +"Copy current ID" = "複製目前 ID"; +"Revert to my real device ID" = "還原為我的真實裝置 ID"; +"Restore the original, stop masking" = "還原原始值並停止遮罩"; +"Spoofing off" = "偽裝已關閉"; +"Relaunch now" = "立即重新啟動"; +"Relaunch to apply" = "重新啟動以套用"; +"Clear device & relaunch" = "清除裝置並重新啟動"; +"Clear device & relaunch?" = "清除裝置並重新啟動?"; +"Clear & relaunch" = "清除並重新啟動"; +"Full reset to a brand-new device" = "完整重設為全新裝置"; +"Device ID" = "裝置 ID"; +"Hide button until relaunch" = "隱藏按鈕直到重新啟動"; +"Device identity" = "裝置身分"; +"Masked" = "已遮罩"; +"Real" = "真實"; +"Show button on login screen" = "在登入畫面顯示按鈕"; +"Floating Device ID button while signed out" = "登出時顯示的浮動裝置 ID 按鈕"; +"Masks the identifiers Instagram uses to fingerprint this device: device ID, family device ID, vendor ID and machine ID. Changes apply after a relaunch. The same controls appear on the login screen." = "遮罩 Instagram 用來識別此裝置指紋的識別碼:裝置 ID、家庭裝置 ID、供應商 ID 和機器 ID。變更在重新啟動後套用。相同的控制項也會出現在登入畫面。"; +"Forgets every saved login, cookie and the stored device identity, then relaunches so Instagram starts as a brand-new device. You'll sign in again afterwards." = "忘記所有已儲存的登入資訊、Cookie 和已儲存的裝置身分,然後重新啟動,讓 Instagram 以全新裝置啟動。之後你需要重新登入。"; +"Rolls a fresh device ID, family device ID, vendor ID and clears the machine ID so Instagram re-registers as a new device. Or also wipe saved logins for a full reset." = "產生全新的裝置 ID、家庭裝置 ID、供應商 ID,並清除機器 ID,讓 Instagram 以新裝置重新註冊。或一併清除已儲存的登入資訊以進行完整重設。"; +"Apple attestation" = "Apple 認證"; +"Blocks Instagram's Apple device attestation (DeviceCheck and App Attest). These are bound to the hardware and can't be changed, so they keep linking the device across resets. Blocking makes Instagram see a device that doesn't support them. Only works while masking is on." = "封鎖 Instagram 的 Apple 裝置認證(DeviceCheck 和 App Attest)。這些與硬體綁定且無法變更,因此會在每次重設後持續連結此裝置。封鎖後會讓 Instagram 看到一台不支援這些功能的裝置。僅在開啟遮罩時有效。"; +"Block Apple device attestation" = "封鎖 Apple 裝置認證"; +"Stop the hardware attestation that links the device" = "停止連結此裝置的硬體認證"; +"Block Apple attestation: %@" = "封鎖 Apple 認證:%@"; +"Attestation blocked" = "認證已封鎖"; +"Attestation allowed" = "認證已允許"; +"Roll + clear, then sign in fresh" = "產生新 ID + 清除,然後重新登入"; + +////////////////////////////////////////////////////////////////////////// +// FOLLOW REQUESTS TRACKER // +// Settings → Follow Requests Tracker // +////////////////////////////////////////////////////////////////////////// +"Follow Requests" = "追蹤請求"; +"Show follow requests" = "顯示追蹤請求"; +"Check now" = "立即檢查"; +"Reset tracked data" = "重置已記錄的資料"; +"Enable tracker" = "啟用追蹤器"; +"Log requests and check outcomes" = "記錄請求並檢查結果"; +"Logs follow requests you send and receive, and catches who cancels a request before you answer. All on-device." = "記錄你發送和收到的追蹤請求,並捕捉在你回應之前撤回請求的人。全部在裝置本機。"; +"What to track" = "追蹤內容"; +"Requests I send" = "我發送的請求"; +"To private accounts" = "發往私密帳號"; +"Requests I receive" = "我收到的請求"; +"From people who want to follow you" = "來自想追蹤你的人"; +"Background check" = "背景檢查"; +"Check interval" = "檢查間隔"; +"How often to check for outcomes while the app is open. Also checks on launch and when you open the list." = "應用程式開啟時檢查結果的頻率。也會在啟動時和開啟列表時檢查。"; +"Off (manual only)" = "關閉(僅手動)"; +"Every 15 minutes" = "每 15 分鐘"; +"Every 30 minutes" = "每 30 分鐘"; +"Every hour" = "每小時"; +"Every 6 hours" = "每 6 小時"; +"My request accepted" = "我的請求已接受"; +"A private account accepted you" = "一個私密帳號接受了你"; +"My request declined" = "我的請求已拒絕"; +"No longer pending" = "不再等待"; +"New request received" = "收到新請求"; +"Someone asked to follow you" = "有人請求追蹤你"; +"Request withdrawn" = "請求已撤回"; +"Someone cancelled their request" = "有人取消了請求"; +"Sent by me" = "我發送的"; +"Received" = "已收到"; +"Sent" = "已發送"; +"Accepted" = "已接受"; +"Rejected" = "已拒絕"; +"Requested" = "已請求"; +"Approved" = "已批准"; +"Withdrawn" = "已撤回"; +"No follow requests tracked yet" = "尚未記錄任何追蹤請求"; +"Cancel requests" = "取消請求"; +"Delete %lu record(s) from history?" = "從歷史記錄中刪除 %lu 條記錄?"; +"Cancel %lu pending request(s)?" = "取消 %lu 個待處理請求?"; +"Follow back %lu account(s)?" = "回追 %lu 個帳號?"; +"Clear all tracked follow requests?" = "清除所有已記錄的追蹤請求?"; +"Reset tracked follow requests for this account?" = "重置此帳號已記錄的追蹤請求?"; +"Enable the tracker first" = "請先啟用追蹤器"; +"Checking…" = "正在檢查…"; +"%ld request(s) updated" = "已更新 %ld 個請求"; +"No changes" = "無變化"; +"Working…" = "處理中…"; +"Follow request accepted" = "追蹤請求已接受"; +"%@ accepted your request" = "%@ 接受了你的請求"; +"Follow request declined" = "追蹤請求已拒絕"; +"%@ is no longer pending" = "%@ 不再處於等待狀態"; +"New follow request" = "新的追蹤請求"; +"%@ asked to follow you" = "%@ 要求追蹤你"; +"Follow request withdrawn" = "追蹤請求已撤回"; +"%@ withdrew their request" = "%@ 撤回了請求"; +"Follow requests log" = "追蹤請求日誌"; + +////////////////////////////////////////////////////////////////////////////// +// INSTAGRAM PLUS // +// Settings → General → Instagram Plus // +////////////////////////////////////////////////////////////////////////////// + +"Instagram Plus" = "Instagram Plus"; +"Unlock Instagram's paid features" = "解鎖 Instagram 的付費功能"; +"Turn on Instagram's paid subscriber features inside the app." = "在應用程式內開啟 Instagram 的付費訂閱功能。"; +"Instagram Plus is Instagram's paid subscription. These switches turn its features on inside the app. Some work completely. Others only reveal the option, because the content is loaded from Instagram's servers and still needs a real subscription, so they may show up empty or do nothing. Turn on what you want and tap Apply. If Instagram fails to launch three times in a row, these switches reset themselves." = "Instagram Plus 是 Instagram 的付費訂閱。這些開關會在應用程式內啟用它的功能。部分功能可完整運作,其他則只會顯示選項,因為內容是從 Instagram 伺服器載入,仍需要有效的訂閱,所以可能顯示為空白或沒有作用。開啟你想要的項目後點一下「Apply」。若 Instagram 連續三次無法啟動,這些開關會自動重設。"; +"Turn everything on" = "全部開啟"; +"Turn everything off" = "全部關閉"; +"Every Instagram Plus feature turns off and Instagram restarts." = "所有 Instagram Plus 功能都會關閉,並重新啟動 Instagram。"; +"Story peek" = "限時動態預覽"; +"Hold a story in the tray to preview it without opening it." = "在動態列上按住限時動態,即可預覽而不開啟。"; +"Story fonts" = "限時動態字型"; +"Adds the subscriber fonts when you add text to a story." = "在限時動態加入文字時提供訂閱者專屬字型。"; +"Search story viewers" = "搜尋動態瀏覽者"; +"Search the list of people who viewed your story." = "搜尋瀏覽過你限時動態的人員清單。"; +"Viewer timestamps" = "瀏覽時間"; +"Shows when each person viewed your story." = "顯示每個人瀏覽你限時動態的時間。"; +"Silent post to profile" = "靜默發佈到個人檔案"; +"Share to your profile without notifying your followers." = "發佈到個人檔案,且不通知你的粉絲。"; +"Silent post to highlights" = "靜默加入精選"; +"Add to a highlight without notifying your followers." = "加入精選,且不通知你的粉絲。"; +"Story rewatch" = "重看限時動態"; +"Rewatch a story right after it finishes." = "在限時動態播放結束後立即重看。"; +"Story extend" = "延長限時動態"; +"Keep your story up longer than 24 hours." = "讓你的限時動態保留超過 24 小時。"; +"Story spotlight" = "限時動態加強曝光"; +"Boost your story to more viewers. Loads from Instagram, so it may not work." = "讓更多人看到你的限時動態。內容從 Instagram 載入,因此可能無法運作。"; +"Story super likes" = "限時動態超級讚"; +"Send super likes on stories. Loads from Instagram, so it may not work." = "在限時動態送出超級讚。內容從 Instagram 載入,因此可能無法運作。"; +"Message peek" = "訊息預覽"; +"Hold a chat in the inbox to preview it." = "在收件匣按住聊天即可預覽。"; +"Chat fonts" = "聊天字型"; +"Adds the subscriber fonts in direct messages." = "在私人訊息中提供訂閱者專屬字型。"; +"Chat themes" = "聊天主題"; +"Unlocks the premium chat themes. Loads from Instagram, so it may not work." = "解鎖進階聊天主題。內容從 Instagram 載入,因此可能無法運作。"; +"App icons" = "應用程式圖示"; +"Opens the alternate app icon picker." = "開啟替代應用程式圖示選擇器。"; +"Bio font" = "簡介字型"; +"Use a subscriber font for your bio." = "為你的簡介使用訂閱者專屬字型。"; +"Custom story lists" = "自訂動態名單"; +"Make lists to pick exactly who sees a story." = "建立名單以精確指定誰能看到限時動態。"; +"More pinned posts" = "更多釘選貼文"; +"Pin more posts to the top of your profile." = "在個人檔案頂端釘選更多貼文。"; + +////////////////////////////////////////////////////////////////////////// +// CALLS // +// Messages -> Calls (recording, ignore list, block mute, recordings UI) // +////////////////////////////////////////////////////////////////////////// +"%lu recordings" = "%lu 個錄製"; +"1 recording" = "1 個錄製"; +"30 days" = "30 天"; +"7 days" = "7 天"; +"90 days" = "90 天"; +"Adds a record button to the call screen" = "在通話畫面新增錄製按鈕"; +"Also show recordings in the RyukGram gallery under Calls" = "同時在 RyukGram 圖庫的「通話」下顯示錄製"; +"Auto-delete old recordings" = "自動刪除舊錄製"; +"Auto-record calls" = "自動錄製通話"; +"Auto-record ignore list" = "自動錄製忽略清單"; +"Auto-record ignored" = "已忽略自動錄製"; +"Auto-record on" = "自動錄製已開啟"; +"Block mute signal" = "封鎖靜音訊號"; +"Both sides" = "雙方"; +"Browse saved calls, grouped by person" = "瀏覽已儲存的通話,依聯絡人分組"; +"Call" = "通話"; +"Call recorded" = "通話已錄製"; +"Call recording" = "通話錄製"; +"Call recordings" = "通話錄製"; +"Camera position" = "鏡頭位置"; +"Can't play" = "無法播放"; +"Can't record" = "無法錄製"; +"Chats excluded from auto-record — long-press the record button in a call to add" = "已排除自動錄製的聊天 — 在通話中長按錄製按鈕即可加入"; +"Could not save the recording." = "無法儲存錄製。"; +"Could not start the recorder." = "無法啟動錄製器。"; +"Delete all" = "全部刪除"; +"Delete all recordings" = "刪除所有錄製"; +"Delete all recordings?" = "刪除所有錄製?"; +"Drag the overlay where you want it" = "將覆蓋層拖曳到你想要的位置"; +"Drag your camera window to any corner or edge." = "將你的鏡頭視窗拖曳到任一角落或邊緣。"; +"Enable call recording" = "啟用通話錄製"; +"Export all" = "全部匯出"; +"Full screen" = "全螢幕"; +"Group call" = "群組通話"; +"Ignore auto-record for this chat" = "忽略此聊天的自動錄製"; +"Ignored chats aren't auto-recorded. You can still record manually." = "已忽略的聊天不會自動錄製。你仍可手動錄製。"; +"Include my camera" = "包含我的鏡頭"; +"Keep forever" = "永久保留"; +"Large" = "大"; +"Mute without the other side seeing you muted — your mic is still silenced" = "靜音但對方不會看到你已靜音 — 你的麥克風仍會被靜音"; +"Muted silently" = "靜默靜音"; +"My camera size" = "我的鏡頭大小"; +"No call audio was captured." = "未擷取到通話音訊。"; +"No ignored chats. Long-press the record button in a call to ignore it." = "沒有已忽略的聊天。在通話中長按錄製按鈕即可忽略。"; +"No recordings" = "沒有錄製"; +"Off records audio only, even on video calls" = "關閉時僅錄製音訊,即使是視訊通話"; +"Only me" = "僅我"; +"Only them" = "僅對方"; +"Open recordings" = "開啟錄製"; +"Overlay your camera as a small window on video-call recordings" = "將你的鏡頭以小視窗覆蓋在視訊通話錄製上"; +"Overlay your camera on the recording" = "將你的鏡頭覆蓋在錄製上"; +"Record audio from" = "錄製音訊來源"; +"Record video on video calls" = "視訊通話時錄製影片"; +"Record voice and video calls, browse them later" = "錄製語音和視訊通話,稍後瀏覽"; +"Recorded calls are saved on this device only. A red status-bar indicator shows while recording." = "錄製的通話僅儲存在此裝置。錄製時狀態列會顯示紅色指示。"; +"Recorded calls will appear here." = "錄製的通話會顯示在這裡。"; +"Recording call" = "正在錄製通話"; +"Recording count" = "錄製數量"; +"Recording failed" = "錄製失敗"; +"Recording name" = "錄製名稱"; +"Records the other party (call audio) and your microphone. A red status-bar indicator shows while recording. Recordings are saved on this device only." = "錄製對方(通話音訊)和你的麥克風。錄製時狀態列會顯示紅色指示。錄製僅儲存在此裝置。"; +"Remove from ignore list" = "從忽略清單移除"; +"Remove recordings older than the chosen age" = "移除超過所選時間的錄製"; +"Rename recording" = "重新命名錄製"; +"Search calls" = "搜尋通話"; +"Set a custom name for this chat's recordings." = "為此聊天的錄製設定自訂名稱。"; +"Size of the overlay window" = "覆蓋視窗的大小"; +"Small" = "小"; +"Starts recording automatically when a call opens" = "通話開啟時自動開始錄製"; +"Sync to gallery" = "同步到圖庫"; +"The recording file is missing." = "錄製檔案遺失。"; +"Them" = "對方"; +"Them (full screen)" = "對方(全螢幕)"; +"This permanently removes every saved call recording for this account." = "這將永久移除此帳號所有已儲存的通話錄製。"; +"Unknown chat" = "未知聊天"; +"Unmuted" = "已取消靜音"; +"Which camera fills the frame" = "哪個鏡頭填滿畫面"; +"Which side's voice to capture" = "要擷取哪一方的聲音"; +"You" = "你"; +"You (full screen)" = "你(全螢幕)"; +"Your camera is captured and overlaid onto the recording. Choose which side fills the screen, the overlay size, and drag it to any corner." = "你的鏡頭會被擷取並覆蓋在錄製上。選擇哪一方填滿畫面、覆蓋大小,並將其拖曳到任一角落。"; +"Prompt before the call recordings open" = "開啟通話錄製前先提示"; +"Prompt before the activity log opens" = "開啟活動記錄前詢問"; +"Mark all as read" = "全部標記為已讀"; +"Delete %lu chats?" = "刪除 %lu 個聊天?"; +"This permanently removes their recordings." = "這將永久移除它們的錄製。"; + +"Stories archive" = "限時動態封存"; + + +////////////////////////////////////////////////////////////////////////// +// STORIES ARCHIVE // +// Settings → Stories archive + the archive grid, media viewer, viewers // +////////////////////////////////////////////////////////////////////////// + +"Reacted" = "已回應"; +"Reacted first" = "回應優先"; +"Mutual" = "互相追蹤"; +"Viewers" = "查看者"; +"1 viewer" = "1 位查看者"; +"View viewers" = "查看查看者"; +"%lu views" = "%lu 次查看"; +"%ld likes" = "%ld 個讚"; +"0 views" = "0 次查看"; +"1 like" = "1 個讚"; +"1 view" = "1 次查看"; +"Photos" = "相片"; +"Oldest" = "最舊"; +"Most viewed" = "最多查看"; +"Most reacted" = "最多回應"; +"Open archive" = "開啟封存"; +"Archive settings" = "封存設定"; +"Archiving" = "封存中"; +"Enable stories archive" = "啟用限時動態封存"; +"Save your stories before they expire" = "在限時動態到期前將其儲存"; +"Saves each story you post, with its photo or video, kept separately for each account." = "儲存你發佈的每則限時動態及其相片或影片,並為每個帳號分別保存。"; +"Save and update viewers" = "儲存並更新查看者"; +"Keep each story's viewers and likers, refreshed to the final list" = "保存每則限時動態的查看者與按讚者,並更新至最終清單"; +"Update viewers" = "更新查看者"; +"How often to refresh viewers for stories still live" = "仍在顯示中的限時動態要多久重新整理一次查看者"; +"A story's viewer list keeps growing for its full day, then Instagram serves it for one more. Auto-update grabs the final list once a story is a day old, so the counts you keep are complete." = "限時動態的查看者清單會在整整一天內持續增加,接著 Instagram 會再顯示一天。自動更新會在限時動態滿一天後擷取最終清單,讓你保存的數字完整無缺。"; +"Notify me about pinned viewers" = "通知我置頂查看者的動態"; +"A heads-up when a pinned viewer sees or likes your story" = "當置頂查看者查看或按讚你的限時動態時提醒你"; +"Get notified when a pinned viewer sees or likes your story. Pin viewers and manage the list from the viewer settings." = "當置頂查看者查看或按讚你的限時動態時收到通知。可在查看者設定中置頂查看者並管理清單。"; +"Viewer list & pins" = "查看者清單與置頂"; +"Turn on the viewer list and manage pinned viewers" = "開啟查看者清單並管理置頂查看者"; +"Turn on a custom viewer list to pin, search and sort viewers" = "開啟自訂查看者清單以置頂、搜尋及排序查看者"; +"Tick several to combine them." = "勾選多個以組合使用。"; +"Select stories" = "選擇限時動態"; +"No archived stories yet. Post a story and it appears here." = "尚無封存的限時動態。發佈一則限時動態後就會顯示在此。"; +"Archiving is off. Enable it in the archive settings, then post a story." = "封存已關閉。請在封存設定中啟用,然後發佈一則限時動態。"; +"Delete story?" = "刪除限時動態?"; +"This removes the archived photo or video and its viewers." = "這會移除已封存的相片或影片及其查看者。"; +"Delete all stories?" = "刪除所有限時動態?"; +"Removes every archived story and its viewers for this account. This cannot be undone." = "移除此帳號所有已封存的限時動態及其查看者。此操作無法復原。"; +"Delete %lu archived stories and their viewers?" = "刪除 %lu 則已封存的限時動態及其查看者?"; +"Pinned viewer saw your story" = "置頂查看者查看了你的限時動態"; +"Pinned viewer liked your story" = "置頂查看者對你的限時動態按讚"; +"Pinned viewer reacted to your story" = "置頂查看者對你的限時動態做出回應"; +"Pinned viewers on your story" = "你限時動態上的置頂查看者"; +"%lu pinned viewers just saw, liked or reacted" = "%lu 位置頂查看者剛剛查看、按讚或做出回應"; +"A pinned viewer" = "一位置頂查看者"; +"On each launch" = "每次啟動時";