Taskwarrior

از Linuxreview Wiki
پرش به: ناوبری, جستجو

محتویات

شرح

این آموزش دربردارنده یک روایت و سری از دستوراتیست که شما را در جریان سناریو‌های قرار می‌دهد و قابلیت‌های ابزار قدرتمند taskwarrior را به نمایش می‌گذارد. ما از ویژگی‌های ابتدایی شروع کرده و به تدریج خصوصیات قدرتمندتر را می‌پردازیم. برای درک بهتر آموزش بهتر است که شما هم پا به پای راهنما مثال‌ها را در سیستم خود اجرا کنید.

یک ترمینال باز کرده و پنجره آن را تا حد امکان بزرگ کنید تا قابلیت مشاهده خروجی قالب‌بندی شده‌ی این صفحه را داشته باشید. Taskwarrior ویژگی‌های زیادی دارد و به احتمال زیاد شما از تمام این ویژگی‌ها استفاده نخواهید کرد اما به صورت حتم شما از تعدادی از آن قابلیت‌ها برای مدیریت فعالیت‌هایتان (task management) بسته به نیاز خود بهره خواهید برد. هر کسی الگوی متفاوتی دارد و این راهنما برای همه افراد مفید خواهد بود زیرا ویژگی‌های این برنامه را تا حد ممکن پوشش داده است و کار شما انتخاب از بین آن‌ها بنابر نیاز شما خواهد بود.

این آموزش برای taskwarrior 1.9.3 نوشته شده است و اختلافات کوچکی با نسخه 1.9.4 دارد.


کاربرد پایه‌ای

با هم شروع می‌کنیم؛ ما برنامه یک مهمانی را ترتیب داده‌ایم و در این ضیافت کارهای زیادی است که باید انجام دهیم؛ برای شروع لیست کارها (وظایف) را توسط دستور add به برنامه اضافه می‌کنیم.

$ task add Select a free weekend in November
Created task 1.
$ task add Select and book a venue
Created task 2.
$ task add Come up with a guest list
Created task 3.
$ task add Mail invitations
Created task 4.
$ task add Select a caterer
Created task 5.

علامت '$' نشان دهنده آن است که خطوط جلوی این علامت توسط شما نوشته شده و خروجی ترمینال نمی‌باشد و خطوطی که بدون این علامت در ابتدایش نشان داده می‌شود خطوطی هستند که توسط taskwarrior در خروجی ترمینال ظاهر می‌شوند؛ بیائید نگاهی به لیست وظایفی که تا این لحظه اضافه کرده‌ایم بیندازیم:

$ task list

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ---------------------------------
 1                          1 min Select a free weekend in November
 2                        55 secs Select and book a venue
 3                        49 secs Come up with a guest list
 4                        40 secs Mail invitations
 5                        33 secs Select a caterer

5 tasks

اکنون من یک کیک سفارش داده‌ام و ترجیح میدهم آن را به برنامه اضافه کنم، به عبارت دیگر کاری را که انجام داده‌ام را به برنامه اضافه می‌کنم تا اثرش حفظ شود شاید زمانی به کار آید، پس با فرمان زیر آن را اینگونه به برنامه اضافه می‌کنم.

$ task log Order a special cake
Logged task.

برای دعوت‌نامه‌ها باید اول یک طرح را طراحی کنم و بعد چاپشون کنم. چون در لیست وظایف، وظیفه‌ای در خصوص دعوت‌نامه‌ها وجود دارد در نتیجه بقیه وظایف این حوزه را با دستور duplicate اضافه‌ می‌کنم(توجه کنید که چگون دستورات می‌تواند مختصر شود). در دستور اول وظیفه ۴ که در مورد پشت دعوت‌نامه‌ها بود با طراحی دعوت‌نامه‌ها جایگزین می‌شود و یک وظیفه جدید با نام Design invitaions در کنار Mail invitaions ایجاد می‌شود، در ادامه همین اتفاق برای چاپ (=Print) خواهد افتاد.

$ task 4 duplicate /Mail/Design/
Duplicated 4 'Mail invitations'.
Duplicated 1 task.
Created task 7.
$ task 4 dup /Mail/Print/
Duplicated 4 'Mail invitations'.
Duplicated 1 task.
Created task 8.
$ task list

خب همه چیز مزتب است، اکنون من لیست مهمان‌ها را آماده کرده‌ام و می‌توانم این کار را انجام شده بدونم.

$ task 3 done
Completed 3 'Come up with a guest list'.
Marked 1 task as done.
$ task list

ID Project Pri Due Active Age    Description
-- ------- --- --- ------ ------ ---------------------------------
 1                        8 mins Select a free weekend in November
 2                        7 mins Select and book a venue
 3                        6 mins Mail invitations
 4                        6 mins Select a caterer
 5                        4 mins Design invitations
 6                        4 mins Print invitations

6 tasks

اکنون شما تا حدودی با اطلاعات پایه‌ای در مورد نحوه عمل‌کرد این هشدار دهنده آشنا شده‌اید و می‌توانید لیست فعالیت‌های خود را مدیریت کنید؛ اما اگر اگر می‌خواهد بدانید که این ابزار واقعاً قادر به انجام چه کارهایی است به خواندن ادامه دهید...

برنامه‌ها (Projects)

یاد آوری پرداخت اجاره در آخر ماه.

$ task add Pay teh rent on teh 31st
Created task 7.

مثل اینکه وظیفه خود را با غلط املایی وارد کرده‌ایم، خب چاره چیست؟ حذف و اضافه دوباره وظیفه؟ نه، راه ساده‌تر و اصولی‌تری هم وجود دارد؛ شما می‌توانید با استفاده از 'g' این کار را انجام دهید(به مثال زیر برای جابجایی teh با the دقت کنید)، البته اگر شما 'g' را از قلم بیندازید فقط اولین غلط جایگزین خواهد شد.

$ task 7 /teh/the/g
Modified 1 task.
$ task list

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ---------------------------------
 1                        12 mins Select a free weekend in November
 2                        12 mins Select and book a venue
 3                        11 mins Mail invitations
 4                        11 mins Select a caterer
 5                         9 mins Design invitations
 6                         9 mins Print invitations
 7                        37 secs Pay the rent on the 31st

7 tasks

ما می‌توانیم از برنامه‌ها (Projects) برای جدا کردن کار‌های خانه از مهمانی استفاده کنیم. اجازه دهید ابتدا، آخرین وظیفه را به برنامه (Project) خانه (Home) اختصاص دهیم. یک وظیفه تنها می‌تواند به یک برنامه اختصاص یابد.

$ task 7 project:home
The scope of project 'home' has changed.  Project 'home' is 0% complete (1 of 1 tasks remaining).
Modified 1 task.

ما شش وظیفه اول را به برنامه مهمانی (Party) هدایت می‌کنیم.

$ task 1-6 project:party

Task 1 "Select a free weekend in November" 
  - project will be set to 'party'.
Proceed with change? (Yes/no/All/quit) A

The scope of project 'party' has changed.  Project 'party' is 0% complete (1 of 1 tasks remaining).
The scope of project 'party' has changed.  Project 'party' is 0% complete (2 of 2 tasks remaining).
The scope of project 'party' has changed.  Project 'party' is 0% complete (3 of 3 tasks remaining).
The scope of project 'party' has changed.  Project 'party' is 0% complete (4 of 4 tasks remaining).
The scope of project 'party' has changed.  Project 'party' is 0% complete (5 of 5 tasks remaining).
The scope of project 'party' has changed.  Project 'party' is 0% complete (6 of 6 tasks remaining).
Modified 6 tasks.

ملاحظه نمودید که چگونه محدوده وظایف را مرزبندی کردیم!

در اینجا ما چند برنامه داریم که در ستون Project نمایش داده می‌شوند؛ ما می‌توانیم از Project به عنوان یک فیلتر برای لیست گزارش‌ها استفاده کنیم. اکنون مشاهده خواهید کرد که ما چگونه با استفاده از این قابلیت لیست وظایف را مطابق با میل خود خلاصه می‌کنیم. مستحضر باشید زمانی که ما 'party' را کوتاه می‌کنیم(در مثال زیر) لیست تمامی پروژه‌هایی که با 'par' شروع می‌شوند را خواهیم داشت.

$ task projects

Project Tasks Pri:None Pri:L Pri:M Pri:H
------- ----- -------- ----- ----- -----
home        1        1     0     0     0
party       6        6     0     0     0

2 projects (7 tasks)
$ task list project:home

ID Project Pri Due Active Age    Description
-- ------- --- --- ------ ------ ------------------------
 7 home                   5 mins Pay the rent on the 31st

1 task
$ task li pro:par

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ---------------------------------
 1 party                  18 mins Select a free weekend in November
 2 party                  17 mins Select and book a venue
 3 party                  17 mins Mail invitations
 4 party                  17 mins Select a caterer
 5 party                  15 mins Design invitations
 6 party                  15 mins Print invitations

6 tasks

اولویت‌ها‌

الویت‌ها یک راه دیگر برای سازماندهی وظایف است. شما می‌توانید از الویت‌های بالا، متوسط و کم برای وظایف استفاده کنید (taskwarrior آن‌ها را با حروف H (الویت بالا)، M(الویت متوسط) ویا L (الویت پائین) می‌شناسد).

$ task 1-3,5 priority:H

Task 1 "Select a free weekend in November" 
  - priority will be set to 'H'.
Proceed with change? (Yes/no/All/quit) A

Modified 4 tasks.

$ task list

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ---------------------------------
 1 party   H              24 mins Select a free weekend in November
 2 party   H              23 mins Select and book a venue
 3 party   H              23 mins Mail invitations
 5 party   H              21 mins Design invitations
 7 home                   12 mins Pay the rent on the 31st
 4 party                  23 mins Select a caterer
 6 party                  21 mins Print invitations

7 tasks


شما می‌توانید الویت‌ها را با دادن یک ارزش خالی پاک کنید

$ task 3 pri:
Modified 1 task.

برچسب‌ها

یک وظیفه، یک برنامه دارد، ولی ممکن است چندین برچسب داشته باشد که هر کدام تنها کلمات تکی باشند که با برنامه در ارتباط هستند. من می‌توانم به چاپ‌خانه داخل بازار (=mall) بروم و تمام وظایف مربوط به دعوتنامه‌ها را نیز در آنجا انجام دهم؛ پس بهتر است به آن‌ها برچسب بازار را بزنم.

$ task 3,5,6 +mall

Task 3 "Mail invitations" 
  - tags will be set to 'mall'.
Proceed with change? (Yes/no/All/quit) A

Modified 3 tasks.

task long هم تاریخ اضافه شدن کار ها رو نشون میده!

$ task long

ID Project Pri Added      Started Due Recur Countdown Age     Deps Tags Description
-- ------- --- ---------- ------- --- ----- --------- ------- ---- ---- ---------------------------------
 1 party   H   10/16/2010                             27 mins           Select a free weekend in November
 2 party   H   10/16/2010                             26 mins           Select and book a venue
 5 party   H   10/16/2010                             23 mins      mall Design invitations
 7 home        10/16/2010                             14 mins           Pay the rent on the 31st
 3 party       10/16/2010                             25 mins      mall Mail invitations
 4 party       10/16/2010                             25 mins           Select a caterer
 6 party       10/16/2010                             23 mins      mall Print invitations

7 tasks


اکنون می‌توانیم از برچسب‌ها به عنوان فیلتر استفاده کنیم.

$ task list +mall

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ------------------
 5 party   H              24 mins Design invitations
 3 party                  26 mins Mail invitations
 6 party                  24 mins Print invitations

3 tasks

در لیست بالا گزینه Mail invitaions هم برچسب بازار خورده است، اما با توجه به اینکه نمی‌توانیم دعوت‌نامه‌ها را از داخل بازار ارسال کنیم پس می‌توانیم آن را یک اشتباه تلقی کنیم و به روش زیر آن را از لیست برچسب خورده‌های بازار حذف کنیم.

$ task 3 -mall
Modified 1 task.

تغییرات

وظیفه شماره هفت درست نوشته نشده، در نتیجه من می‌توانم با مشخص کردن ID آن و یک شرح جدید تغییرش دهم.

$ task 7 Pay rent at the end of the month

Task 7 "Pay the rent on the 31st" 
  - description will be changed from 'Pay the rent on the 31st' to 'Pay rent at the end of the month'.
Proceed with change? (Yes/no/All/quit) Y

Modified 1 task.

به موسیقی هم احتیاج داریم، ابتدا آن را به لیست و سپس به وظایف دیگر اضافه می‌کنم.

$ task add music
$ task 8 prepend Select some
$ task 8 append for after dinner
$ task list dinner

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 8                        34 secs Select some Music for after dinner

1 task

من می‌توانم مستقیم به ویرایشگر وارد شده و هرچیزی را تغییر دهم. وظایف قالب‌بندی شده و شما میتوانید هر چیزی که دوست دارید را بنا به سلیقه خود ویرایش کنید< تغییرات شناسایی شده و بر روی وظیفه مورد نظر شما اعمال خواهد شد.

$ task 5 edit
[Your $EDITOR is invoked]

برخی اوقات خط فرمان شل را سر در گم می‌کند، مثلاً در اینجا اگر فایلی به اسم 'bands' در دایرکتوری جاری موجود باشد چه اتفاقی می‌افتد؟

$ task add Hire a band?

پوسته ممکنه که اشتباه را گسترش دهد پس برای جلوگیری از آن شما می‌توانید یکی از دو روش زیر را انتخاب کنید: wild-card را فراری دهید. کل توضیح را درون نقل قول (” ”)قرار دهید.


پوسته ممکنه اون wild-card رو گسترش بده‌، پس برای اجتناب از این شما می‌تونید از بی‌خیال اون wild-card بشید و یا از کتیشن برای نوشتن کل توضیح استفاده کنید‌.

$ task add Hire a band\?
$ task add "Hire a band?" 

شما می‌توانید از علامت منها منها استفاده کنید این کار به taskwarrior می‌فهماند که باهوش بازی را کنار بگذارد و بقیه آرگومنت‌ها را به عنوان یک وظیفه تشریح کند. در غیر این‌صورت ‎+dj به عنوان یک برچسب تفسیر خواهد شد.

$ task add -- Hire a band\? +dj
Created task 9.

We don't really need a band, so the easiest way to get rid of that task is to undo the last change. Taskwarrior has a complete undo stack, so you can undo all the way back to the beginning.


$ task undo

The last modification was made 10/16/2010

             Prior Values  Current Values
             ------------  ------------------------------------
description                Hire a band? +dj
entry                      10/16/2010
status                     pending
uuid                       599c7598-069d-4598-8d94-0c919c4213ec

The undo command is not reversible.  Are you sure you want to revert to the previous state? (y/n) y
Task removed.

اکنون که بیشتر دقت می‌کنیم اضافه کردن band یا همان گروه موسیقی کار بیهوده‌ای بود؛ راحت‌ترین راه برای راحت شدن از دست آن وظیفه برگشت به حالت قبل (قبل از آخرین تغییرات) می‌باشد. Taskwarrior یک توده کامل از تغییرات را در خود ذخیره می‌کند که به شما کمک می‌کند که تا هر مرحله قبل که می‌خواهید (حتی تا ابتدای کار) به عقب بازگردید. عملیات بازگشت کاملاً ما را از شر وظیفه خلاص می‌کند، اما من می‌توانستم به راحتی با یک دستور وظیفه را بدون استفاده از عملیات بازگشت پاک کنم، و این عملیات هم (عملیات پاک کردن) قابل برگشت بود.

$ task 1 delete
Permanently delete task 1 'Select a free weekend in November'? (y/n) y
Deleting task 1 'Select a free weekend in November'.
The scope of project 'party' has changed.  Project 'party' is 0% complete (5 of 5 tasks remaining).
$ task undo

The last modification was made 10/16/2010

             Prior Values                          Current Values
             ------------------------------------  ------------------------------------
description  Select a free weekend in November     Select a free weekend in November
entry        10/16/2010                            10/16/2010
priority     H                                     H
project      party                                 party
status       pending                               deleted
uuid         3a6881bb-628b-4f90-93d7-4da563b83d54  3a6881bb-628b-4f90-93d7-4da563b83d54
end                                                10/16/2010

The undo command is not reversible.  Are you sure you want to revert to the previous state? (y/n) y
Modified task reverted.


اطلاعات

در حین عملیات بازگشت Taskwarrior اطلاعاتی را نمایش می‌دهد که با وظیفه مربوطه در ارتباط است. شما می‌توانید با استفاده از دستور info (ویا خلاصه آن) این اطلاعات را به نمایش بگذارید.

$ task 1 info

Name        Value
----------- ------------------------------------
ID          1
Description Select a free weekend in November
Status      Pending
Project     party
Priority    H
UUID        3a6881bb-628b-4f90-93d7-4da563b83d54
Entered     10/16/2010 (44 mins)

$ task 1

Name        Value
----------- ------------------------------------
ID          1
Description Select a free weekend in November
Status      Pending
Project     party
Priority    H
UUID        3a6881bb-628b-4f90-93d7-4da563b83d54
Entered     10/16/2010 (44 mins)

همچنین آمارهایی که Taskwarrior تا به حال جمع آوری کرده در دسترس است و من می‌توانم آن‌ها را نمایش دهم.

$ task stats

Category              Data
--------------------  -------------
Pending               8
Waiting               0
Recurring             0
Completed             2
Deleted               0
Total                 10
Annotations           0
Unique tags           1
Projects              2
Data size             9.3 KiB
Undo transactions     32
Tasks tagged          20%
Oldest task           10/16/2010
Newest task           10/16/2010
Task used for         29 mins
Task added every      2 mins
Task completed every  14 mins
Average time pending  31 mins
Average desc length   23 characters

حاشیه نویسی

حاشیه یک نوشته کوتاه است که می‌تواند به وظیفه اضافه شود، آنها می‌توانند هر عددی باشند، هر کدام از آنها نیز یک مشخصه زمانی دارند.

$ task 1 annotate the 13th looks good
Annotated 1 with 'the 13th looks good'.
$ task 1 annotate or the 14th
Annotated 1 with 'or the 14th'
$ task list

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H              48 mins Select a free weekend in November
                                  10/16/2010 the 13th looks good
                                  10/16/2010 or the 14th
 2 party   H              47 mins Select and book a venue
 5 party   H              44 mins Design invitations
 8                        19 mins Select some Music for after dinner
 7 home                   35 mins Pay rent at the end of the month
 3 party                  47 mins Mail invitations
 4 party                  47 mins Select a caterer
 6 party                  44 mins Print invitations

8 tasks

شما میتوانید حاشیه ها را به طرق مختلف به نمایش بگذارید.

$ task list rc.annotations:full

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ---------------------------------
 1 party   H              49 mins Select a free weekend in November
                                  10/16/2010 the 13th looks good
                                  10/16/2010 or the 14th

1 task
Configuration override annotations:full
$ task list rc.annotations:sparse

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H              49 mins +Select a free weekend in November
                                  10/16/2010 or the 14th

1 task
Configuration override annotations:sparse
$ task list rc.annotations:none

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H              49 mins +Select a free weekend in November

1 task
Configuration override annotations:none


حاشیه ها می‌توانند با الگوی مشابه حذف شوند.

$ task 1 denotate 14th
Found annotation 'or the 14th' and deleted it.

تنظیمات

یک دستور به نام ‘show’ نیز وجود دارد که برای نشان دادن استفاده می‌شود، صدها تنظیم وجود دارد که می‌تواند تغییر پیدا کند به هر حال هر کسی فرضیات مربوط به خود را برای استفاده از برنامه دارد. $ task show

Config variable Value


----------------

_forcecolor no active.indicator * alias.export export.yaml alias.export.vcalendar export.ical alias.ghistory ghistory.monthly alias.history history.monthly alias.rm delete annotations full ... weekstart Sunday </pre>


اگر شما یک لیست کامل از تنظیمات و نحوه عملکردشان را می‌خواهید می‌توانید صفحه man رو مطالعه کنید‌.

$ man taskrc

دستور «config» برای تغییر تنظیمات استفاده می‌شود‌، و در این مورد متغییر پیکربندی «answer» ارزش 42 را دریافت می‌کند‌.

$ task config answer forty-two
Are you sure you want to add 'answer' with a value of 'forty-two'? (y/n) y
Config file .taskrc modified.

دستور 'show' نشان می‌دهد که این ارزش تغییر کرده‌، و البته مقدارش ناشناخته است‌. دستور show یک بررسی مشروح روی تنظیمات شما انجام می‌دهد‌، و مشکلات مختلف را به شما گوشزد می‌کند‌. همچنین دستور config می‌تواند یک ارزش را حذف هم کند‌.

$ task show answer

Config variable Value
--------------- ---------
answer          forty-two

Your .taskrc file contains these unrecognized variables:
  answer

$ task config answer
Are you sure you want to remove 'answer'? (y/n) y
Config file .taskrc modified.

یک ویژگی قدرتمند توانایی نادیده گرفتن تنظیمات متغیر به طور موقت است‌. در اینجا من درخواست دسته بندی صعودی فقط برای فیلد توضیحات دادم‌.

$ task rc.report.list.sort=description+ list

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 5 party   H              51 mins Design invitations
 3 party                  53 mins Mail invitations
 7 home                   42 mins Pay rent at the end of the month
 6 party                  51 mins Print invitations
 4 party                  53 mins Select a caterer
 1 party   H              54 mins Select a free weekend in November
                                  10/16/2010 the 13th looks good
 2 party   H              53 mins Select and book a venue
 8                        25 mins Select some Music for after dinner

8 tasks
Configuration override report.list.sort=description+

تغییرات در فایل تنظیمات با پسوند rc ذخیره می‌شوند.


DEFAUTS (حالت پیش فرض)

دستور default می‌تواند به هر دستوری خورانده شود مثلا در این مرحله با گزارش دهنده 'list' آن را تنظیم می‌کنیم سپس هشدار دهنده وظایف را بدون دستور list در جلو آن اجرا میکنیم، در خروجی مشاهده می‌شود که دستور task دقیقا کار دستور task list را انجام می‌دهد.

$ task config default.command list
Are you sure you want to add 'default.command' with a value of 'list'? (y/n) y
Config file .taskrc modified.
$ task

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H              55 mins Select a free weekend in November
                                  10/16/2010 the 13th looks good
 2 party   H              54 mins Select and book a venue
 5 party   H              52 mins Design invitations
 8                        26 mins Select some Music for after dinner
 7 home                   43 mins Pay rent at the end of the month
 3 party                  54 mins Mail invitations
 4 party                  54 mins Select a caterer
 6 party                  52 mins Print invitations

8 tasks

همچنین میتوانیم یک الویت و یا یک پروژه خاص را برای وظایف به صورت پیش فرض تعیین کنیم، به این معنی که هروظیفه ای که اضافه میکنیم با آن الویت و یا نام پروژه اضافه شود مگر اینکه پروژه و یا الویت خاصی برای آن اعمال شود.

$ task config default.priority H
Are you sure you want to add 'default.priority' with a value of 'H'? (y/n) y
Config file .taskrc modified.
$ task config default.project work
Are you sure you want to add 'default.project' with a value of 'work'? (y/n) y
Config file .taskrc modified.
$ task add New task
Created task 9.
$ task list New task

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- -----------
 9 work    H              12 secs New task

1 task

تغییرات اخیر را بادستوز undo بر میگردانیم

$ task undo

The last modification was made 10/16/2010

             Prior Values  Current Values
             ------------  ------------------------------------
description                New task
entry                      10/16/2010
priority                   H
project                    work
status                     pending
uuid                       0f44f9dd-79db-4098-b95b-4c3aa97d575a

The undo command is not reversible.  Are you sure you want to revert to the previous state? (y/n) y
Task removed.
$ task config default.priority
Are you sure you want to remove 'default.priority'? (y/n) y
Config file .taskrc modified.
$ task config default.project
Are you sure you want to remove 'default.project'? (y/n) y
Config file .taskrc modified.

نام‌های ساختگی

شما می‌توانید برای تغییر نام دستورات نام‌های ساختگی بسازید، در مثال زیر از zzz به جی دستور list استفاده می‌کنیم، بدین منظور ابتدا بایستی نام ساختگی را به برنامه معرفی کینم.

$ task config alias.zzz list
Are you sure you want to add 'alias.zzz' with a value of 'list'? (y/n) y
Config file .taskrc modified.
$ task zzz

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H                 1 hr Select a free weekend in November
                                  10/16/2010 the 13th looks good
 2 party   H              59 mins Select and book a venue
 5 party   H              56 mins Design invitations
 8                        30 mins Select some Music for after dinner
 7 home                   47 mins Pay rent at the end of the month
 3 party                  59 mins Mail invitations
 4 party                  58 mins Select a caterer
 6 party                  56 mins Print invitations

8 tasks

حتی می‌توانید آن‌ها را خلاصه کنید.

$ task z

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H                 1 hr Select a free weekend in November
                                  10/16/2010 the 13th looks good
 2 party   H              59 mins Select and book a venue
 5 party   H              56 mins Design invitations
 8                        30 mins Select some Music for after dinner
 7 home                   47 mins Pay rent at the end of the month
 3 party                  59 mins Mail invitations
 4 party                  58 mins Select a caterer
 6 party                  56 mins Print invitations

8 tasks


رنگ

توجه داشته باشید که شما در راستای این آموزش رنگ‌ها را در ترمینال خواهید دید اما آن‌ها را در صفحات man نخواهید دید. این در کل محدودیت عمومی صفحات man می‌باشد.

تمام مثال‌ها با رنگ‌های خاموش نمایش داده می‌شوند‌. چطور است که کمی رنگ داشته باشیم‌؟

$ task config color on
Are you sure you want to change the value of 'color' from 'off' to 'on'? (y/n) y
Config file .taskrc modified.
$ task list

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H                 1 hr Select a free weekend in November
                                  10/16/2010 the 13th looks good
 2 party   H                 1 hr Select and book a venue
 5 party   H              59 mins Design invitations
 8                        33 mins Select some Music for after dinner
 7 home                   50 mins Pay rent at the end of the month
 3 party                     1 hr Mail invitations
 4 party                     1 hr Select a caterer
 6 party                  59 mins Print invitations

8 tasks

آنچه که شما می‌بینید نتیجه یک ست از رنگ‌هایست که طبق قوانین خاص خود بر وظیفه‌ها اثر گذاشته است. در اینجا مثالی که پس زمینه وظایف را قرمز می‌کند را مشاهده می‌کنید.

$ task 1 bg:on_red
modified 1 task.
$ task list

ID Project Pri Due Active Age     Description
-- ------- --- --- ------ ------- ----------------------------------
 1 party   H                 1 hr Select a free weekend in November
                                  10/16/2010 the 13th looks good
 2 party   H                 1 hr Select and book a venue
 5 party   H              59 mins Design invitations
 8                        33 mins Select some Music for after dinner
 7 home                   50 mins Pay rent at the end of the month
 3 party                     1 hr Mail invitations
 4 party                     1 hr Select a caterer
 6 party                  59 mins Print invitations

8 tasks
$ task 1 bg:
Modified 1 task.

Taskwarrior از 256 رنگ بر روی شبیه ساز ترمینال پشتیبانی می‌کند‌، و این محدوده‌ی رنگ‌های در دسترس را نشان می‌دهد. ترمینال شما ممکن است رنگ‌های بیشتری نیز نشان دهد.

$ task color

Basic colors
  black   red   blue   green   magenta   cyan   yellow   white
  black   red   blue   green   magenta   cyan   yellow   white

Effects
  red   bold red   underline on blue   on green   on bright green

color0 - color15
  0 1 2 . . .

          . . . 15

Color cube rgb000 - rgb555 (also color16 - color231)
  0            1            2            3            4            5
  0 1 2 3 4 5  0 1 2 3 4 5  0 1 2 3 4 5  0 1 2 3 4 5  0 1 2 3 4 5  0 1 2 3 4 5
 0
 1
 2
 3
 4
 5

Gray ramp gray0 - gray23 (also color232 - color255)
  0 1 2 . . .                             . . . 23

Try running 'task color white on red'.

چگونگی نمونه نمایش رنگ‌ها:

$ task color white on red

Use this command to see how colors are displayed by your terminal.

16-color usage (supports underline, bold text, bright background):
  task color black on bright yellow
  task color underline cyan on bright blue

256-color usage (supports underline):
  task color color214 on color202
  task color rgb150 on rgb020
  task color underline grey10 on grey3
  task color red on color173

Your sample:
  task color white on red

