'\" t .\" Title: kid3 .\" Author: Urs Fleisch .\" Generator: DocBook XSL Stylesheets v1.79.2 .\" Date: 2026-07-24 .\" Manual: راهنمای Kid3 .\" Source: 3.10.1 .\" Language: Persian .\" .TH "KID3" "1" "2026-07-24" "3.10.1" "راهنمای Kid3" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" kid3, kid3\-qt, kid3\-cli \- ویرایشگر برچسب‌های صوتی ID3 .SH "خلاصه دستور (SYNOPSIS)" .HP \w'\fBkid3\fR\ 'u \fBkid3\fR [ | \fB\-\-help\fR | \fB\-\-author\fR | \fB\-\-version\fR | \fB\-\-license\fR | \fB\-\-desktopfile\ \fR\fBFILE\fR ] [\fIFILE\fR...] .HP \w'\fBkid3\-qt\fR\ 'u \fBkid3\-qt\fR [\fB\-\-portable\fR] [\fBQt\-options\fR] [\fIFILE\fR...] .HP \w'\fBkid3\-cli\fR\ 'u \fBkid3\-cli\fR [\fB\-\-portable\fR] [\fB\-\-dbus\fR] [ | \fB\-h\fR | \fB\-\-help\fR ] [\fB\-c\ COMMAND1\fR] [\fB\-c\ COMMAND2\fR...] [\fIFILE\fR...] .SH "گزینه‌ها (OPTIONS)" .PP \fB\-\-portable\fR .RS 4 ذخیره پیکربندی در فایل kid3\&.ini درون پوشه برنامه\&. .RE .PP \fIFILE\fR .RS 4 اگر \fIFILE\fR مسیر یک پوشه باشد، باز خواهد شد\&. اگر یک یا چند مسیر فایل مشخص شده باشد، پوشه مشترک آن‌ها باز شده و فایل‌ها انتخاب می‌شوند\&. .RE .SS "kid3" .PP \fB\-\-help\fR .RS 4 نمایش راهنما درباره گزینه‌ها\&. .RE .PP \fB\-\-author\fR .RS 4 نمایش اطلاعات پدیدآورنده\&. .RE .PP \fB\-\-version\fR .RS 4 نمایش اطلاعات نسخه\&. .RE .PP \fB\-\-license\fR .RS 4 نمایش اطلاعات مجوز\&. .RE .PP \fB\-\-desktopfile \fR\fBFILE\fR .RS 4 نام پایه فایل مدخل میزکار (desktop entry) برای این برنامه\&. .RE .SS "kid3\-qt" .PP \fBQt\-options\fR .RS 4 رجوع کنید به: \fBqt5options\fR(7)\&. .RE.SS "kid3\-cli" .PP \fB\-\-dbus\fR .RS 4 فعال‌سازی رابط D\-Bus\&. .RE .PP \fB\-c\fR .RS 4 اجرای یک دستور\&. استفاده از چندین گزینه \fB\-c\fR امکان‌پذیر است؛ آن‌ها به ترتیب اجرا می‌شوند\&. برای شرح دستورات در دسترس، بخش مربوط به kid3\-cli را ببینید\&. .RE .PP \fB\-h\fR|\fB\-\-help\fR .RS 4 نمایش راهنما درباره گزینه‌ها و دستورات\&. .RE .SH "مقدمه (INTRODUCTION)" .PP Kid3 برنامه‌ای کاربردی برای ویرایش کارآمد برچسب‌های ID3v1 و ID3v2 در فایل‌های MP3 است\&. این برچسب‌ها توسط اکثر پخش‌کننده‌های MP3 قابل ویرایش هستند، اما نه به شکلی چندان آسان و کارآمد\&. افزون بر این، برچسب‌ها در فایل‌های Ogg/Vorbis، Opus، DSF، FLAC، MPC، APE، MP4/AAC، MP2، Speex، TrueAudio، WavPack، WMA، WAV، AIFF و ماژول‌های ترکر (MOD، S3M، IT، XM) نیز پشتیبانی می‌شوند\&. .PP Kid3 فایل‌های MP3 را استخراج (rip/grab) یا رمزگذاری نمی‌کند، بلکه هدف آن ویرایش برچسب‌های ID3 تمامی فایل‌های یک آلبوم به شیوه‌ای کارآمد است، یعنی با کمترین تعداد کلیک ماوس و فشردن کلید ممکن\&. در حالی که اغلب برنامه‌های دیگر تنها می‌توانند برچسب‌های ID3v1 یا ID3v2 را ویرایش کنند، Kid3 کنترل کاملی بر هر دو نسخه دارد، می‌تواند برچسب‌ها را بین این دو قالب تبدیل کند و به تمام برچسب‌های ID3v2 دسترسی دارد\&. برچسب‌های چندین فایل را می‌توان روی یک مقدار یکسان تنظیم کرد، به عنوان مثال نام هنرمند، آلبوم، سال و سبک (genre) تمامی فایل‌های یک آلبوم معمولاً مقادیر یکسانی دارند و می‌توان آن‌ها را با هم تنظیم کرد\&. اگر اطلاعات مربوط به برچسب‌ها در نام فایل وجود داشته باشد، می‌توان برچسب‌ها را به‌طور خودکار از روی نام فایل تنظیم کرد\&. همچنین می‌توان نام فایل را بر اساس برچسب‌های یافت‌شده در فایل با قالب‌های دلخواه تنظیم نمود\&. .PP فرآیند ویرایش با جایگزینی خودکار نویسه‌ها یا زیررشته‌ها بیشتر تسهیل می‌شود، برای نمونه جهت حذف نویسه‌های غیرمجاز از نام فایل‌ها\&. کنترل خودکار حروف بزرگ و کوچک، استفاده از یک شیوه نام‌گذاری یکپارچه را در تمامی برچسب‌ها آسان می‌کند\&. .PP اطلاعات برچسب برای آلبوم‌های کامل را می‌توان از \m[blue]\fBgnudb\&.org\fR\m[]\&\s-2\u[1]\d\s+2، \m[blue]\fBMusicBrainz\fR\m[]\&\s-2\u[2]\d\s+2، \m[blue]\fBDiscogs\fR\m[]\&\s-2\u[3]\d\s+2، \m[blue]\fBAmazon\fR\m[]\&\s-2\u[4]\d\s+2 یا سایر منابع فهرست قطعات دریافت کرد\&. قالب وارد کردن با عبارات باقاعده (regular expressions) آزادانه قابل پیکربندی است\&. .PP لطفاً هرگونه مشکل یا درخواست ویژگی جدید را به نویسنده گزارش دهید\&. .SH "استفاده از KID3 (USING KID3)" .SS "قابلیت‌های Kid3 (Kid3 features)" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} ویرایش برچسب‌های ID3v1\&.1 .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} ویرایش تمام فریم‌های ID3v2\&.3 و ID3v2\&.4 .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} ویرایش برچسب‌های چندین فایل .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تبدیل بین برچسب‌های ID3v1 و ID3v2 .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} ویرایش برچسب‌های MP3، Ogg/Vorbis، Opus، DSF، FLAC، MPC، APE، MP4/AAC، MP2، Speex، TrueAudio، WavPack، WMA، WAV و AIFF .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تولید برچسب‌ها از روی نام فایل .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تولید برچسب‌ها از محتوای فیلدهای برچسب .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تولید نام فایل از روی برچسب‌ها .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تولید و تغییر نام پوشه‌ها از روی برچسب‌ها .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تولید فایل فهرست پخش .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تبدیل خودکار حروف بزرگ و کوچک و ترجمه رشته‌ها .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} درون‌ریزی از \m[blue]\fBgnudb\&.org\fR\m[]\&\s-2\u[1]\d\s+2، \m[blue]\fBMusicBrainz\fR\m[]\&\s-2\u[2]\d\s+2، \m[blue]\fBDiscogs\fR\m[]\&\s-2\u[3]\d\s+2، \m[blue]\fBAmazon\fR\m[]\&\s-2\u[4]\d\s+2 و سایر منابع داده .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} برون‌بری به قالب‌های CSV، HTML، فهرست پخش، Kover XML و سایر قالب‌ها\&. فایل‌های CSV برون‌بری‌شده می‌توانند دوباره درون‌ریزی شوند\&. .RE .SS "نمونه کاربرد (Example Usage)" .PP این بخش یک نشست کاری معمولی با Kid3 را شرح می‌دهد\&. فرض کنیم پوشه‌ای حاوی فایل‌های MP3 از قطعات آلبوم «Let\*(Aqs Tag» از گروه «One Hit Wonder» داریم\&. این پوشه با قالب «artist \- album» نام‌گذاری شده است، که در مورد ما One Hit Wonder \- Let\*(Aqs Tag می‌باشد\&. این پوشه شامل قطعاتی با قالب «track title\&.mp3» است، که به نظر من کاربردی است زیرا نام فایل‌ها کوتاه بوده (هنگام استفاده از پخش‌کننده‌های قابل‌حمل MP3 با صفحه‌نمایش‌های کوچک مهم است) و هنگام مرتب‌سازی بر اساس الفبا، در ترتیب درست قرار می‌گیرند (هنگام استفاده از پخش‌کننده‌های سخت‌افزاری MP3 که قطعات را به ترتیب الفبا یا به ترتیبی که روی CD رایت شده‌اند پخش می‌کنند مهم است، و این ترتیب هنگام استفاده از \fBmkisofs\fR الفبایی است)\&. علاوه بر این، اطلاعات هنرمند و آلبوم در حال حاضر در نام پوشه وجود دارد و نیازی به تکرار آن در نام فایل نیست\&. اما برای بازگشت به مثال ما، فهرست فایل‌های پوشه به این صورت است: .PP 01 Intro\&.mp3 .PP 02 We Only Got This One\&.mp3 .PP 03 Outro\&.mp3 .PP این فایل‌ها هنوز برچسبی ندارند و ما می‌خواهیم با استفاده از Kid3 آن‌ها را ایجاد کنیم\&. ما از گزینهٔ منوی File → Open (یا دکمهٔ نوار ابزار) استفاده کرده و یکی از فایل‌های این پوشه را انتخاب می‌کنیم\&. تمام فایل‌ها در جعبه‌فهرست فایل نمایش داده خواهند شد\&. از آن‌جا که ترجیح می‌دهیم کار اضافی نکنیم، می‌خواهیم از اطلاعات موجود در نام پوشه و فایل‌ها برای تولید برچسب‌ها استفاده کنیم\&. بنابراین تمام فایل‌ها را انتخاب می‌کنیم، سپس روی دکمهٔ To: Tag 1 در بخش File کلیک می‌کنیم\&. این کار مقادیر عنوان، هنرمند، آلبوم و قطعه را در همهٔ فایل‌ها تنظیم می‌کند\&. برای تنظیم مقادیر سال و سبک برای همهٔ فایل‌ها، تمام فایل‌ها را در حالت انتخاب نگه می‌داریم و مقدار «2002» را برای Date تایپ کرده و «Pop» را از جعبهٔ ترکیبی (combobox) Genre انتخاب می‌کنیم\&. برای اعمال فقط این دو مقدار، جعبه‌های علامت‌زدن (checkboxes) آن‌ها به طور خودکار انتخاب شده و سایر جعبه‌ها بدون علامت باقی می‌مانند\&. حال با انتخاب تنها فایل اول، انتخاب را تغییر می‌دهیم و می‌بینیم که تمام برچسب‌ها شامل مقادیر صحیح هستند\&. برچسب‌های سایر فایل‌ها را نیز می‌توان با انتخاب تک‌تک آن‌ها بازبینی کرد\&. وقتی از برچسب‌ها راضی بودیم، از گزینهٔ منوی File → Save (یا دکمهٔ نوار ابزار) استفاده می‌کنیم\&. انتخاب گزینهٔ منوی File → Create Playlist (یا دکمهٔ نوار ابزار) فایلی با نام One Hit Wonder \- Let\*(Aqs Tag\&.m3u در پوشه ایجاد خواهد کرد\&. .SH "مرجع دستورات (COMMAND REFERENCE)" .SS "عناصر رابط گرافیکی (The GUI Elements)" .PP رابط گرافیکی کاربر (GUI) در Kid3 به شش بخش تقسیم شده است: در سمت چپ جعبه‌های فهرست فایل و پوشه قرار دارند، و سمت راست شامل بخش‌های File، Tag 1، Tag 2 و Tag 3 است\&. .PP برای جابه‌جایی میان بخش‌های مختلف با استفاده از صفحه‌کلید، چندین کلید میانبر پشتیبانی می‌شود\&. در بخش‌های برچسب، میانبرها در صورتی که در حال ویرایش متن نباشید یا در ستون اول باشید فعال هستند\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Alt+Left: رفتن به بخش قبلی (Command+[ در macOS\(rg) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Alt+Right: رفتن به بخش بعدی (Command+] در macOS\(rg) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Ctrl+Shift+V: از برچسب دیگر .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Ctrl+C: رونوشت .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Ctrl+V: چسباندن .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Shift+Delete: برداشتن .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} F2: ویرایش .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Insert: افزودن .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Delete: حذف .RE .sp .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBفهرست فایل‌ها (File List)\fR .RS 4.PP فهرست فایل شامل نام تمامی فایل‌های موجود در پوشهٔ بازشده است که با فیلتر نام فایل انتخاب‌شده (معمولاً *\&.mp3 *\&.ogg *\&.opus *\&.dsf *\&.flac *\&.mpc *\&.aac *\&.m4a *\&.m4b *\&.m4p *\&.mp4 *\&.mp2 *\&.spx *\&.tta *\&.wv *\&.wma *\&.wav *\&.aiff *\&.ape) همخوانی دارند\&. می‌توان یک یا چند فایل را انتخاب کرد\&. برای خارج کردن همه از انتخاب، روی فضای خالی پس از ورودی‌های جعبهٔ فهرست کلیک کنید\&. انتخاب انجام‌شده مشخص می‌کند کدام فایل‌ها تحت تأثیر عملیاتی قرار می‌گیرند که با استفاده از دکمه‌های شرح‌داده‌شده در زیر در دسترس هستند\&. .PP علاوه بر Name، ستون‌های دیگر شامل Size، Type و Date Modified با جزئیات فایل نیز می‌توانند نمایش داده شوند\&. ستون‌ها را می‌توان با برداشتن تیک نام آن‌ها در منوی زمینهٔ (context menu) سرستون فهرست پنهان کرد\&. ترتیب ستون‌ها با کشیدن و رها کردن (drag and drop) قابل تغییر است\&. ترتیب مرتب‌سازی نیز با کلیک روی سرستون تغییر می‌کند\&. .PP مقادیر برچسب‌های استاندارد را نیز می‌توان در ستون‌های فهرست فایل نمایش داد و ویرایش کرد\&. .PP در سمت چپ نام‌ها یک آیکون قابل نمایش است: یک دیسک برای نشان دادن اینکه فایل تغییر یافته است، یا اطلاعاتی دربارهٔ اینکه کدام برچسب‌ها وجود دارند (V1، V2، V1V2 یا NO TAG؛ در صورتی که فایل هنوز خوانده نشده باشد هیچ آیکونی نمایش داده نمی‌شود)\&. .PP پوشه‌ها با یک آیکون پوشه نمایش داده می‌شوند\&. اگر پوشه‌ای باز شود، فایل‌های آن در یک درخت سلسله‌مراتبی نمایش داده خواهند شد\&. با انتخاب فایل‌ها از زیرپوشه‌ها، می‌توان عملیات را روی فایل‌های موجود در پوشه‌های مختلف اجرا کرد؛ این ویژگی زمانی مفید است که مجموعهٔ موسیقی به‌صورت یک پوشه برای هر هنرمند و شامل پوشه‌های آلبوم‌های آن هنرمند سازمان‌دهی شده باشد\&..PP کلیک‌راست درون فهرست فایل، منوی زمینه‌ای را با دستورهای زیر باز می‌کند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Expand all: تمام درخت‌های پوشه را باز می‌کند (اگر کلید Shift فشرده شده باشد، فقط درخت جاری) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Collapse all: تمام درخت‌های پوشه را جمع می‌کند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Rename: نام یک فایل را تغییر می‌دهد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Move to Trash: فایلی را به سطل زباله منتقل می‌کند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Play: یک فایل را پخش می‌کند؛ بخش Play را ببینید\&. اگر فایل انتخاب‌شده یک لیست پخش باشد، فایل‌های آن لیست پخش، پخش خواهند شد\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Edit: یک لیست پخش را ویرایش می‌کند؛ بخش Edit Playlist را ببینید\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} ورودی‌های بعدی دستورهای کاربر هستند که می‌توان آن‌ها را در برگهٔ User Actions از Configure Kid3 تعریف کرد\&. پخش با دوبار کلیک را نیز می‌توان در آنجا فعال کرد\&. .sp هنگامی که Select file on play فعال باشد، قطعه‌ای که هم‌اکنون پخش می‌شود به‌طور خودکار در فهرست فایل انتخاب می‌گردد\&. .RE .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBEdit Playlist\fR .RS 4 .PP یک لیست پخش می‌تواند به‌صورت خالی یا شامل قطعه‌های یک پوشه ایجاد شود؛ بخش Create Playlist را ببینید\&. فایل لیست پخشی که به این روش ایجاد شده را می‌توان با دوبار کلیک یا با استفاده از گزینهٔ Edit از منوی زمینهٔ فهرست فایل ویرایش کرد\&. پنجره‌ای حاوی ورودی‌های لیست پخش نشان داده می‌شود\&. امکان باز کردن هم‌زمان چندین لیست پخش وجود دارد\&. .PP ورودی‌های جدید را می‌توان با کشیدن و رها کردن از فهرست فایل، یک مدیر فایل یا لیست پخش دیگر اضافه کرد\&. اگر یک ورودی از لیست پخش دیگری کشیده شود، بسته به سیستم، منتقل یا کپی خواهد شد\&. برای اجرای عملیات دیگر به ترتیب باید کلیدهای Shift، Ctrl یا Alt (برای کپی کردن به جای انتقال در macOS\(rg) فشرده شوند\&. تغییر ترتیب ورودی‌ها در لیست پخش نیز از طریق کشیدن و رها کردن امکان‌پذیر است\&. به‌علاوه، ورودی‌ها را می‌توان با استفاده از میان‌برهای صفحه‌کلید Ctrl+Shift+Up و Ctrl+Shift+Down جابه‌جا کرد (در macOS\(rg باید کلید Command به جای Ctrl فشرده شود)\&. یک ورودی را می‌توان با کلید Delete حذف کرد\&. .PP لطفاً به این نکته توجه کنید: برای کشیدن ورودی‌ها از فهرست فایل، باید آن‌ها را از سمت چپ (نزدیک آیکون‌ها) بگیرید؛ انجام همین حرکت در سمت راست، انتخاب چندتایی انجام خواهد داد و بدین ترتیب چنین کاری همچنان به‌راحتی امکان‌پذیر است\&. .PP هنگامی که یک لیست پخش تغییر یافت، تغییرات را می‌توان با Save ذخیره کرد یا با Cancel نادیده گرفت\&. هنگام بستن پنجره، در صورت وجود تغییرات ذخیره‌نشده، یک پیام تأیید نمایش داده می‌شود\&. .PP قطعه‌های انتخاب‌شده در یک لیست پخش به‌طور خودکار در فهرست فایل انتخاب می‌شوند و بدین ترتیب امکان ویرایش برچسب‌های آن‌ها فراهم می‌گردد\&. .PP برای اجرای اقدامات روی یک لیست پخش، فایل آن باید در فهرست فایل انتخاب شود\&. گزینهٔ Edit از منوی زمینه به گفت‌وگوی شرح‌داده‌شده در این بخش منجر می‌شود و Play پخش‌کنندهٔ رسانه را با قطعه‌های لیست پخش آغاز می‌کند\&. اقدامات کاربر می‌توانند روی لیست‌های پخش عمل کنند؛ برای مثال Export Playlist Folder که فایل‌ها را از یک لیست پخش در یک پوشه کپی می‌کند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBFolder List\fR .RS 4 .PP فهرست پوشه شامل نام پوشه‌های موجود در پوشهٔ بازشده، و همچنین پوشهٔ جاری (\&.) و والد (\&.\&.) است\&. این امکان را فراهم می‌سازد تا بدون استفاده از دستور Open یا کشیدن و رها کردن، پوشه را به‌سرعت تغییر دهید\&. .PP نمایانی ستون‌ها، ترتیب و مرتب‌سازی را می‌توان همان‌طور که در بخش file list توضیح داده شد پیکربندی کرد\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBFile\fR .RS 4 .PP اطلاعاتی دربارهٔ کدگذاری (MP3، Ogg، Opus، DSF، FLAC، MPC، APE، MP2، MP4، AAC، Speex، TrueAudio، WavPack، WMA، WAV، AIFF)، نرخ بیت، نرخ نمونه‌برداری، کانال‌ها و طول فایل را نشان می‌دهد\&. .PP کادر ویرایش خطی Name شامل نام فایل است (اگر فقط یک فایل انتخاب شده باشد)\&. اگر این نام تغییر یابد، فایل هنگام استفاده از دستور Save تغییر نام خواهد داد\&. .PP کادر ترکیبی (combo box) و ویرایش خطی Format شامل قالبی است که هنگام تولید نام فایل از برچسب اول یا دوم استفاده می‌شود\&. نام فایل می‌تواند شامل نویسه‌های دلخواه باشد، حتی بخش پوشه‌ای که با یک ممیز (اسلش) از نام فایل جدا شده است، اما آن پوشه باید از پیش وجود داشته باشد تا تغییر نام با موفقیت انجام شود\&. کدهای ویژهٔ زیر برای درج مقادیر برچسب در نام فایل استفاده می‌شوند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %s %{title} عنوان (ترانه) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %a %{artist} هنرمند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %l %{album} آلبوم .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %c %{comment} توضیح .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %y %{year} سال .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track} قطعه (برای نمونه 01) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track\&.n} قطعه با عرض فیلد n (برای نمونه 001 برای %{track\&.3}) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %T %{tracknumber} قطعه (بدون صفرهای ابتدایی، برای نمونه 1) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %g %{genre} سبک .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %{ignore} هنگام ایجاد تگ‌ها از روی نام فایل نادیده گرفته می‌شود .RE .PP کدهای قالب‌بندی به مثال‌های ارائه‌شده در بالا محدود نمی‌شوند\&. می‌توان از هر نام فریمی استفاده کرد، برای نمونه نام‌های فریم یکپارچه مانند \fB%{albumartist}\fR، \fB%{discnumber\&.1}\fR، \fB%{bpm}\fR یا نام‌های خاصِ قالب مانند \fB%{popm}\fR\&. .PP می‌توان با افزودن رشته‌ها در علامت نقل‌قول دوتایی درون آکولادهای یک کد قالب، آن‌ها را به عنوان پیشوند یا پسوند جایگزین آن کد قالب اضافه کرد\&. این رشته‌ها تنها زمانی در رشتهٔ حاصل قرار می‌گیرند که کد قالب مقداری غیرخالی به دست دهد\&. برای نمونه، اگر نام فایل باید هم عنوان و هم زیرعنوان را شامل شود، می‌توان از \fB%{title} [%{subtitle}]\fR در رشتهٔ قالب استفاده کرد\&. اما در صورتی که هیچ فریم زیرعنوانی برای فایلی وجود نداشته باشد، این امر منجر به ایجاد رشته‌ای خواهد شد که به [] ختم می‌شود\&. به‌منظور حذف قلاب‌ها در صورت نبود زیرعنوان، در عوض باید از \fB%{title}%{" ["subtitle"]"}\fR استفاده شود\&. این کار در صورتی که زیرعنوانی وجود نداشته باشد، قلاب‌ها، فاصلهٔ ابتدایی و زیرعنوان را حذف خواهد کرد\&. .PP فهرست قالب‌های دردسترس را می‌توان در کادر محاوره‌ای که با کلیک روی دکمهٔ Filename from tag در زبانهٔ File از تنظیمات ظاهر می‌شود ویرایش کرد\&. .PP یک جعبهٔ کشویی دومِ Format (با پیکان رو به پایین) برای تولید تگ‌ها از روی نام فایل به کار می‌رود\&. اگر قالب نام فایل با این الگو همخوانی نداشته باشد، چند قالب پرکاربرد دیگر نیز امتحان می‌شوند\&. .PP برخی از قالب‌های پرکاربرد نام فایل از قبل در جعبهٔ کشویی در دسترس هستند، اما امکان تایپ یک قالب خاص درون کادر متنی ویرایش خط (line edit) نیز وجود دارد\&. .PP فهرست قالب‌های دردسترس را می‌توان در کادر محاوره‌ای که با کلیک روی دکمهٔ Tag from filename در زبانهٔ File از تنظیمات ظاهر می‌شود ویرایش کرد\&. .PP به‌صورت داخلی، یک عبارت باقاعده (regular expression) از روی کدهای قالب ساخته می‌شود\&. در صورت نیاز به عبارت‌های باقاعده پیشرفته، قالب تولید تگ‌ها از روی نام‌های فایل را می‌توان به صورت یک عبارت باقاعده کامل به همراه گروه‌های گیرنده (captures) ارائه داد که پیش از آن‌ها کدهای قالب آمده باشند؛ برای نمونه جهت استخراج شماره قطعه‌ها بدون حذف صفرهای ابتدایی، می‌توان قالبی مانند "\fB/%{track}(\ed+) %{title}(\&.*)\fR" را به کار برد\&. .PP From: Tag 1، Tag 2: نام فایل را با استفاده از قالب برگزیده و به‌ترتیب با تگ نخست یا تگ دوم تنظیم می‌کند\&. .PP To: Tag 1، Tag 2: تگ‌ها از روی نام فایل تنظیم می‌شوند\&. ابتدا قالبی که در Format مشخص شده است به کار می‌رود\&. اگر نام فایل موجود با این قالب همخوانی نداشته باشد، قالب‌های زیر امتحان می‌شوند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Artist \- Album/Track Song .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Album/Track \- Artist \- Song .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} /Artist \- Album \- Track \- Song .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} Album/Artist \- Track \- Song .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} Album/Artist \- Song .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Artist/Album/Track Song .RE .PP اگر یک فایل تکی انتخاب شده باشد، کنترل‌های GUI با مقادیر استخراج‌شده از نام فایل پر می‌شوند\&. اگر چندین فایل انتخاب شده باشند، برچسب‌های فایل‌ها مستقیماً بر اساس نام فایل‌ها تنظیم می‌شوند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبرچسب ۱ (Tag 1)\fR .RS 4 .PP ابزارک‌های ویرایش خط (line edit) برای Title، Artist، Album، Comment، Date، Track Number و Genre جهت ویرایش مقدار متناظر در برچسب نخست فایل‌های انتخاب‌شده به کار می‌روند\&. مقدار زمانی تغییر داده خواهد شد که فایل‌های انتخاب‌شده تغییر کنند یا پیش از عملیات‌هایی نظیر Save و Quit و هنگامی که جعبهٔ علامت‌زدن (check box) متناظر در سمت چپ نام فیلد علامت خورده باشد\&. این ویژگی برای تغییر دادن تنها برخی از مقادیر و دست‌نخورده باقی گذاشتن سایر مقادیر مفید است\&. .PP اگر یک فایل تکی انتخاب شده باشد، تمامی جعبه‌های علامت‌زدن تیک می‌خورند و ابزارک‌های ویرایش خط حاوی مقادیر موجود در برچسب‌های این فایل خواهند بود\&. اگر برچسبی در فایل یافت نشود، مقدار خالی متناظر نمایش داده می‌شود که برای ویرایشگرهای خط Title، Artist، Album و Comment یک رشتهٔ خالی، برای ویرایشگرهای عددی Date و Track Number مقدار 0، و برای جعبهٔ کشویی (combo box) Genre یک مقدار انتخاب‌شدهٔ خالی است\&. مقادیر را می‌توان تغییر داد و اگر جعبهٔ علامت‌زدن متناظر فعال باشد، پس از تغییر فایل انتخاب‌شده، این مقادیر برای آن فایل تنظیم خواهند شد\&. سپس فایل با نماد دیسک در جعبهٔ فهرست فایل‌ها به عنوان تغییریافته نشانه‌گذاری می‌شود، اما تا زمانی که از دستور Save استفاده نشود بدون تغییر بر روی دیسک باقی می‌ماند\&. .PP اگر چندین فایل انتخاب شده باشند، تنها مقادیری که در تمامی فایل‌های انتخاب‌شده یکسان هستند نمایش داده می‌شوند\&. در تمامی کنترل‌های دیگر، مقادیر خالی همان‌طور که در بالا شرح داده شد نمایش می‌یابند\&. برای جلوگیری از تغییرات ناخواسته، علامت همهٔ جعبه‌های علامت‌زدن برداشته می‌شود\&. اگر لازم باشد مقداری برای همهٔ فایل‌های انتخاب‌شده تنظیم شود، می‌توان آن را ویرایش کرد و جعبهٔ علامت‌زدن مربوطه را فعال نمود\&. مقادیر هنگام تغییر فایل‌های انتخاب‌شده برای تمام فایل‌ها اعمال خواهند شد و با استفاده از دستور Save قابل ذخیره‌سازی هستند\&. .PP جعبه‌های علامت‌زدن همچنین بر عملکرد بیشتر دستورهایی که برچسب‌ها را تحت تأثیر قرار می‌دهند (مانند رونوشت، جای‌گذاری و انتقال میان برچسب‌های ۱ و ۲) نظارت دارند\&. برای آسان‌تر شدن کار با چندین فایل که در آن‌ها علامت همهٔ جعبه‌ها برداشته شده است، رفتار این دستورها در حالتی که همهٔ جعبه‌های علامت‌زدن تیک خورده باشند و حالتی که هیچ‌کدام علامت نداشته باشند، یکسان خواهد بود\&. .PP From Tag 2: فیلدهای tag 1 از روی مقادیر متناظر در tag 2 مقداردهی می‌شوند\&. اگر یک فایل تکی انتخاب شده باشد، کنترل‌های GUI با مقادیر برگرفته از tag 2 پر می‌شوند\&. اگر چندین فایل انتخاب شده باشند، برچسب‌های فایل‌ها مستقیماً تنظیم می‌گردند\&. .PP Copy: بافر رونوشت با مقادیر Tag 1 پر می‌شود\&. تنها مقادیری که جعبهٔ علامت‌زدن آن‌ها تیک خورده باشد در دستورهای بعدی Paste استفاده خواهند شد\&. .PP Paste: مقادیر را از بافر رونوشت در کنترل‌های GUI جای‌گذاری می‌کند\&. .PP Remove: این دستور تمامی کنترل‌های GUI را روی مقادیر خالی آن‌ها تنظیم می‌کند که منجر به حذف همهٔ مقادیر می‌شود\&. فایل ذخیره‌شده پس از آن فاقد tag 1 خواهد بود\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبرچسب ۲ (Tag 2)\fR .RS 4 .PP کنترل‌های GUI مشابه آنچه برای بخش Tag 1 شرح داده شد کار می‌کنند، اما اندازهٔ رشته‌ها نامحدود است\&. .PP برای Genre در tag 2، علاوه بر سبک‌های فهرست‌شده در جعبهٔ کشویی (combo box) می‌توانید نام‌های دلخواه خود را نیز به کار ببرید؛ کافی است نام مورد نظر را در ویرایشگر خط تایپ کنید\&. .PP برچسب tag 2 نه تنها می‌تواند شامل همان مقادیر tag 1 باشد، بلکه ساختار آن به شکلی انعطاف‌پذیر از چندین فریم (frame) تشکیل شده است که خود از چندین فیلد ساخته شده‌اند\&. جدول tag 2 تمام فریم‌های موجود در فایل انتخاب‌شده را نمایش می‌دهد\&. .PP Edit: پنجره‌ای را باز می‌کند که امکان ویرایش تمامی فیلدهای فریم انتخاب‌شده را فراهم می‌سازد\&. اگر چندین فایل انتخاب شده باشند، فیلدهای ویرایش‌شده بر روی تمامی فایل‌های انتخاب‌شده‌ای که حاوی چنین فریمی هستند اعمال خواهند شد\&. .PP Add: یک کادر محاوره‌ای برای انتخاب نوع فریم ظاهر می‌شود و می‌توان فریمی از نوع انتخاب‌شده را ویرایش کرد و به فایل افزود\&. این قابلیت همچنین برای افزودن یک فریم به چندین فایل انتخاب‌شده کار می‌کند\&. .PP Delete: فریم انتخاب‌شده را در فایل‌های انتخاب‌شده حذف می‌کند\&. .PP عبارت Drag album artwork here (طرح جلد آلبوم را به اینجا بکشید) زمانی نمایش داده می‌شود که فایل فاقد تصویر جلد جاسازی‌شده باشد\&. تصویری را می‌توان با کشیدن و رها کردن (drag and drop) از یک مرورگر یا مدیر فایل اضافه کرد که در اینجا نمایش داده خواهد شد\&. فریم‌های تصویر را می‌توان با دو بار کلیک روی این کنترل ویرایش کرد یا افزود\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبرچسب ۳ (Tag 3)\fR .RS 4 .PP برخی از فایل‌ها می‌توانند بیش از دو برچسب داشته باشند و در این حالت بخش سومی برای برچسب نمایان می‌شود\&. انواع فایل زیر می‌توانند چنین بخشی برای Tag 3 داشته باشند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} فایل‌های MP3 می‌توانند یک برچسب ID3v1\&.1، یک برچسب ID3v2 (نسخهٔ 2\&.3\&.0 یا 2\&.4\&.0) و در بخش سوم یک برچسب APE داشته باشند\&. این برچسب‌های APE برای اطلاعات replay gain استفاده می‌شوند\&. در بخش Tag 3 این اطلاعات قابل مشاهده است، و برچسب APE را می‌توان با دکمهٔ Remove حذف کرد\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} قطعهٔ (chunk) داده‌ای RIFF INFO در فایل‌های WAV در بخش Tag 3 در دسترس است؛ زیرا بخش Tag 1 به برچسب‌های ID3v1\&.1 اختصاص یافته و محدودیت‌های آن‌ها را مدیریت می‌کند\&. بخش Tag 2 همچنان برای برچسب‌های ID3v2\&.4\&.0 استفاده می‌شود که برای فایل‌های WAV نیز پشتیبانی می‌شوند، اما به نظر می‌رسد از قطعه‌های RIFF INFO پشتیبانی بهتری به عمل می‌آید\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} فایل‌های FLAC معمولاً از Vorbis comment برای فراداده‌های خود استفاده می‌کنند\&. با این حال، فایل‌های FLACی وجود دارند که دارای برچسب‌های ID3v1 و ID3v2 هستند و می‌توان آن‌ها را در بخش‌های Tag 1 و Tag 3 یافت\&. برچسب‌های ID3 در فایل‌های FLAC فقط توسط TagLib پشتیبانی می‌شوند، بنابراین افزونهٔ OggFlacMetadata باید در برگهٔ Plugins از settings (تنظیمات) غیرفعال شود\&. .RE .PP کنترل‌های GUI مشابه بخش Tag 2 کار می‌کنند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBمتن همگام ترانه و کدهای زمان‌بندی رویداد (Synchronized Lyrics and Event Timing Codes)\fR .RS 4.PP برای اطلاعات همگام‌شده با داده‌های صوتی، ویرایشگر خاصی در دسترس است\&. این فریم‌ها برای برچسب‌های ID3v2\&.3\&.0 و ID3v2\&.4\&.0 پشتیبانی می‌شوند\&. برای افزودن چنین فریمی، باید نام فریم خاص در فهرستی که هنگام کلیک روی دکمهٔ Add نمایان می‌شود انتخاب شود \- به‌ترتیب Synchronized Lyrics یا Event Timing Codes\&. ویرایشگر برای هر دو نوع یکسان است؛ برای کدهای زمان‌بندی رویداد تنها مجموعه‌ای ازپیش‌تعریف‌شده از رویدادها در دسترس است، در حالی که برای متن همگام ترانه باید متن وارد شود\&. در ادامه، ویرایش متن ترانه همگام توضیح داده شده است\&..PP فایلی دارای برچسب ID3v2 انتخاب می‌شود، با استفاده از Add و انتخاب Synchronized Lyrics وارد ویرایشگر متن ترانه می‌شوید\&. برای فریم موجود Synchronized Lyrics، آن فریم انتخاب شده و روی Edit کلیک می‌شود\&. پخش‌کننده به‌طور خودکار با فایل جاری باز می‌شود تا فایل برای همگام‌سازی متن ترانه قابل پخش و مکث باشد\&. .PP تنظیمات بالای ویرایشگر SYLT معمولاً نیازی به تغییر ندارند\&. اگر متن ترانه حاوی نویسه‌هایی است که در مجموعه نویسه‌های Latin 1 وجود ندارند، تغییر کدگذاری متن به UTF16 (یا UTF8 برای ID3v2\&.4\&.0) توصیه می‌شود\&. برای متن ترانه‌های انگلیسی و حداکثر سازگاری، باید از ISO\-8859\-1 استفاده شود\&. .PP بخش Lyrics پنج دکمه در بالا دارد\&. Add یک رویداد زمانی جدید به جدول اضافه خواهد کرد\&. زمان از موقعیت پخش‌کننده گرفته می‌شود، بنابراین افزودن یک مدخل هنگام پخش قطعه، سطری را برای موقعیت در حال پخش کنونی اضافه خواهد کرد\&. رویدادها در جدول باید به ترتیب زمانی مرتب شوند، بنابراین سطر بر همین اساس درج خواهد شد\&. با مدخل‌های دارای زمان نامعتبر به‌صورت ویژه رفتار می‌شود: اگر سطر در حال حاضر انتخاب‌شده دارای زمان نامعتبر باشد، به‌جای افزودن سطری جدید، برچسب زمانی آن با زمان جاری جایگزین خواهد شد\&. اگر زمان جاری نامعتبر نباشد، نخستین سطر با زمان نامعتبر در صورت وجود استفاده خواهد شد\&. این رفتار باید افزودن برچسب‌های زمانی را در صورتی که متن ترانه از پیش در جدول باشد اما فاقد برچسب‌های زمانی باشد (که حالت رایج هنگام درون‌ریزی متن ترانه ناهمگام است) آسان‌تر کند\&. توجه داشته باشید که زمان نامعتبر به‌صورت 00:00\&.00 نشان داده می‌شود، یعنی مشابه زمان ابتدای مطلق قطعه که نامعتبر نیست\&. برای نامعتبر کردن یک زمان، کلید Delete را فشار دهید، یا از Clear در منوی زمینه استفاده کنید\&. سطرهای جدیدی که با استفاده از Insert row از منوی زمینه درج می‌شوند یا هنگام درون‌ریزی متن ترانه ناهمگام با From Clipboard یا Import ایجاد می‌شوند نیز حاوی برچسب‌های زمانی نامعتبر هستند\&. سطرهای جدول را می‌توان با کلیک روی دکمهٔ Delete یا با استفاده از Delete rows از منوی زمینه حذف کرد\&. .PP متن‌های ترانه همگام‌شده را می‌توان با استفاده از Import از یک فایل درون‌ریزی کرد\&. قالب مورد انتظار LRC ساده یا پیشرفته است\&. اگر فایل انتخاب‌شده حاوی کروشه در خط اول نباشد، فرض می‌شود یک فایل متنی ساده با متن ترانه ناهمگام است\&. خطوط چنین فایلی سپس با برچسب‌های زمانی نامعتبر درون‌ریزی می‌شوند\&. اطلاعات زمان را می‌توان با استفاده از دکمهٔ Add یا با ورود دستی اضافه کرد\&. همچنین می‌توان متن‌های ترانه را از طریق رونوشت و جای‌گذاری با استفاده از From Clipboard درون‌ریزی کرد\&. متن‌های ترانه همگام‌شده را می‌توان با استفاده از Export در فایل‌های LRC نوشت\&. توجه داشته باشید که تنها مدخل‌های دارای برچسب زمانی معتبر صادر خواهند شد و مدخل‌ها بر اساس زمان مرتب می‌شوند\&. مدخل‌های دارای زمان نامعتبر نیز در فریم SYLT ذخیره نخواهند شد، بنابراین پیش از خروج از محاوره اطمینان حاصل کنید که تمام اطلاعات زمان‌بندی گنجانده شده‌اند\&. .PP مشخصات \m[blue]\fBID3 specification\fR\m[]\&\s-2\u[5]\d\s+2 یک برچسب زمانی برای هر هجا را پیشنهاد می‌کند\&. با این حال بیشتر پخش‌کننده‌ها تنها از تفکیک‌پذیری در سطح سطر یا جمله پشتیبانی می‌کنند\&. برای پشتیبانی از هر دو مورد کاربرد، Kid3 از همان قراردادهای \m[blue]\fBSYLT Editor\fR\m[]\&\s-2\u[6]\d\s+2 پیروی می‌کند\&. متنی که در جدول وارد می‌شود، در صورتی که با فاصله یا خط پیوند شروع نشود، فرض می‌شود که آغازگر یک سطر جدید است\&. استثناها برای این قاعده با شروع سطر با یک زیرخط (\*(Aq_\*(Aq) برای اجبار به ادامه‌یافتن یا نویسه هش (\*(Aq#\*(Aq) برای اجبار به سطر جدید امکان‌پذیر است\&. این نویسه‌های گریز درون فریم SYLT ذخیره نمی‌شوند\&. درون فریم SYLT، سطرهای جدید با یک نویسه خط جدید (line feed با مقدار هگز 0A) آغاز می‌شوند، در حالی که ادامه‌ها این‌گونه نیستند\&. هنگام خواندن فریم‌های SYLT، Kid3 بررسی می‌کند که آیا نخستین مدخل با یک خط جدید شروع می‌شود یا خیر\&. اگر چنین نباشد، فرض می‌شود که تمام مدخل‌ها سطرهای جدید هستند و هیچ ادامه هجایی استفاده نشده است\&. .PP در حالی که قطعه در حال پخش است، سطر مرتبط با موقعیت پخش جاری برجسته می‌شود تا بتوان درستی اطلاعات همگام‌سازی را تأیید کرد\&. اگر لازم باشد یک آفست به یک یا چند برچسب زمانی اضافه شود، این کار با گزینهٔ Add offset در منوی زمینه قابل انجام است\&. از مقادیر منفی می‌توان برای کاهش زمان استفاده کرد\&. با استفاده از Seek to position در منوی زمینه، می‌توان موقعیت پخش را روی زمان سطر انتخاب‌شده تنظیم کرد\&. .PP \fIروال توصیه‌شده برای افزودن متن ترانه همگام جدید\fR .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} متن ترانه ناهمگام را به‌دست آورید، به‌عنوان مثال با استفاده از Lyrics → Embed Lyrics از منوی زمینهٔ فهرست فایل\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} متن ترانه ناهمگام را در بریده‌دان رونوشت کنید؛ فقط به سطر Lyrics در جدول فریم رفته و کلیدهای Ctrl+C را فشار دهید\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} یک فریم متن ترانه همگام بیفزایید (Add\&.\&.\&.، Synchronized Lyrics، OK)، روی From Clipboard کلیک کنید\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} اکنون همهٔ خطوط متن ترانه ناهمگام در جدول هستند و تمام برچسب‌های زمانی نامعتبرند (0:0:0\&.00)\&. می‌توانید از پیش مدخل‌های خالی را حذف کنید\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} پخش ترانه را با کلیک روی دکمهٔ پخش ► در نوار ابزار پخش در پایین پنجرهٔ اصلی آغاز کنید\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} هنگامی که خط بعدی متن ترانه با برچسب زمانی نامعتبر فرامی‌رسد، روی Add کلیک کرده یا کلیدهای Alt+A را فشار دهید؛ برچسب زمانی به‌روزرسانی خواهد شد\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} به همین ترتیب ادامه دهید تا همهٔ برچسب‌های زمانی تنظیم شوند\&. اگر چیزی را از دست دادید، پخش را متوقف کرده و برچسب‌های زمانی را با کلید Delete یا با انتخاب آن‌ها و استفاده از Clear از منوی زمینه پاک کنید\&. برای شروع مجدد پخش از یک برچسب زمانی معین، از Seek to position در منوی زمینه استفاده کنید\&. .RE .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBفصل‌ها در فایل‌های MP4\fR .RS 4 .PP کتاب‌های صوتی MP4 معمولاً دارای پسوند \&.m4b هستند و از آنجا که تمام فصل‌ها را در یک فایل واحد در بر دارند، نسبتاً بزرگ هستند\&. برای پیمایش در چنین فایل‌هایی، آن‌ها می‌توانند حاوی نشانه‌های فصل باشند که در Kid3 می‌توان آن‌ها را در یک شبه‌فریم "Chapters" با استفاده از همان ویرایشگری که برای Synchronized Lyrics استفاده می‌شود، ویرایش کرد\&. دو نوع فصل در فایل‌های MP4 وجود دارد: "Nero" و "QuickTime (QT)"\&. .PP اطلاعات فصل در کتاب‌های صوتی MP3 در چندین فریم "Chapter" (CHAP) ذخیره می‌شود که توسط یک فریم "Table of Contents" (CTOC) به آن‌ها ارجاع داده شده است و این فریم‌ها دارای زیرفریم‌های تعبیه‌شده هستند\&. برای ویرایش این اطلاعات در یک مکان واحد، می‌توان از یک شبه‌فریم "Chapters" برای برچسب‌های ID3v2 نیز استفاده کرد\&. محتویات آن برای ایجاد فریم‌های واقعی فصل، جدول محتوا و فریم‌های تعبیه‌شده استفاده می‌شود: مقدار Description به‌عنوان عنوان جدول محتوا استفاده می‌شود، ستون Text شامل عناوین فصل‌ها است و مقدار Time متناظر، زمان آغاز فصل و زمان پایان فصل قبلی خواهد بود\&. زمان پایان آخرین فصل با Time آخرین سطر در صورتی که Text آن خالی باشد مشخص می‌شود\&. .RE.SS "منوی فایل (The File Menu)" .PP .PP File → Open\&.\&.\&. ( Ctrl+O ) .RS 4 یک پوشه را باز می‌کند\&. همهٔ فایل‌های منطبق با فیلتر نام فایل انتخاب‌شده در جعبه‌فهرست فایل‌ها نمایش داده می‌شوند و فایل برگزیده انتخاب می‌شود\&. .RE.PP File → Open Recent .RS 4 پوشه‌ای را که اخیراً باز شده است باز می‌کند\&. .RE .PP File → Open Folder\&.\&.\&. ( Ctrl+D ) .RS 4 یک پوشه را باز می‌کند\&. همهٔ فایل‌های منطبق با فیلتر نام فایل انتخاب‌شده در جعبه‌فهرست فایل‌ها نمایش داده خواهند شد\&. .RE .PP File → Reload ( F5 ) .RS 4 بارگذاری مجدد پوشه\&. فایل‌های تغییریافته باید از قبل ذخیره شوند\&. زیرپوشه‌های بازشده جمع خواهند شد\&. .RE .PP File → Save ( Ctrl+S ) .RS 4 همهٔ فایل‌های تغییریافته در پوشه را ذخیره می‌کند\&. فایل‌های تغییریافته با نماد دیسک در جعبه‌فهرست فایل‌ها نشانه‌گذاری می‌شوند\&. اگر نام هر فایلی تغییر کرده باشد، آن فایل‌ها تغییر نام خواهند یافت\&. .RE .PP File → Revert .RS 4 تغییرات یک یا چند فایل را بازمی‌گرداند\&. اگر هیچ فایلی در جعبه‌فهرست فایل‌ها انتخاب نشده باشد، تغییرات همهٔ فایل‌ها بازگردانده خواهد شد؛ در غیر این صورت تنها تغییرات فایل‌های انتخاب‌شده بازگردانده می‌شود\&. .RE .PP File → Import\&.\&.\&. .RS 4 گفتگوی Import می‌تواند برای وارد کردن داده‌ها به طور مستقیم از یک سرور freedb\&.org، از یک سرور MusicBrainz، از Discogs، Amazon یا سایر منابع فهرست قطعات آلبوم در قالب متنی به کار رود\&. .sp وارد کردن از یک سرور freedb\&.org با استفاده از گفتگویی امکان‌پذیر است که هنگام انتخاب From Server: gnudb\&.org نمایان می‌شود\&. نام هنرمند و آلبوم برای جستجو را می‌توان در دو فیلد بالایی وارد کرد؛ آلبوم‌های منطبق با پرس‌وجو هنگامی که بر روی Find کلیک شود و نتایج از \m[blue]\fBwww\&.gnudb\&.org\fR\m[]\&\s-2\u[7]\d\s+2 دریافت گردند، نمایش داده خواهند شد\&. وارد کردن داده‌های قطعه برای یک آلبوم با دوبار کلیک روی آلبوم در فهرست انجام می‌شود\&. سرور freedb\&.org برای واردسازی و همچنین مسیر CGI را می‌توان انتخاب کرد\&. داده‌های واردشده در جدول پیش‌نمایش گفتگوی واردسازی نمایش داده می‌شوند\&. هنگامی که از قطعات نمایش‌داده‌شده رضایت حاصل شد، می‌توان با پایان دادن به گفتگوی واردسازی با OK\&، آن‌ها را وارد کرد\&. .sp اگر از قبل یک نتیجهٔ جستجو در مرورگر وب باز دارید، می‌توانید نشانی وب (URL) را در فیلد جستجوی اول وارد کنید\&. سپس نتیجه در فهرست آلبوم‌ها نمایان می‌شود و می‌تواند مستقیماً به Kid3 وارد شود\&. .sp یک نشانی رایانامهٔ ثبت‌شده در \m[blue]\fBgnudb\&.org\fR\m[]\&\s-2\u[8]\d\s+2 می‌تواند در فیلد Token وارد شود\&. .sp جستجو در سرور Discogs را می‌توان با استفاده از Discogs انجام داد\&. همانند گفتگوی gnudb\&.org، می‌توانید هنرمند و آلبوم را وارد کنید و سپس از فهرستی از نسخه‌های منتشرشده برگزینید\&. یک Token را می‌توان وارد کرد تا به جای واسط وب آن‌ها که اغلب تغییر می‌کند و در نتیجه تجزیه‌کنندهٔ واردسازی را از کار می‌اندازد، از RESTful Discogs API استفاده شود\&. شما باید یک حساب کاربری در \m[blue]\fBDiscogs\fR\m[]\&\s-2\u[9]\d\s+2 ثبت کنید و سپس در وب‌سایت آن‌ها یک توکن ایجاد نمایید (Settings/Developers، Generate new token)\&. فراموش نکنید که پس از وارد کردن توکن، Save Settings را بزنید تا در درخواست‌های بعدی نیز استفاده شود\&. اگر Standard Tags علامت خورده باشد، اطلاعات استاندارد وارد می‌شود، برای نمونه هنرمند، آلبوم و عنوان\&. اگر Additional Tags علامت خورده باشد، اطلاعات بیشتری در صورت موجود بودن وارد می‌شود، برای نمونه اجراکنندگان، تنظیم‌کنندگان یا ناشر\&. اگر Cover Art علامت خورده باشد، طرح جلد در صورت موجود بودن بارگیری خواهد شد\&. .sp جستجو در Amazon را می‌توان با استفاده از Amazon انجام داد\&. همانند گفتگوی gnudb\&.org، می‌توانید هنرمند و آلبوم را وارد کرده و سپس از فهرستی از انتشارات انتخاب نمایید\&. اگر Additional Tags علامت خورده باشد، اطلاعات بیشتری در صورت در دسترس بودن وارد می‌شود، برای نمونه اجراکنندگان، تنظیم‌کنندگان یا ناشر\&. اگر Cover Art علامت خورده باشد، طرح روی جلد در صورت موجود بودن بارگیری خواهد شد\&. .sp می‌توانید به همین روش در پایگاه‌دادهٔ انتشارات MusicBrainz با استفاده از From MusicBrainz Release جستجو کنید\&. روند کار همان است که برای From gnudb\&.org شرح داده شد\&. .sp وارد کردن از یک سرور MusicBrainz با استفاده از گفتگویی امکان‌پذیر است که هنگام انتخاب From MusicBrainz Fingerprint نمایان می‌شود\&. سرور را می‌توان مانند گفتگوی واردسازی freedb انتخاب کرد\&. در زیر، جدولی قرار دارد که داده‌های قطعهٔ واردشده را نشان می‌دهد\&. ستون سمت راست وضعیت پرس‌وجوی MusicBrainz را نشان می‌دهد که هنگام باز شدن گفتگو با «Pending» آغاز می‌شود\&. سپس اثر انگشت صوتی (fingerprint) جستجو می‌شود و اگر نتیجه‌ای نداشته باشد، جستجوی دیگری با استفاده از برچسب‌های موجود در فایل آزمایش می‌شود\&. از این رو، برای یک پرس‌وجوی موفق در MusicBrainz می‌تواند مفید باشد که اطلاعات شناخته‌شده (مانند هنرمند و آلبوم) پیش از واردسازی در برچسب‌ها ذخیره شوند\&. اگر نتیجه‌ای یافت شد، جستجو با وضعیت «Recognized» پایان می‌یابد، در غیر این صورت چیزی یافت نشده یا چندین نتیجهٔ نامشخص وجود دارد که یکی از آن‌ها باید توسط کاربر انتخاب شود\&. OK و Apply داده‌های واردشده را اعمال می‌کنند، و Cancel گفتگو را می‌بندد\&. بسته شدن ممکن است مدتی طول بکشد زیرا کل سازوکار MusicBrainz باید متوقف شود\&. .sp برای واردسازی داده‌های متنی، From File/Clipboard یک گفتگوی فرعی را باز می‌کند که در آن چندین قالب واردسازی از پیش پیکربندی‌شده در دسترس است\&. دو مورد نخست، «CSV unquoted» و «CSV quoted» می‌توانند برای وارد کردن داده‌هایی استفاده شوند که توسط گفتگوی Export صادر شده‌اند\&. داده‌های CSV را می‌توان با یک صفحه گسترده ویرایش کرد و باید با استفاده از کلید جهش (tab) به عنوان جداکننده نوشته شوند\&. واردسازی پس از آن باید با استفاده از «CSV quoted» امکان‌پذیر باشد که انعطاف‌پذیرتر از «CSV unquoted» است\&. با این وجود، فیلدهای آن نمی‌توانند حاوی علامت نقل‌قول دوگانه (double quote) باشند\&. اگر تنها از Kid3 صادر می‌کنید و بعداً وارد می‌نمایید، «CSV unquoted» می‌تواند به عنوان قالبی ساده برای این منظور استفاده شود\&. توجه داشته باشید که در منوی زمینهٔ فهرست فایل‌ها دستورهای «Export CSV» و «Import CSV» نیز وجود دارند که از اسکریپت‌ها برای صدور و ورود داده‌های CSV به روشی کامل‌تر، قدرتمندتر و انعطاف‌پذیرتر استفاده می‌کنند\&. .sp قالب بعدی، «freedb HTML text»، می‌تواند برای کپی کردن اطلاعات از یک صفحهٔ HTML در \m[blue]\fBfreedb\&.org\fR\m[]\&\s-2\u[10]\d\s+2 استفاده شود\&. یک آلبوم را در freedb جستجو کنید و اگر اطلاعات دلخواه در مرورگر وب نمایش داده شد، محتویات را در کلیپ‌بورد کپی کنید\&. سپس بر روی دکمهٔ From Clipboard کلیک کنید تا قطعات واردشده در جدول پیش‌نمایش در بالای گفتگو نمایش داده شوند\&. اگر از داده‌های واردشده رضایت دارید، گفتگو را با OK پایان دهید، که داده‌ها را در برچسب‌های پوشهٔ جاری درج خواهد کرد\&. مقصد (Tag 1، Tag 2 یا Tag 1 and Tag 2) را می‌توان با یک جعبهٔ کشویی (combo box) انتخاب کرد\&. فایل‌ها در پوشهٔ جاری باید ترتیب قطعهٔ صحیحی داشته باشند تا برچسب‌های آن‌ها اختصاص یابد\&. در صورتی که شماره‌گذاری شده باشند، این حالت برقرار است\&. .sp قالب پیش‌پیکربندی‌شدهٔ بعدی، «freedb HTML source»، در صورتی که داده‌ها به عنوان یک سند HTML در دسترس باشند، می‌تواند مورد استفاده قرار گیرد\&. واردسازی با استفاده از دکمهٔ From File که یک انتخاب‌کنندهٔ فایل را باز می‌کند، یا کپی کردن محتویات آن از یک ویرایشگر و سپس واردسازی از کلیپ‌بورد امکان‌پذیر است\&. این قالب می‌تواند برای واردسازی برون‌خط (آفلاین) سودمند باشد، اگرچه سند HTML می‌تواند در یک مرورگر نیز باز شده و سپس در قالب اول از طریق کلیپ‌بورد وارد شود\&. .sp قالب‌های پیش‌پیکربندی‌شدهٔ بیشتری، برای نمونه «Track Title Time» در دسترس هستند\&. یک قالب سفارشی خالی را می‌توان با Add ایجاد کرد تا توسط کاربر تنظیم شود\&. دو خط در زیر نام قالب را می‌توان با یک عبارت باقاعده تنظیم کرد تا فیلدها را از متن واردسازی ضبط کند\&. عبارت باقاعدهٔ نخست یک بار به ازای هر سند تجزیه می‌شود تا داده‌های مربوط به آلبوم مانند هنرمند، آلبوم، سال و سبک (genre) را گردآوری نماید\&. خط دوم از ابتدای سند تا پایان آن برای تطابق آزمایش می‌شود تا داده‌های قطعه، معمولاً شماره و عنوان را دریافت کند\&. عبارت‌های باقاعده شامل همهٔ ویژگی‌های ارائه‌شده توسط Qt(TM) هستند، که بخش عمده‌ای از مواردی است که Perl ارائه می‌دهد\&. ساختارهای پرانتزی «(\&.\&.)» بافرهای ضبط را برای فیلدهای واردسازی ایجاد می‌کنند و کدهای مخصوص Kid3 پیش از آن‌ها می‌آیند تا مشخص کنند کدام فیلد باید ضبط شود\&. کدها همان‌هایی هستند که برای قالب نام فایل استفاده می‌شوند؛ به جز کدهای فهرست‌شده در زیر، هر نام فریمی امکان‌پذیر است: .sp .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %s %{title} عنوان (ترانه) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %a %{artist} هنرمند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %l %{album} آلبوم .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %c %{comment} یادداشت .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %y %{year} سال .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track} قطعه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %g %{genre} سبک .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %d %{duration} مدت‌زمان .RE .sp برای نمونه، یک عبارت باقاعده برای قطعه (خط دوم) جهت وارد کردن از یک فهرست پخش \&.m3u می‌تواند "%{track}(\ed+)\es+%{title}(\eS[^\er\en]*)\e\&.mp3[\er\en]"\& باشد\&. همهٔ قالب‌ها را می‌توان با ویرایش عبارت‌های باقاعده و نام، و سپس کلیک روی Save Settings تغییر داد\&. آن‌ها در فایل kid3rc در پوشهٔ پیکربندی ذخیره خواهند شد\&. این فایل را می‌توان مستقیماً ویرایش کرد تا قالب‌های واردسازی بیشتری داشت یا می‌توان آن را حذف کرد تا به قالب‌های پیش‌فرض بازگردد\&. قالب‌ها را می‌توان با استفاده از Remove حذف کرد\&. .sp گزینهٔ Accuracy تخمینی از میزان همخوانی اطلاعات واردشده با قطعه‌های مشخص‌شده را نشان می‌دهد\&. این گزینه از مدت‌زمان قطعه‌ها یا نام‌های فایل‌ها برای محاسبهٔ میزان شباهت به درصد استفاده می‌کند\&. Cover Art نشانی URL تصویر جلد آلبوم را که بارگیری خواهد شد، نشان می‌دهد\&. .sp برای بررسی این‌که آیا قطعه‌های واردشده با مجموعهٔ فایل‌های فعلی همخوانی دارند یا خیر، می‌توان مدت‌زمان قطعه‌های واردشده را با مدت‌زمان فایل‌ها مقایسه کرد\&. این گزینه را می‌توان با جعبهٔ علامت‌زدنی Check maximum allowable time difference (sec): فعال کرد و حداکثر اختلاف زمانی مجاز را بر حسب ثانیه تنظیم نمود\&. اگر ناهمخوانی در طول مدت تشخیص داده شود، طول قطعه با پس‌زمینهٔ قرمز در جدول پیش‌نمایش نشان داده می‌شود\&. .sp اگر ترتیب فایل‌ها با قطعه‌های واردشده متفاوت باشد، قطعه‌های انتساب‌یافته به آن‌ها باید تغییر یابند\&. این کار را می‌توان با استفاده از گزینهٔ Match with به کمک دکمه‌های Length، Track و Title تسهیل کرد، که قطعه‌ها را بر اساس فیلد متناظر بازآرایی می‌کنند\&. برای تصحیح دستی انتساب‌ها، می‌توان یک قطعه را با دکمهٔ چپ موشواره و در حالی که کلید Ctrl پایین نگه داشته شده است کشید و سپس در مکان جدید رها کرد\&. .sp اگر تعداد قطعه‌های واردشده بیشتر از فایل‌ها باشد، برای نمونه اگر پوشهٔ فعلی تنها حاوی دیسک دوم از یک آلبوم دو دیسکی باشد اما قطعه‌های هر دو دیسک وارد شده باشند، می‌توان قطعه‌های دیسک اول را با کلیک روی برچسب سطر نخستین قطعه، سپس کلیک روی برچسب سطر آخرین قطعه از دیسک اول در حالی که کلید Shift پایین نگه داشته شده است انتخاب کرد، و در نهایت با فشردن کلید Delete آن قطعه‌ها را حذف نمود\&. .sp هنگامی که پنجرهٔ محاوره‌ای واردسازی باز می‌شود، شامل محتویات واقعی برچسب‌ها است\&. نوع برچسب (Tag 1، Tag 2، Tag 1 and Tag 2) را می‌توان با استفاده از جعبهٔ گزینش (combo box) Destination انتخاب کرد\&. از دکمهٔ سمت راست این جعبهٔ گزینش می‌توان برای بازگرداندن جدول به محتویات فعلی برچسب‌ها استفاده کرد\&. جعبه‌های علامت‌زدنی در نخستین ستون جدول را می‌توان برای انتخاب قطعه‌هایی که وارد می‌شوند استفاده کرد\&. این قابلیت می‌تواند هنگامی مفید باشد که یک پوشه شامل قطعه‌های هر دو CD از یک CD دوگانه باشد و تنها قطعه‌های CD دوم باید وارد شوند\&. .sp برای شناسایی قطعه‌هایی که وارد شده‌اند، می‌توان نام‌های فایل یا مسیرهای کامل منتهی به فایل‌ها را با استفاده از منوی زمینه‌ای (context menu) سرستون جدول نمایش داد\&. مقادیر جدول واردسازی قابل ویرایش هستند\&. دکمهٔ بازگردانی در سمت راست جعبهٔ گزینش Destination می‌تواند برای بازیابی محتویات برچسب‌ها استفاده شود، که پس از تغییر دادن Destination نیز می‌تواند سودمند باشد\&. .sp تقریباً همهٔ پنجره‌های محاوره‌ای دارای دکمهٔ Save Settings هستند، که می‌تواند برای ذخیرهٔ پایدار تنظیمات ویژهٔ محاوره و اندازهٔ پنجره استفاده شود\&. .sp گزینهٔ From Tags به یک زیرمحاوره برای تنظیم فریم‌های برچسب از روی محتویات دیگر فریم‌های برچسب منتهی می‌شود\&. این کار می‌تواند برای کپی سادهٔ اطلاعات میان برچسب‌ها یا استخراج بخشی از یک فریم و درج آن در فریمی دیگر استفاده شود\&. .sp مانند پنجرهٔ محاوره‌ای import from file/clipboard\c ، قالب‌های با قابلیت پیکربندی آزاد برای انجام عملیات‌های گوناگون وجود دارند\&. قالب‌هایی از پیش پیکربندی شده‌اند تا مقدار Album را به Album Artist، Composer یا Conductor رونوشت کنند، و همچنین Track Number را از فیلدهای Title که حاوی عدد هستند استخراج نمایند\&. قالبی نیز برای استخراج Subtitle از فیلد Title وجود دارد\&. .sp مثال زیر توضیح می‌دهد چگونه یک قالب سفارشی بیفزایید که اطلاعات فیلد Subtitle را در فیلد Comment نیز قرار دهد\&. با استفاده از دکمهٔ Add یک قالب جدید ایجاد کنید و یک نام جدید تعیین کنید، برای نمونه "Subtitle to Comment"\&. سپس "\fB%{subtitle}\fR" را در Source و "\fB%{comment}(\&.*)\fR" را برای Extraction وارد کرده و روی Save Settings کلیک کنید\&. .sp عبارت موجود در Source می‌تواند شامل کدهای قالب‌بندی برای فریم‌های برچسب دلخواه باشد؛ می‌توان از چندین کد برای ترکیب محتویات فریم‌های مختلف استفاده کرد\&. برای هر قطعه، متنی از برچسب‌های آن با استفاده از قالب Source تولید می‌شود، و عبارت باقاعده از Extraction روی این متن اعمال می‌شود تا مقادیر جدیدی را برای برچسب‌ها تنظیم کند\&. کدهای قالب‌بندی پیش از پرانتزهای گیرنده به کار می‌روند تا فریم برچسبی را که متنِ گرفته‌شده باید در آن ذخیره شود مشخص کنند\&. این سازوکار به همان شیوهٔ import from file/clipboard کار می‌کند\&. .sp گزینهٔ Import from Tags\&.\&.\&. همچنین به‌طور مستقیم از منوی File در دسترس است\&. تفاوت میان این دو عملکرد در این است که زیرمحاورهٔ پنجرهٔ واردسازی روی همهٔ فایل‌های پوشهٔ فعلی عمل می‌کند در حالی که عملکرد منو روی فایل‌های انتخاب‌شده (که می‌توانند در پوشه‌های مختلفی باشند) عمل می‌کند\&. عملکرد منو از یک کد اضافی "%{__return}" برای بازگرداندن مقدار استخراج‌شده پشتیبانی می‌کند، که می‌تواند در رابط‌های CLI و QML مفید باشد\&. .RE .PP File → Import from gnudb\&.org\&.\&.\&. .RS 4 وارد کردن از یک کارساز freedb\&.org با استفاده از جستجوی آلبوم gnudb\&.org\&. این مورد منو، همان پنجرهٔ محاوره‌ای واردسازی Import\&.\&.\&. را باز می‌کند، اما پنجرهٔ محاوره‌ای gnudb\&.org را به‌طور مستقیم می‌گشاید\&. .RE .PP File → Import from Discogs\&.\&.\&. .RS 4 وارد کردن از کارساز Discogs\&. این مورد منو، همان پنجرهٔ محاوره‌ای واردسازی Import\&.\&.\&. را باز می‌کند، اما مستقیماً محاورهٔ From Discogs را می‌گشاید\&. .RE .PP File → Import from Amazon\&.\&.\&. .RS 4 وارد کردن از Amazon\&. این مورد منو، همان پنجرهٔ محاوره‌ای واردسازی Import\&.\&.\&. را باز می‌کند، اما مستقیماً محاورهٔ From Amazon را می‌گشاید\&. .RE.PP File → Import from MusicBrainz Release\&.\&.\&. .RS 4 وارد کردن از پایگاه‌دادهٔ انتشار MusicBrainz\&. این گزینهٔ منو، همان پنجرهٔ گفتگوی واردسازی Import\&.\&.\&. را باز می‌کند، اما مستقیماً گفتگوی From MusicBrainz Release را می‌گشاید\&. .RE.PP File → Import from MusicBrainz Fingerprint\&.\&.\&. .RS 4 واردسازی از یک کارساز MusicBrainz\&. این گزینهٔ منو همان پنجرهٔ گفتگوی واردسازی Import\&.\&.\&. را باز می‌کند، اما مستقیماً گفتگوی From MusicBrainz Fingerprint را می‌گشاید\&. .RE .PP File → Import from Tags\&.\&.\&. .RS 4 مانند From Tags، اما واردسازی روی فایل‌های انتخاب‌شده اعمال می‌شود\&. .RE .PP File → Automatic Import\&.\&.\&. .RS 4 گزینهٔ Automatic Import امکان وارد کردن اطلاعات چندین آلبوم را از وب‌سرویس‌های گوناگون فراهم می‌کند\&. اگر پوشه‌هایی در فهرست فایل انتخاب شده باشند، داده‌های قطعه برای پوشه‌های انتخاب‌شده وارد خواهد شد\&. اگر هیچ پوشه‌ای انتخاب نشده باشد، تمام پوشه‌های موجود در فهرست فایل وارد خواهند شد\&. .sp نوع برچسب (Tag 1، Tag 2، Tag 1 and Tag 2) را می‌توان با استفاده از جعبهٔ چندگزینه‌ای Destination انتخاب کرد\&. .sp پروفایل‌ها مشخص می‌کنند که برای واکشی اطلاعات آلبوم با چه کارسازهایی ارتباط برقرار شود\&. برخی از پروفایل‌ها از پیش تعریف شده‌اند (All، MusicBrainz، Discogs، Cover Art)؛ پروفایل‌های سفارشی را می‌توان با استفاده از دکمهٔ Add در سمت راست جعبهٔ چندگزینه‌ای Profile افزود\&. .sp جدول زیر کارسازهایی را نشان می‌دهد که هنگام واردسازی اطلاعات آلبوم با استفاده از پروفایل انتخاب‌شده استفاده خواهند شد\&. فرایند واردسازی برای یک آلبوم در صورتی پایان می‌یابد که همهٔ اطلاعات مورد نیاز پیدا شده باشد، بنابراین ترتیب ردیف‌ها در جدول مهم است\&. این ترتیب را می‌توان با استفاده از دکمه‌های Move Up و Move Down تغییر داد\&. از Edit می‌توان برای تغییر یک مدخل موجود استفاده کرد\&. گزینهٔ انتخابی Server همان کارسازهایی را ارائه می‌دهد که می‌توان در توابع واردسازی استفاده کرد\&. Standard Tags، Additional Tags و Cover Art اطلاعاتی را که باید از کارساز دریافت شوند تعیین می‌کنند\&. در نهایت، Accuracy حداقل دقتی است که برای پذیرش داده‌های واردشده باید به دست آید\&. اگر دقت ناکافی باشد، کارساز بعدی در فهرست امتحان خواهد شد\&. هنگام کلیک روی Add برای افزودن یک مدخل کارساز جدید، همان پنجرهٔ گفتگوی حاوی ویژگی‌های کارساز ظاهر می‌شود\&. مدخل‌های موجود را می‌توان با استفاده از Remove حذف کرد\&. .sp برای اجرای یک واردسازی دسته‌ای خودکار با پروفایل انتخاب‌شده، روی Start کلیک کنید\&. جزئیات مربوط به واردسازی در حال اجرا در بالای پنجرهٔ گفتگو نمایش داده می‌شود\&. این فرایند را می‌توان با دکمهٔ Abort متوقف کرد\&. .sp .RE .PP File → Browse Cover Art\&.\&.\&. .RS 4 پنجرهٔ گفتگوی Browse Cover Art به یافتن تصویر جلد آلبوم کمک می‌کند\&. در صورت امکان، Artist/Album از روی برچسب‌ها پر می‌شود\&. Source وبگاه‌های گوناگونی را به همراه تصاویر جلد آلبوم ارائه می‌دهد\&. URL به‌همراه هنرمند و آلبوم به عنوان پارامتر را می‌توان زیر نام پیدا کرد\&. مقادیر کُدگذاری‌شده به‌صورت URL برای هنرمند و آلبوم را می‌توان با استفاده از "\fB%u{artist}\fR" و "\fB%u{album}\fR" درج کرد؛ مقادیر دیگر از برچسب‌ها نیز همان‌طور که در Configure Kid3، User Actions شرح داده شده امکان‌پذیر هستند\&. منابع بیشتری را می‌توان پس از مدخل "Custom Source" با جایگزین کردن "Custom Source" با نام منبع، فشردن Enter، سپس درج URL و در نهایت فشردن Save Settings وارد کرد\&. دستور مرورگر حاصل در بالای پنجرهٔ گفتگو نمایش می‌یابد و می‌توان با کلیک روی Browse آن را اجرا کرد\&. مرورگر، که در تنظیمات قابل پیکربندی است، با منبع انتخاب‌شده راه‌اندازی می‌شود\&. سپس می‌توان تصویر جلد را از مرورگر به درون پنجرهٔ Kid3 کشید تا در قاب تصویرِ فایل‌های انتخاب‌شده قرار گیرد\&. .sp از آنجا که همهٔ مرورگرها از کشیدن و رها کردن تصاویر پشتیبانی نمی‌کنند و تصاویر موجود در وبگاه‌ها اغلب یک URL دارند، در این موارد Kid3 به‌جای تصویر، URL را دریافت خواهد کرد\&. اگر URL به یک تصویر اشاره کند، بارگیری می‌شود\&. با این حال، اگر URL به منبع وبی دیگری اشاره داشته باشد، باید به تصویر مربوطه تبدیل شود\&. چنین نگاشت‌هایی در جدول URL extraction تعریف می‌شوند\&. ستون چپ Match شامل یک عبارت باقاعده است که با URL مقایسه می‌شود\&. در صورت تطابق، عبارت‌های به‌دام‌افتاده در پرانتزها در الگوی ستون راستِ Picture URL (در موقعیت‌هایی که با \e1 و غیره مشخص شده‌اند) درج می‌شوند\&. عبارت باقاعدهٔ جایگزین‌شده حاوی URL تصویر است\&. با این روش می‌توان تصویر جلد را با استفاده از کشیدن و رها کردن از Amazon، Google Images و غیره وارد کرد\&. همچنین تعریف نگاشت‌های سفارشی توسط خودتان امکان‌پذیر است\&. .RE .PP File → Export\&.\&.\&. .RS 4 پنجرهٔ گفتگوی Export Dialog برای ذخیرهٔ داده‌ها از برچسب‌ها در یک فایل یا در تخته‌گیره (clipboard) استفاده می‌شود\&. ویرایشگر در بالا پیش‌نمایشی از داده‌های صادرشونده را نمایش می‌دهد\&. اگر داده‌های صادرشونده شامل نویسه‌های تب باشند، خروجی در یک جدول نمایش داده می‌شود\&. داده‌ها مطابق با قالب پیکربندی‌شده، از روی برچسب‌های موجود در پوشهٔ جاری تولید خواهند شد\&. .sp تنظیمات قالب مشابه پنجرهٔ گفتگوی واردسازی است: بالاترین فیلد شامل عنوان است (مانند "CSV unquoted")، که به‌دنبال آن سرآیند می‌آید، که در ابتدای فایل تولید خواهد شد\&. سپس داده‌های قطعه می‌آید؛ که برای هر قطعه استفاده می‌شود\&. در نهایت، بخش پایانی (trailer) می‌تواند برای تولید متن خاتمه به کار رود\&. .sp فیلدهای قالب برخلاف پنجرهٔ گفتگوی واردسازی شامل عبارت‌های باقاعده نیستند، بلکه فقط عبارت‌های قالب خروجی با عبارت‌های ویژهٔ %\- را شامل می‌شوند که با مقادیر برچسب‌ها جایگزین خواهند شد\&. کل فرایند مانند قالب نام فایل عمل می‌کند و همان کدها به‌همراه چند کد اضافی به کار می‌روند\&. نه‌تنها کدهای فهرست‌شده در زیر، بلکه تمام نام‌های فریم برچسب قابل استفاده هستند\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %s %{title} عنوان (آهنگ) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %a %{artist} هنرمند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %l %{album} آلبوم .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %c %{comment} یادداشت .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %y %{year} سال .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track} قطعه (مانند 01) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %t %{track\&.n} قطعه با پهنای فیلد n (برای مثال 001 برای %{track\&.3}) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %T %{tracknumber} قطعه (بدون صفرهای آغازین، برای مثال 1) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %g %{genre} سبک .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %f %{file} نام فایل .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %p %{filepath} مسیر .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %{modificationdate} تاریخ تغییر .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %{creationdate} تاریخ ایجاد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %u %{url} URL .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %{dirname} نام پوشه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %d %{duration} مدت زمان به دقیقه:ثانیه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %D %{seconds} مدت زمان به ثانیه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %n %{tracks} تعداد قطعه‌های آلبوم .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %e %{extension} پسوند فایل .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %O %{tag1} قالب برچسب ۱ (ID3v1\&.1 یا در صورت عدم وجود، خالی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %o %{tag2} قالب برچسب ۲ (ID3v2\&.3\&.0، ID3v2\&.4\&.0، ID3v2\&.2\&.0، ID3v2\&.2\&.1، Vorbis، APE، MP4، ASF یا در صورت عدم وجود، خالی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %b %{bitrate} نرخ بیت بر حسب kbit/s .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %v %{vbr} VBR یا خالی (فقط برای ID3v2\&.3 همراه با id3lib) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %r %{samplerate} نرخ نمونه‌برداری به Hz .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %m %{mode} حالت کانال (Stereo یا Joint Stereo) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %h %{channels} تعداد کانال‌ها (1 یا 2) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %k %{codec} کُدک (برای نمونه MPEG 1 Layer 3, MP4, Ogg Vorbis, FLAC, MPC, APE, ASF, AIFF, WAV) .RE .sp چندین قالب از پیش تعریف شده‌اند\&. «CSV unquoted» فیلدها را با نویسهٔ تب (tab) جدا می‌کند\&. داده‌ها در این قالب را می‌توان دوباره با استفاده از قالب درون‌ریزی با همین نام به Kid3 وارد کرد\&. «CSV quoted» علاوه بر این فیلدها را در علامت نقل‌قول دوتایی (double quotes) قرار می‌دهد که وارد کردن داده‌ها به برنامه‌های صفحه‌گسترده را آسان می‌سازد\&. با این حال، هنگام استفاده از این قالب، فیلدها نباید شامل علامت نقل‌قول دوتایی باشند\&. قالب‌های «Extended M3U» و «Extended PLS» فهرست‌های پخشی با ویژگی‌های گسترش‌یافته و نام‌های مسیر مطلق تولید می‌کنند\&. از «HTML» می‌توان برای تولید یک صفحهٔ HTML حاوی ابرپیوندها به قطعه‌ها استفاده کرد\&. «Kover XML» فایلی ایجاد می‌کند که توسط برنامهٔ چاپ کاور Kover قابل درون‌ریزی است\&. «Technical Details» اطلاعاتی دربارهٔ نرخ بیت (bit rate)، نرخ نمونه‌برداری (sample rate)، کانال‌ها و غیره ارائه می‌دهد\&. در نهایت، «Custom Format» برای تعریف یک قالب سفارشی خالی گذاشته شده است\&. می‌توانید با افزودن خطوطی به فایل kid3rc در پوشهٔ پیکربندی، قالب‌های بیشتری برای خود تعریف کنید\&. سایر قالب‌ها را نیز می‌توان متناسب با نیاز خود تغییر داد\&. .sp منبع (Source) برچسب‌ها برای تولید داده‌های برون‌ریزی (Tag 1 یا Tag 2) را می‌توان از طریق یک جعبهٔ بازشو (combo box) انتخاب کرد\&. فشردن To File یا To Clipboard داده‌ها را در یک فایل یا در کلیپ‌بورد ذخیره می‌کند\&. OK و Cancel کادر محاوره‌ای را می‌بندند، در حالی که OK تنظیمات فعلی کادر محاوره‌ای را اعمال می‌کند\&. .RE .PP فایل ← ایجاد فهرست پخش (File → Create Playlist\&.\&.\&.) .RS 4 یک فهرست پخش ایجاد می‌کند\&. قالب و محتویات فهرست پخش را می‌توان با گزینه‌های گوناگون تنظیم کرد\&. .sp نام فهرست پخش می‌تواند Same as folder name (یکسان با نام پوشه) بوده یا از یک Format (قالب) با مقادیری از برچسب‌ها استفاده کند؛ برای نمونه "\fB%{artist} \- %{album}\fR" تا نام هنرمند و آلبوم در نام فایل فهرست پخش قرار گیرد\&. کدهای قالب همانند بخش Export (برون‌ریزی) هستند\&. فهرست قالب‌های موجود را می‌توان در بخش Format از زبانهٔ Files در تنظیمات (settings) ویرایش کرد\&. گزینهٔ Create new empty playlist یک فهرست پخش خالی با نام مشخص‌شده می‌سازد\&. پسوند فایل به قالب فهرست پخش بستگی دارد\&. .sp محل قرارگیری فهرست پخش تولیدشده با انتخاب گزینه در جعبهٔ بازشوی Create in تعیین می‌شود\&. .PP پوشهٔ جاری (Current folder) .RS 4 فهرست پخش در پوشهٔ جاری ایجاد می‌شود و تنها شامل فایل‌های پوشهٔ جاری است\&. پوشهٔ جاری همان پوشه‌ای است که فایل فعلی در آن قرار دارد\&. اگر چند فایل انتخاب شده باشند، فایل فعلی احتمالاً آخرین فایل انتخاب‌شده است\&. .RE .PP هر پوشه (Every folder) .RS 4 یک فهرست پخش در هر پوشه‌ای که حاوی فایل‌های فهرست‌شده باشد ایجاد می‌شود و هر فهرست پخش شامل فایل‌های همان پوشه است\&. .RE .PP پوشهٔ بالاترین سطح (Top\-level folder) .RS 4 تنها یک فهرست پخش در بالاترین سطح پوشه (یعنی پوشهٔ فهرست فایل‌ها) ایجاد می‌شود و شامل فایل‌های فهرست‌شده در پوشهٔ سطح بالا و تمام زیرپوشه‌های آن است\&. .RE .sp قالب (Format) فهرست پخش می‌تواند M3U، PLS یا XSPF باشد\&. .sp اگر گزینهٔ Include only the selected files علامت خورده باشد، تنها فایل‌های انتخاب‌شده در فهرست پخش گنجانده می‌شوند\&. اگر پوشه‌ای انتخاب شود، تمام فایل‌های آن انتخاب خواهند شد\&. اگر این جعبهٔ انتخاب فعال نباشد، تمام فایل‌های صوتی در فهرست پخش قرار می‌گیرند\&. .sp گزینهٔ Sort by file name حالت معمول را انتخاب می‌کند که در آن فایل‌ها بر اساس نام فایل مرتب می‌شوند\&. با Sort by tag field، مرتب‌سازی بر اساس یک رشتهٔ قالبی با مقادیری از فیلدهای برچسب امکان‌پذیر است\&. برای نمونه، از "\fB%{track\&.3}\fR" می‌توان برای مرتب‌سازی بر اساس شمارهٔ قطعه استفاده کرد (عبارت "\fB\&.3\fR" برای داشتن سه رقم همراه با صفرهای پیشگام به کار می‌رود زیرا برای مرتب‌سازی از رشته‌ها استفاده می‌شود)\&. همچنین می‌توان از چندین فیلد استفاده کرد، برای نمونه "\fB%{genre}%{year}\fR" جهت مرتب‌سازی با استفاده از رشته‌ای متشکل از سبک (genre) و سال\&. .sp ورودی‌های فهرست پخش بسته به این که گزینهٔ Use relative path for files in playlist یا Use full path for files in playlist تنظیم شده باشد، دارای مسیرهای فایل نسبی یا مطلق خواهند بود\&. .sp هنگامی که گزینهٔ Write only list of files تنظیم شده باشد، فهرست پخش تنها شامل مسیر فایل‌ها خواهد بود\&. برای تولید یک فهرست پخش گسترش‌یافته با اطلاعات تکمیلی، می‌توان یک رشتهٔ قالب را با استفاده از کنترل Write info using تعیین کرد\&. .RE .PP فایل ← خروج (File → Quit) ( Ctrl+Q ) .RS 4 از برنامه خارج می‌شود\&. .RE .SS "منوی ویرایش (The Edit Menu)" .PP .PP ویرایش ← انتخاب همه (Edit → Select All) ( Alt+A ) .RS 4 همهٔ فایل‌ها را انتخاب می‌کند\&. .RE .PP ویرایش ← لغو انتخاب (Edit → Deselect) ( Ctrl+Shift+A ) .RS 4 انتخاب همهٔ فایل‌ها را لغو می‌کند\&. .RE .PP ویرایش ← انتخاب همه در پوشه (Edit → Select All in Folder) .RS 4 همهٔ فایل‌های پوشهٔ کنونی را انتخاب می‌کند\&. .RE.PP ویرایش ← فایل قبلی (Edit → Previous File) ( Alt+Up ) .RS 4 فایل قبلی را انتخاب می‌کند\&. .RE .PP ویرایش ← فایل بعدی (Edit → Next File) ( Alt+Down ) .RS 4 فایل بعدی را انتخاب می‌کند\&. .RE .PP ویرایش ← یافتن\&.\&.\&. (Edit → Find\&.\&.\&.) ( Ctrl+F ) .RS 4 رشته‌ها را در نام فایل‌ها و برچسب‌ها می‌یابد\&. کادر گفتگوی Find (یافتن) زیرمجموعه‌ای از کادر گفتگوی Replace (جایگزینی) است که در ادامه شرح داده شده است\&. .RE .PP ویرایش ← جایگزینی\&.\&.\&. (Edit → Replace\&.\&.\&.) ( Ctrl+R ) .RS 4 این تابع کادر گفتگویی را برای یافتن و جایگزینی رشته‌ها در نام فایل‌ها و برچسب‌ها باز می‌کند\&. مجموعه فریم‌هایی که جستجو در آن‌ها انجام می‌شود را می‌توان با غیرفعال کردن کادر انتخاب Select all (انتخاب همه) و انتخاب فریم‌های مورد نظر برای جستجو محدود کرد\&. همچنین گزینه‌هایی برای جستجو به سمت عقب، حساس به بزرگی و کوچکی حروف، و استفاده از عبارت‌های منظم در دسترس است\&. .sp بسته به تعداد فایل‌ها، جستجو ممکن است مدتی طول بکشد، بنابراین می‌توان با بستن کادر گفتگو آن را لغو کرد\&. .RE .SS "منوی ابزارها (The Tools Menu)" .PP .PP ابزارها ← اعمال قالب نام فایل (Tools → Apply Filename Format) .RS 4 هنگامی که گزینهٔ Automatically apply format (اعمال خودکار قالب) برای قالب نام فایل در کادر گفتگوی پیکربندی خاموش باشد، می‌توان از این مورد منو برای اعمال قالب پیکربندی‌شده روی نام فایل‌های انتخاب‌شده استفاده کرد\&. همچنین می‌توان از این امکان برای بررسی انطباق نام فایل‌ها با قالب پیکربندی‌شده استفاده نمود؛ بدین صورت که قالب روی همهٔ فایل‌های ذخیره‌شده اعمال شود و سپس بررسی گردد که آیا فایلی تغییر یافته است یا خیر (و در نتیجه با نماد دیسک در کادر فهرست فایل‌ها علامت‌گذاری شده باشد)\&. .RE .PP ابزارها ← اعمال قالب برچسب (Tools → Apply Tag Format) .RS 4 هنگامی که گزینهٔ Automatically apply format (اعمال خودکار قالب) برای قالب برچسب در کادر گفتگوی پیکربندی خاموش باشد، می‌توان از این مورد منو برای اعمال قالب پیکربندی‌شده روی برچسب‌های فایل‌های انتخاب‌شده استفاده کرد\&. همچنین می‌توان از این امکان برای بررسی انطباق برچسب‌ها با قالب پیکربندی‌شده استفاده نمود؛ بدین صورت که قالب روی همهٔ فایل‌های ذخیره‌شده اعمال شود و سپس بررسی گردد که آیا فایلی تغییر یافته است یا خیر (و در نتیجه با نماد دیسک در کادر فهرست فایل‌ها علامت‌گذاری شده باشد)\&. .RE .PP ابزارها ← اعمال کدگذاری متن (Tools → Apply Text Encoding) .RS 4 گزینهٔ Text encoding (کدگذاری متن) انتخاب‌شده در Settings → Configure Kid3\&.\&.\&. → بخش Tags → زبانهٔ Tag 2 را برای تمام فایل‌های انتخاب‌شده تنظیم می‌کند\&. اگر UTF8 انتخاب شده باشد، برای برچسب‌های ID3v2\&.3\&.0 از UTF16 استفاده خواهد شد زیرا UTF8 در این قالب پشتیبانی نمی‌شود\&. .RE .PP ابزارها ← تغییر نام پوشه\&.\&.\&. (Tools → Rename Folder\&.\&.\&.) .RS 4 این کادر گفتگو امکان تغییر نام خودکار پوشهٔ باز کنونی را بر اساس برچسب‌های موجود در فایل‌ها فراهم می‌کند\&. چندین قالب به‌طور پیش‌فرض پیکربندی شده‌اند تا اطلاعات مربوط به هنرمند، آلبوم و سال را در نام پوشه بگنجانند\&. همچنین امکان تنظیم یک قالب سفارشی و ویرایش (Edit) فهرست قالب‌های موجود فراهم است\&. کدهای ویژهٔ زیر برای درج مقادیر برچسب در نام پوشه به کار می‌روند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %s %{title} عنوان (ترانه) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %a %{artist} هنرمند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %l %{album} آلبوم .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %c %{comment} توضیح .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %y %{year} سال .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track} شماره قطعه (مثلاً 01) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track\&.n} شماره قطعه با عرض فیلد n (مثلاً 001 برای %{track\&.3}) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %T %{tracknumber} قطعه (بدون صفرهای پیشتاز، برای نمونه 1) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %g %{genre} سبک .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %{dirname} نام پوشه (برای نمونه %{year" "}%{dirname} سال را به ابتدای نام پوشهٔ کنونی اضافه می‌کند) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %{max\-year} بیشترین مقدار سال یافت‌شده برای این پوشه؛ همچنین می‌تواند برای کدهایی غیر از "year" نیز استفاده شود .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %{min\-year} کمترین مقدار سال یافت‌شده برای این پوشه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %{unq\-year} مقدار یکتای سال یافت‌شده برای این پوشه، یا خالی در صورت یکتا نبودن .RE .sp اگر یک جداکنندهٔ پوشه «/» در قالب یافت شود، چندین پوشه ایجاد می‌شود\&. اگر می‌خواهید به جای تغییر نام پوشهٔ کنونی یک پوشهٔ جدید ایجاد کنید، در جعبهٔ کشویی Action گزینهٔ Create Folder را به جای Rename Folder انتخاب کنید\&. منبع ( Source ) اطلاعات برچسب می‌تواند از میان Tag 1 and Tag 2، Tag 1 و Tag 2 انتخاب شود\&. پیش‌نمایشی از عملیات تغییر نام انجام‌شده روی اولین فایل در بخش‌های From و To کادر محاوره قابل مشاهده است\&. .sp با انتخاب چندین پوشه می‌توان نام آن‌ها را تغییر داد\&. .RE .PP Tools → Number Tracks\&.\&.\&. .RS 4 اگر شمارهٔ قطعه‌ها در برچسب‌ها تنظیم نشده باشد یا مقادیر نادرستی داشته باشد، این تابع می‌تواند قطعه‌ها را به‌طور خودکار و به ترتیب صعودی شماره‌گذاری کند\&. شمارهٔ آغازین را می‌توان در کادر محاوره تعیین کرد\&. اگر تنها بخشی از قطعه‌ها باید شماره‌گذاری شوند، باید انتخاب گردند\&. .sp هنگامی که Total number of tracks علامت خورده باشد، تعداد کل قطعه‌ها نیز در برچسب‌ها تنظیم خواهد شد\&. .sp امکان شماره‌گذاری قطعه‌ها روی چندین پوشه وجود دارد\&. پوشه‌ها باید باز (گسترش‌یافته) و انتخاب شوند\&. .sp اگر Reset counter for each folder علامت خورده باشد، هنگام انتخاب چندین پوشه، شماره‌گذاری قطعه‌ها برای هر پوشه با شمارهٔ مشخص‌شده از نو آغاز می‌شود\&. .sp کادر محاوره‌ای شماره‌گذاری قطعه‌ها همچنین می‌تواند برای قالب‌بندی شماره‌های موجود قطعه‌ها بدون تغییر مقادیر آن‌ها استفاده شود، به شرطی که جعبهٔ تأیید سمت چپِ Start number غیرفعال باشد\&. اگر جعبهٔ تأیید مربوطه فعال باشد، تعداد کل قطعه‌ها اضافه خواهد شد که می‌تواند برای تنظیم مجموع کل تمام قطعه‌های انتخاب‌شده استفاده شود\&. اگر فقط قالب‌بندی شماره‌های موجود مورد نظر باشد، این جعبهٔ تأیید نیز باید غیرفعال گردد\&. .RE .PP Tools → Filter\&.\&.\&. .RS 4 فیلتر می‌تواند برای نمایش تنها فایل‌هایی که با معیارهای خاصی مطابقت دارند استفاده شود\&. این ویژگی زمانی مفید است که بخواهید یک مجموعهٔ بزرگ را سازمان‌دهی کنید و تنها فایل‌هایی را ویرایش نمایید که در طرح و ساختار مورد نظر نیستند\&. عبارتی که مشخص می‌کند کدام فایل‌ها نمایش داده شوند، از همان کدهای قالبی استفاده می‌کند که در قالب نام فایل، وارد کردن (import) و صادر کردن (export) به کار می‌روند\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %s %{title} عنوان (Song) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %a %{artist} هنرمند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %l %{album} آلبوم .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %c %{comment} دیدگاه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %y %{year} سال .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track} قطعه (برای نمونه 01) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track\&.n} قطعه با پهنای فیلد n (برای نمونه 001 برای %{track\&.3}) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %T %{tracknumber} شماره قطعه (بدون صفرهای آغازین، برای مثال 1) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %g %{genre} ژانر .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %f %{file} نام فایل .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %p %{filepath} مسیر مطلق به فایل .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %e %{extension} پسوند فایل .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %O %{tag1} قالب تگ 1 (ID3v1\&.1 یا در صورت عدم وجود، خالی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %o %{tag2} قالب تگ 2 (ID3v2\&.3\&.0، ID3v2\&.4\&.0، ID3v2\&.2\&.0، ID3v2\&.2\&.1، Vorbis، APE، MP4، ASF یا در صورت عدم وجود، خالی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %b %{bitrate} نرخ بیت بر حسب kbit/s .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %v %{vbr} مقدار VBR یا خالی (تنها برای ID3v2\&.3 با id3lib) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %r %{samplerate} نرخ نمونه‌برداری بر حسب Hz .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %m %{mode} حالت کانال (Stereo یا Joint Stereo) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %h %{channels} تعداد کانال‌ها (1 یا 2) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %k %{codec} کدک (برای مثال MPEG 1 Layer 3، MP4، Ogg Vorbis، FLAC، MPC، APE، ASF، AIFF، WAV) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %w %{marked} علامت‌گذاری‌شده؛ اگر فایل علامت خورده باشد برابر 1 است (برای مثال به دلیل ناقص بودن یا عدم مطابقت با استاندارد)، در غیر این صورت خالی .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %1a %1{artist}، \&.\&.\&. از پیشوند 1 برای دریافت مقادیر تگ 1 استفاده کنید .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %2a %2{artist}، \&.\&.\&. از پیشوند 2 برای دریافت مقادیر تگ 2 استفاده کنید .RE .sp این کدها با مقادیر مربوط به فایل جایگزین می‌شوند و رشته‌های حاصل را می‌توان با عملگرهای زیر مقایسه کرد: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} s1 equals s2: اگر s1 و s2 برابر باشند، درست (true) است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} s1 contains s2: اگر s1 حاوی s2 باشد، یعنی s2 زیررشته‌ای از s1 باشد، درست (true) است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} s matches re: اگر s با عبارت باقاعده re مطابقت داشته باشد، درست (true) است\&. .RE .sp عبارت‌های درست با 1 و نادرست با 0 جایگزین می‌شوند\&. مقادیر درست با 1، true، on و yes، و مقادیر نادرست با 0، false، off و no نشان داده می‌شوند\&. عملیات بولی عبارتند از not، and، or (به همین ترتیب تقدم) و می‌توانند با پرانتز گروه‌بندی شوند\&. .sp برخی از قواعد فیلتر از پیش تعریف شده‌اند و می‌توانند به عنوان الگوهایی برای عبارت‌های خودتان به کار روند: .PP All .RS 4 هنگامی که فهرست فایل‌ها فیلتر شده باشد \- این حالت با "[filtered]" در عنوان پنجره نشان داده می‌شود \- و بخواهید تمام فایل‌ها دوباره نمایش داده شوند، فیلترسازی می‌تواند با استفاده از این فیلتر بازگردانده شود\&. این فیلتر از یک عبارت خالی استفاده می‌کند، اما یک مقدار درست (true) نیز اثر یکسانی خواهد داشت\&. .RE .PP Filename Tag Mismatch .RS 4 \fB not (%{filepath} contains "%{artist} \- %{album}/%{track} %{title}") \fR .sp بررسی می‌کند که آیا مسیر فایل با قالب نام فایل مطابقت دارد یا خیر\&. این قاعده در صورت تغییر قالب نام فایل، به طور خودکار تطبیق داده می‌شود\&. .RE.PP بدون برچسب ۱ (No Tag 1) .RS 4 \fB %{tag1} equals "" \fR .sp تنها فایل‌هایی را نمایش می‌دهد که فاقد Tag 1 هستند\&. .RE .PP بدون برچسب ۲ (No Tag 2) .RS 4 \fB %{tag2} equals "" \fR .sp تنها فایل‌هایی را نمایش می‌دهد که فاقد Tag 2 هستند\&. .RE .PP برچسب ID3v2\&.3\&.0 (ID3v2\&.3\&.0 Tag) .RS 4 \fB %{tag2} equals "ID3v2\&.3\&.0" \fR .sp تنها فایل‌هایی را نمایش می‌دهد که دارای یک برچسب ID3v2\&.3\&.0 هستند\&. .RE .PP برچسب ID3v2\&.4\&.0 (ID3v2\&.4\&.0 Tag) .RS 4 \fB %{tag2} equals "ID3v2\&.4\&.0" \fR .sp تنها فایل‌هایی را نمایش می‌دهد که دارای یک برچسب ID3v2\&.4\&.0 هستند\&. .RE .PP Tag 1 != Tag 2 .RS 4 \fB not (%1{title} equals %2{title} and %1{album} equals %2{album} and %1{artist} equals %2{artist} and %1{comment} equals %2{comment} and %1{year} equals %2{year} and %1{track} equals %2{track} and %1{genre} equals %2{genre}) \fR .sp فایل‌هایی را نمایش می‌دهد که میان Tag 1 و Tag 2 آن‌ها تفاوت وجود دارد\&. .RE .PP Tag 1 == Tag 2 .RS 4 \fB %1{title} equals %2{title} and %1{album} equals %2{album} and %1{artist} equals %2{artist} and %1{comment} equals %2{comment} and %1{year} equals %2{year} and %1{track} equals %2{track} and %1{genre} equals %2{genre} \fR .sp فایل‌هایی را نمایش می‌دهد که Tag 1 و Tag 2 در آن‌ها یکسان است\&. .RE .PP ناقص (Incomplete) .RS 4 \fB %{title} equals "" or %{artist} equals "" or %{album} equals "" or %{year} equals "" or %{tracknumber} equals "" or %{genre} equals "" \fR .sp فایل‌هایی را نمایش می‌دهد که در برچسب‌های استاندارد (title، artist، album، date، track number، genre) دارای مقادیر خالی هستند\&. .RE .PP بدون تصویر (No Picture) .RS 4 \fB %{picture} equals "" \fR .sp تنها فایل‌هایی را نمایش می‌دهد که فاقد تصویر هستند\&. .RE .PP نشانه‌گذاری‌شده (Marked) .RS 4 \fB not (%{marked} equals "") \fR .sp تنها فایل‌هایی را نمایش می‌دهد که نشانه‌گذاری شده‌اند چون استاندارد ID3 را نقض کرده‌اند، ناقص (truncated) هستند یا تصویر آن‌ها بیش از حد بزرگ است\&. .RE .PP فیلتر سفارشی (Custom Filter) .RS 4 برای افزودن فیلتر خود، این مدخل را انتخاب کنید\&. برای مثال، اگر می‌خواهید فیلتری برای هنرمندانی که با "The" شروع می‌شوند داشته باشید، "Custom Filter" را با نام "The Bands" جایگزین کرده و Enter\& را فشار دهید\&. سپس عبارت زیر را در کادر ویرایش خط وارد کنید: .sp \fB %{artist} matches "The\&.*" \fR .sp سپس بر روی Save Settings\& کلیک کنید\&. برای فیلتر کردن فایل‌ها بر روی Apply کلیک نمایید\&. تمام فایل‌های پردازش‌شده در نمای متنی نمایش داده می‌شوند؛ با یک "+" برای مواردی که با فیلتر مطابقت دارند و یک "\-" برای سایرین\&. پس از پایان، تنها فایل‌هایی که هنرمند آن‌ها با "The" شروع می‌شود نمایش داده خواهند شد و در عنوان پنجره عبارت "[filtered]" درج می‌شود\&. .RE .sp .RE .PP ابزارها → تبدیل ID3v2\&.3 به ID3v2\&.4 (Tools → Convert ID3v2\&.3 to ID3v2\&.4) .RS 4 اگر در فایل‌های انتخاب‌شده برچسب‌های ID3v2\&.3 وجود داشته باشد، به برچسب‌های ID3v2\&.4 تبدیل خواهند شد\&. فریم‌هایی که توسط TagLib پشتیبانی نمی‌شوند نادیده گرفته خواهند شد\&. تنها فایل‌های بدون تغییرات ذخیره‌نشده تبدیل خواهند شد\&. .RE .PP ابزارها → تبدیل ID3v2\&.4 به ID3v2\&.3 (Tools → Convert ID3v2\&.4 to ID3v2\&.3) .RS 4 اگر در فایل‌های انتخاب‌شده برچسب‌های ID3v2\&.4 وجود داشته باشد، به برچسب‌های ID3v2\&.3 تبدیل خواهند شد\&. تنها فایل‌های بدون تغییرات ذخیره‌نشده تبدیل خواهند شد\&. .RE .PP ابزارها → پخش (Tools → Play) .RS 4 این دستور یک نوار ابزار ساده را برای پخش فایل‌های صوتی باز می‌کند\&. این نوار شامل دکمه‌هایی برای عملیات پایه (Play/Pause، Stop playback، Previous Track، Next Track، Close)، لغزنده‌هایی برای موقعیت و بلندی صدا و یک نمایشگر برای موقعیت فعلی است\&. اگر چندین فایل انتخاب شده باشند، قطعه‌های انتخاب‌شده پخش می‌شوند، در غیر این صورت تمام فایل‌ها پخش خواهند شد\&. .sp زمان نمایش داده‌شده را می‌توان با کلیک روی نمایشگر، بین زمان سپری‌شده و زمان باقی‌مانده تغییر وضعیت داد\&. .RE .SS "منوی تنظیمات (The Settings Menu)" .PP تنظیمات → نمایش نوار ابزار (Settings → Show Toolbar) .RS 4 نمایش نوار ابزار را تغییر وضعیت می‌دهد\&. .RE .PP تنظیمات → نمایش نوار وضعیت (Settings → Show Statusbar) .RS 4 نمایش نوار وضعیت را تغییر وضعیت می‌دهد، نواری که عملیات طولانی‌تر مانند باز کردن یا ذخیره یک پوشه را نمایش می‌دهد\&. .RE .PP تنظیمات → نمایش تصویر (Settings → Show Picture) .RS 4 نمایش تصویر پیش‌نمایش طرح روی جلد آلبوم را تغییر وضعیت می‌دهد\&. .RE .PP تنظیمات → پنهان‌سازی خودکار برچسب‌ها (Settings → Auto Hide Tags) .RS 4 اگر این گزینه فعال باشد، برچسب‌های خالی به‌طور خودکار پنهان می‌شوند\&. بخش‌های File، Tag 1 و Tag 2 را می‌توان با کلیک روی دکمه‌های متناظر \-/+ به‌صورت دستی جمع یا باز کرد\&. .RE .PP تنظیمات → پیکربندی کلیدهای میان‌بر\&.\&.\&. (Settings → Configure Shortcut keys\&.\&.\&.) .RS 4 کادر محاوره‌ای را برای تخصیص کلیدهای میان‌بر صفحه‌کلید به بیشتر عملکردهای برنامه باز می‌کند\&. حتی عملکردهایی وجود دارند که منو یا دکمه متناظری برای آن‌ها در دسترس نیست، مانند next file، previous file، select all\&. .sp .RE .PP تنظیمات → پیکربندی Kid3\&.\&.\&. (Settings → Configure Kid3\&.\&.\&.) .RS 4 کادر محاوره‌ای پیکربندی را باز می‌کند که شامل صفحاتی برای برچسب‌ها، فایل‌ها، اقدامات کاربر و تنظیمات شبکه است\&. .sp گزینه‌های ویژه برچسب‌ها را می‌توان در صفحه Tags یافت، که خود به چهار برگه برای Tag 1، Tag 2، Tag 3 و All Tags تقسیم شده است\&. .sp اگر Mark truncated fields علامت زده شده باشد، فیلدهای کوتاه‌شده ID3v1\&.1 با رنگ قرمز مشخص می‌شوند\&. فیلدهای متنی برچسب‌های ID3v1\&.1 فقط می‌توانند ۳۰ نویسه و یادداشت (comment) فقط ۲۸ نویسه داشته باشند\&. همچنین شماره‌های سبک و قطعه محدود هستند، به‌طوری که ممکن است فیلدها هنگام وارد کردن یا انتقال از ID3v2 کوتاه شوند\&. فیلدهای کوتاه‌شده و خود فایل با رنگ قرمز مشخص می‌شوند و این علامت پس از ویرایش فیلد برداشته خواهد شد\&. .sp با Text encoding برای ID3v1 می‌توان مجموعه نویسه‌های مورد استفاده در برچسب‌های ID3v1 را تعیین کرد\&. فرض بر این است که این کدگذاری ISO\-8859\-1 باشد، بنابراین توصیه می‌شود این مقدار پیش‌فرض را حفظ کنید\&. با این حال، برچسب‌هایی با کدگذاری‌های متفاوت نیز وجود دارند، بنابراین می‌توان آن را در اینجا تنظیم کرد و سپس برچسب‌های ID3v1 را در ID3v2 که از Unicode پشتیبانی می‌کند کپی نمود\&. .sp جعبه انتخاب Use track/total number of tracks format کنترل می‌کند که آیا فیلد شماره قطعه در برچسب‌های ID3v2 صرفاً شامل شماره قطعه باشد یا علاوه بر آن شامل تعداد کل قطعات موجود در پوشه نیز باشد\&. .sp هنگامی که Genre as text instead of numeric string علامت زده شود، تمام سبک‌های ID3v2 به‌صورت یک رشته متنی ذخیره خواهند شد حتی اگر کد متناظری برای سبک‌های ID3v1 وجود داشته باشد\&. اگر این گزینه تنظیم نشود، سبک‌هایی که کد ID3v1 برای آن‌ها وجود دارد، به‌صورت شماره کد سبک ذخیره می‌شوند (در ID3v2\&.3 داخل پرانتز)\&. بنابراین بسته به این گزینه، سبک Metal به‌صورت "Metal" یا "(9)" ذخیره خواهد شد\&. سبک‌هایی که در فهرست سبک‌های ID3v1 نیستند همواره به‌صورت یک رشته متنی ذخیره می‌شوند\&. هدف از این گزینه، بهبود سازگاری با دستگاه‌هایی است که کدهای سبک را به‌درستی تفسیر نمی‌کنند\&. .sp هنگامی که WAV files with lowercase id3 chunk علامت زده شود، چانک RIFF مورد استفاده برای ذخیره برچسب‌های ID3v2 در فایل‌های WAV به‌جای "ID3 " با نام "id3 " نام‌گذاری خواهد شد\&. به‌طور پیش‌فرض، Kid3 و دیگر برنامه‌هایی که از TagLib استفاده می‌کنند، هنگام خواندن فایل‌های WAV هر دو نگارش با حروف کوچک و بزرگ را می‌پذیرند، اما هنگام نوشتن برچسب‌های ID3v2 روی فایل‌های WAV از "ID3 " استفاده می‌کنند\&. از آنجا که برنامه‌های دیگری وجود دارند که تنها "id3 " را می‌پذیرند (مانند JRiver Media Center و foobar2000)، می‌توان از این گزینه برای ایجاد برچسب‌هایی استفاده کرد که توسط چنین برنامه‌هایی قابل خواندن باشند\&. .sp هنگامی که Mark standard violations علامت زده شود، فیلدهای ID3v2 که استاندارد را نقض می‌کنند با رنگ قرمز مشخص خواهند شد\&. جزئیات مربوط به این نقض در یک پنجره شناور (tooltip) نمایش داده می‌شود: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} باید یکتا باشد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} خط جدید ممنوع است .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} نویسه بازگشت به ابتدای سطر (Carriage return) ممنوع است .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} مالک (Owner) باید غیرخالی باشد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید عددی باشد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید عددی یا به‌صورت شماره/تعداد کل باشد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} قالب به‌صورت DDMM است .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} قالب به‌صورت HHMM است .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} قالب YYYY است .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید با یک سال و یک نویسه فاصله آغاز شود .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید تاریخ/زمان بر اساس ISO 8601 باشد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید کلید موسیقی باشد، ۳ نویسه، A\-G، b، #، m، o .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید کد زبان ISO 639\-2 باشد، ۳ نویسه کوچک .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید کد ISRC باشد، ۱۲ نویسه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} باید فهرستی از رشته‌های جداشده با \*(Aq|\*(Aq باشد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} دارای فضای خالی اضافی است .RE .sp اسناد استاندارد ID3 به‌صورت برخط در دسترس هستند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \m[blue]\fBID3 tag version 2\&.3\&.0\fR\m[]\&\s-2\u[11]\d\s+2 .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \m[blue]\fBID3 tag version 2\&.4\&.0 \- Main Structure\fR\m[]\&\s-2\u[12]\d\s+2 .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} \m[blue]\fBID3 tag version 2\&.4\&.0 \- Native Frames\fR\m[]\&\s-2\u[5]\d\s+2 .RE .sp گزینه Text encoding کدگذاری پیش‌فرضی که برای فریم‌های ID3v2 استفاده می‌شود را تعیین می‌کند و می‌تواند روی ISO\-8859\-1، UTF16، یا UTF8 تنظیم شود\&. UTF8 برای فریم‌های ID3v2\&.3\&.0 معتبر نیست؛ اگر تنظیم شود، به‌جای آن از UTF16 استفاده خواهد شد\&. برای فریم‌های ID3v2\&.4\&.0، هر سه کدگذاری امکان‌پذیر هستند\&. .sp گزینه Version used for new tags مشخص می‌کند که برچسب‌های ID3v2 جدید به‌صورت نسخه 2\&.3\&.0 ایجاد شوند یا 2\&.4\&.0\&. .sp گزینه Track number digits تعداد ارقام موجود در فیلدهای Track Number است\&. صفرهای ابتدایی برای پر کردن به‌کار می‌روند\&. برای نمونه، با مقدار ۲، شماره قطعه ۵ به‌صورت "05" تنظیم می‌شود\&. .sp جعبه گزینش Comment field name تنها برای فایل‌های Ogg/Vorbis و FLAC کاربرد دارد و نام فیلدی را که برای توضیحات استفاده می‌شود مشخص می‌کند\&. به نظر می‌رسد برنامه‌های مختلف از نام‌های متفاوتی استفاده می‌کنند؛ برای نمونه "COMMENT" توسط XMMS استفاده می‌شود، در‌حالی‌که Amarok از "DESCRIPTION" استفاده می‌کند\&. .sp قالب تصویرها در فایل‌های Ogg/Vorbis توسط Picture field name تعیین می‌شود که می‌تواند "METADATA_BLOCK_PICTURE" یا "COVERART" باشد\&. اولی استاندارد رسمی است و از همان قالبی استفاده می‌کند که تصاویر در برچسب‌های FLAC دارند\&. گزینه "COVERART" روشی قدیمی‌تر و غیررسمی برای گنجاندن تصاویر در توضیحات Vorbis است\&. این گزینه می‌تواند برای سازگاری با پخش‌کننده‌های قدیمی استفاده شود\&. .sp حالتی که هنگام ذخیره فایل‌های Matroska استفاده می‌شود را می‌توان با Write mode انتخاب کرد\&. این گزینه توازن میان حجم فایل و سرعت نوشتن را هنگام ذخیره برچسب‌ها، پیوست‌ها و فصل‌ها در فایل کنترل می‌کند\&. برای فایل‌های بسیار بزرگ و/یا سیستم‌های فایل (شبکه‌ای) کُند، استفاده از Avoid insert زمان نوشتن را به‌طور چشمگیری کاهش می‌دهد\&. سه حالت ممکن وجود دارد: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Compact: برچسب‌ها، پیوست‌ها و فصل‌ها تا جای ممکن فشرده نوشته می‌شوند\&. این حالت پیش‌فرض است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Do not shrink: هنگام نوشتن بلوک‌ها کوچک نمی‌شوند؛ در صورت کوچک‌تر شدن محتوا، فاصله پرکننده اضافه می‌شود\&. با بزرگ‌تر شدن محتوا، درج (insert) مجاز خواهد بود\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Avoid insert: مانند Do not shrink است اما از درج برای بلوک‌هایی که در انتهای فایل نیستند نیز جلوگیری می‌کند: بلوکِ غیرپایانی در حال رشد با فاصله پرکننده اندازه قبلی جایگزین شده و یک بلوک جدید به انتهای فایل الحاق می‌شود\&. .RE .sp اگر جعبه انتخاب Mark if larger than (bytes) فعال باشد، فایل‌های دارای تصویر جلد آلبوم جاسازی‌شده که از اندازه مشخص‌شده به بایت تجاوز کنند، با رنگ قرمز مشخص می‌شوند\&. از این گزینه می‌توان برای یافتن فایل‌های حاوی تصاویر بیش از حد بزرگ که توسط برخی برنامه‌ها و پخش‌کننده‌ها پذیرفته نمی‌شوند استفاده کرد\&. مقدار پیش‌فرض ۱۳۱۰۷۲ بایت (۱۲۸ کیلوبایت) است\&. .sp گزینه Custom Genres می‌تواند برای تعریف سبک‌هایی استفاده شود که در فهرست سبک‌های استاندارد موجود نیستند، مانند "Gothic Metal"\&. چنین سبک‌های سفارشی در جعبه گزینش Genre مربوط به Tag 2 ظاهر خواهند شد\&. برای برچسب‌های ID3v1\&.1، تنها سبک‌های از‌پیش‌تعریف‌شده قابل استفاده هستند\&. .sp فهرست سبک‌های سفارشی همچنین می‌تواند برای محدود کردن تعداد سبک‌های موجود در جعبه گزینش Genre به مواردی که معمولاً استفاده می‌شوند به کار رود\&. اگر مجموعه‌تان بیشتر شامل موسیقی در سبک‌های Metal، Gothic Metal، Ancient و Hard Rock است، می‌توانید آن سبک‌ها را وارد کرده و Show only custom genres را علامت بزنید\&. در این صورت، جعبه گزینش Genre در Tag 2 تنها شامل آن چهار سبک خواهد بود و نیازی نیست برای یافتن آن‌ها کل فهرست سبک‌ها را جستجو کنید\&. در این مثال، تنها Metal و Hard Rock در فهرست سبک‌های tag 1 نشان داده خواهند شد، زیرا آن دو ورودی سبک سفارشی، جزو سبک‌های استاندارد هستند\&. اگر Show only custom genres فعال نباشد، سبک‌های سفارشی در انتهای فهرست سبک‌ها یافت می‌شوند\&. .sp در Custom Frames، می‌توان تا هشت نام فریم سفارشی را تعریف کرد، که سپس می‌توانند مانند فریم‌های یکپارچه، مثلاً به‌عنوان فریم‌های دسترسی سریع، استفاده شوند\&. .sp گزینه Quick Access Frames تعیین می‌کند کدام نوع فریم‌ها همواره در بخش Tag 2 نمایش داده شوند\&. چنین فریم‌هایی را می‌توان بدون نیاز به استفاده اولیه از دکمه Add اضافه کرد\&. ترتیب این فریم‌های دسترسی سریع با کشیدن و رها کردن موارد قابل تغییر است\&. .sp جعبه گزینش Track number field name تنها برای RIFF INFO اهمیت دارد و نام فیلد مورد استفاده برای شماره قطعه را تعیین می‌کند\&. شماره قطعه در استاندارد اصلی RIFF مشخص نشده است؛ برنامه‌هایی هستند که از "ITRK" و برخی دیگر از "IPRT" استفاده می‌کنند\&. .sp گزینه Tag Format شامل گزینه‌هایی برای قالب‌بندی برچسب‌ها است\&. هنگامی که Automatically apply format علامت خورده باشد، پیکربندی قالب هنگام ویرایش متن در کادرهای ورودی متن به‌طور خودکار اعمال می‌شود\&. گزینه Validation اعتبارسنج‌ها را در کنترل‌های دارای مقادیر قطعه/مجموع و تاریخ/زمان فعال می‌کند\&. گزینه Case conversion می‌تواند روی No changes، All lowercase، All uppercase، First letter uppercase یا All first letters uppercase تنظیم شود\&. برای استفاده از تبدیل وابسته به محل (locale\-aware) میان حروف کوچک و بزرگ، می‌توان یک محلی‌سازی را در جعبه گزینش پایین انتخاب کرد\&. فهرست جایگزینی رشته می‌تواند روی نگاشت‌های دلخواه رشته تنظیم شود\&. برای افزودن یک نگاشت جدید، سلول From یک سطر را انتخاب کرده و متنی را که می‌خواهید جایگزین شود وارد کنید، سپس به ستون To رفته و متن جایگزین را وارد نمایید\&. هنگامی که متن جایگزین‌شونده با یک اسلش ("/") آغاز و پایان یابد، یک عبارت باقاعده (regular expression) به کار می‌رود\&. برای عبارات باقاعده دارای گروه‌های ضبط (capturing groups)، موارد وقوع \e1، \e2، \&.\&.\&. در To با رشته ضبط‌شده توسط گروه ضبط متناظر جایگزین می‌شوند\&. برای حذف یک نگاشت، سلول From را خالی بگذارید (برای مثال ابتدا با فشردن فاصله و سپس backspace)\&. افزودن و حذف سطرها همچنین با استفاده از یک منوی زمینه‌ای که با کلیک روی کلید راست ماوس ظاهر می‌شود امکان‌پذیر است\&. جایگزینی تنها در صورتی فعال خواهد بود که جعبه انتخاب String replacement علامت خورده باشد\&. .sp جدول موجود در Rating شامل نگاشت امتیازهای ستاره‌ای به مقادیر واقعی ذخیره‌شده در برچسب است\&. فریم‌های حاوی اطلاعات امتیازدهی در سطر Rating فهرست فریم‌ها درج شده‌اند\&. برای این فریم‌ها، امتیاز را می‌توان با دادن تعدادی ستاره از میان پنج ستاره مشخص کرد\&. قالب‌های برچسب مختلف و برنامه‌های گوناگون از مقادیر متفاوتی برای نگاشت امتیاز ستاره‌ای به مقدار ذخیره‌شده در برچسب استفاده می‌کنند\&. جهت نمایش تعداد صحیح ستاره‌ها، Kid3 یک نگاشت را در این جدول جستجو می‌کند\&. کلید جستجوی نگاشت، نام فریم است؛ به‌عنوان مثال "RATING" که برای توضیحات Vorbis استفاده می‌شود یا "IRTD" برای RIFF INFO\&. برای برچسب‌های ID3v2، یک کلید ترکیبی متشکل از شناسه فریم "POPM" از فریم Popularimeter و فیلد "Email" آن که با یک نقطه جدا شده‌اند به کار می‌رود\&. بنابراین، کلیدهای متفاوتی برای ID3v2 وجود دارد؛ برای نمونه "POPM\&.Windows Media Player 9 Series" برای نگاشت مورد استفاده توسط Windows Media Player و کاوشگر فایل، و به‌سادگی "POPM" برای فریم‌های POPM با فیلد خالی "Email"\&. از آنجا که ورودی‌های متعددی برای "POPM" می‌تواند وجود داشته باشد، ترتیب آن‌ها مهم است\&. هنگامی که Kid3 یک فریم Popularimeter جدید اضافه می‌کند، از نخستین ورودی "POPM" برای تعیین مقداری که باید در فیلد "Email" نوشته شود استفاده خواهد کرد\&. این مقدار سپس نگاشت مورد استفاده برای رتبه‌بندی‌های ستاره‌ای را مشخص می‌کند\&. همچنین اگر هیچ کلیدی یافت نشود، ورودی نخست به کار می‌رود؛ بنابراین، ورودی پیش‌فرض است\&. .sp علاوه بر ستون Name شامل کلیدها، این جدول دارای ستون‌های 1 تا 5 برای مقادیری است که باید هنگام دادن تعداد ستاره‌های متناظر ذخیره شوند\&. بالعکس، این مقادیر تعداد ستاره‌هایی را تعیین می‌کنند که برای مقدار ذخیره‌شده در فریم نمایش داده می‌شوند\&. برای نمونه، سطر در جدول زیر شامل مقادیر 1، 64، 128، 196، 255 است\&. آستانه‌های تعداد ستاره‌هایی که باید نمایش داده شوند میان این مقادیر قرار می‌گیرند و با آنچه Windows\(rg Explorer استفاده می‌کند سازگار هستند\&. .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .B جدول\ \&1.\ \&ورودی در جدول Rating .TS allbox tab(:); lB lB lB lB lB lB. T{ Name T}:T{ 1 T}:T{ 2 T}:T{ 3 T}:T{ 4 T}:T{ 5 T} .T& l l l l l l l l l l l l. T{ POPM T}:T{ 1 T}:T{ 64 T}:T{ 128 T}:T{ 196 T}:T{ 255 T} T{ Range T}:T{ 1\-31 T}:T{ 32\-95 T}:T{ 96\-159 T}:T{ 160\-223 T}:T{ 224\-255 T} .TE .sp 1 در برگه Files جعبه انتخاب Load last\-opened files می‌تواند علامت‌گذاری شود تا Kid3 دفعه بعد که راه‌اندازی می‌شود، آخرین فایل انتخاب‌شده را باز و انتخاب کند\&. Preserve file timestamp می‌تواند برای حفظ برچسب زمانی تغییر فایل علامت بخورد\&. Filename for cover نامی را مشخص می‌کند که هنگام برون‌ریزی یک تصویر جاسازی‌شده به یک فایل پیشنهاد می‌شود\&. با Text encoding (Export, Playlist) می‌توان کدگذاری مورد استفاده هنگام نوشتن فایل‌ها را تعیین کرد\&. مقدار پیش‌فرض System را می‌توان تغییر داد، برای مثال اگر قرار باشد فهرست‌های پخش روی دستگاه متفاوتی استفاده شوند\&. .sp اگر Mark changes فعال باشد، فیلدهای تغییریافته با پس‌زمینه برچسب خاکستری روشن علامت‌گذاری می‌شوند\&. .sp بخش File List مشخص می‌کند کدام فایل‌ها در فهرست فایل نمایش داده شوند\&. یک Filter می‌تواند برای محدود کردن موارد این فهرست به فایل‌هایی با پسوندهای پشتیبانی‌شده استفاده شود\&. برای مشخص کردن صریح پوشه‌هایی که باید در فهرست فایل نمایش داده شوند یا برای مستثنی کردن پوشه‌های خاص، می‌توان از گزینه‌های Include folders و Exclude folders استفاده کرد\&. آن‌ها می‌توانند شامل عبارت‌های عام (wildcard) باشند، برای نمونه */Music/* برای در بر گرفتن تنها پوشه Music، یا */iTunes/* برای حذف پوشه iTunes از فهرست فایل\&. اگر نیاز به استفاده از چندین عبارت از این دست باشد، می‌توان آن‌ها را با فاصله یا نقطه‌ویرگول از هم جدا کرد\&. .sp دکمه‌های Filename from tag و Tag from filename در بخش Format پنجره‌های محاوره‌ای را برای ویرایش قالب‌هایی که در جعبه‌های گزینش Format (با پیکان‌های بالا و پایین) در دسترس هستند باز می‌کنند، که در بخش File پنجره اصلی یافت می‌شوند\&. .sp دکمه Playlist می‌تواند برای ویرایش قالب‌های نام فایل موجود در محاوره Create Playlist استفاده شود\&. .sp گزینه Filename Format شامل گزینه‌هایی برای قالب نام فایل‌ها است\&. همان گزینه‌های موجود در Tag Format در دسترس هستند\&. .sp علاوه بر این، می‌توان Maximum length مجاز را برای نام فایل‌ها تعیین کرد\&. بیشتر سیستم‌های فایل مدرن محدودیتی معادل ۲۵۵ نویسه دارند، اما اگر می‌خواهید فایل‌ها را روی CD رایت کنید، باید این حد را روی ۶۴ تنظیم نمایید\&. اگر Use for playlist and folder names علامت خورده باشد، قالب نام فایل هنگام ایجاد فهرست‌های پخش و تغییر نام پوشه‌ها نیز استفاده می‌شود\&. .sp برگه User Actions شامل جدولی از دستورهایی است که در منوی زمینه‌ای فهرست فایل موجود هستند\&. برای عملیات حیاتی مانند حذف فایل‌ها، توصیه می‌شود گزینه Confirm علامت زده شود تا پیش از اجرای دستور یک محاوره تأیید نمایش یابد\&. گزینه Output می‌تواند علامت بخورد تا خروجی نوشته‌شده توسط دستورهای کنسول (خروجی استاندارد و خطای استاندارد) دیده شود\&. Name نامی است که در منوی زمینه‌ای نمایش می‌یابد\&. Command خط فرمانی است که باید اجرا شود\&. آرگومان‌ها را می‌توان با استفاده از کدهای زیر ارسال کرد: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %F %{files} مسیرهای فایل (در صورت انتخاب چندین فایل، به‌صورت یک فهرست) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} %f %{file} مسیر فایل به یک فایل مجزا .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %uF %{urls} نشانی‌های URL (در صورت انتخاب چندین فایل، به‌صورت یک فهرست) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %uf %{url} نشانی URL به یک فایل مجزا .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %d %{directory} پوشه .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %s %{title} عنوان (آهنگ) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %a %{artist} هنرمند .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %l %{album} آلبوم .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %c %{comment} توضیح .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %y %{year} سال .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track} شماره قطعه (مانند 01) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %t %{track\&.n} شماره قطعه با پهنای فیلد n (مانند 001 برای %{track\&.3}) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %T %{tracknumber} شماره قطعه (بدون صفرهای آغازین، مانند 1) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %g %{genre} سبک .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %b %{browser} دستور برای راه‌اندازی مرورگر وب .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} %q %{qmlpath} پوشه پایه فایل‌های QML ارائه‌شده .RE .sp کد ویژه \fB@separator\fR می‌تواند به عنوان دستوری برای درج یک جداکننده در منوی زمینه کنش‌های کاربر تنظیم شود\&. موارد منو را می‌توان با محصور کردنشان میان دستورهای \fB@beginmenu\fR و \fB@endmenu\fR در یک زیرمنو قرار داد\&. نام زیرمنو توسط ستون Name دستور \fB@beginmenu\fR تعیین می‌شود\&. .sp برای اجرای اسکریپت‌های QML، از \fB@qml\fR به عنوان نام دستور استفاده می‌شود\&. مسیر اسکریپت QML به عنوان یک پارامتر ارسال می‌شود\&. اسکریپت‌های ارائه‌شده را می‌توان در پوشه %{qmlpath}/script/ یافت (در Linux\(rg به‌طور معمول /usr/share/kid3/qml/script/، در Windows qml/script/ درون پوشه نصب، و در macOS\(rg در پوشه برنامه kid3\&.app/Contents/Resources/qml/script/)\&. اسکریپت‌های سفارشی را می‌توان در هر پوشه‌ای ذخیره کرد\&. اگر کد QML از مؤلفه‌های GUI استفاده می‌کند، باید از \fB@qmlview\fR به جای \fB@qml\fR استفاده شود\&. پارامترهای اضافی به اسکریپت QML ارسال می‌شوند که در آنجا از طریق تابع \fBgetArguments()\fR در دسترس خواهند بود\&. مروری بر برخی توابع و ویژگی‌هایی که در QML در دسترس هستند را می‌توان در پیوست QML Interface یافت\&. .sp دستوری که با %{browser} درج خواهد شد را می‌توان در کادر متنی Web browser در بالا تعریف کرد\&. دستورهایی که با %{browser} آغاز می‌شوند می‌توانند برای دریافت اطلاعات درباره فایل‌های صوتی از وب استفاده شوند، برای نمونه .sp .if n \{\ .RS 4 .\} .nf \fB%{browser} http://lyricwiki\&.org/%u{artist}:%u{title}\fR .fi .if n \{\ .RE .\} .sp متن ترانه مربوط به آهنگ جاری را در \m[blue]\fBLyricWiki\fR\m[]\&\s-2\u[13]\d\s+2 جستجو خواهد کرد\&. حرف "u" در %u{artist} و %u{title} برای URL\-encode کردن اطلاعات هنرمند %{artist} و ترانه %{title} استفاده می‌شود\&. تعریف پرس‌وجوهای اختصاصی خود به همین روش آسان است، مانند جستجوی تصویر با \m[blue]\fBGoogle\fR\m[]\&\s-2\u[14]\d\s+2: .sp .if n \{\ .RS 4 .\} .nf \fB%{browser} http://images\&.google\&.com/images?q=%u{artist}%20%u{album}\fR .fi .if n \{\ .RE .\} .sp برای افزودن تصویر جلد آلبوم به برچسب ۲، می‌توانید با استفاده از دستورهای شرح‌داده‌شده در بالا با Google یا Amazon به جستجوی تصاویر بپردازید\&. تصویر را می‌توان با کشیدن و رها کردن به برچسب افزود\&. همچنین می‌توانید با Add یک تصویر اضافه کنید، سپس فریم Picture را انتخاب کرده و یک فایل تصویری را درون‌ریزی کنید یا از کلیپ‌بورد جای‌گذاری نمایید\&. فریم‌های Picture برای برچسب‌های ID3v2، MP4، FLAC، Ogg و ASF پشتیبانی می‌شوند\&. .sp برای افزودن و حذف مدخل‌ها در جدول، می‌توان از یک منوی زمینه استفاده کرد\&. .sp صفحه Network تنها حاوی یک فیلد برای درج نشانی پروکسی و به‌صورت اختیاری درگاه (port) است که با دو‌نقطه از هم جدا می‌شوند\&. در صورت علامت زدن جعبه انتخاب، هنگام درون‌ریزی از یک سرور اینترنتی، از پروکسی استفاده خواهد شد\&. .sp در صفحه Plugins، افزونه‌های موجود را می‌توان فعال یا غیرفعال کرد\&. افزونه‌ها به دو بخش تقسیم می‌شوند\&. فهرست Metadata Plugins & Priority شامل افزونه‌هایی است که از قالب‌های فایل صوتی پشتیبانی می‌کنند\&. ترتیب افزونه‌ها مهم است چرا که از بالا به پایین آزمایش می‌شوند\&. برخی قالب‌ها توسط چندین افزونه پشتیبانی می‌شوند، بنابراین فایل‌ها با نخستین افزونه‌ای که از آن‌ها پشتیبانی کند باز خواهند شد\&. افزونه TaglibMetadata از بیشتر قالب‌ها پشتیبانی می‌کند؛ اگر در بالای فهرست باشد، بیشتر فایل‌ها را باز خواهد کرد\&. اگر می‌خواهید برای یک قالب فایل از افزونه متفاوتی استفاده کنید، مطمئن شوید که پیش از افزونه TaglibMetadata در فهرست قرار گرفته باشد\&. جزئیات مربوط به افزونه‌های فراداده و چرایی تمایل شما به استفاده از آن‌ها به‌جای TagLib در زیر فهرست شده‌اند\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Id3libMetadata: برای برچسب‌های ID3v1\&.1 و ID3v2\&.3 در فایل‌های MP3، MP2 و AAC از \m[blue]\fBid3lib\fR\m[]\&\s-2\u[15]\d\s+2 استفاده می‌کند\&. نسبت به TagLib از چند نوع فریم بیشتر پشتیبانی می‌کند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} OggFlacMetadata: برای فایل‌های Ogg از \m[blue]\fBlibogg\fR\m[]\&\s-2\u[16]\d\s+2، \m[blue]\fBlibvorbis, libvorbisfile\fR\m[]\&\s-2\u[17]\d\s+2 و علاوه بر آن برای فایل‌های FLAC از \m[blue]\fBlibFLAC++ and libFLAC\fR\m[]\&\s-2\u[18]\d\s+2 استفاده می‌کند\&. این‌ها کتابخانه‌های رسمی برای این قالب‌ها هستند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} TaglibMetadata: از \m[blue]\fBTagLib\fR\m[]\&\s-2\u[19]\d\s+2 استفاده می‌کند که از تعداد زیادی از قالب‌های فایل صوتی پشتیبانی می‌کند\&. می‌توان آن را برای تمام فایل‌های صوتی پشتیبانی‌شده توسط Kid3 به کار برد\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Mp4v2Metadata: \m[blue]\fBmp4v2\fR\m[]\&\s-2\u[20]\d\s+2 در ابتدا توسط Kid3 برای پشتیبانی از فایل‌های M4A به کار می‌رفت\&. در صورت بروز مشکل در پشتیبانی TagLib از M4A، می‌توان از آن استفاده کرد\&. .RE .sp بخش Available Plugins بقیه افزونه‌ها را فهرست می‌کند\&. ترتیب آن‌ها اهمیتی ندارد، اما می‌توان آن‌ها را با استفاده از جعبه‌های علامت‌زدن (check boxes) فعال یا غیرفعال کرد\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} AmazonImport: برای عملکرد Import from Amazon\&.\&.\&. به کار می‌رود\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} DiscogsImport: برای عملکرد Import from Discogs\&.\&.\&. به کار می‌رود\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} FreedbImport: برای عملکرد Import from gnudb\&.org\&.\&.\&. به کار می‌رود\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} MusicBrainzImport: برای عملکرد Import from MusicBrainz Release\&.\&.\&. به کار می‌رود\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} AcoustidImport: برای عملکرد Import from MusicBrainz Fingerprint\&.\&.\&. به کار می‌رود که به کتابخانه‌های \m[blue]\fBChromaprint\fR\m[]\&\s-2\u[21]\d\s+2 و \m[blue]\fBlibav\fR\m[]\&\s-2\u[22]\d\s+2 وابسته است\&. .RE .sp افزونه‌هایی که غیرفعال باشند بارگذاری نخواهند شد\&. از این قابلیت می‌توان برای بهینه‌سازی مصرف منابع و زمان راه‌اندازی استفاده کرد\&. تنظیمات این صفحه تنها پس از راه‌اندازی دوباره Kid3 اعمال می‌شوند\&. .RE.SS "منوی راهنما (The Help Menu)" .PP .PP راهنما → دفترچه راهنمای Kid3 .RS 4 این دفترچه راهنما را باز می‌کند\&. .RE .PP راهنما → درباره Kid3 .RS 4 اطلاعات کوتاهی را درباره Kid3 نمایش می‌دهد\&. .RE.SH "KID3\-CLI" .SS "دستورها (Commands)" .PP \fBkid3\-cli\fR یک واسط خط فرمان برای Kid3 ارائه می‌دهد\&. اگر مسیر یک پوشه استفاده شود، آن پوشه باز می‌شود\&. اگر یک یا چند مسیر فایل مشخص شود، پوشه مشترک آن‌ها باز شده و فایل‌ها انتخاب می‌شوند\&. دستورهای بعدی روی این فایل‌ها عمل خواهند کرد\&. دستورها با استفاده از گزینه‌های \fB\-c\fR مشخص می‌شوند\&. اگر چند دستور ارسال شود، آن‌ها به ترتیب داده‌شده اجرا خواهند شد\&. اگر فایل‌ها توسط دستورها تغییر یابند، در پایان ذخیره می‌شوند\&. اگر هیچ گزینه دستوری ارسال نشود، \fBkid3\-cli\fR در حالت تعاملی آغاز به کار می‌کند\&. دستورها را می‌توان وارد کرد و بر روی انتخاب فعلی اعمال خواهند شد\&. بخش‌های زیر تمامی دستورهای موجود را فهرست می‌کنند\&. .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBراهنما (Help)\fR .RS 4 .HP \w'\fBhelp\fR\ 'u \fBhelp\fR [\fICOMMAND\-NAME\fR] .PP نمایش راهنما درباره پارامترهای \fICOMMAND\-NAME\fR یا درباره تمام دستورها در صورتی که نام دستوری داده نشده باشد\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBمهلت زمانی (Timeout)\fR .RS 4 .HP \w'\fBtimeout\fR\ 'u \fBtimeout\fR [ | default | off | \fITIME\fR ] .PP بازنویسی مهلت زمانی (timeout) پیش‌فرض دستور\&. دستورهای CLI پس از انقضای مهلت زمانی مشخص‌شده برای هر دستور متوقف می‌شوند\&. این مهلت زمانی ۱۰ ثانیه برای \fBls\fR و \fBalbumart\fR، ۶۰ ثانیه برای \fBautoimport\fR و \fBfilter\fR، و ۳ ثانیه برای سایر دستورها است\&. اگر تعداد بسیار زیادی فایل باید پردازش شوند، ممکن است این مهلت‌های زمانی بیش از حد محدودکننده باشند؛ بنابراین مهلت زمانی برای تمام دستورها را می‌توان به \fITIME\fR میلی‌ثانیه تنظیم کرد، آن را به‌کلی غیرفعال نمود یا در مقادیر پیش‌فرض باقی گذاشت\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBخروج از برنامه (Quit application)\fR .RS 4 .HP \w'\fBexit\fR\ 'u \fBexit\fR [force] .PP خروج از برنامه\&. اگر فایل‌های تغییریافته و ذخیره‌نشده وجود داشته باشند، پارامتر \fIforce\fR مورد نیاز است\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتغییر پوشه (Change folder)\fR .RS 4 .HP \w'\fBcd\fR\ 'u \fBcd\fR [\fIFOLDER\fR] .PP اگر هیچ \fIFOLDER\fR مشخص نشود، به پوشه خانگی (home) تغییر مسیر می‌دهد\&. اگر یک پوشه داده شود، وارد آن پوشه می‌شود\&. اگر یک یا چند مسیر فایل داده شود، به پوشه مشترک آن‌ها تغییر مسیر داده و فایل‌ها را انتخاب می‌کند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBچاپ نام فایل پوشه فعلی (Print current folder filename)\fR .RS 4 .HP \w'\fBpwd\fR\ 'u \fBpwd\fR .PP چاپ نام فایل پوشه کاری فعلی\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBفهرست پوشه (Folder list)\fR .RS 4 .HP \w'\fBls\fR\ 'u \fBls\fR .PP فهرست کردن محتویات پوشه جاری\&. این مورد با فهرست فایل‌ها در واسط گرافیکی کاربر (GUI) Kid3 مطابقت دارد\&. پنج نویسه قبل از نام فایل‌ها وضعیت فایل را نشان می‌دهند\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} > فایل انتخاب شده است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} * فایل تغییر یافته است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} 1 فایل دارای برچسب ۱ (tag 1) است، در غیر این صورت \*(Aq\-\*(Aq نمایش داده می‌شود\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} 2 فایل دارای برچسب ۲ است، در غیر این صورت \*(Aq\-\*(Aq نمایش داده می‌شود\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} 3 فایل دارای برچسب ۳ است، در غیر این صورت \*(Aq\-\*(Aq نمایش داده می‌شود\&. .RE .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBls\fR 1\-\- 01 Intro\&.mp3 > 12\- 02 We Only Got This One\&.mp3 *1\-\- 03 Outro\&.mp3 .fi .if n \{\ .RE .\} .sp.PP در این مثال، همه فایل‌ها دارای برچسب ۱ هستند، فایل دوم دارای برچسب ۲ نیز هست و انتخاب شده است\&. فایل سوم تغییر یافته است\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBذخیره فایل‌های تغییریافته\fR .RS 4 .HP \w'\fBsave\fR\ 'u \fBsave\fR .PP .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBانتخاب فایل\fR .RS 4 .HP \w'\fBselect\fR\ 'u \fBselect\fR [ | all | none | first | previous | next | \fIFILE\fR... ] .PP برای انتخاب همه فایل‌ها، \fBselect all\fR و برای لغو انتخاب همه فایل‌ها، \fBselect none\fR را وارد کنید\&. برای پیمایش فایل‌ها در پوشه جاری، با \fBselect first\fR شروع کنید، سپس با استفاده از \fBselect next\fR به جلو بروید یا با استفاده از \fBselect previous\fR به عقب برگردید\&. فایل‌های مشخص را می‌توان با دادن نام‌هایشان به انتخاب جاری اضافه کرد\&. استفاده از نویسه‌های عمومی (wildcard) امکان‌پذیر است، بنابراین \fBselect *\&.mp3\fR تمام فایل‌های MP3 موجود در پوشه جاری را انتخاب خواهد کرد\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBselect first\fR kid3\-cli> \fBls\fR > 1\-\- 01 Intro\&.mp3 12\- 02 We Only Got This One\&.mp3 *1\-\- 03 Outro\&.mp3 kid3\-cli> \fBselect next\fR kid3\-cli> \fBls\fR 1\-\- 01 Intro\&.mp3 > 12\- 02 We Only Got This One\&.mp3 *1\-\- 03 Outro\&.mp3 kid3\-cli> \fBselect *\&.mp3\fR kid3\-cli> \fBls\fR > 1\-\- 01 Intro\&.mp3 > 12\- 02 We Only Got This One\&.mp3 >*1\-\- 03 Outro\&.mp3 .fi .if n \{\ .RE .\} .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBانتخاب برچسب\fR .RS 4 .HP \w'\fBtag\fR\ 'u \fBtag\fR [\fITAG\-NUMBERS\fR] .PP بسیاری از دستورها یک پارامتر اختیاری \fITAG\-NUMBERS\fR دارند که مشخص می‌کند دستور روی برچسب ۱، ۲ یا ۳ عمل کند\&. اگر این پارامتر حذف شود، شماره‌های برچسب پیش‌فرض به کار می‌روند که با این دستور قابل تنظیم هستند\&. در زمان راه‌اندازی، روی 12 تنظیم شده است که یعنی اطلاعات در صورت موجود بودن از برچسب ۲ خوانده می‌شود، در غیر این صورت از برچسب ۱؛ تغییرات روی برچسب ۲ اعمال می‌شوند\&. پارامتر \fB\fITAG\-NUMBERS\fR\fR می‌تواند روی \fB1\fR، \fB2\fR، یا \fB3\fR تنظیم شود تا فقط روی برچسب متناظر عمل کند\&. اگر پارامتر ذکر نشود، تنظیمات فعلی نمایش داده می‌شود\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت فریم برچسب\fR .RS 4 .HP \w'\fBget\fR\ 'u \fBget\fR [ | all | \fIFRAME\-NAME\fR ] [\fITAG\-NUMBERS\fR] .PP این دستور می‌تواند برای خواندن مقدار یک فریم برچسب مشخص یا دریافت اطلاعات درباره همه فریم‌های برچسب (در صورتی که آرگومان حذف شده یا از \fBall\fR استفاده شود) به کار رود\&. فریم‌های تغییریافته با \*(Aq*\*(Aq علامت‌گذاری می‌شوند\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBget\fR File: MPEG 1 Layer 3 192 kbps 44100 Hz Joint Stereo Name: 01 Intro\&.mp3 Tag 1: ID3v1\&.1 Title Intro Artist One Hit Wonder Album Let\*(Aqs Tag Date 2013 Track Number 1 Genre Pop kid3\-cli> \fBget title\fR Intro .fi .if n \{\ .RE .\} .PP برای ذخیره محتویات یک فریم تصویر در یک فایل، از دستور زیر استفاده کنید: .sp .if n \{\ .RS 4 .\} .nf \fBget picture:\*(Aq/path/to/folder\&.jpg\*(Aq\fR .fi .if n \{\ .RE .\} .sp .PP برای ذخیره متن همگام‌سازی‌شده ترانه در یک فایل LRC، از دستور زیر استفاده کنید: .sp .if n \{\ .RS 4 .\} .nf \fBget SYLT:\*(Aq/path/to/lyrics\&.lrc\*(Aq\fR .fi .if n \{\ .RE .\} .sp .PP امکان دریافت تنها یک فیلد خاص از یک فریم وجود دارد؛ برای نمونه \fBget POPM\&.Email\fR برای فیلد Email از یک فریم Popularimeter\&. اگر یک فایل چندین فریم از همان نوع داشته باشد، فریم‌های مختلف را می‌توان با کروشه نمایه کرد؛ برای نمونه نخستین مجری از یک کامنت Vorbis را می‌توان با استفاده از \fBget performer[0]\fR، و دومی را با استفاده از \fBget performer[1]\fR به دست آورد\&. .PP از نام شبه‌فیلد "selected" می‌توان برای بررسی انتخاب بودن یک فریم استفاده کرد؛ برای نمونه \fBget artist\&.selected\fR در صورت انتخاب بودن فریم artist، مقدار 1 و در غیر این صورت 0 را برمی‌گرداند\&. .PP از نام شبه‌فریم "ratingstars" می‌توان برای دریافت مقدار فریم "rating" به صورت مقدار خاص هر قالب متناظر با تعداد ستاره‌ها (0 تا 5) استفاده کرد\&. هنگام استفاده از "rating"، مقدار داخلی بازگردانده می‌شود\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم فریم برچسب\fR .RS 4 .HP \w'\fBset\fR\ 'u \fBset\fR {\fIFRAME\-NAME\fR} {\fIFRAME\-VALUE\fR} [\fITAG\-NUMBERS\fR].PP این دستور مقدار یک فریم برچسب مشخص را تنظیم می‌کند\&. اگر \fIFRAME\-VALUE\fR خالی باشد، فریم حذف می‌شود\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBset remixer \*(AqO\&.H\&. Wonder\*(Aq\fR .fi .if n \{\ .RE .\} .PP برای تنظیم محتوای یک فریم تصویر از یک فایل، از دستور زیر استفاده کنید: .sp .if n \{\ .RS 4 .\} .nf \fBset picture:\*(Aq/path/to/folder\&.jpg\*(Aq \*(AqPicture Description\*(Aq\fR .fi .if n \{\ .RE .\} .sp .PP برای تنظیم متن ترانهٔ همگام‌سازی‌شده از یک فایل LRC، از دستور زیر استفاده کنید: .sp .if n \{\ .RS 4 .\} .nf \fBset SYLT:\*(Aq/path/to/lyrics\&.lrc\*(Aq \*(AqLyrics Description\*(Aq\fR .fi .if n \{\ .RE .\} .sp .PP برای تنظیم یک فیلد خاص از یک فریم، می‌توان نام فیلد را پس از یک نقطه مشخص کرد؛ برای نمونه، جهت تنظیم فیلد Counter از یک فریم Popularimeter: .sp .if n \{\ .RS 4 .\} .nf \fBset POPM\&.Counter 5\fR .fi .if n \{\ .RE .\} .sp .PP یکی از کاربردهای مشخص کردن نام فیلدها زمانی است که به‌جای یک فریم استاندارد Popularimeter، یک فریم سفارشی TXXX با شرح \(lqrating\(rq می‌خواهید (به نظر می‌رسد این روش توسط برخی افزونه‌ها استفاده می‌شود)\&. شما می‌توانید چنین فریم رتبه‌بندی TXXX را با \fBkid3\-cli\fR ایجاد کنید؛ با این حال، ابتدا باید یک فریم TXXX با شرح \(lqrating\(rq ایجاد کرده و سپس مقدار این فریم را روی مقدار رتبه‌بندی تنظیم نمایید\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBset rating ""\fR kid3\-cli> \fBset TXXX\&.Description rating\fR kid3\-cli> \fBset rating 5\fR .fi .if n \{\ .RE .\} .sp دستور نخست هر فریم موجود POPM را حذف خواهد کرد، چرا که در صورت وجود چنین فریمی، \fBset rating 5\fR فریم POPM را تنظیم می‌کرد و نه فریم TXXX را\&. امکان دیگر استفاده از \fBset TXXX\&.Text 5\fR است، اما این روش تنها در صورتی کار می‌کند که هیچ فریم TXXX دیگری وجود نداشته باشد\&. .PP برای تنظیم چندین فریم از همان نوع، می‌توان یک نمایه را درون کروشه تعیین کرد؛ برای نمونه، جهت تعیین چندین مجری در یک کامنت Vorbis: .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBset performer[0] \*(AqLiza don Getti (soprano)\*(Aq\fR kid3\-cli> \fBset performer[1] \*(AqJoe Barr (piano)\*(Aq\fR .fi .if n \{\ .RE .\} .sp .PP جهت انتخاب فریم‌هایی مشخص پیش از عملیات رونوشت، جای‌گذاری یا حذف، می‌توان از نام شبه‌فیلد \(lqselected\(rq استفاده کرد\&. در حالت عادی، تمام فریم‌ها انتخاب شده‌اند؛ برای لغو انتخاب همه، از \fBset \*(Aq*\&.selected\*(Aq 0\fR و سپس برای نمونه از \fBset artist\&.selected 1\fR جهت انتخاب فریم artist استفاده کنید\&. .PP از نام شبه‌فریم \(lqratingstars\(rq می‌توان برای تنظیم مقدار فریم \(lqrating\(rq روی مقدار ویژهٔ هر قالب متناظر با تعداد ستاره‌ها (۰ تا ۵) استفاده کرد\&. از نام فریم \(lqrating\(rq می‌توان برای تنظیم مقدار داخلی استفاده نمود\&. .PP تنظیم \(lqratingstars\(rq روی چندین فایل با قالب‌های برچسب مختلف کار نخواهد کرد، زیرا فریمی با مقدار نگاشت‌شده از تعداد ستاره‌ها برای نخستین فایل ایجاد شده و سپس برای تمام فایل‌ها استفاده می‌شود\&. بنابراین به‌جای \fBkid3\-cli \-c "set ratingstars 2" *\fR بهتر است از \fBfor f in *; do kid3\-cli \-c "set ratingstars 2" "$f"; done\fR استفاده کنید\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBواگردانی\fR .RS 4 .HP \w'\fBrevert\fR\ 'u \fBrevert\fR .PP تمام تغییرات در فایل‌های انتخاب‌شده (یا تمام فایل‌ها اگر هیچ فایلی انتخاب نشده باشد) را واگردانی می‌کند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدرون‌ریزی از فایل\fR .RS 4 .HP \w'\fBimport\fR\ 'u \fBimport\fR {\fIFILE\fR} {\fIFORMAT\-NAME\fR} [\fITAG\-NUMBERS\fR] .PP برچسب‌ها از فایل \fIFILE\fR در قالبی با نام \fIFORMAT\-NAME\fR (برای نمونه \fB"CSV unquoted"\fR، بخش Import را ببینید) درون‌ریزی می‌شوند\&. .PP اگر \fBtags\fR برای \fIFILE\fR داده شود، برچسب‌ها از سایر برچسب‌ها درون‌ریزی می‌شوند\&. به‌جای \fIFORMAT\-NAME\fR پارامترهای \fISOURCE\fR و \fIEXTRACTION\fR مورد نیاز هستند (بخش Import from Tags را ببینید)\&. برای اعمال درون‌ریزی از برچسب‌ها روی فایل‌های انتخاب‌شده، به‌جای \fBtags\fR از \fBtagsel\fR استفاده کنید\&. این تابع همچنین با استفاده از یک \fIEXTRACTION\fR با مقدار \fB%{__return}(\&.+)\fR از بازگرداندن مقدار استخراج‌شده پشتیبانی می‌کند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدرون‌ریزی خودکار\fR .RS 4 .HP \w'\fBautoimport\fR\ 'u \fBautoimport\fR [\fIPROFILE\-NAME\fR] [\fITAG\-NUMBERS\fR] .PP درون‌ریزی دسته‌ای با استفاده از نمایهٔ \fIPROFILE\-NAME\fR (بخش Automatic Import را ببینید؛ در صورت ذکر نشدن، از \fB"All"\fR استفاده می‌شود)\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبارگیری تصویر جلد آلبوم\fR .RS 4 .HP \w'\fBalbumart\fR\ 'u \fBalbumart\fR {\fIURL\fR} [all].PP تنظیم تصویر جلد آلبوم با بارگیری تصویر از \fIURL\fR\&. قوانین تعریف‌شده در گفت‌وگوی Browse Cover Art برای تبدیل نشانی‌های اینترنتی عمومی (مانند Amazon) به نشانی تصویر (URL) به‌کار می‌روند\&. برای تنظیم جلد آلبوم از یک فایل تصویری محلی، از دستور set استفاده کنید\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBalbumart http://www\&.amazon\&.com/Versus\-World\-Amon\-Amarth/dp/B000078DOC\fR .fi .if n \{\ .RE .\} .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبرون‌بری به فایل\fR .RS 4 .HP \w'\fBexport\fR\ 'u \fBexport\fR {\fIFILE\fR} {\fIFORMAT\-NAME\fR} [\fITAG\-NUMBERS\fR] .PP برچسب‌ها به فایل \fIFILE\fR در قالبی با نام \fIFORMAT\-NAME\fR (مانند \fB"CSV unquoted"\fR، بخش Export را ببینید) برون‌بری می‌شوند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBایجاد فهرست پخش\fR .RS 4 .HP \w'\fBplaylist\fR\ 'u \fBplaylist\fR .PP ایجاد فهرست پخش با قالبی که در پیکربندی تنظیم شده است، بخش Create Playlist را ببینید\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاعمال قالب نام فایل\fR .RS 4 .HP \w'\fBfilenameformat\fR\ 'u \fBfilenameformat\fR .PP اعمال قالب نام فایل تنظیم‌شده در پیکربندی، بخش Apply Filename Format را ببینید\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاعمال قالب برچسب\fR .RS 4 .HP \w'\fBtagformat\fR\ 'u \fBtagformat\fR .PP اعمال قالب برچسب تنظیم‌شده در پیکربندی، بخش Apply Tag Format را ببینید\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاعمال کدگذاری متن\fR .RS 4 .HP \w'\fBtextencoding\fR\ 'u \fBtextencoding\fR .PP اعمال کدگذاری متن تنظیم‌شده در پیکربندی، بخش Apply Text Encoding را ببینید\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتغییر نام پوشه\fR .RS 4 .HP \w'\fBrenamedir\fR\ 'u \fBrenamedir\fR [\fIFORMAT\fR] [ | create | rename | dryrun ] [\fITAG\-NUMBERS\fR] .PP تغییر نام یا ایجاد پوشه‌ها از روی مقادیر موجود در برچسب‌ها مطابق با یک \fIFORMAT\fR مشخص‌شده (مثلاً \fB%{artist} \- %{album}\fR، بخش Rename Folder را ببینید)؛ اگر هیچ قالبی مشخص نشود، قالب تعریف‌شده در گفت‌وگوی Rename folder استفاده می‌شود\&. حالت پیش‌فرض \fBrename\fR است؛ برای ایجاد پوشه‌ها، باید \fBcreate\fR به‌طور صریح مشخص شود\&. اقدامات تغییر نام بلافاصله انجام خواهند شد؛ برای اینکه تنها مشاهده کنید چه تغییراتی انجام خواهد گرفت، از گزینهٔ \fBdryrun\fR استفاده کنید\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBشماره‌گذاری قطعه‌ها\fR .RS 4 .HP \w'\fBnumbertracks\fR\ 'u \fBnumbertracks\fR [\fITRACK\-NUMBER\fR] [\fITAG\-NUMBERS\fR] .PP شماره‌گذاری قطعه‌های انتخاب‌شده با شروع از \fITRACK\-NUMBER\fR (در صورت ذکر نشدن، 1)\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBفیلتر\fR .RS 4 .HP \w'\fBfilter\fR\ 'u \fBfilter\fR [ | \fIFILTER\-NAME\fR | \fIFILTER\-FORMAT\fR ] .PP فایل‌ها را طوری فیلتر می‌کند که فقط فایل‌های منطبق با \fIFILTER\-FORMAT\fR قابل مشاهده باشند\&. می‌توان به‌جای عبارت فیلتر، از نام یک عبارت فیلتر از پیش‌تعریف‌شده (مانند \fB"Filename Tag Mismatch"\fR) استفاده کرد؛ بخش Filter را ببینید\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fBfilter \*(Aq%{title} contains "tro"\*(Aq\fR Started /home/urs/One Hit Wonder \- Let\*(Aqs Tag + 01 Intro\&.mp3 \- 02 We Only Got This One\&.mp3 + 03 Outro\&.mp3 Finished kid3\-cli> \fBls\fR 1\-\- 01 Intro\&.mp3 1\-\- 03 Outro\&.mp3 kid3\-cli> \fBfilter All\fR Started /home/urs/One Hit Wonder \- Let\*(Aqs Tag + 01 Intro\&.mp3 + 02 We Only Got This One\&.mp3 + 03 Outro\&.mp3 Finished kid3\-cli> \fBls\fR 1\-\- 01 Intro\&.mp3 12\- 02 We Only Got This One\&.mp3 1\-\- 03 Outro\&.mp3 .fi .if n \{\ .RE .\} .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتبدیل ID3v2.3 به ID3v2.4\fR .RS 4 .HP \w'\fBto24\fR\ 'u \fBto24\fR .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتبدیل ID3v2.4 به ID3v2.3\fR .RS 4 .HP \w'\fBto23\fR\ 'u \fBto23\fR .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBنام فایل از برچسب\fR .RS 4 .HP \w'\fBfromtag\fR\ 'u \fBfromtag\fR [\fIFORMAT\fR] [\fITAG\-NUMBERS\fR].PP نام فایل‌های انتخاب‌شده را بر اساس مقادیر موجود در برچسب‌ها تنظیم می‌کند؛ برای مثال \fBfromtag \*(Aq%{track} \- %{title}\*(Aq 1\fR\&. اگر هیچ قالبی مشخص نشود، از قالبی که در GUI تنظیم شده است استفاده می‌شود\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبرچسب از نام فایل\fR .RS 4 .HP \w'\fBtotag\fR\ 'u \fBtotag\fR [\fIFORMAT\fR] [\fITAG\-NUMBERS\fR] .PP فریم‌های برچسب را از روی نام فایل‌ها مقداردهی می‌کند؛ برای مثال \fBtotag \*(Aq%{albumartist} \- %{album}/%{track} %{title}\*(Aq 2\fR\&. اگر هیچ قالبی مشخص نشود، از قالب تعیین‌شده در GUI استفاده می‌شود\&. اگر قالب نام فایل با این الگو مطابقت نداشته باشد، چند قالب رایج دیگر نیز امتحان می‌شوند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبرچسب به برچسب دیگر\fR .RS 4 .HP \w'\fBsyncto\fR\ 'u \fBsyncto\fR {\fITAG\-NUMBER\fR} .PP فریم‌های برچسب را از یک برچسب به برچسب دیگر کپی می‌کند؛ برای مثال جهت تنظیم برچسب ID3v2 از روی برچسب ID3v1، از \fBsyncto 2\fR استفاده کنید\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBکپی\fR .RS 4 .HP \w'\fBcopy\fR\ 'u \fBcopy\fR [\fITAG\-NUMBER\fR] .PP فریم‌های برچسب فایل انتخاب‌شده را در بافر کپی داخلی ذخیره می‌کند\&. سپس می‌توان با استفاده از دستور \fBpaste\fR آن‌ها را روی فایل دیگری اعمال کرد\&. .PP برای کپی کردن تنها زیرمجموعه‌ای از فریم‌ها، از شبه‌فیلد «selected» به همراه دستور \fBset\fR استفاده کنید\&. برای مثال، برای کپی کردن تنها فریم‌های شماره دیسک و کپی‌رایت، بنویسید: .sp .if n \{\ .RS 4 .\} .nf \fBset \*(Aq*\&.selected\*(Aq 0\fR \fBset discnumber\&.selected 1\fR \fBset copyright\&.selected 1\fR \fBcopy\fR .fi .if n \{\ .RE .\} .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBجای‌گذاری\fR .RS 4 .HP \w'\fBpaste\fR\ 'u \fBpaste\fR [\fITAG\-NUMBER\fR] .PP فریم‌های برچسب فایل‌های انتخاب‌شده را از روی محتویات بافر \fBcopy\fR تنظیم می‌کند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBحذف\fR .RS 4 .HP \w'\fBremove\fR\ 'u \fBremove\fR [\fITAG\-NUMBER\fR] .PP حذف یک برچسب\&. .PP امکان حذف تنها زیرمجموعه‌ای از فریم‌ها با انتخاب آن‌ها به شکلی که در دستور \fBcopy\fR شرح داده شده، وجود دارد\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBپیکربندی Kid3\fR .RS 4 .HP \w'\fBconfig\fR\ 'u \fBconfig\fR [\fIOPTION\fR] [\fIVALUE\fR] .PP پرس‌وجو یا تنظیم یک گزینهٔ پیکربندی\&. .PP آرگومان \fIOPTION\fR شامل یک نام گروه و یک نام مشخصه است که با یک نقطه از هم جدا می‌شوند\&. در صورتی که هیچ \fIOPTION\fRی داده نشود، تمام گروه‌های موجود نمایش داده می‌شوند\&. اگر تنها نام یک گروه مشخص شود، تمام مشخصه‌های موجود آن گروه نمایش داده می‌شوند\&. برای یک گروه و مشخصهٔ معین، مقدار پیکربندی‌شدهٔ فعلی نمایش می‌یابد\&. برای تغییر تنظیمات، مقدار جدید می‌تواند به عنوان آرگومان دوم فرستاده شود\&. .PP اگر مقدار یک تنظیم از نوع فهرست باشد، تمام عناصر فهرست باید به عنوان آرگومان داده شوند\&. این بدان معنی است که برای افزودن یک عنصر به فهرست موجودی از عناصر، تمام عناصر موجود باید فرستاده شوند و سپس عنصر جدید به دنبال آن‌ها بیاید\&. در چنین حالتی، استفاده از حالت JSON ساده‌تر است، که در آن می‌توان فهرست فعلی را کپی کرده و عنصر جدید را به آن پیوست کرد\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاجرای برنامه یا اسکریپت QML\fR .RS 4 .HP \w'\fBexecute\fR\ 'u \fBexecute\fR [@qml] {\fIFILE\fR} [\fIARGS\fR] .PP اجرای یک اسکریپت QML یا یک فایل اجرایی\&. .PP بدون \fB@qml\fR برنامه به همراه آرگومان‌هایش اجرا می‌شود\&. هنگامی که \fB@qml\fR به عنوان نخستین آرگومان داده شود، آرگومان‌های بعدی اسکریپت QML و آرگومان‌های آن خواهند بود\&. برای نمونه، برچسب‌های یک پوشه را می‌توان با دستور زیر به فایل export\&.csv صادر کرد\&. .sp .if n \{\ .RS 4 .\} .nf \fBkid3\-cli \-c "execute @qml /usr/share/kid3/qml/script/ExportCsv\&.qml export\&.csv" /path/to/folder/\fR .fi .if n \{\ .RE .\} .PP در اینجا \fBexport\&.csv\fR آرگومانی برای اسکریپت ExportCsv\&.qml است، در حالی که \fB/path/to/folder/\fR آرگومان \fB\fIFILE\fR\fR برای \fBkid3\-cli\fR می‌باشد\&. .RE.SS "مثال‌ها (EXAMPLES)" .PP تنظیم عنوانی که شامل یک آپاستروف (علامت نقل‌قول تکی) است\&. دستورهایی که با \fI\-c\fR به \fBkid3\-cli\fR ارسال می‌شوند، اگر فقط از یک کلمه تشکیل نشده باشند، باید درون نقل‌قول قرار گیرند\&. اگر چنین دستوری خودش آرگومانی حاوی فاصله داشته باشد، آن آرگومان نیز باید نقل‌قول شود\&. در پوسته‌های UNIX\(rg می‌توان از نقل‌قول تکی یا دوتایی استفاده کرد، اما در خط فرمان ویندوز (Command Prompt)، مهم است که نقل‌قول بیرونی با استفاده از نقل‌قول دوتایی صورت گیرد و درون این نقل‌قول‌ها، از نقل‌قول تکی استفاده شود\&. اگر متنِ درون نقل‌قول تکی حاوی یک نقل‌قول تکی باشد، باید با استفاده از نویسهٔ بک‌اسلش گریز داده شود (escape شود)، همان‌طور که در مثال زیر نشان داده شده است: .sp .if n \{\ .RS 4 .\} .nf \fBkid3\-cli \-c "set title \*(AqI\e\*(Aqll be there for you\*(Aq" /path/to/folder\fR .fi .if n \{\ .RE .\} .sp .PP تنظیم جلد آلبوم در تمام فایل‌های یک پوشه با استفاده از تابع واردسازی دسته‌ای (batch import): .sp .if n \{\ .RS 4 .\} .nf \fBkid3\-cli \-c "autoimport \*(AqCover Art\*(Aq" /path/to/folder\fR .fi .if n \{\ .RE .\} .sp .PP حذف فریم‌های دیدگاه (comment) و اعمال قالب برچسب (tag format) در هر دو برچسبِ تمام فایل‌های MP3 یک پوشه: .sp .if n \{\ .RS 4 .\} .nf \fBkid3\-cli \-c "set comment \*(Aq\*(Aq 1" \-c "set comment \*(Aq\*(Aq 2" \e \-c "tagformat 1" \-c "tagformat 2" /path/to/folder/*\&.mp3\fR .fi .if n \{\ .RE .\} .sp .PP واردسازی خودکار برچسب ۲، همگام‌سازی با برچسب ۱، تنظیم نام فایل‌ها از روی برچسب ۲ و در پایان ساخت یک فهرست پخش: .sp .if n \{\ .RS 4 .\} .nf \fBkid3\-cli \-c autoimport \-c "syncto 1" \-c fromtag \-c playlist \e /path/to/folder/*\&.mp3\fR .fi .if n \{\ .RE .\} .sp .PP برای تمام فایل‌های دارای برچسب ID3v2\&.4\&.0، تبدیل به ID3v2\&.3\&.0 و حذف فریم arranger: .sp .if n \{\ .RS 4 .\} .nf \fBkid3\-cli \-c "filter \*(AqID3v2\&.4\&.0 Tag\*(Aq" \-c "select all" \-c to23 \e \-c "set arranger \*(Aq\*(Aq" /path/to/folder\fR .fi .if n \{\ .RE .\} .sp .PP این اسکریپت پایتون از \fBkid3\-cli\fR برای تولید فریم‌های iTunNORM برنامهٔ iTunes Sound Check از روی اطلاعات replay gain استفاده می‌کند\&. .sp .if n \{\ .RS 4 .\} .nf #!/usr/bin/env python3 # Generate iTunes Sound Check from ReplayGain\&. import os, sys, subprocess def rg2sc(dirpath): for root, dirs, files in os\&.walk(dirpath): for name in files: if name\&.endswith((\*(Aq\&.mp3\*(Aq, \*(Aq\&.m4a\*(Aq, \*(Aq\&.aiff\*(Aq, \*(Aq\&.aif\*(Aq)): fn = os\&.path\&.join(root, name) rg = subprocess\&.check_output([ \*(Aqkid3\-cli\*(Aq, \*(Aq\-c\*(Aq, \*(Aqget "replaygain_track_gain"\*(Aq, fn])\&.strip() if rg\&.endswith(b\*(Aq dB\*(Aq): rg = rg[:\-3] try: rg = float(rg) except ValueError: print(\*(AqValue %s of %s in not a float\*(Aq % (rg, fn)) continue sc = (\*(Aq \*(Aq + (\*(Aq%08X\*(Aq % int((10 ** (\-rg / 10)) * 1000) )) * 10 subprocess\&.call([ \*(Aqkid3\-cli\*(Aq, \*(Aq\-c\*(Aq, \*(Aqset iTunNORM "%s"\*(Aq % sc, fn]) if __name__ == \*(Aq__main__\*(Aq: rg2sc(sys\&.argv[1]) .fi .if n \{\ .RE .\} .sp .SS "قالب JSON (JSON FORMAT)" .PP به منظور ساده‌تر کردن تجزیهٔ نتایج حاصل از \fBkid3\-cli\fR، امکان دریافت خروجی در قالب JSON وجود دارد\&. هنگامی که درخواست در قالب JSON باشد، پاسخ نیز به صورت JSON خواهد بود\&. یک قالب فشرده از درخواست، نمایش فشرده‌ای از پاسخ را نیز ارائه می‌دهد\&. اگر درخواست شامل فیلد «id» باشد، یک درخواست JSON\-RPC در نظر گرفته می‌شود و پاسخ نیز حاوی فیلد «jsonrpc» و همان «id» درخواست خواهد بود\&. قالب درخواست از همان دستورهای استاندارد CLI استفاده می‌کند؛ فیلد «method» شامل دستور است و پارامترها (در صورت وجود) در فهرست «params» ارائه می‌شوند\&. پاسخ شامل یک شیء «result» است که در صورت عدم بازگرداندن نتیجه توسط دستور متناظر در \fBkid3\-cli\fR می‌تواند null نیز باشد\&. در صورت بروز خطا، یک شیء «error» با فیلدهای «code» و «message» همان‌گونه که در JSON\-RPC مرسوم است، بازگردانده می‌شود\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli> \fB{"method":"set","params":["artist","An Artist"]}\fR {"result":null} kid3\-cli> \fB{"method":"get","params":["artist",2]}\fR {"result":"An Artist"} kid3\-cli> \fB{"method": "get", "params": ["artist"]}\fR { "result": "An Artist" } kid3\-cli> \fB{"jsonrpc":"2\&.0","id":"123","method":"get","params":["artist"]}\fR {"id":"123","jsonrpc":"2\&.0","result":"An Artist"} .fi .if n \{\ .RE .\} .sp.SH "اعتبارها و مجوز (CREDITS AND LICENSE)" .PP Kid3 .PP برنامه توسط Urs Fleisch نوشته شده است .PP \m[blue]\fBFDL\fR\m[]\&\s-2\u[23]\d\s+2 .PP \m[blue]\fBGPL\fR\m[]\&\s-2\u[24]\d\s+2 .SH "نصب (INSTALLATION)" .SS "نحوه دریافت Kid3" .PP Kid3 را می‌توان در \m[blue]\fBhttps://kid3\&.kde\&.org\fR\m[] یافت\&. .SS "پیش‌نیازها" .PP Kid3 به \m[blue]\fBQt(TM)\fR\m[]\&\s-2\u[25]\d\s+2 نیاز دارد\&. استفاده از \m[blue]\fBKDE\fR\m[]\&\s-2\u[26]\d\s+2 توصیه می‌شود اما ضروری نیست، چرا که Kid3 می‌تواند به عنوان یک برنامهٔ Qt(TM) نیز کامپایل شود\&. Kid3 می‌تواند برای سیستم‌هایی که این کتابخانه‌ها برای آن‌ها در دسترس است کامپایل شود، به عنوان مثال برای GNU/Linux\(rg، Windows\(rg و macOS\(rg\&. برای برچسب‌گذاری فایل‌های Ogg/Vorbis به \m[blue]\fBlibogg\fR\m[]\&\s-2\u[16]\d\s+2 و \m[blue]\fBlibvorbis and libvorbisfile\fR\m[]\&\s-2\u[17]\d\s+2 نیاز است، برای فایل‌های FLAC به \m[blue]\fBlibFLAC++ and libFLAC\fR\m[]\&\s-2\u[18]\d\s+2 نیاز خواهد بود\&. از \m[blue]\fBid3lib\fR\m[]\&\s-2\u[15]\d\s+2 برای فایل‌های MP3 استفاده می‌شود\&. این چهار قالب توسط \m[blue]\fBTagLib\fR\m[]\&\s-2\u[19]\d\s+2 نیز پشتیبانی می‌شوند، که همچنین می‌تواند فایل‌های Opus، MPC، APE، MP2، Speex، TrueAudio، WavPack، WMA، WAV، AIFF و ماژول‌های tracker را مدیریت کند\&. برای وارد کردن از طریق اثر انگشت صوتی، از \m[blue]\fBChromaprint\fR\m[]\&\s-2\u[21]\d\s+2 و \m[blue]\fBlibav\fR\m[]\&\s-2\u[22]\d\s+2 استفاده می‌شود\&. .PP Kid3 برای اکثر توزیع‌های Linux\(rg، Windows\(rg و macOS\(rg در دسترس است\&. پیوندها را می‌توان در \m[blue]\fBhttps://kid3\&.kde\&.org\fR\m[] یافت\&. .SS "کامپایل و نصب" .PP شما می‌توانید Kid3 را با یا بدون KDE کامپایل کنید\&. بدون KDE، برنامهٔ Kid3 یک برنامهٔ سادهٔ Qt(TM) است و برخی از قابلیت‌های پیکربندی و نشست را نخواهد داشت\&. .PP برای نسخهٔ KDE، به دایرکتوری سطح بالا رفته و وارد کنید: .sp .if n \{\ .RS 4 .\} .nf % \fBcmake \&.\fR % \fBmake\fR % \fBmake install\fR .fi .if n \{\ .RE .\} .sp .PP برای کامپایل جهت نسخه‌های مختلف Qt(TM) یا KDE، گزینه‌های متناظر \fBcmake\fR را تنظیم کنید\&. .PP اگر همهٔ کتابخانه‌ها موجود نباشند، Kid3 با قابلیت‌های کمتری ساخته می‌شود\&. بنابراین باید دقت کنید که تمام بسته‌های توسعهٔ مورد نظر نصب شده باشند\&. از سوی دیگر، گزینه‌های \fBcmake\fR کنترل می‌کنند که کدام کتابخانه‌ها کامپایل شوند\&. مقدار پیش‌فرض عبارت است از \fB\-DWITH_TAGLIB:BOOL=ON \-DWITH_MP4V2:BOOL=OFF \-DWITH_ID3LIB:BOOL=ON \-DWITH_CHROMAPRINT:BOOL=ON \-DWITH_VORBIS:BOOL=ON \-DWITH_FLAC:BOOL=ON \fR\&. این گزینه‌ها را می‌توان با استفاده از \fBOFF\fR غیرفعال کرد\&. .PP برای ساخت Kid3 به عنوان یک برنامهٔ Qt(TM) بدون KDE، از گزینهٔ \fBcmake\fR به صورت \fB\-DWITH_APPS=Qt\fR استفاده کنید\&. برای ساخت هر دو برنامهٔ KDE و Qt(TM)، مقدار \fB\-DWITH_APPS="Qt;KDE"\fR را قرار دهید\&. .PP برای استفاده از یک نسخهٔ نصب‌شدهٔ مشخص از Qt(TM)، گزینهٔ \fB\-DQT_QMAKE_EXECUTABLE=/path/to/qmake\fR را تعیین کنید\&. .PP تولید بسته‌های RPM توسط فایل kid3\&.spec پشتیبانی می‌شود؛ برای بسته‌های Debian\(rg، دستور \fBbuild\&.sh deb\fR را اجرا کنید\&. .PP برنامهٔ Qt(TM) را می‌توان برای Windows\(rg و macOS\(rg نیز کامپایل کرد\&. اسکریپت build\&.sh می‌تواند برای بارگیری و ساخت تمام کتابخانه‌های مورد نیاز و ایجاد یک بستهٔ Kid3 به کار رود\&. .SS "پیکربندی (Configuration)" .PP در KDE، تنظیمات در \&.config/kid3rc و وضعیت برنامه در \&.local/share/kid3/kid3staterc ذخیره می‌شوند\&. به عنوان یک برنامهٔ Qt(TM)، این فایل در \&.config/Kid3/Kid3\&.conf قرار دارد\&. در Windows\(rg، پیکربندی در رجیستری و در macOS\(rg در یک فایل plist ذخیره می‌شود\&. .PP متغیر محیطی \fIKID3_CONFIG_FILE\fR می‌تواند برای تعیین مسیر فایل پیکربندی استفاده شود\&..SH "رابط D\-BUS (D\-BUS INTERFACE)" .SS "مثال‌های D\-Bus (D\-Bus Examples)" .PP در Linux\(rg، می‌توان از یک رابط D\-Bus برای کنترل Kid3 از طریق اسکریپت‌ها استفاده کرد\&. اسکریپت‌ها را می‌توان به هر زبانی که دارای اتصالات D\-Bus است (مانند Python) نوشت و برای گسترش قابلیت‌های Kid3 به User Actions افزود\&. .PP نام هنرمند در برچسب ۲ از فایل جاری را می‌توان با کد زیر روی مقدار "One Hit Wonder" تنظیم کرد: .PP Shell .RS 4 .sp .if n \{\ .RS 4 .\} .nf dbus\-send \-\-dest=org\&.kde\&.kid3 \-\-print\-reply=literal \e /Kid3 org\&.kde\&.Kid3\&.setFrame int32:2 string:\*(AqArtist\*(Aq \e string:\*(AqOne Hit Wonder\*(Aq .fi .if n \{\ .RE .\} .sp یا ساده‌تر با \fBqdbus\fR مربوط به Qt(TM) (از \fBqdbusviewer\fR می‌توان برای بررسی و کاوش رابط در یک رابط گرافیکی کاربر (GUI) استفاده کرد): .sp .if n \{\ .RS 4 .\} .nf qdbus org\&.kde\&.kid3 /Kid3 setFrame 2 Artist \e \*(AqOne Hit Wonder\*(Aq .fi .if n \{\ .RE .\} .sp .RE .PP Python .RS 4 .sp .if n \{\ .RS 4 .\} .nf import dbus kid3 = dbus\&.SessionBus()\&.get_object( \*(Aqorg\&.kde\&.kid3\*(Aq, \*(Aq/Kid3\*(Aq) kid3\&.setFrame(2, \*(AqArtist\*(Aq, \*(AqOne Hit Wonder\*(Aq) .fi .if n \{\ .RE .\} .sp .RE .PP Perl .RS 4 .sp .if n \{\ .RS 4 .\} .nf use Net::DBus; $kid3 = Net::DBus\->session\->get_service( "org\&.kde\&.kid3")\->get_object( "/Kid3", "org\&.kde\&.Kid3"); $kid3\->setFrame(2, "Artist", "One Hit Wonder"); .fi .if n \{\ .RE .\} .sp .RE.SS "رابط برنامه‌نویسی D\-Bus (D\-Bus API)" .PP رابط D\-Bus در org\&.kde\&.Kid3\&.xml مشخص شده است\&. رابط Kid3 دارای متدهای زیر است: .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBباز کردن فایل یا پوشه\fR .RS 4 .HP \w'boolean\ openDirectory('u .BI "boolean openDirectory(string\ " "path" ");" .PP \fIpath\fR .RS 4 مسیر فایل یا پوشه .RE .PP در صورت موفقیت true بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتخلیه برچسب‌های تمام فایل‌هایی که تغییر نکرده یا انتخاب نشده‌اند\fR .RS 4 .HP \w'unloadAllTags('u .BI "unloadAllTags(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBذخیره تمام فایل‌های تغییریافته\fR .RS 4 .HP \w'boolean\ save('u .BI "boolean save(void);" .PP در صورت موفقیت true بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت پیام خطای با جزئیات ارائه‌شده توسط برخی متدها\fR .RS 4 .HP \w'string\ getErrorMessage('u .BI "string getErrorMessage(void);" .PP پیام خطای با جزئیات را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبازگردانی تغییرات در فایل‌های انتخاب‌شده\fR .RS 4 .HP \w'revert('u .BI "revert(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBشروع یک واردسازی دسته‌ای خودکار\fR .RS 4 .HP \w'boolean\ batchImport('u .BI "boolean batchImport(int32\ " "tagMask" ", string\ " "profileName" ");" .PP \fItagMask\fR .RS 4 ماسک برچسب (بیت ۰ برای برچسب ۱، بیت ۱ برای برچسب ۲) .RE .PP \fIprofileName\fR .RS 4 نام نمایهٔ واردسازی دسته‌ای برای استفاده .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBوارد کردن برچسب‌ها از یک فایل\fR .RS 4 .HP \w'boolean\ importFromFile('u .BI "boolean importFromFile(int32\ " "tagMask" ", string\ " "path" ", int32\ " "fmtIdx" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .PP \fIpath\fR .RS 4 مسیر فایل .RE .PP \fIfmtIdx\fR .RS 4 شاخص قالب .RE .RE.PP در صورت موفقیت true بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBوارد کردن برچسب‌ها از برچسب‌های دیگر\fR .RS 4 .HP \w'importFromTags('u .BI "importFromTags(int32\ " "tagMask" ", string\ " "source" ", string\ " "extraction" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .PP \fIsource\fR .RS 4 قالب برای دریافت متن مبدأ از برچسب‌ها .RE .PP \fIextraction\fR .RS 4 عبارت باقاعده به همراه نام فریم‌ها و رباینده‌ها (captures) جهت استخراج از متن مبدأ .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBوارد کردن برچسب‌ها از برچسب‌های دیگر روی فایل‌های انتخاب‌شده\fR .RS 4 .HP \w'array\ importFromTagsToSelection('u .BI "array importFromTagsToSelection(int32\ " "tagMask" ", string\ " "source" ", string\ " "extraction" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .PP \fIsource\fR .RS 4 قالب برای دریافت متن مبدأ از برچسب‌ها .RE .PP \fIextraction\fR .RS 4 عبارت باقاعده به همراه نام فریم‌ها و رباینده‌ها (captures) جهت استخراج از متن مبدأ .RE .PP \fIreturnValues\fR .RS 4 مقدار استخراج‌شده برای "%{__return}(\&.+)" .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبارگیری طرح جلد آلبوم\fR .RS 4 .HP \w'downloadAlbumArt('u .BI "downloadAlbumArt(string\ " "url" ", boolean\ " "allFilesInDir" ");" .PP \fIurl\fR .RS 4 نشانی اینترنتی (URL) فایل تصویر یا منبع طرح جلد آلبوم .RE .PP \fIallFilesInDir\fR .RS 4 مقدار true برای افزودن تصویر به تمام فایل‌های موجود در پوشه .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBبرون‌بری برچسب‌ها به یک فایل\fR .RS 4 .HP \w'boolean\ exportToFile('u .BI "boolean exportToFile(int32\ " "tagMask" ", string\ " "path" ", int32\ " "fmtIdx" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .PP \fIpath\fR .RS 4 مسیر فایل .RE .PP \fIfmtIdx\fR .RS 4 شاخص قالب .RE.PP در صورت موفقیت مقدار true را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBایجاد یک فهرست پخش\fR .RS 4 .HP \w'boolean\ createPlaylist('u .BI "boolean createPlaylist(void);" .PP در صورت موفقیت مقدار true را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت آیتم‌های یک فهرست پخش\fR .RS 4 .HP \w'array\ getPlaylistItems('u .BI "array getPlaylistItems(string\ " "path" ");" .PP \fIpath\fR .RS 4 مسیر فایل فهرست پخش .RE.PP فهرستی از مسیرهای مطلق به آیتم‌های فهرست پخش را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم آیتم‌های یک فهرست پخش\fR .RS 4 .HP \w'boolean\ setPlaylistItems('u .BI "boolean setPlaylistItems(string\ " "path" ", array\ " "items" ");" .PP \fIpath\fR .RS 4 مسیر فایل فهرست پخش .RE .PP \fIitems\fR .RS 4 فهرستی از مسیرهای مطلق به آیتم‌های فهرست پخش .RE .PP در صورت موفقیت مقدار true، و اگر همه آیتم‌ها پیدا و اضافه نشوند یا ذخیره‌سازی با شکست مواجه شود مقدار false را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBخروج از برنامه\fR .RS 4 .HP \w'quit('u .BI "quit(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBانتخاب همه فایل‌ها\fR .RS 4 .HP \w'selectAll('u .BI "selectAll(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBلغو انتخاب همه فایل‌ها\fR .RS 4 .HP \w'deselectAll('u .BI "deselectAll(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم اولین فایل به عنوان فایل جاری\fR .RS 4 .HP \w'boolean\ firstFile('u .BI "boolean firstFile(void);" .PP در صورت وجود اولین فایل، مقدار true را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم فایل قبلی به عنوان فایل جاری\fR .RS 4 .HP \w'boolean\ previousFile('u .BI "boolean previousFile(void);" .PP در صورت وجود فایل قبلی، مقدار true را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم فایل بعدی به عنوان فایل جاری\fR .RS 4 .HP \w'boolean\ nextFile('u .BI "boolean nextFile(void);" .PP در صورت وجود فایل بعدی، مقدار true را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBانتخاب اولین فایل\fR .RS 4 .HP \w'boolean\ selectFirstFile('u .BI "boolean selectFirstFile(void);" .PP در صورت وجود اولین فایل، مقدار true را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBانتخاب فایل قبلی\fR .RS 4 .HP \w'boolean\ selectPreviousFile('u .BI "boolean selectPreviousFile(void);".PP اگر فایل قبلی وجود داشته باشد، true را برمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBانتخاب فایل بعدی\fR .RS 4 .HP \w'boolean\ selectNextFile('u .BI "boolean selectNextFile(void);" .PP اگر فایل بعدی وجود داشته باشد، true را برمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBانتخاب فایل جاری\fR .RS 4 .HP \w'boolean\ selectCurrentFile('u .BI "boolean selectCurrentFile(void);" .PP اگر فایل جاری وجود داشته باشد، true را برمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBباز کردن یا جمع کردن مورد فایل جاری در صورت پوشه بودن آن\fR .RS 4 .HP \w'boolean\ expandDirectory('u .BI "boolean expandDirectory(void);".PP یک مورد از فهرست فایل‌ها زمانی پوشه است که getFileName() نامی با \*(Aq/\*(Aq به عنوان آخرین نویسه برگرداند\&. .PP اگر مورد فایل جاری یک پوشه باشد، true را برمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاعمال قالب نام فایل\fR .RS 4 .HP \w'applyFilenameFormat('u .BI "applyFilenameFormat(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاعمال قالب برچسب\fR .RS 4 .HP \w'applyTagFormat('u .BI "applyTagFormat(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاعمال کدگذاری متن\fR .RS 4 .HP \w'applyTextEncoding('u .BI "applyTextEncoding(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم نام پوشه از روی برچسب‌ها\fR .RS 4 .HP \w'boolean\ setDirNameFromTag('u .BI "boolean setDirNameFromTag(int32\ " "tagMask" ", string\ " "format" ", boolean\ " "create" ");" .PP \fItagMask\fR .RS 4 ماسک برچسب (بیت 0 برای برچسب 1، بیت 1 برای برچسب 2) .RE .PP \fIformat\fR .RS 4 قالب نام پوشه .RE .PP \fIcreate\fR .RS 4 مقدار true برای ایجاد، false برای تغییر نام .RE .PP در صورت موفقیت true را برمی‌گرداند، در غیر این صورت پیام خطا با استفاده از getErrorMessage() در دسترس است\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم شماره قطعه‌های متوالی در فایل‌های انتخاب‌شده\fR .RS 4 .HP \w'numberTracks('u .BI "numberTracks(int32\ " "tagMask" ", int32\ " "firstTrackNr" ");" .PP \fItagMask\fR .RS 4 ماسک برچسب (بیت 0 برای برچسب 1، بیت 1 برای برچسب 2) .RE .PP \fIfirstTrackNr\fR .RS 4 شماره مورد استفاده برای نخستین فایل .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBفیلتر کردن فایل‌ها\fR .RS 4 .HP \w'filter('u .BI "filter(string\ " "expression" ");" .PP \fIexpression\fR .RS 4 عبارت فیلتر .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتبدیل برچسب‌های ID3v2.3 به ID3v2.4\fR .RS 4 .HP \w'convertToId3v24('u .BI "convertToId3v24(void);" .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتبدیل برچسب‌های ID3v2.4 به ID3v2.3\fR .RS 4 .HP \w'convertToId3v23('u .BI "convertToId3v23(void);".PP در صورت موفقیت، true بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت مسیر پوشه\fR .RS 4 .HP \w'string\ getDirectoryName('u .BI "string getDirectoryName(void);" .PP مسیر مطلق پوشه را برمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت نام فایل جاری\fR .RS 4 .HP \w'string\ getFileName('u .BI "string getFileName(void);".PP نام مطلق و حقیقی فایل را برمی‌گرداند؛ در صورتی که یک پوشه باشد با «/» پایان می‌یابد\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم نام فایل انتخاب‌شده\fR .RS 4 .HP \w'setFileName('u .BI "setFileName(string\ " "name" ");" .PP \fIname\fR .RS 4 نام فایل .RE .PP هنگام ذخیره شدن پوشه، نام فایل تغییر خواهد کرد\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم قالب مورد استفاده هنگام تعیین نام فایل از روی برچسب‌ها\fR .RS 4 .HP \w'setFileNameFormat('u .BI "setFileNameFormat(string\ " "format" ");" .PP \fIformat\fR .RS 4 قالب نام فایل .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم نام فایل‌های انتخاب‌شده از روی برچسب‌ها\fR .RS 4 .HP \w'setFileNameFromTag('u .BI "setFileNameFromTag(int32\ " "tagMask" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت مقدار فریم\fR .RS 4 .HP \w'string\ getFrame('u .BI "string getFrame(int32\ " "tagMask" ", string\ " "name" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .PP \fIname\fR .RS 4 نام فریم (مانند "artist") .RE .PP برای دریافت داده‌های دودویی مانند تصویر، می‌توان نام فایلی را برای نوشتن بعد از \fIname\fR اضافه کرد، مانند "Picture:/path/to/file"\&. به همین ترتیب می‌توان متن‌های همگام ترانه را صادر کرد، مانند "SYLT:/path/to/file"\&. .PP مقدار فریم را برمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم مقدار فریم\fR .RS 4 .HP \w'boolean\ setFrame('u .BI "boolean setFrame(int32\ " "tagMask" ", string\ " "name" ", string\ " "value" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .PP \fIname\fR .RS 4 نام فریم (مانند "artist") .RE .PP \fIvalue\fR .RS 4 مقدار فریم .RE .PP برای برچسب ۲ (\fItagMask\fR برابر ۲)، اگر فریمی با \fIname\fR وجود نداشته باشد، یک فریم جدید افزوده می‌شود؛ اگر \fIvalue\fR خالی باشد، فریم حذف می‌شود\&. برای افزودن داده‌های دودویی مانند تصویر، می‌توان یک فایل را بعد از \fIname\fR اضافه کرد، مانند "Picture:/path/to/file"\&. همچنین می‌توان از "SYLT:/path/to/file" برای وارد کردن متن همگام ترانه استفاده کرد\&. .PP در صورت موفقیت، مقدار true را بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت تمام فریم‌های یک برچسب\fR .RS 4 .HP \w'array\ of\ string\ getTag('u .BI "array of string getTag(int32\ " "tagMask" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (۱ برای برچسب ۱، ۲ برای برچسب ۲) .RE .PP فهرستی با نام‌ها و مقادیر فریم‌ها به صورت یک‌درمیان بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBدریافت اطلاعات فنی درباره فایل\fR .RS 4 .HP \w'array\ of\ string\ getInformation('u .BI "array of string getInformation(void);".PP ویژگی‌ها عبارتند از Format، Bitrate، Samplerate، Channels، Duration، Channel Mode، VBR، Tag 1، Tag 2\&. ویژگی‌هایی که در دسترس نیستند حذف می‌شوند\&. .PP فهرستی با نام‌ها و مقادیر ویژگی‌ها به صورت یک‌درمیان بازمی‌گرداند\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم برچسب از روی نام فایل\fR .RS 4 .HP \w'setTagFromFileName('u .BI "setTagFromFileName(int32\ " "tagMask" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (1 برای برچسب 1، 2 برای برچسب 2) .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتنظیم برچسب از روی برچسب دیگر\fR .RS 4 .HP \w'setTagFromOtherTag('u .BI "setTagFromOtherTag(int32\ " "tagMask" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (1 برای برچسب 1، 2 برای برچسب 2) .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBکپی برچسب\fR .RS 4 .HP \w'copyTag('u .BI "copyTag(int32\ " "tagMask" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (1 برای برچسب 1، 2 برای برچسب 2) .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBجای‌گذاری برچسب\fR .RS 4 .HP \w'pasteTag('u .BI "pasteTag(int32\ " "tagMask" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (1 برای برچسب 1، 2 برای برچسب 2) .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBحذف برچسب\fR .RS 4 .HP \w'removeTag('u .BI "removeTag(int32\ " "tagMask" ");" .PP \fItagMask\fR .RS 4 بیت برچسب (1 برای برچسب 1، 2 برای برچسب 2) .RE .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتجزیه مجدد پیکربندی\fR .RS 4 .HP \w'reparseConfiguration('u .BI "reparseConfiguration(void);" .PP تغییرات خودکار در پیکربندی با ویرایش فایل پیکربندی و سپس تجزیه مجدد پیکربندی امکان‌پذیر است\&. .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBپخش فایل‌های انتخاب‌شده\fR .RS 4 .HP \w'playAudio('u .BI "playAudio(void);" .RE.SH "رابط QML (QML INTERFACE)".SS "مثال‌های QML (QML Examples)" .PP اسکریپت‌های QML می‌توانند از طریق منوی زمینه (context menu) فهرست فایل‌ها فراخوانی شوند و در برگهٔ User Actions از پنجرهٔ تنظیمات مشخص گردند\&. اسکریپت‌هایی که در آنجا تنظیم شده‌اند را می‌توان به عنوان مثال‌هایی برای برنامه‌نویسی اسکریپت‌های سفارشی به کار برد\&. QML از JavaScript استفاده می‌کند؛ در اینجا نمونهٔ مرسوم «Hello World» آورده شده است: .sp .if n \{\ .RS 4 .\} .nf import Kid3 1\&.0 Kid3Script { onRun: { console\&.log("Hello world, folder is", app\&.dirName) Qt\&.quit() } } .fi .if n \{\ .RE .\} .sp .PP اگر این اسکریپت به صورت /path/to/Example\&.qml ذخیره شود، دستور کاربر می‌تواند به شکل \fB@qml /path/to/Example\&.qml\fR با نام \fBQML Test\fR و فعال بودن Output تعریف شود\&. سپس می‌توان آن را با استفاده از مورد QML Test در منوی زمینهٔ فهرست فایل‌ها اجرا کرد، و خروجی در پنجره قابل مشاهده خواهد بود\&. .PP متأسفانه، اجرای اسکریپت‌های QML با استفاده از \fBqml\fR (برای نمونه \fBqml \-apptype widget \-I /usr/lib/kid3/plugins/imports /path/to/Example\&.qml\fR) در نسخه‌های اخیر Qt دچار مشکل است\&. اما \fBkid3\-cli\fR روشی جایگزین برای اجرای اسکریپت QML از طریق خط فرمان با استفاده از دستور \fBexecute\fR خود ارائه می‌دهد\&. .sp .if n \{\ .RS 4 .\} .nf kid3\-cli \-c "execute @qml /path/to/Example\&.qml" .fi .if n \{\ .RE .\} .sp .PP برای فهرست کردن عنوان‌ها در برچسب ۲ (tag 2) تمامی فایل‌های پوشهٔ جاری، می‌توان از اسکریپت زیر استفاده کرد: .sp .if n \{\ .RS 4 .\} .nf import Kid3 1\&.0 Kid3Script { onRun: { app\&.firstFile() do { if (app\&.selectionInfo\&.tag(Frame\&.Tag_2)\&.tagFormat) { console\&.log(app\&.getFrame(tagv2, "title")) } } while (app\&.nextFile()) } } .fi .if n \{\ .RE .\} .sp .PP اگر پوشه حاوی فایل‌های زیادی باشد، چنین اسکریپتی ممکن است رابط کاربری را برای مدتی مسدود کند\&. بنابراین برای عملیات طولانی‌تر، باید هرازگاهی وقفه‌ای داشته باشد\&. در پیاده‌سازی جایگزین زیر، پردازش مربوط به یک فایل به یک تابع منتقل شده است\&. این تابع در صورتی که فایل‌های بیشتری برای پردازش وجود داشته باشند، در پایان خود را با یک وقفهٔ زمانی ۱ میلی‌ثانیه‌ای فراخوانی می‌کند\&. این امر تضمین می‌کند که رابط گرافیکی کاربر (GUI) در حین اجرای اسکریپت پاسخگو باقی بماند\&. .sp .if n \{\ .RS 4 .\} .nf import Kid3 1\&.0 Kid3Script { onRun: { function doWork() { if (app\&.selectionInfo\&.tag(Frame\&.Tag_2)\&.tagFormat) { console\&.log(app\&.getFrame(tagv2, "title")) } if (!app\&.nextFile()) { Qt\&.quit() } else { setTimeout(doWork, 1) } } app\&.firstFile() doWork() } } .fi .if n \{\ .RE .\} .sp .PP هنگام استفاده از \fBapp\&.firstFile()\fR همراه با \fBapp\&.nextFile()\fR، تمامی فایل‌های پوشهٔ جاری پردازش خواهند شد\&. اگر قرار است تنها فایل‌های انتخاب‌شده تحت تأثیر قرار گیرند، در عوض از \fBfirstFile()\fR و \fBnextFile()\fR استفاده کنید؛ این‌ها توابع کمکی مؤلفهٔ Kid3Script هستند\&. مثال زیر اسکریپتی است که تنها فریم‌های شمارهٔ دیسک و حق نشر (copyright) فایل انتخاب‌شده را کپی می‌کند\&. .sp .if n \{\ .RS 4 .\} .nf import Kid3 1\&.1 Kid3Script { onRun: { function doWork() { if (app\&.selectionInfo\&.tag(Frame\&.Tag_2)\&.tagFormat) { app\&.setFrame(tagv2, "*\&.selected", false) app\&.setFrame(tagv2, "discnumber\&.selected", true) app\&.setFrame(tagv2, "copyright\&.selected", true) app\&.copyTags(tagv2) } if (!nextFile()) { Qt\&.quit() } else { setTimeout(doWork, 1) } } firstFile() doWork() } } .fi .if n \{\ .RE .\} .sp .PP اسکریپت‌های نمونهٔ بیشتری همراه با Kid3 ارائه می‌شوند و از پیش به عنوان دستورهای کاربر ثبت شده‌اند\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} ReplayGain to SoundCheck (ReplayGain2SoundCheck\&.qml): ایجاد اطلاعات SoundCheck مربوط به iTunNORM از فریم‌های replay gain\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Resize Album Art (ResizeAlbumArt\&.qml): تغییر اندازهٔ تصویرهای جلد جاسازی‌شده که بزرگ‌تر از 500x500 پیکسل هستند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Extract Album Art (ExtractAlbumArt\&.qml): استخراج تمام تصاویر جلد تعبیه‌شده با جلوگیری از موارد تکراری\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1.IP \(bu 2.3 .\} تعبیه کاور آلبوم (EmbedAlbumArt\&.qml): تعبیه تصاویر جلد یافت‌شده در فایل‌های تصویری درون فایل‌های صوتی موجود در همان پوشه\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} تعبیه متن ترانه (EmbedLyrics\&.qml): دریافت متن‌های ترانه غیرهمگام از وب‌سرویس\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} نمایش کدگذاری متن ID3v1 (ShowTextEncodingV1\&.qml): با نمایش برچسب‌های فایل فعلی در تمام کدگذاری‌های نویسه موجود، به یافتن کدگذاری برچسب‌های ID3v1 کمک می‌کند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} ID3v1 به ASCII (Tag1ToAscii\&.qml): نویسه‌گردانی نویسه‌های لاتین گسترش‌یافته در برچسب ID3v1 به ASCII\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} بزرگ‌نویسی عنوان انگلیسی (TitleCase\&.qml): قالب‌بندی متن برچسب‌ها با حروف بزرگ عنوان انگلیسی (Title Case)\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} بازنویسی برچسب‌ها (RewriteTags\&.qml): بازنویسی تمام برچسب‌ها در فایل‌های انتخاب‌شده\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} برون‌ریزی CSV (ExportCsv\&.qml): برون‌ریزی بازگشتی تمام برچسب‌های همه فایل‌ها به یک فایل CSV\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} درون‌ریزی CSV (ImportCsv\&.qml): درون‌ریزی بازگشتی تمام برچسب‌های همه فایل‌ها از یک فایل CSV\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} برون‌ریزی JSON (ExportJson\&.qml): برون‌ریزی بازگشتی تمام برچسب‌های همه فایل‌ها به یک فایل JSON\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} درون‌ریزی JSON (ImportJson\&.qml): درون‌ریزی بازگشتی تمام برچسب‌های همه فایل‌ها از یک فایل JSON\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} برون‌ریزی پوشه فهرست پخش (ExportPlaylist\&.qml): کپی کردن تمام فایل‌ها از یک فهرست پخش به یک پوشه و تغییر نام آن‌ها بر اساس موقعیتشان\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} کنسول QML (QmlConsole\&.qml): کنسولی ساده برای کار و آزمایش با رابط برنامه‌نویسی QML نرم‌افزار Kid3\&. .RE .sp .SS "رابط برنامه‌نویسی QML (QML API)" .PP این API را می‌توان به‌راحتی با استفاده از QML Console بررسی کرد، که به عنوان یک اسکریپت نمونه دارای رابط کاربری در دسترس است\&. .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBKid3Script\fR .RS 4 .PP Kid3Script یک مولفه معمولی QML است که درون پوشه افزونه‌ها قرار دارد\&. می‌توانید به همین سادگی از یک مولفه دیگر QML نیز استفاده کنید\&. استفاده از Kid3Script شروع تابع اسکریپت با استفاده از گرداننده سیگنال \fBonRun\fR را آسان می‌کند\&. علاوه بر این، توابعی را نیز ارائه می‌دهد: .sp .if n \{\ .RS 4 .\} .nf onRun: گرداننده سیگنالی که هنگام شروع اسکریپت فراخوانی می‌شود tagv1, tagv2, tagv2v1: مقادیر ثابت برای پارامترهای برچسب script: دسترسی به توابع اسکریپت‌نویسی configs: دسترسی به اشیاء پیکربندی getArguments(): فهرست آرگومان‌های اسکریپت isStandalone(): مقدار true اگر اسکریپت از درون Kid3 اجرا نشده باشد setTimeout(callback, delay): اجرای callback پس از delay میلی‌ثانیه firstFile(): رفتن به نخستین فایل انتخاب‌شده nextFile(): رفتن به فایل انتخاب‌شده بعدی .fi .if n \{\ .RE .\} .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBتوابع اسکریپت‌نویسی (Scripting Functions)\fR .RS 4 .PP از آنجا که JavaScript و بنابراین QML نیز تنها مجموعه محدودی از امکانات را برای اسکریپت‌نویسی دارند، شیء \fBscript\fR دارای متدهای اضافی است، برای نمونه: .sp .if n \{\ .RS 4 .\} .nf script\&.properties(obj): رشته‌ای شامل ویژگی‌های Qt script\&.writeFile(filePath, data): نوشتن داده در فایل، در صورت موفقیت true script\&.readFile(filePath): خواندن داده از فایل script\&.removeFile(filePath): حذف فایل، در صورت موفقیت true script\&.fileExists(filePath): در صورت وجود فایل true script\&.fileIsWritable(filePath): اگر فایل قابل نوشتن باشد true script\&.getFilePermissions(filePath): دریافت بیت‌های حالت مجوز فایل script\&.setFilePermissions(filePath, modeBits): تنظیم بیت‌های حالت مجوز فایل script\&.classifyFile(filePath): دریافت رده فایل (پوشه "/"، پیوند نمادین "@"، اجرایی "*"، فایل " ") script\&.renameFile(oldName, newName): تغییر نام فایل، در صورت موفقیت true script\&.copyFile(source, dest): رونوشت از فایل، در صورت موفقیت true script\&.makeDir(path): ساخت پوشه، در صورت موفقیت true script\&.removeDir(path): حذف پوشه، در صورت موفقیت true script\&.tempPath(): مسیر پوشه موقت script\&.musicPath(): مسیر پوشه موسیقی script\&.listDir(path, [nameFilters], [classify]): فهرست کردن ورودی‌های پوشه script\&.system(program, [args], [msecs]): اجرای همگام یک دستور سیستمی، [exit code, standard output, standard error] در صورت عدم اتمام مهلت زمانی script\&.systemAsync(program, [args], [callback]): اجرای ناهمگام یک دستور سیستمی، callback با [exit code, standard output, standard error] فراخوانی خواهد شد script\&.getEnv(varName): دریافت مقدار متغیر محیطی script\&.setEnv(varName, value): تنظیم مقدار متغیر محیطی script\&.getQtVersion(): رشته نسخه Qt، مانند "5\&.4\&.1" script\&.getDataMd5(data): دریافت رشته هگز هش MD5 داده script\&.getDataSize(data): دریافت اندازه آرایه بایت script\&.dataToImage(data, [format]): ساخت تصویر از بایت‌های داده script\&.dataFromImage(img, [format]): دریافت بایت‌های داده از تصویر script\&.loadImage(filePath): بارگیری یک تصویر از فایل script\&.saveImage(img, filePath, [format]): ذخیره تصویر در فایل، در صورت موفقیت true script\&.imageProperties(img): دریافت مشخصات تصویر، نگاشتی شامل "width" و "height" و "depth" و "colorCount"، در صورت نامعتبر بودن تصویر خالی است script\&.scaleImage(img, width, [height]): مقیاس‌بندی تصویر، تصویر مقیاس‌شده را برمی‌گرداند .fi .if n \{\ .RE .\} .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBزمینه برنامه (Application Context)\fR .RS 4.PP با استفاده از QML، بخش بزرگی از توابع Kid3 قابل دسترسی هستند\&. این API شبیه به رابط استفاده‌شده برای D\-Bus است\&. برای جزئیات، به یادداشت‌های مربوطه مراجعه کنید\&. .sp .if n \{\ .RS 4 .\} .nf app\&.openDirectory(path): باز کردن پوشه app\&.unloadAllTags(): تخلیه همه برچسب‌ها app\&.saveDirectory(): ذخیره پوشه app\&.revertFileModifications(): بازگردانی تغییرات app\&.importTags(tag, path, fmtIdx): درون‌ریزی فایل app\&.importFromTags(tag, source, extraction): درون‌ریزی از برچسب‌ها app\&.importFromTagsToSelection(tag, source, extraction): درون‌ریزی از برچسب‌های فایل‌های انتخاب‌شده app\&.downloadImage(url, allFilesInDir): بارگیری تصویر app\&.exportTags(tag, path, fmtIdx): برون‌ریزی فایل app\&.writePlaylist(): نوشتن فهرست پخش app\&.getPlaylistItems(path): دریافت موارد فهرست پخش app\&.setPlaylistItems(path, items): تنظیم موارد فهرست پخش app\&.selectAllFiles(): انتخاب همه app\&.deselectAllFiles(): لغو انتخاب app\&.firstFile([select], [onlyTaggedFiles]): رفتن به اولین فایل app\&.nextFile([select], [onlyTaggedFiles]): رفتن به فایل بعدی app\&.previousFile([select], [onlyTaggedFiles]): رفتن به فایل قبلی app\&.selectCurrentFile([select]): انتخاب فایل جاری app\&.selectFile(path, [select]): انتخاب یک فایل مشخص app\&.getSelectedFilePaths([onlyTaggedFiles]): دریافت مسیرهای فایل‌های انتخاب‌شده app\&.requestExpandFileList(): گسترش همه app\&.applyFilenameFormat(): اعمال قالب نام فایل app\&.applyTagFormat(): اعمال قالب برچسب app\&.applyTextEncoding(): اعمال کدگذاری متن app\&.numberTracks(nr, total, tag, [options]): شماره‌گذاری قطعه‌ها app\&.applyFilter(expr): فیلتر app\&.convertToId3v23(): تبدیل ID3v2\&.4\&.0 به ID3v2\&.3\&.0 app\&.convertToId3v24(): تبدیل ID3v2\&.3\&.0 به ID3v2\&.4\&.0 app\&.getFilenameFromTags(tag): نام فایل از برچسب‌ها app\&.getTagsFromFilename(tag): برچسب‌ها از نام فایل app\&.getAllFrames(tag): دریافت شیء شامل همه فریم‌ها app\&.getFrame(tag, name): دریافت فریم app\&.setFrame(tag, name, value): تنظیم فریم app\&.getPictureData(): دریافت داده از فریم تصویر app\&.setPictureData(data): تنظیم داده در فریم تصویر app\&.copyToOtherTag(tag): برچسب‌ها به برچسب‌های دیگر app\&.copyTags(tag): رونوشت app\&.pasteTags(tag): چسباندن app\&.removeTags(tag): حذف app\&.playAudio(): پخش app\&.readConfig(): خواندن پیکربندی app\&.applyChangedConfiguration(): اعمال پیکربندی app\&.dirName: نام پوشه app\&.selectionInfo\&.fileName: نام فایل app\&.selectionInfo\&.filePath: مسیر مطلق فایل app\&.selectionInfo\&.detailInfo: جزئیات قالب app\&.selectionInfo\&.tag(Frame\&.Tag_1)\&.tagFormat: قالب برچسب ۱ app\&.selectionInfo\&.tag(Frame\&.Tag_2)\&.tagFormat: قالب برچسب ۲ app\&.selectionInfo\&.formatString(tag, format): جایگزینی کدها در رشته قالب app\&.selectFileName(caption, dir, filter, saveFile): باز کردن کادر گفتگوی فایل برای انتخاب یک فایل app\&.selectDirName(caption, dir): باز کردن کادر گفتگوی فایل برای انتخاب یک پوشه .fi .if n \{\ .RE .\} .sp .PP برای عملیات‌های ناهمگام، می‌توان callbackها را به سیگنال‌ها متصل کرد\&. .sp .if n \{\ .RS 4 .\} .nf function automaticImport(profile) { function onAutomaticImportFinished() { app\&.batchImporter\&.finished\&.disconnect(onAutomaticImportFinished) } app\&.batchImporter\&.finished\&.connect(onAutomaticImportFinished) app\&.batchImport(profile, tagv2) } function renameDirectory(format) { function onRenameActionsScheduled() { app\&.renameActionsScheduled\&.disconnect(onRenameActionsScheduled) app\&.performRenameActions() } app\&.renameActionsScheduled\&.connect(onRenameActionsScheduled) app\&.renameDirectory(tagv2v1, format, false) } .fi .if n \{\ .RE .\} .sp .RE .sp .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBاشیاء پیکربندی (Configuration Objects)\fR .RS 4.PP بخش‌های مختلف پیکربندی از طریق متدهای \fBconfigs\fR\& در دسترس هستند\&. ویژگی‌های آن‌ها را می‌توان در کنسول QML فهرست کرد\&. .sp .if n \{\ .RS 4 .\} .nf script\&.properties(configs\&.networkConfig()) .fi .if n \{\ .RE .\} .sp ویژگی‌ها را می‌توان تنظیم کرد: .sp .if n \{\ .RS 4 .\} .nf configs\&.networkConfig()\&.useProxy = false .fi .if n \{\ .RE .\} .sp .sp .if n \{\ .RS 4 .\} .nf configs\&.batchImportConfig() configs\&.exportConfig() configs\&.fileConfig() configs\&.filenameFormatConfig() configs\&.filterConfig() configs\&.findReplaceConfig() configs\&.guiConfig() configs\&.importConfig() configs\&.mainWindowConfig() configs\&.networkConfig() configs\&.numberTracksConfig() configs\&.playlistConfig() configs\&.renDirConfig() configs\&.tagConfig() configs\&.tagFormatConfig() configs\&.userActionsConfig() .fi .if n \{\ .RE .\} .sp .RE.SH "نویسندگان (AUTHORS)" .PP \fBUrs Fleisch\fR <\&ufleisch at users.sourceforge.net\&> .br .RS 4 توسعه نرم‌افزار .RE .SH "کپی‌رایت و تکثیر (COPYRIGHT)" .br کپی‌رایت \(co 2026 Urs Fleisch .br .PP \m[blue]\fBFDL\fR\m[] .sp .SH "نکات (NOTES)" .IP " 1." 4 gnudb.org .RS 4 \%http://gnudb.org .RE .IP " 2." 4 MusicBrainz .RS 4 \%http://musicbrainz.org .RE .IP " 3." 4 Discogs .RS 4 \%http://discogs.com .RE .IP " 4." 4 Amazon .RS 4 \%http://www.amazon.com .RE .IP " 5." 4 مشخصات ID3 .RS 4 \%http://id3.org/id3v2.4.0-frames .RE .IP " 6." 4 ویرایشگر SYLT .RS 4 \%http://www.compuphase.com/software_sylteditor.htm .RE .IP " 7." 4 www.gnudb.org .RS 4 \%http://www.gnudb.org .RE .IP " 8." 4 gnudb.org .RS 4 \%https://gnudb.org/info.php .RE .IP " 9." 4 Discogs .RS 4 \%https://www.discogs.com .RE .IP "10." 4 freedb.org .RS 4 \%http://freedb.org .RE .IP "11." 4 برچسب ID3 نسخه 2.3.0 .RS 4 \%http://id3.org/id3v2.3.0 .RE .IP "12." 4 برچسب ID3 نسخه 2.4.0 \- ساختار اصلی .RS 4 \%http://id3.org/id3v2.4.0-structure .RE .IP "13." 4 LyricWiki .RS 4 \%http://www.lyricwiki.org .RE .IP "14." 4 Google .RS 4 \%http://www.google.com .RE .IP "15." 4 id3lib .RS 4 \%http://id3lib.sourceforge.net .RE .IP "16." 4 libogg .RS 4 \%http://xiph.org/ogg .RE .IP "17." 4 libvorbis، libvorbisfile .RS 4 \%http://xiph.org/vorbis .RE .IP "18." 4 libFLAC++ و libFLAC .RS 4 \%http://flac.sourceforge.net .RE .IP "19." 4 TagLib .RS 4 \%http://taglib.github.io .RE .IP "20." 4 mp4v2 .RS 4 \%https://mp4v2.org .RE .IP "21." 4 Chromaprint .RS 4 \%http://acoustid.org/chromaprint .RE .IP "22." 4 libav .RS 4 \%http://libav.org .RE .IP "23." 4 FDL .RS 4 \%http://www.gnu.org/licenses/licenses.html#FDL .RE .IP "24." 4 GPL .RS 4 \%http://www.gnu.org/licenses/licenses.html#GPL .RE .IP "25." 4 Qt(TM) .RS 4 \%https://www.qt.io .RE .IP "26." 4 KDE .RS 4 \%http://www.kde.org .RE