OutWiker 1.3.2 (что нового)

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

outwiker_screen outwiker_screen_2

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

Сухой остаток от списка изменений выглядит следующим образом:

  • Новый интерфейс выбора иконок.
  • Добавил новые иконки из наборов famfamfam.com и yusukekamiyamane.com.
  • Новая иконка программы (спасибо Алексею Набродову).
  • В пределах одной страницы теперь работают якоря.
  • Новый элемент викинотации для добавления якорей.
  • Значительно уменьшено моргание и обновление интерфейса при перемещении по дереву.
  • Справка на английском языке (спасибо Илье Чешкову за исправления моего корявого перевода с помощью Google Translete 🙂 ).
  • Добавлены горячие клавиши для тега <PRE> на HTML-странице и [@…@] на викистранице.
  • Добавлены горячая клавиша и кнопка для [[<<]] на викистранице.
  • Добавлены кнопки для тегов <code> и <blockquote> на HTML-странице.
  • Добавлена кнопка «Обновить» для панели с прикрепленными файлами.
  • При нажатии на иконку в трее, свернутое окно разворачивается, а развернутое теперь сворачивается.
  • Исправлено: под Windows не работали ссылки на страницы, имеющие в своем пути символ «#».
  • Исправлена ошибка, возникавшая при испорченном файле __page.opt в корне вики.
  • Другие исправления ошибок в программе и переводе.
  • Рефакторинг кода.


Теперь пройдемся по изменениям, которые наиболее заметны для пользователя. Во-первых, огромное спасибо Алексею Набродову (aka Averrin) за нарисованную картинку для новой иконки вместо ужасной старой. Кстати, Алексей прислал несколько интересных патчей для программы, но в основную ветку исходников эти новые возможности я буду встраивать, начиная со следующей версии.

Во-вторых, я переделал интерфейс выбора иконок для заметок, теперь он выглядит следующим образом:

outwiker_pagecreate

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

В версии OutWiker 1.3.2 значительно уменьшено моргание интерфейса при переключении между страницами за счет того, что интерфейс главного окна не перестраивается каждый раз под страницу с выбранным типом, а изменяется тогда, когда тип выбранной страницы становится дроугим, и еще удалось выбросить некоторые операции Enable/Disable, которые были нужны в старом HTML-движке, чтобы он не падал при быстром переключении страниц. С движками WebKit/IE, которые используются, начиная с версии 1.3.0, такой проблемы замечено не было.