یا مثال‌هایی از تمام تنظیمات رنگ‌های فعال:

$ task color legend

Here are the colors currently in use:

Color                     Definition
------------------------- -------------------------
color.active              black on bright green
color.alternate
color.blocked             black on white
color.calendar.due        white on red
color.calendar.due.today  bold white on red
color.calendar.holiday    black on bright yellow
color.calendar.overdue    black on bright red
color.calendar.today      bold white on bright blue
color.calendar.weekend    white on bright black
color.calendar.weeknumber bold blue
color.debug               yellow
color.due                 red
color.due.today           red
color.footnote            yellow
color.header              yellow
color.history.add         black on red
color.history.delete      black on yellow
color.history.done        black on green
color.overdue             bold red
color.pri.H               bold white
color.pri.L
color.pri.M               white
color.pri.none
color.recurring           magenta
color.summary.background  on gray3
color.summary.bar         on green
color.sync.added          green
color.sync.changed        yellow
color.sync.rejected       red
color.tagged              green
color.undo.after          green
color.undo.before         red

تم‌ها یک راه ساده هستند برای استفاده مرتب از طرح رنگ‌ها هستند. به عنوان مثال برای اضافه کردن یک تم آبی این خط را به‎ .taskrc خود اضافه کنید.

include /usr/local/share/doc/task/rc/dark-blue-256.theme

برای تم قرمز:

include /usr/local/share/doc/task/rc/dark-red-256.theme

برای تم تاریک عمومی:

include /usr/local/share/doc/task/rc/dark-256.theme

در اینجا دو قانون رنگ را تعیین می‌کنم که باعث آبی(تیره) شدن پس زمینه‌ی تمام وظایفی که بخشی از پروژه 'party هستند می‌شود و همچنین تمام توضیحاتی که شامل حروف 'invit' می‌شوند را پررنگ (=bold) نشان می‌دهد.

$ task "rc.color.project.party=on rgb001" rc.color.keyword.invit=bold list
...

برای اطلاعات بیشتر به صفحه man زیر مراجعه کنید.

$ man task-color


وظایف فعال

من یک محل برای برگزاری مهمانی در نظر گرفته‌ام، پس وظیفه ۲ را با شروع آن فعال می‌کنم، ببینید چگونه وظایف فعال توسط رنگها تحت تأثیر قرار می‌گیرند.

$ task 2 start
Started 2 'Select and book a venue'.

در اینجا یه گزارشگر برای وظایف فعال وجود دارد و تنها اینگونه وظایف را به نمایش می‌گذارد، شما می‌توانید هر کدام از وظایف را با نشانه‌دار (=Mark) کردن آن از لیست وظایف فعال خارج کنید.

$ task active

ID Project Pri Due Active Age  Description
-- ------- --- --- ------ ---- -----------------------
 2 party   H       *      1 hr Select and book a venue

1 task
$ task 2 stop
Stopped 2 'Select and book a venue'.

یک ویژگی ژورنال (ثبت وقایع) وجود دارد که زمان‌های شروع و خاتمه را به صورت حاشیه در وظایف ذخیره می‌کند.

$ task config journal.time on
Are you sure you want to add 'journal.time' with a value of 'on'? (y/n) y
Config file .taskrc modified.
$ task config dateformat.annotation 'Y/m/d H:N'
Are you sure you want to add 'dateformat.annotation' with a value of 'Y/m/d H:N'? (y/n) y
Config file .taskrc modified.
$ task 2 start
Started 2 'Select and book a venue'.
$ task list venue

ID Project Pri Due Active Age  Description
-- ------- --- --- ------ ---- -----------------------------
 2 party   H       *      1 hr Select and book a venue
                               2010/10/16 11:20 Started task

1 task
$ task 2 stop
Stopped 2 'Select and book a venue'.
$ task list venue

ID Project Pri Due Active Age  Description
-- ------- --- --- ------ ---- -----------------------------
 2 party   H       *      1 hr Select and book a venue
                               2010/10/16 11:20 Started task
                               2010/10/16 11:21 Stopped task

1 task

تارخ‌های مقرر

تاریخ‌های مقرر می‌توانند یک تاریخ خاص، مدت زمان مشخصی در آینده و یا گذشته، یادآوری زمان مشخص یا یک روز معمول هفته را مشخص کنند.

$ task 1 due:7/31/2010
Modified 1 task.
$ task 1 due:2wks
Modified 1 task.
$ task 1 due:-2wks
Modified 1 task.
$ task 1 due:eom
Modified 1 task.
$ task 2 due:8th
Modified 1 task.
$ task 2 due:sunday
Modified 1 task.
$ task 5 due:eow
Modified 1 task.

برخی از این روزها در گذشته هستند بنابر این شما آن‌ها را در وظایف گذشته از موعد می‌بینید. تاریخ‌های مقرر، رنگ‌های متفاوتی برای وظایف حالِ حاضر، فوری، امروز، گذشته از موعد اختیار می‌کند. همچنین شما میتوانید '-' را برای ورودی و خروجی استفاده کنید.

$ task rc.dateformat.report:Y-M-DTH:N:SZ list

ID Project Pri Due                  Active Age  Description
-- ------- --- -------------------- ------ ---- ------------------------------------
 2 party   H   2010-10-17T00:00:00Z        1 hr Select and book a venue
                                                2010/10/16 11:20 Started task
                                                2010/10/16 11:21 Stopped task
 5 party   H   2010-10-22T00:00:00Z        1 hr Design invitations
 1 party   H   2010-10-31T00:00:00Z        1 hr Select a free weekend in November
                                                2010/10/16 00:00 the 13th looks good
 8                                         1 hr Select some Music for after dinner
 7 home                                    1 hr Pay rent at the end of the month
 3 party                                   1 hr Mail invitations
 4 party                                   1 hr Select a caterer
 6 party                                   1 hr Print invitations

8 tasks
Configuration override dateformat.report:Y-M-DTH:N:SZ

تقویم

وقتی وظایف دارای موعدند‌، در نتیجه شما می‌توانید آن‌ها را روی تقویم ببینید‌.

$ task calendar

برای کشور‌هایی که taskwarrior بیشتر در آن‌ها استفاده می‌شود این برنامه فایل‌های حاوی اطلاعات مربوط به آن کشور‌ها را تهیه می‌کند. شما هم می‌توانید برای کشور خود یکی از این فایل‌ها را بسازید و یا یکی از نمونه‌ها را به عنوان الگو قرار داده و نسبته به تعطیلات خود آن را تغییر دهید. سعی کنید خط زیر را به فایل ‎~/.taskrc اضافه کنید.

include /usr/local/share/doc/task/rc/holidays-US.rc

سپس‌: $ task calendar

$ task calendar

       October 2010              November 2010             December 2010

     Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
  40                 1  2   45     1  2  3  4  5  6   49           1  2  3  4
  41  3  4  5  6  7  8  9   46  7  8  9 10 11 12 13   50  5  6  7  8  9 10 11
  42 10 11 12 13 14 15 16   47 14 15 16 17 18 19 20   51 12 13 14 15 16 17 18
  43 17 18 19 20 21 22 23   48 21 22 23 24 25 26 27   52 19 20 21 22 23 24 25
  44 24 25 26 27 28 29 30   49 28 29 30               53 26 27 28 29 30 31
  45 31

Legend: today, due, due-today, overdue, weekend, holiday, weeknumber.

فایل تعطیلات برای CA, DE, ES, FR, NL, SE, UK و US در آخرین ویرایش TASKWARRIOR موجود است‌(نسخه 1.9.4) شما می‌توانید کل سال رو‌ ببینید‌، سررسیدِ وظایف و همچنین تعطیلات را هم به خوبی مشاهده کنید:

$ task cal 2010

       January 2010              February 2010              March 2010                April 2010

     Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
   1                 1  2    6     1  2  3  4  5  6   10     1  2  3  4  5  6   14              1  2  3
   2  3  4  5  6  7  8  9    7  7  8  9 10 11 12 13   11  7  8  9 10 11 12 13   15  4  5  6  7  8  9 10
   3 10 11 12 13 14 15 16    8 14 15 16 17 18 19 20   12 14 15 16 17 18 19 20   16 11 12 13 14 15 16 17
   4 17 18 19 20 21 22 23    9 21 22 23 24 25 26 27   13 21 22 23 24 25 26 27   17 18 19 20 21 22 23 24
   5 24 25 26 27 28 29 30   10 28                     14 28 29 30 31            18 25 26 27 28 29 30
   6 31

         May 2010                  June 2010                 July 2010                August 2010

     Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
  18                    1   23        1  2  3  4  5   27              1  2  3   32  1  2  3  4  5  6  7
  19  2  3  4  5  6  7  8   24  6  7  8  9 10 11 12   28  4  5  6  7  8  9 10   33  8  9 10 11 12 13 14
  20  9 10 11 12 13 14 15   25 13 14 15 16 17 18 19   29 11 12 13 14 15 16 17   34 15 16 17 18 19 20 21
  21 16 17 18 19 20 21 22   26 20 21 22 23 24 25 26   30 18 19 20 21 22 23 24   35 22 23 24 25 26 27 28
  22 23 24 25 26 27 28 29   27 27 28 29 30            31 25 26 27 28 29 30 31   36 29 30 31
  23 30 31

      September 2010             October 2010              November 2010             December 2010

     Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
  36           1  2  3  4   40                 1  2   45     1  2  3  4  5  6   49           1  2  3  4
  37  5  6  7  8  9 10 11   41  3  4  5  6  7  8  9   46  7  8  9 10 11 12 13   50  5  6  7  8  9 10 11
  38 12 13 14 15 16 17 18   42 10 11 12 13 14 15 16   47 14 15 16 17 18 19 20   51 12 13 14 15 16 17 18
  39 19 20 21 22 23 24 25   43 17 18 19 20 21 22 23   48 21 22 23 24 25 26 27   52 19 20 21 22 23 24 25
  40 26 27 28 29 30         44 24 25 26 27 28 29 30   49 28 29 30               53 26 27 28 29 30 31
                            45 31

