Vim crashes when saving files

Abierto
#482 0 comentarios 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
vim
Área
tooling

Línea de trabajo

Start by reproducing the save failure with the reported Vim and Vundle setup, then inspect rust.vim's save-related autocommands and the g:rustfmt_autosave setting mentioned in the report. The issue does not identify a failing file or test, and its Vim configuration includes a malformed Rust filetype condition. Done means saving a Rust file works without Vim exiting or leaving a swap file.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

rust.vim version:

I installed the plugin with Vundle. The current commit of the repository it cloned is:
commit 4aa69b84c8a58fcec6b6dad6fe244b916b1cf830 (HEAD -> master, origin/master, origin/HEAD)

Steps to reproduce:

In terminal:
vim hello.rs
In vim:
:w

Expected vs. actual behavior:

  • Expected:
    save the file
  • Actual:
    editor exits with the following error message:
[4]+  Stopped                 vim hellp.rs
exit
There are stopped jobs.

Running ls -a reveals that there is still a file called .hellp.rs.swp

Paste debugging info from the Rust Vim plugin via one of the following

commands: :RustInfo, :RustInfoToClipboard, or :RustInfoToFile <filename>.

Running any of the commands listed causes a crash similar to the one caused by saving the file.

Contents of ~/.vimrc:

set nocompatible              " be iMproved, required
filetype off                  " required

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')

" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
Plugin 'https://github.com/scrooloose/nerdtree'
Plugin 'https://github.com/jiangmiao/auto-pairs'
Plugin 'https://github.com/vim-syntastic/syntastic'
Plugin 'https://github.com/frazrepo/vim-rainbow'
Plugin 'https://github.com/tpope/vim-surround'
Plugin 'https://github.com/psf/black'
Plugin 'https://github.com/Yggdroot/indentLine'
Plugin 'https://github.com/pedrohdz/vim-yaml-folds'
Plugin 'https://github.com/rust-lang/rust.vim'

" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required
" To ignore plugin indent changes, instead use:
"filetype plugin on
"
" Brief help
" :PluginList       - lists configured plugins
" :PluginInstall    - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean      - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line
:set nu
:set expandtab
:set shiftwidth=2
:set tabstop=2
:set list
:set listchars=tab:>>
:set smartindent
:set autoindent
:set shell=bash\ -i

" Exit Vim if NERDTree is the only window remaining in the only tab.
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif

" Configure .sh files
if &filetype ==# 'sh'
  setlocal noexpandtab
endif

" Configure python files
let g:python_recommended_style=0

" Configure rust files
" Also tried calling this 'rs', and removing the section, and setting these manually, and setting them globally
if &filetype ==# 'rust 
  syntax enable
  let g:rustfmt_autosave = 1
endif

" Activate rainbow
let g:rainbow_active = 1

" Configure syntastic
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0
Lenguaje dominante
Vim Script
Estrellas
4.2k
Forks
323
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de rust-lang/rust.vim

Todos los issues de rust-lang/rust.vim

Issues similares

Más issues de DevTools

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.