È possibile, se si desidera, utilizzare stringhe indipendenti per commenti su più righe — Ho sempre pensato che fosse più carino dei blocchi if (FALSE) { }
. La stringa verrà valutata e quindi scartata, quindi finché non sarà l'ultima riga in una funzione non accadrà nulla.
"This function takes a value x, and does things and returns things that
take several lines to explain"
doEverythingOften <- function(x) {
# Non! Comment it out! We'll just do it once for now.
"if (x %in% 1:9) {
doTenEverythings()
}"
doEverythingOnce()
...
return(list(
everythingDone = TRUE,
howOftenDone = 1
))
}
Il limite principale è che quando stai commentando roba, hai avuto modo di guardare i tuoi virgolette: se hai un tipo dentro, dovrete usare l'altro tipo per la commento; e se hai qualcosa come "stringhe con 'postrofi" all'interno di quel blocco, allora non c'è modo che questo metodo sia una buona idea. Ma poi c'è ancora il blocco if (FALSE)
.
L'altra limitazione, che entrambi i metodi hanno, è che è possibile utilizzare tali blocchi solo in punti in cui un'espressione sarebbe sintatticamente valida - non commentando parti di elenchi, ad esempio.
Riguardo a cosa fare in IDE: Sono un utente Vim e trovo lo NERD Commenter uno strumento assolutamente eccellente per commentare rapidamente o decommentare più righe. Molto user-friendly, molto ben documentato.
Infine, al prompt R (almeno sotto Linux), c'è la bella Alt - Maiusc - # per commentare la riga corrente. È molto bello mettere una linea "in attesa", se stai lavorando su una linea singola e poi ti rendi conto che per prima cosa hai bisogno di una fase di preparazione.
Sarebbe bello avere commenti multilinea e anche commenti annidati o qualche tipo di commenti gerarchici. In questo modo potrebbe essere meglio piegato. – skan
In RStudio puoi iniziare il tuo commento con ** '# '** e le seguenti righe verranno automaticamente commentate. –