LibRusLib
Понедельник, 25.11.2024, 20:41
Приветствую Вас Гость | RSS
 
Главная ФорумРегистрацияВход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Архив - только для чтения
Модератор форума: drserj  
librus - Библиотекарь 1.20.0.101219 beta
drserjДата: Воскресенье, 12.12.2010, 23:45 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Репутация: 30
Статус: Offline
1. Несколько увеличил скорость загрузки базы
2. Добавил индикацию распаковки и добавления в базу
3. Подправил пару незначительных оплошностей
4. Добавил новые баги smile

Качаем тут (только ехе-шник): http://libruslib.ucoz.com/update/libruslib20101212.rar


drSerj
 
drserjДата: Пятница, 17.12.2010, 17:53 | Сообщение # 31
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Репутация: 30
Статус: Offline
Quote (andToxa)
Предположу, что просится использование переменных именно в настройках программы, где прописываются пути.

а зачем?????? Системные переменные ну никак не относятся к программе... а если сильно хочется - дык в качестве пути в параметре их никто не отменял, должны работать по идее.... Хотя, убей не пойму, зачем это делать, если всё равно пишется скрипт. На то и расчет был - дать возможность делать всё что угодно при помощи cmd-файлов... Какая разница, создавать свой скриптовый язык или юзать уже существующий стандартный???

-------------------------

И вообще, давайте о конкретике. Если есть какая-нить задача, проще ее описать, что бы понять, как это лучше реализовать. Народ может поделиться готовыми решениями, примерами. Если необходимо - создам отдельный топик.


drSerj
 
andToxaДата: Пятница, 17.12.2010, 19:13 | Сообщение # 32
Подполковник
Группа: Проверенные
Сообщений: 148
Репутация: 0
Статус: Offline
Пример навскидку: в настройках папок для временной папки иметь возможность прописывать не "c:\temp", не ".\temp\", а "%temp%".
Мало кому это надо, но бывает.
ps: мне не надо smile


книга - лучший подарок!
 
drserjДата: Пятница, 17.12.2010, 20:37 | Сообщение # 33
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Репутация: 30
Статус: Offline
Quote (andToxa)
Пример навскидку: в настройках папок для временной папки иметь возможность прописывать не "c:\temp", не ".\temp\", а "%temp%"

а зачем?

Quote (andToxa)
Мало кому это надо, но бывает.

сомневаюсь...

Quote (andToxa)
ps: мне не надо

Точно так же, как и всем...

Гипотетические примеры - это хорошо, в таком случае можно добавить и систему навигации для сенокосилки с вертикальным взлётом и посадкой...
Разговор идет об использовании переменных окружения при работе со скриптами... В самой программе такой изврат вряд ли нужен...


drSerj
 
ShamsДата: Суббота, 18.12.2010, 05:10 | Сообщение # 34
Генерал-майор
Группа: Проверенные
Сообщений: 274
Репутация: 0
Статус: Offline
М-да... Мартышка и очки вспоминались мне вчера неоднократно angry Что только не делал, чтобы заставить работать
start /b "%ProgramFiles%\GribUser\FB2 to Any\fb2rb_interactive.vbs" %1
А оказывается, нужно было всего лишь удалить "start /b " из начала строки.

Quote (drserj)
расчет был - дать возможность делать всё что угодно при помощи cmd-файлов...

Тут ты, конечно, прав, но тяжело простому крестьянину с этим sad
 
1_абрамДата: Суббота, 18.12.2010, 12:25 | Сообщение # 35
Генералиссимус
Группа: Друзья
Сообщений: 1207
Репутация: 0
Статус: 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
Репутация: 30
Статус: Offline
Quote (Shams)
Тут ты, конечно, прав, но тяжело простому крестьянину с этим

хех... а кто сказал что будет легко? smile Собственно, по этому и предлагаю - делитесь скриптами и проблемами.


drSerj
 
drserjДата: Суббота, 18.12.2010, 13:21 | Сообщение # 37
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Репутация: 30
Статус: Offline
Quote (1_абрам)
Как это можно сделать - добавить в настройки устройство опциональную возможность запуска скпипта после завершения копирования и хорошо бы при этом передовать (записывать) список загруженных книжек.

а если это делать не при помощи функции "копировать на устройство" а теми же пакетными операциями??? Али команду copy отменили?

1. осуществляем копирование
2. осуществляем добавление в базу sqlite (никогда не делал - ну не подарят никак книжечку smile )

Quote (1_абрам)
добавить в настройки устройство опциональную возможность запуска скпипта после завершения копирования и хорошо бы при этом передовать (записывать) список загруженных книжек.

вот-вот.. сегодня - список книжечек, завтря еще что-нить понадобится... и превратится простенькая функция копирования на устройство в монстра... А скрипты, которые для этого предназначены - так и останутся за бортом...

