wglaive 收到!已合并!谢谢!

我带了个坏头儿——日期格式应该规范一些,以便后续统计。我这就统一改一下。

    尝试了一下写个爬虫来根据 “https://d.cosx.org/d/420467-sinx-r/12” 这样的地址来生成sinx可用的记录,不过看起来评论内容是由js动态加载的,待我再研究一下rvest和phantomJS

    [欢迎提供思路

    新增 secx() 函数,直接把语录文件转成 pagedown 或 bookdown 电子书如:<https://www.pzhao.org/book/cosx/> ,或 xaringan 幻灯片如 <https://www.pzhao.org/slides/cosx/> 。以后可以方便地用 excel 写 word 和 ppt 了!

    新增六个语录包:

    • 唐诗 tangshi
    • 宋诗 songshi
    • 金庸 jinyong
    • 中文名言 chinese
    • 英文名言 english
    • 养生语录 yangsheng

    于是:

    jinyong <- read.sinxs(lib = 'jinyong')
    tanx(sinxs.data = jinyong)
    #> 
    #>  ----- 
    #> 一梦如是。
    #> 
    #> --- 金庸 (天龙八部) 
    #>  ------ 
    #>  ------ 
    #>     \   ^__^ 
    #>      \  (oo)\ ________ 
    #>         (__)\         )\ /\ 
    #>              ||------w|
    #>              ||      ||

    可以合并显示:

    libs <- read.sinxs(lib = c("tangshi", "songshi", "chinese", "yangsheng", "english","jinyong"))
    tanx(sinxs.data = libs)
    #> 
    #> 
    #>  ----- 
    #> 风吹柳花满店香,吴姬压酒唤客尝。
    #> 金陵子弟来相送,欲行不行各尽觞。
    #> 请君试问东流水,别意与之谁短长。
    #> 
    #> --- 李白 (金陵酒肆留别) 
    #>  ------ 
    #>     \   
    #>      \
    #>         (.)_(.)
    #>      _ (   _   ) _
    #>     / \/`-----'\/ \
    #>   __\ ( (     ) ) /__
    #>   )   /\ \._./ /\   (
    #>    )_/ /|\   /|\ \_(  [nosig]

    详见在线帮助

    日期格式我改了。tctcab

    语录库里还有些格式和文本小错误,我懒得挨个查了,欢迎大家 PR 修改,链接在这里

    运行一条 ctanx(lib = 'tangshi'),就会在 ~/Rprofile 里添加一条相应指令,每次启动 R 时就可以读唐诗了。

    可以在这个框架下制作各种语录,例如宋词啦、歌词啦、红楼梦选段啦、郭德纲相声……然后拿这些段子来测试 r markdown 的各种包。例如拿 pagedown 把 tangshi 做成一本书:<https://www.pzhao.org/book/tangshi/>

    做了个 logo 和体恤衫。

      dapengde

      我觉得生成一个完整的幻灯片有点过,比如xaringan,可以参考yolo选项在已有slides里插入这样一页语录。

      另外那个养生什么的太拉低格调了建议去掉…

        tctcab 语录库是从阮一峰的 repo 里抄来的,我拿来练习正则表达式。养生语录我也觉得有点 low。有啥别的高档素材,PR 过来就行。

        随机添加一页随机语录的话,幻灯片里直接插一条 sinx() 语句就行了。

        如果以 markdown 的格式接受大家的推荐语录 PR,会不会比 csv 格式更友好?省的考虑斜杠和引号之类的问题了。

        所以我把原来的 sinxs.csv 转成了 sinxs.md。原来的 sinxs.csv 改名为 cosxs.csv 备用。包内部自动将 md 和 csv 相互转换。

        还弄了个 cscx() 函数,运行它,会往剪贴板里拷一个骨架文本,直接 ctrl + v 来添加新语录。我不知道跟 csv 比起来哪个更方便。

        
        
        author: 
        
        context: 
        
        source: 
        
        date:
        
        ---

        如果 markdown 比 csv 更方便组织源文件,那这个包就太蠢了,因为它主要干的就是把 csv 里的源文本以像样的格式 如 markdown 展示出来……

        不知为何 fortunes 包为何最初以分号分隔的 csv 文件来组织源语录。可能因为开发的时候还没出现 markdown?

          tctcab yaml格式好,数据显得紧凑些,R Markdown生态用的都是这个格式,大家比较熟悉

            tctcab Cloud2016 都挺好,反正他们能随意相互转换。用 markdown 的好处是源语录文件可以直接在 github 渲染,不必像 fortunes 包还专门弄个 pdf 的 vignette。

            如果内部格式用 yaml 以便处理,文件扩展名伪装成 .md 以便 github 渲染,那是不是更方便? 比如 members.yaml,如果改名成 members.md 的话,浏览起来是不是更赏心悦目一些? 至少不用横行滚动条了……

              7 天 后

              dapengde 我这样安装出错!
              remotes::install_github('pzhaonet/sinx', build = TRUE, build_opts = c("--no-resave-data", "--no-manual"))
              Downloading GitHub repo pzhaonet/sinx@master
              Error in utils::download.file(url, path, method = download_method(), quiet = quiet, :
              cannot open URL 'https://api.github.com/repos/pzhaonet/sinx/tarball/master'

              直接浏览器 https://api.github.com/repos/pzhaonet/sinx/tarball/master 会下载一个压缩包pzhaonet-sinx-9f1d98a.tar.gz,本地安装还是不成功。

                dapengde install.packages("~/EGDownloads/pzhaonet-sinx-9f1d98a.tar.gz", repos = NULL, type = "source")
                Installing package into ‘D:/library’
                (as ‘lib’ is unspecified)
                Warning in untar2(tarfile, files, list, exdir, restore_times) :
                skipping pax global extended headers
                ERROR: dependencies 'cowsay', 'multicolor', 'rmsfact' are not available for package 'sinx'
                removing 'D:/library/sinx'
                In R CMD INSTALL
                Warning in install.packages :
                installation of package ‘D:/Documents/EGDownloads/pzhaonet-sinx-9f1d98a.tar.gz’ had non-zero exit status

                原来是 'cowsay', 'multicolor', 'rmsfact'这几个包缺少了,安装完后,再本地安装就可以了。

                  6 天 后

                  dapengde 我试了在github装其他包,也不行,应该是我的个人网络的问题。
                  通过文件pzhaonet-sinx-9f1d98a.tar.gz本地安装sinx时,没有自动安装相关依赖包。

                  10 天 后