Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/05/2009, à 10:27

durendal94

Programmation en C et vi

Bonjour à tous,

Je profite d'un peu de temps libre pour me mettre au C.
J'ai vu par le passé quelques échanges lié au passionnant sujet du " Quel est le meilleur éditeur".

Je n'ai pas d'avis particulier aujourd'hui.
j'opte pour vi que j'utilise depuis peu, mais sans réelle maîtrise.
J'ai souvenir de quelques commentaires assez élogieux sur l'aide qu'il pouvait amener notamment dans le cas de fichiers
.c

au niveau de mon .vimrc j'ai juste :

set history=100
set backup
set ruler
set showcmd
set background=light
syntax on

Serait-il judicieux d'y ajouter d'autres paramètres dans le cadre de cette utilisation ?
j'ai l'intuition que je n'utilise pas vi au mieux de ce qu'il peut offrir wink

J'ai souvenir aussi que la personne ( ou les ) évoquait des macros etc...
Si vous avez des références liées à la bonne utilisation de vi dans ce contexte, je suis preneur.

Merci de votre attention

Hors ligne

#2 Le 19/05/2009, à 11:40

Airballman

Re : Programmation en C et vi

Salut,

Pourquoi est-ce que tu ne commences pas par le commencement? smile

Le premier lien google parle deja de macro concernant vi tongue
Wikipédia
une liste des possibilités et raccourcis claviers
Si tu veux ensuite rentrer plus en profondeur en posant des questions precises je pense que tu obtiendras plus de reponses

Hors ligne

#3 Le 19/05/2009, à 12:12

durendal94

Re : Programmation en C et vi

Bonjour Airballman,

merci pour ta réponse.

j'étais en train de regarder www.vim.org
je le trouve moins clair que tes liens wink
Je préfère ton commencement !

et oui, j'ai deux questions pour le moment :

Question 1 :

j'ai voulu faire une substitution de texte :
main.c => fonction.c

1ère tentative :
:s/main.c/fonction.c/

ce qui ne fonctionne pas.
A la réflexion c'est logique puisque le '.' est un caractère 'joker' ( connais pas la dénomination exacte )

2ème tentative :
:s/main\.c/fonction\.c/
ce qui ne marche pas bcp mieux.

Sais-tu comment échapper correctement le '.' dans ce contexte ?

Question 2 :
Comment ajouter une numérotation automatique ?
J'imagine que cela doit se faire simplement.
mais je n'ai pas vu la référence.

Merci

Hors ligne

#4 Le 19/05/2009, à 12:35

Luc Hermitte

Re : Programmation en C et vi

Q1- :%s ?

Q2- :set nu

Après, une fois familiarisé avec vim (oublie vi, sincèrement), tu pourras trouver un plugin pour le C et un peu le C++ qui a des raccourcis pour insérer les fonctions de la lib standard C et divers autres choses -> c.vim. Ou ma suite qui est tournée vers le C++ et qui offre quelques petites choses qui marchent aussi en C.

Hors ligne

#5 Le 19/05/2009, à 13:30

durendal94

Re : Programmation en C et vi

Bonjour Luc,

Merci pour tes réponses.

Q2 : nickel.
Q1 : je ne dois pas comprendre la réponse.

j'ai toujours la réponse, motif introuvable.

le % devant le s est censé amené quoi ?

:%s/main.c/fonction.c/
reste inopérant.

au cas ou j'ai essayé :
:s/main%s./fonction%s.c/
mais dois pas etre ca non plus !

je suis déjà sous vim.
vi est un lien symbolique vers vim dans mon environnement.

Merci

Dernière modification par durendal94 (Le 19/05/2009, à 13:30)

Hors ligne

#6 Le 19/05/2009, à 15:32

Luc Hermitte

Re : Programmation en C et vi

:%s/pattern/texte remplace le pattern par le texte (!= pattern) sur toutes les lignes. Sinon la transformation ne s'applique qu'à la ligne courante.

Vu que le pattern '.'matche le texte '.', souvent on tolère de juste écrire 'main.c' au lieu de 'main\.c' dans la première partie. Par contre, pour la seconde partie, il ne faudra plus de backslash.
S'il te dit motif introuvable, c'est qu'il n'y est pas (dans la zone de recherche). Sur tout le fichier, tu peux vérifier sa présence avec '/'. (-> '/main.c')

Hors ligne

#7 Le 19/05/2009, à 18:58

durendal94

Re : Programmation en C et vi

Merci !

La visibilité de mon opération ne devait pas être correcte.

Hors ligne

#8 Le 20/05/2009, à 09:47

trucutu

Re : Programmation en C et vi

Salut,

Voici un plugin pour faire du C avec vim
http://www.vim.org/scripts/script.php?script_id=213

Sinon, tu peux éventuellement ajouter :
set number
et aussi les options pour régler l'indentation (tabulation ou espace ; 3,4 ou 8 caractères etc...), de quoi participer à alimenter les trolls sur le sujet... roll


La chanson du dimanche - "La pêche !"
PC acheté chez Novatux : entièrement satisfait.
Faire des recherches solidaires !

Hors ligne

#9 Le 20/05/2009, à 10:13

beware

Re : Programmation en C et vi

Salut,

j'avais moi-même utilisé Vi enfin Vim pour être précis (;)) pour faire du C et voici mon vimrc :

syntax on
set background=dark
set autoindent 
set smartindent
set smarttab
set shiftwidth=3
set tabstop=3
set expandtab
set number
set showmatch
set showmode

Désolé, mais un peu de pub, j'ai expliqué rapidement ces options ici : Mon Vi

Hors ligne

#10 Le 20/05/2009, à 11:55

Luc Hermitte

Re : Programmation en C et vi

Vous devriez sincèrement éviter les indentations exotiques.
Quand on travaille à plusieurs, il est préférable de laisser le tabstop à 8 -- d'autant plus en présence de expandtab, qui devra être forcé localement à faux dans les makefile. Ensuite, le réglage classique de sw, c'est 4. Mais bon, avec un petit coup de gg=G c'est vite adapté à nos gouts.

Ah, et voilà, c.vim (#213) est le concurrent que je n'utilise pas.
Ensuite "set nu" et "set number" sont la même chose.

Hors ligne