<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
  <!ENTITY kid3 '<application
>Kid3</application
>'>
  <!ENTITY doublehyphen '--'>
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % Swedish "INCLUDE"
><!-- change language only here -->
]>
<book lang="&language;" id="kid3-handbook">

<bookinfo>
<title
>Handbok &kid3;</title>

<authorgroup>
<author
><firstname
>Urs</firstname
> <surname
>Fleisch</surname
> <affiliation
> <address
><email
>ufleisch@users.sourceforge.net</email
></address>
</affiliation>
<contrib
>Programvaruutveckling</contrib>
</author>

<othercredit role="translator"
> <firstname
>Stefan</firstname
> <surname
>Asserhäll</surname
> <affiliation
><address
><email
>stefan.asserhall@bredband.net</email
></address
></affiliation
> <contrib
>Översättare</contrib
></othercredit
> 
</authorgroup>

<copyright>
<year
>2021</year>
<holder
>Urs Fleisch</holder>
</copyright>
<legalnotice id="fdl-notice"
>&FDLNotice;</legalnotice>

<date
>2021-12-18</date>
<releaseinfo
>3.9.0</releaseinfo>

<abstract>
<para
>&kid3; är ett program för att redigera ID3v1 och ID3v2 taggar i MP3-filer på ett effektivt sätt. Taggar i Ogg/Vorbis-, Opus-, DSF-, FLAC-, MPC-, APE-, MP4/AAC-, MP2-, Speex-, TrueAudio-, WavPack-, WMA-, WAV-, AIFF-filer och spårningsmoduler (MOD, S3M, IT, XM) stöds också. Det är enkelt att tilldela taggar i fler filer till samma värden (t.ex. album, artist, år och genre i alla filer för samma album) och generera taggar från filnamn eller vice versa. </para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdemultimedia</keyword>
<keyword
>MP3</keyword>
<keyword
>ID3</keyword>
<keyword
>ID3v1</keyword>
<keyword
>ID3v2</keyword>
<keyword
>Ogg</keyword>
<keyword
>Vorbis</keyword>
<keyword
>FLAC</keyword>
<keyword
>MPC</keyword>
<keyword
>APE</keyword>
<keyword
>Musepack</keyword>
<keyword
>MP4</keyword>
<keyword
>M4A</keyword>
<keyword
>MP2</keyword>
<keyword
>Speex</keyword>
<keyword
>TrueAudio</keyword>
<keyword
>WavPack</keyword>
<keyword
>WMA</keyword>
<keyword
>WAV</keyword>
<keyword
>AIFF</keyword>
<keyword
>MOD</keyword>
<keyword
>S3M</keyword>
<keyword
>IT</keyword>
<keyword
>XM</keyword>
<keyword
>Opus</keyword>
<keyword
>DSF</keyword>
</keywordset>

</bookinfo>

<!--begin manpage include
<refmeta>
<refentrytitle
>kid3</refentrytitle>
<manvolnum
>1</manvolnum>
</refmeta>

<refnamediv>
<refname
>kid3</refname>
<refname
>kid3-qt</refname>
<refname
>kid3-cli</refname>
<refpurpose
>Kid3 ID3 Tagger</refpurpose>
</refnamediv>
end manpage include-->

<!--change manpage<refsynopsisdiv
>--><preface id="synopsis"
><title
>Översikt</title>
<cmdsynopsis
><command
>kid3</command
> <group
> <arg choice="plain"
><option
>&doublehyphen;help</option
></arg
> <arg choice="plain"
><option
>&doublehyphen;author</option
></arg
> <arg choice="plain"
><option
>&doublehyphen;version</option
></arg
> <arg choice="plain"
><option
>&doublehyphen;license</option
></arg
> <arg choice="plain"
><option
>&doublehyphen;desktopfile <filename
>FIL</filename
></option
></arg
> </group
> <arg rep="repeat"
><replaceable
>FIL</replaceable
></arg
> </cmdsynopsis>
<cmdsynopsis
><command
>kid3-qt</command
> <arg
><option
>&doublehyphen;portable</option
></arg
> <arg
><option
>Qt-väljare</option
></arg
> <arg rep="repeat"
><replaceable
>FIL</replaceable
></arg
> </cmdsynopsis>
<cmdsynopsis
><command
>kid3-cli</command
> <arg
><option
>&doublehyphen;portable</option
></arg
> <arg
><option
>&doublehyphen;dbus</option
></arg
> <group
> <arg choice="plain"
><option
>-h</option
></arg
> <arg choice="plain"
><option
>&doublehyphen;help</option
></arg
> </group
> <arg
><option
>-c KOMMANDO1</option
></arg
> <arg rep="repeat"
><option
>-c KOMMANDO2</option
></arg
> <arg rep="repeat"
><replaceable
>FIL</replaceable
></arg
> </cmdsynopsis>
<!--change manpage</refsynopsisdiv
>--></preface>

<preface id="options"
><title
>Väljare</title>

<variablelist>
<varlistentry>
<term
><option
>&doublehyphen;portable</option
></term>
<listitem
><para
>Lagra inställningen i filen <filename
>kid3.ini</filename
> i programkatalogen.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><replaceable
>FIL</replaceable
></term>
<listitem
><para
>Om <filename
><replaceable
>FIL</replaceable
></filename
> är sökvägen för en katalog, som öppnas. Om en eller flera filsökvägar anges, öppnas deras gemensamma katalog och filerna markeras. </para
></listitem>
</varlistentry>
</variablelist>

<sect1 id="options-kid3"
><title
>kid3</title>
<variablelist>
<varlistentry>
<term
><option
>&doublehyphen;help</option
></term>
<listitem
><para
>Visa hjälp om väljare.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><option
>&doublehyphen;author</option
></term>
<listitem
><para
>Visa information om upphovsman.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><option
>&doublehyphen;version</option
></term>
<listitem
><para
>Visa versionsinformation.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><option
>&doublehyphen;license</option
></term>
<listitem
><para
>Visa licensinformation.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><option
>&doublehyphen;desktopfile <filename
>FIL</filename
></option
></term>
<listitem
><para
>Basfilnamnet på skrivbordsposten för programmet.</para
></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="options-kid3-qt"
><title
>kid3-qt</title>
<variablelist>
<varlistentry>
<term
><option
>Qt-väljare</option
></term>
<listitem
><para
>Se <citerefentry
><refentrytitle
>qt5options</refentrytitle
> <manvolnum
>7</manvolnum
></citerefentry
>.</para
></listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="options-kid3-cli"
><title
>kid3-cli</title>
<variablelist>

<varlistentry>
<term
><option
>&doublehyphen;dbus</option
></term>
<listitem
><para
>Aktivera &DBus;-gränssnittet.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><option
>-c</option
></term>
<listitem
><para
>Kör ett kommando. Flera <option
>-c</option
> väljare är möjliga, och de körs i en följd. Se avsnittet om <link linkend="kid3-cli"
>kid3-cli</link
> för en beskrivning av tillgängliga kommandon.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><option
>-h</option
>|<option
>&doublehyphen;help</option
></term>
<listitem
><para
>Visa hjälp om väljare och kommandon.</para
></listitem>
</varlistentry>

</variablelist>
</sect1>

</preface>

<chapter id="introduction">
<title
>Inledning</title>

<para
>&kid3; är ett program för att redigera ID3v1 och ID3v2 taggar i MP3 filer på ett effektivt sätt. Taggarna kan redigeras i de flesta MP3-spelare, men inte på ett särskilt bekvämt och effektiv sätt. Dessutom stöds också taggar i Ogg/Vorbis-, Opus-, DSF-, FLAC-, MPC-, APE-, MP4/AAC-, MP2-, Speex-, TrueAudio-, WavPack-, WMA-, WAV-, AIFF-filer och spårningsmoduler (MOD, S3M, IT, XM). </para>
<para
>&kid3; griper eller kodar inte MP3-filer, men har som mål att redigera ID3-taggarna i alla filer i ett album på ett effektivt sätt, dvs. med så få musklick och tangentnedtryckningar som möjligt. Även om de flesta program kan redigera antingen ID3v1 eller ID3v2 taggar, har &kid3; fullständig kontroll över båda versionerna, kan konvertera taggar mellan de två formaten och kan komma åt alla ID3v2-taggar. Taggar i flera filer kan tilldelas samma värde, t.ex. artist, album, år och genre i alla filer i ett album har ofta samma värden och kan tilldelas tillsammans. Om informationen för taggarna ingår i filnamnet kan taggarna automatiskt tilldelas från filnamnet. Det är också möjligt att ändra filnamnet enligt taggarna som hittas i filen med godtyckliga format. </para>
<para
>Redigeringsaktiviteten stöds ytterligare genom automatisk ersättning av tecken eller delsträngar, exempelvis för att ta bort ogiltiga tecken från filnamn. Automatisk kontroll av stora och små bokstäver gör det enkelt att använda en konsekvent namngivningsmetod för alla taggar. </para>
<para
>Tagginformationen för hela album kan tas från <ulink url="http://gnudb.org"
>gnudb.org</ulink
>, <ulink url="http://musicbrainz.org"
>MusicBrainz</ulink
>, <ulink url="http://discogs.com"
>Discogs</ulink
>, <ulink url="http://www.amazon.com"
>Amazon</ulink
> eller andra källor för spårlistor. Importformatet är fritt inställningsbart med reguljära uttryck. </para>
<para
>Rapportera gärna eventuella problem eller önskemål till upphovsmannen. </para>
</chapter>

<chapter id="using-kid3">
<title
>Använda &kid3;</title>

<sect1 id="kid3-features">
<title
>Funktioner i &kid3;</title>
<itemizedlist>
<listitem
><para
>Redigera ID3v1.1 taggar</para
></listitem>
<listitem
><para
>Redigera alla ID3v2.3 och ID3v2.4 ramar</para
></listitem>
<listitem
><para
>Redigera taggar i flera filer</para
></listitem>
<listitem
><para
>Konvertera mellan ID3v1 och ID3v2 taggar</para
></listitem>
<listitem
><para
>Redigera MP3-, Ogg/Vorbis-, Opus-, DSF-, FLAC-, MPC-, APE-, MP4/AAC-, MP2-, Speex-, TrueAudio-, WavPack-, WMA-, WAV- och AIFF-taggar</para
></listitem>
<listitem
><para
>Generera taggar från filnamn</para
></listitem>
<listitem
><para
>Generera taggar från innehållet i taggfält</para
></listitem>
<listitem
><para
>Generera filnamn från taggar</para
></listitem>
<listitem
><para
>Generera och ändra katalognamn från taggar</para
></listitem>
<listitem
><para
>Genererar spellistefil</para
></listitem>
<listitem
><para
>Automatisk skiftlägeskonvertering och strängöversättning</para
></listitem>
<listitem
><para
>Importera från <ulink url="http://gnudb.org"
>gnudb.org</ulink
>, <ulink url="http://musicbrainz.org"
>MusicBrainz</ulink
>, <ulink url="http://discogs.com"
>Discogs</ulink
>, <ulink url="http://www.amazon.com"
>Amazon</ulink
> och andra datakällor</para
></listitem>
<listitem
><para
>Exportera som CSV, &HTML;, spellista, Kover &XML; och andra format. Exporterade CSV-filer kan importeras igen.</para
></listitem>
</itemizedlist>
</sect1>

<sect1 id="example-usage">
<title
>Exempel på användning</title>
<para
>Det här avsnittet beskriver en typisk session med &kid3;. Låt oss anta att vi har en katalog som innehåller MP3-filer med spår från albumet "Låt oss tagga" från bandet "Dagslända". Katalogen är namngiven med formatet "artist - album", i vårt fall <filename
>Dagslända - Låt oss tagga</filename
>. Katalogen innehåller spåren på formatet "spår titel.mp3", som jag tycker är användbart eftersom filnamnen är korta (viktigt vid användning av mobila MP3-spelare med små skärmar) och i rätt ordning när de sorteras alfabetiskt (viktigt vid användning av MP3-hårdvaruspelare som spelar spåren i alfabetisk ordning eller ordningen som de är brända på en cd och den ordningen är alfabetisk när <command
>mkisofs</command
> används). Bortsett från det, är artist- och albuminformationen redan i katalognamnet och behöver inte upprepas i filnamnet. Men åter till vårt exempel, där listningen av katalog ser ut så här: </para>
<para
><filename
>01 Början.mp3</filename
></para>
<para
><filename
>02 Vi har bara den här.mp3</filename
></para>
<para
><filename
>03 Slutet.mp3</filename
></para>
<para
>Filerna har inga taggar än och vi vill generera dem med &kid3;. Vi använder <menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Öppna</guimenuitem
></menuchoice
> (eller knappen i verktygsraden) och markerar en av filerna i katalogen. Alla filer visas i fillistrutan. Lata som vi är, vill vi använda informationen i katalogen och filnamnen för att skapa taggar. Därför markerar vi alla filerna, och klickar på knappen <guilabel
>Till:</guilabel
> <guibutton
>Tagg 1</guibutton
> i sektionen <guilabel
>Arkiv</guilabel
>. Det tilldelar värden för titel, artist, album och spår i alla filer. För att tilldela värden för år och genre i alla filer, behåller vi alla filer markerade och skriver in "2002" för <guilabel
>Datum</guilabel
> och väljer "Pop" i kombinationsrutan <guilabel
>Genre</guilabel
>. För att bara tilldela de här två värdena markeras deras kryssrutor automatiskt och alla andra kryssrutor lämnas omarkerade. Nu ändrar vi markeringen genom att bara markera den första filen och vi ser att alla taggar innehåller rätt värden. De andra filernas taggar kan också verifieras genom att markera dem en i taget. När vi är nöjda med taggarna, använder vi menyalternativet <menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Spara</guimenuitem
></menuchoice
> (eller knappen i verktygsraden). Att välja menyalternativet <menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Skapa spellista</guimenuitem
></menuchoice
> skapar filen <filename
>Dagslända - Låt oss tagga.m3u</filename
> i katalogen. </para>
</sect1>

</chapter>

<chapter id="commands">
<title
>Kommandoreferens</title>

<sect1 id="gui-elements">
<title
>Elementen i det grafiska användargränssnittet</title>
<para
>Det grafiska gränssnittet i &kid3; är uppdelat i sex sektioner: Till vänster är fil- och kataloglistrutorna, och till höger finns sektionerna <guilabel
>Fil</guilabel
>, <guilabel
>Tagg 1</guilabel
>, <guilabel
>Tagg 2</guilabel
> och <guilabel
>Tagg 3 </guilabel
>. </para>

<para
>För att navigera mellan de olika sektionerna med tangentbordet, stöds flera snabbtangenter. I taggsektionerna är genvägarna aktiva när inte text redigeras eller när man är i den första kolumnen. <itemizedlist>
<listitem
><para
><keycombo
>&Alt;<keycap
>Vänsterpil</keycap
></keycombo
>: Gå till föregående sektion (<keycombo
><keycap
>Kommando</keycap
><keycap
>[</keycap
></keycombo
> på &macOS;) </para
></listitem>
<listitem
><para
><keycombo
>&Alt;<keycap
>Högerpil</keycap
></keycombo
>: Gå till nästa sektion (<keycombo
><keycap
>Kommando</keycap
><keycap
>]</keycap
></keycombo
> på &macOS;) </para
></listitem>
<listitem
><para
><keycombo
>&Ctrl;<keycap
>Skift</keycap
><keycap
>V</keycap
></keycombo
>: Från annan tagg </para
></listitem>
<listitem
><para
><keycombo
>&Ctrl;<keycap
>C</keycap
></keycombo
>: Kopiera </para
></listitem>
<listitem
><para
><keycombo
>&Ctrl;<keycap
>V</keycap
></keycombo
>: Klistra in </para
></listitem>
<listitem
><para
><keycombo
><keycap
>Skift</keycap
><keycap
>Delete</keycap
></keycombo
>: Ta bort </para
></listitem>
<listitem
><para
><keycombo
><keycap
>F2</keycap
></keycombo
>: Redigera </para
></listitem>
<listitem
><para
><keycombo
><keycap
>Insert</keycap
></keycombo
>: Lägg till </para
></listitem>
<listitem
><para
><keycombo
><keycap
>Delete</keycap
></keycombo
>: Ta bort </para
></listitem>
</itemizedlist>
</para>

<sect2 id="file-list">
<title
>Fillista</title>

<para
>Fillistan innehåller namnen på alla filerna i de öppnade katalogerna som motsvarar det valda filnamnsfiltret (oftast <filename class="extension"
>*.mp3 *.ogg *.opus *.dsf *.flac *.mpc *.aac *.m4a *.m4b *.m4p *.mp4 *.mp2 *.spx *.tta *.wv *.wma *.wav *.aiff *.ape</filename
>). En enda eller flera filer kan markeras. För att inte markera någon fil, klicka på det tomma utrymmet efter listrutans poster. Markeringen bestämmer filerna som påverkas av de tillgängliga åtgärderna genom att använda knapparna som beskrivs nedan. </para>
<para
>Förutom <guilabel
>Namn</guilabel
> kan andra kolumner med detaljerad filinformation visas, <guilabel
>Storlek</guilabel
>, <guilabel
>Typ</guilabel
> och <guilabel
>Ändringsdatum</guilabel
>. Kolumner kan döljas genom att avmarkera deras namn i listrubrikens sammanhangsberoende meny. Kolumnordningen kan ändras genom att dra och släppa dem. Sorteringsordningen kan ändras genom att klicka på kolumnrubriken. </para>
<para
>Värdet på standardtaggarna kan också visas och redigeras i fillistans kolumner. </para>
<para
>Till vänster om namnen kan en ikon visas: en skiva för att visa att filen har ändrats eller information om vilka taggar som finns (V1, V2, V1V2 eller NO TAG). Om filen inte ännu har lästs in visas ingen ikon. </para>
<para
>Kataloger visas med en katalogikon. Om en katalog är öppnad, visas dess filer i ett hierarkiskt träd. Genom att markera filer i underkataloger, kan åtgärder utföras med filer i olika kataloger, vilket är användbart om musiksamlingen är organiserad med en katalog för varje artist som innehåller kataloger för album av artisten. </para>
<para
>Genom att klicka med <mousebutton
>höger</mousebutton
> musknapp inne i fillistan visas en sammanhangsberoende meny med följande kommandon: <itemizedlist>
<listitem
><para
><guimenuitem
>Expandera alla</guimenuitem
>: Expanderar alla katalogträd (bara det aktuella trädet om skifttangenten hålls nere) </para
></listitem>
<listitem
><para
><guimenuitem
>Dra ihop alla</guimenuitem
>: Drar ihop alla katalogträd </para
></listitem>
<listitem
><para
><guimenuitem
>Byt namn</guimenuitem
>: Byter namn på en fil </para
></listitem>
<listitem
><para
><guimenuitem
>Flytta till papperskorgen</guimenuitem
>: Flyttar en fil till papperskorgen </para
></listitem>
<listitem
><para
><guimenuitem
>Spela</guimenuitem
>: Spelar upp en fil, se <link linkend="play"
>Spela</link
>. Om den markerade filen är en spellista, spelas filerna i spellistan. </para
></listitem>
<listitem
><para
><guimenuitem
>Redigera</guimenuitem
>: Redigera en spellista, se <link linkend="edit-playlist"
>Redigera spellista</link
>. </para
></listitem>
<listitem
><para
>Efterföljande alternativ är användarkommandon, som kan definieras under fliken <guilabel
>Användaråtgärder</guilabel
> i <link linkend="configure-kid3"
>Anpassa &kid3;</link
>. Uppspelning vid dubbelklick kan också aktiveras där. </para
></listitem>
</itemizedlist>
</para>
</sect2>

<sect2 id="edit-playlist">
<title
>Redigera spellista</title>

<para
>En spellista kan skapas tom eller med spåren i en katalog, se <link linkend="create-playlist"
>Skapa spellista</link
>. Spellistefilen skapas på ett sådant sätt att den kan redigeras genom att dubbelklicka eller genom att använda <guilabel
>Redigera</guilabel
> i fillistans sammanhangsberoende meny. En dialogruta med posterna i spellistan visas. Det är möjligt att öppna flera spellistor samtidigt. </para>
<para
>Nya poster kan läggas till genom att dra och släppa från fillistan, en filhanterare eller en annan spellista. Om en post dras från en annan spellista flyttas eller kopieras den beroende på systemet. För att utföra den andra åtgärden, måste &Shift;-, &Ctrl;- eller &Alt;-tangenten användas (för att kopiera eller flytta på &macOS;). Det är också möjligt att ordna om poster i spellistan med dra och släpp. Som alternativ kan poster flyttas genom att använda snabbtangenterna <keycombo
>&Ctrl;&Shift;<keycap
>Uppåtpil</keycap
></keycombo
> och <keycombo
>&Ctrl;&Shift;<keycap
>Neråtpil</keycap
></keycombo
> (på &macOS; måste <keycap
>Kommando</keycap
> användas istället för &Ctrl;). En post kan tas bort med <keycap
>Delete</keycap
>-tangenten. </para>
<para
>Observera följande: För att dra poster från fillistan, måste de hållas på vänster sida (nära ikonerna), samma gest på höger sida utför multipel markering, en sådan åtgärd är därmed fortfarande enkel att göra. </para>
<para
>När en spellista har ändrats, ändringarna kan lagras genom att använda <guibutton
>Spara</guibutton
> eller kastas genom att använda <guibutton
>Avbryt</guibutton
>. När fönstret stängs, visas en bekräftelseruta om det finns osparade ändringar. </para>
<para
>Spår som markeras i spellistan markeras automatiskt i fillistan, och därigenom blir det möjligt att redigera deras taggar. </para>
<para
>För att utföra åtgärder för en spellista måste dess fil vara markerad i fillistan. <guimenuitem
>Redigera</guimenuitem
> i den sammanhangsberoende menyn ger dialogrutan beskriven i det här avsnittet, och <guimenuitem
>Spela</guimenuitem
> startar mediaspelaren med spåren i spellistan. Användaråtgärder kan gälla spellistor, <link linkend="qml-examples"
>exempelvis</link
> <guilabel
>Exportera spellistekatalog</guilabel
>, som kopierar filerna från en spellista till en katalog. </para>
</sect2>

<sect2 id="directory-list">
<title
>Kataloglista</title>

<para
>Kataloglista innehåller namnet på katalogerna i den öppnade katalogen, förutom den aktuella (<filename class="directory"
>.</filename
>) och den överliggande (<filename class="directory"
>..</filename
>) katalogen. Den gör att man snabbt kan byta katalog utan att använda kommandot <guimenuitem
>Öppna...</guimenuitem
> eller dra och släpp. </para>
<para
>Kolumnsynlighet, ordning och sortering kan ställas in som beskrivs i avsnittet om <link linkend="file-list"
>fillistan</link
>. </para>
</sect2>

<sect2 id="file">
<title
>Fil</title>

<para
>Visar information om kodningen (MP3, Ogg, Opus, DSF, FLAC, MPC, APE, MP2, MP4, AAC, Speex, TrueAudio, WavPack, WMA, WAV, AIFF), bithastighet, samplingsfrekvens, kanaler och filens längd. </para>
<para
>Redigeringsraden <guilabel
>Namn</guilabel
> innehåller filens namn (om bara en enda fil är markerad). Om namnet ändras, ändras också filens namn när kommandot Spara används. </para>
<para
>Kombinationsrutan <guilabel
>Format</guilabel
> och redigeringsraden innehåller formatet som ska användas när filnamnet genereras från den första eller andra taggen. Filnamnet kan använda godtyckliga tecken, till och med en katalogdel åtskild med ett snedstreck från filnamnet, men katalogen måste redan finnas för att namnbytet ska lyckas. Följande specialkoder används för att infoga taggvärden i filnamnet: </para>

<itemizedlist>
<listitem
><para
>%s %{title} Titel (Låt)</para
></listitem>
<listitem
><para
>%a %{artist} Artist</para
></listitem>
<listitem
><para
>%l %{album} Album</para
></listitem>
<listitem
><para
>%c %{comment} Kommentar</para
></listitem>
<listitem
><para
>%y %{year} År</para
></listitem>
<listitem
><para
>%t %{track} Spår (t.ex. 01)</para
></listitem>
<listitem
><para
>%t %{track.n} Spår med fältbredd n (t.ex. 001 för %{track.3})</para
></listitem>
<listitem
><para
>%T %{tracknumber} Spår (utan inledande nollor, t.ex. 1)</para
></listitem>
<listitem
><para
>%g %{genre} Genre</para
></listitem>
<listitem
><para
>%{ignore} Ignoreras när taggar genereras från filnamnet</para
></listitem>
</itemizedlist>

<para
>Formatkoderna är inte begränsade till exemplen som ges ovan. Alla ramnamn kan användas, exempelvis gemensamma ramnamn som <userinput
>%{albumartist}</userinput
>, <userinput
>%{discnumber.1}</userinput
>, <userinput
>%{bpm}</userinput
> eller formatspecifika namn såsom <userinput
>%{popm}</userinput
>. </para>

<para
>Det är möjligt att lägga till strängar i början eller slutet av en formatkod genom att lägga till den i dubbla citationstecken inne i en formatkods klammerparenteser. Strängarna läggs bara till i resultatsträngen om formatkoden ger ett värde som inte är tomt. Om filnamnet exempelvis både ska innehålla titeln och undertiteln, skulle man kunna använda <userinput
>%{title} [%{subtitle}]</userinput
> i formatsträngen. Men det skulle resultera i en sträng som slutar med <computeroutput
> []</computeroutput
> om undertitel saknas i en fil. För att utelämna hakparenteserna om det inte finns någon undertitel, måste <userinput
>%{title}%{" ["subtitle"]"}</userinput
> användas istället. Det utelämnar hakparenteserna, det inledande mellanslaget och undertiteln om det inte finns någon undertitel. </para>

<para
>Listan med tillgängliga format kan redigeras i dialogrutan som visas när knappen <guibutton
>Filnamn från tagg</guibutton
> klickas under fliken <guilabel
>Fil</guilabel
> i <link linkend="configure-kid3"
>inställningarna</link
>. </para>

<para
>En andra kombinationsruta <guilabel
>Format</guilabel
> (med neråtpil) används för att generera taggarna från filnamnet. Om filnamnsformatet inte motsvarar mönstret, provas ett antal andra ofta använda format. </para>

<para
>Vissa ofta använda filnamnsformat är redan tillgängliga i kombinationsrutan, men det är också möjligt att skriva in några specialformat på redigeringsraden. </para>

<para
>Listan med tillgängliga format kan redigeras i dialogrutan som visas genom att klicka på knappen <guibutton
>Tagg från filnamn</guibutton
> under fliken <guilabel
>Fil</guilabel
> i <link linkend="configure-kid3"
>inställningarna</link
>. </para>

<para
>Internt byggs ett reguljärt uttryck från formatkoderna. Om avancerade reguljära uttryck krävs, kan formatet för att generera taggarna från filnamnen anges som ett fullständigt reguljärt uttryck med infångning som föregås av formatkoderna, t.ex. för att extrahera spårnumren utan borttagning av inledande nollor, ett format som "<userinput
>/%{track}(\d+) %{title}(.*)</userinput
>" kunna användas. </para>
<para
><guilabel
>Från:</guilabel
> <guibutton
>Tagg 1</guibutton
>, <guibutton
>Tagg 2</guibutton
>: Ställer in filnamnet genom att använda det valda formatet och den första taggen eller den andra taggen. </para>
<para
><guilabel
>Till:</guilabel
> <guibutton
>Tagg 1</guibutton
>, <guibutton
>Tagg 2</guibutton
>: Taggarna ställs in från filnamnet. Först används formatet angivet i <guilabel
>Format</guilabel
>. Om det befintliga filnamnet inte motsvarar formatet, provas följande format: </para>
<itemizedlist>
<listitem
><para
><filename
>Artist - Album/Spår Låt</filename
></para
></listitem>
<listitem
><para
><filename
>Album/Spår - Artist - Låt</filename
></para
></listitem>
<listitem
><para
><filename
>/Artist - Album - Spår - Låt</filename
></para
></listitem>
<listitem
><para
><filename
>Album/Artist - Spår - Låt</filename
></para
></listitem>
<listitem
><para
><filename
>Album/Artist - Låt</filename
></para
></listitem>
<listitem
><para
><filename
>Artist/Album/Spår Låt</filename
></para
></listitem>
</itemizedlist>
<para
>Om en enda fil är markerad, fylls kontrollerna i det grafiska användargränssnittet med värden som extraheras från filnamnet. Om flera filer är markerade, ställs filernas taggar direkt in enligt filnamnen. </para>
</sect2>

<sect2 id="tag1">
<title
>Tagg 1</title>

<para
>Redigeringsraden för <guilabel
>Titel</guilabel
>, <guilabel
>Artist</guilabel
>, <guilabel
>Album</guilabel
>, <guilabel
>Kommentar</guilabel
>, <guilabel
>Datum</guilabel
>, <guilabel
>Spårnummer</guilabel
> och <guilabel
>Genre</guilabel
> används för att redigera motsvarande värde i de markerade filernas första tagg. Värdet ändras när filmarkeringen ändras eller innan åtgärder som <guimenuitem
>Spara</guimenuitem
> och <guimenuitem
>Avsluta</guimenuitem
> och när motsvarande kryssruta till vänster om fältnamnet markeras. Det är användbart för att bara ändra vissa värden och lämna andra oförändrade. </para>
<para
>Om en enda fil är markerad, är alla kryssrutor markerade och redigeringsraderna innehåller värdena som fanns i filens taggar. Om en tagg inte finns i filen, visas det motsvarande tomma värdet, som är en tom sträng för redigeringsraderna <guilabel
>Titel</guilabel
>, <guilabel
>Artist</guilabel
>, <guilabel
>Album</guilabel
> och <guilabel
>Kommentar</guilabel
>, 0 för de numeriska redigeringsraderna <guilabel
>Datum</guilabel
> och <guilabel
>Spårnummer</guilabel
> och ett tomt utvalt värde för kombinationsrutan <guilabel
>Genre</guilabel
>. Värdena kan ändras och om motsvarande kryssruta är markerad, tilldelas de i den markerade filen efter markeringen ändras. Filen markeras därefter som ändrad av en disksymbol i fillistrutan men förblir oförändrad tills kommandot <guimenuitem
>Spara</guimenuitem
> används. </para>
<para
>Om flera filer är markerad, visas bara värdena som är identiska i alla markerade filer. I alla andra kontroller, visas de tomma värdena visas enligt beskrivningen ovan. Alla kryssrutor är avmarkerade för att undvika oönskade ändringar. Om ett värde ska tilldelas i alla markerade filer, kan det redigeras och kryssrutan kan markeras. Värdena tilldelas för alla markerade filer när markeringen ändras, och kan sparas med kommandot <guimenuitem
>Spara</guimenuitem
>. </para>
<para
>Kryssrutorna styr också funktionen hos de flesta kommandon som påverkar taggar, såsom kopiera, klistra in och överföring mellan tagg 1 och tagg 2. För att göra det enklare att använda med flera filer, då alla kryssrutor är avmarkerade, beter sig kommandona likadant när alla kryssrutor är markerade och när alla kryssrutor är avmarkerade. </para>
<para
><guibutton
>Från tagg 2</guibutton
>: Fälten i tagg 1 tilldelas från motsvarande värden i tagg 2. Om en enda fil är markerad, fylls det grafiska användargränssnittets kontroller med värdena från tagg 2. Om flera filer är markerade, tilldelas filernas taggar direkt. </para>
<para
><guibutton
>Kopiera</guibutton
>: Kopieringsbufferten fylls i med värden från Tagg 1. Bara värden med markerade kryssrutor används i efterföljande kommandon för att klistra in. </para>
<para
><guibutton
>Klistra in</guibutton
>: Klistrar in värdena från kopieringsbufferten till de grafiska användargränssnittets kontroller. </para>
<para
><guibutton
>Ta bort</guibutton
>: Tilldelar alla grafiska användargränssnittets kontroller sina tomma värden, vilket leder till att alla värden tas bort. Den sparade filen innehåller då inte någon tagg 1. </para>
</sect2>

<sect2 id="tag2">
<title
>Tagg 2</title>

<para
>Det grafiska användargränssnittet styr funktionen på samma sätt som beskrivs för <guilabel
>Tagg 1</guilabel
> sektionen, men strängarnas storlek är inte begränsad. </para>
<para
>För <guilabel
>Genre</guilabel
> i tagg 2 kan du också använda dina egna namn förutom genrer listad i kombinationsrutan, skriv bara in namnet på redigeringsraden. </para>
<para
>Tagg 2 kan inte bara innehålla samma värden som tagg 1, utan formatet är uppbyggt på ett flexibelt sätt från flera ramar som i sin tur består av flera fält. Tabellen över tagg 2 visar alla ramar som är tillgängliga i den markerade filen. </para>
<para
><guibutton
>Redigera</guibutton
>: Öppnar ett fönster som gör att man kan redigera alla fält i den markerade ramen. Om flera filer är markerade, tilldelas de redigerade fälten till alla markerade filer som innehåller en sådan ram. </para>
<para
><guibutton
>Lägg till</guibutton
>: En fråga om att välja ramtyp dyker upp och en ram av den valda typen kan redigeras och läggas till i filen. Det fungerar också för att lägga till en ram i flera markerade filer. </para>
<para
><guibutton
>Ta bort</guibutton
>: Tar bort den markerade ramen i de markerade filerna. </para>
<para
><guilabel
>Dra album-omslag hit</guilabel
> visas om filen inte innehåller något inbäddat omslag. En bild kan läggas till genom att använda dra och släpp från en filbläddrare eller filhanterare och visas här. Bildramar kan också redigeras eller läggas till genom att dubbelklicka på kontrollen. </para>

</sect2>

<sect2 id="tag3">
<title
>Tagg 3</title>

<para
>Visa filer kan ha mer än två taggar, och en tredje taggsektion är synlig. Följande filtyper kan ha en sådan <guilabel
>Tagg 3</guilabel
> sektion: </para>
<itemizedlist>
<listitem
><para
>MP3-filer kan ha en ID3v1.1-tagg, en ID3v2 (2.3.0 eller 2.4.0)-tagg och en APE-tagg i den tredje sektionen. Sådan APE-taggar används för information om uppspelningsförstärkning. I sektionen <guilabel
>Tagg 3</guilabel
> är informationen synlig, och APE-taggen kan tas bort med knappen <guibutton
>Ta bort</guibutton
>. </para
></listitem>
<listitem
><para
>RIFF INFO segmentet i WAV-filer är tillgängligt i sektionen <guilabel
>Tagg 3 </guilabel
> eftersom sektionen <guilabel
>Tagg 1</guilabel
> är tillägnad ID3v1.1-taggar och hanterar deras begränsningar. <guilabel
>Tagg 2</guilabel
> används fortfarande för ID3v2.4.0-taggar, som också stöds för WAV-filer, men RIFF INFO segment verkar stödjas bättre. </para
></listitem>
<listitem
><para
>FLAC-filer använder normalt en Vorbis-kommentar för sin metadata. Dock finns det FLAC-filer som har ID3v1- och ID3v2-taggar, som finns i sektionerna <guilabel
>Tagg 1</guilabel
> och <guilabel
>Tagg 3</guilabel
>. ID3-taggar i FLAC-filer stöds bara av TagLib, därför måste insticksprogrammet QggFlacMetadata inaktiveras under fliken <guilabel
>Insticksprogram</guilabel
> i <link linkend="configure-kid3"
>inställningarna</link
>. </para
></listitem>
</itemizedlist>
<para
>De grafiska användargränssnittets kontroller fungerar på samma sätt som i <guilabel
>Tagg 2</guilabel
> sektionen. </para>

</sect2>

<!--begin manpage ignore-->
<sect2 id="frame-list">
<title
>Ramlista</title>

<para
>&kid3; kan redigera de flesta ramar för alla filtyper som stöds. Åtkomst av vissa ramar görs med gemensamma namn, så att de kan utbytas mellan filer med olika format. Ramar som inte är gemensamma kan kommas åt som formatspecifika ramar. </para>

<table id="table-frame-list">
  <title
>Översättning av gemensamma ramtyper till diverse format</title>
   <tgroup cols="7">
     <thead>
       <row
><entry
>Gemensam</entry
>           <entry
>ID3v2.3</entry
> <entry
>ID3v2.4</entry
> <entry
>MP4</entry
>            <entry
>ASF</entry
>                        <entry
>Vorbis</entry
>                 <entry
>RIFF</entry
></row>
     </thead>
     <tbody>
       <row
><entry
>Title</entry
>             <entry
><literal
>TIT2</literal
></entry
>    <entry
><literal
>TIT2</literal
></entry
>    <entry
><literal
>©nam</literal
></entry
>           <entry
><literal
>Title</literal
></entry
>                      <entry
><literal
>TITEL</literal
></entry
>                  <entry
><literal
>INAM</literal
></entry
></row>
       <row
><entry
>Artist</entry
>            <entry
><literal
>TPE1</literal
></entry
>    <entry
><literal
>TPE1</literal
></entry
>    <entry
><literal
>©ART</literal
></entry
>           <entry
><literal
>Author</literal
></entry
>                     <entry
><literal
>ARTIST</literal
></entry
>                 <entry
><literal
>IART</literal
></entry
></row>
       <row
><entry
>Album</entry
>             <entry
><literal
>TALB</literal
></entry
>    <entry
><literal
>TALB</literal
></entry
>    <entry
><literal
>©alb</literal
></entry
>           <entry
><literal
>WM/Albumtitel</literal
></entry
>              <entry
><literal
>ALBUM</literal
></entry
>                  <entry
><literal
>IPRD</literal
></entry
></row>
       <row
><entry
>Comment</entry
>           <entry
><literal
>COMM</literal
></entry
>    <entry
><literal
>COMM</literal
></entry
>    <entry
><literal
>©cmt</literal
></entry
>           <entry
><literal
>Description</literal
></entry
>                <entry
><literal
>COMMENT</literal
></entry
>                <entry
><literal
>ICMT</literal
></entry
></row>
       <row
><entry
>Date</entry
>              <entry
><literal
>TYER</literal
></entry
>    <entry
><literal
>TDRC</literal
></entry
>    <entry
><literal
>©day</literal
></entry
>           <entry
><literal
>WM/Year</literal
></entry
>                    <entry
><literal
>DATUM</literal
></entry
>                   <entry
><literal
>ICRD</literal
></entry
></row>
       <row
><entry
>Track Number</entry
>      <entry
><literal
>TRCK</literal
></entry
>    <entry
><literal
>TRCK</literal
></entry
>    <entry
><literal
>trkn</literal
></entry
>           <entry
><literal
>WM/TrackNumber</literal
></entry
>             <entry
><literal
>TRACKNUMBER</literal
></entry
>            <entry
><literal
>IPRT</literal
> eller <literal
>ITRK</literal
></entry
></row>
       <row
><entry
>Genre</entry
>             <entry
><literal
>TCON</literal
></entry
>    <entry
><literal
>TCON</literal
></entry
>    <entry
><literal
>©gen</literal
></entry
>           <entry
><literal
>WM/Genre</literal
></entry
>                   <entry
><literal
>GENRE</literal
></entry
>                  <entry
><literal
>IGNR</literal
></entry
></row>
       <row
><entry
>Album Artist</entry
>      <entry
><literal
>TPE2</literal
></entry
>    <entry
><literal
>TPE2</literal
></entry
>    <entry
><literal
>aART</literal
></entry
>           <entry
><literal
>WM/AlbumArtist</literal
></entry
>             <entry
><literal
>ALBUMARTIST</literal
></entry
>            <entry
></entry
></row>
       <row
><entry
>Arranger</entry
>          <entry
><literal
>IPLS</literal
></entry
>    <entry
><literal
>TIPL</literal
></entry
>    <entry
><literal
>ARRANGER</literal
></entry
>       <entry
><literal
>WM/Producer</literal
></entry
>                <entry
><literal
>ARRANGER</literal
></entry
>               <entry
><literal
>IENG</literal
></entry
></row>
       <row
><entry
>Author</entry
>            <entry
><literal
>TOLY</literal
></entry
>    <entry
><literal
>TOLY</literal
></entry
>    <entry
><literal
>AUTHOR</literal
></entry
>         <entry
></entry
>                                              <entry
><literal
>AUTHOR</literal
></entry
>                 <entry
></entry
></row>
       <row
><entry
>BPM</entry
>               <entry
><literal
>TBPM</literal
></entry
>    <entry
><literal
>TBPM</literal
></entry
>    <entry
><literal
>tmpo</literal
></entry
>           <entry
><literal
>WM/BeatsPerMinute</literal
></entry
>          <entry
><literal
>BPM</literal
></entry
>                    <entry
><literal
>IBPM</literal
></entry
></row>
       <row
><entry
>Catalog Number</entry
>    <entry
><literal
>TXXX:CATALOGNUMBER</literal
></entry
> <entry
><literal
>TXXX:CATALOGNUMBER</literal
></entry
>                            <entry
></entry
> <entry
></entry
>                              <entry
><literal
>CATALOGNUMBER</literal
></entry
>          <entry
></entry
></row>
       <row
><entry
>Compilation</entry
>       <entry
><literal
>TCMP</literal
></entry
>    <entry
><literal
>TCMP</literal
></entry
>    <entry
><literal
>cpil</literal
></entry
>           <entry
></entry
>                                              <entry
><literal
>COMPILATION</literal
></entry
>            <entry
></entry
></row>
       <row
><entry
>Composer</entry
>          <entry
><literal
>TCOM</literal
></entry
>    <entry
><literal
>TCOM</literal
></entry
>    <entry
><literal
>©wrt</literal
></entry
>           <entry
><literal
>WM/Composer</literal
></entry
>                <entry
><literal
>COMPOSER</literal
></entry
>               <entry
><literal
>IMUS</literal
></entry
></row>
       <row
><entry
>Conductor</entry
>         <entry
><literal
>TPE3</literal
></entry
>    <entry
><literal
>TPE3</literal
></entry
>    <entry
><literal
>CONDUCTOR</literal
></entry
>      <entry
><literal
>WM/Conductor</literal
></entry
>               <entry
><literal
>CONDUCTOR</literal
></entry
>              <entry
></entry
></row>
       <row
><entry
>Copyright</entry
>         <entry
><literal
>TCOP</literal
></entry
>    <entry
><literal
>TCOP</literal
></entry
>    <entry
><literal
>cprt</literal
></entry
>           <entry
><literal
>Copyright</literal
></entry
>                  <entry
><literal
>COPYRIGHT</literal
></entry
>              <entry
><literal
>ICOP</literal
></entry
></row>
       <row
><entry
>Description</entry
>       <entry
><literal
>TIT3</literal
></entry
>    <entry
><literal
>TIT3</literal
></entry
>    <entry
><literal
>desc</literal
></entry
>           <entry
><literal
>WM/SubTitleDescription</literal
></entry
>     <entry
><literal
>DESCRIPTION</literal
></entry
>            <entry
></entry
></row>
       <row
><entry
>Disc Number</entry
>       <entry
><literal
>TPOS</literal
></entry
>    <entry
><literal
>TPOS</literal
></entry
>    <entry
><literal
>disk</literal
></entry
>           <entry
><literal
>WM/PartOfSet</literal
></entry
>               <entry
><literal
>DISCNUMBER</literal
></entry
>             <entry
></entry
></row>
       <row
><entry
>Encoded-by</entry
>        <entry
><literal
>TENC</literal
></entry
>    <entry
><literal
>TENC</literal
></entry
>    <entry
><literal
>©enc</literal
></entry
>           <entry
><literal
>WM/EncodedBy</literal
></entry
>               <entry
><literal
>ENCODED-BY</literal
></entry
>             <entry
><literal
>ITCH</literal
></entry
></row>
       <row
><entry
>Encoder Settings</entry
>  <entry
><literal
>TSSE</literal
></entry
>    <entry
><literal
>TSSE</literal
></entry
>    <entry
><literal
>©too</literal
></entry
>           <entry
><literal
>WM/EncodingSettings</literal
></entry
>        <entry
><literal
>ENCODERSETTINGS</literal
></entry
>        <entry
><literal
>ISFT</literal
></entry
></row>
       <row
><entry
>Encoding Time</entry
>     <entry
></entry
>                           <entry
><literal
>TDEN</literal
></entry
>    <entry
></entry
>                                  <entry
><literal
>WM/EncodingTime</literal
></entry
>            <entry
><literal
>ENCODINGTIME</literal
></entry
>           <entry
><literal
>IDIT</literal
></entry
></row>
       <row
><entry
>Grouping</entry
>          <entry
><literal
>GRP1</literal
></entry
>    <entry
><literal
>GRP1</literal
></entry
>    <entry
><literal
>©grp</literal
></entry
>           <entry
></entry
>                                              <entry
><literal
>GROUPING</literal
></entry
>               <entry
></entry
></row>
       <row
><entry
>Initial Key</entry
>       <entry
><literal
>TKEY</literal
></entry
>    <entry
><literal
>TKEY</literal
></entry
>    <entry
></entry
>                                  <entry
><literal
>WM/InitialKey</literal
></entry
>              <entry
><literal
>INITIALKEY</literal
></entry
>             <entry
></entry
></row>
       <row
><entry
>ISRC</entry
>              <entry
><literal
>TSRC</literal
></entry
>    <entry
><literal
>TSRC</literal
></entry
>    <entry
><literal
>ISRC</literal
></entry
>           <entry
><literal
>WM/ISRC</literal
></entry
>                    <entry
><literal
>ISRC</literal
></entry
>                   <entry
><literal
>ISRC</literal
></entry
></row>
       <row
><entry
>Language</entry
>          <entry
><literal
>TLAN</literal
></entry
>    <entry
><literal
>TLAN</literal
></entry
>    <entry
><literal
>LANGUAGE</literal
></entry
>       <entry
><literal
>WM/Language</literal
></entry
>                <entry
><literal
>LANGUAGE</literal
></entry
>               <entry
><literal
>ILNG</literal
></entry
></row>
       <row
><entry
>Lyricist</entry
>          <entry
><literal
>TEXT</literal
></entry
>    <entry
><literal
>TEXT</literal
></entry
>    <entry
><literal
>LYRICIST</literal
></entry
>       <entry
><literal
>WM/Writer</literal
></entry
>                  <entry
><literal
>LYRICIST</literal
></entry
>               <entry
><literal
>IWRI</literal
></entry
></row>
       <row
><entry
>Lyrics</entry
>            <entry
><literal
>USLT</literal
></entry
>    <entry
><literal
>USLT</literal
></entry
>    <entry
><literal
>©lyr</literal
></entry
>           <entry
><literal
>WM/Lyrics</literal
></entry
>                  <entry
><literal
>LYRICS</literal
></entry
>                 <entry
></entry
></row>
       <row
><entry
>Media</entry
>             <entry
><literal
>TMED</literal
></entry
>    <entry
><literal
>TMED</literal
></entry
>    <entry
><literal
>SOURCEMEDIA</literal
></entry
>    <entry
></entry
>                                              <entry
><literal
>SOURCEMEDIA</literal
></entry
>            <entry
><literal
>IMED</literal
></entry
></row>
       <row
><entry
>Mood</entry
>              <entry
></entry
>                           <entry
><literal
>TMOO</literal
></entry
>    <entry
></entry
>                                  <entry
><literal
>WM/Mood</literal
></entry
>                    <entry
><literal
>MOOD</literal
></entry
>                   <entry
></entry
></row>
       <row
><entry
>Original Album</entry
>    <entry
><literal
>TOAL</literal
></entry
>    <entry
><literal
>TOAL</literal
></entry
>    <entry
><literal
>ORIGINALALBUM</literal
></entry
>  <entry
><literal
>WM/OriginalAlbumTitle</literal
></entry
>      <entry
><literal
>ORIGINALALBUM</literal
></entry
>          <entry
></entry
></row>
       <row
><entry
>Original Artist</entry
>   <entry
><literal
>TOPE</literal
></entry
>    <entry
><literal
>TOPE</literal
></entry
>    <entry
><literal
>ORIGINALARTIST</literal
></entry
> <entry
><literal
>WM/OriginalArtist</literal
></entry
>          <entry
><literal
>ORIGINALARTIST</literal
></entry
>         <entry
></entry
></row>
       <row
><entry
>Original Date</entry
>     <entry
><literal
>TORY</literal
></entry
>    <entry
><literal
>TDOR</literal
></entry
>    <entry
><literal
>ORIGINALDATE</literal
></entry
>   <entry
><literal
>WM/OriginalReleaseYear</literal
></entry
>     <entry
><literal
>ORIGINALDATE</literal
></entry
>           <entry
></entry
></row>
       <row
><entry
>Performer</entry
>         <entry
><literal
>IPLS</literal
></entry
>    <entry
><literal
>TMCL</literal
></entry
>    <entry
><literal
>PERFORMER</literal
></entry
>      <entry
></entry
>                                              <entry
><literal
>PERFORMER</literal
></entry
>              <entry
><literal
>ISTR</literal
></entry
></row>
       <row
><entry
>Picture</entry
>           <entry
><literal
>APIC</literal
></entry
>    <entry
><literal
>APIC</literal
></entry
>    <entry
><literal
>covr</literal
></entry
>           <entry
><literal
>WM/Picture</literal
></entry
>                 <entry
><literal
>METADATA_BLOCK_PICTURE</literal
></entry
> <entry
></entry
></row>
       <row
><entry
>Publisher</entry
>         <entry
><literal
>TPUB</literal
></entry
>    <entry
><literal
>TPUB</literal
></entry
>    <entry
><literal
>PUBLISHER</literal
></entry
>      <entry
><literal
>WM/Publisher</literal
></entry
>               <entry
><literal
>PUBLISHER</literal
></entry
>              <entry
><literal
>IPUB</literal
></entry
></row>
       <row
><entry
>Rating</entry
>            <entry
><literal
>POPM</literal
></entry
>    <entry
><literal
>POPM</literal
></entry
>    <entry
><literal
>rate</literal
></entry
>           <entry
><literal
>WM/SharedUserRating</literal
></entry
>        <entry
><literal
>RATING</literal
></entry
>                 <entry
><literal
>IRTD</literal
></entry
></row>
       <row
><entry
>Release Country</entry
>   <entry
><literal
>TXXX:RELEASECOUNTRY</literal
></entry
> <entry
><literal
>TXXX:RELEASECOUNTRY</literal
></entry
>       <entry
></entry
>    <entry
></entry
>                                              <entry
><literal
>RELEASECOUNTRY</literal
></entry
>         <entry
><literal
>ICNT</literal
></entry
></row>
       <row
><entry
>Release Date</entry
>      <entry
></entry
>                           <entry
><literal
>TDRL</literal
></entry
>    <entry
><literal
>RELEASEDATE</literal
></entry
>    <entry
></entry
>                                              <entry
><literal
>RELEASEDATE</literal
></entry
>            <entry
></entry
></row>
       <row
><entry
>Remixer</entry
>           <entry
><literal
>TPE4</literal
></entry
>    <entry
><literal
>TPE4</literal
></entry
>    <entry
><literal
>REMIXER</literal
></entry
>        <entry
><literal
>WM/ModifiedBy</literal
></entry
>              <entry
><literal
>REMIXER</literal
></entry
>                <entry
><literal
>IEDT</literal
></entry
></row>
       <row
><entry
>Sort Album</entry
>        <entry
><literal
>TSOA</literal
></entry
>    <entry
><literal
>TSOA</literal
></entry
>    <entry
><literal
>soal</literal
></entry
>           <entry
><literal
>WM/AlbumSortOrder</literal
></entry
>          <entry
><literal
>ALBUMSORT</literal
></entry
>              <entry
></entry
></row>
       <row
><entry
>Sort Album Artist</entry
> <entry
><literal
>TSO2</literal
></entry
>    <entry
><literal
>TSO2</literal
></entry
>    <entry
><literal
>soaa</literal
></entry
>           <entry
></entry
>                                              <entry
><literal
>ALBUMARTISTSORT</literal
></entry
>        <entry
></entry
></row>
       <row
><entry
>Sort Artist</entry
>       <entry
><literal
>TSOP</literal
></entry
>    <entry
><literal
>TSOP</literal
></entry
>    <entry
><literal
>soar</literal
></entry
>           <entry
><literal
>WM/ArtistSortOrder</literal
></entry
>         <entry
><literal
>ARTISTSORT</literal
></entry
>             <entry
></entry
></row>
       <row
