SetDirectory["C:\\drorbn\\AcademicPensieve\\Projects\\wDuflo"]

Make

Make::usage = "Make[targets, sources, Hold[action]] makes a target, or a list of targets, given sources, or a list of sources, in the style of the unix 'make' command.";
Make[target_String, sources_, action_Hold] := Make[Evaluate@{target}, sources, action];
Make[targets_, source_String, action__Hold] := Make[targets, Evaluate@{source}, action];
Make[targets_List, sources_List, action_Hold] := Module[{},
If[
(And @@ ((FileType[#] =!= None)& /@ sources)) &&
Or[
Or @@ ((FileType[#]===None)& /@ targets),
Min[AbsoluteTime[FileDate[#]]& /@ targets] < Max[AbsoluteTime[FileDate[#]]& /@ sources]
],
Print["Making ",targets, " ..."];
ReleaseHold[action]
]
];

WordCloud

sources={"wDuflo.tex", "abstract.tex", "refs.tex"};
target="WordCloud.png";

MakeWC[]:= Module[{words,dict},
words=Flatten[TextWords[ReadString[#]]& /@ sources];
dict=Complement[
DeleteStopwords[DictionaryLookup[]],
{"begin", "end","left","right", "equation", "item","em"}
];
words =Select[words, MemberQ[dict,#]&];
WordCloud[words, ImageSize->400]
]

MakeWC[]

Make[target, Join[sources,{"index.nb"}], Hold[
Export[target, MakeWC[]];
MakeThumb["WordCloud.png"]
]]

Output

{
"TitleNotes" -> StringJoin["<div style=\"clear: right; float: right; padding: 8px; width: 400px;\"><img width=400px src=WordCloud.png></div>This is the construction / computation page for my joint paper with <a class=external href=\"http://www.math.toronto.edu/zsuzsi/\">Zsuzsanna Dancso</a>, <b>Ribbon 2-Knots, $1+1=2$, and Duflo's Theorem for arbitrary Lie algebras</b> (<a href=wDuflo.pdf>PDF here</a>). <p><b>Abstract.</b> ",
StringReplace[ReadString["abstract.tex"], {
"~"->"&nbsp;",
"``"->"\"", "''"->"\"",
"\\cite{Bar-NatanLeThurston:TwoApplications}" -> "[<a class=external href=http://front.math.ucdavis.edu/math.QA/0204311>BLT</a>]",
"\\cite{WKO2}" -> "[<a href=../WKO2/>BND2</a>]"
}]
]
}