summaryrefslogtreecommitdiff
path: root/plugins/ImportTXT/doc
diff options
context:
space:
mode:
authorVadim Dashevskiy <watcherhd@gmail.com>2012-05-15 10:38:20 +0000
committerVadim Dashevskiy <watcherhd@gmail.com>2012-05-15 10:38:20 +0000
commit48540940b6c28bb4378abfeb500ec45a625b37b6 (patch)
tree2ef294c0763e802f91d868bdef4229b6868527de /plugins/ImportTXT/doc
parent5c350913f011e119127baeb32a6aedeb4f0d33bc (diff)
initial commit
git-svn-id: http://svn.miranda-ng.org/main/trunk@2 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/ImportTXT/doc')
-rw-r--r--plugins/ImportTXT/doc/changelog_ru.txt77
-rw-r--r--plugins/ImportTXT/doc/examples_ru.txt169
-rw-r--r--plugins/ImportTXT/doc/importtxt_translate.txt105
-rw-r--r--plugins/ImportTXT/doc/pattern_cfg_ru.txt77
-rw-r--r--plugins/ImportTXT/doc/readme_ru.txt78
5 files changed, 506 insertions, 0 deletions
diff --git a/plugins/ImportTXT/doc/changelog_ru.txt b/plugins/ImportTXT/doc/changelog_ru.txt
new file mode 100644
index 0000000000..9ce2fe5298
--- /dev/null
+++ b/plugins/ImportTXT/doc/changelog_ru.txt
@@ -0,0 +1,77 @@
+v. 0.0.1.9
+* исправлено дублирование сообщения, если оно совпадает с первым в базе
+* поддержка исправленного xml_api и поддержка плагина XML Driver (для седьмой ветки)
+
+v. 0.0.1.8
+* !важный фикс проверки дубликатов
++ добавлена возможность показывать дубликаты
++ автоскролл в окне сообщений
++ добавлена возможность отключить проверку на дубликаты
+* баг с кривым выводом статусных сообщений
++ добавлен параметр Codepage в шаблон
+- убрана возможность одновременного импорта
++ иконка в окне импорта
++ перечитывание шаблонов, при открытии окна и в Мастере
++ запоминание последнего шаблона
++ полностью переделан импорт из ICQ6
+
+v. 0.0.1.7
++ добавлен шаблон D[i]chat
++ добавлен импорт из ICQ6
++ добавлен импорт из XML файлов ICQ5
+
+v. 0.0.1.6
+* исправлена блокировка папки с импортируемыми файлами
++ добавлен шаблон Pigeon
+
+v. 0.0.1.5
+* исправлено расширение по умолчанию при выборе папки
+
+v. 0.0.1.4
++ добавлена поддержка Updater
+* когда не найден заголовок, не загоралась кнопка "завершить"
+* исправлен шаблон mContacts
+
+v. 0.0.1.3
++ добавлена поддержка бинарных файлов qhf
+
+v. 0.0.1.2
++ добавлен параметр DefaultExtension в шаблон
++ добавлена поддержка бинарных файлов, пока только mContact
+
+v. 0.0.1.1
++ добавлена возможность автостарта
+* обновление списка аккаунтов при его изменении :)
+
+v. 0.0.1.0
+* пункт меню добавляется всем контактам
+* добавлен мастер массового импорта
+
+v. 0.0.0.6
+* переработан формат файлов шаблона, теперь это ini файлы
+* выделен обработчик сообщений перед импортом (удаление переводов строк и пробелов)
++ добавлена поддержка Message Export
+* мелкие исправления
+
+v. 0.0.0.5
+* добавлена поддержка файлов с заголовком, с ником в заголовке сообщениия, но без направления
+ (History++)
+
+v. 0.0.0.4
+* добавлена поддержка мультиаккаунтности для 0.8+
+* пункт меню теперь добавляется для всех ICQ протоколов (если несколько копий DLL)
+
+v. 0.0.0.3
+* изменены процедуры преобразования кодировок
+* убраны утечки памяти
++ добавлена собственная иконка
+
+v. 0.0.0.2
+* изменен способ работы с рег. выражениями (pcre3.dll)
++ сообщения импортируются в базу в UTF8 или ANSI в зависимости от версии Миранды
++ разные кодировки входных файлов
++ фикс перевода
+
+
+v. 0.0.0.1
++ первый релиз \ No newline at end of file
diff --git a/plugins/ImportTXT/doc/examples_ru.txt b/plugins/ImportTXT/doc/examples_ru.txt
new file mode 100644
index 0000000000..2120fd2b72
--- /dev/null
+++ b/plugins/ImportTXT/doc/examples_ru.txt
@@ -0,0 +1,169 @@
+
+Пример файла:
+************
+
+ История сообщений с Неизвестный (000000000)
+ Сохранено из Jimm 07.06.2008 11:49:17
+
+
+------------------------------------>>>-
+ Abyss (06.09.2007 17:52:51):
+Привет!
+
+------------------------------------<<<-
+ Неизвестный (06.09.2007 18:03:09):
+Хай
+
+************
+
+Шаблон такой:
+
+[General]
+Name=Jimm import pattern
+Charset=ANSI
+UseHeader=2
+UsePreMsg=1
+[Message]
+Pattern=^------------------------------------(<<<|>>>)-\r\n\s([^\r\n]+?)\s\((\d\d?)\.(\d\d?)\.(\d\d\d?\d?)\s(\d\d?):(\d\d?):(\d\d?)\):$
+In=<<<
+Out=>>>
+Direction=1
+Day=3
+Month=4
+Year=5
+Hours=6
+Minutes=7
+Seconds=8
+[PreMessage]
+PreRN=1
+AfterRN=2
+[Header]
+Pattern=^\r\n\tИстория сообщений с ([^\r\n]+?)\s\((\d{5,})\)\r\n\tСохранено из Jimm\s[^\r\n]+?\r\n
+InNick=1
+InUID=2
+
+Коментарии: основные моменты содержаться в pattern_cfg,
+Такие значения RN потому что:
+считаем...
+
+Привет!{\r\n} Раз
+{\r\n} два после
+------------------------------------<<<-
+ Неизвестный (06.09.2007 18:03:09):{\r\n} Один до
+Хай
+
+UseHeader=2 используем заголовок только для определения контакта назначения
+
+
+====================================================================================================================================
+Для History++
+=============
+
+Пример файла
+************
+
+###
+### Полная история
+### Abyss (ICQ: 0000000) - Неизвестный (ICQ: 00000000)
+### (создана модулем history++)
+###
+
+[06.09.2007 17:52:51] Abyss:
+Привет!
+
+[06.09.2007 18:03:09] Неизвестный:
+Хай
+
+************
+Файл шаблона выглядит так:
+**************************
+[General]
+Name=History++ pattern
+Charset=UCS2
+UseHeader=3
+UsePreMsg=1
+[Message]
+Pattern=^\[(\d\d?)\.(\d\d?)\.(\d\d\d?\d?)\s(\d\d?):(\d\d?):(\d\d?)\]\s([^\r\n]+?):$
+Direction=7
+Day=1
+Month=2
+Year=3
+Hours=4
+Minutes=5
+Seconds=6
+[Header]
+Pattern=^###\r\n###\s[^\r\n]+?\r\n###\s([^\r\n]+?)\s\([^\r\n]+?:\s([^\r\n]+?)\)\s-\s([^\r\n]+?)\s\([^\r\n]+?:\s([^\r\n]+?)\)\r\n###\s[^\r\n]+?\r\n###\r\n
+In=3
+Out=1
+InNick=3
+OutNick=1
+InUID=4
+OutUID=2
+[PreMessage]
+PreRN=1
+AfterRN=2
+**************************
+
+Все аналогично только добавляется обработка заголовка, получаем ник для того чтобы потом его использовать в качестве маркера направления
+
+========================================================================================================================================
+
+Для Message Export
+==================
+Файл:
+*****
+------------------------------------------------
+ History for
+User : Неизвестный
+Protocol : ICQ
+UIN : 00000000
+FirstName : Mister
+LastName : X
+Age : 0
+Gender : M
+e-mail :
+Nick : Неизвестный
+City :
+State : 66
+Phone :
+Homepage :
+- About -
+
+------------------------------------------------
+Abyss 06.09.2007 17:52:51 Привет
+ Как дела?
+Неизвестный 06.09.2007 18:03:09 Хай, нормально
+
+*******************
+
+[General]
+Name=Message export import pattern
+Charset=UTF8
+UseHeader=3
+UsePreMsg=1
+[Message]
+Pattern=^([^\r\n]+?)[\s]+?(\d\d?)\.(\d\d?)\.(\d\d\d?\d?)\s(\d\d?):(\d\d?):(\d\d?)\s
+Direction=1
+Day=2
+Month=3
+Year=4
+Hours=5
+Minutes=6
+Seconds=7
+[Header]
+Pattern=^------------------------------------------------\r\n[\s]+?History for\r\nUser[\s]+?:\s([^\r\n]+?)\r\n(.*\r\n)+?Nick[\s]+?:\s([^\r\n]+?)\s\r\n(.*\r\n)+?^------------------------------------------------$
+In=1
+InNick=3
+[PreMessage]
+PreRN=0
+AfterRN=1
+PreSP=-2
+*********************
+
+
+Добавлено удаление пробелов в многострочных сообщениях PreSP=-2
+
+С этим форматом сообщений бардак: 1) если протокол НЕ ICQ то UID мы не увидим, тоесть ни JID ни что-то там еще не сохраняются
+ приходится использовать Ник, что не есть гуд
+ 2) Ник! Зачем писать в файлы пробел после ника????
+ Все строчки (Potocol, User, email) нормальные, а после ника пробел. \ No newline at end of file
diff --git a/plugins/ImportTXT/doc/importtxt_translate.txt b/plugins/ImportTXT/doc/importtxt_translate.txt
new file mode 100644
index 0000000000..4220d2e02d
--- /dev/null
+++ b/plugins/ImportTXT/doc/importtxt_translate.txt
@@ -0,0 +1,105 @@
+;============================================================
+; Module: importtxt.dll
+; Plugin: Imports history saved in TXT files from other clients
+; Versions: 0.0.0.1 - 0.0.1.2
+; Translators: Abyss
+; Dates: 6.09.08
+; Template:
+; URL:
+;============================================================
+[Imports history saved in TXT files from other clients]
+Импортирует историю из текстовых файлов
+[Import history to ]
+Импортировать историю в
+[Import history]
+Импорт истории
+[Choose a file...]
+Выберите файл...
+[Choose a pattern...]
+Выберите шаблон...
+[Choose a file for import...]
+Выберите файл для импорта...
+[Text files (*.txt)]
+Текстовые файлы (*.txt)
+[All files (*.*)]
+Все файлы (*.*)
+[Start]
+Старт
+;[Close]
+[Error in cfg file: ]
+Ошибка в cfg файле:
+[No Files Patterns Found]
+Не найдены файлы шаблонов
+[No messages in this file]
+В этом файле нет сообщений
+[Import started...]
+Импорт запущен...
+[Added: %d messages]
+Добавлено: %d сообщений
+[Duplicates: %d messages]
+Дубликатов: %d сообщений
+[In: %d:%d:%d]
+За: %d:%d:%d
+[Import not finished. Do you realy want close?]
+Импорт не закончен. Вы действительно хотите закрыть?
+
+[Error adding message to DB]
+Ошибка добавления сообщения в Базу
+
+[Error opening file]
+Ошибка открытия файла
+[Error mapping file]
+Ошибка отображения файла
+[Error mapping]
+Ошибка отображения
+
+[Header not found]
+Заголовок не найден
+
+[Import Text Files Wizard]
+Мастер Импорта Текстовых Файлов
+
+[This wizard will help you import message history from some other clients and Miranda plugins, stored in text files.]
+Этот мастер поможет вам импортировать сообщения из некоторых других клиентов и плагинов Миранды, хранящуюся в текстовых файлах.
+[Click ""Next"" to choose the information you wish to import, or click ""Cancel"" to exit the wizard and continue using Miranda.]
+Нажмите "Далее" чтобы выбрать информацию для импортирования, или "Отмена" чтобы выйти из этого мастера.
+[It is recommended that you create a backup of your current Miranda profile before importing.]
+Рекомендуется создать резервную копию текущего профиля перед импортированием.
+
+[Choose type of imported files:]
+Выберите тип импортируемых файлов:
+
+[Select files or the whole directory for import:]
+Выберите файлы или целую директорию для импорта:
+[Files...]
+Файлы...
+[Path:]
+Путь:
+[Files:]
+Файлы:
+[Directory...]
+Директория...
+
+[All previous chosen files will try to import to this protocol.]
+Все ранее выбраные файлы будут импортированы в этот протокол.
+[Select protocol or account:]
+Выберите протокол или аккаунт:
+[Click "Next" to start Import or "Cancel" to Abort.]
+Нажмите "Далее" для начала Импорта или "Отмена" для выхода.
+[Now importing...]
+Импортируется...
+
+
+[Select folder for import...]
+Выберите папку для импорта...
+[File: %s]
+Файл: %s
+[To: %s]
+В: %s
+[Can''t determine destination contact]
+Не могу определить контакт назначения
+
+[Default extension]
+Расширение по умолчанию
+[Its not %s file]
+Это не файл %s
diff --git a/plugins/ImportTXT/doc/pattern_cfg_ru.txt b/plugins/ImportTXT/doc/pattern_cfg_ru.txt
new file mode 100644
index 0000000000..e27cf4bb1d
--- /dev/null
+++ b/plugins/ImportTXT/doc/pattern_cfg_ru.txt
@@ -0,0 +1,77 @@
+Структура файла шаблона плагина importtxt начиная с версии 0.0.1.2
+Расширение файла .ini
+
+[General]* Общие параметры
+Name=* Имя шаблона, выводится в списке
+Type=* Тип импорта возможные значения
+ 1 - импорт из текстовых файлов
+ 2 - импорт из бинарных файлов
+*******параметры для импорта текста*********
+Charset=* кодировка ANSI, UTF8, UCS2
+Codepage= кодовая страница для ANSI
+UseHeader= 0..3 - использовать заголовок
+ первый бит использовать заголовок для распознавания направления
+ второй бит использовать заголовок для распознования контакта назначения
+UsePreMsg= 0 - не использовать предварительную обработку сообщений,
+ даже если не используется, то всё равно будут удаляться все переводы строки в конце и в начале
+ 1 - использовать предварительную обработку
+*******параметры для бинарного импорта*********
+BinProcedure= Используется для установки процедуры бинарного импорта (обязательна при Type=2)
+ Возможные значения:
+ 1 - mContacts
+ 2 - QHF
+ 3 - ICQ6
+ 4 - ICQ5
+*******общие параметры*********
+UseFileName= использовать имя файла для определения UID
+DefaultExtension= Расширение файлов по умолчанию (если нет то txt)
+*******параметры для импорта текста*********
+[Message]* Сообщение
+Pattern=* рег. выражение для разбора заголовка сообщения
+In= варианты направления, если нет или пустые то используется из заголовка
+Out= если UseHeader=0 и In пустой, то ошибка
+Direction=* номер подвыражения определяющее направление сообщения (либо жестко заданное либо ник или уин)
+Day=* номер подваражения дня
+Month=* номер подваражения месяца
+Year=* номер подваражения года
+Hours=* номер подваражения часов
+Minutes=* номер подваражения минут
+Seconds= номер подваражения секунд (может быть 0, тогда при импорте принимается за 00)
+
+[Header] Заголовок файла
+Pattern=* рег. выражение заголовка
+In=* подвыражение определяющее то что сообщение входящее (Ник, Уин)
+Out= подвыражение определяющее то что сообщение исходящее (Ник, Уин)
+ может быть 0 или отсутствовать, если при импорте Direction<>In тогда оно исходящее, такая случайная фишка, но очень помогающая
+InNick=* Ник собеседника
+OutNick= Ваш Ник //не используется
+InUID=* UID собеседника
+OutUID= ваш UID //не используется
+
+[PreMessage] Обработка сообщения перед импортом в базу
+PreRN= удалить переводы строк в начале сообщения (целое число или -1 тогда все)
+AfterRN= удалить переводы строк в конце сообщения (целое число или -1 тогда все)
+PreSP= удалить пробелы в начале каждой строки сообщения
+AfterSP= удалить пробелы в конце каждой строки сообщения
+ возможные значения:
+ целое число
+ -1 все
+ -2 кол-во равно длине распознаного шаблона заголовка сообщения (актуально для Message Export)
+ любой параметр может отсутствовать или быть равен нулю, тогда не используется
+ SP использовать только в случае крайней необходимости, потому что замедляется работа
+*******общие параметры*********
+[FileName] Имя файла
+Pattern=* шаблон для распознования
+InNick=* Ник собеседника
+OutNick= Ваш Ник //не используется
+InUID=* UID собеседника
+OutUID= Ваш UID //не используется
+
+
+ * обязательная секция, если указаны UseHeader=1, а секции [Header] нет, то ошибка, аналогично с [PreMessage] и [FileName]
+ * обязательный параметр в секции, если параметр не обязателен то по умолчанию используется либо 0 для PS, либо -1 для RN , либо пустая строка
+ * если в UseHeader включен второй бит, то обязателен либо InUID, либо InNick, приоритетом распознавания является UID
+ * в Имени файла аналогично
+
+ UID означает Уникальный ИДентификатор :) это может быть UIN, JID и т.д.
+ \ No newline at end of file
diff --git a/plugins/ImportTXT/doc/readme_ru.txt b/plugins/ImportTXT/doc/readme_ru.txt
new file mode 100644
index 0000000000..2c7e4c3ebb
--- /dev/null
+++ b/plugins/ImportTXT/doc/readme_ru.txt
@@ -0,0 +1,78 @@
+Import TXT plugin for Miranda IM
+================================
+Плагин предоставляет возможность импортировать историю контактов
+из других клиентов, хранящуюся в текстовых файлах.
+
+Copyright and License
+===============================
+
+Copyright (C) 2008 Andrey Kunitsyn (Abyss) All Rights Reserved
+Some procedures are used written by Alexey Kulakov
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+
+Установка:
+==========
+1. Сделайте бэкап Базы Миранды
+2. Скопируйте importtxt.dll, папку importtxt и всё её содержимое в папку Plugins каталога Миранды.
+3. Скопируйте файл pcre3.dll в корень миранды или system32
+4. Содержимое файла importtxt_translate.txt добавьте в конец Лангпака
+5. Запустите миранду
+В меню контактов появится пункт "Import history..." ("Импортировать историю")
+В главном меню появиться такой же пункт - это мастер импорта.
+
+Для автостарта мастера нужно прописать в базе ImportTXT/AutoStart значение 1 типа byte
+
+ВАЖНО:
+======
+Обязательно сделайте бэкап базы!
+Файлы шаблонов должны быть в кодировке ANSI.
+
+
+Описание:
+=========
+Плагин написан с нацеленностью на универсальность, вы можете написать
+свои правила разбора файлов и положить в папку importtxt.
+НО есть некоторые ограничения:
+1. Входные файлы могут быть в любой кодировке (ANSI, UTF8, UCS2)
+ (перекодирование происходит с кодовой страницей лангпака, если его нет то с системной)
+2. Каждое сообщение в файле должно содержать заголовок с полной информацией о нем:
+ - направление (входящее или исходящее)
+ - таймштамп (полная дата, полное время (можно без секунд, но это должно быть обозначено в шаблоне)
+ - текст сообщения :)
+3. Начиная с версии 0.0.0.5 поддерживаются входные файлы следующего вида:
+ в файле есть заголовок с никами переписывающихся , в заголовке каждого сообщения есть Ник, но нет направления сообщения
+ (под этот тип подходят файлы экспортируемые History++)
+4. Для массового импорта необходима информация о контакте назначения (UID или Ник), в заголовке файла или имени файла.
+
+Начиная с версии 0.0.1.2 реализована поддержка некоторых бинарных файлов.
+(каких именно смотрите pattern_cfg)
+Начиная с версии 0.0.1.7 добавлен импорт из XML файлов ICQ5 (для импорта нужно ядро не ниже 0.8.0.21)
+
+Примерный алгоритм работы:
+==========================
+В файле ищется регулярное выражение описанное в шаблоне, при помощи подвыражений выделяется дата, время и тд.
+Всё что находится после него и до следующего считается текстом сообщения.
+
+Дубликаты
+=========
+При импорте происходит простая проверка на дубликаты (направление, таймштамп, размер сообщения) как в import.dll
+
+Написание шаблона:
+==================
+Формат файлов шаблона описан в pattern_cfg
+Примеры написания с комментариями в examples
+
+Подробнее о регулярных выражениях вы можете почитать в интернете ;).