><entry
>Sort Composer</entry
>     <entry
><literal
>TSOC</literal
></entry
>    <entry
><literal
>TSOC</literal
></entry
>    <entry
><literal
>soco</literal
></entry
>           <entry
></entry
>                                              <entry
><literal
>COMPOSERSORT</literal
></entry
>           <entry
></entry
></row>
       <row
><entry
>Sort Name</entry
>         <entry
><literal
>TSOT</literal
></entry
>    <entry
><literal
>TSOT</literal
></entry
>    <entry
><literal
>sonm</literal
></entry
>           <entry
><literal
>WM/TitleSortOrder</literal
></entry
>          <entry
><literal
>TITLESORT</literal
></entry
>              <entry
></entry
></row>
       <row
><entry
>Subtitle</entry
>          <entry
></entry
>                           <entry
><literal
>TSST</literal
></entry
>    <entry
><literal
>SUBTITLE</literal
></entry
>       <entry
><literal
>WM/SubTitle</literal
></entry
>                <entry
><literal
>SUBTITLE</literal
></entry
>               <entry
><literal
>PRT1</literal
></entry
></row>
       <row
><entry
>Website</entry
>           <entry
><literal
>WOAR</literal
></entry
>    <entry
><literal
>WOAR</literal
></entry
>    <entry
><literal
>WEBSITE</literal
></entry
>        <entry
><literal
>WM/AuthorURL</literal
></entry
>               <entry
><literal
>WEBSITE</literal
></entry
>                <entry
><literal
>IBSU</literal
></entry
></row>
       <row
><entry
>Work</entry
>              <entry
><literal
>TIT1</literal
></entry
>    <entry
><literal
>TIT1</literal
></entry
>    <entry
><literal
>©wrk</literal
></entry
>           <entry
><literal
>WM/ContentGroupDescription</literal
></entry
> <entry
><literal
>WORK</literal
></entry
>                   <entry
></entry
></row>
       <row
><entry
>WWW Audio File</entry
>    <entry
><literal
>WOAF</literal
></entry
>    <entry
><literal
>WOAF</literal
></entry
>    <entry
></entry
>                                  <entry
><literal
>WM/AudioFileURL</literal
></entry
>            <entry
><literal
>WWWAUDIOFILE</literal
></entry
>           <entry
></entry
></row>
       <row
><entry
>WWW Audio Source</entry
>  <entry
><literal
>WOAS</literal
></entry
>    <entry
><literal
>WOAS</literal
></entry
>    <entry
></entry
>                                  <entry
><literal
>WM/AudioSourceURL</literal
></entry
>          <entry
><literal
>WWWAUDIOSOURCE</literal
></entry
>         <entry
></entry
></row>
     </tbody>
   </tgroup>
 </table>

<para
>Anmärkningar rörande översättningarna till gemensamma ramnamn: <itemizedlist>
<listitem
><para
>Antalet gemensamma ramnamn är begränsat av det faktum att en rimlig avbildning måste vara möjlig för alla filformat som stöds. De flesta taggar stöder ramar med godtyckliga namn, de används om ingen specifik ram är tillgänglig (t.ex. namnen med stora bokstäver i kolumnen MP4). Om ingen sådan möjlighet finns, kanske inte vissa ramtyper stöds för formatet, t.ex. Author och Performer för ASF (WMA). </para
></listitem>
<listitem
><para
>Avbildningarna är inte godtyckligt valda, de är inriktade på användning av ramarna i andra program och apparater. Sålunda tyder inte ID3v2-ramen "TPE2 - Band/orkester/ackompanjemang" på en användning som Album Artist, men det används ofta. Den verkliga betydelsen av ID3v2 är å andra sidan orsaken till att ramen används för orkestern vid import (t.ex. från Discogs), även om det kan verka lite konstigt för andra taggformat. </para
></listitem>
<listitem
><para
>Avbildningarna är inte alltid bijektiva. Så ID3v2.3 använder en IPLS-ram för både Arranger och Performer. Vid återläsning visas båda ramarna som "Arranger". </para
></listitem>
<listitem
><para
>Ramarna Arranger och Performer använder ett särskilt format för sina innehåll: "medverkan 1|medverkande 1|medverkan 2|medverkade 2|...", exempelvis "Körledare|Ernst Dunshirn|Sångsopran|Anna Netrebko". Det skapar IPLS (ID3v2.3)- eller TIPL/TMCL (ID3v2.4)-ramar med en stränglista med det angivna formatet ("|" används som avskiljare mellan strängarna). Värden med det här formatet används också när data importeras från servrar som erbjuder informationen. </para
></listitem>
<listitem
><para
>För explicit använda ett specifikt ramnamn som har en konflikt med ett gemensamt ramnamn, inled med ett utropstecken. Om exempelvis en ram av typ "<replaceable
>Media</replaceable
>" i en Vorbis-kommentar skapar en ram vid namn "<literal
>SOURCEMEDIA</literal
>" på grund av den gemensamma typavbildningen. För att lägga till en ram vid namn "<literal
>MEDIA</literal
>" och inte "<literal
>SOURCEMEDIA</literal
>", använd "<literal
>!MEDIA</literal
>" för att tvinga användning av det explicita namnet. </para
></listitem>
<listitem
><para
>Om du behöver en ram som inte finns i listan, har du möjlighet att skriva in godtyckliga namn genom att använda knappen <guibutton
>Lägg till</guibutton
>. Ramnamn som ofta används kan läggas till i <guilabel
>Egna ramar</guilabel
> under inställningen <guilabel
>Etiketter</guilabel
>, och är sedan tillgängliga under <guilabel
>Snabbåtkomstramar</guilabel
>. </para
></listitem>
</itemizedlist>
</para>

</sect2>
<!--end manpage ignore-->

<sect2 id="synchronized-lyrics">
<title
>Synkroniserad sångtext och händelsetidskoder</title>

<para
>För information synkroniserad med ljuddata är en särskild editor tillgänglig. Sådana ramar stöds för ID3v2.3.0- och ID3v2.4.0-taggar. För att lägga till en sådan ram, måste det specifika ramnamnet väljas i listan som dyker upp när knappen <guibutton
>Lägg till</guibutton
> klickas: respektive <guilabel
>Synkroniserad sångtext</guilabel
> eller <guilabel
>Händelsetidskoder</guilabel
>. Editorn är samma för båda typerna, men för händelsetidskoderna är bara en fördefinierad uppsättning händelser tillgängliga, medan för de synkroniserade sångtexterna måste text matas in. I det följande förklaras synkroniserad sångtext. </para>
<para
>En fil som har en ID3v2-tagg markeras, och sångtexteditorn startas genom att använda <guibutton
>Lägg till</guibutton
> och välja <guilabel
>Synkroniserad sångtext</guilabel
>. För en befintlig synkroniserad sångtextram, markeras den och <guibutton
>Redigera</guibutton
> klickas. Spelaren öppnas automatiskt med aktuell fil så att filen kan spelas och pausas för att synkronisera sångtexten. </para>
<para
>Inställningarna längst upp i SYLT-editorn behöver normalt inte ändras. Om sångtexten innehåller tecken som inte finns i teckenuppsättningen Latin 1, är det lämpligt att ändra textkodningen till UTF16 (eller UTF8 för ID3v2.4.0). För engelsk sångtext och maximal kompatibilitet bör ISO-8859-1 användas. </para>
<para
>Sektionen <guilabel
>Sångtext</guilabel
> har fem knappar längst upp. <guibutton
>Lägg till</guibutton
> lägger till en ny tidshändelse i tabellen. Tiden tas från spelarens position, och att lägga till en post när spåret spelas lägger därmed till en rad för positionen som spelas just nu. Händelserna i tabellen måste vara kronologiskt ordnade, och därför infogas raden i enlighet med det. Poster med en ogiltig tid hanteras speciellt: om raden som för närvarande är markerad har en ogiltig tid, ersätts dess tidstämpel med aktuell tid istället för att lägga till en ny rad. Om den aktuella tiden inte är ogiltig, används den första raden med en ogiltig tid om det finns någon. Beteendet bör förenkla tillägg av tidsstämplar om sångtexten redan finns i tabellen men tidsstämplarna saknas (vilket är fallet när osynkroniserad sångtext importeras). Observera att den ogiltiga tiden representeras som 00:00.00, dvs. samma som tiden i spårets absoluta början, som inte är ogiltig. För att göra tiden ogiltig, tryck på tangenten <keycap
>Delete</keycap
>, eller använd <guimenu
>Rensa</guimenu
> i den sammanhangsberoende menyn. Nya rader som infogas genom att använda <guimenu
>Infoga rad</guimenu
> i den sammanhangsberoende menyn eller som skapas när osynkroniserad sångtext importeras med <guibutton
>Från klippbord</guibutton
> eller <guibutton
>Importera</guibutton
> innehåller också ogiltiga tidsstämplar. Rader i tabellen kan tas bort genom att klicka på knappen <guibutton
>Ta bort</guibutton
> eller använda <guimenu
>Ta bort rader</guimenu
> från den sammanhangsberoende menyn. </para>
<para
>Synkroniserad sångtext kan importeras från en fil genom att använda <guibutton
>Importera</guibutton
>. Förväntat format är enkel eller förbättrad LRC. Om den markerade filen inte innehåller en hakparentes på första raden, antas den vara en enkel textfil med osynkroniserad sångtext. Raderna från en sådan fil importeras med ogiltiga tidsstämplar. Tidsinformationen kan läggas till genom att använda knappen <guibutton
>Lägg till</guibutton
> eller med manuell inmatning. Det är också möjligt att importera sångtext genom att kopiera och klistra in genom att använda <guilabel
>Från klippbord</guilabel
>. Synkroniserad sångtext kan skrivas till LRC-filer genom att använda <guibutton
>Exportera</guibutton
>. Observera att bara poster med giltiga tidsstämplar exporteras, och att posterna sorteras enligt tid. Poster med ogiltig tid lagras inte heller i SYLT-ramarna, så säkerställ att all tidsinformation innan dialogrutan lämnas. </para>
<para
><ulink url="http://id3.org/id3v2.4.0-frames"
>ID3-specifikationen</ulink
> föreslår en tidsstämpel för varje stavelse. Dock stöder de flesta spelare bara granulariteten rad eller mening. &kid3; följer samma konvention som <ulink url="http://www.compuphase.com/software_sylteditor.htm"
>SYLT-editorn</ulink
> för att stödja båda användningsfallen. Text som matas in i tabellen antas starta en ny rad om den inte börjar med ett mellanslag eller ett bindestreck. Undantag av regeln är möjliga genom att inleda an rad med ett understreck ('_') för att tvinga en fortsättning, eller ett nummertecken ('#') för att tvinga en ny rad. Dessa undantagstecken lagras inte i SYLT-ramen. Inne i SYLT-ramen, börjar nya rader med ett nyradstecken (hexadecimalt 0A) medan fortsättningar inte gör det. När SYLT-ramar läses in, kontrollerar &kid3; om den första posten startar med en nyrad. Om det inte är fallet, antas att alla poster är nyrader och att ingen stavelsefortsättning används. </para>
<para
>Medan spåret spelas, färgläggs raden som hör ihop med positionen som för närvarande spelas upp, så att synkroniseringsinformationens riktighet kan verifieras. Om en förskjutning måste läggas till för en eller flera tidsstämplar, kan det åstadkommas med <guimenu
>Lägg till förskjutning</guimenu
> i den sammanhangsberoende menyn. Negativa värden kan användas för att reducera tiden. Genom att använda <guimenu
>Gå till position</guimenu
> i den sammanhangsberoende menyn, är det möjligt att ställa in uppspelningsposition till den markerade radens tid. </para>
<para>
<emphasis
>Rekommenderad procedur för att lägga till ny synkroniserad sångtext</emphasis>
<itemizedlist>
<listitem
><para
>Hämta den osynkroniserade sångtexten, t.ex. genom att använda <menuchoice
><guimenu
>Sångtext</guimenu
><guimenuitem
>Inbädda sångtext</guimenuitem
></menuchoice
> i fillistans sammanhangsberoende meny.</para
></listitem>
<listitem
><para
>Kopiera den osynkroniserade sångtexten till klippbordet. Gå bara till raden <guilabel
>Sångtext</guilabel
> i ramtabellen och tryck på <keycombo
>&Ctrl;<keycap
>C</keycap
></keycombo
>.</para
></listitem>
<listitem
><para
>Lägg till en synkroniserad sångtextram (<guibutton
>Lägg till...</guibutton
>, <guilabel
>Synkroniserad sångtext</guilabel
>, <guibutton
>Ok</guibutton
>), klicka på <guibutton
>Från klippbord</guibutton
>.</para
></listitem>
<listitem
><para
>Nu finns alla raderna från den osynkroniserade sångtexten i tabellen, med alla tidsstämplar ogiltiga (0:0:0.00). Tomma poster kan tas bort i förväg.</para
></listitem>
<listitem
><para
>Starta uppspelning av sången genom att klicka på uppspelningsknappen <guibutton
>&#9658;</guibutton
> i uppspelningsverktygsraden längst ner i huvudfönstret.</para
></listitem>
<listitem
><para
>När nästa sångtextrad med ogiltig tidsstämpel, klicka på <guibutton
>Lägg till</guibutton
> eller tryck på <keycombo
>&Alt;<keycap
>A</keycap
></keycombo
>, så uppdateras tidsstämpeln.</para
></listitem>
<listitem
><para
>Fortsätt på detta sätt tills alla tidsstämplar är uppdaterade. Om du missade någonting, stoppa uppspelningen och nollställ tidsstämplarna med tangenten <keycap
>Delete</keycap
> eller genom att markera dem och använda <guimenuitem
>Rensa</guimenuitem
> i den sammanhangsberoende menyn. För att starta om uppspelning från en given tidsstämpel, använd <guimenuitem
>Gå till position</guimenuitem
> från den sammanhangsberoende menyn. </para
></listitem>
</itemizedlist>
</para>
</sect2>

</sect1>

<sect1 id="file-menu">
<title
>Menyn Arkiv</title>
<para>
<variablelist>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;<keycap
>O</keycap
></keycombo
> </shortcut
> <guimenu
>Arkiv</guimenu
> <guimenuitem
>Öppna...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Öppnar en katalog.</action
> Alla filer som matchar den markerade filens namnfilter visas i fillistrutan och den valda filen markeras.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Öppna senaste</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Öppnar en nyligen öppnad katalog.</action
></para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;<keycap
>D</keycap
></keycombo
> </shortcut
> <guimenu
>Arkiv</guimenu
> <guimenuitem
>Öppna katalog...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Öppnar en katalog.</action
> Alla filer som matchar den markerade filens namnfilter visas i fillistrutan.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycap
>F5</keycap
> </shortcut
> <guimenu
>Arkiv</guimenu
> <guimenuitem
>Läs in igen</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Uppdatera katalog.</action
> Ändrade filer måste först sparas. Expanderade underkataloger dras ihop.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;<keycap
>S</keycap
></keycombo
> </shortcut
> <guimenu
>Arkiv</guimenu
> <guimenuitem
>Spara</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Sparar alla ändrade filer i katalogen.</action
> De ändrade filerna är markerade med en disksymbol i fillistrutan. Om några filnamn har ändrats, byts namnen på de filerna.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Återställ</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Återställer ändringarna av en eller flera filer.</action
> Om inga filer är markerade i fillistrutan återställs ändringarna av alla filer, annars återställs bara ändringar av de markerade filerna. </para
></listitem>
</varlistentry>

<varlistentry id="import">
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Importera...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Importdialogrutan</action
> kan användas för att direkt importera data från en freedb.org server, från en MusicBrainz server, från Discogs, Amazon eller andra källor för albumspårlistor med textformat. </para>
<para id="import-freedb"
>Import från en freedb.org server är möjlig genom att använda en dialogruta som dyker upp när <guibutton
>Från server:</guibutton
> <guibutton
>gnudb.org</guibutton
> väljes. Artisten och albumnamnet att söka efter kan skrivas in i de två översta fälten, och albumen som matchar frågan visas när <guibutton
>Sök</guibutton
> klickas och resultaten från <ulink url="http://www.gnudb.org"
>www.gnudb.org</ulink
> tas emot. Import av spårdata för ett album görs genom att dubbelklicka på albumet i listan. Vilken freedb.org server att använda för import kan väljas, samt CGI-sökvägen. Importerad data visas i förhandsgranskningstabellen i importdialogrutan. När du är nöjd med de visade spåren kan de importeras genom att avsluta importdialogrutan med <guibutton
>Ok</guibutton
>. </para>
<para id="import-discogs"
>En sökning på Discogs server kan utföras genom att använda <guibutton
>Discogs</guibutton
>. Som i dialogrutan <guibutton
>gnudb.org</guibutton
>, kan du mata in artist och album och sedan välja bland en lista av utgåvor. En <guilabel
>Symbol</guilabel
> kan matas in för att använda programmeringsgränssnittet RESTful i Discogs istället för deras webbgränssnitt, vilket ofta ändras, och därigenom tar sönder importtolkningen. Du måste registrera för att få ett konto på <ulink url="https://www.discogs.com/"
>Discogs</ulink
>, och sedan generera en symbol på deras webbplats (Settings/Developers, Generate new token). Glöm inte att <guibutton
>Spara inställningar</guibutton
> efter att ha matat in symbolen för att också kunna använda den i efterföljande frågor. Om <guilabel
>Standardtaggar</guilabel
> är markerat, importeras standardinformationen, <abbrev
>t.ex.</abbrev
> artist, album och titel. Om <guilabel
>Ytterligare taggar</guilabel
> är markerat, importeras mer information om tillgängligt, <abbrev
>t.ex.</abbrev
> utövare, arrangör eller utgivare. Om <guilabel
>Omslag</guilabel
> är markerat, laddas omslaget ner om tillgängligt. </para>
<para id="import-amazon"
>En sökning på Amazon kan utföras genom att använda <guibutton
>Amazon</guibutton
> Som i dialogrutan <guibutton
>gnudborg</guibutton
>, kan du mata in artist och album och sedan välja bland en lista av utgåvor. Om <guilabel
>Ytterligare taggar</guilabel
> är markerat, importeras mer information om tillgängligt, t.ex. utövare, arrangör eller utgivare. Om <guilabel
>Omslag</guilabel
> är markerat, laddas omslaget ner om tillgängligt. </para>
<para id="import-musicbrainzrelease"
>Du kan söka på samma väg i MusicBrainz utgivningsdatabas genom att använda <guibutton
>Från MusicBrainz Release</guibutton
>. Arbetsflödet är samma som beskrivs för <guibutton
>Från gnudb.org</guibutton
>. </para>
<para id="import-musicbrainz"
>Import från en MusicBrainz server är möjlig genom att använda dialogrutan som dyker upp när <guibutton
>Från MusicBrainz Fingerprint</guibutton
> väljes. Servern kan väljas som i freedb importdialogrutan. Nedan visas en tabell som visar importerad spårdata. Den högra kolumnen visar tillståndet för förfrågan till MusicBrainz, vilket börjar med "Väntande" när dialogrutan öppnas. Därefter slås fingeravtrycket upp och om det inte ger något resultat, görs en annan uppslagning med taggarna i filen. Sålunda kan det vara till hjälp för en lyckad MusicBrainz uppslagning att lagra känd information (t.ex. artist och album) i taggarna innan importen. Om ett resultat hittas, slutar sökningen i tillståndet "Igenkänd", annars hittades ingenting eller hittades flera tvetydiga resultat och ett av dem måste väljas av användaren. <guibutton
>Ok</guibutton
> och <guibutton
>Verkställ</guibutton
> använder importerad data, medan <guibutton
>Avbryt</guibutton
> stänger dialogrutan. Stängningen kan ta en stund, eftersom hela MusicBrainz maskineri måste stängas av. </para>

<para id="import-text"
>För att importera textdata, öppnar <guibutton
>Från fil/klippbord</guibutton
> en underdialogruta där flera förinställda importformat är tillgängliga. De två första, "CSV unquoted" och "CSV quoted" kan användas för att importera data som exporterades med exportdialogrutan. CSV-data kan redigera med ett kalkylark, och måste skrivas ut genom att använda tabulator som avgränsare. Import ska sedan vara möjlig genom att använda "CSV quoted", som är flexiblare än "CSV unquoted". Dock kan dess fält inte innehålla några dubbla citationstecken. Om du bara exporterar från &kid3; och importerar senare, kan "CSV unquoted" användas som ett enkelt format i detta syfte. Observera att det också finns kommandona "Exportera CSV" och "Importera CSV" i fillistans sammanhangsberoende meny, som använder skript för att exportera och importera CSV-data på ett fullständigare, kraftfullare och flexiblare sätt. </para>

<para
>Nästa format, "freedb &HTML;-text" kan användas för att kopiera information från en &HTML;-sida på <ulink url="http://freedb.org"
>freedb.org</ulink
>. Sök efter ett album på freedb, så visas önskad information i webbläsaren. Kopiera innehållet till klippbordet. Klicka därefter på knappen <guibutton
>Från klippbord</guibutton
> så visas de importerade spåren i förhandsgranskningstabellen längst upp i dialogrutan. Om du är nöjd med importerad data, avsluta dialogrutan med <guibutton
>Ok</guibutton
>, vilket infogar data i den aktuella katalogens taggar. Målet (<guilabel
>Tagg 1</guilabel
>, <guilabel
>Tagg 2</guilabel
> eller <guilabel
>Tagg 1 och tagg 2</guilabel
>) kan väljas med en kombinationsruta. Filerna i den aktuella katalogen ska vara i rätt ordning för att få sina taggar tilldelade. Det är fallet om de är numrerade. </para>
<para
>Nästa förinställda importformat, "freedb &HTML;-källkod", kan användas om data är tillgängligt som ett &HTML;-dokument. Import är möjlig genom att använda knappen <guibutton
>Från fil</guibutton
>, som öppnar en filväljare, eller genom att kopiera innehållet från en editor och sedan importera från klippbordet. Formatet kan vara användbart för nerkopplad import, även om &HTML;-dokumentet också skulle kunna öppnas i en webbläsare och sedan importeras med det första formatet via klippbordet. </para>
<para
>Fler förinställda format, t.ex. "Spår titel tid" är tillgängliga. Ett tomt eget format kan skapas med <guibutton
>Lägg till</guibutton
> för att sedan ställas in av användaren. Två rader nedanför kan formatnamnet ställas in med ett reguljärt uttryck för att lagra fälten från den importerade texten. Det första reguljära uttrycket tolkas en gång per dokument för att samla in data för varje album, såsom artist, album, år och genre. Den andra raden försöker matcha från dokumentets början till slut för att hämta spårdata, oftast nummer och titel. De reguljära uttrycken inkluderar alla funktioner som erbjuds av &Qt;, vilket är det mesta som Perl erbjuder. Parenteskonstruktioner "(..)" skapar tagningsbuffertar för fälten att importera och föregås av &kid3; specifika koder för att ange vilket fält som ska lagras. Koderna är samma som används för filnamnsformat, förutom koderna listade nedan, är alla ramnamn möjliga: </para>

<para id="format-codes">
<itemizedlist>
<listitem
><para
>%s %{title} Titel (Låt)</para
></listitem>
<listitem
><para
>%a %{artist} Artist</para
></listitem>
<listitem
><para
>%l %{album} Album</para
></listitem>
<listitem
><para
>%c %{comment} Kommentar</para
></listitem>
<listitem
><para
>%y %{year} År</para
></listitem>
<listitem
><para
>%t %{track} Spår</para
></listitem>
<listitem
><para
>%g %{genre} Genre</para
></listitem>
<listitem
><para
>%d %{duration} Längd</para
></listitem>
</itemizedlist>
</para>

<para
>Exempelvis kan ett reguljärt uttryck för spår (andra raden) för att importera från en <filename class="extension"
>.m3u</filename
>-spellista vara "<literal
>%{track}(\d+)\s+%{title}(\S[^\r\n]*)\.mp3[\r\n]</literal
>". Alla format kan ändras genom att redigera de reguljära uttrycken och namnet, och därefter klicka på <guibutton
>Spara inställningar</guibutton
>. De lagras i filen <filename
>kid3rc</filename
> i inställningskatalogen. Filen kan redigeras direkt för att få fler importformat, eller kan tas bort för att återgå till standardformaten. Format kan tas bort genom att använda <guibutton
>Ta bort</guibutton
>. </para>
<para
><guilabel
>Noggrannhet</guilabel
> visar en uppskattning av hur bra den importerade informationen motsvarar givna spår. Den använder spårlängder eller filnamn för att beräkna likhetsnivån i procent. <guilabel
>Omslag</guilabel
> visar webbadressen för albumets omslagsbild som kommer att laddas ner. </para>
<para
>För att kontrollera om de importerade spåren motsvarar aktuell uppsättning filer, kan de importerade spårens längd jämföras med filernas längd. Alternativet kan aktiveras med kryssrutan <guibutton
>Kontrollera maximal tillåten tidsskillnad (s):</guibutton
> och den maximalt tolererade tidsskillnaden kan ställas in i sekunder. Om en avvikelse i längd detekteras visas den med en röd bakgrund i förhandsgranskningstabellen. </para>
<para
>Om filerna är ordnade på annat sätt än de importerade spåren, måste deras tilldelade spår ändras. Uppgiften kan förenklas genom att använda alternativet <guilabel
>Matcha med</guilabel
> och knapparna <guibutton
>Längd</guibutton
>, <guibutton
>Spår</guibutton
> och <guibutton
>Titel</guibutton
>, vilket ordnar om spåren enligt motsvarande fält. För att korrigera tilldelningarna manuellt, kan ett spår dras med <mousebutton
>vänster</mousebutton
> musknapp och tangenten &Ctrl; nedtryckt, och därefter släppas på den nya platsen. </para>
<para
>När importdialogrutan öppnas innehåller den taggarnas verkliga innehåll. Taggtypen (Tagg 1, Tagg 2, Tagg 1 och tagg 2) kan väljas med kombinationsrutan <guilabel
>Mål</guilabel
>. Knappen till höger om kombinationsrutan kan användas för att återställa tabellen till taggarnas nuvarande innehåll. Kryssrutorna i den första tabellkolumnen kan användas för att markera spåren som är importerade. Det kan vara användbart om en katalog innehåller spåren för båda cd-skivorna av en dubbel-cd, och bara spåren på den andra cd-skivan behöver importeras. </para>
<para
>För att identifiera spår som importeras är det möjligt att visa filnamnen eller hela sökvägarna till filerna genom att använda den sammanhangsberoende menyn i tabellrubrikerna. Värdena i importtabellen kan redigeras. Ångringsknappen till höger om kombinationsrutan <guilabel
>Mål</guilabel
> kan användas för att återställa taggarnas innehåll, vilket också kan vara användbart efter att ha ändrat <guilabel
>Mål</guilabel
>. </para>
<para
>Nästan alla dialogrutornas funktioner har knappen <guibutton
>Spara inställningar</guibutton
>, som kan användas för att beständigt lagra dialogspecifika inställningar och fönsterstorlekar. </para>

