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

[RDY] new highlight group Whitespace for 'listchars' #6367

Closed
wants to merge 5 commits into
base: master
from

Conversation

Projects
None yet
6 participants
@zhou13
Contributor

zhou13 commented Mar 26, 2017

This pull request creates a new highlight group Whitespace in 'listchars' for "nbsp", "space", "tab" and "trail". The reason is that "SpecialKey" is designed to show the special characters such as ^M and <M-x>, which is usually rendered with a high-contrast color. On the other hand, users usually wish to use a low-contrast color to show the whitespace.

@marvim marvim added the RFC label Mar 26, 2017

Show outdated Hide outdated src/nvim/syntax.c Outdated
Show outdated Hide outdated src/nvim/globals.h Outdated
@justinmk

This comment has been minimized.

Show comment
Hide comment
@justinmk

justinmk Mar 26, 2017

Member

I've no objections. Might want to wait for objections/suggestions from others before writing tests.

"whitespace" in technical parlance is one word, so the name should be Whitespace.

test/functional/ui/quickfix_spec.lua tests "QuickFixLine" highlight group which might be a good starting point. Tests should go in the describe('Default highlight groups' block of test/functional/ui/highlight_spec.lua.

Member

justinmk commented Mar 26, 2017

I've no objections. Might want to wait for objections/suggestions from others before writing tests.

"whitespace" in technical parlance is one word, so the name should be Whitespace.

test/functional/ui/quickfix_spec.lua tests "QuickFixLine" highlight group which might be a good starting point. Tests should go in the describe('Default highlight groups' block of test/functional/ui/highlight_spec.lua.

Show outdated Hide outdated runtime/doc/vim_diff.txt Outdated
Show outdated Hide outdated src/nvim/syntax.c Outdated

@zhou13 zhou13 changed the title from [RFC] new highlight group WhiteSpace for 'listchars' to [RFC] new highlight group Whitespace for 'listchars' Mar 29, 2017

@justinmk

This comment has been minimized.

Show comment
Hide comment
@justinmk

justinmk Mar 30, 2017

Member

LGTM after a test is added.

Member

justinmk commented Mar 30, 2017

LGTM after a test is added.

@zhou13 zhou13 changed the title from [RFC] new highlight group Whitespace for 'listchars' to [RDY] new highlight group Whitespace for 'listchars' Mar 31, 2017

@marvim marvim added RDY and removed RFC labels Mar 31, 2017

@justinmk

This comment has been minimized.

Show comment
Hide comment
@justinmk

justinmk Apr 3, 2017

Member

Merged. Thanks @zhou13

Member

justinmk commented Apr 3, 2017

Merged. Thanks @zhou13

@justinmk justinmk closed this Apr 3, 2017

@justinmk justinmk removed the RDY label Apr 3, 2017

justinmk added a commit that referenced this pull request Apr 3, 2017

@adriaanzon

This comment has been minimized.

Show comment
Hide comment
@adriaanzon

adriaanzon Apr 6, 2017

Should this link to SpecialKey by default? A lot of existing color schemes intend to highlight the listchars when specifying a color for SpecialKey.

adriaanzon commented Apr 6, 2017

Should this link to SpecialKey by default? A lot of existing color schemes intend to highlight the listchars when specifying a color for SpecialKey.

@zhou13

This comment has been minimized.

Show comment
Hide comment
@zhou13

zhou13 Apr 6, 2017

Contributor

@adriaanzon Please provide the link to the theme that is not working, a screenshot of your :map and a screenshot of a editor with set listchars=eol:¬,tab:»\ ,extends:>,precedes:<,nbsp:- list

Contributor

zhou13 commented Apr 6, 2017

@adriaanzon Please provide the link to the theme that is not working, a screenshot of your :map and a screenshot of a editor with set listchars=eol:¬,tab:»\ ,extends:>,precedes:<,nbsp:- list

@adriaanzon

This comment has been minimized.

Show comment
Hide comment
@adriaanzon

adriaanzon Apr 7, 2017

I'm using the seoul256 colorscheme.

I ran the following command so the trailing spaces are also highlighted:

set listchars& listchars+=eollist

Here's a before and after updating neovim:

Before After
schermafdruk van 2017-04-07 21-33-23 schermafdruk van 2017-04-07 21-37-19
schermafdruk van 2017-04-07 21-28-59 schermafdruk van 2017-04-07 21-37-08

The :map colors didn't change. The colors of trail, tab, and nbsp became darker.

adriaanzon commented Apr 7, 2017

I'm using the seoul256 colorscheme.

I ran the following command so the trailing spaces are also highlighted:

set listchars& listchars+=eollist

Here's a before and after updating neovim:

Before After
schermafdruk van 2017-04-07 21-33-23 schermafdruk van 2017-04-07 21-37-19
schermafdruk van 2017-04-07 21-28-59 schermafdruk van 2017-04-07 21-37-08

The :map colors didn't change. The colors of trail, tab, and nbsp became darker.

@zhou13 zhou13 deleted the zhou13:whitespace branch Apr 7, 2017

@zhou13

This comment has been minimized.

Show comment
Hide comment
@zhou13

zhou13 Apr 7, 2017

Contributor

@adriaanzon Thanks for your input. For seoul256, the problem is that it uses a high contrast color for NonText. Although not shown in your screenshot, I think user cannot easily distinguish between normal text and a EOL if they are immediately adjacent, but that maybe just my personal taste.

It seems that for most themes on Internet, the SpecialKey and NonText are the same. So linking to either should work for most people. But these themes make your :map and real special chars difficult to read.

Anyway, some people must put hi link Whitespace XXXX into their vimrc or in their theme. I still hold my opinion that Whitespace should be linked to NonText as most people want the same color for EOL and whitespace and therefore they don't need to change it. New themes need change SpecialKey to a high contrast color for better user experience. The final decision will be made by @justinmk.

Contributor

zhou13 commented Apr 7, 2017

@adriaanzon Thanks for your input. For seoul256, the problem is that it uses a high contrast color for NonText. Although not shown in your screenshot, I think user cannot easily distinguish between normal text and a EOL if they are immediately adjacent, but that maybe just my personal taste.

It seems that for most themes on Internet, the SpecialKey and NonText are the same. So linking to either should work for most people. But these themes make your :map and real special chars difficult to read.

Anyway, some people must put hi link Whitespace XXXX into their vimrc or in their theme. I still hold my opinion that Whitespace should be linked to NonText as most people want the same color for EOL and whitespace and therefore they don't need to change it. New themes need change SpecialKey to a high contrast color for better user experience. The final decision will be made by @justinmk.

@justinmk

This comment has been minimized.

Show comment
Hide comment
@justinmk

justinmk Apr 7, 2017

Member

@tweekmonster Made the case:

I never think: "I want to see invisible characters, but I want them to be highlighted to look like editable, opaque text because I want to confuse myself and I also want :map to be difficult to read."

But it looks like seoul256 highlights NonText rather boldly. @adriaanzon why is it ok for "eol" to be highlighted boldly but not ok for tab characters? They're both whitespace. It's surprising for a colorscheme to highlight "eol" boldly.

And with the Whitespace highlight it's now possible to make a finer-grained distinction.

Member

justinmk commented Apr 7, 2017

@tweekmonster Made the case:

I never think: "I want to see invisible characters, but I want them to be highlighted to look like editable, opaque text because I want to confuse myself and I also want :map to be difficult to read."

But it looks like seoul256 highlights NonText rather boldly. @adriaanzon why is it ok for "eol" to be highlighted boldly but not ok for tab characters? They're both whitespace. It's surprising for a colorscheme to highlight "eol" boldly.

And with the Whitespace highlight it's now possible to make a finer-grained distinction.

@adriaanzon

This comment has been minimized.

Show comment
Hide comment
@adriaanzon

adriaanzon Apr 8, 2017

Yeah, I was actually surprised to see eol highlighted boldly as well, because I have it turned off normally. I only wanted to point out the difference between the before/after of trail, tab, and nbsp.

And with the Whitespace highlight it's now possible to make a finer-grained distinction.

Agreed. I do like the addition; it allows me to highlight the whitespace characters even lighter than before, without changing the highlighting of things like :map.

adriaanzon commented Apr 8, 2017

Yeah, I was actually surprised to see eol highlighted boldly as well, because I have it turned off normally. I only wanted to point out the difference between the before/after of trail, tab, and nbsp.

And with the Whitespace highlight it's now possible to make a finer-grained distinction.

Agreed. I do like the addition; it allows me to highlight the whitespace characters even lighter than before, without changing the highlighting of things like :map.

@tweekmonster

This comment has been minimized.

Show comment
Hide comment
@tweekmonster

tweekmonster Apr 8, 2017

Member

I personally stopped using listchars a long time ago because it made :map hard to read when I used a SpecialKey color that made sense for invisible characters.

I think the use of SpecialKey for listchars is one of those conservatist decisions from upstream because of a strong desire to maximize the reuse of the existing highlights. nbsp, space, tab, and trail are invisible characters that take up screen space. If anything, they should've been using the Conceal highlight.

They're both whitespace.

@justinmk IMO \n is whitespace in a text stream, but not in Vim. In Vim, it's not a character you can select and replace, overtype, etc. It's more of a phantom character. So, I somewhat agree that it should be highlighted differently from invisibles. Definitely not boldly, though.

This is how I define these highlights:

  • Whitespace: Invisible characters. They can be selected and manipulated. I feel that calling these "unprintable" isn't very correct in terms of screen display, at least not in the way that \a and \r are unprintable. They simply don't have glyphs to display by design and function.
  • NonText: Assistive text displayed by Vim. They cannot be selected or manipulated. Basically a HUD. In the case of eol, it informs you that the line actually ended and isn't just a string of invisible characters that pushed the rest of the line off screen.
  • Conceal: Characters hidden by Vim, but made visible with one character.
  • SpecialKey: Characters translated by Vim because they have an internal representation that only makes sense to Vim (e.g. <Left> is internally \x80kl). <tab> just barely meets this criteria because it has a variable width.
Member

tweekmonster commented Apr 8, 2017

I personally stopped using listchars a long time ago because it made :map hard to read when I used a SpecialKey color that made sense for invisible characters.

I think the use of SpecialKey for listchars is one of those conservatist decisions from upstream because of a strong desire to maximize the reuse of the existing highlights. nbsp, space, tab, and trail are invisible characters that take up screen space. If anything, they should've been using the Conceal highlight.

They're both whitespace.

@justinmk IMO \n is whitespace in a text stream, but not in Vim. In Vim, it's not a character you can select and replace, overtype, etc. It's more of a phantom character. So, I somewhat agree that it should be highlighted differently from invisibles. Definitely not boldly, though.

This is how I define these highlights:

  • Whitespace: Invisible characters. They can be selected and manipulated. I feel that calling these "unprintable" isn't very correct in terms of screen display, at least not in the way that \a and \r are unprintable. They simply don't have glyphs to display by design and function.
  • NonText: Assistive text displayed by Vim. They cannot be selected or manipulated. Basically a HUD. In the case of eol, it informs you that the line actually ended and isn't just a string of invisible characters that pushed the rest of the line off screen.
  • Conceal: Characters hidden by Vim, but made visible with one character.
  • SpecialKey: Characters translated by Vim because they have an internal representation that only makes sense to Vim (e.g. <Left> is internally \x80kl). <tab> just barely meets this criteria because it has a variable width.
@justinmk

This comment has been minimized.

Show comment
Hide comment
@justinmk

justinmk Apr 8, 2017

Member

I don't disagree with anything here. Is there anything actionable? Linking to Conceal may cause similar imbalances in some colorschemes, I guess.

So far the only report (re seoul256) doesn't seem like a terrible result.

Member

justinmk commented Apr 8, 2017

I don't disagree with anything here. Is there anything actionable? Linking to Conceal may cause similar imbalances in some colorschemes, I guess.

So far the only report (re seoul256) doesn't seem like a terrible result.

@tweekmonster

This comment has been minimized.

Show comment
Hide comment
@tweekmonster

tweekmonster Apr 8, 2017

Member

Is there anything actionable?

Not for Neovim. I was commenting for posterity. I guess an issue can be raised for seoul256 to use the Whitespace highlight.

Member

tweekmonster commented Apr 8, 2017

Is there anything actionable?

Not for Neovim. I was commenting for posterity. I guess an issue can be raised for seoul256 to use the Whitespace highlight.

justinmk added a commit to justinmk/neovim that referenced this pull request May 1, 2017

NVIM v0.2.0
FEATURES:
    bc4a2e1 help, man.vim: "outline" (TOC) feature neovim#5169
    58422f1 'guicursor' works in the TUI (and sends info to UIs) neovim#6423
    129f107 api: nvim_get_mode() neovim#6247
    0b59f98 api/ui: externalize tabline neovim#6583
    bc6d868 'listchars': `Whitespace` highlight group neovim#6367
    6afa7d6 writefile() obeys 'fsync' option neovim#6427
    c60e409 eval.c refactor (also improves some error messages) neovim#5119
    9d200cd getcompletion("cmdline") neovim#6376
    2ea7bfc terminal: Support extra arguments in 'shell'. neovim#4504
    bf51102 DirChanged autocmd neovim#5928 neovim#6262
    1743df8 'cpoptions': "_" flag to toggle `cw` behaviour neovim#6235
    22337b1 CTRL-R omits trailing ^M when pasting to cmdline neovim#6137
    0e44916 :edit allows unescaped spaces in filename neovim#6119
    abdbfd2 eval: Add id() function and make printf("%p") useful neovim#6095
    bdfa147 findfile(), :find, gf work in :terminal. neovim#6009
    2f38ed1 providers: Disable if `g:loaded_*` exists.
    b5560a6 setpos() can set lowercase marks in other buffers neovim#5753
    7c513d6 Throttle :! output, pulse "..." message. neovim#5396
    d2e8c76 v:exiting neovim#5651

    :terminal improvements neovim#6185 neovim#6142
      - cursor keeps position after leaving insert-mode.
      - 4ceec30 Follows output only if cursor is at end of buffer.
      - e7bbd35 new option: 'scrollback'
      - fedb844 quasi-support for undo and 'modifiable'
      - b45ddf7 disables 'list' by default
      - disables 'relativenumber' by default

    :help now contains full API documentation at `:help api`.

    man.vim saw numerous improvements.

    Windows support:
      - Windows is no longer "experimental", it is fully supported.
      - Windows package includes a GUI, curl.exe and other utilities.

    "Vim 8" features: partials, lambdas, packages.

FIXES:
    12fc1de ops: fix i<c-r> with multi-byte text neovim#6524
    dd391bf Windows: system() and friends neovim#6497
    13352c0 Windows: os_get_hostname() neovim#6413
    16babc6 tui: Less-noisy mouse seqs neovim#6411
    3a9dd13 (vim bug) folding edge-cases  neovim#6207
    f6946c6 job-control: set CLOEXEC on pty processes. neovim#5986
    d1afd43 rplugin: Call s:LoadRemotePlugins() on startup.
    1215084 backtick-expansion works with `shell=fish` neovim#6224
    e32ec03 tui: Improved behavior after resize. neovim#6202
    86c2adc edit.c: CTRL-SPC: Insert previously-inserted text. neovim#6090
    c318d8e b:changedtick now follows VimL rules neovim#6112
    34e24cb terminal: Initialize colors in reverse order neovim#6160
    e889917 undo: Don't set b_u_curhead in ex_undojoin() neovim#5869
    d25649f undo: :earlier, g-: Set b_u_seq_cur correctly. (neovim#6016)
    043d8ba 'Visual-mode put from @. register' neovim#5782
    42c922b open_buffer(): Do `BufEnter` for directories.
    50d0d89 inccommand: Preview :sub commands only after delimiter neovim#5932
    1420e10 CheckHealth improvements neovim#5519
    c8d5e92 jobstart(): Return -1 if cmd is not executable. neovim#5671

CHANGES:
    NVIM_TUI_ENABLE_CURSOR_SHAPE was removed. Use 'guicursor' instead.
        See https://github.com/neovim/neovim/wiki/Following-HEAD#20170402

    81525dc 'mouse=a' is no longer the default. (This will probably
                 change again after it is improved.) neovim#6022

    0c1f783 defaults: 'showcmd', 'belloff', 'ruler' neovim#6087
    eb0e94f api: {get,set}_option update local options as appropriate neovim#6405
    bdcb2a3 "Reading from stdin..." message was removed. neovim#6298

@justinmk justinmk referenced this pull request May 1, 2017

Merged

NVIM v0.2.0 #6634

justinmk added a commit to justinmk/neovim that referenced this pull request May 1, 2017

NVIM v0.2.0
FEATURES:
    bc4a2e1 help, man.vim: "outline" (TOC) feature neovim#5169
    58422f1 'guicursor' works in the TUI (and sends info to UIs) neovim#6423
    129f107 api: nvim_get_mode() neovim#6247
    0b59f98 api/ui: externalize tabline neovim#6583
    bc6d868 'listchars': `Whitespace` highlight group neovim#6367
    6afa7d6 writefile() obeys 'fsync' option neovim#6427
    c60e409 eval.c refactor (also improves some error messages) neovim#5119
    9d200cd getcompletion("cmdline") neovim#6376
    2ea7bfc terminal: Support extra arguments in 'shell'. neovim#4504
    bf51102 DirChanged autocmd neovim#5928 neovim#6262
    1743df8 'cpoptions': "_" flag to toggle `cw` behaviour neovim#6235
    22337b1 CTRL-R omits trailing ^M when pasting to cmdline neovim#6137
    0e44916 :edit allows unescaped spaces in filename neovim#6119
    abdbfd2 eval: Add id() function and make printf("%p") useful neovim#6095
    bdfa147 findfile(), :find, gf work in :terminal. neovim#6009
    2f38ed1 providers: Disable if `g:loaded_*` exists.
    b5560a6 setpos() can set lowercase marks in other buffers neovim#5753
    7c513d6 Throttle :! output, pulse "..." message. neovim#5396
    d2e8c76 v:exiting neovim#5651

    :terminal improvements neovim#6185 neovim#6142
      - cursor keeps position after leaving insert-mode.
      - 4ceec30 Follows output only if cursor is at end of buffer.
      - e7bbd35 new option: 'scrollback'
      - fedb844 quasi-support for undo and 'modifiable'
      - b45ddf7 disables 'list' by default
      - disables 'relativenumber' by default

    :help now contains full API documentation at `:help api`.

    man.vim saw numerous improvements.

    Windows support:
      - Windows is no longer "experimental", it is fully supported.
      - Windows package includes a GUI, curl.exe and other utilities.

    "Vim 8" features: partials, lambdas.

SECURITY FIXES:
    CVE-2017-5953 CVE-2017-6349 CVE-2017-6350 neovim#6485

CHANGES:
    NVIM_TUI_ENABLE_CURSOR_SHAPE was removed. Use 'guicursor' instead.
        See https://github.com/neovim/neovim/wiki/Following-HEAD#20170402

    81525dc 'mouse=a' is no longer the default. (This will probably
                 change again after it is improved.) neovim#6022

    0c1f783 defaults: 'showcmd', 'belloff', 'ruler' neovim#6087
    eb0e94f api: {get,set}_option update local options as appropriate neovim#6405
    bdcb2a3 "Reading from stdin..." message was removed. neovim#6298

FIXES:
    12fc1de ops: fix i<c-r> with multi-byte text neovim#6524
    dd391bf Windows: system() and friends neovim#6497
    13352c0 Windows: os_get_hostname() neovim#6413
    16babc6 tui: Less-noisy mouse seqs neovim#6411
    3a9dd13 (vim bug) folding edge-cases  neovim#6207
    f6946c6 job-control: set CLOEXEC on pty processes. neovim#5986
    d1afd43 rplugin: Call s:LoadRemotePlugins() on startup.
    1215084 backtick-expansion works with `shell=fish` neovim#6224
    e32ec03 tui: Improved behavior after resize. neovim#6202
    86c2adc edit.c: CTRL-SPC: Insert previously-inserted text. neovim#6090
    c318d8e b:changedtick now follows VimL rules neovim#6112
    34e24cb terminal: Initialize colors in reverse order neovim#6160
    e889917 undo: Don't set b_u_curhead in ex_undojoin() neovim#5869
    d25649f undo: :earlier, g-: Set b_u_seq_cur correctly. (neovim#6016)
    043d8ba 'Visual-mode put from @. register' neovim#5782
    42c922b open_buffer(): Do `BufEnter` for directories.
    50d0d89 inccommand: Preview :sub commands only after delimiter neovim#5932
    1420e10 CheckHealth improvements neovim#5519
    c8d5e92 jobstart(): Return -1 if cmd is not executable. neovim#5671

justinmk added a commit to justinmk/neovim that referenced this pull request May 1, 2017

NVIM v0.2.0
FEATURES:
    bc4a2e1 help, man.vim: "outline" (TOC) feature neovim#5169
    58422f1 'guicursor' works in the TUI (and sends info to UIs) neovim#6423
    129f107 api: nvim_get_mode() neovim#6247
    0b59f98 api/ui: externalize tabline neovim#6583
    bc6d868 'listchars': `Whitespace` highlight group neovim#6367
    6afa7d6 writefile() obeys 'fsync' option neovim#6427
    c60e409 eval.c refactor (also improves some error messages) neovim#5119
    9d200cd getcompletion("cmdline") neovim#6376
    2ea7bfc terminal: Support extra arguments in 'shell'. neovim#4504
    bf51102 DirChanged autocmd neovim#5928 neovim#6262
    1743df8 'cpoptions': "_" flag to toggle `cw` behaviour neovim#6235
    22337b1 CTRL-R omits trailing ^M when pasting to cmdline neovim#6137
    0e44916 :edit allows unescaped spaces in filename neovim#6119
    abdbfd2 eval: Add id() function and make printf("%p") useful neovim#6095
    bdfa147 findfile(), :find, gf work in :terminal. neovim#6009
    2f38ed1 providers: Disable if `g:loaded_*` exists.
    b5560a6 setpos() can set lowercase marks in other buffers neovim#5753
    7c513d6 Throttle :! output, pulse "..." message. neovim#5396
    d2e8c76 v:exiting neovim#5651

    :terminal improvements neovim#6185 neovim#6142
      - cursor keeps position after leaving insert-mode.
      - 4ceec30 Follows output only if cursor is at end of buffer.
      - e7bbd35 new option: 'scrollback'
      - fedb844 quasi-support for undo and 'modifiable'
      - b45ddf7 disables 'list' by default
      - disables 'relativenumber' by default

    :help now contains full API documentation at `:help api`.

    man.vim saw numerous improvements.

    Windows support:
      - Windows is no longer "experimental", it is fully supported.
      - Windows package includes a GUI, curl.exe and other utilities.

    "Vim 8" features: partials, lambdas.

SECURITY FIXES:
    CVE-2017-5953 CVE-2017-6349 CVE-2017-6350 neovim#6485

CHANGES:
    NVIM_TUI_ENABLE_CURSOR_SHAPE was removed. Use 'guicursor' instead.
        See https://github.com/neovim/neovim/wiki/Following-HEAD#20170402

    81525dc 'mouse=a' is no longer the default. (This will probably
                 change again after it is improved.) neovim#6022

    0c1f783 defaults: 'showcmd', 'belloff', 'ruler' neovim#6087
    eb0e94f api: {get,set}_option update local options as appropriate neovim#6405
    bdcb2a3 "Reading from stdin..." message was removed. neovim#6298

FIXES:
    12fc1de ops: fix i<c-r> with multi-byte text neovim#6524
    dd391bf Windows: system() and friends neovim#6497
    13352c0 Windows: os_get_hostname() neovim#6413
    16babc6 tui: Less-noisy mouse seqs neovim#6411
    3a9dd13 (vim bug) folding edge-cases  neovim#6207
    f6946c6 job-control: set CLOEXEC on pty processes. neovim#5986
    d1afd43 rplugin: Call s:LoadRemotePlugins() on startup.
    1215084 backtick-expansion works with `shell=fish` neovim#6224
    e32ec03 tui: Improved behavior after resize. neovim#6202
    86c2adc edit.c: CTRL-SPC: Insert previously-inserted text. neovim#6090
    c318d8e b:changedtick now follows VimL rules neovim#6112
    34e24cb terminal: Initialize colors in reverse order neovim#6160
    e889917 undo: Don't set b_u_curhead in ex_undojoin() neovim#5869
    d25649f undo: :earlier, g-: Set b_u_seq_cur correctly. (neovim#6016)
    043d8ba 'Visual-mode put from @. register' neovim#5782
    42c922b open_buffer(): Do `BufEnter` for directories.
    50d0d89 inccommand: Preview :sub commands only after delimiter neovim#5932
    1420e10 CheckHealth improvements neovim#5519
    c8d5e92 jobstart(): Return -1 if cmd is not executable. neovim#5671

xeyownt added a commit to xeyownt/vim-colors-solarized that referenced this pull request May 28, 2017

Link 'Whitespace' group to 'SpecialKey', for neovim support
Neovim recently added a group `Whitespace` to differentiate from group `SpecialKey`
that usually has a high-contrast color. As a result, we lose the
highlighting of tabs/trail in Solarized.

See neovim/neovim#6367.
@xeyownt

This comment has been minimized.

Show comment
Hide comment
@xeyownt

xeyownt May 28, 2017

For info, this also breaks vim-colors-solarized. trail and tabs for instance are no longer displayed with the slightly darker background. I fixed this issue in my fork.

I appreciate the possibility to highlight Whitespace and SpecialKey differently, but since Vim/gVim use SpecialKey, NeoVim should by default link Whitespace to SpecialKey since it claims compatibility with most Vim plugins.

xeyownt commented May 28, 2017

For info, this also breaks vim-colors-solarized. trail and tabs for instance are no longer displayed with the slightly darker background. I fixed this issue in my fork.

I appreciate the possibility to highlight Whitespace and SpecialKey differently, but since Vim/gVim use SpecialKey, NeoVim should by default link Whitespace to SpecialKey since it claims compatibility with most Vim plugins.

xeyownt added a commit to xeyownt/NeoSolarized that referenced this pull request Oct 12, 2017

Link 'Whitespace' group to 'SpecialKey', for neovim support
Neovim recently added a group `Whitespace` to differentiate from group `SpecialKey`
that usually has a high-contrast color. As a result, we lose the
highlighting of tabs/trail in Solarized.

See neovim/neovim#6367.

This is backported from xeyownt/vim-colors-solarized.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment