Comments (7)
Hello! thanks for chiming in !
vim-doge doesn't need to specify the type to annotate.
Could we have similar features?
In theory we could indeed, but we need to do it well if we're about to do it.
Just for you to know, atm, in order to generate the annotations we:
- call the annotator function with a specified type
- search the first upper node that matches the type
- Generate the annotations for the node
I think it is not a problem if we only have classes, and functions annotations (and templates too). What happens if we have the cursor on a type
annotation ? Like this:
local function test()
local test_var = do_smt() --> cursor on this line will generate a type annotation just before this line
-- this is a comment
end
from neogen.
I think the behavior in the comment is decent.
from neogen.
Sorry for putting this feat on hold, as it was the holidays season. I'm thinking about it right now:
Do you know what's the logic behind vim-doge automatic selection ? Or better, what do you think will be the best:
- Going up in the tree until we stop on a first matching node, no matter what the type?
- Having a priority list of types, that we will loop until we stop on a matching node, i.e:
priority = { "func", "class", "type", ...}
from neogen.
I am not familiar with the vim-doge's logic.
Personally, I prefer the second option.
Maybe some polls may help.
from neogen.
This will have the same complexity (mostly) as this issue (point 2): #53 (comment)
I will try to keep this open for a while, in case someone wants to comment
from neogen.
@meijieru I recommend following and testing #74
from neogen.
#116 Implemented this feature, see Neogen 2.11 !
from neogen.
Related Issues (20)
- Incorrect parameter list in Python HOT 2
- Have you ever thought about introducing ChatGPT as a document generation engine, just like Mintify Writer? HOT 1
- Python bug - nested functions should not have their first parameter removed
- Empty types in jsdoc HOT 4
- Highlight groups of block after docstring changes after completion of final choice node HOT 1
- This structure cannot generate annotations through neogen
- Module 'neogen.types.template' not found
- Feature Request - Support NeoVim native snippet engine HOT 2
- `Invalid 'end_col': out of range` error whenever running `Neogen file` HOT 2
- Bug: handling of arbitrary args and kwargs with type hints HOT 1
- Allow generating explicit sections HOT 3
- Update / Correction command HOT 2
- Python - raise module_name.Error() is not detected
- Bug: Neogen not functioning in vue files. HOT 2
- Could not get neogen to work with LazyVim HOT 4
- Need unittests HOT 1
- Missing blank line in numpydoc
- Option to always disable writing argument types in Python HOT 2
- FR: support creating annotations in Markdown code blocks HOT 1
- Sometimes native snippets do not expand on tab
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from neogen.