• make在latex中的妙用


      最近在学习latex,每次编译完源码后,都想看下效果,有人觉得可以装软件,装插件,简单的学习,觉得实在没必要折腾。看下了就只有两条命令:

      latex hello.tex

      dvipdfm hello.dvi

      make最擅长做这种机械化的事情了,只要吧Makefile文件写好,一切都很容易,说做就做:

      1、Makefile(version1)

     1 hello.pdf:hello.dvi
     2     dvipdfm $^ -o $@
     3 hello.dvi:hello.tex
     4     latex $^
     5 clean:
     6     rm hello.log
     7     rm hello.dvi
     8     rm hello.pdf
     9     rm hello.aux
    10     mv hello.tex src/

      直接make就可以生成了pdf文档,make clean可以将中间文件删除,并将源码归类到src目录。优点就是非常容易理解,缺点就是灵活性远远不够,每次换个文件都需要在文件里更改文件。

      2、Makefile(version2)

     1 FILENAME=hello
     2 ${FILENAME}.pdf:${FILENAME}.dvi
     3     dvipdfm $^ -o $@
     4 ${FILENAME}.dvi:${FILENAME}.tex
     5     latex $^
     6 clean:
     7     rm ${FILENAME}.log
     8     rm ${FILENAME}.dvi
     9     rm ${FILENAME}.pdf
    10     rm ${FILENAME}.aux
    11     mv ${FILENAME}.tex src/
    12     echo 'clean fnished!'

      这个make前只要更改一个参数即可,缺点就是make clean时,有输出:

    rm hello.log
    rm hello.dvi
    rm hello.pdf
    rm hello.aux
    mv hello.tex src/
    echo 'clean fnished!'
    clean fnished!

      3、Makefile(version3)

     1 #FILENAME=hello
     2 ${FILENAME}.pdf:${FILENAME}.dvi
     3     dvipdfm $^ -o $@
     4 ${FILENAME}.dvi:${FILENAME}.tex
     5     latex $^
     6 clean:
     7     @rm ${FILENAME}.log
     8     @rm ${FILENAME}.dvi
     9     @rm ${FILENAME}.pdf
    10     @rm ${FILENAME}.aux
    11     @mv ${FILENAME}.tex src/
    12     @echo clean fnished!

      这个版本就好多了,只需要在make是加上参数即可,无需修改文件,就可以,并且,clean时只显示必要的信息。

      make FILENAME=hello           //完成编译

      make FILENAME=hello  clean        //完成清理

    OK,完美,手工!

    人就像是被蒙着眼推磨的驴子,生活就像一条鞭子;当鞭子抽到你背上时,你就只能一直往前走,虽然连你也不知道要走到什么时候为止,便一直这么坚持着。
  • 相关阅读:
    composer "Failed to decode zlib stream"
    敏捷开发 角色英文简称
    MySQL索引背后的数据结构及算法原理 (转)
    Jenkins mac pkg安装 后默认配置文件/启动路径
    react componentWillReceiveProps 使用注意
    charles https抓包 (安卓安装证书)
    error_reporting()
    PHP开发API接口及使用
    封装pdo单例模式类
    php 将多个txt文件合并成
  • 原文地址:https://www.cnblogs.com/guochaoxxl/p/14319302.html
Copyright © 2020-2023  润新知