aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTommy Allen <tommy@esdf.io>2016-08-03 16:56:05 -0400
committerTommy Allen <tommy@esdf.io>2016-08-17 17:48:15 -0400
commit605e74327a406682f317d07e0097690fc1e577cb (patch)
treecdc6c3f9ca936c15f6709925f4498baafcce9190 /src
parentdfb6a5133b92ffb38bfb7201e91f3de328652558 (diff)
downloadrneovim-605e74327a406682f317d07e0097690fc1e577cb.tar.gz
rneovim-605e74327a406682f317d07e0097690fc1e577cb.tar.bz2
rneovim-605e74327a406682f317d07e0097690fc1e577cb.zip
highlight: Added QuickFixLine highlight group
- Links to Search by default screen.c: Combine CursorLine with QuickFixLine - HLF_QFL takes priority over HLF_CUL docs: Updated to mention QuickFixLine runtime: Added QuickFixLine to nvimHLGroup tests: QuickFixLine highlight
Diffstat (limited to 'src')
-rw-r--r--src/nvim/globals.h3
-rw-r--r--src/nvim/option.c2
-rw-r--r--src/nvim/quickfix.c2
-rw-r--r--src/nvim/screen.c9
-rw-r--r--src/nvim/syntax.c1
5 files changed, 12 insertions, 5 deletions
diff --git a/src/nvim/globals.h b/src/nvim/globals.h
index 950ceb4c74..9c32075d40 100644
--- a/src/nvim/globals.h
+++ b/src/nvim/globals.h
@@ -486,6 +486,7 @@ typedef enum {
, HLF_CUC /* 'cursurcolumn' */
, HLF_CUL /* 'cursurline' */
, HLF_MC /* 'colorcolumn' */
+ , HLF_QFL // selected quickfix line
, HLF_COUNT /* MUST be the last one */
} hlf_T;
@@ -494,7 +495,7 @@ typedef enum {
#define HL_FLAGS {'8', '~', 'z', 'Z', '@', 'd', 'e', 'i', 'l', 'm', 'M', 'n', \
'N', 'r', 's', 'S', 'c', 't', 'v', 'V', 'w', 'W', 'f', 'F', \
'A', 'C', 'D', 'T', '-', '>', 'B', 'P', 'R', 'L', '+', '=', \
- 'x', 'X', '*', '#', '_', '!', '.', 'o'}
+ 'x', 'X', '*', '#', '_', '!', '.', 'o', 'q'}
EXTERN int highlight_attr[HLF_COUNT]; /* Highl. attr for each context. */
EXTERN int highlight_user[9]; /* User[1-9] attributes */
diff --git a/src/nvim/option.c b/src/nvim/option.c
index 658e0d8a47..e53dbfc75a 100644
--- a/src/nvim/option.c
+++ b/src/nvim/option.c
@@ -246,7 +246,7 @@ typedef struct vimoption {
"A:DiffAdd,C:DiffChange,D:DiffDelete,T:DiffText,>:SignColumn,-:Conceal," \
"B:SpellBad,P:SpellCap,R:SpellRare,L:SpellLocal,+:Pmenu,=:PmenuSel," \
"x:PmenuSbar,X:PmenuThumb,*:TabLine,#:TabLineSel,_:TabLineFill," \
- "!:CursorColumn,.:CursorLine,o:ColorColumn"
+ "!:CursorColumn,.:CursorLine,o:ColorColumn,q:QuickFixLine"
/*
* options[] is initialized here.
diff --git a/src/nvim/quickfix.c b/src/nvim/quickfix.c
index dfd795b0ba..ba2d795eef 100644
--- a/src/nvim/quickfix.c
+++ b/src/nvim/quickfix.c
@@ -1764,7 +1764,7 @@ void qf_list(exarg_T *eap)
vim_snprintf((char *)IObuff, IOSIZE, "%2d %s",
i, (char *)fname);
msg_outtrans_attr(IObuff, i == qi->qf_lists[qi->qf_curlist].qf_index
- ? hl_attr(HLF_L) : hl_attr(HLF_D));
+ ? hl_attr(HLF_QFL) : hl_attr(HLF_D));
if (qfp->qf_lnum == 0)
IObuff[0] = NUL;
else if (qfp->qf_col == 0)
diff --git a/src/nvim/screen.c b/src/nvim/screen.c
index d67142822f..fa8318d83e 100644
--- a/src/nvim/screen.c
+++ b/src/nvim/screen.c
@@ -2405,7 +2405,7 @@ win_line (
/* Highlight the current line in the quickfix window. */
if (bt_quickfix(wp->w_buffer) && qf_current_entry(wp) == lnum)
- line_attr = hl_attr(HLF_L);
+ line_attr = hl_attr(HLF_QFL);
if (line_attr != 0)
area_highlighting = TRUE;
@@ -2624,7 +2624,12 @@ win_line (
* then. */
if (wp->w_p_cul && lnum == wp->w_cursor.lnum
&& !(wp == curwin && VIsual_active)) {
- line_attr = hl_attr(HLF_CUL);
+ if (line_attr != 0 && !(State & INSERT) && bt_quickfix(wp->w_buffer)
+ && qf_current_entry(wp) == lnum) {
+ line_attr = hl_combine_attr(hl_attr(HLF_CUL), line_attr);
+ } else {
+ line_attr = hl_attr(HLF_CUL);
+ }
area_highlighting = true;
}
diff --git a/src/nvim/syntax.c b/src/nvim/syntax.c
index 3215f7ea14..f7a8e4f8b9 100644
--- a/src/nvim/syntax.c
+++ b/src/nvim/syntax.c
@@ -5902,6 +5902,7 @@ static char *highlight_init_both[] =
"VertSplit cterm=reverse gui=reverse",
"WildMenu ctermbg=Yellow ctermfg=Black guibg=Yellow guifg=Black",
"default link EndOfBuffer NonText",
+ "default link QuickFixLine Search",
NULL
};