É possível invocar a funcionalidade diff do Mathematica a partir da linha de comand
TortoiseSVN (assim comooutros clientes Tortoise) inclua umroteir para diff arquivos de notebook no Mathematica. A funcionalidade difusa do Mathematica é implementada no AuthorTools pacote (talvez haja algo melhor?)
O script atualmente funciona criando um pequeno arquivo de bloco de anotações no diretório temp e abrindo-o no front-end. O notebook possui um botão grande que fará a diferença e os nomes dos arquivos a serem codificados em código rígid
Uma desvantagem é que o notebook com o código diff será deixado no diretório temporário e não será limpo. Também parece desnecessário ter um notebook auxiliar aberto toda vez que fazemos uma diferenç
É possível iniciar a funcionalidade diff a partir da linha de comando para evitar passar pelo bloco de anotações temporário? Ou existe algum outrorobust maneira de melhorar esse processo e evitar jogar a pasta temporária em cadernos auxiliare
Quaisquer sugestões para melhorar a experiência diferente são bem-vindas!
Observe que, como o TortoiseSVN é um programa do Windows, estou interessado principalmente em soluções baseadas no Window
Aqui está um exemplo de caderno que o script gera. Percebo que ele precisa de limpeza, mas da última vez que verifiquei que também funcionava na versão 5 (!), Não queria tocá-lo desnecessariamente (sem melhorar visivelmente algo).
Notebook[{
Cell[BoxData[ButtonBox["\<\"Compare Notebooks\"\>",
ButtonFrame->"DialogBox", Active->True, ButtonEvaluator->Automatic,
ButtonFunction:>(Needs["AuthorTools`"]; NotebookPut[Symbol["NotebookDiff"]["one.nb", "two.nb"]])
]], NotebookDefault] },
Saveable->False, Editable->False, Selectable->False, WindowToolbars->{},
WindowFrame->ModelessDialog, WindowElements->{},
WindowFrameElements->CloseBox, WindowTitle->"Diff",
ShowCellBracket->False, WindowSize->{Fit,Fit}
]