<para id="import-tags"
><guibutton
>Från taggar</guibutton
> leder till en underdialogruta för att tilldela taggramar från innehållet i andra taggramar. Det kan användas för att helt enkelt kopiera information mellan taggar eller extrahera en del från en ram och infoga den i en annan. </para>
<para
>Liksom i dialogrutan <link linkend="import-text"
>Importera från fil/klippbord</link
> finns det fritt inställningsbara format för att utföra olika åtgärder. Format för att kopiera albumvärdet till albumartist, tonsättare eller dirigent, och för att extrahear spårnummer från titelfält som innehåller ett nummer är redan fördefinierade. Det finns också ett format för att extrahera en undertitel från ett titelfält. </para>
<para
>Följande exempel förklarar hur man lägger till ett eget format, vilket också tilldelar informationen från undertiteln till kommentarfältet. Skapa ett nytt format genom att använda knappen <guibutton
>Lägg till</guibutton
> och ange ett nytt namn, t.ex. "Undertitel till kommentar". Mata därefter in "<userinput
>%{subtitle}</userinput
>" i <guilabel
>Källa</guilabel
> and "<userinput
>%{comment}(.*)</userinput
>" för <guilabel
>Extrahering</guilabel
> och klicka på <guibutton
>Spara inställningar</guibutton
>. </para>
<para
>Uttrycket i <guilabel
>Källa</guilabel
> kan innehålla <link linkend="format-codes"
>formatkoder</link
> för godtyckliga taggramar, flera koder kan användas för att kombinera innehållet från olika ramar. För varje spår skapas en text från dess taggar genom att använda formatet i <guilabel
>Källa</guilabel
>, och det reguljära uttrycket från <guilabel
>Extrahering</guilabel
> används på texten för att tilldela nya värden till taggarna. Formatkoder används innan lagringsparenteserna för att ange taggramen där den tagna texten ska lagras. Det fungerar på samma sätt som <link linkend="import-text"
>import från fil/klippbord</link
>. </para>
<para
><guimenuitem
>Importera från taggar...</guimenuitem
> är också direkt tillgänglig i menyn <guimenu
>Arkiv</guimenu
>. Skillnaden mellan dessa två funktioner är att importdialogrutans underdialogruta arbetar med alla filer i aktuell katalog, medan menyfunktionen arbetar med de markerade filerna (vilka kan vara i olika kataloger). Menyfunktionen stöder ytterligare en kod "<literal
>%{__return}</literal
>" för att returnera det extraherade värdet, vilket kan vara användbart med kommandorads- och QML-gränssnitten. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Importera från gnudb.org...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Importera från en freedb.org server med gnudb.org albumsökning.</action
> Menyalternativet öppnar samma importdialogruta som <guimenuitem
>Importera...</guimenuitem
> men öppnar direkt dialogrutan <guibutton
>gnudb.org</guibutton
>.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Importera från Discogs...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Importera från Discogs servern</action
> Menyalternativet öppnar samma importdialogruta som <guimenuitem
>Importera..</guimenuitem
> men öppnar direkt dialogrutan <guibutton
>Från Discogs</guibutton
>.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Importera från Amazon...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Importera från Amazon.</action
> Menyalternativet öppnar samma importdialogruta som <guimenuitem
>Importera.</guimenuitem
> men öppnar direkt dialogrutan <guibutton
>Från Amazon</guibutton
>.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Importera från MusicBrainz Release...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Importera från MusicBrainz Release databas.</action
> Menyalternativet öppnar samma importdialogruta som <guimenuitem
>Importera.</guimenuitem
> men öppnar direkt dialogrutan <guibutton
>Från MusicBrainz Release</guibutton
>.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Importera från MusicBrainz Fingerprint...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Importera från en MusicBrainz server.</action
> Menyalternativet öppnar samma importdialogruta som <guimenuitem
>Importera.</guimenuitem
> men öppnar direkt dialogrutan <guibutton
>Från MusicBrainz Fingerprint</guibutton
>.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Importera från taggar...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Som <link linkend="import-tags"
>Från taggar</link
>, men importen gäller de markerade filerna.</para
></listitem>
</varlistentry>

<varlistentry id="batch-import">
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Automatisk import...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Automatisk import</action
> gör att man kan importera information från flera album på diverse webbtjänster. Om kataloger är markerade i fillistan, importeras spårdata för de markerade katalogerna. Om inga kataloger är markerade, importeras alla kataloger i fillistan. </para>
<para
>Taggtypen (Tagg 1, Tagg 2, Tagg 1 och tagg 2) kan väljas med kombinationsrutan <guilabel
>Mål</guilabel
>. </para>
<para
>Profiler bestämmer vilka servrar som kontaktas för att hämta albuminformation. Vissa profiler är fördefinierade (Alla, MusicBrainz, Discogs, Omslag), och egna profiler kan läggas till genom att använda knappen <guibutton
>Lägg till</guibutton
> till höger om kombinationsrutan <guilabel
>Profil</guilabel
>. </para>
<para
>Tabellen nedan visar servrarna som används när albuminformation importeras med användning av den valda profilen. Importprocessen för ett album är klar om all nödvändig information har hittas, så radernas ordning i tabellen är viktig. Den kan ändras genom att använda knapparna <guibutton
>Flytta upp</guibutton
> och <guibutton
>Flytta ner</guibutton
>. <guibutton
>Redigera</guibutton
> kan användas för att ändra en befintlig post. Valet <guibutton
>Server</guibutton
> erbjuder samma servrar som kan användas av importfunktionerna. <guilabel
>Standardtaggar</guilabel
>, <guilabel
>Ytterligare taggar</guilabel
>, <guilabel
>Omslag</guilabel
> bestämmer informationen som ska hämtas från servern. Till sist är <guilabel
>Noggrannhet</guilabel
> den minimala noggrannheten som måste uppnås för att acceptera importerad data. Om noggrannheten är otillräcklig, provas nästa server i listan. Samma dialogruta som innehåller serveregenskaperna dyker upp när <guibutton
>Lägg till</guibutton
> klickas för att lägga till en ny serverpost. Befintliga poster kan tas bort genom att använda <guibutton
>Ta bort</guibutton
>. </para>
<para
>Klicka på <guibutton
>Starta</guibutton
> för att starta en automatisk import i bakgrunden med den valda profilen. Detaljinformation om pågående import visas längst upp i dialogrutan. Processen kan avbrytas med knappen <guibutton
>Avbryt</guibutton
>. </para>
 </listitem>
</varlistentry>

<varlistentry id="browse_pictures">
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Bläddra bland omslag...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Dialogrutan <action
>Bläddra bland omslag</action
> hjälper till att hitta albumomslag. <guilabel
>Artist/Album</guilabel
> fylls i från taggarna om möjligt. <guilabel
>Källa</guilabel
> erbjuder ett antal webbplatser med albumomslag. Webbadressen med artist och album som parametrar finns under namnet. Webbadresskodade värden för artist och album kan infogas genom att använda "<userinput
>%u{artist}</userinput
>" och "<userinput
>%u{album}</userinput
>". Andra värden från taggarna är också möjliga, som beskrivs i <link linkend="configure-kid3"
>Anpassa &kid3;</link
>, <guilabel
>Användaråtgärder</guilabel
>. Fler källor kan matas in efter posten "Egen källa" genom att ersätta "Egen källa" med källans namn, trycka på <keycap
>Enter</keycap
>, därefter infoga webbadressen, och slutligen klicka på <guibutton
>Spara inställningar</guibutton
>. Det resulterande webbläsarkommandot visas längst upp i dialogrutan och kan utföras genom att klicka på <guibutton
>Bläddra</guibutton
>. Webbläsaren, som kan anpassas i inställningarna, startas med den valda källan. En omslagsbild kan sedan dras från webbläsaren till fönstret i &kid3; och tilldelas till de markerade filernas bildram. </para>
<para
>Eftersom inte alla webbläsare stöder drag och släpp av bilder, och bilderna på webbplatser har ofta en webbadress. I sådana fall tar &kid3; emot webbadressen och inte bilden. Om webbadressen pekar på en bild, laddas den ner. Om webbadressen dock refererar till någon annan webbresurs, måste den översättas till motsvarande bild. Sådana avbildningar definieras i tabellen <guilabel
>Webbadressextrahering</guilabel
>. Den vänstra kolumnen <guilabel
>Matcha</guilabel
> innehåller ett reguljärt uttryck som jämförs med webbadressen. Om det matchar, infogas de infångade uttrycken inom parenteser i den högra kolumnens mönster <guilabel
>Bildwebbadress</guilabel
> (i positionerna markerade med \1 <abbrev
>etc.</abbrev
>). Det ersatta reguljära uttrycket innehåller bildens webbadress. På detta sätt kan omslag importeras från Amazon, Google bilder, <abbrev
>etc.</abbrev
> genom att använda drag och släpp. Det är också möjligt att definiera dina egna avbildningar. </para>
</listitem>
</varlistentry>

<varlistentry id="export">
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Exportera...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Exportdialogrutan</action
> används för att lagra data från taggarna i en fil eller på klippbordet. Editorn längst upp visar en förhandsgranskning av data att exportera. Om exporterad data innehåller tabulatortecken, visas exporten i en tabell. Data genereras från taggarna i aktuell katalog enligt det inställda formatet. </para>
<para
>Formatinställningarna liknar dem i importdialogrutan: Det översta fältet innehåller titeln (<abbrev
>t.ex.</abbrev
> "CSV unquoted"), följd av huvudet, som genereras i början av filen. Spårdata följer, och den används för varje spår. Till sist kan avslutningen användas för att generera någon avslutande text. </para>
<para
>Formatfälten innehåller inte reguljära uttryck som i importdialogrutan, men bara formatuttryck för utdata med speciella %-uttryck, som ersätts med värden från taggarna. Det hela fungerar som filnamnsformat, och samma koder används samt några ytterligare. Alla taggramnamn kan användas, inte bara koderna som listas nedan. </para>

<itemizedlist>
<listitem
><para
>%s %{title} Titel (Låt)</para
></listitem>
<listitem
><para
>%a %{artist} Artist</para
></listitem>
<listitem
><para
>%l %{album} Album</para
></listitem>
<listitem
><para
>%c %{comment} Kommentar</para
></listitem>
<listitem
><para
>%y %{year} År</para
></listitem>
<listitem
><para
>%t %{track} Spår (t.ex. 01)</para
></listitem>
<listitem
><para
>%t %{track.n} Spår med fältbredd n (t.ex. 001 för %{track.3})</para
></listitem>
<listitem
><para
>%T %{tracknumber} Spår (utan inledande nollor, t.ex. 1)</para
></listitem>
<listitem
><para
>%g %{genre} Genre</para
></listitem>
<listitem
><para
>%f %{file} Filnamn</para
></listitem>
<listitem
><para
>%p %{filepath} Sökväg</para
></listitem>
<listitem
><para
>%{modificationdate} Ändringsdatum</para
></listitem>
<listitem
><para
>%{creationdate} Skapad datum</para
></listitem>
<listitem
><para
>%u %{url} Webbadress</para
></listitem>
<listitem
><para
>%{dirname} Katalognamn</para
></listitem>
<listitem
><para
>%d %{duration} Längd i minuter:sekunder</para
></listitem>
<listitem
><para
>%D %{seconds} Längd i sekunder</para
></listitem>
<listitem
><para
>%n %{tracks} Antal spår på albumet</para
></listitem>
<listitem
><para
>%e %{extension} Filändelse</para
></listitem>
<listitem
><para
>%O %{tag1} Format på tagg 1 (ID3v1.1 eller tom om den inte finns)</para
></listitem>
<listitem
><para
>%o %{tag2} Formatet på tagg 2 (ID3v2.3.0, ID3v2.4.0, ID3v2.2.0, ID3v2.2.1, Vorbis, APE, MP4, ASF eller tom om den inte finns)</para
></listitem>
<listitem
><para
>%b %{bitrate} Bithastighet i kbit/s</para
></listitem>
<listitem
><para
>%v %{vbr} VBR eller tom (bara för ID3v2.3 med id3lib)</para
></listitem>
<listitem
><para
>%r %{samplerate} Samplingsfrekvens i Hz</para
></listitem>
<listitem
><para
>%m %{mode} Kanalläge (Stereo eller Joint Stereo)</para
></listitem>
<listitem
><para
>%h %{channels} Antal kanaler (1 eller 2)</para
></listitem>
<listitem
><para
>%k %{codec} Kodare (<abbrev
>t.ex.</abbrev
> MPEG 1 Layer 3, MP4, Ogg Vorbis, FLAC, MPC, APE, ASF, AIFF, WAV)</para
></listitem>
</itemizedlist>

<para
>Några få format är fördefinierade. "CSV unquoted" skiljer fälten med tabulatorer. Data med det här formatet kan importeras till &kid3; igen genom att använda importformatet med samma namn. "CSV quoted" omger dessutom fälten med dubbla citationstecken, som förenklar import till kalkylprogram. Dock kan fälten inte innehålla några dubbla citationstecken när det här formatet används. "Extended M3U" och "Extended PLS" genererar spellistor med utökade attribut och absoluta sökvägsnamn. "HTML" kan användas för att generera en &HTML;-sida med hyperlänkar till spår. "Kover &XML;" skapar en fil som kan importeras i omslagsutskriftsprogrammet Kover. "Tekniska detaljer" tillhandahåller information om bithastighet, samplingsfrekvens, kanaler, <abbrev
>etc.</abbrev
> Till sist, är "Eget format" lämnat tomt för att definiera ett eget format. Du kan definiera fler egna format genom att lägga till rader i filen <filename
>kid3rc</filename
> i inställningskatalogen. Övriga format kan anpassas efter dina behov. </para>
<para
>Taggarnas <guilabel
>Källa</guilabel
> för att generera exportdata (<guilabel
>Tagg 1</guilabel
> eller <guilabel
>Tagg 2</guilabel
>) kan väljas med en kombinationsruta. Genom att klicka på <guibutton
>Till fil</guibutton
> eller <guibutton
>Till klippbord</guibutton
> lagrar data i en fil eller på klippbordet. <guibutton
>Ok</guibutton
> och <guibutton
>Avbryt</guibutton
> stänger dialogrutan, medan <guibutton
>Ok</guibutton
> accepterar de nuvarande dialoginställningarna. </para
></listitem>
</varlistentry>

<varlistentry id="create-playlist">
<term
><menuchoice
><guimenu
>Arkiv</guimenu
> <guimenuitem
>Skapa spellista...</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Skapar en spellista.</action
> Spellistans format och innehåll kan ställas in med diverse alternativ.</para>
<para
>Spellistans namn kan vara <guibutton
>Samma som katalognamnet</guibutton
> eller använd ett <guibutton
>Format</guibutton
> med värden från taggarna, <abbrev
>t.ex.</abbrev
> "<userinput
>%{artist} - %{album}</userinput
>", för att få artist- och albumnamn i spellistans filnamn. Formatkoderna är samma för <link linkend="export"
>Exportera</link
>. <guibutton
>Skapa ny tom spellista</guibutton
> skapar en tom spellista med angivet namn. Filändelsen beror på spellisteformatet. </para>
<para
>Den skapade spellistans plats bestäms av valet i kombinationsrutan <guilabel
>Skapa i</guilabel
>. <variablelist>
<varlistentry
><term
>Nuvarande katalog</term>
<listitem
><para
>Spellistan skapas i aktuell katalog och innehåller bara filer från aktuell katalog. Den aktuella katalogen är katalogen där den aktuella filen finns. Om flera filer är markerade, är den aktuella filen troligtvis den senast markerade filen.</para
></listitem
></varlistentry>
<varlistentry
><term
>Varje katalog</term>
<listitem
><para
>En spellista skapas i varje katalog som innehåller listade filer, och varje spellista innehåller den katalogens filer. </para
></listitem
></varlistentry>
<varlistentry
><term
>Toppnivåkatalog</term>
<listitem
><para
>Bara en spellista skapas i toppnivåkataloger (<abbrev
>dvs.</abbrev
> fillistans katalog) och den innehåller de listade filerna i toppnivåkatalogen och alla dess underkataloger. </para
></listitem
></varlistentry>
</variablelist>
</para>
<para
>Spellistans <guilabel
>format</guilabel
> kan vara <guilabel
>M3U</guilabel
>, <guilabel
>PLS</guilabel
> eller <guilabel
>XSPF</guilabel
>. </para>
<para
>Om <guibutton
>Inkludera bara de markerade filerna</guibutton
> är markerad, inkluderas bara de markerade filerna i spellistan. Om en katalog är markerad, är alla dess filer markerade. Om den här kryssrutan inte är aktiverad, inkluderas alla ljudfiler i spellistan. </para>
<para
><guibutton
>Sortera enligt filnamn</guibutton
> väljer det vanliga fallet där filerna är ordnade enligt filnamn. Med <guibutton
>Sortera enligt taggfält</guibutton
>, är det möjligt att sortera enligt en formatsträng med värden från taggfält. Exempelvis kan "<userinput
>%{track.3}</userinput
>" kan användas för att sortera enligt spårnummer ("<userinput
>3</userinput
>" används för att få tre siffror med inledande nollor eftersom strängar används vid sortering). Det är också möjligt att använda flera fält, <abbrev
>t.ex.</abbrev
> "<userinput
>%{genre}%{year}</userinput
>" för att sortera med användning av en sträng sammansatt av genre och år. </para>
<para
>Spellisteposterna har relativa eller absoluta filsökvägar beroende på om <guibutton
>Använd relativ sökväg för filer i spellista</guibutton
> eller <guibutton
>Använd fullständig sökväg för filer i spellista</guibutton
> är valt. </para>
<para
>När <guibutton
>Skriv bara lista med filer</guibutton
> är valt, innehåller spellistan bara sökvägarna till filerna. För att skapa en utökad spellista med ytterligare information, kan en formatsträng anges genom att använda alternativet <guibutton
>Skriv information med användning av</guibutton
>. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;<keycap
>Q</keycap
></keycombo
> </shortcut
> <guimenu
>Arkiv</guimenu
> <guimenuitem
>Avsluta</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Avslutar programmet.</action
></para
></listitem>
</varlistentry>

</variablelist>
</para>

</sect1>

<sect1 id="edit-menu">
<title
>Menyn Redigera</title>
<para>
<variablelist>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Alt;<keycap
>A</keycap
></keycombo
> </shortcut
> <guimenu
>Redigera</guimenu
> <guimenuitem
>Markera alla</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Markerar alla filer.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;&Shift;<keycap
>A</keycap
></keycombo
> </shortcut
> <guimenu
>Redigera</guimenu
> <guimenuitem
>Avmarkera</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Avmarkerar alla filer.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Redigera</guimenu
> <guimenuitem
>Markera alla i katalog</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Markerar alla filer i den aktuella katalogen.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Alt;<keycap
>Uppåtpil</keycap
></keycombo
> </shortcut
> <guimenu
>Redigera</guimenu
> <guimenuitem
>Föregående fil</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Väljer föregående fil</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Alt;<keycap
>Neråtpil</keycap
></keycombo
> </shortcut
> <guimenu
>Redigera</guimenu
> <guimenuitem
>Nästa fil</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Väljer nästa fil</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;<keycap
>F</keycap
></keycombo
> </shortcut
> <guimenu
>Redigera</guimenu
> <guimenuitem
>Sök...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Sök efter strängar i filnamnen och taggarna. Dialogrutan <guilabel
>Sök</guilabel
> är en delmängd av dialogrutan <guilabel
>Ersätt</guilabel
>, som beskrivs nedan. </para
></listitem>
</varlistentry>

<varlistentry id="find-replace">
<term
><menuchoice
><shortcut
> <keycombo
>&Ctrl;<keycap
>R</keycap
></keycombo
> </shortcut
> <guimenu
>Redigera</guimenu
> <guimenuitem
>Ersätt...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Funktionen öppnar en dialogruta för att hitta och ersätta strängar i filnamnen och taggarna. Uppsättningen av ramar där sökningen utförs kan begränsas genom att inaktivera kryssrutan <guilabel
>Markera alla</guilabel
> och markera alla ramar som ska sökas igenom. Det finns också sökalternativ tillgängliga för att söka bakåt, skiftlägesokänsligt och för att använda reguljära uttryck.</para>
<para
>Beroende på antalet filer kan sökningen ta en stund, och därför kan den avbrytas genom att stänga dialogrutan.</para
></listitem>
</varlistentry>

</variablelist>
</para>
</sect1>

<sect1 id="tools-menu">
<title
>Menyn Verktyg</title>
<para>
<variablelist>

<varlistentry id="apply-filename-format">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Verkställ filnamnsformat</guimenuitem
> </menuchoice
></term>
<listitem
><para
>När <guilabel
>Verkställ format automatiskt</guilabel
> stängs av för filnamnsformatet i inställningsdialogrutan, kan menyalternativet användas för att <action
>verkställa det inställda formatet för de markerade filernas namn</action
>. Det kan också användas för att kontrollera om filnamnen motsvarar det inställda formatet genom att verkställa formatet för alla sparade filer och sedan kontrollera om några filer ändrades (och därför markerades med en skivsymbol i fillistrutan). </para
></listitem>
</varlistentry>

<varlistentry id="apply-tag-format">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Verkställ taggformat</guimenuitem
> </menuchoice
></term>
<listitem
><para
>När <guilabel
>Verkställ format automatiskt</guilabel
> stängs av för taggformatet i inställningsdialogrutan, kan menyalternativet användas för att <action
>verkställa det inställda formatet för taggarna i de markerade filerna</action
>. Det kan också användas för att kontrollera om taggarna motsvarar det inställda formatet genom att verkställa formatet för alla sparade filer och sedan kontrollera om några filer ändrades (och därför markerades med en skivsymbol i fillistrutan). </para
></listitem>
</varlistentry>

<varlistentry id="apply-text-encoding">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Verkställ textkodning</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Tilldelar <guilabel
>Textkodning</guilabel
> vald med <menuchoice
><guimenu
>Inställningar</guimenu
><guimenuitem
>Anpassa &kid3;...</guimenuitem
><guimenuitem
>Sektionen Tagg</guimenuitem
><guimenuitem
>Fliken Tagg 2</guimenuitem
></menuchoice
> till alla markerade filerna. Om UTF8 är valt, används UTF16 för ID3v2.3.0 taggar eftersom UTF8 inte stöds för det formatet.</para
></listitem>
</varlistentry>

<varlistentry id="rename-directory">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Byt namn på katalog...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Dialogrutan erbjuder möjligheten att automatiskt byta namn på katalogen som för närvarande är öppen till taggarna i filerna. Flera format är förinställda att inkludera information om artist, album och år i katalognamnet. Det är också möjligt att ange ett eget format och <guibutton
>Redigera</guibutton
> listan med tillgängliga format. Följande speciella koder används för att infoga taggvärden i katalognamnet: </para>

<itemizedlist>
<listitem
><para
>%s %{title} Titel (Låt)</para
></listitem>
<listitem
><para
>%a %{artist} Artist</para
></listitem>
<listitem
><para
>%l %{album} Album</para
></listitem>
<listitem
><para
>%c %{comment} Kommentar</para
></listitem>
<listitem
><para
>%y %{year} År</para
></listitem>
<listitem
><para
>%t %{track} Spår (t.ex. 01)</para
></listitem>
<listitem
><para
>%t %{track.n} Spår med fältbredd n (t.ex. 001 för %{track.3})</para
></listitem>
<listitem
><para
>%T %{tracknumber} Spår (utan inledande nollor, t.ex. 1)</para
></listitem>
<listitem
><para
>%g %{genre} Genre</para
></listitem>
<listitem
><para
>%{dirname} Katalognamn (<abbrev
>t.ex.</abbrev
> %{year" "}%{dirname} lägger till året först i det aktuella katalognamnet)</para
></listitem>
<listitem
><para
>%{max-year} Det maximala värdet på året som hittas i katalogen, kan också användas med andra koder än "year"</para
></listitem>
<listitem
><para
>%{max-year} Det minimala värdet på året som hittas för den här katalogen</para
></listitem>
<listitem
><para
>%{unq-year} Det unika värdet på året som hittas för den här katalogen, eller tomt om det inte är unikt</para
></listitem>
</itemizedlist>

<para
>Om en katalogavskiljare "/" finns i formatet, skapas flera kataloger. Om du vill skapa en ny katalog istället för att byta namn på den aktuella katalogen, välj <guilabel
>Skapa katalog</guilabel
> i kombinationsrutan <guilabel
>Åtgärd</guilabel
> istället för <guilabel
>Byt namn på katalog</guilabel
>. <guilabel
>Källa</guilabel
> för tagginformationen kan väljas mellan <guilabel
>Tagg 1 och tagg 2</guilabel
>, <guilabel
>Tagg 1</guilabel
> och <guilabel
>Tagg 2</guilabel
>. En förhandsgranskning av namnbytesåtgärden utförd för den första filen visas i sektionerna <guilabel
>Från</guilabel
> och <guilabel
>Till</guilabel
> i dialogrutan. </para>
<para
>Namnet på flera kataloger kan bytas genom att markera dem. </para
></listitem>
</varlistentry>

