2009-06-26 7 views
1

J'ai souvent des PATH pour des fichiers qui n'existent pas dans mes codes.Impossible de créer un fichier à partir d'un chemin dans Vim

je lance mon curseur se trouve un chemin qui n'existe pas

CTRL-W f 

Je reçois

E447: Can't find file "~/bin/editors/emacs/python_mode" in path 

Le long chemin de la création de nouveaux fichiers est

Ctrl-W v 
:args [copy_paste_the_path_with_mouse] 

Do vous connaissez un moyen court de créer un nouveau fichier dans Vim lorsque vous avez des chemins pour les fichiers dans un fichier qui n ot existe encore?

Je voudrais créer un nouveau fichier par simple

CTRL-W f 

Répondre

3

Si vous :h E447 pour rechercher le message d'erreur que vous avez reçu, vous verrez ceci:

... 
If you do want to edit a new file, use: 
    :e <cfile> 
To make gf always work like that: 
    :map gf :e <cfile><CR> 

Donc, essayez ceci:

:nmap <C-w>f :e <cfile><CR> 
+0

Que signifie ? - Mes docs disent qu'il s'agit de lire des fichiers d'erreurs. –

+0

Je l'ai testé sur Linux, Vim version 7.2. Vous pouvez voir ce doc ici en ligne (grep le pour E447): http://www.vim.org/htmldoc/editing.html –

+0

Certains littéraux sont développés magiquement sur la ligne de commande Vim. est développé en une chaîne contenant le nom de chemin sous le curseur dans le tampon actuellement actif. Voir: h et: h cmdline-special. –

1

: e chemin_du_fichier
: w!

Je ne pense pas qu'il existe une combinaison de touches intégrée pour la lecture dans le presse-papiers pour le nouveau fichier.
Vous devriez être en mesure d'utiliser des cartes-clés pour ce script ou un script personnalisé.

Voir this question et vim.org pour plus d'informations.

espoir qui aide

+0

Problème: Quel est le code pour faire correspondre le texte entre deux espaces? Si nous savons cela, alors le problème principal est presque résolu. –

+1

'yiW' =" yank inner WORD ", voir': h text-objects' pour plus d'informations. – ephemient

+1

Aussi, 0 colle le contenu du registre 0 en mode insertion, donc ': e 0' sera ce que vous voulez faire après ce qui précède. – ephemient

0

Pour éviter d'avoir pour copier-coller avec la souris, vous pouvez faire :edit ^R^P pour copier le chemin/nom de fichier à la position du curseur dans la ligne de commande. Pour plus d'informations, contactez: :help ^R^P

Questions connexes