OutWiker 1.9.0.780 (unstable)

OutWiker 1.9.0.780 (unstable)

Месяц подходит к концу, а значит пора выкладывать очередную нестабильную версию OutWiker, которая теперь имеет номер 1.9.0.780. В этой версии не появилось каких-либо новых возможностей, но была проделана большая «работа над ошибками». Во-первых, был поправлен диалог настроек, потому что оказалось, что при определенных условиях в этот диалог не умещались кнопки OK / Отмена. И, во-вторых, была исправлена ошибка, которая могла приводить к падению программы при закрытии большой заметки (во время переключения на другую заметку). Эта последняя ошибка дала повод к глобальному рефакторингу кода, связанного с проверкой орфографии и раскраской викисинтаксиса. Код стал сейчас заметно чище и добавились новые возможности для плагинов, связанные с проверкой орфографии.

Кроме того, выложил новую версию плагина PageTypeColor. В версии 1.0.1 были сделаны небольшие оформительские исправления, не влияющие на основной функционал.

В заключении еще раз хотелось бы спросить мнение у пользователей по поводу способа хранения заметок, а заодно сформулировать для самого себя проблему (в прошлый раз мы с вами вместе отлично решили, как быть с таблицами на викистраницах).

Итак, в данный момент в каждой папке заметки содержатся файлы __page.text с текстом заметки, __page.opt с параметрами страницы и, возможно, __icon.png со значком и __content.html — окончательно оформленный HTML. В пожеланиях мне несколько раз писали просьбу уменьшить количество этих файлов (например, хранить все значки страниц в одном месте). С одной стороны это не лишено смысла для ускорения работы с файловой системой. Хранить значки все вместе я не хочу, потому что по задумке каждая страница в дереве должна открываться как корень независимого дерева, а если иконки будут храниться где-то в другом месте, то они потеряются. Хотя сейчас, во время написания этих строк пришла идея, что иконки можно хранить в бинарном виде в файле настроек __page.opt. Это с одной стороны.

С другой стороны мне несколько раз писали, что хранят дерево заметок в системе управления версиями (SVN, Git и т.п.), но при этом постоянно меняется файл __page.opt, практически на каждый чих. Это действительно так, потому что в этом файле хранятся кроме совсем необходимых данных вроде тегов и типа страницы такие параметры как дата последней правки страницы, свернута или развернута эта страница в дереве заметок, хэш-сумма виикистраницы, чтобы можно было бы не каждый раз создавать HTML по исходному тексту страницы.

И вот некоторое время назад у меня возникла идея такие второстепенные параметры вынести в отдельный файл (назовем его пока условно __page.opt2), тогда эти файлы можно добавить в игнор в системе контроля версий, а при получении новой копии базы заметок потеряются данные, которые не являются жизненно важными (куда отнести время последнего изменения страницы — это отдельный вопрос, но я бы его скорее отнес бы к не важным параметрам).

Но при таком подходе становится еще больше файлов, и теоретически это может привести к некоторому замедлению открытия дерева заметок (хотя это надо проверять).

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

Давайте устроим небольшое голосование на эту тему.

Количество файлов в каждой заметке OutWiker

Показать результаты

Загрузка ... Загрузка ...

PS. Хочу напомнить, что у OutWiker есть группа во Вконтакте, а также недавно появился канал в Telegram.

PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.

Пожалуйста, оцените запись

УжасноПлохоТак себеХорошоОтлично (Количество голосов: 1, средняя оценка: 5,00)
Загрузка...

комментариев 7

  1. Юрий:

    Доброго времени суток. Я храню в git, мне было бы удобно __page.opt2. А сколько там файлов — да какая разница, глазами все равно туда смотришь редко. IO при pagecache (а ram сейчас кругом полно) и ssd (которые сейчас везде) не имеет значения.
    P.S. спасибо еще раз за отличную программу

  2. Wave:

    Угу, git.

    Честно говоря, мешает в основном только постоянный пересчёт хэша, expand и частично order с curposition.
    Даты создания-изменения не сказать, что особо мне нужны, но всё же хочется иметь их в сохраняемых данных (дневник тренировок, просто дневник и пр.).

    Кроме хэша, кстати, на любой, не на любой чих, но несколько раз наблюдал, как оказывались модифицированными всякие jquery.fancybox.css — а новыми в них оказывались только концы строк. Thumbnail’ы, кажется, тоже время от времени перегенерились.

    Если так хочется уменьшить количество файлов, можно opt2 совместить с html. А то и туда же впихнуть иконку [в бинарном виде], если доводить до абсурда.

  3. Wave:

    А в чём проблема хранить все иконки в одном месте, а в opt писать, какая именно иконка применяется? Если речь о git\svn, то в случае чего, можно набор иконок из архива с программой достать, они в любом случае там есть. Если о перемещении страниц между разными деревьями данных, то тем более проблемы не вижу, так в конфиге ссылка на иконку и уедет. Походу, единственное, что приходит в голову — только когда страницы смотрятся вне программы OutWiker, но тогда тем более проблемно включать бинарь иконки в текст конфига.
    Ну или может замедлиться отрисовка дерева страниц? Вместо того, чтобы считать иконку с диска, нужно считать конфиг и… Так по-моему при правильном алгоритме отрисовка только ускориться должна. Не надо на каждую страницу по лишнему считыванию файла делать. Набор иконок в памяти, конфиг читается в любом случае — вот и отображать на лету.

  4. Wave:

    Хотя вообще-то если хранить «необязательные» данные в итоговом html, я опасаюсь вот ещё о чём. Когда программа перегенерирует html, интерфейс ощутимо подмерзает. Это заметно на скромных ноутбуках с медленными винтами. Если html будет перестраиваться ещё и на каждое сворачивание-разворачивание узла и смену позиции курсора, то программа станет заметно тормозней.

  5. Ден:

    Нужен вариант «Можно увеличить, если это не снизит время отклика более, чем на 10%». Я за него.

  6. Irina:

    Здравствуйте! Очень привлекла Ваша программа, поэтому решила оставить мои пожелания, может быть покажутся полезными, так как вижу что Вы много времени тратите на ее продвижение. Я более 4х лет пользуюсь ВикидПад, до этого были и есть другие программы для организации работы. Скажем, «филолог», как Вам написал где-то в комментах один человек. Хотя и занимаюсь веб дизайном периодически, но больше дизайном, и плагин с HTML вообще удивительная и полезная идея. Так вот в чем моя проблема, «филолога» — я принудительно приспособилась к логике ВикидПад и не могу никак понять с чего начать и тд. Пожалейте таких как я и наше время, опубликуйте небольшую статью для чайников, где Вы расскажете как установить программу, как сделать ее портабельной (со скринами), как пользоваться основными полезными функциями ради которых мы выбрали Вашу программу из множества подобных. Благодаря этой статье множество «чайников» и лентяев с благодарностью начнут скачивать и пользоваться этим полезным инструментом. Заранее спасибо!

  7. Jenyay:

    Спасибо за отзыв. Пожалуй, Вы правы по поводу того, что нужно писать статьи по основам использования программы. Открою небольшую тайну, я даже когда-то начал записывать скринкаст про то, с чего начать ее использование, а потом долго не доходили руки до обработки видео, а еще позже решил, что скринкаст уже немного устарел, и его нужно перезаписать. После релиза может быть все-таки его доделаю.

Leave a comment

Subscribe without commenting