6 ms·
The main issue I had with LP in the past is that sometimes you want to modify the code directly, not the literate document and synchronize them. I made such a t
by padator 12y ago
The main issue I had with LP in the past is that sometimes you want to modify the code directly, not the literate document and synchronize them. I made such a tool: https://github.com/aryx/syncweb https://github.com/aryx/syncweb
- jostylr 12y agoNeat. Do you find that you use that a lot? I have thought about it implementing it in the literate-programming tool I wrote, but so far I have found a split screen editor (vim for me) with search to be fairly effective. On the opposite side of things, I rather enjoy mucking about with the compiled code to diagnose it, and then recompiling to get rid of the diagnostic debris.
- padator 12y agoI use syncweb all the time. I can't go back to just using noweb. Many of the subprojects in pfff have a literate document that is synchronized with the code using syncweb (e.g https://github.com/facebook/pfff/blob/master/h_visualization/Treemap.tex.nw https://github.com/facebook/pfff/blob/master/h_visualization... ). When I have errors in my code, or when I debug my code, I do it on the generated code, not the tex document, so of course if there is a fix it's easier to fix the code directly and far later to synchronize.
- taeric 12y agoMy mind was almost literally blown when I found that org-mode in emacs has this. I believe you have to be putting in the noweb comments, but there is a detangle function.
- padator 12y agoDo you have a link explaining this org-mode feature?
- jaseemabid 12y agoUse the inbuilt info reader. (info "Org") And then look for babel
- padator 12y agoWow nice. Found http://comments.gmane.org/gmane.emacs.orgmode/32814 http://comments.gmane.org/gmane.emacs.orgmode/32814 but I'm not sure the workflow is as convenient as syncweb. Syncweb has a unison interface to synchronize which allows to very quickly synchronize many chunks automatically. Syncweb can automatically know in which direction things need to be synchronize. If one modify the code, then the synchro will update the org, if one modify the org, then the code will be regenerated. If one modify the org, and the code at the same place, then a conflict will be detected.
- taeric 12y agoApologies. I don't right off. If you can't find it, let me know. I should be able to look for it tomorrow AM.