Copyright © 2001-2004 Stefan Kebekus
Härmed ges tillåtelse att kopiera, distribuera och/eller ändra detta dokument under villkoren i GNU Free Documentation License, Version 1.1 eller någon senare version publicerad av Free Software Foundation; utan invarianta avsnitt, utan framsidestexter och utan baksidestexter. En kopia av licensen inkluderas i avsnittet som heter "GNU Free Documentation License".
Det här dokumentet beskriver KDVI version 1.1.
Innehållsförteckning
DVI-visaren är ett insticksprogram för KViewshell-programmet som låter KViewshell visa DVI-filer (.dvi
), som produceras av typsättningssystemet Tex. DVI-visaren stöder många utökningar av DVI-standarden, till exempel att infoga PostScript®-grafik och hyperlänkar. Mer detaljer, exempel och alla tekniska specifikationerna finns i filen KDVI-features.dvi
(klicka här för Tex-källtexten för filen).
För aktuell information, titta på DVI-visarens hemsida.
Tex är ett avancerat typsättningssystem avsett för vetenskaplig, och i synnerhet matematisk typsättning. Mer information om Tex och DVI finns på hemsidan för Tex användargrupp eller den tyska German DANTE e.V..
DVI-visaren startas oftast genom att bara klicka på en .dvi
-fil i filhanteraren. Det finns ett kdvi-kommando för bekvämlighetens skull, som anropar KViewshell med insticksprogrammet DVI-visaren redan laddat. Visaren kan därför startas med kommandot kdvi
. Kommandoraderna någon_sökväg/artikel.dvi
kdvi
eller någon_sökväg/artikel
kdvi
fungerar också. Om du är ansluten till Internet kan du komma åt filer som finns på andra datorer genom att ange en webbadress som parameter, så här: någon_sökväg/artikel.
kdvi
http://någon_sökväg/artikel.dvi
Om du anger en webbadress om parameter, kan du tala om för DVI-visaren att den ska hoppa direkt till ett visst ställe i DVI-filen. Till exempel får kdvi
DVI-visaren att öppna sida 43. Om du har inkluderat källfilsinformation, gör ett kommando som fil:artikel.dvi#43
kdvi
att DVI-visaren letar efter platsen i DVI-filen som motsvarar rad 43 i Tex-filen fil:artikel.dvi#src:143paper.tex
artikel.tex
. Du vill nog sällan använda det här alternativet själv, läs avsnittet om sökning framåt för att lära dig hur man ställer in en editor för att starta DVI-visaren automatiskt.
Glöm inte bort prefixet file:
, annars får du oväntade resultat. Kommandot kdvi
öppnar till exempel sidan 43 i filen fil:artikel.dvi#43
artikel.tex
. Kommandot kdvi
försöker öppna filen artikel.dvi#43
artikel.dvi#43
.
Det finns ett annat alternativ som du troligen inte behöver ange själv. Om du skriver kdvi
, laddar DVI-visaren filen om det inte finns någon annan instans som kör och redan har laddat filen. Om det finns det, visas den instansen av DVI-visaren överst. Ett kommando som --unique
någonsökväg/artikel.dvi
kdvi
kan användas i skalskript för att få en instans av DVI-visaren som kör att hoppa till sidan 43.--unique
fil:artikel.dvi#43
De vanliga väljarna som hanteras av Qt™- och KDE-program fungerar också: kdvi
--style
windows
--display
:0
--geometry
400x400+0+0
--caption
"DVI"
DVI-visaren kan skriva ut DVI-filer med det vanliga KDE-utskriftsgränssnittet. Internt använder DVI-visaren programmet dvips för att skapa PostScript®, som sedan skickas vidare till skrivaren. Om du vill skriva ut med DVI-visaren, måste dvips vara installerat. Programmet dvips använder egna konfigurationsfiler och inställningar, som är bra i de flesta fall. Om du bryr dig om att få bästa möjliga utskriftsresultat, bör du anpassa dvips för hand, och försäkra dig om att ställa in det förvalda Metafont-läget som passar bäst ihop med din skrivare. På många system hittar du GNU-texinfo dokumentation för dvips, och du kanske också vill leta efter en fil som heter dvips.dvi
eller något liknande.
Om du vill spara din fil med PostScript®- eller PDF-format, rekommenderas att du inte använder utskriftsfunktionen och dirigerar om skrivarutmatningen till en fil. Du bör istället använda exportfunktionerna som ger bättre kvalitet på utmatningen, behåller många av de specialfunktioner som DVI-formatet har och ser bättre ut i många visningsprogram, som Adobes Acrobat Reader. Du hittar exportfunktionerna i menyn .
Som för utskrift, så används det yttre programmet dvips för att skapa PostScript®-filen. Om DVI-filen innehåller hyperlänkar, infogas de också i PostScript®-filen. Om du är expert, och vill skapa utmatning som är optimerad för en viss skrivare, bör du troligtvis starta dvips för hand och välja lämpligt Metafont-läge själv.
För att skapa PDF-filer med hög kvalitet, översätter DVI-visaren DVI till PDF med det yttre programmet dvipdfm. Om du arbetar på en dator där en äldre utgåva av typsättningssystemet Tex är installerad, kanske programmet dvipdfm inte är installerat. Om så är fallet, måste du använda utskriftsfunktionen för att skapa PDF-utmatning.
Om du använder en äldre Tex-installation, och tittar på filen som skapats i Adobes Acrobat Reader, kan du mycket väl märka att några av typsnitten ser mycket dåliga ut även om utskriften är bra, och även om dokumentet ser bra ut i kghostview. Det här är ett känt problem med Acrobat Reader och bitmappsteckensnitt. När det här skrivs verkar den enda praktiska sättet att komma runt problemet vara att undvika bitmappade teckensnitt, eller uppgradera till en senare Tex-installation.
Även om dvipdfm skapar PDF-filer med hög kvalitet, ignorerar dvipdfm för närvarande infogad Postscript i DVI-filen. Infogad PostScript® skapas t.ex. av makropaketet xy, eller av funktionen "Infoga Postscript-filer" i KDVI som beskrivs nedan.
Om du märker att PDF-filen som skapas saknar grafikdata, använd utskriftsfunktionen i KDVI istället.
DVI-visaren kan också spara DVI-filerna på textformat.
DVI-filstandarden skapades inte med den här sortens funktion i åtanke. Funktionen fungerar därför bara bra med vanliga ASCII-tecken. Den fungerar inte med icke-europeiska språk. Beroende på teckensnitt som används i filerna, kan det också finnas problem med accenttecken eller omljud, och ibland med ligaturer.
Det traditionella sättet att använda grafik med Tex infogar inte grafikdata direkt i DVI-filen. Istället innehåller DVI-filen bara en länk till en grafikfil som finns på hårddisken. Fördelen med detta sätt är att DVI-filen förblir liten, och att grafikfilen kan ändras oberoende av dokumentets Tex-kod. Metoden blir dock ganska obekväm om du tänker arkivera DVI-filen, eller om du vill skicka den till någon annan: Istället för att hantera en ensam fil, måste du ta hand om en mängd filer, som måste vara på exakt den plats som anges i DVI-filen för att allt ska fungera.
Av den orsaken låter DVI-visaren dig inbädda yttre PostScript®-filer i DVI-filen. För att inbädda alla PostScript®-filer i en DVI-fil, använd menyalternativet .
DVI-filer med inbäddad PostScript® fungerar bra med de flesta andra program som hanterar DVI, t.ex. xdvi, dvips eller dvipdf. Ett undantag att lägga märke till är programmet dvipdfm, som för närvarande ignorerar inbäddad PostScript®. Eftersom dvipdfm används internt av funktionen "Exportera till PDF" i DVI-visaren, förvänta dig problem med den funktionen. Samma problem visar sig med andra program som använder inbäddad Postscript, t.ex. makropaketet xy för Tex.
Omvänd sökning är en mycket användbar funktion när du själv skriver en text med Tex. Om allt är riktigt inställt, kan du klicka på DVI-visarens fönster med
knappen på musen (på vissa system, om du inte har en treknappars mus, kan du använda och knapp samtidigt). Därefter öppnas din favoriteditor, laddar Tex-källfilen och hoppar till det riktiga stycket. För att använda omvänd sökning, gör så här:Skapa en DVI-fil som innehåller information för omvänd sökning. Det här förklaras i avsnittet Skapa Tex-filer för omvänd sökning nedan. Om du bara vill prova funktionen för omvänd sökning, kan du också använda exempelfilen KDVI-features.dvi
.
Tala om för DVI-visaren vilken editor du vill använda. Välj en editor i dialogrutan Inställningar (dialogrutan kan nås genom att välja i menyn ). Nästa kapitel i den här handboken, Dialogrutan Inställningar/Alternativ för Återgivning, förklarar den här dialogrutan i detalj.
Visa editorer måste startas för hand, eller behöver ytterligare inställningar. Du hittar en beskrivning för alla editorer som stöds i avsnittet Att ställa in editorn för omvänd sökning nedan.
Prova din inställning. Öppna DVI-filen med DVI-visaren och använd musens knapp för att klicka i DVI-visaren. Editorn ska dyka upp och visa Tex-filen.
Det finns i huvudsak två sätt att skapa DVI-filer som innehåller information för omvänd sökning: Du kan antingen använda en Tex/Latex binärfil som automatiskt skapar och infogar den nödvändiga informationen, eller du kan infoga ett extra paket som är skrivet i Tex/Latex.
En Tex binärfil som automatiskt skapar och infogar den nödvändiga informationen, är definitivt metoden att föredra för att infoga information för omvänd sökning. Om du använder version 2 eller senare av TeTeX Tex-distributionen, kan du använda kommandoradsväljaren 'src-specials' i kommandot tex eller latex, enligt följande:
tex --src-specials min_fil.texeller
latex --src-specials min_fil.tex
Om du inte har en Tex binärfil som har inbyggd omvänd sökinformation, kopiera filerna srcltx.sty
och srctex.sty
till katalogen där din Tex-fil finns (du kan göra detta genom att trycka på Skift-tangenten och vänster musknapp medan muspekaren är på en hyperlänk). Om du använder Latex, lägg till raden
\usepackage[active]{srcltx}i inledningen av din Latex-fil. Om du använder enkel Tex, ska raden
\include{srctex}göra susen.
Fastän omvänd sökning är ytterst användbart när du skriver ett dokument själv, kan det vara en god ide att ta bort informationen för omvänd sökning innan DVI-filen skickas till någon annan.
Fastän omvänd sökning i allmänhet fungerar mycket bra med de flesta editorer, kräver vissa av dem en del särskild behandling. Det här avsnittet förklarar hur man ställer in olika editorer.
Emacs fungerar bra med DVI-visaren. Det verkliga beteendet hos Emacs beror till stor del på inställningen. Som vanligt kan du anpassa Emacs helt och hållet, om du är villig att slåss med Lisp-kod.
DVI-visaren använder programmet emacsclient för att fjärrstyra Emacs.
Programmet emacsclient kräver att Emacs redan är startat, och att programmet Emacs-Server är startat inne i Emacs. Omvänd sökning fungerar inte om du inte har startat både Emacs och Emacs-Server.
För att starta Emacs Server, kan du göra något av följande:
Starta Emacs-Server i Emacs, genom att skriva M x server-start
Lägg till raden
(server-start)i din
.emacs
-fil. Starta om EmacsFörsäkra dig om att Emacs är installerad. Försök att starta emacs från kommandoraden.
DVI-visaren använder kommandot emacsclient för att fjärrstyra Emacs. Försäkra dig om att emacsclient är tillgänglig på kommandoraden genom att prova kommandot emacsclient
. Det här ska öppna ett nytt fönster i Emacs editorn.'Namn på en textfil'
Om emacsclient misslyckas med ett felmeddelande som unable to connect to local
, försäkra dig om att Emacs är startad. Kontrollera dessutom att Emacs-Server har startats genom att skriva M x server-start
.
Om du vill att fönstret automatiskt ska visas överst, lägg till raise-frame
funktionen i “server-switch-hook” (skriv M x customize-variable RET server-switch-hook
och skriv in funktionsnamnet i textfältet).
Om du har ändrat buffern sedan du senast sparade, kommer Emacs fråga dig: Revert buffer from file ...? (yes or no)
. Du vill troligen alltid svara no här, eftersom "revert" betyder att filen läses från disken igen, och gör att alla ändringar sedan du senast sparade går förlorade!
Troligen är gnuclients beteende att tyst ladda in den ändrade buffern att föredra. Lägg till följande rader i filen .emacs
för att härma gnuclients beteende med emacsclient:
(defadvice server-visit-files (around save-buffers last activate) "Try to emulate gnuclient behavior with emacsclient. Works only for visiting one buffer at a time." (let* ((filen (car (car (ad-get-arg 0)))) (buf (get-file-buffer filen)) (this-buf-modified-p nil)) ;;; the following is copied from server-visit-files, with ;;; a modification for the `verify-visited-file-modtime' test (if (and buf (set-buffer buf)) (if (file-exists-p filen) ;;; if the file has changed on disk, reload it ;;; using `find-file-noselect' (if (not (verify-visited-file-modtime buf)) (progn (find-file-noselect filen) ;;; if user answered `no', reset modtime anyway ;;; so that server-visit-files doesn't realize the ;;; difference: (set-visited-file-modtime))) ;;; if file exists no longer, we let server-visit-files ;;; deal with that t) (setq buf (find-file-noselect filen))) (setq this-buf-modified-p (buffer-modified-p buf)) (set-buffer buf) (set-buffer-modified-p nil) ad-do-it (set-buffer-modified-p this-buf-modified-p)))
LaTeX-redigeringssystem Kile, stöder KDVI mycket bra. Ingen extra inställning behövs. Ytterligare information om Kile finns på Kiles hemsida.
NEdit fungerar i allmänhet mycket bra. Att klicka i DVI-filen ska öppna ett nytt fönster. Om Tex-filen redan används i ett annat fönster av NEdit, visar det nyöppnade fönstret en annan vy av buffern. Annars laddas Tex-filen. När fönstret har öppnats, markerar NEdit första raden av det riktiga stycket.
DVI-visaren använder kommandot ncl för att fjärrstyra NEdit. Försäkra dig om att ncl är tillgängligt på kommandoraden genom att skriva kommandot ncl
. Det här bör öppna en instans av editorn NEdit. Om ncl inte är tillgängligt, kanske du använder en äldre version av NEdit. Om det är fallet, bör du antingen byta till en nyare version, eller så måste du använda alternativet Användardefinierad editor i inställningsdialogrutan.-noask
XEmacs fungerar bra med DVI-visaren. Det verkliga beteendet hos XEmacs beror till stor del på inställningen. Som vanligt kan du anpassa XEmacs helt och hållet, om du är villig att slåss med Lisp-kod.
DVI-visaren använder programmet gnuclient för att fjärrstyra XEmacs.
Programmet gnuclient kräver att XEmacs är startat, och att programmet gnuserv är startat inne i XEmacs. Omvänd sökning fungerar inte om du inte har startat både XEmacs och gnuserv.
För att starta gnuserv-programmet, kan du göra något av följande:
Starta gnuserv i XEmacs, genom att skriva M X gnuserv-start
Lägg till raden
(gnuserv-start)i din
.xemacs
fil. Om du använder en nyare version av XEmacs, är
>.xemacs
en katalog. I detta fall ska du lägga till raden i filen .xemacs/init.el
. Starta om XEmacsOm du inte vill öppna ett nytt fönster för varje anrop till editorn, och vill att fönstret automatiskt ska visas överst, ställ in “Gnuserv Frame” till “Use selected frame”, och lägg till “raise-frame” funktionen i “Visit Hook”. Skriv M x customize-group RET gnuserv
M-x customize-group RET gnuserv
för att aktivera inställningarna.
Försäkra dig om att XEmacs är installerad. Försök att starta xemacs från kommandoraden.
DVI-visaren använder kommandot gnuserv för att fjärrstyra XEmacs. Försäkra dig om att gnuclient är tillgänglig på kommandoraden genom att prova kommandot gnuclient
. Det här ska öppna ett nytt fönster i XEmacs editorn.Namn på en textfil
Om gnuserv misslyckas med ett felmeddelande som unable to connect to local
, försäkra dig om att XEmacs är startad. Kontrollera dessutom att gnuserv har startats genom att skriva M x gnuserv-start
.
Om du inte vill öppna ett nytt fönster för varje anrop till editorn, och vill att fönstret automatiskt ska visas överst, ställ in “Gnuserv Frame” till “Use selected frame”, och lägg till “raise-frame” funktionen i “Visit Hook”. Skriv M x customize-group RET gnuserv
för att aktivera inställningarna.
Funktionen för sökning framåt låter dig hoppa från editorn direkt till motsvarande plats i DVI-filen. Eftersom sökning framåt måste stödjas av editorn, fungerar det för närvarande bara med Emacs och XEmacs. Andra editorer läggs förhoppningsvis snart till.
För att använda sökning framåt måste du göra följande:
Ställa in editorn, det här beskrivs nedan.
Lägg till källfilsinformation i DVI-filen, t.ex. genom att använda paketet srcltx. Detta beskrivs i avsnittet "Skapa Tex-filer för omvänd sökning".
Om du använder Emacs och allt är riktigt inställt, trycker du bara på Ctrl+X Ctrl+J
, för att få DVI-visaren att dyka upp och hoppa till stället i Tex-filen som du för närvarande redigerar.
För att använda sökning framåt i Emacs, utför följande steg:
Ladda ner följande Emacs-skript, kdvi-search.el
(tryck på skifttangenten och vänster musknapp på filnamnet för att ladda ner det) och lagra det på en plats där Emacs kan komma åt det. Vi rekommenderar katalogen emacs-scripts
.
Lägg till raderna
(add-to-list 'load-path (expand-file-name "~/emacs-scripts/")) (require 'kdvi-search) (add-hook 'LaTeX-mode-hook (lambda () (local-set-key "\C-x\C-j" 'kdvi-jump-to-line))) (add-hook 'tex-mode-hook (lambda () (local-set-key "\C-x\C-j" 'kdvi-jump-to-line)))i filen
.emacs
. Starta om Emacs.Öppna Emacs, ladda en Tex-fil, skapa motsvarande DVI-fil, och skriv antingen in kommandot M+xkdvi-jump-to-line
eller tryck på Ctrl+X Ctrl+J
. Det kan hända att Emacs frågar dig efter namnet på en “masterfil”. Det här är användbart om du använder en Tex-fil som infogar andra filer: Masterfilen är toppnivåfilen som infogar de övriga. Emacs frågar kanske också om namnet på masterfilen ska sparas “som en lokal variabel”, dvs. som en kommentar sist i filen. Skriv antingen in ja
eller nej
för att fortsätta.
Försäkra dig om att Emacs är installerad. Försök att starta emacs från kommandoraden.
Om Emacs inte lyckas starta DVI-visaren, hittar du utmatningen i buffern kdvi-output.
För att ställa in XEmacs, följ stegen ovan för Emacs, men ändra filen .xemacs
istället för filen .emacs
. Om du använder en nyare version av XEmacs, kan .xemacs
vara en katalog. I det fallet, lägg till raderna i filen .xemacs/init.el
.
Dialogrutan Inställningar kan nås genom att välja -> i menyn .
Dialogrutan består av två flikar, Teckensnitt och Återgivning.
Traditionellt använder sättning med Tex teckensnitt som skapas av programmet MetaFont. Dessa teckensnitt lagras med PK-formatet. Även om ett noggrant inställt MetaFont-system skapar utskrifter av mycket hög kvalitet, kräver inställningen verklig expertis. MetaFont är inte särskilt bra på att skapa teckensnitt som passar för datorskärmar, och det finns bara ett fåtal MetaFont-teckensnitt tillgängliga för asiatiska språk.
För att komma förbi problemen, ingår teckensnitt som lagras med formatet "Postscript typ 1" i nyare Tex-installationer, ett teckensnittformat med bred användning i elektroniska publikationer. KDVI kan använda båda teckensnittformaten.
Följande bild visar dialogrutan för teckensnittsinställningar i DVI-visaren som kan användas för att styra DVI-visarens användning av de olika formaten av teckensnitt.
"Postscript typ 1" innehåller ofta "teckentips", dvs. ytterligare information som är avsedd att hjälpa programvara att skapa utdata av bättre kvalitet på datorskärmar. Kvaliteten hos teckentipsen varierar från teckensnitt till teckensnitt, och du bör experimentera för att se om aktivering av alternativet ger bättre resultat.
KDVI stöder ett stort antal utökningar av det ursprungliga DVI-formatet, t.ex. hyperlänkar, infogade grafikfiler eller infogad information om källkodsfiler. Utökningarna kallas "DVI-specialiteter". En fullständig beskrivning av specialiteter som stöds av KDVI finns i detta dokument.
Dialogrutan DVI-specialiteter ställer in stöd för vissa specialiteter.
Om det här alternativet är markerat, kommer DVI-visaren att visa PostScript®-grafik som är infogad i DVI-filen. Du bör troligen aktivera det här alternativet.
Om en extern PostScript®-fil inte hittas, ritar DVI-visaren en röd varningsruta istället. Tyvärr är återgivning av PostScript®-grafik mycket långsam i den nuvarande versionen av DVI-visaren. Vi kommer att förbättra hastigheten i senare versioner. Om det här alternativet är avstängt, ritar DVI-visaren antingen en grå ruta istället för grafiken, eller så lämnas utrymmet tomt.
Det finns inget standardiserat sätt att infoga PostScript®-grafik i en DVI-fil. Därför kan det inträffa att DVI-visaren inte kan visa grafik på ett riktigt sätt, även om det fungerar bra med andra program. Äldre versioner av xdvi och dvips stöder att köra externa kommandon. Det här är en svårartad säkerhetsrisk och är därför avsiktligt inte implementerat i DVI-visaren. Teknisk information om sätt att infoga PostScript® som stöds, finns i dokumentet KDVI-features.dvi
.
Om du avser att använda omvänd sökning, en mycket användbar funktion om du själv skriver Tex-dokument, måste du ange vilken editor som du ska använda, och hur den här editorn kan startas av DVI-visaren. I exemplet som visas, har användaren bestämt sig för editorn NEdit. Om du använder en av de förinställda editorerna från kombinationsrutan Editor, behöver du inte göra någonting mer. Om du vill använda en annan editor, välj Användardefinierad editor i kombinationsrutan Editor och skriv in kommandot som används för att starta din editor. Använd symbolerna %f and %l, som ersätts med namnet på Tex-filen, och raden i Tex-filen.
Om du använder en editor som inte stöds, skicka oss gärna e-post på (kebekus AT kde.org)
, och tala om vilken kommandorad du använder och hur du har ställt in din editor.
KDVI
DVI-visaren är baserad på det självständiga programmet KDVI 0.4.3 av Markku Hihnala. Det programmet är i sin tur baserat på xdvi version 18f, som har många upphovsmän.
Dokumentation är copyright 2001-2004, Stefan Kebekus (kebekus AT kde.org)
Översättning Stefan Asserhäll (stefan.asserhall AT comhem.se)
Det här programmet licensieras under villkoren i GNU General Public License.
Den här dokumentationen licensieras under villkoren i GNU Free Documentation License.
Would you like to make a comment or contribute an update to this page?
Send feedback to the KDE Docs Team