| task(1) | User Manuals | task(1) |
نام (NAME)
task - مدیر کارهای روزمره در خط فرمان
خلاصه دستور (SYNOPSIS)
task <filter> <command> [ <mods> |
<args> ]
task --help
task --version
توضیحات (DESCRIPTION)
برنامهٔ Taskwarrior یک مدیر فهرست کارهای روزمره (todo) در خط فرمان است. این ابزار فهرستی از کارهایی را که میخواهید انجام دهید نگهداری میکند و امکان افزودن، حذف و سایر ویرایشها روی آنها را فراهم میسازد. Taskwarrior دارای مجموعهٔ غنی از زیردستورها است که امکان انجام کارهای گوناگون را با آن مهیا میکند.
در بطن خود، Taskwarrior یک برنامهٔ پردازش فهرست است. شما متن و پارامترهای مرتبط دیگر را اضافه میکنید و اطلاعات را به شکلی مناسب بازنمایش میدهید. هنگامی که تاریخ سررسید و تکرار را اضافه میکنید، به یک برنامهٔ فهرست کارها تبدیل میشود. با افزودن اولویتها، برچسبها (توصیفکنندههای تککلمهای)، گروههای پروژه و غیره، به یک برنامهٔ سازمانیافته برای مدیریت کارهای روزمره تبدیل میگردد.
فیلتر (FILTER)
بخش <filter> شامل صفر یا چند معیار جستجو است که کارها را انتخاب میکنند. برای نمونه، جهت فهرست کردن تمام کارهای معوق متعلق به پروژهٔ 'Home':
task project:Home list
میتوانید چند عبارت فیلتر را مشخص کنید که هر یک نتیجه را بیش از پیش محدود میکند:
task project:Home +weekend garden list
این مثال سه فیلتر را اعمال میکند: پروژهٔ 'Home'، برچسب 'weekend'، و اینکه توضیحات یا یادداشتها باید حاوی توالی نویسههای 'garden' باشند. در این مثال، 'garden' به عنوان یک میانبر مناسب، در درون برنامه به شکل زیر ترجمه میشود:
description.contains:garden
در اینجا 'contains' یک اصلاحکنندهٔ ویژگی (attribute modifier) است که برای اعمال کنترل بیشتر بر روی فیلتر (فراتر از وجود یا عدم وجود ساده) به کار میرود. بخش 'ATTRIBUTE MODIFIERS' در زیر را برای فهرست کاملی از اصلاحکنندهها ببینید.
توجه داشته باشید که یک فیلتر میتواند هیچ عبارتی نداشته باشد، که این بدان معناست که دستور روی همهٔ کارها اعمال میشود. این حالت میتواند خطرناک باشد و تأیید این مورد خاص الزامی است و نمیتوان آن را نادیده گرفت. برای نمونه، این دستور:
task modify +work This command has no filter, and will modify all tasks. Are you sure? (yes/no)
برچسب 'work' را به همهٔ کارها اضافه خواهد کرد، اما تنها پس از تأیید.
مثالهای بیشتر از فیلتر:
task <command> <mods> task 28 <command> <mods> task +weekend <command> <mods> task +bills due.by:eom <command> <mods> task project:Home due.before:today <command> <mods> task ebeeab00-ccf8-464b-8b58-f7f2d606edfb <command> <mods>
بهطور پیشفرض عناصر فیلتر با عملگر ضمنی 'and' با یکدیگر ترکیب میشوند، اما در صورت استفاده از پرانتز، میتوان از 'or' و 'xor' نیز استفاده کرد:
task '( /[Cc]at|[Dd]og/ or /[0-9]+/ )' <command> <mods>
پرانتزها عبارت منطقی را از هر فیلتر پیشفرض دستور یا فیلتر ضمنی گزارش، که با یک 'and' ضمنی ترکیب میشدند، مجزا میسازد.
یک فیلتر میتواند کارهای خاصی را با استفاده از شمارههای شناسه (ID) یا UUID هدف قرار دهد. برای مشخص کردن چندین کار از یکی از این قالبها استفاده کنید (فهرستی از شمارههای ID، شمارههای UUID یا بازههای شناسه که با فاصله از هم جدا شدهاند):
task 1 2 3 delete task 1-3 info task 1 2-5 19 modify pri:H task 4-7 ebeeab00-ccf8-464b-8b58-f7f2d606edfb info
توجه داشته باشید که ممکن است فرار دادن صحیح (escape کردن) نویسههای ویژه و همچنین نقلقولها بهمنظور جلوگیری از تفسیر معانی خاص آنها در شل ضروری باشد. همچنین برای اطلاعات بیشتر، بخش 'SPECIFYING DESCRIPTIONS' را ببینید.
تغییرات (MODIFICATIONS)
بخش <mods> شامل صفر یا چند تغییر است که باید بر روی کارهای انتخابشده اعمال شوند، مانند:
task <filter> <command> project:Home task <filter> <command> +weekend +garden due:tomorrow task <filter> <command> Description/annotation text task <filter> <command> /from/to/ <- replace first match task <filter> <command> /from/to/g <- replace all matches
زیردستورها (SUBCOMMANDS)
Taskwarrior از انواع گوناگونی از دستورها پشتیبانی میکند. دستورهای خواندنی، دستورهای نوشتنی، دستورهای متفرقه و دستورهای کمکی اسکریپت وجود دارند. دستورهای خواندنی اجازهٔ تغییر دادن کارها را نمیدهند. دستورهای نوشتنی میتوانند تقریباً هر جنبهای از یک کار را تغییر دهند. دستورهای کمکی اسکریپت برای کمک به نوشتن اسکریپتهای افزونه ارائه شدهاند، برای نمونه تکمیل خودکار شل (تنها حداقل خروجی تولید میشود، مانند verbose=nothing). آن دسته از دستورها که صراحتاً تحت تأثیر context قرار میگیرند، با همین عنوان مشخص شدهاند..SH "زیردستورهای خواندن (READ SUBCOMMANDS)"
گزارشها زیردستورهای خواندن هستند. در حال حاضر چندین گزارش از پیش تعریفشده در Taskwarrior وجود دارد. رفتار خروجی و مرتبسازی این گزارشها را میتوان در فایل پیکربندی تنظیم کرد. همچنین به صفحه راهنمای taskrc(5) مراجعه کنید. زیردستورهای خواندن دیگری نیز وجود دارند که گزارش نیستند.
- task --help
- همان مستندات دستور و نحوه استفاده را مشابه دستور 'task help' نمایش میدهد.
- task --version
- این آرگومان خط فرمان برای اسکریپتهای افزونه در نظر گرفته شده است تا شماره نسخه یک Taskwarrior نصبشده را بدون فراخوانی سازوکارهایی که فایلهای پیشفرض را ایجاد میکنند، بررسی و تأیید کنند.
- task <filter>
- در صورت مشخص نشدن هیچ دستوری، دستور پیشفرض اجرا شده و فیلتر اعمال میشود.
- task <filter> active
- تمام وظایف منطبق بر فیلتر را که آغاز شدهاند اما هنوز کامل نشدهاند، نشان میدهد.
- task <filter> all
- تمام وظایف منطبق بر فیلتر، از جمله وظایف والدِ وظایف تکرارشونده را نشان میدهد.
- task <filter> blocked
- تمام وظایف منطبق بر فیلتر را که در حال حاضر توسط وظایف دیگر مسدود شدهاند، نشان میدهد.
- task <filter> blocking
- تمام وظایف منطبق بر فیلتر را که وظایف دیگر را مسدود میکنند، نشان میدهد.
- task <filter> burndown.daily
- یک نمودار سوختوساز (burndown) گرافیکی را به تفکیک روز نشان میدهد. از context تأثیر میپذیرد.
- task <filter> burndown.weekly
- یک نمودار سوختوساز گرافیکی را به تفکیک هفته نشان میدهد. توجه داشته باشید که 'burndown' یک نام مستعار برای گزارش 'burndown.weekly' است. از context تأثیر میپذیرد.
- task <filter> burndown.monthly
- یک نمودار سوختوساز گرافیکی را به تفکیک ماه نشان میدهد. از context تأثیر میپذیرد.
- task <filter> burndown.annual
- یک نمودار سوختوساز گرافیکی را به تفکیک سال نشان میدهد. از context تأثیر میپذیرد.
- task calendar [due|<month> <year>|<year>] [y]
- یک تقویم ماهانه همراه با علامتگذاری وظایف سررسیدشده را نشان میدهد. یک سطر افقی از ماهها را نمایش میدهد. اگر آرگومان 'y' ارائه شود، حداقل یک سال کامل را نشان خواهد داد. اگر یک سال مانند '2015' مشخص شود، کل آن سال نشان داده میشود. اگر هم ماه و هم سال مشخص شوند ('6 2015')، ماههای نمایشدادهشده از ماه و سال مشخصشده آغاز میشوند. اگر آرگومان 'due' ارائه شود، ماه آغازینِ نزدیکترین وظیفه دارای سررسید را نشان خواهد داد.
- task colors [<sample> | legend]
- تمام رنگهای ممکن، یک نمونه نامگذاریشده یا یک راهنمای علائم (legend) شامل تمام رنگهای تعریفشده فعلی را نمایش میدهد.
- task columns [<substring>]
- تمام ستونهای پشتیبانیشده و شیوههای قالببندی را نمایش میدهد. هنگام ایجاد گزارشهای سفارشی مفید است. اگر یک زیررشته ارائه شود، فقط نام ستونهای منطبق نشان داده میشوند.
- task commands
- تمام دستورهای پشتیبانیشده را همراه با برخی جزئیات مربوط به هر کدام نشان میدهد.
- task <filter> completed
- تمام وظایف منطبق بر فیلتر را که تکمیل شدهاند، نشان میدهد.
- task <filter> count
- تنها تعداد وظایف منطبق بر فیلتر را نمایش میدهد. از context تأثیر میپذیرد.
- task <filter> export
- تمام وظایف
را در قالب JSON
صادر
میکند. اگر
مایل به
ذخیره آن
هستید،
خروجی را به
یک فایل
هدایت
کنید، یا آن
را به دستور
یا اسکریپت
دیگری
لولهکشی (pipe)
کنید تا به
قالب دیگری
تبدیل شود.
این
اسکریپتهای
نمونه را به
صورت برخط
در https://taskwarrior.org/tools
خواهید
یافت:
export-csv.pl export-sql.py export-xml.py export-yaml.pl export-html.pl export-tsv.pl export-xml.rb export-ical.pl export-xml.pl export-yad.pl
- task <filter> ghistory.annual
- یک گزارش گرافیکی از وضعیت وظایف بر حسب سال نشان میدهد.
- task <filter> ghistory.monthly
- یک گزارش گرافیکی از وضعیت وظایف بر حسب ماه نشان میدهد. توجه داشته باشید که 'ghistory' یک نام مستعار برای 'ghistory.monthly' است.
- task <filter> ghistory.weekly
- یک گزارش گرافیکی از وضعیت وظایف بر حسب هفته نشان میدهد.
- task <filter> ghistory.daily
- یک گزارش گرافیکی از وضعیت وظایف بر حسب روز نشان میدهد.
- task help
- متن طولانی نحوه استفاده را نشان میدهد.
- task <filter> history.annual
- گزارشی از تاریخچه وظایف بر حسب سال را نشان میدهد. از context تأثیر میپذیرد.
- task <filter> history.monthly
- گزارشی از تاریخچه وظایف بر حسب ماه را نشان میدهد. توجه داشته باشید که 'history' یک نام مستعار برای 'history.monthly' است. از context تأثیر میپذیرد.
- task <filter> history.weekly
- گزارشی از تاریخچه وظایف بر حسب هفته را نشان میدهد. از context تأثیر میپذیرد.
- task <filter> history.daily
- گزارشی از تاریخچه وظایف بر حسب روز را نشان میدهد. از context تأثیر میپذیرد.
- task <filter> ids
- فیلتر را
اعمال
کرده، سپس
تنها
شناسههای
(ID) وظایف را
استخراج
میکند و
آنها را به
صورت یک
فهرست
جداشده با
فاصله
ارائه
میدهد. این
ویژگی به
عنوان
ورودی برای
یک دستور task
مفید است تا
این مورد
حاصل شود:
task $(task project:Home ids) modify priority:H
این مثال ابتدا شناسهها را برای فیلتر project:Home دریافت میکند، سپس اولویت را برای هر یک از آن وظایف به H تنظیم میکند. این کار به صورت مستقیم نیز قابل دستیابی است:
task project:Home modify priority:H
این دستور عمدتاً برای اسکریپتهای خارجی کاربرد دارد.
- task <filter> uuids
- فیلتر را
روی تمام
وظایف (حتی
وظایف
حذفشده و
تکمیلشده)
اعمال
کرده، سپس
تنها UUIDهای
وظایف را
استخراج
میکند و
آنها را به
صورت یک
فهرست
جداشده با
فاصله
ارائه
میدهد. این
ویژگی به
عنوان
ورودی برای
یک دستور task
جهت
دستیابی به
مورد زیر
مفید است:
task $(task project:Home status:completed uuids) modify status:pending
این مثال ابتدا UUIDها را برای فیلترهای project:Home و status:completed دریافت میکند، سپس وضعیت هر یک از آن وظایف را دوباره به pending (در انتظار) تغییر میدهد.
این دستور عمدتاً برای اسکریپتهای خارجی کاربرد دارد.
- task udas
- فهرستی از UDAهای تعریفشده را نشان میدهد، از جمله نام، نوع، برچسب و مقادیر مجاز آنها. همچنین میزان استفاده از UDA و هرگونه UDA بدون استفاده (orphan) را نشان میدهد.
- task <filter> information
- تمام دادهها و فرادادههای وظایف مشخصشده را نشان میدهد. این تنها راه نمایش تمامی جنبههای یک وظیفه مشخص، از جمله تاریخچه تغییرات است.
- task <filter> list
- یک فهرست استاندارد از وظایف منطبق بر فیلتر را ارائه میدهد.
- task <filter> long
- مفصلترین فهرست با تمام جزئیات از وظایف منطبق بر فیلتر را ارائه میدهد.
- task <filter> ls
- فهرست کوتاهی از وظایف منطبق بر فیلتر را ارائه میدهد..TP task <filter> minimal فهرستی حداقلی از کارهای منطبق با فیلتر را ارائه میدهد.
- task <filter> newest
- جدیدترین کارهای منطبق با فیلتر را نمایش میدهد.
- task <filter> next
- صفحهای از فوریترین کارها را نمایش میدهد که بر اساس فوریت (یک مقدار محاسبهشده) مرتب شدهاند.
- task <filter> ready
- صفحهای از فوریترین کارهای آماده را نمایش میدهد که بر اساس فوریت مرتب شده و کارهای آغازشده در اولویت قرار دارند. یک کار آماده، کاری است که یا زمانبندی نشده است، یا تاریخ زمانبندی آن سپری شده و در وضعیت انتظار نیست.
- task <filter> oldest
- قدیمیترین کارهای منطبق با فیلتر را نمایش میدهد.
- task <filter> overdue
- تمام کارهای ناتمام منطبق با فیلتر را که موعد انجام آنها گذشته است نمایش میدهد.
- task <filter> projects
- تمام نامهای پروژهای را که اکنون توسط کارهای معلق استفاده میشوند، به همراه تعداد کارهای هرکدام فهرست میکند. از context تأثیر میپذیرد.
- task <filter> recurring
- تمام کارهای تکرارشونده منطبق با فیلتر را نمایش میدهد.
- task <filter> unblocked
- تمام کارهای منطبق با فیلتر را که در حال حاضر توسط کارهای دیگر مسدود نشدهاند نمایش میدهد.
- task <filter> waiting
- تمام کارهای در انتظارِ منطبق با فیلتر را نمایش میدهد.
زیرفرمانهای نوشتن (WRITE SUBCOMMANDS)
- task add <mods>
- یک کار معلق جدید به فهرست کارها اضافه میکند. از context تنظیمشده فعلی تأثیر میپذیرد.
- task <filter> annotate <mods>
- یک یادداشت (annotation) به کاری موجود اضافه میکند.
- task <filter> append <mods>
- متن توضیحات را به انتهای یک کار موجود الحاق میکند.
- task <filter> delete <mods>
- کار مشخصشده را از فهرست کارها حذف میکند. از context تأثیر میپذیرد.
- task <filter> denotate <mods>
- یک یادداشت را از کار مشخصشده حذف میکند. اگر توضیحات ارائهشده دقیقاً با یک یادداشت مطابقت داشته باشد، یادداشت مربوطه حذف میشود. اگر توضیحات ارائهشده تا حدی با یادداشتها مطابقت داشته باشد، نخستین یادداشتی که مطابقت جزئی دارد حذف خواهد شد. از context تأثیر میپذیرد.
- task <filter> done <mods>
- کار مشخصشده را به عنوان انجامشده علامتگذاری میکند. از context تأثیر میپذیرد.
- task <filter> duplicate <mods>
- از کار مشخصشده یک رونوشت تهیه کرده و امکان اعمال تغییرات را فراهم میکند. از context تأثیر میپذیرد.
- task <filter> edit
- یک ویرایشگر متن را اجرا میکند تا بتوانید مستقیماً همه جنبههای یک کار را ویرایش کنید. به طور کلی، این روش برای تغییر کارها توصیه نمیشود، اما برای شرایط استثنایی در نظر گرفته شده است. با احتیاط استفاده کنید. از context تأثیر میپذیرد.
- task import [<file> ...]
- کارها را در
قالب JSON وارد
میکند.
میتواند
برای
افزودن
کارهای
جدید یا
بهروزرسانی
کارهای
موجود
استفاده
شود. کارها
با UUID خود
شناسایی
میشوند.
اگر هیچ فایلی مشخص نشده باشد یا «-» درج شود، کارها از STDIN وارد میشوند.
در صورتی که قرار است import در گردشهای کاری خودکار استفاده شود، تنظیم rc.recurrence.confirmation روی یک سطح مناسب توصیه میشود. به taskrc(5) مراجعه کنید.
برای وارد کردن سایر قالبهای فایل، انتشار استاندارد task همراه با چند اسکریپت نمونه ارائه میشود، مانند:
import-todo.sh.pl import-yaml.pl
- task import-v2
- کارها را از قالب Taskwarrior نسخه 2.x وارد میکند. این دستور هنگام ارتقا از نسخه 2.x به نسخه 3.x استفاده میشود.
- task log <mods>
- یک کار جدید را که از پیش تکمیل شده است، به فهرست کارها اضافه میکند. از context تنظیمشده فعلی تأثیر میپذیرد.
- task <filter> modify <mods>
- کار موجود را با اطلاعات ارائهشده ویرایش میکند.
- task <filter> prepend <mods>
- متن توضیحات را به ابتدای یک کار موجود اضافه میکند. از context تأثیر میپذیرد.
- task <filter> purge
- کارهای
مشخصشده
را به طور
دائمی از
فایلهای
داده حذف
میکند.
تنها
کارهایی که
پیشتر حذف
شدهاند
میتوانند
پاکسازی (purge)
شوند. این
دستور فقط
تأثیر محلی
دارد و
تغییرات
ایجادشده
توسط آن
همگامسازی
نمیشوند.
از context تأثیر
میپذیرد.
هشدار: موجب از دست رفتن دائمی و غیرقابلبازگشت دادهها میشود.
- task <filter> start <mods>
- کارهای مشخصشده را به عنوان آغازشده علامتگذاری میکند. از context تأثیر میپذیرد.
- task <filter> stop <mods>
- زمان start را
از کار
مشخصشده
حذف میکند.
از context تأثیر
میپذیرد..SH
"زیرفرمانهای
متفرقه (MISCELLANEOUS
SUBCOMMANDS)"
زیرفرمانهای متفرقه یا هیچ آرگومان خط فرمانی نمیپذیرند، یا آرگومانهای غیر استاندارد میپذیرند.
- task calc <expression>
- یک عبارت
جبری را
ارزیابی
میکند.
میتوان از
آن برای
آزمودن
نحوه تجزیه
و ارزیابی
عبارت
دادهشده
در خط فرمان
توسط Taskwarrior
استفاده
کرد.
مثالها:
task calc 1 + 1 2
task calc now + 8d 2015-03-26T18:06:57
task calc eom 2015-03-31T23:59:59
- task config [<name> [<value> | '']]
- تنظیمات را
مستقیماً
در
پیکربندی
Taskwarrior اضافه،
تغییر یا
حذف میکند.
این دستور
یا تنظیم 'name'
را با مقدار
جدید 'value'
اصلاح
میکند، یا
یک ورودی
جدید معادل
'name=value' اضافه
میکند:
task config name value
این دستور یک مقدار خالی تنظیم میکند. این کار اثر لغو هرگونه مقدار پیشفرض را دارد:
task config name ''
در نهایت، این دستور هر ورودی 'name=...' را از فایل .taskrc حذف میکند:
task config name
- task context <name>
- زمینه (context)
فعال فعلی
را تنظیم
میکند. بخش
CONTEXT را ببینید.
مثال:
task context work
- task context delete <name>
- زمینه با
نام <name> را
حذف میکند.
اگر
زمینهای
که حذف
میشود در
حال حاضر
بهعنوان
فعال تنظیم
شده باشد،
غیرفعال
خواهد شد.
مثال:
task context delete work
- task context define <name> <filter>
- یک زمینه
جدید با نام
<name> و تعریف
<filter> ایجاد
میکند. این
دستور بر
زمینه
تنظیمشده
فعلی
تأثیری
نمیگذارد،
بلکه فقط یک
تعریف
زمینه جدید
اضافه
میکند.
مثالها:
task context define work project:Work task context define home project:Home or +home task context define superurgent due:today and +urgent
- task context list
- فهرستی از زمینههای موجود را به همراه تعاریف آنها خروجی میدهد.
- task context none
- زمینه فعال فعلی را، در صورت تنظیم بودن، پاک میکند.
- task context show
- زمینه فعال فعلی را به همراه تعریف آن نشان میدهد.
- task diagnostics
- اطلاعات
عیبیابی
را، از نوعی
که هنگام
گزارش یک
مشکل لازم
است، نمایش
میدهد.
هنگامی که
یک باگ را
گزارش
میکنید،
احتمالاً
پلتفرم،
نسخه و محیط
حائز اهمیت
هستند.
اجرای این
دستور
خلاصهای
از اطلاعات
مشابه را
تولید
میکند که
باید همراه
با گزارش
باگ ارسال
شود.
این اطلاعات شامل مشخصات کامپایلر، کتابخانه و نرمافزار است. این خروجی شامل هیچگونه اطلاعات شخصی، به جز مکان دادههای وظایف شما، نمیشود.
این دستور همچنین یک اسکن عیبیابی روی دادههای شما انجام میدهد تا به دنبال مشکلات رایج، مانند UUIDهای تکراری، بگردد.
- task execute <external command>
- دستور مشخصشده را اجرا میکند. به خودی خود کاربرد چندانی ندارد، اما در صورت استفاده همراه با نامهای مستعار (aliases) و افزونهها، میتواند یکپارچگی یکدستی فراهم آورد.
- task logo
- نشانواره (لوگو) Taskwarrior را نمایش میدهد.
- task news
- هر بار که نسخه جدیدی از Taskwarrior نصب میشود، کاربر را در میان یادداشتهای مهم انتشار راهنمایی میکند. این دستور در صورت امکان، بازخوردهای شخصیسازیشده، هشدارهای منسوخشدن قابلیتها و توصیههای کاربردی را ارائه میدهد.
- task reports
- تمام گزارشهای پشتیبانیشده را فهرست میکند. این شامل گزارشهای توکار و هرگونه گزارش سفارشی است که خودتان تعریف کردهاید.
- task show [all | <substring>]
- تمام تنظیمات فعلی را نمایش میدهد. اگر یک زیررشته مشخص شود، فقط تنظیماتی که حاوی آن زیررشته هستند نمایش داده خواهند شد.
- task <filter> stats
- آمار وظایف مشخصشده توسط فیلتر را نمایش میدهد. تحت تأثیر زمینه (context) قرار میگیرد.
- task <filter> summary
- گزارشی از وضعیت تجمیعشده وظایف را بر اساس پروژه نشان میدهد. تحت تأثیر زمینه (context) قرار میگیرد.
- task sync
- دستور sync، در
صورت
پیکربندی،
دادهها را
با Taskserver
همگامسازی
میکند.
نکته: اگر از چندین کلاینت همگامسازی استفاده میکنید، مطمئن شوید که این تنظیم (که پیشفرض است) روی کلاینت اصلی شما فعال باشد:
recurrence=on
و روی همه کلاینتهای دیگر (این مورد پیشفرض نیست):
recurrence=off
این یک راهکار جایگزین موقت برای جلوگیری از یک باگ recurrence است که وظایف تکرارشونده را تکثیر میکند.
- task <filter> tags
- فهرستی از تمام برچسبهای استفادهشده را نشان میدهد. هرگونه برچسب ویژه استفادهشده برجسته میشود. توجه داشته باشید که برچسبهای مجازی فهرست نمیشوند - آنها واقعاً وجود ندارند، و صرفاً یک نشانهگذاری راحت برای سایر فرادادههای وظایف هستند. تلاش برای افزودن یا حذف یک برچسب مجازی یک خطا محسوب میشود. تحت تأثیر زمینه (context) قرار میگیرد.
- task timesheet [<weeks>]
- یک گزارش هفتگی از وظایف تکمیلشده و شروعشده را نشان میدهد.
- task undo
- تازهترین عمل انجامشده را بازمیگرداند. از تنظیم تأیید (confirmation) پیروی میکند.
- task version
- شماره نسخه Taskwarrior را نمایش میدهد..SH "زیرفرمانهای کمکی (HELPER SUBCOMMANDS)"
- task _aliases
- فهرستی از تمام نامهای مستعار را برای اهداف تکمیل خودکار (autocompletion) تولید میکند.
- task _columns
- تنها فهرستی از ستونهای پشتیبانیشده را نمایش میدهد.
- task _commands
- فهرستی از تمام فرمانها را برای اهداف تکمیل خودکار تولید میکند.
- task _config
- فهرستی از تمام متغیرهای پیکربندی پشتیبانیشده را برای اهداف تکمیل خودکار نمایش میدهد.
- task _context
- فهرستی از تمام متغیرهای زمینه (context) در دسترس را برای اهداف تکمیل خودکار نمایش میدهد.
- task <filter> _ids
- تنها شناسه (ID) تسکهای منطبق را در قالب یک فهرست نمایش میدهد. منسوخ شده و _unique جایگزین آن شده است.
- task _show
- تنظیمات پیکربندی پیشفرض و مقادیر بازنویسیشده (overrides) را بهصورت ترکیبی، جهت استفاده توسط برنامههای شخص ثالث نمایش میدهد.
- task <filter> _unique <attribute>
- مجموعهای
یکتا از
مقادیر یک
مشخصه (attribute) را
گزارش
میکند. به
عنوان
مثال، برای
دیدن تمام
پروژههای
فعال:
task +PENDING _unique project
- task <filter> _uuids
- تنها شناسه یکتا (UUID) تسکهای منطبق را از میان تمام تسکها (حتی تسکهای حذفشده و تکمیلشده) در قالب یک فهرست نمایش میدهد. منسوخ شده و _unique جایگزین آن شده است.
- task _udas
- تنها نامهای تعریفشده برای UDA را در قالب یک فهرست نمایش میدهد.
- task <filter> _projects
- تنها فهرستی از تمام نامهای پروژههای استفادهشده را نمایش میدهد. منسوخ شده و _unique جایگزین آن شده است.
- task <filter> _tags
- تنها فهرستی از تمام برچسبهای استفادهشده را برای اهداف تکمیل خودکار نمایش میدهد. منسوخ شده و _unique جایگزین آن شده است.
- task <filter> _urgency
- میزان فوریت (urgency) یک تسک را نمایش میدهد.
- task _version
- تنها شماره نسخه Taskwarrior را نمایش میدهد.
- task _zshcommands
- فهرستی از تمام فرمانها را برای اهداف تکمیل خودکار در zsh تولید میکند.
- task <filter> _zshids
- شناسهها و توضیحات تسکهای منطبق را نمایش میدهد.
- task <filter> _zshuuids
- UUIDها و توضیحات تسکهای منطبق را نمایش میدهد.
- task _get <DOM> [<DOM> ...]
- به
مرجع(های) DOM
دسترسی
پیدا کرده و
آنها را
نمایش
میدهد.
برای
استخراج
مقادیر
منفرد از
تسکها یا
سیستم
استفاده
میشود.
مراجع DOM
پشتیبانیشده
عبارتند از:
rc.<name> tw.syncneeded tw.program tw.args tw.width tw.height tw.version context.program (Deprecated in 2.6.0) context.args (Deprecated in 2.6.0) context.width (Deprecated in 2.6.0) context.height (Deprecated in 2.6.0) system.version system.os <id>.<attribute> <uuid>.<attribute>
توجه داشته باشید که مرجع 'rc.<name>' ممکن است نیاز به گریز (escape) با استفاده از '--' داشته باشد تا از تفسیر آن بهعنوان یک بازنویسی (override) جلوگیری شود.
توجه داشته باشید که اگر مرجع DOM معتبر نباشد، یا مرجع به یک مقدار ناموجود ارزیابی شود، فرمان با وضعیت خروج ۱ به پایان میرسد.
علاوه بر این، برخی از اجزای مشخصههای انواع خاص را میتوان با استفاده از مراجع DOM استخراج کرد.
$ task _get 2.due.year 2015
برای مشاهده فهرست کاملی از مراجع DOM پشتیبانیشده مختص به هر مشخصه، مستندات برخط را در نشانی زیر ببینید: https://taskwarrior.org/docs/dom.html.SH "ویژگیها و فرادادهها (ATTRIBUTES AND METADATA)"
- ID
- تسکها را
میتوان
بهصورت
یکتا با ID
مشخص کرد،
که
نمایانگر
اندیسهای
«مجموعه
کاری»
تسکها
(عمدتاً
تسکهای در
انتظار و
تکرارشونده)
هستند.
بنابراین ID
یک تسک ممکن
است تغییر
کند، اما
تنها زمانی
که گزارشی
که IDها را
نمایش
میدهد
اجرا شود.
هنگام
ویرایش
تسکها،
اتکا به
آخرین ID
نمایشدادهشده
ایمن است.
همیشه
گزارشی را
اجرا کنید
تا مطمئن
شوید ID
درستی برای
یک تسک در
دست دارید.
میتوان
IDها را
بهصورت یک
دنباله به
تسک داد،
برای مثال:
task 1,4-10,19 delete
- +tag|-tag
- برچسبها
کلمات
دلخواهی
هستند که با
یک تسک
مرتبط
میشوند. از
+ برای
افزودن یک
برچسب و از -
برای حذف یک
برچسب از
تسک
استفاده
کنید. یک
تسک
میتواند
به هر تعداد
برچسب
داشته باشد.
برچسبها
نمیتوانند
حاوی فاصله
(whitespace) باشند و
نمیتوانند
با هیچیک
از
نویسههای
خاص زیر
شروع شوند:
+-*/()<>^!%=~
برخی برچسبها (که «برچسبهای خاص» یا 'special tags' نامیده میشوند)، میتوانند برای تغییر نحوه رفتار با تسکها به کار روند. برای مثال، اگر تسکی برچسب خاص 'nocolor' را داشته باشد، از تمام قواعد رنگ معاف است. برچسبهای خاص پشتیبانیشده عبارتند از:
+nocolor پردازش قواعد رنگ را برای این تسک غیرفعال میکند +nonag تکمیل این تسک مانع از نمایش تمام پیامهای nag میشود +nocal این تسک در تقویم ظاهر نخواهد شد +next تسک را ارتقا میدهد تا در گزارش 'next' ظاهر شود
همچنین برچسبهای مجازی وجود دارند که فرادادههای تسک را در قالب برچسب نمایش میدهند. این برچسبها وجود خارجی ندارند، اما میتوان از آنها برای فیلتر کردن تسکها استفاده کرد. برچسبهای مجازی پشتیبانیشده عبارتند از:
ACTIVE اگر تسک شروع شده باشد مطابقت دارد ANNOTATED اگر تسک یادداشت (annotation) داشته باشد مطابقت دارد BLOCKED اگر تسک مسدود باشد مطابقت دارد BLOCKING اگر تسک مسدودکننده باشد مطابقت دارد CHILD اگر تسک دارای والد باشد مطابقت دارد (منسوخ در 2.6.0) COMPLETED اگر تسک وضعیت completed داشته باشد مطابقت دارد DELETED اگر تسک وضعیت deleted داشته باشد مطابقت دارد DUE اگر موعد تسک ظرف ۷ روز آینده باشد مطابقت دارد (rc.due را ببینید) INSTANCE اگر تسک یک نمونه تکرارشونده باشد مطابقت دارد LATEST اگر تسک جدیدترین تسک اضافهشده باشد مطابقت دارد MONTH اگر موعد تسک در این ماه باشد مطابقت دارد ORPHAN اگر تسک دارای مقادیر یتیم UDA باشد مطابقت دارد OVERDUE اگر موعد تسک گذشته باشد مطابقت دارد PARENT اگر تسک والد باشد مطابقت دارد (منسوخ در 2.6.0) PENDING اگر تسک وضعیت pending داشته باشد مطابقت دارد PRIORITY اگر تسک دارای اولویت باشد مطابقت دارد PROJECT اگر تسک دارای پروژه باشد مطابقت دارد QUARTER اگر موعد تسک در این فصل باشد مطابقت دارد READY اگر تسک آمادهبهاقدام باشد مطابقت دارد SCHEDULED اگر تسک زمانبندی شده باشد مطابقت دارد TAGGED اگر تسک برچسب داشته باشد مطابقت دارد TEMPLATE اگر تسک یک الگوی تکرار باشد مطابقت دارد TODAY اگر موعد تسک امروز باشد مطابقت دارد TOMORROW اگر موعد تسک فردا باشد مطابقت دارد UDA اگر تسک دارای هرگونه مقدار UDA باشد مطابقت دارد UNBLOCKED اگر تسک مسدود نباشد مطابقت دارد UNTIL اگر تسک منقضی شود مطابقت دارد WAITING اگر تسک در حالت انتظار باشد مطابقت دارد WEEK اگر موعد تسک در این هفته باشد مطابقت دارد YEAR اگر موعد تسک در این سال باشد مطابقت دارد YESTERDAY اگر موعد تسک دیروز بوده باشد مطابقت دارد
میتوانید از +BLOCKED برای فیلتر کردن تسکهای مسدودشده، یا از -BLOCKED برای تسکهای غیرمسدود استفاده کنید. به همین ترتیب، -BLOCKED معادل +UNBLOCKED است. تلاش برای افزودن یا حذف یک برچسب مجازی خطا محسوب میشود.
- project:<project-name>
- پروژهای را مشخص میکند که تسک به آن مرتبط است.
- status:pending|deleted|completed|waiting|recurring
- وضعیت تسک را مشخص میکند.
- priority:H|M|L یا priority:
- اولویتهای بالا (High)، متوسط (Medium)، پایین (Low) یا بدون اولویت را برای یک تسک مشخص میکند.
- due:<due-date>
- موعد سررسید (due-date) تسک را مشخص میکند.
- recur:<frequency>
- تواتر تکرار یک تسک را مشخص میکند.
- scheduled:<ready-date>
- تاریخی را مشخص میکند که پس از آن میتوان تسک را به انجام رساند.
- until:<expiration date of task>
- تاریخ انقضای تسک را مشخص میکند، که پس از آن حذف خواهد شد.
- limit:<number-of-rows>
- در صورت تعیین یک عدد صحیح مثبت، تعداد تسکهای مد نظر برای نمایش در یک گزارش را مشخص میکند. مقدار 'page' نیز میتواند استفاده شود و خروجی گزارش را به تعداد خطوط متنی که در صفحه نمایش جا میشوند، محدود میکند. پیشفرض این مقدار ۲۵ خط است.
- wait:<wait-date>
- هنگامی که به یک تسک تاریخ انتظار داده میشود، از بیشتر گزارشهای توکار که +WAITING را مستثنی میکنند، پنهان میشود. وقتی تاریخ در گذشته قرار گیرد، تسک دیگر +WAITING محسوب نمیشود و دوباره نمایان خواهد شد. توجه داشته باشید که جهت سازگاری، چنین تسکهایی با وضعیت "waiting" نشان داده میشوند، اما این رفتار در نسخههای آینده تغییر خواهد کرد.
- depends:<id1,id2 ...>
- این تسک را وابسته به id1 و id2 اعلام میکند. بدین معنا که تسکهای id1 و id2 باید پیش از این تسک تکمیل شوند. در نتیجه، این تسک در گزارش 'blocked' نمایش داده خواهد شد. این گزینه فهرستی جداشده با کاما از شمارههای ID، مقادیر UUID و محدودههای ID را میپذیرد. با قرار دادن پیشوند '-' قبل از هر عنصر در این فهرست، تسکهای مشخصشده از فهرست وابستگی حذف میشوند.
- entry:<entry-date>
- برای اهداف گزارشگیری، تاریخی را که تسک در آن ایجاد شده است مشخص میکند.
- modified:<modified-date>
- تاریخ آخرین ویرایش را مشخص میکند..SH "اصلاحکنندههای ویژگی (ATTRIBUTE MODIFIERS)" اصلاحکنندههای ویژگی فیلترها را بهبود میبخشند. اصلاحکنندههای پشتیبانیشده عبارتند از:
after (مترادفهای over، above)
by
none
any
is (مترادف equals)
isnt (مترادف not)
has (مترادف contains)
hasnt
startswith (مترادف left)
endswith (مترادف right)
word
noword
آنها میتوانند روی تمام ویژگیهای معمولی (بالا را ببینید) و ویژگیهای محاسباتی زیر اعمال شوند:
برای نمونه:
task due.before:eom priority.not:L list
اصلاحکنندهٔ before برای مقایسهٔ مقادیر با حفظ معنا به کار میرود؛ بنابراین project.before:B تمام پروژههایی را که با 'A' آغاز میشوند فهرست میکند. اولویت 'L' پیش از 'M' است و due:2011-01-01 پیش از due:2011-01-02 قرار میگیرد. مترادفهای 'under' و 'below' نیز برای نگارش طبیعیتر فیلترها در نظر گرفته شدهاند.
اصلاحکنندهٔ after معکوس اصلاحکنندهٔ before است.
اصلاحکنندهٔ by مشابه 'before' است، با این تفاوت که زمان مورد نظر را نیز شامل میشود. برای نمونه:
task add test due:eoy
با فیلتر شاملکنندهٔ 'by' پیدا خواهد شد:
task due.by:eoy
اما هنگام استفاده از فیلتر غیرشاملکنندهٔ 'before' پیدا نخواهد شد:
task due.before:eoy
این قاعده بهطور یکسان برای سایر تاریخهای نامگذاریشده مانند 'eom'، 'eod' و غیره نیز صدق میکند؛ این اصلاحکننده برخلاف 'before' که از '<' استفاده میکند، مقایسه را با '<=' انجام میدهد.
اصلاحکنندهٔ none نیازمند آن است که ویژگی مقداری نداشته باشد. برای نمونه:
task priority: list task priority.none: list
با یکدیگر معادلند و وظایفی را فهرست میکنند که فاقد اولویت هستند.
اصلاحکنندهٔ any نیازمند آن است که ویژگی دارای یک مقدار باشد، اما هر مقداری کفایت خواهد کرد.
اصلاحکنندهٔ is نیازمند تطابق دقیق با مقدار است.
اصلاحکنندهٔ isnt معکوس اصلاحکنندهٔ is است.
اصلاحکنندهٔ has برای جستجوی یک زیررشته به کار میرود، مانند:
task description.has:foo list task foo list
این دستورها معادلند و هر وظیفهای را که در description یا annotations آن 'foo' وجود داشته باشد بازمیگردانند.
اصلاحکنندهٔ hasnt معکوس اصلاحکنندهٔ has است.
اصلاحکنندهٔ startswith با سمت چپ یا ابتدای مقدار یک ویژگی تطابق مییابد، به طوری که:
task project.startswith:H list task project:H list
معادل یکدیگرند و با هر پروژهای که با 'H' شروع شود مطابقت خواهند داشت. تطابق تمام پروژههایی که با 'H' شروع نمیشوند با دستور زیر انجام میشود:
task project.not:H list
اصلاحکنندهٔ endswith با سمت راست یا انتهای یک ویژگی تطابق مییابد.
اصلاحکنندهٔ word نیازمند آن است که ویژگی شامل کل واژهٔ مشخصشده باشد، به طوری که این دستور:
task description.word:foo list
با شرح 'foo bar baz' تطابق دارد اما با 'dog food' تطابق پیدا نمیکند.
اصلاحکنندهٔ noword معکوس اصلاحکنندهٔ word است..SH "عبارتها و عملگرها (EXPRESSIONS AND OPERATORS)"
شما میتوانید از عملگرهای زیر در عبارتهای فیلتر استفاده کنید:
and or xor ! عملگرهای منطقی < <= = == != !== >= > عملگرهای رابطهای ( ) اولویت
برای نمونه:
task due.before:eom priority.not:L list task '( due < eom or priority != L )' list task '! ( project:Home or project:Garden )' list
عملگر = برابری تقریبی را بررسی میکند. تاریخها در صورتی برابر مقایسه میشوند که در یک روز یکسان باشند (ساعت و دقیقه نادیده گرفته میشوند). رشتهها زمانی برابر مقایسه میشوند که عملوند سمت چپ با عملوند سمت راست آغاز شود. عملگر == برابری دقیق را میسنجد. عملگرهای != و !== بهترتیب نقیض = و == هستند. عملگر نفی ! است.
توجه داشته باشید که هنگام استفاده از هر عملگر منطقی غیر از عملگر 'and'، استفاده از پرانتز الزامی است. دلیل آن این است که برخی گزارشها دارای فیلترهایی هستند که باید با خط فرمان ترکیب شوند. این مثال را در نظر بگیرید:
task project:Home or project:Garden list
اگرچه این دستور درست به نظر میرسد، اما اینگونه نیست. گزارش 'list' شامل فیلتری به این صورت است:
task show report.list.filter Config Variable Value ----------------- -------------- report.list.filter status:pending
بدین معنی که مثال فوق در واقع به این صورت است:
task status:pending project:Home or project:Garden list
عملگر ضمنی 'and' آن را به این شکل تبدیل میکند:
task status:pending and project:Home or project:Garden list
این یک خطای حق تقدم عملگرها است – عملگرهای 'and' و 'or' باید با استفاده از پرانتز گروهبندی شوند، مانند این:
task status:pending and ( project:Home or project:Garden ) list
بنابراین مثال اصلی باید به این صورت وارد شود:
task '( project:Home or project:Garden )' list
این دستور شامل نقلقولها برای گریزدهی (escape) پرانتزها است تا پوسته (shell) آنها را تفسیر نکرده و از دید Taskwarrior پنهان نسازد.
میان عملگرها، اصلاحکنندههای مشخصه (attribute modifiers) و دیگر تسهیلات نحوی (syntactic sugar) افزونگی و همپوشانی وجود دارد. برای نمونه، تمامی موارد زیر معادل یکدیگرند:
task foo list task /foo/ list task description.contains:foo list task description.has:foo list task 'description ~ foo' list
تعیین تاریخها و بسامدها (SPECIFYING DATES AND FREQUENCIES)
تاریخها (DATES)
برنامه Taskwarrior تاریخها را از خط فرمان میخواند و آنها را در گزارشها نمایش میدهد. قالب مورد انتظار و مطلوب تاریخ با متغیر پیکربندی dateformat تعیین میشود.
- تعیین دقیق
-
task ... due:7/14/2008
- ISO-8601
-
task ... due:2013-03-14T22:30:00Z
- عبارات نسبی
-
task ... due:now task ... due:today task ... due:yesterday task ... due:tomorrow
- شماره روز با پسوند ترتیبی
-
task ... due:23rd task ... due:3wks task ... due:1day task ... due:9hrs
- آغاز هفته (کاری) بعدی (دوشنبه)، هفته تقویمی (یکشنبه یا دوشنبه)، ماه، فصل (سهماهه) و سال
-
task ... due:sow task ... due:soww task ... due:socw task ... due:som task ... due:soq task ... due:soy
- پایان هفته (کاری) جاری (جمعه)، هفته تقویمی (شنبه یا یکشنبه)، ماه، فصل (سهماهه) و سال
-
task ... due:eow task ... due:eoww task ... due:eocw task ... due:eom task ... due:eoq task ... due:eoy
- در زمانی در آینده یا بعداً
-
task ... wait:later task ... wait:someday
این کار تاریخ انتظار (wait) را روی 12/30/9999 تنظیم میکند.
- نزدیکترین روز پیشروی هفته
-
task ... due:fri
- تعطیلات قابل پیشبینی
-
task ... due:goodfriday task ... due:easter task ... due:eastermonday task ... due:ascension task ... due:pentecost task ... due:midsommar task ... due:midsommarafton task ... due:juhannus
دورههای تکرار. Taskwarrior از چندین روش برای مشخص کردن تواتر وظایف تکرارشونده پشتیبانی میکند. توجه داشته باشید که تواترها میتوانند به صورت مخفف نیز استفاده شوند.
- daily, day, 1day, 1days, 2day, 2days, 1da, 2da, ...
- هر روز یا تعداد مشخصی روز.
- weekdays
- دوشنبهها، سهشنبهها، چهارشنبهها، پنجشنبهها، جمعهها و نادیده گرفتن روزهای آخر هفته.
- weekly, 1wk, 2wks, ...
- هر هفته یا تعداد مشخصی هفته.
- biweekly, fortnight
- هر دو هفته یکبار.
- monthly, month, 1mo, 2mo, ...
- هر ماه.
- quarterly, 1qtr, 2qtrs, ...
- هر سه ماه، یک فصل یا تعداد مشخصی فصل.
- semiannual
- هر شش ماه یکبار.
- annual, yearly, 1yr, 2yrs, ...
- هر سال یا تعداد مشخصی سال.
- biannual, biyearly, 2yr
- هر دو سال یکبار.
زمینه (CONTEXT)
زمینه (Context) یک پرسوجوی تعریفشده توسط کاربر است که به صورت خودکار بر تمام دستورهایی که فهرست وظایف را پالایش (فیلتر) میکنند و دستورهایی که وظایف جدید ایجاد مینمایند (مانند add و log) اعمال میشود. برای نمونه، نتیجهٔ هر دستور گزارشگیری تحت تأثیر زمینهٔ فعال کنونی قرار میگیرد. در ادامه فهرستی از دستورهایی که تحت تأثیر قرار میگیرند آمده است:
add burndown count delete denotate done duplicate edit history log prepend projects purge start stats stop summary tags
سایر دستورها تحت تأثیر زمینه قرار نمیگیرند.
$ task list ID Age Project Description Urg 1 2d Sport Run 5 miles 1.42 2 1d Home Clean the dishes 1.14
$ task context home Context 'home' set. Use 'task context none' to remove.
$ task list ID Age Project Description Urg 2 1d Home Clean the dishes 1.14 Context 'home' set. Use 'task context none' to remove.
فهرست وظایف بهطور خودکار برای project:Home پالایش شد.
$ task add Vaccuum the carpet Created task 3. Context 'home' set. Use 'task context none' to remove.
$ task list ID Age Project Description Urg 2 1d Home Clean the dishes 1.14 3 5s Home Vaccuum the carpet 1.14 Context 'home' set. Use 'task context none' to remove.
توجه داشته باشید که وظیفهٔ تازه افزوده شدهٔ «Vaccuum the carpet» بهطور خودکار دارای ویژگی «project:Home» شده است.
همانطور که در مثال بالا مشاهده میشود، زمینه با مشخص کردن نام آن در دستور «context» اعمال میشود. برای تغییر زمینهٔ اعمالشدهٔ فعلی، کافی است نام زمینهٔ جدید را به دستور «context» ارسال کنید.
برای لغو هرگونه زمینه، از زیردستور «none» استفاده کنید.
$ task context none Context unset.
$ task list ID Age Project Description Urg 1 2d Sport Run 5 miles 1.42 2 1d Home Clean the dishes 1.14 3 7s Home Vaccuum the carpet 1.14
زمینه میتواند با استفاده از زیردستور «define» با مشخص کردن همزمان نام زمینهٔ جدید و پالایهٔ اختصاصیافته به آن تعریف شود.
$ task context define home project:Home Are you sure you want to add 'context.home.read' with a value of 'project:Home'? (yes/no) yes Are you sure you want to add 'context.home.write' with a value of 'project:Home'? (yes/no) yes Context 'home' successfully defined.
توجه داشته باشید که برای تنظیم زمینههای «read» و «write» بهطور جداگانه از شما تایید گرفته شد. این به شما امکان میدهد زمینههایی مشخص کنید که تنها برای دستورهای گزارشگیری یا تنها برای دستورهای ایجاد وظایف عمل کنند.
برای حذف تعریف زمینه، از زیردستور «delete» استفاده کنید.
$ task context delete home Are you sure you want to remove 'context.home.read'? (yes/no) yes Are you sure you want to remove 'context.home.write'? (yes/no) yes Context 'home' deleted.
برای بررسی اینکه کدام زمینه در حال حاضر فعال است، از زیردستور «show» استفاده کنید.
$ task context show Context 'home' with * read filter: '+home' * write filter: '+home' is currently applied.
زمینهها میتوانند پالایههایی با هر درجه از پیچیدگی را نگهداری کنند.
$ task context define family project:Family or +paul or +nancy Are you sure you want to add 'context.family.read' with a value of 'project:Family or +paul or +nancy'? (yes/no) yes Are you sure you want to add 'context.family.write' with a value of 'project:Family or +paul or +nancy'? (yes/no) no Context 'family' successfully defined.
زمینهها دائمی هستند و نام زمینهٔ تنظیمشدهٔ فعلی در متغیر پیکربندی «context» ذخیره میشود. تعریف زمینه در متغیر پیکربندی «context.<name>.read» (برای دستورهای گزارشگیری) و متغیر پیکربندی «context.<name>.write» (برای ایجاد وظایف، یعنی task add/log) نگهداری میشود.
توجه داشته باشید که در مثال بالا، کاربر تصمیم گرفت پالایهٔ پیچیده را به عنوان زمینهٔ قابل نوشتن تعریف نکند. دلیل این تصمیم این است که پالایهٔ پیچیده در مثال مستقیماً به یک تغییر مشخص ترجمه نمیشود. در حقیقت، اگر چنین زمینهای به عنوان زمینهٔ قابل نوشتن استفاده شود، وضعیت زیر پیش میآید:
$ task add Call Paul Created task 4. Context 'family' set. Use 'task context none' to remove.
$ task 4 list ID Age Project Tags Description Urg 4 9min Family nancy paul or or Call Paul 0
هیچ نگاشت مشخصی بین پالایهٔ پیچیدهٔ استفادهشده و تغییرات اعمالشده وجود ندارد (آیا فقط پروژه باید مقداردهی شود؟ فقط برچسبها؟ هر دو؟). افزون بر این، به حضور عملگرهای «or» در توضیحات (description) دقت کنید. Taskwarrior در اینجا تلاشی برای حدس زدن نیت کاربر نمیکند؛ در عوض، انتظار میرود کاربر متغیر «context.<name>.write» را تنظیم کند تا خواستهٔ خود را به طور صریح مشخص نماید، برای نمونه:
$ task config context.family.write project:Family Are you sure you want to change the value of 'context.family.write' from 'project:Family or +paul or +nancy' to 'project:Family'? (yes/no) yes Config file /home/tbabej/.config/task/taskrc modified.
$ task context
Name Type Definition Active
family read project:Family or +paul or +nancy yes
write project:Family yes
home read +home no
write +home no
دقت کنید که چگونه زمینههای خواندن و نوشتن برای زمینهٔ «family» تفاوت دارند، در حالی که برای زمینهٔ «home» یکسان باقی ماندهاند.
علاوه بر این، هر پارامتر پیکربندی میتواند برای زمینهٔ کنونی با تعیین context.<name>.rc.<parameter> بازنویسی (override) شود. برای نمونه، اگر دستور پیشفرض برای زمینهٔ family باید نمایش family_report باشد:
$ task config context.family.rc.default.command family_report تمام دستورهای Taskwarrior تا زمانی که از یک پیشوند یکتا استفاده شود، میتوانند بهصورت مختصر نوشته شوند؛ برای مثال: $ task li
یک اختصار بدون ابهام برای دستور زیر است:
$ task list
اما
$ task l
میتواند list ،ls یا long باشد.
توجه داشته باشید که میتوانید حداقل طول مجاز اختصار را با استفاده از تنظیمات پیکربندی زیر محدود کنید:
abbreviation.minimum=3
مشخص کردن توضیحات (SPECIFYING DESCRIPTIONS)
برخی از توضیحات وظایف به دلیل شل و معنای خاص برخی نویسهها در آن، نیاز به گریزدهی (escape) دارند. این کار میتواند با افزودن علامتهای نقلقول به توضیحات یا گریزدهی نویسه خاص انجام شود:
$ task add "quoted ' quote" $ task add escaped \' quote
آرگومان -- (یک خطتیره دوتایی) به Taskwarrior اعلام میکند که تمام آرگومانهای دیگر را بهعنوان توضیحات در نظر بگیرد:
$ task add -- project:Home needs scheduling
در شرایط دیگر، شل فاصلهها را تشخیص داده و آرگومانها را تفکیک میکند. برای مثال، این دستور:
$ task 123 modify /from this/to that/
به چندین آرگومان شکسته میشود، که با افزودن نقلقول اصلاح میشود:
$ task 123 modify "/from this/to that/"
گاهی اوقات لازم است شل را وادار کنید که نقلقولها را بدون تغییر به Taskwarrior ارسال کند، بنابراین میتوانید از دستور زیر استفاده کنید:
$ task add project:\'Three Word Project\' description
برنامه Taskwarrior از یونیکد تنها با استفاده از کدگذاری UTF8 پشتیبانی میکند.
فایل پیکربندی و گزینههای بازنویسی (CONFIGURATION FILE AND OVERRIDE OPTIONS)
برنامه Taskwarrior پیکربندی خود را در فایلی در دایرکتوری خانگی کاربر ذخیره میکند: ~/.taskrc. فایل پیکربندی پیشفرض را میتوان به روشهای زیر بازنویسی کرد:
- task rc:<path-to-alternate-file> ...
- یک فایل پیکربندی جایگزین را با بالاترین اولویت مشخص میکند.
- TASKRC=<path-to-alternate-file> task ..
- متغیر محیطی که یک فایل پیکربندی جایگزین را برای استفاده مشخص میکند.
- XDG_CONFIG_HOME=<path-to-alternate-config-home> task ..
- متغیر محیطی که یک مسیر پیکربندی جایگزین را برای استفاده مشخص میکند.
- task rc.<name>:<value> ...
- task rc.<name>=<value> ... بازنویسیهای جداگانه تنظیمات فایل پیکربندی را مشخص میکند.
- TASKDATA=/tmp/.task task ...
- متغیر محیطی که مسیر پیشفرض و همچنین تنظیم پیکربندی 'data.location' برای دایرکتوری دادههای task را بازنویسی میکند.
مثالهای بیشتر (MORE EXAMPLES)
برای مشاهده مثالها لطفاً به مستندات آنلاین در نشانی زیر مراجعه کنید:
توجه داشته باشید که مستندات آنلاین میتواند جزئیتر و بهروزتر از این صفحه راهنما باشد.
فایلها (FILES)
- ~/.taskrc
- فایل پیکربندی کاربر - همچنین ببینید: taskrc(5). توجه داشته باشید که این فایل میتواند از طریق خط فرمان یا متغیر محیطی TASKRC بازنویسی شود. همچنین، اگر ~/.taskrc وجود نداشته باشد و متغیر محیطی XDG_CONFIG_HOME تعریف شده باشد، taskwarrior بررسی خواهد کرد که آیا $XDG_CONFIG_HOME/task/taskrc وجود دارد یا خیر و برای خواندن آن تلاش میکند.
- ~/.task
- دایرکتوری پیشفرضی که task دادههای خود را در آن ذخیره میکند. این مکان میتواند در متغیر پیکربندی 'data.location' تنظیم شود، یا با متغیر محیطی TASKDATA بازنویسی گردد.
- ~/.task/taskchampion.sqlite3
- فایل
پایگاه
داده..SH
"اعتبار و
کپیرایت (CREDITS
& COPYRIGHTS)"
کپیرایت (C) 2006
- 2021 T. Babej, P. Beckingham, F. Hernandez.
برنامه Taskwarrior تحت مجوز MIT توزیع میشود. برای اطلاعات بیشتر https://www.opensource.org/licenses/mit-license.php را ببینید.
همچنین ببینید (SEE ALSO)
taskrc(5), task-color(5), task-sync(5)
برای اطلاعات بیشتر در مورد Taskwarrior، موارد زیر را ببینید:
- وبگاه رسمی در
- https://taskwarrior.org
- مخزن رسمی کد در
- https://github.com/GothenburgBitFactory/taskwarrior
- میتوانید از طریق رایانامه با پروژه در ارتباط باشید:
- <support@GothenburgBitFactory.org>
گزارش باگها (REPORTING BUGS)
- باگهای موجود در Taskwarrior را میتوانید به سامانه پیگیری اشکالات گزارش دهید:
- https://github.com/GothenburgBitFactory/taskwarrior/issues
| 2016-02-24 | task 3.5.0 |