3.6 KiB
3.6 KiB
nvim-nim 
Nim support for Neovim
TODO
-
Add global options for user
-
Indendation
-
Doc
- Bindings
- Options
- Commands
- Using with other plugins
-
Syntax
- Keywords
- Operator precedence different colors
- Numbers
- String
- Highlight variable names semantically
- Multiline comments
-
File based configuration
- Read project file
- Create project file
-
Compiler support
- Make with nim check
-
Nimsuggest
- Usages
- Jump to definition
- Show typeinfo
- Outline
- Highlight
-
Commands
- NimDefinition
- NimOutline
- NimInfo
- NimUsages
- NimUsagesProject
- NimRenameSymbol
- NimRenameSymbolProject
-
Misc
- Airline integration
-
IDE features
-
Neomake
-
View online documentation
-
Outline with a proper tagbar
-
Search and view online documentation
-
Usages with unite
-
Outline with unite
-
Parse proc parameter types for parameter completion
-
When lines are added or removed use cached highlighter results
-
When editing line, remove highlighter results from that line
-
Autocompletion
- Autocompletion with ycm
- Auto complete modules
- Snippet/documentation support after complete
-
Debugging
-
Commands
- Run file in debug mode
- Step into
- Step over
- Skip current
- Continue
- Ignore
- Toggle breakpoint (insert breakpoint pragma and conceal it)
-
While on breakpoint
- NimDebuggerEval
- NimDebuggerEvalOutput [file]
- NimDebuggerSetMaxdisplay
- NimDebuggerWhere
- NimDebuggerUp
- NimDebuggerDown
- NimDebuggerStackframe [file]
- NimDebuggerCallstack
- NimDebuggerListLocals (could be automated into a buffer)
- NimDebuggerListGlobals (could be automated into a buffer)
-
Buffer for listing breakpoints
- Enable and disable breakpoints
-
Watches
- Toggle watchpoint (insert watchpoint and conceal it)
- Watchpoint buffer with all watches and values
-
-
REPL
- NimREPL
- NimREPLEvalFile
- NimREPLSend
- NimREPLEvalExpression
-
-
Utils
- Parse proc/template/method type information
- "Haskellify" typesignatures
-
Add tests
-
CI integration
-
Test nimsuggest for surprises
-
Unit tests
- Suggest module
- Async
- Sync
- Suggest module
-
Integration tests
- NimDefinition
- NimOutline
- NimInfo
- NimUsages
- NimUsagesProject
- NimRenameSymbol
- NimRenameSymbolProject
-
Roadmap
v0.1
- Everything works for single file without project dependency
v0.2
v0.3
TASKS
- Sync version communicating with nimsuggest
- Test dependency versions
- Add roadmap
BUGS
- Not all lines are read from stdin for some reason with job-control
