Я пытаюсь создать скрипт, который помогает создавать шебанги (хорошо, это может быть не так полезно, но имеет преимущества, когда вы не знаете, например, где находится программа), вот что у меня так далеко:
function! CreateShebang()
call inputsave()
let program = input('Enter the program name: ')
call inputrestore()
let path = system('which ' . program)
call append(0, '#!' . path)
endfunction
Кстати, я только начинаю с vim scrips, поэтому, если вы заметили какие-то неправильные функции и концепции или знаете лучший способ достижения результата, пожалуйста, сообщите мне. Любая помощь очень ценится.
Большая проблема заключается в том, что после запуска сценарии запрашивают имя программы правильно, а затем добавляют в файл нечто подобное:
#!/usr/bin/perl^@
Что это ^@
делает там?
Кроме того, если я могу задать еще один вопрос здесь, как я могу очистить командную строку после input()
? Текст, введенный пользователем, продолжает отображаться до тех пор, пока не будет введена другая команда.