# The TaskJuggler User Manual

Project Management beyond Gantt Chart drawing
Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by Chris Schlaeger <chris@linux.com>
Generated on 2013-06-29

### This manual covers TaskJuggler version 3.5.0.

1 | Introduction
| 1.1 About TaskJuggler
| 1.2 License and Copyright
| 1.3 Features and Highlights
| 1.3.1 Basic Properties
| 1.3.2 Advanced Scheduling
| 1.3.3 Accounting
| 1.3.4 Reporting
| 1.3.5 Scaling and Enterprise Features
| 1.3.6 Web Publishing and Groupware Functions
| 1.4 TaskJuggler on the Web
| 1.5 TaskJuggler 2.x Migration
| 1.6 Using TaskJuggler 2.x and TaskJuggler 3.x in parallel
| 1.7 Reporting Bugs and Feature Requests
2 | Installation
| 2.1 Requirements
| 2.1.1 Supported Operating Systems
| 2.1.2 Other required Software
| 2.2 Installation Steps for Users
| 2.2.1 The easy way
| 2.2.1.1 System Wide Installation
| 2.2.1.2 Installation into a local Directory
| 2.2.2 The manual way
| 2.3 Update from older TaskJuggler 3.x versions
| 2.4 Installing TaskJuggler from the Git Repository
| 2.5 Quickly switching between various TaskJuggler 3.x versions
| 2.6 Installing a newer Ruby version
| 2.7 Installing the Vim Support
| 2.8 How to Contribute
| 2.8.1 Why contribute?
| 2.8.2 Preparing a contribution
| 2.8.3 Creating a Patch
| 2.8.4 Contributing to the User Manual
| 2.8.5 Contributing to the Test Suite
| 2.8.6 Contributing to the Ruby code
| 2.8.7 Some final words to Contributors
3 | Getting Started
| 3.1 Basics
| 3.2 Structure of a TJP File
4 | The Tutorial: Your first Project
| 4.1 Starting the project
| 4.2 Global Attributes
| 4.3 Macros
| 4.4 Declaring Flags
| 4.5 Declaring Accounts
| 4.6 Declaring Resources
| 4.7 Specifying the Tasks
| 4.8 Specifying Milestones
| 4.9 Visualizing the Project
5 | The TaskJuggler Syntax
| 5.1 Understanding the Syntax Reference
| 5.1.1 ABSOLUTE_ID
| 5.1.2 ID
| 5.1.3 INTEGER
| 5.1.4 STRING
| 5.2 Predefined Macros
| 5.3 Environment Variable Expansions
| 5.4 Rich Text Attributes
| 5.4.1 Block Markups
| 5.4.2 In-Line Markups
| 5.4.3 Block and Inline Generators
6 | The TaskJuggler Software
| 6.1 tj3
| 6.2 tj3man
| 6.3 tj3d
| 6.4 tj3client
| 6.5 tj3webd
7 | Day To Day Juggling
| 7.1 Working with multiple scenarios
| 7.2 Important and fall-back Tasks
| 7.3 Tracking the Project
| 7.4 Recording Progress
| 7.4.1 Using completion values
| 7.4.2 Using bookings
| 7.5 Tracking status and actuals
| 7.5.1 The reporting and tracking cycle
| 7.6 Implementing the status tracking system
| 7.6.1 Prerequesites
| 7.6.2 The Time Sheet Template Sender
| 7.6.3 The Time Sheet Receiver
| 7.6.4 Time Sheet Template Requests
| 7.6.5 Time Sheet Summaries
| 7.6.6 Updating the Project Plan
| 7.7 Recording actual Resource Usage
| 7.7.1 Status Sheets
| 7.7.2 The Status Sheet Template Sender
| 7.7.3 Requesting Status Sheet Templates
| 7.7.4 The Status Sheet Receiver
8 | TaskJuggler Internals
| 8.1 How the Scheduler works
9 | GNU Free Documentation License
A | Syntax Reference
| A.1 account
| A.2 account (task)
| A.3 accountprefix
| A.4 accountreport
| A.5 accountroot
| A.6 active
| A.7 adopt (task)
| A.8 aggregate
| A.9 alert
| A.10 alertlevels
| A.11 allocate
| A.12 alternative
| A.13 author
| A.14 auxdir
| A.15 auxdir (report)
| A.16 balance
| A.17 booking (resource)
| A.18 booking (task)
| A.19 caption
| A.20 cellcolor (column)
| A.21 celltext (column)
| A.22 center
| A.23 charge
| A.24 chargeset
| A.25 columnid
| A.26 columns
| A.27 complete
| A.28 copyright
| A.29 credits
| A.30 currency
| A.31 currencyformat
| A.32 dailymax
| A.33 dailymin
| A.34 dailyworkinghours
| A.35 date
| A.36 date (extend)
| A.37 definitions
| A.38 depends
| A.39 details
| A.40 disabled
| A.41 duration
| A.42 efficiency
| A.43 effort
| A.44 email
| A.45 enabled
| A.46 end
| A.47 end (column)
| A.48 end (limit)
| A.49 end (report)
| A.50 end (timesheet)
| A.51 endcredit
| A.52 epilog
| A.53 export
| A.54 extend
| A.55 fail
| A.56 flags
| A.57 flags (account)
| A.58 flags (journalentry)
| A.59 flags (report)
| A.60 flags (resource)
| A.61 flags (statussheet)
| A.62 flags (task)
| A.63 flags (timesheet)
| A.64 fontcolor (column)
| A.65 footer
| A.66 formats
| A.67 formats (export)
| A.68 functions
| A.69 gapduration
| A.70 gaplength
| A.71 halign (center)
| A.72 halign (column)
| A.73 halign (left)
| A.74 halign (right)
| A.75 hasalert
| A.76 header
| A.77 headline
| A.78 height
| A.79 hideaccount
| A.80 hidejournalentry
| A.81 hidereport
| A.82 hideresource
| A.83 hidetask
| A.84 icalreport
| A.85 include (macro)
| A.86 include (project)
| A.87 include (properties)
| A.88 inherit (extend)
| A.89 interval1
| A.90 interval2
| A.91 interval3
| A.92 interval4
| A.93 isactive
| A.94 ischildof
| A.95 isdependencyof
| A.96 isdutyof
| A.97 isfeatureof
| A.98 isleaf
| A.99 ismilestone
| A.100 isongoing
| A.101 isresource
| A.102 isresponsibilityof
| A.103 istask
| A.104 isvalid
| A.105 journalattributes
| A.106 journalentry
| A.107 journalmode
| A.108 leaveallowance
| A.109 leaves
| A.110 left
| A.111 length
| A.112 limits
| A.113 limits (allocate)
| A.114 limits (resource)
| A.115 limits (task)
| A.116 listitem (column)
| A.117 listtype (column)
| A.118 loadunit
| A.119 logicalexpression
| A.120 logicalflagexpression
| A.121 macro
| A.122 managers
| A.123 mandatory
| A.124 maxend
| A.125 maximum
| A.126 maxstart
| A.127 milestone
| A.128 minend
| A.129 minimum
| A.130 minstart
| A.131 monthlymax
| A.132 monthlymin
| A.133 navigator
| A.134 newtask
| A.135 nikureport
| A.136 note (task)
| A.137 now
| A.138 number (extend)
| A.139 numberformat
| A.140 onend
| A.141 onstart
| A.142 opennodes
| A.143 outputdir
| A.144 overtime (booking)
| A.145 period (column)
| A.146 period (limit)
| A.147 period (report)
| A.148 period (task)
| A.149 persistent
| A.150 precedes
| A.151 priority
| A.152 priority (timesheet)
| A.153 project
| A.154 projectid
| A.155 projectid (task)
| A.156 projectids
| A.157 projection
| A.158 prolog
| A.159 properties
| A.160 purge
| A.161 rate
| A.162 rate (resource)
| A.163 rawhtmlhead
| A.164 reference (extend)
| A.165 remaining
| A.166 replace
| A.167 reportprefix
| A.168 resource
| A.169 resourceattributes
| A.170 resourceprefix
| A.171 resourcereport
| A.172 resourceroot
| A.173 resources (limit)
| A.174 responsible
| A.175 richtext (extend)
| A.176 right
| A.177 rollupaccount
| A.178 rollupresource
| A.179 rolluptask
| A.180 scale (column)
| A.181 scenario
| A.182 scenario (ical)
| A.183 scenarios
| A.184 scenarios (export)
| A.185 scenariospecific (extend)
| A.186 scheduled
| A.187 scheduling
| A.188 select
| A.189 selfcontained
| A.190 shift
| A.191 shift (allocate)
| A.192 shift (resource)
| A.193 shift (task)
| A.194 shift (timesheet)
| A.195 shifts (allocate)
| A.196 shifts (resource)
| A.197 shifts (task)
| A.198 shorttimeformat
| A.199 sloppy (booking)
| A.200 sloppy (projection)
| A.201 sortaccounts
| A.202 sortjournalentries
| A.203 sortresources
| A.204 sorttasks
| A.205 start
| A.206 start (column)
| A.207 start (limit)
| A.208 start (report)
| A.209 startcredit
| A.210 status (statussheet)
| A.211 status (timesheet)
| A.212 statussheet
| A.213 statussheetreport
| A.214 strict (projection)
| A.215 summary
| A.216 supplement
| A.217 supplement (resource)
| A.218 supplement (task)
| A.219 tagfile
| A.220 task
| A.221 task (statussheet)
| A.222 task (timesheet)
| A.223 taskattributes
| A.224 taskprefix
| A.225 taskreport
| A.226 taskroot
| A.227 taskroot (export)
| A.228 text (extend)
| A.229 textreport
| A.230 timeformat
| A.231 timeformat1
| A.232 timeformat2
| A.233 timeoff (nikureport)
| A.234 timesheet
| A.235 timesheetreport
| A.236 timezone
| A.237 timezone (export)
| A.238 timezone (report)
| A.239 timezone (shift)
| A.240 timingresolution
| A.241 title
| A.242 title (column)
| A.243 tooltip (column)
| A.244 tracereport
| A.245 trackingscenario
| A.246 treelevel
| A.247 vacation
| A.248 vacation (resource)
| A.249 vacation (shift)
| A.250 warn
| A.251 weeklymax
| A.252 weeklymin
| A.253 weekstartsmonday
| A.254 weekstartssunday
| A.255 width
| A.256 width (column)
| A.257 work
| A.258 workinghours (project)
| A.259 workinghours (resource)
| A.260 workinghours (shift)
| A.261 yearlyworkingdays

Copyright (c) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by Chris Schlaeger <chris@linux.com>.TaskJuggler is a trademark of Chris Schlaeger.