Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Float style "none" missing #107

Open
2 tasks done
stentibbing opened this issue Dec 5, 2024 · 3 comments
Open
2 tasks done

Float style "none" missing #107

stentibbing opened this issue Dec 5, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@stentibbing
Copy link

stentibbing commented Dec 5, 2024

I have done the following steps before reporting this issue:

  • I have searched the existing issues
  • I have read the FAQ in the help doc

Operating system/version

ArchLinux

Terminal emulator/version

Gnome Terminal

$TERM environment variable

xterm-256color

Tmux version

No response

Feature matrix


==============================================================================
lazy: require("lazy.health").check()

lazy.nvim ~
- {lazy.nvim} version `11.14.2`
- OK {git} `version 2.47.1`
- OK no existing packages found by other package managers
- OK packer_compiled.lua not found

luarocks ~
- checking `luarocks` installation
- OK no plugins require `luarocks`, so you can ignore any warnings below
- OK {luarocks} `/usr/bin/luarocks 3.11.1`
- OK {lua5.1} `Lua 5.1.5  Copyright (C) 1994-2012 Lua.org, PUC-Rio`

==============================================================================
luasnip: require("luasnip.health").check()

luasnip ~
- OK jsregexp is installed

==============================================================================
mason: require("mason.health").check()

mason.nvim ~
- OK mason.nvim version v1.10.0
- OK PATH: prepend
- OK Providers: 
    mason.providers.registry-api
    mason.providers.client
- OK neovim version >= 0.7.0

mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2024-11-14-ugly-night` is installed.

mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send`
- OK wget: `GNU Wget 1.25.0 built on linux-gnu.`
- OK curl: `curl 8.11.0 (x86_64-pc-linux-gnu) libcurl/8.11.0 OpenSSL/3.4.0 zlib/1.3.1 brotli/1.1.0 zstd/1.5.6 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.0 nghttp2/1.64.0 nghttp3/1.6.0`
- OK gzip: `gzip 1.13`
- OK tar: `tar (GNU tar) 1.35`
- OK bash: `GNU bash, version 5.2.37(1)-release (x86_64-pc-linux-gnu)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- OK Go: `go version go1.23.4 linux/amd64`
- OK Ruby: `ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]`
- OK cargo: `cargo 1.83.0 (5ffbef321 2024-10-29)`
- OK luarocks: `/usr/bin/luarocks 3.11.1`
- OK PHP: `PHP 8.3.14 (cli) (built: Nov 19 2024 17:18:20) (NTS)`
- WARNING javac: not available
  - ADVICE:
    - spawn: javac failed with exit code - and signal -. javac is not executable
- WARNING java: not available
  - ADVICE:
    - spawn: java failed with exit code - and signal -. java is not executable
- WARNING julia: not available
  - ADVICE:
    - spawn: julia failed with exit code - and signal -. julia is not executable
- OK node: `v22.11.0`
- OK python: `Python 3.12.7`
- OK Composer: `Composer version 2.8.3 2024-11-17 13:13:04`
- OK RubyGem: `3.5.16`
- OK npm: `10.9.0`
- OK pip: `pip 24.3.1 from /usr/lib/python3.12/site-packages/pip (python 3.12)`
- OK python venv: `Ok`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 1. Remaining: 59. Limit: 60. Reset: N 05 dets  2024 23:46:59.
  Install and authenticate via gh-cli to increase rate limit.

==============================================================================
nvim: require("nvim.health").check()

Configuration ~
- OK no issues found

Runtime ~
- OK $VIMRUNTIME: /usr/share/nvim/runtime

Performance ~
- OK Build type: RelWithDebInfo

Remote Plugins ~
- OK Up to date

terminal ~
- key_backspace (kbs) terminfo entry: `key_backspace=\177`
- key_dc (kdch1) terminfo entry: `key_dc=\E[3~`
- $VTE_VERSION="7802"
- $COLORTERM="truecolor"

External Tools ~
- OK ripgrep 14.1.1 (/usr/bin/rg)

==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()

Installation ~
- OK `tree-sitter` found 0.24.3 (bdfe32402e85673bbc693216f0a6ef72c98bb665) (parser generator, only needed for :TSInstallFromGrammar)
- OK `node` found v22.11.0 (only needed for :TSInstallFromGrammar)
- OK `git` executable found.
- OK `cc` executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
  Version: cc (GCC) 14.2.1 20240910
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
  machine = "x86_64",
  release = "6.12.1-arch1-1",
  sysname = "Linux",
  version = "#1 SMP PREEMPT_DYNAMIC Fri, 22 Nov 2024 16:04:27 +0000"
} ~

Parser/Features         H L F I J
  - c                   ✓ ✓ ✓ ✓ ✓
  - css                 ✓ . ✓ ✓ ✓
  - dockerfile          ✓ . . . ✓
  - go                  ✓ ✓ ✓ ✓ ✓
  - gomod               ✓ . . . ✓
  - gosum               ✓ . . . .
  - html                ✓ ✓ ✓ ✓ ✓
  - javascript          ✓ ✓ ✓ ✓ ✓
  - json                ✓ ✓ ✓ ✓ .
  - lua                 ✓ ✓ ✓ ✓ ✓
  - luadoc              ✓ . . . .
  - make                ✓ . ✓ . ✓
  - markdown            ✓ . ✓ ✓ ✓
  - markdown_inline     ✓ . . . ✓
  - php                 ✓ ✓ ✓ ✓ ✓
  - query               ✓ ✓ ✓ ✓ ✓
  - regex               ✓ . . . .
  - scss                ✓ . ✓ ✓ ✓
  - svelte              ✓ ✓ ✓ ✓ ✓
  - templ               ✓ . ✓ . ✓
  - toml                ✓ ✓ ✓ ✓ ✓
  - typescript          ✓ ✓ ✓ ✓ ✓
  - vim                 ✓ ✓ ✓ . ✓
  - vimdoc              ✓ . . . ✓
  - xml                 ✓ ✓ ✓ ✓ ✓
  - yaml                ✓ ✓ ✓ ✓ ✓

  Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
         +) multiple parsers found, only one will be used
         x) errors found in the query, try to run :TSUpdate {lang} ~

==============================================================================
provider.clipboard: require("provider.clipboard.health").check()

Clipboard (optional) ~
- OK Clipboard tool found: wl-copy

==============================================================================
provider.node: require("provider.node.health").check()

Node.js provider (optional) ~
- Node.js: v22.11.0
  
- Nvim node.js host: /home/sten/.config/yarn/global//node_modules/neovim/bin/cli.js
- OK Latest "neovim" npm/yarn/pnpm package is installed: 5.3.0
  

==============================================================================
provider.perl: require("provider.perl.health").check()

Perl provider (optional) ~
- WARNING "Neovim::Ext" cpan module is not installed
  - ADVICE:
    - See :help |provider-perl| for more information.
    - You may disable this provider (and warning) by adding `let g:loaded_perl_provider = 0` to your init.vim
- WARNING No usable perl executable found

==============================================================================
provider.python: require("provider.python.health").check()

Python 3 provider (optional) ~
- WARNING No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- WARNING Could not load Python :
  /usr/bin/python3 does not have the "neovim" module.
  /usr/bin/python3.12 does not have the "neovim" module.
  python3.11 not found in search path or not executable.
  python3.10 not found in search path or not executable.
  python3.9 not found in search path or not executable.
  python3.8 not found in search path or not executable.
  python3.7 not found in search path or not executable.
  /usr/bin/python does not have the "neovim" module.
  - ADVICE:
    - See :help |provider-python| for more information.
    - You may disable this provider (and warning) by adding `let g:loaded_python3_provider = 0` to your init.vim
- Executable: Not found

Python virtualenv ~
- OK no $VIRTUAL_ENV

==============================================================================
provider.ruby: require("provider.ruby.health").check()

Ruby provider (optional) ~
- Ruby: ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]
- WARNING `neovim-ruby-host` not found.
  - ADVICE:
    - Run `gem install neovim` to ensure the neovim RubyGem is installed.
    - Run `gem environment` to ensure the gem bin directory is in $PATH.
    - If you are using rvm/rbenv/chruby, try "rehashing".
    - See :help |g:ruby_host_prog| for non-standard gem installations.
    - You may disable this provider (and warning) by adding `let g:loaded_ruby_provider = 0` to your init.vim

==============================================================================
telescope: health#telescope#check

Checking for required plugins ~
- OK plenary installed.
- OK nvim-treesitter installed.

Checking external dependencies ~
- OK rg: found ripgrep 14.1.1
- OK fd: found fd 10.2.0

===== Installed extensions ===== ~

==============================================================================
vim.lsp: require("vim.lsp.health").check()

- LSP log level : WARN
- Log path: /home/sten/.local/state/nvim/lsp.log
- Log size: 534 KB

vim.lsp: Active Clients ~
- No active clients

vim.lsp: File Watcher ~
- file watching "(workspace/didChangeWatchedFiles)" disabled on all clients

vim.lsp: Position Encodings ~
- No active clients

==============================================================================
vim.treesitter: require("vim.treesitter.health").check()

- Nvim runtime ABI version: 14
- OK Parser: css                  ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/css.so
- OK Parser: dockerfile           ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/dockerfile.so
- OK Parser: go                   ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/go.so
- OK Parser: gomod                ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/gomod.so
- OK Parser: gosum                ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/gosum.so
- OK Parser: html                 ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/html.so
``
- OK Parser: javascript           ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/javascript.so
- OK Parser: json                 ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/json.so
- OK Parser: lua                  ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/lua.so
- OK Parser: luadoc               ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/luadoc.so
- OK Parser: make                 ABI: 13, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/make.so
- OK Parser: php                  ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/php.so
- OK Parser: regex                ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/regex.so
- OK Parser: scss                 ABI: 13, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/scss.so
- OK Parser: svelte               ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/svelte.so
- OK Parser: templ                ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/templ.so
- OK Parser: toml                 ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/toml.so
- OK Parser: typescript           ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/typescript.so
- OK Parser: vim                  ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/vim.so
- OK Parser: vimdoc               ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/vimdoc.so
- OK Parser: xml                  ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/xml.so
- OK Parser: yaml                 ABI: 14, path: /home/sten/.local/share/nvim/lazy/nvim-treesitter/parser/yaml.so
- OK Parser: c                    ABI: 14, path: /usr/share/nvim/runtime/parser/c.so
- OK Parser: lua                  ABI: 14, path: /usr/share/nvim/runtime/parser/lua.so
- OK Parser: markdown             ABI: 14, path: /usr/share/nvim/runtime/parser/markdown.so
- OK Parser: markdown_inline      ABI: 14, path: /usr/share/nvim/runtime/parser/markdown_inline.so
- OK Parser: query                ABI: 14, path: /usr/share/nvim/runtime/parser/query.so
- OK Parser: vim                  ABI: 14, path: /usr/share/nvim/runtime/parser/vim.so
- OK Parser: vimdoc               ABI: 14, path: /usr/share/nvim/runtime/parser/vimdoc.so

Minimal vimrc that can reproduce this bug.

not using vim

Steps to reproduce this bug using minimal vimrc

not using vim

Expected behavior

Screenshot From 2024-12-05 23-42-11

Actual behavior

Screenshot From 2024-12-05 23-43-28

@stentibbing stentibbing added the bug Something isn't working label Dec 5, 2024
@antoineco
Copy link
Collaborator

Thanks for suggesting this. I'm currently debating whether introducing this new mode into the colorscheme is reasonable.

Outside of a few carefully styled plugins, setting the style of Float groups to the same appearance as Normal is likely to result in broken visuals. For instance, Neovim doesn't default to showing borders on floating windows, so there is no way to visually tell the floating windows apart from normal buffer:

image

I think we should stay away from introducing modes that can only work in combination with modifications of core settings (like forcing borders on all floating windows). IMO all options should work with the editor's defaults, otherwise we would have to provide a detailed explanation of how the editor should be configured to use this or that colorscheme options. Given the granularity of the Neovim API, this is likely to introduce unnecessary confusion and extra documentation work.

Question for you: how do other floating windows look for you in this configuration? For example LSP windows displayed using :lua vim.diagnostic.open_float(), lua vim.lsp.buf.hover(), :lua vim.lsp.buf.signature_help(), etc. What about Lazy windows, or nvim-cmp's documentation windows like the ones shown in #90?

@antoineco antoineco added enhancement New feature or request and removed bug Something isn't working labels Dec 5, 2024
@stentibbing
Copy link
Author

Yeah you are right about native windows (without borders) not being distinctive in this case. I might be wrong but looking at Neovim's distros, peoples configurations and popular plugins like Telescope, borders seem to become a bit of a trend. Rather subjective decision I guess, whether it's meant for barebones or more customized setup. Thanks anyways for the time!

@antoineco
Copy link
Collaborator

It is true that borders are often applied to popular plugins out of the box by Neovim distributions such as LazyVim, NvChad, etc. And I do think that those borders make the use case you describe viable (even good!).

I'm just trying to build a mental picture of what type of plugins may be using NormalFloat outside of the built-in LSP client, and in what context. Completion plugins and Mason are the only ones I've been using recently that come to mind, but there could be many more of course.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants