Comments (13)
Thank you for the great PRs. They are quite helpful. And the modularization idea is great! I will definitely merge the PR.
from vapournvim.
Thank you for your note - really appreciate it.
Sure, It would be great to make a global variable to be able to set different preferences in a single file and make VapourNvim easier to use.
from vapournvim.
Cool. I'll create a new branch to introduce this with plugins, so we can discuss whether it's an appropriate route to go for you.
from vapournvim.
Hope you don't mind the various PRs heh.
Before I make this change, having gotten what I feel an MVP to you and it getting merged, I'm wondering about a small change to make it cleaner.
Have a ./lua/vapour
folder that has an init.lua
that defines the Vapour
object, and then inside of that directory there's also utils
, options
, plugins
, etc...
Then in the ./init.lua
file we would do this (semi-pseudo):
require('vapour') -- This would also include vapour.utils since those really shouldn't be modified post-user config
require('vapour-user-config')
require('vapour.options')
require('vapour.plugins')
require('vapour.keymappings')
This would also move vapour-globals
to vapour
as well.
It would keep a clean namespace. Maybe plump up the module stack a bit but given how Lua works I don't think it'd be an issue.
Granted, I'm also a fan of modularization so doing things like this makes more sense to me, but if you're not on board with it then I don't want to waste your time.
But if you're on board with this I'll make a branch and PR it when done.
from vapournvim.
Cool, so I'll get started on that. :) This one might take me a bit longer.
What I'll do is make a PR for the structural changes first, then after that's merged I'll work on the config changes because I don't want to throw too much into PRs if I can help it.
from vapournvim.
After #11 is merged, I'll do the last part of this which is to make the stuff configurable.
from vapournvim.
There's 1 more piece to this I think that will be helpful right now and that's making the root key to which-key configurable (or allowing overriding).
I.e.: <leader>t
is mapped to ToggleTerm, and I find that plugin useful but I run tests more than actual terminal work, so <leader>t
for me would be more beneficial to map to run tests, while <leader>T
would be acceptable for terminal.
But at the same point from what I can see the dev
branch is mostly of my PRs unless you've done further work on it as well. Is it safe to merge that into master now?
from vapournvim.
I still get errors from treesitter plugins so I think I should replace autotag and rainbow with rainbow_parenthesis and vim-closetag otherwise it will just keep causing errors.
from vapournvim.
from vapournvim.
They are the same errors that you were facing with lazy loading.
from vapournvim.
I have fixed it. I just need to make a commit and then I will merge dev into master.
from vapournvim.
I don't get the errors after dd5bd3b. Now I will merge dev into main.
from vapournvim.
Cool. I'm going to consider this resolved myself and close it out. Because while there's still more work that can be done, it's gotten to a pretty stable state I'd say.
from vapournvim.
Related Issues (20)
- Mouse not working on bufferline HOT 2
- ZenMode not working
- Error detected when opening Config HOT 1
- Feature request: Please provide a way to set paste toggle HOT 1
- Color scheme partially stuck as rose-pine HOT 1
- Provide an option to disable autoformatting HOT 1
- clean install - null_ls failure
- Adding auxiliary plugin rust-tools to lsp_installer.on_server_ready
- Configuring null_ls
- Docs?
- How to load extensions or autoload required plugins
- "Black hole" Register mappings not working HOT 2
- Can not supress <A-j>, <A-k> keybinds
- Why I've not been maintaining this project HOT 1
- Minimum gcc 7 is required for nvim-treesitter
- Lsp config not found on fresh install - Mac HOT 4
- support | help? HOT 2
- File/Folder Icon not showing
- E492: Not an editor command: PackerSync HOT 2
- cmp deprecated function
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 vapournvim.