Coder Social home page Coder Social logo

normalnvim / normalnvim Goto Github PK

View Code? Open in Web Editor NEW
480.0 8.0 198.0 1.74 MB

A normal Neovim distribution

Home Page: https://normalnvim.github.io

License: GNU General Public License v3.0

Lua 100.00%
nvim-configs nvim nvim-config neovim-dotfiles neovim-configuration neovim-config

normalnvim's Introduction

Important : You need Neovim 0.10+

*✨ ~ ⭐ - A normal Neovim distribution - ⭐ ~ ✨*


Screenshots

Tokyo Night (Night) theme by default screenshot_2024-03-17_17-12-10_712765529

The space key shows all you can do screenshot_2024-03-12_22-48-45_446272370

If you are new here don't forget to check the wiki.

How to install

Installer (Linux/MacOS/WSL)

You can preview it here

wget -q https://raw.githubusercontent.com/NormalNvim/installer/main/installer.sh && chmod +x installer.sh && ./installer.sh

Clone manually (Linux/MacOS/WSL)

# Strongly recommended: Fork the repo and clone YOUR fork.
git clone https://github.com/NormalNvim/NormalNvim.git ~/.config/nvim

Clone manually (Windows)

# Strongly recommended: Fork the repo and clone YOUR fork.
git clone https://github.com/NormalNvim/NormalNvim.git %USERPROFILE%\AppData\Local\nvim && nvim

Optional dependencies

This is only necessary if you installed NormalNvim by cloning manually. To unlock all features you will have to install the dependencies.

Distro features

  • Lazy: Plugins are loaded lazily, providing super fast performance.
  • 🔋 Batteries included: Most plugins you will ever need are included and debugged by default. Get the best user experience out of the box and forget about nasty bugs in your Neovim config.
  • 😎 Plugins are self-contained: Allowing you to easily delete what you need.
  • 🤖 IDE tools: We ship Compiler.nvim (compiler), DAP (debugger), Neotest (test runner), and Dooku.nvim (docs generator)
  • 🐞 IDE parsers: Linters, Formatters, LSP, Treesitter... preinstalled, preconfigured and ready to code for the top 12 most popular programming languages.
  • 🥶 Plugin version freeze: You can choose "stable" or "nightly" update channels. Or if you prefer, use :DistroFreezePluginVersions to create your own stable versions!
  • 🔙 Rollbacks: You can easily recover from a nvim distro update using :DistroUpdateRevert
  • 🔥 Hot reload: Every time you change something in your config, the changes are reflected on nvim on real time without need to restart.
  • 📱 Phone friendly: You can also install it on Android Termux. Did you ever have a compiler in your pocket? 😉
  • ⌨️ Alternative mappings: By default the distro uses qwerty, but colemak-dh can be found here.
  • Fully modular: Every feature is a small plugin.
  • 👽 100% agnostic: Any plugin NormalNvim ship, can be used in any distro.
  • ❤️ We don't treat you like you are stupid: Code comments guide you to easily customize everything. We will never hide or abstract stuff from you.

Philosophy and design decisions

You are expected to fork the project before cloning it. So you are the only one in control. It is also recommended to use neovim's appimage.

This is not a distro you are expected to update often from upstream. It is meant to be used as a base to create your own distro.

NormalNvim won't be the next /r/UnixPorn sensation. It is a normal nvim config you can trust 100% will never unexpectedly break while you are working. Nothing flashy. Nothing brightful. Just bread and butter.

Commands

The next relevant commands are provided by distroupdate.nvim

Command Description
:DistroUpdate To update the distro from git origin. Local uncommited changes will be lost.
:DistroUpdateRevert To revert the last :DistroUpdate.
:DistroFreezePluginVersions To save your current plugins versions into lazy_versions.lua.

FAQ

Please before opening an issue, check the astrocommunity repo where you can find help about how to install and configure most plugins.

  • NormalNvim is not working. How can I know why?

    :checkhealth base

  • Why can't I see the icons? You must install the nerdfont version of your font, and use it on your terminal. Alternatively you can edit base/icons/nerd_font.lua to manually specify your own icons.

  • How can I install a new colorscheme? Go to plugins/2-ui.lua, and add the theme you want. Re-open nvim and now you can set your new colorcheme on base/1-options.lua. You can also preview all your installed themes with <space>+ft.

  • How can I change the user interface? We use the plugin heirline to create the user interface. You can re-order or change any component of your user interface in plugins/2-ui.lua. If you preffer the classic vim appearance, you can delete the plugin.

  • How can I disable the animations? You can delete the plugin mini.animate. In case you only want to disable some animations look into the plugin docs.

  • How can I use Ask chatgpt? On your operative system, set the next env var. You can get an API key from chatgpt's website.

