diff options
-rw-r--r-- | doc/prelude.rst | 29 | ||||
-rw-r--r-- | lib/pure/prelude.nim | 28 | ||||
-rw-r--r-- | tools/kochdocs.nim | 1 |
3 files changed, 16 insertions, 42 deletions
diff --git a/doc/prelude.rst b/doc/prelude.rst deleted file mode 100644 index 737e0f34e..000000000 --- a/doc/prelude.rst +++ /dev/null @@ -1,29 +0,0 @@ -Prelude -======= - -This is an include file that simply imports common modules for your convenience: - -.. code-block:: nim - include std/prelude - -Same as: - -.. code-block:: nim - import std/[os, strutils, times, parseutils, hashes, tables, sets, sequtils, parseopt] - - -Examples -======== - -Get the basic most common imports ready to start coding using ``prelude``: - -.. code-block:: nim - include std/prelude - - echo now() - echo getCurrentDir() - echo "Hello $1".format("World") - - -See also: -- `Sugar <sugar.html>`_ diff --git a/lib/pure/prelude.nim b/lib/pure/prelude.nim index 5da608961..f1728b5f7 100644 --- a/lib/pure/prelude.nim +++ b/lib/pure/prelude.nim @@ -7,18 +7,22 @@ # distribution, for details about the copyright. # -## This is an include file that simply imports common modules for your -## convenience: -## -## .. code-block:: nim -## include std/prelude -## -## Same as: -## -## .. code-block:: nim -## import std/[os, strutils, times, parseutils, hashes, tables, sets, sequtils, parseopt] +when defined(nimdoc) and isMainModule: + from std/compileSettings import nil + when compileSettings.querySetting(compileSettings.SingleValueSetting.projectFull) == currentSourcePath: + ## This is an include file that simply imports common modules for your convenience. + runnableExamples: + include std/prelude + # same as: + # import std/[os, strutils, times, parseutils, hashes, tables, sets, sequtils, parseopt] + let x = 1 + assert "foo $# $#" % [$x, "bar"] == "foo 1 bar" + assert toSeq(1..3) == @[1, 2, 3] + when not defined(js) or defined(nodejs): + assert getCurrentDir().len > 0 + assert ($now()).startsWith "20" -# xxx deduplicate with prelude.rst + # xxx `nim doc -b:js -d:nodejs --doccmd:-d:nodejs lib/pure/prelude.nim` fails for some reason + # specific to `nim doc`, but the code otherwise works with nodejs. import std/[os, strutils, times, parseutils, hashes, tables, sets, sequtils, parseopt] - diff --git a/tools/kochdocs.nim b/tools/kochdocs.nim index ca0e07ccc..ab9911a0a 100644 --- a/tools/kochdocs.nim +++ b/tools/kochdocs.nim @@ -143,7 +143,6 @@ lib/posix/termios.nim # some of these are include files so shouldn't be docgen'd ignoredModules = """ -lib/pure/prelude.nim lib/pure/future.nim lib/pure/collections/hashcommon.nim lib/pure/collections/tableimpl.nim |