1

эта вещь сводит меня с ума, и я не могу найти решение ...

Я подключаюсь к машине с FreeBSD через ssh, используя MobaXterm. Каждый раз, когда я открываю текстовый файл с помощью vim, он заменяет первый символ файла на «g». Это не просто искажает экран, когда я пытаюсь выйти из vim, он предупреждает меня о том, что файл был изменен, и после записи файла, конечно, там находится буква «g».

Единственное, что мне удалось выяснить, это происходит только тогда, когда для TERM задан вариант xterm (xterm, xterm-color и т.д.). Это не происходит при использовании других редакторов (nano или vi).

Может кто-нибудь предложить решение или указать мне правильное направление, что я должен проверить или перенастроить?

Обновить:

Вывод: имена сценариев

  1: /usr/local/etc/vim/vimrc
  2: /usr/local/share/vim/vim74/syntax/syntax.vim
  3: /usr/local/share/vim/vim74/syntax/synload.vim
  4: /usr/local/share/vim/vim74/syntax/syncolor.vim
  5: /usr/local/share/vim/vim74/filetype.vim
  6: /usr/local/share/vim/vim74/plugin/getscriptPlugin.vim
  7: /usr/local/share/vim/vim74/plugin/gzip.vim
  8: /usr/local/share/vim/vim74/plugin/logiPat.vim
  9: /usr/local/share/vim/vim74/plugin/matchparen.vim
 10: /usr/local/share/vim/vim74/plugin/netrwPlugin.vim
 11: /usr/local/share/vim/vim74/plugin/rrhelper.vim
 12: /usr/local/share/vim/vim74/plugin/spellfile.vim
 13: /usr/local/share/vim/vim74/plugin/tarPlugin.vim
 14: /usr/local/share/vim/vim74/plugin/tohtml.vim
 15: /usr/local/share/vim/vim74/plugin/vimballPlugin.vim
 16: /usr/local/share/vim/vim74/plugin/zipPlugin.vim

В моем домашнем каталоге нет файла .vimrc, файл в /usr /local /etc /vim - это неизмененный файл по умолчанию, который поставляется с пакетом vim:

if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
        set fileencodings=ucs-bom,utf-8,latin1
endif

let g:is_posix = 1
set nocompatible
set bs=indent,eol,start
set history=50
set ruler

if &t_Co > 2 || has("gui_running")
        syntax on
        set hlsearch
endif

if has("autocmd")
        augroup freebsd
        autocmd!
        if $PORTSDIR != ""
                autocmd BufNewFile $PORTSDIR/*/*/Makefile 0r $PORTSDIR/Templates/Makefile
        else
                autocmd BufNewFile /usr/ports/*/*/Makefile 0r /usr/ports/Templates/Makefile
        endif
endif

Это происходит при открытии текстовых или двоичных файлов. Однако эта проблема, похоже, связана с MobaXterm; это происходит только когда я соединяюсь с MobaXterm. Vim работает нормально, когда я использую putty или физическую консоль ($ TERM - это xterm в обоих случаях).

3 ответа3

1

Я считаю, что это ошибка, которая недавно была исправлена. Пожалуйста, обновите свой Vim.

Да, и в случае с mobaxterm, это также, похоже, ошибка в mobaxterm

1

Добавьте это в ваш файл ~/.vimrc :

set background=dark

0

Я встречаю ту же проблему. У меня нет решения, чтобы это исправить. Но у меня есть обходной путь, чтобы избежать этого.

Вы можете установить 'tmux' и использовать vim на tmux, проблема 'g' исчезнет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .