Цитата:
Может вам удастся то, что не удалось ему: четко сформулировать свои пожелания/требования/критерии в виде близком к постановке задачи?
Что же, SFC, вы заставили меня задуматься, и я вспомнил, что тогда, в 2007, я сделал кой-какие записули, которые всё равно пока что валяются без дела. И хоть смысла особого не вижу, по вашей просьбе публикую наспех подработанный вариант. Ни полнотой, ни глубиной эти наброски не блещут, но в какой-то степени вашей формулировке мой черновик соответствует.
Персональный коллектор рассеянной информации (ПКРИ). Общие технические требования
Общие положения
Программа подкласса ПКРИ технически представляет собой разновидность специализированной персональной СУБД (СУБЗ), предназначена для личного повседневного пользования и не является средством организации документооборота.
ПКРИ предназначен для накопления, хранения, комплексной многоуровневой ассоциативно-семантической и логико-иерархической организации текстовой (в первую очередь) и сопутствующей ей графической и иной информации в составе самостоятельных единиц хранения (ЕХ) с целью обеспечить возможность быстрой выборки из созданного пользователем массива данных ЕХ, содержащих информацию, которая интересует пользователя на данный момент.
В среде ПКРИ ЕХ является минимальным составным информационным объектом данных и по своей сути соответствует понятию «документ».
Файлы, единицы хранения и документы
Файл (файлы) ПКРИ представляет собой разновидность базы знаний, которая позволяет обращаться как к ЕХ, так и к отдельным элементам внутри ЕХ — закладкам в определённой позиции курсора и рубрикам логической иерархии функциональных блоков текста внутри ЕХ. При этом формат файла БД ПКРИ должен допускать размещение БД в подкаталогах и разделах, соединённых с клиент-серверными системами непрерывной синхронизации с удалённым дисковым пространством.
Как правило, ЕХ имеют объём от 200 до 400 000 знакомест и представляют собой заметки, наброски, фрагменты опубликованных в различных источниках документов или содержание самих документов с сохранием их первоначальной логической структуры (в том числе и на уровне кода) и наглядно отражающем эту структуру единообразным оформлением.
Двоичные файлы, представляющие собой растрированные изображения — дисковые графические документы, могут импортироваться в файл ПКРИ как самостоятельные ЕХ и как элемент самой ЕХ (иллюстрация, завёрстываемая вразрез текста, или значок, размещаемый в строке в позиции курсора). В обоих случаях документ, импортированный в БД ПКРИ, отображается средствами самой программы.
Текстовые и комплексные документы, представляющие собой самостоятельный файл, считываемый для представления в человекочитаемой форме другой программой, считаются внешними объектами и не обрабатываются ПКРИ для представления пользователю в человекочитаемой форме.
Дерево ПКРИ
Основным средством наглядной организации ЕХ является древоподобная иерархическая структура — так называемое дерево, отображаемое в боковой панели. Дерево воплощает принцип многоуровневого информационного архива, где виртуальные папки вкладываются одна в другую. На усмотрение разработчика папка одновременно может быть и ЕХ.
Содержание ЕХ
Содержание ЕХ отображается в главной панели оболочки ПКРИ, которая представляет собой окно простого текстового редактора, который имеет средства создания и изменения логической иерархической структуры данных в составе ЕХ, а также необходимые современные средства выделения фрагментов текста наборными средствами, работы с табличными данными и так далее.
ЕХ может содержать:
текст на любом языке и с любой системой письма (в том числе произвольное число фрагментов идеографического письма, включаемого в текст, где использован любой алфавит или их произвольная смесь);
завёрстанные вразрез иллюстрации и включаемые в строку знчки в простых растровых форматах;
данные в табличном представлении (включая многоярусное);
внутренние и внешние гипертекстовые ссылки и закладки.
Инструментарий ассоциативно-семантической организации
Такой инструментарий позволяет восполнить основной недостаток иерархичеких структур — их жёсткую однозначность.
Обязательным инструментом организации накопленных данных по предметно-тематическому признаку является произвольно расширяемая и изменяемая система [мета]тегов (ярлыков), также построенная по иерархическому принципу. Теги представляют собой слова или комбинации слов, которые пользователь на своё усмотрение назаначает ЕХ, тем самым обозначая их принадлежность к той или иной предметно-тематической области, множеству или подмножеству областей. Вся структура тегов глобальна, и любой из присутствующих в ПКРИ тегов должен быть доступен для применения к любой из ЕХ.
Теги, назначенные текущей ЕХ, должны по выбору пользователя отображаться при её открытии или постоянно в виде дерева, аналогичного дереву самой БД. Интерфейс управления должен предусматривать возможность многоуровневой фильтрации тегов, позволяющий скрывать редко используемые ответвления дерева.
ПКРИ должен поставляться с уже включённой в комплект поставки предметно-тематической структурой тегов как минимум на английском языке.
Крайне желательна также возможность установления между тегами перекрестных взаимосвязей, что на порядок повышает полезность ПКРИ как базы знаний.
Вторым обязательным средством ассоциативно-семантической разметки ПКРИ является система внутренних перекрестных ссылок на объекты БД — папки в дереве, ЕХ, закладки внутри ЕХ, дисковые файлы компьютера (в том числе сетевые) и объекты сети Интернет. Как и в случае с тегами пользователь должен иметь возможность на своё усмотрение расставлять любое число именованных закладок внутри ЕХ, создавать где угодно в тексте гипертекстовые ссылки на вышеперечисленные объекты, а также иметь интерфейс управления и каталогизации закладок и ссылок.
Импорт данных из других приложений
Как правило, большая часть информационного наполнения ПКРИ поступает из внешних источников; чаще всего это открываемые в браузере вебстраницы, реже — документы, представляющие собой дисковые файлы и открываемые в окнах прикладных программ. Поскольку решение о включении того или иного фрагмента информации обычно принимается пользователем непосредственно в процессе первого чтения, оболочка ПКРИ должна обеспечивать полноценный импорт выбранного в окне внешнего приложения данных путём простого перетаскивания мышью без необходимости прибегать к использованию буфера обмена Windows.
При этом в случае перетаскивания непосредственно на значок папки в дереве оболочка должна автоматически создавать новую ЕХ, в которую и будут импортированы данные. При перетаскивании фрагмента в любое место уже существующей ЕХ данные должны вставляться как в текущую позицию курсора, так и динамически менять место вставки путём плавной промотки содержания.
При наличии в принимаемых данных собственной логической структуры, которая всегда присутствует в мало-мальски квалифицированно подготовленных документах, такая структура обязательно должна сохраняться.
При её отсутствии существующее оформление набора (сюда включается также созданное применением пользовательских стилей набора) также должно быть в основном сохранено, а его параметры — включены в таблицу пользовательских стилей оформления. При этом допускается игнорировать и приводить к значениям, принятым по умолчанию в среде самого ПКРИ, такие свойства набора, как размер абзацного отступа (но не его наличие), размер абзацных отбивок, форточки и фонарики, интерлиньяж, кернинг, разрядка, изменение ширины литеры, изменение высоты литеры.
Редактор ПКРИ должен сохранять структуру одно- двух и трёхуровневых перечней с элементами-абзацами, различая нумерованные и с открывающими наборными знаками.
Данные, корректно представленные в табличной форме в исходном документе, должны импортироваться в табличной форме, однако их художественное оформление при этом должно приводиться к принятому в оболочке по умолчанию.
Иллюстрации, завёрстанные в оборку текстом, при импорте должны перемещаться в ближайшее положение вразрез между двумя смежными абзацами. Значки, вставленные в позицию символа, должны оставаться на своих местах.
Кодировка набора и его оформление
ПКРИ должен обеспечивать форму записи символов, имеющую не менее 1 112 064 кодовых позиций (на ближайшее обозримое будущее этому условию c запасом соответствует кодировка UTF-8).
Поскольку для пользователя ПКРИ является единым хранилищем и источником знаний для обмена с другими приложениями, оформление набора внутри ЕХ имеет двоякую цель — максимально облегчить общую оценку содержания и нахождение нужных мест внутри неё, а также обеспечить передачу в другие окна однажды упорядоченных данных при полном сохранении их рубрикации.
Как минимум, при перетаскивании фрагмента ЕХ из окна ПКРИ в окно Word или OOO Writer рубрики, помеченные стилями рубрик 1 ступени, должны восприниматься принимающей программы также как рубрики первой ступени, рубрики 2 — как рубрики второй и так далее.
Инструкции, определяющие любые способы представления набора, отличного от основного текста, должны автоматически преобразовываться в стили абзаца (структурообразующие) или наборного оформления литер (выделительные). Последние пользователь должен иметь возможность делать связанными, чтобы необходимость раздельно назначать рубрикам гарнитуру, кегель, цвет и прочие оформительские свойства отсутствовала.
ПКРИ должен иметь продуманную и функциональную систему управления стилями структурирования и оформления набора, позволяющую уделять этому занятию только необходимый минимум труда и времени. Такая система должна обеспечивать возможность множественного выявления и обнаружения посторонней стилевой разметки на любом из уровней дерева, начиная от выделения внутри ЕХ с целью обеспечить единообразие стилевой разметки в среде ПКРИ.
Переносимость
ПКРИ в идеале должен быть переносимой программой, допускающей запуск с любого сменного носителя и по умолчанию полностью независимой от реестра Windows и дисковых элементов пользовательского профиля.
Средства автоматизации рутинных операций
ПКРИ должен поставляться с коплектом стилей набора по умолчанию, совпадающим по числу и функциональному назначению с соответствующими типовыми тегами HTML. При этом рубричные стили h1–h6 должны иметь в качестве параметра соответствующую номеру иерархическую ступень; такую ступень пользователь должен иметь возможность назначить любому из стилей.
Пользователь должен иметь возможность назначать любым стилям произвольные сочетания клавиш, позволяющие применить нужный стиль, не отрываясь от клавиатуры.
Пользователь должен иметь возможность произвольно изменять любые параметры стилей по умолчанию и создавать новые как с нуля, так и на основе существующих или унаследованных из первоисточника.
ПКРИ должен обеспечивать пользователю возможность циклического поиска и выделения найденных фрагментов ЕХ (в том числе множественное) как по именованному стилю, так и по произвольным сочетаниям и диапазонам параметров шрифтового оформления (кегель, гарнитура, начертание, цвет).
Пользователь должен иметь возможность быстро и удобно отменять абзацную стилевую разметку в позиции курсора, абзацную и (или) символьную в выделенном фрагменте, или в целом в рамках ЕХ.
Пользователю должен предоставляться полноценный интерфейс работы с символами Юникод: фильтрацию на уровне плоскостей, поиск символа по коду или названию, доступную с инструментальной панели настраиваемую область для отбора регулярно используемых символов, отсутствующих на клавиатуре.
Пользователь должен иметь в распоряжении все элементарные средства перемещения по тексту, включая перемещение от абзаца к абзацу.
Пользователь должен иметь в распоряжении полноценные средства цивилизованного выделения мышью: цикл слово по двойному щелчку — абзац по тройному — весь текст по тройному.
Пользователь должен иметь в распоряжении полноценные средства редактирования текста, в частности, клавиатурные сочетания для перемещения абзаца, в котором находится курсор, вверх или вниз, а также выделенного фрагмента набора — по строкам с учётом пробелов и знаков препинания.
Пользователь должен иметь возможность преобразовывать текст в таблицу и таблицу в текст с различными разделителями при разумном использовании стилей ячеек, если таковые имеются.
Поисковый инструментарий
Должен обеспечивать все самоочевидные варианты комплексного поиска и выборки согласно комбинациям критериев на основе перечисленных выше свойств и признаков: наличию или отсутствию тегов, слов, закладок и их комбинаций с отображением имеющихся взаимосвязей (хорошо бы также в профессиональной коммерческой версии — визуальным в виде динамической ассоциограммы). Перемещаясь по элеменатам в окне результатов поиска с клавиатуры, пользователь должен иметь возможность немедленно видеть соответствующий фрагмент ЕХ и отмечать соответствующие искомому для дальнейшей детализации.
Индекс
По выбору пользователя ПКРИ должен индексировать объёмную БД для ускорения поиска и контролировать актуальность индексного файла.