Existe-t-il un raccourci tmux pour passer en lecture seule?

22

J'utilise l'écran depuis des années maintenant comme moyen de garantir que tout travail à distance reste ouvert en toute sécurité après des déconnexions / plantages. En fait, bien entendu, j'utilise des écrans même lorsque je travaille localement.

Récemment, mes exigences sont passées au stade où je suis passé à tmux en raison de la beauté de:

tmux attach -r

Attacher à mes propres sessions en mode lecture seule (-r) signifie que je n'ai pas à me soucier accidentellement:

  • coller des lignes d'ordures dans IRC
  • l'arrêt d'un important processus de compilation / déploiement
  • taper un mot de passe à la vue des passants

Bien sûr, le problème est que je dois ouvrir une session, Cb + d pour la détacher, puis la rouvrir avec l'indicateur -r pour passer en lecture seule. Et puis, quand je veux de temps en temps participer à une conversation IRC, interrompre une tâche ou autre chose, je dois à nouveau me détacher et me reconnecter normalement.

Quelqu'un connaît-il un moyen de créer une liaison de touches pour basculer entre les modes?

connrs
la source

Réponses:

16

Pas selon la page de manuel , qui n'appelle que l' attach -roption d'activation du mode lecture seule.

De plus, dans le code source , seule la ligne suivante cmd-attach-session.cdéfinit l'indicateur de lecture seule. Le reste du code vérifie si cet indicateur est défini, mais ne modifie pas sa valeur. Encore une fois, il semble que vous n'ayez pas de chance, sauf si vous pouvez apporter (ou demander) un changement de code:

    if (cmd_check_flag(data->chflags, 'r'))
        ctx->cmdclient->flags |= CLIENT_READONLY;
Justin Ethier
la source
1
Merci d'être allé si en profondeur. Cela fait un moment que je n'ai développé aucune saveur de C / C ++ mais je suppose que je peux le mettre dans ma pile un jour. En attendant, cela ne fera pas de mal de mettre une demande de fonctionnalité, alors je suis prêt à le faire maintenant.
connrs
22

En tmux 1.9avous pouvez faire :switch-client -r. Je ne sais pas si c'est nouveau dans la version 1.9a, mais c'est la version que j'utilise et je peux changer une session tmux existante en mode lecture seule.

Matthew J Morrison
la source
Cela fonctionne très bien pour passer en mode lecture seule, mais existe-t-il un moyen de quitter le mode lecture seule sans le détacher et le rattacher? Cela ne ressemble pas à ça, mais ce serait une fonctionnalité utile.
richardneish