Структура исходных кодов¶
Если вы еще не скачали исходные коды, то см. раздел Как скачать исходные коды OutWiker.
Файлы и папки, расположенные в корне исходных кодов¶
Папки¶
- src
- Самая главная папка, которая содержит исходные коды OutWiker и тестов.
- tests
- Папка содержит unit-тесты, запускаемые с помощью pytest. Подробнее см. в разделе Тестирование OutWiker.
- buildtools
- Эта папка содержит Python-скрипты, используемые при сборке OutWiker под различные операционные системы.
- doc
- Папка с документацией, которую вы сейчас смотрите.
- images
- Папка с изображениями, которые не используются непосредственно в программе, но могут быть полезными при разработке. Например, логотипы OutWiker разных размеров и в разных форматах.
- need_for_build
- Папка с файлами, которые не являются Python-скриптами, но необходимы для сборки под различные операционные системы.
- plugins
- Папка с исходными кодами всех плагинов, которые прилагаются к программе OutWiker.
- profiles
- Файлы, используемые для измерения скорости работы программы OutWiker и отдельных ее частей.
- testdata
- Папка содержит файлы, используемые в тестах.
- build
- Эта папка создается при сборке OutWiker под какую-либо операционную систему и при сборке архивов с плагинами. Эта папка не индексируется git.
Файлы¶
- copyright.txt и LICENSE.txt
- Файл с описанием лицензии, под которой распространяется программа (GPL 3) и текст лицензии GPL 3.
- fabfile.py
- Файл для библиотеки fabric. Этот файл нужен для выполнения действий, связанных со сборкой программы под разные операционные системы, запуска тестов, обновления локализаций, выкладывания новых версий программы и плагинов на сайт. По сути это единая «точка входа» для многих действий, которые нужно делать при разработке. Также этот файл заменяет собой Makefile. Подробнее о том, что можно делать через этот файл см. в разделе Выполнение команд Fabric.
- runtests.py
- Скрипт, предназначенный для запуска тестов.
- setup.py
- Скрипт для создания пакета outwiker, чтобы приложение можно было тестировать с помощью unit-тестов.
- README
- Краткое описание программы.
- readme.md
- Более подробное описание программы, которое показывается в качестве описания проекта на сайте github
- Pipfile
- Файл в формате Pipfile, в котором указаны Python-библиотеки, необходимые для запуска OutWiker из исходников и используемые для разработки. Этот файл используется для установки требуемых библиотек с помощью pipenv. Подробнее см. в разделе Инструменты, используемые при разработке.
- requirements_doc.txt
- Файл требуется для сборки документации на сервере readthedocs. В данный момент этот файл пустой.
- appveyor.yml
- Параметры для сервера непрерывного развертывания Appveyor.
- .travis.yml
- Параметры для серверанепрерывного развертывания Travis.
- Makefile
- Скрипт для программы make. Используется для сборки snap-пакета для размещения файлов OutWiker на диске во время установки.
Содержимое папки src¶
- help
- Папка содержит справку по программе на данный момент на двух языках - на русском и на английском.
- iconset
- Папка содержит значки, которые можно установить для страниц заметок в диалоге свойств страницы. Значки могут загружаться не только из этой папки, но и из пользовательских папок со значками. Эта папка содержит вложенные папки, соответствующие группам значков.
- images
- Папка содержит все картинки, которые встречаются в программе (иконки программы и картинки на кнопках). Все иконки взяты из свободно распространяемых коллекций, взятых с сайтов famfamfam, yusukekamiyamane и fatcow.
- locale
- Содержит локализации программы OutWiker. Сюда не входят локализации плагинов, они рсположены в папке каждого плагина. Для локализации используется технология gettext.
- outwiker
- Самая главная папка с исходниками. Именно там содержатся основные классы программы.
- plugins
- Пустая папка, предназначенная для хранения плагинов, если OutWiker запускается в портабельном режиме.
- spell
- Папка содержит встроенные словари для проверки орфографии. К программе прилагаются словари для английского, русского и украинского языков, причем для русского языка есть два словаря: с буквой «Ё» и без нее. Сюда же входит файл
html.dic
- словарь со списком HTML-тегов. - styles
- Папка содержит стили страниц.
Кроме того, папка src
содержит следующие файлы:
- runoutwiker.py
- Основной файл, запускающий OutWiker.
Структура папки src/outwiker¶
Папка src/outwiker представляет собой Python-пакет (содержит файл __init__.py
), в который вложены следующие пакеты:
- actions
- Эта папка содержит так называемые actions - классы, которые привязываются к элементам меню или к кнопкам на панелях инструментов. Все действия, производимые через интерфейс программы работают через actions, что позволяет настраивать горячие клавиши. Подробности см. в Actions (не написано)
- core
- Базовые элементы OutWiker. Здесь содержатся классы, по возможности отделенные от интерфейса программы, например, классы, отвечающие за работу с деревом заметок (файл
tree.py
), классы для чтения файлов настроек (config.py
), классы для работы с плагинами (pluginsloader.py
иpluginbase.py
) и другие. - gui
- В этой папке расположены классы, отвечающие за интерфейс программы. Например, класс главного окна содержится в файле
mainwindow.py
. - pages
- Эта папка содержит пакеты, отвечающие за создание страниц различных типов. В ней содержатся пакеты
text
для работы с простыми текстовыми страницами,html
для работы с HTML-страницами,wiki
для работы с викистраницами иsearch
для работы со страницей глобального поиска. - utilites
- Эта папка содержит скрипты, которые могут быть полезны не только внутри движка OutWiker, но и вне его, например, в системе сборки.