Coder Social home page Coder Social logo

Comments (6)

bluz71 avatar bluz71 commented on August 11, 2024 1

Should be OK to remove the ctermbg and guibg attributes from Conceal to fix this.

Just removing those options does not work since (Neo)Vim will then set its own background color, which is probably the reason I set the background colors to begin with.

This instead appears to work and hopefully should also solve your issue as well:

exec 'highlight Conceal ctermbg=none ctermfg=235 guibg=none guifg=' . s:grey235

Can you test the latest update.

You may also want to change the foreground colours too, they're the same as Pmenu's background colour, which makes the placeholder characters invisible

No, Conceal was deliberately styled in low contrast for indent guides and the like. The moonfly theme is designed specifically for a background color of #080808. Popups and Floats are using Pmenu color far too often and it breaks themes in subtle ways. If I change Conceal for Pmenu backgrounds then it will appear far too bright on the standard theme background.

The better solution is for popups and floats to use the standard theme background colour with a border all around as seen in these fuzzy finder floating window screenshots:

fzf

Telescope

For now, Conceal will remain the colour it is, the lesser of two evils.

Cheers.

from vim-moonfly-colors.

seandewar avatar seandewar commented on August 11, 2024 1

This is a fine compromise and fixes the gaps, thanks!

My experience with creating color schemes is quite limited, so I appreciate the detailed response and clarifications.

Awesome work as always! 😁

from vim-moonfly-colors.

bluz71 avatar bluz71 commented on August 11, 2024 1

@seandewar,

There has been some enhancements done by the Neovim team with regard to LSP floating window style.

Users can now specify borders. So this is the floating window style I now use for LSP hover operations:

LSP_Hover

Two tweaks needed, first you must tell the moonfly theme to use custom floating window colors:

let g:moonflyNormalFloat = 1

And, you should make use of Neovim LSP's floating window border style (very recent Neovim 0.5 version required):

vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(
   vim.lsp.handlers.hover, {
     border = {
       {'', 'FloatBorder'},
       {'', 'FloatBorder'},
       {'', 'FloatBorder'},
       {'', 'FloatBorder'},
       {'', 'FloatBorder'},
       {'', 'FloatBorder'},
       {'', 'FloatBorder'},
       {'', 'FloatBorder'}
     }
   }
  )

Cheers.

from vim-moonfly-colors.

bluz71 avatar bluz71 commented on August 11, 2024 1

Oh sorry, I genuinely that you were using Neovim LSP. My tweaks are targeted specifically to Neovim LSP with its new border option.

from vim-moonfly-colors.

bluz71 avatar bluz71 commented on August 11, 2024

I am pleased the initial problem is fixed.

Best regards.

from vim-moonfly-colors.

seandewar avatar seandewar commented on August 11, 2024

Thanks for adding this option. :)

I use vim-lsp atm (I still use Vim) and I don't think Nvim float borders can be configured yet with it.
I sometimes contribute to Nvim, so maybe I'll be inspired to fully convert my config one day. 😄

Cheers!

from vim-moonfly-colors.

Related Issues (20)

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.