OPENAI_API_KEY="my_key_here"

🌟 Get involved

One of the biggest challenges NormalNvim face is marketing. So share the project and tell your friends! Stargazers over time

Fix a bug and send a PR to appear as contributor

Credits

Originally it took AstroNvim as base. But implements this VIM config with some extras. Code has been simplified while retaining its core features. NormalNvim has also contributed to the code of many of the plugins included, in order to debug them and make them better.

Special thanks to LeoRed04 for designing the logo.

Trivia

Did you know NormalNvim was the first Neovim distro to ship a compiler that support 22+ programming languages out of the box?

Roadmap

Todos before v4.0

  • Docusaurus proof of concept.Screenshoots of all plugins will be added in the next 48h!
  • Before upgrading to lspconfig 0.2, migrate from tsserver to ts_ls (as the former has been renamed in lspconfig). → see mason-registry issue
  • Better QA for distroupdate.nvim.
  • Keep an eye on the ruff 0.6.3 issue (and remember to credit Dimscord). → astral-sh/ruff#13238
  • Prepare promos.

Todos before v5.0 (2025)

  • Compiler.nvim: add support for justfiles and taskfiles.
  • Version v2 of the website should look considerably better.

Blocked

  • Once selene add this and this and this, let's add the new rules.

normalnvim's People

Contributors

2kabhishek avatar a-khanna avatar azzamsa avatar fredrikaverpil avatar mikavilpas avatar omerk42 avatar rcasia avatar zeioth avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

normalnvim's Issues

TODO: Java DAP improvements

As soon as there is a better alternative DAP java debugger, let's use it. Jdtls works fine, but it obligates us to create an autocmd to launch it on background, which is not necessary for any other language.

Diagnostics doesn't respect the screen width.

I am quite aware this isn't a fault on normalnvim's part but since I don't know which plugin causes this I have decided to write here. So the problem could be seen in the image:

image

As you can see the warning diagnostic message gets cut and there is no way to read it all because you can not scroll to non-existent text in nvim. I already found a roundabout solution.

Normalnvim comes with this line in 4-mappings.lua: lsp_mappings.n["<leader>ld"] = { function() vim.diagnostic.open_float() end, desc = "Hover diagnostics" }

So I added this line over it to use it in a more accessible way: lsp_mappings.n["<Tab>"] = { function() vim.diagnostic.open_float() end }

With this anytime in normal mode when you press tab you can see the warning or error messages as a hovering box.

As a side issue: the warnings on workspace diagnostics menu also cuts:
image

Need help installing roslyn.nvim

Hi there,

I am lost trying to install roslyn.nvim correctly.

I added this to 3-dev-core.lua
but on_attach is never called:

{
  "seblj/roslyn.nvim",
  event = "User BaseFile",
  config = function()
    require("roslyn").setup({
      dotnet_cmd = "dotnet", -- this is the default
      roslyn_version = "4.12.0-1.24329.2", -- this is the default
      on_attach = function(client)
        local utils = require("base.utils")
        utils.notify("attached")

-- make sure this happens once per client, not per buffer
if not client.is_hacked then
  client.is_hacked = true

  -- let the runtime know the server can do semanticTokens/full now
  client.server_capabilities = vim.tbl_deep_extend("force", client.server_capabilities, {
    semanticTokensProvider = {
      full = true,
    },
  })

  -- monkey patch the request proxy
  local request_inner = client.request
  client.request = function(method, params, handler)
    if method ~= vim.lsp.protocol.Methods.textDocument_semanticTokens_full then
      return request_inner(method, params, handler)
    end

    local function find_buf_by_uri(search_uri)
      local bufs = vim.api.nvim_list_bufs()
      for _, buf in ipairs(bufs) do
        local name = vim.api.nvim_buf_get_name(buf)
        local uri = "file://" .. name
        if uri == search_uri then
          return buf
        end
      end
    end

    local doc_uri = params.textDocument.uri

    local target_bufnr = find_buf_by_uri(doc_uri)
    local line_count = vim.api.nvim_buf_line_count(target_bufnr)
    local last_line = vim.api.nvim_buf_get_lines(target_bufnr, line_count - 1, line_count, true)[1]

    return request_inner("textDocument/semanticTokens/range", {
      textDocument = params.textDocument,
      range = {
        ["start"] = {
          line = 0,
          character = 0,
        },
        ["end"] = {
          line = line_count - 1,
          character = string.len(last_line) - 1,
        },
      },
    }, handler)
  end
end
end
    })
  end
},

