2019-02-27 11:33:17 -05:00
# include " defs.h "
2019-02-01 16:56:10 -05:00
2019-05-27 14:13:12 -04:00
# ifdef _WIN64
# define ARCH "x64"
# else
# define ARCH "x86"
# endif
2019-02-01 16:56:10 -05:00
const char * ATTACH = u8 " Attach to game " ;
const char * LAUNCH = u8 " Launch game " ;
const char * DETACH = u8 " Detach from game " ;
2019-06-27 12:39:44 +05:30
const char * FORGET = u8 " Forget game " ;
2019-02-01 16:56:10 -05:00
const char * ADD_HOOK = u8 " Add hook " ;
2019-06-10 01:49:11 -04:00
const char * REMOVE_HOOKS = u8 " Remove hook(s) " ;
2019-02-01 16:56:10 -05:00
const char * SAVE_HOOKS = u8 " Save hook(s) " ;
2019-06-16 15:28:59 -04:00
const char * SEARCH_FOR_HOOKS = u8 " Search for hooks " ;
2019-02-01 16:56:10 -05:00
const char * SETTINGS = u8 " Settings " ;
const char * EXTENSIONS = u8 " Extensions " ;
2019-05-24 13:30:12 -04:00
const char * SELECT_PROCESS = u8 " Select process " ;
2019-02-01 16:56:10 -05:00
const char * ATTACH_INFO = u8R " (If you don't see the process you want to attach, try running with admin rights
You can also type in the process id ) " ;
2019-07-02 11:26:04 +05:30
const char * SELECT_PROCESS_INFO = u8 " If you manually type in the process file name, please use the absolute path " ;
const char * FROM_COMPUTER = u8 " Select from computer " ;
2019-02-01 16:56:10 -05:00
const char * PROCESSES = u8 " Processes (*.exe) " ;
const char * CODE_INFODUMP = u8R " (Search for text
S [ codepage # ] text
OR
Enter read code
2019-06-09 00:48:30 -04:00
R { S | Q | V } [ null_length < ] [ codepage # ] @ addr
2019-02-01 16:56:10 -05:00
OR
Enter hook code
2019-07-19 01:15:00 +03:00
H { A | B | W | S | Q | V } [ F ] [ null_length < ] [ N ] [ codepage # ] [ padding + ] data_offset [ * deref_offset ] [ : split_offset [ * deref_offset ] ] @ addr [ : module [ : func ] ]
2019-05-27 14:13:12 -04:00
All numbers except codepage / null_length in hexadecimal
2019-02-01 16:56:10 -05:00
Default codepage is 932 ( Shift - JIS ) but this can be changed in settings
A / B : codepage char little / big endian
W : UTF - 16 char
S / Q / V : codepage / UTF - 16 / UTF - 8 string
2019-07-19 01:15:00 +03:00
F : treat strings as full lines of text
2019-06-09 00:48:30 -04:00
N : don ' t use context
2019-03-27 23:35:22 -04:00
null_length : length of null terminator used for string
2019-06-09 00:48:30 -04:00
padding : length of padding data before string ( C struct { int64_t size ; char string [ 500 ] ; } needs padding = 8 )
2019-05-27 14:13:12 -04:00
Negatives for data_offset / split_offset refer to registers
2019-02-01 16:56:10 -05:00
- 4 for EAX , - 8 for ECX , - C for EDX , - 10 for EBX , - 14 for ESP , - 18 for EBP , - 1 C for ESI , - 20 for EDI
2019-06-09 00:48:30 -04:00
- C for RAX , - 14 for RBX , - 1 C for RCX , - 24 for RDX , and so on for RSP , RBP , RSI , RDI , R8 - R15
2019-02-01 16:56:10 -05:00
* means dereference pointer + deref_offset ) " ;
const char * SAVE_SETTINGS = u8 " Save settings " ;
const char * EXTEN_WINDOW_INSTRUCTIONS = u8R " (Drag and drop extension (.dll) files here from your computer to add them
( Does not work if running as administrator )
Drag and drop within the list to reorder
2019-06-04 23:14:46 -04:00
( Extensions are used from top to bottom : order DOES matter )
2019-02-01 16:56:10 -05:00
Press delete with an extension selected to remove it ) " ;
2019-06-04 23:14:46 -04:00
const char * INVALID_EXTENSION = u8 " %1 is an invalid extension " ;
const char * CONFIRM_EXTENSION_OVERWRITE = u8 " Another version of this extension already exists, do you want to delete and overwrite it? " ;
const char * EXTENSION_WRITE_ERROR = u8 " Failed to save extension " ;
2019-02-01 16:56:10 -05:00
const char * USE_JP_LOCALE = u8 " Emulate japanese locale? " ;
2019-06-09 06:19:54 -04:00
const char * HOOK_SEARCH_UNSTABLE_WARNING = u8 " Searching for hooks is unstable! Be prepared for your game to crash! " ;
2019-06-16 15:28:59 -04:00
const char * SEARCH_CJK = u8 " Search for Chinese/Japanese/Korean " ;
2019-06-06 23:53:37 -04:00
const char * SEARCH_PATTERN = u8 " Search pattern (hex byte array) " ;
const char * SEARCH_DURATION = u8 " Search duration (ms) " ;
const char * PATTERN_OFFSET = u8 " Offset from pattern start " ;
2019-07-16 21:55:40 +05:30
const char * MAX_HOOK_SEARCH_RECORDS = u8 " Search result cap " ;
2019-06-06 23:53:37 -04:00
const char * MIN_ADDRESS = u8 " Minimum address (hex) " ;
const char * MAX_ADDRESS = u8 " Maximum address (hex) " ;
2019-06-09 00:48:30 -04:00
const char * STRING_OFFSET = u8 " String offset (hex) " ;
2019-06-06 23:53:37 -04:00
const char * HOOK_SEARCH_FILTER = u8 " Results must match this regex " ;
const char * START_HOOK_SEARCH = u8 " Start hook search " ;
const char * SAVE_SEARCH_RESULTS = u8 " Save search results " ;
const char * TEXT_FILES = u8 " Text (*.txt) " ;
2019-06-10 22:47:58 -04:00
const char * DOUBLE_CLICK_TO_REMOVE_HOOK = u8 " Double click a hook to remove it " ;
2019-06-27 12:39:44 +05:30
const char * FILTER_REPETITION = u8 " Filter repetition " ;
const char * AUTO_ATTACH = u8 " Auto attach " ;
const char * ATTACH_SAVED_ONLY = u8 " Auto attach (saved only) " ;
const char * DEFAULT_CODEPAGE = u8 " Default codepage " ;
const char * FLUSH_DELAY = u8 " Flush delay " ;
const char * MAX_BUFFER_SIZE = u8 " Max buffer size " ;
2019-02-01 16:56:10 -05:00
const wchar_t * CONSOLE = L " Console " ;
const wchar_t * CLIPBOARD = L " Clipboard " ;
2019-05-27 14:13:12 -04:00
const wchar_t * ABOUT = L " Textractor " ARCH L " v " VERSION LR " ( made by me: Artikash (email: akashmozumdar@gmail.com)
2019-02-01 16:56:10 -05:00
Project homepage : https : //github.com/Artikash/Textractor
2019-06-05 16:58:45 -04:00
Tutorial video : https : //tinyurl.com/textractor-tutorial
2019-02-01 16:56:10 -05:00
Please contact me with any problems , feature requests , or questions relating to Textractor
You can do so via the project homepage ( issues section ) or via email
Source code available under GPLv3 at project homepage
2019-02-10 14:08:08 -05:00
I ' m currently looking for a new job : email me if you know anyone hiring US software engineers
If you like this project , please tell everyone about it : ) ) " ;
2019-06-03 19:39:22 -04:00
const wchar_t * CL_OPTIONS = LR " (usage: Textractor [-p{process id| " process name " }]...
example : Textractor - p4466 - p " My Game.exe " tries to inject processes with id 4466 or with name My Game . exe ) " ;
2019-02-01 16:56:10 -05:00
const wchar_t * UPDATE_AVAILABLE = L " Update available: download it from https://github.com/Artikash/Textractor/releases " ;
const wchar_t * ALREADY_INJECTED = L " Textractor: already injected " ;
2019-05-27 14:13:12 -04:00
const wchar_t * NEED_32_BIT = L " Textractor: architecture mismatch: only Textractor x86 can inject this process " ;
const wchar_t * NEED_64_BIT = L " Textractor: architecture mismatch: only Textractor x64 can inject this process " ;
2019-02-01 16:56:10 -05:00
const wchar_t * INJECT_FAILED = L " Textractor: couldn't inject " ;
const wchar_t * LAUNCH_FAILED = L " Textractor: couldn't launch " ;
const wchar_t * INVALID_CODE = L " Textractor: invalid code " ;
const wchar_t * INVALID_CODEPAGE = L " Textractor: couldn't convert text (invalid codepage?) " ;
const char * PIPE_CONNECTED = u8 " Textractor: pipe connected " ;
const char * INSERTING_HOOK = u8 " Textractor: inserting hook: %s " ;
const char * REMOVING_HOOK = u8 " Textractor: removing hook: %s " ;
const char * HOOK_FAILED = u8 " Textractor: failed to insert hook " ;
const char * TOO_MANY_HOOKS = u8 " Textractor: too many hooks: can't insert " ;
2019-06-02 02:09:17 -04:00
const char * STARTING_SEARCH = u8 " Textractor: starting search " ;
2019-02-01 16:56:10 -05:00
const char * NOT_ENOUGH_TEXT = u8 " Textractor: not enough text to search accurately " ;
2019-06-02 02:09:17 -04:00
const char * HOOK_SEARCH_INITIALIZED = u8 " Textractor: search initialized with %zd hooks " ;
const char * HOOK_SEARCH_FINISHED = u8 " Textractor: hook search finished, %d results found " ;
2019-02-01 16:56:10 -05:00
const char * FUNC_MISSING = u8 " Textractor: function not present " ;
const char * MODULE_MISSING = u8 " Textractor: module not present " ;
const char * GARBAGE_MEMORY = u8 " Textractor: memory constantly changing, useless to read " ;
const char * SEND_ERROR = u8 " Textractor: Send ERROR (likely an incorrect H-code) " ;
const char * READ_ERROR = u8 " Textractor: Reader ERROR (likely an incorrect R-code) " ;
const char * HIJACK_ERROR = u8 " Textractor: Hijack ERROR " ;
const char * COULD_NOT_FIND = u8 " Textractor: could not find text " ;
2019-05-27 14:13:12 -04:00
const char * SELECT_LANGUAGE = u8 " Select language " ;
2019-06-13 04:01:29 -04:00
const char * SELECT_LANGUAGE_MESSAGE = u8 " What language should %1 translate to? " ;
2019-02-10 21:46:39 -05:00
const wchar_t * TOO_MANY_TRANS_REQUESTS = L " Too many translation requests: refuse to make more " ;
2019-02-01 16:56:10 -05:00
const wchar_t * TRANSLATION_ERROR = L " Error while translating " ;
const char * EXTRA_WINDOW_INFO = u8R " (Right click to change settings
Click and drag on window edges to move , or the bottom right corner to resize ) " ;
2019-06-29 08:35:47 +05:30
const char * TOPMOST = u8 " Always on top " ;
const char * SHOW_ORIGINAL = u8 " Original text " ;
2019-06-16 15:50:17 -04:00
const char * SHOW_ORIGINAL_INFO = u8R " (Original text will not be shown
Only works if this extension is used directly after a translation extension ) " ;
2019-06-29 08:35:47 +05:30
const char * SIZE_LOCK = u8 " Size lock " ;
const char * BG_COLOR = u8 " Background color " ;
const char * TEXT_COLOR = u8 " Text color " ;
2019-06-17 00:42:42 -04:00
const char * FONT = u8 " Font " ;
2019-06-29 08:35:47 +05:30
const char * FONT_FAMILY = u8 " Font family " ;
const char * FONT_SIZE = u8 " Font size " ;
const char * FONT_WEIGHT = u8 " Font weight " ;
2019-02-17 18:52:09 -05:00
const char * LUA_INTRO = u8R " (--[[
ProcessSentence is called each time Textractor receives a sentence of text .
Param sentence : sentence received by Textractor ( UTF - 8 ) .
Param sentenceInfo : table of miscellaneous info about the sentence .
If you return a string , the sentence will be turned into that string .
If you return nil , the sentence will be unmodified .
This extension uses several copies of the Lua interpreter for thread safety .
Modifications to global variables from ProcessSentence are not guaranteed to persist .
Properties in sentenceInfo :
" current select " : 0 unless sentence is in the text thread currently selected by the user .
" process id " : process id that the sentence is coming from . 0 for console and clipboard .
" text number " : number of the current text thread . Counts up one by one as text threads are created . 0 for console , 1 for clipboard .
- - ] ]
function ProcessSentence ( sentence , sentenceInfo )
- - Your code here . . .
end ) " ;
2019-06-29 08:35:47 +05:30
const char * LOAD_LUA_SCRIPT = u8 " Load script " ;
2019-06-01 13:59:37 -04:00
const wchar_t * LUA_ERROR = L " Lua error: %s " ;
2019-02-01 16:56:10 -05:00
const char * REGEX_FILTER = u8 " Regex Filter " ;
const char * INVALID_REGEX = u8 " Invalid regex " ;
2019-06-01 13:59:37 -04:00
const char * CURRENT_FILTER = u8 " Currently filtering: %1 " ;
2019-02-01 16:56:10 -05:00
const wchar_t * REPLACER_INSTRUCTIONS = LR " (This file only does anything when the " Replacer " extension is used.
Replacement commands must be formatted like this :
| ORIG | original_text | BECOMES | replacement_text | END |
All text in this file outside of a replacement command is ignored .
Whitespace in original_text is ignored , but replacement_text can contain spaces , newlines , etc .
2019-02-20 02:19:30 -05:00
This file must be encoded in Unicode ( UTF - 16 little endian ) . ) " ;
2019-02-01 16:56:10 -05:00
const char * THREAD_LINKER = u8 " Thread Linker " ;
const char * LINK = u8 " Link " ;
const char * THREAD_LINK_FROM = u8 " Thread number to link from " ;
const char * THREAD_LINK_TO = u8 " Thread number to link to " ;
2019-06-13 04:01:29 -04:00
const char * HEXADECIMAL = u8 " Hexadecimal " ;
2019-02-01 16:56:10 -05:00
2019-06-13 04:01:29 -04:00
static auto _ = [ ]
2019-02-01 16:56:10 -05:00
{
# ifdef TURKISH
ATTACH = u8 " Oyuna bağla " ;
DETACH = u8 " Oyundan kopar " ;
ADD_HOOK = u8 " Kanca ekle " ;
SAVE_HOOKS = u8 " Kancaları kaydet " ;
SETTINGS = u8 " Ayarlar " ;
EXTENSIONS = u8 " Uzantı lar " ;
2019-05-27 14:13:12 -04:00
SELECT_PROCESS = u8 " İşlem seçin " ;
2019-02-01 16:56:10 -05:00
ATTACH_INFO = u8 " Bağlanmak istediğiniz işlemi görmüyorsanı z yönetici olarak çalı ştı rmayı deneyin " ;
DEFAULT_CODEPAGE = u8 " Varsayı lan Kod Sayfası " ;
FLUSH_DELAY = u8 " Temizleme Gecikmesi " ;
MAX_BUFFER_SIZE = u8 " Maksimum Arabellek Boyu " ;
2019-05-27 14:13:12 -04:00
ABOUT = L " Textractor " ARCH L " v " VERSION LR " ( (proje ana sayfası : https://github.com/Artikash/Textractor)
2019-02-01 16:56:10 -05:00
Benim tarafı mdan yapı ldı : Artikash ( e - posta : akashmozumdar @ gmail . com )
Textractor ile ilgili tüm sorunları nı z , istekleriniz ve soruları nı z için lütfen benimle iletişime geçin
Benimle , proje ana sayfası ndan ( “ issues ” kı smı ndan ) ya da e - posta aracı lı ğı yla iletişime geçebilirsiniz
Kaynak kodu GKLv3 koruması altı nda proje ana sayfası nda mevcut
Ş u anda iş aramaktayı m : Eğer ABD ’ li yazı lı m mühendislerini işe alı yorsanı z lütfen bana e - posta atı n ) " ;
UPDATE_AVAILABLE = L " Güncelleme mevcut: https://github.com/Artikash/Textractor/releases adresinden indirin " ;
ALREADY_INJECTED = L " Textractor: Zaten enjekte edili " ;
2019-04-22 10:02:59 -04:00
NEED_32_BIT = L " Textractor: Mimari uyumsuzluğu: Lütfen Textractor’ ı n 32 bitlik sürümünü deneyin " ;
2019-02-01 16:56:10 -05:00
INJECT_FAILED = L " Textractor: Enjekte edilemedi " ;
INVALID_CODE = L " Textractor: Geçersiz kod " ;
INVALID_CODEPAGE = L " Textractor: Metne dönüştürülemedi (geçersiz kod sayfası ?) " ;
PIPE_CONNECTED = u8 " Textractor: Boru bağlandı " ;
INSERTING_HOOK = u8 " Textractor: Kanca ekleniyor: %s " ;
REMOVING_HOOK = u8 " Textractor: Kanca çı karı lı yor:: %s " ;
HOOK_FAILED = u8 " Textractor: Kanca eklenemedi " ;
TOO_MANY_HOOKS = u8 " Textractor: Çok fazla kanca var: Eklenemiyor " ;
FUNC_MISSING = u8 " Textractor: Fonksiyon mevcut değil " ;
MODULE_MISSING = u8 " Textractor: Modül mevcut değil " ;
GARBAGE_MEMORY = u8 " Textractor: Hafı za sürekli değişiyor, okumak boşa " ;
# endif // TURKISH
# ifdef SPANISH
ATTACH = u8 " Adjuntar juego " ;
LAUNCH = u8 " Iniciar juego " ;
DETACH = u8 " Desconectar juego " ;
ADD_HOOK = u8 " Añadir hook " ;
SAVE_HOOKS = u8 " Guardar hook(s) " ;
SETTINGS = u8 " Opciones " ;
EXTENSIONS = u8 " Extensiones " ;
SELECT_PROCESS = u8 " Seleccionar procreso " ;
ATTACH_INFO = u8R " (Si no ves el proceso que quieras adjuntar, ejecuta este programa como administrador
También puedes escribir la ID del proceso ) " ;
2019-07-02 11:26:04 +05:30
FROM_COMPUTER = u8 " Seleccionar desde computadora " ;
2019-02-01 16:56:10 -05:00
PROCESSES = u8 " Procesos (*.exe) " ;
SAVE_SETTINGS = u8 " Guardar opciones " ;
EXTEN_WINDOW_INSTRUCTIONS = u8R " (Arrrastra y suelta la extension (.dll) aquí desde tu computadora para añadirlos
Arrastra y suelta la lista para reordenar
Presiona supr en una extension seleccionada para removerla ) " ;
USE_JP_LOCALE = u8 " ¿Emular idioma japonés? " ;
DEFAULT_CODEPAGE = u8 " Default Codepage " ;
FLUSH_DELAY = u8 " Flush Delay " ;
MAX_BUFFER_SIZE = u8 " Max Buffer Size " ;
CONSOLE = L " Consola " ;
CLIPBOARD = L " Portapapeles " ;
2019-05-27 14:13:12 -04:00
ABOUT = L " Textractor " ARCH L " v " VERSION LR " ( hecho por mí: Artikash (correo: akashmozumdar@gmail.com)
2019-02-01 16:56:10 -05:00
Página del proyecto : https : //github.com/Artikash/Textractor
2019-06-05 16:58:45 -04:00
Video tutorial : https : //tinyurl.com/textractor-tutorial
2019-02-01 16:56:10 -05:00
No dudes en conectarme si tienes algún problema , petición de característica o preguntas relacionadas con Textractor
Puedes hacerlo en la página del proyecto ( en el apartado de " Issues " ) o por correo . Usa el inglés para comunicarte .
Código fuente disponible bajo GPLv3 en la página del proyecto
Estoy buscando un nuevo trabajo : por favor envíame un correo si estás contratando ingenieros de software de EE . UU . ) " ;
UPDATE_AVAILABLE = L " Actualización disponible: descárguela en https://github.com/Artikash/Textractor/releases " ;
ALREADY_INJECTED = L " Textractor: ya inyectado " ;
INJECT_FAILED = L " Textractor: no se puede inyectar " ;
LAUNCH_FAILED = L " Textractor: no se puede iniciar " ;
INVALID_CODE = L " Textractor: código inválido " ;
INVALID_CODEPAGE = L " Textractor: no se puede convertir texto (¿Codepage inválido?) " ;
PIPE_CONNECTED = u8 " Textractor: pipe connected " ;
INSERTING_HOOK = u8 " Textractor: insertando hook: %s " ;
REMOVING_HOOK = u8 " Textractor: removiendo hook: %s " ;
HOOK_FAILED = u8 " Textractor: no se puede insertar hook " ;
TOO_MANY_HOOKS = u8 " Textractor: demasiados hooks: no se puede insertar " ;
NOT_ENOUGH_TEXT = u8 " Textractor: no hay suficiente texto para buscar con precisión " ;
FUNC_MISSING = u8 " Textractor: función no presente " ;
MODULE_MISSING = u8 " Textractor: module not present " ;
GARBAGE_MEMORY = u8 " Textractor: memory constantly changing, useless to read " ;
SEND_ERROR = u8 " Textractor: Send ERROR (probablemente un H-code incorrecto) " ;
READ_ERROR = u8 " Textractor: Reader ERROR (probablemente un R-code incorrecto) " ;
HIJACK_ERROR = u8 " Textractor: Hijack ERROR " ;
COULD_NOT_FIND = u8 " Textractor: no se puede encontrar texto " ;
SELECT_LANGUAGE = u8 " Seleccionar lenguaje " ;
2019-06-13 04:01:29 -04:00
SELECT_LANGUAGE_MESSAGE = u8 " ¿A qué idioma debe traducir %1? " ;
2019-02-10 21:46:39 -05:00
TOO_MANY_TRANS_REQUESTS = L " Demasiadas peticiones de traducción: no se puede hacer más " ;
2019-02-01 16:56:10 -05:00
TRANSLATION_ERROR = L " Error al traducir " ;
EXTRA_WINDOW_INFO = u8R " (Clic derecho para configurar
Clic y arrastra los bordes de la ventana para moverla , o en la esquina inferior derecha para cambiar el tamaño ) " ;
BG_COLOR = u8 " Color de fondo " ;
TEXT_COLOR = u8 " Color de texto " ;
FONT_SIZE = u8 " Tamaño de letra " ;
TOPMOST = u8 " Siempre visible " ;
REGEX_FILTER = u8 " Filtro Regex " ;
INVALID_REGEX = u8 " Regex inválido " ;
2019-06-01 13:59:37 -04:00
CURRENT_FILTER = u8 " Actualmente filtrando: %1 " ;
2019-02-01 16:56:10 -05:00
# endif // SPANISH
# ifdef SIMPLIFIED_CHINESE
ATTACH = u8 " 附加到游戏 " ;
LAUNCH = u8 " 启动游戏 " ;
DETACH = u8 " 从游戏分离 " ;
ADD_HOOK = u8 " 添加钩子 " ;
SAVE_HOOKS = u8 " 保存钩子 " ;
SETTINGS = u8 " 设置 " ;
EXTENSIONS = u8 " 扩展 " ;
SELECT_PROCESS = u8 " 选择进程 " ;
ATTACH_INFO = u8R " (如果没看见想要附加的进程,尝试使用管理员权限运行
也 可 以 手 动 输 入 进 程 ID ) " ;
2019-07-02 11:26:04 +05:30
FROM_COMPUTER = u8 " 从计算机中选择 " ;
2019-02-01 16:56:10 -05:00
PROCESSES = u8 " 进程 (*.exe) " ;
SAVE_SETTINGS = u8 " 保存设置 " ;
EXTEN_WINDOW_INSTRUCTIONS = u8R " (从计算机拖拽扩展 (.dll) 文件到这里来添加
( 如 果 使 用 超 级 管 理 员 运 行 , 则 无 法 工 作 )
在 列 表 中 拖 拽 来 重 新 排 序
使 用 delete 键 移 除 选 中 的 扩 展 ) " ;
USE_JP_LOCALE = u8 " 模拟日本区域设置? " ;
DEFAULT_CODEPAGE = u8 " 默认代码页 " ;
FLUSH_DELAY = u8 " 刷新延迟 " ;
MAX_BUFFER_SIZE = u8 " 最大缓冲区长度 " ;
CONSOLE = L " 控制台 " ;
CLIPBOARD = L " 剪贴板 " ;
2019-05-27 14:13:12 -04:00
ABOUT = L " Textractor " ARCH L " v " VERSION LR " ( 作者: Artikash (email: akashmozumdar@gmail.com)
2019-02-01 16:56:10 -05:00
项 目 主 页 : https : //github.com/Artikash/Textractor
2019-06-05 16:58:45 -04:00
教 程 视 频 : https : //tinyurl.com/textractor-tutorial
2019-02-01 16:56:10 -05:00
如 果 有 任 何 关 于 Textractor 的 困 难 , 功 能 请 求 或 问 题 , 请 联 系 我
可 以 通 过 项 目 主 页 ( 问 题 区 ) 或 通 过 邮 件 来 联 系
项 目 主 页 提 供 基 于 GPLv3 协 议 的 源 代 码
我 目 前 正 在 寻 找 新 的 工 作 : 如 果 你 知 道 在 美 国 招 聘 软 件 工 程 师 岗 位 的 人 , 请 给 我 发 邮 件 ) " ;
UPDATE_AVAILABLE = L " 有可用的更新: 请从 https://github.com/Artikash/Textractor/releases 下载 " ;
ALREADY_INJECTED = L " Textractor: 已经注入 " ;
2019-05-27 14:13:12 -04:00
NEED_32_BIT = L " Textractor: 架构不匹配: 请尝试使用 Textractor x86 " ;
2019-02-01 16:56:10 -05:00
INJECT_FAILED = L " Textractor: 无法注入 " ;
LAUNCH_FAILED = L " Textractor: 无法启动 " ;
INVALID_CODE = L " Textractor: 无效代码 " ;
INVALID_CODEPAGE = L " Textractor: 无法转换文本 (无效的代码页?) " ;
PIPE_CONNECTED = u8 " Textractor: 管道已连接 " ;
INSERTING_HOOK = u8 " Textractor: 注入钩子: %s " ;
REMOVING_HOOK = u8 " Textractor: 移除钩子: %s " ;
HOOK_FAILED = u8 " Textractor: 钩子注入失败 " ;
TOO_MANY_HOOKS = u8 " Textractor: 钩子太多: 无法注入 " ;
NOT_ENOUGH_TEXT = u8 " Textractor: 没有足够的文本来精确搜索 " ;
FUNC_MISSING = u8 " Textractor: 函数不存在 " ;
MODULE_MISSING = u8 " Textractor: 模块不存在 " ;
GARBAGE_MEMORY = u8 " Textractor: 内存一直在变,读了也没用 " ;
SEND_ERROR = u8 " Textractor: Sender 错误 (H码可能不正确) " ;
READ_ERROR = u8 " Textractor: Reader 错误 (R码可能不正确) " ;
HIJACK_ERROR = u8 " Textractor: Hijack 错误 " ;
COULD_NOT_FIND = u8 " Textractor: 无法找到文本 " ;
SELECT_LANGUAGE = u8 " 选择语言 " ;
2019-06-13 04:01:29 -04:00
SELECT_LANGUAGE_MESSAGE = u8 " 想要使用 %1 翻译到哪种语言? " ;
2019-02-10 21:46:39 -05:00
TOO_MANY_TRANS_REQUESTS = L " 太多翻译请求: 拒绝生成更多 " ;
2019-02-01 16:56:10 -05:00
TRANSLATION_ERROR = L " 翻译时出错 " ;
EXTRA_WINDOW_INFO = u8R " (右键修改设置
在 窗 口 边 缘 点 击 并 拖 拽 来 移 动 , 或 在 右 下 角 点 击 并 拖 拽 来 调 整 大 小 ) " ;
BG_COLOR = u8 " 背景颜色 " ;
TEXT_COLOR = u8 " 文本颜色 " ;
FONT_SIZE = u8 " 字体大小 " ;
TOPMOST = u8 " 总是位于最上层 " ;
REGEX_FILTER = u8 " 正则表达式过滤器 " ;
INVALID_REGEX = u8 " 无效的正则表达式 " ;
2019-06-01 13:59:37 -04:00
CURRENT_FILTER = u8 " 当前过滤中: %1 " ;
2019-02-01 16:56:10 -05:00
# endif // SIMPLIFIED_CHINESE
2019-03-25 15:29:47 +05:00
# ifdef RUSSIAN
ATTACH = u8 " Присоединить к игре " ;
LAUNCH = u8 " Запустить игру " ;
DETACH = u8 " Отсоединить от игры " ;
ADD_HOOK = u8 " Добавить хук " ;
SAVE_HOOKS = u8 " Сохранить хук(и) " ;
SETTINGS = u8 " Настройки " ;
EXTENSIONS = u8 " Расширения " ;
SELECT_PROCESS = u8 " Выберете процесс " ;
ATTACH_INFO = u8R " (Если вы не видите процесс, к которому хотите присоединить, попробуйте запуск с правами администратора
В ы т а к ж е м о ж е т е в в е с т и id п р о ц е с с а ) " ;
2019-07-02 11:26:04 +05:30
FROM_COMPUTER = u8 " Найти в проводнике " ;
2019-03-25 15:29:47 +05:00
PROCESSES = u8 " Процессы (*.exe) " ;
SAVE_SETTINGS = u8 " Сохранить настройки " ;
EXTEN_WINDOW_INSTRUCTIONS = u8R " (Перетащите сюда (.dll) файлы расширений из проводника для их добавления
( Н е р а б о т а е т п р и з а п у с к е о т а д м и н и с т р а т о р а )
П е р е т а с к и в а й т е п о с п и с к у д л я и з м е н е н и я п о р я д к а
Н а ж м и т е к л а в и ш у у д а л е н и я , ч т о б ы у д а л и т ь в ы б р а н н о е р а с ш и р е н и е ) " ;
USE_JP_LOCALE = u8 " Симулировать японскую локаль " ;
FILTER_REPETITION = u8 " Фильтр повторений " ;
DEFAULT_CODEPAGE = u8 " Кодировка по умолчанию " ;
FLUSH_DELAY = u8 " Задержка с б р о с а " ;
MAX_BUFFER_SIZE = u8 " Максимальный размер буфера " ;
CONSOLE = L " Консоль " ;
CLIPBOARD = L " Буфер обмена " ;
2019-05-27 14:13:12 -04:00
ABOUT = L " Textractor " ARCH L " в. " VERSION LR " ( автор: Artikash (email: akashmozumdar@gmail.com)
2019-03-25 15:29:47 +05:00
Д о м а ш н я я с т р а н и ц а : https : //github.com/Artikash/Textractor
2019-06-05 16:58:45 -04:00
О б у ч а ю щ е е в и д е о : https : //tinyurl.com/textractor-tutorial
2019-03-25 15:29:47 +05:00
С о о б щ а й т е о л ю б ы х п р о б л е м а х , ж е л а е м ы х д л я д о б а в л е н и я ф у н к ц и я х , и л и з а д а в а й т е в о п р о с ы , к а с а ю щ и е с я Textractor
2019-06-17 14:38:10 +05:00
С д е л а т ь э т о в ы м о ж е т е н а д о м а ш н е й с т р а н и ц е ( с е к ц и я issues ) и л и ч е р е з э л е к т р о н н у ю п о ч т у
2019-03-25 15:29:47 +05:00
И с х о д н ы й к о д д о с т у п е н п о л и ц е н з и и GPLv3 н а д о м а ш н е й с т р а н и ц е п р о е к т а
I ' m currently looking for a new job : email me if you know anyone hiring US software engineers
Е с л и э т а п р о г р а м м а в а м п о н р а в и л а с ь , р а с с к а ж и т е в с е м о н е й : ) ) " ;
CL_OPTIONS = LR " (usage: Textractor [-p{process id| " process name " }]...) " ;
UPDATE_AVAILABLE = L " Доступно обновление: загрузите е г о на https://github.com/Artikash/Textractor/releases " ;
ALREADY_INJECTED = L " Textractor: уже присоединен " ;
2019-05-27 14:13:12 -04:00
NEED_32_BIT = L " Textractor: несоответствие архитектуры: попробуйте Textractor x86 вместо этого " ;
2019-03-25 15:29:47 +05:00
INJECT_FAILED = L " Textractor: невозможно присоединиться " ;
LAUNCH_FAILED = L " Textractor: невозможно запустить " ;
INVALID_CODE = L " Textractor: неверный код " ;
2019-06-13 10:50:06 +05:00
INVALID_CODEPAGE = L " Textractor: невозможно конвертировать текст (неверная кодировка?) " ;
2019-03-25 16:18:24 +05:00
PIPE_CONNECTED = u8 " Textractor: канал присоединен " ;
2019-03-25 15:29:47 +05:00
INSERTING_HOOK = u8 " Textractor: вставка хука: %s " ;
REMOVING_HOOK = u8 " Textractor: удаление хука: %s " ;
HOOK_FAILED = u8 " Textractor: не удалось вставить хук " ;
TOO_MANY_HOOKS = u8 " Textractor: слишком много хуков: невозможно вставить " ;
NOT_ENOUGH_TEXT = u8 " Textractor: не достаточно текста для точного поиска " ;
FUNC_MISSING = u8 " Textractor: функция отсутствует " ;
MODULE_MISSING = u8 " Textractor: модуль отсутствует " ;
GARBAGE_MEMORY = u8 " Textractor: память постоянно изменяется, бесполезно читать " ;
SEND_ERROR = u8 " Textractor: Send ERROR (вероятно неверный H-code) " ;
READ_ERROR = u8 " Textractor: Reader ERROR (вероятно неверный R-code) " ;
HIJACK_ERROR = u8 " Textractor: Hijack ERROR " ;
COULD_NOT_FIND = u8 " Textractor: невозможно найти текст " ;
SELECT_LANGUAGE = u8 " Выберете язык " ;
2019-06-13 04:01:29 -04:00
SELECT_LANGUAGE_MESSAGE = u8 " Н а какой язык переводить в %1?" ;
2019-03-25 15:29:47 +05:00
TOO_MANY_TRANS_REQUESTS = L " Слишком много запросов для перевода: отклонено " ;
TRANSLATION_ERROR = L " Ошибка при переводе " ;
EXTRA_WINDOW_INFO = u8R " (Правый клик для изменения настроек
2019-06-13 10:50:06 +05:00
Н а ж м и т е и п е р е т а щ и т е з а к р а я - д л я п е р е м е щ е н и я , и л и з а п р а в ы й - н и ж н и й у г о л - д л я и з м е н е н и я р а з м е р а ) " ;
2019-03-25 15:29:47 +05:00
TOPMOST = u8 " Поверх всех окон " ;
2019-06-16 00:30:41 +03:00
SHOW_ORIGINAL = u8 " Исходный текст " ;
2019-06-17 08:17:14 +03:00
SHOW_ORIGINAL_INFO = u8R " (Исходный текст будет скрыт
Р а б о т а е т т о л ь к о е с л и э т о р а с ш и р е н и е и с п о л ь з у е т с я п о с л е р а с ш и р е н и я п е р е в о д а ) " ;
2019-03-25 15:29:47 +05:00
SIZE_LOCK = u8 " Фиксированный размер " ;
BG_COLOR = u8 " Цвет заднего фона " ;
TEXT_COLOR = u8 " Цвет текста " ;
FONT_SIZE = u8 " Размер шрифта " ;
LUA_INTRO = u8R " (--[[
ProcessSentence в ы з ы в а е т с я к а ж д ы й р а з , к о г д а Textractor п о л у ч а е т п р е д л о ж е н и е с т е к с т о м .
Param sentence : п р е д л о ж е н и е п о л у ч е н о е в Textractor ( UTF - 8 ) .
Param sentenceInfo : т а б л и ц а р а з л и ч н о й и н ф о р м а ц и и о п р е д л о ж е н и и .
П р и в о з в р а щ е н и и с т р о к и п р е д л о ж е н и е б у д е т и з м е н е н о н а э т у с т р о к у .
2019-06-17 14:38:10 +05:00
П р и в о з в р а щ е н и и н у л я , п р е д л о ж е н и е о с т а н е т с я б е з и з м е н е н и я .
2019-03-25 15:29:47 +05:00
Э т о р а с ш и р е н и е и с п о л ь з у е т н е с к о л ь к о к о п и й и н т е р п р е т а т о р а Lua д л я б е з о п а с н о с т и н и т и .
М о д и ф и к а ц и и г л о б а л ь н ы х п е р е м е н н ы х и з ProcessSentence н е о б я з а т е л ь н о с о х р а н я е т с я .
П а р а м е т р ы в sentenceInfo :
" current select " : р а в н о 0 , е с л и п р е д л о ж е н и е н е н а х о д и т с я в т е к с т о в о й н и т и , в ы б р а н н о й в д а н н ы й м о м е н т п о л ь з о в а т е л е м .
" process id " : id п р о ц е с с а , и з к о т о р о г о п р е д л о ж е н и е п о с т у п и л о . Р а в н о 0 , к о г д а э т о к о н с о л ь и л и б у ф е р о б м е н а .
" text number " : н о м е р т е к у щ е й т е к с т о в о й н и т и . Р а с т е т о д и н з а д р у г и м п о м е р е с о з д а н и я т е к с т о в ы х н и т е й . 0 д л я к о н с о л и , 1 д л я б у ф е р а о б м е н а .
- - ] ]
function ProcessSentence ( sentence , sentenceInfo )
- - В а ш к о д з д е с ь . . .
end ) " ;
LOAD_LUA_SCRIPT = u8 " Загрузить скрипт " ;
2019-06-01 13:59:37 -04:00
LUA_ERROR = L " Ошибка Lua: %s " ;
2019-03-25 15:29:47 +05:00
REGEX_FILTER = u8 " Фильтр Regex " ;
INVALID_REGEX = u8 " Неверный regex " ;
2019-06-01 13:59:37 -04:00
CURRENT_FILTER = u8 " Сейчас фильтруется: %1 " ;
2019-03-25 15:29:47 +05:00
REPLACER_INSTRUCTIONS = LR " (Этот файл делает что-то только когда используется расширение " Replacer " .
К о м а н д ы д л я з а м е н ы д о л ж н ы в ы г л я д е т ь т а к :
| ORIG | т е к с т _о р иг ина ла | BECOMES | т е к с т _за ме ны | END |
В е с ь т е к с т в э т о м ф а й л е в н е к о м а н д з а м е н и т е л е й б у д е т п р о и г н о р и р о в а н .
П р о б е л ы в т е к с т _о р иг ина ла и г н о р и р у ю т с я , н о т е к с т _за ме ны м о ж е т с о д е р ж а т ь п р о б е л ы , н о в ы е с т р о к и и п р .
Э т о т ф а й л д о л ж е н б ы т ь в к о д и р о в к е Unicode ( UTF - 16 little endian ) . ) " ;
THREAD_LINKER = u8 " Связыватель нитей " ;
LINK = u8 " Связь " ;
THREAD_LINK_FROM = u8 " Номер нити, от которой связывать " ;
THREAD_LINK_TO = u8 " Номер нити, к которой привязывать " ;
# endif // RUSSIAN
2019-05-31 16:40:13 +07:00
# ifdef INDONESIAN
ATTACH = u8 " Tempelkan kedalam game " ;
LAUNCH = u8 " Mulai game " ;
DETACH = u8 " Lepaskan dari game " ;
ADD_HOOK = u8 " Tambahkan hook " ;
SAVE_HOOKS = u8 " Simpan hook " ;
SETTINGS = u8 " Pengaturan " ;
EXTENSIONS = u8 " Ekstensi " ;
SELECT_PROCESS = u8 " Pilih Proses " ;
ATTACH_INFO = u8R " (Jika kamu tidak dapat melihat proses yang akan ditempelkan, coba menjalankan dengan mode administrator
2019-05-31 09:39:15 -04:00
Kamu juga dapat mengetik process id game yang akan ditempel ) " ;
2019-07-02 11:26:04 +05:30
FROM_COMPUTER = u8 " Pilih dari komputer " ;
2019-05-31 16:40:13 +07:00
PROCESSES = u8 " Proses (*.exe) " ;
SAVE_SETTINGS = u8 " Simpan pengaturan " ;
EXTEN_WINDOW_INSTRUCTIONS = u8R " (Drag and drop file ekstensi (.dll) kedalam sini dari komputer kamu untuk menambah ekstensi
2019-06-01 05:03:46 +07:00
( Tidak bekerja dalam mode administrator )
Drag and drop ekstensi di dalam list untuk mengatur list
Tekan delete pada ekstensi yang dipilih untuk menghapus ekstensi ) " ;
2019-05-31 16:40:13 +07:00
USE_JP_LOCALE = u8 " Gunakan locale jepang? " ;
DEFAULT_CODEPAGE = u8 " Codepage standar " ;
FLUSH_DELAY = u8 " Flush Delay " ;
MAX_BUFFER_SIZE = u8 " Max Buffer Size " ;
CONSOLE = L " Konsol " ;
CLIPBOARD = L " Papan clipboard " ;
ABOUT = L " Textractor " ARCH L " v " VERSION LR " ( dibuat oleh saya: Artikash (email: akashmozumdar@gmail.com)
Halaman project : https : //github.com/Artikash/Textractor
2019-06-05 16:58:45 -04:00
Video tutorial : https : //tinyurl.com/textractor-tutorial
2019-05-31 16:40:13 +07:00
Tolong hubungi saya jika kamu memiliki masalah terkait masalah , permintaan fitur , atau pertanyaan terkait Textractor
Kamu dapat melakukannya lewat halaman utama project ( bagian issues ) atau lewat email
Source code tersedia dibawah lisensi GPLv3 di halaman utama project
Saya sedang mencari pekerjaan baru : email saya jika kamu mengenal orang yang dapat memperkerjakan software engineer Amerika
Jika kamu menyukai project ini , tolong sebarluaskan project ini : ) ) " ;
UPDATE_AVAILABLE = L " Pembaharuan tersedia: pembaharuan dapat di unduh di https://github.com/Artikash/Textractor/releases " ;
ALREADY_INJECTED = L " Textractor: sudah ditempelkan " ;
INJECT_FAILED = L " Textractor: menempelkan gagal " ;
LAUNCH_FAILED = L " Textractor: game tidak dapat dijalankan " ;
INVALID_CODE = L " Textractor: kode tidak sesuai " ;
INVALID_CODEPAGE = L " Textractor: tidak dapat mengkonversi teks (Codepage tidak sesuai?) " ;
PIPE_CONNECTED = u8 " Textractor: pipe tersambung " ;
INSERTING_HOOK = u8 " Textractor: memasukkan hook: %s " ;
REMOVING_HOOK = u8 " Textractor: menghapus hook: %s " ;
HOOK_FAILED = u8 " Textractor: gagal memasukkan hook " ;
TOO_MANY_HOOKS = u8 " Textractor: terlalu banyak hook: tidak dapat memasukkan hook " ;
NOT_ENOUGH_TEXT = u8 " Textractor: tidak cukup teks untuk melakukan pencarian secara akurat " ;
FUNC_MISSING = u8 " Textractor: tidak ada fungsi " ;
MODULE_MISSING = u8 " Textractor: tidak ada modul " ;
GARBAGE_MEMORY = u8 " Textractor: memory terus berganti, tidak dapat dibaca " ;
SEND_ERROR = u8 " Textractor: Send ERROR (kemungkinan H-Code salah) " ;
READ_ERROR = u8 " Textractor: Reader ERROR (Kemungkinan R-Code salah) " ;
HIJACK_ERROR = u8 " Textractor: Hijack ERROR " ;
COULD_NOT_FIND = u8 " Textractor: tidak dapat menemukan teks " ;
SELECT_LANGUAGE = u8 " Pilih bahasa " ;
2019-06-13 04:01:29 -04:00
SELECT_LANGUAGE_MESSAGE = u8 " Bahasa apakah yang %1 harus terjemahkan? " ;
2019-05-31 16:40:13 +07:00
TOO_MANY_TRANS_REQUESTS = L " Terlalu banyak permintaan terjemahan: menolak untuk menerjemahkan " ;
TRANSLATION_ERROR = L " Terjadi kesalahan ketika menerjemahkan " ;
EXTRA_WINDOW_INFO = u8R " (Klik kanan untuk merubah pengaturan
Klik dan tarik pinggiran jendela untuk memindahkan , atau sudut kanan bawah untuk mengatur ukuran jendela ) " ;
BG_COLOR = u8 " Warna latar " ;
TEXT_COLOR = u8 " Warna teks " ;
FONT_SIZE = u8 " Ukuran teks " ;
TOPMOST = u8 " Selalu berada di atas " ;
REGEX_FILTER = u8 " Filter regex " ;
INVALID_REGEX = u8 " Regex tidak sesuai " ;
2019-06-01 13:59:56 -04:00
CURRENT_FILTER = u8 " Regex yang digunakan sekarang: %1 " ;
2019-05-31 16:40:13 +07:00
# endif // INDONESIAN
2019-06-19 23:29:31 -03:00
2019-06-19 23:19:13 -04:00
# ifdef PORTUGUESE
2019-06-19 23:29:31 -03:00
ATTACH = u8 " Anexar ao Jogo " ;
LAUNCH = u8 " Iniciar Jogo " ;
DETACH = u8 " Desconectar do Jogo " ;
ADD_HOOK = u8 " Adicionar um Hook " ;
SAVE_HOOKS = u8 " Salvar Hook(s) " ;
SETTINGS = u8 " Opções " ;
EXTENSIONS = u8 " Extensões " ;
SELECT_PROCESS = u8 " Selecionar Processo " ;
ATTACH_INFO = u8R " (Se você não encontrar o processo o qual deseja anexar a, tente iniciar com permissão de Administrador. Você também pode digitar a ID do processo) " ;
2019-07-02 11:26:04 +05:30
FROM_COMPUTER = u8 " Busque no Computador " ;
2019-06-19 23:29:31 -03:00
PROCESSES = u8 " Executaveis (*.exe) " ;
SAVE_SETTINGS = u8 " Salvar opções " ;
EXTEN_WINDOW_INSTRUCTIONS = u8R " (Arraste e solte a extensão (.dll) aqui para adicioná-la.
( Não funciona se estiver rodando como Administrador )
Arraste e solte dentro da lista para reordená - la .
( As extensões são utilizadas de cima para baixo : a ORDEM IMPORTA . )
Pressione delete com uma extensão selecionada para removê - la . ) " ;
INVALID_EXTENSION = u8 " %1 não é uma extensão válida. " ;
CONFIRM_EXTENSION_OVERWRITE = u8 " Outra versão dessa extensão já existe, você gostaria de deletar e reescrevê-la? " ;
EXTENSION_WRITE_ERROR = u8 " Falha na gravação da extensão " ;
USE_JP_LOCALE = u8 " Emular o idioma Japonês? " ;
DEFAULT_CODEPAGE = u8 " página de código padrão " ;
FLUSH_DELAY = u8 " Delay do Flush " ;
MAX_BUFFER_SIZE = u8 " Tamanho Máximo do Buffer " ;
CONSOLE = L " Terminal " ;
CLIPBOARD = L " Área de Transferência " ;
ABOUT = L " Textractor " ARCH L " v " VERSION LR " ( Feito por mim: Artikash (e-mail: akashmozumdar@gmail.com)
Homepage do Projeto : https : //github.com/Artikash/Textractor
Vídeo Tutorial : https : //tinyurl.com/textractor-tutorial
Por favor , em caso de problemas , requisição de recurso e / ou funções e de dúvidas , entrar em contato comigo . Use o Inglês para se comunicar .
Você pode fazê - lo por meio da Homepage do Projeto ( na aba " Issues " ) ou via E - mail .
O código - fonte se encontra disponível na Homepage do projeto sob a licença GPLv3 .
Estou a procura de um novo trabalho : por favor enviê - me uma mensagem de e - mail para mim se souber de alguém que esteja contratando um Engenheiro de Software dos USA .
Se você gostou desse projeto , divulgue a todos : ) ) " ;
2019-06-28 17:45:12 +00:00
UPDATE_AVAILABLE = L " Atualização disponível: baixe em https://github.com/Artikash/Textractor/releases " ;
2019-06-19 23:29:31 -03:00
ALREADY_INJECTED = L " Textractor: já está injetado " ;
2019-06-28 17:45:12 +00:00
NEED_32_BIT = L " Textractor: arquitetura errada: apenas o Textractor x86 pode injetar neste processo " ;
NEED_64_BIT = L " Textractor: arquitetura errada: apenas o Textractor x64 pode injetar neste processo " ;
2019-06-19 23:29:31 -03:00
INJECT_FAILED = L " Textractor: não pode injetar " ;
LAUNCH_FAILED = L " Textractor: não pode iniciar " ;
INVALID_CODE = L " Textractor: código inválido " ;
2019-06-28 17:45:12 +00:00
INVALID_CODEPAGE = L " Textractor: não pode converter o texto (página de código inválida?) " ;
2019-06-19 23:29:31 -03:00
PIPE_CONNECTED = u8 " Textractor: pipe conectado " ;
INSERTING_HOOK = u8 " Textractor: inserindo hook: %s " ;
REMOVING_HOOK = u8 " Textractor: removendo hook: %s " ;
HOOK_FAILED = u8 " Textractor: falha na inserção do hook " ;
TOO_MANY_HOOKS = u8 " Textractor: há hooks de mais: não é possível inserir mais " ;
STARTING_SEARCH = u8 " Textractor: iniciando busca " ;
NOT_ENOUGH_TEXT = u8 " Textractor: não há texto suficiente para uma buscar precisa " ;
HOOK_SEARCH_INITIALIZED = u8 " Textractor: busca inicializada com %zd hooks " ;
HOOK_SEARCH_FINISHED = u8 " Textractor: busca por hooks finalizada, %d resultados encontrados " ;
FUNC_MISSING = u8 " Textractor: função não encontrada " ;
MODULE_MISSING = u8 " Textractor: módulo não presente " ;
SEND_ERROR = u8 " Textractor: ERRO no envio (provavelmente um H-code incorreto) " ;
READ_ERROR = u8 " Textractor: ERRO na leitura (provavelmente um R-code incorreto) " ;
COULD_NOT_FIND = u8 " Textractor: não foi possível encontrar texto " ;
2019-06-28 17:45:12 +00:00
SELECT_LANGUAGE = u8 " Selecione a lingua " ;
SELECT_LANGUAGE_MESSAGE = u8 " Qual lingua deve o/a %1 traduzir para? " ;
2019-06-19 23:29:31 -03:00
TOO_MANY_TRANS_REQUESTS = L " Foram feitos pedidos de tradução demais: recusa na feitura de mais pedidos " ;
TRANSLATION_ERROR = L " Erro enquanto traduzindo " ;
EXTRA_WINDOW_INFO = u8R " (Clique com o botão direito para mudar as opções
Clique e arraste nas beiradas da janela para mover , ou no canto inferior direito para redimessionar ) " ;
TOPMOST = u8 " Sempre em cima " ;
SHOW_ORIGINAL = u8 " Texto original " ;
SHOW_ORIGINAL_INFO = u8R " (Texto original não será mostrado
Apenas funciona se essa extensão for usada diretamente após uma extensão de tradução ) " ;
SIZE_LOCK = u8 " Travar o Tamanho " ;
BG_COLOR = u8 " Cor de fundo " ;
TEXT_COLOR = u8 " Cor do Texto " ;
FONT = u8 " Fonte " ;
FONT_FAMILY = u8 " Família da Fonte " ;
FONT_SIZE = u8 " Tamanho da Fonte " ;
FONT_WEIGHT = u8 " Peso da Fonte " ;
REGEX_FILTER = u8 " Fíltro regex " ;
INVALID_REGEX = u8 " Regex inválido " ;
CURRENT_FILTER = u8 " Atualmente filtrando: %1 " ;
REPLACER_INSTRUCTIONS = LR " (Este arquivo apenas faz algo quando a extensão " Replacer " está sendo utilizada.
Comandos de substituição devem ser formatos da seguinte maneira :
| ORIG | texto_original | BECOMES | texto_substituido | END |
Todo texto fora de um comando de substituição é ignorado .
2019-06-28 17:45:12 +00:00
Espaços contidos no texto original serão ignorados , mas o texto substituído pode conter espaços , novas línhas , etc .
2019-06-19 23:29:31 -03:00
Esse arquívo deve ser codifícado em ( UTF - 16 little endian ) . ) " ;
THREAD_LINKER = u8 " Ligador de Threads " ;
LINK = u8 " Ligar " ;
THREAD_LINK_FROM = u8 " Número do thread para ligar de " ;
THREAD_LINK_TO = u8 " Número do thread para ligar para " ;
2019-06-19 23:19:13 -04:00
# endif // PORTUGUESE
2019-06-19 23:29:31 -03:00
2019-02-01 16:56:10 -05:00
return 0 ;
} ( ) ;