این فرمان expect_tknewsbiff است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
tknewsbiff - هنگامی که اخبار ظاهر می شود پنجره ای باز می شود
خلاصه
tknewsbiff [ سرور or فایل پیکربندی ]
معرفی
tknewsbiff هنگامی که اخبار خوانده نشده در گروه های خبری مورد علاقه شما وجود دارد، پنجره ای ظاهر می شود
پس از خواندن اخبار، پنجره را حذف می کند. tknewsbiff می تواند به صورت اختیاری یک صدا را پخش کند،
خبرخوان خود را راه اندازی کنید و غیره
انتخاب کردن گروه های خبری
به طور پیش فرض، فایل پیکربندی ~/.tknewsbiff نحوه رفتار tknewsbiff را شرح می دهد. در
نحو قوانین معمول Tcl را رعایت می کند - با این حال، حتی اگر Tcl را نمی دانید، همه آنها به جز
بیشتر پیکربندی های باطنی آشکار خواهد بود.
هر گروه خبری (یا مجموعه ای از گروه های خبری) برای تماشا با استفاده از "ساعت" توصیف می شود.
فرمان مثلا:
ساعت dc.dining
ساعت نیست.*
watch comp.unix.wizard -threshold 3
تماشای *.منابع.* -آستانه 20
برای هر الگوی گروه خبری، هر گروه خبری که با آن مطابقت دارد و شما در آن مشترک هستید
(طبق فایل newsrc شما) واجد شرایط گزارش است. به طور پیش فرض، tknewsbiff گزارش می دهد
در گروه خبری اگر حداقل یک مقاله خوانده نشده باشد. پرچم "-threshold" تغییر می کند
آستانه به شماره زیر به عنوان مثال، "-threshold 3" به این معنی است که باید در آن وجود داشته باشد
حداقل سه مقاله خوانده نشده قبل از tknewsbiff گروه خبری را گزارش می کند.
اگر هیچ فرمان ساعتی داده نمی شود (یا هیچ فایل پیکربندی وجود ندارد)، همه گروه ها هستند
مشترک شده تماشا می شوند.
برای سرکوب گروه های خبری که در غیر این صورت گزارش می شوند، از دستور "نادیده گرفتن" استفاده کنید. برای
برای مثال، موارد زیر با همه گروههای جدید comp.* و nist.* به جز nist.posix یا .d مطابقت دارد.
گروه های (بحث):
ساعت کامپ.*
ساعت نیست.*
nist.posix.* را نادیده بگیرید
نادیده گرفتن *.d
پرچم "-new" دستوری را توصیف می کند که باید در زمانی که گروه خبری برای اولین بار به عنوان گزارش می شود اجرا شود.
داشتن اخبار خوانده نشده به عنوان مثال، خطوط زیر دستور یونیکس "play" را فراخوانی می کند
پخش صدا
تماشای dc.dining -new "exec play /usr/local/sounds/yumyum.au"
watch rec.auto* -new "exec play /usr/local/sounds/vroom.au"
شما می توانید با تعریف رویه ها از پرحرفی اقدامات بکاهید. به عنوان مثال، اگر شما
پرچمهای جدید زیادی دارید که همگی فایلهای صوتی را پخش میکنند، میتوانید یک رویه صوتی تعریف کنید. این
به مشخصات جدید اجازه می دهد بسیار کوتاهتر باشد.
پخش پروک {صدا} {
exec play /usr/local/sounds/$sound.au
}
تماشای dc.dining -new "play yumyum"
watch rec.auto* -جدید "play vroom"
به عنوان یک کنار، می توانید یک "&" را در انتهای یک دستور "exec" قرار دهید تا دستورات را اجرا کنید.
به صورت ناهمزمان با این حال، احتمالاً انجام این کار هنگام پخش صدا ایده خوبی نیست
به هر حال فایل ها
"گروه خبری" یک متغیر فقط خواندنی است که حاوی نام گروه خبری موجود است
گزارش شده است. این زمانی مفید است که عمل توسط یک الگو آغاز شود. به عنوان مثال
خط زیر می تواند نام گروه خبری را از طریق یک ترکیب کننده گفتار اجرا کند:
تماشا * -جدید{
exec play herald.au
exec speak "اخبار جدید در $newsgroup رسیده است."
}
پرچم "-display" دستوری را توصیف می کند که هر بار که گروه خبری است اجرا می شود
گزارش شده است که اخبار خوانده نشده دارد. دستور ویژه "display" دستور پیش فرض است. آی تی
زمانی که $group بازنویسی می شود، روی صفحه نمایش tknewsbiff نوشته شود. برای
به عنوان مثال، با ارائه صریح یک پرچم -display که دستور نمایش را حذف می کند، می توانید
غیرفعال کردن نمایش گروههای خبری که قبلاً از طریق -new گزارش شدهاند.
watch dc.dining -new {exec play yumyum.au} -display {}
اگر می خواهید یک عمل را به طور مکرر اجرا کنید و هنوز نمایش گروه خبری به صورت پیش فرض
به طور واضح دستور نمایش را از طریق پرچم -display فراخوانی کنید. مثلا:
تماشای *امنیت* -نمایش {
exec play red-alert.au
نمایش
}
اقدامات مرتبط با پرچم -new و -display فقط یک بار برای هر کدام اجرا می شود
گروه خبری منطبق فرمان اجرا شده همان فرمانی است که با الگوی اول در ارتباط است
فایل پیکربندی که با آستانه داده شده مطابقت دارد و آن را رعایت می کند.
هر دستوری که به سادگی در فایل پیکربندی فهرست شده باشد، هر بار قبل از آن اجرا می شود
حلقه به روز رسانی در tknewsbiff. رویه رزرو شده (اما توسط کاربر تعریف شده) "user" اجرا می شود
بلافاصله پس از برنامه ریزی برای نوشتن گروه های خبری در صفحه نمایش و قبل از آن
آنها در واقع نوشته شده اند.
به عنوان مثال، فرض کنید مقالات خوانده نشده در چندین گروه rec.auto ظاهر می شوند و شما آن را پخش می کنید
صدای یکسان برای هر کدام برای جلوگیری از پخش صدا در چند نوبت متوالی، آن را بسازید
دستور -new به سادگی یک پرچم تنظیم کنید. در رویه کاربر، اگر پرچم تنظیم شده باشد، صدا را پخش کنید
(و سپس پرچم را بازنشانی کنید).
روش کاربر همچنین می تواند برای راه اندازی یک خبرخوان استفاده شود. این امر از
امکان راه اندازی چندین خبرخوان فقط به دلیل وجود چندین گروه خبری
مقالات خوانده نشده (البته باید بررسی شود تا از وجود خبرخوان اطمینان حاصل شود
در حال حاضر اجرا نشده است.)
MORE متغیرها
خطوط مثال زیر متغیرهایی را نشان می دهد که می توانند بر رفتار tknewsbiff تأثیر بگذارند
تنظیم تاخیر 120
سرور news.nist.gov را تنظیم کنید
server_timeout 60 را تنظیم کنید
تنظیم newsrc ~/.newsrc
تنظیم عرض 40
تنظیم ارتفاع 20
active_file /usr/news/lib/active را تنظیم کنید
tknewsbiff به طور متناوب بین بررسی اخبار خوانده نشده و خوابیدن (مثل بسیاری
در مقطع کارشناسی). متغیر "تاخیر" چند ثانیه خواب را توصیف می کند.
متغیر "سرور" یک سرور خبری NNTP را نامگذاری می کند. پیش فرض "اخبار" است. سرور"
متغیر فقط در صورتی استفاده می شود که متغیر "active_file" تنظیم نشده باشد.
متغیر "server_timeout" توضیح می دهد که چند ثانیه باید منتظر پاسخ بود
سرور قبل از تسلیم شدن -1 به این معنی است که برای همیشه یا تا زمانی که زمان خود سرور تمام شود صبر کنید.
پیش فرض 60 ثانیه است.
متغیر "newsrc" نام فایل .newsrc شما را توصیف می کند. به طور پیش فرض، tknewsbiff
در فهرست اصلی شما برای یک فایل newsrc جستجو می کند. اگر از یک newsrc مخصوص سرور استفاده می شود
یافت. به عنوان مثال، اگر سرور را روی "cubit.nist.gov" تنظیم کرده اید، سپس tknewsbiff به دنبال آن می گردد
~/.newsrc-cubit.nist.gov. (این قرارداد Emacs gnus است - که بسیار راحت است
هنگامی که اخبار را از چندین سرور می خوانید.) اگر اخبار مربوط به سرور وجود نداشته باشد،
tknewsbiff استفاده می کند ~/.newsrc.
متغیر "width" عرضی را که tknewsbiff برای نمایش اطلاعات استفاده می کند را توصیف می کند.
اگر نام هر گروه خبری به اندازه کافی طولانی باشد، کوتاه می شود تا مقاله حساب شود
هنوز هم می توان نشان داد شما می توانید به صورت دستی اندازه پنجره را تغییر دهید تا ببینید چه چیزی کوتاه شده است.
با این حال، اگر فایل پیکربندی شما متغیر عرض را تنظیم کند، پنجره بازیابی خواهد شد
دفعه بعد که tknewsbiff اخبار خوانده نشده را بررسی می کند و نمایشگر آن را به روز می کند به آن اندازه باشد.
متغیر "height" حداکثر ارتفاعی را که tknewsbiff برای نمایش استفاده می کند، توصیف می کند
اطلاعات اگر گروه های خبری کمتری گزارش شوند، tknewsbiff پنجره را کوچک می کند
مناسب شما می توانید به صورت دستی اندازه پنجره را تغییر دهید اما اگر فایل پیکربندی شما این را تنظیم کند
متغیر ارتفاع، دفعه بعد که tknewsbiff پنجره به آن اندازه باز می گردد
اخبار خوانده نشده را بررسی می کند و نمایش آن را به روز می کند.
متغیر "active_file" نام فایل فعال خبری را توصیف می کند. اگر تنظیم شود، فعال است
فایل به طور مستقیم در ترجیح استفاده از NNTP خوانده می شود (حتی اگر متغیر "سرور" تنظیم شده باشد).
این به ویژه برای آزمایش فایل های پیکربندی جدید مفید است زیرا می توانید یک فایل را ویرایش کنید
فایل فعال جعلی و سپس روی دکمه 2 کلیک کنید تا فورا ببینید tknewsbiff چگونه پاسخ می دهد (نگاه کنید به
دکمه های زیر).
اگر متغیر محیطی DOTDIR تنظیم شده باشد، از مقدار آن به عنوان دایرکتوری استفاده می شود که در آن
برای پیدا کردن همه dotfiles به جای فهرست خانه. به ویژه، این تاثیر می گذارد
فایل پیکربندی tknewsbiff و فایل .newsrc (با فرض اینکه متغیر newsrc نباشد
به صراحت تنظیم کنید).
تماشای ناهمسان اخبار سرور
برای تماشای چندین سرور، tknewsbiff را چندین بار اجرا کنید. (از آنجایی که شما نیاز به متفاوت دارید
به هر حال فایلهای newsrc و سرورها گروههای خبری و شماره مقالههای متفاوتی دارند
تلاش برای انجام این کار در یک فرآیند واحد بی فایده است.)
می توانید tknewsbiff را با یک آرگومان مناسب به سرور دیگری اشاره کنید. بحث و جدل
هم به عنوان نام فایل پیکربندی و هم به عنوان پسوند رشته امتحان می شود.~/.tknewsbiff-".
بنابراین اگر می خواهید سرور "کلیه" را تماشا کنید، پیکربندی tknewsbiff را ذخیره کنید
اطلاعات در ~/.tknewsbiff-کلیهدو دستور زیر هر دو از آن استفاده خواهند کرد
فایل پیکربندی.
کلیه tknewsbiff
tknewsbiff ~/.tknewsbiff-کلیه
در هر دو مورد، سرور واقعی برای تماس با مقدار متغیر سرور در تنظیم می شود
فایل پیکربندی
اگر هیچ فایل پیکربندی یافت نشد، آرگومان به عنوان سرور برای تماس استفاده می شود. این
اجازه می دهد تا tknewsbiff بدون هیچ گونه آمادگی اجرا شود.
اگر آرگومان کلمه کلیدی ویژه "active" باشد (یا به "/active" ختم می شود)، به عنوان
نام یک فایل فعال این به نوبه خود برای مقداردهی اولیه متغیر "active_file" استفاده می شود
که tknewsbiff به جای استفاده از NNTP مستقیماً از فایل فعال می خواند.
ایجاد فایل فعال خود یک راه راحت برای آزمایش فایل پیکربندی شما است. برای
به عنوان مثال، پس از اجرای دستور زیر، می توانید فایل فعال خود را بارها و بارها ویرایش کنید و
دستور update-now را فعال کنید (یا با فشار دادن دکمه 2 یا تنظیم متغیر تاخیر
بسیار کم) تا ببینید tknewsbiff چگونه پاسخ می دهد.
فایل فعال باید از فرمت یک فایل فعال واقعی پیروی کند. قالب یک گروه خبری است
در هر خط بعد از نام گروه خبری، تعداد بالاترین مقاله، کمترین است
مقاله. در آخر حرف y یا m است. m یعنی گروه خبری تعدیل می شود. y یعنی
ارسال مجاز است
پنجره
هنگامی که اخبار خوانده نشده پیدا می شود، یک پنجره ظاهر می شود. پنجره اسامی را لیست می کند
گروه های خبری و تعداد مقالات خوانده نشده در هر کدام (مگر اینکه توسط -display حذف شوند
پرچم). وقتی دیگر هیچ خبر خوانده نشده ای وجود ندارد، پنجره ناپدید می شود (اگرچه
روند ادامه دارد).
دکمه ها
اتصالات دکمه یا کلید ممکن است با دستورات bind اختصاص داده شوند. با خیال راحت آنها را تغییر دهید. در
دستورات bind پیش فرض عبارتند از:
bind .list <1> help
bind .list <2> update- now
bind .list <3> unapwindow
به طور پیش فرض دکمه 1 (سمت چپ) به "کمک" محدود شده است. دستور help باعث پاپ tknewsbiff می شود
یک پنجره راهنما بالا ببرید
به طور پیش فرض، دکمه 2 (وسط) به "به روز رسانی-اکنون" محدود شده است. دستور update- now باعث می شود
tknewsbiff فوراً اخبار خوانده نشده را بررسی کند. اگر سرور اخبار شما کند است یا حفظ می کند
تعداد بسیار زیادی از گروه های خبری، یا تعداد زیادی الگو در خود دارید
فایل پیکربندی، tknewsbiff می تواند زمان قابل توجهی را قبل از به روز رسانی واقعی طول بکشد
پنجره.
به طور پیش فرض، دکمه 3 (راست) به "unmapwindow" محدود شده است. دستور unmapwindow باعث می شود
tknewsbiff برای حذف پنجره از صفحه نمایش تا دفعه بعد که اخبار خوانده نشده را پیدا کند.
(دستور mapwindow باعث می شود tknewsbiff پنجره را بازیابی کند.)
به عنوان مثال، در اینجا یک binding برای پاپ کردن xterm و اجرای rn با نگه داشتن دکمه وجود دارد
کلید shift و دکمه 1 را در پنجره لیست فشار دهید.
باند .لیست {
exec xterm -e rn &
}
در اینجا یک اتصال مشابه وجود دارد. با این حال به rn می گوید که فقط به گروه خبری که هست نگاه کند
زیر ماوس وقتی آن را فشار دادید. (متغیر "display_list" در ادامه توضیح داده شده است
این صفحه مرد.)
باند .لیست {
exec xterm -e rn [lindex $display_list [.list نزدیکترین %y]] و
}
OTHER دستورات و متغیرها
دستورات داخلی که قبلا ذکر شد عبارتند از: تماشا، نادیده گرفتن، نمایش، کمک، به روز رسانی-اکنون،
unmapwindow و mapwindow.
هر دستور Tcl و Tk را نیز می توان داد. به طور خاص، لیست گروه های خبری ذخیره می شود
در ویجت لیست ".list"، و نوار پیمایش در ویجت نوار پیمایش ذخیره می شود
".طومار". به عنوان مثال، اگر می خواهید رنگ های پیش زمینه و پس زمینه را تغییر دهید
لیست گروه های خبری، می توانید بگویید:
.list config -bg honeydew1 -fg orchid2
اینها همچنین می توانند توسط پایگاه داده منبع X نیز کنترل شوند. با این حال
فایل پیکربندی اجازه می دهد تا دستورات پیچیده دلخواه به جای ساده ارزیابی شوند
تکالیف
برخی از دستورات Tcl/Tk می توانند عملکرد صحیح tknewsbiff را مختل کنند. اینها احتمالاً خواهند بود
برای هر کسی که به اندازه کافی می داند که این دستورات را در وهله اول بدهد واضح است. به عنوان ساده
به عنوان مثال، برنامه فرض میکند که فونت در کادر فهرست دارای عرض ثابت است. گروه های خبری
اگر از فونت با عرض متغیر استفاده کنید، احتمالاً تراز نخواهد شد.
متغیرهای زیر قابل دسترسی هستند و می توانند برای مصارف باطنی استفاده شوند. همه دیگر
متغیرها خصوصی هستند متغیرها و دستورات خصوصی با "_" شروع می شوند، بنابراین نیازی به این کار ندارید
نگران برخوردهای تصادفی باشید
آرایه "db" یک پایگاه داده است که اطلاعات مربوط به اخبار خوانده شده و خوانده نشده را نگهداری می کند.
db ($newsgroup,hi) بالاترین مقاله ای است که وجود دارد. db ($group,seen) بالاترین است
مقاله ای که خوانده اید
تعدادی از لیست ها اطلاعات جالبی را حفظ می کنند. "active_list" یک لیست شناخته شده است
گروه های خبری "seen_list" فهرستی از گروههای خبری است که تاکنون به عنوان -new دیده شدهاند
و -نمایش پرچم ها در حال پردازش هستند. "previous_seen_list" "seen_list" از فهرست است
چرخه قبلی "ignore_list" لیستی از الگوهای گروه های خبری است که باید نادیده گرفته شوند. "watch_list"
لیستی از الگوهای گروه های خبری برای تماشا است. "display_list" لیستی از گروه های خبری است
در فرصت بعدی نمایش داده شود.
در حال بروز رسانی شما فایل ها
tknewsbiff هر بار که فایل پیکربندی شما را برای بررسی بیدار میشود، بهطور خودکار بازخوانی میکند
برای اخبار خوانده نشده برای مجبور کردن tknewsbiff به خواندن مجدد فایل بلافاصله (مانند اگر شما هستید
در حال آزمایش یک پیکربندی جدید یا به تازگی فایل newsrc خود را تغییر داده اید)، دکمه 2 را فشار دهید
نمایش (به دکمه های بالا مراجعه کنید).
هشدارها
tknewsbiff تعداد مقالات خوانده نشده را به عنوان بالاترین مقاله موجود منهای تعداد مقالات تعریف می کند
بالاترین مقاله ای که خوانده اید بنابراین اگر آخرین مقاله در گروه خبری را خوانده باشید اما
نه دیگران، tknewsbiff فکر می کند هیچ مقاله خوانده نشده ای وجود ندارد. (این کار غیر ممکن است
بهتر است با خواندن فایل فعال و انجام این کار بیشتر وقت گیر باشد
به طور دقیق از طریق NNTP زیرا سرورها هیچ راه کارآمدی برای گزارش حفره های خود ارائه نمی دهند
گروه های خبری.) خوشبختانه، این تعریف توسط اکثر مردم یک ویژگی در نظر گرفته می شود. آی تی
به شما امکان می دهد مقالات را بخوانید و سپس آنها را "خوانده نشده" علامت گذاری کنید اما tknewsbiff را ادامه ندهید
به شما می گوید که آنها خوانده نشده اند.
ناموجه نگرانی ها
مدیر اخبار شما ممکن است تعجب کند که آیا بسیاری از افرادی که از tknewsbiff استفاده می کنند به شدت بر NNTP تأثیر می گذارند
سرور در واقع، تاثیر آن حتی زمانی که تاخیر بسیار کم است، ناچیز است. برای جمع کردن همه
tknewsbiff اطلاعات مورد نیاز خود را از یک پرس و جوی NNTP استفاده می کند - فقط آن را درخواست می کند
فایل فعال سرور NNTP هیچ محاسبه، قالب بندی و غیره انجام نمی دهد، فقط آن را ارسال می کند
فایل. تمام پردازش های جالب به صورت محلی در خود برنامه tknewsbiff اتفاق می افتد.
با استفاده از خدمات onworks.net به صورت آنلاین از expect_tknewsbiff استفاده کنید