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.
Краткий список изменений выглядит следующим образом:
- Переход на библиотеку wxPython 3.0.
- В редактор добавлена возможность дублировать текущую строку с помощью горячей клавиши или меню.
- В редактор добавлена возможность удалять текущую строку с помощью горячей клавиши или меню.
- В редактор добавлена возможность перемещения строк вверх / вниз с помощью горячих клавиш или меню.
- В редактор добавлена возможность для слияния строк с помощью горячей клавиши или меню.
- В редактор добавлена возможность удаления слов слева / справа с помощью горячей клавиши или меню.
- Добавлены пункты меню и горячие клавиши для перемещения по тексту.
- Добавлены пункты меню и горячие клавиши для копирования / вырезания текущей строки в буфер обмена.
- В редактор добавлены возможности для редактирования слов и строк.
- Добавлен параметр командной строки «—page, -p» для выбора страницы при запуске.
- Добавлен параметр командной строки «—normal» для отключения свертывания окна при запуске.
- Добавлен параметр командной строки «—debug» для запуска в режиме отладки.
- Добавлена поддержка шведского языка.
- Восстановлена работоспособность иконки в трее под Linux.
- Добавлена возможность создавать псевдонимы для страниц.
- Переделан интерфейс для установки горячих клавиш.
- Добавлена настройка для изменения цвета фона поля редактора.
- Добавлена настройка для изменения цвета фона выделенного текста.
- Удалена итальянская локализация.
- Разные улучшения в интерфейсе программы.
А теперь рассмотрим их чуть более подробно.
Одно из самых крупных изменений, которое произошло в этой версии, — это переход с wxPython 2.8 на wxPython 3.0. Пользователи Windows этого не должны заметить, поскольку на внешний вид программы это никак не сказалось, а вот пользователи Ubuntu теперь могут устанавливать стабильную версию OutWiker. Дело в том, что в Ubuntu 16.04 была удалена библиотека wxPython 2.8, из-за чего пришлось срочно переписывать код с расчетом на wxPython 3.0. Об этой проблеме я когда-то писал в этой записи. Также под Linux теперь снова работает отображение иконки в трее — после очередного обновления Ubuntu в старой версии она пропадала. Заодно решилась проблема с зависанием программы в графической оболочке KDE при попытке свернуть OutWiker в трей.
Основные направления, в которых велась работа над OutWiker 2.0 — это повышение удобства интерфейса, расширение возможностей для плагинов и создание новых плагинов. Для OutWiker 2.0 сейчас написаны три новых плагина. Первый из них — плагин Markdown, который, как можно догадаться по названию, добавляет возможность создания заметок в формате Markdown. На данный момент плагин поддерживает только базовые возможности формата Markdown, но в перспективе я собираюсь добавить к нему и некоторые расширения, в первую очередь для раскраски кода.
Второй плагин, который требует OutWiker 2.0, — это Snippets. С помощью этого плагина можно создавать текстовые шаблоны, которые затем можно будет вставлять на страницы. Плагин работает на очень мощном движке для работы с шаблонами — Jinja2, хотя многие возможности этой библиотеки не выведены в интерфейс плагина, чтобы не пугать обилием возможностей простого пользователя.
И еще один новый плагин предназначен для уверенных пользователей OutWiker — HackPage. С помощью этого плагина можно менять параметры заметок, которые не показаны обычным пользователям. Например, можно устанавливать псевдоним страницы, чтобы отображаемое имя заметки не совпадало с именем папки в файловой системе. Теперь этот плагин включает в себя возможности старого плагина ChangePageUID для изменения идентификатора заметки.
Недавно я сильно переделал плагин TeXEquation, предназначенный для создания формул в формате TeX. Теперь формулы создаются не в виде картинки с помощью утилиты mimeTeX, а с помощью JavaScript-библиотеки KaTeX, что решило проблему с отображением формул на странице с темным фоном, да и сами формулы теперь выглядят более аккуратно.
Еще одно крупное внутреннее изменение связано с форматом плагинов. Я не буду вдаваться в технические подробности, чуть позже я напишу подробную статью о плагинах в технической документации. Но суть в том, что пришлось сломать обратную совместимость со старыми версиями плагинов, поэтому плагины при переходе не OutWiker 2.0 нужно будет обновить. Разумеется, все плагины, находящиеся на странице со списком плагинов, уже давно способны работать в OutWiker 2.0, а если у вас установлены последние версии плагинов, то скорее всего вам беспокоиться об этом не придется.
Кстати, техническая документация, о которой я говорил выше, тоже появилась сравнительно недавно, и я ее активно дополняю — в ней еще многое предстоит написать и перевести на английский язык.
В новой версии OutWiker много внимания было уделено повышению удобства работы с редактором заметок с помощью клавиатуры, поэтому были добавлены действия для дублирования / удаления строк, перемещения строк, действия для работы с отдельными словами. Не всем этим действиям присвоены горячие клавиши по умолчанию в надежде на то, что вы сами выберите удобные для вас сочетания клавиш. На самом деле в редакторе заметок еще есть, что улучшать, поэтому работа над редактором будет продолжаться.
Кстати, интерфейс настроек горячих клавиш тоже был переделан.
В диалоге настроек появились несколько новых параметров, связанных с оформлением редактора кода — теперь у бо́льшего количества элементов интерфейса можно настраивать цвета.
Для продвинутых пользователей было добавлено несколько новых параметров командной строки. На мой взгляд самый интересный из них — параметр «-p» или «—page», с помощью которого можно указать, какую страницу открываемой базы заметок надо открыть при запуске программы. В качестве значения этого параметра может быть либо идентификатор страницы, либо относительный путь до нее. Использование данного параметра может выглядеть примерно так:
outwiker.exe —page=»Страница 1/Страница 2/Страница 3″ «C:\temp\samplewiki»
или
outwiker.exe —page=»page://__1640eea0-1bb0-453b-ba4c-07f1c298ce76″ «C:\temp\samplewiki»
Два других новых параметра («—normal» и «—debug») предназначены больше для внутреннего использования.
К сожалению, из новой версии пришлось исключить итальянскую локализацию, поскольку парень, который поддерживал эту локализацию, куда-то пропал. Зато теперь появилась шведская локализация благодаря Åke Engelbrektson, за что ему огромное спасибо. И как всегда большое спасибо тем, кто поддерживает в актуальном состоянии украинскую локализацию.
Если коротко, то это основные изменения в данной версии, но на самом деле была проделана большая работа внутри программы, не заметная пользователям, в том числе связанная с созданием системы сборки, причем работа над ней еще продолжается.
Теперь после релиза мне нужно подумать о том, какие из имеющихся задач решать в первую очередь к следующему релизу. Следующую стабильную версию я хочу подготовить через сравнительно небольшой интервал времени (пока ориентируюсь на декабрь этого года), поэтому большого количества кардинальных переделок в ней скорее всего не будет. В первую очередь хочу сосредоточиться на улучшении интерфейса и добавлении новых возможностей для викинотации. Но о планах на будущее я планирую написать отдельный пост.
Напомню, что у OutWiker есть группы в разных соц. сетях, где вы можете следить за развитием проекта:
PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.
vanyok:
Спасибо, отличная новость!
Знаю, что советичиков традиционно много, и в Задачах https://github.com/Jenyay/outwiker/issues там и так 14 страниц что ещё сделать хочешь… Может, добавишь в список создание портативной версии для https://portableapps.com/ ? Это очень облегачает установку и обновление портативных программ, кроме того там уже созданы утилиты для упаковки программ в их формат .paf, а так как для OutWiker уже есть возможность хранить настройки в директории с самой программой, сложностей быть не должно, надеюсь.
13 июня 2017, 11:25 дпСпасибо!
Jenyay:
А создайте на github задачу.
13 июня 2017, 3:47 пп