State of Neovim 2023

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] the state of neovim in 2023 my name is Justin keys I'm lead maintainer of neovim since pretty much the start of the project in 2014 this talk is about uh what happened this year since uh the last talk which was 12 months ago um so we'll talk about the the current status of the project uh notable things that happened um and maybe talk a bit about uh like the positioning of and like why is it relevant to to be working a lot and and uh deeply on a text editor in the year 2023 and then we'll also talk about maybe things that happen in the future assuming I get through all the slides because as usual I have way too many slides um but uh first uh some bad news which is uh we lost Bram mullar two months ago and uh this is a loss for for the software industry in general for engineering and uh also personally um I took it uh more harshly than I was uh expecting uh uh just because uh a personal character flaw of mine is that I uh when the world loses like a a highly competent uh person or or you know human uh I I I I I just uh I feel judgmental about uh the universe's choices I guess um Bram was a a paragon of of competence and um um for me he uh was uh one of my personal Heroes uh you know uh I i' in inv you know for For Better or Worse you know he's been he's been like he's he's uh he's been living rentree in my mind since 2014 if not earlier since 2012 actually you know I I I was a a close Observer of the videv mailing list um so I know him through through his uh interactions and thoughts that he shared just on the mailing list but also through through the code that he has written um so you know like uh the bulk of of what the world knows about B AR is is encoded in the hundreds of thousands of lines of uh code that is in the themm code base and so anyone who works on that codebase for 10 years get be get gets to know at least some some part of Bram very closely um and also people who follow the them Dev mailing list and so um my impressions of him were just that know he he was he was extremely like um interested in results uh above most other things and in particular results for for the users he would also he he would often invoke um user value as as sort of the uh the the the final decision maker uh when it came to like decid like weighing uh cost and benefits um the other the other thing that I really admired about him was uh his ability to focus and and like uh before moving on to to a new feature or new uh topic he he he he was pretty uh consistent about like uh driving the current topic to something that was fully formed um and uh something that uh surprised me though was uh like in the like you know the last you know after especially like after neovim uh emerged uh I I saw that Ram was very adaptive and uh so even even like kind of uh holy edicts that were written in the the documentation or the design principles of him uh would would be discarded if if the data and and if reality presented like new information to Bram he would just unceremoniously um discard anything that was in the way of user value um and uh one kind of description of this uh mode of thinking is posy with the the purpose of a system is what it does like it's intentions don't matter uh nearly as much as as the final result um and we try to also um apply these principles uh in NE them as well so that's the bad news and uh that that tempers uh the rest of this talk which is is mostly about good news and there is a lot of of good news though in the in the bubble of the neovim universe so starting out this year with statistics um uh GitHub downloads continue to be number go up um it's not really clear like exactly how meaningful those are but home BR is interesting uh they also kind of changed the way they counted things but like this is the first time where the the the neovim installs are almost like the same as Vim in previous years they were more like I think maybe 50% of of the Vim installs so something something is happening where Neo is just like it has sort of reached escape velocity and and critical mass and it's now um it's it's becoming like uh extremely popular Stocker would flow for the third year in a row compared to all other textes we we were voted most loved and on Reddit um the the growth relative to the to the Vim subredit is is growing very fast and we're now in top 2% of of of rankings across all subreddits compared to last year where we were top 5% but that just basically is decided by by the number of subscribers you have um and uh yeah we have we gained another 200 new contributors according to U to our our commit logs and and 200 out of those that total of 11,00 is is is from them roughly but compared to last year we gained 200 new new ofm contributors um and then here here's some here's an interesting kind of like relative measure of of activity on on Reddit which again just shows you like it's a signal of like uh people that are thinking about Vim Vim styled text editors like they're posting a lot on on the Neo some R and uh these numbers are kind of kind of weird but but I I kept this slide in here just because uh in the middle you can see there at least uh four of our of uh I think uh contributors that we gained this calendar year gutner noski W and um and Maria um are are some uh some uh very skilled and and appreciated contributors that we we gained this year so like just the rate of of of contributors that I'm seeing that are high quality that we're gaining is is is incomparable compared to previous years like um I remember in the first two years of neovim I I I used to to worry that you know we we're going to lose some of our of our best contributors just because it's hard to keep everybody happy but luckily um luckily uh we gained some some others instead many more um so these are just some rough stats uh we gained 100,000 new lines of code probably most of that is just like um generated files but but this is just a I guess uh worth mentioning that that we are generating lots of stuff now we probably could cut that in half but but the point is is that um we we have uh now what are kind of like uh typescript type definitions files where uh uh all of our our Lua modules now have uh type annotations um which is so so that means that like it's available programmatically and it's available to the user through a user interface where you can you can find the docs for for uh any of our standard Library uh features and U you can also type hints from from L LSP server and we merged uh about 2 200 commits since uh the o.9 release in April so you know that tracks to about like at least 3,000 commits per year which has been our Cadence uh since 2014 we we have 30,000 commits total in the repo and somehow we we're still just uh only merging 3,000 per year which is kind of interesting I haven't haven't really fully thought that through but it's interesting that all these other numbers are going up but but our our merged PRS is is roughly roughly the same per year not not that I necessarily want like more I don't necessarily more commits is not necessarily a good thing um and uh yeah and then uh here's just a glimpse at uh what what karity thinks about our our code quality we we're definitely fixing a lot of things but the the absolute number is uh is kind of staying the same which indicates that like we're gaining a lot of new code and and we're at least not also linearly increasing the number of of potential bugs but but we're also not burning down that absolute number um and then finally um the status of the plug-in ecosystem uh here's some uh indicators of that there's this new uh uh plug-in index or Plugin discovery website called do file which I I'm very happy with the what's going on there um plugin Discovery I think is is still probably a glaring weakness for for and Ne um and uh then uh in terms of like uh what I've called the T po effect uh where there's just like a kind of a maestro of of uh production in the plug plug-in ecosystem we have at least two of those um in in the neovim ecosystem which is great like we need we need more Tim poopes um and uh the project in general um we we we uh we don't actually have a corporate headquarters but uh it is it is becoming more um corporate in a way like you know we have uh we have we have some people that like are working on it full-time and also I think just thinking about people as interfaces is a more prominent um topic for me uh like if you want to if you want to maximize any project like then you have to figure out how to to scale the number of people involved in it and so that means that the the human human interactions um and like you know kind of like maximizing the happiness of the people that are involved in the project becomes more of a thing that like occupies uh your attention um and that's that's just like that's the that's the way to do it because like humans are actually the the a the agis that are available to us like currently um and uh even if we did have like digital agis we we you would still need to like describe the problems and like do all these other kind of like soft things like documentation that that we do for for humans which are agis would still need to do those with the digital agis um and then funding just a note about funding where did where do the donations go the same place that they've gone every single year since 2014 which is they all go to Just funding developers there's zero overhead um and then just a probably incomplete list of uh some things that were uh funded this this year by people who are funded they worked on these things on in the right column uh UI capabilities RPC performance like some low-level details that Bjorn was was working on for for RPC optimization like producing uh allocations for RPC uh work and then U also inline virtual text which is called ghost text and some in some uh text editors and uh uh uh also work on U the xmarks subsystem which is like is basically a way of adding meta data to pieces of text which is a very interesting thing to do to a text editor where the the internal data structures don't don't necessarily U make that easy to do but like that that's becoming a very important part of the of the core um the ability for like all kinds of annotations to be attached to like a piece of text and then that piece of text can atomically move around and and and and the the attached meaning follows it around as edits are made and then the options subsystem is also extremely important work uh that FAMU has been working on uh and the reason that that's important is because the options subsystem the options options are the are the editor interface for for controlling how the editor works and and if we don't make this better then we get uh all kinds of different like ad hoc like half baked alternatives to that because right now the options Subs system is is not as extensible as as as it could be um or as we need it to be um and so for things like LSP or Diagnostics or or any other kind of like uh feature where where we want to um where uh we want to offer the ability to like change how it works uh we we need more and more elaborate uh ways of uh giving giving you the ability to do that and and if we don't make the options subsystem better then then that will happen in like half picked ways uh and finally uh just mentioning about like what the current risks that that that we can that I can see uh there's still not enough conceptual Integrity I I this is something that we didn't I think make as much progress this year as I wanted to on and this is important because like thinking about like getting humans to to work together and also to to like make sure that they're happy to work on a project um if you have jargon forking if you have just like too much vocabulary um to um too many uh like primitive thought elements in the words of Fred Brooks then then it it becomes it becomes harder to like to to build a mental model of the system it becomes harder to gain new contributors like tribal knowledge increases um and unhappiness increases so conceptual Integrity I think is like it's my chief concern and uh still also we're we're uh I think uh very beholden and grateful to to zir for continuing to do lots of uh work not only on Vim patches but like some very tricky bugs um and uh we we although I would say like since since this talk of months ago um we definitely have gained at least a couple people who are who are doing uh low-level work on tricky bugs so the risk is is is not quite as acute as it was a year ago um window support hasn't improved as much as I as I had hoped this year and uh the last one was a risk that was called out last year but I think it's mostly mitigated now we have we have a a fairly like I would say comfortable path um to to uh avoid kind of like uh a doomsday scenario where uh uh the the the Vim runtime files are no longer useful to us the the importance of that of the Vim runtime files I think is pretty quickly withering away for the most part especially the syntax stuff pritter is I think uh proven itself viable it's gaining traction um it's still being maintained uh and the web assembly support for treats that are just landed which was a was as a manual milestone for that project status of Lua it's now the number two fastest growing language on GitHub last year it was number four and um this is uh probably because like it might be because of Neo but I hope it's not in the same way that like Netflix uh wants to be a small fish in a in a big ocean of like Cloud providers we want to be a small fish in a big ocean of of Lua applications and and demand for Lua like we don't we don't want to be like you know um the only project that's that's using Lua so so I so I think it probably I'm hoping but I I can't say for sure that that it's driven by other like uh meaningful applications of Lew such as you know it's it's used in the bstd kernel I think and um um uh Edge Computing from from cloud cloud flare and uh it it's it's an extremely strong Foundation to build things upon um so let's talk about some some highlights from from what we did this year um we're trying we we are we are stubbornly like insisting that like that that Vim as a tool can be can really it can get as comfortable as any other sort of like developer productivity tool and uh so these are some examples of uh driving towards that um the popup menu in particular is interesting for for Mouse rightclick because it it opens the door for uh context sensitive discovery that you just don't really have through any other mechanism in Vim um your curse like context sens of Discovery doesn't it doesn't really exist uh in Vim you need a mouse for that you need to be able to point at something and then right click on it and then like have some logic that says oh well this has like these tokens or or the status bar has this message on it because of these reasons things like that um and uh let's move on so so uh virtual text I mentioned that earlier uh this is the uh in this screenshot you can see like the size parameter that is not part of the text that is virtual text because inlay hints were enabled here um and uh this uh gives us an answer now to to um a wide variety of use cases but but but these inlay hints are the first use case being able to sort of like show text that really isn't there in like different flexible ways um opens up a lot of new applications uh [Music] so great great Anders especially in the last few months has done some fantastic work for the Tui which is what we call the the the the neovim terminal UI it's the it's the UI that's built into neovim itself it it comes with it comes with a client to itself um and the client uh Works in in any uh terminal emulator you can have also guey clients graphical clients that that uh are show a graphical UI for neovim but but neovim itself includes only the TU and now the support that we have in the terminal is bringing us closer and converging us closer to those graphical uis uh osc 52 support closes the loop on the clipboard story so uh We've long had uh the ability to just paste your text using command V or control V that just works you don't need nonsense like paste toggle or or or anything like that you just paste into NE and it will do the right thing but we didn't have that for for the the other side of the loop which is copying text um and with osc 52 support that's available in almost any ter terminal emulator and that means that even over an SSH connection when you copy to the neovim clipboard it will send that to your OS clipboard um another thing is uh the ter terminal go term colors is enabled by default which means now you have true color support by default in in NE him and this uh kind of changes the nature of of like the common normal experience that new users will encounter um and uh it it just changes like uh it it changes the the face of of the project it changes like what you'll see in like any random article they they'll be showing now uh a true color version of neov instead of U instead of the old uh thing and and we also gained Reflow support in in oh that's not for the Tui though whoops term response though is also interesting because uh it means that now we have like really good programmatic support for like anything that user configs or plugins want to do with their terminal they can ask queries to the terminal and they can get responses and now there's like uh built-in support for that and in NE them so so uh related to the the the uh the the the default true color uh uh option um we now ship a neovim themed uh color scheme and and like I was saying this just this changes like uh it changes the the image of the project like this is the image of the project now and and so this is like a color scheme that is characteristic of the project and that's quite different than just like shipping I don't know monai or Adam dark or whatever other you know as someone on Reddit uh called it unicorn puke whatever other unicorn puke get from from um you know the typical like thing that you get from like something that's uh from I don't know a mega Corp uh this is different and it's stubbornly different it's intentionally two colors it's intentionally minimal um because like constraints uh Drive useful and interesting directions if you don't if you if you don't uh if if you the directions aren't interesting then just use something else but if we if we kind of do things that everyone else is doing then it's it just it it lowers the usefulness of the project it lowers the the reason for existing um so another thing we should was uh semantic token support this overlays our our default uh syntax highlighting and it means now that like just with this one single command that you see below the screenshot there I can now get all my Global variables uh highlighted in a different way which is something that I had yearned for for since I first uh started working on you know them and uh like our built-in treesitter support um it me means now that enables us to to render markdown like as markdown in in our hovers and this is was a really nice contribution by Maria Snippets is something that was not on my bingo card this year but we also have now a a built-in snippet module and uh this is separate from our LSP module we we use the same format as as as as defined by the LSP protocol but it's not uh it doesn't depend on any parts of our LSP module and so this similar to the LSP module is a framework that we're giving to plugins so that so that you can just build stuff on top of it but it kind of is is an answer to one of those going concerns that has been like hashed out you know in various forms for many years in the plugin ecosystem and now it has been lifted into into the standard Library um the D couple uh Tui is uh something that I kind of touched on earlier this landed shortly after I gave this talk last year and and uh it's it's very exciting because uh it it makes neovim what I call a self-hosted UI in the same way that I self in the same way that a self-hosted compiler can is a compiler that compiles uh that can produce a new form of itself um a self-hosted UI is a is is a program that that can spawn itself and connect to the the the other instance of itself and and this just uh again it it kind of just closes the loop like on Concepts and concepts are like one way it's it's not elegant and it and it just it adds like entropy for no reason to to like the the mental model of of the of people that are using the the system so here's a here's kind of like just the most obvious like example of what this looks like um the top window is the server and then the bottom two are are neovim instances connected to the top windows I show the same UI and uh this isn't this is uh there there's technical reasons for like driving towards these kinds of elegant things because they allow you to to to gain like you g you gain you get technical gains from from just by kind of taking a leap of faith and and pursuing Elegance you you you will get actual um technical benefits from that and so one obvious technical benefit from this is that we can remove all of our thread synchronization code um is a whole class of bugs that we no longer have to deal with um uh okay um so we have just there there's a ton of features that we that we Shi um and a lot of them have to do with like bringing you closer and closer to like the internals and the interface should be close to each other they shouldn't be far away because in the same way that like it's I think kind of magical that when you run when you write your first config you have also actually accidentally written your first plugin um you want to be you want that same sort of like almost like zero friction uh reachability to other other like plug-in development scenarios of the system and so developing queries uh treit queries is like a basic part of the editor and so to make it zero friction we now have uh inspect tree edit query and you can just run those commands as they're as they're shown here in any TreeSet or highlighted file and and you can see the results so here you can see uh is is is is an example of edit query um the top window opened after I ran the command and when I when I put the cursor on tokens in the query it highlights the corresponding token in the in the buffer below it inspect tree um shows the the abstract syntax tree of a of a that was parsed from tree sitter and this is extremely useful for for developing uh treat thatter grammar um so here's here's some uh some things that we added in in our standard Library um ring buffer is a is just a common data structure it's useful for for like any anywhere that you encounter something that acts like a stream we also uh took the first step towards uh minimizing if not completely eliminating uh the presence of netrw previously the GX command was dependent on netrw for no good reason and now we have actually just a a first class uh provider interface called ui. openen and that's used by GX and so that's that's one entanglement that we have severed that was connecting us to to netrw vm. loader is the same optimized loader that was uh pioneered in lazy Vim by by folky and then vm. version is the first step towards potentially um it it's just it's just a semantic versioning semantic version parser that allows you to to compare versions but the interesting thing about that is is that um it's the first step towards potentially in the future maybe uh exploring the idea of uh you know some sort of minimal plug-in manager that like uh can analyze dependencies and in order to do that you need to be able to compare versions um and at the bottom here you see uh something that I personally love which is you can you can U run Lu files easily just just uh with the hyphen L argument and it even works with standard input and you can treat those that f. Lua script is is just like running any any Luis script with the Lua CLI you you can pass arguments to it and use the arguments in your your script so that again is another example of where we're just kind of closing the loop on on the full life cycle of like development story or whatever um in this system it's it's not just a text editor it's it's like a personal development environment um which is a is a term that I that I've seen and uh this is this is a screenshot of the the annotations I mentioned earlier we we ship Now with uh type definitions for for all of our standard Library functions and so you can see in the screenshot that the the hover window shows a the result of that m. it is is it is a complete answer to um working with anything that's iterable lists or streams um generators and uh and that's one of those things that we had to come up with an answer ourselves because Lua is minimal and there wasn't quite there wasn't really any sort of like obvious canonical existing answer in the Lua ecosystem so it took a while but but Gregory Andre did an amazing job designing this and and now we have it and um this will be the interface for for anything that has like I said you know any lists or or or anything that's itable passing those to and from plugins or any part of the standard Library um so I don't know how much I I probably should should end this pretty soon how much time do I have uh yeah but [Music] um I'll just talk a bit about like the project itself uh okay um so last year I talked about this this analogy of uh mining an asteroid um and that's that's that's referring to like you know the engineering work of of finding something amazing an amazing treasure which was the Vim code base and then just building on it and developing it and uh uh making great things from it um and then but now like I'm thinking we're no longer just like you know an asteroid mining operation it's it's more turning into now like uh you know maybe like a space Colony or or something like that it's it's verdant it's it's it's a live it's it's an organism and uh and uh so that's like the new challenge to see how far we can go with that like I don't I don't I personally have zero interest in in probably won't be involved if if if we if we go the way that Russ did with like having a a COR like some sort of like committee or whatever it's like you know having trials and hearings and and uh I don't know whatever committees do do they have a gavel or something like that in these in these committee meetings maybe um we don't have that although I do think like in real life meetups are are something that that some of us want to do maybe at fem but the point is is like the human component is there we want to keep our developers happy we wna like maximize that as much as we possibly can by by by driving towards conceptual integr conceptual integrity and other other things like removing paper cuts removing pain removing the painful like accidental parts of developing the project we want to do as much of that as we can so that like as many like brilliant people keep being attracted to the project um that magic comes from that basically um and so uh I I I mentioned earlier like you know it yes it's a tax edor but but but but no it's not just a tax editor I mean uh it it's it's a Compu it's like a personal Computing environment um we need that because the the OS vendors failed to deliver that like like the reason the browser became an OS and and the text editors became an OS is because the browsers didn't give us that at least not in a cross-platform way and even really like shell tooling I would say you know falls short of a lot of that like try doing job control in your shell it's not great try stitching together jobs try doing like struct structured concurrency in your shell it doesn't work and so that's why we have that's why we have just like a nonstop NeverEnding stream of new programming languages trying to solve these problems that the OS venders failed to do I think I mean I think probably we're all just wishing for small talk we're not actually wishing that we were in emac we're probably wishing that we were in small talk I guess from what I've read I've never I've never tried it but Small Talk sounds pretty good um so um here's something I I think is is interesting um I'm going try connect this bear with me so if this was hard to find by the way this is the original I don't maybe you remember this and I almost you know when when the internet forgets things you start to wonder if if it was just if you just had your own hallucination but luckily I found this this was what the the Gmail homepage looked like by the way they blocked themselves on archive.org so that's another example where they're kind of just like building in forgetting into the the system that we thought was never going to forget but it's forgetting and so where I'm going with this is like when the system is lossy when the internet is lossy when you can no longer depend on the internet to be your database which is what Google started out as if if you know the original like um the original um re the original thing that Google was driving for was they wanted the search box to be your file system like they wanted you to go to Google instead of entering a domain name into your browser address bar that kind of thing but if the internet is forgetting then you can't do that so so Gmail started out with this really proud declaration that you have all this space never never delete an email they said never delete an email and they had this counter that was just going up and up and up and now of course that's nowwhere on their homepage and now the only counter you'll see on Google is this thing which is telling you actually everything's going down it's not going up because it turns out there's no free lunch so the answer to that in the open source you know in in Computing our answer to that is we need things to be distributed git solves this um but also so it's like it's it's a it's a another form of that is just the hosted model you need to be a flea that's hopping from you know one uh animal to another like you need to be nimble you need to be able to just uh move around um because you can't you can't depend on the internet actually it turns out it's sad to say but the internet is forgetting so you need you need your uh your junk drawer that you carry around with you which is what the distributive model is g a git repo is a jungk drawer that you're carrying around with you everywhere or you could call it a programmer's towel and it's also the same thing with your text editor your text editor is your is your hitchhiker's towel that you're carrying around with you everywhere it's your personal Corpus of of like stuff that you've learned scripts that you've written that kind of thing and so the the neovim project will continue to like keep this in mind we're not going to be dependent on GitHub although we love GitHub I love GitHub I think they're great service currently but you never know they could turn out to be another source Forge because you can see you can see what's happening with all these Services now Twitter Reddit the free lunch is going away so you don't really know when the free lunch is going to go away and you know we wouldn't even necessarily be opposed to paying some money to GitHub they're providing valuable service so it's not like it's not that kind of thing but but there's a lot of stuff that depends on actually just those GitHub requests returning 200s instead of 400s I mean four fours like all of I think all of nodejs npm might be dependent on that I don't know I think Homebrew is dependent on it I don't know who's paying for Homebrew but anyways we're we're backing up all of our issues and our PRS so if the day comes then we have we'll be able to move somewhere else and uh the the the other thing that that um is related to this is is llms like llms are um they're like kind of like a little like nuclear uh rail gun that you can carry around with you um you're carrying around kind of a a portable Google which is great because Google was supposed to deliver that and they used to have Google sites and they discontinued that but hopefully llms will deliver that if we can have those but but the reason that this matters for for neovim is that um um it means that documentation matters even more than it did before the llms the the wonderful thing about llms is that they mimic humans which means that anything that's good for humans is good for the llms so like when we write documentation um it's also good for the llm if we don't write documentation you'll get you will you you can when you ask a question to the llm you'll get answers that are less useful so code comments and commit messages that are meaningful and that connect things meaningfully these these these feed the llms um and they feed humans too so just do it there's no excuse not to the llms are not going to save you from like having to you know um Express Yourself meaningfully they actually increase the the reason for doing that um I'll be uh just a couple more slides and uh so so related to this topic of uh just like ma like maintaining a useful space Colony uh for for people to do meaningful and deep work in with uh uh some some actual like material improvements there are just our build system thanks to dundar gck uh our our builds are extremely fast now um and uh I I I use this as like kind of a rough uh uh a bullan function for like whether something is or isn't a text editor a lot of people like say well you know is V code a text editor isn't it well I I think that it if it if it can't be portable if it's not like A Hitchhiker's towel that you can carry with you then then it's probably not text editor and and like a nice kind of uh mechanical way of of of deciding that is just can you build it in less than five minutes or not starting from downloading the source code I don't think you can download the vs code source code in well that's not true um but I don't know if it includes electron or not that might be a sub module uh so in any case yeah so so these these these things are having real gains and the the the space Colony the the ecosystem that we have is like clearly doing what we had hoped it would do since we started this experiment in 2014 neovim is a software engineering project basically it's like it's the it's it's the other half of of building software like half of it is deep technical work the other half is like uh figuring out all the like stuff that surrounds the software which includes like continuous integration which them didn't have in 2014 and and and uh and putting armor and scar tissue around the build system and making the build system really really uh just uh beautiful which I think Thunder has has done I hope I'm pronouncing as his name correctly so yeah and we just we have we have more amazing more numerous and more impressive developers working on the project than we have ever had period um it it it's amazing and it's exciting to see what people are doing um yeah uh and um so I'll just say quickly about uh you know two two slides about what's next like so part of part of conceptual Integrity is like error correction and that means being able to remove things being able to deprecate things and uh that we just need to keep doing that um and and if it if it pisses some people off that that's okay um because uh we're making that tradeoff we're making that tradeoff it's okay to fire some users they're fired if if you don't like the braking then fir go use something else it'll okay um and like roughly just like some big ideas for for next year at least part of these I think are are viable for next year uh at least the the top yeah pretty much all of these like next year this is what I see myself thinking about a lot at least um some sort of starting like to to explore the idea of like a built-in plug-in manager um and I'm not going to be working on LSP do server but that was something that that popped in here somehow and then just like the path to 1.0 if you follow this L it goes to the plan there which is uh and uh future Big Ideas is uh you know web web assembly plugins are are in scope we don't have a plan there but like the door isn't closed on there and uh the package the the plug-in manager topic is related to maybe figuring out a solution for how to define the dependency tree which I think makes a lot of sense to just steal what npm already has um yeah for better or worse and then uh vs code remote I think is just it's like it's not really I think I don't think there's too many like too much technical difficulty there it's more just like we need someone to to deliver it and there might be a few things in the core that that need to be changed for neoven but the general idea there is that like similar if you've ever seen the vs code remote mode experience where you just you point to a server and you you get it you get a new editor connected to that server without having to install anything on the server that's something I think worth doing uh in neim and I am done thank you for your time and your patience
Info
Channel: Justin M. Keyes
Views: 6,240
Rating: undefined out of 5
Keywords:
Id: pmLn5pFu27k
Channel Id: undefined
Length: 54min 26sec (3266 seconds)
Published: Tue Dec 19 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.