diff --git a/doc/images/qtcreator-kit-nimble.png b/doc/images/qtcreator-kit-nimble.png new file mode 100644 index 00000000000..fd21928ef99 Binary files /dev/null and b/doc/images/qtcreator-kit-nimble.png differ diff --git a/doc/images/qtcreator-project-nimble.png b/doc/images/qtcreator-project-nimble.png new file mode 100644 index 00000000000..ae928bebc2a Binary files /dev/null and b/doc/images/qtcreator-project-nimble.png differ diff --git a/doc/src/howto/creator-only/creator-cli.qdoc b/doc/src/howto/creator-only/creator-cli.qdoc index e02b026409a..16b453e74cf 100644 --- a/doc/src/howto/creator-only/creator-cli.qdoc +++ b/doc/src/howto/creator-only/creator-cli.qdoc @@ -31,7 +31,7 @@ /*! \contentspage index.html - \previouspage creator-project-generic.html + \previouspage creator-project-nimble.html \page creator-cli.html \nextpage creator-keyboard-shortcuts.html diff --git a/doc/src/projects/creator-only/creator-projects-creating.qdoc b/doc/src/projects/creator-only/creator-projects-creating.qdoc index f607f5655f9..d84cfd537fa 100644 --- a/doc/src/projects/creator-only/creator-projects-creating.qdoc +++ b/doc/src/projects/creator-only/creator-projects-creating.qdoc @@ -212,16 +212,12 @@ Plain C or C++ application that uses qmake, Qbs, or CMake but does not use the Qt library - \li Nim Application (experimental) + \li Nim or Nimble Applications (experimental) - \l{http://nim-lang.org/}{Nim} application that uses qmake - or CMake but does not use the Qt library + Nim or Nimble application that uses Nimble, but does not use + the Qt library - \note The \uicontrol {Nim Application} option becomes visible - after you enable the experimental Nim plugin. Select - \uicontrol Help > \uicontrol {About Plugins} > - \uicontrol {Other Languages} > \uicontrol Nim, and then restart - \QC. + For more information, see \l {Setting Up Nimble}. \endlist diff --git a/doc/src/projects/creator-only/creator-projects-generic.qdoc b/doc/src/projects/creator-only/creator-projects-generic.qdoc index 56593f9cce8..01056384a32 100644 --- a/doc/src/projects/creator-only/creator-projects-generic.qdoc +++ b/doc/src/projects/creator-only/creator-projects-generic.qdoc @@ -33,7 +33,7 @@ \contentspage index.html \previouspage creator-projects-autotools.html \page creator-project-generic.html - \nextpage creator-cli.html + \nextpage creator-project-nimble.html \title Setting Up a Generic Project diff --git a/doc/src/projects/creator-only/creator-projects-nimble.qdoc b/doc/src/projects/creator-only/creator-projects-nimble.qdoc new file mode 100644 index 00000000000..a517d633835 --- /dev/null +++ b/doc/src/projects/creator-only/creator-projects-nimble.qdoc @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Creator documentation. +** +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** +****************************************************************************/ + +/*! + \contentspage index.html + \previouspage creator-project-generic.html + \page creator-project-nimble.html + \nextpage creator-cli.html + + \title Setting Up Nimble + + \l {https://github.com/nim-lang/nimble#readme}{Nimble} is a package + manager for the Nim programming language. It is delivered with + \l{https://nim-lang.org/}{Nim} and uses the Nim compiler to generate + executables that are supported on Windows, Linux, and \macos. + + To use \QC for Nim development, you need to enable the experimental + Nim plugin. Select \uicontrol Help > \uicontrol {About Plugins} > + \uicontrol {Other Languages} > \uicontrol Nim, and then restart \QC. + + In addition, you have to download and install Nim and set up a Nim kit + in \QC. + + You can use wizards to create Nim and Nimble projects. + + \section1 Setting Up the Development Environment + + To configure \QC to build Nim executables: + + \list 1 + \li Select \uicontrol Tools > \uicontrol Options > \uicontrol Kits + \uicontrol Compilers > \uicontrol Add > \uicontrol Nim to specify + the path to the the Nim compiler. + \li Select \uicontrol Apply to add the compiler. + \li Select \uicontrol Kits > \uicontrol Add to add a kit for building + applications with Nimble: + \image qtcreator-kit-nimble.png "Nimble kit" + \list 1 + \li In the \uicontrol Name field, specify a name for the kit. + \li In the \uicontrol Compiler group, \uicontrol Nim field, + select the Nim compiler you added above. + \li Select \uicontrol Apply to add the kit. + \endlist + \endlist + + \section1 Creating Nimble Applications + + To use a wizard to create boilerplate files for a Nim package that is + managed with Nimble: + + \list 1 + \li Select \uicontrol File > \uicontrol {New File or Project} > + \uicontrol Projects > \uicontrol {Non-Qt Project} > + \uicontrol {Nimble Application}. + \li Specify the name and location of the application. + \li Select \uicontrol Next. + \li Specify information about your application package. + \image qtcreator-project-nimble.png + \li Select \uicontrol Next to create the project. + \endlist +*/ diff --git a/doc/src/projects/creator-only/creator-projects-other.qdoc b/doc/src/projects/creator-only/creator-projects-other.qdoc index 7b664135359..0d02868d208 100644 --- a/doc/src/projects/creator-only/creator-projects-other.qdoc +++ b/doc/src/projects/creator-only/creator-projects-other.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2018 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Creator documentation. @@ -68,6 +68,12 @@ code editor and to fully control the steps and commands used to build the project. + \li \l{Setting Up Nimble} + + The experimental \l{https://nim-lang.org/}{Nim} plugin integrates + the Nimble package manager for generating Nim application + executables that are supported on Windows, Linux, and \macos. + \endlist */ diff --git a/doc/src/qtcreator-toc.qdoc b/doc/src/qtcreator-toc.qdoc index b2d7b6937a9..31d99a99ab8 100644 --- a/doc/src/qtcreator-toc.qdoc +++ b/doc/src/qtcreator-toc.qdoc @@ -216,6 +216,7 @@ \li \l{Setting Up Qbs} \li \l{Setting Up an Autotools Project} \li \l{Setting Up a Generic Project} + \li \l{Setting Up Nimble} \endlist \li \l{Using Command Line Options} \li \l{Keyboard Shortcuts}