2009-12-19 3 views
13

Я использую Vim и я установить путь (set path+= c:/work/etc/etc) в мой каталог проекта (для C#), но все же с помощью команды «гс» дает мне ошибку:Vim проблема с командой гс

E:447 Can't find file.

Есть что я здесь делаю неправильно?

+2

У меня всегда возникают проблемы, когда я пытаюсь выполнить команду gf – Nifle

ответ

3

Во-первых вы можете открыть файл, используя : find file.name? (: найдите для получения дополнительной информации). Если это не работает, ваш путь неправильный. Если : найти ли найти файл, то сделайте следующее:

  1. Застраховать, что вы не в Визуальный/Вставки режим
  2. Поместите курсор на первую букву имени файла и нажмите гс
+0

Спасибо, что открыл файл с помощью команды find. – gearsin

0

Убедитесь, что нет ведущих символов в имени файла, если нажать gf, то есть с помощью gf, когда курсор находится на help.txt не будет работать здесь:

file=help.txt 
13

G'day,

Чтобы получить более детальную информацию о текущих настройках пути вы можете видеть, что быть inclu DED и файлы ВИМ не могут найти, введя команду:

:checkpath 

и вы получите дамп файлы не найдены, например,

--- Included files not found in path --- 
<io.h> 
vim.h --> 
    <functions.h> 
    <clib/exec_protos.h> 

Или вы можете получить список всех включаемых файлов, как найти и не нашли, введя

:checkpath! 

Введите

:help path 

, чтобы получить более подробную информацию о синтаксисе пути.

Edit: Не забывайте, что с помощью синтаксиса

set path=/work 

будет полностью сбросить переменную пути к тому, что вы только что объявили. Я бы предложил использовать

set path+=/work 

вместо этого. Это не скроет текущий путь и просто добавит ваш/рабочий каталог.

НТН

+1

Я попытался использовать checkpath и его дать мне сообщение «Все включенные файлы были найдены». и да, я использовал set path + = mypath. Спасибо. – gearsin

1

Я также узнал, что

:set path+=./foo/bar 

добавляет поиск местоположения относительно каталога текущего файла, так же, как «» делает.

Мой ВИМ не хотел искать такие включают

#include <common/util/string.h> 

Так что мне нужно сделать, это

:set path+=foo/bar 

вместо

:set path+=./foo/bar 

Бывший добавляет поиск путь относительно текущего рабочего каталога. Надеюсь, это помогает кому-то.

Смежные вопросы