| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
| |
fixes #24109
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a few fixes for when using code blocks with lines numbered
- Use CSS variables for the colours so that it works in dark mode
- Don't turn on normal table effects like hover and smaller font when
its a line number table
- With dochack.nim, don't add a clipboard copy button for the line
numbers at the side
[Example page showing the
changes](https://66dcde6e4a655efb70771d9a--dazzling-kitten-6c3419.netlify.app/)
|
|
|
|
| |
Fixes #23846. Probably, nimArgs should be prepended in other places
(e.g. `buildDocSamples`).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Because of the bug in `tools/parse_unicodedata.nim`, CJK Ideographs were
not considered letters in `isAlpha()`, even though they have category
Lo. This is because they are specified as range in `UnicodeData.txt`,
not as separate characters:
```
4E00;<CJK Ideograph, First>;Lo;0;L;;;;;N;;;;;
9FEF;<CJK Ideograph, Last>;Lo;0;L;;;;;N;;;;;
```
The parser was not prepared to parse such ranges and thus omitted almost
all CJK Ideographs from consideration.
To fix this, we need to consider ranges from `UnicodeData.txt` in
`tools/parse_unicodedata.nim`.
|
|
|
|
|
| |
I could trivially port Nim to NetBSD/aarch64 because it already
supported NetBSD and aarch64. I only needed to generate `c_code` for
this combination.
|
|
|
|
| |
* remove some dead code and leftovers from past features
* fix yaml printing of uint64 literals
|
|
|
|
|
|
| |
I have added a note for installment
https://github.com/nim-lang/htmlparser/pull/5
> In order to use this module, run `nimble install htmlparser`.
|
| |
|
|
|
| |
Co-authored-by: Clay Sweetser <Varriount@users.noreply.github.com>
|
| |
|
| |
|
|
|
|
|
| |
* Atlas: now in its own repository
* progress
|
|
|
|
| |
* Remove Deprecated Nimfix
* Trailing whitespace cleanups
|
|
|
|
|
|
|
| |
* add const RLIMIT_STACK
* generate by detect.nim
* add generated const for linux-amd64
|
|
|
|
|
| |
linking (#22026)
[vcc]makes paths relative when possible fixes #22025
|
| |
|
|
|
|
|
| |
* Atlas: avoid segfault on failed Github search
* Return empty array on failed search instead of nil
|
|
|
|
|
| |
Use copyFileWithPermissions to copy nim executable
Co-authored-by: SirOlaf <>
|
|
|
|
|
| |
* Atlas: virtual environments
* fixes
|
| |
|
| |
|
|
|
| |
fixes atlas logging colors
|
|
|
|
| |
Now any deps with unspecified version reqs will checkout the last
tagged commit instead of the first commit.
|
|
|
|
|
| |
* ship atlas and build documentation
* move atlas.md and link it in tools' index
|
|
|
|
|
|
|
| |
* Atlas: use colored output
* fixes merge conflict
* another tiny improvement
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Initial structure, `GitTags` → `GitRefsTags`
* Determine if we should use v prefix
* get tag from latest tag, patch nimble file
* Just do tags for now
* atlas tag now tags and pushes
* Improve UX of `atlas tag`
* better description for `tag`
* Small fixup
* Consistent naming
* strip after checking status
* Take major/minor/patch as arg for `atlas tag`
* undo testing comment
* Fix for `v` prefixed versions
* Avoid useless assignment
* Remove uselss enum assignment
* Consistent parameter seperation
* Add error handling for non-semver tags
* Use `assert` to quit on error
* Update tools/atlas/atlas.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* Don't push tags if errors occurred
* Allow `atlas tag [tag]` again
* Add atlas tag `a..z` for fields > 3
* Document the three input options
* Take up less lines in help
* Less or in help
* One last doc pass
* Check args length
* clarify last tag
* consistency/order
---------
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
|
| |
|
|
|
|
|
| |
* Atlas: fixes 'use' command
* Atlas: refactoring + make tests green again
|
| |
|
|
|
|
|
|
|
|
|
| |
* Get description and license from github json response
* Allow running `atlas search` outside of a workspace
* Check `len` instead of `dirExists`
* make `list` identical to `search`
|
| |
|
|
|
|
|
|
|
|
|
| |
* .
* Fix nimgrab client not closing
* Fix nimgrab client not closing
* Fix nimgrab client not closing
|
|
|
| |
Co-authored-by: SirOlaf <>
|
|
|
|
|
| |
* Atlas: misc
* Atlas: use the lockfile if one exists
|
|
|
|
|
|
|
|
|
| |
* atlas: better docs
* better workspace/project handling
* make tests green again
* bugfix
|
|
|
|
|
| |
* Atlas: added 'use' command
* typo
|
|
|
|
|
| |
(#21895)
Atlas: first lockfiles implementation; cleared up upated vs updateWorkspace commands
|
|
|
|
|
| |
* minor atlas improvements
* atlas: support a _deps workspace subdirectory
|
|
|
|
|
|
|
| |
(#21884)
* Atlas tool: search github too, no need to register your project at packages.json
* added missing file
|
|
|
|
|
| |
* clean up SOME pending/xxx/issue link comments
* great
|
|
|
|
|
| |
* build documentation for md5 and sha1
* fixes documentation reference
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* move sha1, md5 to nimble packages
* boot the compiler
* fixes tests
* build the documentation
* fixes docs
* lol, I forgot koch.nim
* add `nimHasChecksums` define
* clone checksums but maybe copying is better
* bump nimble hash
* use ChecksumsStableCommit
* fixes tests
* deprecate them
* fixes paths
* fixes koch
|
| |
|
|
|
|
|
|
|
|
|
| |
* Fix custom objects, fix handling of nil variables
* Rename because lldb complains about dashes in filename
* Add example of how to use custom type formatting from Nim
* Add synthetic objects with dynamic fields and add an example
|
|
|
|
|
| |
* fixes #21461; Move nim-gdb.py and add nim-lldb.py
* fixes bad path for nim-gdb.py
|
|
|
|
|
|
|
|
|
| |
* Support for printing tuple types
* Add test of printing a tuple
* Add support for printing tuples in GDB
* Forgot to [skip ci]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add support for orc strings
* Cleaned up testing script
Enums now printing properly
Merged both old and new strings into the one printer
Moving onto sets which seem kinda difficult
* Sets working
Instead of trying to imitate how Nim represents enums, I just call the dollar proc for each enum value
While this runs into problems if the user doesn't call the dollar proc anywhere, I believe its a decent tradeoff
I've cleaned up the error message for when it cannot find dollar proc (Might add in proper message on how to fix)
* Support sequences
V2 runtime seems to have sequences that don't have a len (Guessing its some kind of short seq optimisation?) but I've rolled
the implementation into normal sequences since the implementation is practically the same
* Clean up test program so it isn't using diff
Also don't redirect the first nim compile to /dev/null so that we can check for any compilation errors
I found the diff to be annoying to read (Seeing as the test script already performs diffing)
* Tables are now supported
* Add colours to test output
It was getting difficult to tell apart test output from GDB output so I added colour to better tell them apart
* Both old and new runtime are working
Set exit code in python test script so that this could possibly be added to the CI. Only issue is that it can be flaky (GDB crashes randomly for some reason)
* Remove old code that was commented out
If I need it later I'll just use git
* Remove branch that never runs
* Remove the old test output [skip ci]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* docgen: implement cross-document links
Fully implements https://github.com/nim-lang/RFCs/issues/125
Follow-up of: https://github.com/nim-lang/Nim/pull/18642 (for internal links)
and https://github.com/nim-lang/Nim/issues/20127.
Overview
--------
Explicit import-like directive is required, called `.. importdoc::`.
(the syntax is % RST, Markdown will use it for a while).
Then one can reference any symbols/headings/anchors, as if they
were in the local file (but they will be prefixed with a module name
or markup document in link text).
It's possible to reference anything from anywhere (any direction
in `.nim`/`.md`/`.rst` files).
See `doc/docgen.md` for full description.
Working is based on `.idx` files, hence one needs to generate
all `.idx` beforehand. A dedicated option `--index:only` is introduced
(and a separate stage for `--index:only` is added to `kochdocs.nim`).
Performance note
----------------
Full run for `./koch docs` now takes 185% of the time before this PR.
(After: 315 s, before: 170 s on my PC).
All the time seems to be spent on `--index:only` run, which takes
almost as much (85%) of normal doc run -- it seems that most time
is spent on file parsing, turning off HTML generation phase has not
helped much.
(One could avoid it by specifying list of files that can be referenced
and pre-processing only them. But it can become error-prone and I assume
that these linke will be **everywhere** in the repository anyway,
especially considering https://github.com/nim-lang/RFCs/issues/478.
So every `.nim`/`.md` file is processed for `.idx` first).
But that's all without significant part of repository converted to
cross-module auto links. To estimate impact I checked the time for
`doc`ing a few files (after all indexes have been generated), and
everywhere difference was **negligible**.
E.g. for `lib/std/private/osfiles.nim` that `importdoc`s large
`os.idx` and hence should have been a case with relatively large
performance impact, but:
* After: 0.59 s.
* Before: 0.59 s.
So Nim compiler works so slow that doc part basically does not matter :-)
Testing
-------
1) added `extlinks` test to `nimdoc/`
2) checked that `theindex.html` is still correct
2) fixed broken auto-links for modules that were derived from `os.nim`
by adding appropriate ``importdoc``
Implementation note
-------------------
Parsing and formating of `.idx` entries is moved into a dedicated
`rstidx.nim` module from `rstgen.nim`.
`.idx` file format changed:
* fields are not escaped in most cases because we need original
strings for referencing, not HTML ones
(the exception is linkTitle for titles and headings).
Escaping happens later -- on the stage of `rstgen` buildIndex, etc.
* all lines have fixed number of columns 6
* added discriminator tag as a first column,
it always allows distinguish Nim/markup entries, titles/headings, etc.
`rstgen` does not rely any more (in most cases) on ad-hoc logic
to determine what type each entry is.
* there is now always a title entry added at the first line.
* add a line number as 6th column
* linkTitle (4th) column has a different format: before it was like
`module: funcName()`, now it's `proc funcName()`.
(This format is also propagated to `theindex.html` and search results,
I kept it that way since I like it more though it's discussible.)
This column is what used for Nim symbols resolution.
* also changed details on column format for headings and titles:
"keyword" is original, "linkTitle" is HTML one
* fix paths on Windows + more clear code
* Update compiler/docgen.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* Handle .md and .nim paths uniformly in findRefFile
* handle titles better + more comments
* don't allow markup overwrite index title for .nim files
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
|
|
|
|
|
| |
* replace `symbolfiles` with `incremental`; fixes warnings when build csources
* fixes self conversion warnings
|