Partagent-ils du code ou est-ce juste une tradition? Existe-t-il d'autres programmes avec des combinaisons de touches similaires?
Réponse courte, racines historiques communes dans vi
. Leurs créateurs étaient tous deux utilisateurs d'un programme Unix antérieur, vi
.
Voici un diagramme approximatif pour mettre en perspective leurs dates de sortie initiales et leur influence:
_vi 1976
| \ more 1978
| \ /
| \ /
| v
| less 1983
v
vim 1991
_
Sources:
Vim, de Bram Moolenaar, est un clone du programme Unix vi
. À partir de vim, vous pouvez consulter l’introduction de l’aide: :help intro
, vous voyez:
Vim est un éditeur de texte qui inclut presque toutes les commandes du programme Unix "Vi" et ...
Alors que le créateur de less
, Mark Nudelman explique sur sa FAQ :
En 1983, je travaillais pour la société Integrated Office Systems, aujourd'hui disparue. Certains de nos logiciels fonctionnaient sur un système Unix et produisaient d’énormes fichiers journaux de leurs transactions. Nous voulions pouvoir rechercher dans ces fichiers journaux des messages d'erreur. Mais la version de "vi" que nous utilisions ne pouvait pas gérer les fichiers d’une taille supérieure à une certaine taille, et nos fichiers journaux dépassaient souvent cette taille. Nous avons donc été obligés d'utiliser "plus" pour afficher les fichiers. Le problème était, une fois que nous avons trouvé un message d'erreur, ce que nous voulions vraiment voir, ce sont les transactions qui ont conduit à l'erreur; c'est-à-dire les lignes du fichier journal immédiatement avant le message d'erreur. Mais plus ne permettait pas de retour en arrière dans le fichier.
Donc, il utilisait déjà vi
et more
quand il a créé less
pour surmonter les limitations de vi
et more
à ce moment-là.
Lorsque vous faites _man less
_, vous voyez la connexion à vi
:
Les commandes sont basées sur more et vi.
Ainsi, less
et vim
semblent coïncider pour avoir des commandes similaires, uniquement parce que ces commandes sont en réalité basées sur vi
, qui peut être considéré comme leur ancêtre commun.