Compare commits
89
Commits
v5.2b1
...
discord-rpc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8c33f16412 | ||
|
|
37660b827a | ||
|
|
eedc78fc25 | ||
|
|
752ccb32af | ||
|
|
1a56b6b79c | ||
|
|
736ff260ab | ||
|
|
e1a3109198 | ||
|
|
2e03ab7f12 | ||
|
|
9ff0fee0f9 | ||
|
|
c108b65a4a | ||
|
|
2258342567 | ||
|
|
dcf89e1c73 | ||
|
|
8c66b4b226 | ||
|
|
b7af74d69a | ||
|
|
bb04cee149 | ||
|
|
c59e0fa972 | ||
|
|
bbe6f241ea | ||
|
|
5ffbf4c7d8 | ||
|
|
35374f568d | ||
|
|
ceb5d322ee | ||
|
|
b64f26cdf9 | ||
|
|
76db5ee967 | ||
|
|
20c0f2a823 | ||
|
|
47c5c4d500 | ||
|
|
bcb6c7dba8 | ||
|
|
5fff111ec1 | ||
|
|
be89c488ac | ||
|
|
3878539f00 | ||
|
|
c541484ce2 | ||
|
|
5049198ba7 | ||
|
|
4f04f393a7 | ||
|
|
fcc87f1270 | ||
|
|
7b5afd5a84 | ||
|
|
6a3cca85f7 | ||
|
|
93f6645b5a | ||
|
|
50129ee7d8 | ||
|
|
e887df0fdd | ||
|
|
b144fabb0f | ||
|
|
9a04cbfdf7 | ||
|
|
88860c2d59 | ||
|
|
e9309603ef | ||
|
|
4fada5292d | ||
|
|
6db78f0335 | ||
|
|
71d91ed69d | ||
|
|
36d229343d | ||
|
|
8f8e141831 | ||
|
|
3cb579b705 | ||
|
|
729b6d8885 | ||
|
|
91b9a78876 | ||
|
|
8e38fa2f45 | ||
|
|
72e4f51770 | ||
|
|
b8cd1e5111 | ||
|
|
0d03ee6888 | ||
|
|
31242ef146 | ||
|
|
8c79a6c688 | ||
|
|
22f7f40247 | ||
|
|
a935adda64 | ||
|
|
7467131568 | ||
|
|
3a020c9d1b | ||
|
|
2b5285f2cb | ||
|
|
b723418696 | ||
|
|
67453388b1 | ||
|
|
31db54d610 | ||
|
|
103813a020 | ||
|
|
da7f1ccef4 | ||
|
|
ddeea3dcca | ||
|
|
13da3d3aed | ||
|
|
0c34f47732 | ||
|
|
cef52901b2 | ||
|
|
dca656c570 | ||
|
|
9f5d5b047f | ||
|
|
a8b7cf0974 | ||
|
|
95b3b30f95 | ||
|
|
5d5583bc1e | ||
|
|
d8f3324a6e | ||
|
|
da0c857653 | ||
|
|
d8c2dbb86c | ||
|
|
1fa3dbbf92 | ||
|
|
881bc50dea | ||
|
|
d9cca91c3c | ||
|
|
80810b45ab | ||
|
|
699189a146 | ||
|
|
b13c558086 | ||
|
|
59298961af | ||
|
|
ab060afcad | ||
|
|
0c27c9cf36 | ||
|
|
f8bc58829e | ||
|
|
2f87d85aab | ||
|
|
bed3fa5bc2 |
@@ -8,7 +8,6 @@ body:
|
|||||||
description: Describe the issue in detail here, including any relevant context or background information. Be clear and concise.
|
description: Describe the issue in detail here, including any relevant context or background information. Be clear and concise.
|
||||||
placeholder: |
|
placeholder: |
|
||||||
Enter your description here
|
Enter your description here
|
||||||
render: yaml
|
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
@@ -22,7 +21,6 @@ body:
|
|||||||
1. Go to Main tab
|
1. Go to Main tab
|
||||||
2. Tap to the video
|
2. Tap to the video
|
||||||
3. See error
|
3. See error
|
||||||
render: yaml
|
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ body:
|
|||||||
description: Describe the feature or enhancement in detail here. Include any relevant context or background information. Be clear and concise.
|
description: Describe the feature or enhancement in detail here. Include any relevant context or background information. Be clear and concise.
|
||||||
placeholder: |
|
placeholder: |
|
||||||
Enter your description here
|
Enter your description here
|
||||||
render: yaml
|
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,223 @@
|
|||||||
|
name: Build Tweaks (Helper)
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
enable_youpip:
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ytuhd:
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_yq:
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ryd:
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ytabc:
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_demc:
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
tweak_version:
|
||||||
|
type: string
|
||||||
|
required: false
|
||||||
|
default: ""
|
||||||
|
|
||||||
|
tweak_url:
|
||||||
|
type: string
|
||||||
|
required: false
|
||||||
|
default: ""
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-tweaks:
|
||||||
|
name: Build Tweaks
|
||||||
|
runs-on: macos-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: brew install make ldid dpkg
|
||||||
|
|
||||||
|
- name: Set PATH environment variable
|
||||||
|
run: |
|
||||||
|
echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH
|
||||||
|
echo "THEOS=${{ github.workspace }}/theos" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Cache Theos
|
||||||
|
if: ${{ inputs.enable_youpip || inputs.enable_ytuhd || inputs.enable_yq || inputs.enable_ryd || inputs.enable_ytabc || inputs.enable_demc }}
|
||||||
|
id: theos
|
||||||
|
uses: actions/cache@v5
|
||||||
|
env:
|
||||||
|
cache-name: theos_cache_13c2237
|
||||||
|
with:
|
||||||
|
path: theos/
|
||||||
|
key: ${{ env.cache-name }}
|
||||||
|
restore-keys: ${{ env.cache-name }}
|
||||||
|
|
||||||
|
- name: Setup Theos
|
||||||
|
if: ${{ (inputs.enable_youpip || inputs.enable_ytuhd || inputs.enable_yq || inputs.enable_ryd || inputs.enable_ytabc || inputs.enable_demc) && steps.theos.outputs.cache-hit != 'true' }}
|
||||||
|
uses: actions/checkout@v6
|
||||||
|
with:
|
||||||
|
repository: theos/theos
|
||||||
|
ref: 13c22376b5d83ff759c1993de0a861e673aa522b
|
||||||
|
path: theos
|
||||||
|
submodules: recursive
|
||||||
|
|
||||||
|
- name: Download iOS SDK
|
||||||
|
if: ${{ (inputs.enable_youpip || inputs.enable_ytuhd || inputs.enable_yq || inputs.enable_ryd || inputs.enable_ytabc || inputs.enable_demc) && steps.theos.outputs.cache-hit != 'true' }}
|
||||||
|
run: |
|
||||||
|
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/theos/sdks/
|
||||||
|
cd sdks
|
||||||
|
git sparse-checkout set --no-cone iPhoneOS16.5.sdk
|
||||||
|
git checkout
|
||||||
|
mv *.sdk $THEOS/sdks
|
||||||
|
|
||||||
|
- name: Download YouTube Plus (by version)
|
||||||
|
if: ${{ inputs.tweak_version != '' }}
|
||||||
|
run: |
|
||||||
|
deb_url="https://github.com/dayanch96/YTLite/releases/download/v${{ inputs.tweak_version }}/com.dvntm.ytlite_${{ inputs.tweak_version }}_iphoneos-arm.deb"
|
||||||
|
wget "$deb_url" --no-verbose -O ytplus.deb
|
||||||
|
|
||||||
|
- name: Download YouTube Plus (by URL)
|
||||||
|
if: ${{ inputs.tweak_url != '' }}
|
||||||
|
run: |
|
||||||
|
wget "${{ inputs.tweak_url }}" --no-verbose -O ytplus.deb
|
||||||
|
file_type=$(file --mime-type -b ytplus.deb)
|
||||||
|
if [[ "$file_type" != "application/vnd.debian.binary-package" ]]; then
|
||||||
|
echo "::error::Validation failed: The file is not a valid DEB file. Detected type: $file_type."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Clone YouTubeHeader
|
||||||
|
if: ${{ inputs.enable_youpip || inputs.enable_ytuhd || inputs.enable_yq || inputs.enable_ryd || inputs.enable_ytabc || inputs.enable_demc }}
|
||||||
|
run: |
|
||||||
|
if [ -d "$THEOS/include/YouTubeHeader" ]; then
|
||||||
|
cd $THEOS/include/YouTubeHeader && git pull
|
||||||
|
else
|
||||||
|
cd $THEOS/include && git clone --quiet --depth=1 https://github.com/PoomSmart/YouTubeHeader.git
|
||||||
|
fi
|
||||||
|
if [ "${{ inputs.enable_demc }}" = "true" ]; then
|
||||||
|
rm -rf "$THEOS/include/YTHeaders"
|
||||||
|
cp -r "$THEOS/include/YouTubeHeader" "$THEOS/include/YTHeaders"
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Clone PSHeader
|
||||||
|
if: ${{ inputs.enable_youpip || inputs.enable_ytuhd || inputs.enable_yq || inputs.enable_ryd || inputs.enable_ytabc || inputs.enable_demc }}
|
||||||
|
run: |
|
||||||
|
if [ -d "$THEOS/include/PSHeader" ]; then
|
||||||
|
cd $THEOS/include/PSHeader && git pull
|
||||||
|
else
|
||||||
|
cd $THEOS/include && git clone --quiet --depth=1 https://github.com/PoomSmart/PSHeader.git
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Clone YouPiP
|
||||||
|
if: ${{ inputs.enable_youpip }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/PoomSmart/YouPiP.git
|
||||||
|
|
||||||
|
- name: Clone YTUHD
|
||||||
|
if: ${{ inputs.enable_ytuhd }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/Tonwalter888/YTUHD.git
|
||||||
|
|
||||||
|
- name: Clone Return-YouTube-Dislikes
|
||||||
|
if: ${{ inputs.enable_ryd }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/PoomSmart/Return-YouTube-Dislikes.git
|
||||||
|
|
||||||
|
- name: Clone YTABConfig
|
||||||
|
if: ${{ inputs.enable_ytabc }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/PoomSmart/YTABConfig.git
|
||||||
|
|
||||||
|
- name: Clone YouGroupSettings
|
||||||
|
if: ${{ inputs.enable_youpip || inputs.enable_ytuhd || inputs.enable_yq || inputs.enable_ryd || inputs.enable_demc }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/PoomSmart/YouGroupSettings.git
|
||||||
|
|
||||||
|
- name: Clone YouQuality
|
||||||
|
if: ${{ inputs.enable_yq }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/PoomSmart/YouQuality.git
|
||||||
|
|
||||||
|
- name: Clone YTVideoOverlay
|
||||||
|
if: ${{ inputs.enable_yq || inputs.enable_youpip }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/PoomSmart/YTVideoOverlay.git
|
||||||
|
|
||||||
|
- name: Clone DontEatMyContent
|
||||||
|
if: ${{ inputs.enable_demc }}
|
||||||
|
run: git clone --quiet --depth=1 https://github.com/therealFoxster/DontEatMyContent.git
|
||||||
|
|
||||||
|
- name: Build YouPiP
|
||||||
|
if: ${{ inputs.enable_youpip }}
|
||||||
|
run: |
|
||||||
|
cd YouPiP && make clean package DEBUG=0 FINALPACKAGE=1
|
||||||
|
mv packages/*.deb ../youpip.deb
|
||||||
|
|
||||||
|
- name: Build YTUHD
|
||||||
|
if: ${{ inputs.enable_ytuhd }}
|
||||||
|
run: |
|
||||||
|
cd YTUHD && make clean package DEBUG=0 FINALPACKAGE=1 ARCHS=arm64
|
||||||
|
mv packages/*.deb ../ytuhd.deb
|
||||||
|
|
||||||
|
- name: Build Return-YouTube-Dislikes
|
||||||
|
if: ${{ inputs.enable_ryd }}
|
||||||
|
run: |
|
||||||
|
cd Return-YouTube-Dislikes && make clean package DEBUG=0 FINALPACKAGE=1
|
||||||
|
mv packages/*.deb ../ryd.deb
|
||||||
|
|
||||||
|
- name: Build YTABConfig
|
||||||
|
if: ${{ inputs.enable_ytabc }}
|
||||||
|
run: |
|
||||||
|
cd YTABConfig && make clean package DEBUG=0 FINALPACKAGE=1
|
||||||
|
mv packages/*.deb ../ytabc.deb
|
||||||
|
|
||||||
|
- name: Build YouGroupSettings
|
||||||
|
if: ${{ inputs.enable_youpip || inputs.enable_ytuhd || inputs.enable_yq || inputs.enable_ryd || inputs.enable_demc }}
|
||||||
|
run: |
|
||||||
|
cd YouGroupSettings && make clean package DEBUG=0 FINALPACKAGE=1
|
||||||
|
mv packages/*.deb ../ygs.deb
|
||||||
|
|
||||||
|
- name: Build YouQuality
|
||||||
|
if: ${{ inputs.enable_yq }}
|
||||||
|
run: |
|
||||||
|
cd YouQuality && make clean package DEBUG=0 FINALPACKAGE=1
|
||||||
|
mv packages/*.deb ../yq.deb
|
||||||
|
|
||||||
|
- name: Build YTVideoOverlay
|
||||||
|
if: ${{ inputs.enable_yq || inputs.enable_youpip }}
|
||||||
|
run: |
|
||||||
|
cd YTVideoOverlay && make clean package DEBUG=0 FINALPACKAGE=1
|
||||||
|
mv packages/*.deb ../ytvo.deb
|
||||||
|
|
||||||
|
- name: Build DontEatMyContent
|
||||||
|
if: ${{ inputs.enable_demc }}
|
||||||
|
run: |
|
||||||
|
cd DontEatMyContent && make clean package DEBUG=0 FINALPACKAGE=1
|
||||||
|
mv packages/*.deb ../demc.deb
|
||||||
|
|
||||||
|
- name: Clone Open in YouTube (Safari extension)
|
||||||
|
run: |
|
||||||
|
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/BillyCurtis/OpenYouTubeSafariExtension
|
||||||
|
cd OpenYoutubeSafariExtension
|
||||||
|
git sparse-checkout set --no-cone OpenYoutubeSafariExtension.appex
|
||||||
|
git checkout
|
||||||
|
mv *.appex ..
|
||||||
|
|
||||||
|
- name: Upload built debs as artifacts
|
||||||
|
uses: actions/upload-artifact@v6
|
||||||
|
with:
|
||||||
|
name: built-debs
|
||||||
|
path: |
|
||||||
|
*.deb
|
||||||
|
*.appex
|
||||||
|
if-no-files-found: ignore
|
||||||
|
retention-days: 1
|
||||||
@@ -0,0 +1,162 @@
|
|||||||
|
name: Generate TrollFools/Cyan files
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
create_cyan:
|
||||||
|
description: "Generate .cyan file"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: true
|
||||||
|
|
||||||
|
create_tf:
|
||||||
|
description: "Generate .zip for TrollFools"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: true
|
||||||
|
|
||||||
|
enable_youpip:
|
||||||
|
description: "Integrate YouPiP"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ytuhd:
|
||||||
|
description: "Integrate YTUHD"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_yq:
|
||||||
|
description: "Integrate YouQuality"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ryd:
|
||||||
|
description: "Integrate Return YouTube Dislikes"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ytabc:
|
||||||
|
description: "Integrate YTABConfig"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_demc:
|
||||||
|
description: "Integrate DontEatMyContent"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
tweak_version:
|
||||||
|
description: "The version of the tweak to use. Enter the version manually from dayanch96/YTLite/releases or leave default"
|
||||||
|
default: "5.2b4"
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
|
||||||
|
display_name:
|
||||||
|
description: "App Name (Optional)"
|
||||||
|
default: "YouTube"
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
|
||||||
|
bundle_id:
|
||||||
|
description: "BundleID (Optional)"
|
||||||
|
default: "com.google.ios.youtube"
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: ${{ github.workflow }}-${{ github.ref }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-tweaks:
|
||||||
|
uses: ./.github/workflows/_build_tweaks.yml
|
||||||
|
with:
|
||||||
|
enable_youpip: ${{ inputs.enable_youpip }}
|
||||||
|
enable_ytuhd: ${{ inputs.enable_ytuhd }}
|
||||||
|
enable_yq: ${{ inputs.enable_yq }}
|
||||||
|
enable_ryd: ${{ inputs.enable_ryd }}
|
||||||
|
enable_ytabc: ${{ inputs.enable_ytabc }}
|
||||||
|
enable_demc: ${{ inputs.enable_demc }}
|
||||||
|
tweak_version: ${{ inputs.tweak_version }}
|
||||||
|
|
||||||
|
package:
|
||||||
|
name: Generate Cyan/TrollFools
|
||||||
|
runs-on: macos-latest
|
||||||
|
needs: build-tweaks
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Download built debs
|
||||||
|
uses: actions/download-artifact@v7
|
||||||
|
with:
|
||||||
|
name: built-debs
|
||||||
|
path: ${{ github.workspace }}
|
||||||
|
|
||||||
|
- name: Check Inputs
|
||||||
|
if: ${{ !inputs.create_cyan && !inputs.create_tf }}
|
||||||
|
run: |
|
||||||
|
echo "No output format selected."
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: brew install dpkg
|
||||||
|
|
||||||
|
- name: Install cyan
|
||||||
|
if: ${{ github.event.inputs.create_cyan }}
|
||||||
|
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
|
||||||
|
|
||||||
|
- name: Generate .cyan file
|
||||||
|
if: ${{ github.event.inputs.create_cyan }}
|
||||||
|
run: |
|
||||||
|
tweaks="ytplus.deb OpenYoutubeSafariExtension.appex"
|
||||||
|
for f in *.deb; do
|
||||||
|
[ -f "$f" ] && tweaks="$tweaks $f"
|
||||||
|
done
|
||||||
|
cgen -uwef $tweaks -n "${{ github.event.inputs.display_name }}" -b ${{ github.event.inputs.bundle_id }} -o cyan_YouTubePlus_${{ github.event.inputs.tweak_version }}.cyan
|
||||||
|
|
||||||
|
- name: Generate .zip file for TrollFools
|
||||||
|
if: ${{ github.event.inputs.create_tf }}
|
||||||
|
run: |
|
||||||
|
mkdir -p ytp_tf
|
||||||
|
for f in *.deb; do
|
||||||
|
if [ -f "$f" ]; then
|
||||||
|
mkdir -p tmp_deb
|
||||||
|
dpkg-deb -x "$f" tmp_deb
|
||||||
|
find tmp_deb -type f -name "*.dylib" -exec cp -R {} ytp_tf/ \;
|
||||||
|
find tmp_deb -type d -name "*.bundle" -exec cp -R {} ytp_tf/ \;
|
||||||
|
rm -rf tmp_deb
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
cd ytp_tf
|
||||||
|
zip -r "../TrollFools_YouTubePlus_${{ github.event.inputs.tweak_version }}.zip" .
|
||||||
|
cd ..
|
||||||
|
rm -rf ytp_tf
|
||||||
|
|
||||||
|
- name: Set output file list
|
||||||
|
id: filelist
|
||||||
|
run: |
|
||||||
|
files=""
|
||||||
|
[ "${{ github.event.inputs.create_cyan }}" = "true" ] && files="${files}cyan_YouTubePlus_${{ github.event.inputs.tweak_version }}.cyan"$'\n'
|
||||||
|
[ "${{ github.event.inputs.create_tf }}" = "true" ] && files="${files}TrollFools_YouTubePlus_${{ github.event.inputs.tweak_version }}.zip"$'\n'
|
||||||
|
echo -e "files<<EOF" >> $GITHUB_OUTPUT
|
||||||
|
echo -e "$files" >> $GITHUB_OUTPUT
|
||||||
|
echo "EOF" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
|
- name: Upload to GitHub Releases
|
||||||
|
uses: softprops/action-gh-release@v2.5.0
|
||||||
|
with:
|
||||||
|
tag_name: ytp-${{ github.run_number }}
|
||||||
|
name: YouTubePlus v${{ github.event.inputs.tweak_version }}_cyan_trollfools (${{ github.run_number }})
|
||||||
|
files: ${{ steps.filelist.outputs.files }}
|
||||||
|
draft: true
|
||||||
|
|
||||||
|
- name: Output Release URL
|
||||||
|
run: |
|
||||||
|
echo "::notice::Release available at: https://github.com/${{ github.repository }}/releases"
|
||||||
+49
-220
@@ -3,36 +3,41 @@ name: Create YouTube Plus app
|
|||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
inputs:
|
inputs:
|
||||||
|
|
||||||
enable_youpip:
|
enable_youpip:
|
||||||
description: "Integrate YouPiP"
|
description: "Integrate YouPiP"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
enable_ytuhd:
|
enable_ytuhd:
|
||||||
description: "Integrate YTUHD"
|
description: "Integrate YTUHD"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
enable_ryd:
|
|
||||||
description: "Integrate Return YouTube Dislikes"
|
|
||||||
type: boolean
|
|
||||||
required: true
|
|
||||||
default: true
|
|
||||||
|
|
||||||
enable_yq:
|
enable_yq:
|
||||||
description: "Integrate YouQuality"
|
description: "Integrate YouQuality"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
|
enable_ryd:
|
||||||
|
description: "Integrate Return YouTube Dislikes"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ytabc:
|
||||||
|
description: "Integrate YTABConfig"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
enable_demc:
|
enable_demc:
|
||||||
description: "Integrate DontEatMyContent"
|
description: "Integrate DontEatMyContent"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
ipa_url:
|
ipa_url:
|
||||||
description: "URL to the decrypted IPA file"
|
description: "URL to the decrypted IPA file"
|
||||||
@@ -42,7 +47,7 @@ on:
|
|||||||
|
|
||||||
tweak_version:
|
tweak_version:
|
||||||
description: "The version of the tweak to use. Enter the version manually from dayanch96/YTLite/releases or leave default"
|
description: "The version of the tweak to use. Enter the version manually from dayanch96/YTLite/releases or leave default"
|
||||||
default: "5.1"
|
default: "5.2b4"
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
|
|
||||||
@@ -69,241 +74,65 @@ concurrency:
|
|||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build-tweaks:
|
||||||
name:
|
uses: ./.github/workflows/_build_tweaks.yml
|
||||||
|
with:
|
||||||
|
enable_youpip: ${{ inputs.enable_youpip }}
|
||||||
|
enable_ytuhd: ${{ inputs.enable_ytuhd }}
|
||||||
|
enable_yq: ${{ inputs.enable_yq }}
|
||||||
|
enable_ryd: ${{ inputs.enable_ryd }}
|
||||||
|
enable_ytabc: ${{ inputs.enable_ytabc }}
|
||||||
|
enable_demc: ${{ inputs.enable_demc }}
|
||||||
|
tweak_version: ${{ inputs.tweak_version }}
|
||||||
|
|
||||||
|
package:
|
||||||
|
name: Package IPA
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
|
needs: build-tweaks
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Main
|
- name: Download built debs
|
||||||
uses: actions/checkout@v4.1.1
|
uses: actions/download-artifact@v7
|
||||||
with:
|
with:
|
||||||
path: main
|
name: built-debs
|
||||||
submodules: recursive
|
path: ${{ github.workspace }}
|
||||||
|
|
||||||
- name: Hide sensitive inputs
|
- name: Hide sensitive inputs
|
||||||
uses: levibostian/action-hide-sensitive-inputs@v1
|
uses: levibostian/action-hide-sensitive-inputs@v1
|
||||||
|
with:
|
||||||
|
exclude_inputs: bundle_id,display_name,enable_demc,enable_ryd,enable_ytabc,enable_youpip,enable_yq,enable_ytuhd,info_note,tweak_version
|
||||||
|
|
||||||
- name: Validate IPA URL
|
- name: Download and validate IPA
|
||||||
run: |
|
run: |
|
||||||
curl -L -r 0-1023 -o sample.part "${{ inputs.ipa_url }}" > /dev/null 2>&1
|
wget "${{ github.event.inputs.ipa_url }}" --no-verbose -O youtube.ipa
|
||||||
file_type=$(file --mime-type -b sample.part)
|
file_type=$(file --mime-type -b youtube.ipa)
|
||||||
|
|
||||||
if [[ "$file_type" != "application/x-ios-app" && "$file_type" != "application/zip" ]]; then
|
if [[ "$file_type" != "application/x-ios-app" && "$file_type" != "application/zip" ]]; then
|
||||||
echo "::error::Validation failed: The file is not a valid IPA file. Detected type: $file_type."
|
echo "::error::Validation failed: The downloaded file is not a valid IPA. Detected type: $file_type."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Install Dependencies
|
|
||||||
run: brew install make ldid
|
|
||||||
|
|
||||||
- name: Set PATH environment variable
|
|
||||||
run: echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH
|
|
||||||
|
|
||||||
- name: Cache Theos
|
|
||||||
id: theos
|
|
||||||
uses: actions/cache@v4
|
|
||||||
env:
|
|
||||||
cache-name: theos_cache_67db2ab
|
|
||||||
with:
|
|
||||||
path: theos/
|
|
||||||
key: ${{ env.cache-name }}
|
|
||||||
restore-keys: ${{ env.cache-name }}
|
|
||||||
|
|
||||||
- name: Setup Theos
|
|
||||||
if: steps.theos.outputs.cache-hit != 'true'
|
|
||||||
uses: actions/checkout@v4.1.7
|
|
||||||
with:
|
|
||||||
repository: theos/theos
|
|
||||||
ref: 67db2ab8d950910161730de77c322658ea3e6b44
|
|
||||||
path: ${{ github.workspace }}/theos
|
|
||||||
submodules: recursive
|
|
||||||
|
|
||||||
- name: Download iOS SDK
|
|
||||||
if: steps.theos.outputs.cache-hit != 'true'
|
|
||||||
run: |
|
|
||||||
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/theos/sdks/
|
|
||||||
cd sdks
|
|
||||||
git sparse-checkout set --no-cone iPhoneOS16.5.sdk
|
|
||||||
git checkout
|
|
||||||
mv *.sdk $THEOS/sdks
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Install cyan
|
- name: Install cyan
|
||||||
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
|
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
|
||||||
|
|
||||||
- name: Download YouTube Plus
|
|
||||||
id: download_ytp
|
|
||||||
run: |
|
|
||||||
deb_url="https://github.com/dayanch96/YTLite/releases/download/v${{ inputs.tweak_version }}/com.dvntm.ytlite_${{ inputs.tweak_version }}_iphoneos-arm.deb"
|
|
||||||
wget "$deb_url" --no-verbose -O ${{ github.workspace }}/ytplus.deb
|
|
||||||
|
|
||||||
- name: Download YouTube
|
|
||||||
id: download_youtube
|
|
||||||
run: wget "${{ inputs.ipa_url }}" --no-verbose -O ${{ github.workspace }}/youtube.ipa
|
|
||||||
|
|
||||||
- name: Clone Open in YouTube (Safari extension)
|
|
||||||
run: |
|
|
||||||
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/CokePokes/YoutubeExtensions/
|
|
||||||
cd YoutubeExtensions
|
|
||||||
git sparse-checkout set --no-cone OpenYoutubeSafariExtension.appex
|
|
||||||
git checkout
|
|
||||||
mv *.appex ${{ github.workspace }}
|
|
||||||
|
|
||||||
- name: Clone YouTubeHeader
|
|
||||||
run: |
|
|
||||||
if [ -d "$THEOS/include/YouTubeHeader" ]; then
|
|
||||||
echo "YouTubeHeader exists. Pulling latest changes..."
|
|
||||||
cd $THEOS/include/YouTubeHeader
|
|
||||||
git pull
|
|
||||||
else
|
|
||||||
echo "YouTubeHeader does not exist. Cloning repository..."
|
|
||||||
cd $THEOS/include
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouTubeHeader.git
|
|
||||||
fi
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Clone PSHeader
|
|
||||||
run: |
|
|
||||||
if [ -d "$THEOS/include/PSHeader" ]; then
|
|
||||||
echo "PSHeader exists. Pulling latest changes..."
|
|
||||||
cd $THEOS/include/PSHeader
|
|
||||||
git pull
|
|
||||||
else
|
|
||||||
echo "PSHeader does not exist. Cloning repository..."
|
|
||||||
cd $THEOS/include
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/PSHeader.git
|
|
||||||
fi
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Clone YouPiP
|
|
||||||
if: ${{ inputs.enable_youpip }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouPiP.git
|
|
||||||
|
|
||||||
- name: Clone YTUHD
|
|
||||||
if: ${{ inputs.enable_ytuhd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YTUHD.git
|
|
||||||
|
|
||||||
- name: Clone Return-YouTube-Dislikes
|
|
||||||
if: ${{ inputs.enable_ryd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/Return-YouTube-Dislikes.git
|
|
||||||
|
|
||||||
- name: Clone YouGroupSettings
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouGroupSettings.git
|
|
||||||
|
|
||||||
- name: Clone YouQuality
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouQuality.git
|
|
||||||
|
|
||||||
- name: Clone YTVideoOverlay
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YTVideoOverlay.git
|
|
||||||
|
|
||||||
- name: Clone DontEatMyContent
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 --recurse-submodules https://github.com/therealFoxster/DontEatMyContent.git
|
|
||||||
|
|
||||||
- name: Build YouPiP
|
|
||||||
if: ${{ inputs.enable_youpip }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YouPiP
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/youpip.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YTUHD
|
|
||||||
if: ${{ inputs.enable_ytuhd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YTUHD
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ytuhd.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build Return-YouTube-Dislikes
|
|
||||||
if: ${{ inputs.enable_ryd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/Return-YouTube-Dislikes
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ryd.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YouGroupSettings
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YouGroupSettings
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ygs.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YouQuality
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YouQuality
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/yq.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YTVideoOverlay
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YTVideoOverlay
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ytvo.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build DontEatMyContent
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/DontEatMyContent
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/demc.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Inject tweaks into IPA
|
- name: Inject tweaks into IPA
|
||||||
run: |
|
run: |
|
||||||
tweaks="ytplus.deb OpenYoutubeSafariExtension.appex"
|
tweaks="ytplus.deb OpenYoutubeSafariExtension.appex"
|
||||||
|
for f in *.deb; do
|
||||||
for deb in youpip.deb ytuhd.deb ryd.deb ygs.deb yq.deb ytvo.deb demc.deb; do
|
[ -f "$f" ] && tweaks="$tweaks $f"
|
||||||
if [ -f "$deb" ]; then
|
|
||||||
tweaks="$tweaks $deb"
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
cyan -i youtube.ipa -o YouTubePlus_${{ github.event.inputs.tweak_version }}.ipa -uwef $tweaks -n "${{ github.event.inputs.display_name }}" -b ${{ github.event.inputs.bundle_id }}
|
||||||
cyan -i youtube.ipa -o YouTubePlus_${{ inputs.tweak_version }}.ipa -uwef $tweaks -n "${{ inputs.display_name }}" -b ${{ inputs.bundle_id }}
|
|
||||||
|
|
||||||
- name: Upload to GitHub Releases
|
- name: Upload to GitHub Releases
|
||||||
uses: softprops/action-gh-release@v2.0.1
|
uses: softprops/action-gh-release@v2.5.0
|
||||||
with:
|
with:
|
||||||
name: YouTubePlus v${{ inputs.tweak_version }} (${{ github.run_number }})
|
tag_name: ytp-${{ github.run_number }}
|
||||||
files: YouTubePlus_${{ inputs.tweak_version }}.ipa
|
name: YouTubePlus v${{ github.event.inputs.tweak_version }} (${{ github.run_number }})
|
||||||
|
files: YouTubePlus_${{ github.event.inputs.tweak_version }}.ipa
|
||||||
draft: true
|
draft: true
|
||||||
|
|
||||||
- name: Output Release URL
|
- name: Output Release URL
|
||||||
run: |
|
run: |
|
||||||
echo "::notice::Release available at: https://github.com/${{ github.repository }}/releases"
|
echo "::notice::Release available at: https://github.com/${{ github.repository }}/releases"
|
||||||
|
|||||||
+46
-225
@@ -3,36 +3,41 @@ name: '[BETA] Create YouTube Plus app'
|
|||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
inputs:
|
inputs:
|
||||||
|
|
||||||
enable_youpip:
|
enable_youpip:
|
||||||
description: "Integrate YouPiP"
|
description: "Integrate YouPiP"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
enable_ytuhd:
|
enable_ytuhd:
|
||||||
description: "Integrate YTUHD"
|
description: "Integrate YTUHD"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
enable_ryd:
|
|
||||||
description: "Integrate Return YouTube Dislikes"
|
|
||||||
type: boolean
|
|
||||||
required: true
|
|
||||||
default: true
|
|
||||||
|
|
||||||
enable_yq:
|
enable_yq:
|
||||||
description: "Integrate YouQuality"
|
description: "Integrate YouQuality"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
|
enable_ryd:
|
||||||
|
description: "Integrate Return YouTube Dislikes"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
|
enable_ytabc:
|
||||||
|
description: "Integrate YTABConfig"
|
||||||
|
type: boolean
|
||||||
|
required: true
|
||||||
|
default: false
|
||||||
|
|
||||||
enable_demc:
|
enable_demc:
|
||||||
description: "Integrate DontEatMyContent"
|
description: "Integrate DontEatMyContent"
|
||||||
type: boolean
|
type: boolean
|
||||||
required: true
|
required: true
|
||||||
default: true
|
default: false
|
||||||
|
|
||||||
ipa_url:
|
ipa_url:
|
||||||
description: "URL to the decrypted IPA file"
|
description: "URL to the decrypted IPA file"
|
||||||
@@ -69,249 +74,65 @@ concurrency:
|
|||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build-tweaks:
|
||||||
name:
|
uses: ./.github/workflows/_build_tweaks.yml
|
||||||
|
with:
|
||||||
|
enable_youpip: ${{ inputs.enable_youpip }}
|
||||||
|
enable_ytuhd: ${{ inputs.enable_ytuhd }}
|
||||||
|
enable_yq: ${{ inputs.enable_yq }}
|
||||||
|
enable_ryd: ${{ inputs.enable_ryd }}
|
||||||
|
enable_ytabc: ${{ inputs.enable_ytabc }}
|
||||||
|
enable_demc: ${{ inputs.enable_demc }}
|
||||||
|
tweak_url: ${{ inputs.tweak_url }}
|
||||||
|
|
||||||
|
package:
|
||||||
|
name: Package IPA (Beta)
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
|
needs: build-tweaks
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Main
|
- name: Download built debs
|
||||||
uses: actions/checkout@v4.1.1
|
uses: actions/download-artifact@v7
|
||||||
with:
|
with:
|
||||||
path: main
|
name: built-debs
|
||||||
submodules: recursive
|
path: ${{ github.workspace }}
|
||||||
|
|
||||||
- name: Hide sensitive inputs
|
- name: Hide sensitive inputs
|
||||||
uses: levibostian/action-hide-sensitive-inputs@v1
|
uses: levibostian/action-hide-sensitive-inputs@v1
|
||||||
|
with:
|
||||||
|
exclude_inputs: bundle_id,display_name,enable_demc,enable_ryd,enable_ytabc,enable_youpip,enable_yq,enable_ytuhd,info_note
|
||||||
|
|
||||||
- name: Validate IPA URL
|
- name: Download and validate IPA
|
||||||
run: |
|
run: |
|
||||||
curl -L -r 0-1023 -o sample.part "${{ inputs.ipa_url }}" > /dev/null 2>&1
|
wget "${{ github.event.inputs.ipa_url }}" --no-verbose -O youtube.ipa
|
||||||
file_type=$(file --mime-type -b sample.part)
|
file_type=$(file --mime-type -b youtube.ipa)
|
||||||
|
|
||||||
if [[ "$file_type" != "application/x-ios-app" && "$file_type" != "application/zip" ]]; then
|
if [[ "$file_type" != "application/x-ios-app" && "$file_type" != "application/zip" ]]; then
|
||||||
echo "::error::Validation failed: The file is not a valid IPA file. Detected type: $file_type."
|
echo "::error::Validation failed: The downloaded file is not a valid IPA. Detected type: $file_type."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Validate Tweak URL
|
|
||||||
run: |
|
|
||||||
curl -L -r 0-1023 -o sample.part "${{ inputs.tweak_url }}" > /dev/null 2>&1
|
|
||||||
file_type=$(file --mime-type -b sample.part)
|
|
||||||
|
|
||||||
if [[ "$file_type" != "application/vnd.debian.binary-package" ]]; then
|
|
||||||
echo "::error::Validation failed: The file is not a valid DEB file. Detected type: $file_type."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Install Dependencies
|
|
||||||
run: brew install make ldid
|
|
||||||
|
|
||||||
- name: Set PATH environment variable
|
|
||||||
run: echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH
|
|
||||||
|
|
||||||
- name: Cache Theos
|
|
||||||
id: theos
|
|
||||||
uses: actions/cache@v4
|
|
||||||
env:
|
|
||||||
cache-name: theos_cache_67db2ab
|
|
||||||
with:
|
|
||||||
path: theos/
|
|
||||||
key: ${{ env.cache-name }}
|
|
||||||
restore-keys: ${{ env.cache-name }}
|
|
||||||
|
|
||||||
- name: Setup Theos
|
|
||||||
if: steps.theos.outputs.cache-hit != 'true'
|
|
||||||
uses: actions/checkout@v4.1.7
|
|
||||||
with:
|
|
||||||
repository: theos/theos
|
|
||||||
ref: 67db2ab8d950910161730de77c322658ea3e6b44
|
|
||||||
path: ${{ github.workspace }}/theos
|
|
||||||
submodules: recursive
|
|
||||||
|
|
||||||
- name: Download iOS SDK
|
|
||||||
if: steps.theos.outputs.cache-hit != 'true'
|
|
||||||
run: |
|
|
||||||
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/theos/sdks/
|
|
||||||
cd sdks
|
|
||||||
git sparse-checkout set --no-cone iPhoneOS16.5.sdk
|
|
||||||
git checkout
|
|
||||||
mv *.sdk $THEOS/sdks
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Install cyan
|
- name: Install cyan
|
||||||
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
|
run: pipx install --force https://github.com/asdfzxcvbn/pyzule-rw/archive/main.zip
|
||||||
|
|
||||||
- name: Download YouTube
|
|
||||||
id: download_youtube
|
|
||||||
run: wget "${{ inputs.ipa_url }}" --no-verbose -O ${{ github.workspace }}/youtube.ipa
|
|
||||||
|
|
||||||
- name: Download YouTube Plus
|
|
||||||
id: download_ytp
|
|
||||||
run: wget "${{ inputs.tweak_url }}" --no-verbose -O ${{ github.workspace }}/ytplus.deb
|
|
||||||
|
|
||||||
- name: Clone Open in YouTube (Safari extension)
|
|
||||||
run: |
|
|
||||||
git clone --quiet -n --depth=1 --filter=tree:0 https://github.com/CokePokes/YoutubeExtensions/
|
|
||||||
cd YoutubeExtensions
|
|
||||||
git sparse-checkout set --no-cone OpenYoutubeSafariExtension.appex
|
|
||||||
git checkout
|
|
||||||
mv *.appex ${{ github.workspace }}
|
|
||||||
|
|
||||||
- name: Clone YouTubeHeader
|
|
||||||
run: |
|
|
||||||
if [ -d "$THEOS/include/YouTubeHeader" ]; then
|
|
||||||
echo "YouTubeHeader exists. Pulling latest changes..."
|
|
||||||
cd $THEOS/include/YouTubeHeader
|
|
||||||
git pull
|
|
||||||
else
|
|
||||||
echo "YouTubeHeader does not exist. Cloning repository..."
|
|
||||||
cd $THEOS/include
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouTubeHeader.git
|
|
||||||
fi
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Clone PSHeader
|
|
||||||
run: |
|
|
||||||
if [ -d "$THEOS/include/PSHeader" ]; then
|
|
||||||
echo "PSHeader exists. Pulling latest changes..."
|
|
||||||
cd $THEOS/include/PSHeader
|
|
||||||
git pull
|
|
||||||
else
|
|
||||||
echo "PSHeader does not exist. Cloning repository..."
|
|
||||||
cd $THEOS/include
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/PSHeader.git
|
|
||||||
fi
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Clone YouPiP
|
|
||||||
if: ${{ inputs.enable_youpip }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouPiP.git
|
|
||||||
|
|
||||||
- name: Clone YTUHD
|
|
||||||
if: ${{ inputs.enable_ytuhd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YTUHD.git
|
|
||||||
|
|
||||||
- name: Clone Return-YouTube-Dislikes
|
|
||||||
if: ${{ inputs.enable_ryd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/Return-YouTube-Dislikes.git
|
|
||||||
|
|
||||||
- name: Clone YouGroupSettings
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouGroupSettings.git
|
|
||||||
|
|
||||||
- name: Clone YouQuality
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YouQuality.git
|
|
||||||
|
|
||||||
- name: Clone YTVideoOverlay
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 https://github.com/PoomSmart/YTVideoOverlay.git
|
|
||||||
|
|
||||||
- name: Clone DontEatMyContent
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
git clone --quiet --depth=1 --recurse-submodules https://github.com/therealFoxster/DontEatMyContent.git
|
|
||||||
|
|
||||||
- name: Build YouPiP
|
|
||||||
if: ${{ inputs.enable_youpip }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YouPiP
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/youpip.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YTUHD
|
|
||||||
if: ${{ inputs.enable_ytuhd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YTUHD
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ytuhd.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build Return-YouTube-Dislikes
|
|
||||||
if: ${{ inputs.enable_ryd }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/Return-YouTube-Dislikes
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ryd.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YouGroupSettings
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YouGroupSettings
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ygs.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YouQuality
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YouQuality
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/yq.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build YTVideoOverlay
|
|
||||||
if: ${{ inputs.enable_yq }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/YTVideoOverlay
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/ytvo.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Build DontEatMyContent
|
|
||||||
if: ${{ inputs.enable_demc }}
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}/DontEatMyContent
|
|
||||||
make clean package DEBUG=0 FINALPACKAGE=1
|
|
||||||
mv packages/*.deb ${{ github.workspace }}/demc.deb
|
|
||||||
env:
|
|
||||||
THEOS: ${{ github.workspace }}/theos
|
|
||||||
|
|
||||||
- name: Inject tweaks into IPA
|
- name: Inject tweaks into IPA
|
||||||
run: |
|
run: |
|
||||||
tweaks="ytplus.deb OpenYoutubeSafariExtension.appex"
|
tweaks="ytplus.deb OpenYoutubeSafariExtension.appex"
|
||||||
|
for f in *.deb; do
|
||||||
for deb in youpip.deb ytuhd.deb ryd.deb ygs.deb yq.deb ytvo.deb demc.deb; do
|
[ -f "$f" ] && tweaks="$tweaks $f"
|
||||||
if [ -f "$deb" ]; then
|
|
||||||
tweaks="$tweaks $deb"
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
cyan -i youtube.ipa -o YouTubePlus_Beta.ipa -uwef $tweaks -n "${{ github.event.inputs.display_name }}" -b ${{ github.event.inputs.bundle_id }}
|
||||||
cyan -i youtube.ipa -o YouTubePlus_Beta.ipa -uwef $tweaks -n "${{ inputs.display_name }}" -b ${{ inputs.bundle_id }}
|
|
||||||
|
|
||||||
- name: Upload to GitHub Releases
|
- name: Upload to GitHub Releases
|
||||||
uses: softprops/action-gh-release@v2.0.1
|
uses: softprops/action-gh-release@v2.5.0
|
||||||
with:
|
with:
|
||||||
|
tag_name: ytp-beta-${{ github.run_number }}
|
||||||
name: YouTubePlus Beta (${{ github.run_number }})
|
name: YouTubePlus Beta (${{ github.run_number }})
|
||||||
files: YouTubePlus_Beta.ipa
|
files: YouTubePlus_Beta.ipa
|
||||||
draft: true
|
draft: true
|
||||||
|
|
||||||
- name: Output Release URL
|
- name: Output Release URL
|
||||||
run: |
|
run: |
|
||||||
echo "::notice::Release available at: https://github.com/${{ github.repository }}/releases"
|
echo "::notice::Release available at: https://github.com/${{ github.repository }}/releases"
|
||||||
|
|||||||
@@ -0,0 +1,43 @@
|
|||||||
|
# FAQ (Frequently Asked Questions)
|
||||||
|
|
||||||
|
[✓] 🇺🇸 English FAQ | [🇷🇺 ЧаВо на Русском](FAQ_RU.md) | [🇮🇹 FAQ in Italiano](FAQ_IT.md) | [🇵🇱 FAQ po Polsku](FAQ_PL.md)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>What iOS versions does YouTube Plus support?</summary>
|
||||||
|
<p>YouTube Plus supports iOS 14 and above. <strong>However</strong>, if you're sideloading it on a non-jailbroken device, you must also consider the YouTube app's compatibility with your iOS version. Below is a list of the latest supported YouTube versions per iOS:</p>
|
||||||
|
<li><strong>iOS 14</strong>: YouTube v19.20.2</li>
|
||||||
|
<li><strong>iOS 15</strong>: YouTube v20.21.6</li>
|
||||||
|
<li><strong>iOS 16+</strong>: Any version, as supported by YouTube</li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>My iOS version is no longer supported by the latest YouTube app. What can I do?</summary>
|
||||||
|
<p>Here are some possible options:</p>
|
||||||
|
<li><a href="https://ios.cfw.guide/get-started/">Jailbreak your device</a>, install the latest supported YouTube version from the App Store, and <a href="http://dvntm0.github.io/#jb">install YouTube Plus as a tweak</a></li>
|
||||||
|
<li><a href="https://ios.cfw.guide/installing-trollstore/">Install TrollStore</a>, then <a href="https://github.com/Lessica/TrollFools/releases/">TrollFools</a>, install the latest supported YouTube version from the App Store, and inject <a href="https://github.com/dayanch96/YTLite/releases/">YouTube Plus</a> using TrollFools</li>
|
||||||
|
<li>Find a compatible IPA version online and <a href="../README.md#how-to-build-a-youtube-plus-app-using-github-actions">build a YouTube Plus app using Github actions</a></li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Cast stopped working on sideloaded YouTube Plus. What should I do?</summary>
|
||||||
|
<p>Until this issue is resolved, it is recommended to use YouTube version 20.14.1 or below.</p>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>When I try to play a video, I get <strong><em>Something went wrong. Refresh and try again later.</em></strong></summary>
|
||||||
|
<p>Before jumping to conclusions, let’s clarify a few things:</p>
|
||||||
|
<ol>
|
||||||
|
<li><strong>This is NOT</strong> caused by ad blocking</li>
|
||||||
|
<li><strong>This is NOT</strong> because your account was magically flagged</li>
|
||||||
|
<li><strong>This is NOT</strong> due to your account being secretly blacklisted</li>
|
||||||
|
</ol>
|
||||||
|
<br>
|
||||||
|
<p>The issue seems to lie somewhere in the sideloading process itself, even without any tweaks applied. It might be related to an invalid or missing VisitorID or VisitorData, as suggested <a href="https://github.com/pepeloni-away/userscripts/issues/6#issuecomment-2860641610">here</a>. This error has become more frequent due to YouTube’s stricter anti-download measures.</p>
|
||||||
|
<br>
|
||||||
|
<p><strong>Possible temporary workaround:</strong></p>
|
||||||
|
<ol>
|
||||||
|
<li>Sign out of your current account (or all accounts) completely: Go to the <em>You tab → Switch account → Manage accounts on this device → Remove from this device</em></li>
|
||||||
|
<li>Watch a few full-length videos without being signed in. Stay signed out for a few hours.</li>
|
||||||
|
<li>Sign back into the account that was having issues</li>
|
||||||
|
</ol>
|
||||||
|
</details>
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
# FAQ (Frequently Asked Questions)
|
||||||
|
|
||||||
|
[🇺🇸 English FAQ](FAQ_EN.md) | [🇷🇺 ЧаВо на Русском](FAQ_RU.md) | [✓] 🇮🇹 FAQ in Italiano | [🇵🇱 FAQ po Polsku](FAQ_PL.md)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Che versioni di iOS supporta YouTube Plus?</summary>
|
||||||
|
<p>YouTube Plus supporta iOS 14 e superiori. <strong>Però</strong>, se stai eseguendo il sideload su un dispositivo senza jailbreak, devi tenere conto della compatibilità dell'app di YouTube con la tua versione di iOS. Sotto trovi una lista delle ultime versioni di YouTube supportate per ogni iOS:</p>
|
||||||
|
<li><strong>iOS 14</strong>: YouTube v19.20.2</li>
|
||||||
|
<li><strong>iOS 15</strong>: YouTube v20.21.6</li>
|
||||||
|
<li><strong>iOS 16+</strong>: Qualsiasi versione</li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>La mia versione di iOS non è più supportata dall'app YouTube. Cosa posso fare?</summary>
|
||||||
|
<p>Ecco delle possibili opzioni:</p>
|
||||||
|
<li><a href="https://ios.cfw.guide/get-started/">Esegui il jailbreak sul tuo dispositivo</a>, installa l'ultima versione di YouTube supportata nell'App Store, poi <a href="http://dvntm0.github.io/#jb">installa il tweak di YouTube Plus</a></li>
|
||||||
|
<li><a href="https://ios.cfw.guide/installing-trollstore/">Installa TrollStore</a>, poi <a href="https://github.com/Lessica/TrollFools/releases/">TrollFools</a>, installa l'ultima versione di YouTube supportata nell'App Store, e installa <a href="https://github.com/dayanch96/YTLite/releases/">YouTube Plus</a> utilizzando TrollFools</li>
|
||||||
|
<li>Trova un'IPA compatibile online e <a href="../README.md#how-to-build-a-youtube-plus-app-using-github-actions">builda YouTube Plus utilizzando Github actions</a></li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Il Cast non funziona più su YouTube Plus sideloaded. Cosa dovrei fare?</summary>
|
||||||
|
<p>Finché non si risolve il problema, è consigliato usare YouTube 20.14.1 o inferiori.</p>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Quando provo a riprodurre un video, mi esce <strong><em>Qualcosa è andato storto. Aggiorna e riprova più tardi.</em></strong></summary>
|
||||||
|
<p>Prima di giungere a conclusioni affrettate, chiariamo un paio di cose:</p>
|
||||||
|
<ol>
|
||||||
|
<li><strong>Non è</strong> causato dall'ad blocking</li>
|
||||||
|
<li><strong>Non è</strong> causato dal fatto che il tuo account è stato magicamente segnalato</li>
|
||||||
|
<li><strong>Non è</strong> causato dal fatto che il tuo account è stato inserito in blacklist</li>
|
||||||
|
</ol>
|
||||||
|
<br>
|
||||||
|
<p>Questo problema risiede nel processo del sideloading stesso, anche senza nessun tweak applicato. Potrebbe essere causato da VisitorID o VisitorData invalidi o mancanti, come suggerito <a href="https://github.com/pepeloni-away/userscripts/issues/6#issuecomment-2860641610">qui</a>. Questo errore è diventato più frequente a causa delle contromisure anti-download di YouTube.</p>
|
||||||
|
<br>
|
||||||
|
<p><strong>Possibili workaround temporanei:</strong></p>
|
||||||
|
<ol>
|
||||||
|
<li>Esci dal tuo account completamente: Vai su <em>Tab Tu → Cambia account → Gestisci account su questo dispositivo → Rimuovi da questo dispositivo</em></li>
|
||||||
|
<li>Guarda un paio di video fino alla fine senza eseguire il login. Non eseguire il login per un paio d'ore.</li>
|
||||||
|
<li>Riesegui il login nell'account con cui stavi avendo problemi</li>
|
||||||
|
</ol>
|
||||||
|
</details>
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
# FAQ (Najczęściej Zadawane Pytania)
|
||||||
|
|
||||||
|
[🇺🇸 English FAQ](FAQ_EN.md) | [🇷🇺 ЧаВо на Русском](FAQ_RU.md) | [🇮🇹 FAQ in Italiano](FAQ_IT.md) | [✓] 🇵🇱 FAQ po Polsku
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Jakie wersje iOS obsługuje YouTube Plus?</summary>
|
||||||
|
<p>YouTube Plus obsługuje iOS 14 i nowsze. <strong>Jednakże</strong>, jeśli instalujesz go metodą sideload na urządzeniu bez jailbreaka, musisz również wziąć pod uwagę kompatybilność aplikacji YouTube z Twoją wersją iOS. Poniżej znajduje się lista ostatnich obsługiwanych wersji YouTube dla poszczególnych wersji iOS:</p>
|
||||||
|
<li><strong>iOS 14</strong>: YouTube v19.20.2</li>
|
||||||
|
<li><strong>iOS 15</strong>: YouTube v20.21.6</li>
|
||||||
|
<li><strong>iOS 16+</strong>: Dowolna wersja, zgodna z obsługą przez YouTube</li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Moja wersja iOS nie jest już obsługiwana przez najnowszą aplikację YouTube. Co mogę zrobić?</summary>
|
||||||
|
<p>Oto kilka możliwych opcji:</p>
|
||||||
|
<li><a href="https://ios.cfw.guide/get-started/">Zrób jailbreak urządzenia</a>, zainstaluj ostatnią obsługiwaną wersję YouTube ze sklepu App Store i <a href="http://dvntm0.github.io/#jb">zainstaluj YouTube Plus jako tweak</a></li>
|
||||||
|
<li><a href="https://ios.cfw.guide/installing-trollstore/">Zainstaluj TrollStore</a>, następnie <a href="https://github.com/Lessica/TrollFools/releases/">TrollFools</a>, zainstaluj ostatnią obsługiwaną wersję YouTube ze sklepu App Store i wstrzyknij <a href="https://github.com/dayanch96/YTLite/releases/">YouTube Plus</a> przy użyciu TrollFools</li>
|
||||||
|
<li>Znajdź kompatybilną wersję IPA w internecie i <a href="../README.md#how-to-build-a-youtube-plus-app-using-github-actions">zbuduj aplikację YouTube Plus przy użyciu GitHub Actions</a></li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Przestało działać przesyłanie (Cast) w zainstalowanym metodą sideload YouTube Plus. Co powinienem zrobić?</summary>
|
||||||
|
<p>Do czasu rozwiązania problemu zaleca się korzystanie z wersji YouTube 20.14.1 lub starszej.</p>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Podczas próby odtworzenia filmu pojawia się komunikat <strong><em>Coś poszło nie tak. Odśwież i spróbuj ponownie później.</em></strong></summary>
|
||||||
|
<p>Zanim wyciągniesz wnioski, wyjaśnijmy kilka rzeczy:</p>
|
||||||
|
<ol>
|
||||||
|
<li><strong>To NIE jest</strong> spowodowane blokowaniem reklam</li>
|
||||||
|
<li><strong>To NIE jest</strong> spowodowane rzekomym oznaczeniem Twojego konta</li>
|
||||||
|
<li><strong>To NIE jest</strong> spowodowane ukrytym umieszczeniem Twojego konta na czarnej liście</li>
|
||||||
|
</ol>
|
||||||
|
<br>
|
||||||
|
<p>Problem wydaje się tkwić w samym procesie sideloadingu, nawet bez zastosowania jakichkolwiek tweaków. Może być on związany z nieprawidłowym lub brakującym VisitorID lub VisitorData, jak zasugerowano <a href="https://github.com/pepeloni-away/userscripts/issues/6#issuecomment-2860641610">tutaj</a>. Błąd ten występuje częściej z powodu zaostrzenia zabezpieczeń anty-pobieraniowych przez YouTube.</p>
|
||||||
|
<br>
|
||||||
|
<p><strong>Możliwe tymczasowe obejście:</strong></p>
|
||||||
|
<ol>
|
||||||
|
<li>Całkowicie wyloguj się z obecnego konta (lub wszystkich kont): Przejdź do zakładki <em>Ty → Zmień konto → Zarządzaj kontami na tym urządzeniu → Usuń z tego urządzenia</em></li>
|
||||||
|
<li>Obejrzyj kilka pełnometrażowych filmów bez logowania się. Pozostań wylogowany przez kilka godzin.</li>
|
||||||
|
<li>Zaloguj się ponownie na konto, na którym występował problem</li>
|
||||||
|
</ol>
|
||||||
|
</details>
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
# ЧаВо (Часто задаваемые вопросы)
|
||||||
|
|
||||||
|
[🇺🇸 English FAQ](FAQ_EN.md) | [✓] 🇷🇺 ЧаВо на Русском | [🇮🇹 FAQ in Italiano](FAQ_IT.md) | [🇵🇱 FAQ po polsku](FAQ_PL.md)
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Какие версии iOS поддерживает YouTube Plus?</summary>
|
||||||
|
<p>YouTube Plus поддерживает iOS 14 и выше. <strong>Однако</strong>, если вы устанавливаете его сертификатом разработчика, нужно учитывать совместимость самой YouTube с вашей iOS. Вот список последних поддерживаемых версий YouTube для каждой iOS:</p>
|
||||||
|
<li><strong>iOS 14</strong>: YouTube v19.20.2</li>
|
||||||
|
<li><strong>iOS 15</strong>: YouTube v20.21.6</li>
|
||||||
|
<li><strong>iOS 16+</strong>: Любая версия, поддерживаемая YouTube</li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Моя версия iOS более не поддерживается последним YouTube-ом. Что делать?</summary>
|
||||||
|
<p>Вот возможные варианты:</p>
|
||||||
|
<li><a href="https://ios.cfw.guide/get-started/">Установить джейлбрейк</a>, установить поддерживаемую версию YouTube из App Store, затем <a href="http://dvntm0.github.io/#jb">установить YouTube Plus как твик</a></li>
|
||||||
|
<li><a href="https://ios.cfw.guide/installing-trollstore/">Установить TrollStore</a>, установить <a href="https://github.com/Lessica/TrollFools/releases/">TrollFools</a> через TrollStore, установить подходящую версию YouTube из App Store, затем «инжектнуть» <a href="https://github.com/dayanch96/YTLite/releases/">YouTube Plus</a> через TrollFools</li>
|
||||||
|
<li>Найти и скачать совместимую IPA-версию в интернете, затем <a href="../README.md#how-to-build-a-youtube-plus-app-using-github-actions">собрать YouTube Plus через GitHub Actions</a></li>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>Перестала работать функция трансляции на ТВ на сертификате разработчика. Что делать?</summary>
|
||||||
|
<p>Пока проблема не будет решена, рекомендуется использовать версию YouTube 20.14.1 или ниже.</p>
|
||||||
|
</details>
|
||||||
|
<br>
|
||||||
|
<details>
|
||||||
|
<summary>При попытке воспроизведения видео появляется <strong><em>Произошла ошибка. Обновите страницу и попробуйте снова.</em></strong></summary>
|
||||||
|
<p>Прежде чем делать выводы, уточним несколько моментов:</p>
|
||||||
|
<ol>
|
||||||
|
<li><strong>Это НЕ</strong> из-за блокировщика рекламы</li>
|
||||||
|
<li><strong>Это НЕ</strong> потому что ваш аккаунт каким-то образом был помечен</li>
|
||||||
|
<li><strong>Это НЕ</strong> из-за того, что ваш аккаунт добавлен в загадочный чёрный список</li>
|
||||||
|
</ol>
|
||||||
|
<br>
|
||||||
|
<p>Проблема, скорее, кроется в самом процессе сайдлоадинга, даже «чистом» YouTube без твиков. <a href="https://github.com/pepeloni-away/userscripts/issues/6#issuecomment-2860641610">Тут</a> пишут, что причина в некорректных или отсутствующих VisitorID/VisitorData. Такая ошибка стала встречаться чаще из-за новых механизмов YouTube по борьбе с загрузчиками.</p>
|
||||||
|
<p><strong>Возможные временные решения:</strong></p>
|
||||||
|
<ol>
|
||||||
|
<li>Полностью выйдите из аккаунта (или всех аккаунтов): <em>Перейдите во вкладку «Вы» → Сменить аккаунт → Управление аккаунтами на этом устройстве → Удалить</em></li>
|
||||||
|
<li>Просмотрите несколько длинных видео без входа в аккаунт. Оставайтесь в разлогиненном состоянии несколько часов.</li>
|
||||||
|
<li>Заново войдите в аккаунт, на котором возникала проблема</li>
|
||||||
|
</ol>
|
||||||
|
</details>
|
||||||
@@ -1,6 +1,15 @@
|
|||||||
# YouTube Plus (ex. YTLite)
|
# YouTube Plus (ex. YTLite)
|
||||||
A flexible enhancer for YouTube on iOS, featuring over hundred customizable options.
|
A flexible enhancer for YouTube on iOS, featuring over hundred customizable options.
|
||||||
|
|
||||||
|
## Table of Contents
|
||||||
|
- [Screenshots](#screenshots)
|
||||||
|
- [Main Features](#main-features)
|
||||||
|
- [FAQ](#faq)
|
||||||
|
- [Reviews](#reviews)
|
||||||
|
- [How to build a YouTube Plus app using GitHub Actions](#how-to-build-a-youtube-plus-app-using-github-actions)
|
||||||
|
- [Supported YouTube Version](#supported-youtube-version)
|
||||||
|
- [Tweak Integration Details](#tweak-integration-details)
|
||||||
|
|
||||||
## Screenshots
|
## Screenshots
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -40,9 +49,13 @@ A flexible enhancer for YouTube on iOS, featuring over hundred customizable opti
|
|||||||
**YouTube Plus preferences can be found in the YouTube Settings**
|
**YouTube Plus preferences can be found in the YouTube Settings**
|
||||||
|
|
||||||
**All contributors are listed in the Contributors section**
|
**All contributors are listed in the Contributors section**
|
||||||
|
|
||||||
**Used open-source libraries are listed in the Open Source Libraries section**
|
**Used open-source libraries are listed in the Open Source Libraries section**
|
||||||
|
|
||||||
|
## FAQ
|
||||||
|
- [🇺🇸 English FAQ](FAQs/FAQ_EN.md)
|
||||||
|
- [🇷🇺 ЧаВо на Русском](FAQs/FAQ_RU.md)
|
||||||
|
- [🇮🇹 FAQ in Italiano](FAQs/FAQ_IT.md)
|
||||||
|
- [🇵🇱 FAQ po polsku](FAQs/FAQ_PL.md)
|
||||||
|
|
||||||
## Reviews
|
## Reviews
|
||||||
Review by [@qbap](https://github.com/qbap) on ONE Jailbreak: https://onejailbreak.com/blog/youtube-plus/
|
Review by [@qbap](https://github.com/qbap) on ONE Jailbreak: https://onejailbreak.com/blog/youtube-plus/
|
||||||
@@ -58,11 +71,11 @@ Review by [@qbap](https://github.com/qbap) on ONE Jailbreak: https://onejailbrea
|
|||||||
<summary>How to build the YouTube Plus app</summary>
|
<summary>How to build the YouTube Plus app</summary>
|
||||||
<ol>
|
<ol>
|
||||||
<li>Click on <strong>Sync fork</strong>, and if your branch is out-of-date, click on <strong>Update branch</strong>.</li>
|
<li>Click on <strong>Sync fork</strong>, and if your branch is out-of-date, click on <strong>Update branch</strong>.</li>
|
||||||
<li>Navigate to the <strong>Actions tab</strong> in your forked repository and select <strong>Build YouTube Plus app</strong>.</li>
|
<li>Navigate to the <strong>Actions tab</strong> in your forked repository and select <strong>Create YouTube Plus app</strong>.</li>
|
||||||
<li>Click the <strong>Run workflow</strong> button located on the right side.</li>
|
<li>Click the <strong>Run workflow</strong> button located on the right side.</li>
|
||||||
<li>Mark or unmark the tweaks you want to integrate. Learn more about them in the <a href="#tweak-integration-details">Tweak Integration Details</a> section.</li>
|
<li>Mark or unmark the tweaks you want to integrate. Learn more about them in the <a href="#tweak-integration-details">Tweak Integration Details</a> section.</li>
|
||||||
<li>Prepare a decrypted .ipa file <em>(we cannot provide this due to legal reasons)</em>, then upload it to a file provider (e.g., filebin.net, filemail.com, or Dropbox is recommended). Paste the URL of the decrypted IPA file in the provided field.</li>
|
<li>Prepare a decrypted .ipa file <em>(we cannot provide this due to legal reasons)</em>, then upload it to a file provider (e.g., filebin.net, filemail.com, or Dropbox is recommended). Paste the URL of the decrypted IPA file in the provided field.</li>
|
||||||
<li><span style="color: red; font-weight: bold;">NOTE:</span> Make sure to provide a direct download link to the file, not a link to a webpage. Otherwise, the process will fail.</li>
|
<li><strong>NOTE:</strong> Make sure to provide a direct download link to the file, not a link to a webpage. Otherwise, the process will fail.</li>
|
||||||
<li>Enter the tweak version from the releases (the latest release is selected by default). You can also change the BundleID and Display Name if desired.</li>
|
<li>Enter the tweak version from the releases (the latest release is selected by default). You can also change the BundleID and Display Name if desired.</li>
|
||||||
<li>Make sure all inputs are correct, then click <strong>Run workflow</strong> to start the process.</li>
|
<li>Make sure all inputs are correct, then click <strong>Run workflow</strong> to start the process.</li>
|
||||||
<li>Wait for the build to finish. You can download the YouTube Plus app from the releases section of your forked repo. (If you can't find the releases section, go to your forked repo and add /releases to the URL, i.e., github.com/user/YTLite/releases.)</li>
|
<li>Wait for the build to finish. You can download the YouTube Plus app from the releases section of your forked repo. (If you can't find the releases section, go to your forked repo and add /releases to the URL, i.e., github.com/user/YTLite/releases.)</li>
|
||||||
@@ -82,12 +95,19 @@ Review by [@qbap](https://github.com/qbap) on ONE Jailbreak: https://onejailbrea
|
|||||||
<li>Mark or unmark the tweaks you want to integrate. Learn more about them in the <a href="#tweak-integration-details">Tweak Integration Details</a> section.</li>
|
<li>Mark or unmark the tweaks you want to integrate. Learn more about them in the <a href="#tweak-integration-details">Tweak Integration Details</a> section.</li>
|
||||||
<li>Prepare a decrypted .ipa file <em>(we cannot provide this due to legal reasons)</em>, then upload it to a file provider (e.g., filebin.net, filemail.com, or Dropbox is recommended). Paste the URL of the decrypted IPA file in the provided field.</li>
|
<li>Prepare a decrypted .ipa file <em>(we cannot provide this due to legal reasons)</em>, then upload it to a file provider (e.g., filebin.net, filemail.com, or Dropbox is recommended). Paste the URL of the decrypted IPA file in the provided field.</li>
|
||||||
<li>Upload your beta tweak file to a file provider and paste direct link to the <strong>URL to the YouTube Plus tweak file</strong> field. You can also change the BundleID and Display Name if desired.</li>
|
<li>Upload your beta tweak file to a file provider and paste direct link to the <strong>URL to the YouTube Plus tweak file</strong> field. You can also change the BundleID and Display Name if desired.</li>
|
||||||
<li><span style="color: red; font-weight: bold;">NOTE:</span> Make sure to provide a direct download link to the file, not a link to a webpage. Otherwise, the process will fail.</li>
|
<li><strong>NOTE:</strong> Make sure to provide a direct download link to the file, not a link to a webpage. Otherwise, the process will fail.</li>
|
||||||
<li>Make sure all inputs are correct, then click <strong>Run workflow</strong> to start the process.</li>
|
<li>Make sure all inputs are correct, then click <strong>Run workflow</strong> to start the process.</li>
|
||||||
<li>Wait for the build to finish. You can download the YouTube Plus app from the releases section of your forked repo. (If you can't find the releases section, go to your forked repo and add /releases to the URL, i.e., github.com/user/YTLite/releases.)</li>
|
<li>Wait for the build to finish. You can download the YouTube Plus app from the releases section of your forked repo. (If you can't find the releases section, go to your forked repo and add /releases to the URL, i.e., github.com/user/YTLite/releases.)</li>
|
||||||
</ol>
|
</ol>
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
## Supported YouTube Version
|
||||||
|
<ul>
|
||||||
|
<li><strong>Latest confirmed:</strong> <em>20.42.3</em></li>
|
||||||
|
<li><strong>Date tested:</strong> <em>Nov 5, 2025</em></li>
|
||||||
|
<li><strong>YouTube Plus:</strong> <em>5.2 beta 4</em></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
## Tweak Integration Details
|
## Tweak Integration Details
|
||||||
<details>
|
<details>
|
||||||
<summary>YouPiP</summary>
|
<summary>YouPiP</summary>
|
||||||
@@ -122,4 +142,4 @@ Review by [@qbap](https://github.com/qbap) on ONE Jailbreak: https://onejailbrea
|
|||||||
<p>DontEatMyContent is a tweak developed by <a href="https://github.com/therealFoxster">therealFoxster</a> that prevents the Notch/Dynamic Island from munching on 2:1 video content in the iOS YouTube app.</p>
|
<p>DontEatMyContent is a tweak developed by <a href="https://github.com/therealFoxster">therealFoxster</a> that prevents the Notch/Dynamic Island from munching on 2:1 video content in the iOS YouTube app.</p>
|
||||||
<p><strong>DontEatMyContent preferences</strong> are available in the <strong>YouTube settings</strong>.</p>
|
<p><strong>DontEatMyContent preferences</strong> are available in the <strong>YouTube settings</strong>.</p>
|
||||||
<p>Source code and additional information are available <a href="https://github.com/therealFoxster/DontEatMyContent">in therealFoxster's GitHub repository</a>.</p>
|
<p>Source code and additional information are available <a href="https://github.com/therealFoxster/DontEatMyContent">in therealFoxster's GitHub repository</a>.</p>
|
||||||
</details>
|
</details>
|
||||||
|
|||||||
@@ -90,6 +90,22 @@
|
|||||||
],
|
],
|
||||||
"class": "DepictionStackView",
|
"class": "DepictionStackView",
|
||||||
"tabname": "Details"
|
"tabname": "Details"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"views": [
|
||||||
|
{
|
||||||
|
"class": "DepictionTableButtonView",
|
||||||
|
"title": "My Patreon",
|
||||||
|
"action": "https://patreon.com/dayanch96"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"class": "DepictionTableButtonView",
|
||||||
|
"title": "Buy me a coffee",
|
||||||
|
"action": "https://buymeacoffee.com/dayanch96"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"class": "DepictionStackView",
|
||||||
|
"tabname": "Support"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
"PostDownloadDesc" = "سيتم تنفيذ الإجراء المحدد عند الانتهاء من الحفظ.";
|
"PostDownloadDesc" = "سيتم تنفيذ الإجراء المحدد عند الانتهاء من الحفظ.";
|
||||||
"SaveToPhotos" = "حفظ إلى الصور";
|
"SaveToPhotos" = "حفظ إلى الصور";
|
||||||
"Share" = "مشاركة";
|
"Share" = "مشاركة";
|
||||||
|
"Copy" = "Copy";
|
||||||
"Ask" = "يسأل";
|
"Ask" = "يسأل";
|
||||||
"DownloadCompleted" = "أكتمل الحفظ";
|
"DownloadCompleted" = "أكتمل الحفظ";
|
||||||
|
|
||||||
@@ -91,13 +92,17 @@
|
|||||||
/* Player options */
|
/* Player options */
|
||||||
"Player" = "مشغل الفديو";
|
"Player" = "مشغل الفديو";
|
||||||
"PlaybackQualityOnWiFi" = "جودة التشغيل على WiFi";
|
"PlaybackQualityOnWiFi" = "جودة التشغيل على WiFi";
|
||||||
|
"PlaybackQualityOnWiFiDesc" = "Automatically applies the selected quality when streaming over Wi-Fi";
|
||||||
"PlaybackQualityOnCellular" = "جودة التشغيل على البيانات الخلوية";
|
"PlaybackQualityOnCellular" = "جودة التشغيل على البيانات الخلوية";
|
||||||
|
"PlaybackQualityOnCellularDesc" = "Automatically applies the selected quality when streaming over mobile data";
|
||||||
|
|
||||||
"PreferredCaptions" = "الترجمة المفضلة";
|
"PreferredCaptions" = "الترجمة المفضلة";
|
||||||
"Original" = "الأصلي";
|
"Original" = "الأصلي";
|
||||||
"Custom" = "اختر يدويًا";
|
"Custom" = "اختر يدويًا";
|
||||||
"CustomAudioTrack" = "المسار الصوتي المحدد";
|
"CustomAudioTrack" = "المسار الصوتي المحدد";
|
||||||
|
"CustomAudioTrackDesc" = "Specifies the preferred audio track language to use for playback, if available";
|
||||||
"CustomCaptions" = "الترجمة المحددة";
|
"CustomCaptions" = "الترجمة المحددة";
|
||||||
|
"CustomCaptionsDesc" = "Specifies the preferred captions language to display, if available";
|
||||||
"AutoGenCaps" = "الترجمة الذي تم إنشاؤها تلقائيًا";
|
"AutoGenCaps" = "الترجمة الذي تم إنشاؤها تلقائيًا";
|
||||||
"AutoGenCapsDesc" = "إذا لم يتم العثور على الترجمة المحددة، فسيحاول YouTube Plus تحديد إما ترجمة للتسميات التوضيحية الأصلية أو ترجمة التسميات التوضيحية التي يتم إنشاؤها تلقائيًا.";
|
"AutoGenCapsDesc" = "إذا لم يتم العثور على الترجمة المحددة، فسيحاول YouTube Plus تحديد إما ترجمة للتسميات التوضيحية الأصلية أو ترجمة التسميات التوضيحية التي يتم إنشاؤها تلقائيًا.";
|
||||||
|
|
||||||
@@ -182,6 +187,7 @@
|
|||||||
|
|
||||||
"Player.Actions" = "الإجراءات";
|
"Player.Actions" = "الإجراءات";
|
||||||
"DefaultPlaybackRate" = "معدل التشغيل الافتراضي";
|
"DefaultPlaybackRate" = "معدل التشغيل الافتراضي";
|
||||||
|
"DefaultPlaybackRateDesc" = "Overrides the default playback speed";
|
||||||
"BackgroundPlayback" = "التشغيل في الخلفية";
|
"BackgroundPlayback" = "التشغيل في الخلفية";
|
||||||
"BackgroundPlaybackDesc" = "يتيح التشغيل في الخلفية.";
|
"BackgroundPlaybackDesc" = "يتيح التشغيل في الخلفية.";
|
||||||
"Miniplayer" = "تفعيل المشغل المصغر";
|
"Miniplayer" = "تفعيل المشغل المصغر";
|
||||||
@@ -200,15 +206,20 @@
|
|||||||
"ExitFullscreenDesc" = "يخرج من وضع ملء الشاشة في نهاية تشغيل الفيديو.";
|
"ExitFullscreenDesc" = "يخرج من وضع ملء الشاشة في نهاية تشغيل الفيديو.";
|
||||||
|
|
||||||
"Player.Gestures" = "الإيماءات";
|
"Player.Gestures" = "الإيماءات";
|
||||||
|
"CompactToast" = "Compact toast";
|
||||||
|
"CompactToastDesc" = "Displays a compact-style toast for player gestures";
|
||||||
"LeftSideGesture" = "إيماءة للجانب الأيسر";
|
"LeftSideGesture" = "إيماءة للجانب الأيسر";
|
||||||
|
"LeftSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the left side of the screen";
|
||||||
"RightSideGesture" = "إيماءة للجانب الأيمن";
|
"RightSideGesture" = "إيماءة للجانب الأيمن";
|
||||||
|
"RightSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the right side of the screen";
|
||||||
"ActivationAreaWidth" = "عرض منطقة الإيماءات";
|
"ActivationAreaWidth" = "عرض منطقة الإيماءات";
|
||||||
"ActivationAreaWidthDesc" = "تحدد هذه القيمة منطقة التعرف على الإيماءات بالبكسل للجانبين الأيسر والأيمن من الشاشة.\n\nالحد الأقصى للقيمة المسموح به هو ثلث عرض الشاشة.\n\nيعد ضبط هذا الإعداد مفيدا لمنع التنشيط العرضي عند محاولة تصغير المشغل أو توسيعه.";
|
"ActivationAreaWidthDesc" = "تحدد هذه القيمة منطقة التعرف على الإيماءات بالبكسل للجانبين الأيسر والأيمن من الشاشة.\n\nالحد الأقصى للقيمة المسموح به هو ثلث عرض الشاشة.\n\nيعد ضبط هذا الإعداد مفيدا لمنع التنشيط العرضي عند محاولة تصغير المشغل أو توسيعه.";
|
||||||
"HoldToSpeed" = "اضغط مع الاستمرار للسرعة";
|
"HoldToSpeed" = "اضغط مع الاستمرار للسرعة";
|
||||||
|
"HoldToSpeedDesc" = "Sets the playback speed triggered by a long press on the player";
|
||||||
"AdjustWithFinger" = "ضبط السرعة بالإيماءات";
|
"AdjustWithFinger" = "ضبط السرعة بالإيماءات";
|
||||||
"AdjustWithFingerDesc" = "يسمح بضبط سرعة التشغيل عن طريق الضغط المطول على المشغل وتحريك الإصبع لأعلى ولأسفل.";
|
"AdjustWithFingerDesc" = "يسمح بضبط سرعة التشغيل عن طريق الضغط المطول على المشغل وتحريك الإصبع لأعلى ولأسفل.";
|
||||||
"PreserveSpeed" = "الاحتفاظ بالسرعة";
|
"PreserveSpeed" = "Lock speed";
|
||||||
"PreserveSpeedDesc" = "يحافظ على السرعة المعدلة بعد اكتمال الإيماءة.";
|
"PreserveSpeedDesc" = "Locks at adjusted speed after gesture completion.";
|
||||||
"SeekAnywhere" = "أسحب للبحث";
|
"SeekAnywhere" = "أسحب للبحث";
|
||||||
"SeekAnywhereDesc" = "يسمح بالتحكم في التقديم والإرجاع أثناء التشغيل عن طريق السحب لليسار ولليمين.";
|
"SeekAnywhereDesc" = "يسمح بالتحكم في التقديم والإرجاع أثناء التشغيل عن طريق السحب لليسار ولليمين.";
|
||||||
"SeekMethod" = "طريقة البحث";
|
"SeekMethod" = "طريقة البحث";
|
||||||
@@ -319,16 +330,15 @@
|
|||||||
"InactiveTabs" = "علامات التبويب الغير نشطة";
|
"InactiveTabs" = "علامات التبويب الغير نشطة";
|
||||||
"HideLibraryFooter" = "يمكن إخفاء علامة تبويب المكتبة أو إظهارها عن طريق الضغط لفترة طويلة على علامة التبويب الأولى من شريط علامات التبويبات.";
|
"HideLibraryFooter" = "يمكن إخفاء علامة تبويب المكتبة أو إظهارها عن طريق الضغط لفترة طويلة على علامة التبويب الأولى من شريط علامات التبويبات.";
|
||||||
"Warning" = "تحذير";
|
"Warning" = "تحذير";
|
||||||
"TabIsHidden" = "لا يمكن تحديد علامة التبويب المخفية كصفحة بدء";
|
"AtLeastOneTab" = "At least one tab must remain active";
|
||||||
"TabIsStartupTab" = "لا يمكن إخفاء علامة التبويب المحددة كصفحة بدء التشغيل";
|
|
||||||
"TabsCountRestricted" = "يمكنك أن يكون لديك ما يصل إلى ستة علامات تبويب نشطة فقط";
|
"TabsCountRestricted" = "يمكنك أن يكون لديك ما يصل إلى ستة علامات تبويب نشطة فقط";
|
||||||
|
|
||||||
/* Interface options */
|
/* Interface options */
|
||||||
"Interface" = "واجهة المستخدم";
|
"Interface" = "واجهة المستخدم";
|
||||||
"OledTheme" = "ثيم OLED";
|
"OledTheme" = "ثيم OLED";
|
||||||
"OledThemeDesc" = "يحول جميع الألوان الداكنة إلى الأسود.";
|
"OledThemeDesc" = "يحول جميع الألوان الداكنة إلى الأسود.";
|
||||||
"OledKeyboard" = "لوحة مفاتيح Oled";
|
"OledKeyboard" = "لوحة مفاتيح OLED";
|
||||||
"OledKeyboardDesc" = "يطبق سمة oled السوداء على لوحة المفاتيح المظلمة";
|
"OledKeyboardDesc" = "يطبق سمة OLED السوداء على لوحة المفاتيح المظلمة";
|
||||||
"NoSearchHistory" = "إخفاء سجل البحث";
|
"NoSearchHistory" = "إخفاء سجل البحث";
|
||||||
"NoSearchHistoryDesc" = "يخفي سجل البحث والاقتراحات بصريًا. ملاحظة: سيظل سجل البحث الخاص بك متاحًا في عملاء YouTube الآخرين.";
|
"NoSearchHistoryDesc" = "يخفي سجل البحث والاقتراحات بصريًا. ملاحظة: سيظل سجل البحث الخاص بك متاحًا في عملاء YouTube الآخرين.";
|
||||||
"StickSortComments" = "تثبيت رأس التعليقات";
|
"StickSortComments" = "تثبيت رأس التعليقات";
|
||||||
@@ -351,9 +361,13 @@
|
|||||||
"MiniplayerStyleDesc" = "يتطلب التبديل إلى الوضع العائم إعادة تشغيل التطبيق.";
|
"MiniplayerStyleDesc" = "يتطلب التبديل إلى الوضع العائم إعادة تشغيل التطبيق.";
|
||||||
"Floating" = "عائم";
|
"Floating" = "عائم";
|
||||||
|
|
||||||
"ContextMenu" = "قائمة السياق";
|
"Other" = "Other";
|
||||||
"NoShareChunk" = "إزالة معرّف المشاركة";
|
"NoShareChunk" = "إزالة معرّف المشاركة";
|
||||||
"NoShareChunkDesc" = "يزيل معلمة \"si=identifier\" من الروابط المشتركة. خيار جيد بديل لـ \"واجهة المشاركة الأصلية\" حيث تواصل YouTube تحسين قائمة المشاركة الخاصة بها.";
|
"NoShareChunkDesc" = "يزيل معلمة \"si=identifier\" من الروابط المشتركة. خيار جيد بديل لـ \"واجهة المشاركة الأصلية\" حيث تواصل YouTube تحسين قائمة المشاركة الخاصة بها.";
|
||||||
|
"AutoCheckLinks" = "Auto-check clipboard";
|
||||||
|
"AutoCheckLinksDesc" = "Check clipboard for YouTube-related links each time the app is opened.\nFor proper functionality, go to iOS Settings → YouTube → Paste from other apps and select \"Allow\"";
|
||||||
|
|
||||||
|
"ContextMenu" = "قائمة السياق";
|
||||||
"NativeShare" = "واجهة المشاركة الأصلية";
|
"NativeShare" = "واجهة المشاركة الأصلية";
|
||||||
"NativeShareDesc" = "يستخدم واجهة المشاركة الخاصة بالنظام لمشاركة الوسائط";
|
"NativeShareDesc" = "يستخدم واجهة المشاركة الخاصة بالنظام لمشاركة الوسائط";
|
||||||
"RemoveCommentGuidelines" = "إزالة إرشادات المجتمع";
|
"RemoveCommentGuidelines" = "إزالة إرشادات المجتمع";
|
||||||
@@ -374,10 +388,16 @@
|
|||||||
"RemoveDontRecommendMenuDesc" = "يزيل خيار \"لا توصي بالقناة\" من القائمة.";
|
"RemoveDontRecommendMenuDesc" = "يزيل خيار \"لا توصي بالقناة\" من القائمة.";
|
||||||
"RemoveReportMenu" = "إزالة \"الإبلاغ\"";
|
"RemoveReportMenu" = "إزالة \"الإبلاغ\"";
|
||||||
"RemoveReportMenuDesc" = "يزيل خيار \"الإبلاغ\" من القائمة.";
|
"RemoveReportMenuDesc" = "يزيل خيار \"الإبلاغ\" من القائمة.";
|
||||||
|
"RemoveRemixMenu" = "Remove \"Remix\"";
|
||||||
|
"RemoveRemixMenuDesc" = "Removes \"Remix\" option from menu.";
|
||||||
|
"RemoveYTMMenu" = "Remove \"YouTube Music\"";
|
||||||
|
"RemoveYTMMenuDesc" = "Removes \"Listen with YouTube Music\" option from menu.";
|
||||||
|
|
||||||
/* SponsorBlock settings */
|
/* SponsorBlock settings */
|
||||||
"EnableSponsorBlock" = "تفعيل";
|
"EnableSponsorBlock" = "تفعيل";
|
||||||
"EnableSponsorBlockDesc" = "تفعيل أداة SponsorBlock";
|
"EnableSponsorBlockDesc" = "تفعيل أداة SponsorBlock";
|
||||||
|
"SbPlayerButton" = "Display button in overlay";
|
||||||
|
"SbPlayerButtonDesc" = "Adds SponsorBlock button in players overlay.";
|
||||||
"ShowNotifications" = "إظهار الإشعارات";
|
"ShowNotifications" = "إظهار الإشعارات";
|
||||||
"ShowNotificationsDesc" = "يعرض إشعارات للشرائح التي تم تخطيها تلقائيا. يتم دائما عرض إشعارات الفئات التي تتطلب تخطيا يدويا.";
|
"ShowNotificationsDesc" = "يعرض إشعارات للشرائح التي تم تخطيها تلقائيا. يتم دائما عرض إشعارات الفئات التي تتطلب تخطيا يدويا.";
|
||||||
"SegmentsInFeedPlayer" = "عرض الشرائح في المنشورات";
|
"SegmentsInFeedPlayer" = "عرض الشرائح في المنشورات";
|
||||||
@@ -427,6 +447,13 @@
|
|||||||
"Sb.Ask" = "يسأل";
|
"Sb.Ask" = "يسأل";
|
||||||
"Sb.Display" = "إظهار في شريط التقدم";
|
"Sb.Display" = "إظهار في شريط التقدم";
|
||||||
|
|
||||||
|
"PublicUserID" = "Public UserID";
|
||||||
|
"PrivateUserID" = "Private UserID";
|
||||||
|
"TapToReveal" = "Tap to reveal";
|
||||||
|
"Save" = "Save";
|
||||||
|
"Error.SbPublicID" = "The public user ID must contain exactly 64 characters";
|
||||||
|
"Error.SbPrivateID" = "The private (local) user ID must contain at least 32 characters";
|
||||||
|
|
||||||
"sb_sponsor" = "شريحة الإعلان";
|
"sb_sponsor" = "شريحة الإعلان";
|
||||||
"sb_intro" = "شريحة المقدمة";
|
"sb_intro" = "شريحة المقدمة";
|
||||||
"sb_outro" = "شريحة البطاقات النهائية";
|
"sb_outro" = "شريحة البطاقات النهائية";
|
||||||
@@ -434,14 +461,14 @@
|
|||||||
"sb_selfpromo" = "شريحة الترويج الذاتي";
|
"sb_selfpromo" = "شريحة الترويج الذاتي";
|
||||||
"sb_music_offtopic" = "جزء خارج الموضوع";
|
"sb_music_offtopic" = "جزء خارج الموضوع";
|
||||||
"sb_preview" = "معاينة الجزء";
|
"sb_preview" = "معاينة الجزء";
|
||||||
"sb_poi_highlight" = "تسليط الضوء على الجزء";
|
"sb_poi_highlight" = "Highlight";
|
||||||
"sb_filler" = "شريحة المشاهد الجانبية";
|
"sb_filler" = "شريحة المشاهد الجانبية";
|
||||||
|
|
||||||
"SegmentDetected" = "%@ تم اكتشافه";
|
"SegmentDetected" = "%@ detected.\n%@";
|
||||||
"SegmentSkipped" = "%@ تم تخطيه";
|
"SegmentSkipped" = "%@ has been skipped";
|
||||||
"SkippedToSegment" = "تم تخطيه إلى %@";
|
"SkippedToSegment" = "Jumped to %@";
|
||||||
"SkipSegment" = "تخطي";
|
"SkipSegment" = "Would you like to skip the segment?";
|
||||||
"SkipToSegment" = "لتسليط الضوء";
|
"SkipToSegment" = "Would you like to jump to the highlight?";
|
||||||
"Unskip" = "إلغاء التخطي";
|
"Unskip" = "إلغاء التخطي";
|
||||||
|
|
||||||
/* Developer section */
|
/* Developer section */
|
||||||
@@ -513,7 +540,7 @@
|
|||||||
"Disable" = "تعطيل";
|
"Disable" = "تعطيل";
|
||||||
"Disabled" = "معطل";
|
"Disabled" = "معطل";
|
||||||
"PlaybackSpeed" = "سرعة التشغيل";
|
"PlaybackSpeed" = "سرعة التشغيل";
|
||||||
"SpeedPreserved" = "السرعة محفوظة";
|
"SpeedPreserved" = "Speed locked at %@";
|
||||||
"ResetSpeed" = "إعادة تعيين";
|
"ResetSpeed" = "إعادة تعيين";
|
||||||
|
|
||||||
"Toast.Brightness" = "السطوع";
|
"Toast.Brightness" = "السطوع";
|
||||||
@@ -538,7 +565,7 @@
|
|||||||
"OpenAsRegularVideo" = "فتح كفيديو عادي";
|
"OpenAsRegularVideo" = "فتح كفيديو عادي";
|
||||||
"CopyPostText" = "نسخ نص المنشور";
|
"CopyPostText" = "نسخ نص المنشور";
|
||||||
"SaveCurrentImage" = "حفظ الصورة الحالية";
|
"SaveCurrentImage" = "حفظ الصورة الحالية";
|
||||||
"Show current image" = "عرض الصور الحالية";
|
"ShowCurrentImage" = "Show current image";
|
||||||
"CopyCurrentImage" = "نسخ الصورة الحالية";
|
"CopyCurrentImage" = "نسخ الصورة الحالية";
|
||||||
"SavePostAsImage" = "حفظ المنشور كصورة";
|
"SavePostAsImage" = "حفظ المنشور كصورة";
|
||||||
"CopyPostAsImage" = "نسخ المنشور كصورة";
|
"CopyPostAsImage" = "نسخ المنشور كصورة";
|
||||||
@@ -546,10 +573,10 @@
|
|||||||
"SaveCommentAsImage" = "حفظ التعليق كصورة";
|
"SaveCommentAsImage" = "حفظ التعليق كصورة";
|
||||||
"CopyCommentAsImage" = "نسخ التعليق كصورة";
|
"CopyCommentAsImage" = "نسخ التعليق كصورة";
|
||||||
"SaveProfilePicture" = "حفظ صورة الملف الشخصي";
|
"SaveProfilePicture" = "حفظ صورة الملف الشخصي";
|
||||||
"Show profile picture" = "عرض صورة الملف الشخصي";
|
"ShowProfilePicture" = "Show profile picture";
|
||||||
"CopyProfilePicture" = "نسخ صورة الملف الشخصي";
|
"CopyProfilePicture" = "نسخ صورة الملف الشخصي";
|
||||||
"DownloadThumbnail" = "حفظ الصورة المصغرة";
|
"DownloadThumbnail" = "حفظ الصورة المصغرة";
|
||||||
"Show thumbnail" = "عرض الصورة المصغرة";
|
"ShowThumbnail" = "Show thumbnail";
|
||||||
"CopyThumbnail" = "نسخ الصورة المصغرة";
|
"CopyThumbnail" = "نسخ الصورة المصغرة";
|
||||||
"Cancel" = "إلغاء";
|
"Cancel" = "إلغاء";
|
||||||
"Cancelled" = "تم الإلغاء";
|
"Cancelled" = "تم الإلغاء";
|
||||||
@@ -572,6 +599,22 @@
|
|||||||
"RetryLogin" = "تم تنشيط حل مؤقت.\n\nيرجى المحاولة مرة أخرى.";
|
"RetryLogin" = "تم تنشيط حل مؤقت.\n\nيرجى المحاولة مرة أخرى.";
|
||||||
"LoginInfo" = "مطلوب إعادة تشغيل التطبيق بعد تسجيل الدخول بنجاح إلى حساب Google";
|
"LoginInfo" = "مطلوب إعادة تشغيل التطبيق بعد تسجيل الدخول بنجاح إلى حساب Google";
|
||||||
|
|
||||||
|
"OpenLink" = "Open link";
|
||||||
|
"LinkDetected" = "A YouTube-related link was detected. Would you like to open it in YouTube?";
|
||||||
|
|
||||||
|
"SbWhitelist" = "Whitelist";
|
||||||
|
"SbAddToWhitelist" = "Add to the whitelist";
|
||||||
|
"Sb.Whitelisted" = "Added to the whitelist";
|
||||||
|
"SbRemoveFromWhitelist" = "Remove from the whitelist";
|
||||||
|
"Sb.Whitelist" = "Whitelisted channels";
|
||||||
|
"Sb.Channels" = "Channels";
|
||||||
|
"Sb.ChannelsHere" = "Whitelisted channels appear here";
|
||||||
|
"SortType" = "Sort type";
|
||||||
|
"Sb.Newest" = "Newest first";
|
||||||
|
"Sb.Oldest" = "Oldest first";
|
||||||
|
"Sb.Alphabetical" = "Alphabetical (A-Z)";
|
||||||
|
"Sb.AlphabeticalRev" = "Reverse (Z-A)";
|
||||||
|
|
||||||
"Welcome.Download" = "حفظ الوسائط";
|
"Welcome.Download" = "حفظ الوسائط";
|
||||||
"Welcome.DownloadDesc" = "حفظ المحتوى المفضل لديك، سواء كان فيديوهات عادية أو فيديوهات قصيرة أو ملفات صوتية أو صور الملف الشخصي. نسخ المنشورات والتعليقات المثيرة أو حفظها كصور.";
|
"Welcome.DownloadDesc" = "حفظ المحتوى المفضل لديك، سواء كان فيديوهات عادية أو فيديوهات قصيرة أو ملفات صوتية أو صور الملف الشخصي. نسخ المنشورات والتعليقات المثيرة أو حفظها كصور.";
|
||||||
"Welcome.Content" = "ضبط الواجهة";
|
"Welcome.Content" = "ضبط الواجهة";
|
||||||
@@ -589,4 +632,20 @@
|
|||||||
"Conflicts.AcceptRisks" = "أقبل جميع المخاطر";
|
"Conflicts.AcceptRisks" = "أقبل جميع المخاطر";
|
||||||
"Conflicts.CloseYT" = "أغلق الـYouTube";
|
"Conflicts.CloseYT" = "أغلق الـYouTube";
|
||||||
|
|
||||||
"DonationReminder" = "دعمك يساعد في تحسين YouTube Plus بشكل أفضل.\n\nيمكنك المساهمة أو اختيار تعطيل هذه الإشعار من إعدادات YouTube Plus. شكراً لك💜";
|
"DonationReminder" = "دعمك يساعد في تحسين YouTube Plus بشكل أفضل.\n\nيمكنك المساهمة أو اختيار تعطيل هذه الإشعار من إعدادات YouTube Plus. شكراً لك💜";
|
||||||
|
|
||||||
|
/* Old localizations (commented out for reference)
|
||||||
|
"TabIsHidden" = "لا يمكن تحديد علامة التبويب المخفية كصفحة بدء";
|
||||||
|
"TabIsStartupTab" = "لا يمكن إخفاء علامة التبويب المحددة كصفحة بدء التشغيل";
|
||||||
|
"Show current image" = "عرض الصور الحالية";
|
||||||
|
"Show profile picture" = "عرض صورة الملف الشخصي";
|
||||||
|
"Show thumbnail" = "عرض الصورة المصغرة";
|
||||||
|
"PreserveSpeed" = "الاحتفاظ بالسرعة";
|
||||||
|
"PreserveSpeedDesc" = "يحافظ على السرعة المعدلة بعد اكتمال الإيماءة.";
|
||||||
|
"sb_poi_highlight" = "تسليط الضوء على الجزء";
|
||||||
|
"SegmentDetected" = "%@ تم اكتشافه";
|
||||||
|
"SegmentSkipped" = "%@ تم تخطيه";
|
||||||
|
"SkippedToSegment" = "تم تخطيه إلى %@";
|
||||||
|
"SkipSegment" = "تخطي";
|
||||||
|
"SkipToSegment" = "لتسليط الضوء";
|
||||||
|
"SpeedPreserved" = "السرعة محفوظة";
|
||||||
@@ -21,6 +21,7 @@
|
|||||||
"PostDownloadDesc" = "The selected action will be performed upon successful completion of the video download.";
|
"PostDownloadDesc" = "The selected action will be performed upon successful completion of the video download.";
|
||||||
"SaveToPhotos" = "Save to photos";
|
"SaveToPhotos" = "Save to photos";
|
||||||
"Share" = "Share";
|
"Share" = "Share";
|
||||||
|
"Copy" = "Copy";
|
||||||
"Ask" = "Ask";
|
"Ask" = "Ask";
|
||||||
"DownloadCompleted" = "Download completed";
|
"DownloadCompleted" = "Download completed";
|
||||||
|
|
||||||
@@ -91,13 +92,17 @@
|
|||||||
/* Player options */
|
/* Player options */
|
||||||
"Player" = "Player";
|
"Player" = "Player";
|
||||||
"PlaybackQualityOnWiFi" = "Playback quality on WiFi";
|
"PlaybackQualityOnWiFi" = "Playback quality on WiFi";
|
||||||
|
"PlaybackQualityOnWiFiDesc" = "Automatically applies the selected quality when streaming over Wi-Fi";
|
||||||
"PlaybackQualityOnCellular" = "Playback quality on Cellular";
|
"PlaybackQualityOnCellular" = "Playback quality on Cellular";
|
||||||
|
"PlaybackQualityOnCellularDesc" = "Automatically applies the selected quality when streaming over mobile data";
|
||||||
|
|
||||||
"PreferredCaptions" = "Preferred captions";
|
"PreferredCaptions" = "Preferred captions";
|
||||||
"Original" = "Original";
|
"Original" = "Original";
|
||||||
"Custom" = "Select manually";
|
"Custom" = "Select manually";
|
||||||
"CustomAudioTrack" = "Selected audio track";
|
"CustomAudioTrack" = "Selected audio track";
|
||||||
|
"CustomAudioTrackDesc" = "Specifies the preferred audio track language to use for playback, if available";
|
||||||
"CustomCaptions" = "Selected captions";
|
"CustomCaptions" = "Selected captions";
|
||||||
|
"CustomCaptionsDesc" = "Specifies the preferred captions language to display, if available";
|
||||||
"AutoGenCaps" = "Auto-generated captions";
|
"AutoGenCaps" = "Auto-generated captions";
|
||||||
"AutoGenCapsDesc" = "If the selected captions are not found, YouTube Plus will try to select either a translation of original captions or a translation of auto-generated captions.";
|
"AutoGenCapsDesc" = "If the selected captions are not found, YouTube Plus will try to select either a translation of original captions or a translation of auto-generated captions.";
|
||||||
|
|
||||||
@@ -182,6 +187,7 @@
|
|||||||
|
|
||||||
"Player.Actions" = "Actions";
|
"Player.Actions" = "Actions";
|
||||||
"DefaultPlaybackRate" = "Default playback rate";
|
"DefaultPlaybackRate" = "Default playback rate";
|
||||||
|
"DefaultPlaybackRateDesc" = "Overrides the default playback speed";
|
||||||
"BackgroundPlayback" = "Background playback";
|
"BackgroundPlayback" = "Background playback";
|
||||||
"BackgroundPlaybackDesc" = "Enables background playback.";
|
"BackgroundPlaybackDesc" = "Enables background playback.";
|
||||||
"Miniplayer" = "Enable mini player";
|
"Miniplayer" = "Enable mini player";
|
||||||
@@ -200,15 +206,20 @@
|
|||||||
"ExitFullscreenDesc" = "Exits fullscreen mode at the end of video playback.";
|
"ExitFullscreenDesc" = "Exits fullscreen mode at the end of video playback.";
|
||||||
|
|
||||||
"Player.Gestures" = "Gestures";
|
"Player.Gestures" = "Gestures";
|
||||||
|
"CompactToast" = "Compact toast";
|
||||||
|
"CompactToastDesc" = "Displays a compact-style toast for player gestures";
|
||||||
"LeftSideGesture" = "Gesture for the left side";
|
"LeftSideGesture" = "Gesture for the left side";
|
||||||
|
"LeftSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the left side of the screen";
|
||||||
"RightSideGesture" = "Gesture for the right side";
|
"RightSideGesture" = "Gesture for the right side";
|
||||||
|
"RightSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the right side of the screen";
|
||||||
"ActivationAreaWidth" = "Gesture activation width";
|
"ActivationAreaWidth" = "Gesture activation width";
|
||||||
"ActivationAreaWidthDesc" = "This value determines the gesture recognition zone in pixels for the left and right sides of the screen.\n\nThe maximum allowed value is one-third of the screen width.\n\nAdjusting this setting is useful to prevent accidental activation when attempting to minimize or expand the player.";
|
"ActivationAreaWidthDesc" = "This value determines the gesture recognition zone in pixels for the left and right sides of the screen.\n\nThe maximum allowed value is one-third of the screen width.\n\nAdjusting this setting is useful to prevent accidental activation when attempting to minimize or expand the player.";
|
||||||
"HoldToSpeed" = "Hold to speed";
|
"HoldToSpeed" = "Hold to speed";
|
||||||
|
"HoldToSpeedDesc" = "Sets the playback speed triggered by a long press on the player";
|
||||||
"AdjustWithFinger" = "Adjust speed by gestures";
|
"AdjustWithFinger" = "Adjust speed by gestures";
|
||||||
"AdjustWithFingerDesc" = "Allows adjusting playback speed by long press on player and moving finger up and down.";
|
"AdjustWithFingerDesc" = "Allows adjusting playback speed by long press on player and moving finger up and down.";
|
||||||
"PreserveSpeed" = "Preserve speed";
|
"PreserveSpeed" = "Lock speed";
|
||||||
"PreserveSpeedDesc" = "Preserves adjusted speed after gesture completion.";
|
"PreserveSpeedDesc" = "Locks at adjusted speed after gesture completion.";
|
||||||
"SeekAnywhere" = "Swipe to seek";
|
"SeekAnywhere" = "Swipe to seek";
|
||||||
"SeekAnywhereDesc" = "Allows controlling playback seeking by swiping left and right.";
|
"SeekAnywhereDesc" = "Allows controlling playback seeking by swiping left and right.";
|
||||||
"SeekMethod" = "Seek method";
|
"SeekMethod" = "Seek method";
|
||||||
@@ -317,18 +328,17 @@
|
|||||||
|
|
||||||
"ActiveTabs" = "Active tabs";
|
"ActiveTabs" = "Active tabs";
|
||||||
"InactiveTabs" = "Inactive tabs";
|
"InactiveTabs" = "Inactive tabs";
|
||||||
"HideLibraryFooter" = "Library tab can be hidden or shown by long pressing the first tab of the tab bar.";
|
"HideLibraryFooter" = "Tab settings are also accessible by long-pressing the first tab in the tab bar.";
|
||||||
"Warning" = "Warning";
|
"Warning" = "Warning";
|
||||||
"TabIsHidden" = "Hidden tab cannot be selected as startup page";
|
"AtLeastOneTab" = "At least one tab must remain active";
|
||||||
"TabIsStartupTab" = "The tab selected as the startup page cannot be hidden";
|
"TabsCountRestricted" = "Only up to six active tabs are allowed";
|
||||||
"TabsCountRestricted" = "You can only have up to six active tabs";
|
|
||||||
|
|
||||||
/* Interface options */
|
/* Interface options */
|
||||||
"Interface" = "Interface";
|
"Interface" = "Interface";
|
||||||
"OledTheme" = "Oled theme";
|
"OledTheme" = "OLED theme";
|
||||||
"OledThemeDesc" = "Turns all dark colors to black";
|
"OledThemeDesc" = "Turns all dark colors to black";
|
||||||
"OledKeyboard" = "Oled keyboard";
|
"OledKeyboard" = "OLED keyboard";
|
||||||
"OledKeyboardDesc" = "Applies oled black theme for dark keyboard";
|
"OledKeyboardDesc" = "Applies OLED black theme for dark keyboard";
|
||||||
"NoSearchHistory" = "Hide search history";
|
"NoSearchHistory" = "Hide search history";
|
||||||
"NoSearchHistoryDesc" = "Visually hides search history and suggestions. Note: Your search history will still be accessible in your other YouTube clients.";
|
"NoSearchHistoryDesc" = "Visually hides search history and suggestions. Note: Your search history will still be accessible in your other YouTube clients.";
|
||||||
"StickSortComments" = "Stick comments header";
|
"StickSortComments" = "Stick comments header";
|
||||||
@@ -351,9 +361,13 @@
|
|||||||
"MiniplayerStyleDesc" = "Switching to/from floating mode requires restarting the app.";
|
"MiniplayerStyleDesc" = "Switching to/from floating mode requires restarting the app.";
|
||||||
"Floating" = "Floating";
|
"Floating" = "Floating";
|
||||||
|
|
||||||
"ContextMenu" = "Context menu";
|
"Other" = "Other";
|
||||||
"NoShareChunk" = "Remove share identifier";
|
"NoShareChunk" = "Remove share identifier";
|
||||||
"NoShareChunkDesc" = "Removes the \"si=identifier\" parameter from shared links. A good alternative to the \"Native share sheet\" option as YouTube continues to improve its sharing menu.";
|
"NoShareChunkDesc" = "Removes the \"si=identifier\" parameter from shared links. A good alternative to the \"Native share sheet\" option as YouTube continues to improve its sharing menu.";
|
||||||
|
"AutoCheckLinks" = "Auto-check clipboard";
|
||||||
|
"AutoCheckLinksDesc" = "Check clipboard for YouTube-related links each time the app is opened.\nFor proper functionality, go to iOS Settings → YouTube → Paste from other apps and select \"Allow\"";
|
||||||
|
|
||||||
|
"ContextMenu" = "Context menu";
|
||||||
"NativeShare" = "Native share sheet";
|
"NativeShare" = "Native share sheet";
|
||||||
"NativeShareDesc" = "Uses system share sheet to share media";
|
"NativeShareDesc" = "Uses system share sheet to share media";
|
||||||
"RemoveCommentGuidelines" = "Remove guidelines";
|
"RemoveCommentGuidelines" = "Remove guidelines";
|
||||||
@@ -374,10 +388,16 @@
|
|||||||
"RemoveDontRecommendMenuDesc" = "Removes \"Don't recommend channel\" option from menu.";
|
"RemoveDontRecommendMenuDesc" = "Removes \"Don't recommend channel\" option from menu.";
|
||||||
"RemoveReportMenu" = "Remove \"Report\"";
|
"RemoveReportMenu" = "Remove \"Report\"";
|
||||||
"RemoveReportMenuDesc" = "Removes \"Report\" option from menu.";
|
"RemoveReportMenuDesc" = "Removes \"Report\" option from menu.";
|
||||||
|
"RemoveRemixMenu" = "Remove \"Remix\"";
|
||||||
|
"RemoveRemixMenuDesc" = "Removes \"Remix\" option from menu.";
|
||||||
|
"RemoveYTMMenu" = "Remove \"YouTube Music\"";
|
||||||
|
"RemoveYTMMenuDesc" = "Removes \"Listen with YouTube Music\" option from menu.";
|
||||||
|
|
||||||
/* SponsorBlock settings */
|
/* SponsorBlock settings */
|
||||||
"EnableSponsorBlock" = "Enable";
|
"EnableSponsorBlock" = "Enable";
|
||||||
"EnableSponsorBlockDesc" = "Activates the SponsorBlock extension.";
|
"EnableSponsorBlockDesc" = "Activates the SponsorBlock extension.";
|
||||||
|
"SbPlayerButton" = "Display button in overlay";
|
||||||
|
"SbPlayerButtonDesc" = "Adds SponsorBlock button in players overlay.";
|
||||||
"ShowNotifications" = "Show notifications";
|
"ShowNotifications" = "Show notifications";
|
||||||
"ShowNotificationsDesc" = "Displays notifications for the auto-skipped segments. Notifications for categories that require manual skipping are always shown.";
|
"ShowNotificationsDesc" = "Displays notifications for the auto-skipped segments. Notifications for categories that require manual skipping are always shown.";
|
||||||
"SegmentsInFeedPlayer" = "Display segments in the feed";
|
"SegmentsInFeedPlayer" = "Display segments in the feed";
|
||||||
@@ -427,6 +447,13 @@
|
|||||||
"Sb.Ask" = "Ask";
|
"Sb.Ask" = "Ask";
|
||||||
"Sb.Display" = "Display in player";
|
"Sb.Display" = "Display in player";
|
||||||
|
|
||||||
|
"PublicUserID" = "Public UserID";
|
||||||
|
"PrivateUserID" = "Private UserID";
|
||||||
|
"TapToReveal" = "Tap to reveal";
|
||||||
|
"Save" = "Save";
|
||||||
|
"Error.SbPublicID" = "The public user ID must contain exactly 64 characters";
|
||||||
|
"Error.SbPrivateID" = "The private (local) user ID must contain at least 32 characters";
|
||||||
|
|
||||||
"sb_sponsor" = "Sponsor segment";
|
"sb_sponsor" = "Sponsor segment";
|
||||||
"sb_intro" = "Intro segment";
|
"sb_intro" = "Intro segment";
|
||||||
"sb_outro" = "Endcards segment";
|
"sb_outro" = "Endcards segment";
|
||||||
@@ -434,14 +461,14 @@
|
|||||||
"sb_selfpromo" = "Self-promo segment";
|
"sb_selfpromo" = "Self-promo segment";
|
||||||
"sb_music_offtopic" = "Offtopic segment";
|
"sb_music_offtopic" = "Offtopic segment";
|
||||||
"sb_preview" = "Preview segment";
|
"sb_preview" = "Preview segment";
|
||||||
"sb_poi_highlight" = "Highlight segment";
|
"sb_poi_highlight" = "Highlight";
|
||||||
"sb_filler" = "Filler segment";
|
"sb_filler" = "Filler segment";
|
||||||
|
|
||||||
"SegmentDetected" = "%@ detected";
|
"SegmentDetected" = "%@ detected.\n%@";
|
||||||
"SegmentSkipped" = "%@ has been skipped";
|
"SegmentSkipped" = "%@ has been skipped";
|
||||||
"SkippedToSegment" = "Skipped to the %@";
|
"SkippedToSegment" = "Jumped to %@";
|
||||||
"SkipSegment" = "Skip";
|
"SkipSegment" = "Would you like to skip the segment?";
|
||||||
"SkipToSegment" = "To highlight";
|
"SkipToSegment" = "Would you like to jump to the highlight?";
|
||||||
"Unskip" = "Unskip";
|
"Unskip" = "Unskip";
|
||||||
|
|
||||||
/* Developer section */
|
/* Developer section */
|
||||||
@@ -513,7 +540,7 @@
|
|||||||
"Disable" = "Disable";
|
"Disable" = "Disable";
|
||||||
"Disabled" = "Disabled";
|
"Disabled" = "Disabled";
|
||||||
"PlaybackSpeed" = "Playback Speed";
|
"PlaybackSpeed" = "Playback Speed";
|
||||||
"SpeedPreserved" = "Speed preserved";
|
"SpeedPreserved" = "Speed locked at %@";
|
||||||
"ResetSpeed" = "Reset";
|
"ResetSpeed" = "Reset";
|
||||||
|
|
||||||
"Toast.Brightness" = "Brightness";
|
"Toast.Brightness" = "Brightness";
|
||||||
@@ -572,6 +599,22 @@
|
|||||||
"RetryLogin" = "Workaround activated.\n\nPlease try again.";
|
"RetryLogin" = "Workaround activated.\n\nPlease try again.";
|
||||||
"LoginInfo" = "App restart required after successful signing into Google account";
|
"LoginInfo" = "App restart required after successful signing into Google account";
|
||||||
|
|
||||||
|
"OpenLink" = "Open link";
|
||||||
|
"LinkDetected" = "A YouTube-related link was detected. Would you like to open it in YouTube?";
|
||||||
|
|
||||||
|
"SbWhitelist" = "Whitelist";
|
||||||
|
"SbAddToWhitelist" = "Add to the whitelist";
|
||||||
|
"Sb.Whitelisted" = "Added to the whitelist";
|
||||||
|
"SbRemoveFromWhitelist" = "Remove from the whitelist";
|
||||||
|
"Sb.Whitelist" = "Whitelisted channels";
|
||||||
|
"Sb.Channels" = "Channels";
|
||||||
|
"Sb.ChannelsHere" = "Whitelisted channels appear here";
|
||||||
|
"SortType" = "Sort type";
|
||||||
|
"Sb.Newest" = "Newest first";
|
||||||
|
"Sb.Oldest" = "Oldest first";
|
||||||
|
"Sb.Alphabetical" = "Alphabetical (A-Z)";
|
||||||
|
"Sb.AlphabeticalRev" = "Reverse (Z-A)";
|
||||||
|
|
||||||
"Welcome.Download" = "Download Media";
|
"Welcome.Download" = "Download Media";
|
||||||
"Welcome.DownloadDesc" = "Download your favorite content, whether it's Videos, Shorts, Audio, or Profile photos. Copy interesting posts and comments or save them as images";
|
"Welcome.DownloadDesc" = "Download your favorite content, whether it's Videos, Shorts, Audio, or Profile photos. Copy interesting posts and comments or save them as images";
|
||||||
"Welcome.Content" = "Adjust Interface";
|
"Welcome.Content" = "Adjust Interface";
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -4,7 +4,7 @@
|
|||||||
/* Downloading options */
|
/* Downloading options */
|
||||||
"Downloading" = "Scaricamento";
|
"Downloading" = "Scaricamento";
|
||||||
"DownloadManager" = "Gestore dei download";
|
"DownloadManager" = "Gestore dei download";
|
||||||
"DownloadManagerDesc" = "Sostituisce il bottone 'Download' sotto al player con un Gestore dei Download, che consente lo scaricamento di Video, Audio, Immagine di Copertina, e copiare le informazioni del video.";
|
"DownloadManagerDesc" = "Sostituisce il bottone 'Download' sotto al player con un Gestore dei Download, che consente lo scaricamento di Video, Audio, Immagine di Copertina e di copiare le informazioni del video.";
|
||||||
"PostManager" = "Salva le informazioni di un post";
|
"PostManager" = "Salva le informazioni di un post";
|
||||||
"PostManagerDesc" = "Permette di copiare il testo dei post e salvare il post come immagine tenendo premuto.";
|
"PostManagerDesc" = "Permette di copiare il testo dei post e salvare il post come immagine tenendo premuto.";
|
||||||
"SaveProfilePhoto" = "Salva l'immagine di profilo";
|
"SaveProfilePhoto" = "Salva l'immagine di profilo";
|
||||||
@@ -21,6 +21,7 @@
|
|||||||
"PostDownloadDesc" = "L'azione selezionata verrà eseguita una volta completato il download di un video.";
|
"PostDownloadDesc" = "L'azione selezionata verrà eseguita una volta completato il download di un video.";
|
||||||
"SaveToPhotos" = "Salva nella galleria";
|
"SaveToPhotos" = "Salva nella galleria";
|
||||||
"Share" = "Condividi";
|
"Share" = "Condividi";
|
||||||
|
"Copy" = "Copia";
|
||||||
"Ask" = "Chiedi";
|
"Ask" = "Chiedi";
|
||||||
"DownloadCompleted" = "Download completato";
|
"DownloadCompleted" = "Download completato";
|
||||||
|
|
||||||
@@ -91,13 +92,17 @@
|
|||||||
/* Player options */
|
/* Player options */
|
||||||
"Player" = "Player";
|
"Player" = "Player";
|
||||||
"PlaybackQualityOnWiFi" = "Qualità di riproduzione su WiFi";
|
"PlaybackQualityOnWiFi" = "Qualità di riproduzione su WiFi";
|
||||||
|
"PlaybackQualityOnWiFiDesc" = "Applica automaticamente la qualità selezionata durante la riproduzione con il Wi-Fi";
|
||||||
"PlaybackQualityOnCellular" = "Qualità di riproduzione su cellulare";
|
"PlaybackQualityOnCellular" = "Qualità di riproduzione su cellulare";
|
||||||
|
"PlaybackQualityOnCellularDesc" = "Applica automaticamente la qualità selezionata durante la riproduzione con i Dati Cellulare";
|
||||||
|
|
||||||
"PreferredCaptions" = "Sottotitoli preferiti";
|
"PreferredCaptions" = "Sottotitoli preferiti";
|
||||||
"Original" = "Originale";
|
"Original" = "Originale";
|
||||||
"Custom" = "Seleziona manualmente";
|
"Custom" = "Seleziona manualmente";
|
||||||
"CustomAudioTrack" = "Traccia audio selezionata";
|
"CustomAudioTrack" = "Traccia audio selezionata";
|
||||||
|
"CustomAudioTrackDesc" = "Seleziona la traccia audio preferita per utilizzarla nella riproduzione, se disponibile";
|
||||||
"CustomCaptions" = "Sottotitoli selezionati";
|
"CustomCaptions" = "Sottotitoli selezionati";
|
||||||
|
"CustomCaptionsDesc" = "Seleziona i sottotitoli preferiti da mostrare, se disponibili";
|
||||||
"AutoGenCaps" = "Sottotitoli generati automaticamente";
|
"AutoGenCaps" = "Sottotitoli generati automaticamente";
|
||||||
"AutoGenCapsDesc" = "Se i sottotitoli selezionati non sono disponibili, YouTube Plus cercherà di selezionare una traduzione dei sottotitoli originali o una traduzione dei sottotitoli generati automaticamente.";
|
"AutoGenCapsDesc" = "Se i sottotitoli selezionati non sono disponibili, YouTube Plus cercherà di selezionare una traduzione dei sottotitoli originali o una traduzione dei sottotitoli generati automaticamente.";
|
||||||
|
|
||||||
@@ -182,6 +187,7 @@
|
|||||||
|
|
||||||
"Player.Actions" = "Azioni";
|
"Player.Actions" = "Azioni";
|
||||||
"DefaultPlaybackRate" = "Velocità di riproduzione predefinita";
|
"DefaultPlaybackRate" = "Velocità di riproduzione predefinita";
|
||||||
|
"DefaultPlaybackRateDesc" = "Sovrascrive la velocità di riproduzione di default";
|
||||||
"BackgroundPlayback" = "Riproduzione in background";
|
"BackgroundPlayback" = "Riproduzione in background";
|
||||||
"BackgroundPlaybackDesc" = "Abilita la riproduzione in background.";
|
"BackgroundPlaybackDesc" = "Abilita la riproduzione in background.";
|
||||||
"Miniplayer" = "Abilita mini lettore";
|
"Miniplayer" = "Abilita mini lettore";
|
||||||
@@ -200,15 +206,20 @@
|
|||||||
"ExitFullscreenDesc" = "Esce dalla modalità schermo intero alla fine della riproduzione video.";
|
"ExitFullscreenDesc" = "Esce dalla modalità schermo intero alla fine della riproduzione video.";
|
||||||
|
|
||||||
"Player.Gestures" = "Gestures";
|
"Player.Gestures" = "Gestures";
|
||||||
|
"CompactToast" = "Compact toast";
|
||||||
|
"CompactToastDesc" = "Mostra un compact-toast per le gestures";
|
||||||
"LeftSideGesture" = "Gesture per il lato sinistro";
|
"LeftSideGesture" = "Gesture per il lato sinistro";
|
||||||
|
"LeftSideGestureDesc" = "Regola l'impostazione selezionata scorrendo verticalmente nel lato sinistro dello schermo";
|
||||||
"RightSideGesture" = "Gesture per il lato destro";
|
"RightSideGesture" = "Gesture per il lato destro";
|
||||||
|
"RightSideGestureDesc" = "Regola l'impostazione selezionata scorrendo verticalmente nel lato destro dello schermo";
|
||||||
"ActivationAreaWidth" = "Larghezza area di attivazione della gesture";
|
"ActivationAreaWidth" = "Larghezza area di attivazione della gesture";
|
||||||
"ActivationAreaWidthDesc" = "Questo valore determina la zona di riconoscimento della gesture in pixel per i lati sinistro e destro dello schermo.\n\nIl valore massimo consentito è un terzo della larghezza dello schermo.\n\nRegolare questa impostazione è utile per prevenire attivazioni accidentali quando si tenta di ridurre o espandere il lettore.";
|
"ActivationAreaWidthDesc" = "Questo valore determina la zona di riconoscimento della gesture in pixel per i lati sinistro e destro dello schermo.\n\nIl valore massimo consentito è un terzo della larghezza dello schermo.\n\nRegolare questa impostazione è utile per prevenire attivazioni accidentali quando si tenta di ridurre o espandere il lettore.";
|
||||||
"HoldToSpeed" = "Tieni premuto per aumentare la velocità";
|
"HoldToSpeed" = "Tieni premuto per aumentare la velocità";
|
||||||
|
"HoldToSpeedDesc" = "Imposta la velocità di riproduzione attivata da una pressione lunga sul player";
|
||||||
"AdjustWithFinger" = "Regola la velocità con gesture";
|
"AdjustWithFinger" = "Regola la velocità con gesture";
|
||||||
"AdjustWithFingerDesc" = "Consente di regolare la velocità di riproduzione con una lunga pressione sul player e muovendo il dito su e giù.";
|
"AdjustWithFingerDesc" = "Consente di regolare la velocità di riproduzione con una lunga pressione sul player e muovendo il dito su e giù.";
|
||||||
"PreserveSpeed" = "Preserva velocità";
|
"PreserveSpeed" = "Blocca velocità";
|
||||||
"PreserveSpeedDesc" = "Preserva la velocità regolata dopo il completamento della gesture.";
|
"PreserveSpeedDesc" = "Imposta una velocità prefissata dopo una gesture";
|
||||||
"SeekAnywhere" = "Scorri per cercare";
|
"SeekAnywhere" = "Scorri per cercare";
|
||||||
"SeekAnywhereDesc" = "Consente di controllare la ricerca della riproduzione scorrendo a sinistra e a destra.";
|
"SeekAnywhereDesc" = "Consente di controllare la ricerca della riproduzione scorrendo a sinistra e a destra.";
|
||||||
"SeekMethod" = "Metodo di ricerca";
|
"SeekMethod" = "Metodo di ricerca";
|
||||||
@@ -319,8 +330,7 @@
|
|||||||
"InactiveTabs" = "Tab inattive";
|
"InactiveTabs" = "Tab inattive";
|
||||||
"HideLibraryFooter" = "La tab Libreria può essere nascosta o mostrata premendo a lungo sulla prima tab della Tab bar.";
|
"HideLibraryFooter" = "La tab Libreria può essere nascosta o mostrata premendo a lungo sulla prima tab della Tab bar.";
|
||||||
"Warning" = "Attenzione";
|
"Warning" = "Attenzione";
|
||||||
"TabIsHidden" = "Le tab nascoste non possono essere scelte come Pagina di avvio";
|
"AtLeastOneTab" = "Almeno una tab deve rimanere attiva";
|
||||||
"TabIsStartupTab" = "La tab selezionata come pagina di avvio non può essere nascosta";
|
|
||||||
"TabsCountRestricted" = "Puoi avere fino a sei tab attive";
|
"TabsCountRestricted" = "Puoi avere fino a sei tab attive";
|
||||||
|
|
||||||
/* Interface options */
|
/* Interface options */
|
||||||
@@ -351,9 +361,13 @@
|
|||||||
"MiniplayerStyleDesc" = "Cambiare da/a modalità floating richiede il riavvio dell'app.";
|
"MiniplayerStyleDesc" = "Cambiare da/a modalità floating richiede il riavvio dell'app.";
|
||||||
"Floating" = "Floating";
|
"Floating" = "Floating";
|
||||||
|
|
||||||
"ContextMenu" = "Menu contestuale";
|
"Other" = "Altro";
|
||||||
"NoShareChunk" = "Rimuovi share identifier";
|
"NoShareChunk" = "Rimuovi share identifier";
|
||||||
"NoShareChunkDesc" = "Rimuove il parametro \"si=identifier\" dai link condivisi. Una buona alternativa all'opzione \"Share sheet nativo\" visto che YouTube continua a migliorare il suo menu condivisione.";
|
"NoShareChunkDesc" = "Rimuove il parametro \"si=identifier\" dai link condivisi. Una buona alternativa all'opzione \"Share sheet nativo\" visto che YouTube continua a migliorare il suo menu condivisione.";
|
||||||
|
"AutoCheckLinks" = "Controlla automaticamente gli appunti";
|
||||||
|
"AutoCheckLinksDesc" = "Controlla gli appunti per trovare link relativi a YouTube ogni volta che l'app viene aperta.\nPer un'esperienza migliore, vai nelle impostazioni di iOS → YouTube → Incolla da altre app e seleziona \"Consenti\"";
|
||||||
|
|
||||||
|
"ContextMenu" = "Menu contestuale";
|
||||||
"NativeShare" = "Share sheet nativo";
|
"NativeShare" = "Share sheet nativo";
|
||||||
"NativeShareDesc" = "Usa lo share sheet di sistema per condividere i media";
|
"NativeShareDesc" = "Usa lo share sheet di sistema per condividere i media";
|
||||||
"RemoveCommentGuidelines" = "Rimuovi le linee guida";
|
"RemoveCommentGuidelines" = "Rimuovi le linee guida";
|
||||||
@@ -374,10 +388,16 @@
|
|||||||
"RemoveDontRecommendMenuDesc" = "Rimuove l'opzione \"Non raccomandare il canale\" dal menu.";
|
"RemoveDontRecommendMenuDesc" = "Rimuove l'opzione \"Non raccomandare il canale\" dal menu.";
|
||||||
"RemoveReportMenu" = "Rimuovi \"Segnala\"";
|
"RemoveReportMenu" = "Rimuovi \"Segnala\"";
|
||||||
"RemoveReportMenuDesc" = "Rimuove l'opzione \"Segnala\" dal menu.";
|
"RemoveReportMenuDesc" = "Rimuove l'opzione \"Segnala\" dal menu.";
|
||||||
|
"RemoveRemixMenu" = "Rimuovi \"Remix\"";
|
||||||
|
"RemoveRemixMenuDesc" = "Rimuove l'opzione \"Remix\" dal menu.";
|
||||||
|
"RemoveYTMMenu" = "Rimuovi \"YouTube Music\"";
|
||||||
|
"RemoveYTMMenuDesc" = "Rimuove l'opzione \"Ascolta con YouTube Music\" dal menu.";
|
||||||
|
|
||||||
/* SponsorBlock settings */
|
/* SponsorBlock settings */
|
||||||
"EnableSponsorBlock" = "Abilita";
|
"EnableSponsorBlock" = "Abilita";
|
||||||
"EnableSponsorBlockDesc" = "Attiva l'estensione SponsorBlock.";
|
"EnableSponsorBlockDesc" = "Attiva l'estensione SponsorBlock.";
|
||||||
|
"SbPlayerButton" = "Mostra il tasto nell'overlay";
|
||||||
|
"SbPlayerButtonDesc" = "Aggiunge il bottone SponsorBlock nell'overlay.";
|
||||||
"ShowNotifications" = "Mostra notifiche";
|
"ShowNotifications" = "Mostra notifiche";
|
||||||
"ShowNotificationsDesc" = "Mostra le notifiche per i segmenti skippati automaticamente. Le notifiche per le categorie che richiedono uno skipping manuale sono sempre mostrate.";
|
"ShowNotificationsDesc" = "Mostra le notifiche per i segmenti skippati automaticamente. Le notifiche per le categorie che richiedono uno skipping manuale sono sempre mostrate.";
|
||||||
"SegmentsInFeedPlayer" = "Mostra segmenti nel feed";
|
"SegmentsInFeedPlayer" = "Mostra segmenti nel feed";
|
||||||
@@ -427,6 +447,13 @@
|
|||||||
"Sb.Ask" = "Chiedi";
|
"Sb.Ask" = "Chiedi";
|
||||||
"Sb.Display" = "Mostra nel player";
|
"Sb.Display" = "Mostra nel player";
|
||||||
|
|
||||||
|
"PublicUserID" = "UserID pubblico";
|
||||||
|
"PrivateUserID" = "UserID privato";
|
||||||
|
"TapToReveal" = "Tocca per mostrare";
|
||||||
|
"Save" = "Salva";
|
||||||
|
"Error.SbPublicID" = "L'UserID pubblico deve contenere esattamente 64 caratteri";
|
||||||
|
"Error.SbPrivateID" = "L'user ID privato (locale) deve contenere almeno 32 caratteri";
|
||||||
|
|
||||||
"sb_sponsor" = "Segmento Sponsor";
|
"sb_sponsor" = "Segmento Sponsor";
|
||||||
"sb_intro" = "Segmento Intro";
|
"sb_intro" = "Segmento Intro";
|
||||||
"sb_outro" = "Segmento Outro";
|
"sb_outro" = "Segmento Outro";
|
||||||
@@ -434,14 +461,14 @@
|
|||||||
"sb_selfpromo" = "Segmento Auto-promo";
|
"sb_selfpromo" = "Segmento Auto-promo";
|
||||||
"sb_music_offtopic" = "Segmento Offtopic";
|
"sb_music_offtopic" = "Segmento Offtopic";
|
||||||
"sb_preview" = "Segmento Anteprima";
|
"sb_preview" = "Segmento Anteprima";
|
||||||
"sb_poi_highlight" = "Segmento In evidenza";
|
"sb_poi_highlight" = "Highlight";
|
||||||
"sb_filler" = "Segmento Filler";
|
"sb_filler" = "Segmento Filler";
|
||||||
|
|
||||||
"SegmentDetected" = "%@ rilevato";
|
"SegmentDetected" = "%@ rilevato.\n%@";
|
||||||
"SegmentSkipped" = "%@ è stato skippato";
|
"SegmentSkipped" = "%@ skippato";
|
||||||
"SkippedToSegment" = "Skippato a %@";
|
"SkippedToSegment" = "Passato a %@";
|
||||||
"SkipSegment" = "Skip";
|
"SkipSegment" = "Vuoi skippare il segmento?";
|
||||||
"SkipToSegment" = "Da evidenziare";
|
"SkipToSegment" = "Vuoi passare all'highlight?";
|
||||||
"Unskip" = "Unskip";
|
"Unskip" = "Unskip";
|
||||||
|
|
||||||
/* Developer section */
|
/* Developer section */
|
||||||
@@ -513,7 +540,7 @@
|
|||||||
"Disable" = "Disattiva";
|
"Disable" = "Disattiva";
|
||||||
"Disabled" = "Disattivato";
|
"Disabled" = "Disattivato";
|
||||||
"PlaybackSpeed" = "Velocità di riproduzione";
|
"PlaybackSpeed" = "Velocità di riproduzione";
|
||||||
"SpeedPreserved" = "Velocità mantenuta";
|
"SpeedPreserved" = "Velocità bloccata a %@";
|
||||||
"ResetSpeed" = "Reset";
|
"ResetSpeed" = "Reset";
|
||||||
|
|
||||||
"Toast.Brightness" = "Luminosità";
|
"Toast.Brightness" = "Luminosità";
|
||||||
@@ -572,6 +599,22 @@
|
|||||||
"RetryLogin" = "Alternativa attivata.\n\nRiprova più tardi.";
|
"RetryLogin" = "Alternativa attivata.\n\nRiprova più tardi.";
|
||||||
"LoginInfo" = "Il restart dell'app è necessario dopo essere loggati nell'account Google";
|
"LoginInfo" = "Il restart dell'app è necessario dopo essere loggati nell'account Google";
|
||||||
|
|
||||||
|
"OpenLink" = "Apri link";
|
||||||
|
"LinkDetected" = "Un link relativo a YouTube è stato rilevato. Vuoi aprirlo in YouTube?";
|
||||||
|
|
||||||
|
"SbWhitelist" = "Whitelist";
|
||||||
|
"SbAddToWhitelist" = "Aggiungi alla whitelist";
|
||||||
|
"Sb.Whitelisted" = "Aggiunto alla whitelist";
|
||||||
|
"SbRemoveFromWhitelist" = "Rimuovi dalla whitelist";
|
||||||
|
"Sb.Whitelist" = "Canali in whitelist";
|
||||||
|
"Sb.Channels" = "Canali";
|
||||||
|
"Sb.ChannelsHere" = "I canali in whitelist appariranno qua";
|
||||||
|
"SortType" = "Modalità di ordinamento";
|
||||||
|
"Sb.Newest" = "Più recenti prima";
|
||||||
|
"Sb.Oldest" = "Meno recenti prima";
|
||||||
|
"Sb.Alphabetical" = "Alfabetico (A-Z)";
|
||||||
|
"Sb.AlphabeticalRev" = "Inverso (Z-A)";
|
||||||
|
|
||||||
"Welcome.Download" = "Download Media";
|
"Welcome.Download" = "Download Media";
|
||||||
"Welcome.DownloadDesc" = "Scarica il tuo contenuto preferito, sia esso un Video, Short, Audio o una foto profilo. Copia post/commenti interessanti o salvali come immagine";
|
"Welcome.DownloadDesc" = "Scarica il tuo contenuto preferito, sia esso un Video, Short, Audio o una foto profilo. Copia post/commenti interessanti o salvali come immagine";
|
||||||
"Welcome.Content" = "Sistema interfaccia";
|
"Welcome.Content" = "Sistema interfaccia";
|
||||||
@@ -589,4 +632,17 @@
|
|||||||
"Conflicts.AcceptRisks" = "Accetto tutti i rischi";
|
"Conflicts.AcceptRisks" = "Accetto tutti i rischi";
|
||||||
"Conflicts.CloseYT" = "Chiudi YouTube";
|
"Conflicts.CloseYT" = "Chiudi YouTube";
|
||||||
|
|
||||||
"DonationReminder" = "Il tuo supporto aiuta a rendere YouTube Plus ancora migliore.\n\nPuoi contribuire o scegliere di disattivare queste notifiche nelle impostazioni di YouTube Plus. Grazie💜";
|
"DonationReminder" = "Il tuo supporto aiuta a rendere YouTube Plus ancora migliore.\n\nPuoi contribuire o scegliere di disattivare queste notifiche nelle impostazioni di YouTube Plus. Grazie💜";
|
||||||
|
|
||||||
|
/* Old localizations (commented out for reference)
|
||||||
|
"TabIsHidden" = "Le tab nascoste non possono essere scelte come Pagina di avvio";
|
||||||
|
"TabIsStartupTab" = "La tab selezionata come pagina di avvio non può essere nascosta";
|
||||||
|
"PreserveSpeed" = "Preserva velocità";
|
||||||
|
"PreserveSpeedDesc" = "Preserva la velocità regolata dopo il completamento della gesture.";
|
||||||
|
"sb_poi_highlight" = "Segmento In evidenza";
|
||||||
|
"SegmentDetected" = "%@ rilevato";
|
||||||
|
"SegmentSkipped" = "%@ è stato skippato";
|
||||||
|
"SkippedToSegment" = "Skippato a %@";
|
||||||
|
"SkipSegment" = "Skip";
|
||||||
|
"SkipToSegment" = "Da evidenziare";
|
||||||
|
"SpeedPreserved" = "Velocità mantenuta";
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
+93
-36
@@ -4,7 +4,7 @@
|
|||||||
/* Downloading options */
|
/* Downloading options */
|
||||||
"Downloading" = "다운로드";
|
"Downloading" = "다운로드";
|
||||||
"DownloadManager" = "다운로드 매니저";
|
"DownloadManager" = "다운로드 매니저";
|
||||||
"DownloadManagerDesc" = "플레이어 아래의 "다운로드" 버튼 동작을 비디오, 오디오, 썸네일 이미지, 비디오 정보 복사 등을 가능하게 하는 다운로드 매니저로 대체합니다.";
|
"DownloadManagerDesc" = "플레이어 아래의 \"다운로드\" 버튼 동작을 비디오, 오디오, 썸네일 이미지, 비디오 정보 복사 등을 가능하게 하는 다운로드 매니저로 대체합니다.";
|
||||||
"PostManager" = "게시물 정보 저장";
|
"PostManager" = "게시물 정보 저장";
|
||||||
"PostManagerDesc" = "길게 탭하여 글의 텍스트를 복사하고 글 이미지를 저장할 수 있습니다.";
|
"PostManagerDesc" = "길게 탭하여 글의 텍스트를 복사하고 글 이미지를 저장할 수 있습니다.";
|
||||||
"SaveProfilePhoto" = "프로필 사진 저장";
|
"SaveProfilePhoto" = "프로필 사진 저장";
|
||||||
@@ -21,6 +21,7 @@
|
|||||||
"PostDownloadDesc" = "동영상 다운로드가 성공적으로 완료되면 선택된 동작이 수행됩니다.";
|
"PostDownloadDesc" = "동영상 다운로드가 성공적으로 완료되면 선택된 동작이 수행됩니다.";
|
||||||
"SaveToPhotos" = "사진에 저장";
|
"SaveToPhotos" = "사진에 저장";
|
||||||
"Share" = "공유";
|
"Share" = "공유";
|
||||||
|
"Copy" = "Copy";
|
||||||
"Ask" = "묻기";
|
"Ask" = "묻기";
|
||||||
"DownloadCompleted" = "다운로드 완료";
|
"DownloadCompleted" = "다운로드 완료";
|
||||||
|
|
||||||
@@ -46,7 +47,7 @@
|
|||||||
"Translated" = "번역됨";
|
"Translated" = "번역됨";
|
||||||
"TranslatedAutoGen" = "자동 번역됨";
|
"TranslatedAutoGen" = "자동 번역됨";
|
||||||
|
|
||||||
/* 탐색 모음 옵션 */
|
/* Nav bar options */
|
||||||
"Navbar" = "탐색 표시줄";
|
"Navbar" = "탐색 표시줄";
|
||||||
"RemoveCast" = "캐스트 버튼 숨기기";
|
"RemoveCast" = "캐스트 버튼 숨기기";
|
||||||
"RemoveCastDesc" = "탐색 표시줄에서 캐스트 버튼 숨기기";
|
"RemoveCastDesc" = "탐색 표시줄에서 캐스트 버튼 숨기기";
|
||||||
@@ -65,7 +66,7 @@
|
|||||||
"PremiumYTLogo" = "프리미엄 YouTube 로고 설정";
|
"PremiumYTLogo" = "프리미엄 YouTube 로고 설정";
|
||||||
"PremiumYTLogoDesc" = "탐색 표시줄의 프리미엄 YouTube 로고 설정";
|
"PremiumYTLogoDesc" = "탐색 표시줄의 프리미엄 YouTube 로고 설정";
|
||||||
|
|
||||||
/* 피드 옵션 */
|
/* Feed options */
|
||||||
"Feed" = "피드";
|
"Feed" = "피드";
|
||||||
"RemoveAds" = "광고 제거";
|
"RemoveAds" = "광고 제거";
|
||||||
"RemoveAdsDesc" = "앱 내 광고 제거";
|
"RemoveAdsDesc" = "앱 내 광고 제거";
|
||||||
@@ -88,16 +89,20 @@
|
|||||||
"FixAlbums" = "표지 수정";
|
"FixAlbums" = "표지 수정";
|
||||||
"FixAlbumsDesc" = "러시아 사용자의 표지 표시를 수정합니다.";
|
"FixAlbumsDesc" = "러시아 사용자의 표지 표시를 수정합니다.";
|
||||||
|
|
||||||
/* 플레이어 옵션 */
|
/* Player options */
|
||||||
"Player" = "플레이어";
|
"Player" = "플레이어";
|
||||||
"PlaybackQualityOnWiFi" = "WiFi에서의 재생 품질";
|
"PlaybackQualityOnWiFi" = "WiFi에서의 재생 품질";
|
||||||
|
"PlaybackQualityOnWiFiDesc" = "Automatically applies the selected quality when streaming over Wi-Fi";
|
||||||
"PlaybackQualityOnCellular" = "셀룰러에서의 재생 품질";
|
"PlaybackQualityOnCellular" = "셀룰러에서의 재생 품질";
|
||||||
|
"PlaybackQualityOnCellularDesc" = "Automatically applies the selected quality when streaming over mobile data";
|
||||||
|
|
||||||
"PreferredCaptions" = "선호 자막";
|
"PreferredCaptions" = "선호 자막";
|
||||||
"Original" = "원본";
|
"Original" = "원본";
|
||||||
"Custom" = "수동 선택";
|
"Custom" = "수동 선택";
|
||||||
"CustomAudioTrack" = "선택된 오디오 트랙";
|
"CustomAudioTrack" = "선택된 오디오 트랙";
|
||||||
|
"CustomAudioTrackDesc" = "Specifies the preferred audio track language to use for playback, if available";
|
||||||
"CustomCaptions" = "선택된 자막";
|
"CustomCaptions" = "선택된 자막";
|
||||||
|
"CustomCaptionsDesc" = "Specifies the preferred captions language to display, if available";
|
||||||
"AutoGenCaps" = "자동 생성 자막";
|
"AutoGenCaps" = "자동 생성 자막";
|
||||||
"AutoGenCapsDesc" = "선택된 자막이 발견되지 않으면, YouTube Plus는 원본 자막의 번역본이나 자동 생성 자막의 번역본을 선택하려고 시도합니다.";
|
"AutoGenCapsDesc" = "선택된 자막이 발견되지 않으면, YouTube Plus는 원본 자막의 번역본이나 자동 생성 자막의 번역본을 선택하려고 시도합니다.";
|
||||||
|
|
||||||
@@ -143,7 +148,7 @@
|
|||||||
"NoRelatedVids" = "오버레이 관련 동영상 숨기기";
|
"NoRelatedVids" = "오버레이 관련 동영상 숨기기";
|
||||||
"NoRelatedVidsDesc" = "위로 밀어서 오버레이에 표시되는 관련 동영상을 제거합니다.";
|
"NoRelatedVidsDesc" = "위로 밀어서 오버레이에 표시되는 관련 동영상을 제거합니다.";
|
||||||
"NoPromotionCards" = "유료 프로모션 카드 숨기기";
|
"NoPromotionCards" = "유료 프로모션 카드 숨기기";
|
||||||
"NoPromotionCardsDesc" = "유료 프로모션 포함" 카드를 프로모션 포함 비디오에서 숨깁니다.
|
"NoPromotionCardsDesc" = "Hides \"Includes Paid Promotions\" card in promotions included videos.";
|
||||||
"NoWatermarks" = "워터마크 숨기기";
|
"NoWatermarks" = "워터마크 숨기기";
|
||||||
"NoWatermarksDesc" = "플레이어에서 채널 워터마크를 숨깁니다.";
|
"NoWatermarksDesc" = "플레이어에서 채널 워터마크를 숨깁니다.";
|
||||||
"DisableAmbientMode" = "주변 모드 비활성화";
|
"DisableAmbientMode" = "주변 모드 비활성화";
|
||||||
@@ -156,12 +161,12 @@
|
|||||||
"NoRelatedWatchNextsDesc" = "플레이어 아래의 모든 비디오를 숨기고, 비디오 정보와 코멘트 섹션만 남겨둠";
|
"NoRelatedWatchNextsDesc" = "플레이어 아래의 모든 비디오를 숨기고, 비디오 정보와 코멘트 섹션만 남겨둠";
|
||||||
"RemoveInlineComment" = "인라인 코멘트 제거";
|
"RemoveInlineComment" = "인라인 코멘트 제거";
|
||||||
"RemoveInlineCommentDesc" = "플레이어 아래의 코멘트 섹션 제거";
|
"RemoveInlineCommentDesc" = "플레이어 아래의 코멘트 섹션 제거";
|
||||||
"NoSubUnderPlayer" = "\"구독\" 버튼 제거;
|
"NoSubUnderPlayer" = "Remove \"Subscribe\" button";
|
||||||
"NoSubUnderPlayerDesc" = "플레이어 아래의 "구독" 버튼을 제거합니다.";
|
"NoSubUnderPlayerDesc" = "플레이어 아래의 \"구독\" 버튼을 제거합니다.";
|
||||||
"PlayerNoShare" = "\"공유\" 버튼 제거;
|
"PlayerNoShare" = "Remove \"Share\" button";
|
||||||
"PlayerNoShareDesc" = "플레이어 아래의 "공유" 버튼을 제거합니다.";
|
"PlayerNoShareDesc" = "플레이어 아래의 \"공유\" 버튼을 제거합니다.";
|
||||||
"PlayerNoThanks" = "\"Thanks\" 버튼 제거;
|
"PlayerNoThanks" = "Remove \"Thanks\" button";
|
||||||
"PlayerNoThanksDesc" = "플레이어 아래의 "Thanks" 버튼을 제거합니다.";
|
"PlayerNoThanksDesc" = "플레이어 아래의 \"Thanks\" 버튼을 제거합니다.";
|
||||||
"PlayerNoRemix" = "\"리믹스\" 버튼 제거";
|
"PlayerNoRemix" = "\"리믹스\" 버튼 제거";
|
||||||
"PlayerNoRemixDesc" = "리믹스 버튼을 플레이어 밑으로 이동합니다.";
|
"PlayerNoRemixDesc" = "리믹스 버튼을 플레이어 밑으로 이동합니다.";
|
||||||
"PlayerNoDownload" = "\"다운로드\" 버튼 제거";
|
"PlayerNoDownload" = "\"다운로드\" 버튼 제거";
|
||||||
@@ -182,6 +187,7 @@
|
|||||||
|
|
||||||
"Player.Actions" = "액션";
|
"Player.Actions" = "액션";
|
||||||
"DefaultPlaybackRate" = "기본 재생 속도";
|
"DefaultPlaybackRate" = "기본 재생 속도";
|
||||||
|
"DefaultPlaybackRateDesc" = "Overrides the default playback speed";
|
||||||
"BackgroundPlayback" = "배경 재생";
|
"BackgroundPlayback" = "배경 재생";
|
||||||
"BackgroundPlaybackDesc" = "백그라운드 재생 활성화.";
|
"BackgroundPlaybackDesc" = "백그라운드 재생 활성화.";
|
||||||
"Miniplayer" = "미니 플레이어 활성화";
|
"Miniplayer" = "미니 플레이어 활성화";
|
||||||
@@ -200,15 +206,20 @@
|
|||||||
"ExitFullscreenDesc" = "동영상 재생이 끝날 때 전체 화면 모드를 종료합니다.";
|
"ExitFullscreenDesc" = "동영상 재생이 끝날 때 전체 화면 모드를 종료합니다.";
|
||||||
|
|
||||||
"Player.Gestures" = "제스처";
|
"Player.Gestures" = "제스처";
|
||||||
|
"CompactToast" = "Compact toast";
|
||||||
|
"CompactToastDesc" = "Displays a compact-style toast for player gestures";
|
||||||
"LeftSideGesture" = "왼쪽 제스처";
|
"LeftSideGesture" = "왼쪽 제스처";
|
||||||
|
"LeftSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the left side of the screen";
|
||||||
"RightSideGesture" = "오른쪽 제스처";
|
"RightSideGesture" = "오른쪽 제스처";
|
||||||
|
"RightSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the right side of the screen";
|
||||||
"ActivationAreaWidth" = "제스처 활성화 폭";
|
"ActivationAreaWidth" = "제스처 활성화 폭";
|
||||||
"ActivationAreaWidthDesc" = "이 값은 화면의 왼쪽과 오른쪽에 대한 제스처 인식 영역을 픽셀 단위로 결정합니다.\n\n허용되는 최대 값은 화면 너비의 1/3입니다.\n\n이 설정을 조정하면 플레이어를 최소화하거나 확장하려고 할 때 실수로 활성화되는 것을 방지하는 데 유용합니다.";
|
"ActivationAreaWidthDesc" = "이 값은 화면의 왼쪽과 오른쪽에 대한 제스처 인식 영역을 픽셀 단위로 결정합니다.\n\n허용되는 최대 값은 화면 너비의 1/3입니다.\n\n이 설정을 조정하면 플레이어를 최소화하거나 확장하려고 할 때 실수로 활성화되는 것을 방지하는 데 유용합니다.";
|
||||||
"HoldToSpeed" = "길게 누르면 속도";
|
"HoldToSpeed" = "길게 누르면 속도";
|
||||||
|
"HoldToSpeedDesc" = "Sets the playback speed triggered by a long press on the player";
|
||||||
"AdjustWithFinger" = "제스처로 속도 조정";
|
"AdjustWithFinger" = "제스처로 속도 조정";
|
||||||
"AdjustWithFingerDesc" = "플레이어를 길게 누르고 손가락을 위아래로 움직여 재생 속도를 조절할 수 있습니다.";
|
"AdjustWithFingerDesc" = "플레이어를 길게 누르고 손가락을 위아래로 움직여 재생 속도를 조절할 수 있습니다.";
|
||||||
"PreserveSpeed" = "속도 유지";
|
"PreserveSpeed" = "Lock speed";
|
||||||
"PreserveSpeedDesc" = "제스처가 완료된 후에도 조정된 속도를 유지합니다.";
|
"PreserveSpeedDesc" = "Locks at adjusted speed after gesture completion.";
|
||||||
"SeekAnywhere" = "스와이프하여 탐색";
|
"SeekAnywhere" = "스와이프하여 탐색";
|
||||||
"SeekAnywhereDesc" = "좌우로 스와이프하여 재생 탐색을 제어할 수 있습니다.";
|
"SeekAnywhereDesc" = "좌우로 스와이프하여 재생 탐색을 제어할 수 있습니다.";
|
||||||
"SeekMethod" = "탐색 방법";
|
"SeekMethod" = "탐색 방법";
|
||||||
@@ -233,7 +244,7 @@
|
|||||||
"NoDoubleTap2Seek" = "두 번 탭으로 탐색하는 제스처를 비활성화합니다.";
|
"NoDoubleTap2Seek" = "두 번 탭으로 탐색하는 제스처를 비활성화합니다.";
|
||||||
"NoDoubleTap2SeekDesc" = "두 번 탭으로 탐색하는 제스처를 비활성화합니다.";
|
"NoDoubleTap2SeekDesc" = "두 번 탭으로 탐색하는 제스처를 비활성화합니다.";
|
||||||
|
|
||||||
/* 단편 옵션 */
|
/* Shorts options */
|
||||||
"Shorts" = "Shorts";
|
"Shorts" = "Shorts";
|
||||||
"PlaybackMode" = "재생 완료 동작";
|
"PlaybackMode" = "재생 완료 동작";
|
||||||
"Loop" = "반복";
|
"Loop" = "반복";
|
||||||
@@ -298,7 +309,7 @@
|
|||||||
"HideShortsAudio" = "오디오 표시 없음";
|
"HideShortsAudio" = "오디오 표시 없음";
|
||||||
"HideShortsAudioDesc" = "Shorts에 사용된 오디오를 나타내는 줄을 제거합니다.";
|
"HideShortsAudioDesc" = "Shorts에 사용된 오디오를 나타내는 줄을 제거합니다.";
|
||||||
|
|
||||||
/* 탭 바 옵션 */
|
/* Tab bar options */
|
||||||
"Tabbar" = "탭 바";
|
"Tabbar" = "탭 바";
|
||||||
"Startup" = "시작 페이지";
|
"Startup" = "시작 페이지";
|
||||||
"FEwhat_to_watch" = "홈";
|
"FEwhat_to_watch" = "홈";
|
||||||
@@ -319,11 +330,10 @@
|
|||||||
"InactiveTabs" = "비활성 탭";
|
"InactiveTabs" = "비활성 탭";
|
||||||
"HideLibraryFooter" = "탭 바의 첫 번째 탭을 길게 누르면 라이브러리 탭을 숨기거나 표시할 수 있습니다.";
|
"HideLibraryFooter" = "탭 바의 첫 번째 탭을 길게 누르면 라이브러리 탭을 숨기거나 표시할 수 있습니다.";
|
||||||
"Warning" = "경고";
|
"Warning" = "경고";
|
||||||
"TabIsHidden" = "숨겨진 탭은 시작 페이지로 선택할 수 없습니다";
|
"AtLeastOneTab" = "At least one tab must remain active";
|
||||||
"TabIsStartupTab" = "시작 페이지로 선택된 탭은 숨길 수 없습니다";
|
|
||||||
"TabsCountRestricted" = "활성 탭은 최대 6개까지만 가질 수 있습니다";
|
"TabsCountRestricted" = "활성 탭은 최대 6개까지만 가질 수 있습니다";
|
||||||
|
|
||||||
/* 인터페이스 옵션 */
|
/* Interface options */
|
||||||
"Interface" = "인터페이스";
|
"Interface" = "인터페이스";
|
||||||
"OledTheme" = "OLED 테마";
|
"OledTheme" = "OLED 테마";
|
||||||
"OledThemeDesc" = "모든 어두운 색을 검은색으로 바꿉니다";
|
"OledThemeDesc" = "모든 어두운 색을 검은색으로 바꿉니다";
|
||||||
@@ -340,7 +350,7 @@
|
|||||||
"OldYTUI" = "구 UI";
|
"OldYTUI" = "구 UI";
|
||||||
"OldYTUIDesc" = "구 인터페이스로 돌아가도록 YouTube 버전을 스푸핑합니다";
|
"OldYTUIDesc" = "구 인터페이스로 돌아가도록 YouTube 버전을 스푸핑합니다";
|
||||||
"DisableRTL" = "RTL 서식 비활성화";
|
"DisableRTL" = "RTL 서식 비활성화";
|
||||||
"DisableRTLDesc" = "처음에 RTL(오른쪽에서 왼쪽으로)로 표시되는 언어의 경우, 텍스트를 LTR(왼쪽에서 오른쪽으로) 형식으로 강제 표시합니다."
|
"DisableRTLDesc" = "Forcefully displays text in left-to-right (LTR) format for languages that are initially displayed in right-to-left (RTL).";
|
||||||
|
|
||||||
"StartupAnimation" = "시작 애니메이션";
|
"StartupAnimation" = "시작 애니메이션";
|
||||||
"StartupAnimationDesc" = "YouTube 시작 로딩 애니메이션을 표시합니다.";
|
"StartupAnimationDesc" = "YouTube 시작 로딩 애니메이션을 표시합니다.";
|
||||||
@@ -351,9 +361,13 @@
|
|||||||
"MiniplayerStyleDesc" = "플로팅 모드로 전환하거나 플로팅 모드를 종료하려면 앱을 다시 시작해야 합니다.";
|
"MiniplayerStyleDesc" = "플로팅 모드로 전환하거나 플로팅 모드를 종료하려면 앱을 다시 시작해야 합니다.";
|
||||||
"Floating" = "플로팅";
|
"Floating" = "플로팅";
|
||||||
|
|
||||||
"ContextMenu" = "컨텍스트 메뉴";
|
"Other" = "Other";
|
||||||
"NoShareChunk" = "공유 식별자 제거";
|
"NoShareChunk" = "공유 식별자 제거";
|
||||||
"NoShareChunkDesc" = "공유 링크에서 \"si=identifier\" 매개변수를 제거합니다. YouTube가 공유 메뉴를 계속 개선하고 있으므로, \"네이티브 공유 시트\" 옵션을 대신할 수 있는 좋은 대안입니다.";
|
"NoShareChunkDesc" = "공유 링크에서 \"si=identifier\" 매개변수를 제거합니다. YouTube가 공유 메뉴를 계속 개선하고 있으므로, \"네이티브 공유 시트\" 옵션을 대신할 수 있는 좋은 대안입니다.";
|
||||||
|
"AutoCheckLinks" = "Auto-check clipboard";
|
||||||
|
"AutoCheckLinksDesc" = "Check clipboard for YouTube-related links each time the app is opened.\nFor proper functionality, go to iOS Settings → YouTube → Paste from other apps and select \"Allow\"";
|
||||||
|
|
||||||
|
"ContextMenu" = "컨텍스트 메뉴";
|
||||||
"NativeShare" = "네이티브 공유 시트";
|
"NativeShare" = "네이티브 공유 시트";
|
||||||
"NativeShareDesc" = "시스템 공유 시트를 사용하여 미디어를 공유합니다";
|
"NativeShareDesc" = "시스템 공유 시트를 사용하여 미디어를 공유합니다";
|
||||||
"RemoveCommentGuidelines" = "가이드라인 제거";
|
"RemoveCommentGuidelines" = "가이드라인 제거";
|
||||||
@@ -374,10 +388,16 @@
|
|||||||
"RemoveDontRecommendMenuDesc" = "메뉴에서 \"채널 추천 안 함\" 옵션을 제거합니다.";
|
"RemoveDontRecommendMenuDesc" = "메뉴에서 \"채널 추천 안 함\" 옵션을 제거합니다.";
|
||||||
"RemoveReportMenu" = "\"신고\" 제거";
|
"RemoveReportMenu" = "\"신고\" 제거";
|
||||||
"RemoveReportMenuDesc" = "메뉴에서 \"신고\" 옵션을 제거합니다.";
|
"RemoveReportMenuDesc" = "메뉴에서 \"신고\" 옵션을 제거합니다.";
|
||||||
|
"RemoveRemixMenu" = "Remove \"Remix\"";
|
||||||
|
"RemoveRemixMenuDesc" = "Removes \"Remix\" option from menu.";
|
||||||
|
"RemoveYTMMenu" = "Remove \"YouTube Music\"";
|
||||||
|
"RemoveYTMMenuDesc" = "Removes \"Listen with YouTube Music\" option from menu.";
|
||||||
|
|
||||||
/* SponsorBlock 설정 */
|
/* SponsorBlock settings */
|
||||||
"EnableSponsorBlock" = "활성화";
|
"EnableSponsorBlock" = "활성화";
|
||||||
"EnableSponsorBlockDesc" = "SponsorBlock 확장 기능을 활성화합니다.";
|
"EnableSponsorBlockDesc" = "SponsorBlock 확장 기능을 활성화합니다.";
|
||||||
|
"SbPlayerButton" = "Display button in overlay";
|
||||||
|
"SbPlayerButtonDesc" = "Adds SponsorBlock button in players overlay.";
|
||||||
"ShowNotifications" = "알림 표시";
|
"ShowNotifications" = "알림 표시";
|
||||||
"ShowNotificationsDesc" = "자동으로 건너뛰는 세그먼트에 대한 알림을 표시합니다. 수동으로 건너뛰어야 하는 카테고리에 대한 알림은 항상 표시됩니다.";
|
"ShowNotificationsDesc" = "자동으로 건너뛰는 세그먼트에 대한 알림을 표시합니다. 수동으로 건너뛰어야 하는 카테고리에 대한 알림은 항상 표시됩니다.";
|
||||||
"SegmentsInFeedPlayer" = "피드에 세그먼트 표시";
|
"SegmentsInFeedPlayer" = "피드에 세그먼트 표시";
|
||||||
@@ -388,6 +408,7 @@
|
|||||||
"SegmentSkipAudioDesc" = "세그먼트를 건너뛰면 오디오 알림을 재생합니다.";
|
"SegmentSkipAudioDesc" = "세그먼트를 건너뛰면 오디오 알림을 재생합니다.";
|
||||||
"DurationWithoutSegments" = "새로운 지속 시간 표시";
|
"DurationWithoutSegments" = "새로운 지속 시간 표시";
|
||||||
"DurationWithoutSegmentsDesc" = "세그먼트가 없는 총 지속 시간을 표시합니다.";
|
"DurationWithoutSegmentsDesc" = "세그먼트가 없는 총 지속 시간을 표시합니다.";
|
||||||
|
|
||||||
"SkipAlertDuration" = "건너뛰기 알림 지속 시간";
|
"SkipAlertDuration" = "건너뛰기 알림 지속 시간";
|
||||||
"UnskipAlertDuration" = "건너뛰기 알림 지속 시간 해제";
|
"UnskipAlertDuration" = "건너뛰기 알림 지속 시간 해제";
|
||||||
|
|
||||||
@@ -402,10 +423,10 @@
|
|||||||
"EndcardsDesc" = "크레딧이 뜰 때나 엔드카드가 표시될 때, 일반적으로 동영상 끝부분 근처에 표시됩니다.";
|
"EndcardsDesc" = "크레딧이 뜰 때나 엔드카드가 표시될 때, 일반적으로 동영상 끝부분 근처에 표시됩니다.";
|
||||||
"EndcardsColor" = "엔드카드 세그먼트 색상";
|
"EndcardsColor" = "엔드카드 세그먼트 색상";
|
||||||
"Interaction" = "상호작용 알림";
|
"Interaction" = "상호작용 알림";
|
||||||
"InteractionDesc" = "좋아요, 구독, 상호작용을 유도하는 명시적 알림(유료 또는 무료 플랫폼에서 이루어지는 상호작용을 유도하는 알림, 예를 들어, 동영상 클릭 등);
|
"InteractionDesc" = "Explicit reminders to like, subscribe or interact with them on any paid or free platform(s) (e.g. click on a video)";
|
||||||
"InteractionColor" = "상호작용 세그먼트 색상";
|
"InteractionColor" = "상호작용 세그먼트 색상";
|
||||||
"SelfPromo" = "셀프/무료 프로모션";
|
"SelfPromo" = "셀프/무료 프로모션";
|
||||||
"SelfPromoDesc" = "셀프 프로모션: 제작자와 직접 관련된 제품이나 서비스를 홍보합니다. 무료 프로모션: 제작자는 이 홍보에 대한 대가로 어떠한 지불도 받지 않습니다."
|
"SelfPromoDesc" = "Self-promo: Promoting a product or service that is directly related to the creator themselves.\nUnpaid:The creator will not receive any payment in exchange for this promotion";
|
||||||
"SelfPromoColor" = "셀프 프로모션 세그먼트 색상";
|
"SelfPromoColor" = "셀프 프로모션 세그먼트 색상";
|
||||||
"MusicOfftopic" = "음악: 음악이 아닌 섹션";
|
"MusicOfftopic" = "음악: 음악이 아닌 섹션";
|
||||||
"MusicOfftopicDesc" = "음악이 주요 콘텐츠인 비디오에만 사용됩니다.";
|
"MusicOfftopicDesc" = "음악이 주요 콘텐츠인 비디오에만 사용됩니다.";
|
||||||
@@ -426,6 +447,13 @@
|
|||||||
"Sb.Ask" = "묻기";
|
"Sb.Ask" = "묻기";
|
||||||
"Sb.Display" = "플레이어에 표시";
|
"Sb.Display" = "플레이어에 표시";
|
||||||
|
|
||||||
|
"PublicUserID" = "Public UserID";
|
||||||
|
"PrivateUserID" = "Private UserID";
|
||||||
|
"TapToReveal" = "Tap to reveal";
|
||||||
|
"Save" = "Save";
|
||||||
|
"Error.SbPublicID" = "The public user ID must contain exactly 64 characters";
|
||||||
|
"Error.SbPrivateID" = "The private (local) user ID must contain at least 32 characters";
|
||||||
|
|
||||||
"sb_sponsor" = "후원 부분";
|
"sb_sponsor" = "후원 부분";
|
||||||
"sb_intro" = "인트로 세그먼트";
|
"sb_intro" = "인트로 세그먼트";
|
||||||
"sb_outro" = "엔드카드 세그먼트";
|
"sb_outro" = "엔드카드 세그먼트";
|
||||||
@@ -433,17 +461,17 @@
|
|||||||
"sb_selfpromo" = "셀프 프로모션 세그먼트";
|
"sb_selfpromo" = "셀프 프로모션 세그먼트";
|
||||||
"sb_music_offtopic" = "오프토픽 세그먼트";
|
"sb_music_offtopic" = "오프토픽 세그먼트";
|
||||||
"sb_preview" = "프리뷰 세그먼트";
|
"sb_preview" = "프리뷰 세그먼트";
|
||||||
"sb_poi_highlight" = "하이라이트 세그먼트";
|
"sb_poi_highlight" = "Highlight";
|
||||||
"sb_filler" = "벗어난 주제/농담 세그먼트";
|
"sb_filler" = "벗어난 주제/농담 세그먼트";
|
||||||
|
|
||||||
"SegmentDetected" = "%@가 감지됨";
|
"SegmentDetected" = "%@ detected.\n%@";
|
||||||
"SegmentSkipped" = "%@가 건너뛰어짐";
|
"SegmentSkipped" = "%@ has been skipped";
|
||||||
"SkippedToSegment" = "%@로 건너뛰어짐";
|
"SkippedToSegment" = "Jumped to %@";
|
||||||
"SkipSegment" = "건너뛰기";
|
"SkipSegment" = "Would you like to skip the segment?";
|
||||||
"SkipToSegment" = "강조하기 위해";
|
"SkipToSegment" = "Would you like to jump to the highlight?";
|
||||||
"Unskip" = "건너뛰기 해제";
|
"Unskip" = "건너뛰기 해제";
|
||||||
|
|
||||||
/* 개발자 섹션 */
|
/* Developer section */
|
||||||
"Developer" = "개발자";
|
"Developer" = "개발자";
|
||||||
"FollowMe" = "X에서 나를 팔로우하세요";
|
"FollowMe" = "X에서 나를 팔로우하세요";
|
||||||
"SupportDevelopment" = "개발 지원";
|
"SupportDevelopment" = "개발 지원";
|
||||||
@@ -454,7 +482,7 @@
|
|||||||
"VisitTelegram" = "내 텔레그램 채널";
|
"VisitTelegram" = "내 텔레그램 채널";
|
||||||
"VisitTelegramDesc" = "최신 앱 업데이트에 대한 정보를 받아 보세요";
|
"VisitTelegramDesc" = "최신 앱 업데이트에 대한 정보를 받아 보세요";
|
||||||
|
|
||||||
/* 크레딧 섹션 */
|
/* Credits section */
|
||||||
"Credits" = "크레딧";
|
"Credits" = "크레딧";
|
||||||
|
|
||||||
"Contributors" = "기여자";
|
"Contributors" = "기여자";
|
||||||
@@ -495,7 +523,7 @@
|
|||||||
"NoDonationReminderDesc" = "거의 표시되지 않는 기부 알림을 끕니다.";
|
"NoDonationReminderDesc" = "거의 표시되지 않는 기부 알림을 끕니다.";
|
||||||
|
|
||||||
"ShortsOnlyWarning" = "이 모드를 활성화하시겠습니까?\n\n이 모드에서는 Shorts 동영상만 볼 수 있고 다른 작업은 할 수 없습니다.\n\nShorts만 보기 모드를 해제하려면 Shorts 플레이어에서 두 손가락을 길게 누르세요.";
|
"ShortsOnlyWarning" = "이 모드를 활성화하시겠습니까?\n\n이 모드에서는 Shorts 동영상만 볼 수 있고 다른 작업은 할 수 없습니다.\n\nShorts만 보기 모드를 해제하려면 Shorts 플레이어에서 두 손가락을 길게 누르세요.";
|
||||||
"ShortsModeTurnedOff" = "Shorts만 보기 모드가 해제되었습니다."
|
"ShortsModeTurnedOff" = "Shorts Only Mode has been turned off";
|
||||||
|
|
||||||
"AddLibraryTab" = "사용자 탭 복원";
|
"AddLibraryTab" = "사용자 탭 복원";
|
||||||
"RemoveLibraryTab" = "사용자 탭 제거";
|
"RemoveLibraryTab" = "사용자 탭 제거";
|
||||||
@@ -512,7 +540,7 @@
|
|||||||
"Disable" = "비활성화";
|
"Disable" = "비활성화";
|
||||||
"Disabled" = "비활성화됨";
|
"Disabled" = "비활성화됨";
|
||||||
"PlaybackSpeed" = "재생 속도";
|
"PlaybackSpeed" = "재생 속도";
|
||||||
"SpeedPreserved" = "속도 유지";
|
"SpeedPreserved" = "Speed locked at %@";
|
||||||
"ResetSpeed" = "재설정";
|
"ResetSpeed" = "재설정";
|
||||||
|
|
||||||
"Toast.Brightness" = "밝기";
|
"Toast.Brightness" = "밝기";
|
||||||
@@ -569,16 +597,32 @@
|
|||||||
"ParsingTranscript" = "대본 분석 중";
|
"ParsingTranscript" = "대본 분석 중";
|
||||||
"Converting" = "변환 중";
|
"Converting" = "변환 중";
|
||||||
"RetryLogin" = "해결책이 활성화되었습니다. 다시 시도해 주세요.";
|
"RetryLogin" = "해결책이 활성화되었습니다. 다시 시도해 주세요.";
|
||||||
"LoginInfo" = "Google 계정에 성공적으로 로그인한 후 앱을 다시 시작해야 합니다."
|
"LoginInfo" = "App restart required after successful signing into Google account";
|
||||||
|
|
||||||
|
"OpenLink" = "Open link";
|
||||||
|
"LinkDetected" = "A YouTube-related link was detected. Would you like to open it in YouTube?";
|
||||||
|
|
||||||
|
"SbWhitelist" = "Whitelist";
|
||||||
|
"SbAddToWhitelist" = "Add to the whitelist";
|
||||||
|
"Sb.Whitelisted" = "Added to the whitelist";
|
||||||
|
"SbRemoveFromWhitelist" = "Remove from the whitelist";
|
||||||
|
"Sb.Whitelist" = "Whitelisted channels";
|
||||||
|
"Sb.Channels" = "Channels";
|
||||||
|
"Sb.ChannelsHere" = "Whitelisted channels appear here";
|
||||||
|
"SortType" = "Sort type";
|
||||||
|
"Sb.Newest" = "Newest first";
|
||||||
|
"Sb.Oldest" = "Oldest first";
|
||||||
|
"Sb.Alphabetical" = "Alphabetical (A-Z)";
|
||||||
|
"Sb.AlphabeticalRev" = "Reverse (Z-A)";
|
||||||
|
|
||||||
"Welcome.Download" = "미디어 다운로드";
|
"Welcome.Download" = "미디어 다운로드";
|
||||||
"Welcome.DownloadDesc" = "좋아하는 콘텐츠를 다운로드하세요. 동영상, 단편, 오디오, 프로필 사진 등 무엇이든 가능합니다. 흥미로운 게시물과 댓글을 복사하거나 이미지로 저장하세요";
|
"Welcome.DownloadDesc" = "좋아하는 콘텐츠를 다운로드하세요. 동영상, 단편, 오디오, 프로필 사진 등 무엇이든 가능합니다. 흥미로운 게시물과 댓글을 복사하거나 이미지로 저장하세요";
|
||||||
"Welcome.Content" = "인터페이스 조정";
|
"Welcome.Content" = "인터페이스 조정";
|
||||||
"Welcome.ContentDesc" = "원치 않는 콘텐츠와 인터페이스 요소를 제거하세요. 진정한 OLED 다크 모드를 활성화하세요";
|
"Welcome.ContentDesc" = "원치 않는 콘텐츠와 인터페이스 요소를 제거하세요. 진정한 OLED 다크 모드를 활성화하세요";
|
||||||
"Welcome.Player" = "플레이어 동작 설정";
|
"Welcome.Player" = "플레이어 동작 설정";
|
||||||
"Welcome.PlayerDesc" = "플레이어의 동작을 사용자 정의하고, 품질과 재생 속도를 자동으로 선택합니다. 제스처를 사용하여 제어합니다."
|
"Welcome.PlayerDesc" = "Сustomize the player's behavior, auto-select quality and playback speed. Control using gestures";
|
||||||
"Welcome.More" = "그리고 더 많은 기능...";
|
"Welcome.More" = "그리고 더 많은 기능...";
|
||||||
"Welcome.MoreDesc" = "YouTube Plus에는 환경 설정 저장 및 캐시 지우기 등의 기능을 포함하여 50가지가 넘는 다양한 옵션이 포함되어 있습니다. 설정은 YouTube 설정 아래의 YouTube Plus 섹션에서 사용할 수 있습니다."
|
"Welcome.MoreDesc" = "YouTube Plus includes over 50 different options, including features like saving preferences and clearing cache. Settings are available in the YouTube Plus section under YouTube settings";
|
||||||
"SupportMe" = "저를 지원해 주세요";
|
"SupportMe" = "저를 지원해 주세요";
|
||||||
"Continue" = "계속";
|
"Continue" = "계속";
|
||||||
|
|
||||||
@@ -589,3 +633,16 @@
|
|||||||
"Conflicts.CloseYT" = "YouTube를 닫습니다";
|
"Conflicts.CloseYT" = "YouTube를 닫습니다";
|
||||||
|
|
||||||
"DonationReminder" = "여러분의 지원이 YouTube Plus를 더욱 발전시키는 데 도움이 됩니다.\n\nYouTube Plus 설정에서 이 알림을 활성화하거나 비활성화할 수 있습니다. 감사합니다💜";
|
"DonationReminder" = "여러분의 지원이 YouTube Plus를 더욱 발전시키는 데 도움이 됩니다.\n\nYouTube Plus 설정에서 이 알림을 활성화하거나 비활성화할 수 있습니다. 감사합니다💜";
|
||||||
|
|
||||||
|
/* Old localizations (commented out for reference)
|
||||||
|
"TabIsHidden" = "숨겨진 탭은 시작 페이지로 선택할 수 없습니다";
|
||||||
|
"TabIsStartupTab" = "시작 페이지로 선택된 탭은 숨길 수 없습니다";
|
||||||
|
"PreserveSpeed" = "속도 유지";
|
||||||
|
"PreserveSpeedDesc" = "제스처가 완료된 후에도 조정된 속도를 유지합니다.";
|
||||||
|
"sb_poi_highlight" = "하이라이트 세그먼트";
|
||||||
|
"SegmentDetected" = "%@가 감지됨";
|
||||||
|
"SegmentSkipped" = "%@가 건너뛰어짐";
|
||||||
|
"SkippedToSegment" = "%@로 건너뛰어짐";
|
||||||
|
"SkipSegment" = "건너뛰기";
|
||||||
|
"SkipToSegment" = "강조하기 위해";
|
||||||
|
"SpeedPreserved" = "속도 유지";
|
||||||
@@ -21,6 +21,7 @@
|
|||||||
"PostDownloadDesc" = "Wybrana akcja zostanie wykonana po pomyślnym zakończeniu pobierania wideo.";
|
"PostDownloadDesc" = "Wybrana akcja zostanie wykonana po pomyślnym zakończeniu pobierania wideo.";
|
||||||
"SaveToPhotos" = "Zapisz do zdjęć";
|
"SaveToPhotos" = "Zapisz do zdjęć";
|
||||||
"Share" = "Udostępnij";
|
"Share" = "Udostępnij";
|
||||||
|
"Copy" = "Kopiuj";
|
||||||
"Ask" = "Pytaj";
|
"Ask" = "Pytaj";
|
||||||
"DownloadCompleted" = "Pobieranie zakończone";
|
"DownloadCompleted" = "Pobieranie zakończone";
|
||||||
|
|
||||||
@@ -91,13 +92,17 @@
|
|||||||
/* Player options */
|
/* Player options */
|
||||||
"Player" = "Odtwarzacz";
|
"Player" = "Odtwarzacz";
|
||||||
"PlaybackQualityOnWiFi" = "Jakość odtwarzania w sieci Wi-Fi";
|
"PlaybackQualityOnWiFi" = "Jakość odtwarzania w sieci Wi-Fi";
|
||||||
|
"PlaybackQualityOnWiFiDesc" = "Automatycznie zastosuj wybraną jakość kiedy używasz Wi-Fi";
|
||||||
"PlaybackQualityOnCellular" = "Jakość odtwarzania w sieci komórkowej";
|
"PlaybackQualityOnCellular" = "Jakość odtwarzania w sieci komórkowej";
|
||||||
|
"PlaybackQualityOnCellularDesc" = "Automatycznie zastosuj wybraną jakość kiedy używasz danych mobilnych";
|
||||||
|
|
||||||
"PreferredCaptions" = "Preferowane napisy";
|
"PreferredCaptions" = "Preferowane napisy";
|
||||||
"Original" = "Oryginalne";
|
"Original" = "Oryginalne";
|
||||||
"Custom" = "Wybierz ręcznie";
|
"Custom" = "Wybierz ręcznie";
|
||||||
"CustomAudioTrack" = "Wybrana ścieżka dźwiękowa";
|
"CustomAudioTrack" = "Wybrana ścieżka dźwiękowa";
|
||||||
|
"CustomAudioTrackDesc" = "Określa preferowany język ścieżki audio używany do odtwarzania (jeśli jest dostępny)";
|
||||||
"CustomCaptions" = "Wybrane napisy";
|
"CustomCaptions" = "Wybrane napisy";
|
||||||
|
"CustomCaptionsDesc" = "Określa preferowany język napisów (jeśli dostępny)";
|
||||||
"AutoGenCaps" = "Automatycznie wygenerowane napisy";
|
"AutoGenCaps" = "Automatycznie wygenerowane napisy";
|
||||||
"AutoGenCapsDesc" = "Jeśli wybrane napisy nie zostaną znalezione, YouTube Plus spróbuje wybrać tłumaczenie oryginalnych napisów lub tłumaczenie automatycznie wygenerowanych napisów.";
|
"AutoGenCapsDesc" = "Jeśli wybrane napisy nie zostaną znalezione, YouTube Plus spróbuje wybrać tłumaczenie oryginalnych napisów lub tłumaczenie automatycznie wygenerowanych napisów.";
|
||||||
|
|
||||||
@@ -182,6 +187,7 @@
|
|||||||
|
|
||||||
"Player.Actions" = "Akcje";
|
"Player.Actions" = "Akcje";
|
||||||
"DefaultPlaybackRate" = "Domyślna prędkość odtwarzania";
|
"DefaultPlaybackRate" = "Domyślna prędkość odtwarzania";
|
||||||
|
"DefaultPlaybackRateDesc" = "Zastępuje domyślną prędkość odtwarzania";
|
||||||
"BackgroundPlayback" = "Odtwarzanie w tle";
|
"BackgroundPlayback" = "Odtwarzanie w tle";
|
||||||
"BackgroundPlaybackDesc" = "Umożliwia odtwarzanie w tle.";
|
"BackgroundPlaybackDesc" = "Umożliwia odtwarzanie w tle.";
|
||||||
"Miniplayer" = "Włącz mini odtwarzacz";
|
"Miniplayer" = "Włącz mini odtwarzacz";
|
||||||
@@ -200,11 +206,16 @@
|
|||||||
"ExitFullscreenDesc" = "Wyłącza tryb pełnoekranowy na końcu odtwarzania filmu.";
|
"ExitFullscreenDesc" = "Wyłącza tryb pełnoekranowy na końcu odtwarzania filmu.";
|
||||||
|
|
||||||
"Player.Gestures" = "Gesty";
|
"Player.Gestures" = "Gesty";
|
||||||
|
"CompactToast" = "Kompaktowy przycisk";
|
||||||
|
"CompactToastDesc" = "Pokazuje kompaktowy przycisk dla gestów w nakładce odtwarzacza";
|
||||||
"LeftSideGesture" = "Gest dla lewej strony";
|
"LeftSideGesture" = "Gest dla lewej strony";
|
||||||
|
"LeftSideGestureDesc" = "Dostosuj wybrane ustawienie, przesuwając palcem pionowo po lewej stronie ekranu";
|
||||||
"RightSideGesture" = "Gest dla prawej strony";
|
"RightSideGesture" = "Gest dla prawej strony";
|
||||||
|
"RightSideGestureDesc" = "Dostosuj wybrane ustawienie, przesuwając palcem w pionie po prawej stronie ekranu";
|
||||||
"ActivationAreaWidth" = "Szerokość obszaru aktywacji gestu";
|
"ActivationAreaWidth" = "Szerokość obszaru aktywacji gestu";
|
||||||
"ActivationAreaWidthDesc" = "Ta wartość określa strefę rozpoznawania gestów w pikselach dla lewej i prawej strony ekranu.\n\nMaksymalna dozwolona wartość to jedna trzecia szerokości ekranu.\n\nDostosowanie tego ustawienia jest przydatne, aby zapobiec przypadkowej aktywacji podczas próby minimalizacji lub rozszerzenia odtwarzacza.";
|
"ActivationAreaWidthDesc" = "Ta wartość określa strefę rozpoznawania gestów w pikselach dla lewej i prawej strony ekranu.\n\nMaksymalna dozwolona wartość to jedna trzecia szerokości ekranu.\n\nDostosowanie tego ustawienia jest przydatne, aby zapobiec przypadkowej aktywacji podczas próby minimalizacji lub rozszerzenia odtwarzacza.";
|
||||||
"HoldToSpeed" = "Przytrzymaj, aby zmienić prędkość";
|
"HoldToSpeed" = "Przytrzymaj, aby zmienić prędkość";
|
||||||
|
"HoldToSpeedDesc" = "Ustawia prędkość odtwarzania uruchamianą przez długie naciśnięcie przycisku odtwarzacza";
|
||||||
"AdjustWithFinger" = "Reguluj prędkość gestami";
|
"AdjustWithFinger" = "Reguluj prędkość gestami";
|
||||||
"AdjustWithFingerDesc" = "Umożliwia regulację prędkości odtwarzania poprzez długie naciśnięcie na odtwarzaczu i przesuwanie palcem w górę i w dół.";
|
"AdjustWithFingerDesc" = "Umożliwia regulację prędkości odtwarzania poprzez długie naciśnięcie na odtwarzaczu i przesuwanie palcem w górę i w dół.";
|
||||||
"PreserveSpeed" = "Zachowaj prędkość";
|
"PreserveSpeed" = "Zachowaj prędkość";
|
||||||
@@ -319,16 +330,15 @@
|
|||||||
"InactiveTabs" = "Nieaktywne karty";
|
"InactiveTabs" = "Nieaktywne karty";
|
||||||
"HideLibraryFooter" = "Karta Biblioteka może być ukryta lub pokazana poprzez długie naciśnięcie pierwszej karty paska kart.";
|
"HideLibraryFooter" = "Karta Biblioteka może być ukryta lub pokazana poprzez długie naciśnięcie pierwszej karty paska kart.";
|
||||||
"Warning" = "Ostrzeżenie";
|
"Warning" = "Ostrzeżenie";
|
||||||
"TabIsHidden" = "Ukryta karta nie może być wybrana jako strona startowa";
|
"AtLeastOneTab" = "Przynajmniej jedna zakładka musi zostać aktywna";
|
||||||
"TabIsStartupTab" = "Karta wybrana jako strona startowa nie może być ukryta";
|
|
||||||
"TabsCountRestricted" = "Możesz mieć tylko do sześciu aktywnych kart";
|
"TabsCountRestricted" = "Możesz mieć tylko do sześciu aktywnych kart";
|
||||||
|
|
||||||
/* Interface options */
|
/* Interface options */
|
||||||
"Interface" = "Interfejs";
|
"Interface" = "Interfejs";
|
||||||
"OledTheme" = "Motyw OLED";
|
"OledTheme" = "Motyw OLED";
|
||||||
"OledThemeDesc" = "Zamienia wszystkie ciemne kolory na czarne";
|
"OledThemeDesc" = "Zamienia wszystkie ciemne kolory na czarne";
|
||||||
"OledKeyboard" = "Klawiatura oled";
|
"OledKeyboard" = "Klawiatura OLED";
|
||||||
"OledKeyboardDesc" = "Stosuje czarny motyw oled dla ciemnej klawiatury";
|
"OledKeyboardDesc" = "Stosuje czarny motyw OLED dla ciemnej klawiatury";
|
||||||
"NoSearchHistory" = "Ukryj historię wyszukiwania";
|
"NoSearchHistory" = "Ukryj historię wyszukiwania";
|
||||||
"NoSearchHistoryDesc" = "Wizualnie ukrywa historię wyszukiwania i sugestie. Uwaga: Twoja historia wyszukiwania będzie nadal dostępna w innych klientach YouTube.";
|
"NoSearchHistoryDesc" = "Wizualnie ukrywa historię wyszukiwania i sugestie. Uwaga: Twoja historia wyszukiwania będzie nadal dostępna w innych klientach YouTube.";
|
||||||
"StickSortComments" = "Przypnij nagłówek komentarzy";
|
"StickSortComments" = "Przypnij nagłówek komentarzy";
|
||||||
@@ -351,9 +361,13 @@
|
|||||||
"MiniplayerStyleDesc" = "Przełączanie do/z trybu pływającego wymaga ponownego uruchomienia aplikacji.";
|
"MiniplayerStyleDesc" = "Przełączanie do/z trybu pływającego wymaga ponownego uruchomienia aplikacji.";
|
||||||
"Floating" = "Pływający";
|
"Floating" = "Pływający";
|
||||||
|
|
||||||
"ContextMenu" = "Menu kontekstowe";
|
"Other" = "Independent";
|
||||||
"NoShareChunk" = "Usuń identyfikator udostępniania";
|
"NoShareChunk" = "Usuń identyfikator udostępniania";
|
||||||
"NoShareChunkDesc" = "Usuwa parametr \"si=identifier\" z udostępnianych linków. Dobra alternatywa dla opcji \"Native share sheet\", ponieważ YouTube nadal ulepsza swoje menu udostępniania.";
|
"NoShareChunkDesc" = "Usuwa parametr \"si=identifier\" z udostępnianych linków. Dobra alternatywa dla opcji \"Native share sheet\", ponieważ YouTube nadal ulepsza swoje menu udostępniania.";
|
||||||
|
"AutoCheckLinks" = "Automatyczne sprawdzanie schowka";
|
||||||
|
"AutoCheckLinksDesc" = "Sprawdzaj schowek pod kątem linków związanych z YouTube przy każdym otwarciu aplikacji.\nAby zapewnić prawidłowe działanie, przejdź do Ustawienia iOS → YouTube → Wklej z innych aplikacji i wybierz \"Pozwól\"";
|
||||||
|
|
||||||
|
"ContextMenu" = "Menu kontekstowe";
|
||||||
"NativeShare" = "Natywny arkusz udostępniania";
|
"NativeShare" = "Natywny arkusz udostępniania";
|
||||||
"NativeShareDesc" = "Używa systemowego arkusza udostępniania do udostępniania mediów";
|
"NativeShareDesc" = "Używa systemowego arkusza udostępniania do udostępniania mediów";
|
||||||
"RemoveCommentGuidelines" = "Usuń wytyczne";
|
"RemoveCommentGuidelines" = "Usuń wytyczne";
|
||||||
@@ -374,10 +388,16 @@
|
|||||||
"RemoveDontRecommendMenuDesc" = "Usuwa opcję \"Nie polecaj kanału\" z menu.";
|
"RemoveDontRecommendMenuDesc" = "Usuwa opcję \"Nie polecaj kanału\" z menu.";
|
||||||
"RemoveReportMenu" = "Usuń \"Zgłoś\"";
|
"RemoveReportMenu" = "Usuń \"Zgłoś\"";
|
||||||
"RemoveReportMenuDesc" = "Usuwa opcję \"Zgłoś\" z menu.";
|
"RemoveReportMenuDesc" = "Usuwa opcję \"Zgłoś\" z menu.";
|
||||||
|
"RemoveRemixMenu" = "Usuń \"Remix\"";
|
||||||
|
"RemoveRemixMenuDesc" = "Usuwa opcję \"Remix\" z menu.";
|
||||||
|
"RemoveYTMMenu" = "Usuń \"YouTube Music\"";
|
||||||
|
"RemoveYTMMenuDesc" = "Usuwa opcję \"Słuchaj w YouTube Music\" z menu.";
|
||||||
|
|
||||||
/* SponsorBlock settings */
|
/* SponsorBlock settings */
|
||||||
"EnableSponsorBlock" = "Włącz";
|
"EnableSponsorBlock" = "Włącz";
|
||||||
"EnableSponsorBlockDesc" = "Aktywuje rozszerzenie SponsorBlock.";
|
"EnableSponsorBlockDesc" = "Aktywuje rozszerzenie SponsorBlock.";
|
||||||
|
"SbPlayerButton" = "Pokaż przycisk w nakładce";
|
||||||
|
"SbPlayerButtonDesc" = "Dodaje przycisk SponsorBlock w nakładce odtwarzacza.";
|
||||||
"ShowNotifications" = "Pokaż powiadomienia";
|
"ShowNotifications" = "Pokaż powiadomienia";
|
||||||
"ShowNotificationsDesc" = "Wyświetla powiadomienia dla automatycznie pominiętych segmentów. Powiadomienia dla kategorii wymagających ręcznego pomijania są zawsze wyświetlane.";
|
"ShowNotificationsDesc" = "Wyświetla powiadomienia dla automatycznie pominiętych segmentów. Powiadomienia dla kategorii wymagających ręcznego pomijania są zawsze wyświetlane.";
|
||||||
"SegmentsInFeedPlayer" = "Wyświetl segmenty w kanale";
|
"SegmentsInFeedPlayer" = "Wyświetl segmenty w kanale";
|
||||||
@@ -427,6 +447,13 @@
|
|||||||
"Sb.Ask" = "Pytaj";
|
"Sb.Ask" = "Pytaj";
|
||||||
"Sb.Display" = "Wyświetl w odtwarzaczu";
|
"Sb.Display" = "Wyświetl w odtwarzaczu";
|
||||||
|
|
||||||
|
"PublicUserID" = "Publiczny UserID";
|
||||||
|
"PrivateUserID" = "Prywatny UserID";
|
||||||
|
"TapToReveal" = "Dotknij aby wyświetlić";
|
||||||
|
"Save" = "Zapisz";
|
||||||
|
"Error.SbPublicID" = "Publiczny identyfikator użytkownika musi zawierać dokładnie 64 znaki";
|
||||||
|
"Error.SbPrivateID" = "Prywatny (lokalny) identyfikator użytkownika musi zawierać co najmniej 32 znaki";
|
||||||
|
|
||||||
"sb_sponsor" = "Segment sponsora";
|
"sb_sponsor" = "Segment sponsora";
|
||||||
"sb_intro" = "Segment intro";
|
"sb_intro" = "Segment intro";
|
||||||
"sb_outro" = "Segment końcowy";
|
"sb_outro" = "Segment końcowy";
|
||||||
@@ -434,14 +461,14 @@
|
|||||||
"sb_selfpromo" = "Segment samopromocji";
|
"sb_selfpromo" = "Segment samopromocji";
|
||||||
"sb_music_offtopic" = "Segment poza tematem";
|
"sb_music_offtopic" = "Segment poza tematem";
|
||||||
"sb_preview" = "Segment zapowiedzi";
|
"sb_preview" = "Segment zapowiedzi";
|
||||||
"sb_poi_highlight" = "Segment najważniejszego momentu";
|
"sb_poi_highlight" = "Wyróżnione";
|
||||||
"sb_filler" = "Segment wypełniacza";
|
"sb_filler" = "Segment wypełniacza";
|
||||||
|
|
||||||
"SegmentDetected" = "Wykryto %@";
|
"SegmentDetected" = "%@ wykryto.\n%@";
|
||||||
"SegmentSkipped" = "%@ został pominięty";
|
"SegmentSkipped" = "%@ został pominięty";
|
||||||
"SkippedToSegment" = "Przeskoczono do %@";
|
"SkippedToSegment" = "Przeskoczono do %@";
|
||||||
"SkipSegment" = "Pomiń";
|
"SkipSegment" = "Czy chcesz pominąć ten segment?";
|
||||||
"SkipToSegment" = "Do najważniejszego momentu";
|
"SkipToSegment" = "Czy chcesz przeskoczyć do wyróżnionego miejsca?";
|
||||||
"Unskip" = "Cofnij pomijanie";
|
"Unskip" = "Cofnij pomijanie";
|
||||||
|
|
||||||
/* Developer section */
|
/* Developer section */
|
||||||
@@ -513,7 +540,7 @@
|
|||||||
"Disable" = "Wyłącz";
|
"Disable" = "Wyłącz";
|
||||||
"Disabled" = "Wyłączone";
|
"Disabled" = "Wyłączone";
|
||||||
"PlaybackSpeed" = "Prędkość odtwarzania";
|
"PlaybackSpeed" = "Prędkość odtwarzania";
|
||||||
"SpeedPreserved" = "Prędkość zachowana";
|
"SpeedPreserved" = "Prędkość zachowana na %@";
|
||||||
"ResetSpeed" = "Resetuj prędkość";
|
"ResetSpeed" = "Resetuj prędkość";
|
||||||
|
|
||||||
"Toast.Brightness" = "Jasność";
|
"Toast.Brightness" = "Jasność";
|
||||||
@@ -572,6 +599,22 @@
|
|||||||
"RetryLogin" = "Obejście aktywowane.\n\nSpróbuj ponownie.";
|
"RetryLogin" = "Obejście aktywowane.\n\nSpróbuj ponownie.";
|
||||||
"LoginInfo" = "Wymagane ponowne uruchomienie aplikacji po pomyślnym zalogowaniu się na konto Google";
|
"LoginInfo" = "Wymagane ponowne uruchomienie aplikacji po pomyślnym zalogowaniu się na konto Google";
|
||||||
|
|
||||||
|
"OpenLink" = "Otwórz link";
|
||||||
|
"LinkDetected" = "Wykryto link powiązany z YouTube. Czy chcesz go otworzyć w YouTube?";
|
||||||
|
|
||||||
|
"SbWhitelist" = "Biała lista";
|
||||||
|
"SbAddToWhitelist" = "Dodaj do białej listy";
|
||||||
|
"Sb.Whitelisted" = "Dodano do białej listy";
|
||||||
|
"SbRemoveFromWhitelist" = "Usuń z białej listy";
|
||||||
|
"Sb.Whitelist" = "Kanały na białej liście";
|
||||||
|
"Sb.Channels" = "Kanały";
|
||||||
|
"Sb.ChannelsHere" = "Tutaj wyświetlane są kanały z białej listy";
|
||||||
|
"SortType" = "Typ sortowania";
|
||||||
|
"Sb.Newest" = "Najnowsze najpierw";
|
||||||
|
"Sb.Oldest" = "Najstarsze najpierw";
|
||||||
|
"Sb.Alphabetical" = "Alfabetycznie (A-Z)";
|
||||||
|
"Sb.AlphabeticalRev" = "Odwrócone alfabetycznie (Z-A)";
|
||||||
|
|
||||||
"Welcome.Download" = "Pobieraj multimedia";
|
"Welcome.Download" = "Pobieraj multimedia";
|
||||||
"Welcome.DownloadDesc" = "Pobieraj ulubione treści, takie jak wideo, Shorts, audio czy zdjęcia profilowe. Kopiuj interesujące posty i komentarze lub zapisuj je jako obrazy";
|
"Welcome.DownloadDesc" = "Pobieraj ulubione treści, takie jak wideo, Shorts, audio czy zdjęcia profilowe. Kopiuj interesujące posty i komentarze lub zapisuj je jako obrazy";
|
||||||
"Welcome.Content" = "Dostosuj interfejs";
|
"Welcome.Content" = "Dostosuj interfejs";
|
||||||
@@ -590,3 +633,16 @@
|
|||||||
"Conflicts.CloseYT" = "Zamknij YouTube";
|
"Conflicts.CloseYT" = "Zamknij YouTube";
|
||||||
|
|
||||||
"DonationReminder" = "Twoje wsparcie pomaga uczynić YouTube Plus jeszcze lepszym.\n\nMożesz wesprzeć lub wybrać wyłączenie tych powiadomień w ustawieniach YouTube Plus. Dziękuję💜";
|
"DonationReminder" = "Twoje wsparcie pomaga uczynić YouTube Plus jeszcze lepszym.\n\nMożesz wesprzeć lub wybrać wyłączenie tych powiadomień w ustawieniach YouTube Plus. Dziękuję💜";
|
||||||
|
|
||||||
|
/* Old localizations (commented out for reference)
|
||||||
|
"TabIsHidden" = "Ukryta karta nie może być wybrana jako strona startowa";
|
||||||
|
"TabIsStartupTab" = "Karta wybrana jako strona startowa nie może być ukryta";
|
||||||
|
"PreserveSpeed" = "Zachowaj prędkość";
|
||||||
|
"PreserveSpeedDesc" = "Zachowuje dostosowaną prędkość po zakończeniu gestu.";
|
||||||
|
"sb_poi_highlight" = "Segment najważniejszego momentu";
|
||||||
|
"SegmentDetected" = "Wykryto %@";
|
||||||
|
"SegmentSkipped" = "%@ został pominięty";
|
||||||
|
"SkippedToSegment" = "Przeskoczono do %@";
|
||||||
|
"SkipSegment" = "Pomiń";
|
||||||
|
"SkipToSegment" = "Do najważniejszego momentu";
|
||||||
|
"SpeedPreserved" = "Prędkość zachowana";
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
"PostDownloadDesc" = "Выбранное действие будет выполняться по успешному окончанию загрузки видео.";
|
"PostDownloadDesc" = "Выбранное действие будет выполняться по успешному окончанию загрузки видео.";
|
||||||
"SaveToPhotos" = "Сохранить в «Фото»";
|
"SaveToPhotos" = "Сохранить в «Фото»";
|
||||||
"Share" = "Поделиться";
|
"Share" = "Поделиться";
|
||||||
|
"Copy" = "Скопировать";
|
||||||
"Ask" = "Спросить";
|
"Ask" = "Спросить";
|
||||||
"DownloadCompleted" = "Загрузка завершена";
|
"DownloadCompleted" = "Загрузка завершена";
|
||||||
|
|
||||||
@@ -91,13 +92,17 @@
|
|||||||
/* Player options */
|
/* Player options */
|
||||||
"Player" = "Настройки плеера";
|
"Player" = "Настройки плеера";
|
||||||
"PlaybackQualityOnWiFi" = "Качество по WiFi";
|
"PlaybackQualityOnWiFi" = "Качество по WiFi";
|
||||||
|
"PlaybackQualityOnWiFiDesc" = "Автоматически применяет выбранное качество при воспроизведении по Wi-Fi";
|
||||||
"PlaybackQualityOnCellular" = "Качество по мобильной сети";
|
"PlaybackQualityOnCellular" = "Качество по мобильной сети";
|
||||||
|
"PlaybackQualityOnCellularDesc" = "Автоматически применяет выбранное качество при воспроизведении по мобильному интернету";
|
||||||
|
|
||||||
"PreferredCaptions" = "Предпочитаемые субтитры";
|
"PreferredCaptions" = "Предпочитаемые субтитры";
|
||||||
"Original" = "Оригинальная";
|
"Original" = "Оригинальная";
|
||||||
"Custom" = "Выбрать вручную";
|
"Custom" = "Выбрать вручную";
|
||||||
"CustomAudioTrack" = "Язык звуковой дорожки";
|
"CustomAudioTrack" = "Язык звуковой дорожки";
|
||||||
|
"CustomAudioTrackDesc" = "Устанавливает выбранную звуковую дорожку в качестве предпочитаемой, если такая существует";
|
||||||
"CustomCaptions" = "Язык субтитров";
|
"CustomCaptions" = "Язык субтитров";
|
||||||
|
"CustomCaptionsDesc" = "Устанавливает выбранный язык субтитров в качестве предпочитаемых, если такие существуют";
|
||||||
"AutoGenCaps" = "Автоматические субтитры";
|
"AutoGenCaps" = "Автоматические субтитры";
|
||||||
"AutoGenCapsDesc" = "Если выбранные субтитры не найдены, YouTube Plus попытается выбрать либо перевод оригинальных субтитров, либо перевод автоматически сгенерированных субтитров.";
|
"AutoGenCapsDesc" = "Если выбранные субтитры не найдены, YouTube Plus попытается выбрать либо перевод оригинальных субтитров, либо перевод автоматически сгенерированных субтитров.";
|
||||||
|
|
||||||
@@ -126,8 +131,6 @@
|
|||||||
"ClassicQualityDesc" = "Возвращает классическое меню выбора качества в меню плеера.";
|
"ClassicQualityDesc" = "Возвращает классическое меню выбора качества в меню плеера.";
|
||||||
"ExtraSpeedOptions" = "Больше скоростей воспроизведения";
|
"ExtraSpeedOptions" = "Больше скоростей воспроизведения";
|
||||||
"ExtraSpeedOptionsDesc" = "Добавляет больше опций скорости воспроизведения в выпадающее меню плеера.";
|
"ExtraSpeedOptionsDesc" = "Добавляет больше опций скорости воспроизведения в выпадающее меню плеера.";
|
||||||
"RedProgressBar" = "Красный прогресс-бар";
|
|
||||||
"RedProgressBarDesc" = "Возвращает красный прогресс-бар вместо нового, серого цвета.";
|
|
||||||
"NoDarkBg" = "Не затемнять фон плеера";
|
"NoDarkBg" = "Не затемнять фон плеера";
|
||||||
"NoDarkBgDesc" = "Убирает затемнение экрана под кнопками управления плеером.";
|
"NoDarkBgDesc" = "Убирает затемнение экрана под кнопками управления плеером.";
|
||||||
"NoEndScreenCards" = "Скрыть рекомендации";
|
"NoEndScreenCards" = "Скрыть рекомендации";
|
||||||
@@ -138,6 +141,8 @@
|
|||||||
"NoFullscreenActionsDesc" = "Отключает панель действий, отображающуюся под прогресс-баром плеера.";
|
"NoFullscreenActionsDesc" = "Отключает панель действий, отображающуюся под прогресс-баром плеера.";
|
||||||
"PersistentProgressBar" = "Всегда отображать прогресс-бар";
|
"PersistentProgressBar" = "Всегда отображать прогресс-бар";
|
||||||
"PersistentProgressBarDesc" = "Всегда отображает прогресс-бар внутри плеера.";
|
"PersistentProgressBarDesc" = "Всегда отображает прогресс-бар внутри плеера.";
|
||||||
|
"RedProgressBar" = "Красный прогресс-бар";
|
||||||
|
"RedProgressBarDesc" = "Возвращает красный прогресс-бар вместо нового, серого цвета.";
|
||||||
"StockVolumeHUD" = "Системный уровень громкости";
|
"StockVolumeHUD" = "Системный уровень громкости";
|
||||||
"StockVolumeHUDDesc" = "Отображает системную шкалу громкости в полноэкранном режиме.";
|
"StockVolumeHUDDesc" = "Отображает системную шкалу громкости в полноэкранном режиме.";
|
||||||
"NoRelatedVids" = "Скрыть рекомендации в оверлее";
|
"NoRelatedVids" = "Скрыть рекомендации в оверлее";
|
||||||
@@ -182,6 +187,7 @@
|
|||||||
|
|
||||||
"Player.Actions" = "Поведение";
|
"Player.Actions" = "Поведение";
|
||||||
"DefaultPlaybackRate" = "Скорость воспроизведения по умолчанию";
|
"DefaultPlaybackRate" = "Скорость воспроизведения по умолчанию";
|
||||||
|
"DefaultPlaybackRateDesc" = "Переназначает скорость воспроизведения видео по умолчанию";
|
||||||
"BackgroundPlayback" = "Фоновое воспроизведение";
|
"BackgroundPlayback" = "Фоновое воспроизведение";
|
||||||
"BackgroundPlaybackDesc" = "Активирует фоновое воспроизведение.";
|
"BackgroundPlaybackDesc" = "Активирует фоновое воспроизведение.";
|
||||||
"Miniplayer" = "Разрешить миниплеер";
|
"Miniplayer" = "Разрешить миниплеер";
|
||||||
@@ -200,15 +206,20 @@
|
|||||||
"ExitFullscreenDesc" = "Выходит из полноэкранного режима по окончанию воспроизведения.";
|
"ExitFullscreenDesc" = "Выходит из полноэкранного режима по окончанию воспроизведения.";
|
||||||
|
|
||||||
"Player.Gestures" = "Жесты";
|
"Player.Gestures" = "Жесты";
|
||||||
|
"CompactToast" = "Компактный тост";
|
||||||
|
"CompactToastDesc" = "Отображает тост используемых в плеере жестов в компактном режиме";
|
||||||
"LeftSideGesture" = "Жест для левой части";
|
"LeftSideGesture" = "Жест для левой части";
|
||||||
|
"LeftSideGestureDesc" = "Регулирует выбранную настройку при вертикальном жесте (свайпе) по левой стороне экрана";
|
||||||
"RightSideGesture" = "Жест для правой части";
|
"RightSideGesture" = "Жест для правой части";
|
||||||
|
"RightSideGestureDesc" = "Регулирует выбранную настройку при вертикальном жесте (свайпе) по правой стороне экрана";
|
||||||
"ActivationAreaWidth" = "Ширина активации жестов";
|
"ActivationAreaWidth" = "Ширина активации жестов";
|
||||||
"ActivationAreaWidthDesc" = "Данное значение отвечает за зону распознавания жестов в пикселях для левой и правой части экрана.\n\nМаксимально допустимое значение - треть ширины экрана.\n\nНастройка данной опции полезна для избежания случайной активации при попытке свернуть или развернуть плеер.";
|
"ActivationAreaWidthDesc" = "Данное значение отвечает за зону распознавания жестов в пикселях для левой и правой части экрана.\n\nМаксимально допустимое значение - треть ширины экрана.\n\nНастройка данной опции полезна для избежания случайной активации при попытке свернуть или развернуть плеер.";
|
||||||
"HoldToSpeed" = "Ускорение долгим нажатием";
|
"HoldToSpeed" = "Ускорение долгим нажатием";
|
||||||
|
"HoldToSpeedDesc" = "Скорость воспроизведения при долгом нажатии на плеер";
|
||||||
"AdjustWithFinger" = "Регулировать скорость жестами";
|
"AdjustWithFinger" = "Регулировать скорость жестами";
|
||||||
"AdjustWithFingerDesc" = "Позволяет регулировать скорость зажатием и вертикальным движением пальца по окну плеера.";
|
"AdjustWithFingerDesc" = "Позволяет регулировать скорость зажатием и вертикальным движением пальца по окну плеера.";
|
||||||
"PreserveSpeed" = "Сохранить скорость воспроизведения";
|
"PreserveSpeed" = "Запоминать скорость";
|
||||||
"PreserveSpeedDesc" = "Не сбрасывает отрегулированную скорость воспроизведения после окончания жеста.";
|
"PreserveSpeedDesc" = "Сохраняет установленную скорость по окончанию жеста регулировки.";
|
||||||
"SeekAnywhere" = "Перемотка свайпами";
|
"SeekAnywhere" = "Перемотка свайпами";
|
||||||
"SeekAnywhereDesc" = "Позволяет управлять перемоткой воспроизведения свайпами влево и вправо.";
|
"SeekAnywhereDesc" = "Позволяет управлять перемоткой воспроизведения свайпами влево и вправо.";
|
||||||
"SeekMethod" = "Тип перемотки";
|
"SeekMethod" = "Тип перемотки";
|
||||||
@@ -317,17 +328,16 @@
|
|||||||
|
|
||||||
"ActiveTabs" = "Отображаемые вкладки";
|
"ActiveTabs" = "Отображаемые вкладки";
|
||||||
"InactiveTabs" = "Скрытые вкладки";
|
"InactiveTabs" = "Скрытые вкладки";
|
||||||
"HideLibraryFooter" = "Вкладку «Библиотека» можно скрыть и отобразить долгим нажатием по первой вкладке в панели вкладок.";
|
"HideLibraryFooter" = "Настройки вкладок также доступны при долгом нажатии на первую иконку панели вкладок.";
|
||||||
"Warning" = "Внимание";
|
"Warning" = "Внимание";
|
||||||
"TabIsHidden" = "Скрытая вкладка не может быть выбрана в качестве начальной страницы";
|
"AtLeastOneTab" = "Как минимум одна вкладка должна оставаться активной";
|
||||||
"TabIsStartupTab" = "Вкладка, выбранная в качестве начальной страницы, не может быть скрыта";
|
|
||||||
"TabsCountRestricted" = "Можно добавлять не более шести активных вкладок";
|
"TabsCountRestricted" = "Можно добавлять не более шести активных вкладок";
|
||||||
|
|
||||||
/* Interface options */
|
/* Interface options */
|
||||||
"Interface" = "Интерфейс";
|
"Interface" = "Интерфейс";
|
||||||
"OledTheme" = "Oled режим";
|
"OledTheme" = "OLED режим";
|
||||||
"OledThemeDesc" = "Заменяет темные цвета черным";
|
"OledThemeDesc" = "Заменяет темные цвета черным";
|
||||||
"OledKeyboard" = "Oled клавиатура";
|
"OledKeyboard" = "OLED клавиатура";
|
||||||
"OledKeyboardDesc" = "Применяет черную тему для темной клавиатуры";
|
"OledKeyboardDesc" = "Применяет черную тему для темной клавиатуры";
|
||||||
"NoSearchHistory" = "Скрыть историю поиска";
|
"NoSearchHistory" = "Скрыть историю поиска";
|
||||||
"NoSearchHistoryDesc" = "Визуально скрывает историю поиска и подсказок. Данная опция не отменяет трекинг вашей истории поиска.";
|
"NoSearchHistoryDesc" = "Визуально скрывает историю поиска и подсказок. Данная опция не отменяет трекинг вашей истории поиска.";
|
||||||
@@ -351,9 +361,13 @@
|
|||||||
"MiniplayerStyleDesc" = "Переключение на/с плавающего режима требует перезапуска приложения.";
|
"MiniplayerStyleDesc" = "Переключение на/с плавающего режима требует перезапуска приложения.";
|
||||||
"Floating" = "Плавающий";
|
"Floating" = "Плавающий";
|
||||||
|
|
||||||
"ContextMenu" = "Контекстное меню";
|
"Other" = "Прочее";
|
||||||
"NoShareChunk" = "Меню «Поделиться» без идентификаторов";
|
"NoShareChunk" = "Меню «Поделиться» без идентификаторов";
|
||||||
"NoShareChunkDesc" = "Подчищает следы типа «si=идентификатор» из ссылок. Хорошая альтернатива опции «Системное меню Поделиться», так как YouTube продолжает улучшать свое меню.";
|
"NoShareChunkDesc" = "Подчищает следы типа «si=идентификатор» из ссылок. Хорошая альтернатива опции «Системное меню Поделиться», так как YouTube продолжает улучшать свое меню.";
|
||||||
|
"AutoCheckLinks" = "Автопроверка буфера обмена";
|
||||||
|
"AutoCheckLinksDesc" = "Проверять буфер обмена на наличие ссылок YouTube при каждом запуске приложения.\nДля корректной работы перейдите в Настройки iOS → YouTube → Вставка из других приложений и выберите «Разрешить»";
|
||||||
|
|
||||||
|
"ContextMenu" = "Контекстное меню";
|
||||||
"NativeShare" = "Системное меню «Поделиться»";
|
"NativeShare" = "Системное меню «Поделиться»";
|
||||||
"NativeShareDesc" = "Выводит системное меню «Поделиться» при отправке контента.";
|
"NativeShareDesc" = "Выводит системное меню «Поделиться» при отправке контента.";
|
||||||
"RemoveCommentGuidelines" = "Убрать «Правила сообщества»";
|
"RemoveCommentGuidelines" = "Убрать «Правила сообщества»";
|
||||||
@@ -374,10 +388,16 @@
|
|||||||
"RemoveDontRecommendMenuDesc" = "Убирает опцию «Не рекомендовать видео с этого канала» из меню видео.";
|
"RemoveDontRecommendMenuDesc" = "Убирает опцию «Не рекомендовать видео с этого канала» из меню видео.";
|
||||||
"RemoveReportMenu" = "Убрать «Пожаловаться»";
|
"RemoveReportMenu" = "Убрать «Пожаловаться»";
|
||||||
"RemoveReportMenuDesc" = "Убирает опцию «Пожаловаться» из меню видео.";
|
"RemoveReportMenuDesc" = "Убирает опцию «Пожаловаться» из меню видео.";
|
||||||
|
"RemoveRemixMenu" = "Убрать «Создать ремикс»";
|
||||||
|
"RemoveRemixMenuDesc" = "Убирает опцию «Создать ремикс» из меню видео.";
|
||||||
|
"RemoveYTMMenu" = "Убрать «Открыть в YouTube Music»";
|
||||||
|
"RemoveYTMMenuDesc" = "Убирает опцию «Открыть в YouTube Music» из меню видео.";
|
||||||
|
|
||||||
/* SponsorBlock settings */
|
/* SponsorBlock settings */
|
||||||
"EnableSponsorBlock" = "Активировать";
|
"EnableSponsorBlock" = "Активировать";
|
||||||
"EnableSponsorBlockDesc" = "Активирует расширение SponsorBlock";
|
"EnableSponsorBlockDesc" = "Активирует расширение SponsorBlock";
|
||||||
|
"SbPlayerButton" = "Отображать кнопку в плеере";
|
||||||
|
"SbPlayerButtonDesc" = "Добавляет кнопку SponsorBlock в элементы управления плеером.";
|
||||||
"ShowNotifications" = "Отображать уведомления";
|
"ShowNotifications" = "Отображать уведомления";
|
||||||
"ShowNotificationsDesc" = "Показывает уведомления для сегментов, настроенных на автоматическую перемотку. Для сегментов, требующих ручную перемотку, уведомления отображаются всегда.";
|
"ShowNotificationsDesc" = "Показывает уведомления для сегментов, настроенных на автоматическую перемотку. Для сегментов, требующих ручную перемотку, уведомления отображаются всегда.";
|
||||||
"SegmentsInFeedPlayer" = "Сегменты в ленте";
|
"SegmentsInFeedPlayer" = "Сегменты в ленте";
|
||||||
@@ -427,6 +447,13 @@
|
|||||||
"Sb.Ask" = "Спрашивать";
|
"Sb.Ask" = "Спрашивать";
|
||||||
"Sb.Display" = "Отображать в плеере";
|
"Sb.Display" = "Отображать в плеере";
|
||||||
|
|
||||||
|
"PublicUserID" = "Публичный UserID";
|
||||||
|
"PrivateUserID" = "Приватный UserID";
|
||||||
|
"TapToReveal" = "Нажмите, чтобы просмотреть";
|
||||||
|
"Save" = "Сохранить";
|
||||||
|
"Error.SbPublicID" = "Публичный UserID должен содержать ровно 64 символа";
|
||||||
|
"Error.SbPrivateID" = "Приватный (локальный) UserID должен содержать не менее 32 символов";
|
||||||
|
|
||||||
"sb_sponsor" = "спонсорский сегмент";
|
"sb_sponsor" = "спонсорский сегмент";
|
||||||
"sb_intro" = "сегмент со вступлением";
|
"sb_intro" = "сегмент со вступлением";
|
||||||
"sb_outro" = "сегмент с титрами/заставкой";
|
"sb_outro" = "сегмент с титрами/заставкой";
|
||||||
@@ -434,14 +461,14 @@
|
|||||||
"sb_selfpromo" = "саморекламой";
|
"sb_selfpromo" = "саморекламой";
|
||||||
"sb_music_offtopic" = "сегмент с оффтопом";
|
"sb_music_offtopic" = "сегмент с оффтопом";
|
||||||
"sb_preview" = "превью сегмент";
|
"sb_preview" = "превью сегмент";
|
||||||
"sb_poi_highlight" = "важный момент";
|
"sb_poi_highlight" = "важный сегмент";
|
||||||
"sb_filler" = "сегмент с шутками";
|
"sb_filler" = "сегмент с шутками";
|
||||||
|
|
||||||
"SegmentDetected" = "Обнаружен %@";
|
"SegmentDetected" = "Обнаружен %@.\n%@";
|
||||||
"SegmentSkipped" = "Перемотан %@";
|
"SegmentSkipped" = "Перемотан %@";
|
||||||
"SkippedToSegment" = "Перемотано на %@";
|
"SkippedToSegment" = "Сейчас воспроизводится %@";
|
||||||
"SkipSegment" = "Перемотать";
|
"SkipSegment" = "Перемотать данный сегмент?";
|
||||||
"SkipToSegment" = "К моменту";
|
"SkipToSegment" = "Перейти к данному сегменту?";
|
||||||
"Unskip" = "Отменить";
|
"Unskip" = "Отменить";
|
||||||
|
|
||||||
/* Developer section */
|
/* Developer section */
|
||||||
@@ -513,7 +540,7 @@
|
|||||||
"Disable" = "Отключено";
|
"Disable" = "Отключено";
|
||||||
"Disabled" = "Отключить";
|
"Disabled" = "Отключить";
|
||||||
"PlaybackSpeed" = "Скорость воспроизведения";
|
"PlaybackSpeed" = "Скорость воспроизведения";
|
||||||
"SpeedPreserved" = "Скорость сохранена";
|
"SpeedPreserved" = "Сохраненная скорость воспроизведения: %@";
|
||||||
"ResetSpeed" = "Сбросить";
|
"ResetSpeed" = "Сбросить";
|
||||||
|
|
||||||
"Toast.Brightness" = "Яркость";
|
"Toast.Brightness" = "Яркость";
|
||||||
@@ -567,11 +594,27 @@
|
|||||||
"DownloadingVideo" = "Загрузка видео";
|
"DownloadingVideo" = "Загрузка видео";
|
||||||
"DownloadingAudio" = "Загрузка аудио";
|
"DownloadingAudio" = "Загрузка аудио";
|
||||||
"ParsingCaptions" = "Загрузка субтитров";
|
"ParsingCaptions" = "Загрузка субтитров";
|
||||||
"ParsingTranscript" = "Геренация транскрипта";
|
"ParsingTranscript" = "Генерация транскрипта";
|
||||||
"Converting" = "Конвертация";
|
"Converting" = "Конвертация";
|
||||||
"RetryLogin" = "Авторизация активирована.\n\nПопробуйте заново.";
|
"RetryLogin" = "Авторизация активирована.\n\nПопробуйте заново.";
|
||||||
"LoginInfo" = "Необходимо перезапустить приложение после успешной авторизации в аккаунт Google";
|
"LoginInfo" = "Необходимо перезапустить приложение после успешной авторизации в аккаунт Google";
|
||||||
|
|
||||||
|
"OpenLink" = "Открыть ссылку";
|
||||||
|
"LinkDetected" = "Обнаружена ссылка, связанная с YouTube. Открыть её в YouTube?";
|
||||||
|
|
||||||
|
"SbWhitelist" = "Белый список";
|
||||||
|
"SbAddToWhitelist" = "Добавить в белый список";
|
||||||
|
"Sb.Whitelisted" = "Добавлено в белый список";
|
||||||
|
"SbRemoveFromWhitelist" = "Удалить из белого списка";
|
||||||
|
"Sb.Whitelist" = "Каналы из белого списка";
|
||||||
|
"Sb.Channels" = "Каналы";
|
||||||
|
"Sb.ChannelsHere" = "Здесь будут отображаться каналы";
|
||||||
|
"SortType" = "Тип сортировки";
|
||||||
|
"Sb.Newest" = "Сначала новые";
|
||||||
|
"Sb.Oldest" = "Сначала старые";
|
||||||
|
"Sb.Alphabetical" = "По возрастанию (A–Я)";
|
||||||
|
"Sb.AlphabeticalRev" = "По убыванию (Я–А)";
|
||||||
|
|
||||||
"Welcome.Download" = "Загрузка медиа";
|
"Welcome.Download" = "Загрузка медиа";
|
||||||
"Welcome.DownloadDesc" = "Скачивайте понравившийся контент, будь то Видео, Shorts, Аудио либо Фото профиля. Копируйте интересные посты и комментарии либо же сохраняйте их в качестве изображений";
|
"Welcome.DownloadDesc" = "Скачивайте понравившийся контент, будь то Видео, Shorts, Аудио либо Фото профиля. Копируйте интересные посты и комментарии либо же сохраняйте их в качестве изображений";
|
||||||
"Welcome.Content" = "Настраиваемый интерфейс";
|
"Welcome.Content" = "Настраиваемый интерфейс";
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
"PostDownloadDesc" = "Seçilen eylem, video indirme işlemi başarılı bir şekilde tamamlandığında gerçekleştirilecektir.";
|
"PostDownloadDesc" = "Seçilen eylem, video indirme işlemi başarılı bir şekilde tamamlandığında gerçekleştirilecektir.";
|
||||||
"SaveToPhotos" = "Fotoğraflara kaydet";
|
"SaveToPhotos" = "Fotoğraflara kaydet";
|
||||||
"Share" = "Paylaş";
|
"Share" = "Paylaş";
|
||||||
|
"Copy" = "Kopyala";
|
||||||
"Ask" = "Sor";
|
"Ask" = "Sor";
|
||||||
"DownloadCompleted" = "İndirme tamamlandı";
|
"DownloadCompleted" = "İndirme tamamlandı";
|
||||||
|
|
||||||
@@ -91,13 +92,17 @@
|
|||||||
/* Player options */
|
/* Player options */
|
||||||
"Player" = "Oynatıcı";
|
"Player" = "Oynatıcı";
|
||||||
"PlaybackQualityOnWiFi" = "WiFi'da oynatma kalitesi";
|
"PlaybackQualityOnWiFi" = "WiFi'da oynatma kalitesi";
|
||||||
|
"PlaybackQualityOnWiFiDesc" = "Automatically applies the selected quality when streaming over Wi-Fi";
|
||||||
"PlaybackQualityOnCellular" = "Hücresel bağlantıda oynatma kalitesi";
|
"PlaybackQualityOnCellular" = "Hücresel bağlantıda oynatma kalitesi";
|
||||||
|
"PlaybackQualityOnCellularDesc" = "Automatically applies the selected quality when streaming over mobile data";
|
||||||
|
|
||||||
"PreferredCaptions" = "Tercih edilen altyazılar";
|
"PreferredCaptions" = "Tercih edilen altyazılar";
|
||||||
"Original" = "Orijinal";
|
"Original" = "Orijinal";
|
||||||
"Custom" = "Elle seç";
|
"Custom" = "Elle seç";
|
||||||
"CustomAudioTrack" = "Seçilen ses parçası";
|
"CustomAudioTrack" = "Seçilen ses parçası";
|
||||||
|
"CustomAudioTrackDesc" = "Specifies the preferred audio track language to use for playback, if available";
|
||||||
"CustomCaptions" = "Seçilen altyazılar";
|
"CustomCaptions" = "Seçilen altyazılar";
|
||||||
|
"CustomCaptionsDesc" = "Specifies the preferred captions language to display, if available";
|
||||||
"AutoGenCaps" = "Otomatik oluşturulan altyazılar";
|
"AutoGenCaps" = "Otomatik oluşturulan altyazılar";
|
||||||
"AutoGenCapsDesc" = "Seçilen altyazılar bulunamazsa, YouTube Plus orijinal altyazıların çevirisini veya otomatik oluşturulan altyazıların çevirisini seçmeye çalışacaktır.";
|
"AutoGenCapsDesc" = "Seçilen altyazılar bulunamazsa, YouTube Plus orijinal altyazıların çevirisini veya otomatik oluşturulan altyazıların çevirisini seçmeye çalışacaktır.";
|
||||||
|
|
||||||
@@ -182,6 +187,7 @@
|
|||||||
|
|
||||||
"Player.Actions" = "Eylemler";
|
"Player.Actions" = "Eylemler";
|
||||||
"DefaultPlaybackRate" = "Varsayılan oynatma hızı";
|
"DefaultPlaybackRate" = "Varsayılan oynatma hızı";
|
||||||
|
"DefaultPlaybackRateDesc" = "Overrides the default playback speed";
|
||||||
"BackgroundPlayback" = "Arka planda oynatma";
|
"BackgroundPlayback" = "Arka planda oynatma";
|
||||||
"BackgroundPlaybackDesc" = "Arka planda oynatmayı etkinleştirir.";
|
"BackgroundPlaybackDesc" = "Arka planda oynatmayı etkinleştirir.";
|
||||||
"Miniplayer" = "Mini oynatıcıyı etkinleştir";
|
"Miniplayer" = "Mini oynatıcıyı etkinleştir";
|
||||||
@@ -200,15 +206,20 @@
|
|||||||
"ExitFullscreenDesc" = "Video oynatımı sonunda tam ekran modundan çıkar.";
|
"ExitFullscreenDesc" = "Video oynatımı sonunda tam ekran modundan çıkar.";
|
||||||
|
|
||||||
"Player.Gestures" = "Hareketle kontroller";
|
"Player.Gestures" = "Hareketle kontroller";
|
||||||
|
"CompactToast" = "Compact toast";
|
||||||
|
"CompactToastDesc" = "Displays a compact-style toast for player gestures";
|
||||||
"LeftSideGesture" = "Sol taraf için hareket";
|
"LeftSideGesture" = "Sol taraf için hareket";
|
||||||
|
"LeftSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the left side of the screen";
|
||||||
"RightSideGesture" = "Sağ taraf için hareket";
|
"RightSideGesture" = "Sağ taraf için hareket";
|
||||||
|
"RightSideGestureDesc" = "Adjusts the selected setting by swiping vertically on the right side of the screen";
|
||||||
"ActivationAreaWidth" = "Tanıma bölgesinin genişliği";
|
"ActivationAreaWidth" = "Tanıma bölgesinin genişliği";
|
||||||
"ActivationAreaWidthDesc" = "Bu değer, ekranın sol ve sağ taraflarındaki jest tanıma bölgesinin genişliğini piksel cinsinden belirler.\n\nİzin verilen maksimum değer, ekran genişliğinin üçte biridir.\n\nBunun ayarlanması, oynatıcıyı küçültmeye veya genişletmeye çalışırken yanlışlıkla etkinleştirmeyi önlemek için yararlıdır.";
|
"ActivationAreaWidthDesc" = "Bu değer, ekranın sol ve sağ taraflarındaki jest tanıma bölgesinin genişliğini piksel cinsinden belirler.\n\nİzin verilen maksimum değer, ekran genişliğinin üçte biridir.\n\nBunun ayarlanması, oynatıcıyı küçültmeye veya genişletmeye çalışırken yanlışlıkla etkinleştirmeyi önlemek için yararlıdır.";
|
||||||
"HoldToSpeed" = "Hızlandırmak için basılı tut";
|
"HoldToSpeed" = "Hızlandırmak için basılı tut";
|
||||||
|
"HoldToSpeedDesc" = "Sets the playback speed triggered by a long press on the player";
|
||||||
"AdjustWithFinger" = "Hareketlerle hız ayarla";
|
"AdjustWithFinger" = "Hareketlerle hız ayarla";
|
||||||
"AdjustWithFingerDesc" = "Oynatıcıda uzun süre basılı tutarak ve parmağınızı yukarı ve aşağı hareket ettirerek oynatma hızını ayarlamanıza olanak tanır";
|
"AdjustWithFingerDesc" = "Oynatıcıda uzun süre basılı tutarak ve parmağınızı yukarı ve aşağı hareket ettirerek oynatma hızını ayarlamanıza olanak tanır";
|
||||||
"PreserveSpeed" = "Hızı koru";
|
"PreserveSpeed" = "Lock speed";
|
||||||
"PreserveSpeedDesc" = "Hareket tamamlandıktan sonra ayarlanan hızı korur";
|
"PreserveSpeedDesc" = "Locks at adjusted speed after gesture completion.";
|
||||||
"SeekAnywhere" = "Kaydırarak sarma";
|
"SeekAnywhere" = "Kaydırarak sarma";
|
||||||
"SeekAnywhereDesc" = "Oynatmayı, parmağınızı sola ve sağa kaydırarak sarmanıza olanak tanır.";
|
"SeekAnywhereDesc" = "Oynatmayı, parmağınızı sola ve sağa kaydırarak sarmanıza olanak tanır.";
|
||||||
"SeekMethod" = "Sarma yöntemi";
|
"SeekMethod" = "Sarma yöntemi";
|
||||||
@@ -296,6 +307,7 @@
|
|||||||
"HideShortsSource" = "No source link button";
|
"HideShortsSource" = "No source link button";
|
||||||
"HideShortsSourceDesc" = "Removes the button that navigates to the full video or another Short video.";
|
"HideShortsSourceDesc" = "Removes the button that navigates to the full video or another Short video.";
|
||||||
"HideShortsAudio" = "No audio indicator";
|
"HideShortsAudio" = "No audio indicator";
|
||||||
|
"HideShortsAudioDesc" = "Removes the line indicating the audio used in the Shorts.";
|
||||||
|
|
||||||
/* Tab bar options */
|
/* Tab bar options */
|
||||||
"Tabbar" = "Sekme çubuğu";
|
"Tabbar" = "Sekme çubuğu";
|
||||||
@@ -316,18 +328,17 @@
|
|||||||
|
|
||||||
"ActiveTabs" = "Aktif sekmeler";
|
"ActiveTabs" = "Aktif sekmeler";
|
||||||
"InactiveTabs" = "Pasif sekmeler";
|
"InactiveTabs" = "Pasif sekmeler";
|
||||||
"HideLibraryFooter" = "Kütüphane sekmesi, sekme çubuğundaki ilk sekmeye uzun basılarak gizlenebilir veya gösterilebilir.";
|
"HideLibraryFooter" = "Tab settings are also accessible by long-pressing the first tab in the tab bar.";
|
||||||
"Warning" = "Uyarı";
|
"Warning" = "Uyarı";
|
||||||
"TabIsHidden" = "Gizli sekme başlangıç sayfası olarak seçilemez";
|
"AtLeastOneTab" = "At least one tab must remain active";
|
||||||
"TabIsStartupTab" = "Başlangıç sayfası olarak seçilen sekme gizlenemez";
|
|
||||||
"TabsCountRestricted" = "En fazla altı sekme ekleyebilirsiniz";
|
"TabsCountRestricted" = "En fazla altı sekme ekleyebilirsiniz";
|
||||||
|
|
||||||
/* Interface options */
|
/* Interface options */
|
||||||
"Interface" = "Arayüz";
|
"Interface" = "Arayüz";
|
||||||
"OledTheme" = "Oled teması";
|
"OledTheme" = "OLED teması";
|
||||||
"OledThemeDesc" = "Tüm koyu renkleri siyaha çevirir";
|
"OledThemeDesc" = "Tüm koyu renkleri siyaha çevirir";
|
||||||
"OledKeyboard" = "Oled klavye";
|
"OledKeyboard" = "OLED klavye";
|
||||||
"OledKeyboardDesc" = "Koyu klavye için oled temayı uygular";
|
"OledKeyboardDesc" = "Koyu klavye için OLED temayı uygular";
|
||||||
"NoSearchHistory" = "Arama geçmişini gizle";
|
"NoSearchHistory" = "Arama geçmişini gizle";
|
||||||
"NoSearchHistoryDesc" = "Arama geçmişini ve önerileri görsel olarak gizler. Not: Arama geçmişiniz diğer YouTube istemcilerinizde hala erişilebilir olacaktır.";
|
"NoSearchHistoryDesc" = "Arama geçmişini ve önerileri görsel olarak gizler. Not: Arama geçmişiniz diğer YouTube istemcilerinizde hala erişilebilir olacaktır.";
|
||||||
"StickSortComments" = "Yorum başlığını sabitle";
|
"StickSortComments" = "Yorum başlığını sabitle";
|
||||||
@@ -350,9 +361,13 @@
|
|||||||
"MiniplayerStyleDesc" = "Yüzen stile geçmek/çıkmak için uygulamanın yeniden başlatılması gerekir.";
|
"MiniplayerStyleDesc" = "Yüzen stile geçmek/çıkmak için uygulamanın yeniden başlatılması gerekir.";
|
||||||
"Floating" = "Yüzen";
|
"Floating" = "Yüzen";
|
||||||
|
|
||||||
"ContextMenu" = "Bağlam menüsü";
|
"Other" = "Other";
|
||||||
"NoShareChunk" = "Paylaşım tanımlayıcısını kaldır";
|
"NoShareChunk" = "Paylaşım tanımlayıcısını kaldır";
|
||||||
"NoShareChunkDesc" = "Paylaşılacak bağlantılardan \"si=identifier\" parametresini kaldırır. YouTube, paylaşım menüsünü geliştirmeye devam ettiği sebebiyle, \"Yerel paylaşım sayfası\" seçeneğine iyi bir alternatiftir.";
|
"NoShareChunkDesc" = "Paylaşılacak bağlantılardan \"si=identifier\" parametresini kaldırır. YouTube, paylaşım menüsünü geliştirmeye devam ettiği sebebiyle, \"Yerel paylaşım sayfası\" seçeneğine iyi bir alternatiftir.";
|
||||||
|
"AutoCheckLinks" = "Auto-check clipboard";
|
||||||
|
"AutoCheckLinksDesc" = "Check clipboard for YouTube-related links each time the app is opened.\nFor proper functionality, go to iOS Settings → YouTube → Paste from other apps and select \"Allow\"";
|
||||||
|
|
||||||
|
"ContextMenu" = "Bağlam menüsü";
|
||||||
"NativeShare" = "Yerel paylaşım sayfası";
|
"NativeShare" = "Yerel paylaşım sayfası";
|
||||||
"NativeShareDesc" = "Medya paylaşmak için sistem paylaşım sayfasını kullanır";
|
"NativeShareDesc" = "Medya paylaşmak için sistem paylaşım sayfasını kullanır";
|
||||||
"RemoveCommentGuidelines" = "Yönergeleri kaldır";
|
"RemoveCommentGuidelines" = "Yönergeleri kaldır";
|
||||||
@@ -373,10 +388,16 @@
|
|||||||
"RemoveDontRecommendMenuDesc" = "Menüden \"Kanalı önerme\" seçeneğini kaldırır.";
|
"RemoveDontRecommendMenuDesc" = "Menüden \"Kanalı önerme\" seçeneğini kaldırır.";
|
||||||
"RemoveReportMenu" = "\"Bildir\"i kaldır";
|
"RemoveReportMenu" = "\"Bildir\"i kaldır";
|
||||||
"RemoveReportMenuDesc" = "Menüden \"Bildir\" seçeneğini kaldırır.";
|
"RemoveReportMenuDesc" = "Menüden \"Bildir\" seçeneğini kaldırır.";
|
||||||
|
"RemoveRemixMenu" = "Remove \"Remix\"";
|
||||||
|
"RemoveRemixMenuDesc" = "Removes \"Remix\" option from menu.";
|
||||||
|
"RemoveYTMMenu" = "Remove \"YouTube Music\"";
|
||||||
|
"RemoveYTMMenuDesc" = "Removes \"Listen with YouTube Music\" option from menu.";
|
||||||
|
|
||||||
/* SponsorBlock settings */
|
/* SponsorBlock settings */
|
||||||
"EnableSponsorBlock" = "Etkinleştir";
|
"EnableSponsorBlock" = "Etkinleştir";
|
||||||
"EnableSponsorBlockDesc" = "SponsorBlock eklentisini etkinleştirir.";
|
"EnableSponsorBlockDesc" = "SponsorBlock eklentisini etkinleştirir.";
|
||||||
|
"SbPlayerButton" = "Display button in overlay";
|
||||||
|
"SbPlayerButtonDesc" = "Adds SponsorBlock button in players overlay.";
|
||||||
"ShowNotifications" = "Bildirimleri göster";
|
"ShowNotifications" = "Bildirimleri göster";
|
||||||
"ShowNotificationsDesc" = "Otomatik olarak atlanan kısımlar için bildirimler gösterir. Manuel olarak atlama gerektiren kısımlar için bildirimler her zaman görüntülenir.";
|
"ShowNotificationsDesc" = "Otomatik olarak atlanan kısımlar için bildirimler gösterir. Manuel olarak atlama gerektiren kısımlar için bildirimler her zaman görüntülenir.";
|
||||||
"SegmentsInFeedPlayer" = "Akışta göster";
|
"SegmentsInFeedPlayer" = "Akışta göster";
|
||||||
@@ -426,6 +447,13 @@
|
|||||||
"Sb.Ask" = "Sor";
|
"Sb.Ask" = "Sor";
|
||||||
"Sb.Display" = "Oynatıcıda göster";
|
"Sb.Display" = "Oynatıcıda göster";
|
||||||
|
|
||||||
|
"PublicUserID" = "Public UserID";
|
||||||
|
"PrivateUserID" = "Private UserID";
|
||||||
|
"TapToReveal" = "Tap to reveal";
|
||||||
|
"Save" = "Save";
|
||||||
|
"Error.SbPublicID" = "The public user ID must contain exactly 64 characters";
|
||||||
|
"Error.SbPrivateID" = "The private (local) user ID must contain at least 32 characters";
|
||||||
|
|
||||||
"sb_sponsor" = "Sponsor kısmı";
|
"sb_sponsor" = "Sponsor kısmı";
|
||||||
"sb_intro" = "Giriş kısmı";
|
"sb_intro" = "Giriş kısmı";
|
||||||
"sb_outro" = "Bitiş kartları kısmı";
|
"sb_outro" = "Bitiş kartları kısmı";
|
||||||
@@ -433,14 +461,14 @@
|
|||||||
"sb_selfpromo" = "Kendini reklamlama kısmı";
|
"sb_selfpromo" = "Kendini reklamlama kısmı";
|
||||||
"sb_music_offtopic" = "Müzik dışı kısmı";
|
"sb_music_offtopic" = "Müzik dışı kısmı";
|
||||||
"sb_preview" = "Önizleme kısmı";
|
"sb_preview" = "Önizleme kısmı";
|
||||||
"sb_poi_highlight" = "Öne çıkan nokta";
|
"sb_poi_highlight" = "Highlight";
|
||||||
"sb_filler" = "Doldurma/Şaka kısmı";
|
"sb_filler" = "Doldurma/Şaka kısmı";
|
||||||
|
|
||||||
"SegmentDetected" = "%@ bulundu";
|
"SegmentDetected" = "%@ detected.\n%@";
|
||||||
"SegmentSkipped" = "%@ atlandı";
|
"SegmentSkipped" = "%@ has been skipped";
|
||||||
"SkippedToSegment" = "%@na atlandı";
|
"SkippedToSegment" = "Jumped to %@";
|
||||||
"SkipSegment" = "Atla";
|
"SkipSegment" = "Would you like to skip the segment?";
|
||||||
"SkipToSegment" = "Göster";
|
"SkipToSegment" = "Would you like to jump to the highlight?";
|
||||||
"Unskip" = "Geri atla";
|
"Unskip" = "Geri atla";
|
||||||
|
|
||||||
/* Developer section */
|
/* Developer section */
|
||||||
@@ -512,7 +540,7 @@
|
|||||||
"Disable" = "Devre dışı bırak";
|
"Disable" = "Devre dışı bırak";
|
||||||
"Disabled" = "Devre dışı";
|
"Disabled" = "Devre dışı";
|
||||||
"PlaybackSpeed" = "Oynatma Hızı";
|
"PlaybackSpeed" = "Oynatma Hızı";
|
||||||
"SpeedPreserved" = "Hız korundu";
|
"SpeedPreserved" = "Speed locked at %@";
|
||||||
"ResetSpeed" = "Sıfırla";
|
"ResetSpeed" = "Sıfırla";
|
||||||
|
|
||||||
"Toast.Brightness" = "Parlaklık";
|
"Toast.Brightness" = "Parlaklık";
|
||||||
@@ -571,6 +599,22 @@
|
|||||||
"RetryLogin" = "Geçici çözüm etkinleştirildi.\n\nLütfen tekrar deneyin.";
|
"RetryLogin" = "Geçici çözüm etkinleştirildi.\n\nLütfen tekrar deneyin.";
|
||||||
"LoginInfo" = "Google hesabınıza başarılı bir şekilde giriş yaptıktan sonra uygulama yeniden başlatılmalıdır";
|
"LoginInfo" = "Google hesabınıza başarılı bir şekilde giriş yaptıktan sonra uygulama yeniden başlatılmalıdır";
|
||||||
|
|
||||||
|
"OpenLink" = "Open link";
|
||||||
|
"LinkDetected" = "A YouTube-related link was detected. Would you like to open it in YouTube?";
|
||||||
|
|
||||||
|
"SbWhitelist" = "Whitelist";
|
||||||
|
"SbAddToWhitelist" = "Add to the whitelist";
|
||||||
|
"Sb.Whitelisted" = "Added to the whitelist";
|
||||||
|
"SbRemoveFromWhitelist" = "Remove from the whitelist";
|
||||||
|
"Sb.Whitelist" = "Whitelisted channels";
|
||||||
|
"Sb.Channels" = "Channels";
|
||||||
|
"Sb.ChannelsHere" = "Whitelisted channels appear here";
|
||||||
|
"SortType" = "Sort type";
|
||||||
|
"Sb.Newest" = "Newest first";
|
||||||
|
"Sb.Oldest" = "Oldest first";
|
||||||
|
"Sb.Alphabetical" = "Alphabetical (A-Z)";
|
||||||
|
"Sb.AlphabeticalRev" = "Reverse (Z-A)";
|
||||||
|
|
||||||
"Welcome.Download" = "Medya İndir";
|
"Welcome.Download" = "Medya İndir";
|
||||||
"Welcome.DownloadDesc" = "En sevdiğiniz içerikleri indirin, ister Videolar, Shorts, Sesler, ister Profil fotoğrafları olsun. İlginç gönderileri ve yorumları kopyalayın veya görüntü olarak kaydedin";
|
"Welcome.DownloadDesc" = "En sevdiğiniz içerikleri indirin, ister Videolar, Shorts, Sesler, ister Profil fotoğrafları olsun. İlginç gönderileri ve yorumları kopyalayın veya görüntü olarak kaydedin";
|
||||||
"Welcome.Content" = "Arayüzü Ayarla";
|
"Welcome.Content" = "Arayüzü Ayarla";
|
||||||
@@ -588,4 +632,8 @@
|
|||||||
"Conflicts.AcceptRisks" = "Tüm Riskleri Kabul Ediyorum";
|
"Conflicts.AcceptRisks" = "Tüm Riskleri Kabul Ediyorum";
|
||||||
"Conflicts.CloseYT" = "YouTube'u Kapat";
|
"Conflicts.CloseYT" = "YouTube'u Kapat";
|
||||||
|
|
||||||
"DonationReminder" = "Desteğiniz, YouTube Plus'ı daha da iyi hale getirmeme yardımcı oluyor.\n\nDoğrudan katkıda bulunabilir veya bu bildirimleri YouTube Plus ayarlarında devre dışı bırakabilirsiniz. Teşekkürler💜";
|
"DonationReminder" = "Desteğiniz, YouTube Plus'ı daha da iyi hale getirmeme yardımcı oluyor.\n\nDoğrudan katkıda bulunabilir veya bu bildirimleri YouTube Plus ayarlarında devre dışı bırakabilirsiniz. Teşekkürler💜";
|
||||||
|
|
||||||
|
/* Old localizations (commented out for reference)
|
||||||
|
"TabIsHidden" = "Gizli sekme başlangıç sayfası olarak seçilemez";
|
||||||
|
"TabIsStartupTab" = "Başlangıç sayfası olarak seçilen sekme gizlenemez";
|
||||||
File diff suppressed because it is too large
Load Diff
+650
-592
File diff suppressed because it is too large
Load Diff
+650
-592
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user