Tại sao tôi nhận được một E488: Trailing character Lỗi lỗi trên lệnh tùy chỉnh này?


17

Tôi có một ~/.vimrccái chỉ chứa cái này:

function! NewFile()
        let filename = input("Filename:")
endfunction
command NewFile :call NewFile()<cr>

(tất nhiên thực tế của tôi .vimrcphức tạp hơn, nhưng tôi đã tạo lại trường hợp thử nghiệm nhỏ này không có plugin, v.v.)

Mục đích của tôi là viết một hàm hỗ trợ tạo một tệp mới theo một mẫu. Một số mục đầu vào sẽ được hỏi từ người dùng vi, chẳng hạn như tên của tệp.

Hàm này chưa tinh vi lắm (dưới mức!) - tất cả những gì nó làm là yêu cầu tên tệp. Khi tôi sử dụng lệnh NewFiletừ dòng lệnh vi, nó sẽ khởi động, nhưng sau khi tôi nhập tên tệp và nhấn Enter, tôi gặp lỗi:

E488: Trailing characters

Tại sao vậy? Tôi đang làm gì sai?

Câu trả lời:


22

Xóa dấu vết <cr> Chỉ cần cho ánh xạ, nhưng không phải cho các lệnh.


Ah, hoàn hảo, cảm ơn bạn! Tôi đã sao chép câu thần chú này từ một ánh xạ - có vẻ hơi quá. Cảm ơn.
Andrew Ferrier

1
Bạn đã giải quyết cho tôi một vấn đề với cùng một thông báo lỗi với một bối cảnh khác. Cảm ơn bạn ^ _ ^
sensorario
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.