Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » OutWiker

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

Открыть новую тему     Написать ответ в эту тему

Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
OutWiker


Текущая стабильная версия: 3.0.0

Текущая бета-версия: 3.0.0.888 (13.05.2021)



 
Поддерживаемые операционные системы: Windows / Linux.
 
Программа OutWiker предназначена для хранения заметок в виде дерева. Такие программы называют outliner'ами, персональными вики или древовидными редакторами. Я долго подбирал для себя подобную программу из имеющихся, но в итоге решил сделать свой outliner в том виде, как он мне представляется наиболее удобным для использования.
Основное отличие OutWiker от других подобных программ заключается в том, что OutWiker не только хранит дерево заметок в виде обычных директорий на диске, но и поощряет изменение такой базы внешними средствами. Также к программе может быть прикреплено любое количество файлов.
Кроме того, OutWiker может содержать страницы разного типа, в данный момент поддерживаются два типа страниц: обычный текст и HTML, но в будущем количество типов страниц будет увеличиваться.
 
Основные возможности
* База хранится в виде директорий на диске.
* Поддержка плагинов
* К каждой заметке можно прикреплять любое количество файлов.
* Страницы могут быть разных типов. В данный момент поддерживаются текстовые страницы, страницы в формате HTML и вики-страницы.
* Прикрепленные картинки могут быть вставлены в HTML-страницы.
* Раскраска синтаксиса HTML.
* Поддержка тегов.
* Поддержка закладок на страницы.
* Каждая ветвь дерева может быть открыта как отдельная вики.
* Иконки для страниц.
* Кроссплатформенность (поддержка Windows и Linux).
* Портабельность. Программа все настройки хранит рядом с запускаемым файлом.
* Программа распространяется с открытыми исходниками.
* Возможность создания ссылок между страницами.
* Есть глобальный поиск по заметкам и поиск по тегам.
* К программе прилагается справка.

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 19:47 04-05-2010 | Исправлено: Jenyay, 19:39 13-05-2021
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
косячок/недостаток:
- при перемещении заметки при помощи ctrl+shift+(вверх/вниз) "отображение" дерева "перематывается" на корень дерева, т.е. ползунок панели дерева перескакивает в самый верх, что как-то очень неудобно - приходится после каждого такого действия искать в панели, где нахожусь.

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 10:34 26-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ага, есть такое.
 
Добавлено:
Выложил следующую нестабильную версию (1.8.0.738). Изменения в этой версии такие:
 
* Добавлены кнопка и пункт меню для вставки текущей даты.
* Добавлена викикоманда (:crdate:) для показа даты создания страницы.
* Добавлена викикоманда (:eddate:) для показа даты последней правки страницы.
 
На этом добавление новых возможностей для версии 1.8 прекращается, и я начинаю готовить ее к релизу. Теперь программа формально считается Release Candidate, т.е. любая очередная версия может стать релизом, если не выявятся какие-то косяки.
 
Скачать нестабильную версию можно как всегда по ссылке - http://jenyay.net/Outwiker/Unstable
 
PS. Скоро выложу еще один новый плагин.
 
Добавлено:

Цитата:
косячок/недостаток:  
- при перемещении заметки при помощи ctrl+shift+(вверх/вниз) "отображение" дерева "перематывается" на корень дерева, т.е. ползунок панели дерева перескакивает в самый верх, что как-то очень неудобно - приходится после каждого такого действия искать в панели, где нахожусь.

 
Вроде поправил, хотя под Виндой пришлось немного пошаманить. :)

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 10:38 26-08-2014 | Исправлено: Jenyay, 10:55 26-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
сенкс.
 
такой вопрос (не помню, спрашивал или нет): вики-команды типа (:команда:) "разворачиваются" до обработки основных "тегов" вики-парсера (типа, *, #, || и т.п.) или после?
просто хочу создать какую-нибудь короткую команду (типа (:lf:)) для принудительной вставки переноса текста в коде, чтобы потом html-улучшайзер автоматом обернул такие строки в тег <p>. Если такая команда развернется до обработки основных "тегов" вики-парсера, то будет облом ;).
 

Цитата:
Вроде поправил, хотя под Виндой пришлось немного пошаманить. :)

быстро нашаманил :)

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 13:00 26-08-2014 | Исправлено: unreal666, 13:02 26-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
такой вопрос (не помню, спрашивал или нет): вики-команды типа (:команда:) "разворачиваются" до обработки основных "тегов" вики-парсера (типа, *, #, || и т.п.) или после?  

 
Одновременно, по мере их появления в тексте. Может быть эту команду отдельно парсить во время события onPostprocessing?
 


----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 13:08 26-08-2014 | Исправлено: Jenyay, 13:08 26-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А onPostprocessing случайно не после html-улучшайзера выполняется?
 
ЗЫ.
Хотя по мере появления думаю не страшно, т.к. при подобном

Код:
* элемент списка 1 (:lf:) строка1 (:lf:) строка2  
* элемент списка 2 (:lf:) строка1 (:lf:) строка2  

должно обработаться, как задумано.
 
Добавлено:
И почему в UID среди разрешенных символов нет ";" (точки с запятой)?
хотел вставить &lt;type_traits&gt; - обломился.

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 13:13 26-08-2014 | Исправлено: unreal666, 13:22 26-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
А onPostprocessing случайно не после html-улучшайзера выполняется?  

 
Наверное, все-таки после.
 

Цитата:
 
* элемент списка 1 (:lf:) строка1 (:lf:) строка2  
* элемент списка 2 (:lf:) строка1 (:lf:) строка2  

 
Здесь сначала будет захвачен все строки списка, а потом в каждой строке будет обрабатываться (:lf:).
 

Цитата:
И почему в UID среди разрешенных символов нет ";" (точки с запятой)?  
хотел вставить &lt;type_traits&gt; - обломился.

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

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 14:03 26-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Если в ссылках его можно использовать, то можно добавить. Хотя, думаю, что это не особо приветствуется.

использовать ";" точно можно, например, в тех же html, полученных из xml+xslt. В xml, кажется, даже символ & в ссылках должен быть указан как &amp; .
 
Добавлено:

Цитата:
Здесь сначала будет захвачен все строки списка, а потом в каждой строке будет обрабатываться (:lf:).

тогда должно сработать как задумано.

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 14:26 26-08-2014 | Исправлено: unreal666, 14:28 26-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
файл core/system.py
зачем в ф-и getOS каждый раз заново создавать объекты из классов Windows и Unix?
Почему бы примерно так не сделать:

Код:
_getOS = Windows() if os.name == "nt" else Unix()
 
 
def getOS ():
    return _getOS

ну или вообще использовать его не как ф-ю , а просто как объект:

Код:
getOS = Windows() if os.name == "nt" else Unix()

ОС то во время работы проги меняться то не будет

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 03:18 28-08-2014 | Исправлено: unreal666, 03:20 28-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ну это такая мелочь, что ни на что не влияет. А так вроде и глобальных переменных лишних нет.

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 09:11 28-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Jenyay
сейчас опять нарвался на ограничение длины пути на винде
потестил unc-пути в винде: оказалась проблема - движки веб-браузеров на винде вообще не работают с длинными путями (именно с длинными путями, а не длинными unc-путями). Хотя эти создатели браузеров могли бы и реализовать обращение к файловой системе через unc-пути
 
Сейчас пытаюсь понять, где в коде надо реализовать доступ через UNC-пути, чтобы там заменить обычные пути на UNC-пути (кажется для этого надо всего лишь в некоторых местах поправить получение wikiroot) и попробую реализовать это (добавлю для этого методы в классы Windows()/Unix()).
И еще надо бы понять, где передается путь в движок IE, чтобы заменить его на короткий (DOS) путь. Ф-ю GetShortPathName уже реализовал - по типу как в MSDN для C++.
 
Тогда будет меньше ограничение на длину пути.
 

Цитата:
А так вроде и глобальных переменных лишних нет.

а в python'е нет анонимных ф-й, по типу как в JS ?

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 11:59 28-08-2014 | Исправлено: unreal666, 12:02 28-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
а в python'е нет анонимных ф-й, по типу как в JS ?  

 
Есть, lambda называется.

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 12:50 28-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
файл src\outwiker\pages\html\basehtmlpanel.py  
там есть код

Код:
        except OSError as e:
            MessageBox (_(u"Can't save file\n\n{}").format (unicode (e)),
                        _(u"Error"),
                        wx.ICON_ERROR | wx.OK)

у меня сработало это исключение и вылезло другое исключение:

Код:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd1 in position 12: ordinal not in range(128)

наверно надо заменить на  

Код:
        except OSError as e:
            MessageBox (_(u"Can't save file\n\n{}").format (unicode (e.strerror, getOS().filesEncoding)),
                        _(u"Error"),
                        wx.ICON_ERROR | wx.OK)

ну и добавить в заголовок файла

Код:
from outwiker.core.system import getOS

 
Добавлено:
не. С короткими именами в движке IE глюк, так что толку от unc-путей не будет, т.к. движок IE при таких обрезанных путях почему-то не обрабатывает скрипты.

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 14:47 29-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
С исключением посмотрю, а то, что IE не работает с длинными и короткими именами - печально. А у тебя, кстати, какая версия IE?

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 20:35 29-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
А у тебя, кстати, какая версия IE?

win 7 x64, IE11

Цитата:
С исключением посмотрю, а то, что IE не работает с длинными и короткими именами - печально.

там вообще какие-то непонятки:
- если в ф-и LoadPage для self.render.Navigate передать обычный/длинный путь, то движок будет пытаться открывать именно такой (без укорочения) путь
- если передать короткий путь, то  
   -- если "реальный/длинный" путь короче допустимого, то он открывается (преобразовывается обратно) именно как длинный путь
   -- если "реальный/длинный" путь длиннее допустимого, то открывается как частично укороченный (укорачивается только какая-то первая часть ссылки)  и не работают скрипты

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 08:41 30-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
win 7 x64, IE11  

 
Понятно, то есть надежды, что это поправили в более новых версиях нет.
 
Добавлено:
Выложил новый плагин TableOfContents для создания оглавления на странице. Оглавление создается по заголовкам.
 
Страница плагина с подробным описанием - http://jenyay.net/Outwiker/Contents

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 08:59 30-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Jenyay
может в opt-файлах хранить еще и имя заметки? Точнее, по умолчанию его там не хранить, но сделать такую возможность. И если имя все-таки будет присутствовать, то в дереве отображать именно его, а не имя папки.

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 10:47 30-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Сделать что-то типа alias? Честно говоря, не очень хочется это делать, только если в виде плагина. Подумаю.

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 11:12 30-08-2014
denver 22

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
За TableOfContents большое спасибо! Чувствую, что буду во всю им пользоваться...

Всего записей: 597 | Зарегистр. 28-07-2005 | Отправлено: 11:56 30-08-2014
unreal666



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Сделать что-то типа alias?

угу. только этот алиас будет только для отображения имени заметки в дереве в дереве.
А то на данный момент у меня только 2 варианта видения работы базы с ссылками, длиннее допустимых: или данный вариант или как-то где-то все-таки откопать виндовый движок вебкита для питона и юзать его.

Всего записей: 6605 | Зарегистр. 14-02-2005 | Отправлено: 14:43 30-08-2014 | Исправлено: unreal666, 15:07 30-08-2014
Jenyay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
OutWiker 1.8 постепенно движется к релизу, и сейчас основные работы над программой ведутся в сторону мелких исправлений в интерфейсе, поиску багов и написания новых тестов.  
 
Сегодня выложил очередную нестабильную версию (она же релиз-кандидат) OutWiker 1.8.0.740. Изменения в ней следующие:
 
* Настройки перенесены из ~/.outwiker в более идеологически верные места (зависит от операционной системы). Профиль сам переносится в новое место, поэтому как пользователь вы ничего не заметите. За присланный pull request с этим изменением спасибо Вадиму Сухарникову, если бы не он, то я за эту фичу принялся бы только после релиза, в версии 1.9.
 
* Добавлен пункт меню "Справка - открыть папку с плагинами". Поскольку теперь папка с профилем находится более глубоко в дереве файловой системы, каждый раз искать папку, куда нужно копировать плагины, не удобно, поэтому добавлен этот пункт меню.
 
* Исправлена прокрутка дерева при перемещении заметок вверх / вниз.
* Оформительские исправления.
* Обновление итальянской локализации. Matteo Migliaccio проделал огромную работу по переводу OutWiker и всех плагинов к нему на итальянский язык, за что ему огромное спасибо.
 
Скачать нестабильную версию можно как всегда по ссылке - http://jenyay.net/Outwiker/Unstable

----------
http://jenyay.net - софт, исходники и фото

Всего записей: 1737 | Зарегистр. 13-10-2001 | Отправлено: 09:03 08-09-2014
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

Компьютерный форум Ru.Board » Компьютеры » Программы » OutWiker


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru