Replies: 5 comments 17 replies
-
Starting refactoring the configuration management a bit (see 683f512). Hopefully I can get this done by the end of the week-end. The configuration itself will not change, so no breaking changes or anything like that are to be expected. I basically want to move it all out of the main file and make it easier to access from other modules. Now I have to edit the billion calls to |
Beta Was this translation helpful? Give feedback.
-
I had some delays due to the holidays and needing to spend some time learning the internals of NeoVim first, but I'm getting started on the refactor. I'm starting by trying to get main merged into refact. General process for the bit I've done so far has been to take new code from main but make sure it's using the names as changed in refact when, e.g., config was pushed into a separate file. So far, I haven't seen any new functionality in refact, which makes sense since it's a refactor branch, so there hasn't been any real issue with it, but I'm not super deep in. Once I get that done, I want to go through and take a look at each function in telekasten.lua and summarize the key steps in what it's doing. With that, it should be easier to see how functions should be split, combined, and moved to new files. It will also be a good time to make sure paths are being handled by plenary.path(). Finally, after those, I should be able to handle the markdown links. Syntax highlighting seems like it's probably going to require more specialized knowledge than I currently have or am likely to be able to develop soon, so I will likely need to leave that to someone else. I'm hoping to finish merging main in the next couple days, but it may take until some time next week. Would really like to have the markdown links working ASAP, so I'm hoping I can keep chugging along at a good pace. |
Beta Was this translation helpful? Give feedback.
-
@renerocksai, looks like @TheTaoOfSu is getting pretty involved in Telekasten and doing significant work here. You discussed previously the possibility to move Telekasten to an organization rather than a personal repo. This may drive more contributors to the project and simplify the development. Could you try to find some time to put that in motion? I can be an admin for the organization alongside you if you are ok with that so I can manage everything and not bother you anymore 😄 |
Beta Was this translation helpful? Give feedback.
-
Is there some decent documentation on Telescope and/or Plenary? Figuring things out straight from the code gets cumbersome when the functions use other internal functions that may themselves sometimes use other internal functions... It doesn't seem super important that I understand exactly how some of these functions work, but it'd be nice to. |
Beta Was this translation helpful? Give feedback.
-
I just finished a first pass at commenting all the functions in telekasten.lua. Primarily, this focused on comments at the start of function definitions to explain a bit and note a potential destination file, although I did sprinkle in a few TODOs and mid-function clarifications along the way, so it's not all focused on the refactor. Some will likely be worth keeping, some will be cleared as TODOs are completed and the refactor progresses, but some I'm not sure. One such thing I included was a note of the parameters' and return values' types in the form "param type, param type,... -> return type, return type,...". Although my Lua knowledge is limited, its flexibility suggests this may be a little unusual for Lua code, but I personally find you can get a lot of basic questions about functions answered relatively quickly if you can just clearly tell the types of the inputs and outputs combined with a decent function name, even if the rest of the comments are lacking or nonexistent. I did notice that a large majority of functions seemed fit for utils/files.lua, so I'm going to step away for a bit before I reevaluate some of it and see if I've been neglecting some other choices. Either way, soon after, I'll start moving functions around and doing my best to make sure functions are still addressed appropriate wherever they may be called from. I don't think a lot of these comments need to be pushed upstream, so I won't make a request for what I have right now. If you want to check it out, you can see the new telekasten.lua here or the diff view here. I'm hoping to get all the functions moved tonight now that I know what most do and where they should go, so don't worry about it if you don't get to look at it soon. |
Beta Was this translation helpful? Give feedback.
-
Hi all!
I finally managed to set aside a bit of time every week-end to work on Telekasten! Yay!
I plan to proceed as follows:
Hopefully by working on all this, I should simultaneously fix a few bugs and issues here and there. I will try to progress slowly and with caution in order to avoid any unfortunate breakage on your side. Ideally it would be nice to have some testers that would install the
refactor
branch and validate the changes I make before I merge them.So, to be clear, I do not plan on adding new features straight away. I think the first step is really to make the code more "maintainable" first so maybe we can get more people involved as well.
Beta Was this translation helpful? Give feedback.
All reactions