OutWiker 1.3.2 (что нового)
Выложил следующую версию OutWiker‘а. Для тех, кто не следил за предыдущими сериями версиями, это программа, которая предназначена для хранения заметок в виде дерева, причем заметки хранятся не просто в одном файле в неизвестном формате, а дерево строится из обычных директорий.
Несмотря на то, что работы с новой версией было немало, номер версии увеличился только в третьем знаке из-за того, что на этот раз не было добавлено каких-то принципиально новых возможностей, упор был сделан на рефакторинг кода, исправления багов и улучшения в интерефейсе.
Сухой остаток от списка изменений выглядит следующим образом:
- Новый интерфейс выбора иконок.
- Добавил новые иконки из наборов famfamfam.com и yusukekamiyamane.com.
- Новая иконка программы (спасибо Алексею Набродову).
- В пределах одной страницы теперь работают якоря.
- Новый элемент викинотации для добавления якорей.
- Значительно уменьшено моргание и обновление интерфейса при перемещении по дереву.
- Справка на английском языке (спасибо Илье Чешкову за исправления моего корявого перевода с помощью Google Translete 🙂 ).
- Добавлены горячие клавиши для тега <PRE> на HTML-странице и [@…@] на викистранице.
- Добавлены горячая клавиша и кнопка для [[<<]] на викистранице.
- Добавлены кнопки для тегов <code> и <blockquote> на HTML-странице.
- Добавлена кнопка «Обновить» для панели с прикрепленными файлами.
- При нажатии на иконку в трее, свернутое окно разворачивается, а развернутое теперь сворачивается.
- Исправлено: под Windows не работали ссылки на страницы, имеющие в своем пути символ «#».
- Исправлена ошибка, возникавшая при испорченном файле __page.opt в корне вики.
- Другие исправления ошибок в программе и переводе.
- Рефакторинг кода.
Теперь пройдемся по изменениям, которые наиболее заметны для пользователя. Во-первых, огромное спасибо Алексею Набродову (aka Averrin) за нарисованную картинку для новой иконки вместо ужасной старой. Кстати, Алексей прислал несколько интересных патчей для программы, но в основную ветку исходников эти новые возможности я буду встраивать, начиная со следующей версии.
Во-вторых, я переделал интерфейс выбора иконок для заметок, теперь он выглядит следующим образом:
Для скриншота я растянул окно, чтобы были видны все иконки, которые теперь прилагаются к программе, по умолчанию окно будет чуть поменьше и область с иконками можно прокручивать с помощью полосы прокрутки. Обратите внимание на иконки с батарейками. Сам я их использую как индикатор того, насколько готова статья или пост в блог, которые я обычно набираю в OutWiker’е.
В версии OutWiker 1.3.2 значительно уменьшено моргание интерфейса при переключении между страницами за счет того, что интерфейс главного окна не перестраивается каждый раз под страницу с выбранным типом, а изменяется тогда, когда тип выбранной страницы становится дроугим, и еще удалось выбросить некоторые операции Enable/Disable, которые были нужны в старом HTML-движке, чтобы он не падал при быстром переключении страниц. С движками WebKit/IE, которые используются, начиная с версии 1.3.0, такой проблемы замечено не было.
Теперь в пределах одной страницы работают якоря (anchors). На HTML-странице они устанавливаются, как и положено с помощью тега <a name=»anchorname»>…</a>, а для установки тега на викистранице теперь используется запись вида [[#anchorname]]. Ссылки на якорь ставятся, как обычная ссылка: [[#anchorname | текст ссылки]] или [[текст ссылки -> #anchorname]].
Для английского языка добавил англоязычную справку. Правда, с переводом рус -> eng у меня туго, поэтому огромное спасибо Илье Чешкову (ilyuxaif) за выправление нашего с Google Translate перевода. 🙂
Кроме перечисленных изменений остались мелкие изменения в инетрфейсе (обратите внимание, что добавилась кнопка для обновления списка прикрепленных файлов), исправления ошибок и довольно значительный рефакторинг, но с точки зрения пользователя все это будет не очень заметно.
Надеюсь, что в этой версии неприятных багов не будет, а в следующей версии я собираюсь добавить побольше новых возможностей, в том числе, наконец-то, начать делать поддержку плагинов.
Еще раз напомню ссылку на страницу программы — https://jenyay.net/Soft/Outwiker
PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.
Здравствуйте.
Пытаюсь начать пользоваться программой Outwiker v1.8.1 (пробовал и 1.8.0) и столкнулся с такими проблемами:
1. Каков смысл команды (:childlist:)? Я понимаю, что она выводит список дочерних страниц в виде гиперссылок. Однако ссылки не работают. При нажатии на ссылку открывается окно проводника Windows, где храниться дочерняя страница. Так и задумано? Просто я предполагал, что должна открываться соответствующая страница.
2. Не работают якоря внутри страницы. Точнее первый раз срабатывает, потом поднимаюсь вверх и уже ни один другой якорь не работает. Вот пример wiki кода.
# [[Первый -> #first]]
# [[Второй -> #sec]]
# [[Третий -> #last]]
!!!! Первый [[#first]]
!!!! Второй [[#sec]]
!!!! Третий [[#last]]
21 мая 2015, 10:52 дпАлександр, здравствуйте.
Вы правильно понимаете, как все должно работать. А какая у Вас версия Windows? Я еще попробую повторить ошибки, которые у Вас получаются. Можете прислать на jenyay.ilin@gmail.com файл outwiker.log из папки с настройками?
21 мая 2015, 10:59 дпНе ожидал такой оперативности.
21 мая 2015, 11:13 дпУ меня 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 байт).
> то файл «outwiker.log» в ней пуст (0 байт)
Хорошо, значит ошибок никаких не происходило. Надо разобраться с поведением Internet Explorer, который показывает HTML-страницы.
Тогда можете прислать какой-нибудь пример страницы, где проявляются проблемы?
21 мая 2015, 12:27 ппВыслаЛ вам на почту пример вики с моими проблемами. Файл TEST.zip.
21 мая 2015, 12:44 ппКстати, пробовал открыть сгенерированный html с якорями через ie. Не считая проблем с кодировками, всё в порядке. Якоря работают.
21 мая 2015, 12:46 ппПолучил. На первый взгляд проблем не вижу, попробую еще поиграться с настройками IE.
21 мая 2015, 2:49 ппИгрался сейчас с настройками IE. Вроде ничего особого не делал:
21 мая 2015, 5:27 пп— изменил домашнюю страницу;
— почистил журнал и все личные данные;
— изменил, но потом возвратил настройку «При открытии ссылок из других программ использовать»;
— ну и ещё что-то наверняка делал.
После этого при запуске программы напрямую с exe файла стали работать и якоря и ссылки.
Я вообще запускаю программу через значок в total commander на панели инструментов, при этом задав такие «параметры запуска»: «d:\OutWiker\help\help_ru\__page.opt». Также пробовал через bat файл с таким текстом:
outwiker.exe «help\help_ru\WIKI\__page.opt»
Если задавать путь к «WIKI» по умолчанию как параметр, чтобы не открывать её постоянно, то якоря и ссылки не работают. Хотя ранее у меня даже после ручного запуска программы и выбора WIKI не работали ни ссылки ни якоря. Ещё попробую, что будет дома. Может просто сегодня день удачный. Однако хотелось бы запускать программу с открытой WIKI, а не выбирать её постоянно.
Попробую дома и отпишусь (если не сегодня, то завтра).
Пробовал на Win XP SP3 32 bit — всё работает прекрасно как ни запускай.
21 мая 2015, 6:49 ппПробовал на Win 7 SP1 64 bit — работает только если запускать прямо с exe, а если запускать с параметром (путь к WIKI), то не пашет.
Видать с 7-ками какая-то запара или с IE, которые на них стоят.
Хорошо, попробую.
21 мая 2015, 8:14 ппНа 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:), просто я пока ещё мало чем пользовался.
22 мая 2015, 11:29 дпИзвиняюсь. Не знаю откуда я взял это название — «При открытии ссылок из других программ использовать», но имелась в виду только галочка «При запуске открывать последний открытый файл».
22 мая 2015, 11:33 дпНа самом деле странно, у меня всегда включена галка «При запуске открывать последний открытый файл», и подобных проблем не возникало. И сейчас не могу ее повторить, тоже на Win 7 Sp1.
22 мая 2015, 1:06 ппСтранно, а запускать программу с параметром (путём к файлу __page.opt) не пробовали ?
22 мая 2015, 1:50 ппПробовал. Тоже работает.
22 мая 2015, 2:13 ппКстати, что вы думаете о добавлении таких функций (как некоторых в меню «Инструменты»):
1. «Установить страницам в ветке флаг перехода на просмотр», чтобы при следующем открытии все страницы были уже в режиме просмотра.
2. «Установить страницам в ветке флаг перехода на WIKI», чтобы при следующем открытии все страницы были уже в режиме редактора WIKI кода.
А также сделать галочку на панели инструментов «Открывать страницы на просмотр». Если галочка стоит, то программа в обход индивидуального флага каждой страницы открывает страницу на просмотр. При этом индивидуальный флаг не меняется.
22 мая 2015, 2:19 ппМне кажется, что для каждой страницы — это перебор, а вот настройку, в каком режиме открывать страницы (в режиме просмотра, редактирования или в последнем открытом режиме) сделать можно.
22 мая 2015, 3:36 пп> Мне кажется, что для каждой страницы — это перебор …
22 мая 2015, 6:06 ппТут я имел в виду следующее:
К примеру я занимаюсь созданием какой-то ветки своей большой вики, например «Libre Office». Вот насоздавал я там кучу всего и у меня все страницы открыты как попало: кто в вики, кто на просмотр, кто в html. Я считаю создание вики для этой ветки пока законченным и хочу все страницы перевести в режим просмотра.
P.S. Хотя возможно вы и правы, если бы была галочка «в каком режиме открывать страницы», то 2 другие функции потеряли бы свою актуальность. Тем более, что я их придумал лишь для того, чтобы после больших изменений вики у меня гарантировано все страницы открывались на просмотр, а не как попало, т.е. не так как они были закрыты (хотя это безусловно тоже нужно оставить).
Попробовал еще на двух компьютерах — что-то не могу повторить такой глюк. Может быть это связано с какими-то настройками IE?
24 мая 2015, 12:32 пп> Может быть это связано с какими-то настройками IE?
25 мая 2015, 9:42 дпВозможно. Да я их вкратце проглядывал, но я не понимаю из-за какой настройки могут быть такие проблемы. В любом случае я разобрался из-за чего возникла проблема (в том плане, что понял как я отловил глюк) и понял как её решить на моём компе. Я, честно говоря грешил на главную функция (типа main в c/c++), которая принимает параметр — путь к файлу, но если вы пытались открывать exe-шник с параметрами и у вас всё ОК, то остаётся грешить только на IE. Но я с ним никогда не работаю, поэтому и не знаю что там может быть и куда рыть. Если бы я знал Python (вроде на нём же написано) я бы даже посмотрел дебаггером, покуда я единственный с такой проблемой, а так «знания Python-а» = «0».
А вообще жаль, конечно, что у вас не вышло воспроизвести проблему. Так со стороны поглядеть — так можно подумать что у меня параноидальная шизофрения.
P.S. Кстати, идея, я на всех компах работаю с ограниченными учётными записями (не админскими). Может быть это как-то влияет ?!? Хотя, ИМХО, вряд ли. Как-то не приходило раньше это в голову попробовать под админом, но это я смогу попробовать только дома. Да и я, наверняка, не единственные кто работает не под админом.
P.P.S. И последнее, планируете ли вы внедрение галочки/списка с возможностью выбора способа открытия страниц по умолчанию? Если да, то планируете ли вы это добавить в следующей версии программы?
А в пути до вики нет каких-нибудь хитрых символов вроде греческих букв или чего-то подобного?
> И последнее, планируете ли вы внедрение галочки/списка с возможностью выбора способа открытия страниц по умолчанию? Если да, то планируете ли вы это добавить в следующей версии программы?
Если говорить про стабильную версию, то скорее всего сделаю. Что касается нестабильных версий, то я еще не планировал, что именно в ней делать, хотя очень хочется приступить к добавлению проверки орфографии. Может быть и сделаю
25 мая 2015, 10:31 дп> А в пути до вики нет каких-нибудь хитрых символов …
25 мая 2015, 12:56 ппСкажу больше, там даже пробелов нет. Полный путь я указывал ранее. Привожу ещё раз ниже:
d:\OutWiker\help\help_ru\__page.opt
Пробовал ещё такой путь:
d:\OutWiker\help\help_ru\WIKI\__page.opt
Пробовал путь как с кавычками, так и без. Результат один и тот же.
А попробуйте еще такую вещь сделать. Когда не будут работать ссылки, выберите корень дерева заметок, а потом обратно нужную заметку. Ссылки при этом не начнут работать?
2 июня 2015, 9:58 дпЗдравствуйте Jenyay.
2 июня 2015, 5:02 ппХотел ещё спросить/попросить — нельзя ли добавить функцию с выводом кнопки на панель инструментов, которая бы делала следующее: оборачивала бы в такие [==] «вики-тэги» выделенный текст. Просто это единственный способ, который я нашёл, чтобы писать спецсимволы типа * # и т.д. (приходилось пользоваться чем-то ещё). Т.е. чтобы это работало как и выделение ЖИРНЫМ, КУРСИВОМ, выделение КОДА и т.п..
Извиняюсь. Поспешил. Функцию нашёл. Называется «Оформленное». Просто думал что если на панели инструментов нет, то и нигде нет.
2 июня 2015, 5:15 ппЗдравствуйте Jenyay.
10 июня 2015, 2:07 ппНа данный момент (v 1.8.1) поиск (страница поиска) не ищет в файлах вложенных через include. Подскажите, существует ли какой-то способ глобального поиска в файлах вложенных через include? Есть способа нет, то не планируется ли его добавление в отдалённом светлом будущем?
В ближайшее время делать такое не планировал, но мне кажется, что пока искать по вложенным файлам удобнее с помощью файловых менеджеров. Но на будущее такую задача себе добавлю.
10 июня 2015, 3:42 ппВынужден не согласится, что через файловые менеджеры искать удобнее, чем через OutWiker (далее OW). Я, в принципе-то, и искал всегда через Total Commander (далее TC), в т.ч. и по содержимому. Когда я начал тестить OW, то перспектива поиска только по тегам (так мне рассказал друг) меня очень огорчила, но я решил хоть попробовать и в случае чего искать через TC. Когда же я чисто случайно обнаружил эту строку поиска на Странице Поиска и убедился в её прекрасной работоспособности, то моему счастью не было предела. Меня этот инструмент (OW) вполне устроил. Однако до начала пользования OW у меня скопился ряд заметок, большинство из которых представляют собой обычные текстовые документы (*.txt) без форматирования. Мне было лень их копировать в wiki и я их просто подключил к страницам через include, но как оказалось поиск по ним не производится. Я думал, что поиск идёт по результирующему HTML-представлению, а поиск, видимо, идёт по файлу «__page.text».
10 июня 2015, 4:14 ппКак выход из ситуации для меня сейчас — необходимо будет все страницы с вложениями перевести на wiki или поиграться со HTML-Страницами, т.к. у меня есть несколько include-ов html страниц. Может в html он искать умеет. Ну а если не умеет, то надо всё переводить в wiki. Хорошо хоть в wiki можно писать обычные html тэги и он их отлично проглатывает (как-то надо было объединять колонки в таблице — colspan вроде).
Почему я в свое время не стал делать поиск по вложенным файлам — это проблемы с кодировками, очень уж не хотелось загромождать интерфейс еще несколькими полями. Но я подумаю над этим, может быть стоит это сделать через плагины.
PS. У меня тоже есть подобная проблема с папками, созданными до появления OutWiker, я подумываю о том, чтобы сделать плагин, который бы повторял структуру папок в указанном месте в виде страниц дерева + копировал файлы из исходной директории во вложения. И сейчас возникла мысль, что может быть полезна кнопка для вставки содержимого файла на страницу (по аналогии со вставкой ссылок на прикрепленные файлы).
10 июня 2015, 4:33 ппЧего-то про кодировки я не подумал. Действительно, всё не так просто, как хотелось бы. У меня действительно встречаются разные кодировки в моих файлах. Хотя в основном вроде 3 — dos, windos и utf-8.
10 июня 2015, 5:22 пп> … плагин, который бы повторял структуру папок …
Плагин — дело хорошее. Правильность его работы, конечно, тоже нужно будет тестить, однако без возможности поиска во вложениях он, ИМХО, бесполезен. Ну по крайней мере для меня. Я просто всё-равно собираюсь всё переводить в wiki-нотацию, а include юзать только для каких-то совсем не важных для поиска вещей.
> … может быть полезна кнопка для вставки содержимого файла на страницу …
Если имеется в виду кнопка команды (:include:), вынесенная на главную панель инструментов или панель инструментов окна «Прикреплённые файлы», то безусловно она будет полезна, как и кнопки для (:childlist:), [==], [@@], может ещё и (:attachlist:). Просто я часто их юзаю ((:attachlist:) не часто), лазя по меню. Если же имелось в виду нечто другое, то, видимо, я вас не понял.
> … плагин, который бы повторял структуру папок …
10 июня 2015, 5:36 ппКстати, у вас похоже, проблема стоит острее, т.к. свой планируемый список для загрузки я потихоньку заполняю. Уже где-то половина готова. Ну по крайней мере основной мой контент. Всякие хэлпы пихать не хочу, ибо я сдохну. Если бы у меня был огромный склад этих заметок, то я бы уже написал прогу, которая бы сгенерила мне фрагмент нужной вики — тут благо что всё в текстовом виде, всё открыто и нет БД. Однако некоторые мои заметки, которые, возможно, и не заметки, т.к. хранятся в html требуют отдельного внимания. Сохранялись эти HTML-ки 100 лет назад и в некоторых присутствуют java-скрипты, а некоторые без css на вид просто ужас. Вот и приходилось несколько страниц форматировать перед include-вставкой, т.к. одни были чернее ночи, а другие вываливали кучу ошибок javascript. Хотя форматировать — громко сказано — тут спасибо плагину ScrapBook для браузера и Notepad++.
> Если имеется в виду кнопка команды (:include:)
Я имел в виду, чтобы при нажатии на кнопку, в текст страницы вставлялось бы само содержимое файла.
10 июня 2015, 6:17 пп> … в текст страницы вставлялось бы само содержимое файла
10 июня 2015, 7:08 ппА, ну это, пожалуй, отличная идея. Отличная. Чего-то я об этой возможности не подумал. Ну тут опять же нужно промежуточное окно или выпадающий список рядом, чтобы возможно было выбрать кодировку для импорта.
Да, наверное, надо давать выбрать кодировку.
10 июня 2015, 10:59 ппЗдравствуйте Jenyay.
11 июня 2015, 3:35 ппПодскажите зачем OW постоянно перезаписывает файлы __content.html и __page.opt, даже если на странице не было изменений, а страница была просто открыта либо в дереве либо через поиск. Даже если не меняются pageindex и expand. Просто это сильно ограничивает возможность использовать OW на флеш-накопителях. Я проверил и убедился, что в этих 2-х файлах ничего не меняется, тогда зачем они перезаписываются?
Хотя сейчас проверил на очень большой статье, html-код которой генерился очень долго. Так вот она открылась быстро, но даты файлов обновились. Вроде-как не перезаписывает, но что-то делает, обновляя дату и время редактирования файла.
11 июня 2015, 3:43 ппБольше всего времени тратится не на запись файла, а на разбор викинотации. Там есть кэширование, когда не надо пересоздавать HTML по викинотации, но на то, будет ли страница пересоздаваться заново, влияют многие факторы.
11 июня 2015, 4:52 пп> … но на то, будет ли страница пересоздаваться заново, влияют многие факторы.
11 июня 2015, 5:21 ппА можно ли какие-то примеры. Хочу понять могу ли я повлиять на этот процесс. Я ведь ничего особенного не делаю. Просто в дереве перехожу от одной страницы к другой, т.е. перехожу постоянно между двумя страницами, ничего больше не делая. И файлы «__content.html», «__page.opt» при этом постоянно обновляются. По крайней мере даты обновляются. Пробовал отключать автосохранение — не помогло. Хочу просто понять логику этих событий, и как мне избежать этого эффекта, если это возможно.
Файлы могут пересохраняться даже если содержимое не меняется (уже не помню, нужно посмотреть исходники). Кэширование только позволяет избежать разбор викинотации. А чем мешает это пересохранение?
11 июня 2015, 5:33 пп> … А чем мешает это пересохранение?
11 июня 2015, 5:45 ппКонкретных неудобств нет, но мне жаль свою флэшку, когда я юзаю wiki с неё. К тому же усложняется синхронизация wiki между двумя её копиями, т.к. обнаруживается много файлов отличающихся по датам. Opt файлы я в основном игнорю в связи с опцией expand. Но при использовании wiki с флэшки — становится просто жаль флэшку (это основная проблема).
Подумаю над этим. Устранить перезапись opt может быть так просто не удастся, а вот перезапись html скорее всего можно будет избежать.
11 июня 2015, 5:50 ппС opt файлом я согласен, т.к. он перезаписывает настройку «expand» когда открывается или закрывается ветка дерева, а «pageindex» когда переходишь между вики-просмотр-html. Разве что сделать настройку программы: «Помнить/не помнить состояние дерева». Ну а с pageindex ничего не поделаешь, та и не стоит. По крайней мере если не клацать вкладки вики-просмотр-html (что и не делается при ЧТЕНИИ вики), то всё, вроде, и ок.
11 июня 2015, 5:56 пп