2012-01-03 9 views
6

Sto utilizzando il plug-in Show Marks in vim per visualizzare dove sono i segni. I segni visualizzati possono essere attivati ​​/ disattivati ​​con il comando \mt. Quando ho aperto un documento i marchi sono fuori in questo modo:Il plug-in Mostra segni fa sì che i contrassegni vengano "inseriti" dopo circa 4 secondi

Marks Off

Poi circa 4 secondi più tardi con assolutamente alcuna azione da parte mia, la mano sinistra gli schiocchi margine marchio in questo modo:

Marks On

ho tre domande:

  1. Quali sono quelli def segni di ault?
  2. Perché è necessario attendere alcuni secondi per visualizzarlo?
  3. Come posso forzare l'attivazione/disattivazione del margine del segno all'avvio?

Ecco il file .vimrc (So che è disordinato, ma nelle parole di Walter E. Kurtz: "Si dispone di un diritto di uccidere me ... ma non hai il diritto di giudicarmi . ")

set modeline      "These two lines display the file name at the bottom 
set ls=2 

set undodir=~/.vim/undodir 
set undofile 
set undolevels=100 "maximum number of changes that can be undone 
set undoreload=10000 "maximum number lines to save for undo on a buffer reload 

"Keep undo history when switching buffers 
set hidden 

set nocompatible     "Don't use vi-compatibility mode 

set backspace=2      "Use the smart version of backspace 

set expandtab      "Tab-related settings 

set number            "Line Numbers 

set shiftwidth=4 
set showcmd 
"set ts=4            "4 columns for tabs 

set smarttab 

set smartindent           "Indent every time you press enter 

set scrolloff=999      "Cursor Always in middle 

set ruler       "Always display row/column info 

set tabpagemax=100     "I want a lot of tabs 

set tags=tags;/ 

imap jj <Esc>      "Map jj to escape 

map <S-j> :bp<CR>   "Map F7 to previous tab 

map <S-k> :bn<CR>    "Map F7 to next tab 

map <Space> <PageDown>    "Map space bar to next page down 

set hlsearch "Highlight search strings 

"map <S-u> <C-u>      "Map page movement keys to shift as well 

"map <S-d> <C-d>      "Map page movement keys to shift as well 

"map <S-b> <C-b>      "Map page movement keys to shift as well 

"map <S-f> <C-f>      "Map page movement keys to shift as well 

map <F2> :NERDTreeToggle<CR> "Toggle Nerd Tree on/off 

syntax on 

"for Syntastic 

function! BufSel(pattern) 
    let bufcount = bufnr("$") 
    let currbufnr = 1 
    let nummatches = 0 
    let firstmatchingbufnr = 0 
    while currbufnr <= bufcount 
    if(bufexists(currbufnr)) 
     let currbufname = bufname(currbufnr) 
     if(match(currbufname, a:pattern) > -1) 
     echo currbufnr . ": ". bufname(currbufnr) 
     let nummatches += 1 
     let firstmatchingbufnr = currbufnr 
     endif 
    endif 
    let currbufnr = currbufnr + 1 
    endwhile 
    if(nummatches == 1) 
    execute ":buffer ". firstmatchingbufnr 
    elseif(nummatches > 1) 
    let desiredbufnr = input("Enter buffer number: ") 
    if(strlen(desiredbufnr) != 0) 
     execute ":buffer ". desiredbufnr 
    endif 
    else 
    echo "No matching buffers" 
    endif 
endfunction 

"Bind the BufSel() function to a user-command 
command! -nargs=1 Bs :call BufSel("<args>") 

call pathogen#infect() 

"For syntax checking (syntastic) 
let g:syntastic_auto_loc_list=1 
let g:syntastic_disabled_filetypes=['html'] 
let g:syntastic_enable_signs=1 
"set statusline=%{SyntasticStatuslineFlag()} 
set statusline=%<\ %n:%f\ %m%r%y%{SyntasticStatuslineFlag()}%=line:\ %l\ of\ %L\ (%p%%),\ col:\ %c%V\ \ \ \ \ Modified:\ %{Time()} 

function! Time() 
    return strftime("%c", getftime(bufname("%"))) 
endfunction 

"For jsbeautify 
map <F9> :call g:Jsbeautify()<CR> 

"Check PHP Syntax 
:autocmd FileType php noremap <C-L> :!php -l %<CR> 

"Beautify PHP Syntax In 4 steps 
"1) reduce all multiple blank lines to a single blank line 
"2) change all blank lines to something unique like 'if(true)echo('it puts the lotion on the skin');' 
"3) apply beautifier 
"4) change unique quote back to new line 
func! ParsePHP() 
    :exe 'g/^\_$\n\_^$/d' 
    :%s/^[\ \t]*\n/$x = 'It puts the lotion on the skin';\r/ge 
    :exe '%!php_beautifier --filters "ArrayNested() IndentStyles(style=k&r)"' 
    :%s/$x = 'It puts the lotion on the skin';//ge 
endfunc 

map <F8> :call ParsePHP()<CR> 
+2

+1 per la citazione colonnello Kurtz. – romainl

risposta

3

Dalle file di aiuto:

let g:showmarks_enable=0 

i segni di default potrebbero essere cose come la tua ultima linea modificata.

:h `[ 

Ma loro sembrano segni numerici, potrebbe essere semplicemente impostato nel corso di una modifica precedente? Sto indovinando se ne andranno, se si digita :delmarks 0 1 2 3 4 5 6 7 ecc

Edit: Questo è anche nei file di aiuto che probabilmente spiega l'apertura dopo 4 secondi:

ShowMarks is activated by the |CursorHold| |autocommand| which is triggered 
every |updatetime| milliseconds. This is set to 4000(4 seconds) by default. 
If this is too slow, setting it to a lower value will make it more responsive. 
+0

Il problema è che non segnavo mai nulla con i numeri. – puk

+0

Hai provato delmark? Suppongo anche che alcuni plugin potrebbero farlo. –

+0

delmarks non lo elimina. Penso che potrebbero essere costruiti in marchi. In ogni caso, il resto dei tuoi consigli è stato molto utile. – puk

8

Questi marchi sono segni speciali, citati da Joachim.

per mostrare solo i segni che avete impostato voi stessi, vale a dire i "segni normali", aggiungere questo al vostro file .vimrc:

let showmarks_include = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" 
Problemi correlati