Skip to content

Breaks shell redirection and pipes #82

@ben-cohen-xs

Description

@ben-cohen-xs

The file-line plugin breaks shell redirection: the command below should start vim with a buffer containing its manpage, but instead vim shows an empty buffer with a name like "/proc/65432/fd/63".

vim <(man vim)

The plugin breaks it because it tries to re-read the buffer, which is not possible from a pipe. You can fix the example above like this, though it would be better to do a more general check for pipes (and other special files) because they can also only be read once.

90c90
< if match(expand("%:p"), "^/proc/.*/fd/.*$") < 0 && match(expand("%:p"), "^/dev/fd/.*$") < 0 && !isdirectory(expand("%:p"))
---
> if !isdirectory(expand("%:p"))

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions