Merge remote-tracking branch 'upstream/master' into Automatic_Reader_Background

This commit is contained in:
Jay 2019-04-13 09:56:19 -07:00
commit 83b684c37d
36 changed files with 1152 additions and 2774 deletions

View File

@ -38,8 +38,8 @@ android {
minSdkVersion 16
targetSdkVersion 27
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
versionCode 40
versionName "0.8.2"
versionCode 41
versionName "0.8.4"
buildConfigField "String", "COMMIT_COUNT", "\"${getCommitCount()}\""
buildConfigField "String", "COMMIT_SHA", "\"${getGitSha()}\""
@ -48,6 +48,8 @@ android {
vectorDrawables.useSupportLibrary = true
multiDexEnabled true
ndk {
abiFilters "armeabi-v7a", "arm64-v8a", "x86"
}
@ -57,13 +59,6 @@ android {
debug {
versionNameSuffix "-${getCommitCount()}"
applicationIdSuffix ".debug"
multiDexEnabled true
}
release {
minifyEnabled true
shrinkResources true
multiDexEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}

View File

@ -23,7 +23,7 @@
android:theme="@style/Theme.Tachiyomi">
<activity
android:name=".ui.main.MainActivity"
android:launchMode="singleTop">
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
@ -33,6 +33,10 @@
<action android:name="com.google.android.gms.actions.SEARCH_ACTION"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<intent-filter>
<action android:name="eu.kanade.tachiyomi.SEARCH" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable"/>
<!--suppress AndroidDomInspection -->
<meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts"/>

View File

@ -42,9 +42,7 @@ open class App : Application() {
override fun attachBaseContext(base: Context) {
super.attachBaseContext(base)
if (BuildConfig.DEBUG) {
MultiDex.install(this)
}
MultiDex.install(this)
}
override fun onConfigurationChanged(newConfig: Configuration) {

View File

@ -6,11 +6,6 @@ import eu.kanade.tachiyomi.source.model.Page
import eu.kanade.tachiyomi.source.model.SChapter
import eu.kanade.tachiyomi.source.model.SManga
import eu.kanade.tachiyomi.source.online.HttpSource
import eu.kanade.tachiyomi.source.online.english.*
import eu.kanade.tachiyomi.source.online.german.WieManga
import eu.kanade.tachiyomi.source.online.russian.Mangachan
import eu.kanade.tachiyomi.source.online.russian.Mintmanga
import eu.kanade.tachiyomi.source.online.russian.Readmanga
import rx.Observable
open class SourceManager(private val context: Context) {
@ -48,17 +43,7 @@ open class SourceManager(private val context: Context) {
}
private fun createInternalSources(): List<Source> = listOf(
LocalSource(context),
Batoto(),
Mangahere(),
Mangafox(),
Kissmanga(),
Readmanga(),
Mintmanga(),
Mangachan(),
Readmangatoday(),
Mangasee(),
WieManga()
LocalSource(context)
)
private inner class StubSource(override val id: Long) : Source {

View File

@ -1,31 +0,0 @@
package eu.kanade.tachiyomi.source.online.english
import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.model.Page
import eu.kanade.tachiyomi.source.model.SChapter
import eu.kanade.tachiyomi.source.model.SManga
import rx.Observable
class Batoto : Source {
override val id: Long = 1
override val name = "Batoto"
override fun fetchMangaDetails(manga: SManga): Observable<SManga> {
return Observable.error(Exception("RIP Batoto"))
}
override fun fetchChapterList(manga: SManga): Observable<List<SChapter>> {
return Observable.error(Exception("RIP Batoto"))
}
override fun fetchPageList(chapter: SChapter): Observable<List<Page>> {
return Observable.error(Exception("RIP Batoto"))
}
override fun toString(): String {
return "$name (EN)"
}
}

View File

@ -1,253 +0,0 @@
package eu.kanade.tachiyomi.source.online.english
import com.squareup.duktape.Duktape
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.FormBody
import okhttp3.Headers
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.Response
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import timber.log.Timber
import java.text.SimpleDateFormat
import java.util.regex.Pattern
class Kissmanga : ParsedHttpSource() {
override val id: Long = 4
override val name = "Kissmanga"
override val baseUrl = "http://kissmanga.com"
override val lang = "en"
override val supportsLatest = true
override val client: OkHttpClient = network.cloudflareClient
override fun headersBuilder(): Headers.Builder {
return Headers.Builder()
.add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) Gecko/20100101 Firefox/60")
}
override fun popularMangaSelector() = "table.listing tr:gt(1)"
override fun latestUpdatesSelector() = "table.listing tr:gt(1)"
override fun popularMangaRequest(page: Int): Request {
return GET("$baseUrl/MangaList/MostPopular?page=$page", headers)
}
override fun latestUpdatesRequest(page: Int): Request {
return GET("http://kissmanga.com/MangaList/LatestUpdate?page=$page", headers)
}
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("td a:eq(0)").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
val title = it.text()
//check if cloudfire email obfuscation is affecting title name
if (title.contains("[email protected]", true)) {
try {
var str: String = it.html()
//get the number
str = str.substringAfter("data-cfemail=\"")
str = str.substringBefore("\">[email")
val sb = StringBuilder()
//convert number to char
val r = Integer.valueOf(str.substring(0, 2), 16)!!
var i = 2
while (i < str.length) {
val c = (Integer.valueOf(str.substring(i, i + 2), 16) xor r).toChar()
sb.append(c)
i += 2
}
//replace the new word into the title
manga.title = title.replace("[email protected]", sb.toString(), true)
} catch (e: Exception) {
//on error just default to obfuscated title
Timber.e("error parsing [email protected]", e)
manga.title = title
}
} else {
manga.title = title
}
}
return manga
}
override fun latestUpdatesFromElement(element: Element): SManga {
return popularMangaFromElement(element)
}
override fun popularMangaNextPageSelector() = "li > a:contains( Next)"
override fun latestUpdatesNextPageSelector(): String = "ul.pager > li > a:contains(Next)"
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val form = FormBody.Builder().apply {
add("mangaName", query)
for (filter in if (filters.isEmpty()) getFilterList() else filters) {
when (filter) {
is Author -> add("authorArtist", filter.state)
is Status -> add("status", arrayOf("", "Completed", "Ongoing")[filter.state])
is GenreList -> filter.state.forEach { genre -> add("genres", genre.state.toString()) }
}
}
}
return POST("$baseUrl/AdvanceSearch", headers, form.build())
}
override fun searchMangaSelector() = popularMangaSelector()
override fun searchMangaFromElement(element: Element): SManga {
return popularMangaFromElement(element)
}
override fun searchMangaNextPageSelector() = null
override fun mangaDetailsParse(document: Document): SManga {
val infoElement = document.select("div.barContent").first()
val manga = SManga.create()
manga.author = infoElement.select("p:has(span:contains(Author:)) > a").first()?.text()
manga.genre = infoElement.select("p:has(span:contains(Genres:)) > *:gt(0)").text()
manga.description = infoElement.select("p:has(span:contains(Summary:)) ~ p").text()
manga.status = infoElement.select("p:has(span:contains(Status:))").first()?.text().orEmpty().let { parseStatus(it) }
manga.thumbnail_url = document.select(".rightBox:eq(0) img").first()?.attr("src")
return manga
}
fun parseStatus(status: String) = when {
status.contains("Ongoing") -> SManga.ONGOING
status.contains("Completed") -> SManga.COMPLETED
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = "table.listing tr:gt(1)"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select("a").first()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href"))
chapter.name = urlElement.text()
chapter.date_upload = element.select("td:eq(1)").first()?.text()?.let {
SimpleDateFormat("MM/dd/yyyy").parse(it).time
} ?: 0
return chapter
}
override fun pageListRequest(chapter: SChapter) = POST(baseUrl + chapter.url, headers)
override fun pageListParse(response: Response): List<Page> {
val body = response.body()!!.string()
val pages = mutableListOf<Page>()
// Kissmanga now encrypts the urls, so we need to execute these two scripts in JS.
val ca = client.newCall(GET("$baseUrl/Scripts/ca.js", headers)).execute().body()!!.string()
val lo = client.newCall(GET("$baseUrl/Scripts/lo.js", headers)).execute().body()!!.string()
Duktape.create().use {
it.evaluate(ca)
it.evaluate(lo)
// There are two functions in an inline script needed to decrypt the urls. We find and
// execute them.
var p = Pattern.compile("(var.*CryptoJS.*)")
var m = p.matcher(body)
while (m.find()) {
it.evaluate(m.group(1))
}
// Finally find all the urls and decrypt them in JS.
p = Pattern.compile("""lstImages.push\((.*)\);""")
m = p.matcher(body)
var i = 0
while (m.find()) {
val url = it.evaluate(m.group(1)) as String
pages.add(Page(i++, "", url))
}
}
return pages
}
override fun pageListParse(document: Document): List<Page> {
throw Exception("Not used")
}
override fun imageUrlRequest(page: Page) = GET(page.url)
override fun imageUrlParse(document: Document) = ""
private class Status : Filter.TriState("Completed")
private class Author : Filter.Text("Author")
private class Genre(name: String) : Filter.TriState(name)
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genres", genres)
override fun getFilterList() = FilterList(
Author(),
Status(),
GenreList(getGenreList())
)
// $("select[name=\"genres\"]").map((i,el) => `Genre("${$(el).next().text().trim()}", ${i})`).get().join(',\n')
// on http://kissmanga.com/AdvanceSearch
private fun getGenreList() = listOf(
Genre("4-Koma"),
Genre("Action"),
Genre("Adult"),
Genre("Adventure"),
Genre("Comedy"),
Genre("Comic"),
Genre("Cooking"),
Genre("Doujinshi"),
Genre("Drama"),
Genre("Ecchi"),
Genre("Fantasy"),
Genre("Gender Bender"),
Genre("Harem"),
Genre("Historical"),
Genre("Horror"),
Genre("Josei"),
Genre("Lolicon"),
Genre("Manga"),
Genre("Manhua"),
Genre("Manhwa"),
Genre("Martial Arts"),
Genre("Mature"),
Genre("Mecha"),
Genre("Medical"),
Genre("Music"),
Genre("Mystery"),
Genre("One shot"),
Genre("Psychological"),
Genre("Romance"),
Genre("School Life"),
Genre("Sci-fi"),
Genre("Seinen"),
Genre("Shotacon"),
Genre("Shoujo"),
Genre("Shoujo Ai"),
Genre("Shounen"),
Genre("Shounen Ai"),
Genre("Slice of Life"),
Genre("Smut"),
Genre("Sports"),
Genre("Supernatural"),
Genre("Tragedy"),
Genre("Webtoon"),
Genre("Yaoi"),
Genre("Yuri")
)
}

View File

@ -1,231 +0,0 @@
package eu.kanade.tachiyomi.source.online.english
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.HttpUrl
import okhttp3.Request
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.text.ParseException
import java.text.SimpleDateFormat
import java.util.*
class Mangafox : ParsedHttpSource() {
override val id: Long = 3
override val name = "Mangafox"
override val baseUrl = "http://mangafox.la"
override val lang = "en"
override val supportsLatest = true
override fun popularMangaSelector() = "div#mangalist > ul.list > li"
override fun popularMangaRequest(page: Int): Request {
val pageStr = if (page != 1) "$page.htm" else ""
return GET("$baseUrl/directory/$pageStr", headers)
}
override fun latestUpdatesSelector() = "div#mangalist > ul.list > li"
override fun latestUpdatesRequest(page: Int): Request {
val pageStr = if (page != 1) "$page.htm" else ""
return GET("$baseUrl/directory/$pageStr?latest")
}
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("a.title").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.text()
}
return manga
}
override fun latestUpdatesFromElement(element: Element): SManga {
return popularMangaFromElement(element)
}
override fun popularMangaNextPageSelector() = "a:has(span.next)"
override fun latestUpdatesNextPageSelector() = "a:has(span.next)"
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = HttpUrl.parse("$baseUrl/search.php?name_method=cw&author_method=cw&artist_method=cw&advopts=1")!!.newBuilder().addQueryParameter("name", query)
(if (filters.isEmpty()) getFilterList() else filters).forEach { filter ->
when (filter) {
is Status -> url.addQueryParameter(filter.id, filter.state.toString())
is GenreList -> filter.state.forEach { genre -> url.addQueryParameter(genre.id, genre.state.toString()) }
is TextField -> url.addQueryParameter(filter.key, filter.state)
is Type -> url.addQueryParameter("type", if (filter.state == 0) "" else filter.state.toString())
is OrderBy -> {
url.addQueryParameter("sort", arrayOf("name", "rating", "views", "total_chapters", "last_chapter_time")[filter.state!!.index])
url.addQueryParameter("order", if (filter.state?.ascending == true) "az" else "za")
}
}
}
url.addQueryParameter("page", page.toString())
return GET(url.toString(), headers)
}
override fun searchMangaSelector() = "div#mangalist > ul.list > li"
override fun searchMangaFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("a.title").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.text()
}
return manga
}
override fun searchMangaNextPageSelector() = "a:has(span.next)"
override fun mangaDetailsParse(document: Document): SManga {
val infoElement = document.select("div#title").first()
val rowElement = infoElement.select("table > tbody > tr:eq(1)").first()
val sideInfoElement = document.select("#series_info").first()
val licensedElement = document.select("div.warning").first()
val manga = SManga.create()
manga.author = rowElement.select("td:eq(1)").first()?.text()
manga.artist = rowElement.select("td:eq(2)").first()?.text()
manga.genre = rowElement.select("td:eq(3)").first()?.text()
manga.description = infoElement.select("p.summary").first()?.text()
val isLicensed = licensedElement?.text()?.contains("licensed")
if (isLicensed == true) {
manga.status = SManga.LICENSED
} else {
manga.status = sideInfoElement.select(".data").first()?.text().orEmpty().let { parseStatus(it) }
}
manga.thumbnail_url = sideInfoElement.select("div.cover > img").first()?.attr("src")
return manga
}
private fun parseStatus(status: String) = when {
status.contains("Ongoing") -> SManga.ONGOING
status.contains("Completed") -> SManga.COMPLETED
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = "div#chapters li div"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select("a.tips").first()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href"))
chapter.name = element.select("span.title.nowrap").first()?.text()?.let { urlElement.text() + " - " + it } ?: urlElement.text()
chapter.date_upload = element.select("span.date").first()?.text()?.let { parseChapterDate(it) } ?: 0
return chapter
}
private fun parseChapterDate(date: String): Long {
return if ("Today" in date || " ago" in date) {
Calendar.getInstance().apply {
set(Calendar.HOUR_OF_DAY, 0)
set(Calendar.MINUTE, 0)
set(Calendar.SECOND, 0)
set(Calendar.MILLISECOND, 0)
}.timeInMillis
} else if ("Yesterday" in date) {
Calendar.getInstance().apply {
add(Calendar.DATE, -1)
set(Calendar.HOUR_OF_DAY, 0)
set(Calendar.MINUTE, 0)
set(Calendar.SECOND, 0)
set(Calendar.MILLISECOND, 0)
}.timeInMillis
} else {
try {
SimpleDateFormat("MMM d, yyyy", Locale.ENGLISH).parse(date).time
} catch (e: ParseException) {
0L
}
}
}
override fun pageListParse(document: Document): List<Page> {
val url = document.baseUri().substringBeforeLast('/')
val pages = mutableListOf<Page>()
document.select("select.m").first()?.select("option:not([value=0])")?.forEach {
pages.add(Page(pages.size, "$url/${it.attr("value")}.html"))
}
return pages
}
override fun imageUrlParse(document: Document): String {
val url = document.getElementById("image").attr("src")
return if ("compressed?token=" !in url) {
url
} else {
"http://mangafox.me/media/logo.png"
}
}
private class Status(val id: String = "is_completed") : Filter.TriState("Completed")
private class Genre(name: String, val id: String = "genres[$name]") : Filter.TriState(name)
private class TextField(name: String, val key: String) : Filter.Text(name)
private class Type : Filter.Select<String>("Type", arrayOf("Any", "Japanese Manga", "Korean Manhwa", "Chinese Manhua"))
private class OrderBy : Filter.Sort("Order by",
arrayOf("Series name", "Rating", "Views", "Total chapters", "Last chapter"),
Filter.Sort.Selection(2, false))
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genres", genres)
override fun getFilterList() = FilterList(
TextField("Author", "author"),
TextField("Artist", "artist"),
Type(),
Status(),
OrderBy(),
GenreList(getGenreList())
)
// $('select.genres').map((i,el)=>`Genre("${$(el).next().text().trim()}", "${$(el).attr('name')}")`).get().join(',\n')
// on http://mangafox.me/search.php
private fun getGenreList() = listOf(
Genre("Action"),
Genre("Adult"),
Genre("Adventure"),
Genre("Comedy"),
Genre("Doujinshi"),
Genre("Drama"),
Genre("Ecchi"),
Genre("Fantasy"),
Genre("Gender Bender"),
Genre("Harem"),
Genre("Historical"),
Genre("Horror"),
Genre("Josei"),
Genre("Martial Arts"),
Genre("Mature"),
Genre("Mecha"),
Genre("Mystery"),
Genre("One Shot"),
Genre("Psychological"),
Genre("Romance"),
Genre("School Life"),
Genre("Sci-fi"),
Genre("Seinen"),
Genre("Shoujo"),
Genre("Shoujo Ai"),
Genre("Shounen"),
Genre("Shounen Ai"),
Genre("Slice of Life"),
Genre("Smut"),
Genre("Sports"),
Genre("Supernatural"),
Genre("Tragedy"),
Genre("Webtoons"),
Genre("Yaoi"),
Genre("Yuri")
)
}

View File

@ -1,259 +0,0 @@
package eu.kanade.tachiyomi.source.online.english
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.HttpUrl
import okhttp3.Request
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.security.SecureRandom
import java.security.cert.X509Certificate
import java.text.ParseException
import java.text.SimpleDateFormat
import java.util.*
import javax.net.ssl.SSLContext
import javax.net.ssl.X509TrustManager
class Mangahere : ParsedHttpSource() {
override val id: Long = 2
override val name = "Mangahere"
override val baseUrl = "http://www.mangahere.cc"
override val lang = "en"
override val supportsLatest = true
private val trustManager = object : X509TrustManager {
override fun getAcceptedIssuers(): Array<X509Certificate> {
return emptyArray()
}
override fun checkClientTrusted(chain: Array<X509Certificate>, authType: String) {
}
override fun checkServerTrusted(chain: Array<X509Certificate>, authType: String) {
}
}
private val sslContext = SSLContext.getInstance("SSL").apply {
init(null, arrayOf(trustManager), SecureRandom())
}
override val client = super.client.newBuilder()
.sslSocketFactory(sslContext.socketFactory, trustManager)
.build()
override fun popularMangaSelector() = "div.directory_list > ul > li"
override fun latestUpdatesSelector() = "div.directory_list > ul > li"
override fun popularMangaRequest(page: Int): Request {
return GET("$baseUrl/directory/$page.htm?views.za", headers)
}
override fun latestUpdatesRequest(page: Int): Request {
return GET("$baseUrl/directory/$page.htm?last_chapter_time.za", headers)
}
private fun mangaFromElement(query: String, element: Element): SManga {
val manga = SManga.create()
element.select(query).first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = if (it.hasAttr("title")) it.attr("title") else if (it.hasAttr("rel")) it.attr("rel") else it.text()
}
return manga
}
override fun popularMangaFromElement(element: Element): SManga {
return mangaFromElement("div.title > a", element)
}
override fun latestUpdatesFromElement(element: Element): SManga {
return popularMangaFromElement(element)
}
override fun popularMangaNextPageSelector() = "div.next-page > a.next"
override fun latestUpdatesNextPageSelector() = "div.next-page > a.next"
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = HttpUrl.parse("$baseUrl/search.php?name_method=cw&author_method=cw&artist_method=cw&advopts=1")!!.newBuilder().addQueryParameter("name", query)
(if (filters.isEmpty()) getFilterList() else filters).forEach { filter ->
when (filter) {
is Status -> url.addQueryParameter("is_completed", arrayOf("", "1", "0")[filter.state])
is GenreList -> filter.state.forEach { genre -> url.addQueryParameter(genre.id, genre.state.toString()) }
is TextField -> url.addQueryParameter(filter.key, filter.state)
is Type -> url.addQueryParameter("direction", arrayOf("", "rl", "lr")[filter.state])
is OrderBy -> {
url.addQueryParameter("sort", arrayOf("name", "rating", "views", "total_chapters", "last_chapter_time")[filter.state!!.index])
url.addQueryParameter("order", if (filter.state?.ascending == true) "az" else "za")
}
}
}
url.addQueryParameter("page", page.toString())
return GET(url.toString(), headers)
}
override fun searchMangaSelector() = "div.result_search > dl:has(dt)"
override fun searchMangaFromElement(element: Element): SManga {
return mangaFromElement("a.manga_info", element)
}
override fun searchMangaNextPageSelector() = "div.next-page > a.next"
override fun mangaDetailsParse(document: Document): SManga {
val detailElement = document.select(".manga_detail_top").first()
val infoElement = detailElement.select(".detail_topText").first()
val licensedElement = document.select(".mt10.color_ff00.mb10").first()
val manga = SManga.create()
manga.author = infoElement.select("a[href*=author/]").first()?.text()
manga.artist = infoElement.select("a[href*=artist/]").first()?.text()
manga.genre = infoElement.select("li:eq(3)").first()?.text()?.substringAfter("Genre(s):")
manga.description = infoElement.select("#show").first()?.text()?.substringBeforeLast("Show less")
manga.thumbnail_url = detailElement.select("img.img").first()?.attr("src")
if (licensedElement?.text()?.contains("licensed") == true) {
manga.status = SManga.LICENSED
} else {
manga.status = infoElement.select("li:eq(6)").first()?.text().orEmpty().let { parseStatus(it) }
}
return manga
}
private fun parseStatus(status: String) = when {
status.contains("Ongoing") -> SManga.ONGOING
status.contains("Completed") -> SManga.COMPLETED
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = ".detail_list > ul:not([class]) > li"
override fun chapterFromElement(element: Element): SChapter {
val parentEl = element.select("span.left").first()
val urlElement = parentEl.select("a").first()
var volume = parentEl.select("span.mr6")?.first()?.text()?.trim() ?: ""
if (volume.length > 0) {
volume = " - " + volume
}
var title = parentEl?.textNodes()?.last()?.text()?.trim() ?: ""
if (title.length > 0) {
title = " - " + title
}
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href"))
chapter.name = urlElement.text() + volume + title
chapter.date_upload = element.select("span.right").first()?.text()?.let { parseChapterDate(it) } ?: 0
return chapter
}
private fun parseChapterDate(date: String): Long {
return if ("Today" in date) {
Calendar.getInstance().apply {
set(Calendar.HOUR_OF_DAY, 0)
set(Calendar.MINUTE, 0)
set(Calendar.SECOND, 0)
set(Calendar.MILLISECOND, 0)
}.timeInMillis
} else if ("Yesterday" in date) {
Calendar.getInstance().apply {
add(Calendar.DATE, -1)
set(Calendar.HOUR_OF_DAY, 0)
set(Calendar.MINUTE, 0)
set(Calendar.SECOND, 0)
set(Calendar.MILLISECOND, 0)
}.timeInMillis
} else {
try {
SimpleDateFormat("MMM d, yyyy", Locale.ENGLISH).parse(date).time
} catch (e: ParseException) {
0L
}
}
}
override fun pageListParse(document: Document): List<Page> {
val licensedError = document.select(".mangaread_error > .mt10").first()
if (licensedError != null) {
throw Exception(licensedError.text())
}
val pages = mutableListOf<Page>()
document.select("select.wid60").first()?.getElementsByTag("option")?.forEach {
if (!it.attr("value").contains("featured.html")) {
pages.add(Page(pages.size, "http:" + it.attr("value")))
}
}
pages.getOrNull(0)?.imageUrl = imageUrlParse(document)
return pages
}
override fun imageUrlParse(document: Document) = document.getElementById("image").attr("src")
private class Status : Filter.TriState("Completed")
private class Genre(name: String, val id: String = "genres[$name]") : Filter.TriState(name)
private class TextField(name: String, val key: String) : Filter.Text(name)
private class Type : Filter.Select<String>("Type", arrayOf("Any", "Japanese Manga (read from right to left)", "Korean Manhwa (read from left to right)"))
private class OrderBy : Filter.Sort("Order by",
arrayOf("Series name", "Rating", "Views", "Total chapters", "Last chapter"),
Filter.Sort.Selection(2, false))
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genres", genres)
override fun getFilterList() = FilterList(
TextField("Author", "author"),
TextField("Artist", "artist"),
Type(),
Status(),
OrderBy(),
GenreList(getGenreList())
)
// [...document.querySelectorAll("select[id^='genres'")].map((el,i) => `Genre("${el.nextSibling.nextSibling.textContent.trim()}", "${el.getAttribute('name')}")`).join(',\n')
// http://www.mangahere.co/advsearch.htm
private fun getGenreList() = listOf(
Genre("Action"),
Genre("Adventure"),
Genre("Comedy"),
Genre("Doujinshi"),
Genre("Drama"),
Genre("Ecchi"),
Genre("Fantasy"),
Genre("Gender Bender"),
Genre("Harem"),
Genre("Historical"),
Genre("Horror"),
Genre("Josei"),
Genre("Martial Arts"),
Genre("Mature"),
Genre("Mecha"),
Genre("Mystery"),
Genre("One Shot"),
Genre("Psychological"),
Genre("Romance"),
Genre("School Life"),
Genre("Sci-fi"),
Genre("Seinen"),
Genre("Shoujo"),
Genre("Shoujo Ai"),
Genre("Shounen"),
Genre("Shounen Ai"),
Genre("Slice of Life"),
Genre("Sports"),
Genre("Supernatural"),
Genre("Tragedy"),
Genre("Yaoi"),
Genre("Yuri")
)
}

View File

@ -1,249 +0,0 @@
package eu.kanade.tachiyomi.source.online.english
import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.FormBody
import okhttp3.Headers
import okhttp3.HttpUrl
import okhttp3.Request
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.text.SimpleDateFormat
import java.util.regex.Pattern
class Mangasee : ParsedHttpSource() {
override val id: Long = 9
override val name = "Mangasee"
override val baseUrl = "http://mangaseeonline.us"
override val lang = "en"
override val supportsLatest = true
private val recentUpdatesPattern = Pattern.compile("(.*?)\\s(\\d+\\.?\\d*)\\s?(Completed)?")
private val indexPattern = Pattern.compile("-index-(.*?)-")
private val catalogHeaders = Headers.Builder().apply {
add("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64)")
add("Host", "mangaseeonline.us")
}.build()
override fun popularMangaSelector() = "div.requested > div.row"
override fun popularMangaRequest(page: Int): Request {
val (body, requestUrl) = convertQueryToPost(page, "$baseUrl/search/request.php?sortBy=popularity&sortOrder=descending")
return POST(requestUrl, catalogHeaders, body.build())
}
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("a.resultLink").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.text()
}
return manga
}
override fun popularMangaNextPageSelector() = "button.requestMore"
override fun searchMangaSelector() = "div.requested > div.row"
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = HttpUrl.parse("$baseUrl/search/request.php")!!.newBuilder()
if (!query.isEmpty()) url.addQueryParameter("keyword", query)
val genres = mutableListOf<String>()
val genresNo = mutableListOf<String>()
for (filter in if (filters.isEmpty()) getFilterList() else filters) {
when (filter) {
is Sort -> {
if (filter.state?.index != 0)
url.addQueryParameter("sortBy", if (filter.state?.index == 1) "dateUpdated" else "popularity")
if (filter.state?.ascending != true)
url.addQueryParameter("sortOrder", "descending")
}
is SelectField -> if (filter.state != 0) url.addQueryParameter(filter.key, filter.values[filter.state])
is TextField -> if (!filter.state.isEmpty()) url.addQueryParameter(filter.key, filter.state)
is GenreList -> filter.state.forEach { genre ->
when (genre.state) {
Filter.TriState.STATE_INCLUDE -> genres.add(genre.name)
Filter.TriState.STATE_EXCLUDE -> genresNo.add(genre.name)
}
}
}
}
if (genres.isNotEmpty()) url.addQueryParameter("genre", genres.joinToString(","))
if (genresNo.isNotEmpty()) url.addQueryParameter("genreNo", genresNo.joinToString(","))
val (body, requestUrl) = convertQueryToPost(page, url.toString())
return POST(requestUrl, catalogHeaders, body.build())
}
private fun convertQueryToPost(page: Int, url: String): Pair<FormBody.Builder, String> {
val url = HttpUrl.parse(url)!!
val body = FormBody.Builder().add("page", page.toString())
for (i in 0..url.querySize() - 1) {
body.add(url.queryParameterName(i), url.queryParameterValue(i))
}
val requestUrl = url.scheme() + "://" + url.host() + url.encodedPath()
return Pair(body, requestUrl)
}
override fun searchMangaFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("a.resultLink").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.text()
}
return manga
}
override fun searchMangaNextPageSelector() = "button.requestMore"
override fun mangaDetailsParse(document: Document): SManga {
val detailElement = document.select("div.well > div.row").first()
val manga = SManga.create()
manga.author = detailElement.select("a[href^=/search/?author=]").first()?.text()
manga.genre = detailElement.select("span.details > div.row > div:has(b:contains(Genre(s))) > a").map { it.text() }.joinToString()
manga.description = detailElement.select("strong:contains(Description:) + div").first()?.text()
manga.status = detailElement.select("a[href^=/search/?status=]").first()?.text().orEmpty().let { parseStatus(it) }
manga.thumbnail_url = detailElement.select("div > img").first()?.absUrl("src")
return manga
}
private fun parseStatus(status: String) = when {
status.contains("Ongoing (Scan)") -> SManga.ONGOING
status.contains("Complete (Scan)") -> SManga.COMPLETED
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = "div.chapter-list > a"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select("a").first()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href"))
chapter.name = element.select("span.chapterLabel").first().text()?.let { it } ?: ""
chapter.date_upload = element.select("time").first()?.attr("datetime")?.let { parseChapterDate(it) } ?: 0
return chapter
}
private fun parseChapterDate(dateAsString: String): Long {
return SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ").parse(dateAsString).time
}
override fun pageListParse(document: Document): List<Page> {
val fullUrl = document.baseUri()
val url = fullUrl.substringBeforeLast('/')
val pages = mutableListOf<Page>()
val series = document.select("input.IndexName").first().attr("value")
val chapter = document.select("span.CurChapter").first().text()
var index = ""
val m = indexPattern.matcher(fullUrl)
if (m.find()) {
val indexNumber = m.group(1)
index = "-index-$indexNumber"
}
document.select("div.ContainerNav").first().select("select.PageSelect > option").forEach {
pages.add(Page(pages.size, "$url/$series-chapter-$chapter$index-page-${pages.size + 1}.html"))
}
pages.getOrNull(0)?.imageUrl = imageUrlParse(document)
return pages
}
override fun imageUrlParse(document: Document): String = document.select("img.CurImage").attr("src")
override fun latestUpdatesNextPageSelector() = "button.requestMore"
override fun latestUpdatesSelector(): String = "a.latestSeries"
override fun latestUpdatesRequest(page: Int): Request {
val url = "http://mangaseeonline.net/home/latest.request.php"
val (body, requestUrl) = convertQueryToPost(page, url)
return POST(requestUrl, catalogHeaders, body.build())
}
override fun latestUpdatesFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("a.latestSeries").first().let {
val chapterUrl = it.attr("href")
val indexOfMangaUrl = chapterUrl.indexOf("-chapter-")
val indexOfLastPath = chapterUrl.lastIndexOf("/")
val mangaUrl = chapterUrl.substring(indexOfLastPath, indexOfMangaUrl)
val defaultText = it.select("p.clamp2").text()
val m = recentUpdatesPattern.matcher(defaultText)
val title = if (m.matches()) m.group(1) else defaultText
manga.setUrlWithoutDomain("/manga" + mangaUrl)
manga.title = title
}
return manga
}
private class Sort : Filter.Sort("Sort", arrayOf("Alphabetically", "Date updated", "Popularity"), Filter.Sort.Selection(2, false))
private class Genre(name: String) : Filter.TriState(name)
private class TextField(name: String, val key: String) : Filter.Text(name)
private class SelectField(name: String, val key: String, values: Array<String>, state: Int = 0) : Filter.Select<String>(name, values, state)
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genres", genres)
override fun getFilterList() = FilterList(
TextField("Years", "year"),
TextField("Author", "author"),
SelectField("Scan Status", "status", arrayOf("Any", "Complete", "Discontinued", "Hiatus", "Incomplete", "Ongoing")),
SelectField("Publish Status", "pstatus", arrayOf("Any", "Cancelled", "Complete", "Discontinued", "Hiatus", "Incomplete", "Ongoing", "Unfinished")),
SelectField("Type", "type", arrayOf("Any", "Doujinshi", "Manga", "Manhua", "Manhwa", "OEL", "One-shot")),
Sort(),
GenreList(getGenreList())
)
// [...document.querySelectorAll("label.triStateCheckBox input")].map(el => `Filter("${el.getAttribute('name')}", "${el.nextSibling.textContent.trim()}")`).join(',\n')
// http://mangasee.co/advanced-search/
private fun getGenreList() = listOf(
Genre("Action"),
Genre("Adult"),
Genre("Adventure"),
Genre("Comedy"),
Genre("Doujinshi"),
Genre("Drama"),
Genre("Ecchi"),
Genre("Fantasy"),
Genre("Gender Bender"),
Genre("Harem"),
Genre("Hentai"),
Genre("Historical"),
Genre("Horror"),
Genre("Josei"),
Genre("Lolicon"),
Genre("Martial Arts"),
Genre("Mature"),
Genre("Mecha"),
Genre("Mystery"),
Genre("Psychological"),
Genre("Romance"),
Genre("School Life"),
Genre("Sci-fi"),
Genre("Seinen"),
Genre("Shotacon"),
Genre("Shoujo"),
Genre("Shoujo Ai"),
Genre("Shounen"),
Genre("Shounen Ai"),
Genre("Slice of Life"),
Genre("Smut"),
Genre("Sports"),
Genre("Supernatural"),
Genre("Tragedy"),
Genre("Yaoi"),
Genre("Yuri")
)
}

View File

@ -1,224 +0,0 @@
package eu.kanade.tachiyomi.source.online.english
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.POST
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.Headers
import okhttp3.OkHttpClient
import okhttp3.Request
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.util.*
class Readmangatoday : ParsedHttpSource() {
override val id: Long = 8
override val name = "ReadMangaToday"
override val baseUrl = "https://www.readmng.com"
override val lang = "en"
override val supportsLatest = true
override val client: OkHttpClient get() = network.cloudflareClient
/**
* Search only returns data with this set
*/
override fun headersBuilder() = Headers.Builder().apply {
add("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64)")
add("X-Requested-With", "XMLHttpRequest")
}
override fun popularMangaRequest(page: Int): Request {
return GET("$baseUrl/hot-manga/$page", headers)
}
override fun latestUpdatesRequest(page: Int): Request {
return GET("$baseUrl/latest-releases/$page", headers)
}
override fun popularMangaSelector() = "div.hot-manga > div.style-list > div.box"
override fun latestUpdatesSelector() = "div.hot-manga > div.style-grid > div.box"
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("div.title > h2 > a").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.attr("title")
}
return manga
}
override fun latestUpdatesFromElement(element: Element): SManga {
return popularMangaFromElement(element)
}
override fun popularMangaNextPageSelector() = "div.hot-manga > ul.pagination > li > a:contains(»)"
override fun latestUpdatesNextPageSelector() = "div.hot-manga > ul.pagination > li > a:contains(»)"
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val builder = okhttp3.FormBody.Builder()
builder.add("manga-name", query)
(if (filters.isEmpty()) getFilterList() else filters).forEach { filter ->
when (filter) {
is TextField -> builder.add(filter.key, filter.state)
is Type -> builder.add("type", arrayOf("all", "japanese", "korean", "chinese")[filter.state])
is Status -> builder.add("status", arrayOf("both", "completed", "ongoing")[filter.state])
is GenreList -> filter.state.forEach { genre ->
when (genre.state) {
Filter.TriState.STATE_INCLUDE -> builder.add("include[]", genre.id.toString())
Filter.TriState.STATE_EXCLUDE -> builder.add("exclude[]", genre.id.toString())
}
}
}
}
return POST("$baseUrl/service/advanced_search", headers, builder.build())
}
override fun searchMangaSelector() = "div.style-list > div.box"
override fun searchMangaFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("div.title > h2 > a").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.attr("title")
}
return manga
}
override fun searchMangaNextPageSelector() = "div.next-page > a.next"
override fun mangaDetailsParse(document: Document): SManga {
val detailElement = document.select("div.movie-meta").first()
val genreElement = detailElement.select("dl.dl-horizontal > dd:eq(5) a")
val manga = SManga.create()
manga.author = document.select("ul.cast-list li.director > ul a").first()?.text()
manga.artist = document.select("ul.cast-list li:not(.director) > ul a").first()?.text()
manga.description = detailElement.select("li.movie-detail").first()?.text()
manga.status = detailElement.select("dl.dl-horizontal > dd:eq(3)").first()?.text().orEmpty().let { parseStatus(it) }
manga.thumbnail_url = detailElement.select("img.img-responsive").first()?.attr("src")
var genres = mutableListOf<String>()
genreElement?.forEach { genres.add(it.text()) }
manga.genre = genres.joinToString(", ")
return manga
}
private fun parseStatus(status: String) = when {
status.contains("Ongoing") -> SManga.ONGOING
status.contains("Completed") -> SManga.COMPLETED
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = "ul.chp_lst > li"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select("a").first()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href"))
chapter.name = urlElement.select("span.val").text()
chapter.date_upload = element.select("span.dte").first()?.text()?.let { parseChapterDate(it) } ?: 0
return chapter
}
private fun parseChapterDate(date: String): Long {
val dateWords: List<String> = date.split(" ")
if (dateWords.size == 3) {
val timeAgo = Integer.parseInt(dateWords[0])
val date: Calendar = Calendar.getInstance()
if (dateWords[1].contains("Minute")) {
date.add(Calendar.MINUTE, -timeAgo)
} else if (dateWords[1].contains("Hour")) {
date.add(Calendar.HOUR_OF_DAY, -timeAgo)
} else if (dateWords[1].contains("Day")) {
date.add(Calendar.DAY_OF_YEAR, -timeAgo)
} else if (dateWords[1].contains("Week")) {
date.add(Calendar.WEEK_OF_YEAR, -timeAgo)
} else if (dateWords[1].contains("Month")) {
date.add(Calendar.MONTH, -timeAgo)
} else if (dateWords[1].contains("Year")) {
date.add(Calendar.YEAR, -timeAgo)
}
return date.timeInMillis
}
return 0L
}
override fun pageListParse(document: Document): List<Page> {
val pages = mutableListOf<Page>()
document.select("ul.list-switcher-2 > li > select.jump-menu").first().getElementsByTag("option").forEach {
pages.add(Page(pages.size, it.attr("value")))
}
pages.getOrNull(0)?.imageUrl = imageUrlParse(document)
return pages
}
override fun imageUrlParse(document: Document) = document.select("#chapter_img").first().attr("src")
private class Status : Filter.TriState("Completed")
private class Genre(name: String, val id: Int) : Filter.TriState(name)
private class TextField(name: String, val key: String) : Filter.Text(name)
private class Type : Filter.Select<String>("Type", arrayOf("All", "Japanese Manga", "Korean Manhwa", "Chinese Manhua"))
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genres", genres)
override fun getFilterList() = FilterList(
TextField("Author", "author-name"),
TextField("Artist", "artist-name"),
Type(),
Status(),
GenreList(getGenreList())
)
// [...document.querySelectorAll("ul.manga-cat span")].map(el => `Genre("${el.nextSibling.textContent.trim()}", ${el.getAttribute('data-id')})`).join(',\n')
// http://www.readmanga.today/advanced-search
private fun getGenreList() = listOf(
Genre("Action", 2),
Genre("Adventure", 4),
Genre("Comedy", 5),
Genre("Doujinshi", 6),
Genre("Drama", 7),
Genre("Ecchi", 8),
Genre("Fantasy", 9),
Genre("Gender Bender", 10),
Genre("Harem", 11),
Genre("Historical", 12),
Genre("Horror", 13),
Genre("Josei", 14),
Genre("Lolicon", 15),
Genre("Martial Arts", 16),
Genre("Mature", 17),
Genre("Mecha", 18),
Genre("Mystery", 19),
Genre("One shot", 20),
Genre("Psychological", 21),
Genre("Romance", 22),
Genre("School Life", 23),
Genre("Sci-fi", 24),
Genre("Seinen", 25),
Genre("Shotacon", 26),
Genre("Shoujo", 27),
Genre("Shoujo Ai", 28),
Genre("Shounen", 29),
Genre("Shounen Ai", 30),
Genre("Slice of Life", 31),
Genre("Smut", 32),
Genre("Sports", 33),
Genre("Supernatural", 34),
Genre("Tragedy", 35),
Genre("Yaoi", 36),
Genre("Yuri", 37)
)
}

View File

@ -1,122 +0,0 @@
package eu.kanade.tachiyomi.source.online.german
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.FilterList
import eu.kanade.tachiyomi.source.model.Page
import eu.kanade.tachiyomi.source.model.SChapter
import eu.kanade.tachiyomi.source.model.SManga
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.Request
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.text.SimpleDateFormat
class WieManga : ParsedHttpSource() {
override val id: Long = 10
override val name = "Wie Manga!"
override val baseUrl = "http://www.wiemanga.com"
override val lang = "de"
override val supportsLatest = true
override fun popularMangaSelector() = ".booklist td > div"
override fun latestUpdatesSelector() = ".booklist td > div"
override fun popularMangaRequest(page: Int): Request {
return GET("$baseUrl/list/Hot-Book/", headers)
}
override fun latestUpdatesRequest(page: Int): Request {
return GET("$baseUrl/list/New-Update/", headers)
}
override fun popularMangaFromElement(element: Element): SManga {
val image = element.select("dt img")
val title = element.select("dd a:first-child")
val manga = SManga.create()
manga.setUrlWithoutDomain(title.attr("href"))
manga.title = title.text()
manga.thumbnail_url = image.attr("src")
return manga
}
override fun latestUpdatesFromElement(element: Element): SManga {
return popularMangaFromElement(element)
}
override fun popularMangaNextPageSelector() = null
override fun latestUpdatesNextPageSelector() = null
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
return GET("$baseUrl/search/?wd=$query", headers)
}
override fun searchMangaSelector() = ".searchresult td > div"
override fun searchMangaFromElement(element: Element): SManga {
val image = element.select(".resultimg img")
val title = element.select(".resultbookname")
val manga = SManga.create()
manga.setUrlWithoutDomain(title.attr("href"))
manga.title = title.text()
manga.thumbnail_url = image.attr("src")
return manga
}
override fun searchMangaNextPageSelector() = ".pagetor a.l"
override fun mangaDetailsParse(document: Document): SManga {
val imageElement = document.select(".bookmessgae tr > td:nth-child(1)").first()
val infoElement = document.select(".bookmessgae tr > td:nth-child(2)").first()
val manga = SManga.create()
manga.author = infoElement.select("dd:nth-of-type(2) a").first()?.text()
manga.artist = infoElement.select("dd:nth-of-type(3) a").first()?.text()
manga.description = infoElement.select("dl > dt:last-child").first()?.text()?.replaceFirst("Beschreibung", "")
manga.thumbnail_url = imageElement.select("img").first()?.attr("src")
if (manga.author == "RSS")
manga.author = null
if (manga.artist == "RSS")
manga.artist = null
return manga
}
override fun chapterListSelector() = ".chapterlist tr:not(:first-child)"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select(".col1 a").first()
val dateElement = element.select(".col3 a").first()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href"))
chapter.name = urlElement.text()
chapter.date_upload = dateElement?.text()?.let { parseChapterDate(it) } ?: 0
return chapter
}
private fun parseChapterDate(date: String): Long {
return SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(date).time
}
override fun pageListParse(document: Document): List<Page> {
val pages = mutableListOf<Page>()
document.select("select#page").first().select("option").forEach {
pages.add(Page(pages.size, it.attr("value")))
}
return pages
}
override fun imageUrlParse(document: Document) = document.select("img#comicpic").first().attr("src")
}

View File

@ -1,290 +0,0 @@
package eu.kanade.tachiyomi.source.online.russian
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Request
import okhttp3.Response
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.text.SimpleDateFormat
import java.util.*
class Mangachan : ParsedHttpSource() {
override val id: Long = 7
override val name = "Mangachan"
override val baseUrl = "http://mangachan.me"
override val lang = "ru"
override val supportsLatest = true
override fun popularMangaRequest(page: Int): Request =
GET("$baseUrl/mostfavorites?offset=${20 * (page - 1)}", headers)
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
var pageNum = 1
when {
page < 1 -> pageNum = 1
page >= 1 -> pageNum = page
}
val url = if (query.isNotEmpty()) {
"$baseUrl/?do=search&subaction=search&story=$query&search_start=$pageNum"
} else {
var genres = ""
var order = ""
var statusParam = true
var status = ""
for (filter in if (filters.isEmpty()) getFilterList() else filters) {
when (filter) {
is GenreList -> {
filter.state.forEach { f ->
if (!f.isIgnored()) {
genres += (if (f.isExcluded()) "-" else "") + f.id + '+'
}
}
}
is OrderBy -> {
if (filter.state!!.ascending && filter.state!!.index == 0) {
statusParam = false
}
}
is Status -> status = arrayOf("", "all_done", "end", "ongoing", "new_ch")[filter.state]
}
}
if (genres.isNotEmpty()) {
for (filter in filters) {
when (filter) {
is OrderBy -> {
order = if (filter.state!!.ascending) {
arrayOf("", "&n=favasc", "&n=abcdesc", "&n=chasc")[filter.state!!.index]
} else {
arrayOf("&n=dateasc", "&n=favdesc", "&n=abcasc", "&n=chdesc")[filter.state!!.index]
}
}
}
}
if (statusParam) {
"$baseUrl/tags/${genres.dropLast(1)}$order?offset=${20 * (pageNum - 1)}&status=$status"
} else {
"$baseUrl/tags/$status/${genres.dropLast(1)}/$order?offset=${20 * (pageNum - 1)}"
}
} else {
for (filter in filters) {
when (filter) {
is OrderBy -> {
order = if (filter.state!!.ascending) {
arrayOf("manga/new", "manga/new&n=favasc", "manga/new&n=abcdesc", "manga/new&n=chasc")[filter.state!!.index]
} else {
arrayOf("manga/new&n=dateasc", "mostfavorites", "catalog", "sortch")[filter.state!!.index]
}
}
}
}
if (statusParam) {
"$baseUrl/$order?offset=${20 * (pageNum - 1)}&status=$status"
} else {
"$baseUrl/$order/$status?offset=${20 * (pageNum - 1)}"
}
}
}
return GET(url, headers)
}
override fun latestUpdatesRequest(page: Int): Request = GET("$baseUrl/newestch?page=$page")
override fun popularMangaSelector() = "div.content_row"
override fun latestUpdatesSelector() = "ul.area_rightNews li"
override fun searchMangaSelector() = popularMangaSelector()
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
manga.thumbnail_url = element.select("div.manga_images img").first().attr("src")
element.select("h2 > a").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.text()
}
return manga
}
override fun latestUpdatesFromElement(element: Element): SManga {
val manga = SManga.create()
element.select("a:nth-child(1)").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.text()
}
return manga
}
override fun searchMangaFromElement(element: Element): SManga = popularMangaFromElement(element)
override fun popularMangaNextPageSelector() = "a:contains(Вперед)"
override fun latestUpdatesNextPageSelector() = popularMangaNextPageSelector()
override fun searchMangaNextPageSelector() = "a:contains(Далее)"
private fun searchGenresNextPageSelector() = popularMangaNextPageSelector()
override fun searchMangaParse(response: Response): MangasPage {
val document = response.asJsoup()
var hasNextPage = false
val mangas = document.select(searchMangaSelector()).map { element ->
searchMangaFromElement(element)
}
val nextSearchPage = document.select(searchMangaNextPageSelector())
if (nextSearchPage.isNotEmpty()) {
val query = document.select("input#searchinput").first().attr("value")
val pageNum = nextSearchPage.let { selector ->
val onClick = selector.attr("onclick")
onClick?.split("""\\d+""")
}
nextSearchPage.attr("href", "$baseUrl/?do=search&subaction=search&story=$query&search_start=$pageNum")
hasNextPage = true
}
val nextGenresPage = document.select(searchGenresNextPageSelector())
if (nextGenresPage.isNotEmpty()) {
hasNextPage = true
}
return MangasPage(mangas, hasNextPage)
}
override fun mangaDetailsParse(document: Document): SManga {
val infoElement = document.select("table.mangatitle").first()
val descElement = document.select("div#description").first()
val imgElement = document.select("img#cover").first()
val manga = SManga.create()
manga.author = infoElement.select("tr:eq(2) > td:eq(1)").text()
manga.genre = infoElement.select("tr:eq(5) > td:eq(1)").text()
manga.status = parseStatus(infoElement.select("tr:eq(4) > td:eq(1)").text())
manga.description = descElement.textNodes().first().text()
manga.thumbnail_url = imgElement.attr("src")
return manga
}
private fun parseStatus(element: String): Int = when {
element.contains("перевод завершен") -> SManga.COMPLETED
element.contains("перевод продолжается") -> SManga.ONGOING
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = "table.table_cha tr:gt(1)"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select("a").first()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href"))
chapter.name = urlElement.text()
chapter.date_upload = element.select("div.date").first()?.text()?.let {
SimpleDateFormat("yyyy-MM-dd", Locale.US).parse(it).time
} ?: 0
return chapter
}
override fun pageListParse(response: Response): List<Page> {
val html = response.body()!!.string()
val beginIndex = html.indexOf("fullimg\":[") + 10
val endIndex = html.indexOf(",]", beginIndex)
val trimmedHtml = html.substring(beginIndex, endIndex).replace("\"", "")
val pageUrls = trimmedHtml.split(',')
return pageUrls.mapIndexed { i, url -> Page(i, "", url) }
}
override fun pageListParse(document: Document): List<Page> {
throw Exception("Not used")
}
override fun imageUrlParse(document: Document) = ""
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Тэги", genres)
private class Genre(name: String, val id: String = name.replace(' ', '_')) : Filter.TriState(name)
private class Status : Filter.Select<String>("Статус", arrayOf("Все", "Перевод завершен", "Выпуск завершен", "Онгоинг", "Новые главы"))
private class OrderBy : Filter.Sort("Сортировка",
arrayOf("Дата", "Популярность", "Имя", "Главы"),
Filter.Sort.Selection(1, false))
override fun getFilterList() = FilterList(
Status(),
OrderBy(),
GenreList(getGenreList())
)
/* [...document.querySelectorAll("li.sidetag > a:nth-child(1)")]
* .map(el => `Genre("${el.getAttribute('href').substr(6)}")`).join(',\n')
* on http://mangachan.me/
*/
private fun getGenreList() = listOf(
Genre("18_плюс"),
Genre("bdsm"),
Genre("арт"),
Genre("боевик"),
Genre("боевыескусства"),
Genre("вампиры"),
Genre("веб"),
Genre("гарем"),
Genre("гендерная_интрига"),
Genre("героическое_фэнтези"),
Genre("детектив"),
Genre("дзёсэй"),
Genre("додзинси"),
Genre("драма"),
Genre("игра"),
Genre("инцест"),
Genre("искусство"),
Genre("история"),
Genre("киберпанк"),
Genre("кодомо"),
Genre("комедия"),
Genre("литРПГ"),
Genre("махо-сёдзё"),
Genre("меха"),
Genre("мистика"),
Genre("музыка"),
Genre("научная_фантастика"),
Genre("повседневность"),
Genre("постапокалиптика"),
Genre("приключения"),
Genre("психология"),
Genre("романтика"),
Genre("самурайский_боевик"),
Genre("сборник"),
Genre("сверхъестественное"),
Genre("сказка"),
Genre("спорт"),
Genre("супергерои"),
Genre("сэйнэн"),
Genre("сёдзё"),
Genre("сёдзё-ай"),
Genre("сёнэн"),
Genre("сёнэн-ай"),
Genre("тентакли"),
Genre("трагедия"),
Genre("триллер"),
Genre("ужасы"),
Genre("фантастика"),
Genre("фурри"),
Genre("фэнтези"),
Genre("школа"),
Genre("эротика"),
Genre("юри"),
Genre("яой"),
Genre("ёнкома")
)
}

View File

@ -1,251 +0,0 @@
package eu.kanade.tachiyomi.source.online.russian
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.Headers
import okhttp3.HttpUrl
import okhttp3.Request
import okhttp3.Response
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.text.SimpleDateFormat
import java.util.*
import java.util.regex.Pattern
class Mintmanga : ParsedHttpSource() {
override val id: Long = 6
override val name = "Mintmanga"
override val baseUrl = "http://mintmanga.com"
override val lang = "ru"
override val supportsLatest = true
override fun popularMangaRequest(page: Int): Request =
GET("$baseUrl/list?sortType=rate&offset=${70 * (page - 1)}&max=70", headers)
override fun latestUpdatesRequest(page: Int): Request =
GET("$baseUrl/list?sortType=updated&offset=${70 * (page - 1)}&max=70", headers)
override fun popularMangaSelector() = "div.tile"
override fun latestUpdatesSelector() = "div.tile"
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
manga.thumbnail_url = element.select("img.lazy").first()?.attr("data-original")
element.select("h3 > a").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.attr("title")
}
return manga
}
override fun latestUpdatesFromElement(element: Element): SManga =
popularMangaFromElement(element)
override fun popularMangaNextPageSelector() = "a.nextLink"
override fun latestUpdatesNextPageSelector() = "a.nextLink"
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = HttpUrl.parse("$baseUrl/search/advanced")!!.newBuilder()
(if (filters.isEmpty()) getFilterList() else filters).forEach { filter ->
when (filter) {
is GenreList -> filter.state.forEach { genre ->
if (genre.state != Filter.TriState.STATE_IGNORE) {
url.addQueryParameter(genre.id, arrayOf("=", "=in", "=ex")[genre.state])
}
}
is Category -> filter.state.forEach { category ->
if (category.state != Filter.TriState.STATE_IGNORE) {
url.addQueryParameter(category.id, arrayOf("=", "=in", "=ex")[category.state])
}
}
}
}
if (!query.isEmpty()) {
url.addQueryParameter("q", query)
}
return GET(url.toString().replace("=%3D", "="), headers)
}
override fun searchMangaSelector() = popularMangaSelector()
override fun searchMangaFromElement(element: Element): SManga = popularMangaFromElement(element)
// max 200 results
override fun searchMangaNextPageSelector(): Nothing? = null
override fun mangaDetailsParse(document: Document): SManga {
val infoElement = document.select("div.leftContent").first()
val manga = SManga.create()
manga.author = infoElement.select("span.elem_author").first()?.text()
manga.genre = infoElement.select("span.elem_genre").text().replace(" ,", ",")
manga.description = infoElement.select("div.manga-description").text()
manga.status = parseStatus(infoElement.html())
manga.thumbnail_url = infoElement.select("img").attr("data-full")
return manga
}
private fun parseStatus(element: String): Int = when {
element.contains("<h3>Запрещена публикация произведения по копирайту</h3>") -> SManga.LICENSED
element.contains("<h1 class=\"names\"> Сингл") || element.contains("<b>Перевод:</b> завершен") -> SManga.COMPLETED
element.contains("<b>Перевод:</b> продолжается") -> SManga.ONGOING
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = "div.chapters-link tbody tr"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select("a").first()
val urlText = urlElement.text()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href") + "?mtr=1")
if (urlText.endsWith(" новое")) {
chapter.name = urlText.dropLast(6)
} else {
chapter.name = urlText
}
chapter.date_upload = element.select("td.hidden-xxs").last()?.text()?.let {
SimpleDateFormat("dd/MM/yy", Locale.US).parse(it).time
} ?: 0
return chapter
}
override fun prepareNewChapter(chapter: SChapter, manga: SManga) {
val basic = Regex("""\s*([0-9]+)(\s-\s)([0-9]+)\s*""")
val extra = Regex("""\s*([0-9]+\sЭкстра)\s*""")
val single = Regex("""\s*Сингл\s*""")
when {
basic.containsMatchIn(chapter.name) -> {
basic.find(chapter.name)?.let {
val number = it.groups[3]?.value!!
chapter.chapter_number = number.toFloat()
}
}
extra.containsMatchIn(chapter.name) -> // Extra chapters doesn't contain chapter number
chapter.chapter_number = -2f
single.containsMatchIn(chapter.name) -> // Oneshoots, doujinshi and other mangas with one chapter
chapter.chapter_number = 1f
}
}
override fun pageListParse(response: Response): List<Page> {
val html = response.body()!!.string()
val beginIndex = html.indexOf("rm_h.init( [")
val endIndex = html.indexOf("], 0, false);", beginIndex)
val trimmedHtml = html.substring(beginIndex, endIndex)
val p = Pattern.compile("'.*?','.*?',\".*?\"")
val m = p.matcher(trimmedHtml)
val pages = mutableListOf<Page>()
var i = 0
while (m.find()) {
val urlParts = m.group().replace("[\"\']+".toRegex(), "").split(',')
val url = if (urlParts[1].isEmpty() && urlParts[2].startsWith("/static/")) {
baseUrl + urlParts[2]
} else {
urlParts[1] + urlParts[0] + urlParts[2]
}
pages.add(Page(i++, "", url))
}
return pages
}
override fun pageListParse(document: Document): List<Page> {
throw Exception("Not used")
}
override fun imageUrlParse(document: Document) = ""
override fun imageRequest(page: Page): Request {
val imgHeader = Headers.Builder().apply {
add("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64)")
add("Referer", baseUrl)
}.build()
return GET(page.imageUrl!!, imgHeader)
}
private class Genre(name: String, val id: String) : Filter.TriState(name)
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genres", genres)
private class Category(categories: List<Genre>) : Filter.Group<Genre>("Category", categories)
/* [...document.querySelectorAll("tr.advanced_option:nth-child(1) > td:nth-child(3) span.js-link")]
* .map(el => `Genre("${el.textContent.trim()}", "${el.getAttribute('onclick')
* .substr(31,el.getAttribute('onclick').length-33)"})`).join(',\n')
* on http://mintmanga.com/search/advanced
*/
override fun getFilterList() = FilterList(
Category(getCategoryList()),
GenreList(getGenreList())
)
private fun getCategoryList() = listOf(
Genre("В цвете", "el_4614"),
Genre("Веб", "el_1355"),
Genre("Выпуск приостановлен", "el_5232"),
Genre("Ёнкома", "el_2741"),
Genre("Комикс западный", "el_1903"),
Genre("Комикс русский", "el_2173"),
Genre("Манхва", "el_1873"),
Genre("Маньхуа", "el_1875"),
Genre("Не Яой", "el_1874"),
Genre("Ранобэ", "el_5688"),
Genre("Сборник", "el_1348")
)
private fun getGenreList() = listOf(
Genre("арт", "el_2220"),
Genre("бара", "el_1353"),
Genre("боевик", "el_1346"),
Genre("боевые искусства", "el_1334"),
Genre("вампиры", "el_1339"),
Genre("гарем", "el_1333"),
Genre("гендерная интрига", "el_1347"),
Genre("героическое фэнтези", "el_1337"),
Genre("детектив", "el_1343"),
Genre("дзёсэй", "el_1349"),
Genre("додзинси", "el_1332"),
Genre("драма", "el_1310"),
Genre("игра", "el_5229"),
Genre("история", "el_1311"),
Genre("киберпанк", "el_1351"),
Genre("комедия", "el_1328"),
Genre("меха", "el_1318"),
Genre("мистика", "el_1324"),
Genre("научная фантастика", "el_1325"),
Genre("омегаверс", "el_5676"),
Genre("повседневность", "el_1327"),
Genre("постапокалиптика", "el_1342"),
Genre("приключения", "el_1322"),
Genre("психология", "el_1335"),
Genre("романтика", "el_1313"),
Genre("самурайский боевик", "el_1316"),
Genre("сверхъестественное", "el_1350"),
Genre("сёдзё", "el_1314"),
Genre("сёдзё-ай", "el_1320"),
Genre("сёнэн", "el_1326"),
Genre("сёнэн-ай", "el_1330"),
Genre("спорт", "el_1321"),
Genre("сэйнэн", "el_1329"),
Genre("трагедия", "el_1344"),
Genre("триллер", "el_1341"),
Genre("ужасы", "el_1317"),
Genre("фантастика", "el_1331"),
Genre("фэнтези", "el_1323"),
Genre("школа", "el_1319"),
Genre("эротика", "el_1340"),
Genre("этти", "el_1354"),
Genre("юри", "el_1315"),
Genre("яой", "el_1336")
)
}

View File

@ -1,247 +0,0 @@
package eu.kanade.tachiyomi.source.online.russian
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.source.model.*
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
import okhttp3.Headers
import okhttp3.HttpUrl
import okhttp3.Request
import okhttp3.Response
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import java.text.SimpleDateFormat
import java.util.*
import java.util.regex.Pattern
class Readmanga : ParsedHttpSource() {
override val id: Long = 5
override val name = "Readmanga"
override val baseUrl = "http://readmanga.me"
override val lang = "ru"
override val supportsLatest = true
override fun popularMangaSelector() = "div.tile"
override fun latestUpdatesSelector() = "div.tile"
override fun popularMangaRequest(page: Int): Request =
GET("$baseUrl/list?sortType=rate&offset=${70 * (page - 1)}&max=70", headers)
override fun latestUpdatesRequest(page: Int): Request =
GET("$baseUrl/list?sortType=updated&offset=${70 * (page - 1)}&max=70", headers)
override fun popularMangaFromElement(element: Element): SManga {
val manga = SManga.create()
manga.thumbnail_url = element.select("img.lazy").first()?.attr("data-original")
element.select("h3 > a").first().let {
manga.setUrlWithoutDomain(it.attr("href"))
manga.title = it.attr("title")
}
return manga
}
override fun latestUpdatesFromElement(element: Element): SManga =
popularMangaFromElement(element)
override fun popularMangaNextPageSelector() = "a.nextLink"
override fun latestUpdatesNextPageSelector() = "a.nextLink"
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val url = HttpUrl.parse("$baseUrl/search/advanced")!!.newBuilder()
(if (filters.isEmpty()) getFilterList() else filters).forEach { filter ->
when (filter) {
is GenreList -> filter.state.forEach { genre ->
if (genre.state != Filter.TriState.STATE_IGNORE) {
url.addQueryParameter(genre.id, arrayOf("=", "=in", "=ex")[genre.state])
}
}
is Category -> filter.state.forEach { category ->
if (category.state != Filter.TriState.STATE_IGNORE) {
url.addQueryParameter(category.id, arrayOf("=", "=in", "=ex")[category.state])
}
}
}
}
if (!query.isEmpty()) {
url.addQueryParameter("q", query)
}
return GET(url.toString().replace("=%3D", "="), headers)
}
override fun searchMangaSelector() = popularMangaSelector()
override fun searchMangaFromElement(element: Element): SManga = popularMangaFromElement(element)
// max 200 results
override fun searchMangaNextPageSelector(): Nothing? = null
override fun mangaDetailsParse(document: Document): SManga {
val infoElement = document.select("div.leftContent").first()
val manga = SManga.create()
manga.author = infoElement.select("span.elem_author").first()?.text()
manga.genre = infoElement.select("span.elem_genre").text().replace(" ,", ",")
manga.description = infoElement.select("div.manga-description").text()
manga.status = parseStatus(infoElement.html())
manga.thumbnail_url = infoElement.select("img").attr("data-full")
return manga
}
private fun parseStatus(element: String): Int = when {
element.contains("<h3>Запрещена публикация произведения по копирайту</h3>") -> SManga.LICENSED
element.contains("<h1 class=\"names\"> Сингл") || element.contains("<b>Перевод:</b> завершен") -> SManga.COMPLETED
element.contains("<b>Перевод:</b> продолжается") -> SManga.ONGOING
else -> SManga.UNKNOWN
}
override fun chapterListSelector() = "div.chapters-link tbody tr"
override fun chapterFromElement(element: Element): SChapter {
val urlElement = element.select("a").first()
val urlText = urlElement.text()
val chapter = SChapter.create()
chapter.setUrlWithoutDomain(urlElement.attr("href") + "?mtr=1")
if (urlText.endsWith(" новое")) {
chapter.name = urlText.dropLast(6)
} else {
chapter.name = urlText
}
chapter.date_upload = element.select("td.hidden-xxs").last()?.text()?.let {
SimpleDateFormat("dd/MM/yy", Locale.US).parse(it).time
} ?: 0
return chapter
}
override fun prepareNewChapter(chapter: SChapter, manga: SManga) {
val basic = Regex("""\s*([0-9]+)(\s-\s)([0-9]+)\s*""")
val extra = Regex("""\s*([0-9]+\sЭкстра)\s*""")
val single = Regex("""\s*Сингл\s*""")
when {
basic.containsMatchIn(chapter.name) -> {
basic.find(chapter.name)?.let {
val number = it.groups[3]?.value!!
chapter.chapter_number = number.toFloat()
}
}
extra.containsMatchIn(chapter.name) -> // Extra chapters doesn't contain chapter number
chapter.chapter_number = -2f
single.containsMatchIn(chapter.name) -> // Oneshoots, doujinshi and other mangas with one chapter
chapter.chapter_number = 1f
}
}
override fun pageListParse(response: Response): List<Page> {
val html = response.body()!!.string()
val beginIndex = html.indexOf("rm_h.init( [")
val endIndex = html.indexOf("], 0, false);", beginIndex)
val trimmedHtml = html.substring(beginIndex, endIndex)
val p = Pattern.compile("'.*?','.*?',\".*?\"")
val m = p.matcher(trimmedHtml)
val pages = mutableListOf<Page>()
var i = 0
while (m.find()) {
val urlParts = m.group().replace("[\"\']+".toRegex(), "").split(',')
val url = if (urlParts[1].isEmpty() && urlParts[2].startsWith("/static/")) {
baseUrl + urlParts[2]
} else {
urlParts[1] + urlParts[0] + urlParts[2]
}
pages.add(Page(i++, "", url))
}
return pages
}
override fun pageListParse(document: Document): List<Page> {
throw Exception("Not used")
}
override fun imageUrlParse(document: Document) = ""
override fun imageRequest(page: Page): Request {
val imgHeader = Headers.Builder().apply {
add("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64)")
add("Referer", baseUrl)
}.build()
return GET(page.imageUrl!!, imgHeader)
}
private class Genre(name: String, val id: String) : Filter.TriState(name)
private class GenreList(genres: List<Genre>) : Filter.Group<Genre>("Genres", genres)
private class Category(categories: List<Genre>) : Filter.Group<Genre>("Category", categories)
/* [...document.querySelectorAll("tr.advanced_option:nth-child(1) > td:nth-child(3) span.js-link")]
* .map(el => `Genre("${el.textContent.trim()}", $"{el.getAttribute('onclick')
* .substr(31,el.getAttribute('onclick').length-33)"})`).join(',\n')
* on http://readmanga.me/search/advanced
*/
override fun getFilterList() = FilterList(
Category(getCategoryList()),
GenreList(getGenreList())
)
private fun getCategoryList() = listOf(
Genre("В цвете", "el_7290"),
Genre("Веб", "el_2160"),
Genre("Выпуск приостановлен", "el_8033"),
Genre("Ёнкома", "el_2161"),
Genre("Комикс западный", "el_3515"),
Genre("Манхва", "el_3001"),
Genre("Маньхуа", "el_3002"),
Genre("Ранобэ", "el_8575"),
Genre("Сборник", "el_2157")
)
private fun getGenreList() = listOf(
Genre("арт", "el_5685"),
Genre("боевик", "el_2155"),
Genre("боевые искусства", "el_2143"),
Genre("вампиры", "el_2148"),
Genre("гарем", "el_2142"),
Genre("гендерная интрига", "el_2156"),
Genre("героическое фэнтези", "el_2146"),
Genre("детектив", "el_2152"),
Genre("дзёсэй", "el_2158"),
Genre("додзинси", "el_2141"),
Genre("драма", "el_2118"),
Genre("игра", "el_2154"),
Genre("история", "el_2119"),
Genre("киберпанк", "el_8032"),
Genre("кодомо", "el_2137"),
Genre("комедия", "el_2136"),
Genre("махо-сёдзё", "el_2147"),
Genre("меха", "el_2126"),
Genre("мистика", "el_2132"),
Genre("научная фантастика", "el_2133"),
Genre("повседневность", "el_2135"),
Genre("постапокалиптика", "el_2151"),
Genre("приключения", "el_2130"),
Genre("психология", "el_2144"),
Genre("романтика", "el_2121"),
Genre("самурайский боевик", "el_2124"),
Genre("сверхъестественное", "el_2159"),
Genre("сёдзё", "el_2122"),
Genre("сёдзё-ай", "el_2128"),
Genre("сёнэн", "el_2134"),
Genre("сёнэн-ай", "el_2139"),
Genre("спорт", "el_2129"),
Genre("сэйнэн", "el_2138"),
Genre("трагедия", "el_2153"),
Genre("триллер", "el_2150"),
Genre("ужасы", "el_2125"),
Genre("фантастика", "el_2140"),
Genre("фэнтези", "el_2131"),
Genre("школа", "el_2127"),
Genre("этти", "el_2149"),
Genre("юри", "el_2123")
)
}

View File