The LSP however is loaded.
I need that on_attach for semantic tokens to work.

That being said the lsp works as intended it's just that I cant use the on_attach.

And roslyn does not appear in server_name in this function as well.

function M.apply_user_lsp_settings(server_name)
  local server = require("lspconfig")[server_name]

Possibly changing telescope to fzf-lua

A rather controversial opinion but i think fzf-lua is better than telescope. It is atleast 100x faster (you can really really feel it if you just have a few thousand files in your project). Fzf-lua is also quite mature and have all the expected features. It can fuzzy find text, it can change colorschemes with preview, it has highlighted text in its file preview and many other builtin features.

Repo: https://github.com/ibhagwan/fzf-lua

Note: it's good practice to first read the script before running sh -c directly from the web

Test it without changing your config: sh -c "$(curl -s https://raw.githubusercontent.com/ibhagwan/fzf-lua/main/scripts/mini.sh)"

pros:
100x faster

cons:
not as widely adopted as telescope
if you have very custom queries it might be easier with telescope

Cutlass plugin doesn't work ... what is overwriting the 'x'?

I'm struggling to understand why cutlass doesn't work, which I had working with kickstart. But normalvim seems to be overwriting the 'x' command in a fashion I don't understand.

First, create a `cutlass.lua' file in the plugins folder with this:

return {
  {
    'gbprod/cutlass.nvim',
    config = function()
      require('cutlass').setup {
        cut_key = 'x',
      }
    end,
  },
}

Then I looked through the 4-mappings.lua file and commented out all the material in the clipboard section:

-- clipboard ---------------------------------------------------------------

-- BUG: We disable these mappings on termux by default because <C-y>
--      is the keycode for scrolling, and remapping it would break it.
-- if not is_android then
--   -- only useful when the option clipboard is commented on ./1-options.lua
--   maps.n["<C-y>"] = { '"+y<esc>', desc = "Copy to cliboard" }
--   maps.x["<C-y>"] = { '"+y<esc>', desc = "Copy to cliboard" }
--   maps.n["<C-d>"] = { '"+y<esc>dd', desc = "Copy to clipboard and delete line" }
--   maps.x["<C-d>"] = { '"+y<esc>dd', desc = "Copy to clipboard and delete line" }
--   maps.n["<C-p>"] = { '"+p<esc>', desc = "Paste from clipboard" }
-- end

-- Make 'c' key not copy to clipboard when changing a character.
-- maps.n["c"] = { '"_c', desc = "Change without yanking" }
-- maps.n["C"] = { '"_C', desc = "Change without yanking" }
-- maps.x["c"] = { '"_c', desc = "Change without yanking" }
-- maps.x["C"] = { '"_C', desc = "Change without yanking" }

-- Make 'x' key not copy to clipboard when deleting a character.
-- maps.n["x"] = {
--   -- Also let's allow 'x' key to delete blank lines in normal mode.
--   function()
--     if vim.fn.col "." == 1 then
--       local line = vim.fn.getline "."
--       if line:match "^%s*$" then
--         vim.api.nvim_feedkeys('"_dd', "n", false)
--         vim.api.nvim_feedkeys("$", "n", false)
--       else
--         vim.api.nvim_feedkeys('"_x', "n", false)
--       end
--     else
--       vim.api.nvim_feedkeys('"_x', "n", false)
--     end
--   end,
--   desc = "Delete character without yanking it",
-- }
-- maps.x["x"] = { '"_x', desc = "Delete all characters in line" }

-- Same for shifted X
-- maps.n["X"] = {
--   -- Also let's allow 'x' key to delete blank lines in normal mode.
--   function()
--     if vim.fn.col "." == 1 then
--       local line = vim.fn.getline "."
--       if line:match "^%s*$" then
--         vim.api.nvim_feedkeys('"_dd', "n", false)
--         vim.api.nvim_feedkeys("$", "n", false)
--       else
--         vim.api.nvim_feedkeys('"_X', "n", false)
--       end
--     else
--       vim.api.nvim_feedkeys('"_X', "n", false)
--     end
--   end,
--   desc = "Delete before character without yanking it",
-- }
-- maps.x["X"] = { '"_X', desc = "Delete all characters in line" }
--
-- -- Override nvim default behavior so it doesn't auto-yank when pasting on visual mode.
-- maps.x["p"] = { "P", desc = "Paste content you've previourly yanked" }
-- maps.x["P"] = { "p", desc = "Yank what you are going to override, then paste" }
--
--

It should be the case that cutless sends 'd' to the black hole register and 'x' now serves as the 'cut' operation.

But x still yields a substitution command.

This setup both works in kickstart.nvim and lazyvim.org...

Snapshot out of sync

Currently it appears the snapshot file and plugins entries for a couple of plugins are out of sync. In lua/lazy_snapshot.lua the entry for friendly-snippets uses the rafamadriz repository while the entry in lua/plugins/4-dev.lua uses the zeioth repo. Similarly, the entries for bufdelete do not use the same url. This causes Neovim 0.9 to issue warnings on startup.

Perhaps this can be resolved by simply re-generating the snapshot or switching to nightly.

I like your approach in this project and hope to be able to explore further as time permits. Thanks!

ollama integraton

Hello. I'm stingy with my Open AI credit and would like to use a local model when possible. Could you integrate ollama?

Termux - Not an editor command

Hello,

I just installed all the dependencies and NormalNVIM in the latest Termux debug build. Whenever I attempt to use one of the commands, or if I try to select "Update Plugins and Mason" from the menu I get the following error:

:healthcheck base
E492: Not an editor command: healthcheck base
Press ENTER or type command to continue

E492: Not an editor command: NvimUpdatePackages
Press ENTER or type command to continue

I'm not sure what to do to fix this?

Also when syncing plugins there is one failure as shown:

stickybuf.nvim ■■ checkout failed
fatal: not a git repository: .github/
nvim_doc_tools/../../.git/modules/.github/
nvim_doc_tools

Markdown loses linebreaks

The Markdown Documentation states:

To create a line break or new line (
), end a line with two or more spaces, and then type return.

The moment I save my changes those two trailing whitespace characters are removed.
I already uninstalled prettier and markdownlint but that one doesnt help.

This is the information of my none-ls:

	null-ls
	https://github.com/nvimtools/none-ls.nvim
	
	Logging
	* current level: warn
	* path: /home/crashdummy/.cache/nvim/null-ls.log
	
	Active source(s)
	* name: prettier
	* filetypes: yaml | graphql | html | less | markdown | typescriptreact | javascriptreact | handlebars | css | jsonc | scss | json | markdown.mdx | javascript | vue | typescript
	* methods: range_formatting | formatting
	
	* name: markdownlint
	* filetypes: markdown | markdown.mdx
	* methods: diagnostics
	
	* name: markdownlint
	* filetypes: markdown
	* methods: formatting
	
	
	Supported source(s)
	* hover: dictionary
	* code_actions: proselint
	* diagnostics: alex | ltrs | ltrs | markdownlint | markdownlint_cli2 | mdl | proselint | textidote | textlint | vale | write_good
	* formatting: cbfmt | markdownlint | mdformat | ocdc | prettier | prettierd | remark | textlint

How can I prevent this behavior ?

Suggestion: Add to Traap/nvims

I propose the addition of NormalNvim to the list of neovim distributions available via Traap/nvims as per instructions:

nvims

Safely experiment with multiple Neovim configurations.
[...]

So, you want to add your Neovim configuration so others can use it?

  1. Make a pull-request that updates neovim_distro with your GitHub URL and Branch.
  2. Your Neovim configuration MUST bootstrap itself.
  3. I'll test it on either Arch or Ubuntu.
  4. With 1, 2, and 3 passing. I'll merge your pull-request.

https://github.com/Traap/nvims?tab=readme-ov-file#so-you-want-to-add-your-neovim-configuration-so-others-can-use-it

[Question] Where to add omnisharp-extended

Hi there

I'm still struggling to get every C# dotnet stuff to work.
I sometimes cant get this stuff to load

neotest-dotnet

This had to use a more recent version and the testdiscovery had to be extended.
I got it to work using this but is this the correct file and the correct way to configure it ?

diff --git a/lua/lazy_snapshot.lua b/lua/lazy_snapshot.lua
index 565be61..2221b77 100644
--- a/lua/lazy_snapshot.lua
+++ b/lua/lazy_snapshot.lua
@@ -1,7 +1,7 @@
 return {
   { "AckslD/nvim-neoclip.lua", commit = "798cd0592a81c185465db3a091a0ff8a21af60fd" },
   { "AstroNvim/astrotheme", version = "^3.4" },
-  { "Issafalcon/neotest-dotnet", commit = "c19df2a139d88c5b4130b830d2cbe63a2c6c6c0c" },
+  { "Issafalcon/neotest-dotnet", version = "*" },
   { "JoosepAlviste/nvim-ts-context-commentstring", commit = "7ab799a9792f7cf3883cf28c6a00ad431f3d382a" },
   { "L3MON4D3/LuaSnip", version = "^3" },
   { "MunifTanjim/nui.nvim", version = "^0.3" },
diff --git a/lua/plugins/3-dev-core.lua b/lua/plugins/3-dev-core.lua
index 71bd605..4e39afd 100644
--- a/lua/plugins/3-dev-core.lua
+++ b/lua/plugins/3-dev-core.lua
@@ -399,6 +415,13 @@ return {
         command = vim.fn.stdpath('data') .. '/mason/bin/netcoredbg',
         args = { '--interpreter=vscode' }
       }
+
+      dap.adapters.netcoredbg = {
+        type = 'executable',
+        command = vim.fn.stdpath('data') .. '/mason/bin/netcoredbg',
+        args = { '--interpreter=vscode' }
+      }
+

@@ -788,7 +838,12 @@ return {
         -- your neotest config here
         adapters = {
           require("neotest-dart"),
-          require("neotest-dotnet"),
+          require("neotest-dotnet") ({
+            dap = {
+              args = { justMyCode = false },
+              adapter_name = "netcoredbg"
+            },
+            discovery_root = "solution" }),

Omnisharp

There are a few things that dont work well with omnisharp and have to be extended

Autoimports

Namespaces arent automatically imported.
But that most likely is due to that bug here

Omnisharp extended

Some lsp features are still missing and omnisharp-roslyn has to be extended by omnisharp-extended
I however cant get it to load following https://www.lazyvim.org/extras/lang/omnisharp#nvim-lspconfig

--- a/lua/plugins/3-dev-core.lua
+++ b/lua/plugins/3-dev-core.lua
@@ -178,6 +178,13 @@ return {
     },
   },
 
+  -- Add extensions to missing omnisharp features
+  -- https://github.com/Hoffs/omnisharp-extended-lsp.nvim
+  {
+    "Hoffs/omnisharp-extended-lsp.nvim",
+    lazy = true
+  },
+
   --  nvim-lspconfig [lsp configs]
   --  https://github.com/neovim/nvim-lspconfig
   --  This plugin provide default configs for the lsp servers available on mason.
@@ -190,7 +197,30 @@ return {
       if utils.is_available("nvim-java") then
         require("lspconfig").jdtls.setup({})
       end
-    end
+    end,
+    opts = {
+      servers = {
+        omnisharp = {
+          handlers = {
+            ["textDocument/definition"] = function(...)
+              return require("omnisharp_extended").handler(...)
+            end,
+          },
+          keys = {
+            {
+              "gd",
+              function()
+                require("omnisharp_extended").telescope_lsp_definitions()
+              end,
+              desc = "Goto Definition",
+            },
+          },
+          enable_roslyn_analyzers = true,
+          organize_imports_on_format = true,
+          enable_import_completion = true,
+        },
+      },
+    },
   },

image

Running `:checkhealth base` returns error

Running the command :checkhealth base returns:

- ERROR Failed to run healthcheck for "base" plugin. Exception:
function health#check, line 25
Vim(eval):E5108: Error executing lua /Users/fernandoaleman/.config/nvim/lua/base/health.lua:22: module 'base.            utils.updater' not found:
no field package.preload['base.utils.updater']
cache_loader: module base.utils.updater not found
cache_loader_lib: module base.utils.updater not found
no file './base/utils/updater.lua'
no file '/opt/homebrew/share/luajit-2.1/base/utils/updater.lua'
no file '/usr/local/share/lua/5.1/base/utils/updater.lua'
no file '/usr/local/share/lua/5.1/base/utils/updater/init.lua'
no file '/opt/homebrew/share/lua/5.1/base/utils/updater.lua'
no file '/opt/homebrew/share/lua/5.1/base/utils/updater/init.lua'
no file './base/utils/updater.so'
no file '/usr/local/lib/lua/5.1/base/utils/updater.so'
no file '/opt/homebrew/lib/lua/5.1/base/utils/updater.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
no file './base.so'
no file '/usr/local/lib/lua/5.1/base.so'
no file '/opt/homebrew/lib/lua/5.1/base.so'
no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
[C]: in function 'require'
/Users/juanbobo/.config/nvim/lua/base/health.lua:22: in function 'check'
[string "luaeval()"]:1: in main chunk

Looking in the code, it appears that the file ~/.config/nvim/lua/base/utils/updater.lua is missing.

Using Apple M1 macOS Sonoma 14.2.1.

Review yazi.nvim options

Since the release of yazi 0.3.1, some things have changed in yazi.nvim as well (https://github.com/mikavilpas/yazi.nvim/blob/main/CHANGELOG.md):

  • yazi 0.3 is now required (this is probably fine for most users)
  • the use_yazi_client_id_flag option was removed (no longer required but causes no issues)
  • the use_ya_for_events_reading option was removed for the same reason (no longer required)

So in summary, no changes are required but it's good to be aware of 🙂 If you want to, you can remove the deprecated options in NormalNvim too.

small bugs

first off i love the focus on termux and look forward to setting up my own config to be more os centric.

I occasionally have problems with the cursor selection moving off of the dashboard shortcuts which renders them useless.
I also sometimes get stuck on a blank page and whichkey bindings dont work eg. <leader>e wont open neotree.
In both scenarios normal vim commands still work eg. <cmd>q still quits.

everything is working great on termux otherwise.

I have yet to figure out a way to reproduce the issue.

Syntax highlight has to be toggled

For whatever reason it appears like syntax highlighting does not automatically works.

Let's say I open a yml file which is backed by a few lsps
image

after toggling with <leader>u+y

image

potential issue in Termux with Tree-sitter Syntax Highlighting in NormalNvim.

Potential Issue with Tree-sitter Syntax Highlighting in NormalNvim

I'm encountering a potential issue with Tree-sitter syntax highlighting in NormalNvim. Specifically, automatic syntax highlighting isn't working for certain file types, such as Go files. Manual enabling through :TSEnable highlight seems to be a workaround, but the expected automatic behavior is not observed.

It's unclear if this is an issue specific to the Termux environment or potentially limited to Go files. Syntax highlighting appears to be functioning correctly for other languages, like Lua, within the same environment.

I'd appreciate any insights into this behavior. Are there known limitations or configurations specific to Termux or Go files that might be affecting Tree-sitter? Additionally, if there are any debugging steps I can take to assist in further investigation, please let me know.

Thank you for your time and support.

Bug (TokyoNight) Border cases

There is an obscure bug that only hapens in TokyoNight: When opening some terminal programs, it show a stack trace error. Confirmed for the border cases:

  • Sometimes after updating with lazy.
  • In gitui, after pressing e over an item (this opens the item on an anidated nvim)

This bug doesn't hapen on other themes I've tried. So either I write my own TokyoNight, or I find and report the bug.

Error when opening the file exporer with space+r

Get the following error when opening file explorer

error: unexpected argument '--client-id' found                                                                                       │
│                                                                                                                                     │
│  tip: to pass '--client-id' as a value, use '-- --client-id' 

yazi: 0.2.5
NormalNvim: v4.0.0 - Release candidate 2

Debugging on Windows disabled

Been loving using NormalNvim for the past few weeks. Came across this line in the debugger section and couldn't find any more information as to why it is disabled on Windows. Would be nice to have some sort of documentation for the reason behind it ^^

-- lua/plugins/4-dev.lua

"mfussenegger/nvim-dap",
enabled = vim.fn.has "win32" == 0,
...

duplicate keymappings

There is atleast one duplicate keymapping. "fb" is assigned to "Find buffer" aswell as "Toggle find and replace word in buffer" using spectre.

AstroNvim Credits

Hey! I hope all is well and I hope your project is going well! I had a quick request as I've been following this spinning up. I appreciate the credit to AstroNvim that you gave in your README since this is a fork of AstroNvim and built off of it. One thing I noticed is you didn't use the direct fork feature and are not doing merging or cherry picking to keep NormalNvim up to date. AstroNvim has many contributors who put in a lot of effort to maintain the codebase over there and the way you are adding upstream changes removes all of the credit for these code changes. I was just wondering if you would mind using cherry picking or merging or even manually adding co-author statuses to the git commit bodies for when you upstream changes to credit the original contributors on AstroNvim that helped write the code here.

Thanks for your time and consideration!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.