# This is to allow the use of sagetex package # (http://www.ctan.org/pkg/sagetex) # with latexmk. Sagetex outputs a file with the extension .sage. # This file is to be processed by sage software (http://sagemath.org) # to make a file with extension .sout. This file is then read in by # sagetex during a later run of (pdf)latex. # # This can be done by normal custom dependency. However the .sage # contains unimportant information about line numbers for error # reporting. It is useful not to rerun sage if this is the only # information that has changed in the .sage file. So the # hash_calc_ignore_pattern variable is used to configure latexmk to # ignore this lines when computing whether the .sage file has # changed. add_cus_dep( 'sage', 'sout', 0, 'makesout' ); #$hash_calc_ignore_pattern{'sage'} = '^( _st_.goboom|print .SageT)'; $hash_calc_ignore_pattern{'sage'} = '^( _st_.goboom|print .SageT)|(_st_.current_tex_line|SageTeX paused|SageTeX unpaused)'; sub makesout { system( "sage \"$_[0].sage\"" ); }