Legend: today, due, due-today, overdue, weekend, holiday, weeknumber.

$ task rc.calendar.details:full cal

       October 2010              November 2010             December 2010             January 2011

     Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
  40                 1  2   45     1  2  3  4  5  6   49           1  2  3  4    1                    1
  41  3  4  5  6  7  8  9   46  7  8  9 10 11 12 13   50  5  6  7  8  9 10 11    2  2  3  4  5  6  7  8
  42 10 11 12 13 14 15 16   47 14 15 16 17 18 19 20   51 12 13 14 15 16 17 18    3  9 10 11 12 13 14 15
  43 17 18 19 20 21 22 23   48 21 22 23 24 25 26 27   52 19 20 21 22 23 24 25    4 16 17 18 19 20 21 22
  44 24 25 26 27 28 29 30   49 28 29 30               53 26 27 28 29 30 31       5 23 24 25 26 27 28 29
  45 31                                                                          6 30 31

Legend: today, due, due-today, overdue, weekend, holiday, weeknumber.

ID Project Pri Due        Active Age  Description
-- ------- --- ---------- ------ ---- ------------------------------------
 2 party   H   10/17/2010        1 hr Select and book a venue
                                      2010/10/16 11:20 Started task
                                      2010/10/16 11:21 Stopped task
 5 party   H   10/22/2010        1 hr Design invitations
 1 party   H   10/31/2010        1 hr Select a free weekend in November
                                      2010/10/16 00:00 the 13th looks good

3 tasks
Configuration override calendar.details:full
$ task rc.calendar.holidays:full cal

       October 2010              November 2010             December 2010

     Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
  40                 1  2   45     1  2  3  4  5  6   49           1  2  3  4
  41  3  4  5  6  7  8  9   46  7  8  9 10 11 12 13   50  5  6  7  8  9 10 11
  42 10 11 12 13 14 15 16   47 14 15 16 17 18 19 20   51 12 13 14 15 16 17 18
  43 17 18 19 20 21 22 23   48 21 22 23 24 25 26 27   52 19 20 21 22 23 24 25
  44 24 25 26 27 28 29 30   49 28 29 30               53 26 27 28 29 30 31
  45 31

Legend: today, due, due-today, overdue, weekend, holiday, weeknumber.

Date       Holiday
---------- -----------------------------------
10/11/2010 Columbus Day
11/11/2010 Veterans Day
11/25/2010 Thanksgiving Day
12/25/2010 Christmas Day
12/31/2010 New Year's Eve
1/1/2011   New Year's Day
1/17/2011  Birthday of Martin Luther King, Jr.
2/21/2011  Washington's Birthday

Configuration override calendar.holidays:full

تکرار

به یاد می‌آورید که یک وظیفه برای پرداخت اجاره اضافه کرده بودم؟ ما نیاز داریم که هر ماه این وظیفه یاد آوری شود. وظایف بازگشتی (تکراری) به شما اجازه درست کردن یک وظیفه جهت یاد‌آوری مطلب خاص در زمانی که شما انتظارش را دارید می‌دهد.

$ task 7 due:eom recur:monthly
Task 7 is now a recurring task.
Modified 1 task.
$ task 7

Name        Value
----------- ------------------------------------
ID          7
Description Pay rent at the end of the month
Status      Recurring
Project     home
Recurrence  monthly
Mask
Due         10/31/2010
UUID        f79123aa-3377-43fd-8f50-d14ab3c1577b
Entered     10/16/2010 (1 hr)

همچنین شما میتوانید محدوده‌ی این تکرار ها محدود کنید. بیایید مطمئن شویم که بعد از پرداخت اجاره، برنامه پرداخت اجاره رو به ما یاد اوری نکند.

$ task 7 until:eoy
Modified 1 task.

در اینجا یک گزارش تکرار شونده است که به شما فقط وظایف با این سبک (با قابلیت تکرار) را نمایش می‌دهد.

$ task recurring

ID Project Pri Due        Recur   Active Age  Description
-- ------- --- ---------- ------- ------ ---- --------------------------------
 9 home        10/31/2010 monthly        1 hr Pay rent at the end of the month

1 task

برای توضیح این مرحله، یک وظیفه سالیانه را برای پرداخت مالیات‌ها اضافه می‌کنم و زمان مقرر آن را به گذشته می‌برم؛ این کار باعث می‌شود که شکاف قبلی پر شود و یک مجموعه از وظایف مربوط به مالیت های پرداخت نشده ساخته شود.

$ task add Pay taxes due:4/15/2007 recur:yearly
Created task 10.
$ task long

ID Project Pri Added      Started Due        Recur   Countdown Age    Deps Tags Description
-- ------- --- ---------- ------- ---------- ------- --------- ------ ---- ---- ------------------------------------
11             10/16/2010         4/15/2007   yearly   3.5 yrs 2 secs           Pay taxes
12             10/16/2010         4/15/2008   yearly   2.5 yrs 2 secs           Pay taxes
13             10/16/2010         4/15/2009   yearly   1.5 yrs 2 secs           Pay taxes
14             10/16/2010         4/15/2010   yearly    6 mths 2 secs           Pay taxes
 2 party   H   10/16/2010         10/17/2010           -11 hrs  2 hrs           Select and book a venue
                                                                                2010/10/16 11:20 Started task
                                                                                2010/10/16 11:21 Stopped task
 5 party   H   10/16/2010         10/22/2010           -5 days  2 hrs      mall Design invitations
 1 party   H   10/16/2010         10/31/2010            -2 wks  2 hrs           Select a free weekend in November
                                                                                2010/10/16 00:00 the 13th looks good
 9 home        10/16/2010         10/31/2010 monthly    -2 wks   1 hr           Pay rent at the end of the month
15             10/16/2010         4/15/2011   yearly   -5 mths 2 secs           Pay taxes
 8             10/16/2010                                        1 hr           Select some Music for after dinner
 3 party       10/16/2010                                       2 hrs           Mail invitations
 4 party       10/16/2010                                       2 hrs           Select a caterer
 6 party       10/16/2010                                       2 hrs      mall Print invitations

13 tasks

پاک کردن یک وظیفه تکرار شونده، به صورت بالارونده همه وظایف مربوط به آن را پاک می‌کند.

$ task 11 delete
Permanently delete task 11 'Pay taxes'? (y/n) y
This is a recurring task.  Do you want to delete all pending recurrences of this same task? (y/n) y
Deleting recurring task 10 'Pay taxes'.
Deleting recurring task 11 'Pay taxes'.
Deleting recurring task 12 'Pay taxes'.
Deleting recurring task 13 'Pay taxes'.
Deleting recurring task 14 'Pay taxes'.
Deleting recurring task 15 'Pay taxes'.

پوسته (shell) شما میتوانید از دستور shell برای ساخت یک محیط هم‌جانبه استفاده کنید. هر دستور که شما در خارج از شل اجرا می‌کنید، میتواند در داخل آن هم اجرا شود بدون اینکه نیازی به نوشتن دوباره task در اول آن باشد.

$ task shell
task 1.9.3 shell

Enter any task command (such as 'list'), or hit 'Enter'.  There is no need to include the 'task' command itself.  <br />
Enter 'quit' to end the session.

task>
task> projects

Project Tasks Pri:None Pri:L Pri:M Pri:H
------- ----- -------- ----- ----- -----
            7        7     0     0     0
home        2        2     0     0     0
party       6        3     0     0     3

3 projects (15 tasks)
task> tags

Tag  Count
mall     2

1 tag (15 tasks)
task> list

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 2 party   H   10/17/2010        2 hrs Select and book a venue
                                       2010/10/16 11:20 Started task
                                       2010/10/16 11:21 Stopped task
 5 party   H   10/22/2010        2 hrs Design invitations
 1 party   H   10/31/2010        2 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 9 home        10/31/2010         1 hr Pay rent at the end of the month
 8                                1 hr Select some Music for after dinner
 3 party                         2 hrs Mail invitations
 4 party                         2 hrs Select a caterer
 6 party                         2 hrs Print invitations

8 tasks
task> quit

شما برچسب ها را دیدد اما هنوز برچسب‌های مخصوص را نه؛ آن‌ها به صورت منحصر به فردی بر روی وظایف تأثیر می‌گذارند. nocolor یک برچسب مخصوص است که باعث می‌شود نقش رنگ‌ها نادیده گرفته شود.

$ task 6 +nocolor
Modified 1 task.

Special tags are highlighted by the 'tags' command.

$ task tags

Tag     Count
------- -----
mall        2
nocolor     1

2 tags (9 tasks)

همچنین برچسب های مخصوص دیگری هم وجود دارد، مثل nonag که از ایجاد پیغام های نق نقو (حوصله سر بر) زمانی که شما در حال انجام کاری با الویت پایینی هستید و کارهای مهم تری وجود دارد جلوگیری می‌کند.

$ task 6 -nocolor
Modified 1 task.

انتظار

زمانی که شما یک وظیفه با زمان مشخص در آینده دارید می‌توانید آنها را از لیست وظایف خود تا زمان خاصی مخفی کنید.

$ task add Look for new apartment due:eoy
Created task 10.

شما میتوانید یک زمان انتظار برای وظیفه در نظر بگیرید در این صورت وظیفه تا روز مقرر مخفی باقی می‌ماند. این وظیفه دیگر باعث شلوغ شدن لیست وظایف روزانه شما نخواهد شد ولی هنوز وجود دارد و اگر شما از waiting استفاده کنید می‌توانید آن را با جزئیات مربوط به خودش پیدا کنید، زمانی که روز تعیین شده فرا برسد وظیفه به صورت خودکار به لیست شما اضافه می‌شود و شما می‌توانید به راحتی آن را درکنار وظایف دیگر مشاهده کنید.

$ task 10 wait:12/1/2010
Modified 1 task.
$ task list

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 2 party   H   10/17/2010        2 hrs Select and book a venue
                                       2010/10/16 11:20 Started task
                                       2010/10/16 11:21 Stopped task
 5 party   H   10/22/2010        2 hrs Design invitations
 1 party   H   10/31/2010        2 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 9 home        10/31/2010        2 hrs Pay rent at the end of the month
 8                                1 hr Select some Music for after dinner
 3 party                         2 hrs Mail invitations
 4 party                         2 hrs Select a caterer
 6 party                         2 hrs Print invitations

8 tasks
$ task waiting

ID Project Pri Wait      Age   Description
-- ------- --- --------- ----- ----------------------
10             12/1/2010 1 min Look for new apartment

1 task

برای توضیح یک انتظار ۵ ثانیه‌ای برای یک وظیفه تعیین می‌کنم.

$ task add Do something in a few seconds
Created task 11.
$ task 11 wait:5s
Modified 1 task.
$ task list

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 2 party   H   10/17/2010        2 hrs Select and book a venue
                                       2010/10/16 11:20 Started task
                                       2010/10/16 11:21 Stopped task
 5 party   H   10/22/2010        2 hrs Design invitations
 1 party   H   10/31/2010        2 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 9 home        10/31/2010        2 hrs Pay rent at the end of the month
 8                                1 hr Select some Music for after dinner
 3 party                         2 hrs Mail invitations
 4 party                         2 hrs Select a caterer
 6 party                         2 hrs Print invitations

8 tasks

خب الان ۵ ثانیه گذشته، دومرتبه دستور لیست کردن وظایف را اجرا می‌کنم.

$ task list

ID Project Pri Due        Active Age     Description
-- ------- --- ---------- ------ ------- ------------------------------------
 2 party   H   10/17/2010          2 hrs Select and book a venue
                                         2010/10/16 11:20 Started task
                                         2010/10/16 11:21 Stopped task
 5 party   H   10/22/2010          2 hrs Design invitations
 1 party   H   10/31/2010          2 hrs Select a free weekend in November
                                         2010/10/16 00:00 the 13th looks good
 9 home        10/31/2010          2 hrs Pay rent at the end of the month
 8                                  1 hr Select some Music for after dinner
11                               18 secs Do something in a few seconds
 3 party                           2 hrs Mail invitations
 4 party                           2 hrs Select a caterer
 6 party                           2 hrs Print invitations

9 tasks

می‌بینیم که به لیست اصلی برگشته، خب کافیه حذفش کنم :)

$ task 11 rc.confirmation:no delete
Deleting task 11 'Do something in a few seconds'.

وابستگیها

Taskwarrior وابستگی ها را پشتیبانی می‌کند. اجازه دهید نگاهی به برنامه میهمانی بیندازیم و وابستگی‌ها را تعیین کنیم.

$ task list pro:party

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 2 party   H   10/17/2010        3 hrs Select and book a venue
                                       2010/10/16 11:20 Started task
                                       2010/10/16 11:21 Stopped task
 5 party   H   10/22/2010        3 hrs Design invitations
 1 party   H   10/31/2010        3 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 3 party                         3 hrs Mail invitations
 4 party                         3 hrs Select a caterer
 6 party                         3 hrs Print invitations

6 tasks

اجازه بدهید!!! من نمی‌توانم دعوتنامه‌ها را قبل از اینکه چاپ کنم، پست کنم. در نتیجه باید پست کردن دعوت نامه‌ها پیش نیازش چاپ کردن آنها باشد.

$ task 3 depends:6
Modified 1 task.

خب من نمی‌توانم آن‌ها را قبل از طراحی چاپ کنم در نیتجه چاپ کردن آن‌ها وابسته به طراحی آنهاست.

$ task 6 dep:5
Modified 1 task.

قبل از انتخاب محل برای میهمانی باید یک آخر هفته را هم مشخص کنم.

$ task 2 dep:1
Modified 1 task.

طراحی دعوتنامه‌ها به محل برگزاری میهمانی و همچنین آخر هفته‌ای که قرار میهمانی برگزار شود بستگی دارد درنتیجه:

$ task 5 dep:1,2
Modified 1 task.

و سورسات‌چی باید از محل برگزاری میهمانی اطلاع داشته باشد.

$ task 4 dep:1
Modified 1 task.

بیایید یک نگاهی به وظایف بندازیم، همه وظایف به غیر از وظیفه یک بسته شده است!

$ task long pro:party

ID Project Pri Added      Started Due        Recur Countdown Age   Deps Tags Description
-- ------- --- ---------- ------- ---------- ----- --------- ----- ---- ---- ------------------------------------
 2 party   H   10/16/2010         10/17/2010         -10 hrs 3 hrs 1         Select and book a venue
                                                                             2010/10/16 11:20 Started task
                                                                             2010/10/16 11:21 Stopped task
 5 party   H   10/16/2010         10/22/2010         -5 days 3 hrs 1,2  mall Design invitations
 1 party   H   10/16/2010         10/31/2010          -2 wks 3 hrs           Select a free weekend in November
                                                                             2010/10/16 00:00 the 13th looks good
 3 party       10/16/2010                                    3 hrs 6         Mail invitations
 4 party       10/16/2010                                    3 hrs 1         Select a caterer
 6 party       10/16/2010                                    3 hrs 5    mall Print invitations

6 tasks

هوووم. این وظیفه دو پیش نیاز دارد؟

$ task 5 dep:-1
Modified 1 task.

شما میتوانید با این دستور وظایف بسته شده را ملاحظه بفرمائید.

$ task blocked

ID Deps Project Pri Due        Active Age   Description
-- ---- ------- --- ---------- ------ ----- -----------------------------
 2 1    party   H   10/17/2010        3 hrs Select and book a venue
                                            2010/10/16 11:20 Started task
                                            2010/10/16 11:21 Stopped task
 5 2    party   H   10/22/2010        3 hrs Design invitations
 3 6    party                         3 hrs Mail invitations
 4 1    party                         3 hrs Select a caterer
 6 5    party                         3 hrs Print invitations

5 tasks
$ task unblocked

ID Deps Project Pri Due        Active Age   Description
-- ---- ------- --- ---------- ------ ----- ------------------------------------
 1      party   H   10/31/2010        3 hrs Select a free weekend in November
                                            2010/10/16 00:00 the 13th looks good
 9      home        10/31/2010        3 hrs Pay rent at the end of the month
 8                                    3 hrs Select some Music for after dinner

3 tasks

و با این دستور وظایف بسته نشده را

$ task blocked

ID Deps Project Pri Due        Active Age   Description
-- ---- ------- --- ---------- ------ ----- -----------------------------
 2 1    party   H   10/17/2010        3 hrs Select and book a venue
                                            2010/10/16 11:20 Started task
                                            2010/10/16 11:21 Stopped task
 5 2    party   H   10/22/2010        3 hrs Design invitations
 3 6    party                         3 hrs Mail invitations
 4 1    party                         3 hrs Select a caterer
 6 5    party                         3 hrs Print invitations

5 tasks
$ task unblocked

ID Deps Project Pri Due        Active Age   Description
-- ---- ------- --- ---------- ------ ----- ------------------------------------
 1      party   H   10/31/2010        3 hrs Select a free weekend in November
                                            2010/10/16 00:00 the 13th looks good
 9      home        10/31/2010        3 hrs Pay rent at the end of the month
 8                                    3 hrs Select some Music for after dinner

3 tasks

اگر دقیق‌تر به وظیفه ۱ نگاه کنید، می‌بینید که این وظیفه، وظایف ۲ و ۴ را بسته است.

$ task 1 info

Name                  Value
--------------------- ------------------------------------
ID                    1
Description           Select a free weekend in November
                      2010/10/16 00:00 the 13th looks good
Status                Pending
Project               party
Priority              H
This task is blocking 2 Select and book a venue
                      4 Select a caterer
Due                   10/31/2010
UUID                  3a6881bb-628b-4f90-93d7-4da563b83d54
Entered               10/16/2010 (3 hrs)

و اگر به وظیفه ۲ نگاهی بیندازیم میبینیم که توسط وظیفه ۱ بسته شده و همچنین وظیفه ۵ توسط شماره ۲.

$ task 2 info

Name                  Value
--------------------- ------------------------------------
ID                    2
Description           Select and book a venue
                      2010/10/16 11:20 Started task
                      2010/10/16 11:21 Stopped task
Status                Pending
Project               party
Priority              H
This task blocked by  1 Select a free weekend in November
This task is blocking 5 Design invitations
Due                   10/17/2010
UUID                  773c2b02-919e-4527-95f0-814c19dd198a
Entered               10/16/2010 (3 hrs)

این چیزیست که ما آن را زنجیر وابستگی می‌نامیم؛ که یک رشته از وظایفی‌ست که به هم ارتباط دارند، نه فقط بر اساس برنامه بلکه بر اساس وابستگی‌ها. اکنون ما می‌فهمیم که وظیفه ۱ ابتدا باید انجام شود؛ اما شما ممکن است هنوز از قوانین تخطی کنید. اگر می‌خواهید این کار را انجام دهید وظیفه ۲ را کامل کنید و ببینید چه اتفاقی می‌افتد. Taskwarrior می‌فهمد که چه کاری انجام می‌دهید و پیشنهاد می‌کند که زنجیر وابستگی را نسبت به کاری که انجام داده اید تصحیح کنید.

