<artikkel xmlns="" spraak="no">
<tittel>Lese news med gnus</tittel>
<forfatter>daljord</forfatter>
<sammendrag>Gnus er en pakke til teksteditoren emacs for lesing og posting på news.</sammendrag>
<lenker>
<ekstern tittel="http://www.gnus.org" uri="http://www.gnus.org">http://www.gnus.org</ekstern>
</lenker>
<hoveddel>
<avsnitt>
<trykk>Gnus</trykk> er en tekstbasert newsklient i teksteditoren emacs. Du kan enten starte
det i konsollmodus eller i xmodus. For å starte det i xmodus må du ha en xserver.
</avsnitt>
<os2>Generelt</os2>
<avsnitt>
<trykk>Gnus</trykk> er en pakke til teksteditoren emacs for lesing og posting på news.
Programmet har et grensesnitt basert på kommandoer fra tastaturet som for alle andre programmer
i emacs. Mange vil i sitt første møte med gnus kunne føle at de har problemer med å få gjort det
de ønsker, samtidig som programmet oppleves som lite intuitivt. Dette er imidlertid et temporært
problem, og mitt inntrykk er at de fleste etterhvert får det samme forhold til gnus som til emacs,
nemlig at det er et fantastisk verktøy som en ikke ville vært foruten.
</avsnitt>
<avsnitt>
Det kommandobaserte grensesnittet vil av noen kunne oppleves som et pluss, av andre som et minus.
Fordelen er at du effektivt får gjort det du vil når du først er kjent med de vanligste kommandoene
, og i tillegg gjør det tekstbaserte grensesnittet at du kun trenger et terminalvindu fra f.eks. en
ssh-forbindelse for å lese news.
</avsnitt>
<os2>Starte og avslutte gnus</os2>
<avsnitt>
Du må starte emacs først, med kommandoen <kommando>emacs</kommando>, og deretter gnus med
kommandoen <kommando>M-x gnus</kommando>. Mer om syntaks i emacs kan du lese om
<infoweb tittel="emacs" aid="183">her</infoweb>. Et godt tips er at dersom du skulle komme til
å gjøre noe du ikke hadde tenkt til, kan du ofte komme deg ut av problemene ved å trykke
<uthev>CTRL+G</uthev>, som er en avbryt-funksjon i emacs.
</avsnitt>
<avsnitt>
For å avslutte gnus kan du trykke <kommando>q</kommando> eller gi kommandoen
<kommando>M-x gnus-group-exit</kommando>. Merk at gnus må avsluttes på denne måten for at du
ikke skal miste forandringer i newsrc filen din, slik at du må avslutte gnus før du f.eks.
avslutter emacs. Gnus lagrer av og til en midlertidig newsrc fil, slik at alt håp likevel
ikke er ute dersom emacs skulle kræsje, og gnus vil da ved oppstart spørre om du ønsker å
benytte den temporære kopien fremfor den originale newsrc filen.
</avsnitt>
<os2>Informasjon om gnus</os2>
<avsnitt>
Informasjon om gnus finnes i GNU Info Tree, som kan startes med kommandoen
<kommando>C-h i</kommando>. Dette er en
komplett dokumentasjon av programmet, og der skal du kunne finne ut alt du ønske å vite.
I dette dokumentet er det svært begrenset hva jeg får beskrevet, så du blir nødt til å bruke
info dersom du ønsker å lære mer om programmet.
</avsnitt>
<avsnitt>
Det kan også være nyttig å bruke kommandoen <kommando>C-h m</kommando> når du er inne i gnus
og lurer på fullstendig navn for en kommando. Dette henter opp en liste over de kommandoer
som er tilgjengelig i den major mode som emacs er inne i, for dette tilfellet gnus.
</avsnitt>
<avsnitt>
Det vil også kunne være nyttig å foreta søk blant gnus-kommandoene dersom du har en idé om hva
kommandoen heter med <kommando>M-x apropos</kommando> som kjører et regexp-søk
<fotnote>regexp: regular expression</fotnote>. For eksempel vil
et søk på <kommando>^gnus-.*mail.*$</kommando> liste opp alle gnus-kommandoer som inneholder
strengen mail. <kommando>C-h f</kommando> kan som ellers benyttes til å beskrive kommandoer
du vil vite betydningen av.
</avsnitt>
<os2>Melde seg på og av grupper</os2>
<avsnitt>
Noen kommandoer som er kjekke å kunne:
</avsnitt>
<tabell sammendrag="nyttige kommandoer om grupper i gnus" ramme="1">
<tr>
<th>Kommando</th>
<th>Funksjon</th>
</tr>
<tr>
<td><kommando>C-u 5 L</kommando></td>
<td>Lister opp alle gruppene du har meldt deg på</td>
</tr>
<tr>
<td><kommando>A k</kommando></td>
<td>Lister opp alle gruppene som har blitt 'killed'</td>
</tr>
<tr>
<td><kommando>A z</kommando></td>
<td>Lister opp alle gruppene som er i 'zombie' modus</td>
</tr>
<tr>
<td><kommando>l</kommando></td>
<td>Lister de gruppene det har kommet nye meldinger i</td>
</tr>
<tr>
<td><kommando>A M</kommando></td>
<td>Lister opp tilgjengelige grupper på serveren. Kan kjøre regexp-søk. Mer om dette under
tabellen.</td>
</tr>
<tr>
<td><kommando>u</kommando></td>
<td>Brukes etter å ha listet ut grupper. Melder deg av eller på den markerte gruppen.</td>
</tr>
</tabell>
<avsnitt>
Eksempel på regexp-søk i forbindelse med <kommando>A M</kommando> er <kommando>^no\..*$</kommando>
, dette vil liste opp alle grupper i no.*hierarkiet. <kommando>^ntnu\..*$</kommando> vil liste opp
alle grupper i ntnu.*hierarkiet.
</avsnitt>
<avsnitt>
Søkefunksjonaliteten med regexp er i seg selv en god grunn til å velge gnus til å lese news,
og er praktisk og behagelig å jobbe med når du først blir vant til den. For fullt ut å kunne utnytte denne, må en beherske regexp, som er ganske lett å lære seg.
</avsnitt>
<os2>Mer om grupper i gnus</os2>
<avsnitt>
Ved siden av hvert gruppenavn skal det normalt stå et tall som angir hvor
mange uleste artikler du har i gruppen. I tillegg vil du i gruppelister
kunne se bokstavkodene U, K og Z, eventuelt ingen bokstavkode. Manglende
bokstav betyr at du abonnerer på gruppen, en U betyr at du ikke abonnerer,
mens K betyr Killed og Z betyr Zombie. De tre siste vil i praksis bety det
samme for deg som bruker av news. Bokstavkodene henger sammen med at gnus
opererer med såkalte subscribtion levels som angir i hvor stor
grad du er påmeldt en gruppe. Et tall fra en til fem betyr at en er
påmeldt, seks og syv betyr ikke påmeldt, åtte betyr zombie, og ni betyr
killed.
</avsnitt>
<avsnitt>
Subscribtion level kan settes med <kommando>S-l</kommando> for en gruppe, og default
verdi for en påmeldt gruppe er tre. I utgangspunktet behøver du ikke
bekymre deg over denne inndelingen, men det kan være kjekt til mer avansert
bruk. Det er blant annet mulig å få gnus til å sortere grupper etter
subscribtion level og bruke ulike fargekoder, noe som kan være kjekt dersom
du ønsker å holde god oversikt og rette fokus mot grupper du anser som
viktigere enn andre. Grupper for fag du tar vil du
kanskje finne naturlig å gi nivå en, mens grupper med større volum og som
du leser mer for moro skyld kanskje kunne få
nivå fem. Mer om hva du kan bruke dette til finner du i info-filen.
</avsnitt>
<avsnitt>
Den tidligere nevnte kommando <kommando>C-u 5 L</kommando> ber gnus om å vise alle grupper
med subscribtion level
fem eller lavere, hvilket betyr samtlige grupper en er meldt på. Dersom fem ble erstattet
med åtte, ville det bety at gnus ville liste opp absolutt alle grupper på serveren.
</avsnitt>
<os2>Lesing av news</os2>
<avsnitt>
Du kan lese news ved å flytte markøren over den aktuelle gruppen og trykke <trykk>enter</trykk>.
Dette vil flytte deg inn i et såkalt <uthev>summary buffer</uthev> som enten inneholder en
liste over artiklene du ikke har lest, eller, dersom du har lest alle artiklene, en liste
over samtlige artikler som befinner seg på news serveren.
</avsnitt>
<avsnitt>
For å lese en artikkel er det bare å flytte markøren over den aktuelle artikkelen og trykke
<trykk>enter</trykk>. Inne i selve artikkelen kan du bla framover ved å trykke
<trykk>mellomromstasten</trykk> og bakover ved å bruke <trykk>delete-tasten</trykk>. Dersom du
trykker mellomromstasten når du har kommet til slutten av artikkelen, vil gnus hoppe over til
neste uleste artikkel. Dette vil også skje dersom du trykker <kommando>n</kommando>. Ved trykk på
<trykk>entertasten</trykk> vil artikkelen rulle ei linje framover. Dersom artikkelen er
svar på en annen artikkel, kan du bla deg til denne med å trykke <kommando>^</kommando> såfremt
denne fortsatt befinner seg på news-serveren (den behøver mao. ikke befinne seg i
<trykk>summary</trykk>-vinduet).
</avsnitt>
<avsnitt>
Når du vil hoppe ut av <trykk>summary buffer</trykk>, kan du trykke <kommando>q</kommando>.
Dette vil bevare status for alle artikler om hvorvidt de er lest eller ei. Dersom du ønsker
å markere alle uleste artikler som lest med catchup-kommandoen, kan du trykke
<kommando>c</kommando>. Avhengig av hvordan gnus er satt opp på maskinen du kjører på,
vil du da enten hoppe tilbake til listen over grupper eller gå inn i neste gruppe med uleste
artikler.
</avsnitt>
<avsnitt>
I <trykk>summary buffer</trykk> har du noen muligheter til å merke artikler.
Dersom du trykker <kommando>!</kommando> når du står på en artikkel, vil denne huskes
spesielt og listes opp hver gang du går inn i <trykk>summary</trykk>-bufferet for denne gruppen.
Dersom du markerer med <kommando>?</kommando>, vil artikkelen vises dersom det kommer et svar på
den, noe som kan være spesielt nyttig dersom det postes et spørsmål om moe du lurer på selv.
</avsnitt>
<avsnitt>
Artikler lagres på news-serveren for en begrenset tidsperiode for deretter å forsvinne.
Dersom du ønsker å ta vare på en artikkel, kan du trykke <kommando>*</kommando> når du står
på artikkelen. Den blir da lagt i en lokal cache slik at gnus finner den selv om den skulle
fjernes fra news-serveren. Det finnes også flere kommandoer for å lagre artikler til filer
eller inn i mail foldere.
</avsnitt>
<os2>Poste på news</os2>
<avsnitt>
Dersom du ønsker å svare på et innlegg, kan dette gjøres med <kommando>f</kommando>. Dersom du i
tillegg ønsker å sitere innlegget du svarer på, kan du trykke <kommando>F</kommando> istedenfor.
Hvis du istedenfor ønsker å svare privat, kan dette gjøres med de tilsvarende kommandoer
<kommando>r</kommando> og <kommando>R</kommando> for å sende svaret i mail til forfatteren av
artikkelen.
</avsnitt>
<avsnitt>
For å poste en artikkel til en gruppe gir du kommandoen <kommando>a</kommando> med markøren
over gruppen eller mens du er i et <trykk>summary buffer</trykk> for den aktuelle gruppen.
</avsnitt>
<avsnitt>
Når du er i buffer for å skrive news-posting eller mail, anbefales det å ta en titt på aktuelle
kommandoer med <kommando>C-h m</kommando>. For å sende postingen trykker du
<kommando>C-c C-c</kommando>. Når du prøver dette for første gang, bruk en av
<uthev>testgruppene</uthev> som
er satt av til dette slik som <trykk>no.test</trykk> eller <trykk>ntnu.test</trykk>, alt annet
er meget upopulært. Post heller ikke uten å ha satt deg inn i nettiketten, og dersom news er
nytt for deg bør du nøye deg med å lese noen dager eller uker for å komme mer inn i de
uskrevne regler som gjelder for denne formen for kommunikasjon.
</avsnitt>
<avsnitt>
Dersom du finner ut at du har kommet til å skrive eller gjøre noe slik at ditt innlegg
ikke burde ha vært postet, for eksempel dersom du kommer til å poste et innlegg om katolisismens
fortrinn på <trykk>no.alt.katter</trykk>, kan du prøve å fjerne artikkelen ved å velge denne og
så trykke <kommando>C</kommando>. Ikke alle news-servere har støtte for en slik cancel-funksjon,
så det kan være servere den ikke blir fjernet fra, men prøv likevel.
</avsnitt>
<os2>Konfigurering av gnus</os2>
<avsnitt>
Gnus kan i stor grad konfigureres etter eget ønske, noe som gjøres med
innstillinger i en fil .gnus på hjemmekatalogen. Det å skrive en slik fil
krever kjennskap til emacs lisp da det skjer i form av kommandoer til
emacs. Under er et eksempel på en .gnus fil. Det er fullt mulig at denne
ikke vil fungere med den versjonen av gnus som du bruker eller at den
inneholder konfigurasjoner som ikke passer for deg. For å se hva de ulike
innstillinger betyr, bruk <trykk>info</trykk> og/eller bruk <kommando>C-h f</kommando> pluss
kommandonavn fra gnus.
</avsnitt>
<avsnitt>
<kode>
;; GNUS configuration
(or (featurep 'gnus)
(require 'gnus))
(setq gnus-use-generic-from "stud.ntnu.no"
gnus-your-domain "stud.ntnu.no"
gnus-user-full-name "Ola Nordmann"
user-mail-address "olanor@stud.ntnu.no"
gnus-local-organization ""
gnus-signature-file (expand-file-name "~/.signature")
gnus-nntp-server nil
gnus-select-method '(nntp "news.ntnu.no")
gnus-author-copy nil
gnus-auto-select-next 'quietly
gnus-novice-user nil
gnus-cite-face-list 'dark
gnus-check-new-newsgroups'ask-server
gnus-use-dribble-file 't
gnus-large-newsgroup '1000
gnus-keep-same-level 't
gnus-thread-ignore-subject 't
gnus-summary-exit-hook 'gnus-summary-bubble-group
gnus-group-sort-function (list
'gnus-group-sort-by-alphabet
'gnus-group-sort-by-level
)
gnus-prompt-before-saving nil
gnus-cite-face-list (list
'custom-face-PaleTurquoise-default-default-nil-nil-nil
)
gnus-cite-hide-absolute '10
gnus-article-display-hook (list
'gnus-article-hide-headers-if-wanted
'gnus-article-hide-boring-headers
'gnus-article-treat-overstrike
'gnus-article-maybe-highlight
'gnus-article-highlight-citation
'gnus-article-hide-citation-maybe
)
)
(fset 'gnus-button-url 'w3-fetch)
</kode>
</avsnitt>
<avsnitt>
Dersom du kjører en grafisk emacs med vinduer, kan du ved i gnus å velge
Customize fra Help menyen også sette farger for ulike typer markering av
f.eks. header-felter i artikler.
</avsnitt>
<os2>Annet om gnus</os2>
<avsnitt>
En av grunnene til at mange velger gnus, er at det er et system med
<trykk>scoring</trykk>, noe du kan lese mer om i info. Dette er et system som
lar deg sette opp kriterier for artikler du har lyst til å lese og artikler
du har mindre lyst til lese. Konseptet går ut på at artikler får tallverdier,
scores, etter de oppsatte kriteriene. Dersom de er lei av søppel på
USENET<fotnote>USENET: news-nettverket</fotnote>, er antageligvis scoring noe
for deg.
</avsnitt>
<avsnitt>
Det kan være en idé av og til å gi kommandoen <kommando>b</kommando>, som vil sørge
for at grupper som ikke lenger finnes på serveren blir fjernet fra newsrc-filen.
Merk at dette kan ta litt tid.
</avsnitt>
</hoveddel>
</artikkel>