| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This pragma did nothing.
Ref:
- https://github.com/nim-lang/Nim/issues/2172#issuecomment-383276469
- https://github.com/nim-lang/Nim/issues/12975
|
|
|
|
|
|
| |
The operator fetching proc is greedy, so operators such as `%*` in
expression `%*{}` can't be highlighted.
This commit fixes that.
|
| |
|
| |
|
|
|
|
|
| |
* fix .deprecated. object typedef crash
* fixup a test that i don't understand
* disable the test rather than debug ci
|
|
|
|
|
|
|
|
| |
This reverts commit a974684b149faa19645f1e18b7b11aa67f169997.
The CRLF was to separate between each response, and removing them causes
the responses to not be splitted correctly.
I didn't notice that it was in a loop when I made the #13545.
|
|
|
| |
This is already sent by replTcp after the message is sent.
|
|
|
|
| |
a few magic numbers with consts (#13170)
|
| |
|
| |
|
|
|
| |
This allows for the type of a variable to be retrieved.
|
|
|
|
|
|
|
| |
The line info should now points to the `a`, not the `*`, like this:
a*: string
^
Additionally this fixes nimsuggest's highlighting of exported object
fields.
|
| |
|
|
|
|
|
|
|
| |
This can be used to let nimsuggest users know which project is
nimsuggest being in charge of, so they can know when should a new
nimsuggest instance be spawned.
An additional feature is to debug the project file finding feature.
|
| |
|
|
|
|
|
|
|
|
| |
Same as e9fa4c9b9c8e2926449399a69a02676936bb842c, but for the epc
backend which is used by emacs and vscode plugin.
Since the EPC backend only deal with one connection per nimsuggest
instance, only one socket is leaked, thus not as servere as with the tcp
backend.
|
|
|
|
|
|
| |
A new socket is created for each iteration and leak immediately thanks
to the accept() call replacing the created socket with the client socket.
This commit fixes that.
|
| |
|
|
|
|
| |
* fixes #12125
|
| |
|
|
|
|
|
|
| |
The default starting parameters for `line` and `col` were switched.
See line 141: "line starts at 1, column at 0, dirtyfile is optional".
Also, in `TLineInfo` object, `line` is uint16, `col` is int16.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#11385)
* make fullpaths the default in error messages and stack traces for more convenient development
* split up -d:release into -d:release and -d:danger flags
* workaround a Nim config parser bug
* fixes an old nim config parser bug
* make megatest green again
* make nimpretty tests work again
* make nimsuggest green
|
| |
|
|
|
|
|
| |
* allow void macro result
* add test for void macro result type
|
|
|
|
|
| |
* move assertions and iterators out of system.nim
* limit nimsuggest tests to the first 3 suggestions
|
|
|
|
| |
allows for more convenient debugging
|
| |
|
|
|
|
|
| |
* better docs: osproc
* fix a typo in the docs, deprecate "demon"
|
| |
|
|
|
|
| |
This makes signatures generated for nimsuggest correctly distinguish
template/macro/converter from proc.
|
|
|
| |
fixes #6199
|
|
|
|
|
|
|
|
|
|
| |
Previously the compiler would generate suggestions based on the symbol
identifier length, but that might not reflect the actual representation
of it within the actual source code.
This commit implements a simple source scanner for the suggest module to
address the problem outlined above.
Fixes nim-lang/nimsuggest#24
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The compiler believes these are where a macro call starts (marked with
`^`):
m "string"
^ ^
This commit addresses that.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* compiler/sem*: better lineinfo for templates
Lineinfo for templates is inconsistant across the compiler, for example:
doAssert true
^ ^
a[int](10)
^^ ^
The `^` marks where the compiler thinks the template starts.
For qualified call, we got the same situation with `proc`s before #10427:
system.once
^
Generics lineinfo within template declaration is also incorrect, for
example, this is where the compiler believes the `T` in `[T]` is:
template a[T](b: T)
^
This PR addresses all of these problems.
* nimsuggest: add tests for template highlighting
|
|
|
|
| |
The EPC backend of nimsuggest currently doesn't support nimsuggest
highlighter, see nim-lang/nim-mode#140
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously the compiler will believe these are where `newSeq` symbol
starts:
newSeq[int]()
^
system.newSeq[int]()
^
This commit moves them back to:
newSeq[int]()
^
system.newSeq[int]()
^
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* compiler/parser: preserve lineinfo for accent quoted symbols
Previously the lineinfo for symbol $$$ in this example is:
proc `$$$`
^
After this commit:
proc `$$$`
^
* compiler/semstmts: correct lineinfo for accent quoted idents
Previously nimsuggest would highlight this as:
proc `$$$`
^~~
After this commit:
proc `$$$`
^~~
* nimsuggest/tests: add a test for accent quoted proc
Disabled by default
|
| |
|
|
|
|
|
|
|
|
| |
* nimsuggest: prevent out-of-bound access
* fixes nim-lang/nimsuggest#76
* undo tester changes
|
|
|
|
|
|
|
|
| |
* Moved some code around in nimsuggest to avoid crash when run as library
* Moved the common executecallback setting to a procedure
* Fixed slight issue
|
|
|
|
|
|
| |
* Made nimsuggest importable as a library and add Nim-path override option
* Remove leftover debug output
|
| |
|
| |
|
| |
|
|
|
|
| |
between modules
|
|
|
|
|
|
|
|
|
| |
searched / run (#8682)
* run project config.nims if exists, then inputfile.nims if exists
* ~/.config/nim/config.nims can now be used
* also check in getSystemConfigPath for config.nims
* refactor handleCmdLine for nim and nimsuggest
|
| |
|