简介
学习python 时,我们可以添加头部注释:
相当于告诉别人这个脚本主人的信息:
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/2/22 12:29 下午# @Author : Peng# @Site : yuque.mugpeng.live# @Email : mugpeng@foxmail.com# @File : my_test2.py
在R studio 配置
snippet
在R studio 中,并没有发现直接设置的选项,但看到可以利用tab 补全进行配置:https://stackoverflow.com/questions/40616132/create-a-default-comment-header-template-in-r
我们打开Preferences > Code > Edit Snippets在最后添加 :
snippet header_script#################################################### Project:## Script purpose:## Date:## Author: Peng## Version:##################################################

需要注意的是,snippet 底下的字段需要使用tab 锁进,使用两个空格则会出现粉红色警示。
设置完后,输入head 就会提示了:

自动补全即可。
但我目前还没有找到相关函数在snippet ,比如date 直接使用date(),R version 直接用R.version.string 。
ps:https://zhuanlan.zhihu.com/p/112038220,我们还可以非常灵活的使用snippet 加速代码的书写过程。
写函数
这里直接参考https://stackoverflow.com/questions/40616132/create-a-default-comment-header-template-in-r 的回答:
make_r_template <- function(filename = "file.R", dir = getwd()){if (file.exists(file.path(dir, filename))) invisible(NULL)else{write(c("##################################################","## Project:",paste0("## File name: ", filename),paste0("## Date: ", date()),"## Author: Peng",paste0("## R_Version: ", R.version.string),"##################################################"),file = file.path(dir, filename),sep = "\n")}}make_r_template(filename = 'test2.R')
这里我简单加工了一下。
另外函数中的invisible 在书写函数时非常有用。它可以在函数结果不赋值时,在调用函数时不返回函数最终的结果,上图中,当if 为True,函数返回NULL,而invisible 会使结果不打印到屏幕。
下面,生成的test2 文件就会包含开头:
#################################################### Project:## File name: test2.R## Date: Tue Mar 2 17:02:33 2021## Author: Peng## R_Version: R version 4.0.4 (2021-02-15)##################################################