<varlistentry id="number-tracks">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Numrera spår...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Om spårnumren i taggarna inte är inställda eller har fel värden, kan funktionen <action
>automatiskt numrera spåren i stigande ordning</action
>. Startnumret kan ställas in i dialogrutan. Om bara delar av spåren ska numreras, måste de markeras. </para
><para
>När <guilabel
>Totalt antal spår</guilabel
> är markerat, anges också antal spår i taggarna. </para
><para
>Det är möjligt att numrera spåren i flera kataloger. Katalogerna måste expanderas och markeras. </para
><para
>Om <guilabel
>Nollställ räknare för varje katalog</guilabel
> är markerat, startas spårnumrering om med det angivna numret för varje katalog när flera kataloger är markerade. </para
><para
>Dialogrutan för att numrera spår kan också användas för att formatera befintliga spårnummer utan att ändra värdena när kryssrutan till vänster om <guilabel
>Startnummer</guilabel
> är inaktiverad. Det totala antalet spår läggs till om motsvarande kryssruta är aktiverad, vilket kan användas för att ställa in totalantalet för alla markerade spår. Om bara formatering av befintliga nummer önskas, måste den kryssrutan också inaktiveras. </para
></listitem>
</varlistentry>

<varlistentry id="filter">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Filtrera...</guimenuitem
> </menuchoice
></term>
<listitem>
<para
>Filtret kan användas för att bara visa de filer som motsvarar vissa kriterier. Det är användbart om du vill organisera en stor samling och bara redigera filerna som inte har önskat format. Uttrycket som definierar vilka filer som ska visas använder samma formatkoder som används för filnamnsformat, import och export. </para>

<itemizedlist>
<listitem
><para
>%s %{title} Titel (Låt)</para
></listitem>
<listitem
><para
>%a %{artist} Artist</para
></listitem>
<listitem
><para
>%l %{album} Album</para
></listitem>
<listitem
><para
>%c %{comment} Kommentar</para
></listitem>
<listitem
><para
>%y %{year} År</para
></listitem>
<listitem
><para
>%t %{track} Spår (t.ex. 01)</para
></listitem>
<listitem
><para
>%t %{track.n} Spår med fältbredd n (t.ex. 001 för %{track.3})</para
></listitem>
<listitem
><para
>%T %{tracknumber} Spår (utan inledande nollor, t.ex. 1)</para
></listitem>
<listitem
><para
>%g %{genre} Genre</para
></listitem>
<listitem
><para
>%f %{file} Filnamn</para
></listitem>
<listitem
><para
>%p %{filepath} Absolut sökväg till fil</para
></listitem>
<listitem
><para
>%e %{extension} Filändelse</para
></listitem>
<listitem
><para
>%O %{tag1} Format på tagg 1 (ID3v1.1 eller tom om den inte finns)</para
></listitem>
<listitem
><para
>%o %{tag2} Formatet på tagg 2 (ID3v2.3.0, ID3v2.4.0, ID3v2.2.0, ID3v2.2.1, Vorbis, APE, MP4, ASF eller tom om den inte finns)</para
></listitem>
<listitem
><para
>%b %{bitrate} Bithastighet i kbit/s</para
></listitem>
<listitem
><para
>%v %{vbr} VBR eller tom (bara för ID3v2.3 med id3lib)</para
></listitem>
<listitem
><para
>%r %{samplerate} Samplingsfrekvens i Hz</para
></listitem>
<listitem
><para
>%m %{mode} Kanalläge (Stereo eller Joint Stereo)</para
></listitem>
<listitem
><para
>%h %{channels} Antal kanaler (1 eller 2)</para
></listitem>
<listitem
><para
>%k %{codec} Kodare (<abbrev
>t.ex.</abbrev
> MPEG 1 Layer 3, MP4, Ogg Vorbis, FLAC, MPC, APE, ASF, AIFF, WAV)</para
></listitem>
<listitem
><para
>%w %{marked} Markerad, är 1 om filen är markerad (<abbrev
>t.ex.</abbrev
> på grund av avkortning eller avvikelse från standarden), annars tom</para
></listitem>
<listitem
><para
>%1a %1{artist}, ... Använd prefix 1 för att få värdet på tagg 1</para
></listitem>
<listitem
><para
>%a %{artist}, ... Använd prefix 2 för att få värdet på tagg 2</para
></listitem>
</itemizedlist>

<para
>Koderna ersätts med filens värden, och resulterade strängarna kan jämföras med följande operationer: </para>
<itemizedlist>
<listitem
><para
>s1 equals s2: true om s1 och s2 är lika.</para
></listitem>
<listitem
><para
>s1 contains s2: true om s1 innehåller s2, <abbrev
>dvs.</abbrev
> s2 är en delsträng av s1.</para
></listitem>
<listitem
><para
>s matches re: true om s matchar det reguljära uttrycket re.</para
></listitem>
</itemizedlist>
<para
>Sanna uttryck ersätts med 1, falska med 0. Sanna värden representeras med 1, true, on och yes. Falska värden av 0, false, off och no. Booleska operationer är not, and, or (i den rangordningen) och kan grupperas med parenteser. </para>
<para
>Några filterregler är fördefinierade och kan tjäna som exempel för dina egna uttryck: </para>

<variablelist>
<varlistentry
><term
>Alla</term
><listitem>
<para
>När fillistan är filtrerad (det visas med "[filtrerad]" i fönsterrubriken) och alla filer ska visas igen, kan filtreringen återställas med det här filtret. Det använder ett tomt uttryck, men ett sant värde skulle få samma effekt. </para>
</listitem
></varlistentry>

<varlistentry
><term
>Filnamn tagg missanpassning</term
><listitem>
<para
><userinput
>not (%{filepath} contains "%{artist} - %{album}/%{track} %{title}") </userinput
></para>
<para
>Testar om filsökvägen motsvarar filnamnsformatet. Regeln anpassas automatiskt om filnamnsformatet ändras. </para>
</listitem
></varlistentry>

<varlistentry
><term
>Ingen tagg 1</term
><listitem>
<para
><userinput
>%{tag1} equals "" </userinput
></para>
<para
>Visa bara filer som inte har tagg 1.</para>
</listitem
></varlistentry>

<varlistentry
><term
>Ingen tagg 2</term
><listitem>
<para
><userinput
>%{tag2} equals "" </userinput
></para>
<para
>Visa bara filer som inte har tagg 2.</para>
</listitem
></varlistentry>

<varlistentry
><term
>ID3v2.3.0 tagg</term
><listitem>
<para
><userinput
>%{tag2} equals "ID3v2.3.0" </userinput
></para>
<para
>Visa bara filer som inte har en ID3v2.3.0 tagg.</para>
</listitem
></varlistentry>

<varlistentry
><term
>ID3v2.4.0 tagg</term
><listitem>
<para
><userinput
>%{tag2} equals "ID3v2.4.0" </userinput
></para>
<para
>Visa bara filer som inte har en ID3v2.4.0 tagg.</para>
</listitem
></varlistentry>

<varlistentry
><term
>Tagg 1 != Tagg 2</term
><listitem>
<para
><userinput
>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}) </userinput
></para>
<para
>Visar filer med skillnader mellan tagg 1 och tagg 2.</para>
</listitem
></varlistentry>

<varlistentry
><term
>Tagg 1 == Tagg 2</term
><listitem>
<para
><userinput
>%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} </userinput
></para>
<para
>Visar filer med identiska tagg 1 och tagg  2.</para>
</listitem
></varlistentry>

<varlistentry
><term
>Ofullständig</term
><listitem>
<para
><userinput
>%{title} equals "" or %{artist} equals "" or %{album} equals "" or %{year} equals "" or %{tracknumber} equals "" or %{genre} equals "" </userinput
></para>
<para
>Visar filer med tomma värden i standardtaggarna (titel, artist, album, datum, spårnummer, genre).</para>
</listitem
></varlistentry>

<varlistentry
><term
>Ingen bild</term
><listitem>
<para
><userinput
>%{picture} equals "" </userinput
></para>
<para
>Visa bara filer som inte har en bild.</para>
</listitem
></varlistentry>

<varlistentry
><term
>Markerad</term
><listitem>
<para
><userinput
>not (%{marked} equals "") </userinput
></para>
<para
>Visar bara filerna som är markerade eftersom de bryter mot ID3-standarden, är avkortade eller har en för stor bild.</para>
</listitem
></varlistentry>

<varlistentry
><term
>Egna filter</term
><listitem>
<para
>Välj den här posten för att lägga till ditt eget filter. Om du exempelvis vill ha ett filter för artister som börjar med "The", ersätt "Eget filter" med namnet "The Bands" och tryck på <keycap
>Enter</keycap
>. Infoga därefter följande uttryck i radeditorn: </para>
<para
><userinput
>%{artist} matches "The.*" </userinput
></para>
<para
>Klicka därefter på <guibutton
>Spara inställningar</guibutton
>. Klicka på <guibutton
>Verkställ</guibutton
> för att filtrera filerna. Alla filer som behandlas visas i textvyn med ett "+" för de som motsvarar filtret och ett "-" för de övriga. När det är klart, visas bara filerna med en artist som börjar på "The", och fönsterrubriken är markerad med "[filtrerad]". </para>
</listitem
></varlistentry>

</variablelist>
</listitem>
</varlistentry>

<varlistentry id="convert-to-id3v24">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Konvertera till ID3v2.3 till ID3v2.4</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Om det finns några ID3v2.3 taggar i de markerade filerna <action
>konverteras de till ID3v2.4</action
> taggar. Ramar som inte stöds av TagLib kastas. Bara filer utan osparade ändringar konverteras. </para
></listitem>
</varlistentry>

<varlistentry id="convert-to-id3v23">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Konvertera till ID3v2.4 till ID3v2.3</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Om det finns några ID3v2.4 taggar i de markerade filerna <action
>konverteras de till ID3v2.3</action
> taggar. Bara filer utan osparade ändringar konverteras. </para
></listitem>
</varlistentry>

<varlistentry id="play">
<term
><menuchoice
><guimenu
>Verktyg</guimenu
> <guimenuitem
>Spela</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Visar en enkel verktygsrad för att spela ljudfiler. Den innehåller knappar för grundfunktionerna (<guibutton
>Spela/Paus</guibutton
>, <guibutton
>Stoppa uppspelning</guibutton
>, <guibutton
>Föregående spår</guibutton
>, <guibutton
>Nästa spår</guibutton
>, <guibutton
>Stäng</guibutton
>), skjutreglage för position och volym, samt visning av aktuell position. Om flera filer är markerade, spelas de markerade spåren, annars spelas alla filer. </para
></listitem>
</varlistentry>

</variablelist>
</para>
</sect1>

<sect1 id="settings-menu">
<title
>Menyn Inställningar</title>
<para>
<variablelist>

<varlistentry>
<term
><menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Visa verktygsrad</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Ändrar visning av verktygsraden.</action
></para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Visa statusrad</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Ändrar visning av statusraden</action
>, som visar längre åtgärder som att öppna eller spara en katalog.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Visa bild</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Ändrar visning av förhandsgranskningsbilden av albumomslag.</action>
</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Dölj taggar automatiskt</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Tomma taggar är automatiskt dolda om alternativet är aktivt. Sektionerna <guilabel
>Fil</guilabel
>, <guilabel
>Tagg 1</guilabel
> och <guilabel
>Tagg 2</guilabel
> kan dras ihop och expanderas manuellt genom att klicka på motsvarande knappar <guibutton
>-</guibutton
>/<guibutton
>+</guibutton
>. </para
></listitem>
</varlistentry>

<varlistentry id="configure-shortcuts">
<term
><menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Anpassa snabbtangenter...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Visar en dialogruta för att tilldela snabbtangenter för de flesta av programmets funktioner. Det finns till och med funktioner utan motsvarande meny eller knapp tillgängliga, <abbrev
>t.ex.</abbrev
> nästa fil, föregående fil, markera alla. </para>
 
</listitem>
</varlistentry>

<varlistentry id="configure-kid3">
<term
><menuchoice
><guimenu
>Inställningar</guimenu
> <guimenuitem
>Anpassa &kid3;...</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Visar <action
>inställningsdialogrutan</action
>, som består av sidor för taggar, filer, användaråtgärder och nätverksinställningar. </para>
<para
>Taggspecifika alternativ finns på sidan <guilabel
>Taggar</guilabel
>, som i sig är uppdelad i fyra flikar för <guilabel
>Tagg 1</guilabel
>, <guilabel
>Tagg 2</guilabel
>, <guilabel
>Tagg 3</guilabel
> och <guilabel
>Alla taggar</guilabel
>. </para>
<para
>Om <guilabel
>Markera avkortade fält</guilabel
> är aktiverat, markeras avkortade ID3v1.1 fält med rött. Textfälten i ID3v1.1 taggar kan bara ha 30 tecken, och kommentaren bara 28 tecken. Dessutom är genre- och spårnumren begränsade, så att fälten kan avkortas när de importeras eller överförs från ID3v2. Avkortade fält och filen markeras med rött, och markeringen tas bort efter fältet har redigerats. </para>
<para
>Med <guilabel
>Textkodning</guilabel
> för <guilabel
>ID3v1</guilabel
> är det möjligt att ange teckenuppsättningen som används i ID3v1 taggar. Kodningen förväntas vara ISO-8859-1, så det rekommenderas att behålla detta förvalda värde. Dock finns det en del taggar med annorlunda kodning, så den kan ställas in här och ID3v1 taggarna kan sedan kopieras till ID3v2, som stöder Unicode. </para>
<para
>Kryssrutan <guilabel
>Använd formatet spår/totalt antal spår</guilabel
> bestämmer om spårnummerfältet i ID3v2 taggar helt enkelt innehåller spårnumret eller dessutom det totala antalet spår i katalogen. </para>
<para
>När <guilabel
>Genre som text istället för numerisk sträng</guilabel
> är markerad, lagras alla ID3v2 genrer som textsträngar även om det finns en motsvarande kod för ID3v1 genrer. Om alternativet inte är valt, lagras genrer för vilka det finns en ID3v1 kod lagras som den genrekodens nummer (inom parentes för ID3v2.3). Sålunda lagras genren Metal som "Metal" eller "(9)" beroende på alternativet. Genrer som inte finns i listan över ID3v1 genrer lagras alltid som en textsträng. Syftet med alternativet är förbättrad kompatibilitet med enheter som inte tolkar genrekoder korrekt. </para>
<para
>När <guilabel
>WAV-filer med id3-stycke med små bokstäver</guilabel
> är markerad, används RIFF-stycket användes för att lagra ID3v2-taggar i WAV-filer med namnet "id3" istället för "ID3". Normalt &kid3; och andra program som använder TagLib accepterar både varianter med små och stora bokstäver när WAV-filer läses, men de använder "ID3" när ID3v2 taggar skrivs till WAV-filer. Eftersom det finns andra program som bara accepterar "Id3" (<abbrev
>t.ex.</abbrev
> JRiver Media Center och foobar2000), kan alternativet användas för att skapa taggar som kan läsas av sådana program. </para>
<para
>När <guilabel
>Markera avvikelser från standard</guilabel
> är markerad, är ID3v2-fält som avviker från standarden markerade med rött. Detaljinformation om avvikelsen visas i ett verktygstips: </para>
<itemizedlist>
<listitem
><para
>Måste vara unik</para
></listitem>
<listitem
><para
>Nyrad otillåten</para
></listitem>
<listitem
><para
>Returtecken otillåtet</para
></listitem>
<listitem
><para
>Ägare måste vara icke-tom</para
></listitem>
<listitem
><para
>Måste vara numerisk</para
></listitem>
<listitem
><para
>Måste vara numerisk eller nummer/totalantal</para
></listitem>
<listitem
><para
>Format är DDMM</para
></listitem>
<listitem
><para
>Format är TTMM</para
></listitem>
<listitem
><para
>Format är ÅÅÅÅ</para
></listitem>
<listitem
><para
>Måste börja med ett år och ett mellanslag</para
></listitem>
<listitem
><para
>Måste vara ISO 8601 datum eller tid</para
></listitem>
<listitem
><para
>Måste vara en tonart, tre tecken, A-G, b, #, m, o</para
></listitem>
<listitem
><para
>Måste ha ISO 639-2 språkkod, tre små bokstäver</para
></listitem>
<listitem
><para
>Måste vara ISRC-kod, 12 tecken</para
></listitem>
<listitem
><para
>Måste vara lista av strängar åtskilda av '|'</para
></listitem>
<listitem
><para
>Har överflödiga blanktecken</para
></listitem>
</itemizedlist>
<para
>ID3-standarddokumenten är tillgängliga på nätet: </para>
<itemizedlist>
<listitem
><para
><ulink url="http://id3.org/id3v2.3.0"
>ID3-tagg version 2.3.0</ulink
></para
></listitem>
<listitem
><para
><ulink url="http://id3.org/id3v2.4.0-structure"
>ID3-tagg version 2.4.0 - Huvudstruktur</ulink
></para
></listitem>
<listitem
><para
><ulink url="http://id3.org/id3v2.4.0-frames"
>ID3-tagg version 2.4.0 - Inbyggda ramar</ulink
></para
></listitem>
</itemizedlist>
<para
><guilabel
>Textkodning</guilabel
> definierar standardkodningen använd för ID3v2 ramar och kan ställas in till <guilabel
>ISO-8859-1</guilabel
>, <guilabel
>UTF16</guilabel
> eller <guilabel
>UTF8</guilabel
>. <guilabel
>UTF8</guilabel
> är inte giltigt för ID3v2.3.0 ramar: om det är inställt, används <guilabel
>UTF16</guilabel
> istället. För ID3v2.4.0 är alla tre kodningarna möjliga. </para>
<para
><guilabel
>Version använd för nya taggar</guilabel
> bestämmer om nya ID3v2 taggar skapas som version 2.3.0 eller 2.4.0. </para>
<para
><guilabel
>Spårnummersiffror</guilabel
> är antal siffror i spårnummerfält. Inledande nollor används för att fylla ut. Exempelvis med värdet 2 anges spårnummer 5 som "05". </para>
<para
>Kombinationsrutan <guilabel
>Kommentarfältnamn</guilabel
> är bara relevant för Ogg/Vorbis- och FLAC-filer och anger namnet på fältet används för kommentarer. Olika program verkar använda olika namn, "<literal
>KOMMENTAR</literal
>" används exempelvis för <application
>XMMS</application
>, medan &amarok; använder "<literal
>BESKRIVNING</literal
>". </para>
<para
>Bildernas format i Ogg/Vorbis-filer bestäms av <guilabel
>Bildfältnamn</guilabel
>, som kan vara "<literal
>METADATA_BLOCK_PICTURE</literal
>" eller "<literal
>COVERART</literal
>". Den första är officiell standard och använder samma format i FLAC-taggar. "<literal
>COVERART</literal
>" är en tidigare inofficiellt sätt för att inkludera bilder i Vorbis-kommentarer. Det kan användas för kompatibilitet med tidigare spelare. </para>
<para
>Om kryssrutan <guilabel
>Markera om större än (byte)</guilabel
> är aktiverad, markeras filer som innehåller inbäddade albumomslag som överskrider given storlek i byte. Det kan användas för att hitta filer som innehåller alltför stora bilder som inte accepteras av vissa program och spelare. Standardvärdet är 131072 byte (128 KB). </para>
<para
><guilabel
>Egna genrer</guilabel
> kan användas för att definiera genrer som inte är tillgängliga i standardlistan över genren, <abbrev
>t.ex.</abbrev
> "Gothic Metal". Sådana egna genrer dyker upp i kombinationsrutan <guilabel
>Genre</guilabel
> för <guilabel
>Tagg 2</guilabel
>. För ID3v1.1, kan bara fördefinierade genrer. </para>
<para
>Listan över egna genrer kan också användas för att reducera antalet genrer tillgängliga i kombinationsrutan <guilabel
>Genre</guilabel
> till de som typiskt används. Om din samling innehåller mest musik i genrerna Metal, Gothic Metal, Ancient och Hard Rock, kan du mata in dessa genrerna och markera <guilabel
>Visa bara egna genrer</guilabel
>. Kombinationsrutan <guilabel
>Tagg 2</guilabel
> <guilabel
>Genre</guilabel
> innehåller då bara de fyra genrerna och du behöver inte söka igenom den fullständiga genrelistan för att hitta dem. I det här exemplet listas bara Metal och Hard Rock i genrelistan för tagg 1, eftersom dessa två egna genrer är standardgenrer. Om <guilabel
>Visa bara egna genrer</guilabel
> inte är aktiverad, hittar man de egna genrerna i slutet av genrelistan. </para>
<para
>Under <guilabel
>Egna ramar</guilabel
> kan upp till åtta egna ramnamn definieras, vilka kan sedan användas som de gemensamma ramarna, exempelvis för snabbåtkomst. </para>
<para
><guilabel
>Snabbåtkomstramar</guilabel
> definierar vilka ramtyper som alltid visas i sektionen <link linkend="tag2"
>Tagg 2</link
>. Sådana ramar kan därefter läggas till utan att först använda knappen <guibutton
>Lägg till</guibutton
>. Ordningen på snabbåtkomstramarna kan ändras genom att dra och släppa objekt. </para>
<para
>Kombinationsrutan <guilabel
>Spårnummerfältnamn</guilabel
> är bara relevant för RIFF INFO och ställer in namnet på fältet som används för spårnummer. Spårnummer är inte specificerade i den ursprungliga RIFF-standarden. Det finns program som använder "<literal
>ITRK</literal
>" och andra som använder "<literal
>IPRT</literal
>". </para>
<para
><guilabel
>Taggformat</guilabel
> innehåller alternativ för taggarnas format. När <guilabel
>Verkställ format automatiskt</guilabel
> är markerat, används formatinställningen automatiskt när text ändras i redigeringsrader. <guilabel
>Validering</guilabel
> aktiverar validering i rutorna med värden för spår/totalt och datum/tid. <guilabel
>Skiftlägeskonvertering</guilabel
> kan ställas in till <guilabel
>Ingen ändringar</guilabel
>, <guilabel
>Bara små bokstäver</guilabel
>, <guilabel
>Bara stora bokstäver</guilabel
>, <guilabel
>Första bokstaven stor bokstav</guilabel
> eller <guilabel
>Alla första bokstäver stora</guilabel
>. För att använda konvertering mellan små och stora bokstäver som känner till landsinställningar, kan en landsinställning väljas i kombinationsrutan nedanför. Strängersättningslistan kan ställas in till godtyckliga strängavbildningar. För att lägga till en ny avbildning, markera cellen <guilabel
>Från</guilabel
> på en rad och infoga texten att ersätta, och gå sedan till kolumnen <guilabel
>Till</guilabel
> och skriv in ersättningstexten. När texten att ersätta börjar och slutar med ett snedstreck ("/"), används ett reguljärt uttryck. För reguljära uttryck som innehåller infångningsgrupper, ersätts förekomster av \1, \", ... i <guilabel
>Till</guilabel
> ersätts av strängen som representeras av motsvarande infångningsgrupp. För att ta bort en avbildning, ändra cellen <guilabel
>Från</guilabel
> till ett tomt värde (<abbrev
>t.ex.</abbrev
> genom att först skriva in ett mellanslag och sedan ett baksteg). Att infoga och ta bort rader är också möjligt med en sammanhangsberoende meny som dyker upp när <mousebutton
>höger</mousebutton
> musknapp klickas. Ersättning är bara aktiv om kryssrutan <guilabel
>Strängersättning</guilabel
> är markerad. </para>

<para
>Tabellen <guilabel
>Betyg</guilabel
> innehåller avbildningen av stjärnbetyg till de verkliga värdena lagrade i taggen. Ramarna med betygsinformation listas på raden Betyg i <link linkend="table-frame-list"
>ramlistan</link
>. För dessa ramar, kan betyget anges genom att ge ett antal stjärnor av fem stjärnor. Olika taggformat och olika program använder olika värden för att avbilda stjärnbetygen till värdet lagrat i taggen. För att visa rätt antal stjärnor slår &kid3; upp en avbildning i den här tabellen. Nyckeln för att slå upp avbildningen är ramnamnet, till exempel "RATING" som används för Vorbis-kommentarer eller "IRTD" för RIFF INFO. För ID3v2-taggar, används en kombinerad nyckel som består av ram-id "POPM" i ramen Popularimeter och dess "Email" fält, separerade av en punkt. Därför finns olika nycklar för ID3v2, <abbrev
>t.ex.</abbrev
> "POPM.Windows Media Player 9 Series" för avbildningen som används av Windows mediaspelare och utforskare, och helt enkelt "POPM" för POPM-ramar med ett tomt "Email" fält. Eftersom flera poster kan finnas för "POPM" är deras ordning viktig. När &kid3; lägger till en ny Popularimeter-ram, används den första "POPM" posten för att bestämma värdet som ska skrivas in i "Email" fältet. Det värdet anger sedan avbildningen som används för stjärnbetyg. Den första posten används också om ingen nyckel hittades, och är därför den förvalda posten. </para>
<para
>Förutom kolumnen <guilabel
>Namn</guilabel
> som innehåller nycklarna, har tabellen kolumnerna <guilabel
>1</guilabel
> till <guilabel
>5</guilabel
> för värden som ska lagras när motsvarande antal stjärnor ges. Åt andra hållet, avgör värdena antal stjärnor som visas för värdet som är lagrat i ramen. Raden i tabellen nedan innehåller exempelvis värdena 1, 64, 128, 196, 255. Trösklarna för antal stjärnor som visas ligger mellan dessa värden och är kompatibla med det som &Windows; utforskare använder. </para>

<table id="table-rating">
  <title
>Post i betygstabell</title>
  <tgroup cols="6">
    <thead>
      <row
><entry
>Namn</entry
><entry
>1</entry
> <entry
>2</entry
>  <entry
>3</entry
>  <entry
>4</entry
>  <entry
>5</entry
></row>
    </thead>
    <tbody>
      <row
><entry
>POPM</entry
><entry
>1</entry
><entry
>64</entry
><entry
>128</entry
><entry
>196</entry
><entry
>255</entry
></row>
      <row
><entry
>Intervall</entry
><entry
>1-31</entry
><entry
>32-95</entry
><entry
>96-159</entry
><entry
>160-223</entry
><entry
>224-255</entry
></row>
    </tbody>
  </tgroup>
</table>