$ task 2 done

Task 2 is blocked by:
  1 Select a free weekend in November
and is blocking:
  5 Design invitations
Would you like the dependency chain fixed? (y/n) y
Completed 2 'Select and book a venue'.
Project 'party' is 12% complete (7 of 8 tasks remaining).
Marked 1 task as done.
$ task 1 info

Name                  Value
--------------------- ------------------------------------
ID                    1
Description           Select a free weekend in November
                      2010/10/16 00:00 the 13th looks good
Status                Pending
Project               party
Priority              H
This task is blocking 4 Select a caterer
                      5 Design invitations
Due                   10/31/2010
UUID                  3a6881bb-628b-4f90-93d7-4da563b83d54
Entered               10/16/2010 (3 hrs)

گزارشات

Taskwarrior گزارشات فراوان و کارایی دارد. در اینجا یک گزارش با اطلاعات کمینه را مشاهده می‌کنید

$ task minimal

ID Project Description
-- ------- ------------------------------------
 7         Select some Music for after dinner
 8 home    Pay rent at the end of the month
 4 party   Design invitations
 2 party   Mail invitations
 5 party   Print invitations
 3 party   Select a caterer
 1 party   Select a free weekend in November
           2010/10/16 00:00 the 13th looks good

این هم یک گزارش پایه‌ای

$ task ls

ID Project Pri Description
-- ------- --- ------------------------------------
 1 party   H   Select a free weekend in November
               2010/10/16 00:00 the 13th looks good
 4 party   H   Design invitations
 7             Select some Music for after dinner
 8 home        Pay rent at the end of the month
 2 party       Mail invitations
 3 party       Select a caterer
 5 party       Print invitations

و اینجا هم گزارشات عمومی

$ task list

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 4 party   H   10/22/2010        5 hrs Design invitations
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 8 home        10/31/2010        5 hrs Pay rent at the end of the month
 7                               5 hrs Select some Music for after dinner
 2 party                         5 hrs Mail invitations
 3 party                         5 hrs Select a caterer
 5 party                         5 hrs Print invitations

اینجا گزارشات به همراه اغلب اطلاعات

$ task long

ID Project Pri Added      Started Due        Recur   Countdown Age   Deps Tags Description
-- ------- --- ---------- ------- ---------- ------- --------- ----- ---- ---- ------------------------------------
 4 party   H   10/16/2010         10/22/2010           -5 days 5 hrs 1    mall Design invitations
 1 party   H   10/16/2010         10/31/2010            -2 wks 6 hrs           Select a free weekend in November
                                                                               2010/10/16 00:00 the 13th looks good
 8 home        10/16/2010         10/31/2010 monthly    -2 wks 5 hrs           Pay rent at the end of the month
 7             10/16/2010                                      5 hrs           Select some Music for after dinner
 2 party       10/16/2010                                      5 hrs 5         Mail invitations
 3 party       10/16/2010                                      5 hrs 1         Select a caterer
 5 party       10/16/2010                                      5 hrs 4    mall Print invitations

این گزارش هم شامل تمام وظایف می‌شود، چه قدمی چه تازه

$ task all

ID Project Pri Due        Completed  Active Age   Description
-- ------- --- ---------- ---------- ------ ----- ------------------------------------
 9             12/31/2010                   3 hrs Look for new apartment
 7                                          5 hrs Select some Music for after dinner
 -                        10/16/2010        6 hrs Come up with a guest list
 -                        10/16/2010        5 hrs Order a special cake
 6 home        10/31/2010                   5 hrs Pay rent at the end of the month
 8 home        10/31/2010                   5 hrs Pay rent at the end of the month
 - party   H   10/17/2010 10/16/2010        6 hrs Select and book a venue
                                                  2010/10/16 11:20 Started task
                                                  2010/10/16 11:21 Stopped task
 4 party   H   10/22/2010                   5 hrs Design invitations
 1 party   H   10/31/2010                   6 hrs Select a free weekend in November
                                                  2010/10/16 00:00 the 13th looks good
 2 party                                    6 hrs Mail invitations
 5 party                                    5 hrs Print invitations
 3 party                                    6 hrs Select a caterer

این گزارش کارهای کامل شده را نمایش می‌دهد

$ task completed

Complete   Project Pri Age   Description
---------- ------- --- ----- -----------------------------
10/16/2010 party   H   6 hrs Select and book a venue
                             2010/10/16 11:20 Started task
                             2010/10/16 11:21 Stopped task
10/16/2010             6 hrs Come up with a guest list
10/16/2010             5 hrs Order a special cake

این هم کارهای تکرار شونده را نمایش می‌دهد

$ task recurring

ID Project Pri Due        Recur   Active Age   Description
-- ------- --- ---------- ------- ------ ----- --------------------------------
 8 home        10/31/2010 monthly        5 hrs Pay rent at the end of the month

این گزارش تمام وظایف در انتظار نمایش را نشان می‌دهد

$ task waiting

ID Project Pri Wait      Age   Description
-- ------- --- --------- ----- ----------------------
 9             12/1/2010 3 hrs Look for new apartment

این دستور هم نشان دهنده وظایفیست که با توجه به وابستگی‌هایشان بسته شده‌اند


$ task blocked

ID Deps Project Pri Due        Active Age   Description
-- ---- ------- --- ---------- ------ ----- ------------------
 4 1    party   H   10/22/2010        5 hrs Design invitations
 2 5    party                         6 hrs Mail invitations
 3 1    party                         6 hrs Select a caterer
 5 4    party                         5 hrs Print invitations

و این هم گزارش وظایفی که بوسیله هیچ وابستگی بسته نشده‌اند

$ task unblocked

ID Deps Project Pri Due        Active Age   Description
-- ---- ------- --- ---------- ------ ----- ------------------------------------
 1      party   H   10/31/2010        6 hrs Select a free weekend in November
                                            2010/10/16 00:00 the 13th looks good
 8      home        10/31/2010        5 hrs Pay rent at the end of the month
 7                                    5 hrs Select some Music for after dinner

و این دستور کهنه‌ترین وظایف را به نمایش می‌گزارد

$ task oldest limit:3

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 2 party                         6 hrs Mail invitations
 3 party                         6 hrs Select a caterer

اینجا هم تازه ترین واظیف را مشاهده می‌کنیم

$ task newest limit:3

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ----------------------------------
 8 home        10/31/2010        5 hrs Pay rent at the end of the month
 7                               5 hrs Select some Music for after dinner
 5 party                         6 hrs Print invitations

این گزارش نمایش دهنده وظایف کامل شده و شروع شده در هفته است.


$ task timesheet

10/10/2010 - 10/16/2010
  Completed (3 tasks)
    Project Due        Description
                       Come up with a guest list
                       Order a special cake
    party   10/17/2010 Select and book a venue
                       2010/10/16 11:20 Started task
                       2010/10/16 11:21 Stopped task

  Started (0 tasks)

و "من در ادامه باید چه کاری بکنم؟"، این گزارش خیلی مفید است چون یک سری وظایف با الویت بالا را از تمام برنامه‌ها به بیرون می‌کشد.

$ task next

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 8 home        10/31/2010        5 hrs Pay rent at the end of the month
 7                               5 hrs Select some Music for after dinner

گزارشات سفارشی

شما حتی می‌توانید گزارشات سفارشی هم داشته باشید. بیایید یک گزارش سفارشی را بسازیم. ما اسمش رو می‌گزاریم foo ، می‌توانیم این گزارش را از لیست بلند دستوراتی که گزارشات را به نمایش می‌گذارند انتخاب کنیم اما من می‌خواهم آن دستور ،ID تاریخی که وظیفه را اضافه کردم به علاوه توضیحات، را به نمایش بگذارد. من می‌توانم برای ستون‌ها لیبل انتخاب کنم، گزارشات را دسته‌بندی کنم و از فیلتر استفاده کنم.

$ cat >> ~/.taskrc
report.foo.description=My own report
report.foo.columns=id,entry,description
report.foo.labels=ID,Entered,Description
report.foo.sort=entry+,description+
report.foo.filter=status:pending
^D

گزارش سفارشی شده همچنین میتونه در خروجی کمک (=help) نشان داده شود.

$ task help | grep foo
       task foo [tags] [attrs] desc...            My own report

من می‌توانم نتظیمات را بازبینی کنم.

$ task show report.foo

Config variable        Value
---------------------- ----------------------
report.foo.columns     id,entry,description
report.foo.description My own report
report.foo.filter      status:pending
report.foo.labels      ID,Entered,Description
report.foo.sort        entry+,description+
+

و این گزارشات مانند بقیه به راحتی می‌توانند با یک دستور ساده به نمایش در آیند.

$ task foo

ID Entered    Description
-- ---------- ------------------------------------
 4 10/16/2010 Design invitations
 2 10/16/2010 Mail invitations
 8 10/16/2010 Pay rent at the end of the month
 5 10/16/2010 Print invitations
 3 10/16/2010 Select a caterer
 1 10/16/2010 Select a free weekend in November
              2010/10/16 00:00 the 13th looks good
 7 10/16/2010 Select some Music for after dinner

7 tasks

نمودارها

گزارش عملکرد به ما جمع وظایف اضافه شده کامل شده و پاک شده‌ی ماهیانه را می‌دهد. همچنین یک نسخه سالانه برای دریافت این گزارشات وجود دارد.

$ task history

Year Month   Added Completed Deleted Net
---- ------- ----- --------- ------- ---
2010 October    19         3       7   9

     Average    19         3       7   9

$ task history.annual

Year    Added Completed Deleted Net
------- ----- --------- ------- ---
2010       19         3       7   9

Average    19         3       7   9

نسخه گزارش گرافیکی ماهیانه و سالانه هم وجود دارد [این نمودارد ها در صفحه man نمایش داده نمی‌شوند].

$ task ghistory
...
$ task ghistory.annual
...

یک چکیده از گزارشات که روند کار در پروژه‌ها را مشخص می‌سازد نیز وجود دارد.

$ task summary

Project Remaining Avg age Complete 0%                        100%
------- --------- ------- -------- ------------------------------
(none)          2 59 mins      50% ===============
home            1   3 hrs       0%
party           5   6 hrs      16% =====

3 projects

فیلتر های حرفه‌ای

فیلتر یک سیستم فوق‌العاده قویی است. در اینجا ما لیست فیلتر نشده را داریم که تمام وظایف را به نمایش می‌گذارد.

$ task list

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 4 party   H   10/22/2010        6 hrs Design invitations
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 8 home        10/31/2010        6 hrs Pay rent at the end of the month
 7                               6 hrs Select some Music for after dinner
 2 party                         6 hrs Mail invitations
 3 party                         6 hrs Select a caterer
 5 party                         6 hrs Print invitations

7 tasks

اکنون دوباره لیست را مشاهده میکنیم ولی اینبار آن‌هایی که شامل متن 'invit' می‌شوند.

$ task list invit

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------
 4 party   H   10/22/2010        6 hrs Design invitations
 2 party                         6 hrs Mail invitations
 5 party                         6 hrs Print invitations

3 tasks

این دقیقا برابر است با استفاده از معرف‌های خاص. در این مثال من شرح‌‌هایی که شامل کلمه‌های تکه تکه می‌شوند را فیلتر میکنم. اینجا از معرف 'contains' استفاده می‌کنم ولی نمونه های زیاد دیگری نیز وجود دارد.

$ task list description.contains:invit

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------
 4 party   H   10/22/2010        6 hrs Design invitations
 2 party                         6 hrs Mail invitations
 5 party                         6 hrs Print invitations

3 tasks

تمام وظایفی که کلمه «the » را شامل می‌شود‌، می‌بینید چطور حاشیه‌نویسی‌ها هم جستجو شده‌اند‌؟

$ task list desc.word:the

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 8 home        10/31/2010        6 hrs Pay rent at the end of the month

2 tasks

اینجا لیستی از تمام وظایفی است که تمام کلمه «invitations» را شامل نمی‌شوند‌.

$ task list desc.noword:invitations

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good
 8 home        10/31/2010        6 hrs Pay rent at the end of the month
 7                               6 hrs Select some Music for after dinner
 3 party                         6 hrs Select a caterer

4 tasks
اینجا تمامی وظایف پروژه‌‌ی پارتی و مجموع معادل‌هایشان‌ لیست شده‌اند‌. در اینجا لیست وظایفی که در برنامه 'party' نیستند را مشاهده می‌کنید، همچینین می‌توانیم از 'isnt' استفاده کنیم. مترادف‌های مختلفی برای اصلاح وجود دارد که فیلتر می‌تواند نوشته شود و به صورت طبیعی خوانده شود. ( there are several synonyms for modifiers, so that the
$ task list pro:party
$ task list pro.is:party
$ task list pro.not:party

در اینجا معرف «over» اولویت‌هایی که در دسته‌ی بالاتر از «low» دسته‌بندی شده‌اند را فیلتر می‌کند‌، و همچنین فیلتر را بر روی پروژه‌ی پارتی انجام می‌دهد‌. در اینجا دو شرط برای این فیلتر وجود دارد‌. هم بایستی از نظر الویت دارای سطحی بالاتر از «low» باشد و هم بایستی در برنامه «party» قرار داشته باشد.

$ task list pro:party pri.over:L

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 4 party   H   10/22/2010        6 hrs Design invitations
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good

2 tasks

دوباره همانطور‌، اما فقط دو وظیفه اول را به من نشان می‌دهد. حالا همه‌ی وظایف، اما فقط صفحه‌ی اول از آنها را نشان می‌دهد. من در اینجا یک صفحه‌ی پر از وظیفه ندارم‌؛ شما منظورم را خواهید فهمید‌.

$ task list pro:party limit:2

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 4 party   H   10/22/2010        6 hrs Design invitations
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good

2 tasks, 2 shown
$ task list limit:page

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
 4 party   H   10/22/2010        6 hrs Design invitations
 1 party   H   10/31/2010        6 hrs Select a free weekend in November
                                       2010/10/16 00:00 the 13th looks good

2 tasks

حالا می‌توانید ببینید که تعدادی از گزارشات توکار، کار می‌کنند. 'list' فقط وظایفی را گزارش می‌کند که فیلتر شده، در نتیجه تنها وظایف در انتظار نمایش داده می‌شوند.

$ task all status:pending
...

گزارش 'waiting' هم به طور مشابه مشخص می‌شود‌.

$ task all status:waiting
...

وارد کردن و خارج کردن اطلاعات

شما می‌توانید تمام وظایف را خارج کنید. در اینجا مشاهده می‌کنید که ما چگونه آنها را با فرمت CSV خارج می‌کنیم.

$ task export.csv
\'uuid','status','tags','entry','start','due','recur','end','project','priority','fg','bg','description'
\'3a6881bb-628b-4f90-93d7-4da563b83d54','pending','',1287237300,,1288497600,,,'party','H',,,'Select a free weekend <br />
in November'
\'4a1de9aa-9b00-41ec-8d00-e0d0131e0e0d','pending','',1287237365,,,,,'party',,,,'Mail invitations'
\'2a65e922-ff18-4db1-b867-dbe745b9626a','pending','',1287237372,,,,,'party',,,,'Select a caterer'
...

بیایید فقط یک وظیفه را به فرمت CSV صادر کنیم.

$ task export.csv venue
\'uuid','status','tags','entry','start','due','recur','end','project','priority','fg','bg','description'
\'773c2b02-919e-4527-95f0-814c19dd198a','completed','',1287237350,,1287288000,,1287250285,'party',<br />
'H',,,'Select and book a venue'

یا به فرمت VCalendar

$ task export.vcalendar venue
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//GBF//task 1.9.3.beta1//EN
BEGIN:VTODO
UID:773c2b02-919e-4527-95f0-814c19dd198a
DTSTAMP:20101016T135550Z
DUE:20101017T040000Z
COMPLETED:20101016T173125Z
SUMMARY:Select and book a venue
CLASS:PRIVATE
PRIORITY:1
STATUS:COMPLETED
COMMENT:Started task
COMMENT:Stopped task
END:VTODO
END:VCALENDAR

یا YAML

$ task export.yaml venue
%YAML 1.1
---
  task:
    depends: 3a6881bb-628b-4f90-93d7-4da563b83d54
    description: Select and book a venue
    due: 1287288000
    end: 1287250285
    entry: 1287237350
    priority: H
    project: party
    status: completed
    uuid: 773c2b02-919e-4527-95f0-814c19dd198a
    annotation:
      entry: 1287242411
      description: Started task
    annotation:
      entry: 1287242506
      description: Stopped task
...

من همچنین می‌توانم اطلاعات را وارد کنم. در اینجا خطوط ساده‌ای را از طریق یک متن وارد می‌کنم، Taskwarrior فرمت را با توجه به محتویات داخل فایل و حدس زدن آن تشخیص می‌دهد و سپس تأیید می‌کند.

$ cat file.text
Remember to read the task man page
$ task import file.text
This looks like a text file with one task per line.  Okay to proceed? (y/n) y
Imported 1 tasks successfully, with 0 errors.

در اینجا مثال YAML را داریم. Taskwarrior می‌تواند چندین فرمت شامل نسخه‌های گذشته از دیتا فایل‌های خودش را بخواند. با استفاده از YAML شما می‌توانید اطلاعات را رفت و برگشت کنید بدون اینکه از دستشان بدهید. به این معنی که شما میتوانید آن ها را بدون از دست دادن و سوخت شدن اطلاعات وارد یا خارج کنید. این همچنین به این معنیست که 'export.yaml' راه خوبی برای ساخت یک پشتیبان از وظایف شماست.

$ cat file.yaml
%YAML 1.1
---
  task:
    description: Visit http://taskwarrior.org
    due: 1281844800
    entry: 1281289630
    priority: H
    project: work
    status: pending
    uuid: 23afada0-a446-8d5a-c213-30d99d52c4b0
...
$ task import file.yaml
This looks like a YAML file.  Okay to proceed? (y/n) y
Imported 1 tasks successfully.

اینجا وظایف وارد شده را مشاهده می‌کنید

$ task new limit:2

ID Project Pri Due        Active Age   Description
-- ------- --- ---------- ------ ----- ------------------------------------
11 work    H   8/15/2010         9 wks Visit http://taskwarrior.org
10                               1 min Remember to read the task man page

9 tasks, 2 shown

کمک

شما با دستور 'help' یک صفحه آموزش سریعِ توکار را خواهید یافت یا شاید هم بخواهید نگاهی به صفحات man نصب شده بیاندازید‌.

$ task help
...

Shahinism ‏۲۲ اوت ۲۰۱۱، ساعت ۱۴:۲۲ (UTC)
Eman ‏۲۲ اوت ۲۰۱۱، ساعت ۱۵:۱۶ (UTC)

ابزارهای شخصی
گویش‌ها
فضاهای نام
عملکردها
گشتن
کتاب‌ها
مقاله‌ها
جعبه‌ابزار