Existe-t-il un moyen de démarrer vim en mode lecture seule

19

J'utilise / bin / view car c'est un moyen sûr d'afficher les fichiers texte et de ne pas faire persister les modifications accidentelles une fois que j'ai terminé.

/ bin / voir les coutures manquent de fonctionnalités que possède vim normal. Existe-t-il un moyen de démarrer vim en mode lecture seule, ou de démarrer / bin / view en mode visuel.

Je veux pouvoir sélectionner du texte et le coller sans avoir à utiliser ma souris. Le mode visuel le rend si facile à faire.

Le problème que j'ai est lié aux distributions Linux CentOS / redhat, c'est le -visuel en vue.

# vim --version | grep visual
+ commandes_utilisateur + vertsplit + virtualedit + visual + visualextra + viminfo + vreplace 
# vue --version | grep visual
-textobjects -title -toolbar -user_commands -vertsplit -virtualedit -visual
nelaaro
la source
viewest un lien (généralement symbolique de nos jours) vimqui s'exécute vimen mode lecture seule. Votre viewsemble être lié à un autre vimque celui que vous obtenez en exécutant "vim". Jetez un œil à la page de manuel update-alternatives (8) pour voir comment résoudre ce problème.
garyjohn

Réponses:

21

Voir $ vim --helples nombreux arguments de lancement de Vim.

Pour lancer Vim en mode lecture seule, ce serait:

$ vim -R filename

ÉDITER

$ viewet $ vim -Rsemblent être une seule et même chose par le biais de liens symboliques. Je ne suis pas sûr des fonctionnalités que vous gagnerez en exécutant et $ vim -Rque vous n'avez pas $ view.

Ici, sur Ubuntu, je peux sélectionner visuellement des choses dans les deux.

romainl
la source
Dans centos view et vim -R ne sont pas les mêmes. La vue est compilée avec -visual pour une raison quelconque.
nelaaro
8

Si vous avez oublié l' -Roption au démarrage vim, vous pouvez utiliser:

:set ro
kev
la source
2

Si votre objectif est simplement de ne pas écraser le fichier d'origine, vous pouvez lire la fonction vim depuis stdin:

cat filename | vim -
James M. Lay
la source
1

Comme l'a mentionné @garyjohn, viewest souvent symboliquement lié à viou vim. Selon la distribution Linux que vous utilisez et comment viou vimont été installés, cela peut varier. Sur mon système RHEL 6, la sortie des ls -l `which view`émissions /bin/viewest symboliquement liée à vi.

Donc , si vous voulez que les caractéristiques vimen mode lecture seule vous soit besoin d'alias viewpour vimou utiliser la vim -R <filename>solution fournie par @kev ( en supposant que vous ne disposez pas des privilèges pour modifier les liens symboliques sur le système en question).

gmorganVA
la source
C'est ce que j'ai fait, et cela fonctionne parfaitement (où vimest toute version / saveur de Vim). Maintenant, je peux avoir une fenêtre en lecture seule pour afficher les différences côte à côte vim, avec une autre fenêtre modifiant également le fichier réel en même temps.
Benjamin R