<para
>På sidan <guilabel
>Filer</guilabel
> akn kryssrutan <guilabel
>Läs in senast öppnade filer</guilabel
> så att &kid3; öppnar och markerar den senast markerade filen när det startas nästa gång. <guilabel
>Bevara filtidsstämpel</guilabel
> kan markeras för att bevara filens ändringstidsstämpel. <guilabel
>Filnamn för omslag</guilabel
> ställer in namnet som föreslås när en inbäddad bild exporteras till en fil. Med <guilabel
>Textkodning (export, spellista)</guilabel
> kan kodningen som används när filer skrivs ut ställas in. Förvalet <guilabel
>System</guilabel
> kan ändras om spellistor exempelvis behöver användas på en annan enhet. </para>
<para
>Om <guilabel
>Markera ändringar</guilabel
> är aktiverad, markeras ändrade fält med en ljusgrå bakgrund. </para>
<para
>Sektionen <guilabel
>Fillista</guilabel
> bestämer vilka filer som visas i fillistan. Ett <guilabel
>Filter</guilabel
> kan användas för att begränsa objekten i listan till filer med filändelser som stöds. För att explicit ange vilka kataloger som ska visas i fillistan eller undanta vissa kataloger, kan alternativen <guilabel
>Inkludera kataloger</guilabel
> och <guilabel
>Undanta kataloger</guilabel
> användas. De kan innehålla uttryck med jokertecken, exempelvis <filename
>*/Musik/*</filename
> för att bara inkludera katalogen <filename
>Musik</filename
>, eller <filename
>*/iTunes/*</filename
> för att undanta katalogen iTunes från fillistan. Om flera sådana uttryck behöver användas, kan de åtskiljas av mellanslag eller semikolon. </para>
<para
>Knapparna <guibutton
>Filnamn från tagg</guibutton
> och <guibutton
>Tagg från filnamn</guibutton
> i sektionen <guilabel
>Format</guilabel
> visar dialogrutor för att redigera formaten som är tillgängliga i kombinationsrutorna <guilabel
>Format</guilabel
> (med piltangenterna uppåt och neråt) som finns i sektionen <link linkend="file"
>Fil</link
> i huvudfönstret. </para>
<para
><guilabel
>Filnamnsformat</guilabel
> innehåller alternativ för filnamnens format. Samma alternativ som för <guilabel
>Taggformat</guilabel
> är tillgängliga. </para>
<para
>Dessutom kan <guilabel
>Maximal längd</guilabel
> som tillåts för filnamn ställas in. De flesta moderna filsystem har gränsen 255 tecken, men om du vill skriva filerna till en cd, ska du ställa in gränsen till 64. Om <guilabel
>Använd för spellista och katalognamn</guilabel
> är markerat, används också filnamnsformatet när spellistor skapas och namn på kataloger bytes. </para>
<para
>Sidan <guilabel
>Användaråtgärder</guilabel
> innehåller en tabell med kommandon som är tillgängliga i fillistans sammanhangsberoende meny. För kritiska åtgärder, som att ta bort filer, är det lämpligt att markera <guilabel
>Bekräfta</guilabel
> för att visa en bekräftelseruta innan kommandot utförs. <guilabel
>Utmatning</guilabel
> kan markeras för att se utmatning skriven av terminalkommandon (standardutmatning och standardfelutmatning). <guilabel
>Namn</guilabel
> är namnet som visas i den sammanhangsberoende menyn. <guilabel
>Kommando</guilabel
> är kommandoraden som ska utföras. Argument kan skickas med genom att använda följande koder: </para>

<itemizedlist>
<listitem
><para
>%F %{files} Filsökvägar (en lista om flera filer är markerade)</para
></listitem>
<listitem
><para
>%f %{file} Filsökväg till en enstaka fil</para
></listitem>
<listitem
><para
>%uF %{urls} Webbadresser (en lista om flera filer är markerade)</para
></listitem>
<listitem
><para
>%uf %{url} Webbadress till en enstaka fil</para
></listitem>
<listitem
><para
>%d %{directory} Katalog</para
></listitem>
<listitem
><para
>%s %{title} Titel (Låt)</para
></listitem>
<listitem
><para
>%a %{artist} Artist</para
></listitem>
<listitem
><para
>%l %{album} Album</para
></listitem>
<listitem
><para
>%c %{comment} Kommentar</para
></listitem>
<listitem
><para
>%y %{year} År</para
></listitem>
<listitem
><para
>%t %{track} Spår (t.ex. 01)</para
></listitem>
<listitem
><para
>%t %{track.n} Spår med fältbredd n (t.ex. 001 för %{track.3})</para
></listitem>
<listitem
><para
>%T %{tracknumber} Spår (utan inledande nollor, t.ex. 1)</para
></listitem>
<listitem
><para
>%g %{genre} Genre</para
></listitem>
<listitem
><para
>%b %{browser} Kommando för att starta webbläsaren</para
></listitem>
<listitem
><para
>%q %{qmlpath} Baskatalog för tillhandahållna QML-filer</para
></listitem>
</itemizedlist>

<para
>Specialkoden <command
>@separator</command
> kan anges som ett kommando för att infoga en avskiljare i den sammanhangsberoende menyn med användaråtgärder. Menyalternativ kan läggas till i en undermeny genom att omge dem med kommandona <command
>@beginmenu</command
> och <command
>@endmenu</command
>. Namnet på undermenyn bestäms av kolumnen <guilabel
>Namn</guilabel
> för kommandot <command
>@beginmenu</command
>. </para>

<para id="configure-user-actions-qml"
>För att köra QML-skript används <command
>@qml</command
> som kommandonamn. Sökvägen till QML-skriptet skickas med som en parameter. Skripten som tillhandahålls finns i katalogen <filename
>%{qmlpath}/script/</filename
> (på &Linux; oftast <filename
>/usr/share/kid3/qml/script/</filename
>, på Windows <filename
>qml/script/</filename
> inne i installationskatalogen, och på &macOS; i app-katalogen <filename
>kid3.app/Contents/Resources/qml/script/</filename
>).  Egna skript kan lagras i vilken katalog som helst. Om QML-koden använder grafiska användargränssnittskommandon, måste <command
>@qmlview</command
> användas istället för <command
>@qml</command
>. Ytterligare parametrar kan skickas med till QML-skriptet, där de är tillgängliga via funktionen <function
>getArguments()</function
>. En översikt av några funktioner och egenskaper som är tillgängliga i QML finns i appendixet <link linkend="qml-interface"
>QML-gränssnitt</link
>. </para>

<para
>Kommandot som infogas med %{browser} kan definieras på redigeringsraden <guilabel
>Webbläsare</guilabel
> ovanför. Kommandon som börjar med %{browser} kan användas för att hämta information om ljudfilerna från webben, exempelvis frågar <screen width="40">
<userinput
>%{browser} http://lyricwiki.org/%u{artist}:%u{title}</userinput>
</screen
> efter sångtexten för nuvarande sång hos <ulink url="http://www.lyricwiki.org"
>LyricWiki</ulink
>. Bokstaven "u" i %u{artist} och %u{title} används för att webbadresskoda artist- %{artist} och sång- %{title} information. Det är enkelt att definiera dina egna frågor på samma sätt, <abbrev
>t.ex.</abbrev
> en bildsökning med <ulink url="http://www.google.com"
>Google</ulink
>: <screen width="40"
><userinput
>%{browser} http://images.google.com/images?q=%u{artist}%20%u{album}</userinput
>
</screen>
</para>
<para
>För att lägga till albumomslag till tagg 2 kan du söka efter bilder med Google eller Amazon genom att använda kommandona som beskrivs ovan. Bilden kan läggas till i taggen med drag och släpp. Du kan också lägga till en bild med <guibutton
>Lägg till</guibutton
> och därefter markera bildramen och importera en bildfil eller klistra in från klippbordet. Bildramar stöds för ID3v2-, MP4-, FLAC-, Ogg- och ASF-taggar </para>
<para
>En sammanhangsberoende meny kan användas för att lägga till eller ta bort poster i tabellen. </para>
<para
>Sidan <guilabel
>Nätverk</guilabel
> innehåller bara ett fält för att infoga proxy-adressen och valfritt porten, åtskilda av ett kolon. Proxy används vid import från en Internet-server när kryssrutan är markerad. </para>
<para
>På sidan <guilabel
>Insticksprogram</guilabel
>, kan tillgängliga insticksprogram aktiveras eller inaktiveras. Insticksprogrammen är uppdelade i två sektioner. Listan <guilabel
>Metadatainsticksprogram och prioritet</guilabel
> innehåller insticksprogram som stöder ljudfilformat, Insticksprogrammens ordning är viktig eftersom de provas uppifrån och ner. Några format stöds av flera insticksprogram, så filer öppnas med det första insticksprogrammet som stöder dem. <guilabel
>Tablibmetadata</guilabel
> stöder flest format. Om det är längst upp i listan, öppnar det de flesta filerna. Om du vill använda ett annat insticksprogram för ett filformat, säkerställ att det listas innan insticksprogrammet <guilabel
>Taglibmetadata</guilabel
>. Detaljinformation om metadatainsticksprogram och varför du kan vilja använda dem istället för Taglib listas nedan. </para>
<itemizedlist>
<listitem
><para
><guilabel
>Id3libMetadata</guilabel
>: Använder <ulink url="http://id3lib.sourceforge.net"
>id3lib</ulink
> för ID3v1.1 och ID3v2.3 taggar i MP3-, MP2-, AAC-filer. Stöder några få fler ramtyper än TagLib.</para
></listitem>
<listitem
><para
><guilabel
>OggFlacMetadata</guilabel
>: Använder <ulink url="http://xiph.org/ogg/"
>libogg</ulink
>, <ulink url="http://xiph.org/vorbis/"
>libvorbis, libvorbisfile</ulink
> för Ogg-filer, och ytterligare <ulink url="http://flac.sourceforge.net"
>libFLAC++ och libFLAC</ulink
> för FLAC-filer. De är de officiella biblioteken för dessa format.</para
></listitem>
<listitem
><para
><guilabel
>TaglibMetadata</guilabel
>: Använder <ulink url="http://taglib.github.io/"
>TagLib</ulink
> som stöder många ljudfilformat. Det kan användas för alla ljudfiler som stöds av &kid3;.</para
></listitem>
<listitem
><para
><guilabel
>Mp4v2Metadata</guilabel
>: <ulink url="http://code.google.com/p/mp4v2"
>mp4v2</ulink
> användes ursprungligen av &kid3; för att stödja M4A-filer. Kan användas i händelse av problem med M4A-stödet i TagLib. </para
></listitem>
</itemizedlist>
<para
>Sektionen <guilabel
>Tillgängliga insticksprogram</guilabel
> listar de återstående insticksprogram. Deras ordning är inte viktig, men de kan aktiveras och inaktiveras genom att använda kryssrutorna. </para>
<itemizedlist>
<listitem
><para
><guilabel
>AmazonImport</guilabel
>: Används för funktionen <guimenuitem
>Import från Amazon...</guimenuitem
>. </para
></listitem>
<listitem
><para
><guilabel
>DiscogsImport</guilabel
>: Används för funktionen <guimenuitem
>Import från Discogs...</guimenuitem
>. </para
></listitem>
<listitem
><para
><guilabel
>FreedbImport</guilabel
>: Används för funktionen <guimenuitem
>Import från gnudb.org...</guimenuitem
>. </para
></listitem>
<listitem
><para
><guilabel
>MusicBrainzImport</guilabel
>: Används för funktionen <guimenuitem
>Import från MusicBrainz Release...</guimenuitem
>. </para
></listitem>
<listitem
><para
><guilabel
>AcoustidImport</guilabel
>: Används för funktionen <guimenuitem
>Import från MusicBrainz Fingerprint...</guimenuitem
>, som beror på biblioteken <ulink url="http://acoustid.org/chromaprint"
>Chromaprint</ulink
> och <ulink url="http://libav.org/"
>libav</ulink
>. </para
></listitem>
</itemizedlist>
<para
>Insticksprogram som är inaktiverade laddas inte. Det kan användas för att optimera resursanvändning och starttid. Inställningarna på sidan får bara effekt efter att &kid3; har startats om. </para>
</listitem>
</varlistentry>

</variablelist>
</para>

</sect1>

<sect1 id="help-menu">
<title
>Menyn Hjälp</title>
<para>
<variablelist>

<varlistentry>
<term
><menuchoice
><guimenu
>Hjälp</guimenu
> <guimenuitem
>Handbok &kid3;</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Visar den här handboken.</action
></para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><guimenu
>Hjälp</guimenu
> <guimenuitem
>Om &kid3;</guimenuitem
> </menuchoice
></term>
<listitem
><para
><action
>Visar en kort information om &kid3;. </action
></para
></listitem>
</varlistentry>


</variablelist>
</para>

</sect1>

</chapter>

<chapter id="kid3-cli">
<title
>kid3-cli</title>
<sect1 id="kid3-cli-commands">
<title
>Kommandon</title>
<para
><command
>kid3-cli</command
> erbjuder ett kommandoradsgränssnitt för &kid3;. Om en katalogsökväg används, öppnas den katalogen. Om en eller flera filsökvägar anges, öppnas den gemensamma katalogen och filerna markeras. Efterföljande kommandon arbetar därefter med dessa filer. Kommandon anges med väljaren <option
>-c</option
>. Om flera kommandon anges, utförs de i angiven ordning. Om filer ändras av kommandon, sparas de på slutet. Om inga kommandoväljare anges, startar <command
>kid3-cli</command
> i interaktivt läge. Kommandon kan matas in och utförs med den aktuella markeringen. Följande avsnitt listar alla tillgängliga kommandon. </para>

<sect2 id="cli-help">
<title
>Hjälp</title>
<cmdsynopsis
><command
>help</command
> <arg
><replaceable
>KOMMANDONAMN</replaceable
></arg
> </cmdsynopsis>
<para
>Visar hjälp om parametrarna för <replaceable
>KOMMANDONAMN</replaceable
> eller om alla kommandon om inget kommandonamn anges. </para>
</sect2>

<sect2 id="cli-timeout">
<title
>Tidsgräns</title>
<cmdsynopsis
><command
>timeout</command
> <group
> <arg choice="plain"
>default</arg
> <arg choice="plain"
>off</arg
> <arg choice="plain"
><replaceable
>TID</replaceable
></arg
> </group
> </cmdsynopsis>
<para
>Skriv över den normala kommandotidsgränsen. Kommandoradens kommandon avbryts efter en kommandospecifik tidsgräns har överskridits. Tidsgränsen är 10 sekunder för <command
>ls</command
> och <command
>albumart</command
>, 60 sekunder för <command
>autoimport</command
> och <command
>filter</command
>, och 3 sekunder för alla andra kommandon. Om ett mycket stort antal filer måste behandlas, kan tidsgränserna vara för restriktiva, och sålunda kan tidsgränsen för alla kommandon ställas in till <replaceable
>TID</replaceable
> ms, stängas av helt och hållet eller lämnas som normala värden. </para>
</sect2>

<sect2 id="cli-exit">
<title
>Avsluta programmet</title>
<cmdsynopsis
><command
>exit</command
> <arg
>force</arg
> </cmdsynopsis>
<para
>Avsluta programmet. Om det finns ändrade osparade filer, krävs parametern <parameter class="command"
>force</parameter
>. </para>
</sect2>

<sect2 id="cli-cd">
<title
>Byt katalog</title>
<cmdsynopsis
><command
>cd</command
> <arg
><replaceable
>KATALOGER</replaceable
></arg
> </cmdsynopsis>
<para
>Om <replaceable
>FOLDER</replaceable
> inte anges, byt till hemkatalogen. Om en katalog anges, byt till den katalogen. Om en eller flera filsökvägar anges, byt till deras gemensamma katalog och markera filerna. </para>
</sect2>

<sect2 id="cli-pwd">
<title
>Skriv ut den aktuella katalogens filnamn</title>
<cmdsynopsis>
<command
>pwd</command>
</cmdsynopsis>
<para
>Skriver ut den aktuella arbetskatalogens filnamn.</para>
</sect2>

<sect2 id="cli-ls">
<title
>Kataloglista</title>
<cmdsynopsis>
<command
>ls</command>
</cmdsynopsis>
<para
>Lista innehållet i den aktuella katalogen. Det motsvarar fillistan i &kid3;s grafiska användargränssnitt. Fem tecken innan filnamnen visar filernas tillstånd. </para>

<itemizedlist>
<listitem
><para
><computeroutput
>&gt;</computeroutput
> Filen är markerad. </para
></listitem>
<listitem
><para
><computeroutput
>*</computeroutput
> Filen är ändrad. </para
></listitem>
<listitem
><para
><computeroutput
>1</computeroutput
> Filen har en tagg 1, annars visas '<computeroutput
>-</computeroutput
>'.</para
></listitem>
<listitem
><para
><computeroutput
>2</computeroutput
> Filen har en tagg 2, annars visas '<computeroutput
>-</computeroutput
>'.</para
></listitem>
<listitem
><para
><computeroutput
>3</computeroutput
> Filen har en tagg 3, annars visas '<computeroutput
>-</computeroutput
>'.</para
></listitem>
</itemizedlist>

<screen width="65"
><prompt
>kid3-cli&gt; </prompt
><userinput
>ls</userinput
><computeroutput>
  1-- 01 Början.mp3

> 12- 02 Vi har bara den här.mp3
 *1-- 03 Slutet.mp3</computeroutput
></screen>

<para
>I det här exemplet har alla filer en tagg 1, den andra filen har också en tagg 2 och den är markerad. Den tredje filen är ändrad. </para>
</sect2>

<sect2 id="cli-save">
<title
>Spara de ändrade filerna</title>
<cmdsynopsis>
<command
>save</command>
</cmdsynopsis>
 
</sect2>

<sect2 id="cli-select">
<title
>Markera fil</title>
<cmdsynopsis
><command
>select</command
> <group
> <arg choice="plain"
>all</arg
> <arg choice="plain"
>none</arg
> <arg choice="plain"
>first</arg
> <arg choice="plain"
>previous</arg
> <arg choice="plain"
>next</arg
> <arg choice="plain" rep="repeat"
><replaceable
>FIL</replaceable
></arg
> </group
> </cmdsynopsis>
<para
>Skriv in <userinput
>select all</userinput
> för att markera alla filer,skriv in <userinput
>select none</userinput
> för att avmarkera alla filer. För att gå igenom filerna i aktuell katalog, börja med <userinput
>select first</userinput
>, gå sedan framåt med <userinput
>select next</userinput
> eller bakåt med <userinput
>select previous</userinput
>. Specifika filer kan läggas till i aktuell markering genom att ange deras filnamn. Jokertecken är möjliga, så <userinput
>select *.mp3</userinput
> markerar alla MP3-filer i den aktuella katalogen. </para>

<screen width="65"
><prompt
>kid3-cli&gt; </prompt
><userinput
>select first</userinput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>ls</userinput
><computeroutput>

> 1-- 01 Början.mp3
  12- 02 Vi har bara den här.mp3
 *1-- 03 Slutet.mp3</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>select next</userinput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>ls</userinput
><computeroutput>
  1-- 01 Början.mp3

> 12- 02 Vi har bara den här.mp3
 *1-- 03 Slutet.mp3</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>select *.mp3</userinput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>ls</userinput
><computeroutput>

> 1-- 01 Början.mp3

> 12- 02 Vi har bara den här.mp3

>*1-- 03 Slutet.mp3</computeroutput
></screen>
</sect2>

<sect2 id="cli-tag">
<title
>Välj tagg</title>
<cmdsynopsis
><command
>tag</command
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Många kommandon har en valfri parameter <replaceable
>TAGGNUMMER</replaceable
>, som anger om kommandot gäller tagg 1, 2 eller 3. Om parametern utelämnas, används förvalda taggnummer, som kan ställas in med kommandot. Vid start är det inställt till <literal
>12</literal
>, vilket betyder att information läses från tagg 2 om tillgänglig, annars från tagg 1, och ändringar görs av tagg 2. <option
><replaceable
>TAGGNUMMER</replaceable
></option
> kan ställas in till <userinput
>1</userinput
>, <userinput
>2</userinput
> eller <userinput
>3</userinput
> för att bara gälla motsvarande tagg. Om parametern utelämnas visas den nuvarande inställningen. </para>
</sect2>

<sect2 id="cli-get">
<title
>Hämta taggram</title>
<cmdsynopsis
><command
>get</command
> <group
> <arg choice="plain"
>all</arg
> <arg choice="plain"
><replaceable
>RAMNAMN</replaceable
></arg
> </group
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Kommandot kan användas för att läsa värdet på en specifik taggram eller få information om alla taggramar (om argumentet utelämnas eller <option
>all</option
> används). Ändrade ramar är markerade med  '<computeroutput
>*</computeroutput
>'. </para>

<screen width="65"
><prompt
>kid3-cli&gt; </prompt
><userinput
>get</userinput
><computeroutput>
File: MPEG 1 Layer 3 192 kbps 44100 Hz Joint Stereo
  Name: 01 Början.mp3
Tag 1: ID3v1.1
  Title         Intro
  Artist        Dagslända
  Album         Låt oss tagga
  Date          2013
  Track Number  1
  Genre         Pop</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>get title</userinput
><computeroutput>
Intro</computeroutput
></screen>
<para
>För att spara innehållet i en bildram till en fil, använd <screen width="65"
><userinput
>get picture:'/sökväg/till/katalog.jpg'</userinput
></screen>
</para>
<para
>För att spara synkroniserad sångtext till en LRC-fil, använd <screen width="65"
><userinput
>get SYLT:'/sökväg/till/sångtext.lrc'</userinput
></screen>
</para>
<para
>Det är möjilgt att bara hämta ett specifikt fält från en ram, exempelvis <userinput
>get POPM.Email</userinput
> för Email fältet i en Popularimeter ram. Om en fil har flera ramar av samma sort, kan de olika ramarna indexeras med hakparenteser, exempelvis kan den första utföraren från en Vorbis-kommentar hämtas genom att använda <userinput
>get performer[0]</userinput
>, den andra genom att använda <userinput
>get performer[1]</userinput
>. </para>
<para
>Pseudofältnamnet "selected" kan användas för att kontrollera om en ram är markerad, exempelvis returnerar <userinput
>get artist.selected</userinput
> <computeroutput
>1</computeroutput
> om artistramen är markerad, annars <computeroutput
>0</computeroutput
>. </para>
</sect2>

<sect2 id="cli-set">
<title
>Ange taggram</title>
<cmdsynopsis
><command
>set</command
> <arg choice="req"
><replaceable
>RAMNAMN</replaceable
></arg
> <arg choice="req"
><replaceable
>RAMVÄRDE</replaceable
></arg
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Kommandot tilldelar en specifik taggrams värde. Om <replaceable
>FRAMEVALUE</replaceable
> är tomt, tas ramen bort. </para>
<screen width="65"
><prompt
>kid3-cli&gt; </prompt
><userinput
>set remixer 'O.H. Wonder'</userinput
></screen>
<para
>För att ställa in innehållet i en bildram från en fil, använd <screen width="65"
><userinput
>set picture:'/sökväg/till/katalog.jpg' 'Bildbeskrivning'</userinput
></screen>
</para>
<para
>För att tilldela synkroniserad sångtext från en LRC-fil, använd <screen width="65"
><userinput
>set SYLT:'/sökväg/till/sångtext.lrc' 'Sångtextbeskrivning'</userinput
></screen>
</para>
<para
>För att tilldela ett specifikt fält i en ram, kan fältnamnet anges efter en punkt. För att tilldela fältet Counter i ramen Popularimeter använd <abbrev
>t.ex.</abbrev
> <screen width="65"
><userinput
>set POPM.Counter 5</userinput
></screen>
</para>
<para
>Ett program för fältspecifikationer är fallet då du vill ha en egen TXXX-ram med beskrivning av "rating" istället för den vanliga Popularimeter ramen (som verkar användas av vissa insticksprogram). Du kan skapa en sådan TXXX-betygsram med <command
>kid3-cli</command
>. Dock måste du först skapa en TXXX-ram med beskrivningen "rating" och därefter tilldela ramens värde till betygsvärdet. <screen width="65">
<prompt
>kid3-cli&gt; </prompt
><userinput
>set rating ""</userinput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>set TXXX.Description rating</userinput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>set rating 5</userinput>
</screen
> Det första kommandot tar bort en befintlig POPM-ram, eftersom om en sådan ram finns, skulle <userinput
>set rating 5</userinput
> använda POPM-ramen och inte TXXX-ramen. En annan möjlighet skulle vara att använda <userinput
>set TXXX.Text 5</userinput
>, men det skulle bara fungera om det inte fanns någon annan TXXX-ram. </para>
<para
>För att tilldela flera ramar av samma sort, kan ett index anges inom hakparenteser. För att tilldela flera utövare i en Vorbis-kommentar använd <abbrev
>t.ex.</abbrev
> <screen width="65"
><prompt
>kid3-cli&gt; </prompt
><userinput
>set performer[0] 'Liza don Getti (sopran)'</userinput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>set performer[1] 'Joe Barr (piano)'</userinput
>
</screen>
</para>
<para
>För att markera vissa ramar innan kopierings-, inklistrings- eller borttagningsåtgärder, kan pseudofältnamnet "selected" användas. Normalt är alla ramar markerade. För att avmarkera alla, använd <userinput
>set '*.selected' 0</userinput
>, och därefter exempelvis <userinput
>set artist.selected 1</userinput
> för att markera artistramen. </para>
</sect2>

<sect2 id="cli-revert">
<title
>Återställ</title>
<cmdsynopsis>
<command
>revert</command>
</cmdsynopsis>
<para
>Återställ alla ändringar i de markerade filerna (eller alla filer om inga filer är markerade). </para>
</sect2>

<sect2 id="cli-import">
<title
>Importera från fil</title>
<cmdsynopsis
><command
>import</command
> <arg choice="req"
><replaceable
>FIL</replaceable
></arg
> <arg choice="req"
><replaceable
>FORMATNAMN</replaceable
></arg
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Taggar importeras från filen <replaceable
>FIL</replaceable
> på formatet vid namn <replaceable
>FORMATNAMN</replaceable
> (<abbrev
>tex.</abbrev
> <userinput
>"CSV unquoted"</userinput
>. Se <link linkend="import-text"
>Import</link
>). </para>
<para
>Om <userinput
>tags</userinput
> anges för <replaceable
>FIL</replaceable
>, importeras taggar från andra taggar. Istället för <replaceable
>FORMATNAMN</replaceable
> krävs <replaceable
>KÄLLA</replaceable
> och <replaceable
>EXTRAHERING</replaceable
>, se <link linkend="import-tags"
>Import från taggar</link
>. För att utföra import från taggar med de markerade filerna, använda <userinput
>tagsel</userinput
> istället för <userinput
>tags</userinput
>. Funktionen stöder också utmatning av det extraherade värdet genom att använda <replaceable
>EXTRAHERING</replaceable
> med värdet <userinput
>%{__return}(.+)</userinput
>. </para>
</sect2>

<sect2 id="cli-autoimport">
<title
>Automatisk import</title>
<cmdsynopsis
><command
>autoimport</command
> <arg
><replaceable
>PROFILNAMN</replaceable
></arg
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Import i bakgrunden genom att använda profilen <replaceable
>PROFILNAMN</replaceable
> (se <link linkend="batch-import"
>Automatisk import</link
>, <userinput
>"All"</userinput
> används om utelämnat). </para>
</sect2>

<sect2 id="cli-albumart">
<title
>Ladda ner albumomslag</title>
<cmdsynopsis
><command
>albumart</command
> <arg choice="req"
><replaceable
>WEBBADRESS</replaceable
></arg
> <arg
>all</arg
> </cmdsynopsis>
<para
>Tilldela albumomslaget genom att ladda ner en bild från <replaceable
>WEBBADRESS</replaceable
>. Reglerna definierade i dialogrutan <link linkend="browse_pictures"
>Bläddra bland omslag</link
> används för att översätta allmänna webbadresser (<abbrev
>t.ex.</abbrev
> från Amazon) till en bildwebbadress. För att tilldela albumomslaget från en lokal bildfil, använd kommandot <link linkend="cli-set"
>set</link
>. </para>
<screen width="65"
><prompt
>kid3-cli&gt; </prompt
><userinput
>albumart
http://www.amazon.com/Versus-World-Amon-Amarth/dp/B000078DOC</userinput
></screen>
</sect2>

<sect2 id="cli-export">
<title
>Exportera till fil</title>
<cmdsynopsis
><command
>export</command
> <arg choice="req"
><replaceable
>FIL</replaceable
></arg
> <arg choice="req"
><replaceable
>FORMATNAMN</replaceable
></arg
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Taggar exporteras till filen <replaceable
>FIL</replaceable
> på formatet vid namn <replaceable
>FORMATNAMN</replaceable
> (<abbrev
>t.ex.</abbrev
> <userinput
>"CSV unquoted"</userinput
>. Se <link linkend="export"
>Export</link
>. </para>
</sect2>

<sect2 id="cli-playlist">
<title
>Skapa spellista</title>
<cmdsynopsis>
<command
>playlist</command>
</cmdsynopsis>
<para
>Skapa en spellista med formatet valt i inställningarna, se <link linkend="create-playlist"
>Skapa spellista</link
>. </para>
</sect2>

<sect2 id="cli-filenameformat">
<title
>Verkställ filnamnsformat</title>
<cmdsynopsis>
<command
>filenameformat</command>
</cmdsynopsis>
<para
>Verkställ filnamnsformatet valt i inställningarna, se <link linkend="apply-filename-format"
>Verkställ filnamnsformat</link
>. </para>
</sect2>

<sect2 id="cli-tagformat">
<title
>Verkställ taggformat</title>
<cmdsynopsis>
<command
>tagformat</command>
</cmdsynopsis>
<para
>Verkställ taggnamnsformatet valt i inställningarna, se <link linkend="apply-filename-format"
>Verkställ taggformat</link
>. </para>
</sect2>

<sect2 id="cli-textencoding">
<title
>Verkställ textkodning</title>
<cmdsynopsis>
<command
>textencoding</command>
</cmdsynopsis>
<para
>Verkställ textkodningen vald i inställningarna, se <link linkend="apply-text-encoding"
>Verkställ textkodning</link
>. </para>
</sect2>

<sect2 id="cli-renamedir">
<title
>Byt namn på katalog</title>
<cmdsynopsis
><command
>renamedir</command
> <arg
><replaceable
>FORMAT</replaceable
></arg
> <group
> <arg choice="plain"
>create</arg
> <arg choice="plain"
>rename</arg
> <arg choice="plain"
>dryrun</arg
> </group
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Byt namn på eller skapa kataloger från värdena i taggarna enligt ett givet <replaceable
>FORMAT</replaceable
> (<abbrev
>t.ex.</abbrev
> <userinput
>%{artist} - %{album}</userinput
>, se <link linkend="rename-directory"
>Byt namn på katalog</link
>). Om inget format anges, används formatet definierat i <guilabel
>Byt namn på katalog</guilabel
>. Standardläget är <option
>rename</option
>. För att skapa kataloger måste <option
>create</option
> explicit användas. Namnbytesåtgärderna utförs omedelbart, för att bara se vad som skulle göras, använd väljaren <option
>dryrun</option
>. </para>
</sect2>

<sect2 id="cli-numbertracks">
<title
>Numrera spår</title>
<cmdsynopsis
><command
>numbertracks</command
> <arg
><replaceable
>SPÅRNUMMER</replaceable
></arg
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Numrera de markerade spåren med början på <replaceable
>SPÅRNUMMER</replaceable
> (<literal
>1</literal
> om utelämnat). </para>
</sect2>

<sect2 id="cli-filter">
<title
>Filtrera</title>
<cmdsynopsis
><command
>filter</command
> <group
> <arg choice="plain"
><replaceable
>FILTERNAMN</replaceable
></arg
> <arg choice="plain"
><replaceable
>FILTERFORMAT</replaceable
></arg
> </group
> </cmdsynopsis>
<para
>Filtrera filerna så att bara filerna som matchar <replaceable
>FILTERFORMAT</replaceable
> är synliga. Namnet på ett fördefinierat filteruttryck (<abbrev
>t.ex.</abbrev
> <userinput
>"Filnamn tagg missanpassning"</userinput
>) kan användas istället för att filteruttryck, se <link linkend="filter"
>Filter</link
>. </para>

<screen width="65"
><prompt
>kid3-cli&gt; </prompt
><userinput
>filter '%{title} contains "tro"'</userinput
><computeroutput>
Started
  /home/urs/Dagslända - Låt oss tagga
+ 01 Början.mp3
- 02 Vi har bara den här.mp3
+ 03 Slutet.mp3
Finished</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>ls</userinput
><computeroutput>
  1-- 01 Början.mp3
  1-- 03 Slutet.mp3</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>filter All</userinput
><computeroutput>
Started
  /home/urs/Dagslända - Låt oss tagga
+ 01 Början.mp3
+ 02 Vi har bara den här.mp3
+ 03 Slutet.mp3
Finished</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>ls</userinput
><computeroutput>
  1-- 01 Början.mp3
  12- 02 Vi har bara den här.mp3
  1-- 03 Slutet.mp3</computeroutput
></screen>
</sect2>

<sect2 id="cli-to24">
<title
>Konvertera ID3v2.3 till ID3v2.4</title>
<cmdsynopsis>
<command
>to24</command>
</cmdsynopsis>
</sect2>

<sect2 id="cli-to23">
<title
>Konvertera ID3v2.4 till ID3v2.3</title>
<cmdsynopsis>
<command
>to23</command>
</cmdsynopsis>
</sect2>

<sect2 id="cli-fromtag">
<title
>Filnamn från tagg</title>
<cmdsynopsis
><command
>fromtag</command
> <arg
><replaceable
>FORMAT</replaceable
></arg
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Ställ in filnamn för markerade filer från värden i taggarna, exempelvis <userinput
>fromtag '%{track} - %{title}' 1</userinput
>. Om inget format anges, används formatet som ställts in i det grafiska användargränssnittet. </para>
</sect2>

<sect2 id="cli-totag">
<title
>Tagg från filnamn</title>
<cmdsynopsis
><command
>totag</command
> <arg
><replaceable
>FORMAT</replaceable
></arg
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Tilldela taggramar från filnamnen, exempelvis <userinput
>totag '%{albumartist} - %{album}/%{track} %{title}' 2</userinput
>. Om inget format anges, används formatet inställt i det grafiska användargränssnittet. Om filnamnets format inte matchar mönstret, provas några andra ofta använda format. </para>
</sect2>

<sect2 id="cli-syncto">
<title
>Tagg till annan tagg</title>
<cmdsynopsis
><command
>syncto</command
> <arg choice="req"
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Kopiera taggramarna från en tagg till den andra taggen, använd <abbrev
>t.ex.</abbrev
> <userinput
>syncto 2</userinput
> för att tilldela ID3v2-taggen från ID3v1-taggen. </para>
</sect2>

<sect2 id="cli-copy">
<title
>Kopiera</title>
<cmdsynopsis
><command
>copy</command
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Kopiera de markerade filernas taggramar till den interna kopieringsbufferten. De kan därefter tilldelas till en annan fil genom att använda kommandot <command
>paste</command
>. </para>
<para
>För att bara kopiera en delmängd av ramarna, använd pseudofältet "selected" med kommandot <command
>set</command
>. För att exempelvis bara kopiera skivnummer- och copyrightramar, använd <screen width="65"
><userinput
>set '*.selected' 0</userinput>
<userinput
>set discnumber.selected 1</userinput>
<userinput
>set copyright.selected 1</userinput>
<userinput
>copy</userinput
>
</screen>
</para>
</sect2>

<sect2 id="cli-paste">
<title
>Klistra in</title>
<cmdsynopsis
><command
>paste</command
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Tilldela taggramar från innehållet i <command
>copy</command
>-bufferten för de markerade filerna. </para>
</sect2>

<sect2 id="cli-remove">
<title
>Ta bort</title>
<cmdsynopsis
><command
>remove</command
> <arg
><replaceable
>TAGGNUMMER</replaceable
></arg
> </cmdsynopsis>
<para
>Ta bort en tagg. </para>
<para
>Det är möjligt att bara ta bort en delmängd av ramarna genom att markera dem som beskrivs för <link linkend="cli-copy"
>kommandot <command
>copy</command
></link
>. </para>
</sect2>

<sect2 id="cli-config">
<title
>Anpassa Kid3</title>
<cmdsynopsis
><command
>config</command
> <arg
><replaceable
>ALTERNATIV</replaceable
></arg
> <arg
><replaceable
>VÄRDE</replaceable
></arg
> </cmdsynopsis>
<para
>Fråga efter eller ställ in ett inställningsalternativ. </para>
<para
><replaceable
>ALTERNATIV</replaceable
> består av ett gruppnamn och ett egenskapsnamn åtskilda av en punkt. När inget <replaceable
>ALTERNATIV</replaceable
> anges, visas alla tillgängliga grupper. Om bara ett gruppnamn anges, visas alla gruppens tillgängliga egenskaper. För en given grupp och egenskap, visas det för närvarande inställda värdet. För att ändra inställningen kan det nya värdet anges som andra argument. </para>
<para
>Om en inställnings värde är en lista, måste alla listelement anges som argument. Det betyder att för att lägga till ett element i en befintlig lista, måste alla befintliga element anges, följda av det nya elementet. I ett sådant fall är det enklare att använda JSON, där den nuvarande listan kan kopieras, med det nya elementet tillagt. </para>
</sect2>

<sect2 id="cli-execute">
<title
>Kör program eller QML-skript</title>
<cmdsynopsis
><command
>execute</command
> <arg choice="opt"
>@qml</arg
> <arg choice="req"
><replaceable
>FIL</replaceable
></arg
> <arg choice="opt"
><replaceable
>ARGUMENT</replaceable
></arg
> </cmdsynopsis>
<para
>Kör ett QML-skript eller körbar fil. </para>
<para
>Utan <option
>@qml</option
> körs ett program med väljare. När <option
>@qml</option
> anges som första argument, är följande argument QML-skriptet och dess argument. Exempelvis kan taggarna i en katalog exporteras till filen <filename
>export.csv</filename
> med följande kommando. </para>
<screen width="65"
><userinput
>kid3-cli -c "execute @qml
/usr/share/kid3/qml/script/ExportCsv.qml export.csv"
/sökväg/till/katalog/</userinput
></screen>
<para
>Här är <option
>export.csv</option
> argumentet för skriptet <filename
>ExportCsv.qml</filename
>, medan <option
>/sökväg/till/katalog/</option
> är argumentet <option
><replaceable
>FIL</replaceable
></option
> för <command
>kid3-cli</command
>. </para>
</sect2>

</sect1>

<sect1 id="kid3-cli-examples">
<title
>Exempel</title>
<para
>Tilldela en titel som innehåller en apostrof. Kommandon som skickas till <command
>kid3-cli</command
> med <parameter
>-c</parameter
> måste vara inom citationstecken om de inte bara består av enstaka ord. OM ett sådant kommando själv har ett argument som innehåller mellanslag, måste det argumentet också citeras. Med &UNIX;-skal kan enkla eller dubbla citationstecken användas, men med Windows kommandofönster är det viktigt att de yttre citationstecknen är dubbla och att enkla citationstecken används inom dessa. Om texten inom de enkla citationstecknen innehåller ett enkelt citationstecken måste det undantas genom att använda ett bakstreck, som visas i följande exempel:</para>
<screen width="65"
><userinput
>kid3-cli -c "set title 'I\'ll be there for you'" /sökväg/till/katalog</userinput
></screen>

<para
>Tilldela albumomslag till alla filer i en katalog med användning av bakgrundsimportfunktionen:</para>
<screen width="65"
><userinput
>kid3-cli -c "autoimport 'Cover Art'" /sökväg/till/katalog</userinput
></screen>

<para
>Ta bort kommentarramar och tilldela taggformatet i båda taggar av alla MP3-filer i en katalog:</para>
<screen width="65"
><userinput
>kid3-cli -c "set comment '' 1" -c "set comment '' 2" \
-c "tagformat 1" -c "tagformat 2" /sökväg/till/katalog/*.mp3</userinput
></screen>

<para
>Importera automatiskt tagg 2, synkronisera med tagg 1, ställ in filnamn från tagg 2 och skapa slutligen en spellista:</para>
<screen width="65"
><userinput
>kid3-cli -c autoimport -c "syncto 1" -c fromtag -c playlist \
  /sökväg/till/katalog/*.mp3</userinput
></screen>

<para
>För alla filer med en ID3v24.0-tagg, konvertera till ID3v2.3.0 och ta bort ramen arranger:</para>
<screen width="65"
><userinput
>kid3-cli -c "filter 'ID3v2.4.0 Tag'" -c "select all" -c to23 \
  -c "set arranger ''" /sökväg/till/katalog</userinput
></screen>

<para
>Python-skriptet använder <command
>kid3-cli</command
> för att generera iTunes Sound Check iTunNORM ramar från information om uppspelningsförstärkning.</para>
<programlisting
><![CDATA[
#!/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(('.mp3', '.m4a', '.aiff', '.aif')):
        fn = os.path.join(root, name)
        rg = subprocess.check_output([
          'kid3-cli', '-c', 'get "replaygain_track_gain"',
           fn]).strip()
        if rg.endswith(b' dB'):
          rg = rg[:-3]
        try:
          rg = float(rg)
        except ValueError:
          print('Value %s of %s in not a float' % (rg, fn))
          continue
        sc = (' ' + ('%08X' % int((10 ** (-rg / 10)) * 1000) )) * 10
        subprocess.call([
          'kid3-cli', '-c', 'set iTunNORM "%s"' % sc, fn])

if __name__ == '__main__':
  rg2sc(sys.argv[1])
]]>
</programlisting>
</sect1>

<sect1 id="kid3-cli-json">
<title
>&JSON;-format</title>
<para
>För att göra det enklare att tolka resultat från <command
>kid3-cli</command
> är det möjligt att få utmatningen på &JSON;-format. När begäran använder &JSON;-format blir också svaret &JSON;. Ett kompakt format på begäran ger också kompakt representation av svaret. Om begäran innehåller ett "id"-fält antas det bara en &JSON;-RPC-begäran och svaret innehåller fältet "jsonrpc" och "id" för begäran. Formatet på en begäran använder samma kommando som det vanliga kommandoradsgränssnittet, fältet "method" innehåller kommandot och parametrarna (om det finns några) anges i listan "params". Svaret innehåller objektet "result", som också kan vara null om motsvarande <command
>kid3-cli</command
> kommando inte returnerar ett resultat. I händelse av fel, returneras objektet "error" med fälten "code" och "message" som används av &JSON;-RPC. <screen width="80"
><prompt
>kid3-cli&gt; </prompt
><userinput
>{"method":"set","params":["artist","An Artist"]}</userinput>
<computeroutput
>{"result":null}</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>{"method":"get","params":["artist",2]}</userinput>
<computeroutput
>{"result":"An Artist"}</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>{"method": "get", "params": ["artist"]}</userinput>
<computeroutput
>{
    "result": "An Artist"
}
</computeroutput>
<prompt
>kid3-cli&gt; </prompt
><userinput
>{"jsonrpc":"2.0","id":"123","method":"get","params":["artist"]}</userinput>
<computeroutput
>{"id":"123","jsonrpc":"2.0","result":"An Artist"}</computeroutput
>
</screen>

</para>
</sect1>

</chapter>

<chapter id="credits">

<title
>Tack till och licens</title>

<para
>&kid3; </para>
<para
>Program skrivet av Urs Fleisch <email
>ufleisch@users.sourceforge.net</email
> </para>

<para
>Översättning Stefan Asserhäll <email
>stefan.asserhall@bredband.net</email
></para
> &underFDL; &underGPL; </chapter>

<appendix id="installation">
<title
>Installation</title>

<sect1 id="getting-kid3">
<title
>Hur man skaffar &kid3;</title>

<para
>&kid3; finns på <ulink url="https://kid3.kde.org"
>https://kid3.kde.org</ulink
>. </para>
</sect1>

<sect1 id="requirements">
<title
>Krav</title>

<para
>&kid3; behöver <ulink url="https://www.qt.io"
>&Qt;</ulink
>, <ulink url="http://www.kde.org"
>&kde;</ulink
> rekommenderas men är inte nödvändigt, eftersom &kid3; också kan kompileras som ett &Qt;-program. &kid3; kan kompileras för system där dessa bibliotek är tillgängliga, <abbrev
>t.ex.</abbrev
> för GNU/&Linux;, &Windows; och &macOS;. För att hantera Ogg/Vorbis-filer, behövs <ulink url="http://xiph.org/ogg/"
>libogg</ulink
>, <ulink url="http://xiph.org/vorbis/"
>libvorbis och libvorbisfile</ulink
>, för FLAC-filer behövs <ulink url="http://flac.sourceforge.net"
>libFLAC++ och libFLAC</ulink
>, <ulink url="http://id3lib.sourceforge.net"
>id3lib</ulink
> används för MP3-filer. Dessa fyra format stöds också av <ulink url="http://taglib.github.io/"
>TagLib</ulink
>, som också kan hantera Opus-, MPC-, APE-, MP2-, Speex-, TrueAudio-, WavPack-, WMA-, WAV-, AIFF-filer och tracker-moduler. För att importera från akustiska fingeravtryck används <ulink url="http://acoustid.org/chromaprint"
>Chromaprint</ulink
> och <ulink url="http://libav.org/"
>libav</ulink
>. </para>
<para
>&kid3; är tillgängligt för de flesta &Linux;-distributioner, &Windows; och &macOS;. Länkar finns på <ulink url="https://kid3.kde.org"
> https://kid3.kde.org</ulink
>. </para>

</sect1>

<sect1 id="compilation">
<title
>Kompilering och installation</title>

<para
>&kid3; kan kompileras med eller utan &kde;. Utan &kde; är &kid3; ett enkelt &Qt;-program och saknar några inställnings- och sessionsfunktioner. </para>
<para
>För en &kde;-version, gå till toppkatalogen och skriv <screen width="40"
><prompt
>%</prompt
> <userinput
>cmake .</userinput>
<prompt
>%</prompt
> <userinput
>make</userinput>
<prompt
>%</prompt
> <userinput
>make install</userinput
>
</screen>
</para>
<para
>Ställ in motsvarande alternativ i <userinput
>cmake</userinput
> för att kompilera för andra versioner av &Qt; eller &kde;. </para>
<para
>Om alla bibliotek inte är närvarande, byggs &kid3; med reducerad funktionalitet. Så du bör vara noga med att alla önskade utvecklingspaket är installerade. Å andra sidan, styr <userinput
>cmake</userinput
>-alternativ vilka bibliotek som kompileras med. Förval är <userinput
>-DWITH_TAGLIB:BOOL=ON -DWITH_MP4V2:BOOL=OFF -DWITH_ID3LIB:BOOL=ON -DWITH_CHROMAPRINT:BOOL=ON -DWITH_VORBIS:BOOL=ON -DWITH_FLAC:BOOL=ON </userinput
>. Alternativen kan inaktiveras genom att använda <userinput
>OFF</userinput
>. </para>
<para
>För att bygga &kid3; som ett &Qt;-program utan &kde;, använd alternativet<userinput
>-DWITH_APPS=Qt</userinput
> i <userinput
>cmake</userinput
>. För att både bygga ett &kde;- och ett &Qt;-program, använd <userinput
>-DWITH_APPS="Qt;KDE"</userinput
>. </para>
<para
>För att använda en specifik &Qt;-installation, ställ in <userinput
>-DQT_QMAKE_EXECUTABLE=/sökväg/till/qmake</userinput
>. </para>
<para
>Att generera RPM-paket stöds av filen <filename
>kid3.spec</filename
>. För &Debian;-paket, kör <filename
>build-deb.sh</filename
>. </para>

<para
>&Qt;-programmet kan också kompileras för &Windows; och &macOS;. Skriptet <filename
>build.sh</filename
> kan användas för att ladda ner och bygga alla nödvändiga bibliotek och skapa ett &kid3;-paket. </para>

</sect1>

<sect1 id="configuration">
<title
>Inställning</title>

<para
>Med &kde;, lagras inställningarna i <filename
>.config/kid3rc</filename
> och programmets tillstånd i <filename
>.local/share/kid3/kid3staterc</filename
>. Som ett &Qt;-program, finns filen i <filename
>.config/Kid3/Kid3.conf</filename
>. På &Windows;, lagras inställningarna i registret, och på &macOS; i en plist-fil. </para>
<para
>Miljövariabeln <varname
>KID3_CONFIG_FILE</varname
> kan användas för att ange inställningsfilens sökväg.</para>

</sect1>

</appendix>

<appendix id="dbus-interface">
<title
>&DBus; gränssnitt</title>

<sect1 id="dbus-examples">
<title
>&DBus;-exempel</title>

<para
>På &Linux; kan ett &DBus;-gränssnitt användas för att styra &kid3; med skript. Skript kan skrivas i vilket språk som helst med &DBus;-gränssnitt (<abbrev
>t.ex.</abbrev
> i Python) och kan läggas till i <guilabel
>Användaråtgärder</guilabel
> för att utöka funktionaliteten i &kid3;. </para>

<para
>Artisten i tagg 2 för aktuell fil kan tilldelas värdet "Dagslända" med följande kod: </para>

<variablelist>
<varlistentry
><term
>Skal</term>
<listitem>
<programlisting
>dbus-send --dest=org.kde.kid3 --print-reply=literal \
/Kid3 org.kde.Kid3.setFrame int32:2 string:'Artist' \
string:'Dagslända'
</programlisting>
<para
>eller enklare med &Qt;:s <command
>qdbus</command
> (<command
>qdbusviewer</command
> kan användas för att utforska gränssnittet i ett grafiskt användargränssnitt): </para>
<programlisting
>qdbus org.kde.kid3 /Kid3 setFrame 2 Artist \
'Dagslända'
</programlisting>
</listitem>
</varlistentry>
<varlistentry
><term
>Python</term>
<listitem>
<programlisting
>import dbus
kid3 = dbus.SessionBus().get_object(
  'org.kde.kid3', '/Kid3')
kid3.setFrame(2, 'Artist', 'Dagslända')
</programlisting>
</listitem>
</varlistentry>
<varlistentry
><term
>Perl</term>
<listitem>
<programlisting
>use Net::DBus;
$kid3 = Net::DBus->session->get_service(
  "org.kde.kid3")->get_object(
  "/Kid3", "org.kde.Kid3");
$kid3->setFrame(2, "Artist", "Dagslända");
</programlisting>
</listitem>
</varlistentry>
</variablelist>
</sect1>

<sect1 id="dbus-api">
<title
>&DBus; programmeringsgränssnitt</title>

<para
>Programmeringsgränssnittet för &DBus; specificeras i <filename
>org.kde.Kid3.xml</filename
>. Gränssnittet i &kid3; har följande metoder: </para>

<sect2 id="dbus-openDirectory">
<title
>Öppna fil eller katalog</title>
<funcsynopsis>
<funcprototype
><funcdef
>boolean <function
>openDirectory</function
></funcdef
> <paramdef
>string <parameter
>path</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>sökväg</replaceable
></term>
    <listitem
><para
>sökväg till fil eller katalog</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Returnerar true om ok.</para>
</sect2>

<sect2 id="dbus-unloadAllTags">
<title
>Ladda ur taggarna för alla filer som inte är ändrade eller markerade</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>unloadAllTags</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-save">
<title
>Spara alla ändrade filer</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>save</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om ok.</para>
</sect2>

<sect2 id="dbus-getErrorMessage">
<title
>Hämta ett detaljerat felmeddelande som tillhandahålls av vissa metoder</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>string <function
>getErrorMessage</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar detaljerat felmeddelande.</para>
</sect2>

<sect2 id="dbus-revert">
<title
>Ångrar ändringar i markerade filer</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>revert</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-batchImport">
<title
>Starta en automatisk import i bakgrunden</title>
<funcsynopsis>
<funcprototype
><funcdef
>boolean <function
>batchImport</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>profileName</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggmask (bit 0 för tagg 1, bit 1 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>profileName</replaceable
></term>
    <listitem
><para
>namn på bakgrundsimportprofil att använda</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-importFromFile">
<title
>Importera taggar från en fil</title>
<funcsynopsis>
<funcprototype
><funcdef
>boolean <function
>importFromFile</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>path</parameter
></paramdef
> <paramdef
>int32 <parameter
>fmtIdx</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>sökväg</replaceable
></term>
    <listitem
><para
>sökväg till fil</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>fmtIdx</replaceable
></term>
    <listitem
><para
>formatets index</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Returnerar true om ok.</para>
</sect2>

<sect2 id="dbus-importFromTags">
<title
>importera taggar från andra taggar</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>importFromTags</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>source</parameter
></paramdef
> <paramdef
>string <parameter
>extraction</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>källa</replaceable
></term>
    <listitem
><para
>format för att hämta källtext från taggar</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>extrahering</replaceable
></term>
    <listitem
><para
>reguljärt uttryck med ramnamn och infångningar för att extraheara från källtext</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-importFromTagsToSelection">
<title
>importera taggar från andra taggar för markerade filer</title>
<funcsynopsis>
<funcprototype
><funcdef
>array <function
>importFromTagsToSelection</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>source</parameter
></paramdef
> <paramdef
>string <parameter
>extraction</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>källa</replaceable
></term>
    <listitem
><para
>format för att hämta källtext från taggar</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>extrahering</replaceable
></term>
    <listitem
><para
>reguljärt uttryck med ramnamn och infångningar för att extraheara från källtext</para
></listitem>
  </varlistentry>
</variablelist>
<variablelist>
  <varlistentry>
    <term
><replaceable
>returnValues</replaceable
></term>
    <listitem
><para
>extraherat värde för "%{__return}(.+)"</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-downloadAlbumArt">
<title
>Ladda ner albumomslag</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>downloadAlbumArt</function
></funcdef
> <paramdef
>string <parameter
>url</parameter
></paramdef
> <paramdef
>boolean <parameter
>allFilesInDir</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>webbadress</replaceable
></term>
    <listitem
><para
>Webbadress till bildfil eller albumomslagsresurs</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>allFilesInDir</replaceable
></term>
    <listitem
><para
>true för att lägga till bilden i alla filer i katalogen</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-exportToFile">
<title
>Exportera taggar till en fil</title>
<funcsynopsis>
<funcprototype
><funcdef
>boolean <function
>exportToFile</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>path</parameter
></paramdef
> <paramdef
>int32 <parameter
>fmtIdx</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>sökväg</replaceable
></term>
    <listitem
><para
>sökväg till fil</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>fmtIdx</replaceable
></term>
    <listitem
><para
>formatets index</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Returnerar true om ok.</para>
</sect2>

<sect2 id="dbus-createPlaylist">
<title
>Skapa en spellista</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>createPlaylist</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om ok.</para>
</sect2>

<sect2 id="dbus-getPlaylistItems">
<title
>Hämta objekt i en spellista</title>
<funcsynopsis>
<funcprototype
><funcdef
>array <function
>getPlaylistItems</function
></funcdef
> <paramdef
>string <parameter
>path</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>sökväg</replaceable
></term>
    <listitem
><para
>sökväg till spellistefil</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Returerar en lista över absoluta sökvägar till objekt i spellistan.</para>
</sect2>

<sect2 id="dbus-setPlaylistItems">
<title
>Tilldela objekten i en spellista</title>
<funcsynopsis>
<funcprototype
><funcdef
>boolean <function
>setPlaylistItems</function
></funcdef
> <paramdef
>string <parameter
>path</parameter
></paramdef
> <paramdef
>array <parameter
>items</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>sökväg</replaceable
></term>
    <listitem
><para
>sökväg till spellistefil</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>items</replaceable
></term>
    <listitem
><para
>lista över absoluta sökvägar till objekt i spellistan</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Returnerar true om ok, false om inte alla objekt hittades och lades till eller spara misslyckades.</para>
</sect2>

<sect2 id="dbus-quit">
<title
>Avsluta programmet</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>avsluta</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-selectAll">
<title
>Markera alla filer</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>selectAll</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-deselectAll">
<title
>Avmarkera alla filer</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>deselectAll</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-firstFile">
<title
>Ställ in första filen som den aktuella filen</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>firstFile</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om det finns en första fil.</para>
</sect2>

<sect2 id="dbus-previousFile">
<title
>Ställ in föregående fil som den aktuella filen</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>previousFile</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om det finns en föregående fil.</para>
</sect2>

<sect2 id="dbus-nextFile">
<title
>Ställ in nästa fil som den aktuella filen</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>nextFile</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om det finns en nästa fil.</para>
</sect2>

<sect2 id="dbus-selectFirstFile">
<title
>Markera första filen</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>selectFirstFile</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om det finns en första fil.</para>
</sect2>

<sect2 id="dbus-selectPreviousFile">
<title
>Markera föregående fil</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>selectPreviousFile</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om det finns en föregående fil.</para>
</sect2>

<sect2 id="dbus-selectNextFile">
<title
>Markera nästa fil</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>selectNextFile</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om det finns en nästa fil.</para>
</sect2>

<sect2 id="dbus-selectCurrentFile">
<title
>Markera aktuell fil</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>selectCurrentFile</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om det finns en aktuell fil.</para>
</sect2>

<sect2 id="dbus-expandDirectory">
<title
>Expandera eller dra ihop aktuellt filobjekt om det är en katalog</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>boolean <function
>expandDirectory</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Ett objekt i fillistan är en katalog om getFileName() returnerar ett namn med '/' som det sista tecknet.</para>
<para
>Returnera true om aktuellt filobjekt är en katalog.</para>
</sect2>

<sect2 id="dbus-applyFilenameFormat">
<title
>Verkställ filnamnsformatet</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>applyFilenameFormat</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-applyTagFormat">
<title
>Verkställ taggformatet</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>applyTagFormat</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-applyTextEncoding">
<title
>Verkställ textkodning</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>applyTextEncoding</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-setDirNameFromTag">
<title
>Ange katalognamn från taggar</title>
<funcsynopsis>
<funcprototype
><funcdef
>boolean <function
>setDirNameFromTag</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>format</parameter
></paramdef
> <paramdef
>boolean <parameter
>create</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggmask (bit 0 för tagg 1, bit 1 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>format</replaceable
></term>
    <listitem
><para
>katalognamnsformat</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>skapa</replaceable
></term>
    <listitem
><para
>true för att skapa, false för att byta namn</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Returnerar true om ok, annars är felmeddelandet tillgängligt genom att använda getErrorMessage().</para>
</sect2>

<sect2 id="dbus-numberTracks">
<title
>Ställ in följande spårnummer i markerade filer</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>numberTracks</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>int32 <parameter
>firstTrackNr</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggmask (bit 0 för tagg 1, bit 1 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>firstTrackNr</replaceable
></term>
    <listitem
><para
>nummer att använda för första fil</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-filter">
<title
>Filtrera filerna</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>filter</function
></funcdef
> <paramdef
>string <parameter
>expression</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>uttryck</replaceable
></term>
    <listitem
><para
>filteruttryck</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-convertToId3v24">
<title
>Konvertera ID3v2.3 taggar till ID3v2.4</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>convertToId3v24</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

<sect2 id="dbus-convertToId3v23">
<title
>Konvertera ID3v2.4 taggar till ID3v2.3</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>convertToId3v23</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar true om ok.</para>
</sect2>

<sect2 id="dbus-getDirectoryName">
<title
>Hämta katalogens sökväg</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>string <function
>getDirectoryName</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar katalogens absoluta sökväg.</para>
</sect2>

<sect2 id="dbus-getFileName">
<title
>Hämta namnet på den aktuella filen</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>string <function
>getFileName</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Returnerar det verkliga absoluta filnamnet, slutar med "/" om det är en katalog.</para>
</sect2>

<sect2 id="dbus-setFileName">
<title
>Ställ in namnet på markerad fil</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>setFileName</function
></funcdef
> <paramdef
>string <parameter
>name</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>namn</replaceable
></term>
    <listitem
><para
>filnamn</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Filens namn byts när katalogen sparas.</para>
</sect2>

<sect2 id="dbus-setFileNameFormat">
<title
>Ställ in format att använda när filnamnet ställs in från taggarna</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>setFileNameFormat</function
></funcdef
> <paramdef
>string <parameter
>format</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>format</replaceable
></term>
    <listitem
><para
>filnamnsformat</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-setFileNameFromTag">
<title
>Ställ in filnamn för markerade filer från taggarna</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>setFileNameFromTag</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-getFrame">
<title
>Hämta ramens värde</title>
<funcsynopsis>
<funcprototype
><funcdef
>string <function
>getFrame</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>name</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>namn</replaceable
></term>
    <listitem
><para
>ramens namn (t.ex. "artist")</para
></listitem>
  </varlistentry>
</variablelist>
<para
>För att hämta binärdata, som en bild, kan namnet på en fil att skriva till läggas till efter <parameter
>namn</parameter
>, <abbrev
>t.ex.</abbrev
> ""Picture:/path/to/file". På samma sätt kan synkroniserad sångtext exporteras, <abbrev
>t.ex.</abbrev
> "SYLT:/sökväg/till/fil". </para>
<para
>Returnerar ramens värde.</para>
</sect2>

<sect2 id="dbus-setFrame">
<title
>Tilldela ramens värde</title>
<funcsynopsis>
<funcprototype
><funcdef
>boolean <function
>setFrame</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> <paramdef
>string <parameter
>name</parameter
></paramdef
> <paramdef
>string <parameter
>value</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>namn</replaceable
></term>
    <listitem
><para
>ramens namn (t.ex. "artist")</para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
><replaceable
>värde</replaceable
></term>
    <listitem
><para
>ramens värde</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Om det inte finns någon ram med <parameter
>namn</parameter
> för tagg 2 (<parameter
>tagMask</parameter
> 2), läggs en ny ram till. Om <parameter
>värde</parameter
> är tomt, tas ramen bort. För att lägga till binärdata, som en bild, kan en fil läggas till efter <parameter
>namn</parameter
>, <abbrev
>t.ex.</abbrev
> ""Picture:/path/to/file". "SYLT:/sökväg/till/fil" kan användas för att importera synkroniserad sångtext.</para>
<para
>Returnerar true om ok.</para>
</sect2>

<sect2 id="dbus-getTag">
<title
>Hämta alla ramar i en tagg</title>
<funcsynopsis>
<funcprototype
><funcdef
>array of string <function
>getTag</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
</variablelist>
<para
>Returnerar lista med alternerande ramnamn och värden.</para>
</sect2>

<sect2 id="dbus-getInformation">
<title
>Hämta teknisk information om filen</title>
<funcsynopsis>
<funcprototype>
  <funcdef
>array of string <function
>getInformation</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Egenskaperna är Format, Bithastighet, Samplingsfrekvens, Kanaler, Längd, Kanalläge, VBR, Tagg 1, Tagg 2. Egenskaper som inte är tillgängliga utelämnas.</para>
<para
>Returnerar lista med alternerande egenskapsnamn och värden.</para>
</sect2>

<sect2 id="dbus-setTagFromFileName">
<title
>Tilldela tagg från filnamn</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>setTagFromFileName</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-setTagFromOtherTag">
<title
>Tilldela tagg från en annan tagg</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>setTagFromOtherTag</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-copyTag">
<title
>Kopiera tagg</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>copyTag</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-pasteTag">
<title
>Klistra in tagg</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>pasteTag</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-removeTag">
<title
>Ta bort tagg</title>
<funcsynopsis>
<funcprototype
><funcdef
><function
>removeTag</function
></funcdef
> <paramdef
>int32 <parameter
>tagMask</parameter
></paramdef
> </funcprototype>
</funcsynopsis>
<variablelist>
  <varlistentry>
    <term
><replaceable
>tagMask</replaceable
></term>
    <listitem
><para
>taggbit (1 för tagg 1, 2 för tagg 2)</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2 id="dbus-reparseConfiguration">
<title
>Tolka om inställningen</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>reparseConfiguration</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
<para
>Automatiserade inställningsändringar är möjliga genom att ändra inställningsfilen och sedan tolka om inställningen.</para>
</sect2>

<sect2 id="dbus-playAudio">
<title
>Spelar markerade filer</title>
<funcsynopsis>
<funcprototype>
  <funcdef
><function
>playAudio</function
></funcdef>
  <void/>
</funcprototype>
</funcsynopsis>
</sect2>

</sect1>

</appendix>

<appendix id="qml-interface">
<title
>QML-gränssnitt</title>

<sect1 id="qml-examples">
<title
>QML-exempel</title>

<para
>QML-skript kan startas via fillistans sammanhangsberoende meny och det kan ställas in under fliken <link linkend="configure-user-actions-qml"
>Användaråtgärder</link
> i inställningsdialogrutan. Skriptet som ställs in där kan användas som exempel för att programmera egna skript. QML använder &javascript;, och här är det obligatoriska "Hello World". </para>

<programlisting
>import Kid3 1.0

Kid3Script {
  onRun: {
    console.log("Hej allesamman, katalogen är", app.dirName)
    Qt.quit()
  }
}
</programlisting>

<para
>Om skriptet sparas som <filename
>/sökväg/till/Exempel.qml</filename
> kan användarkommandot definieras som <command
>@qml /sökväg/till/Exempel.qml</command
> med namnet <userinput
>Test av QML</userinput
> och <guilabel
>Utmatning</guilabel
> markerat. Därefter kan det startas med alternativet <guilabel
>Test av QML</guilabel
> i fillistans sammanhangsberoende meny, så visas utmatningen i fönstret. </para>

<para
>Tyvärr är start av QML-skript genom att använda <command
>qml</command
> (t.ex. <command
>qml -apptype widget -I /usr/lib/kid3/plugins/imports /sökväg/till/exempel.qml</command
>) sönder i senare versioner av Qt. Men <command
>kid3-cli</command
> erbjuder ett alternativt sätt att köra ett QML-skript från kommandoraden genom att använda dess kommando <link linkend="cli-execute"
><command
>execute</command
></link
>. <screen width="80"
>kid3-cli -c "execute @qml /sökväg/till/exempel.qml"
</screen>
</para>

<para
>För att lista titlarna i tagg 2 för alla filer i aktuell katalog, skulle följande skript kunna användas: </para>

<programlisting
>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())
  }
}
</programlisting>

<para
>Om katalogen innehåller många filer, ett sådant skript kan blockera användargränssnittet under en viss tid. För längre åtgärder, bör det därför ta en paus då och då. Den alternativa implementeringen nedan har flyttat ut arbetet för en enstaka fil till en funktion. Funktionen aktiverar sig själv med en 1 ms tidsgräns i slutet, under förutsättning att flera filer måste behandlas. Det säkerställer att det grafiska användargränssnittet förblir mottagligt medan skriptet kör. </para>

<programlisting
>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()
  }
}
</programlisting>

<para
>Vid användning av <command
>app.firstFile()</command
> med <command
>app.nextFile()</command
>, processas alla filer i den aktuella katalogen. Om bara de markerade filerna ska påverkas, använd istället <command
>firstFile()</command
> och <command
>nextFile()</command
>, som är bekvämlighetsfunktioner i komponenten <classname
>Kid3Script</classname
>. Följande exempel är ett skript som bara kopierar den markerade filens skivnummer- och copyrightram. </para>

<programlisting
>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()
  }
}
</programlisting>

<para
>Fler exempelskript levereras med &kid3; och är redan registrerade som användarkommandon. <itemizedlist>
<listitem
><para
><guilabel
>ReplayGain till SoundCheck</guilabel
> (<filename
>ReplayGain2SoundCheck.qml</filename
>): Skapa iTunNORM SoundCheck information från ramar med uppspelningsförstärkning. </para
></listitem>
<listitem
><para
><guilabel
>Ändra storlek på omslag</guilabel
> (<filename
>ResizeAlbumArt.qml</filename
>): Ändra storlek på inbäddade omslagsbilder som är större än 500 x 500 bildpunkter. </para
></listitem>
<listitem
><para
><guilabel
>Extrahera omslag</guilabel
> (<filename
>ExtractAlbumArt.qml</filename
>): Extrahera alla inbäddade omslagsbilder och undvik dubbletter. </para
></listitem>
<listitem
><para
><guilabel
>Inbädda omslag</guilabel
> (<filename
>EmbedAlbumArt.qml</filename
>): Inbädda omslag funna i bildfiler till ljudfiler i samma katalog. </para
></listitem>
<listitem
><para
><guilabel
>Inbädda sångtexter</guilabel
> (<filename
>EmbedLyrics.qml</filename
>): Hämta osynkroniserade sångtexter från webbtjänst. </para
></listitem>
<listitem
><para
><guilabel
>Textkodning ID3v1</guilabel
> (<filename
>ShowTextEncodingV1.qml</filename
>): Hjälper till att hitta kodning av ID3v1-taggar genom att visa den aktuella filens taggar med alla tillgängliga teckenkodningar. </para
></listitem>
<listitem
><para
><guilabel
>ID3v1 till ASCII</guilabel
> (<filename
>Tag1ToAscii.qml</filename
>): Omvandlar utökade latinska tecken i ID3v1-taggar till ASCII. </para
></listitem>
<listitem
><para
><guilabel
>Engelskt titelskiftläge</guilabel
> (<filename
>TitleCase.qml</filename
>): Formaterar texten i taggarna med engelskt titelskiftläge. </para
></listitem>
<listitem
><para
><guilabel
>Skriv om taggar</guilabel
> (<filename
>RewriteTags.qml</filename
>): Skriv om alla taggar i de markerade filerna. </para
></listitem>
<listitem
><para
><guilabel
>Exportera CSV</guilabel
> (<filename
>ExportCsv.qml</filename
>): Exportera rekursivt alla taggar för alla filer till en CSV-fil. </para
></listitem>
<listitem
><para
><guilabel
>Importera CSV</guilabel
> (<filename
>ImportCsv.qml</filename
>): Importera rekursivt alla taggar för alla filer från en CSV-fil. </para
></listitem>
<listitem
><para
><guilabel
>Exportera JSON</guilabel
> (<filename
>Exportjson.qml</filename
>): Exportera rekursivt alla taggar för alla filer till en JSON-fil. </para
></listitem>
<listitem
><para
><guilabel
>Importera JSON</guilabel
> (<filename
>Importjson.qml</filename
>): Importera rekursivt alla taggar för alla filer till en JSON-fil. </para
></listitem>
<listitem
><para
><guilabel
>Exportera spellistekatalog</guilabel
> (<filename
>ExportPlaylist.qml</filename
>): Kopiera alla filer från en spellista till en katalog och byt namn på dem enligt deras position. </para
></listitem>
<listitem
><para
><guilabel
>QML-terminal</guilabel
> (<filename
>QmlConsole.qml</filename
>): Enkel terminal för att leka med &kid3;s QML programmeringsgränssnitt. </para
></listitem>
</itemizedlist>
</para>

</sect1>

<sect1 id="qml-api">
<title
>QML-programmeringsgränssnitt</title>

<para
>Programmeringsgränssnittet kan enkelt utforskas genom att använda QML-terminalen, som är tillgänglig som ett exempelskript med ett användargränssnitt. </para>

<sect2 id="qml-kid3script">
<title
>Kid3Script</title>

<para
><classname
>Kid3Script</classname
> är en vanlig QML-komponent som finns i katalogen med insticksprogram. Du skulle lika enkelt kunna använda en annan QML-komponent. Genom att använda <classname
>Kid3Script</classname
> blir det enkelt att starta skriptfunktionen med signalhanteraren <function
>onRun</function
>. Dessutom erbjuder den några funktioner: <programlisting
>onRun: Signalhanterare som anropas när skriptet startas
tagv1, tagv2, tagv2v1: Konstanter för taggparametrar
script: Åtkomst till skriptfunktioner
configs: Åtkomst till inställningsobjekt
getArguments(): Lista över skripargument
isStandalone(): true om skriptet inte startades inifrån Kid3
setTimeout(callback, delay): Startar återanrop efter delay ms
firstFile(): Till första markerade fil
nextFile(): Till nästa markerade fil
</programlisting>

</para>
</sect2>

<sect2 id="qml-script">
<title
>Skriptfunktioner</title>

<para
>Eftersom &javascript; och därför också QML bara har en begränsad uppsättning funktioner för skript, har objektet <function
>script</function
> några ytterligare metoder, exempelvis: </para>

<programlisting
>script.properties(obj): Sträng med Qt-egenskaper
script.writeFile(filePath, data): Skriv data i filen, true om ok
script.readFile(filePath): Läs data från fil
script.removeFile(filePath): Ta bort fil, true om ok
script.fileExists(filePath): true om filen finns
script.fileIsWritable(filePath): true om filen är skrivbar
script.getFilePermissions(filePath): Hämta filrättighetsbitar
script.setFilePermissions(filePath, modeBits): Tilldela filrättighetsbitar
script.classifyFile(filePath): Hämta filklassen (katalog "/", symbolisk länk "@",
   exe "*", file " ")
script.renameFile(oldName, newName): Byt namn på fil, true om ok
script.copyFile(source, dest): Kopiera fil, true om ok
script.makeDir(path): Skapa katalog, true om ok
script.removeDir(path): Ta bort katalog, true om ok
script.tempPath(): Sökväg till temporär katalog
script.musicPath(): Sökväg till musikfolder
script.listDir(path, [nameFilters], [classify]): Lista katalogposter
script.system(program, [args], [msecs]): Starta ett systemkommando synkront,
  [avslutningskod, standardutmatning, standardfelutmatning] om tidsgräns inte överskrids
script.systemAsync(program, [args], [callback]): Starta ett systemkommando
asynkront, återanrop görs med [avslutningskod, standardutmatning,
standardfelutmatning]
script.getEnv(varName): Hämta värde på miljövariabel
script.setEnv(varName, value): Tilldela miljövariabel värde
script.getQtVersion(): Qt-versionssträng, t.ex. "5.4.1"
script.getDataMd5(data): Hämta hexadecimal sträng med MD5-kondensat för data
script.getDataSize(data): Hämta storlek på bytefält
script.dataToImage(data, [format]): Skapa en bild från data
script.dataFromImage(img, [format]): Hämta data från en bild
script.loadImage(filePath): Läs in en bild från en fil
script.saveImage(img, filePath, [format]): Spara en bild i en fil, true om ok
script.imageProperties(img): Hämta egenskaper för en bild, avbildning med
  "width", "height", "depth" och "colorCount", tom om ogiltig bild
script.scaleImage(img, width, [height]): Skala en bild, returnerar skalad bild
</programlisting>

</sect2>

<sect2 id="qml-app">
<title
>Programsammanhang</title>

<para
>Med användning av QML, är en stor del av funktionerna i &kid3; tillgängliga. Programmeringsgränssnittet liknar det som används för <link linkend="dbus-api"
>&DBus;</link
>. För detaljerad information, se respektive anmärkningar. </para>

<programlisting
>app.openDirectory(path): Öppna katalog
app.unloadAllTags(): Ladda ur alla taggar
app.saveDirectory(): Spara katalog
app.revertFileModifications(): Ångra
app.importTags(tag, path, fmtIdx): Importera filer
app.importFromTags(tag, source, extraction): Importera från taggar
app.importFromTagsToSelection(tag, source, extraction): Importera från taggar från markerade filer
app.downloadImage(url, allFilesInDir): Ladda ner bild
app.exportTags(tag, path, fmtIdx): Exportera filer
app.writePlaylist(): Skriv spellista
app.getPlaylistItems(path): Hämta objekt i en spellista
app.setPlaylistItems(path, items): Tilldela objekt i en spellista
app.selectAllFiles(): Markera alla
app.deselectAllFiles(): Avmarkera
app.firstFile([select], [onlyTaggedFiles]): Till första fil
app.nextFile([select], [onlyTaggedFiles]): Till nästa fil
app.previousFile([select], [onlyTaggedFiles]): Till föregående fil
app.selectCurrentFile([select]): Markera aktuell fil
app.selectFile(path, [select]): Markera en specifik fil
app.getSelectedFilePaths([onlyTaggedFiles]): Hämta sökvägar för markerade filer
app.requestExpandFileList(): Expandera alla
app.applyFilenameFormat(): Använd filnamnsformat
app.applyTagFormat(): Verkställ taggformat
app.applyTextEncoding(): Verkställ textkodning
app.numberTracks(nr, total, tag, [options]): Nummerspår
app.applyFilter(expr): Filtrera
app.convertToId3v23(): Konvertera ID3v2.4.0 till ID3v2.3.0
app.convertToId3v24(): Konvertera ID3v2.3.0 till ID3v2.4.0
app.getFilenameFromTags(tag): Filnamn från taggar
app.getTagsFromFilename(tag): Filnamn till taggar
app.getAllFrames(tag): Hämta object med alla ramar
app.getFrame(tag, name): Hämta ram
app.setFrame(tag, name, value): Tilldela ram
app.getPictureData(): Hämta data från bildram
app.setPictureData(data): Tilldela data i bildram
app.copyToOtherTag(tag): Taggar till andra taggar
app.copyTags(tag): Kopiera
app.pasteTags(tag): Klistra in
app.removeTags(tag): Ta bort
app.playAudio(): Spela
app.readConfig(): Läs inställning
app.applyChangedConfiguration(): Verkställ inställning
app.dirName: Katalognamn
app.selectionInfo.fileName: Filnamn
app.selectionInfo.filePath: Absolut filsökväg
app.selectionInfo.detailInfo: Formatdetaljer
app.selectionInfo.tag(Frame.Tag_1).tagFormat: Tagg 1 format
app.selectionInfo.tag(Frame.Tag_2).tagFormat: Tagg 2 format
app.selectionInfo.formatString(tag, format): Ersätt koder i formatsträng
app.selectFileName(caption, dir, filter, saveFile): Öppna fildialogruta
för att markera en fil
app.selectDirName(caption, dir): Öppna fildialogruta för att markera en katalog
</programlisting>

<para
>För asynkrona operationer, kan återanrop anslutas till signaler. </para>

<programlisting
>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)
}
</programlisting>

</sect2>

<sect2 id="qml-configs">
<title
>Inställningsobjekt</title>

<para
>De olika inställningsdelarna kan kommas åt via metoder kallade <function
>configs</function
>. Deras egenskaper kan listas i QML-konsolen. <screen width="80">
script.properties(configs.networkConfig())
</screen
> Egenskaperna kan ställas in: <screen width="80"
>configs.networkConfig().useProxy = false
</screen>
</para>

<programlisting
>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()
</programlisting>

</sect2>

</sect1>

</appendix>

&documentation.index;
</book>
<!--
Local Variables:
mode: nxml
End:
-->
