# Napredna raba

## Možnosti ukazne vrstice

Ko izvajate &appname; v ukazni vrstici, obstaja več možnosti za odpiranje podatkovnih datotek. Lahko jih vidite, če zaženete `tellico --help`. Omogočeno je lahko tudi beleženje diagnostičnih dnevnikov, kjer bo prikazan menijski element za prikaz diagnostičnega dnevnika. Možnost `--logfile` preusmeri dnevnik v datoteko.

    Raba: tellico [možnosti] [filename]

    Tellico - programska oprema za upravljanje zbirk - prosta in preprosta

    Možnosti:
      --nofile                  Ponovno ne odpiraj zadnje odprte datoteke
      --bibtex                  Uvoz <filename> kot datoteka bibtex
      --mods                    Uvoz <filename> kot datoteka MODS
      --ris                     Uvoz <filename> kot datoteka RIS
      --pdf                     Uvoz <filename> kot datoteka PDF
     --log                     Izhod dnevnika diagnostike
      --logfile <logfile>       Piši izhod dnevnika v <filename>

    Argumenti:
      [filename]                Datoteka za odpiranje

## &DBus; Vmesnik

&appname; ima minimalen &DBus; vmesnik, ki je lahko uporaben za skriptiranje ali interakcijo z delujočo aplikacijo iz ukazne vrstice. Kot pri vseh&DBus; klicih morate določiti storitev, s katero želite vzpostaviti vmesnik,in poseben vmesnik. Ime storitev &DBus; `org.kde.tellico`.

### Ukazi &DBus;

Dva primarna objekta &DBus; sta na razpolago v vmesniku tellico: `Tellico` in `Zbirke`.

#### `Tellico` Objekt

Poln seznam ukazov &DBus; v `tellico` objektu je prikazan spodaj:

    bool importTellico(QString file, QString action)
    bool importBibtex(QString file, QString action)
    bool importMODS(QString file, QString action)
    bool importPDF(QString file, QString action)
    bool importRIS(QString file, QString action)
    bool exportXML(QString file, bool filtered)
    bool exportZip(QString file, bool filtered)
    bool exportBibtex(QString file, bool filtered)
    bool exportHTML(QString file, bool filtered)
    bool exportCSV(QString file, bool filtered)
    QList<int> selectedEntries()
    QList<int> filteredEntries()
    void openFile(QString file)
    void setFilter(QString text)
    bool showEntry(int id)

Pri štirih ukazih za uvoz je prvi argument datoteka za uvoz, drugi pa dejanje uvoza. Na voljo so tri dejanja: zamenjaj, dodaj in spoji. Za uvoz so podprti štirje formati datotek: Tellico &XML; datoteke, datoteke Bibtex, datoteke MODS in datoteke RIS. Metapodatke iz datotek &PDF; je tudi mogoče uvoziti.

Za kateri koli od ukazov za izvoz besedila bo ime datoteke `--` napeljalo na standardni izhod.

Trenutna odprta zbirka v &appname; lahko izvozite v datoteko bodisi v Tellico &XML; format Tellico ZIP, Bibtex, &HTML; ali vrednosti, ločene z vejico (CSV). Ukazi za izvoz sprejmejo izbirni argument, s katerim določijo, ali naj bo zbirka omejena na trenutni filter ali ne.

Seznam ID-jev vnosov, ki so trenutno izbrani ali filtrirani, lahko olajša prikazovanje ali posodabljanje vnosov v pogledu.

Novo podatkovno datoteko lahko odprete z ukazom `openFile()`. Določiti je treba celotno pot.

Nov filter lahko nastavite z ukazom `setFilter()`, ki je enakovreden vnašanju v polje filtra v glavnem oknu.

Glede na ID vnosa bo `showEntry()` izbral ta vnos in prikazal podrobnosti vnosa v glavnem oknu.

#### Objekt `Zbirke`

Celoten seznam &DBus; ukazov v objektu `Zbirke` je prikazan spodaj:

    int addEntry()
    bool removeEntry(int entryID)
    QStringList allValues(QString fieldName)
    QStringList entryValues(int entryID, QString fieldName)
    QStringList selectedBibtexKeys()
    QString entryBibtexKey(int entryID)
    bool setEntryValue(int entryID, QString fieldName, QString value)
    bool addEntryValue(int entryID, QString fieldName, QString value)

Nov prazen vnos se lahko ustvari v trenutni zbirki z uporabo ukaza `addEntry()`. Povratna vrednost je ID vnosa, ki jih lahko nato uporabite za nastavitev vrednosti polj v vnosu. Vnos je lahkoizbrisani iz zbirke s klicem `removeEntry()`.

Klic `allValues()` z uporabo samo imena polja bo vrnil vse vrednosti za to polje za trenutno izbrane vnose. Če ni izbranih vnosov je povratni seznam prazen. Če je vključen ID vnosa v ukazu so vrnjene vrednosti polja za ta določen vnos.

Če je tekoča zbirka bibliografija, klic `selectedBibtexKeys()` vrne ključ navedbe Bibtex za vse izbrane vnose. BibtexKey za določen vnos lahko najdete v z uporabo ukaza `entryBibtexKey()`.

Vnose lahko urejate neposredno z &DBus; vmesnikom. Glede na vnosa ID, bo `setEntryValue()` neposredno nastavil vrednost polja. Da bi dodali vrednost, ne da bi to vplivalo na obstoječe vrednosti, uporabite `addEntryValue()`. Nova vrednost se doda na konec obstoječega seznama.

### &DBus; Primeri

Tukaj je nekaj primerov za skript &appname; z uporabo vmesnika &DBus;. Upoštevajte, da lahko na vašem sistemu ukaz `qdbus` obstaja kot `qdbus-qt5` ali kaj podobnega.

    Odpri datoteko Bibtex
    % qdbus org.kde.tellico /Tellico org.kde.tellico.importBibtex "/home/robby/reference.bib" "replace"
    true

    Izvoz datoteke Bibtex file
    % qdbus org.kde.tellico /Tellico org.kde.tellico.exportBibtex ~/documents/reference.bib
    true

    Izvoz datoteke Bibtex z uporabo trenutnega filtra
    % qdbus org.kde.tellico /Tellico org.kde.tellico.exportBibtex ~/documents/reference.bib true
    true

    Odmev ključa navedbe trenutne izbire
    % qdbus org.kde.tellico /Collections org.kde.tellico.selectedBibtexKeys
    stephenson2004

    Dodaj nov vnos in nastavi naslov
    % myid=`qdbus org.kde.tellico /Collections org.kde.tellico.addEntry`
    % qdbus org.kde.tellico /Collections org.kde.tellico.setEntryValue $myid title "My New Book"
    true