| PODBOAT(1) | PODBOAT(1) |
نام (NAME)
podboat - یک مدیر بارگیری پادکست برای ترمینالهای متنی
خلاصه دستور (SYNOPSIS)
podboat [-C configfile] [-q queuefile] [-a] [-h]
توضیحات (DESCRIPTION)
برنامه Podboat یک مدیر پادکست برای ترمینالهای متنی است. این برنامه به عنوان یک ابزار کمکی برای Newsboat عمل میکند که بارگیریهای پادکست را درون یک فایل صفبندی مینماید. سپس این بارگیریهای صفبندیشده میتوانند توسط Podboat بارگیری شوند.
گزینهها (OPTIONS)
-h, --help
-C configfile, --config-file=configfile
-q queuefile, --queue-file=queuefile
--lock-file=lockfile
-a, --autodownload
-l loglevel, --log-level=loglevel
-d logfile, --log-file=logfile
پشتیبانی از پادکست (PODCAST SUPPORT)
پادکست یک فایل چندرسانهای است که با استفاده از خوراکهای اشتراک محتوا نظیر RSS از طریق اینترنت توزیع میشود تا بعداً در دستگاههای پخش قابل حمل یا رایانهها بازپخش شود. برنامه Newsboat از بارگیری، ذخیره و پخش جریانی پادکستها پشتیبانی میکند، هرچند برای بازپخش به یک پخشکننده رسانه خارجی نیاز است. این پشتیبانی در شیوه پیادهسازی، کمی با دیگر گردآورندههای پادکست یا «podcatcher»ها تفاوت دارد.
محتوای پادکست در خوراکهای RSS از طریق برچسبهای ویژهای به نام «enclosures» منتقل میشود. برنامه Newsboat این محفظهها را شناسایی کرده و اطلاعات مربوطه را برای هر مورد پادکستی که در یک خوراک RSS پیدا کند، ذخیره مینماید. از نسخه 2.0، این برنامه همچنین افزونههای Yahoo Media RSS را شناسایی کرده و مدیریت میکند.
رابطهای برنامهنویسی راه دور (Remote APIs) همیشه این «enclosures» را فهرست نمیکنند، بنابراین ممکن است پادکستها در Newsboat مفقود باشند. چنین رابطهایی در بخش مربوطه از مستندات ما مشخص شدهاند. اگر توضیحی درج نشده است اما همچنان محفظهها را در Newsboat مشاهده نمیکنید، لطفاً یک گزارش مشکل ارسال کنید تا آن را به طور کامل بررسی نماییم!
مدیریت فایلهای صوتی با PODBOAT (MANAGING AUDIO FILES WITH PODBOAT)
کاری که کاربر میتواند انجام دهد این است که نشانی اینترنتی (URL) بارگیری پادکست را به یک صف بارگیری اضافه کند. به عنوان راهکاری جایگزین، Newsboat میتواند طوری پیکربندی شود که این کار را به صورت خودکار انجام دهد. این صف در فایل queue در کنار فایل cache.db ذخیره میشود.
سپس کاربر میتواند از مدیر بارگیری podboat برای بارگیری این فایلها در دایرکتوری روی فایلسیستم محلی استفاده کند. برنامه Podboat همراه با بسته Newsboat ارائه میشود و از لحاظ ظاهر و رفتار بسیار شبیه به Newsboat است. این برنامه همچنین از همان فایل پیکربندی مشترک استفاده میکند.
پادکستهایی که بارگیری شدهاند اما هنوز پخش نشدهاند در صف باقی میمانند اما به عنوان بارگیریشده علامتگذاری میشوند. میتوانید با پاکسازی آنها از صف با استفاده از کلید Shift + P، آنها را حذف کنید. پس از اینکه فایلی را پخش کردید و Podboat را بستید، از صف حذف خواهد شد. فایل بارگیریشده روی فایلسیستم باقی میماند، مگر اینکه گزینه «delete-played-files» فعال شده باشد.
یک کاربرد متداول این است که Newsboat را برای قرار دادن خودکار نشانیهای URL بارگیری پادکستهای تازهیافتشده در صف پیکربندی کنید. سپس، کاربر خوراکهای RSS پادکست را در Newsboat بازبارگذاری کرده و پس از آن، از Podboat برای مشاهده صف جاری استفاده میکند، و یا فایلهای خاصی را به صورت انتخابی بارگیری کرده یا با فشردن کلید A در محیط Podboat، همه آنها را به صورت خودکار با هم بارگیری مینماید.
دستورات پیکربندی (CONFIGURATION COMMANDS)
delete-played-files (پارامترها: [yes/no]؛ مقدار پیشفرض: no)
download-path (پارامترها: <path>؛ مقدار پیشفرض: ~/)
download-filename-format (پارامترها: <string>؛ مقدار پیشفرض: "%?u?%u&%Y-%b-%d-%H%M%S.unknown?")
max-downloads (پارامترها: <number>؛ مقدار پیشفرض: 1)
player (پارامترها: <player command>؛ مقدار پیشفرض: "")
podlist-format (پارامترها: <format>؛ مقدار پیشفرض: "%4i [%6dMB/%6tMB] [%5p %%] [%12K] %-20S %u → %F")
رشتههای قالببندی (FORMAT STRINGS)
برنامه Newsboat شامل یک سیستم قدرتمند رشتههای قالببندی است تا امکان پیکربندی قالب جنبههای مختلف برنامه، مانند قالب مدخلها در فهرست خوراکها یا در فهرست مقالات را برای کاربر فراهم کند.
رشتههای قالببندی شبیه مواردی هستند که در تابع printf در زبان برنامهنویسی C یافت میشوند. یک توالی قالببندی با نویسه % آغاز میشود و به دنبال آن مشخصکننده اختیاری تراز قرار میگیرد: اعداد مثبت نشان میدهند که متن درجشده برای توالی باید از سمت چپ به اندازه عرض کلی مشخصشده توسط عدد فاصلهگذاری (pad) شود، در حالی که اعداد منفی فاصلهگذاری از سمت راست را تعیین میکنند. پس از تعیین فاصلهگذاری، شناسه اصلی توالی میآید که معمولاً یک حرف منفرد است. %=[width][identifier] توالی را در مرکز قرار میدهد، که اگر w=0 باشد کل عرض پنجره استفاده میشود.
علاوه بر این، Newsboat توالیهای قدرتمندتر دیگری نیز فراهم میکند، مانند %>[char] که مشخص میکند متنِ سمت راستِ توالی در صفحه راستچین خواهد شد، و نویسههای بین متن سمت چپ و متن سمت راست با [char] پر میشوند. قالب قدرتمند دیگر، توالی شرطی %?[char]?[format 1]&[format 2]? است: اگر متنِ شناسه توالی [char] شامل هرگونه نویسه غیرفاصلهای باشد، آنگاه [format 1] ارزیابی و درج میشود، در غیر این صورت [format 2] ارزیابی و درج خواهد شد. بخش & و [format 2] اختیاری هستند، یعنی اگر متن شناسه خالی باشد، یک رشته خالی درج خواهد شد.
جدولهای زیر نشان میدهند که چه شناسههای توالی برای کدام قالب در دسترس هستند:
جدول ۱. شناسههای موجود برای feedlist-format
| شناسه | معنا و کاربرد |
| d | توضیحات خوراک |
| i | نمایه خوراک |
| l | پیوند خوراک |
| L | نشانی RSS خوراک |
| n | فیلد نشانگر «خواندهنشده» (unread) |
| S | وضعیت بارگیری |
| t | عنوان خوراک |
| T | اولین برچسب یک خوراک در فایل URLs |
| u | فیلد «خواندهنشده/مجموع» |
| U | فیلد «خواندهنشده» |
| c | فیلد «مجموع» |
هنگامی که عملیات reload-all در حال اجرا است، وضعیت بارگیری نشاندهنده وضعیت بارگیری یک خوراک است که میتواند «در انتظار بارگیری» (مشخصشده با «_»)، «در حال بارگیری» (مشخصشده با «.»)، بارگیری موفقیتآمیز (مشخصشده با « ») و «خطای بارگیری» (مشخصشده با «x») باشد.
جدول ۲. شناسههای موجود برای articlelist-format
| شناسه | معنا و کاربرد |
| a | نویسنده مقاله |
| D | تاریخ انتشار. این مورد میتواند با datetime-format بیشتر سفارشیسازی شود. |
| f | دو نویسه: ۱) «N» اگر مقاله خواندهنشده باشد، «D» اگر مقاله حذف شده باشد، در غیر این صورت یک فاصله؛ ۲) «!» اگر مقاله نشانگذاری شده باشد، در غیر این صورت یک فاصله. |
| n | فیلد «خواندهنشده» |
| d | فیلد «حذفشده» |
| F | نشانهای مقاله |
| i | نمایه مقاله |
| t | عنوان مقاله |
| T | اگر فهرست مقالات، مقالاتی از خوراکهای مختلف را نمایش دهد، این شناسه حاوی عنوان خوراکی است که مقاله به آن تعلق دارد. |
| L | طول مقاله |
| e | نشانی URL محفظه (enclosure) مقاله |
جدول ۳. شناسههای موجود برای selecttag-format
| شناسه | معنا و کاربرد |
| i | نمایه سطر در فهرست |
| T | برچسبی که این سطر با آن متناظر است |
| f | تعداد خوراکهای خواندهنشده تحت این برچسب |
| n | تعداد مقالات خواندهنشده در خوراکهای نشانگذاریشده با این برچسب |
| u | تعداد خوراکهای نشانگذاریشده با این برچسب |
جدول ۴. شناسههای موجود برای notify-format
| شناسه | معنا و کاربرد |
| n | تعداد مقالات خواندهنشده |
| f | تعداد خوراکهای خواندهنشده |
| d | تعداد مقالات خواندهنشده جدید (یعنی مواردی که در آخرین بازبارگذاری اضافه شدهاند) |
| D | تعداد خوراکهای خواندهنشده جدید (یعنی مواردی که در آخرین بازبارگذاری اضافه شدهاند) |
جدول ۵. شناسههای موجود برای podlist-format
| شناسه | معنا و کاربرد |
| i | نمایه بارگیری |
| d | اندازه فعلی بارگیریشده به مگابایت، با دقت یک رقم اعشار |
| t | اندازه کل بارگیری به مگابایت، با دقت یک رقم اعشار |
| p | درصد بارگیریشده، با دقت یک رقم اعشار |
| k | سرعت بارگیری با دقت دو رقم اعشار، همیشه به کیلوبایت بر ثانیه (شامل عبارت «KB/s» نمیشود) |
| K | سرعت بارگیری با دقت دو رقم اعشار، خوانا برای انسان (تغییر خودکار بین KB/s، MB/s و GB/s) |
| S | وضعیت بارگیری، یکی از موارد زیر را نمایش میدهد: «queued»، «downloading»، «ready»، «canceled»، «deleted»، «missing»، «played»، «finished» یا «failed» |
| u | نشانی اینترنتی (URL) بارگیری |
| F | نام فایل مطلق بارگیری از دایرکتوری ریشه (مانند ~/downloads/podcast.mp3 → /home/name/downloads/podcast.mp3) |
| b | نام پایه (basename) بارگیری (مانند /home/name/downloads/podcast.mp3 → podcast.mp3) |
جدول ۶. شناسههای موجود برای download-path و download-filename-format
| شناسه | معنا و کاربرد |
| u | بخش نام فایل از URL بارگیری. ممکن است خالی باشد. ممکن است شامل یک رشته پرسوجو (query string) https://en.wikipedia.org/wiki/Query_string باشد |
| n | نام خوراک پادکست |
| N | نام خوراک پادکست. حاوی نام اصلی خوراک است، حتی زمانی که از طریق یک خوراک پرسوجو انتخاب شده باشد |
| h | نام میزبان (hostname) خوراک پادکست |
| t | عنوان قسمت پادکست |
| e | پسوند فایل قسمت پادکست |
| F | تاریخ انتشار قسمت پادکست با قالب yyyy-mm-dd |
| m | ماهی که قسمت پادکست در آن منتشر شده است |
| b | نام اختصاری ماهی که قسمت پادکست در آن منتشر شده است |
| d | روزی که قسمت پادکست در آن منتشر شده است |
| H | ساعتی که قسمت پادکست در آن منتشر شده است |
| M | دقیقهای که قسمت پادکست در آن منتشر شده است |
| S | ثانیهای که قسمت پادکست در آن منتشر شده است |
| y | سال انتشار قسمت پادکست در قالب yy |
| Y | سال انتشار قسمت پادکست در قالب yyyy |
مثالها:
feedlist-format "%4i %n %11u %t" articlelist-format "%4i %f %D %?T?|%-17T| ?%t" notify-format "%d new articles (%n unread articles, %f unread feeds)" podlist-format "%4i [%-5p %%] %-12S %F"
فایلها (FILES)
به صورت پیشفرض، Newsboat تمام فایلها را به روش سنتی یونیکس ذخیره میکند، یعنی در یک پوشه پنهان («dotdir») واقع در ~/.newsboat. با این حال، از روش مدرن مشخصات دایرکتوری پایه XDG https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html, نیز پشتیبانی میکند که فایلها را بین مکانهای زیر تقسیم مینماید:
اگر دایرکتوری newsboat در زیر XDG_CONFIG_HOME وجود داشته باشد، آنگاه Newsboat از دایرکتوریهای XDG استفاده خواهد کرد (و در صورت نیاز دایرکتوری داده را ایجاد میکند). در غیر این صورت، Newsboat به طور پیشفرض از ~/.newsboat استفاده مینماید.
اگر در حال حاضر از ~/.newsboat/ استفاده میکنید اما مایل هستید به دایرکتوریهای XDG مهاجرت نمایید، باید فایلها را به شرح زیر منتقل کنید:
config, urls
cache.db, history.search, history.cmdline, queue
برنامههای Newsboat و Podboat همچنین «فایلهای قفل» (lock files) ایجاد میکنند. این فایلها از اجرای همزمان دو نمونه از یک برنامه و در نتیجه از آسیب دیدن دادههای شما جلوگیری میکنند. Newsboat و Podboat این فایلها را هنگام خروج از برنامه حذف مینمایند، بنابراین نیازی به کپی کردن آنها در جای دیگری نیست — فقط در صورتی که اسکریپتهایی مینویسید که با cache.db یا queue کار میکنند، از وجود آنها مطلع باشید. به صورت پیشفرض، فایلهای قفل در مسیرهای زیر قرار دارند:
| dotdir | XDG | |
| Newsboat | ~/.newsboat/cache.db.lock | $XDG_DATA_HOME/newsboat/cache.db.lock |
| Podboat | ~/.newsboat/pb-lock.pid | $XDG_DATA_HOME/newsboat/.lock |
برنامه Newsboat فایل قفل را در کنار فایل حافظه موقت قرار میدهد، بنابراین اگر تنظیم cache-file را مشخص کنید یا آرگومان خط فرمان —cache-file را پاس دهید، مسیر فایل قفل نیز تغییر خواهد کرد. فایل قفل Podboat را میتوان با استفاده از آرگومان خط فرمان —lock-file در جای دیگری قرار داد.
dotfiles
~/.newsboat/queue
XDG
$XDG_DATA_HOME/newsboat/queue
نکته: اگر متغیر محیطی XDG_CONFIG_HOME تنظیم نشده باشد، Podboat طوری رفتار میکند که گویی روی ~/.config تنظیم شده است. به طور مشابه، XDG_DATA_HOME به صورت پیشفرض ~/.local/share است.
محیط (ENVIRONMENT)
BROWSER
CURL_CA_BUNDLE
این گزینه زمانی مفید است که libcurl شما بدون اطلاعات گواهی مفید کامپایل شده باشد و شما نتوانید کتابخانه را خودتان کامپایل مجدد کنید.
EDITOR
NO_PROXY
این متغیر حاوی فهرستی از نامهای میزبان، نامهای دامنه و نشانیهای IP است که با کاما از هم جدا شدهاند.
نامهای دامنه با زیردامنهها تطبیق داده میشوند؛ یعنی «example.com» با «foo.example.com» نیز مطابقت دارد. نامهای دامنهای که با یک نقطه شروع میشوند فقط با زیردامنهها مطابقت دارند؛ برای مثال «.example.com» با «bar.example.com» مطابقت دارد اما با خود «example.com» مطابقت ندارد.
آدرسهای IPv6 بدون کروشه نوشته میشوند و به عنوان رشته تطبیق داده میشوند. بنابراین «::1» با «::0:1» مطابقت ندارد، حتی اگر اینها همان آدرس یکسان باشند.
PAGER
TMPDIR
VISUAL
XDG_CONFIG_HOME
XDG_DATA_HOME
همچنین ببینید (SEE ALSO)
newsboat(1)
نویسنده (AUTHOR)
Alexander Batischev
| 2026-06-21 |