syntastic 세그먼트를 Vim 용 powerline 바닥 글에 어떻게 추가합니까? (새로운 전력선, vim-powerline이 아닌) 합성 문서는 표준 Vim 바닥 글에 추가하는 방법 만 말하고 있으며 powerline docs에 추가하는 방법을 찾을 수 없습니다.Vim Powerline with Synthetic 세그먼트
답변
대부분이 지침은 전력선 용으로 this pull request (451)에서 왔습니다.
이 끌어 오기 요청은 전력선에 구문 세그먼트를 추가합니다. 세그먼트가 주 전력선 트리에 병합되지 않으므로 수동으로 패치를 미리 만들어야합니다. 고맙게도 세 파일 만 수정하면됩니다. (+는 줄을 추가 함/- mean은 줄을 제거함을 의미). 색깔이 다른 diff에 대한 요청을보세요.
파일 : powerline/config_files/colorschemes/vim/default.json
(라인 28)
"line_current_symbol": { "fg": "gray1", "bg": "gray10" },
"virtcol_current_gradient": { "fg": "dark_GREEN_Orange_red", "bg": "gray10" },
"col_current": { "fg": "gray6", "bg": "gray10" },
- "modified_buffers": { "fg": "brightyellow", "bg": "gray2" }
+ "modified_buffers": { "fg": "brightyellow", "bg": "gray2" },
+ "syntastic_segment": { "fg": "brightestred", "bg": "gray2", "attr": ["bold"] }
},
"mode_translations": {
"nc": {
파일 : powerline/config_files/colorschemes/vim/default.json
(라인 68)
"groups": {
"mode": { "fg": "darkestcyan", "bg": "white", "attr": ["bold"] },
"background:divider": { "fg": "darkcyan", "bg": "darkestblue" },
- "branch:divider": { "fg": "darkcyan", "bg": "darkblue" }
+ "branch:divider": { "fg": "darkcyan", "bg": "darkblue" },
+ "syntastic_segment": { "fg": "white", "bg": "darkestblue", "attr": ["bold"] }
}
},
"v": {
파일 : 전력선/config_files/colorschemes/정력/솔라리. json (라인 27)
"line_current": { "fg": "gray13", "bg": "lightyellow", "attr": ["bold"] },
"line_current_symbol": { "fg": "gray13", "bg": "lightyellow" },
"virtcol_current_gradient": { "fg": "GREEN_Orange_red", "bg": "gray10" },
- "col_current": { "fg": "azure4", "bg": "lightyellow" }
+ "col_current": { "fg": "azure4", "bg": "lightyellow" },
+ "syntastic_segment": { "fg": "red", "bg": "royalblue5", "attr": ["bold"] }
},
"mode_translations": {
"nc": {
파일 : 전력선/config_files/colorschemes/정력/solarized.json (라인 65)
"line_percent_gradient": { "fg": "oldlace", "bg": "gray61" },
"line_current": { "fg": "gray13", "bg": "oldlace", "attr": ["bold"] },
"line_current_symbol": { "fg": "gray13", "bg": "oldlace" },
- "col_current": { "fg": "azure4", "bg": "oldlace" }
+ "col_current": { "fg": "azure4", "bg": "oldlace" },
+ "syntastic_segment": { "fg": "lightyellow", "bg": "darkgreencopper", "attr": ["bold"] }
}
},
"v": {
파일 : powerline/segments/vim.py
(23 행)
'expand': vim_get_func('expand', rettype=str),
'bufnr': vim_get_func('bufnr', rettype=int),
'line2byte': vim_get_func('line2byte', rettype=int),
+ 'exists': vim_get_func('exists', rettype=int),
}
vim_modes = {
powerline/segments/vim.py
끝 부분에 fol 기능 저하. (이 기능을 들여 탭을 사용하십시오. 당신은 파이썬 파일 들여 쓰기 문제를 수정하는) 이러한 모든 변화는 지금 세그먼트에 설정해야합니다 만들어
@window_cached
def syntastic_segment(pl):
'''Return the syntastic statusline flag
'''
if int(vim_funcs['exists']('*SyntasticStatuslineFlag')) > 0:
syntastic_flag_func = vim_get_func('SyntasticStatuslineFlag', rettype=str)
return [{
'contents': str(syntastic_flag_func()),
}]
else:
return None
후. 이 작업을 수행하는 한 가지 방법은 구성 파일을 편집하는 것입니다. ~/.config/powerline/themes/vim/default.json
섹션 segments:
오른쪽 또는 왼쪽 섹션에 다음을 배치하십시오.
{
"name": "syntastic_segment",
"before": " "
},
이러한 모든 변경이 끝나면 이제 전원 선 세그먼트에서 합성 오류 출력을 볼 수 있습니다.
문제 해결 :
- 당신이 JSON로 구문 분석 오류가 발생할 경우에 당신이 시도하고 파일을 구문 분석하지 않습니다 전력선에 플러그인없이 정력을 시작
vim --noplugin
과 정력을 시작할 수 있습니다. - json의 쉼표가 올바른 위치에 있는지 확인하십시오.
- 편집 할 때 파이썬 파일에 공백이 아닌 탭을 사용했는지 확인하십시오.
왜 저자에게 물어 보지 않으시겠습니까? – romainl