@ -18,8 +18,10 @@ import kotlinx.android.synthetic.main.catalogue_global_search_controller.*
* This controller should only handle UI actions, IO actions should be done by [CatalogueSearchPresenter]
* [CatalogueSearchCardAdapter.OnMangaClickListener] called when manga is clicked in global search
*/
open class CatalogueSearchController(protected val initialQuery: String? = null) :
NucleusController<CatalogueSearchPresenter>(),
open class CatalogueSearchController(
protected val initialQuery: String? = null,
protected val extensionFilter: String? = null
) : NucleusController<CatalogueSearchPresenter>(),
CatalogueSearchCardAdapter.OnMangaClickListener {
/**
@ -60,7 +62,7 @@ open class CatalogueSearchController(protected val initialQuery: String? = null)
* @return instance of [CatalogueSearchPresenter]
*/
override fun createPresenter(): CatalogueSearchPresenter {
return CatalogueSearchPresenter(initialQuery)
return CatalogueSearchPresenter(initialQuery, extensionFilter)
}
/**
@ -185,4 +187,4 @@ open class CatalogueSearchController(protected val initialQuery: String? = null)
getHolder(source)?.setImage(manga)
}
}
}

View File

@ -5,6 +5,7 @@ import eu.kanade.tachiyomi.data.database.DatabaseHelper
import eu.kanade.tachiyomi.data.database.models.Manga
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
import eu.kanade.tachiyomi.data.preference.getOrDefault
import eu.kanade.tachiyomi.extension.ExtensionManager
import eu.kanade.tachiyomi.source.CatalogueSource
import eu.kanade.tachiyomi.source.Source
import eu.kanade.tachiyomi.source.SourceManager
@ -21,6 +22,7 @@ import rx.subjects.PublishSubject
import timber.log.Timber
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
/**
* Presenter of [CatalogueSearchController]
@ -32,6 +34,7 @@ import uy.kohesive.injekt.api.get
*/
open class CatalogueSearchPresenter(
val initialQuery: String? = "",
val initialExtensionFilter: String? = null,
val sourceManager: SourceManager = Injekt.get(),
val db: DatabaseHelper = Injekt.get(),
val preferencesHelper: PreferencesHelper = Injekt.get()
@ -40,7 +43,7 @@ open class CatalogueSearchPresenter(
/**
* Enabled sources.
*/
val sources by lazy { getEnabledSources() }
val sources by lazy { getSourcesToQuery() }
/**
* Query from the view.
@ -63,9 +66,16 @@ open class CatalogueSearchPresenter(
*/
private var fetchImageSubscription: Subscription? = null
private val extensionManager by injectLazy<ExtensionManager>()
private var extensionFilter: String? = null
override fun onCreate(savedState: Bundle?) {
super.onCreate(savedState)
extensionFilter = savedState?.getString(CatalogueSearchPresenter::extensionFilter.name) ?:
initialExtensionFilter
// Perform a search with previous or initial state
search(savedState?.getString(BrowseCataloguePresenter::query.name) ?: initialQuery.orEmpty())
}
@ -78,6 +88,7 @@ open class CatalogueSearchPresenter(
override fun onSave(state: Bundle) {
state.putString(BrowseCataloguePresenter::query.name, query)
state.putString(CatalogueSearchPresenter::extensionFilter.name, extensionFilter)
super.onSave(state)
}
@ -97,6 +108,26 @@ open class CatalogueSearchPresenter(
.sortedBy { "(${it.lang}) ${it.name}" }
}
private fun getSourcesToQuery(): List<CatalogueSource> {
val filter = extensionFilter
val enabledSources = getEnabledSources()
if (filter.isNullOrEmpty()) {
return enabledSources
}
val filterSources = extensionManager.installedExtensions
.filter { it.pkgName == filter }
.flatMap { it.sources }
.filter { it in enabledSources }
.filterIsInstance<CatalogueSource>()
if (filterSources.isEmpty()) {
return enabledSources
}
return filterSources
}
/**
* Creates a catalogue search item
*/

View File

@ -164,12 +164,25 @@ class MainActivity : BaseActivity() {
//If the intent match the "standard" Android search intent
// or the Google-specific search intent (triggered by saying or typing "search *query* on *Tachiyomi*" in Google Search/Google Assistant)
setSelectedDrawerItem(R.id.nav_drawer_catalogues)
//Get the search query provided in extras, and if not null, perform a global search with it.
intent.getStringExtra(SearchManager.QUERY)?.also { query ->
val query = intent.getStringExtra(SearchManager.QUERY)
if (query != null && !query.isEmpty()) {
if (router.backstackSize > 1) {
router.popToRoot()
}
router.pushController(CatalogueSearchController(query).withFadeTransaction())
}
}
INTENT_SEARCH -> {
val query = intent.getStringExtra(INTENT_SEARCH_QUERY)
val filter = intent.getStringExtra(INTENT_SEARCH_FILTER)
if (query != null && !query.isEmpty()) {
if (router.backstackSize > 1) {
router.popToRoot()
}
router.pushController(CatalogueSearchController(query, filter).withFadeTransaction())
}
}
else -> return false
}
return true
@ -254,6 +267,10 @@ class MainActivity : BaseActivity() {
const val SHORTCUT_CATALOGUES = "eu.kanade.tachiyomi.SHOW_CATALOGUES"
const val SHORTCUT_DOWNLOADS = "eu.kanade.tachiyomi.SHOW_DOWNLOADS"
const val SHORTCUT_MANGA = "eu.kanade.tachiyomi.SHOW_MANGA"
const val INTENT_SEARCH = "eu.kanade.tachiyomi.SEARCH"
const val INTENT_SEARCH_QUERY = "query"
const val INTENT_SEARCH_FILTER = "filter"
}
}

View File

@ -9,6 +9,7 @@ import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.source.SourceManager
import eu.kanade.tachiyomi.source.online.HttpSource
import eu.kanade.tachiyomi.ui.base.controller.BaseController
import eu.kanade.tachiyomi.util.WebViewClientCompat
import uy.kohesive.injekt.injectLazy
class MangaWebViewController(bundle: Bundle? = null) : BaseController(bundle) {
@ -31,6 +32,12 @@ class MangaWebViewController(bundle: Bundle? = null) : BaseController(bundle) {
val headers = source.headers.toMultimap().mapValues { it.value.getOrNull(0) ?: "" }
val web = view as WebView
web.webViewClient = object : WebViewClientCompat() {
override fun shouldOverrideUrlCompat(view: WebView, url: String): Boolean {
view.loadUrl(url)
return true
}
}
web.settings.javaScriptEnabled = true
web.settings.userAgentString = source.headers["User-Agent"]
web.loadUrl(url, headers)

View File

@ -31,7 +31,7 @@ class SettingsGeneralController : SettingsController() {
titleRes = R.string.pref_language
entryValues = arrayOf("", "ar", "bg", "bn", "ca", "cs", "de", "el", "en-US", "en-GB",
"es", "fr", "hi", "hu", "in", "it", "ja", "ko", "lv", "ms", "nb-rNO", "nl", "pl", "pt",
"pt-BR", "ro", "ru", "sr", "sv", "th", "tr", "uk", "vi", "zh-rCN")
"pt-BR", "ro", "ru", "sc", "sr", "sv", "th", "tl", "tr", "uk", "vi", "zh-rCN")
entries = entryValues.map { value ->
val locale = LocaleHelper.getLocaleFromString(value.toString())
locale?.getDisplayName(locale)?.capitalize() ?:

View File

@ -1,5 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<changelog bulletedList="true">
<changelogversion versionName="v0.8.4" changeDate="">
<changelogtext>All the internal sources have been removed. They now need to be
installed as an extension.</changelogtext>
<changelogtext>Cloudflare is now resolved with a WebView in background which should put
an end to the recent updates to adapt to their changes.</changelogtext>
<changelogtext>Added an option to open manga details in a WebView. This
should also help when receiving a captcha confirmation page (usually 403 errors).
It can also be used to login with the website, as the app now shares cookies.</changelogtext>
<changelogtext>Added a deep link handler that extensions can use to perform
a search within the app.</changelogtext>
<changelogtext>Added an option to decode images in ARGB8888 format for
devices running Oreo or later.</changelogtext>
<changelogtext>Added Shikimori tracker.</changelogtext>
<changelogtext>Updated translations.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.8.2" changeDate="">
<changelogtext>Updated Cloudflare.</changelogtext>
<changelogtext>Fixed crashes with some translations.</changelogtext>
@ -68,106 +84,4 @@
<changelogtext>Bugfixes and minor UI/UX improvements.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.8" changeDate="">
<changelogtext>Added a new feature to help migrating manga from sources. You can find it in the library's toolbar.
In the search results, a tap will prompt to replace (or copy) the selected manga, while a long tap will let you
browse the manga before doing the migration.
</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.7" changeDate="">
<changelogtext>[b]Notice to Batoto users.[/b] As you may already know, Batoto will cease to work in a few days.
We're working on a feature to help migrating the library to other sources and should be available shortly.
Please be patient.</changelogtext>
<changelogtext>Fixed http 503 errors due to Cloudflare changes.</changelogtext>
<changelogtext>Minor UI improvements.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.6" changeDate="">
<changelogtext>Backups now properly restore tracking information.</changelogtext>
<changelogtext>Fixed library view and its overflow menu visible in other screens.</changelogtext>
<changelogtext>Fixed updater's notification in Android O.</changelogtext>
<changelogtext>Fixed a crash when rotating the screen in the chapters view.</changelogtext>
<changelogtext>Improved peformance of the app when using a custom downloads directory.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.5" changeDate="">
<changelogtext>Added a download cache for faster navigation.</changelogtext>
<changelogtext>Enabled Cloudflare for Batoto.</changelogtext>
<changelogtext>Fixed some issues with automatic backups.</changelogtext>
<changelogtext>Fixed a bootloop issue with devices running Cyanogenmod 12 or 13.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.4" changeDate="">
<changelogtext>Added a global search feature with a new catalogue screen.</changelogtext>
<changelogtext>Added an option to show downloaded chapters badges in the library.</changelogtext>
<changelogtext>Added an scrollbar in the chapter list.</changelogtext>
<changelogtext>Fixed some issues with bundled catalogues.</changelogtext>
<changelogtext>Changed the page indicator in the reader to support devices with rounded corners.</changelogtext>
<changelogtext>Crash fixes.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.3" changeDate="">
<changelogtext>Fixed a crash when retrying a page.</changelogtext>
<changelogtext>Fixed a crash when sharing an image.</changelogtext>
<changelogtext>Fixed disappearing toolbar buttons in the catalog after a search.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.2" changeDate="">
<changelogtext>Added a new completed manga filter for the library.</changelogtext>
<changelogtext>Added scanlator to chapters (if supported by source).</changelogtext>
<changelogtext>Added Discord server link.</changelogtext>
<changelogtext>Added new translations.</changelogtext>
<changelogtext>Extensions shouldn't crash the app anymore.</changelogtext>
<changelogtext>Crop borders is supported in webtoon reader and fixed in Android O.</changelogtext>
<changelogtext>Fixed a bug where storage permissions were always requested.</changelogtext>
<changelogtext>Minor UI and crash fixes.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.1" changeDate="">
<changelogtext>Bugfix release.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.6.0" changeDate="">
<changelogtext>Added sorting by total chapters.</changelogtext>
<changelogtext>Added an option to reverse volume keys navigation.</changelogtext>
<changelogtext>Added AMOLED theme.</changelogtext>
<changelogtext>Improved recent chapters view.</changelogtext>
<changelogtext>Improved UI with a single activity approach.</changelogtext>
<changelogtext>Fixed backup restore issues.</changelogtext>
<changelogtext>Fixed Kitsu http 400 errors.</changelogtext>
<changelogtext>Fixed Batoto catalogue.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.5.2" changeDate="">
<changelogtext>New backup system. Smaller file size but requires a network connection to restore.</changelogtext>
<changelogtext>Fixed descriptions showing a single line.</changelogtext>
<changelogtext>Added Nougat shortcuts and round icon.</changelogtext>
<changelogtext>Added an option to add a manga to a specific category.</changelogtext>
<changelogtext>Improved new chapters notification.</changelogtext>
<changelogtext>Support Kitsu new rating system.</changelogtext>
<changelogtext>Last read page is now retained in webtoon reader.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.5.1" changeDate="">
<changelogtext>Added an option to auto download from selected categories.</changelogtext>
<changelogtext>Handle a few more directories for local manga.</changelogtext>
<changelogtext>Update Kissmanga parser.</changelogtext>
<changelogtext>Fixed downloader errors with some manga titles.</changelogtext>
<changelogtext>Fixed gallery not showing saved images.</changelogtext>
</changelogversion>
<changelogversion versionName="v0.5.0" changeDate="">
<changelogtext>Support for local manga. Head to the [a href="https://github.com/inorichi/tachiyomi/wiki/Local-manga"]wiki page[/a] for instructions.</changelogtext>
<changelogtext>Added an option to detect and remove the white borders of the images.</changelogtext>
<changelogtext>Added advanced search for catalogues.</changelogtext>
<changelogtext>Russian, french, bulgarian and vietnamese translations.</changelogtext>
<changelogtext>Fixed a bug when changing chapters inside the reader with the buttons.</changelogtext>
<changelogtext>Fixed certain downloaded chapters not working with any decoder.</changelogtext>
<changelogtext>Fixed lost covers on some devices.</changelogtext>
</changelogversion>
</changelog>

View File

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">Име</string>
<!-- Activities and fragments labels (toolbar title) -->
<string name="label_settings">Настройки</string>
<string name="label_download_queue">Изтегляния</string>
@ -13,7 +12,6 @@
<string name="label_categories">Категории</string>
<string name="label_selected">Избрани: %1$d</string>
<string name="label_backup">Резервно копие</string>
<!-- Actions -->
<string name="action_settings">Настройки</string>
<string name="action_filter">Филтрирай</string>
@ -70,13 +68,11 @@
<string name="action_save">Запази</string>
<string name="action_reset">Изчисти</string>
<string name="action_undo">Върни</string>
<!-- Operations -->
<string name="deleting">Изтрива се</string>
<string name="loading">Зареждане …</string>
<string name="deleting">Изтриване …</string>
<string name="loading">Зареждане…</string>
<!-- Preferences -->
<!-- Subsections -->
<!-- Subsections -->
<string name="pref_category_general">Основни настройки</string>
<string name="pref_category_reader">Четец</string>
<string name="pref_category_downloads">Изтегляния</string>
@ -84,8 +80,7 @@
<string name="pref_category_tracking">Следене</string>
<string name="pref_category_advanced">Разширени настройки</string>
<string name="pref_category_about">За приложението</string>
<!-- General section -->
<!-- General section -->
<string name="pref_library_columns">Манга на ред</string>
<string name="portrait">Портретно</string>
<string name="landscape">Пейзажно</string>
@ -114,8 +109,7 @@
<string name="pref_start_screen">Начален екран</string>
<string name="pref_language">Език</string>
<string name="system_default">По подразбиране</string>
<!-- Reader section -->
<!-- Reader section -->
<string name="pref_fullscreen">Цял екран</string>
<string name="pref_lock_orientation">Заключи ориентацията</string>
<string name="pref_page_transitions">Преходи</string>
@ -157,9 +151,7 @@
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<!-- Downloads section -->
<!-- Downloads section -->
<string name="pref_download_directory">Директория на изтеглянията</string>
<string name="pref_download_only_over_wifi">Тегли само с Wi-Fi</string>
<string name="pref_remove_after_marked_as_read">Изтрий, щом маркирам като прочетено</string>
@ -172,11 +164,9 @@
<string name="fourth_to_last">Четвърта последно прочетена глава</string>
<string name="fifth_to_last">Пета последно прочетена глава</string>
<string name="pref_download_new">Изтегляй нови глави</string>
<!-- Sync section -->
<!-- Sync section -->
<string name="services">Услуги</string>
<!-- Advanced section -->
<!-- Advanced section -->
<string name="pref_clear_chapter_cache">Изчисти кеша на главите</string>
<string name="used_cache">Използвани: %1$s</string>
<string name="cache_deleted">Кеш изчистен. %1$d файла бяха изчистени</string>
@ -190,8 +180,7 @@
<string name="clear_database_completed">Базата данни изчистена</string>
<string name="pref_refresh_library_metadata">Обнови метаданните на библиотеката</string>
<string name="pref_refresh_library_metadata_summary">Обновява кориците, жанровете, описанието и статуса на мангите</string>
<!-- About section -->
<!-- About section -->
<string name="version">Версия</string>
<string name="build_time">Време на създаване</string>
<string name="pref_enable_automatic_updates">Провери за актуализации</string>
@ -199,8 +188,6 @@
<!-- ACRA -->
<string name="pref_enable_acra">Изпращай данни за грешки</string>
<string name="pref_acra_summary">Помага за оправянето на бъгове. Няма да се изпращат лични данни</string>
<!-- Login dialog -->
<string name="login_title">Влизане в %1$s</string>
<string name="username">Потребителско име</string>
@ -210,21 +197,17 @@
<string name="login_success">Влизане успешно</string>
<string name="invalid_login">Получи се грешка при влизане</string>
<string name="unknown_error">Неизвестна грешка</string>
<!-- Library fragment -->
<string name="library_search_hint">Заглавие или автор…</string>
<string name="updating_category">Обновяване на категорията</string>
<string name="confirm_delete_manga">Сигурни ли сте, че желаете да премахнете избраната манга?</string>
<!-- Catalogue fragment -->
<string name="source_requires_login">Източникът изисква от вас да въведете име и парола</string>
<string name="select_source">Изберете източник</string>
<string name="no_valid_sources">Моля, изберете поне един валиден източник</string>
<string name="no_more_results">Няма повече резултати</string>
<!-- Manga activity -->
<string name="manga_not_in_db">Тази манга беше премахната от базата данни!</string>
<!-- Manga info fragment -->
<string name="manga_detail_tab">Инфо</string>
<string name="description">Описание</string>
@ -245,7 +228,6 @@
<string name="shortcut_title">Име на пряк път</string>
<string name="icon_shape">Форма на икона</string>
<string name="icon_creation_fail">Пряк път не можа да бъде създаден!</string>
<!-- Manga chapters fragment -->
<string name="manga_chapters_tab">Глави</string>
<string name="manga_chapter_no_title">Неозаглавена</string>
@ -268,7 +250,6 @@
<string name="download_all">Изтегли всички глави</string>
<string name="download_unread">Изтегли непрочетени глави</string>
<string name="confirm_delete_chapters">Сигурни ли сте, че искате да изтриете избраните глави?</string>
<!-- MyAnimeList fragment -->
<string name="manga_tracking_tab">Следене</string>
<string name="reading">В прочит</string>
@ -280,23 +261,18 @@
<string name="title">Заглавие</string>
<string name="status">Статус</string>
<string name="chapters">Глави</string>
<!-- Category activity -->
<string name="error_category_exists">Категория със същото име вече съществува!</string>
<string name="snack_categories_deleted">Категориите бяха изтрити</string>
<!-- Dialog option with checkbox view -->
<string name="dialog_with_checkbox_remove_description">Това ще премахне датата на прочитане на главата. Сигурни ли сте?</string>
<string name="dialog_with_checkbox_reset">Рестартирай всички глави за тази манга</string>
<!-- SnackBar -->
<string name="snack_add_to_library">Добавяне на мангата към библиотеката\?</string>
<!-- Image notifier -->
<string name="picture_saved">Изображението запазено</string>
<string name="saving_picture">Запазване на изображението</string>
<string name="options">Опции</string>
<!-- Reader activity -->
<string name="custom_filter">Персонализиран филтър</string>
<string name="set_as_cover">Постави за корица</string>
@ -312,16 +288,12 @@
<string name="confirm_update_manga_sync">Обнови последната прочетена глава в %1$d?</string>
<string name="confirm_set_image_as_cover">Желаете ли да използвате това изображение за корица?</string>
<string name="viewer_for_this_series">зрител за тази серия</string>
<!-- Backup fragment -->
<string name="backup">Резервно копие</string>
<!-- Recent manga fragment -->
<string name="recent_manga_source">%1$s - Глава %2$s</string>
<!-- Downloads activity and service -->
<string name="download_queue_error">Получи се грешка при изтеглянето на главите. Може да опитате пак в секцията на изтеглянията</string>
<!-- Library update service notifications -->
<string name="notification_update_progress">Напредък на обновяването: %1$d/%2$d</string>
<string name="notification_new_chapters">Нови глави са намерени</string>
@ -331,12 +303,10 @@
<string name="notification_not_connected_to_ac_body">Няма връзка към зарядно устройство</string>
<string name="notification_no_connection_title">Синхронизиране отменено</string>
<string name="notification_no_connection_body">Няма налична връзка</string>
<!-- File Picker Titles -->
<string name="file_select_cover">Изберете корица</string>
<string name="file_select_backup">Изберете резервно копие</string>
<string name="file_select_icon">Изберете икона за пряк път</string>
<!--UpdateCheck-->
<string name="update_check_title">Достъпна е нова актуализация!</string>
<string name="update_check_confirm">Изтегли</string>
@ -344,24 +314,20 @@
<string name="update_check_no_new_updates">Няма налични актуализации</string>
<string name="update_check_download_started">Изтеглянето започна</string>
<string name="update_check_look_for_updates">Търсене на актуализации</string>
<!--UpdateCheck Notifications-->
<string name="update_check_notification_file_download">Изтегли актуализацията</string>
<string name="update_check_notification_download_in_progress">Изтегля се</string>
<string name="update_check_notification_download_complete">Изтегляне завършено</string>
<string name="update_check_notification_download_error">Грешка при изтегляне</string>
<string name="update_check_notification_update_available">Налична актуализация</string>
<!--Content Description-->
<string name="description_backdrop">Фон на мангата</string>
<string name="description_cover">Корица</string>
<!-- Information Text -->
<string name="information_no_downloads">Нямате изтегляния</string>
<string name="information_no_recent">Нямате скорошни глави</string>
<string name="information_no_recent_manga">Няматe наскоро прочетена манга</string>
<string name="information_empty_library">Библиотеката Ви е празна, можете да я напълните от менюто Каталози.</string>
<!-- Download Notification -->
<string name="download_notifier_downloader_title">Изтегли</string>
<string name="download_notifier_title_error">Грешка</string>
@ -370,34 +336,28 @@
<string name="download_notifier_page_ready_error">Страницата не е заредена</string>
<string name="download_notifier_text_only_wifi">Няма налична Wi-Fi връзка</string>
<string name="download_notifier_no_network">Няма налична интернет връзка</string>
<string name="categories">Категории</string>
<string name="categories">Категории</string>
<string name="manga">Манга</string>
<string name="track">Следене</string>
<string name="history">История</string>
<string name="action_sort_total">Общ брой глави</string>
<string name="action_close">Затвори</string>
<string name="action_move">Премести</string>
<string name="action_export">Експортирай</string>
<string name="action_open_log">отворен дънер</string>
<string name="action_open_log">Отвори лога</string>
<string name="action_create">Създай</string>
<string name="action_restore">Възстанови</string>
<string name="app_not_available">Приложението не е достъпно</string>
<string name="short_recent_updates">Обновления</string>
<string name="update_weekly">Ежеседмично</string>
<string name="update_monthly">Ежемесечно</string>
<string name="amoled_theme">AMOLED тема</string>
<string name="default_category">Категория по подразбиране</string>
<string name="default_category_summary">Питай всеки път</string>
<string name="pref_crop_borders">Изрязвай границите</string>
<string name="pref_crop_borders">Изрязвай границите</string>
<string name="pref_read_with_volume_keys_inverted">Обърнати бутони за звука</string>
<string name="pref_download_new_categories">Категории за включване при теглене</string>
<string name="pref_create_backup">Създай резервно копие</string>
<string name="pref_create_backup">Създай резервно копие</string>
<string name="pref_create_backup_summ">Може да се използва за възстановяване на текущата библиотека</string>
<string name="pref_restore_backup">Възстанови резервно копие</string>
<string name="pref_restore_backup_summ">Възстанови библиотеката от резервно копие</string>
@ -419,48 +379,37 @@
<string name="backup_choice">Какво искате да запазите?</string>
<string name="restoring_backup">Възстановяване на копие</string>
<string name="creating_backup">Създаване на резервно копие</string>
<string name="pref_refresh_library_tracking">Обнови метаданните на проследяването</string>
<string name="pref_refresh_library_tracking">Обнови метаданните на проследяването</string>
<string name="pref_refresh_library_tracking_summary">Обновява статус, оценка и последно прочетена глава от услугите за проследяване</string>
<string name="also_delete_chapters">Също изтрий изтеглените глави</string>
<string name="also_delete_chapters">Също изтрий изтеглените глави</string>
<string name="local_source">Локална манга</string>
<string name="invalid_combination">\"По подразбиране\" не може да се избира с други категории</string>
<string name="added_to_library">Мангата беше добавена към библиотеката Ви</string>
<string name="manga_info_last_chapter_label">Последна глава</string>
<string name="delete_downloads_for_manga">Да се изтрият ли изтеглените глави?</string>
<string name="chapter_paused">На пауза</string>
<string name="notification_new_chapters_text">За %1$d заглавия</string>
<string name="download_notifier_download_paused">Изтеглянето спряно</string>
<string name="backup_restore_content">За възстановяването се изтеглят данни от източника, за които може да бъде отчетен разход на данни.
<string name="backup_restore_content">За възстановяването се изтеглят данни от източника, за които може да бъде отчетен разход на данни.
\nСъщо проверете дали сте влезли коректно в източниците, които го изискват, преди възстановяването.</string>
<string name="action_global_search">Глобално търсене</string>
<string name="action_open">Отвори</string>
<string name="action_login">Вход</string>
<string name="other_source">Други</string>
<string name="action_global_search_hint">Глобално търсене…</string>
<string name="no_results">Не бяха открити резултати!</string>
<string name="latest">Последни</string>
<string name="browse">Търсене</string>
<string name="shortcut_created">Прекият път беше добавен към началния екран.</string>
<string name="channel_common">Общи</string>
<string name="channel_library">Библиотека</string>
<string name="channel_downloader">Изтегляния</string>
<string name="action_display_download_badge">Изтегляне на значки</string>
<string name="action_display_download_badge">Изтегляне на значки</string>
<string name="local_source_badge">Локална</string>
<string name="information_empty_category">Нямате категории. Натиснете плюса, за да създадете такава и да организирате библиотеката си.</string>
<string name="label_migration">Смяна на източник</string>
<string name="label_extensions">Добавки</string>
<string name="label_extension_info">Информация</string>
<string name="all_lang">Всички</string>
<string name="ext_details">Подробности</string>
<string name="ext_update">Обнови</string>
@ -483,8 +432,7 @@
<string name="ext_version_info">Версия: %1$s</string>
<string name="ext_language_info">Език: %1$s</string>
<string name="ext_empty_preferences">Няма предпочитания за това разширение</string>
<string name="pref_double_tap_anim_speed">Скорост на анимацията</string>
<string name="pref_double_tap_anim_speed">Скорост на анимацията</string>
<string name="double_tap_anim_speed_0">Без анимация</string>
<string name="double_tap_anim_speed_normal">Нормална</string>
<string name="double_tap_anim_speed_fast">Бързо</string>
@ -494,7 +442,6 @@
<string name="manga_removed_library">Премахната от библиотеката</string>
<string name="manga_info_latest_data_label">Обновена</string>
<string name="copied_to_clipboard">%1$s копирано към клипборда</string>
<string name="custom_download">Изтегли определен брой</string>
<string name="custom_hint">брой</string>
<string name="download_custom">Изтегли определен брой</string>
@ -504,17 +451,14 @@
<string name="migrate">Мигрирай</string>
<string name="copy">Копирай</string>
<string name="migrating">Мигриране…</string>
<string name="pager_viewer">пейджър</string>
<string name="source_not_installed">Източникът не е инсталиран: %1$s</string>
<string name="repeating">Препрочитане</string>
<string name="track_status">Статус</string>
<string name="track_start_date">Започната на</string>
<string name="track_type">Тип</string>
<string name="track_author">Автор</string>
<string name="url_not_set">Мангата няма връзка с акаунта, молим отново да натиснете заглавието и да изберете мангата</string>
<string name="transition_finished">Завършени:</string>
<string name="transition_current">Текущи:</string>
<string name="transition_next">Следва:</string>
@ -523,6 +467,7 @@
<string name="transition_no_previous">Няма предишна глава</string>
<string name="transition_pages_loading">Зареждане на страниците…</string>
<string name="transition_pages_error">"Неуспешно зареждане на страници: %1$s "</string>
<string name="darkblue_theme">Тъмно син</string>
</resources>
<string name="pref_read_with_long_tap">Показване на прозорец след натискане</string>
<string name="reader_pull_up_for_more_options">Издърпайте за допълнително опции</string>
</resources>

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<resources><string name="categories">Kategorie</string>
<resources>
<string name="categories">Kategorie</string>
<string name="manga">Manga</string>
<string name="chapters">Kapitoly</string>
<string name="history">Historie</string>
<string name="label_settings">Nastavení</string>
<string name="label_library">Moje knihovna</string>
<string name="label_recent_manga">Nedávno čteno</string>
@ -14,8 +14,6 @@
<string name="label_migration">Zdroj migrace</string>
<string name="label_extensions">Rozšíření</string>
<string name="label_extension_info">Informace o rozšíření</string>
<string name="action_settings">Nastavení</string>
<string name="action_filter">Filtr</string>
<string name="action_filter_downloaded">Staženo</string>
@ -56,9 +54,7 @@
<string name="action_restore">Obnovit</string>
<string name="action_open">Otevřít</string>
<string name="action_login">Přihlásit se</string>
<string name="loading">Načítání…</string>
<string name="app_not_available">Aplikace není k dispozici</string>
<string name="pref_category_downloads">Stahování</string>
<string name="update_1hour">Každou hodinu</string>
@ -102,8 +98,7 @@
<string name="ext_version_info">Verze: %1$s</string>
<string name="ext_language_info">Jazyk: %1$s</string>
<string name="ext_empty_preferences">Neexistují žádné předvolby k úpravám pro toto rozšíření</string>
<string name="pref_fullscreen">Celá obrazovka</string>
<string name="pref_fullscreen">Celá obrazovka</string>
<string name="pref_page_transitions">Přechody stránek</string>
<string name="pref_show_page_number">Zobrazit číslo stránky</string>
<string name="pref_read_with_volume_keys">Tlačítka hlasitosti</string>
@ -122,9 +117,7 @@
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">Složka pro stahování</string>
<string name="pref_download_directory">Složka pro stahování</string>
<string name="pref_download_only_over_wifi">Stahovat pouze na Wi-Fi</string>
<string name="pref_remove_after_marked_as_read">Odstranit po označení jako přečtené</string>
<string name="pref_remove_after_read">Odstranit po čtení</string>
@ -137,14 +130,12 @@
<string name="login_success">Přihlášení úspěšné</string>
<string name="invalid_login">Chyba při přihlašování</string>
<string name="unknown_error">Neznámá chyba</string>
<string name="confirm_delete_manga">Opravdu chcete odstranit vybrané mangy\?</string>
<string name="no_more_results">Žádné další výsledky</string>
<string name="added_to_library">Manga byla přidána do vaší knihovny</string>
<string name="action_global_search_hint">Globální vyhledávání…</string>
<string name="no_results">Žádné výsledky!</string>
<string name="manga_not_in_db">Manga byla odstraněna z databáze!</string>
<string name="manga_detail_tab">Info</string>
<string name="description">Popis</string>
<string name="ongoing">Vycházející</string>
@ -161,7 +152,6 @@
<string name="icon_creation_fail">Nepodařilo se vytvořit zástupce!</string>
<string name="delete_downloads_for_manga">Smazat stažené kapitoly\?</string>
<string name="source_not_installed">Zdroj není nainstalována: %1$s</string>
<string name="manga_chapters_tab">Kapitoly</string>
<string name="manga_chapter_no_title">Bez názvu</string>
<string name="display_mode_chapter">Kapitola %1$s</string>
@ -179,7 +169,6 @@
<string name="download_all">Stáhnout vše</string>
<string name="download_unread">Stáhnout nepřečtené</string>
<string name="confirm_delete_chapters">Opravdu chcete smazat vybrané kapitoly\?</string>
<string name="reading">Čtení</string>
<string name="completed">Kompletní</string>
<string name="plan_to_read">Plánováno číst</string>
@ -189,13 +178,10 @@
<string name="track_type">Typ</string>
<string name="track_author">Autor</string>
<string name="dialog_with_checkbox_reset">Restartovat všechny kapitoly mangy</string>
<string name="snack_add_to_library">Přidat mangu do knihovny\?</string>
<string name="picture_saved">Obrázek uložen</string>
<string name="saving_picture">Ukládání obrázku</string>
<string name="options">Možnosti</string>
<string name="custom_filter">Vlastní filtr</string>
<string name="page_downloaded">Stránka zkopírována do %1$s</string>
<string name="downloading">Stahování…</string>
@ -216,30 +202,24 @@
<string name="migrate">Migrovat</string>
<string name="copy">Kopírovat</string>
<string name="migrating">Migrovaní…</string>
<string name="download_queue_error">Došlo k chybě při stahování kapitol. Zkuste to znovu v sekci stahování</string>
<string name="notification_update_progress">Postup aktualizace: %1$d/%2$d</string>
<string name="notification_new_chapters">Nalezeny nové kapitoly</string>
<string name="notification_not_connected_to_ac_title">Synchronizace zrušena</string>
<string name="notification_not_connected_to_ac_body">Bez připojení k AC zdroji</string>
<string name="notification_no_connection_title">Synchronizace zrušena</string>
<string name="notification_no_connection_body">Připojení není k dispozici</string>
<string name="file_select_backup">Vybrat záložní soubor</string>
<string name="file_select_icon">Vybrat ikonu zástupce</string>
<string name="update_check_title">Dostupná nová aktualizace!</string>
<string name="update_check_confirm">Stáhnout</string>
<string name="update_check_ignore">Ignorovat</string>
<string name="update_check_no_new_updates">Žádné nové aktualizace</string>
<string name="update_check_look_for_updates">Hledání aktualizací</string>
<string name="update_check_notification_file_download">Stáhnout aktualizaci</string>
<string name="update_check_notification_download_complete">Stahování dokončeno</string>
<string name="update_check_notification_download_error">Chyba při stahování</string>
<string name="update_check_notification_update_available">Dostupná aktualizace</string>
<string name="information_no_recent">Žádné nedávné kapitoly</string>
<string name="information_no_recent_manga">Žádné nedávno čtené mangy</string>
<string name="download_notifier_title_error">Chyba</string>
@ -249,7 +229,6 @@
<string name="download_notifier_text_only_wifi">WiFi připojení není dostupné</string>
<string name="download_notifier_no_network">Síťové připojení není dostupné</string>
<string name="download_notifier_download_paused">Stahování pozastaveno</string>
<string name="channel_library">Knihovna</string>
<string name="label_download_queue">Stahovací fronta</string>
<string name="name">Název</string>
@ -454,4 +433,5 @@
<string name="download_notifier_downloader_title">Stahovač</string>
<string name="channel_common">Běžný</string>
<string name="channel_downloader">Stahovač</string>
<string name="reader_pull_up_for_more_options">Vytáhnout pro více možností</string>
</resources>

View File

@ -348,7 +348,7 @@
<string name="backup_restore_content">Restaurar utiliza la fuente para obtener datos, es posible que se apliquen los costos de la operadora.
También asegúrese de haber iniciado sesión en las fuentes que lo requieren antes de la restauración.</string>
<string name="file_saved">Archivo guardado en %1$s</string>
<string name="backup_choice">Qué deseas respaldar?</string>
<string name="backup_choice">¿Qué deseas respaldar\?</string>
<string name="restoring_backup">Restaurando copia de seguridad</string>
<string name="creating_backup">Creando copia de seguridad</string>
<string name="choices_reset">Reiniciar opciones de diálogo</string>
@ -462,4 +462,6 @@ También asegúrese de haber iniciado sesión en las fuentes que lo requieren an
<string name="pref_double_tap_anim_speed">Velocidad de animación de doble toque</string>
<string name="pager_viewer">Paginado</string>
<string name="darkblue_theme">Azul oscuro</string>
<string name="pref_read_with_long_tap">Diálogo de toque largo</string>
<string name="reader_pull_up_for_more_options">Tire hacia arriba para más opciones</string>
</resources>

View File

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">Nom</string>
<!-- Activities and fragments labels (toolbar title) -->
<string name="label_settings">Paramètres</string>
<string name="label_download_queue">File de téléchargement</string>
@ -13,7 +12,6 @@
<string name="label_categories">Catégories</string>
<string name="label_selected">Sélectionné : %1$d</string>
<string name="label_backup">Sauvegarde</string>
<!-- Actions -->
<string name="action_settings">Paramètres</string>
<string name="action_filter">Filtre</string>
@ -69,13 +67,11 @@
<string name="action_share">Partager</string>
<string name="action_save">Sauvegarder</string>
<string name="action_reset">Réinitialiser</string>
<!-- Operations -->
<string name="deleting">Suppression…</string>
<string name="loading">Chargement…</string>
<!-- Preferences -->
<!-- Subsections -->
<!-- Subsections -->
<string name="pref_category_general">Général</string>
<string name="pref_category_reader">Lecteur</string>
<string name="pref_category_downloads">Téléchargements</string>
@ -83,8 +79,7 @@
<string name="pref_category_tracking">Suivi</string>
<string name="pref_category_advanced">Avancé</string>
<string name="pref_category_about">À propos</string>
<!-- General section -->
<!-- General section -->
<string name="pref_library_columns">Manga dans la bibliothèque par colonne</string>
<string name="portrait">Portrait</string>
<string name="landscape">Paysage</string>
@ -110,7 +105,6 @@
<string name="light_theme">Thème principal</string>
<string name="dark_theme">Thème sombre</string>
<string name="pref_start_screen">Page d\'accueil</string>
<!-- Reader section -->
<string name="pref_fullscreen">Plein écran</string>
<string name="pref_lock_orientation">Verrouiller l\'orientation</string>
@ -153,9 +147,7 @@
<string name="color_filter_g_value">V</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">O</string>
<!-- Downloads section -->
<!-- Downloads section -->
<string name="pref_download_directory">Répertoire de téléchargements</string>
<string name="pref_download_only_over_wifi">Télécharger uniquement via Wi-Fi</string>
<string name="pref_remove_after_read">Supprimer après avoir lu</string>
@ -165,11 +157,9 @@
<string name="third_to_last">Du troisième au dernier chapitre</string>
<string name="fourth_to_last">Du quatrième au dernier chapitre</string>
<string name="pref_download_new">Télécharger les nouveaux chapitres</string>
<!-- Sync section -->
<!-- Sync section -->
<string name="services">Services</string>
<!-- Advanced section -->
<!-- Advanced section -->
<string name="used_cache">Utilisé : %1$s</string>
<string name="cache_deleted">Cache effacé. %1$d fichiers ont été supprimés</string>
<string name="cache_delete_error">Une erreur est survenue lors de l\'effacement du cache</string>
@ -181,8 +171,7 @@
<string name="clear_database_completed">Entrées supprimées</string>
<string name="pref_refresh_library_metadata">Actualiser les méta-données de la bibliothèque</string>
<string name="pref_refresh_library_metadata_summary">Mettre à jour les couvertures, genres, description et statut des mangas</string>
<!-- About section -->
<!-- About section -->
<string name="version">Version</string>
<string name="build_time">Date de compilation</string>
<string name="pref_enable_automatic_updates">Vérifier les mises à jour</string>
@ -190,8 +179,6 @@
<!-- ACRA -->
<string name="pref_enable_acra">Envoyer des rapports de crash</string>
<string name="pref_acra_summary">Cela aide à corriger les bugs. Aucune donnée sensible ne sera envoyée</string>
<!-- Login dialog -->
<string name="login_title">Connexion vers %1$s</string>
<string name="username">Nom d\'utilisateur</string>
@ -200,19 +187,15 @@
<string name="login">Connexion</string>
<string name="invalid_login">Erreur de connexion</string>
<string name="unknown_error">Erreur inconnue</string>
<!-- Library fragment -->
<string name="library_search_hint">Titre ou auteur…</string>
<string name="confirm_delete_manga">Êtes-vous sûr de vouloir supprimer les mangas sélectionnés ?</string>
<!-- Catalogue fragment -->
<string name="source_requires_login">Cette source demande de vous identifier</string>
<string name="select_source">Sélectionner une source</string>
<string name="no_valid_sources">Veuillez au moins activer une source valide</string>
<!-- Manga activity -->
<string name="manga_not_in_db">Ce manga a été supprimé de la base de données !</string>
<!-- Manga info fragment -->
<string name="manga_detail_tab">Info</string>
<string name="description">Description</string>
@ -232,7 +215,6 @@
<string name="shortcut_title">Titre de raccourci</string>
<string name="icon_shape">Forme de l\'icône</string>
<string name="icon_creation_fail">Échec de la création du raccourci !</string>
<!-- Manga chapters fragment -->
<string name="manga_chapters_tab">Chapitres</string>
<string name="display_mode_chapter">Chapitre %1$s</string>
@ -251,7 +233,6 @@
<string name="download_5">Télécharger les 5 prochains chapitres</string>
<string name="download_all">Tout télécharger</string>
<string name="download_unread">Télécharger non-lu</string>
<!-- MyAnimeList fragment -->
<string name="manga_tracking_tab">Suivi</string>
<string name="reading">En cours</string>
@ -263,22 +244,17 @@
<string name="title">Titre</string>
<string name="status">Statut</string>
<string name="chapters">Chapitres</string>
<!-- Category activity -->
<string name="error_category_exists">Une catégorie avec ce nom existe déjà !</string>
<!-- Dialog option with checkbox view -->
<string name="dialog_with_checkbox_remove_description">Cela enlèvera la date de lecture de ce chapitre. Êtes-vous sûr ?</string>
<string name="dialog_with_checkbox_reset">Réinitialiser tous les chapitres de ce manga</string>
<!-- SnackBar -->
<string name="snack_add_to_library">Ajouter ce manga à la bibliothèque ?</string>
<!-- Image notifier -->
<string name="picture_saved">Image sauvegardée</string>
<string name="saving_picture">Sauvegarde de l\'image</string>
<string name="options">Options</string>
<!-- Reader activity -->
<string name="custom_filter">Filtre personnalisé</string>
<string name="set_as_cover">Ajouter comme couverture</string>
@ -294,16 +270,12 @@
<string name="confirm_update_manga_sync">Mettre à jour le dernier chapitre lu dans les services activés à %1$d ?</string>
<string name="confirm_set_image_as_cover">Voulez-vous mettre cette image comme couverture ?</string>
<string name="viewer_for_this_series">Lecteur pour cette série</string>
<!-- Backup fragment -->
<string name="backup">Sauvegarder</string>
<!-- Recent manga fragment -->
<string name="recent_manga_source">%1$s - Ch.%2$s</string>
<!-- Downloads activity and service -->
<string name="download_queue_error">Une erreur est survenue lors du téléchargement des chapitres. Vous pouvez recommencer à nouveau dans la section téléchargements</string>
<!-- Library update service notifications -->
<string name="notification_update_progress">Progression mise à jour: %1$d/%2$d</string>
<string name="notification_new_chapters">Des nouveaux chapitres ont été trouvés</string>
@ -312,12 +284,10 @@
<string name="notification_not_connected_to_ac_body">Non branché</string>
<string name="notification_no_connection_title">Synchronisation annulée</string>
<string name="notification_no_connection_body">Connexion non disponible</string>
<!-- File Picker Titles -->
<string name="file_select_cover">Sélectionner l\'image de couverture</string>
<string name="file_select_backup">Sélectionner fichier de sauvegarde</string>
<string name="file_select_icon">Sélectionner une icône de raccourci</string>
<!--UpdateCheck-->
<string name="update_check_title">Nouvelle mise à jour disponible !</string>
<string name="update_check_confirm">Télécharger</string>
@ -325,24 +295,20 @@
<string name="update_check_no_new_updates">Aucune mise à jour disponible</string>
<string name="update_check_download_started">Téléchargement commencé</string>
<string name="update_check_look_for_updates">Vérification des mises à jour</string>
<!--UpdateCheck Notifications-->
<string name="update_check_notification_file_download">Télécharger la mise à jour</string>
<string name="update_check_notification_download_in_progress">Téléchargement en cours</string>
<string name="update_check_notification_download_complete">Téléchargement terminé</string>
<string name="update_check_notification_download_error">Erreur lors du téléchargement</string>
<string name="update_check_notification_update_available">Mise à jour disponible</string>
<!--Content Description-->
<string name="description_backdrop">Image de fond du manga</string>
<string name="description_cover">Couverture du manga</string>
<!-- Information Text -->
<string name="information_no_downloads">Aucun téléchargement</string>
<string name="information_no_recent">Aucun chapitre récent</string>
<string name="information_no_recent_manga">Aucun manga lu récemment</string>
<string name="information_empty_library">Votre bibliothèque est vide, vous pouvez ajouter des séries à votre bibliothèque depuis le Catalogue.</string>
<!-- Download Notification -->
<string name="download_notifier_downloader_title">Téléchargement</string>
<string name="download_notifier_title_error">Erreur</string>
@ -369,10 +335,9 @@
<string name="no_more_results">Pas d\'autres résultats</string>
<string name="snack_categories_deleted">Catégories supprimées</string>
<string name="action_undo">Annuler</string>
<string name="categories">Catégories</string>
<string name="categories">Catégories</string>
<string name="manga">Manga</string>
<string name="history">Historique</string>
<string name="action_close">Fermer</string>
<string name="action_move">Déplacer</string>
<string name="action_export">Exporter</string>
@ -383,15 +348,12 @@
<string name="amoled_theme">Thème AMOLED</string>
<string name="default_category">Catégorie par défaut</string>
<string name="download_notifier_download_paused">Téléchargement en pause</string>
<string name="local_source">Manga locaux</string>
<string name="local_source">Manga locaux</string>
<string name="added_to_library">Ce manga a été ajouté à votre bibliothèque</string>
<string name="manga_info_last_chapter_label">Dernier chapitre</string>
<string name="chapter_paused">En pause</string>
<string name="action_open_log">Ouvre le fichier journal</string>
<string name="action_restore">Restaurer</string>
<string name="pref_backup_directory">Dossier de sauvegarde</string>
<string name="pref_backup_service_category">Service</string>
<string name="source_not_found">Source introuvable</string>
@ -401,15 +363,12 @@
<string name="backup_choice">Que voulez-vous sauvegarder ?</string>
<string name="invalid_combination">Le défaut ne peut pas être selectionné avec des autres catégories</string>
<string name="delete_downloads_for_manga">Supprimer les chapitres téléchargés ?</string>
<string name="notification_new_chapters_text">Pour %1$d chapitres</string>
<string name="notification_new_chapters_text">Pour %1$s chapitres</string>
<string name="track">Suivi</string>
<string name="action_sort_total">Nombre de chapitres</string>
<string name="short_recent_updates">Actualisations</string>
<string name="pref_download_new_categories">Catégories à inclure dans le téléchargement</string>
<string name="pref_create_backup">Créer une sauvegarde</string>
<string name="pref_create_backup">Créer une sauvegarde</string>
<string name="pref_create_backup_summ">Peut être utilisé pour restaurer la bibliothèque actuelle</string>
<string name="pref_restore_backup">Restaurer une sauvegarde</string>
<string name="pref_restore_backup_summ">Restaurer la bibliothèque à partir d\'un fichier de sauvegarde</string>
@ -424,36 +383,29 @@
%2$s erreurs trouvées.</string>
<string name="restoring_backup">Restauration de sauvegarde en cours</string>
<string name="creating_backup">Création de sauvegarde en cours</string>
<string name="pref_refresh_library_tracking">Actualiser les métadonnées de suivi</string>
<string name="pref_refresh_library_tracking">Actualiser les métadonnées de suivi</string>
<string name="pref_refresh_library_tracking_summary">Actualise le statut, appréciation et dernier chapitre lu des services de suivi</string>
<string name="also_delete_chapters">Efface aussi les chapitres téléchargés</string>
<string name="also_delete_chapters">Efface aussi les chapitres téléchargés</string>
<string name="default_category_summary">Toujours demander</string>
<string name="pref_read_with_volume_keys_inverted">Inverse les boutons de volume</string>
<string name="pref_read_with_volume_keys_inverted">Inverser les boutons de volume</string>
<string name="pref_crop_borders">Rogner les bordures</string>
<string name="backup_restore_content">La restauration utilise la source pour obtenir des données, des frais de l\'opérateur peuvent s\'appliquer.
Assurez-vous que vous êtes connecté à des sources qui le demande avant de commencer la restauration.</string>
<string name="action_global_search">Recherche globale</string>
<string name="action_open">Ouvrir</string>
<string name="action_login">Connexion</string>
<string name="other_source">Autre</string>
<string name="action_global_search_hint">Recherche globale…</string>
<string name="no_results">Aucun résultat !</string>
<string name="latest">Récents</string>
<string name="browse">Explorer</string>
<string name="shortcut_created">Un raccourci a été ajouté à la page d\'accueil.</string>
<string name="channel_library">Bibliothèque</string>
<string name="action_display_download_badge">Badges des téléchargements</string>
<string name="local_source_badge">Local</string>
<string name="channel_common">Général</string>
<string name="channel_downloader">Téléchargeur</string>
<string name="information_empty_category">Vous n\'avez aucune catégorie. Appuyez sur le bouton plus pour en créeer un pour organiser votre bibliothèque.</string>
<string name="information_empty_category">Vous n\'avez aucune catégorie. Appuyez sur le bouton plus pour en créeer un pour organiser votre bibliothèque.</string>
<string name="label_extensions">Extensions</string>
<string name="ext_details">Détails</string>
<string name="ext_update">Mettre à jour</string>
@ -471,11 +423,10 @@ Assurez-vous que vous êtes connecté à des sources qui le demande avant de com
\nUne extension malveillante peut lire les certificats de connections sauvegardés sur Tachiyomi ou exécuter du code arbitraire.
\n
\nEn faisant confiance à ce certificat vous acceptez ces risques.</string>
<string name="ext_version_info">Version: %1$s</string>
<string name="ext_language_info">Langue: %1$s</string>
<string name="ext_version_info">Version : %1$s</string>
<string name="ext_language_info">Langue : %1$s</string>
<string name="ext_empty_preferences">Aucune préférence n\'est disponible pour cette extension</string>
<string name="pref_double_tap_anim_speed">Vitesse d\'animation du double-clic</string>
<string name="pref_double_tap_anim_speed">Vitesse d\'animation du double-clic</string>
<string name="double_tap_anim_speed_0">Sans animation</string>
<string name="double_tap_anim_speed_normal">Normale</string>
<string name="double_tap_anim_speed_fast">Rapide</string>
@ -486,7 +437,6 @@ Assurez-vous que vous êtes connecté à des sources qui le demande avant de com
<string name="manga_info_latest_data_label">Mis à jour</string>
<string name="copied_to_clipboard">%1$s a été copié dans le presse papier</string>
<string name="source_not_installed">Sources non installées: %1$s</string>
<string name="custom_download">Télécharger une quantité personnalisée</string>
<string name="custom_hint">Quantité</string>
<string name="download_custom">Téléchargement personalisé</string>
@ -495,31 +445,29 @@ Assurez-vous que vous êtes connecté à des sources qui le demande avant de com
<string name="track_type">Type</string>
<string name="track_author">Auteur</string>
<string name="url_not_set">L\'url du manga n\'a pas été entrée, veuillez cliquer sur le titre et selectionner le manga</string>
<string name="migration_dialog_what_to_include">Sélectionner les données à inclure</string>
<string name="select">Sélectionner</string>
<string name="label_migration">Migration de source</string>
<string name="label_extension_info">Information complémentaire</string>
<string name="all_lang">Tous</string>
<string name="all_lang">Toutes</string>
<string name="ext_trust">Fiable</string>
<string name="ext_untrusted">Non fiable</string>
<string name="pager_viewer">Pager</string>
<string name="repeating">Relecture</string>
<string name="transition_finished">A jour:</string>
<string name="transition_current">En cours:</string>
<string name="transition_next">Suivant:</string>
<string name="transition_previous">Précédent:</string>
<string name="transition_no_next">Chapitre suivant introuvable</string>
<string name="transition_no_previous">Chapitre précédent introuvable</string>
<string name="transition_finished">A jour :</string>
<string name="transition_current">En cours :</string>
<string name="transition_next">Suivant :</string>
<string name="transition_previous">Précédent :</string>
<string name="transition_no_next">C\'était le dernier chapitre</string>
<string name="transition_no_previous">Il n\'y a pas de chapitre précédent</string>
<string name="transition_pages_loading">Chargement des pages…</string>
<string name="transition_pages_error">Échec du chargement des pages: %1$s</string>
<string name="transition_pages_error">Échec du chargement des pages : %1$s</string>
<string name="migration_info">Appuyer pour sélectionner la source à déplacer</string>
<string name="migrate">Déplacement</string>
<string name="copy">Copier</string>
<string name="migrating">En cours de déplacement…</string>
<string name="darkblue_theme">Bleu foncé</string>
</resources>
<string name="pref_read_with_long_tap">Menu contextuel (appui prolongé)</string>
<string name="reader_pull_up_for_more_options">Plus d\'options en défilant</string>
</resources>

View File

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<resources><string name="name">नाम</string>
<resources>
<string name="name">नाम</string>
<string name="categories">श्रेणियाँ</string>
<string name="manga">मांगा</string>
<string name="chapters">अध्याय</string>
<string name="track">पदचिह्न</string>
<string name="history">इतिहास</string>
<string name="label_settings">सेटिंग्स</string>
<string name="label_download_queue">डाउनलोड कतार</string>
<string name="label_library">मेरा पुस्तकालय</string>
@ -16,8 +16,6 @@
<string name="label_categories">श्रेणियाँ</string>
<string name="label_selected">श्रेणियाँ %1$d</string>
<string name="label_backup">बैकअप</string>
<string name="action_settings">सेटिंग</string>
<string name="action_filter">फिल्टर</string>
<string name="action_filter_downloaded">डाउनलोड किया हुआ</string>
@ -84,13 +82,10 @@
<string name="action_restore">पुनःस्थापन करे</string>
<string name="action_open">खुला हुआ</string>
<string name="action_login">लोगिन</string>
<string name="deleting">हटाया जा रहा है…</string>
<string name="loading">लोड हो रहा है…</string>
<string name="app_not_available">एप्पलीकेशन उपलब्ध नहीं है</string>
<string name="short_recent_updates">अद्यतन</string>
<string name="pref_category_general">सामान्य</string>
<string name="pref_category_reader">पाठमाला</string>
<string name="pref_category_downloads">डाउनलोड</string>
@ -98,8 +93,7 @@
<string name="pref_category_tracking">पदचिह्न</string>
<string name="pref_category_advanced">विकसित</string>
<string name="pref_category_about">संबंध में</string>
<string name="pref_library_columns">मंगा पुस्तक संग्रह पंक्ति के हिसाब से</string>
<string name="pref_library_columns">मंगा पुस्तक संग्रह पंक्ति के हिसाब से</string>
<string name="portrait">चित्र</string>
<string name="landscape">लैंडस्केप</string>
<string name="default_columns">डिफ़ॉल्ट</string>
@ -131,8 +125,7 @@
<string name="system_default">डिफ़ॉल्ट प्रणाली</string>
<string name="default_category">डिफ़ॉल्ट श्रेणी</string>
<string name="default_category_summary">हमेशा पूछे</string>
<string name="pref_fullscreen">पूर्ण स्क्रीन</string>
<string name="pref_fullscreen">पूर्ण स्क्रीन</string>
<string name="pref_lock_orientation">उन्मुखीकरण बंद करे</string>
<string name="pref_page_transitions">पृष्ठ संक्रमण</string>
<string name="pref_show_page_number">पृष्ठ संख्या दिखाएं</string>
@ -175,9 +168,7 @@
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">डाउनलोड निर्देशिका</string>
<string name="pref_download_directory">डाउनलोड निर्देशिका</string>
<string name="pref_download_only_over_wifi">वाई - फाई पर ही डाउनलोड करे</string>
<string name="pref_remove_after_marked_as_read">पढ़ा जाने चिह्नित होने पर हटाएं</string>
<string name="pref_remove_after_read">पढ़ने के बाद हटा दें</string>
@ -190,9 +181,7 @@
<string name="fifth_to_last">अंतिम अध्याय के लिए पांचवां</string>
<string name="pref_download_new">नए अध्याय डाउनलोड करें</string>
<string name="pref_download_new_categories">श्रेणियाँ डाउनलोड में शामिल करने के लिए</string>
<string name="services">सेवाएं</string>
<string name="services">सेवाएं</string>
<string name="backup">बैकअप</string>
<string name="pref_create_backup">बैकअप बनाये</string>
<string name="pref_create_backup_summ">वर्तमान पुस्तकालय को पुनर्स्थापित करने के लिए उपयोग किया जा सकता है</string>
@ -218,8 +207,7 @@
<string name="backup_choice">आप बैकअप के लिए क्या चाहते हैं?</string>
<string name="restoring_backup">बैकअप को पुनर्स्थापित करना</string>
<string name="creating_backup">बैकअप बनाना</string>
<string name="pref_clear_chapter_cache">अध्याय कैश साफ़ करें</string>
<string name="pref_clear_chapter_cache">अध्याय कैश साफ़ करें</string>
<string name="used_cache">उपयोग किया गया: %1$s</string>
<string name="cache_deleted">"कैश साफ़ किया गया %1$d फ़ाइलों को हटा दिया गया है"</string>
<string name="cache_delete_error">कैश साफ़ करने के दौरान एक त्रुटि हुई</string>
@ -234,15 +222,12 @@
<string name="pref_refresh_library_metadata_summary">अपडेट कवर, शैलियों, विवरण और मंगा स्थिति की जानकारी</string>
<string name="pref_refresh_library_tracking">ट्रैकिंग मेटाडेटा रीफ़्रेश करें</string>
<string name="pref_refresh_library_tracking_summary">अपडेट की स्थिति, स्कोर और अंतिम अध्याय ट्रैकिंग सेवाओं से पढ़ें</string>
<string name="version">संस्करण</string>
<string name="version">संस्करण</string>
<string name="build_time">निर्माण समय</string>
<string name="pref_enable_automatic_updates">अद्यतन के लिए जाँच</string>
<string name="pref_enable_automatic_updates_summary">स्वचालित रूप से एप्लिकेशन अपडेट की जांच करें</string>
<string name="pref_enable_acra">क्रैश रिपोर्ट भेजें</string>
<string name="pref_acra_summary">किसी भी बग को ठीक करने में मदद करता है कोई संवेदनशील डेटा नहीं भेजा जाएगा</string>
<string name="login_title">%1$s के लिए लॉगिन</string>
<string name="username">उपयोगकर्ता नाम</string>
<string name="password">पासवर्ड</string>
@ -251,13 +236,11 @@
<string name="login_success">सफलतापूर्ण लॉग इन</string>
<string name="invalid_login">लॉग इन त्रुटि</string>
<string name="unknown_error">अज्ञात त्रुटि</string>
<string name="library_search_hint">शीर्षक या लेखक …</string>
<string name="updating_category">श्रेणी अपडेट कर रहा है</string>
<string name="local_source_badge">लोकल</string>
<string name="confirm_delete_manga">क्या आप वाकई चयनित मंगा को हटाना चाहते हैं?</string>
<string name="also_delete_chapters">डाउनलोड किए गए अध्याय भी हटाएं</string>
<string name="source_requires_login">इस स्रोत के लिए आपको प्रवेश करना होगा</string>
<string name="select_source">किसी स्रोत का चयन करें</string>
<string name="no_valid_sources">कृपया कम से कम एक वैध स्रोत सक्षम करें</string>
@ -270,9 +253,7 @@
<string name="no_results">कोई परिणाम नहीं मिला!</string>
<string name="latest">नवीनतम</string>
<string name="browse">ब्राउज</string>
<string name="manga_not_in_db">यह मंगा डेटाबेस से हटा दिया गया था!</string>
<string name="manga_detail_tab">जानकारी</string>
<string name="description">विवरण</string>
<string name="ongoing">चल रही है</string>
@ -295,7 +276,6 @@
<string name="icon_shape">चिह्न आकार</string>
<string name="icon_creation_fail">शॉर्टकट बनाने में विफल!</string>
<string name="delete_downloads_for_manga">डाउनलोड किए गए अध्याय हटाएं?</string>
<string name="manga_chapters_tab">अध्याय</string>
<string name="manga_chapter_no_title">कोई शीर्षक नहीं</string>
<string name="display_mode_chapter">अध्याय %1$s</string>
@ -318,7 +298,6 @@
<string name="download_all">सभी डाउनलोड करे</string>
<string name="download_unread">अपठित डाउनलोड करें</string>
<string name="confirm_delete_chapters">क्या आप वाकई चयनित अध्यायों को हटाना चाहते हैं?</string>
<string name="manga_tracking_tab">पदचिह्न</string>
<string name="reading">पठन</string>
<string name="completed">समाप्त</string>
@ -328,19 +307,14 @@
<string name="score">स्कोर</string>
<string name="title">शीर्षक</string>
<string name="status">स्थिति</string>
<string name="error_category_exists">इस नाम के साथ एक श्रेणी पहले से मौजूद है!</string>
<string name="snack_categories_deleted">श्रेणियाँ हटाई गयी</string>
<string name="dialog_with_checkbox_remove_description">यह इस अध्याय की पठन तिथि को निकाल देगा क्या आप निश्चित है?</string>
<string name="dialog_with_checkbox_reset">इस मंगा के लिए सभी अध्यायों को रीसेट करें</string>
<string name="snack_add_to_library">लाइब्रेरी में मंगा जोड़ें?</string>
<string name="picture_saved">चित्र सहेजा गया</string>
<string name="saving_picture">चित्र सहेजा जा रहा है</string>
<string name="options">विकल्प</string>
<string name="custom_filter">इच्छा अनुसार फिल्टर</string>
<string name="set_as_cover">कवर के रूप में सेट करें</string>
<string name="cover_updated">कवर अपडेट किया गया</string>
@ -355,11 +329,8 @@
<string name="confirm_update_manga_sync">पिछले अध्याय को सक्षम सेवाओं में %1$d तक पढ़ा है?</string>
<string name="confirm_set_image_as_cover">क्या आप इस छवि को कवर के रूप में सेट करना चाहते हैं?</string>
<string name="viewer_for_this_series">इस श्रृंखला के लिए दर्शक</string>
<string name="recent_manga_source">%1$s - Ch.%2$s</string>
<string name="download_queue_error">अध्याय डाउनलोड करते समय एक त्रुटि हुई आप डाउनलोड अनुभाग में पुनः प्रयास कर सकते हैं</string>
<string name="notification_update_progress">अपडेट प्रगति: %1$d/%2$d</string>
<string name="notification_new_chapters">नए अध्याय पाए गए</string>
<string name="notification_new_chapters_text">%1$d शीर्षक के लिए</string>
@ -369,33 +340,27 @@
<string name="notification_not_connected_to_ac_body">एसी बिजली से जुड़ा नहीं है</string>
<string name="notification_no_connection_title">समन्वयन रद्द</string>
<string name="notification_no_connection_body">कनेक्शन उपलब्ध नहीं है</string>
<string name="file_select_cover">कवर छवि का चयन करें</string>
<string name="file_select_backup">बैकअप फ़ाइल का चयन करें</string>
<string name="file_select_icon">शॉर्टकट आइकन चुनें</string>
<string name="update_check_title">नया अद्यतन उपलब्ध है!</string>
<string name="update_check_confirm">डाउनलोड</string>
<string name="update_check_ignore">नज़रअंदाज़ करे</string>
<string name="update_check_no_new_updates">कोई नया अद्यतन उपलब्ध नहीं है</string>
<string name="update_check_download_started">डाउनलोड शुरू</string>
<string name="update_check_look_for_updates">अद्यतन ढूंढ रहे हैं</string>
<string name="update_check_notification_file_download">अद्यतन डाउनलोड करे</string>
<string name="update_check_notification_download_in_progress">डाउनलोड जारी है</string>
<string name="update_check_notification_download_complete">डाउनलोड सम्पन्न हुआ</string>
<string name="update_check_notification_download_error">डाउनलोड त्रुटि</string>
<string name="update_check_notification_update_available">अद्यतन उपलब्ध है</string>
<string name="description_backdrop">मैंगा की पृष्ठभूमि छवि</string>
<string name="description_cover">मंगा का आवरण</string>
<string name="information_no_downloads">कोई डाउनलोड नहीं है</string>
<string name="information_no_recent">हाल के कोई अध्याय नहीं है</string>
<string name="information_no_recent_manga">हाल ही में मंगा पढ़ा नहीं है</string>
<string name="information_empty_library">आपकी लाइब्रेरी खाली है, आप कैटलॉग से अपनी लाइब्रेरी में श्रृंखला जोड़ सकते हैं।</string>
<string name="information_empty_category">आपके पास कोई श्रेणियां नहीं हैं अपने पुस्तकालय के आयोजन के लिए एक बनाने के लिए प्लस बटन को दबाएं।</string>
<string name="download_notifier_downloader_title">डाउनलोडर</string>
<string name="download_notifier_title_error">त्रुटि</string>
<string name="download_notifier_unkown_error">अध्याय डाउनलोड करते समय एक अनपेक्षित त्रुटि हुई</string>
@ -404,15 +369,12 @@
<string name="download_notifier_text_only_wifi">कोई वाई-फ़ाई कनेक्शन उपलब्ध नहीं है</string>
<string name="download_notifier_no_network">कोई नेटवर्क कनेक्शन उपलब्ध नहीं है</string>
<string name="download_notifier_download_paused">डाउनलोड रोक दिया गया</string>
<string name="channel_common">सामान्य</string>
<string name="channel_library">पुस्तकालय</string>
<string name="channel_downloader">डाउनलोडर</string>
<string name="label_migration">स्रोत प्रवास</string>
<string name="label_migration">स्रोत प्रवास</string>
<string name="label_extensions">विस्तार</string>
<string name="label_extension_info">विस्तार की जानकारी</string>
<string name="all_lang">सभी</string>
<string name="ext_details">विवरण</string>
<string name="ext_update">अद्यतन</string>
@ -433,8 +395,7 @@
<string name="ext_version_info">संस्करण: %1$s</string>
<string name="ext_language_info">भाषा: %1$s</string>
<string name="ext_empty_preferences">इस एक्सटेंशन के लिए कोई प्राथमिकताएं संपादित नहीं हैं</string>
<string name="pref_double_tap_anim_speed">डबल टैप एनीमेशन गति</string>
<string name="pref_double_tap_anim_speed">डबल टैप एनीमेशन गति</string>
<string name="double_tap_anim_speed_0">कोई एनीमेशन नहीं</string>
<string name="double_tap_anim_speed_normal">साधारण</string>
<string name="double_tap_anim_speed_fast">उपवास</string>
@ -444,7 +405,6 @@
<string name="manga_removed_library">लाइब्रेरी से निकाला गया</string>
<string name="manga_info_latest_data_label">अपडेट किया गया</string>
<string name="copied_to_clipboard">%1$s क्लिपबोर्ड पर नकल</string>
<string name="custom_download">कस्टम राशि डाउनलोड करें</string>
<string name="custom_hint">रकम</string>
<string name="download_custom">कस्टम डाउनलोड करें</string>
@ -454,17 +414,14 @@
<string name="migrate">प्रवास</string>
<string name="copy">नकल</string>
<string name="migrating">प्रवास हो रहा है…</string>
<string name="pager_viewer">पृष्ठक</string>
<string name="source_not_installed">स्रोत स्थापित नहीं है : %1$s</string>
<string name="repeating">फिर से पढाना</string>
<string name="track_status">स्थिति</string>
<string name="track_start_date">शुरू कर दिया है</string>
<string name="track_type">प्रकार</string>
<string name="track_author">लेखक</string>
<string name="url_not_set">मंगा यूआरएल सेट नहीं है कृपया शीर्षक पर क्लिक करें और फिर मंगा का चयन करें</string>
<string name="transition_finished">समाप्त:</string>
<string name="transition_current">प्रचलित:</string>
<string name="transition_next">अगला:</string>
@ -473,6 +430,7 @@
<string name="transition_no_previous">कोई पिछला अध्याय नहीं है</string>
<string name="transition_pages_loading">पेज लोड हो रहे है …</string>
<string name="transition_pages_error">पृष्ठों को लोड करने में विफल है: %1$s</string>
<string name="darkblue_theme">गहरा नीला</string>
</resources>
<string name="reader_pull_up_for_more_options">अधिक विकल्पों के लिए खींचो</string>
<string name="pref_read_with_long_tap">संवाद के लिए लंबी प्रेस</string>
</resources>

View File

@ -1,5 +1,6 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources><string name="name">이름</string>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">이름</string>
<string name="categories">카테고리</string>
<string name="manga">만화</string>
<string name="chapters">챕터</string>
@ -8,8 +9,7 @@
<string name="label_categories">카테고리</string>
<string name="label_selected">%1$d 선택됨</string>
<string name="label_backup">백업</string>
<string name="action_settings">세팅</string>
<string name="action_settings">설정</string>
<string name="action_filter">필터</string>
<string name="action_filter_downloaded">다운로드됨</string>
<string name="action_filter_bookmarked">북마크됨</string>
@ -22,14 +22,14 @@
<string name="action_search">검색</string>
<string name="action_select_all">전체 선택</string>
<string name="action_mark_as_read">읽음으로 표시</string>
<string name="action_mark_as_unread">아직 안 읽음으로 표시</string>
<string name="action_mark_as_unread">지 않음으로 표시</string>
<string name="action_mark_previous_as_read">항목 바로 전까지 읽음으로 표시</string>
<string name="action_download">다운로드</string>
<string name="action_bookmark">북마크</string>
<string name="action_remove_bookmark">북마크 제거</string>
<string name="action_delete">삭제</string>
<string name="action_update">업데이트</string>
<string name="action_update_library">라이브러리 업데이트</string>
<string name="action_update_library">서재 업데이트</string>
<string name="action_edit">편집</string>
<string name="action_add">추가</string>
<string name="action_add_category">카테고리 추가</string>
@ -51,8 +51,7 @@
<string name="label_settings">세팅</string>
<string name="action_display">디스플레이</string>
<string name="history">기록</string>
<string name="label_download_queue">다운로드 큐</string>
<string name="label_download_queue">다운로드 대기열</string>
<string name="label_library">내 서재</string>
<string name="label_recent_manga">최근 읽음</string>
<string name="label_catalogues">카탈로그</string>
@ -68,7 +67,7 @@
<string name="action_next_chapter">다음 챕터</string>
<string name="action_retry">재시도</string>
<string name="action_move">이동</string>
<string name="action_add_to_home_screen">스크린에 추가</string>
<string name="action_add_to_home_screen"> 화면에 추가</string>
<string name="action_set_filter">필터 설정</string>
<string name="action_share">공유</string>
<string name="action_save">저장</string>
@ -78,20 +77,362 @@
<string name="action_open_log">로그 열기</string>
<string name="action_create">만들기</string>
<string name="action_restore">복구하기</string>
<string name="deleting">삭제 중…</string>
<string name="loading">로딩 중.…</string>
<string name="app_not_available">어플리케이션 이용 불가</string>
<string name="short_recent_updates">업데이트</string>
<string name="pref_category_general">일반</string>
<string name="pref_category_reader">리더</string>
<string name="pref_category_downloads">다운로드</string>
<string name="pref_category_sources">소스</string>
<string name="pref_category_tracking">트래킹</string>
<string name="pref_category_tracking">동기화</string>
<string name="pref_category_advanced">고급 설정</string>
<string name="pref_category_about">정보</string>
<string name="pref_library_columns">가로로 서재 정렬</string>
</resources>
<string name="pref_library_columns">가로로 서재 정렬</string>
<string name="label_migration">소스 이동</string>
<string name="label_extensions">확장기능</string>
<string name="label_extension_info">확장기능 정보</string>
<string name="action_global_search">전역 검색</string>
<string name="action_pause">일시중지</string>
<string name="portrait">세로</string>
<string name="landscape">가로</string>
<string name="default_columns">기본값</string>
<string name="pref_library_update_interval">서재 업데이트 주기</string>
<string name="update_never">수동</string>
<string name="update_1hour">1시간</string>
<string name="update_2hour">2시간</string>
<string name="update_3hour">3시간</string>
<string name="update_6hour">6시간</string>
<string name="update_12hour">12시간</string>
<string name="update_24hour">1일</string>
<string name="update_48hour">2일</string>
<string name="update_weekly">1주</string>
<string name="update_monthly">1달</string>
<string name="pref_library_update_categories">전역 업데이트에 포함할 카테고리</string>
<string name="all">전부</string>
<string name="pref_library_update_restriction">서재 업데이트 제한</string>
<string name="pref_library_update_restriction_summary">조건들이 충족 될 때에만 업데이트</string>
<string name="charging">충전중</string>
<string name="pref_theme">어플리케이션 테마</string>
<string name="light_theme">메인 테마</string>
<string name="dark_theme">어두운 테마</string>
<string name="amoled_theme">AMOLED 테마</string>
<string name="darkblue_theme">다크 블루</string>
<string name="pref_start_screen">시작 화면</string>
<string name="pref_language">언어</string>
<string name="system_default">시스템 기본값</string>
<string name="default_category">기본 카테고리</string>
<string name="all_lang">전부</string>
<string name="ext_update">업데이트</string>
<string name="ext_install">설치</string>
<string name="ext_pending">대기 중</string>
<string name="ext_downloading">다운로드 중</string>
<string name="ext_installing">설치 중</string>
<string name="ext_installed">설치됨</string>
<string name="ext_trust">신뢰</string>
<string name="ext_untrusted">신뢰되지않음</string>
<string name="ext_uninstall">삭제</string>
<string name="ext_preferences">설정</string>
<string name="ext_available">이용 가능</string>
<string name="untrusted_extension">신뢰할 수 없는 확장기능</string>
<string name="untrusted_extension_message">이 확장기능은 신뢰할 수 없는 인증서로 서명되있으며 활성화 되지 않았습니다.
\n
\n악의적인 확장기능은 Tachiyomi 내부에 저장된 로그인 정보들을 읽거나 임의를 코드를 실행할 수 있습니다.
\n
\n이 인증서를 신뢰함으로써 이런 위험들을 감수합니다.</string>
<string name="ext_version_info">버전: %1$s</string>
<string name="ext_language_info">언어: %1$s</string>
<string name="ext_empty_preferences">이 확장기능에 대한 설정이 없습니다</string>
<string name="pref_fullscreen">전체화면</string>
<string name="pref_lock_orientation">회전 잠금</string>
<string name="pref_double_tap_anim_speed">더블 탭 애니메이션 속도</string>
<string name="pref_show_page_number">페이지 번호 표시</string>
<string name="pref_crop_borders">모서리 자르기</string>
<string name="pref_custom_brightness">사용자 정의 밝기 사용</string>
<string name="pref_custom_color_filter">사용자 정의 컬러 필터 사용</string>
<string name="pref_keep_screen_on">화면 켜짐 유지</string>
<string name="pref_read_with_volume_keys">볼륨 키</string>
<string name="pref_read_with_volume_keys_inverted">볼륨 키 뒤바꾸기</string>
<string name="pref_viewer_type">기본 뷰어</string>
<string name="default_viewer">기본값</string>
<string name="left_to_right_viewer">왼쪽에서 오른쪽으로</string>
<string name="right_to_left_viewer">오른쪽에서 왼쪽으로</string>
<string name="vertical_viewer">수직으로</string>
<string name="webtoon_viewer">웹툰</string>
<string name="pref_image_decoder">이미지 디코더</string>
<string name="scale_type_stretch">늘리기</string>
<string name="scale_type_fit_width">가로 맞추기</string>
<string name="scale_type_fit_height">세로 맞추기</string>
<string name="scale_type_original_size">원본 크기</string>
<string name="pref_zoom_start">줌 시작 위치</string>
<string name="zoom_start_automatic">자동</string>
<string name="zoom_start_left">왼쪽t</string>
<string name="zoom_start_right">오른쪽</string>
<string name="zoom_start_center">중앙</string>
<string name="double_tap_anim_speed_0">애니메이션 없음</string>
<string name="double_tap_anim_speed_normal">보통</string>
<string name="double_tap_anim_speed_fast">빠름</string>
<string name="pref_rotation_type">회전</string>
<string name="rotation_free">자유</string>
<string name="rotation_lock">잠금</string>
<string name="rotation_force_portrait">세로로 고정</string>
<string name="rotation_force_landscape">가로로 고정</string>
<string name="pref_download_only_over_wifi">Wi-Fi만 사용해서 다운로드</string>
<string name="pref_remove_after_marked_as_read">읽음 표시 후에 자동으로 삭제</string>
<string name="pref_remove_after_read">읽은 후에 자동으로 삭제</string>
<string name="disabled">비활성화 됨</string>
<string name="last_read_chapter">마지막으로 읽은 챕터</string>
<string name="pref_download_new">새로운 챕터 다운로드</string>
<string name="services">서비스</string>
<string name="backup">백업</string>
<string name="pref_create_backup">백업 생성</string>
<string name="pref_restore_backup">백업 복원</string>
<string name="pref_restore_backup_summ">백업 파일에서 서재 복원</string>
<string name="pref_backup_directory">백업 폴더</string>
<string name="pref_backup_service_category">서비스</string>
<string name="pref_backup_interval">백업 주기</string>
<string name="pref_backup_slots">최대 자동 백업</string>
<string name="dialog_restoring_backup">백업 복원중...
\n %1$s 서재에 추가됨</string>
<string name="source_not_found">소스를 찾을 수 없음</string>
<string name="dialog_restoring_source_not_found">백업 복원중
\n%1$s 소스를 찾을 수 없음</string>
<string name="backup_created">백업 생성됨</string>
<string name="restore_completed">복원 완료</string>
<string name="restoring_backup">백업 복원중</string>
<string name="creating_backup">백업 생성중</string>
<string name="pref_clear_chapter_cache">챕터 캐시 삭제</string>
<string name="used_cache">%1$s 사용중</string>
<string name="cache_deleted">캐시 삭제됨. %1$d개의 파일이 삭제됨</string>
<string name="cache_delete_error">캐시 삭제중 오류가 발생하였습니다</string>
<string name="pref_clear_cookies">쿠키 삭제</string>
<string name="cookies_cleared">쿠키 삭제됨</string>
<string name="pref_clear_database">데이터베이스 삭제</string>
<string name="pref_clear_database_summary">서재에 추가되지 않은 만화와 챕터들을 삭제합니다</string>
<string name="clear_database_confirmation">확실합니까\? 서재에 없는 만화의 읽은 챕터와 진행사항이 삭제됩니다</string>
<string name="pref_refresh_library_metadata">서재 메타데이터 갱신</string>
<string name="pref_refresh_library_metadata_summary">표지와 장르, 설명, 만화 상태 정보들을 업데이트합니다</string>
<string name="pref_refresh_library_tracking">동기화 메타데이터 갱신</string>
<string name="pref_refresh_library_tracking_summary">상태 및 평점, 마지막으로 읽은 챕터를 동기화 서비스에서 업데이트합니다</string>
<string name="version">버전</string>
<string name="build_time">빌드 시간</string>
<string name="pref_enable_automatic_updates">업데이트 확인</string>
<string name="pref_enable_automatic_updates_summary">어플리케이션 업데이트를 자동으로 확인</string>
<string name="pref_enable_acra">충돌 보고서 전송</string>
<string name="pref_acra_summary">버그들을 수정하는데 도움이 됩니다. 민감한 정보는 전송되지 않습니다</string>
<string name="login_title">%1$s 으로 로그인</string>
<string name="username">유저네임</string>
<string name="password">비밀번호</string>
<string name="show_password">비밀번호 표시</string>
<string name="login">로그인</string>
<string name="login_success">로그인 성공</string>
<string name="invalid_login">로그인 오류</string>
<string name="unknown_error">알 수 없는 오류</string>
<string name="updating_category">카테고리 업데이트중</string>
<string name="confirm_delete_manga">선택된 만화들을 정말로 제거하시겠습니까\?</string>
<string name="also_delete_chapters">다운로드된 챕터들도 지우기</string>
<string name="source_search_options">검색 필터</string>
<string name="source_requires_login">이 소스는 로그인을 필요로 합니다</string>
<string name="select_source">소스 선택</string>
<string name="no_valid_sources">최소한 1개의 유효한 소스를 선택해주세요</string>
<string name="no_more_results">더이상 결과 없음</string>
<string name="action_global_search_hint">전역 검색…</string>
<string name="no_results">결과가 없습니다!</string>
<string name="latest">최신</string>
<string name="manga_detail_tab">정보</string>
<string name="description">설명</string>
<string name="ongoing">연재중</string>
<string name="unknown">알 수 없음</string>
<string name="remove_from_library">서재에서 제거</string>
<string name="manga_info_full_title_label">제목</string>
<string name="manga_added_library">서제에 추가됨</string>
<string name="manga_removed_library">서재에서 제거됨</string>
<string name="manga_info_author_label">저자</string>
<string name="manga_info_artist_label">그림</string>
<string name="manga_info_chapters_label">챕터</string>
<string name="manga_info_last_chapter_label">마지막 챕터</string>
<string name="manga_info_latest_data_label">업데이트</string>
<string name="manga_info_status_label">상태</string>
<string name="manga_info_genres_label">장르</string>
<string name="shortcut_title">바로가지 제목</string>
<string name="shortcut_created">바로가기가 홈 화면에 추가되었습니다.</string>
<string name="icon_creation_fail">바로가기 생성 실패!</string>
<string name="delete_downloads_for_manga">다운로드된 챕터를 삭제합니까\?</string>
<string name="source_not_installed">소스 미설치: %1$s</string>
<string name="manga_chapters_tab">챕터</string>
<string name="display_mode_chapter">챕터 %1$s</string>
<string name="chapter_downloaded">다운로드됨</string>
<string name="chapter_downloading">다운로드 중</string>
<string name="chapter_downloading_progress">다운로드중 (%1$d/%2$d)</string>
<string name="chapter_error">오류</string>
<string name="chapter_paused">일시중지됨</string>
<string name="show_chapter_number">챕터 번호 표시</string>
<string name="sorting_mode">정렬 모드</string>
<string name="sort_by_source">소스 기준</string>
<string name="sort_by_number">챕터 번호 기준</string>
<string name="manga_download">다운로드</string>
<string name="download_1">다음 챕터 다운로드</string>
<string name="download_5">다음 5 챕터 다운로드</string>
<string name="download_10">다음 10 챕터 다운로드</string>
<string name="download_all">전부 다운로드</string>
<string name="download_unread">읽지 않은 챕터 다운로드</string>
<string name="confirm_delete_chapters">선택된 챕터를 정말로 삭제하겠습니까\?</string>
<string name="manga_tracking_tab">동기화</string>
<string name="score">평점</string>
<string name="title">제목</string>
<string name="status">상태</string>
<string name="track_status">상태</string>
<string name="track_author">저자</string>
<string name="snack_categories_deleted">카테고리 삭제됨</string>
<string name="dialog_with_checkbox_remove_description">이 챕터의 읽은 날짜를 삭제합니다. 확실합니까\?</string>
<string name="dialog_with_checkbox_reset">이 만화의 챕터들을 전부 리셋</string>
<string name="snack_add_to_library">서재에 만화를 추가합니까\?</string>
<string name="picture_saved">사진 저장됨</string>
<string name="saving_picture">사진 저장중</string>
<string name="options">설정</string>
<string name="custom_filter">사용자 정의 필터</string>
<string name="set_as_cover">표지로 설정</string>
<string name="cover_updated">표지 업데이트됨</string>
<string name="downloading">다운로드 중…</string>
<string name="download_progress">%1$d%% 다운로드됨</string>
<string name="chapter_progress">페이지: %1$d</string>
<string name="chapter_subtitle">챕터 %1$s</string>
<string name="no_next_chapter">다음 챕터가 없습니다</string>
<string name="no_previous_chapter">이전 챕터가 없습니다</string>
<string name="decode_image_error">이미지를 디코드 할 수 없습니다</string>
<string name="confirm_set_image_as_cover">이 이미지를 표지로 설정하시겠습니까\?</string>
<string name="viewer_for_this_series">이 시리즈에 대한 뷰어</string>
<string name="transition_finished">완료:</string>
<string name="transition_current">현재:</string>
<string name="transition_next">다음:</string>
<string name="transition_previous">이전:</string>
<string name="transition_no_next">다움 챕터가 없습니다</string>
<string name="transition_no_previous">이전 챕터가 없습니다</string>
<string name="transition_pages_loading">페이지 로딩중…</string>
<string name="transition_pages_error">페이지 로딩 실패: %1$s</string>
<string name="recent_manga_source">%1$s - %2$s화</string>
<string name="select">선택</string>
<string name="notification_update_progress">업데이트 진행중: %1$d/%2$d</string>
<string name="notification_new_chapters">새로운 챕터 발견</string>
<string name="notification_new_chapters_text">%1$d개의 타이틀</string>
<string name="notification_cover_update_failed">표지 업데이트 실패</string>
<string name="notification_not_connected_to_ac_title">동기화 취소됨</string>
<string name="notification_not_connected_to_ac_body">외부 전원에 연결되지 않음</string>
<string name="notification_no_connection_title">동기화 취소됨</string>
<string name="notification_no_connection_body">연결되지 않음</string>
<string name="file_select_cover">표지 이미지 선택</string>
<string name="file_select_backup">백업 파일 선택</string>
<string name="file_select_icon">바로가기 아이콘 선택</string>
<string name="update_check_title">새로운 업데이트 이용가능!</string>
<string name="update_check_confirm">다운로드</string>
<string name="update_check_ignore">무시</string>
<string name="update_check_no_new_updates">새로운 업데이트 없음</string>
<string name="update_check_download_started">다운로드 시작됨</string>
<string name="update_check_look_for_updates">"업데이트를 찾는중 "</string>
<string name="update_check_notification_file_download">업데이트 다운로드</string>
<string name="update_check_notification_download_in_progress">다운로드 진행중</string>
<string name="update_check_notification_download_complete">다운로드 완료됨</string>
<string name="update_check_notification_download_error">다운로드 오류</string>
<string name="update_check_notification_update_available">업데이트 이용 가능</string>
<string name="description_cover">만화 표지</string>
<string name="information_no_downloads">다운로드 없음</string>
<string name="information_no_recent">최신 챕터 없음</string>
<string name="information_no_recent_manga">최근 읽은 만화 없음</string>
<string name="download_notifier_downloader_title">다운로더</string>
<string name="download_notifier_title_error">오류</string>
<string name="download_notifier_unkown_error">챕터 다운로드중에 예기치 않은 오류가 발생하였습니다</string>
<string name="download_notifier_download_paused">다운로드 일시중지됨</string>
<string name="channel_library">서재</string>
<string name="channel_downloader">다운로더</string>
<string name="action_display_download_badge">다운로드 배지</string>
<string name="action_open">열기</string>
<string name="action_login">로그인</string>
<string name="wifi">Wi-Fi</string>
<string name="pref_update_only_non_completed">연재 중인 만화만 업데이트</string>
<string name="pref_auto_update_manga_sync">읽은 뒤 챕터 동기화</string>
<string name="default_category_summary">항상 물어보기</string>
<string name="ext_details">세부정보</string>
<string name="pref_create_backup_summ">현재 서재를 나중에 복구하는 데 사용 가능</string>
<string name="pref_reader_navigation">네비게이션</string>
<string name="pref_page_transitions">페이지 전환</string>
<string name="pref_read_with_tapping">탭핑</string>
<string name="pref_reader_theme">배경 색상</string>
<string name="white_background">흰색</string>
<string name="black_background">검은색</string>
<string name="pager_viewer">페이저</string>
<string name="pref_image_scale_type">스케일 종류</string>
<string name="scale_type_fit_screen">화면 맞춤</string>
<string name="scale_type_smart_fit">자동 맞춤</string>
<string name="color_filter_r_value">R</string>
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">다운로드 폴더</string>
<string name="custom_dir">사용자 정의 폴더</string>
<string name="second_to_last">두번째 챕터에서 끝까지</string>
<string name="third_to_last">세번째 챕터에서 끝까지</string>
<string name="fourth_to_last">네번째 챕터에서 끝까지</string>
<string name="fifth_to_last">다섯번째 챕터에서 끝까지</string>
<string name="pref_download_new_categories">다운로드에 포함할 카테고리</string>
<string name="error_opening_log">로그를 열 수 없습니다</string>
<string name="restore_completed_content">복원에 %1$s 소요됨.
\n%2$s 오류 발견됨.</string>
<string name="backup_restore_content">복원시 소스에서 데이터를 가져오며, 통신 비용이 청구 될 수 있습니다.
\n또한 복원 전에 필요한 소스에 제대로 로그인이 되어있는지 확인하십시오.</string>
<string name="file_saved">%1$s에 파일 저장됨</string>
<string name="backup_choice">어떤 항목들을 백업하겠습니까\?</string>
<string name="choices_reset">대화상자 선택 초기화</string>
<string name="clear_database_completed">항목 삭제됨</string>
<string name="library_search_hint">제목 혹은 작가…</string>
<string name="local_source_badge">로컬</string>
<string name="local_source">로컬 만화</string>
<string name="other_source">기타</string>
<string name="invalid_combination">기본 카테고리는 다른 카테고리와 함께 선택될 수 없습니다</string>
<string name="added_to_library">만화가 서재에 추가되었습니다</string>
<string name="browse">찾아보기</string>
<string name="manga_not_in_db">이 만화는 데이터베이스에서 제거되었습니다!</string>
<string name="licensed">판권작</string>
<string name="manga_info_source_label">소스</string>
<string name="circular_icon">원형 아이콘</string>
<string name="rounded_icon">둥근 아이콘</string>
<string name="square_icon">사각형 아이콘</string>
<string name="star_icon">별 아이콘</string>
<string name="icon_shape">아이콘 모양</string>
<string name="copied_to_clipboard">클립보드에 %1$s 복사됨</string>
<string name="manga_chapter_no_title">제목 없음</string>
<string name="chapter_queued">대기중</string>
<string name="fetch_chapters_error">챕터를 가져오는 중에 오류 발생</string>
<string name="show_title">제목 표시</string>
<string name="custom_download">사용자 정의 지정 다운로드</string>
<string name="download_custom">사용자 정의 다운로드</string>
<string name="reading">읽는중</string>
<string name="completed">완료함</string>
<string name="dropped">포기함</string>
<string name="on_hold">일시중지중</string>
<string name="plan_to_read">계획중</string>
<string name="repeating">다시 읽는 중</string>
<string name="track_start_date">시작 일자</string>
<string name="track_type">종류</string>
<string name="url_not_set">만화 URL이 설정 되지 않았습니다. 제목을 클릭하고 만화를 다시 선택해주세요</string>
<string name="error_category_exists">같은 이름을 가진 카테고리가 이미 존재합니다!</string>
<string name="page_downloaded">페이지가 %1$s로 복사됨</string>
<string name="confirm_update_manga_sync">활성화 된 서비스에 있는 마지막으로 읽은 챕터를 %1$d에 업데이트합니까\?</string>
<string name="reader_pull_up_for_more_options">끌어 올려 더 많은 설정 표시</string>
<string name="migration_info">탭하여 이동할 소스 선택</string>
<string name="migration_dialog_what_to_include">선택하여 데이터 포함</string>
<string name="migrate">이동</string>
<string name="copy">복사</string>
<string name="migrating">이동중…</string>
<string name="download_queue_error">챕터 다운로드 도중 오류가 발생했습니다. 다운로드 섹션에서 다시시도 할 수 있습니다</string>
<string name="notification_first_add_to_library">이 행동을 하기 전 서재에 만화를 추가해주세요</string>
<string name="description_backdrop">만화의 배경 이미지</string>
<string name="information_empty_library">서재가 비어있습니다. 카탈로그에서 만화 시리즈를 서재에 추가 할 수 있습니다.</string>
<string name="information_empty_category">카탈로그가 없습니다. 서재 구성을 위해 + 버튼을 눌러 생성하세요.</string>
<string name="download_notifier_page_error">페이지가 폴더에서 누락됨</string>
<string name="download_notifier_page_ready_error">페이지가 로드되지 않았습니다</string>
<string name="download_notifier_text_only_wifi">Wifi 연결 사용 불가능</string>
<string name="download_notifier_no_network">네트워크 연결 사용 불가능</string>
<string name="channel_common">일반</string>
<string name="pref_read_with_long_tap">길게 눌러 대화상자 표시</string>
<string name="custom_hint">갯수</string>
</resources>

View File

@ -238,8 +238,8 @@
<string name="download_progress">%1$d%% gedownload</string>
<string name="chapter_progress">Pagina: %1$d</string>
<string name="chapter_subtitle">Hoofdstuk %1$s</string>
<string name="no_next_chapter">Volgende hoofdstuk niet gevonden</string>
<string name="no_previous_chapter">Vorige hoofdstuk niet gevonden</string>
<string name="no_next_chapter">Volgend hoofdstuk niet gevonden</string>
<string name="no_previous_chapter">Vorig hoofdstuk niet gevonden</string>
<string name="confirm_set_image_as_cover">Wil je deze afbeelding als omslagfoto gebruiken?</string>
<string name="viewer_for_this_series">Lezer voor deze serie</string>
<string name="recent_manga_source">%1$s - Hfdst.%2$s</string>
@ -335,8 +335,7 @@
<string name="dropped">Laten vallen</string>
<string name="on_hold">In de wacht</string>
<string name="dialog_with_checkbox_remove_description">Dit verwijdert de datum waarop het hoofdstuk is gelezen. Ben je zeker?</string>
<string name="decode_image_error">Afbeelding kon niet worden geladen.
Probeer de afbeeldingdecoder te veranderen met een van de onderstaande opties</string>
<string name="decode_image_error">Afbeelding kon niet worden gedecodeerd.</string>
<string name="download_queue_error">Er is een fout opgetreden bij het downloaden van hoofdstukken. Je kan het opnieuw proberen in de downloadwachtrij</string>
<string name="notification_cover_update_failed">Updaten van omslag mislukt</string>
<string name="notification_not_connected_to_ac_title">Synchronisatie geannuleerd</string>
@ -375,7 +374,65 @@ Zorg ook dat je ingelogd bent voor bronnen die dit vereisen alvorens je het teru
<string name="channel_common">Algemeen</string>
<string name="label_migration">Bronmigratie</string>
<string name="label_extensions">Extensies</string>
<string name="label_extension_info">Informatie extensie</string>
<string name="label_extension_info">Informatie over extensie</string>
<string name="custom_hint">hoeveelheid</string>
<string name="darkblue_theme">Donkerblauw</string>
<string name="all_lang">Alles</string>
<string name="ext_details">Details</string>
<string name="ext_update">Bijwerken</string>
<string name="ext_install">Installeer</string>
<string name="ext_pending">Aan het afwachten</string>
<string name="ext_downloading">Aan het downloaden</string>
<string name="ext_installing">Aan het installeren</string>
<string name="ext_installed">Geïnstalleerd</string>
<string name="ext_trust">Vertouw</string>
<string name="ext_untrusted">Niet vertrouwd</string>
<string name="ext_uninstall">Verwijderen</string>
<string name="ext_preferences">Voorkeuren</string>
<string name="ext_available">Beschikbaar</string>
<string name="untrusted_extension">Niet vertrouwde extensie</string>
<string name="untrusted_extension_message">Deze extensie is door een niet vertrouwde certificaat ondertekend en is niet geactiveerd.
\n
\nEen kwaadaardige extensie zou alle login gegevens kunnen uitlezen in Tachiyomi of arbitraire code uitvoeren.
\n
\nBij het vertrouwen van dit certificaat accepteer je deze risico\'s</string>
<string name="ext_version_info">Versie: %1$s</string>
<string name="ext_language_info">Taal: %1$s</string>
<string name="ext_empty_preferences">Er zijn geen aan te passen voorkeuren voor deze extensie</string>
<string name="pref_double_tap_anim_speed">Dubbel tik animatiesnelheid</string>
<string name="pref_read_with_long_tap">Lange tik dialoog</string>
<string name="pager_viewer">Paginas</string>
<string name="double_tap_anim_speed_0">Geen animatie</string>
<string name="double_tap_anim_speed_normal">Normaal</string>
<string name="double_tap_anim_speed_fast">Snel</string>
<string name="source_search_options">Zoek filters</string>
<string name="manga_info_full_title_label">Titel</string>
<string name="manga_added_library">Toegevoegd aan bibliotheek</string>
<string name="manga_removed_library">Verwijderd uit bibliotheek</string>
<string name="manga_info_latest_data_label">Bijgewerkt</string>
<string name="copied_to_clipboard">%1$s gekopieerd naar het klembord</string>
<string name="source_not_installed">Bron niet geïnstalleerd: %1$s</string>
<string name="custom_download">Download aangepaste hoeveelheid</string>
<string name="download_custom">Download aangepaste hoeveelheid</string>
<string name="repeating">Herlezen</string>
<string name="track_status">Status</string>
<string name="track_start_date">Gestart</string>
<string name="track_type">Soort</string>
<string name="track_author">Auteur</string>
<string name="url_not_set">Manga url is niet ingesteld, klik alstublieft op de titel en selecteer de manga opnieuw</string>
<string name="transition_finished">Afgerond:</string>
<string name="transition_current">Huidige:</string>
<string name="transition_next">Volgende:</string>
<string name="transition_previous">Vorige:</string>
<string name="transition_no_next">Er is geen volgend hoofdstuk</string>
<string name="transition_no_previous">Er is geen vorig hoofdstuk</string>
<string name="transition_pages_loading">Pagina\'s aan het laden…</string>
<string name="transition_pages_error">Fout bij het laden van pagina\'s : %1$s</string>
<string name="reader_pull_up_for_more_options">Trek omhoog voor meer opties</string>
<string name="migration_info">Tik om een bron te selecteren om naar toe te migreren</string>
<string name="migration_dialog_what_to_include">Selecteer data om mee te tellen</string>
<string name="select">Selecteer</string>
<string name="migrate">Migreer</string>
<string name="copy">Kopiëren</string>
<string name="migrating">Aan het migreren…</string>
</resources>

View File

@ -1,11 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources><string name="name">Nome</string>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">Nome</string>
<string name="categories">Categorias</string>
<string name="manga">Mangá</string>
<string name="chapters">Capítulos</string>
<string name="track">Monitoramento</string>
<string name="history">Histórico</string>
<string name="label_settings">Configurações</string>
<string name="label_download_queue">Fila de download</string>
<string name="label_library">Minha biblioteca</string>
@ -16,7 +16,6 @@
<string name="label_categories">Categorias</string>
<string name="label_selected">Selecionado: %1$d</string>
<string name="label_backup">Backup</string>
<string name="action_settings">Configurações</string>
<string name="action_filter">Filtrar</string>
<string name="action_filter_downloaded">Disponível offline</string>
@ -79,13 +78,10 @@
<string name="action_open_log">Abrir registro de eventos</string>
<string name="action_create">Criar</string>
<string name="action_restore">Restaurar</string>
<string name="deleting">Excluindo…</string>
<string name="loading">Carregando…</string>
<string name="app_not_available">Aplicativo indisponível</string>
<string name="short_recent_updates">Atualizações</string>
<string name="pref_category_general">Geral</string>
<string name="pref_category_reader">Leitor</string>
<string name="pref_category_downloads">Downloads</string>
@ -93,8 +89,7 @@
<string name="pref_category_tracking">Monitoramento</string>
<string name="pref_category_advanced">Avançado</string>
<string name="pref_category_about">Sobre</string>
<string name="pref_library_columns">Mangás por linha na biblioteca</string>
<string name="pref_library_columns">Mangás por linha na biblioteca</string>
<string name="portrait">Retrato</string>
<string name="landscape">Paisagem</string>
<string name="default_columns">Padrão</string>
@ -126,8 +121,7 @@
<string name="system_default">Padrão do sistema</string>
<string name="default_category">Categoria padrão</string>
<string name="default_category_summary">Sempre perguntar</string>
<string name="pref_fullscreen">Tela cheia</string>
<string name="pref_fullscreen">Tela cheia</string>
<string name="pref_lock_orientation">Bloquear orientação</string>
<string name="pref_page_transitions">Transição de página</string>
<string name="pref_show_page_number">Mostrar número da página</string>
@ -170,9 +164,7 @@
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">Pasta de downloads</string>
<string name="pref_download_directory">Pasta de downloads</string>
<string name="pref_download_only_over_wifi">Fazer download apenas via Wi-Fi</string>
<string name="pref_remove_after_marked_as_read">Excluir ao marcar como lido</string>
<string name="pref_remove_after_read">Excluir depois de ler</string>
@ -185,9 +177,7 @@
<string name="fifth_to_last">Quinto capítulo antes do último</string>
<string name="pref_download_new">Fazer download de novos capítulos</string>
<string name="pref_download_new_categories">Categorias para fazer download</string>
<string name="services">Serviços</string>
<string name="services">Serviços</string>
<string name="backup">Backup</string>
<string name="pref_create_backup">Fazer backup</string>
<string name="pref_create_backup_summ">Pode ser usado para restaurar a biblioteca atual</string>
@ -213,8 +203,7 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="backup_choice">Do que você deseja fazer backup?</string>
<string name="restoring_backup">Restaurando backup</string>
<string name="creating_backup">Fazendo backup</string>
<string name="pref_clear_chapter_cache">Limpar o cache de capítulos</string>
<string name="pref_clear_chapter_cache">Limpar o cache de capítulos</string>
<string name="used_cache">Total usado: %1$s</string>
<string name="cache_deleted">Cache limpo. %1$d arquivos foram excluídos</string>
<string name="cache_delete_error">Ocorreu um erro ao limpar o cache</string>
@ -229,15 +218,12 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="pref_refresh_library_metadata_summary">Atualiza informações como as capas, gêneros, descrições e situação dos mangás</string>
<string name="pref_refresh_library_tracking">Atualizar metadados do monitoramento</string>
<string name="pref_refresh_library_tracking_summary">Atualiza informações como situação, avaliações e últimos capítulos lidos dos serviços de monitoramento</string>
<string name="version">Versão</string>
<string name="version">Versão</string>
<string name="build_time">Data de compilação</string>
<string name="pref_enable_automatic_updates">Procurar por atualizações</string>
<string name="pref_enable_automatic_updates_summary">Procurar por atualizações automaticamente</string>
<string name="pref_enable_acra">Enviar relatórios de erro</string>
<string name="pref_acra_summary">Ajuda a corrigir eventuais erros. Não serão enviados dados sensíveis</string>
<string name="login_title">Fazer login em %1$s</string>
<string name="username">Nome de usuário</string>
<string name="password">Senha</string>
@ -246,21 +232,17 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="login_success">Login bem sucedido</string>
<string name="invalid_login">Erro ao fazer login</string>
<string name="unknown_error">Erro desconhecido</string>
<string name="library_search_hint">Título ou autor…</string>
<string name="updating_category">Atualizando categoria</string>
<string name="confirm_delete_manga">Tem certeza de que deseja remover os mangás selecionados?</string>
<string name="also_delete_chapters">Também excluir os capítulos disponíveis offline</string>
<string name="source_requires_login">Esta fonte requer uma conta</string>
<string name="select_source">Selecione uma fonte</string>
<string name="no_valid_sources">Por favor, ative pelo menos uma fonte válida</string>
<string name="no_more_results">Não há mais resultados</string>
<string name="local_source">Mangá local</string>
<string name="added_to_library">O mangá foi adicionado à sua biblioteca</string>
<string name="manga_not_in_db">Este mangá foi excluído do seu banco de dados!</string>
<string name="manga_detail_tab">Informações</string>
<string name="description">Descrição</string>
<string name="ongoing">Em andamento</string>
@ -282,7 +264,6 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="icon_shape">Formato do ícone</string>
<string name="icon_creation_fail">Erro ao criar o atalho!</string>
<string name="delete_downloads_for_manga">Excluir os capítulos disponíveis offline?</string>
<string name="manga_chapters_tab">Capítulos</string>
<string name="manga_chapter_no_title">Sem título</string>
<string name="display_mode_chapter">Capítulo %1$s</string>
@ -305,7 +286,6 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="download_all">Fazer download de tudo</string>
<string name="download_unread">Fazer download dos não lidos</string>
<string name="confirm_delete_chapters">Tem certeza de que deseja excluir os capítulos selecionados?</string>
<string name="manga_tracking_tab">Monitoramento</string>
<string name="reading">Lendo</string>
<string name="completed">Concluído</string>
@ -315,19 +295,14 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="score">Avaliação</string>
<string name="title">Título</string>
<string name="status">Situação</string>
<string name="error_category_exists">Já existe uma categoria com este nome!</string>
<string name="snack_categories_deleted">Categorias excluídas</string>
<string name="dialog_with_checkbox_remove_description">Esta ação removerá a data de leitura deste capítulo. Tem certeza?</string>
<string name="dialog_with_checkbox_reset">Restaurar todos os capítulos deste mangá</string>
<string name="snack_add_to_library">Adicionar mangá a biblioteca?</string>
<string name="picture_saved">Imagem salva</string>
<string name="saving_picture">Salvando imagem</string>
<string name="options">Opções</string>
<string name="custom_filter">Filtro personalizado</string>
<string name="set_as_cover">Usar como capa</string>
<string name="cover_updated">Capa atualizada</string>
@ -342,11 +317,8 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="confirm_update_manga_sync">Atualizar o último capítulo lido para %1$d nos serviços ativos?</string>
<string name="confirm_set_image_as_cover">Deseja usar esta imagem como capa?</string>
<string name="viewer_for_this_series">Leitura para esta série</string>
<string name="recent_manga_source">%1$s - Cap.%2$s</string>
<string name="download_queue_error">Ocorreu um erro ao fazer download dos capítulos. Você pode tentar novamente na seção de downloads</string>
<string name="notification_update_progress">Progresso da atualização: %1$d/%2$d</string>
<string name="notification_new_chapters">Novos capítulos encontrados</string>
<string name="notification_new_chapters_text">Para %1$d títulos</string>
@ -356,32 +328,26 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="notification_not_connected_to_ac_body">O dispositivo não está sendo carregado</string>
<string name="notification_no_connection_title">Sincronização cancelada</string>
<string name="notification_no_connection_body">Conexão indisponível</string>
<string name="file_select_cover">Selecionar imagem de capa</string>
<string name="file_select_backup">Selecionar arquivo de backup</string>
<string name="file_select_icon">Selecionar ícone do atalho</string>
<string name="update_check_title">Nova atualização disponível!</string>
<string name="update_check_confirm">Fazer download</string>
<string name="update_check_ignore">Ignorar</string>
<string name="update_check_no_new_updates">Sem atualizações disponíveis</string>
<string name="update_check_download_started">Download iniciado</string>
<string name="update_check_look_for_updates">Procurando por atualizações</string>
<string name="update_check_notification_file_download">Fazer download da atualização</string>
<string name="update_check_notification_download_in_progress">Download em progresso</string>
<string name="update_check_notification_download_complete">Download concluído</string>
<string name="update_check_notification_download_error">Erro ao fazer download</string>
<string name="update_check_notification_update_available">Atualização disponível</string>
<string name="description_backdrop">Imagem de fundo do mangá</string>
<string name="description_cover">Capa do mangá</string>
<string name="information_no_downloads">Nenhum download</string>
<string name="information_no_recent">Sem capítulos recentes</string>
<string name="information_no_recent_manga">Sem mangás lidos recentemente</string>
<string name="information_empty_library">A sua biblioteca está vazia. Você pode adicionar séries à biblioteca pelo menu Catálogos.</string>
<string name="download_notifier_downloader_title">Gerenciador de downloads</string>
<string name="download_notifier_title_error">Erro</string>
<string name="download_notifier_unkown_error">Ocorreu um erro inesperado ao fazer download do capítulo</string>
@ -390,31 +356,25 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="download_notifier_text_only_wifi">Nenhuma conexão Wi-Fi disponível</string>
<string name="download_notifier_no_network">Conexão à rede indisponível</string>
<string name="download_notifier_download_paused">Download pausado</string>
<string name="invalid_combination">O padrão não pode ser selecionado com outras categorias</string>
<string name="invalid_combination">O padrão não pode ser selecionado com outras categorias</string>
<string name="action_global_search">Pesquisa global</string>
<string name="action_open">Abrir</string>
<string name="action_login">Entrar</string>
<string name="other_source">Outras</string>
<string name="action_global_search_hint">Pesquisa global…</string>
<string name="no_results">Nenhum resultado encontrado!</string>
<string name="latest">Mais recente</string>
<string name="browse">Navegar</string>
<string name="shortcut_created">O atalho foi adicionado à sua tela inicial.</string>
<string name="channel_common">Comum</string>
<string name="channel_library">Biblioteca</string>
<string name="channel_downloader">Fila de download</string>
<string name="action_display_download_badge">Ícones de download</string>
<string name="action_display_download_badge">Ícones de download</string>
<string name="local_source_badge">Local</string>
<string name="information_empty_category">Você ainda não tem nenhuma categoria. Pressione o botão (+) para criar uma e organizar a sua biblioteca.</string>
<string name="label_migration">Migrar fonte</string>
<string name="label_extensions">Extensões</string>
<string name="label_extension_info">Informações da extensão</string>
<string name="all_lang">Todas</string>
<string name="ext_details">Detalhes</string>
<string name="ext_update">Atualizar</string>
@ -437,8 +397,7 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="ext_version_info">Versão: %1$s</string>
<string name="ext_language_info">Idioma: %1$s</string>
<string name="ext_empty_preferences">Não há preferências a serem editadas para esta extensão</string>
<string name="pref_double_tap_anim_speed">Velocidade da animação de toque duplo</string>
<string name="pref_double_tap_anim_speed">Velocidade da animação de toque duplo</string>
<string name="double_tap_anim_speed_0">Sem animação</string>
<string name="double_tap_anim_speed_normal">Normal</string>
<string name="double_tap_anim_speed_fast">Rápida</string>
@ -448,7 +407,6 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="manga_removed_library">Removido da biblioteca</string>
<string name="manga_info_latest_data_label">Última atualização</string>
<string name="copied_to_clipboard">%1$s copiado para área de transferência</string>
<string name="custom_download">Fazer download de uma quantidade personalizada</string>
<string name="custom_hint">quantidade</string>
<string name="download_custom">Fazer download personalizado</string>
@ -458,9 +416,7 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="migrate">Migrar</string>
<string name="copy">Copiar</string>
<string name="migrating">Migrando…</string>
<string name="source_not_installed">Fonte não instalada: %1$s</string>
<string name="repeating">Relendo</string>
<string name="pager_viewer">Leitor</string>
<string name="track_status">Situação</string>
@ -468,7 +424,6 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="track_type">Tipo</string>
<string name="track_author">Autor</string>
<string name="url_not_set">URL do mangá não definida, por favor clique no título e selecione novamente</string>
<string name="transition_finished">Concluído:</string>
<string name="transition_current">Atual:</string>
<string name="transition_next">Próximo:</string>
@ -477,6 +432,7 @@ Além disso, verifique se as fontes que requerem uma conta foram configuradas co
<string name="transition_no_previous">Não há capítulo anterior</string>
<string name="transition_pages_loading">Carregando páginas…</string>
<string name="transition_pages_error">Falha ao carregar páginas: %1$s</string>
<string name="darkblue_theme">Azul escuro</string>
</resources>
<string name="reader_pull_up_for_more_options">Deslize para cima para mais opções</string>
<string name="pref_read_with_long_tap">Diálogo de toque longo</string>
</resources>

View File

@ -381,4 +381,6 @@
<string name="ext_trust">Confiar</string>
<string name="ext_untrusted">Não confiar</string>
<string name="download_custom">Transferir personalizado</string>
</resources>
<string name="pref_read_with_long_tap">Diálogo de toque longo</string>
<string name="pref_refresh_library_metadata_summary">Atualizar capas, géneros, descrição e informação sobre o estado de lançamento do mangá</string>
</resources>

View File

@ -349,7 +349,7 @@
<string name="track">Отслеживание</string>
<string name="update_monthly">Ежемесячно</string>
<string name="update_weekly">Еженедельно</string>
<string name="action_sort_total">По количеству глав</string>
<string name="action_sort_total">По количеству глав</string>
<string name="action_open_log">Открыть лог</string>
<string name="app_not_available">Приложение не отвечает</string>
<string name="pref_read_with_volume_keys_inverted">Инвертировать клавиши громкости</string>
@ -357,19 +357,17 @@
<string name="action_display_download_badge">Значок загруженных</string>
<string name="action_open">Открыть</string>
<string name="action_login">Логин</string>
<string name="local_source_badge">Локальная</string>
<string name="other_source">Другие</string>
<string name="action_global_search_hint">Глобальный поиск…</string>
<string name="no_results">Результат не найден!</string>
<string name="latest">Последняя</string>
<string name="browse">Смотреть</string>
<string name="shortcut_created">Ярлык был добавлен на главный экран.</string>
<string name="channel_common">Обычный</string>
<string name="channel_library">Библиотека</string>
<string name="channel_downloader">Загрузчик</string>
<string name="information_empty_category">У вас нет категорий. Нажмите кнопку + для начала организации вашей библиотеки.</string>
<string name="information_empty_category">У вас нет категорий. Нажмите кнопку + для начала организации вашей библиотеки.</string>
<string name="label_migration">Перемещение источника</string>
<string name="label_extensions">Дополнения</string>
<string name="label_extension_info">Информация о дополнении</string>
@ -408,19 +406,16 @@
<string name="migrate">Мигрировать</string>
<string name="copy">Копировать</string>
<string name="migrating">Мигрирую…</string>
<string name="source_search_options">Поисковые фильтры</string>
<string name="ext_trust">Достоверный</string>
<string name="pager_viewer">Страница</string>
<string name="source_not_installed">Источник не установлен: %1$s</string>
<string name="repeating">Перечитываю</string>
<string name="track_status">Статус</string>
<string name="track_start_date">Начато</string>
<string name="track_type">Тип</string>
<string name="track_author">Автор</string>
<string name="url_not_set">"Ссылка манги не установлена, пожалуйста нажмите на заголовок и выберите мангу снова "</string>
<string name="transition_finished">Закончено:</string>
<string name="transition_current">Текущий:</string>
<string name="transition_next">Следующий:</string>
@ -429,6 +424,7 @@
<string name="transition_no_previous">Предыдущей части нет</string>
<string name="transition_pages_loading">Идёт загрузка страниц…</string>
<string name="transition_pages_error">Не удалось загрузить страницы: %1$s</string>
<string name="darkblue_theme">Темно-синяя тема</string>
</resources>
<string name="pref_read_with_long_tap">Диалог при долгом нажатии</string>
<string name="reader_pull_up_for_more_options">Потяните вверх для раскрытия меню</string>
</resources>

View File

@ -0,0 +1,438 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">Nùmene</string>
<string name="categories">Categorias</string>
<string name="manga">Manga</string>
<string name="chapters">Capìtulos</string>
<string name="track">Arrastamentu</string>
<string name="history">Cronologia</string>
<string name="label_settings">Impostatziones</string>
<string name="label_download_queue">Fila de sos iscarrigamentos</string>
<string name="label_library">Sa biblioteca mea</string>
<string name="label_recent_manga">Lèghidos dae pagu</string>
<string name="label_catalogues">Catàlogos</string>
<string name="label_recent_updates">Agiornamentos de sa biblioteca</string>
<string name="label_latest_updates">Ùrtimos agiornamentos</string>
<string name="label_categories">Categorias</string>
<string name="label_selected">Ischertados: %1$d</string>
<string name="label_backup">Còpia de seguresa</string>
<string name="label_migration">Tramudòngiu de sas mitzas</string>
<string name="label_extensions">Estensiones</string>
<string name="label_extension_info">Informatziones de s\'estensione</string>
<string name="action_settings">Impostatziones</string>
<string name="action_filter">Filtru</string>
<string name="action_filter_downloaded">Iscarrigados</string>
<string name="action_filter_bookmarked">Sinnados</string>
<string name="action_filter_unread">Non lèghidos</string>
<string name="action_filter_read">Lèghidos</string>
<string name="action_filter_empty">Boga su filtru</string>
<string name="action_sort_alpha">Alfabeticamente</string>
<string name="action_sort_total">Capìtulos totales</string>
<string name="action_sort_last_read">Ùrtimos lèghidos</string>
<string name="action_sort_last_updated">Ùrtimos agiornados</string>
<string name="action_search">Chirca</string>
<string name="action_global_search">Chirca globale</string>
<string name="action_select_all">Ischerta totu</string>
<string name="action_mark_as_read">Sinna comente lèghidu</string>
<string name="action_mark_as_unread">Sinna comente non lèghidu</string>
<string name="action_mark_previous_as_read">Sinna sos imbenientes comente lèghidos</string>
<string name="action_download">Iscàrriga</string>
<string name="action_bookmark">Annanghe unu sinnalibru</string>
<string name="action_remove_bookmark">Boga su sinnalibru</string>
<string name="action_delete">Iscantzella</string>
<string name="action_update">Agiorna</string>
<string name="action_update_library">Agiorna sa biblioteca</string>
<string name="action_edit">Modìfica</string>
<string name="action_add">Annanghe</string>
<string name="action_add_category">Annanghe una categoria</string>
<string name="action_edit_categories">Modìfica sas categorias</string>
<string name="action_rename_category">Cambia su nùmene de sa categoria</string>
<string name="action_move_category">Pone in sas categorias</string>
<string name="action_edit_cover">Muda s\'immàgine de cobertedda</string>
<string name="action_sort_up">Òrdina in manera chi artziet</string>
<string name="action_sort_down">Òrdina in manera chi achirret</string>
<string name="action_show_downloaded">Iscarrigados</string>
<string name="action_next_unread">Non lèghidu imbeniente</string>
<string name="action_start">Incumintza</string>
<string name="action_stop">Firma</string>
<string name="action_pause">Pone in pàusa</string>
<string name="action_clear">Isbòida</string>
<string name="action_close">Serra</string>
<string name="action_previous_chapter">Capìtulu antepostu</string>
<string name="action_next_chapter">Capìtulu imbeniente</string>
<string name="action_retry">Torra a proare</string>
<string name="action_remove">Boga</string>
<string name="action_resume">Sighi</string>
<string name="action_move">Tràmuda</string>
<string name="action_open_in_browser">Aberi in s\'esploradore (browser)</string>
<string name="action_add_to_home_screen">Annanghe a s\'ischermada printzipale</string>
<string name="action_display_mode">Muda sa modalidade de visualizatzione</string>
<string name="action_display">Visualizatzione</string>
<string name="action_display_grid">Grìllia</string>
<string name="action_display_list">Lista</string>
<string name="action_display_download_badge">Iconas de sos iscarrigamentos</string>
<string name="action_set_filter">Imposta unu filtru</string>
<string name="action_cancel">Annulla</string>
<string name="action_sort">Òrdina</string>
<string name="action_install">Installa</string>
<string name="action_share">Cumpartzi</string>
<string name="action_save">Sarva</string>
<string name="action_reset">Torra a impostare</string>
<string name="action_undo">Iscontza</string>
<string name="action_export">Esporta</string>
<string name="action_open_log">Aberi su registru</string>
<string name="action_create">Crea</string>
<string name="action_restore">Riprìstina</string>
<string name="action_open">Aberi</string>
<string name="action_login">Intra</string>
<string name="deleting">Iscantzellende…</string>
<string name="loading">Carrighende…</string>
<string name="app_not_available">Aplicatzione non disponìbile</string>
<string name="short_recent_updates">Agiornamentos</string>
<string name="pref_category_general">Generales</string>
<string name="pref_category_reader">Leghidore</string>
<string name="pref_category_downloads">Iscarrigamentos</string>
<string name="pref_category_sources">Mitzas</string>
<string name="pref_category_tracking">Arrastamentu</string>
<string name="pref_category_advanced">Avantzadas</string>
<string name="pref_category_about">Informatziones</string>
<string name="pref_library_columns">Manga de sa libreria pro riga</string>
<string name="portrait">Orientamentu verticale</string>
<string name="landscape">Orientamentu orizontale</string>
<string name="default_columns">Predefinidu</string>
<string name="pref_library_update_interval">Frecuèntzia de agiornamentu de sa biblioteca</string>
<string name="update_never">Manuale</string>
<string name="update_1hour">Cada ora</string>
<string name="update_2hour">Cada 2 oras</string>
<string name="update_3hour">Cada 3 oras</string>
<string name="update_6hour">Cada 6 oras</string>
<string name="update_12hour">Cada 12 oras</string>
<string name="update_24hour">Cada die</string>
<string name="update_48hour">Cada 2 dies</string>
<string name="update_weekly">Cada chida</string>
<string name="update_monthly">Cada mese</string>
<string name="pref_library_update_categories">Categorias de incluire in s\'agiornamentu globale</string>
<string name="all">Totus</string>
<string name="pref_library_update_restriction">Restritziones a s\'agiornamentu de sa biblioteca</string>
<string name="pref_library_update_restriction_summary">Agiorna petzi cando sas cunditziones benint rispetadas</string>
<string name="wifi">Wi-Fi</string>
<string name="charging">Carrighende</string>
<string name="pref_update_only_non_completed">Agiorna sos manga in cursu ebbia</string>
<string name="pref_auto_update_manga_sync">Sincroniza sos capìtulos a pustis de sa leghidura</string>
<string name="pref_theme">Tema de s\'aplicatzione</string>
<string name="light_theme">Tema printzipale</string>
<string name="dark_theme">Tema iscuru</string>
<string name="amoled_theme">Tema AMOLED</string>
<string name="darkblue_theme">Biaitu iscuru</string>
<string name="pref_start_screen">Ischermada de incumintzu</string>
<string name="pref_language">Limba</string>
<string name="system_default">Predefinida de su sistema</string>
<string name="default_category">Categoria predefinida</string>
<string name="default_category_summary">Pedi semper</string>
<string name="all_lang">Totus</string>
<string name="ext_details">Detàllios</string>
<string name="ext_update">Agiorna</string>
<string name="ext_install">Installa</string>
<string name="ext_pending">Isetende</string>
<string name="ext_downloading">Iscarrighende</string>
<string name="ext_installing">Installende</string>
<string name="ext_installed">Installada</string>
<string name="ext_trust">Mi fido</string>
<string name="ext_untrusted">Nun mi fido</string>
<string name="ext_uninstall">Disinstalla</string>
<string name="ext_preferences">Preferèntzias</string>
<string name="ext_available">Disponìbile</string>
<string name="untrusted_extension">Estensione non afidàbile</string>
<string name="untrusted_extension_message">Custa estensione est istada firmada cun unu tzertificadu chi no est afidàbile e no est istada ativada.
\n
\nUn\'estensione mala diat pòdere lèghere totu sas informatziones de atzessu sarvadas in Tachiyomi o fàghere eseguire còdighe arbitràriu.
\n
\nPonende fidùtzia in custu tzertificadu atzetas custos arriscos.</string>
<string name="ext_version_info">Versione: %1$s</string>
<string name="ext_language_info">Limba: %1$s</string>
<string name="ext_empty_preferences">Non bi sunt preferèntzias de modificare pro custa estensione</string>
<string name="pref_fullscreen">Ischermu intreu</string>
<string name="pref_lock_orientation">Bloca s\'orientamentu</string>
<string name="pref_page_transitions">Transitziones de sas pàginas</string>
<string name="pref_double_tap_anim_speed">Lestresa de s\'animatzione de su tocu dòpiu</string>
<string name="pref_show_page_number">Ammustra su nùmeru de sa pàgina</string>
<string name="pref_crop_borders">Sega sos oros</string>
<string name="pref_custom_brightness">Imprea una luminosidade personalizada</string>
<string name="pref_custom_color_filter">Imprea unu filtru de colore personalizadu</string>
<string name="pref_keep_screen_on">Mantene s\'ischermu allutu</string>
<string name="pref_reader_navigation">Navigatzione</string>
<string name="pref_read_with_volume_keys">Teclas de su volume</string>
<string name="pref_read_with_volume_keys_inverted">Fùrria sas teclas de su volume</string>
<string name="pref_read_with_tapping">Tocu sìngulu</string>
<string name="pref_read_with_long_tap">Ventana cun su tocu longu</string>
<string name="pref_reader_theme">Colore de isfundu</string>
<string name="white_background">Arbu/biancu</string>
<string name="black_background">Nieddu</string>
<string name="pref_viewer_type">Òrdine de leghidura</string>
<string name="default_viewer">Predefinidu</string>
<string name="left_to_right_viewer">Dae manca a destra</string>
<string name="right_to_left_viewer">Dae destra a manca</string>
<string name="vertical_viewer">Verticale</string>
<string name="webtoon_viewer">Webtoon</string>
<string name="pager_viewer">Impaginadore</string>
<string name="pref_image_decoder">Decodificadore de immàgines</string>
<string name="pref_image_scale_type">Casta de iscala</string>
<string name="scale_type_fit_screen">Adata a s\'ischermu</string>
<string name="scale_type_stretch">Prena s\'ischermu</string>
<string name="scale_type_fit_width">Adata a sa largària</string>
<string name="scale_type_fit_height">Adata a s\'artària</string>
<string name="scale_type_original_size">Mannària originale</string>
<string name="scale_type_smart_fit">Adatamentu intelligente</string>
<string name="pref_zoom_start">Positzione de incumintzu de s\'ismanniamentu</string>
<string name="zoom_start_automatic">Automàtica</string>
<string name="zoom_start_left">A manca</string>
<string name="zoom_start_right">A destra</string>
<string name="zoom_start_center">In su tzentru</string>
<string name="double_tap_anim_speed_0">Peruna animatzione</string>
<string name="double_tap_anim_speed_normal">Normale</string>
<string name="double_tap_anim_speed_fast">Lestra</string>
<string name="pref_rotation_type">Rotatzione</string>
<string name="rotation_free">Lìbera</string>
<string name="rotation_lock">Blocada</string>
<string name="rotation_force_portrait">Bloca in verticale</string>
<string name="rotation_force_landscape">Bloca in orizontale</string>
<string name="color_filter_r_value">R</string>
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">Cartella de sos iscarrigamentos</string>
<string name="pref_download_only_over_wifi">Iscàrriga petzi impreende su WiFi</string>
<string name="pref_remove_after_marked_as_read">Iscantzella cando est marcadu comente non lèghidu</string>
<string name="pref_remove_after_read">Iscantzella a pustis de sa leghidura</string>
<string name="custom_dir">Cartella personalizada</string>
<string name="disabled">Disabilitadu</string>
<string name="last_read_chapter">Leghe s\'ùrtimu capìtulu</string>
<string name="second_to_last">Penùrtimu capìtulu</string>
<string name="third_to_last">Tertzùrtimu capìtulu</string>
<string name="fourth_to_last">Cuartùrtimu capìtulu</string>
<string name="fifth_to_last">Cuintùrtimu capìtulu</string>
<string name="pref_download_new">Iscàrriga sos capìtulos noos</string>
<string name="pref_download_new_categories">Categorias de incluire in s\'iscarrigamentu</string>
<string name="services">Servìtzios</string>
<string name="backup">Còpia de seguresa</string>
<string name="pref_create_backup">Crea una còpia de seguresa</string>
<string name="pref_create_backup_summ">Podet èssere impreada pro ripristinare sa libreria atuale</string>
<string name="pref_restore_backup">Riprìstina una còpia de seguresa</string>
<string name="pref_restore_backup_summ">Riprìstina sa biblioteca dae una còpia de seguresa</string>
<string name="pref_backup_directory">Cartella de sa còpia de seguresa</string>
<string name="pref_backup_service_category">Servìtziu</string>
<string name="pref_backup_interval">Frecuèntzia de sarvatàgiu de sas còpias de seguresa</string>
<string name="pref_backup_slots">Nùmeru màssimu de còpias automàticas</string>
<string name="dialog_restoring_backup">Ripristinende sa còpia de seguresa
\n%1$s annantu a sa biblioteca</string>
<string name="source_not_found">Mitza no agatada</string>
<string name="dialog_restoring_source_not_found">Ripristinende sa còpia de seguresa
\n%1$s mitza no agatada</string>
<string name="backup_created">Còpia de seguresa creada</string>
<string name="restore_completed">Riprìstinu acabadu</string>
<string name="error_opening_log">Impossìbile abèrrere su registru</string>
<string name="restore_completed_content">Su riprìstinu est duradu %1$s.
\n%2$s errores agatados.</string>
<string name="backup_restore_content">Su riprìstinu impreat sa mitza pro otènnere sos datos, bi diant pòdere èssere costos de s\'operadore.
\nAssegura·ti fintzas de àere fatu s\'atzessu pro sas mitzas chi lu pedint in antis de ripristinare.</string>
<string name="file_saved">Documentu sarvadu in %1$s</string>
<string name="backup_choice">De ite cheres fàghere una còpia de seguresa\?</string>
<string name="restoring_backup">Ripristinende sa còpia de seguresa</string>
<string name="creating_backup">Creende sa còpia de seguresa</string>
<string name="pref_clear_chapter_cache">Isbòida sa memòria temporànea de sos capìtulos</string>
<string name="used_cache">Impreados: %1$s</string>
<string name="cache_deleted">Memòria temporànea isbodiada. %1$d documentos sunt istados iscantzellados</string>
<string name="cache_delete_error">B\'at àpidu un\'errore durante s\'isbodiamentu de sa memòria temporànea</string>
<string name="pref_clear_cookies">Iscantzella sos cookies</string>
<string name="cookies_cleared">Cookies iscantzellados</string>
<string name="choices_reset">Reseta sos issèberos de diàlogu</string>
<string name="pref_clear_database">Isbòida sa base de datos</string>
<string name="pref_clear_database_summary">Iscantzella sos manga e sos capìtulos chi non sunt in sa biblioteca tua</string>
<string name="clear_database_confirmation">Seguru ses\? Sos capìtulos lèghidos e su progressu de sos mangas chi non sunt in sa biblioteca s\'ant a pèrdere</string>
<string name="clear_database_completed">Boghes iscantzelladas</string>
<string name="pref_refresh_library_metadata">Agiorna sos metadatos de sa biblioteca</string>
<string name="pref_refresh_library_metadata_summary">Agiornat sas coberteddas, sos gèneres, sa descritzione e sas informatziones de istadu de sos manga</string>
<string name="pref_refresh_library_tracking">Agiorna sos metadatos de arrastamentu</string>
<string name="pref_refresh_library_tracking_summary">Agiornat s\'istadu, su votu e s\'ùrtimu capìtulu lèghidu dae sos servìtzios de arrastamentu</string>
<string name="version">Versione</string>
<string name="build_time">Data de compilatzione</string>
<string name="pref_enable_automatic_updates">Chirca agiornamentos</string>
<string name="pref_enable_automatic_updates_summary">Chirca automaticamente agiornamentos de s\'aplicatzione</string>
<string name="pref_enable_acra">Imbia raportos a pitzu de sos arrestos anòmalos</string>
<string name="pref_acra_summary">Agiudat a acontzare cale si siat faddina. Perunu datu sensìbile at a èssere imbiadu</string>
<string name="login_title">Intrada pro %1$s</string>
<string name="username">Nùmene impreadore</string>
<string name="password">Crae de intrada</string>
<string name="show_password">Ammustra sa crae</string>
<string name="login">Intra</string>
<string name="login_success">S\'intrada at tentu sutzessu</string>
<string name="invalid_login">Errore de atzessu</string>
<string name="unknown_error">Errore disconnotu</string>
<string name="library_search_hint">Tìtulu o autore…</string>
<string name="updating_category">Agiornende sa categoria</string>
<string name="local_source_badge">Locale</string>
<string name="confirm_delete_manga">Ses seguru de chèrrere bogare sos manga ischertados\?</string>
<string name="also_delete_chapters">Iscantzella fintzas sos capìtulos iscarrigados</string>
<string name="source_search_options">Filtros de chirca</string>
<string name="source_requires_login">Custa mitza ti pedit de fàghere s\'atzessu</string>
<string name="select_source">Ischerta una mitza</string>
<string name="no_valid_sources">Pro praghere abìlita a su mancu una mitza vàlida</string>
<string name="no_more_results">Non bi sunt àteros risultados</string>
<string name="local_source">Manga locale</string>
<string name="other_source">Àteru</string>
<string name="invalid_combination">Predefinidu non podet èssere ischertadu cun àteras categorias</string>
<string name="added_to_library">Su manga est istadu annantu a sa biblioteca tua</string>
<string name="action_global_search_hint">Chirca globale…</string>
<string name="no_results">Perunu risultadu agatadu!</string>
<string name="latest">Ùrtimos</string>
<string name="browse">Esplora</string>
<string name="manga_not_in_db">Custu manga est istadu bogadu dae sa base de datos!</string>
<string name="manga_detail_tab">Informatziones</string>
<string name="description">Descritzione</string>
<string name="ongoing">In cursu</string>
<string name="unknown">Disconnotu</string>
<string name="licensed">Cuntzessu in litzèntzia</string>
<string name="remove_from_library">Boga dae sa biblioteca</string>
<string name="manga_info_full_title_label">Tìtulu</string>
<string name="manga_added_library">Annantu a sa biblioteca</string>
<string name="manga_removed_library">Bogadu dae sa biblioteca</string>
<string name="manga_info_author_label">Autore</string>
<string name="manga_info_artist_label">Artista</string>
<string name="manga_info_chapters_label">Capìtulos</string>
<string name="manga_info_last_chapter_label">Ùrtimu capìtulu</string>
<string name="manga_info_latest_data_label">Agiornadu</string>
<string name="manga_info_status_label">Istadu</string>
<string name="manga_info_source_label">Mitza</string>
<string name="manga_info_genres_label">Gèneres</string>
<string name="circular_icon">Icona tzirculare</string>
<string name="rounded_icon">Icona atundada</string>
<string name="square_icon">Icona cuadrada</string>
<string name="star_icon">Icona a isteddu</string>
<string name="shortcut_title">Tìtulu de s\'incurtzadura</string>
<string name="shortcut_created">S\'incurtzadura est istada annanta a s\'ischermada printzipale tua.</string>
<string name="icon_shape">Forma de s\'icona</string>
<string name="icon_creation_fail">Creatzione de s\'incurtzadura fallida!</string>
<string name="delete_downloads_for_manga">Iscantzellare sos capìtulos iscarrigados\?</string>
<string name="copied_to_clipboard">%1$s copiadu in punta de billete</string>
<string name="source_not_installed">Mitza no installada: %1$s</string>
<string name="manga_chapters_tab">Capìtulos</string>
<string name="manga_chapter_no_title">Chene tìtulu</string>
<string name="display_mode_chapter">Capìtulu %1$s</string>
<string name="chapter_downloaded">Iscarrigadu</string>
<string name="chapter_queued">In isetu</string>
<string name="chapter_downloading">Iscarrighende</string>
<string name="chapter_downloading_progress">Iscarrighende (%1$d/%2$d)</string>
<string name="chapter_error">Errore</string>
<string name="chapter_paused">In pàusa</string>
<string name="fetch_chapters_error">Errore durante su recùperu de sos capìtulos</string>
<string name="show_title">Ammustra su tìtulu</string>
<string name="show_chapter_number">Ammustra su nùmeru de su capìtulu</string>
<string name="sorting_mode">Modalidade de ordinamentu</string>
<string name="sort_by_source">Pro mitza</string>
<string name="sort_by_number">Pro nùmeru de capìtulu</string>
<string name="manga_download">Iscàrriga</string>
<string name="custom_download">Iscàrriga una cantidade personalizada</string>
<string name="custom_hint">cantidade</string>
<string name="download_1">Iscàrriga su capìtulu imbeniente</string>
<string name="download_5">Iscàrriga sos 5 capìtulos imbenientes</string>
<string name="download_10">Iscàrriga sos 10 capìtulos imbenientes</string>
<string name="download_custom">Iscarrigamentu personalizadu</string>
<string name="download_all">Iscàrriga totu</string>
<string name="download_unread">Iscàrriga sos non lèghidos</string>
<string name="confirm_delete_chapters">Ses seguru de chèrrere iscantzellare sos capìtulos ischertados\?</string>
<string name="manga_tracking_tab">Arrastamentu</string>
<string name="reading">Leghende</string>
<string name="completed">Acabadu</string>
<string name="dropped">Abbandonadu</string>
<string name="on_hold">In pàusa</string>
<string name="plan_to_read">De lèghere</string>
<string name="repeating">Torrende a lèghere</string>
<string name="score">Votu</string>
<string name="title">Tìtulu</string>
<string name="status">Istadu</string>
<string name="track_status">Istadu</string>
<string name="track_start_date">Incumintzadu</string>
<string name="track_type">Casta</string>
<string name="track_author">Autore</string>
<string name="url_not_set">S\'url de su manga no est impostadu, pro praghere incarca in su tìtulu e ischerta torra su manga</string>
<string name="error_category_exists">Esistit giai una categoria cun custu nùmene!</string>
<string name="snack_categories_deleted">Categorias iscantzelladas</string>
<string name="dialog_with_checkbox_remove_description">Custu at a bogare sa data de leghidura de custu capìtulu. Seguru ses\?</string>
<string name="dialog_with_checkbox_reset">Reseta totu sos capìtulos pro custu manga</string>
<string name="snack_add_to_library">Annànghere custu manga a sa biblioteca\?</string>
<string name="picture_saved">Immàgine sarvada</string>
<string name="saving_picture">Sarvende s\'immàgine</string>
<string name="options">Optziones</string>
<string name="custom_filter">Filtru personalizadu</string>
<string name="set_as_cover">Imposta comente cobertedda</string>
<string name="cover_updated">Cobertedda agiornada</string>
<string name="page_downloaded">Pàgina copiada in %1$s</string>
<string name="downloading">Iscarrighende…</string>
<string name="download_progress">Iscarrigadu %1$d%%</string>
<string name="chapter_progress">Pàgina: %1$d</string>
<string name="chapter_subtitle">Capìtulu %1$s</string>
<string name="no_next_chapter">Capìtulu imbeniente no agatadu</string>
<string name="no_previous_chapter">Capìtulu antepostu no agatadu</string>
<string name="decode_image_error">No est istadu possìbile decodificare s\'immàgine</string>
<string name="confirm_update_manga_sync">Agiornare a %1$d s\'ùrtimu capìtulu lèghidu in sos servìtzios abilitados\?</string>
<string name="confirm_set_image_as_cover">Cheres impostare custa immàgine comente cobertedda\?</string>
<string name="viewer_for_this_series">Visualizadore pro custa sèrie</string>
<string name="transition_finished">Acabadu:</string>
<string name="transition_current">Atuale:</string>
<string name="transition_next">Imbeniente:</string>
<string name="transition_previous">Antepostu:</string>
<string name="transition_no_next">Non b\'at unu capìtulu imbeniente</string>
<string name="transition_no_previous">Non b\'at unu capìtulu antepostu</string>
<string name="transition_pages_loading">Carrighende pàginas…</string>
<string name="transition_pages_error">Carrigamentu de pàginas fallidu: %1$s</string>
<string name="reader_pull_up_for_more_options">Tira a susu pro àteras optziones</string>
<string name="recent_manga_source">%1$s - Cap.%2$s</string>
<string name="migration_info">Toca pro ischertare sa mitza dae sa cale migrare</string>
<string name="migration_dialog_what_to_include">Ischerta sos datos de incluire</string>
<string name="select">Ischerta</string>
<string name="migrate">Mìgra</string>
<string name="copy">Còpia</string>
<string name="migrating">Migrende…</string>
<string name="download_queue_error">Bat àpidu un\'errore in siscarrigamentu de sos capìtulos. Podes torrare a proare in sa setzione de sos iscarrigamentos</string>
<string name="notification_update_progress">Progressu de s\'agiornamentu: %1$d/%2$d</string>
<string name="notification_new_chapters">Capìtulos noos agatados</string>
<string name="notification_new_chapters_text">Pro %1$d tìtulos</string>
<string name="notification_cover_update_failed">Agiornamentu de sa cobertedda fallidu</string>
<string name="notification_first_add_to_library">Pro praghere annanghe su manga a sa libreria tua in antis de fàghere custu</string>
<string name="notification_not_connected_to_ac_title">Sincronizatzione annullada</string>
<string name="notification_not_connected_to_ac_body">Non connessu a s\'alimentatzione</string>
<string name="notification_no_connection_title">Sincronizatzione annullada</string>
<string name="notification_no_connection_body">Connessione non disponìbile</string>
<string name="file_select_cover">Ischerta s\'immàgine de cobertedda</string>
<string name="file_select_backup">Ischerta sa còpia de seguresa</string>
<string name="file_select_icon">Ischerta s\'icona de s\'incurtzadura</string>
<string name="update_check_title">Est disponìbile un\'agiornamentu nou!</string>
<string name="update_check_confirm">Iscàrriga</string>
<string name="update_check_ignore">Ignora</string>
<string name="update_check_no_new_updates">Non bi sunt agiornamentos disponìbiles noos</string>
<string name="update_check_download_started">Iscarrigamentu incumintzadu</string>
<string name="update_check_look_for_updates">Chirchende agiornamentos</string>
<string name="update_check_notification_file_download">Iscàrriga s\'agiornamentu</string>
<string name="update_check_notification_download_in_progress">Iscarrigamentu in cursu</string>
<string name="update_check_notification_download_complete">Iscarrigamentu acabadu</string>
<string name="update_check_notification_download_error">Errore de iscarrigamentu</string>
<string name="update_check_notification_update_available">Agiornamentu disponìbile</string>
<string name="description_backdrop">Immàgine de isfundu de su manga</string>
<string name="description_cover">Cobertedda de su manga</string>
<string name="information_no_downloads">Perunu iscarrigamentu</string>
<string name="information_no_recent">Perunu capìtulu reghente</string>
<string name="information_no_recent_manga">Perunu manga lèghidu dae pagu</string>
<string name="information_empty_library">Sa biblioteca tua est bòida, podes annànghere sèries a sa biblioteca tua dae sos Catàlogos.</string>
<string name="information_empty_category">Non tenes categorias. Incarca su butone de su \"prus\" pro nde creare una pro organizare sa biblioteca tua.</string>
<string name="download_notifier_downloader_title">Iscarrigadore</string>
<string name="download_notifier_title_error">Errore</string>
<string name="download_notifier_unkown_error">B\'at àpidu un\'errore imprevistu durante s\'iscarrigamentu de su capìtulu</string>
<string name="download_notifier_page_error">Una pàgina mancat in sa cartella</string>
<string name="download_notifier_page_ready_error">Una pàgina no est istada carrigada</string>
<string name="download_notifier_text_only_wifi">Peruna connessione wifi disponìbile</string>
<string name="download_notifier_no_network">Peruna connessione de retza disponìbile</string>
<string name="download_notifier_download_paused">Iscarrigamentu in pàusa</string>
<string name="channel_common">Comunu</string>
<string name="channel_library">Biblioteca</string>
<string name="channel_downloader">Iscarrigadore</string>
</resources>

View File

@ -328,4 +328,16 @@
<string name="show_title">Prikaži naslov</string>
<string name="show_chapter_number">Prikaži broj poglavlja</string>
<string name="sorting_mode">Model sortiranja</string>
<string name="pref_read_with_long_tap">Dialog kod dugog pritiska</string>
<string name="sort_by_source">Prema izvoru</string>
<string name="sort_by_number">Prema broju poglavlja</string>
<string name="manga_download">Preuzmi</string>
<string name="custom_download">Preuzmi određen broj</string>
<string name="custom_hint">količina</string>
<string name="download_1">Preuzmi sledeće poglavlje</string>
<string name="download_5">Preuzmi 5 narednih poglavlja</string>
<string name="download_10">Preuzmi 10 narednih poglavlja</string>
<string name="download_custom">Preuzmi određeno</string>
<string name="download_all">Preuzmi sve</string>
<string name="download_unread">Preuzmi nepročitano</string>
</resources>

View File

@ -0,0 +1,59 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="categories">Mga Kategorya</string>
<string name="manga">Mga Manga</string>
<string name="chapters">Mga Kabanata</string>
<string name="track">Sinusubaybayan</string>
<string name="history">Kasaysayan</string>
<string name="label_settings">Mga Setting</string>
<string name="label_download_queue">Queue sa Pag-download</string>
<string name="label_library">Aking Aklatan</string>
<string name="label_recent_manga">Kakabasa Lang</string>
<string name="label_catalogues">Mga Katalogo</string>
<string name="label_recent_updates">Mga Update sa Aklatan</string>
<string name="label_latest_updates">Mga Kakalabas lang na Update</string>
<string name="label_categories">Mga Kategorya</string>
<string name="label_selected">Napili: %1$d</string>
<string name="label_backup">Backup</string>
<string name="label_migration">Pag-migrate ng Source</string>
<string name="label_extensions">Mga Extension</string>
<string name="label_extension_info">Tungkol sa Extension</string>
<string name="action_settings">Mga Setting</string>
<string name="action_filter">Ibukod</string>
<string name="action_filter_downloaded">Na-download</string>
<string name="action_filter_bookmarked">Na-bookmark</string>
<string name="action_filter_unread">Hindi pa Nababasa</string>
<string name="action_filter_read">Nabasa</string>
<string name="action_filter_empty">Tanggalin ang Pagbukod</string>
<string name="action_sort_alpha">Paalpabetiko</string>
<string name="action_sort_total">Kabuuang Bilang ng mga Kabanata</string>
<string name="action_sort_last_read">Huling nabasa</string>
<string name="action_sort_last_updated">Huling na-update</string>
<string name="action_search">Hanapin</string>
<string name="action_global_search">Global na paghahanap</string>
<string name="action_select_all">Piliin lahat</string>
<string name="name">Pangalan</string>
<string name="action_mark_as_read">Markahang Nabasa</string>
<string name="action_mark_as_unread">Markahang Hindi pa Nababasa</string>
<string name="action_mark_previous_as_read">Markahang Nabasa ang Nauna</string>
<string name="action_download">I-download</string>
<string name="action_bookmark">I-bookmark</string>
<string name="action_remove_bookmark">Tanggalin ang bookmark</string>
<string name="action_delete">I-delete</string>
<string name="action_update">I-update</string>
<string name="action_update_library">I-update ang Aklatan</string>
<string name="action_edit">I-edit</string>
<string name="action_add">Idagdag</string>
<string name="action_add_category">Magdagdag ng Kategorya</string>
<string name="action_edit_categories">I-edit ang mga kategorya</string>
<string name="action_rename_category">I-rename ang kategorya</string>
<string name="action_move_category">Ilipat sa mga kategorya</string>
<string name="action_edit_cover">I-edit ang cover picture</string>
<string name="action_sort_up">I-sort pataas</string>
<string name="action_sort_down">I-sort pababa</string>
<string name="action_show_downloaded">Mga Na-download</string>
<string name="action_next_unread">Susunod na Hindi pa Nababasa</string>
<string name="action_start">Simula</string>
<string name="action_stop">Itigil</string>
<string name="action_pause">Ihinto</string>
</resources>

View File

@ -1,11 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources><string name="name">Ad</string>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">Ad</string>
<string name="categories">Kategoriler</string>
<string name="manga">Manga</string>
<string name="chapters">Bölümler</string>
<string name="track">İzleme</string>
<string name="history">Geçmiş</string>
<string name="label_settings">Ayarlar</string>
<string name="label_download_queue">İndirme kuyruğu</string>
<string name="label_library">Kitaplığım</string>
@ -19,8 +19,6 @@
<string name="label_migration">Kaynak taşıma</string>
<string name="label_extensions">Eklentiler</string>
<string name="label_extension_info">Eklenti bilgisi</string>
<string name="action_settings">Ayarlar</string>
<string name="action_filter">Süz</string>
<string name="action_filter_downloaded">İndirilen</string>
@ -87,13 +85,10 @@
<string name="action_restore">Geri yükle</string>
<string name="action_open"></string>
<string name="action_login">Giriş</string>
<string name="deleting">Siliniyor…</string>
<string name="loading">Yükleniyor…</string>
<string name="app_not_available">Uygulama yok</string>
<string name="short_recent_updates">Güncellemeler</string>
<string name="pref_category_general">Genel</string>
<string name="pref_category_reader">Okuyucu</string>
<string name="pref_category_downloads">İndirmeler</string>
@ -101,8 +96,7 @@
<string name="pref_category_tracking">İzleme</string>
<string name="pref_category_advanced">Gelişmiş</string>
<string name="pref_category_about">Hakkında</string>
<string name="pref_library_columns">Kitaplık satır başına manga</string>
<string name="pref_library_columns">Kitaplık satır başına manga</string>
<string name="portrait">Dikey</string>
<string name="landscape">Yatay</string>
<string name="default_columns">Öntanımlı</string>
@ -134,7 +128,6 @@
<string name="system_default">Sistem öntanımlı</string>
<string name="default_category">Öntanımlı kategori</string>
<string name="default_category_summary">Her zaman sor</string>
<string name="all_lang">Tümü</string>
<string name="ext_details">Ayrıntılar</string>
<string name="ext_update">Güncelle</string>
@ -157,8 +150,7 @@
<string name="ext_version_info">Sürüm: %1$s</string>
<string name="ext_language_info">Dil: %1$s</string>
<string name="ext_empty_preferences">Bu uzantı için düzenlenebilecek tercih yok</string>
<string name="pref_fullscreen">Tam Ekran</string>
<string name="pref_fullscreen">Tam Ekran</string>
<string name="pref_lock_orientation">Yönlendirmeyi sabitle</string>
<string name="pref_page_transitions">Sayfa geçişleri</string>
<string name="pref_double_tap_anim_speed">Çift dokunma animasyon hızı</string>
@ -206,9 +198,7 @@
<string name="color_filter_g_value">Y</string>
<string name="color_filter_b_value">M</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">İndirme dizini</string>
<string name="pref_download_directory">İndirme dizini</string>
<string name="pref_download_only_over_wifi">Yalnızca Wi-Fi ile indir</string>
<string name="pref_remove_after_marked_as_read">Okunmuş olarak işaretlendiğinde kaldır</string>
<string name="pref_remove_after_read">Okunduktan sonra kaldır</string>
@ -221,9 +211,7 @@
<string name="fifth_to_last">Sondan beşinci bölüm</string>
<string name="pref_download_new">Yeni bölümleri indir</string>
<string name="pref_download_new_categories">İndirmeye eklenecek kategoriler</string>
<string name="services">Hizmetler</string>
<string name="services">Hizmetler</string>
<string name="backup">Yedekleme</string>
<string name="pref_create_backup">Yedek oluştur</string>
<string name="pref_create_backup_summ">Şu anki kitaplığı geri yüklemek için kullanılabilir</string>
@ -249,8 +237,7 @@
<string name="backup_choice">Neyi yedeklemek istiyorsunuz?</string>
<string name="restoring_backup">Yedek geri yükleniyor</string>
<string name="creating_backup">Yedek oluşturuluyor</string>
<string name="pref_clear_chapter_cache">Bölüm önbelleğini temizle</string>
<string name="pref_clear_chapter_cache">Bölüm önbelleğini temizle</string>
<string name="used_cache">Kullanılan: %1$s</string>
<string name="cache_deleted">Önbellek temizlendi. %1$d dosya silindi</string>
<string name="cache_delete_error">Önbellek temizlenirken bir hata oluştu</string>
@ -265,15 +252,12 @@
<string name="pref_refresh_library_metadata_summary">Kapakları, türleri, açıklamayı ve manga durum bilgisini günceller</string>
<string name="pref_refresh_library_tracking">İzleme üst verisini yenile</string>
<string name="pref_refresh_library_tracking_summary">İzleme servisinden durumu, puanı ve son okunan bölümü günceller</string>
<string name="version">Sürüm</string>
<string name="version">Sürüm</string>
<string name="build_time">İnşa tarihi</string>
<string name="pref_enable_automatic_updates">Güncellemeleri denetle</string>
<string name="pref_enable_automatic_updates_summary">Uygulama güncellemelerini kendiliğinden denetle</string>
<string name="pref_enable_acra">Çökme bildirimi gönder</string>
<string name="pref_acra_summary">Hataların düzeltilmesine yardımcı olur. Hiçbir hassas veri gönderilmez</string>
<string name="login_title">%1$s için giriş</string>
<string name="username">Kullanıcı adı</string>
<string name="password">Parola</string>
@ -282,13 +266,11 @@
<string name="login_success">Giriş başarılı</string>
<string name="invalid_login">Giriş hatası</string>
<string name="unknown_error">Bilinmeyen hata</string>
<string name="library_search_hint">Başlık veya yazar…</string>
<string name="updating_category">Kategori güncelleniyor</string>
<string name="local_source_badge">Yerel</string>
<string name="confirm_delete_manga">Seçilen mangayı kaldırmak istediğinizden emin misiniz?</string>
<string name="also_delete_chapters">İndirilen bölümleri de sil</string>
<string name="source_search_options">Arama süzgeçleri</string>
<string name="source_requires_login">Bu kaynak giriş yapmanızı gerektirir</string>
<string name="select_source">Bir kaynak seç</string>
@ -302,9 +284,7 @@
<string name="no_results">Sonuç bulunmadı!</string>
<string name="latest">En son</string>
<string name="browse">Göz at</string>
<string name="manga_not_in_db">Bu manga veritabanından kaldırıldı!</string>
<string name="manga_detail_tab">Bilgi</string>
<string name="description">ıklama</string>
<string name="ongoing">Devam ediyor</string>
@ -333,7 +313,6 @@
<string name="delete_downloads_for_manga">İndirilen bölümler silinsin mi?</string>
<string name="copied_to_clipboard">"%1$s panoya kopyalandı "</string>
<string name="source_not_installed">Kaynak kurulmadı: %1$s</string>
<string name="manga_chapters_tab">Bölümler</string>
<string name="manga_chapter_no_title">Başlıksız</string>
<string name="display_mode_chapter">Bölüm %1$s</string>
@ -359,7 +338,6 @@
<string name="download_all">Tümünü indir</string>
<string name="download_unread">Okunmamışı indir</string>
<string name="confirm_delete_chapters">Seçilen bölümleri silmek istediğinize emin misiniz?</string>
<string name="manga_tracking_tab">İzleme</string>
<string name="reading">Okunuyor</string>
<string name="completed">Tamamlandı</string>
@ -375,19 +353,14 @@
<string name="track_type">Tür</string>
<string name="track_author">Yazar</string>
<string name="url_not_set">Manga url\'si ayarlı değil, lütfen başlığa dokunun ve mangayı yeniden seçin</string>
<string name="error_category_exists">Bu adla bir kategori zaten var!</string>
<string name="snack_categories_deleted">Kategoriler silindi</string>
<string name="dialog_with_checkbox_remove_description">Bu, bu bölümün okunma tarihini kaldıracak. Emin misiniz?</string>
<string name="dialog_with_checkbox_reset">Bu manga için tüm bölümleri sıfırla</string>
<string name="snack_add_to_library">Manga kitaplığa eklensin mi?</string>
<string name="picture_saved">Resim kaydedildi</string>
<string name="saving_picture">Resim kaydediliyor</string>
<string name="options">Seçenekler</string>
<string name="custom_filter">Özel süzgeç</string>
<string name="set_as_cover">Kapak olarak ayarla</string>
<string name="cover_updated">Kapak güncellendi</string>
@ -402,18 +375,14 @@
<string name="confirm_update_manga_sync">Etkin hizmetlerde okunan son bölüm %1$d ile güncellensin mi?</string>
<string name="confirm_set_image_as_cover">Bu görseli kapak olarak ayarlamak istiyor musunuz?</string>
<string name="viewer_for_this_series">Bu dizi için görüntüleyici</string>
<string name="recent_manga_source">%1$s - Böl.%2$s</string>
<string name="migration_info">Taşınılacak kaynağı seçmek için dokunun</string>
<string name="migration_dialog_what_to_include">Eklenecek veriyi seç</string>
<string name="select">Seç</string>
<string name="migrate">Taşın</string>
<string name="copy">Kopyala</string>
<string name="migrating">Taşınılıyor…</string>
<string name="download_queue_error">Bölümler indirilirken bir hata oluştu. İndirmeler bölümünden yeniden deneyebilirsiniz</string>
<string name="notification_update_progress">Güncelleme ilerlemesi: %1$d/%2$d</string>
<string name="notification_new_chapters">Yeni bölümler bulundu</string>
<string name="notification_new_chapters_text">%1$d başlık için</string>
@ -423,33 +392,27 @@
<string name="notification_not_connected_to_ac_body">AC güç kaynağına bağlı değil</string>
<string name="notification_no_connection_title">Eşitleme iptal edildi</string>
<string name="notification_no_connection_body">Bağlantı yok</string>
<string name="file_select_cover">Kapak görselini seç</string>
<string name="file_select_backup">Yedek dosyasını seç</string>
<string name="file_select_icon">Kısayol simgesi seç</string>
<string name="update_check_title">Yeni güncelleme var!</string>
<string name="update_check_confirm">İndir</string>
<string name="update_check_ignore">Yok say</string>
<string name="update_check_no_new_updates">Yeni güncelleme yok</string>
<string name="update_check_download_started">İndirme başladı</string>
<string name="update_check_look_for_updates">Güncellemeler aranıyor</string>
<string name="update_check_notification_file_download">Güncellemeyi indir</string>
<string name="update_check_notification_download_in_progress">İndirme sürüyor</string>
<string name="update_check_notification_download_complete">İndirme tamamlandı</string>
<string name="update_check_notification_download_error">İndirme hatası</string>
<string name="update_check_notification_update_available">Güncelleme var</string>
<string name="description_backdrop">Manganın art alan görseli</string>
<string name="description_cover">Manganın kapağı</string>
<string name="information_no_downloads">İndirme yok</string>
<string name="information_no_recent">Yeni bölüm yok</string>
<string name="information_no_recent_manga">Yakında okunan manga yok</string>
<string name="information_empty_library">Kitaplığınız boş, Kataloglardan kitaplığınıza serileri ekleyebilirsiniz.</string>
<string name="information_empty_category">Kategoriniz yok. Kitaplığınızı düzenlemek için bir tane oluşturmak için artı düğmesine basın.</string>
<string name="download_notifier_downloader_title">İndirici</string>
<string name="download_notifier_title_error">Hata</string>
<string name="download_notifier_unkown_error">Bölüm indirilirken beklenmeyen bir hata oluştu</string>
@ -458,12 +421,10 @@
<string name="download_notifier_text_only_wifi">Wi-Fi bağlantısı yok</string>
<string name="download_notifier_no_network">Ağ bağlantısı yok</string>
<string name="download_notifier_download_paused">İndirme duraklatıldı</string>
<string name="channel_common">Genel</string>
<string name="channel_library">Kitaplık</string>
<string name="channel_downloader">İndirici</string>
<string name="transition_finished">Biten:</string>
<string name="transition_finished">Biten:</string>
<string name="transition_current">Şu anki:</string>
<string name="transition_next">Sonraki:</string>
<string name="transition_previous">Önceki:</string>
@ -471,6 +432,7 @@
<string name="transition_no_previous">Önceki bölüm yok</string>
<string name="transition_pages_loading">Sayfalar yükleniyor…</string>
<string name="transition_pages_error">Sayfalar yüklenemedi: %1$s</string>
<string name="darkblue_theme">Koyu mavi</string>
</resources>
<string name="pref_read_with_long_tap">Uzun dokunma iletişim kutusu</string>
<string name="reader_pull_up_for_more_options">Daha çok seçenek için yukarı çekin</string>
</resources>

View File

@ -1,11 +1,11 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources><string name="name">Назва</string>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">Назва</string>
<string name="categories">Категорії</string>
<string name="manga">Манга</string>
<string name="chapters">Глави</string>
<string name="track">Відстеження</string>
<string name="history">Історія</string>
<string name="label_settings">Налаштування</string>
<string name="label_download_queue">Черга завантаження</string>
<string name="label_library">Бібліотека</string>
@ -19,8 +19,6 @@
<string name="label_migration">Міграція джерела</string>
<string name="label_extensions">Розширення</string>
<string name="label_extension_info">Інформація про розширення</string>
<string name="action_settings">Налаштування</string>
<string name="action_filter">Фільтр</string>
<string name="action_filter_downloaded">Завантажені</string>
@ -87,13 +85,10 @@
<string name="action_restore">Відновити</string>
<string name="action_open">Відкрити</string>
<string name="action_login">Логін</string>
<string name="deleting">Видалення…</string>
<string name="loading">Завантаження…</string>
<string name="app_not_available">Програма не відповідає</string>
<string name="short_recent_updates">Оновлення</string>
<string name="pref_category_general">Головні</string>
<string name="pref_category_reader">Читалка</string>
<string name="pref_category_downloads">Завантаження</string>
@ -101,8 +96,7 @@
<string name="pref_category_tracking">Відстеження</string>
<string name="pref_category_advanced">Додатково</string>
<string name="pref_category_about">Інформація</string>
<string name="pref_library_columns">Кількість колонок в бібліотеці</string>
<string name="pref_library_columns">Кількість колонок в бібліотеці</string>
<string name="portrait">Вертикальна</string>
<string name="landscape">Горизонтальна</string>
<string name="default_columns">За замовчанням</string>
@ -135,7 +129,6 @@
<string name="system_default">Системний</string>
<string name="default_category">Категорія за замовчуванням</string>
<string name="default_category_summary">Завжди запитувати</string>
<string name="all_lang">Всі</string>
<string name="ext_details">Деталі</string>
<string name="ext_update">Оновлення</string>
@ -158,8 +151,7 @@
<string name="ext_version_info">Версія:%1$s</string>
<string name="ext_language_info">Мова: %1$s</string>
<string name="ext_empty_preferences">У цього розширення немає налаштувань для редагування</string>
<string name="pref_fullscreen">Повноекранний режим</string>
<string name="pref_fullscreen">Повноекранний режим</string>
<string name="pref_lock_orientation">Блокувати орієнтацію</string>
<string name="pref_page_transitions">Переходи сторінки</string>
<string name="pref_double_tap_anim_speed">Швидкість анімації при подвійному натиснені</string>
@ -207,9 +199,7 @@
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">Директорія завантаження</string>
<string name="pref_download_directory">Директорія завантаження</string>
<string name="pref_download_only_over_wifi">Завантажувати лише через Wi-Fi</string>
<string name="pref_remove_after_marked_as_read">Видалити коли відмічено як прочитано</string>
<string name="pref_remove_after_read">Видаляти після прочитання</string>
@ -222,9 +212,7 @@
<string name="fifth_to_last">П\'ята від прочитаної глави</string>
<string name="pref_download_new">Завантажувати нові глави</string>
<string name="pref_download_new_categories">Категорії для включення до завантажень</string>
<string name="services">Сервіси</string>
<string name="services">Сервіси</string>
<string name="backup">Резервна копія</string>
<string name="pref_create_backup">Створити резервну копію</string>
<string name="pref_create_backup_summ">Можна використовувати для відновлення поточної бібліотеки</string>
@ -250,8 +238,7 @@
<string name="backup_choice">Що ви хочете зберегти до резервної копії\?</string>
<string name="restoring_backup">Відновлення резервної копії</string>
<string name="creating_backup">Створення резервної копії</string>
<string name="pref_clear_chapter_cache">Очистити кеш глав</string>
<string name="pref_clear_chapter_cache">Очистити кеш глав</string>
<string name="used_cache">Використано: %1$s</string>
<string name="cache_deleted">Кеш очищено %1$d файлів було видалено</string>
<string name="cache_delete_error">Виникла помилка при видаленні кешу</string>
@ -266,15 +253,12 @@
<string name="pref_refresh_library_metadata_summary">Оновити обкладинки, жанри, описи та інформацію про манги</string>
<string name="pref_refresh_library_tracking">Оновити метадату що відстежується</string>
<string name="pref_refresh_library_tracking_summary">Оновити стан, рахунок і останню главу з каталогів що відстежуються</string>
<string name="version">Версія</string>
<string name="version">Версія</string>
<string name="build_time">Дата збирання</string>
<string name="pref_enable_automatic_updates">Перевіряти оновлення</string>
<string name="pref_enable_automatic_updates_summary">Автоматично перевіряти нові версії</string>
<string name="pref_enable_acra">Надсилати звіти про падіння</string>
<string name="pref_acra_summary">Допомагає виправляти будь-які баги. Особисті дані не передаються</string>
<string name="login_title">Авторизація для %1$s</string>
<string name="username">Ім`я користувача</string>
<string name="password">Пароль</string>
@ -283,13 +267,11 @@
<string name="login_success">Вхід успішний</string>
<string name="invalid_login">Помилка авторизації</string>
<string name="unknown_error">Невідома помилка</string>
<string name="library_search_hint">Назва чи автор…</string>
<string name="updating_category">Оновлення категорії</string>
<string name="local_source_badge">Локальна</string>
<string name="confirm_delete_manga">Ви впевнені, що бажаєте видалити вибрані манги\?</string>
<string name="also_delete_chapters">Також видалити завантажені глави</string>
<string name="source_search_options">Пошукові фільтри</string>
<string name="source_requires_login">Цей каталог потребує авторизації</string>
<string name="select_source">Оберіть каталог</string>
@ -303,9 +285,7 @@
<string name="no_results">Результатів не знайдено!</string>
<string name="latest">Остання</string>
<string name="browse">Переглянути</string>
<string name="manga_not_in_db">Ця манга було видалена з бази даних!</string>
<string name="manga_detail_tab">Інформація</string>
<string name="description">Опис</string>
<string name="ongoing">Випускається</string>
@ -334,7 +314,6 @@
<string name="delete_downloads_for_manga">Видаляти завантажені глави\?</string>
<string name="copied_to_clipboard">%1$s скопійовано до буфера</string>
<string name="source_not_installed">Джерело не встановлено: %1$s</string>
<string name="manga_chapters_tab">Глави</string>
<string name="manga_chapter_no_title">Немає назви</string>
<string name="display_mode_chapter">Глава %1$s</string>
@ -360,7 +339,6 @@
<string name="download_all">Завантажити все</string>
<string name="download_unread">Завантажити непрочитані</string>
<string name="confirm_delete_chapters">Ви впевнені, що бажаєте видалити вибрані глави\?</string>
<string name="manga_tracking_tab">Відслідковувати</string>
<string name="reading">В процесі читання</string>
<string name="completed">Завершено</string>
@ -376,19 +354,14 @@
<string name="track_type">Тип</string>
<string name="track_author">Автор</string>
<string name="url_not_set">Посилання манги не встановлено, будь ласка натисніть на заголовок та виберіть мангу знову</string>
<string name="error_category_exists">Категорія з таким іменем вже існує!</string>
<string name="snack_categories_deleted">Категорію видалено</string>
<string name="dialog_with_checkbox_remove_description">Ця дія видалить дату прочитання глави. Ви впевнені\?</string>
<string name="dialog_with_checkbox_reset">Скинути усі глави для цієї манги</string>
<string name="snack_add_to_library">Додати мангу до бібліотеки\?</string>
<string name="picture_saved">Картинку збережено</string>
<string name="saving_picture">Зберегти картинку</string>
<string name="options">Опції</string>
<string name="custom_filter">Користувацький фільтр</string>
<string name="set_as_cover">Встановити як обкладинку</string>
<string name="cover_updated">Обкладинку оновлено</string>
@ -411,18 +384,14 @@
<string name="transition_no_previous">Попередньої частини немає</string>
<string name="transition_pages_loading">Завантаження сторінок…</string>
<string name="transition_pages_error">Не вдалось завантажити сторінки %1$s</string>
<string name="recent_manga_source">%1$s - Гл.%2$s</string>
<string name="migration_info">Натисни аби вибрати джерело для міграції</string>
<string name="migration_dialog_what_to_include">Виберіть включені дані</string>
<string name="select">Вибрати</string>
<string name="migrate">Мігрувати</string>
<string name="copy">Копіювати</string>
<string name="migrating">Мігрую…</string>
<string name="download_queue_error">Сталась помилка при завантаженні глав. Спробуйте ще раз у розділі завантаження</string>
<string name="notification_update_progress">Стан оновлення: %1$d/%2$d</string>
<string name="notification_new_chapters">Знайдено нові глави</string>
<string name="notification_new_chapters_text">Для %1$d тайтлів</string>
@ -432,33 +401,27 @@
<string name="notification_not_connected_to_ac_body">Не заряджається</string>
<string name="notification_no_connection_title">Синхронізацію скасовано</string>
<string name="notification_no_connection_body">З`єднання не доступне</string>
<string name="file_select_cover">Вибрати обкладинку</string>
<string name="file_select_backup">Виберіть файл резервної копії</string>
<string name="file_select_icon">Вибрати ярлик</string>
<string name="update_check_title">Доступні нові оновлення!</string>
<string name="update_check_confirm">Завантажити</string>
<string name="update_check_ignore">Ігнорувати</string>
<string name="update_check_no_new_updates">Оновлень не виявлено</string>
<string name="update_check_download_started">Завантаження розпочалось</string>
<string name="update_check_look_for_updates">Шукаю оновлення</string>
<string name="update_check_notification_file_download">Оновлення завантаження</string>
<string name="update_check_notification_download_in_progress">Завантаження в процесі</string>
<string name="update_check_notification_download_complete">Завантаження завершено</string>
<string name="update_check_notification_download_error">Помилка завантаження</string>
<string name="update_check_notification_update_available">Доступно оновлення</string>
<string name="description_backdrop">Фонове зображення манги</string>
<string name="description_cover">Обкладинка манги</string>
<string name="information_no_downloads">Немає завантажень</string>
<string name="information_no_recent">Немає нових глав</string>
<string name="information_no_recent_manga">Немає нещодавно прочитаних глав</string>
<string name="information_empty_library">Ваша бібліотека порожня, ви можете додати з каталогу.</string>
<string name="information_empty_category">У вас немає категорій. Натисніть кнопку + для початку облаштування вашої бібліотеки.</string>
<string name="download_notifier_downloader_title">Завантажувач</string>
<string name="download_notifier_title_error">Помилка</string>
<string name="download_notifier_unkown_error">Невідома помилка при завантаженні глави</string>
@ -467,9 +430,9 @@
<string name="download_notifier_text_only_wifi">Немає Wi-Fi підключення</string>
<string name="download_notifier_no_network">"Немає мережевого з`єднання "</string>
<string name="download_notifier_download_paused">Завантаження призупинено</string>
<string name="channel_common">Звичайний</string>
<string name="channel_library">Бібліотека</string>
<string name="channel_downloader">Завантажувач</string>
</resources>
<string name="pref_read_with_long_tap">Діалог тривалого тицяння</string>
<string name="reader_pull_up_for_more_options">Потягніть задля додаткових опцій</string>
</resources>

View File

@ -1,10 +1,10 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources><string name="name">名字</string>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="name">名字</string>
<string name="categories">标签</string>
<string name="manga">漫画</string>
<string name="chapters">章节</string>
<string name="history">历史</string>
<string name="label_settings">设置</string>
<string name="label_download_queue">下载队列</string>
<string name="label_library">我的书架</string>
@ -17,8 +17,6 @@
<string name="label_backup">备份</string>
<string name="label_extensions">扩展</string>
<string name="label_extension_info">扩展信息</string>
<string name="action_settings">设置</string>
<string name="action_filter">筛选</string>
<string name="action_filter_downloaded">已下载</string>
@ -85,15 +83,12 @@
<string name="action_restore">恢复</string>
<string name="action_open">打开</string>
<string name="action_login">登录</string>
<string name="deleting">删除中…</string>
<string name="loading">加载中…</string>
<string name="action_sort_down">倒序</string>
<string name="action_display_download_badge">显示已下载数量</string>
<string name="app_not_available">应用程序不可用</string>
<string name="short_recent_updates">更新</string>
<string name="pref_category_general">通用</string>
<string name="pref_category_reader">阅读</string>
<string name="pref_category_downloads">下载</string>
@ -101,8 +96,7 @@
<string name="pref_category_tracking">同步</string>
<string name="pref_category_advanced">高级</string>
<string name="pref_category_about">关于</string>
<string name="pref_library_columns">书架页面网格</string>
<string name="pref_library_columns">书架页面网格</string>
<string name="portrait">纵向</string>
<string name="landscape">横向</string>
<string name="default_columns">预设</string>
@ -134,7 +128,6 @@
<string name="system_default">系统默认</string>
<string name="default_category">默认标签</string>
<string name="default_category_summary">每次询问</string>
<string name="all_lang">All</string>
<string name="ext_details">详细</string>
<string name="ext_update">更新</string>
@ -157,8 +150,7 @@
<string name="ext_version_info">版本: %1$s</string>
<string name="ext_language_info">语言: %1$s</string>
<string name="ext_empty_preferences">此插件没有可用的偏好设置</string>
<string name="pref_fullscreen">全屏</string>
<string name="pref_fullscreen">全屏</string>
<string name="pref_lock_orientation">锁定方向</string>
<string name="pref_page_transitions">页面过渡动画</string>
<string name="pref_double_tap_anim_speed">双击动画速度</string>
@ -206,9 +198,7 @@
<string name="color_filter_g_value">G</string>
<string name="color_filter_b_value">B</string>
<string name="color_filter_a_value">A</string>
<string name="pref_download_directory">下载目录</string>
<string name="pref_download_directory">下载目录</string>
<string name="pref_download_only_over_wifi">仅在连接Wi-Fi时下载</string>
<string name="pref_remove_after_marked_as_read">自动删除标记已读的章节</string>
<string name="pref_remove_after_read">阅后即删</string>
@ -221,9 +211,7 @@
<string name="fifth_to_last">至倒数第五章</string>
<string name="pref_download_new">自动下载新章节</string>
<string name="pref_download_new_categories">自动下载标签</string>
<string name="services">服务</string>
<string name="services">服务</string>
<string name="backup">备份</string>
<string name="pref_create_backup">创建备份</string>
<string name="pref_create_backup_summ">可用于恢复当前数据</string>
@ -249,8 +237,7 @@
<string name="backup_choice">需要备份什么?</string>
<string name="restoring_backup">正在恢复备份</string>
<string name="creating_backup">正在创建备份</string>
<string name="pref_clear_chapter_cache">清除缓存数据</string>
<string name="pref_clear_chapter_cache">清除缓存数据</string>
<string name="used_cache">已使用空间:%1$s</string>
<string name="cache_deleted">清理完成。已删除%1$d个文件</string>
<string name="cache_delete_error">清除时出现错误</string>
@ -265,15 +252,12 @@
<string name="pref_refresh_library_metadata_summary">更新封面,类型,描述与漫画状态信息</string>
<string name="pref_refresh_library_tracking">刷新同步数据</string>
<string name="pref_refresh_library_tracking_summary">更新同步服务的状态,评分以及已读章节</string>
<string name="version">版本</string>
<string name="version">版本</string>
<string name="build_time">构建时间</string>
<string name="pref_enable_automatic_updates">检查更新</string>
<string name="pref_enable_automatic_updates_summary">自动检查软件新版本</string>
<string name="pref_enable_acra">发送错误数据</string>
<string name="pref_acra_summary">帮助我们修复bug。不会发送个人信息</string>
<string name="login_title">登录到%1$s</string>
<string name="username">用户名</string>
<string name="password">密码</string>
@ -282,13 +266,11 @@
<string name="login_success">登录成功</string>
<string name="invalid_login">登录失败</string>
<string name="unknown_error">未知错误</string>
<string name="library_search_hint">标题或作者…</string>
<string name="updating_category">升级标签中</string>
<string name="local_source_badge">本地</string>
<string name="confirm_delete_manga">确定要删除选中的漫画吗?</string>
<string name="also_delete_chapters">同时删除已下载章节</string>
<string name="source_search_options">按分类搜索</string>
<string name="source_requires_login">这个图源需要登录</string>
<string name="select_source">选择图源</string>
@ -302,9 +284,7 @@
<string name="no_results">找不到!</string>
<string name="latest">最近更新</string>
<string name="browse">浏览</string>
<string name="manga_not_in_db">漫画已被移出数据库!</string>
<string name="manga_detail_tab">详情</string>
<string name="description">描述</string>
<string name="ongoing">连载中</string>
@ -333,7 +313,6 @@
<string name="delete_downloads_for_manga">删除已下载的章节?</string>
<string name="copied_to_clipboard">已复制%1$s到剪贴板</string>
<string name="source_not_installed">未安装图源:%1$s</string>
<string name="manga_chapters_tab">章节</string>
<string name="manga_chapter_no_title">无标题</string>
<string name="display_mode_chapter">第%1$s章</string>
@ -359,7 +338,6 @@
<string name="download_all">下载全部</string>
<string name="download_unread">下载未读</string>
<string name="confirm_delete_chapters">确定删除所选章节吗?</string>
<string name="manga_tracking_tab">同步</string>
<string name="reading">阅读中</string>
<string name="completed">已完结</string>
@ -375,19 +353,14 @@
<string name="track_type">类型</string>
<string name="track_author">作者</string>
<string name="url_not_set">漫画链接未设置,请点击标题再选择一次漫画</string>
<string name="error_category_exists">已存在相同标签!</string>
<string name="snack_categories_deleted">标签已删除</string>
<string name="dialog_with_checkbox_remove_description">将清除此章节的阅读日期,确定吗?</string>
<string name="dialog_with_checkbox_reset">重置此漫画所有章节</string>
<string name="snack_add_to_library">要将这本漫画添加至书架吗?</string>
<string name="picture_saved">图片已保存</string>
<string name="saving_picture">保存图片中</string>
<string name="options">选项</string>
<string name="custom_filter">自定义筛选</string>
<string name="set_as_cover">设置为封面</string>
<string name="cover_updated">已设置封面</string>
@ -411,18 +384,14 @@
<string name="transition_no_previous">前面没有啦</string>
<string name="transition_pages_loading">页面加载中…</string>
<string name="transition_pages_error">加载页面: %1$s失败</string>
<string name="recent_manga_source">%1$s - 第%2$s章</string>
<string name="migration_info">选择需要迁移的来源</string>
<string name="migration_dialog_what_to_include">选择需要迁移的数据</string>
<string name="select">选择</string>
<string name="migrate">迁移</string>
<string name="copy">共存</string>
<string name="migrating">迁移中…</string>
<string name="download_queue_error">下载时发生错误。请再试一次</string>
<string name="notification_update_progress">更新中:%1$d/%2$d</string>
<string name="notification_new_chapters">发现新章节</string>
<string name="notification_new_chapters_text">%1$d</string>
@ -432,33 +401,27 @@
<string name="notification_not_connected_to_ac_body">未连接至电源</string>
<string name="notification_no_connection_title">同步取消</string>
<string name="notification_no_connection_body">连接不可用</string>
<string name="file_select_cover">选择封面图片</string>
<string name="file_select_backup">选择备份文件</string>
<string name="file_select_icon">选择快捷方式图标</string>
<string name="update_check_title">有新版本哦!</string>
<string name="update_check_confirm">下载</string>
<string name="update_check_ignore">忽略</string>
<string name="update_check_no_new_updates">没有发现新版本</string>
<string name="update_check_download_started">下载开始</string>
<string name="update_check_look_for_updates">检查更新</string>
<string name="update_check_notification_file_download">下载更新</string>
<string name="update_check_notification_download_in_progress">下载中</string>
<string name="update_check_notification_download_complete">下载完成</string>
<string name="update_check_notification_download_error">下载时发生错误</string>
<string name="update_check_notification_update_available">可更新</string>
<string name="description_backdrop">漫画背景</string>
<string name="description_cover">漫画封面</string>
<string name="information_no_downloads">没有下载中的任务</string>
<string name="information_no_recent">无最近章节</string>
<string name="information_no_recent_manga">无最近阅读</string>
<string name="information_empty_library">你的书架是空的哦,请去发现栏寻找漫画进行收藏吧</string>
<string name="information_empty_category">你还没有标签。你可以点击加号按钮创建一个标签以管理书架</string>
<string name="download_notifier_downloader_title">下载</string>
<string name="download_notifier_title_error">错误</string>
<string name="download_notifier_unkown_error">下载时发生不可预期的错误</string>
@ -467,10 +430,10 @@
<string name="download_notifier_text_only_wifi">无可用Wi-Fi</string>
<string name="download_notifier_no_network">无网络连接</string>
<string name="download_notifier_download_paused">下载暂停</string>
<string name="channel_common">普通</string>
<string name="channel_library">书架</string>
<string name="channel_downloader">下载</string>
<string name="darkblue_theme">暗蓝色主题</string>
</resources>
<string name="darkblue_theme">暗蓝色主题</string>
<string name="pref_read_with_long_tap">长按菜单</string>
<string name="reader_pull_up_for_more_options">上拉显示更多选项</string>
</resources>