[ Prev ] [ Index ] [ Next ]

Publishing

Publish to a web page


There are various cases where you would want to publish content from zim to the web. Typically you edit you content in zim, and than convert it to HTML to publish it when you feel you are done. But you can also run the embedded webserver to show "live" content.

Note: If you want to have the public edit your wiki, zim may not be the right tool, since it does not allows to edit a WWW version. There are scenarios for cooperation on a zim wiki (see Collaboration), but in general those will work best for small teams, not for public internet access. This section is about how to publish a static copy of the content.

Basically the way you publish from zim is just using export to HTML from zim and upload the result to your server. The server only needs to serve static HTML, so there are no further requirements on the server and you can use any hosting you have available. See Help:Export for all export options.

If you publish often, you probably want to write a small script that calls zim to perform the export with the right template and uploads the output to the server in one go. Once you have that script, you can add it to the zim toolbar as a Custom Tool. This way you can create a "one button" publish option to suit your way of working.

Zim also includes a embedded webserver. To use it see the "Tools" menu or try "./zim.py --server -V". This embedded webserver converts zim pages to HTML on the fly, and will show changes as soon as you make them. It is mainly intended for those cases where you want to show someone quickly what you have without going through a whole webserver setup. It is not intended to run as a permanent server and is probably not as robust as a real webserver.

Website design


The look of the HTML output can be modified using a CSS stylesheet and the layout can be changed in the HTML template. See Help:Templates for the template syntax and check the templates installed by zim by default for some examples.

Link to other files on the webserver


You may want to link to files that live elsewhere on your server. Either HTML pages that were created with different software, or to resources like images, that are uploaded to a separate folder on the server. Here the problem is that you need a way to translate local file paths into paths that are relative to the server root folder.

To achieve this, you can configure a Document Root for a notebook. You can set a document root folder in the Properties Dialog. Once set you can link to files below that root directly by starting the link path with "/" (see Help:Links) and zim will resolve them to the document root folder. When exporting you can specify how to map this folder to a URL that is valid on the server. This way you have links working both locally and on the server.

Scaling images


If you use large images in your notebook, you may want to scale them down before publishing them. At this moment zim does not do that for you, but a quick internet search will result in multiple tools that can help. Run such a tool on the folder with exported HTML. As long as the file names for the image remain the same, all links will remain working.


Other formats


Zim supports other output formats than just HTML, but most of them require further processing to turn them into documents that can be published right away.

E.g. to get a PDF document, you can either export as Latex and then compile a pdf out of that, or you can use the markdown or RST toolkits.

If you have a script to compile output into the desired format, you could configure a Custom Tool to add a button in the zim toolbar to run that script.


Издательский
==========


Опубликовать на веб-странице
---------------------
Существуют различные случаи, когда вы хотите опубликовать контент из Zim в Интернете. Обычно вы редактируете свой контент в zim, а затем конвертируете его в HTML, чтобы опубликовать его, когда почувствуете, что все готово. Но вы также можете запустить встроенный веб-сервер, чтобы показать «живой» контент.

Примечание. Если вы хотите, чтобы публика редактировала вашу вики, zim может оказаться не самым подходящим инструментом, поскольку он не позволяет редактировать WWW-версию. В zim wiki есть сценарии сотрудничества (см. Совместная работа), но в целом они лучше всего подходят для небольших команд, а не для общего доступа в Интернет. Этот раздел о том, как опубликовать статическую копию контента.

По сути, вы публикуете из zim просто используя экспорт в zim из zim и загрузите результат на свой сервер. Сервер должен обслуживать только статический HTML, поэтому никаких дополнительных требований к серверу нет, и вы можете использовать любой доступный хостинг. См. Справка: Экспорт для всех вариантов экспорта.

Если вы публикуете часто, вы, вероятно, захотите написать небольшой скрипт, который вызывает zim для выполнения экспорта с правильным шаблоном и загрузки результатов на сервер за один раз. Если у вас есть этот скрипт, вы можете добавить его на панель инструментов zim в качестве пользовательского инструмента. Таким образом, вы можете создать опцию публикации «одной кнопкой» в соответствии с вашим стилем работы.

Zim также включает в себя встроенный веб-сервер. Чтобы использовать это, посмотрите меню «Сервис» или попробуйте «./zim.py --server -V». Этот встроенный веб-сервер на лету преобразует страницы zim в HTML и будет показывать изменения, как только вы их внесете. Он в основном предназначен для тех случаев, когда вы хотите быстро показать кому-то то, что у вас есть, не проходя полную настройку веб-сервера. Он не предназначен для работы в качестве постоянного сервера и, вероятно, не так надежен, как настоящий веб-сервер.

### Дизайн сайта
Внешний вид вывода HTML можно изменить с помощью таблицы стилей CSS, а макет можно изменить в шаблоне HTML. См. Справка: Шаблоны для синтаксиса шаблонов и проверьте шаблоны, установленные zim по умолчанию для некоторых примеров.

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

Для этого вы можете настроить Корень документа для ноутбука. Вы можете установить корневую папку документа в диалоге свойств. После установки вы можете ссылаться на файлы ниже этого корня напрямую, начав путь ссылки с "/" (см. Справка: Ссылки), и zim преобразует их в корневую папку документа. При экспорте вы можете указать, как сопоставить эту папку с URL-адресом, действующим на сервере. Таким образом, у вас есть ссылки, работающие как локально, так и на сервере.

### Масштабирование изображений
Если вы используете большие изображения в своем блокноте, вы можете уменьшить их размер перед публикацией. На данный момент Zim не делает это для вас, но быстрый поиск в Интернете приведет к множеству инструментов, которые могут помочь. Запустите такой инструмент в папке с экспортированным HTML. Пока имена файлов для изображения остаются прежними, все ссылки будут работать.


Другие форматы
-------------
Zim поддерживает другие выходные форматы, кроме HTML, но большинство из них требуют дальнейшей обработки, чтобы превратить их в документы, которые можно сразу же опубликовать.

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

Если у вас есть скрипт для компиляции вывода в желаемый формат, вы можете настроить Custom Tool, чтобы добавить кнопку на панели инструментов zim для запуска этого скрипта.

Backlinks: FAQ Help:Export Usage