Collection of ideas for nim doc
improvements (low priority)
#75
Replies: 5 comments 1 reply
-
Language specification is built using block subtype_match:
## Subtype match - argument is a subtype of the procedure argument. Note that this
## requirement is related to inheritance (because of subtyping), but does not
## replace `method`'s functionality. It also works with `{.inheritable.}` types and
## `object of RootObj` (in addition to `ref object of RootObj`) whereas `method`
## requires `ref` to be used.
block inheritable_pragma:
## `{.inheritable.}` provides subtyping capabilities
type
Base {.inheritable.} = object
field: int
Derived = object of Base
field2: int The whole spec could easily be turned into a |
Beta Was this translation helpful? Give feedback.
-
Making nimble doc --project --outdir:docs \
'--git.url:https://github.com/${{ github.repository }}' \
'--git.commit:${{ github.sha }}' \
"--git.devel:$branch" \
gittyup.nim |
Beta Was this translation helpful? Give feedback.
-
Forgot to mention Sourcetrail support is going to be a good feature to have as well - it is easy to implement and maintain (there is a question of reusing c++ db driver vs rewriting it in nim - latter one is quite easy to do, and the code won't change afterwards). Sourcetrail support is already implemented for haxdoc, just need to be cleaned up and simplified for nim doc. |
Beta Was this translation helpful? Give feedback.
-
All features of |
Beta Was this translation helpful? Give feedback.
-
Priority: Remove Nim Logo at the bottom of the doc page. It's probably trademark infringement |
Beta Was this translation helpful? Give feedback.
-
For now, I just want to have a single place to put all the ideas about improvements on the
nim doc
command - it is not a major priority right now (it is not on the main roadmap since it can be easily categorized as "bells and whistles improvements" - until we have a fundamental parts of the language fixed all distractions can be somewhat postponed).Having said that,
nim doc
output is in absolutely abysmal state, and I feel that at least having a general improvement direction is a good step.nim doc --project
outputwelcome.rst
page unless specifically configured and creates an absolutely insane page with all modules linked into it--json
produces a barely formatted original source codeusing
declarations are not expanded,when
sections are either hidden or missing field types, none of the documentation comments are properly parsed out in fields/enums.:idx:`entry`
- that one can be reused. Implicitly triggering semantics each timeargumentName
is encountered in the body is probably an overkill, butBeta Was this translation helpful? Give feedback.
All reactions