2015-07-07 2 views
4

Так что vim просто внезапно начал раскачиваться на меня сегодня, и я не могу решить проблему. Не трогайте файл конфигурации и последнее, над чем я работал, прежде чем я заметил, что проблема связана с обновлением файлов sshd_config и sshd_config.pacnew.Vim запускается в режиме вставки и вставляет специальные символы

Что я заметил, так это то, что при открытии файла sshd_config vim запускается в режиме вставки и автоматически добавляет специальные символы серии, где бы ни находился курсор. Поэтому он перезаписывает информацию в файлах конфигурации. Я думаю, что может стать несколько проблематичным =)

Так что, если я начинаю новый файл touch test_vim && vim test_vim это то, что я вижу: :bfff/00fe/00fe/13fe[>85;95;0c

У меня есть ощущение, что это будет одна из тех вещей, которые на самом деле глупо и Я полностью забыл. Кто-нибудь знает, что происходит?

" An example for a vimrc file. 
" 
" Maintainer: Bram Moolenaar <[email protected]> 
" Last change: 2014 Feb 05 
" 
" To use it, copy it to 
"  for Unix and OS/2: ~/.vimrc 
"   for Amiga: s:.vimrc 
" for MS-DOS and Win32: $VIM\_vimrc 
"  for OpenVMS: sys$login:.vimrc 

" When started as "evim", evim.vim will already have done these settings. 
if v:progname =~? "evim" 
    finish 
endif 

" Use Vim settings, rather than Vi settings (much better!). 
" This must be first, because it changes other options as a side effect. 
set nocompatible 

" allow backspacing over everything in insert mode 
set backspace=indent,eol,start 

if has("vms") 
    set nobackup  " do not keep a backup file, use versions instead 
else 
    set backup  " keep a backup file (restore to previous version) 
    set undofile  " keep an undo file (undo changes after closing) 
endif 
set history=50  " keep 50 lines of command line history 
set ruler  " show the cursor position all the time 
set showcmd  " display incomplete commands 
set incsearch  " do incremental searching 

" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries 
" let &guioptions = substitute(&guioptions, "t", "", "g") 

" Don't use Ex mode, use Q for formatting 
map Q gq 

" CTRL-U in insert mode deletes a lot. Use CTRL-G u to first break undo, 
" so that you can undo CTRL-U after inserting a line break. 
inoremap <C-U> <C-G>u<C-U> 

" In many terminal emulators the mouse works just fine, thus enable it. 
if has('mouse') 
    set mouse=a 
endif 

" Switch syntax highlighting on, when the terminal has colors 
" Also switch on highlighting the last used search pattern. 
if &t_Co > 2 || has("gui_running") 
    syntax on 
    set hlsearch 
endif 

" Only do this part when compiled with support for autocommands. 
if has("autocmd") 

    " Enable file type detection. 
    " Use the default filetype settings, so that mail gets 'tw' set to 72, 
    " 'cindent' is on in C files, etc. 
    " Also load indent files, to automatically do language-dependent indenting. 
    filetype plugin indent on 

    " Put these in an autocmd group, so that we can delete them easily. 
    augroup vimrcEx 
    au! 

    " For all text files set 'textwidth' to 78 characters. 
    autocmd FileType text setlocal textwidth=78 

    " When editing a file, always jump to the last known cursor position. 
    " Don't do it when the position is invalid or when inside an event handler 
    " (happens when dropping a file on gvim). 
    " Also don't do it when the mark is in the first line, that is the default 
    " position when opening a file. 
    autocmd BufReadPost * 
    \ if line("'\"") > 1 && line("'\"") <= line("$") | 
    \ exe "normal! g`\"" | 
    \ endif 

    augroup END 

else 

    set autoindent  " always set autoindenting on 

endif " has("autocmd") 

" Convenient command to see the difference between the current buffer and the 
" file it was loaded from, thus the changes you made. 
" Only define it when not defined already. 
if !exists(":DiffOrig") 
    command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis 
      \ | wincmd p | diffthis 
endif 
+0

Вы действительно уверены, что файл 'test_vim' не существует, прежде чем вы на него наложили' touch'? –

+0

Я уверен. Я создал несколько тестовых файлов для подтверждения. Или я могу открыть любой существующий файл, и vim просто добавит эти специальные символы в этот файл. – wguayan

+0

Итак, что произойдет, если вы не используете ваш .vimrc? –

ответ

2

Это a recent Vim bug. Вероятно, вы должны вернуться к более раннему выпуску, пока исправлено правильное исправление.

+0

Хм ... это странно, потому что это не влияет на мой другой компьютер, который использует ту же версию vim. Спасибо за головы, угадайте, что он вернулся к nano на данный момент – wguayan

+0

Ошибка, похоже, влияет на терминалы urxvt и может быть реализована прозрачность. Работы обнаруживаются при использовании других терминалов. – wguayan

0

Вы можете посмотреть об изменении файлов конфигурации ВИМ на этом посту это официальная страница ВИМ по вики

Vim wiki

+0

Я не положил руку на файл конфигурации, поэтому я думаю, что это еще одна проблема. – wguayan

0

Так что ошибка, похоже, влияет на терминалы urxvt, работающие с прозрачностью. Используя другой терминал, или, в моем случае, отключение прозрачности через /.Xresources временно решит проблему, пока не выпустят патч.

Смежные вопросы