librus - Библиотекарь 1.20.0.101219 beta
| |
drserj | Дата: Воскресенье, 12.12.2010, 23:45 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| 1. Несколько увеличил скорость загрузки базы 2. Добавил индикацию распаковки и добавления в базу 3. Подправил пару незначительных оплошностей 4. Добавил новые баги Качаем тут (только ехе-шник): http://libruslib.ucoz.com/update/libruslib20101212.rar
drSerj
|
|
| |
drserj | Дата: Пятница, 17.12.2010, 17:53 | Сообщение # 31 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Quote (andToxa) Предположу, что просится использование переменных именно в настройках программы, где прописываются пути. а зачем?????? Системные переменные ну никак не относятся к программе... а если сильно хочется - дык в качестве пути в параметре их никто не отменял, должны работать по идее.... Хотя, убей не пойму, зачем это делать, если всё равно пишется скрипт. На то и расчет был - дать возможность делать всё что угодно при помощи cmd-файлов... Какая разница, создавать свой скриптовый язык или юзать уже существующий стандартный??? ------------------------- И вообще, давайте о конкретике. Если есть какая-нить задача, проще ее описать, что бы понять, как это лучше реализовать. Народ может поделиться готовыми решениями, примерами. Если необходимо - создам отдельный топик.
drSerj
|
|
| |
andToxa | Дата: Пятница, 17.12.2010, 19:13 | Сообщение # 32 |
Подполковник
Группа: Проверенные
Сообщений: 148
Статус: Offline
| Пример навскидку: в настройках папок для временной папки иметь возможность прописывать не "c:\temp", не ".\temp\", а "%temp%". Мало кому это надо, но бывает. ps: мне не надо
книга - лучший подарок!
|
|
| |
drserj | Дата: Пятница, 17.12.2010, 20:37 | Сообщение # 33 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Quote (andToxa) Пример навскидку: в настройках папок для временной папки иметь возможность прописывать не "c:\temp", не ".\temp\", а "%temp%" а зачем? Quote (andToxa) Мало кому это надо, но бывает. сомневаюсь... Quote (andToxa) ps: мне не надо Точно так же, как и всем... Гипотетические примеры - это хорошо, в таком случае можно добавить и систему навигации для сенокосилки с вертикальным взлётом и посадкой... Разговор идет об использовании переменных окружения при работе со скриптами... В самой программе такой изврат вряд ли нужен...
drSerj
|
|
| |
Shams | Дата: Суббота, 18.12.2010, 05:10 | Сообщение # 34 |
Генерал-майор
Группа: Проверенные
Сообщений: 274
Статус: Offline
| М-да... Мартышка и очки вспоминались мне вчера неоднократно Что только не делал, чтобы заставить работать start /b "%ProgramFiles%\GribUser\FB2 to Any\fb2rb_interactive.vbs" %1 А оказывается, нужно было всего лишь удалить "start /b " из начала строки. Quote (drserj) расчет был - дать возможность делать всё что угодно при помощи cmd-файлов... Тут ты, конечно, прав, но тяжело простому крестьянину с этим
|
|
| |
1_абрам | Дата: Суббота, 18.12.2010, 12:25 | Сообщение # 35 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Quote (drserj) И вообще, давайте о конкретике. Если есть какая-нить задача, проще ее описать, что бы понять, как это лучше реализовать. Народ может поделиться готовыми решениями, примерами. Если необходимо - создам отдельный топик. Вот конкретная задача. Экпортирум файлы на устройство. После копирования нужно с помощью sqlite занести информацию о загруженных файлов в базу данных (для автоматического создания на ридере коллекции последних загруженнных книжек). Как это можно сделать - добавить в настройки устройство опциональную возможность запуска скпипта после завершения копирования и хорошо бы при этом передовать (записывать) список загруженных книжек. Скрипт я написал http://www.the-ebook.org/forum/viewtopic.php?t=17140&sid=9c4784f5ebf42c095b08db39614c51df (там правда проводится скнирование всей карточки).
Сообщение отредактировал 1_абрам - Суббота, 18.12.2010, 12:26 |
|
| |
drserj | Дата: Суббота, 18.12.2010, 13:14 | Сообщение # 36 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Quote (Shams) Тут ты, конечно, прав, но тяжело простому крестьянину с этим хех... а кто сказал что будет легко? Собственно, по этому и предлагаю - делитесь скриптами и проблемами.
drSerj
|
|
| |
drserj | Дата: Суббота, 18.12.2010, 13:21 | Сообщение # 37 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Quote (1_абрам) Как это можно сделать - добавить в настройки устройство опциональную возможность запуска скпипта после завершения копирования и хорошо бы при этом передовать (записывать) список загруженных книжек. а если это делать не при помощи функции "копировать на устройство" а теми же пакетными операциями??? Али команду copy отменили? 1. осуществляем копирование 2. осуществляем добавление в базу sqlite (никогда не делал - ну не подарят никак книжечку ) Quote (1_абрам) добавить в настройки устройство опциональную возможность запуска скпипта после завершения копирования и хорошо бы при этом передовать (записывать) список загруженных книжек. вот-вот.. сегодня - список книжечек, завтря еще что-нить понадобится... и превратится простенькая функция копирования на устройство в монстра... А скрипты, которые для этого предназначены - так и останутся за бортом... Чего не хватает в пакетных операциях для полного счастья? Давайте пока оставим бедную функцию копирования на устройство, у нее более скромное назначение - тупо копировать (кстати, изучив детально язык cmd - возникает вопрос, а так ли необходим перл?)
drSerj
|
|
| |
1_абрам | Дата: Суббота, 18.12.2010, 18:19 | Сообщение # 38 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Quote (drserj) вот-вот.. сегодня - список книжечек, завтря еще что-нить понадобится... и превратится простенькая функция копирования на устройство в монстра... А скрипты, которые для этого предназначены - так и останутся за бортом... Чего не хватает в пакетных операциях для полного счастья? Давайте пока оставим бедную функцию копирования на устройство, у нее более скромное назначение - тупо копировать (кстати, изучив детально язык cmd - возникает вопрос, а так ли необходим перл?) Уж больно удобная функция копирования на устройство. У меня там стоит фильтр %g/%a_%n. Писать самому скрипт, реализующий этот фильтр не так просто - нужно жанры, имена из книжек выковыревать. А если не фб2, то вообще непонятно как делать. Использование перла непринципиально, он для меня привычнее, да и под линуксом cmd нету.
|
|
| |
drserj | Дата: Суббота, 18.12.2010, 21:45 | Сообщение # 39 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Как работает функция копирования на устройство: 1. Находится архив 2. Распаковывается в созданный каталог (Файл в архиве может быть далеко не один) 3. Переименовывается по шаблону 4. Если фб2 и стоит отметка о сжатии - зипует, иначе, копирует папку со всеми файлами на устройство. А теперь вопросы: что делать, где и с чем?
drSerj
|
|
| |
1_абрам | Дата: Суббота, 18.12.2010, 23:08 | Сообщение # 40 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Quote (drserj) Как работает функция копирования на устройство: 1. Находится архив 2. Распаковывается в созданный каталог (Файл в архиве может быть далеко не один) 3. Переименовывается по шаблону 4. Если фб2 и стоит отметка о сжатии - зипует, иначе, копирует папку со всеми файлами на устройство. Добавить (опционально): 5. Запуск пользовательского скрипта. Скрипт, если это возможно, выбирать из списка "Пакетные операции". Если нет то просто выбирать исполняемый файл без параметров (для решения моей задачи это достаточно, хотя было бы здорово иметь список записываемых файлов). Добавлено (18.12.2010, 22:08) --------------------------------------------- Quote (drserj) Давайте пока оставим бедную функцию копирования на устройство, у нее более скромное назначение - тупо копировать В том то и дело, что это функция очень важная. Сейчас это не только тупое копирование (пункт 3). Удобство и универсальность этой функции во многом определяет удобство и функциональность программы в целом. Шаблон %g/%a_%n автоматически упорядочивает книжки на читалке.
Сообщение отредактировал 1_абрам - Суббота, 18.12.2010, 23:10 |
|
| |
drserj | Дата: Воскресенье, 19.12.2010, 00:08 | Сообщение # 41 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Quote (1_абрам) Если нет то просто выбирать исполняемый файл без параметров (для решения моей задачи это достаточно, хотя было бы здорово иметь список записываемых файлов). А смысл в нем без параметров??? Надо ведь передать хотя-бы имя файла... иначе теряется смысл... Плюс к тому, придется передавать серию, название, автора, номер в серии... Это сейчас тебе кажется - только запустить батник и хватит, но я же знаю, завтра захочется большего... мля, ну почему я изначально не делал всё на уровне плагинов, всё лень проклятая!!! Так бы любители поизвращаться сидели и сами плаги писали
drSerj
|
|
| |
drserj | Дата: Воскресенье, 19.12.2010, 03:01 | Сообщение # 42 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Итак, в форме копирования на устройство - комбобокс с выбором скрипта постобработки. Скрипты - те же что и в пакетных операциях. берутся из тех же настроек. Если указываются параметры %f или %F в настройках скрипта - передается имя файла, уже скопированного на устройство. http://libruslib.ucoz.com/update/libruslib20101219.rar пример использования - файл addtobase.cmd: Code @echo %1 >> e:\#book\base.txt Каждый успешно скопированный файл пропишет в текстовом файле e:\#book\base.txt ВНИМАНИЕ! Если в одном архиве несколько файлов (на устройство будет скопирован каталог с вложенными в него файлами, например комплект html-файлов) - обработка производиться не будет! Обработка производится в том случае, если на выходе - один файл. P.S. Поскольку делалось уже в 2 ночи - сорри, могут быть баги
drSerj
|
|
| |
1_абрам | Дата: Воскресенье, 19.12.2010, 11:49 | Сообщение # 43 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Quote (drserj) Итак, в форме копирования на устройство - комбобокс с выбором скрипта постобработки. Скрипты - те же что и в пакетных операциях. берутся из тех же настроек. Если указываются параметры %f или %F в настройках скрипта - передается имя файла, уже скопированного на устройство. http://libruslib.ucoz.com/update/libruslib20101219.rar пример использования - файл addtobase.cmd: Code @echo %1 >> e:\#book\base.txt Каждый успешно скопированный файл пропишет в текстовом файле e:\#book\base.txt ВНИМАНИЕ! Если в одном архиве несколько файлов (на устройство будет скопирован каталог с вложенными в него файлами, например комплект html-файлов) - обработка производиться не будет! Обработка производится в том случае, если на выходе - один файл. P.S. Поскольку делалось уже в 2 ночи - сорри, могут быть баги Огромное спасибо. То что нужно. Уверен, что эта возможность постобработки файлов будет полезно не только мне. С ее помощью удобно еще можно делать: 1) автоматическую загрузку lrf файлов 2) модификация больших картинок в фб2 - http://www.the-ebook.org/forum/viewtopic.php?t=16578&sid=3c89b5345ac406f97c2a1bced92fae74 Буду пробовать.
Сообщение отредактировал 1_абрам - Воскресенье, 19.12.2010, 11:52 |
|
| |
Shams | Дата: Воскресенье, 19.12.2010, 12:49 | Сообщение # 44 |
Генерал-майор
Группа: Проверенные
Сообщений: 274
Статус: Offline
| Я с очередным просьбопредложением. На маломощных (малопямятных) ноутбуках (нетбуках) процесс обновления базы занимает весьма приличное время ( у меня - прорядка 50 минут). К сожалению, далеко не всегда совпадает наличие доступа к интернету, необходимое для закачки дампов базы, с наличием времени на само обновление. Нельзя ли эти процессы разделить? Скажем, путем добавления в окно загрузки еще одного чекбокса, что-то типа "Обновить базу". Тогда, очистив его, можно было бы по-быстрому файлы с сервера скачать, а потом на досуге уже обновляться.
|
|
| |
drserj | Дата: Воскресенье, 19.12.2010, 12:59 | Сообщение # 45 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Quote (1_абрам) Буду пробовать. Пробуй. У кого семерка или виста - проверьте и отпишитесь. По-идее проблем быть не должно, но кто его знает... Quote (Shams) сожалению, далеко не всегда совпадает наличие доступа к интернету, необходимое для закачки дампов базы, с наличием времени на само обновление. Нельзя ли эти процессы разделить? Скажем, путем добавления в окно загрузки еще одного чекбокса, что-то типа "Обновить базу". Тогда, очистив его, можно было бы по-быстрому файлы с сервера скачать, а потом на досуге уже обновляться. Хм, можно по-другому... Скачивать любой качалкой файлы базы, а потом, сняв отметку "Загружать из интернета", уже программой загружать в базу... Так выглядит логичне... Список файлов (и, при необходимости, скрипт) могу предоставить.
drSerj
|
|
| |
|