Ophavsret © 2001-2004 Stefan Kebekus
Tilladelse er hermed givet til at kopiere, videregive og/eller ændre dette dokument under betingelserne i GNU's Fri Dokumentation License, Version 1.1 eller en vilkårlig senere version publiceret af Free Software Foundation; uden invariante afsnit, uden tekster før omslaget, og uden tekster efter omslaget. En kopi af licensen er inkluderet i afsnittet ved navn " Medvirkende og licens".
Denne håndbog beskriver KDVI Version 1.1
Indholdsfortegnelse
KDVI er et plugin for KViewshell programmet som tillader KViewshell at vise DVI-filer (.dvi
) som er produceret af TeX typografi systemet. KDVI understøtter mange udvidelser af DVI standarden, for eksempel inklusion af PostScript® grafik eller hyperlink. Flere detaljer, eksempler og alle de tekniske specifikationer kan findes i filen KDVI-features.dvi
(eller se KDVI-features.tex
for TeX-kilden til denne fil).
For opdateret information, konsultér KDVI's hjemmeside.
TeX er et avanceret typografi system rettet mod videnskabelig, og især matematisk typografi. Mere information om TeX og DVI kan findes på hjemmesiden for TeX brugergruppen eller den tyske German DANTE e.V..
Det meste af tiden startes KDVI blot ved at klikke på en .dvi
-fil i filhåndteringen. Af behagelighedsgrunde findes der en kommando kdvi som kalder KViewshell med et KDVI-plugin allerede indlæst. Fremviseren kan derfor startes med kommandoen kdvi
Kommandolinjerne ensti/artikel.dvi
kdvi
eller ensti/artikel
kdvi
vil også virke. Hvis du er forbundet til internettet, kan du få adgang til filer der findes på andre computere ved at angive en URL som en parameter, på denne måde: ensti/artikel.
kdvi
http://ensti/paper.dvi
Hvis du giver en URL som parameter, kan du bede KDVI om at springe direkte til et bestemt sted i DVI-filen. For eksempel vil kdvi
få KDVI til at åbne side 43. Hvis du har inkluderet kildefils-information, vil en kommando file:paper.dvi#43
kdvi
få KDVI til at søge efter stedet i DVI-filen der svarer til linje 43 i TeX-filen file:paper.dvi#src:43paper.tex
paper.tex
. Du vil næppe selv bruge dette tilvalg — læs afsnittet om fremad søgning for at lære hvordan man sætter sin editor til at starte KDVI automatisk.
Glem ikke file:
præfixet ellers vil du få uventede resultater. For eksempel kommandoen kdvi
vil åbne side 43 i filen file:paper.dvi#43
paper.dvi
. Kommandoen kdvi
vil forsøge at åbne filen paper.dvi#43
paper.dvi#43
.
Der er et andet tilvalg som du formodentlig sjældent selv vil behøve at angive. Hvis du skriver kdvi
, så vil KDVI indlæse filen hvis der ikke allerede er en anden udgave kørende som allerede har filen indlæst. Hvis der er, vil denne udgave af KDVI komme frem foran. En kommando som --unique
ensti/paper.dvi
kdvi
kan bruges i skal-scripter til at få en kørende udgave af KDVI til at springe frem til side 43.--unique
file:paper.dvi#43
De sædvanlige parametre håndteret af Qt™ og KDE programmer virker også: kdvi
-style
windows
-display
:0
-geometry
400x400+0+0
-caption
"DVI"
KDVI kan udskrive dine DVI-filer ved brug af KDE's standard udskrifts grænseflade. Internt bruger KDVI programmet dvips til at generere PostScript®, som så sendes videre til printeren. Derfor må dvips være installeret hvis du ønsker at udskrive med KDVI. Programmet dvips bruger sine egne indstillingsfiler og sin egen opsætning, som er helt i orden til de fleste formål. Hvis du imidlertid gerne vil have optimale udskriftsresultater, skal du indstille dvips manuelt og sørge for at sætte en standard MetaFont tilstand som passer bedst til din printer — på mange systemer vil du finde en GNU-texinfo dokumentation for dvips, og du vil måske også kigge efter en fil der hedder dvips.dvi
eller noget lignende.
Hvis du ønsker at gemme din fil i PostScript® eller PDF-format, anbefales det ikke, at du bruger udskriftsfunktionen og omdirigerer udskriften til en fil. I stedet for kan du bruge eksport funktionen som producerer uddata af bedre kvalitet, der indeholder mange af dvi-formatets specielle egenskaber og ser bedre ud i mange fremvisningsprogrammer som for eksempel Adobe's Acrobat Reader. Du vil kunne finde eksportfunktionerne i menuen.
Som ved udskrift, bruges der et eksternt program dvips til at generere PostScript®-filen. Hvis DVI-filen indeholder hyperlink, vil disse også være inkluderede i PostScript®-filen. Hvis du er ekspert, og hvis du gerne vil generere uddata som er optimeret for en bestemt printer, så bør du formodentlig starte dvips manuelt og vælge den rigtige MetaFont tilstand selv.
For at producere PDF filer af høj kvalitet, konverterer KDVI DVI til PDF ved brug af det eksterne program dvipdfm. Hvis du arbejder på en maskine med en ældre distribution af TeX typografisystemet installeret, kan det være at programmet dvipdfm ikke er installeret. I dette tilfælde må du bruge udskriftsfunktionen til at generere PDF uddata.
Hvis du bruger en ældre TeX-installation og du kigger på den genererede fil i Adobe's Acrobat reader, vil du måske finde at nogle skrifttyper ser meget dårlige ud selvom udskriften er helt fin, og selvom dokumentet ser o.k. ud i kghostview. Dette er et kendt problem med Acrobat Reader og bitmap skrifttyper. Mens dette skrives synes den eneste praktiske nødløsning at være at undgå bitmap skrifttyper, eller at opgradere til en nyere TeX-installation.
Mens dvipdfm producere PDF filer af høj kvalitet, ignorerer dvipdfm for øjeblikket den PostScript® der er indlejret i DVI-filen. Indlejret PostScript genereres f.eks. af xy-makropakken, eller af "Indlejr PostScript-filer" funktionen i KDVI beskrevet nedenfor.
Hvis du finder at den genererede PDF-fil mangler grafiske data, så brug udskriftsfunktionen i KDVI i stedet for.
KDVI kan også gemme dine DVI-filer i tekstformat.
DVI-filens standard er ikke designet med henblik på denne slags funktionalitet. Denne funktion virker derfor kun godt med standard ASCII-tegn. Det vil ikke virke med ikke-europæiske sprog. Afhængig af de skrifttyper der bruges i filerne, kan der også være problemer med tegn der har accent eller umlaut, og sommetider med ligaturer.
Den traditionelle måde at bruge grafik sammen med TeX inkluderer ikke de grafiske data direkte i DVI-filen. I stedet indeholder DVI-filen kun en henvisning til en grafik-fil som findes på harddisken. Fordelen ved denne procedure er at DVI-filen forbliver lille, og at grafik-filen kan ændres uafhængigt af dokumentets TeX-kilde. Denne metode bliver imidlertid temmelig træls hvis du vil arkivere DVI-filen, eller hvis du ønsker at sende den til en anden: snarere end at skulle håndtere en enkel fil, skal du tage dig af flere filer, som skal opbevares nøjagtig på det sted der er angivet i DVI-filen for at det hele skal virke.
Af en grund tillader KDVI dig at indlejre eksterne PostScript®-filer i din DVI-fil. For at indlejre alle PostScript®-filer i en DVI-fil bruges menuindgangen
DVI-filer med indlejret PostScript® virker fint med de fleste andre DVI-håndteringsprogrammer, f.eks. xdvi, dvips eller dvipdf. Én bemærkelsesværdig undtagelse er dvipdfm-programmet, som for øjeblikket ignorerer den indlejrede PostScript®. Da dvipdfm bruges internt af "Eksportér til PDF"-funktionen i KDVI, kan du forvente problemer når du bruger denne funktion. Det samme problem opstår med andre programmer der bruger indlejret PostScript, f.eks. TeX's xy makro-pakke.
Invers søgning er en meget nyttig egenskab når du skriver et TeX-dokument selv. Hvis alting er rigtigt sat op, kan du klikke i KDVI's vindue med den museknap (på visse systemer kan man gøre dette ved samtidigt at klikke med og museknap, hvis man ikke har tre museknapper). Derefter vil din foretrukne redigering åbnes, indlæse TeX-kildefilen og springe hen til den passende paragraf. Hvis du vil bruge invers søgning skal du gøre følgende:
Producér en DVI fil der indeholder invers søgning information. Dette bliver forklaret i afsnittet Producér TeX-filer til invers søgning nedenfor. Hvis du blot ønsker at teste invers søgnings egenskaben, kan du også bruge eksempelfilen KDVI-features.dvi
Lad KDVI vide hvilken editor du gerne vil bruge. Vælg den i Indstillinger dialogen (denne dialog kan man komme til gennem i menuen menuen). Næste afsnit i denne dokumentation, Fremvisnings indstillinger, forklarer denne dialog i mere detalje.
Nogle tekstprogrammer skal startes manuelt, eller de har brug for yderligere indstilling. Du vil finde en beskrivelse af alle understøttede tekstprogrammer i afsnittet Opsætning af din editor til invers søgning nedenfor.
Test din opsætning. Åbn din DVI fil i KDVI og brug den museknap til at klikke i KDVI. Redigeringen skulle så komme frem og vise TeX filen.
Der er essentielt to måder at producere DVI-filer som indeholder invers søgeinformation: du kan enten bruge en TeX/LaTeX-kørbar som genererer og inkluderer den nødvendige information automatisk, eller du kan inkludere en ekstra pakke som er skrevet i TeX/LaTeX.
En TeX kørbar der genererer og inkluderer den nødvendige information automatisk er bestemt den foretrukne metode at inkludere invers søge information. Hvis du bruger version 2 eller større af TeTeX's TeX-distribution, kan du bruge 'src-specials' kommandolinjeflaget for tex- eller latex-kommandoen, som følger.
tex --src-specials minfil.texeller
latex --src-specials minfil.tex
Hvis du ikke har en TeX-kørbar som inkluderer invers søgeinformation i sig selv, så kopiér filerne srcltx.sty
og srctex.sty
til mappen hvor dine TeX-filer er (du kan gøre dette ved at trykke på Shift-tasten og museknap mens musen peger på et hyperlink.) Hvis du bruger LaTeX, tilføj linjen
\usepackage[active]{srcltx}til preamblen for din LaTeX-file. Hvis du bruger plain TeX, vil linjen
\include{srctex}gøre tricket.
Mens invers søgning er en virkelig god idé når du selv skriver et dokument, kan det måske være en god idé, at fjerne invers søgeinformationen før du sender DVI-filen til andre.
Mens invers søgning generelt virker temmelig godt med de fleste tekstprogrammer, er der nogle af dem der kræver lidt ekstra omhu. Dette afsnit forklarer hvordan man skal indstille sit tekstprogram.
Emacs virker godt med KDVI. Den rent faktiske opførsel fra Emacs side afhænger kraftigt af indstillingerne Som sædvanlig kan du brugerindstille Emacs fuldstændigt, hvis du er villig til at kæmpe din vej gennem Lisp kode.
KDVI bruger programmet emacsclient til fjernkontrol af Emacs.
Programmet emacsclient kræver at Emacs kører, og at programmet emacs-server er startet fra Emacs. Invers søgning vil ikke virke optimalt med mindre du har startet både Emacs og emacs-serveren.
For at starteEmacs-server kan du gøre et af følgende:
I Emacs, startes emacs-server ved at skrive M X server-start
Tilføj linjen
(server-start)til din
.emacs
-filen. Genstart Emacs.Sørg for at Emacs er installeret. Prøv at starte emacs fra kommandolinjen.
KDVI bruger kommandoen emacsclient til fjernkontrol af Emacs. Sørg for at emacsclient er tilgængelig på kommandolinjen ved at prøve kommandoen emacsclient
. Dette burde åbne en ny tekst i Emacs-programmet.Navn på en tekstfil
Hvis emacsclient mislykkes med en fejlmeddelelse som unable to connect to local
, så sørg for at Emacs kører. Derudover skal du sørge for at Emacs-server er blevet startet ved at skrive M x server-start
.
Hvis du ønsker at rammen skal auto-hæves, så tilføj raise-frame
-funktionen til “server-switch-hook” (gør M x customize-variable RET server-switch-hook
og indtast funktionsnavnet i tekstfeltet.
Hvis du har ændret bufferen siden du gemte sidst, så vil Emacs spørge dig: Revert buffer fra fil ...? (ja eller nej)
. Du vil formodentlig altid ønske at sige no her, da det at vende tilbage betyder at filen genindlæses fra disken, hvilket får alle ændringer til at gå tabt!
gnuclient's måde, hvor den ændrede buffer bliver stille genindlæst, er formodentlig at foretrække — tilføj de følgende to linjer til din .emacs
-fil for at emulere gnuclient's opførsel med emacsclient:
(defadvice server-visit-files (omkring save-buffers sidste aktivering) "Prøv at emulere gnuclient-opførsel med emacsclient. Virker kun når man besøger en buffer af gangen." (let* ((filen (car (car (ad-get-arg 0)))) (buf (get-file-buffer filen)) (this-buf-modified-p nil)) ;;; følgende er kopieret fra server-visit-files, med ;;; en ændring for `verify-visited-file-modtime' test (if (and buf (set-buffer buf)) (if (file-exists-p filen) ;;; hvis filen er ændret på disken, så genindlæs den ;;; ved brug af `find-file-noselect' (if (not (verify-visited-file-modtime buf)) (progn (find-file-noselect filen) ;;; hvis bruger svarer `nej', nulstil modtime alligevel ;;; så server-visit-files ikke bliver klar over ;;; forskellen: (set-visited-file-modtime))) ;;; hvis filen ikke længere eksisterer, lader vi server-visit-files ;;; tage sig af det 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-editor systemet Kile, understøtter KDVI meget fint. Ingen ekstra opsætning er nødvendig. Yderligere oplysninger om Kile kan findes på Kile's hjemmeside.
NEdit virker generelt virkelig godt. Klik i DVI filen åbner et nyt vindue. Hvis TeX-filen allerede er i brug i et andet vindue for NEdit, vil det nyligt åbnede vindue vise en anden visning af bufferen. Ellers indlæses TeX-filen. Efter åbning af vinduet, vil NEdit fremhæve den første linje af den passende paragraf.
KDVI bruger kommandoen ncl til fjernkontrol af NEdit. Sørg for at ncl er tilgængelig på kommandolinjen ved at prøve kommandoen ncl
. Dette skulle åbne en udgave af NEdit-programmet. Hvis ncl ikke er der, bruger du måske en ældre udgave af NEdit. I dette tilfælde bør du enten opgradere til en nyere version, eller du må bruge tilvalget Brugerdefineret redigering fra indstillingsdialogen.-noask
XEmacs virker godt med KDVI. Den rent faktiske opførsel fra XEmacs side afhænger kraftigt af indstillingerne Som sædvanlig kan du brugerindstille XEmacs fuldstændigt, hvis du er villig til at kæmpe din vej gennem Lisp kode.
KDVI bruger programmer gnuclient til fjernkontrol af XEmacs.
Programmet gnuclient kræver at XEmacs kører, og at programmet gnuserv er startet fra XEmacs. Invers søgning vil ikke virke med mindre du har startet både XEmacs og gnuserv.
For at startegnuserv-programmet kan du gøre et af følgende:
I XEmacs, startes gnuserv ved at skrive M X gnuserv-start
Tilføj linjen
(gnuserv-start)til din
.xemacs
-fil. Hvis du bruger en nyere udgave af XEmacs, vil .xemacs
være en mappe. I dette tilfælde skal du vedhænge linjen til filen .xemacs/init.el
. Genstart XEmacsHvis du ikke ønsker at åbne en ny ramme for hvert redigeringskald, og ønsker at rammen selv skal gå til toppen, sæt “Gnuserv Frame” til “Use selected frame”, og tilføj raise-frame
-funktionen til “Visit Hook”. Gør M x customize-group RET gnuserv
for at lave disse indstillinger.
Sørg for at XEmacs er installeret. Prøv at starte xemacs fra kommandolinjen.
KDVI bruger kommandoen gnuserv til fjernkontrol af XEmacs. Sørg for at gnuclient er tilgængelig på kommandolinjen ved at prøve kommandoen gnuclient
. Dette burde åbne en ny ramme i XEmacs-programmet.Navn på en tekstfil
Hvis gnuserv mislykkes med en fejlmeddelelse som unable to connect to local
, så sørg for at XEmacs kører. Sørg der ud over for at gnuserv er startet ved at skrive M x gnuserv-start
.
Hvis du ikke ønsker at åbne en ny ramme for hvert redigeringskald, og ønsker at rammen selv skal gå til toppen, sæt “Gnuserv Frame” til “Use selected frame”, og tilføj “raise-frame”-funktionen til “Visit Hook”. Gør M+X customize-group RET gnuserv
for at lave disse indstillinger.
Fremad-søgefunktionen tillader dig at springe fra din editor direkte ind til det tilsvarende sted i DVI-filen. Da fremad-søgning skal være understøttet af din editor, er det for øjeblikket kun Emacs og XEmacs der understøtter dette. Andre editorer vil forhåbentlig snart komme til.
For at bruge fremad-søgning, skal du gøre følgende:
Sæt din editor op —dette er beskrevet nedenfor.
Tilføj kildefil-information til din DVI-fil, f.eks. ved at bruge pakken srcltx Dette er beskrevet i afsnittet Producering af TeX-files til invers søgning.
Hvis du bruger Emacs og alting er sat rigtigt op, trykker du blot på Ctrl+X Ctrl+J
, og KDVI popper op og springer til stedet der svarer til stedet i TeX-filen som du redigerer for øjeblikket.
For at bruge fremad-søgning i Emacs, følg disse trin:
Hent følgende Emacs-script hjem, kdvi-search.el
(tryk på Shift og museknap og klik på filnavnet for at hente den) og gem den et sted hvor Emacs har adgang til den —vi anbefaler en mappe emacs-scripts
.
Tilføj linjerne
(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)))til din
.emacs
-fil. Genstart Emacs.Åbn Emacs, indlæs en TeX-fil, producér den tilsvarende DVI-fil, og indtast enten kommandoen M+xkdvi-jump-to-line
eller tryk på Ctrl+X Ctrl+J
. Det kan være at Emacs beder dig om navnet på en “master file”. Dette er nyttigt hvis du bruger en TeX-fil som inkluderer andre filer: master-filen er topniveau-filen som inkluderer de andre. Emacs vil måske også bede om at gemme navnet på master-filen “som en lokal variabel”, altså som en kommentar ved slutningen af filen. Skriv enten ja
eller nej
for at fortsætte!
Sørg for at Emacs er installeret. Prøv at starte emacs fra kommandolinjen.
Hvis det mislykkes for Emacs at starte KDVI, kan du finde dens uddata i bufferen kdvi-output.
For at sætte XEmacs, skal du følge trinene for Emacs ovenfor, men ændre din .xemacs
snarere end din .emacs
-fil. Hvis du bruger en meget ny udgave af XEmacs, er.xemacs
måske en mappe. I dette tilfælde, skal du vedhænge linjerne til .xemacs/init.el
.
Indstillingsdialogen kan nås ved at vælge i menuen.
Dialogen består af to faneblade, Skrifttyper og Fremvisning.
Traditionelt, bruger TeX-sætning skrifttyper der er genereret af MetaFont-programmet. Disse skrifttyper opbevares i PK-format. Mens et omhyggeligt indstillet MetaFont-system producerer udskrift af den højeste kvalitet, er dens indstilling et job for virkelige eksperter, MetaFont er ikke ret god til at producere skrifttyper der er passende for computer-skærme, og der er kun få tilgængelige MetaFont-skrifttyper for asiatiske sprog.
For at komme ud over disse problemer, inkludere nyere TeX-installationer derfor skifttyper der er opbevaret i "PostScript Type 1" format, som er et vidt brugt skrifttypeformat i elektroniske publikationer. KDVI kan bruge begge skrifttypeformater.
Følgende billede viser indstillingsdialogen for skrifttypevalg i KDVI, som kan bruges til at kontrollere KDVI's brug af de forskellige skrifttypeformater.
PostScript "Type 1" indeholder ofte "skrifttype-hint", dvs. yderligere information der er beregnet il at hjælpe programmerne til at producere uddata af bedre kvalitet på computer-skærme. Kvaliteten af skrifttype-hint varierer fra skrifttype til skrifttype, og du må eksperimentere for at se om aktivering af dette giver bedre resultater.
KDVI understøtter et stort antal udvidelser af det oprindelige DVI-format, f.eks. hyperlinks, inklusion af grafikfiler eller indlejret kildefilsinformation. Disse udvidelser er kendt som "DVI-specielle". En fuld udgave af de specielle der bliver understøttet af KDVI kan findes i dette dokument.
DVI-specielle dialog hjælper dig til at indstille støtte for nogen af de specielle.
Hvis dette valg er afkrydset vil KDVI vise PostScript® grafik som er indlejret i DVI filen. Du vil formodentlig ønske at sætte dette tilvalg.
Hvis en ekstern PostScript® fil ikke kan findes, vil KDVI tegne et rødt advarselsfelt i stedet for. Visning af PostScript® grafik er uheldigvis meget langsomt i denne version af KDVI. Vi vil forbedre på hastigheden i senere versions. Hvis denne indstilling er slået fra, vil KDVI enten tegne en grå kasse som en pladsholder for grafikken, eller lade pladsen være blank.
Der findes ingen standard måde at indlejre PostScript® grafik i en DVI-fil. Det kan derfor ske at KDVI ikke kan vise en grafik rigtigt som virker fint med andre programmer. Ældre versioner af xdviog dvips støtter udførsel af ydre kommandoer. Dette er en dårlig sikkerhedsrisiko og er derfor med vilje ikke implementeret i KDVI. Teknisk information om understøttede måder at inkludere PostScript® kan findes i dokumentet KDVI-features.dvi
.
Hvis du vi bruge invers søgning, en meget nyttig egenskab hvis du selv skriver dine TeX-dokumenter, må du angiver hvilken editor du vil bruge, og hvordan denne editor kan startes af KDVI. I eksemplet der er vist, har brugeren valgt NEdit-editoren. Hvis du bruger en af de allerede indstillede editorer fra Editor kombinationsfeltet, så behøver du ikke gøre nogetsomhelst andet. Hvis du ønsker at bruge en anden, så vælg Brugerdefineret editor fra Editor kombinationsfeltet og indtast kommandolinjen som skal bruges til at starte din editor. Brug pladsholderne %f and %l som vil blive erstattet med henholdsvis navnet på TeX-filen, linjen i TeX-filen.
Hvis du bruger en editor som ikke er understøttet, så send os et brev til (kebekus AT kde.org)
og fortæl os om kommandolinjen du bruger og hvordan du har indstilet din editor.
KDVI
KDVI 0.9 er baseret på det alenestående program KDVI 0.4.3 af Markku Hihnala. Det program er på den anden side baseret på xdvi version 18f som har mange forfattere.
Dokumentation ophavsret 2001-2004, Stefan Kebekus (kebekus AT kde.org)
Dansk oversættelse Erik Kjær Pedersen (erik AT binghamton.edu)
Dette program er udgivet under betingelserne i GNU General Public License.
Dokumentation er udgivet under betingelserne 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