Git Product home page Git Product logo

documentation's Introduction

Nextcloud Documentation

Documentation is published on https://docs.nextcloud.com.

The documentation Wiki is available for tips, tricks, edge cases, and anyone who wants to contribute more easily, without having to learn Git and Sphinx.

See the Style Guide for formatting and style conventions.

Manuals

This repository hosts three manuals:

  • Users' Manual
  • Administration Manual
  • Developers Manual

Please work in the appropriate branch: stable-branches are for the respective release (e.g. 12.0 or 13.0), master is version 14.0.

Please wrap lines at 80 characters.

Note

configuration_server/config_sample_php_parameters.rst is auto-generated from the core config.sample.php file; changes to this file must be made in core https://github.com/nextcloud/server/tree/master/config

Spelling and Capitalization Conventions

As this grows it may be moved to its own page.

  • Nextcloud App Store
  • synchronize
  • Web (Web page, Web site)

License

All documentation in this repository is licensed under the Creative Commons Attribution 3.0 Unported license (CC BY 3.0).

Style

Source files are written using the Sphinx Documentation Generator. The syntax follows the reStructuredText style, and can also be edited from GitHub.

Editing

Contributing to the documentation requires a Github account. Make sure you are working in the correct branch for your version of Nextcloud or client apps. If your edits pertain to multiple manual versions, be prepared to backport as needed.

To edit a document, you can edit the .rst files on your local system, or work directly on Github. The latter is only suitable for small fixes and improvements because substantial editing efforts can better be controlled on your local PC.

The best way is to install a complete Sphinx build environment and work on your local PC. You will be able to make your own local builds, which is the fastest and best way to preview for errors. Sphinx will report syntax errors, missing images, and formatting errors. The Github preview is not complete and misses many mistakes. Create a new branch against the master or stable branch you are editing, make your edits, then push your new branch to Github and open a new PR.

To edit on Github, fork the repository (see top-right of the screen, under your username). You will then be able to make changes easily. Once done, you can create a pull request and get the changes reviewed and back into the official repository.

Building

Linux / OS X

First, make sure that the following are installed:

  • Python 2 (2.6.0 or better, Python 3 is not yet supported!)
  • Python Image Library (PIL) - (the package is called something like python-pillow)
  • Sphinx (e.g. sudo yum install python-sphinx), on Mac: sudo easy_install Sphinx
  • Sphinx PHPDomain (e.g. sudo easy_install sphinxcontrib-phpdomain)
  • rst2pdf (e.g. sudo easy_install rst2pdf)
  • svgexport npm install svgexport -g (to build the dev manual)

...then enter any manual directory, then run make html. The result can be found in the _build/html subdirectory. PDFs can be built with the make latexpdf command and are found in _build/latex/ directory.

The openSUSE way

  • sudo zypper in python-Sphinx
  • sudo zypper in python-rst2pdf
  • sudo zypper in python-sphinxcontrib-phpdomain # requires repository "devel:languages:python"
  • sudo zypper in pdfjam # pull in latexpdf and all of texlive
  • sudo zypper in texlive-threeparttable
  • sudo zypper in texlive-wrapfig
  • sudo zypper in texlive-multirow
  • make user-manual-pdf
  • okular user_manual/_build/latex/NextcloudUserManual.pdf

The Debian/Ubuntu way

  • sudo apt-get install python-pil
  • sudo apt-get install python-sphinx
  • sudo apt-get install python-sphinxcontrib.phpdomain
  • sudo apt-get install rst2pdf
  • sudo apt-get install texlive-fonts-recommended
  • sudo apt-get install texlive-latex-extra
  • sudo apt-get install texlive-latex-recommended
  • sudo apt-get install latexmk
  • make user-manual-pdf
  • evince user_manual/_build/latex/NextcloudUserManual.pdf

The Arch Linux way

  • sudo pacman -S python2-sphinx
  • sudo pacman -S extra/texlive-core
  • sudo pacman -S texlive-latexextra
  • sudo pip2 install rst2pdf sphinxcontrib-phpdomain
  • sudo ln -s /usr/bin/sphinx-build2 /usr/bin/sphinx-build
  • make user-manual-pdf
  • PDFVIEWER user_manual/_build/latex/NextcloudUserManual.pdf

Windows

Running setup.cmd will install Python 2.7 and install all dependencies.

Enter any manual and clicking the "Build HTML" shortcut will create a HTML build. Likewise, "Build PDF" will build the PDF using the more lightweight, but feature-incomplete RST2PDF tool. The results are in _build/html and _build/pdf respectively.

Importing Word and OpenDocument files

Sometimes, existing documentation might be in Word or LibreOffice documents. To make it part of this documentation collection, follow these steps:

Prerequisites

  1. Install Python 2.x
  2. Install odt2sphinx (easy_install odt2sphinx)
  3. Install GCC/clang (Xcode command line tools required on Mac OS)

Process

  1. doc/docx files need to be stored as odt first
  2. Run odt2sphinx my.docx
  3. Move the resulting rst files in place and reference them
  4. Wrap text lines at 80 chars, apply markup fixes

Icons

To compile and update the icons list in the designer manual, you will also need 1. inkscape 2. sass 3. unzip 4. wget

documentation's People

Contributors

bernhardposselt avatar blizzz avatar butonic avatar christophwurst avatar danimo avatar danxuliu avatar deepdiver1975 avatar dietmaroc avatar githubuser4234 avatar herbrechtsmeier avatar j-ed avatar josh4trunks avatar jospoortvliet avatar juliushaertl avatar keyboardmidas avatar lukasreschke avatar mariusbluem avatar mmattel avatar morrisjobke avatar nickvergessen avatar oparoz avatar peterdamian avatar randolfcarter avatar raydiation avatar rullzer avatar schiessle avatar skjnldsv avatar tflidd avatar vgezer avatar wakeup avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.