Планы по дальнейшему развитию OutWiker

Планы по дальнейшему развитию OutWiker

OutWiker 2.0 release вышел, теперь самое время начинать готовиться к следующей версии, которая будет иметь номер 2.1. Конечно, если в версии 2.0 обнаружатся какие-то неприятные ошибки, то еще будет версия 2.0.1 с исправлениями, но я надеюсь, что этого не понадобится.

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

Читать далее ‘Планы по дальнейшему развитию OutWiker’ »

OutWiker 2.0.0 release!!!

OutWiker 2.0.0 release!!!

Ну что ж, наступило время объявить OutWiker 2.0 стабильной версией. Выход этой версии немного задержался, но, наконец, новая версия закачана на сервер, и если вы принципиально не пользуетесь нестабильными версиями программ, то теперь можете обновлять OutWiker.

Для тех, кто не знаком с этой программой скажу, что OutWiker — это бесплатная программа с открытыми исходниками, которая позволяет вести древовидную базу заметок.

Основные особенности OutWiker следующие:

  • База заметок хранится в виде директорий на диске, а не в одном файле.
  • К заметкам можно прикреплять любое количество файлов. Прикрепленные таким образом картинки можно показывать на странице.
  • С помощью плагинов в программу можно добавлять новые возможности.
  • Можно проверять орфографию одновременно для нескольких языках.
  • Страницы могут быть разных типов. В данный момент поддерживаются текстовые страницы, страницы в формате HTML и вики-страницы. А с помощью плагина Markdown можно писать заметки с использованием языка Markdown.
  • На странице редактирования заметки работает раскраска синтаксиса HTML и викинотации.
  • Страницы можно помечать тегами (метками).
  • Можно устанавливать закладки на страницы.
  • Можно менять внешний вид страниц с помощью стилей CSS.
  • Каждой странице можно присвоить иконку из набора встроенных картинок или из внешнего файла.
  • Можно создавать ссылки между страницами.
  • Есть поиск текста в заметках и поиск по тегам.
  • Дерево заметок можно открывать в режиме «только для чтения».
  • Есть возможность работать сразу с группой меток.
  • Можно вставлять формулы в формате TeX (с помощью плагина TeXEquation).
  • Есть возможность раскраски исходных текстов программ на различных языках программирования (с помощью плагина Source).
  • Программа может работать в портабельном режиме, т.е. может хранить все настройки рядом с запускаемым файлом (для этого рядом с запускаемым файлом нужно создать файл outwiker.ini).
  • Программа работает под Windows и Linux.
  • Программа распространяется с открытыми исходниками (страница на github).

Прошлая стабильная версия OutWiker вышла более года назад (мне никак не удается сократить интервал между выходом стабильных версий), в этом посте я коротко пробегусь по основным изменениях, которые появились в версии 2.0 по сравнению с 1.9.

Читать далее ‘OutWiker 2.0.0 release!!!’ »

OutWiker 2.0.0.820 Release candidate 3

OutWiker 2.0.0.820 Release candidate 3

Вслед за недавним обновлением OutWiker сегодня выложил еще одну версию. На этот раз у меня две новости, как положено — хорошая и плохая. Плохая заключается в том, что эта версия пока еще не релизная, а хорошая — был пойман и уничтожен баг, который, судя по всему, мешал работе плагина UpdateNotifier. Про то, что с этим плагином что-то не так мне писали давно, но я этот плагин собираюсь кардинально переделывать, поэтому не спешил разбираться с проблемой, а сейчас удалось получить лог работы, судя по которому проблема крылась не в плагине, а в основной программе. Ошибка оказалась неприятной, хотя исправить ее оказалось достаточно легко. А после этого уже с помощью работающего плагина UpdateNotifier обнаружилось, что у некоторых плагинов были неправильно указаны их версии. Я не буду вдаваться в технические подробности, но косячные плагины пришлось обновить — DataGraph, PageTypeColor, ReadingMode, Source и TexEquation. На работу плагинов эта ошибка никак не влияла.

