2010-11-06 14 views
14

Ottengo una barra grigia sul lato sinistro in vim per un file. Questo non succede per nessun altro file. Cos'è questo? E come liberarsene?Barra grigia a sinistra in vim?

EDIT:

Questo è ciò che sembra: Questo va avanti per tutta l'altezza del file. Non appare in nessun altro file. Il file è un *.C che è identificato correttamente come del tipo di file cpp ma questa cosa non accade ad altri file in cui vengono identificati come cpp. colourscheme è default

alt text

EDIT2: Ecco il file di visualizzazione per il file:

let s:so_save = &so | let s:siso_save = &siso | set so=0 siso=0 
argglobal 
setlocal keymap= 
setlocal noarabic 
setlocal autoindent 
setlocal nobinary 
setlocal bufhidden= 
setlocal buflisted 
setlocal buftype= 
setlocal cindent 
setlocal cinkeys=0{,0},0),:,0#,!^F,o,O,e 
setlocal cinoptions= 
setlocal cinwords=if,else,while,do,for,switch 
setlocal comments=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:- 
setlocal commentstring=/*%s*/ 
setlocal complete=.,w,b,u,t,i 
setlocal completefunc= 
setlocal nocopyindent 
setlocal nocursorcolumn 
setlocal nocursorline 
setlocal define= 
setlocal dictionary= 
setlocal diff 
setlocal equalprg= 
setlocal errorformat= 
setlocal expandtab 
if &filetype != 'cpp' 
setlocal filetype=cpp 
endif 
setlocal foldcolumn=2 
setlocal foldenable 
setlocal foldexpr=0 
setlocal foldignore=# 
setlocal foldlevel=0 
setlocal foldmarker={{{,}}} 
setlocal foldmethod=diff 
setlocal foldminlines=1 
setlocal foldnestmax=20 
setlocal foldtext=foldtext() 
setlocal formatexpr= 
setlocal formatoptions=tcq 
setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s* 
setlocal grepprg= 
setlocal iminsert=0 
setlocal imsearch=0 
setlocal include= 
setlocal includeexpr= 
setlocal indentexpr= 
setlocal indentkeys=0{,0},:,0#,!^F,o,O,e 
setlocal noinfercase 
setlocal [email protected],48-57,_,192-255 
setlocal keywordprg= 
setlocal nolinebreak 
setlocal nolisp 
setlocal nolist 
setlocal makeprg= 
setlocal matchpairs=(:),{:},[:] 
setlocal nomodeline 
setlocal modifiable 
setlocal nrformats=octal,hex 
setlocal nonumber 
setlocal numberwidth=4 
setlocal omnifunc= 
setlocal path= 
setlocal nopreserveindent 
setlocal nopreviewwindow 
setlocal quoteescape=\\ 
setlocal noreadonly 
setlocal norightleft 
setlocal rightleftcmd=search 
setlocal scrollbind 
setlocal shiftwidth=4 
setlocal noshortname 
setlocal smartindent 
setlocal softtabstop=0 
setlocal nospell 
setlocal spellcapcheck=[.?!]\\_[\\])'\"\ \ ]\\+ 
setlocal spellfile= 
setlocal spelllang=en 
setlocal statusline= 
setlocal suffixesadd= 
setlocal swapfile 
setlocal synmaxcol=3000 
if &syntax != 'cpp' 
setlocal syntax=cpp 
endif 
setlocal tabstop=4 
setlocal tags= 
setlocal textwidth=0 
setlocal thesaurus= 
setlocal nowinfixheight 
setlocal nowinfixwidth 
setlocal nowrap 
setlocal wrapmargin=0 
let s:l = 75 - ((20 * winheight(0) + 29)/59) 
if s:l < 1 | let s:l = 1 | endif 
exe s:l 
normal! zt 
75 
normal! 0 
let &so = s:so_save | let &siso = s:siso_save 
doautoall SessionLoadPost 
" vim: set ft=vim 
+0

La barra potrebbe essere una [piega] (http://vimdoc.sourceforge.net/htmldoc/fold.html#fold-foldcolumn)? È difficile dire in base al colore, dal momento che ognuno ha i propri colori. – Cascabel

+0

puoi mettere il tuo cursore vim sopra la barra? – wilhelmtell

+0

Can not ... Not in any mode – nakiya

risposta

14

: impostare foldcolumn = 0

+0

OMG. ha funzionato !!!! Grazie mille – nakiya

+0

Qual è l'uso di quella barra? – nakiya

+1

nakiya: la colonna Piega indica le pieghe aperte e chiuse nel buffer. Vedi ': help folding' per maggiori dettagli. –

0

La causa più probabile di questo è qualcosa di essere in una modeline - una linea con i contenuti come " vi: "oppure" vim: "o" ex: "in esso, e qualcosa è poi dopo di esso che viene interpretato come un'opzione. Vedere :help modeline per ulteriori informazioni. Non riesco a pensare in cima alla mia testa quali opzioni potrebbero farlo sembrare così.

Provare a fare :set nomodeline e ricaricare il file - se questo lo risolve, il file ha una modeline (se si intendeva che avesse o meno). Quindi puoi vedere come risolverlo o disabilitare il supporto modeline se lo desideri nel tuo vimrc.

+0

': set nomodeline' non ha funzionato. – nakiya

1

Ci possono essere alcuni motivi per questo. Uno potrebbe essere una modeline. Modeline è una linea speciale all'inizio o alla fine di un file che imposta impostazioni specifiche per Vim per quel file. Cerca una riga di commento (o una riga che inizia con uno spazio vuoto), seguita dalla parola vim e uno spazio. Qualsiasi testo successivo a quello nella riga può essere interessante per il debug di questo.

Un'altra opzione può essere che il file ha uno specifico filetype che attiva un set autocommand nel file .vimrc o uno dei suoi moduli di origine. In particolare, cercare set number, relativenumber, , foldcolumn o forse anche le impostazioni specifiche di evidenziazione per gli spazi vuoti. In Vim all'interno del buffer pertinente immettere :set ft? seguito da un carriage-return per conoscere il set di tipi di file per quel file; usa questo per guardare le impostazioni per quel tipo di file nel tuo vimrc o le impostazioni di evidenziazione nell'albero della directory .vim.

+0

Modeline provata - non ha funzionato. E non ci sono autocomandi per il tipo 'cpp'. – nakiya

7

Sembra che alcuni plugin creino un segno. Prova a fare

sign unplace * 

per trovare dove si trova questo plugin, provare

vim /path/to/file/that/causes/problem -c 'redir! >/tmp/scriptnames' -c scriptnames -c 'redir END' -c 'qa!' 
perl -p -i -e 's/^\s*$//g;s/^\s*\d+:\s//g' /tmp/scriptnames 
grep -F -w 'sign define' `cat /tmp/scriptnames` 
+0

Non funziona. :( – nakiya

+0

ha funzionato per me! Grazie! –

+0

@ZyX Potresti fornire un po 'di più informazioni su cosa questo comando effettivamente fa o indirizzarci alla documentazione? – meetalexjohnson

0

Giusto per aggiungere si può dire che lo script impostare l'opzione utilizzando

:verbose set foldcolumn? 

Puoi sostituire foldcolumn con qualsiasi nome che ti interessa.

Problemi correlati