#1 Le 18/11/2024, à 08:51
- diogenelecynique
Compiler en C à l'intérieur de VIM pour gagner du temps.
Bonjour,
Je cherche à compiler en C sans quitter VIM : actuellement, je lance la commande :
gcc -o nom_du_programme nom_du_fichier_objet
Mais cette technique m'oblige à ouvrir une nouvelle fenêtre de Terminal. J'aimerais compiler à l'intérieur de VIM pour gagner du temps et lancer automatiquement le programme compilé.
Merci
Hors ligne
#2 Le 18/11/2024, à 09:35
- Watael
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
vim dispose d'un terminal. :bo vert ter va, par exemple, ouvrir une fenêtre de terminal à droite de la fenêtre courante.
cf. :tab h ter
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 18/11/2024, à 10:56
- krodelabestiole
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
...mais on préfère souvent utiliser neovim avec tmux, et des extensions qui transforment neovim en IDE complet.
je te laisse chercher, on trouve plein de vidéos de youtubeurs qui expliquent leurs setups (en se touchant éventuellement un téton ^^).
nouveau forum ubuntu-fr on en parle là : refonte du site / nouveau design
profil - sujets récurrents - sources du site
Hors ligne
#4 Le 18/11/2024, à 11:07
- Watael
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
c'est pour quoi faire tmux ? si c'est pour scinder des fenêtres et générer des onglets, neovim le fait aussi bien que vim.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#5 Le 18/11/2024, à 11:33
- krodelabestiole
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
pour gérer le terminal tmux est plus riche en fonctionnalités que neovim (la gestion des sessions en particulier peut permettre de faire gagner du temps).
différents avis pour ceux que ça t'intéresse : https://www.reddit.com/r/neovim/comment … t_windows/
https://www.reddit.com/r/neovim/comment … _terminal/
après je suppose que ça dépend surtout du workflow de chacun, et il existe probablement des extensions pour retrouver ces fonctionnalités dans neovim.
bref il n'y a pas une manière de faire plus officielle qu'une autre, ça me semble par contre utile de relever le fait que cette configuration est aussi largement utilisée.
nouveau forum ubuntu-fr on en parle là : refonte du site / nouveau design
profil - sujets récurrents - sources du site
Hors ligne
#6 Le 18/11/2024, à 12:43
- sputnick
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
Salut,
cool :bo vert term.
Par contre, quelle est la sémantique du mot clef botright? DeePL me traduit en droit de la mer
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#7 Le 18/11/2024, à 14:29
- Watael
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
gestion des sessions
(neo)vim aussi peut sauvegarder des sessions (peut-être, par contre, pas les programmes actifs, je n'ai pas encore réussi, si c'est toutefois possible...).
droit de la mer
botright : bottom right, imho.
Dernière modification par Watael (Le 18/11/2024, à 14:41)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#8 Le 18/11/2024, à 15:05
- sputnick
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
Un bout de conf pour le C qui m'a bien servit:
" http://stackoverflow.com/questions/540721/compile-directly-from-vim
" permet de lancer :make
au FileType c setlocal makeprg=g++\ %\ -Wall
au FileType cpp setlocal makeprg=g++\ %\ -Wall
" compiler le c/c++ avec :make et lancer l'executable
autocmd QuickfixCmdPost make call AfterMakeC()
function! AfterMakeC()
" No any error after make
if len(getqflist()) == 0
!./a.out
endif
" :~)
endfunction
Un truc bien, c'est qu'en cas d'erreur de compilation, vim place le curseur au niveau de l'erreur dans le code.
Ce que ça donne en réel: https://i.imgur.com/O5hqhZ2.gif
Dernière modification par sputnick (Le 18/11/2024, à 15:34)
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#9 Le 18/11/2024, à 17:01
- Watael
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
au FileType c,cpp setlocal makeprg=g++\ %\ -Wall
une ligne de plus en moins.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#10 Le 19/11/2024, à 07:48
- serged
Re : Compiler en C à l'intérieur de VIM pour gagner du temps.
Sinon, le terminal "de base' -gnome-terminal possède un mode "onglets" et on peut lancer la compil dans un nouvel onglet (Menu Fichier/nouvel onglet ou Ctrl-Alt-T)....
Note : Il existe des terminaux plus évolués, comme terminator, permettant de créer plusieurs fenêtres....
LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)
Hors ligne