HOWTO · R
Commenter plusieurs lignes dans R
Découvrez le fonctionnement des commentaires dans R, comment commenter des lignes sélectionnées dans un éditeur et comment préfixer du texte copié avec #.
Sur cette page
R ne possède pas de syntaxe de commentaire multiligne : # commence un commentaire qui se poursuit jusqu’à la fin de la ligne. Pour désactiver temporairement plusieurs lignes, ajoutez # au début de chacune. Pour réactiver le code, retirez ces préfixes. Les éditeurs peuvent appliquer cette opération à une sélection. Les exemples de code et leurs libellés visibles sont conservés en anglais.\n\nExécutez cet exemple :\n\n
Le code et les libellés ou sorties affichés dans cette section restent en anglais.
# This line is a comment.
total <- 2 + 3
print(total)
\n
[1] 5
\nLa première ligne est ignorée par R ; l’affectation et l’appel à print() restent exécutables. L’exécution fournie s’est terminée avec succès et a affiché [1] 5.\n\n
Fonctionnement des commentaires dans R\n\nLe marqueur de commentaire ne s’applique qu’au reste de la ligne où il apparaît. Par exemple, dans answer <- 42 # keep this value, R effectue l’affectation et ignore le texte qui suit #. Une ligne commençant par # peut également documenter le code sans modifier le comportement du script. Comme chaque commentaire se termine à la fin de la ligne, plusieurs lignes de commentaires restent des commentaires distincts, et ne forment pas un commentaire de bloc.\n\nPour désactiver du code, préfixez chaque ligne sélectionnée, y compris les lignes de continuation. Si une seule ligne exécutable n’est pas commentée, R l’exécutera quand le script sera chargé avec source(). Pour réactiver le code, effectuez l’opération inverse : retirez le préfixe de commentaire de chaque ligne à exécuter de nouveau.\n\n
Commenter un bloc de code dans un éditeur\n\nDans RStudio, sélectionnez les lignes et utilisez Ctrl+Shift+C sous Windows ou Command+Shift+C sous macOS. Cette même commande ajoute ou retire les commentaires de la sélection ; vérifiez donc le résultat avant d’exécuter le code. Consultez la page des raccourcis clavier de RStudio pour plus de détails sur l’éditeur.\n\nSous Windows, Ctrl+Q dans Notepad++ active ou désactive les commentaires des lignes sélectionnées. Dans Emacs, exécutez M-x comment-region ; pour annuler, exécutez M-x uncomment-region. Les raccourcis dépendent de l’éditeur, du système d’exploitation, de la configuration clavier et de la sélection. Si un raccourci ne fonctionne pas, consultez la liste des commandes de l’éditeur. Ces commandes ajoutent ou retirent des préfixes de ligne ; elles ne créent pas de nouvelle syntaxe de commentaire dans R.\n\n
Pourquoi scan() ne crée pas de commentaire multiligne\n\nscan() lit des valeurs depuis une connexion ou une entrée, puis les renvoie à R. Cette fonction n’insère pas de texte dans le fichier source et ne transforme pas les lignes saisies en commentaires. De même, rm() supprime un objet R de l’espace de travail ; elle n’efface pas le texte du code source. Saisir du texte libre dans la console R ne permet pas de commenter un script, car R essaie d’analyser chaque ligne soumise comme une entrée. Utilisez plutôt la commande de commentaire de votre éditeur ou ajoutez # au début de chaque ligne du fichier source.\n\n
Préfixer le texte du presse-papiers avec # à l’aide d’une fonction R\n\nSi votre éditeur ne propose pas de commande pratique pour commenter une sélection, la fonction facultative FormatComment ajoute # et des espaces au début des lignes copiées dans le presse-papiers. Ses appels à readClipboard() et writeClipboard() sont propres à Windows. Définissez la fonction dans une session R sous Windows, copiez du texte brut ou du code, puis appelez-la. Vérifiez le résultat avant de remplacer du contenu dans un script. La fonction réécrit le texte formaté dans le presse-papiers ; si vous voulez conserver son contenu d’origine, collez-le d’abord dans un emplacement sûr.\n\n
Le code et les libellés ou sorties affichés dans cette section restent en anglais.
FormatComment <- function() {
lines <- readClipboard()
commented <- paste0("# ", lines)
writeClipboard(commented, format = 1)
invisible(commented)
}
\nLe cas fourni pour cette fonction s’est exécuté avec succès sans signaler de sortie. Ce résultat ne permet pas de conclure à son comportement avec un vrai presse-papiers Windows ou dans une session interactive. La fonction est conçue pour les lignes de texte copiées ; vérifiez le résultat collé, surtout si le code source contient une indentation ou une syntaxe de continuation. Pour modifier régulièrement du code, la commande de commentaire de l’éditeur est généralement plus facile à annuler et risque moins de perturber la mise en forme.\n