Также была исправлена ошибка (#350) из-за которой под Linux не отображались страницы, имена которых содержат знак «#». Спасибо пользователю Fox, который сообщил об этой ошибке.

Скачать свежую нестабильную версию как всегда можно по ссылке — http://jenyay.net/Outwiker/Unstable.

OutWiker 2.0.0.818 Release Candidate 2 и обновление плагинов

OutWiker 2.0.0.818 Release Candidate 2 и обновление плагинов

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

С точки зрения пользователя предыдущей нестабильной версии OutWiker, в новой версии изменений практически нет. Разве что поправил одну ошибку в википарсере. В основном изменения относились к системе сборки, а также я продолжаю писать документацию о внутреннем устройстве OutWiker. Например, написал большой раздел о том, как происходит сборка OutWiker под разные операционные системы.

Кроме того, обновил два плагина — WebPage и Snippets. В WebPage была исправлена ошибка, из-за которой под Windows не работал импорт локальных веб-страниц — страниц, уже скачанных из интернета и сохраненных на жесткий диск (за обнаружение бага спасибо пользователю Narberal Gamma), а в плагине Snippets был немного улучшен внешний вид некоторых элементов интерфейса без добавления каких-либо функциональных возможностей.

Итак, еще одну предрелизную версию вы можете скачать здесь. Надеюсь, что релиз состоится скоро.

Создаем красиво оформленные блоки текста в OutWiker с помощью Snippets

Создаем красиво оформленные блоки текста в OutWiker с помощью Snippets

Когда я рассказывал о новом плагине Snippets, то писал, что плагин может работать в режиме викикоманды, т.е. вы можете создать шаблон, а потом его вызвать в тексте викистраницы с помощью команды (:snip:), например, так:

(:snip file=»Имя шаблона»:)Какой-то текст(:snipend:)

На первый взгляд может показаться непонятным, зачем это надо, а ведь по задумке благодаря такой возможности вы можете создавать свои элементы оформления, не создавая отдельного плагина. Достаточно, чтобы вы знали HTML, CSS (и для особо продвинутых возможностей — JavaScript). Один из таких примеров я хочу показать в этом посте.

Читать далее ‘Создаем красиво оформленные блоки текста в OutWiker с помощью Snippets’ »

OutWiker 2.0.0.806 (unstable) и плагин Markdown 1.1

OutWiker 2.0.0.806 (unstable) и плагин Markdown 1.1

Что-то в последнее время разработка OutWiker под Linux (точнее, Ubuntu) превращается в бег на месте из-за изменений в этом дистрибутиве. С выходом каждой следующей версии Ubuntu разработчики что-то изменяют, что ломает обратную совместимость. Но, надо сказать, что Ubuntu 16.10 в целом получился лучше Ubuntu 16.04 LTS — в нем было исправлено несколько, появившихся в версии 16.04 ошибок. Уже не в первый раз замечаю, что больше всего проблем возникает именно в LTS-версиях Ubuntu, хотя, казалось бы, они наоборот должны быть самые безглючные. Например, в Ubuntu 16.10 была исправлена ошибка со сборкой wxPython, на которую я жаловался полгода назад.

В Ubuntu 16.10 опять изменился способ сборки wxPyhton, но это особо не сказалось на разработке, правда, сразу после релиза Ubuntu 16.10 пришлось сделать сборку OutWiker под этот дистрибутив.

Из-за всех этих пертурбаций опять задумался о том, чтобы OutWiker собирать в бинарный пакет, чтобы не зависеть от способа сборки wxPython в Ubuntu. В этом случае можно будет еще посмотреть в сторону snap-пакетов, с которыми я давно хочу разобраться. Но займусь я этим не раньше, чем выпущу финальный релиз OutWiker 2.0. Релиз я собираюсь выложить уже в ближайшие пару месяцев. Поэтому, начиная с сегодняшней версии, OutWiker имеет статус не dev, а beta. Есть еще некоторые моменты, которые я хочу переделать до релиза, и надеюсь, что в январе-феврале финальная версия OutWiker 2.0 будет готова.

Читать далее ‘OutWiker 2.0.0.806 (unstable) и плагин Markdown 1.1’ »

OutWiker 2.0.0.802 и плагин Markdown

OutWiker 2.0.0.802 и плагин Markdown

Сегодня выложил новую нестабильную версию OutWiker с очень важными изменениями.

Во время разработки OutWiker я очень бережно отношусь к обратной совместимости. Программа не должна падать или выдавать непонятные пользователю сообщения об ошибках после очередного обновления как самой программы, так и плагинов. Однако в процессе развития иногда хочется переделать какой внутренний участок кода, который уже может использоваться каким-нибудь плагином. Момент перехода от версии 1.x к 2.0 — удачное время, когда можно немного поломать обратную совместимость, чтобы облегчить дальнейшее развитие. Но если у пользователей установлены плагины для старых версий программы, то программа в любом случае не должна падать, плагины должны просто отключаться, и при этом еще сообщать пользователю причину своего отключения. Именно это я и сделал в данной версии.

Читать далее ‘OutWiker 2.0.0.802 и плагин Markdown’ »

OutWiker 2.0.0.800 (unstable) и обновления всех плагинов

OutWiker 2.0.0.800 (unstable) и обновления всех плагинов

Сегодня я выложил новую нестабильную версию OutWiker с юбилейным номером 2.0.0.800. В этой версии были исправлены некоторые ошибки и добавлены новые возможности.

Но сначала хочется поблагодарить Åke Engelbrektson, который провел титаническую работу и перевел на шведский язык не только основной интерфейс OutWiker, но и всех плагинов. Поэтому сегодня я также выложил новые версии для всех плагинов. Основное изменение для них одно — был добавлен шведский язык, хотя в некоторых плагинах были сделаны незначительные исправления. Для примера, на следующем скриншоты вы можете увидеть, как выглядит окно настроек на шведском языке.

swedish

Читать далее ‘OutWiker 2.0.0.800 (unstable) и обновления всех плагинов’ »

OutWiker 2.0.0.798 (unstable) и мысли по поводу изменения интерфейса

OutWiker 2.0.0.798 (unstable) и мысли по поводу изменения интерфейса

Продолжаю работать над развитием OutWiker. В очередной нестабильной версии, которая получила номер 2.0.0.798, изменения относятся в первую очередь к улучшению интерфейса.

В этой версии был переписан кусок кода, отвечающий за работу иконки в трее (области уведомления). Пользователи Windows не должны заметить никаких изменений, а вот под Linux иконка в трее — это была большая проблема в некоторых оболочках. Если, например, в XFCE все работало как надо, то в Unity ее просто не было, а в KDE программа зависала при попытке свернуть ее в трей. Теперь работоспособность иконки еще не идеальна, но стала намного лучше: в Unity она теперь полноценно работает.

tray

Остались еще некоторые проблемы с KDE — в принципе там иконка тоже работает, но она отображается в виде белого пятна. Я пока не понял, из-за чего это происходит, я перепробовал разные форматы для иконок, включая PNG, ICO и даже векторный SVG, но результат оставался неизменным. Поискав в интернете описание подобной проблемы, я наткнулся на многие жалобы о том, что программы, написанные на основе GTK не отображают иконки в трее KDE, но ни одного подходящего решения не нашел. Надо сказать, что с KDE у меня давно дела не ладятся — он у меня постоянно падает или глючит другим образом, иконки в трее от других приложений тоже ведут себя не самым хорошим образом.

Читать далее ‘OutWiker 2.0.0.798 (unstable) и мысли по поводу изменения интерфейса’ »

Новая нестабильная версия OutWiker (2.0.0.796)

Новая нестабильная версия OutWiker (2.0.0.796)

Прошел месяц с момента выкладывания предыдущей нестабильной версии OutWiker. За это время была проделана довольно большая работа, хотя она не везде будет видна с точки зрения пользователя.

Во-первых, под впечатлением от книги Непрерывное развертывание ПО я взялся за автоматизацию процесса выкладывания новых версий и за большой рефакторинг системы сборки. Если раньше все сценарии сборки были собраны в одном большом fabfile.py в корне исходников, то теперь из него был выделен пакет buildtools, где по разным модулям разнесены сборки для разных операционных систем и другие вспомогательные скрипты. В группе во Вконтакте меня спрашивали по поводу того, как организована сборка, но тогда она еще находилась в скомканном состоянии, а сейчас ее не стыдно описать в документации, хотя процесс автоматизации выкладывания сборок еще не завершен.

Читать далее ‘Новая нестабильная версия OutWiker (2.0.0.796)’ »