Чего не хватает в пакетных операциях для полного счастья? Давайте пока оставим бедную функцию копирования на устройство, у нее более скромное назначение - тупо копировать smile

(кстати, изучив детально язык cmd - возникает вопрос, а так ли необходим перл?)


drSerj
 
1_абрамДата: Суббота, 18.12.2010, 18:19 | Сообщение # 38
Генералиссимус
Группа: Друзья
Сообщений: 1207
Репутация: 0
Статус: Offline
Quote (drserj)
вот-вот.. сегодня - список книжечек, завтря еще что-нить понадобится... и превратится простенькая функция копирования на устройство в монстра... А скрипты, которые для этого предназначены - так и останутся за бортом...
Чего не хватает в пакетных операциях для полного счастья? Давайте пока оставим бедную функцию копирования на устройство, у нее более скромное назначение - тупо копировать
(кстати, изучив детально язык cmd - возникает вопрос, а так ли необходим перл?)

Уж больно удобная функция копирования на устройство. У меня там стоит фильтр %g/%a_%n. Писать самому скрипт, реализующий этот фильтр не так просто - нужно жанры, имена из книжек выковыревать. А если не фб2, то вообще непонятно как делать.

Использование перла непринципиально, он для меня привычнее, да и под линуксом cmd нету.

 
drserjДата: Суббота, 18.12.2010, 21:45 | Сообщение # 39
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Репутация: 30
Статус: Offline
Как работает функция копирования на устройство:

1. Находится архив
2. Распаковывается в созданный каталог (Файл в архиве может быть далеко не один)
3. Переименовывается по шаблону
4. Если фб2 и стоит отметка о сжатии - зипует, иначе, копирует папку со всеми файлами на устройство.

А теперь вопросы: что делать, где и с чем?


drSerj
 
1_абрамДата: Суббота, 18.12.2010, 23:08 | Сообщение # 40
Генералиссимус
Группа: Друзья
Сообщений: 1207
Репутация: 0
Статус: 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
Репутация: 30
Статус: Offline
Quote (1_абрам)
Если нет то просто выбирать исполняемый файл без параметров (для решения моей задачи это достаточно, хотя было бы здорово иметь список записываемых файлов).

А смысл в нем без параметров??? Надо ведь передать хотя-бы имя файла... иначе теряется смысл...
Плюс к тому, придется передавать серию, название, автора, номер в серии... Это сейчас тебе кажется - только запустить батник и хватит, но я же знаю, завтра захочется большего... мля, ну почему я изначально не делал всё на уровне плагинов, всё лень проклятая!!! Так бы любители поизвращаться сидели и сами плаги писали cool


drSerj
 
drserjДата: Воскресенье, 19.12.2010, 03:01 | Сообщение # 42
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Репутация: 30
Статус: 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 ночи - сорри, могут быть баги smile


drSerj
 
1_абрамДата: Воскресенье, 19.12.2010, 11:49 | Сообщение # 43
Генералиссимус
Группа: Друзья
Сообщений: 1207
Репутация: 0
Статус: 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
Репутация: 0
Статус: Offline
Я с очередным просьбопредложением.
На маломощных (малопямятных) ноутбуках (нетбуках) процесс обновления базы занимает весьма приличное время ( у меня - прорядка 50 минут). К сожалению, далеко не всегда совпадает наличие доступа к интернету, необходимое для закачки дампов базы, с наличием времени на само обновление.
Нельзя ли эти процессы разделить? Скажем, путем добавления в окно загрузки еще одного чекбокса, что-то типа "Обновить базу". Тогда, очистив его, можно было бы по-быстрому файлы с сервера скачать, а потом на досуге уже обновляться.
 
drserjДата: Воскресенье, 19.12.2010, 12:59 | Сообщение # 45
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Репутация: 30
Статус: Offline
Quote (1_абрам)
Буду пробовать.

Пробуй.

У кого семерка или виста - проверьте и отпишитесь. По-идее проблем быть не должно, но кто его знает...

Quote (Shams)
сожалению, далеко не всегда совпадает наличие доступа к интернету, необходимое для закачки дампов базы, с наличием времени на само обновление. Нельзя ли эти процессы разделить? Скажем, путем добавления в окно загрузки еще одного чекбокса, что-то типа "Обновить базу". Тогда, очистив его, можно было бы по-быстрому файлы с сервера скачать, а потом на досуге уже обновляться.

Хм, можно по-другому... Скачивать любой качалкой файлы базы, а потом, сняв отметку "Загружать из интернета", уже программой загружать в базу... Так выглядит логичне...
Список файлов (и, при необходимости, скрипт) могу предоставить.


drSerj
 
Поиск:

Copyright LibRusLib © 2024