102 votes

Comment puis-je "sourcer" quelque chose dans mon fichier .vimrc ?

J'ai travaillé sur l'expansion de mon vim-foo ces derniers temps et j'ai rencontré quelques plugins ( autotag.vim par exemple) qui exigent qu'ils soient "sourcés" dans mon fichier .vimrc. Qu'est-ce que cela signifie exactement et comment dois-je procéder ?

124voto

Whaledawg Points 2018

Rechercher un fichier, c'est l'"exécuter". En fait, chaque ligne du fichier est considérée comme une commande. Le sourcer revient à taper chaque commande dans l'ordre. Vous créez un fichier avec la commande :source (généralement abrégé en :so ).

Ainsi, si vous sourcez myStuff.vim

:so myStuff.vim

et si myStuff.vim contenait ces lignes

set xx iI just intersted this<C-]>
set yy bbbb4dw

C'est la même chose que si vous tapiez ces commandes dans Vim

:set xx iI just intersted this<C-]>
:set yy bbbb4dw

Le seul fichier sourcé par défaut est le fichier .vimrc ( _vimrc sous Windows), ce qui vous permet de conserver toutes les commandes que vous utilisez pour configurer Vim à chaque fois.

Là où cela devient intéressant, c'est qu'étant donné qu'un fichier source n'est qu'une série de commandes, et que le sourçage est une commande, vous pouvez sourcer des fichiers à partir de vos fichiers sources. Ainsi, les plugins que vous utilisez en permanence peuvent être sourcés au démarrage de Vim en ajoutant une ligne à votre fichier .vimrc comme ceci

 so myPlugin.vim

2 votes

Qu'est-ce que so! faire ? Je l'ai lancé parce que je pensais qu'il allait forcer mes ressources à s'améliorer. .vimrc et il a commencé à parcourir le fichier que j'étais en train d'éditer (mon .vimrc ) et mettait en retrait des choses bizarres et toutes sortes de choses bizarres se produisaient.

2 votes

Il exécute les fichiers en mode "normal" (c'est-à-dire ce qui se passerait si vous n'aviez pas ajouté le " :" devant).

44voto

Michiel de Mare Points 15888

Les fichiers contenus dans votre répertoire .vim/plugin sont chargés automatiquement.

7 votes

En outre, leur nom de fichier doit se terminer par .vim

0 votes

Oui, mais seulement une fois par démarrage, n'est-ce pas ? Est-ce lorsque vous lancez terminal/powershell, ou lorsque vous utilisez la commande vim pour éditer un fichier ?

0 votes

@3pitt AFAIK, c'est à chaque fois que la commande vim est lancée.

12voto

D.Shawley Points 30324

Il y a toujours le :source file commande. J'écris généralement .vimrc qui contient des commandes personnalisées et autres pour l'application console, puis un fichier .gvimrc qui contient des éléments supplémentaires appropriés pour une version fenêtrée. Mon .gvimrc commence par source $HOME/.vimrc pour reprendre tout ce qu'il y a dans la version console avant d'ajouter de nouvelles choses.

0 votes

Mes versions de vim, au moins, sont toutes source .vimrc en permanence. Êtes-vous sûr d'avoir besoin de sourcer .vimrc ?

0 votes

@DavClark : il semble que vous ayez raison. Je fais cela depuis longtemps et je n'y ai jamais réfléchi à deux fois. Le fichier d'aide indique clairement que ce n'est pas nécessaire... hmmm.

6voto

ldigas Points 19740

Il y a normalement deux fichiers vimrc, l'un est _vimrc et l'autre _gvimrc (dans le premier se trouvent les choses pour vim, et dans le second pour gvim - les choses graphiques) - bien que la plupart des gens que je connais mettent tout dans _vimrc.

Une bonne pratique consiste à conserver tous vos fichiers supplémentaires (plugins, jeux de couleurs, snippets ...) dans un répertoire vimfiles séparé (le vôtre) que vous pouvez emporter avec vous.

Si vous le faites

:help vimfiles

vim vous indiquera où doit se trouver votre répertoire vimfiles. Cela dépend quelque peu de la plateforme (win, unix). Sous Windows, le répertoire habituel se trouve dans votre dossier utilisateur (documents et paramètres, puis utilisateur...). Le répertoire vimfiles contient plusieurs sous-répertoires. L'un d'entre eux est le sous-répertoire "plugin". Les plugins placés dans ce répertoire seront chargés automatiquement (ainsi que les plugins placés dans les sous-répertoires de "plugin"). Si vous ne souhaitez pas qu'ils soient chargés automatiquement, placez-les dans votre "vimfiles", ou dans un autre répertoire, et

:so plugin_name.vim (with the appropriate path)
(you can use the $vim, $vimfiles, and $home as shortcuts when defining path to plugin)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X