Permalink
Browse files

file ordering changes

  • Loading branch information...
1 parent 765e937 commit 07931947d8729df83fb94e2282c1da5b57393d2a @zdw committed Nov 3, 2011
Showing with 54 additions and 43 deletions.
  1. +54 −43 README.markdown
View
@@ -6,13 +6,59 @@ This repo goes along with a presentation given at [MacTech Conference 2011](http
## Notes about my particular process
-I create new files in "notes", which are transformed into the XML worklog syntax, which is stored in "worklogs". This syntax is used to create PDF invoices in "invoice" or ledger files in "ledgers". I don't include this code because it's pretty ancient, and does some really stupid things (for example, storing unix timestamps in the XML, rather than ISO-8601 dates).
+I create new files in "notes", which are transformed into the XML worklog syntax, which is stored in "worklogs". This syntax is used to create PDF invoices in "invoices" or ledger files in "ledgers".
+
+I don't include the worklog parsing/ledger/pdf generation code itself because it's pretty ancient, in PHP, has a bunch of weird non-current library dependencies and does some really stupid things (for example, storing unix timestamps in the XML, rather than ISO-8601 dates).
The rest of the files in the repo were added after the fact (like this README which you are reading right now).
+## Tools
+
+### Automation Tools
+
+- [Git](http://git-scm.com/)
+ - Documentation and tutorials
+ - [`man gittutorial`](http://schacon.github.com/git/gittutorial.html)
+ - [Everyday Git](http://schacon.github.com/git/everyday.html)
+ - [Pro Git](http://progit.org/)
+ - [Git for Computer Scientists](http://eagain.net/articles/git-for-computer-scientists/)
+
+- [Mercurial](http://mercurial.selenic.com/)
+ - Documentation and tutorials
+ - [Hg Init](http://hginit.com/)
+ - [Mercurial: The Definitive Guide](http://hgbook.red-bean.com/)
+
+- [Rake](http://rake.rubyforge.org/)
+ - A tool for writing dependency based tasks, in Ruby
+ - Tutorials
+ - [Using the Rake Build Language](http://martinfowler.com/articles/rake.html)
+ - [Using Rake to Automate Tasks](http://www.stuartellis.eu/articles/rake/)
+
+
+### Documentation Tools
+
+- [Markdown](http://daringfireball.net/projects/markdown/)
+ - minimal markup language, widely implemented
+ - One example: [MultiMarkdown](http://fletcherpenney.net/multimarkdown/)
+
+- [Pandoc](http://johnmacfarlane.net/pandoc/)
+ - Documentation format conversion swiss army knife
+ - Will convert Markdown to HTML, ePub, PDF, etc.
+
+### Accounting Tools
+
+- [Ledger](http://ledger-cli.org/)
+ - Ledger is a CLI accounting tool
+ - Multiple implementations
+ - the original C++ version, given above
+ - [Beancount](http://furius.ca/beancount/) in python
+ - [hledger](http://hledger.org/) in haskell
+ - The 3.x beta branch off of github is preferred over the older 2.6.x version in MacPorts
+
+
## Scripts
-Note that none of these are fully prepped to work on any system - they often will need other utilities installed, or will need to be fixed to work in your specific environment. These are mainly starting points.
+Note that these are pulled straight from my code, and won't work without fairly serious modifications - they often will need other utilities installed. Use this as a starting point
### `scripts/docgen`
@@ -24,17 +70,16 @@ See the `test` subfolder for examples - all the files inside were created from
### `scripts/mailsend.scpt`
-A very simple Applescript that will send an email with specified subject/sender/attachments. I run this with a bash script that calls rake:
+A very simple Applescript that will send an email with specified subject/sender/attachments. I run this with a bash script that calls rake.
-bash script:
+*bash script:*
~~~~{.bash .numberlines}
-$FOCUSTOOLPATH=~/tools
-RAKECMD="rake -f ${FOCUSTOOLPATH}/worklog/worklog.rake"
+RAKECMD="rake -f ~/tools/worklog.rake"
${RAKECMD} "${1}" target="$2"
~~~~
-rakefile:
+*rakefile:*
~~~~ {.ruby .numberlines}
# set the target variable if it's a valid file
@@ -44,48 +89,14 @@ if !ENV["target"].nil? && File.file?(ENV["target"])
end
# mailinvoice
+desc "Create an email message with attachment in Mail.app"
task :mailinvoice => [ :worklogs, :ledgers ] do
if $target
- note_date = ENV['FOCUSDATE'].gsub('_','-')
+ note_date = `date +"%Y-%m-%d"`
filepath = File.expand_path($target)
name = customer_name()
email = customer_email()
sh "#{$osascript_bin} #{$mailsend_scpt} 'Invoice for #{note_date}' 'Please see the enclosed invoice\n\n' #{name} #{email} #{filepath}"
end
end
~~~~
-
-## Tools
-
-
-### Automation Tools
-
-- [Git](http://git-scm.com/)
- - A version control system
- - Documentation and tutorials
- - [`man gittutorial`](http://schacon.github.com/git/gittutorial.html)
- - [Everyday Git](http://schacon.github.com/git/everyday.html)
- - [Pro Git](http://progit.org/)
- - [Git for Computer Scientists](http://eagain.net/articles/git-for-computer-scientists/)
-
-- [Rake](http://rake.rubyforge.org/)
- - A tool for writing dependency based tasks, in Ruby
- - Tutorials
- - [Using the Rake Build Language](http://martinfowler.com/articles/rake.html)
-
-
-### Documentation Tools
-
-- [Markdown](http://daringfireball.net/projects/markdown/)
- - minimalist markup language
- - Multiple implementations, for example [MultiMarkdown](http://fletcherpenney.net/multimarkdown/)
-
-- [Pandoc](http://johnmacfarlane.net/pandoc/)
- - Documentation format conversion swiss army knife
- - Will convert Markdown to HTML, ePub, PDF, etc.
-
-### Accounting Tools
-
-- [Ledger](http://ledger-cli.org/)
- - Ledger is a CLI accounting tool
- - Use the 3.x beta branch off of github, which is being actively developed

0 comments on commit 0793194

Please sign in to comment.