RÉSOLU Vim : ouvrir le fichier à la Nième ligne avant la fin

Bonjour
existe-t-il le moyen de donner en paramètre à vim
soit le numéro d’une ligne, en comptant à partir de la fin,
soit une ligne désignée par une regex
pour qu’il s’ouvre directement sur cette ligne?

Il me semble que oui, mais je ne parviens pas à retrouver cette option.

Merci

EDIT, ce n’est pas dans :help, mais dans man vim!

Désolé pour cette étourderie

J’ai trouvé:
vim +/regex fichier.txt pour ouvrir fichier.txt et se placer sur la ligne correspondante à regex
et
vim +n fichier.txt pour ouvrir fichier.txt et se placer sur la ligne n

La question reste non résolue sur la question d’ouvrir sur une ligne numérotée à rebours (en partant de la fin)

Bonsoir josephtux

Un petit script, peut-être :

#!/bin/bash

[ "${#@}" = "2" ] && vim +$(( $(wc -l < "${2}") - ($1 - 1) )) "${2}" || \
echo "$0 <nombre_de_lignes_avant_EOF> <nom_de_fichier>"
1 J'aime

salut,

vim +'normal G5k' ~/lorem\ ipsum
par exemple, pour aller à la cinquième ligne avant la fin du fichier ~/lorem ipsum.

Edit:
@MicP :
le nombre d’arguments, c’est $#, tout simplement;
et les guillemets ne sont pas nécessaires étant donné que les nombres sont “insécables”.

2 J'aime

Bonjour josephtux et Watael

@josephtux Laissse tomber ma proposition de script car la proposition de Watael est tout simplement la meilleure.

@Watael Merci beaucoup pour tes recommandations concernant mon essais de script. J’apprécie :slight_smile:
Je ne modifie pas mon message original pour garder la cohérence de la suite des messages de ce fil, mais j’en prends note.

1 J'aime

Merci Micp et Watael

J’avais bien imaginé un script sans l’avoir réalisé, mais la réponse attendue est bien celle de Watael, mais où vous trouvé cette info («normal») ?

1 J'aime

Même chose pour moi : il me manquait cette syntaxe : normal
J’avais pourtant essayé sans succès avec l’option -e et G10k pour mes tests…

[quote=“josephtux, post:6, topic:72254”]
je vais essayer de comprendre («normal» ?)
[/quote]https://en.wikibooks.org/wiki/Learning_the_vi_Editor/Vim/Modes

1 J'aime

Ça y est,
:normal
permet de passer les commandes du mode normal en mode ex (celui qui est documenté dans man vim, avec l’option «+»)

Documenté dans :help normal, tout simplement

J’ai l’impression d’avoir grandi d’un petit mm :wink:

Encore merci (et merci vim)

1 J'aime