Clean up some stuff
This commit is contained in:
parent
7cdf5b0930
commit
428541391f
3 changed files with 168 additions and 41 deletions
|
|
@ -76,7 +76,7 @@ BAR_FORMAT = "{l_bar}{bar:10}{r_bar}{bar:-10b}"
|
|||
POSITION = 0
|
||||
LEAVE = False
|
||||
PBAR = None
|
||||
ENCODING = "cp932"
|
||||
ENCODING = "utf8"
|
||||
|
||||
|
||||
def handleCSV(filename, estimate):
|
||||
|
|
@ -125,7 +125,7 @@ def openFiles(filename, writeFile):
|
|||
|
||||
|
||||
def openFilesEstimate(filename):
|
||||
with open("files/" + filename, "r", encoding="cp932") as readFile:
|
||||
with open("files/" + filename, "r", encoding="utf8") as readFile:
|
||||
translatedData = parseCSV(readFile, "", filename)
|
||||
|
||||
return translatedData
|
||||
|
|
@ -188,11 +188,11 @@ def parseCSV(readFile, writeFile, filename):
|
|||
totalLines = len(readFile.readlines())
|
||||
readFile.seek(0)
|
||||
|
||||
reader = csv.reader(readFile, delimiter=",")
|
||||
reader = csv.reader(readFile, delimiter="\t")
|
||||
if not ESTIMATE:
|
||||
writer = csv.writer(
|
||||
writeFile,
|
||||
delimiter=",",
|
||||
delimiter="\t",
|
||||
)
|
||||
else:
|
||||
writer = ""
|
||||
|
|
@ -338,8 +338,8 @@ def translateCSV(data, pbar, writer, filename, translatedList, format):
|
|||
# Speaker & Text Format
|
||||
case "4":
|
||||
# Set columns to translate. Leave empty to translate all.
|
||||
speakerColumn = 8
|
||||
textColumn = 20
|
||||
speakerColumn = 2
|
||||
textColumn = 9
|
||||
speaker = ""
|
||||
|
||||
if len(data[i]) > textColumn and data[i][textColumn]:
|
||||
|
|
|
|||
|
|
@ -568,7 +568,9 @@ def searchNames(data, pbar, context):
|
|||
if len(nameList) < BATCHSIZE:
|
||||
nameList.append(data[i]["name"])
|
||||
if "description" in data[i] and data[i]["description"] != "":
|
||||
descriptionList.append(data[i]["description"].replace("\n", " "))
|
||||
description = data[i]["description"]
|
||||
# description = description.replace("\n", " ")
|
||||
descriptionList.append(description)
|
||||
if "<hint:" in data[i]["note"]:
|
||||
tokensResponse = translateNote(data[i], r"<hint:(.*?)>")
|
||||
totalTokens[0] += tokensResponse[0]
|
||||
|
|
@ -807,7 +809,7 @@ def searchNames(data, pbar, context):
|
|||
data[j]["name"] = translatedNameBatch[0]
|
||||
translatedNameBatch.pop(0)
|
||||
if "description" in data[j] and data[j]["description"] != "":
|
||||
translatedDescriptionBatch[0] = textwrap.fill(translatedDescriptionBatch[0], LISTWIDTH)
|
||||
# translatedDescriptionBatch[0] = textwrap.fill(translatedDescriptionBatch[0], LISTWIDTH)
|
||||
data[j]["description"] = translatedDescriptionBatch[0]
|
||||
translatedDescriptionBatch.pop(0)
|
||||
|
||||
|
|
@ -931,6 +933,7 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
code = codeList[i]["code"]
|
||||
j = i
|
||||
endtag = ""
|
||||
instantLineFlag = False
|
||||
|
||||
# Grab String
|
||||
if len(codeList[i]["parameters"]) > 0:
|
||||
|
|
@ -985,6 +988,13 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
jaString,
|
||||
)
|
||||
|
||||
# Colons
|
||||
if len(speakerList) == 0:
|
||||
speakerList = re.findall(
|
||||
r"[\\]*[cC]?\[?\d*\]?(.+):$",
|
||||
jaString,
|
||||
)
|
||||
|
||||
# First Line Speakers
|
||||
if len(speakerList) == 0 and FIRSTLINESPEAKERS is True:
|
||||
# Remove any RPGMaker Code at start
|
||||
|
|
@ -1146,6 +1156,11 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
finalJAString = finalJAString.replace("\\ac", "")
|
||||
CLFlag = True
|
||||
|
||||
# Handle Formatting Codes
|
||||
if "\\>" in finalJAString:
|
||||
instantLineFlag = True
|
||||
finalJAString = finalJAString.replace("\\>", "")
|
||||
|
||||
# Pass 1 (Grabbing Data)
|
||||
if setData:
|
||||
# Remove Textwrap
|
||||
|
|
@ -1197,6 +1212,11 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
elif FIXTEXTWRAP is True:
|
||||
translatedText = textwrap.fill(translatedText, width=WIDTH)
|
||||
|
||||
# Formatting Code
|
||||
if instantLineFlag:
|
||||
translatedText = translatedText.replace("\n", "\n\\>")
|
||||
translatedText = f"\\>{translatedText}"
|
||||
|
||||
# BR Flag
|
||||
if BRFLAG is True:
|
||||
translatedText = translatedText.replace("\n", "<br>")
|
||||
|
|
@ -1261,7 +1281,7 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
## Event Code: 122 [Set Variables]
|
||||
if "code" in codeList[i] and codeList[i]["code"] == 122 and CODE122 is True:
|
||||
# This is going to be the var being set. (IMPORTANT)
|
||||
if codeList[i]["parameters"][0] not in list(range(0, 99999)):
|
||||
if codeList[i]["parameters"][0] not in list(range(150, 160)):
|
||||
i += 1
|
||||
continue
|
||||
|
||||
|
|
@ -1288,9 +1308,9 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
# continue
|
||||
|
||||
# Validate Japanese Text
|
||||
if not re.search(LANGREGEX, jaString):
|
||||
i += 1
|
||||
continue
|
||||
# if not re.search(LANGREGEX, jaString):
|
||||
# i += 1
|
||||
# continue
|
||||
|
||||
# Set String
|
||||
matchedText = None
|
||||
|
|
@ -1321,7 +1341,7 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
translatedText = re.sub(r'(?<![\\])([\\]{1})(?=\w)', r'\\\\', translatedText)
|
||||
|
||||
# Textwrap
|
||||
translatedText = textwrap.fill(translatedText, width=WIDTH)
|
||||
translatedText = textwrap.fill(translatedText, width=1000)
|
||||
translatedText = translatedText.replace("\n", "\\n")
|
||||
|
||||
# Set
|
||||
|
|
@ -1586,7 +1606,7 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
# "logtxt = ": (r"logtxt\s=\s'(.+)'"
|
||||
# ".setNickname": (r'.setNickname\(\\?"(.+?)\\?"\)'
|
||||
# "_subject=": (r'_subject=(.+?)_'
|
||||
"text =": (r"text\s+=\s+'(.+?[^\\])'"),
|
||||
"text =": (r"text\s*=\s*'(.+[^\\])'"),
|
||||
# "ex_a_name": (r'ex_a_name\(\d+,"(.+)"\)'),
|
||||
# "gameVariables.setValue": (r":\$gameVariables.setValue\(\d+,'(.+)'\)"),
|
||||
# "BattleManager._logWindow.push('addText'": (r"BattleManager._logWindow.push\('addText',\s'(.+)'\)"),
|
||||
|
|
@ -1607,7 +1627,13 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
list355655.pop(0)
|
||||
|
||||
# Only escape if not already escaped
|
||||
translatedText = re.sub(r"(?<!\\)'", r"\\'", translatedText)
|
||||
matchList = re.findall(r"(.+)'\s*[$+].+?'(.+)", translatedText)
|
||||
if matchList:
|
||||
for string in matchList[0]:
|
||||
escapedMatch = re.sub(r"(?<!\\)'", r"\\'", string)
|
||||
translatedText = translatedText.replace(string, escapedMatch)
|
||||
else:
|
||||
translatedText = re.sub(r"(?<!\\)'", r"\\'", translatedText)
|
||||
translatedText = re.sub(r'(?<!\\)"', r'"', translatedText)
|
||||
# Double backslashes before control codes
|
||||
translatedText = re.sub(r'(?<![\\])([\\]{1})(?=\w)', r'\\\\', translatedText)
|
||||
|
|
@ -1728,7 +1754,7 @@ def searchCodes(page, pbar, jobList, filename):
|
|||
|
||||
# Want to translate this script
|
||||
if "D_TEXT " in jaString:
|
||||
regex = r"D_TEXT\s(.*?)\s.+"
|
||||
regex = r"D_TEXT\s(.+)\s.+"
|
||||
elif "ShowInfo" in jaString:
|
||||
regex = r"ShowInfo\s(.*)"
|
||||
elif "PushGab" in jaString:
|
||||
|
|
|
|||
151
vocab.txt
151
vocab.txt
|
|
@ -1,19 +1,17 @@
|
|||
Here are some vocabulary and terms so that you know the proper spelling and translation.
|
||||
```
|
||||
# Game Characters
|
||||
姫野 彩羽 (Himeno Iroha) - Female
|
||||
朝樹 (Asaki) - Male
|
||||
リリィ (Lily) - Female
|
||||
佐井 民太郎 (Sai Mintaro) - Male
|
||||
鐘尾原 真久 (Kaneobara Maku) - Male
|
||||
岡根 梨 (Okane Nashi) - Female
|
||||
藍場 結奈 (Aiba Yuna) - Female
|
||||
スーティ (Suti) - Female
|
||||
収集家レティシア (Collector Leticia) - Female
|
||||
アルフ (Alf) - Male
|
||||
カドーナ (Kadona) - Female
|
||||
保田区くん (Potaku-kun) - Male
|
||||
衿澄 雫 (Erisumi Shizuku) - Female
|
||||
ユスティ (Yusty) - Female
|
||||
ユースティテ (Yustitia) - Female
|
||||
イリス (Iris) - Female
|
||||
ノエル (Noel) - Female
|
||||
リーン (Leen) - Female
|
||||
サーニャ (Sanya) - Female
|
||||
パイネル (Painel) - Female
|
||||
ウェイン (Wayne) - Female
|
||||
マキナ (Makina) - Female
|
||||
リーパー (Reaper) - Female
|
||||
大工 (Carpenter) - Male
|
||||
|
||||
# Lewd Terms
|
||||
マンコ (pussy)
|
||||
|
|
@ -108,7 +106,12 @@ ME 音量 (ME Volume)
|
|||
巫女 (Shrine Maiden)
|
||||
刀 (Sword)
|
||||
龍神神社 (Dragon God Shrine)
|
||||
|
||||
忍び (Shinobi)
|
||||
大魔導士 (Archmage)
|
||||
始原竜 (Primordial Dragon)
|
||||
猿王 (Monkey King)
|
||||
天地開闢 (Genesis)
|
||||
紅蓮 (Vermilion)
|
||||
|
||||
# Demons/Angels/Monsters
|
||||
悪魔 (Devil)
|
||||
|
|
@ -137,6 +140,103 @@ ME 音量 (ME Volume)
|
|||
ローバー (Roper)
|
||||
夢魔 (Succubus)
|
||||
|
||||
#Enemies
|
||||
シコザル (Masturbating Monkey)
|
||||
ドクムラサキ (Dokumurasaki)
|
||||
シコザル:賢者モード (Masturbating Monkey: Sage Mode)
|
||||
シコザル:興奮 (Masturbating Monkey: Aroused)
|
||||
キングシコザル (King Masturbating Monkey)
|
||||
カブリマラドラゴン (Kaburimara Dragon)
|
||||
カブリマラドラゴン亜種 (Kaburimara Dragon Subspecies)
|
||||
学園長 (Headmaster)
|
||||
パラライズアゲハ (Paralyze Swallowtail)
|
||||
クンニリザード (Cunnilingus Lizard)
|
||||
ピリジンワーム (Pyridine Worm)
|
||||
溶岩塊 (Lava Chunk)
|
||||
スノーエイプ (Snow Ape)
|
||||
カブリマラドラゴン:突然変異個体 (Kaburimara Dragon: Mutant)
|
||||
水流操りし齧歯類 (Rodent that Controls Water Flow)
|
||||
3ターン毎に命を貪るワニ (Crocodile that Devours Life Every 3 Turns)
|
||||
エレクチオンスコーピオン (Erection Scorpion)
|
||||
熱砂の捕食者 (Predator of the Scorching Sands)
|
||||
チンゲリオン (Chingerion)
|
||||
シコッタハゲタカ (Masturbating Vulture)
|
||||
エイミンサボテン (Aiming Cactus)
|
||||
奴隷商人 (Slave Trader)
|
||||
ハゲタカ3兄弟 (Three Vulture Brothers)
|
||||
フローズンバタフライ (Frozen Butterfly)
|
||||
アイスバーグ (Iceberg)
|
||||
ゴブリン(棍棒) (Goblin (Club))
|
||||
ゴブリン(盾) (Goblin (Shield))
|
||||
ゴブリン(薬) (Goblin (Potion))
|
||||
スノーボア (Snow Boar)
|
||||
剛なる右腕 (Mighty Right Arm)
|
||||
賢しき左腕 (Wise Left Arm)
|
||||
クリスタルゴーレム (Crystal Golem)
|
||||
剛なる右腕:熱暴走 (Mighty Right Arm: Overheat)
|
||||
賢しき左腕:熱暴走 (Wise Left Arm: Overheat)
|
||||
クリスタルゴーレム:熱暴走 (Crystal Golem: Overheat)
|
||||
ゴブリンキング (Goblin King)
|
||||
クンニリザードエリート (Cunnilingus Lizard Elite)
|
||||
デスストーカー (Death Stalker)
|
||||
巨人族 (Giant Tribe)
|
||||
ゴールデンシコザル (Golden Masturbating Monkey)
|
||||
巨人族の長 (Giant Tribe Chief)
|
||||
始原竜クレスケンスルーナ (Primordial Dragon Crescensluna)
|
||||
現実と理想の相違から訪れる混沌 (Chaos Born from the Gap Between Reality and Ideals)
|
||||
チシドクガエル (Poison Blood Frog)
|
||||
危険な肉ビラ (Dangerous Meat Flap)
|
||||
鏡反の魔蟲 (Mirror-Reflecting Demon Bug)
|
||||
シコザルドロップ実験 (Masturbating Monkey Drop Experiment)
|
||||
↓以下シコザルの森 (↓Below: Masturbating Monkey Forest)
|
||||
シコザル:異常性欲個体 (Masturbating Monkey: Hypersexual Specimen)
|
||||
ドクムラサキ (Poison Purple)
|
||||
シビレタケ (Numbing Mushroom)
|
||||
森林ムカデ (Forest Centipede)
|
||||
野生の種馬 (Wild Stud)
|
||||
メタルシコザル (Metal Masturbating Monkey)
|
||||
大妖花 (Great Demon Flower)
|
||||
↓以下マラスル (↓Below: Marasle)
|
||||
ベビースノーボア (Baby Snow Boar)
|
||||
万年発情ウサギ (Perpetually Horny Rabbit)
|
||||
シルバーウルフ (Silver Wolf)
|
||||
シロカブト (White Beetle)
|
||||
↓以下大陰森 (↓Below: Great Dark Forest)
|
||||
チシドクガエル (Poison Dart Frog)
|
||||
水流操りし齧歯類 (Rodent That Controls Water Currents)
|
||||
3T毎に強攻撃を繰り出すワニ (Crocodile That Unleashes a Strong Attack Every 3T)
|
||||
オトノサマガエル (Lord Frog)
|
||||
オヒメサマガエル (Princess Frog)
|
||||
〇雑魚用耐性 (〇Resistance for Small Fry)
|
||||
〇ボス用耐性 (〇Resistance for Boss)
|
||||
↓以下失意の沼地 (↓Below: Swamp of Despair)
|
||||
マカフシギダケ (Mysterious Mushroom)
|
||||
カオスプラント (Chaos Plant)
|
||||
ボニウスネーク (Bonious Snake)
|
||||
バジリスク (Basilisk)
|
||||
↓以下満洪石窟寺院 (↓Below: Mankou Stone Cave Temple)
|
||||
ゲイザー (Gazer)
|
||||
ワスプ (Wasp)
|
||||
クイーンワスプ (Queen Wasp)
|
||||
邪神像 (Idol of the Evil God)
|
||||
↓以下リズイパ海溝 (↓Below: Rizuipa Trench)
|
||||
鏡反の魔蟲 (Mirror-Reflected Demon Bug)
|
||||
アビスワーム (Abyss Worm)
|
||||
スベスベオマンコガニ (Smooth Pussy Crab)
|
||||
デビルオクトパス (Devil Octopus)
|
||||
深海不定形生物 (Deep Sea Amorphous Creature)
|
||||
チェーンソーシャーク (Chainsaw Shark)
|
||||
大海の覇者 (Ruler of the Great Sea)
|
||||
海魔マレノストルム (Sea Demon Marenostrum)
|
||||
↓以下岬の教会 (↓Below: Cape Church)
|
||||
ブラックウィドウ (Black Widow)
|
||||
踊り狂う怪鳥 (Frenzied Dancing Bird)
|
||||
キングトロル (King Troll)
|
||||
キマイラ (Chimera)
|
||||
スケルトン (Skeleton)
|
||||
塔の守護者 (Guardian of the Tower)
|
||||
フォートレスタートル (Fortress Turtle)
|
||||
|
||||
# Other
|
||||
w ((lol))
|
||||
2万 (20,000)
|
||||
|
|
@ -144,16 +244,17 @@ w ((lol))
|
|||
』 (』)
|
||||
|
||||
# Game Specific
|
||||
すけモン (Sukemon)
|
||||
夢見町 (Dream Town)
|
||||
夢見学 (Dream Academy)
|
||||
龍神神社 (Dragon God Shrine)
|
||||
鐘尾原 (Kaneohara)
|
||||
カドーナ (Kadona)
|
||||
助平の湯 (Lewd Bath)
|
||||
リーゴ (Ligo)
|
||||
サキュバンク (Succubank)
|
||||
ジャーク堂書店 (Jerkdo Bookstore)
|
||||
風紀委員は女淫魔の夢を見るか? (Do Disciplinary Committee Members Dream of Succubi?)
|
||||
ぽんこつ王女ユスティの廃村開拓記 (The Clumsy Princess Yusty and the Abandoned Village Revival)
|
||||
試しの塔 (Trial Tower)
|
||||
満洪石窟寺院 (Mankou Stone Cave Temple)
|
||||
空き家 (Vacant House)
|
||||
娼館 (Brothel)
|
||||
ヨーデル (Yodel)
|
||||
リズイパ海溝 (Rizuipa Trench)
|
||||
マラスル (Marasle)
|
||||
シコザル (Masturbating Monkey)
|
||||
大家族の民家 (Big Family House)
|
||||
蛇ヶ淵沼 (Snake Swamp)
|
||||
トロッコ洞窟 (Minecart)
|
||||
|
||||
```
|
||||
Loading…
Reference in a new issue