Теперь в пределах одной страницы работают якоря (anchors). На HTML-странице они устанавливаются, как и положено с помощью тега <a name=»anchorname»>…</a>, а для установки тега на викистранице теперь используется запись вида [[#anchorname]]. Ссылки на якорь ставятся, как обычная ссылка: [[#anchorname | текст ссылки]] или [[текст ссылки -> #anchorname]].

Для английского языка добавил англоязычную справку. Правда, с переводом рус -> eng у меня туго, поэтому огромное спасибо Илье Чешкову ([info]ilyuxaif) за выправление нашего с Google Translate перевода. 🙂

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

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

Еще раз напомню ссылку на страницу программы — https://jenyay.net/Soft/Outwiker

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

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

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

комментария 42

  1. Александр:

    Здравствуйте.

    Пытаюсь начать пользоваться программой Outwiker v1.8.1 (пробовал и 1.8.0) и столкнулся с такими проблемами:

    1. Каков смысл команды (:childlist:)? Я понимаю, что она выводит список дочерних страниц в виде гиперссылок. Однако ссылки не работают. При нажатии на ссылку открывается окно проводника Windows, где храниться дочерняя страница. Так и задумано? Просто я предполагал, что должна открываться соответствующая страница.

    2. Не работают якоря внутри страницы. Точнее первый раз срабатывает, потом поднимаюсь вверх и уже ни один другой якорь не работает. Вот пример wiki кода.

    # [[Первый -> #first]]
    # [[Второй -> #sec]]
    # [[Третий -> #last]]

    !!!! Первый [[#first]]

    !!!! Второй [[#sec]]

    !!!! Третий [[#last]]

  2. Jenyay:

    Александр, здравствуйте.

    Вы правильно понимаете, как все должно работать. А какая у Вас версия Windows? Я еще попробую повторить ошибки, которые у Вас получаются. Можете прислать на jenyay.ilin@gmail.com файл outwiker.log из папки с настройками?

  3. Александр:

    Не ожидал такой оперативности.
    У меня Windows 7 SP1 32-bit. Забыл сказать, возможно, важный момент — у меня portable версия вашей программы. Я качал не инсталятор, а 7z архив отсюда:
    https://jenyay.net/uploads/Soft/Outwiker/outwiker_1.8.1_win.7z
    Если папка с настройками вот эта «c:\Users\*\AppData\Roaming\outwiker\», то файл «outwiker.log» в ней пуст (0 байт).

  4. Jenyay:

    > то файл «outwiker.log» в ней пуст (0 байт)

    Хорошо, значит ошибок никаких не происходило. Надо разобраться с поведением Internet Explorer, который показывает HTML-страницы.

    Тогда можете прислать какой-нибудь пример страницы, где проявляются проблемы?

  5. Александр:

    ВыслаЛ вам на почту пример вики с моими проблемами. Файл TEST.zip.

  6. Александр:

    Кстати, пробовал открыть сгенерированный html с якорями через ie. Не считая проблем с кодировками, всё в порядке. Якоря работают.

  7. Jenyay:

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

  8. Александр:

    Игрался сейчас с настройками IE. Вроде ничего особого не делал:
    — изменил домашнюю страницу;
    — почистил журнал и все личные данные;
    — изменил, но потом возвратил настройку «При открытии ссылок из других программ использовать»;
    — ну и ещё что-то наверняка делал.
    После этого при запуске программы напрямую с exe файла стали работать и якоря и ссылки.
    Я вообще запускаю программу через значок в total commander на панели инструментов, при этом задав такие «параметры запуска»: «d:\OutWiker\help\help_ru\__page.opt». Также пробовал через bat файл с таким текстом:
    outwiker.exe «help\help_ru\WIKI\__page.opt»
    Если задавать путь к «WIKI» по умолчанию как параметр, чтобы не открывать её постоянно, то якоря и ссылки не работают. Хотя ранее у меня даже после ручного запуска программы и выбора WIKI не работали ни ссылки ни якоря. Ещё попробую, что будет дома. Может просто сегодня день удачный. Однако хотелось бы запускать программу с открытой WIKI, а не выбирать её постоянно.
    Попробую дома и отпишусь (если не сегодня, то завтра).

  9. Александр:

    Пробовал на Win XP SP3 32 bit — всё работает прекрасно как ни запускай.
    Пробовал на Win 7 SP1 64 bit — работает только если запускать прямо с exe, а если запускать с параметром (путь к WIKI), то не пашет.
    Видать с 7-ками какая-то запара или с IE, которые на них стоят.

  10. Jenyay:

    Хорошо, попробую.

  11. Александр:

    На Win 7 sp1 32-bit игрался с флагом «При запуске открывать последний открытый файл». При этом я перезагружал программу. Эффекта ноль. Якоря и ссылки через (:childlist:) всё-равно не работали. Но после того, как я поменял язык с «Авто» на «ru_RU» — программа заработала. Однако поменяв его обратно, программа продолжила работать нормально.
    После некоторых тестов обнаружил закономерности, описанные ниже.
    1. КАК ЗАПОРОТЬ ПРОГРАММУ:
    Запустить exe-шник с параметром, указывающим путь к «WIKI» (путь может быть как абсолютный, так и относительный). Достаточно даже просто запустить и можно сразу закрыть. После этого программа перестаёт нормально работать даже если её запускать без параметров.
    2. КАК ВОССТАНОВИТЬ ПРОГРАММУ:
    2.1. открываем программу нормально (через exe-шник без параметров);
    2.2. заходим в общие настройки интерфейса
    2.3 Если галочка «При открытии ссылок из других программ использовать» стоит, то переходим на пункт [2.4], иначе переходим на пункт [2.6]
    2.4. СНИМАЕМ галочку «При открытии ссылок из других программ использовать»;
    2.5. перезагружаем программу Outwiker (открыв через exe-шник без параметров);
    2.6. открываем свою WIKI;
    2.7. заходим в настройки и СТАВИМ галочку «При открытии ссылок из других программ использовать»;
    2.8. на всякий случай перезагружаем программу ещё раз;
    2.9. забываем про возможность запускать exe-шник с параметрами :(;
    2.10 радуемся нормальной работе программы :).

    Почему, ИМХО, у меня воскресла программа после смены языка: скорее всего в тот раз у меня галочка была снята, я запустил программу без параметров, поставил галочку и поменял язык одновременно и бац — работает. Других вариантов пока нет.

    Почему, ИМХО, у меня возникла эта проблема (только на win7 sp1 x86 & x64): не найдя сразу настройку «При запуске открывать последний открытый файл» я запускал exe-шник с параметром и меня всё устраивало. Тем самым программа запоролась. И потом когда я дошёл до якорей и (:childlist:) — они уже не работали. Скорее всего не работали не только якоря и (:childlist:), просто я пока ещё мало чем пользовался.

  12. Александр:

    Извиняюсь. Не знаю откуда я взял это название — «При открытии ссылок из других программ использовать», но имелась в виду только галочка «При запуске открывать последний открытый файл».

  13. Jenyay:

    На самом деле странно, у меня всегда включена галка «При запуске открывать последний открытый файл», и подобных проблем не возникало. И сейчас не могу ее повторить, тоже на Win 7 Sp1.

  14. Александр:

    Странно, а запускать программу с параметром (путём к файлу __page.opt) не пробовали ?

  15. Jenyay:

    Пробовал. Тоже работает.

  16. Александр:

    Кстати, что вы думаете о добавлении таких функций (как некоторых в меню «Инструменты»):
    1. «Установить страницам в ветке флаг перехода на просмотр», чтобы при следующем открытии все страницы были уже в режиме просмотра.
    2. «Установить страницам в ветке флаг перехода на WIKI», чтобы при следующем открытии все страницы были уже в режиме редактора WIKI кода.

    А также сделать галочку на панели инструментов «Открывать страницы на просмотр». Если галочка стоит, то программа в обход индивидуального флага каждой страницы открывает страницу на просмотр. При этом индивидуальный флаг не меняется.

  17. Jenyay:

    Мне кажется, что для каждой страницы — это перебор, а вот настройку, в каком режиме открывать страницы (в режиме просмотра, редактирования или в последнем открытом режиме) сделать можно.

  18. Александр:

    > Мне кажется, что для каждой страницы — это перебор …
    Тут я имел в виду следующее:
    К примеру я занимаюсь созданием какой-то ветки своей большой вики, например «Libre Office». Вот насоздавал я там кучу всего и у меня все страницы открыты как попало: кто в вики, кто на просмотр, кто в html. Я считаю создание вики для этой ветки пока законченным и хочу все страницы перевести в режим просмотра.
    P.S. Хотя возможно вы и правы, если бы была галочка «в каком режиме открывать страницы», то 2 другие функции потеряли бы свою актуальность. Тем более, что я их придумал лишь для того, чтобы после больших изменений вики у меня гарантировано все страницы открывались на просмотр, а не как попало, т.е. не так как они были закрыты (хотя это безусловно тоже нужно оставить).

  19. Jenyay:

    Попробовал еще на двух компьютерах — что-то не могу повторить такой глюк. Может быть это связано с какими-то настройками IE?

  20. Александр:

    > Может быть это связано с какими-то настройками IE?
    Возможно. Да я их вкратце проглядывал, но я не понимаю из-за какой настройки могут быть такие проблемы. В любом случае я разобрался из-за чего возникла проблема (в том плане, что понял как я отловил глюк) и понял как её решить на моём компе. Я, честно говоря грешил на главную функция (типа main в c/c++), которая принимает параметр — путь к файлу, но если вы пытались открывать exe-шник с параметрами и у вас всё ОК, то остаётся грешить только на IE. Но я с ним никогда не работаю, поэтому и не знаю что там может быть и куда рыть. Если бы я знал Python (вроде на нём же написано) я бы даже посмотрел дебаггером, покуда я единственный с такой проблемой, а так «знания Python-а» = «0».
    А вообще жаль, конечно, что у вас не вышло воспроизвести проблему. Так со стороны поглядеть — так можно подумать что у меня параноидальная шизофрения.
    P.S. Кстати, идея, я на всех компах работаю с ограниченными учётными записями (не админскими). Может быть это как-то влияет ?!? Хотя, ИМХО, вряд ли. Как-то не приходило раньше это в голову попробовать под админом, но это я смогу попробовать только дома. Да и я, наверняка, не единственные кто работает не под админом.
    P.P.S. И последнее, планируете ли вы внедрение галочки/списка с возможностью выбора способа открытия страниц по умолчанию? Если да, то планируете ли вы это добавить в следующей версии программы?

  21. Jenyay:

    А в пути до вики нет каких-нибудь хитрых символов вроде греческих букв или чего-то подобного?

    > И последнее, планируете ли вы внедрение галочки/списка с возможностью выбора способа открытия страниц по умолчанию? Если да, то планируете ли вы это добавить в следующей версии программы?

    Если говорить про стабильную версию, то скорее всего сделаю. Что касается нестабильных версий, то я еще не планировал, что именно в ней делать, хотя очень хочется приступить к добавлению проверки орфографии. Может быть и сделаю

  22. Александр:

    > А в пути до вики нет каких-нибудь хитрых символов …
    Скажу больше, там даже пробелов нет. Полный путь я указывал ранее. Привожу ещё раз ниже:
    d:\OutWiker\help\help_ru\__page.opt
    Пробовал ещё такой путь:
    d:\OutWiker\help\help_ru\WIKI\__page.opt
    Пробовал путь как с кавычками, так и без. Результат один и тот же.

  23. Jenyay:

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

  24. Александр:

    Здравствуйте Jenyay.
    Хотел ещё спросить/попросить — нельзя ли добавить функцию с выводом кнопки на панель инструментов, которая бы делала следующее: оборачивала бы в такие [==] «вики-тэги» выделенный текст. Просто это единственный способ, который я нашёл, чтобы писать спецсимволы типа * # и т.д. (приходилось пользоваться чем-то ещё). Т.е. чтобы это работало как и выделение ЖИРНЫМ, КУРСИВОМ, выделение КОДА и т.п..

  25. Александр:

    Извиняюсь. Поспешил. Функцию нашёл. Называется «Оформленное». Просто думал что если на панели инструментов нет, то и нигде нет.

  26. Александр:

    Здравствуйте Jenyay.
    На данный момент (v 1.8.1) поиск (страница поиска) не ищет в файлах вложенных через include. Подскажите, существует ли какой-то способ глобального поиска в файлах вложенных через include? Есть способа нет, то не планируется ли его добавление в отдалённом светлом будущем?

  27. Jenyay:

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

  28. Александр:

    Вынужден не согласится, что через файловые менеджеры искать удобнее, чем через OutWiker (далее OW). Я, в принципе-то, и искал всегда через Total Commander (далее TC), в т.ч. и по содержимому. Когда я начал тестить OW, то перспектива поиска только по тегам (так мне рассказал друг) меня очень огорчила, но я решил хоть попробовать и в случае чего искать через TC. Когда же я чисто случайно обнаружил эту строку поиска на Странице Поиска и убедился в её прекрасной работоспособности, то моему счастью не было предела. Меня этот инструмент (OW) вполне устроил. Однако до начала пользования OW у меня скопился ряд заметок, большинство из которых представляют собой обычные текстовые документы (*.txt) без форматирования. Мне было лень их копировать в wiki и я их просто подключил к страницам через include, но как оказалось поиск по ним не производится. Я думал, что поиск идёт по результирующему HTML-представлению, а поиск, видимо, идёт по файлу «__page.text».
    Как выход из ситуации для меня сейчас — необходимо будет все страницы с вложениями перевести на wiki или поиграться со HTML-Страницами, т.к. у меня есть несколько include-ов html страниц. Может в html он искать умеет. Ну а если не умеет, то надо всё переводить в wiki. Хорошо хоть в wiki можно писать обычные html тэги и он их отлично проглатывает (как-то надо было объединять колонки в таблице — colspan вроде).

  29. Jenyay:

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

    PS. У меня тоже есть подобная проблема с папками, созданными до появления OutWiker, я подумываю о том, чтобы сделать плагин, который бы повторял структуру папок в указанном месте в виде страниц дерева + копировал файлы из исходной директории во вложения. И сейчас возникла мысль, что может быть полезна кнопка для вставки содержимого файла на страницу (по аналогии со вставкой ссылок на прикрепленные файлы).

  30. Александр:

    Чего-то про кодировки я не подумал. Действительно, всё не так просто, как хотелось бы. У меня действительно встречаются разные кодировки в моих файлах. Хотя в основном вроде 3 — dos, windos и utf-8.
    > … плагин, который бы повторял структуру папок …
    Плагин — дело хорошее. Правильность его работы, конечно, тоже нужно будет тестить, однако без возможности поиска во вложениях он, ИМХО, бесполезен. Ну по крайней мере для меня. Я просто всё-равно собираюсь всё переводить в wiki-нотацию, а include юзать только для каких-то совсем не важных для поиска вещей.
    > … может быть полезна кнопка для вставки содержимого файла на страницу …
    Если имеется в виду кнопка команды (:include:), вынесенная на главную панель инструментов или панель инструментов окна «Прикреплённые файлы», то безусловно она будет полезна, как и кнопки для (:childlist:), [==], [@@], может ещё и (:attachlist:). Просто я часто их юзаю ((:attachlist:) не часто), лазя по меню. Если же имелось в виду нечто другое, то, видимо, я вас не понял.

  31. Александр:

    > … плагин, который бы повторял структуру папок …
    Кстати, у вас похоже, проблема стоит острее, т.к. свой планируемый список для загрузки я потихоньку заполняю. Уже где-то половина готова. Ну по крайней мере основной мой контент. Всякие хэлпы пихать не хочу, ибо я сдохну. Если бы у меня был огромный склад этих заметок, то я бы уже написал прогу, которая бы сгенерила мне фрагмент нужной вики — тут благо что всё в текстовом виде, всё открыто и нет БД. Однако некоторые мои заметки, которые, возможно, и не заметки, т.к. хранятся в html требуют отдельного внимания. Сохранялись эти HTML-ки 100 лет назад и в некоторых присутствуют java-скрипты, а некоторые без css на вид просто ужас. Вот и приходилось несколько страниц форматировать перед include-вставкой, т.к. одни были чернее ночи, а другие вываливали кучу ошибок javascript. Хотя форматировать — громко сказано — тут спасибо плагину ScrapBook для браузера и Notepad++.

  32. Jenyay:

    > Если имеется в виду кнопка команды (:include:)

    Я имел в виду, чтобы при нажатии на кнопку, в текст страницы вставлялось бы само содержимое файла.

  33. Александр:

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

  34. Jenyay:

    Да, наверное, надо давать выбрать кодировку.

  35. Александр:

    Здравствуйте Jenyay.
    Подскажите зачем OW постоянно перезаписывает файлы __content.html и __page.opt, даже если на странице не было изменений, а страница была просто открыта либо в дереве либо через поиск. Даже если не меняются pageindex и expand. Просто это сильно ограничивает возможность использовать OW на флеш-накопителях. Я проверил и убедился, что в этих 2-х файлах ничего не меняется, тогда зачем они перезаписываются?

  36. Александр:

    Хотя сейчас проверил на очень большой статье, html-код которой генерился очень долго. Так вот она открылась быстро, но даты файлов обновились. Вроде-как не перезаписывает, но что-то делает, обновляя дату и время редактирования файла.

  37. Jenyay:

    Больше всего времени тратится не на запись файла, а на разбор викинотации. Там есть кэширование, когда не надо пересоздавать HTML по викинотации, но на то, будет ли страница пересоздаваться заново, влияют многие факторы.

  38. Александр:

    > … но на то, будет ли страница пересоздаваться заново, влияют многие факторы.
    А можно ли какие-то примеры. Хочу понять могу ли я повлиять на этот процесс. Я ведь ничего особенного не делаю. Просто в дереве перехожу от одной страницы к другой, т.е. перехожу постоянно между двумя страницами, ничего больше не делая. И файлы «__content.html», «__page.opt» при этом постоянно обновляются. По крайней мере даты обновляются. Пробовал отключать автосохранение — не помогло. Хочу просто понять логику этих событий, и как мне избежать этого эффекта, если это возможно.

  39. Jenyay:

    Файлы могут пересохраняться даже если содержимое не меняется (уже не помню, нужно посмотреть исходники). Кэширование только позволяет избежать разбор викинотации. А чем мешает это пересохранение?

  40. Александр:

    > … А чем мешает это пересохранение?
    Конкретных неудобств нет, но мне жаль свою флэшку, когда я юзаю wiki с неё. К тому же усложняется синхронизация wiki между двумя её копиями, т.к. обнаруживается много файлов отличающихся по датам. Opt файлы я в основном игнорю в связи с опцией expand. Но при использовании wiki с флэшки — становится просто жаль флэшку (это основная проблема).

  41. Jenyay:

    Подумаю над этим. Устранить перезапись opt может быть так просто не удастся, а вот перезапись html скорее всего можно будет избежать.

  42. Александр:

    С opt файлом я согласен, т.к. он перезаписывает настройку «expand» когда открывается или закрывается ветка дерева, а «pageindex» когда переходишь между вики-просмотр-html. Разве что сделать настройку программы: «Помнить/не помнить состояние дерева». Ну а с pageindex ничего не поделаешь, та и не стоит. По крайней мере если не клацать вкладки вики-просмотр-html (что и не делается при ЧТЕНИИ вики), то всё, вроде, и ок.

Leave a comment

Subscribe without commenting