##master-page:HelpOnMacros
##master-date:2006-04-29 05:18:10
#acl -All:write Default
#format wiki
#language da

<<Navigation(children)>>
<<TableOfContents>>

== Makroer ==
Makroer giver mulighed for at indsætte systemfunktioner i normale wiki-sider; det eneste særlige ved disse sider er at de indeholder makroer. Hvis du prøver at redigere en side som SenesteRettelser eller SystemInfo, vil du se hvad dette betyder.

For mere information om mulig opmærkning, se HjælpTilRedigering.

=== Søgemakroer ===

MoinMoin anvender nu en ny søgerutine, som lader dig foretage sofistikerede søgninger både med det interaktive søgefelt og enhver af søgemakroerne. For mere hjælp, se HjælpTilSøgning.

||<tablewidth="100%">'''Makro'''||'''Beskrivelse'''||'''Eksempel'''||
||<-3>`<<TitleSearch>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> opretter et søgefelt på en side, som gennemsøger sidetitler || Se FindSide ||
||<-3>`<<FullSearch>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> opretter et søgefelt på en side, som gennemsøger siders sider || See FindSide ||
||<-3>`<<FullSearch()>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser en liste af sider hvis indhold matcher den nuværende sides titel (som at klikke på sidetitlen) || Se KategoriKategori ||
||<-3>`<<FullSearch(tekst)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser en liste af sider hvis indhold matcher søgningen || Søgning efter {{{drevet}}}:<<FullSearch(drevet)>> ||
||<-3>`<<FullSearchCached(tekst)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Fungerer lissom `FullSearch` makroen, men husker resultater statisk. Brug den hvis du foretrækker hastighed over opdaterede resultater || Søgning efter {{{drevet}}}:<<FullSearchCached(drevet)>> ||
||<-3>`<<GoTo>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> går direkte til den side du angiver || Se FindSide ||
||<-3>`<<PageList(sidetitel-brudstykke)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser en liste af sider hvis titler matcher søgningen || Se HjælpIndhold ||

=== Navigering ===
||<tablewidth="100%">'''Makro'''||'''Beskrivelse'''||'''Eksempel'''||
||<-3>`<<RecentChanges>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> en liste over nyligt redigerede sider || Se SenesteRettelser ||
||<-3>`<<TitleIndex>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> en oversigt over alle sidetitler || Se TitelListe ||
||<-3>`<<WordIndex>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> en oversigt over alle ord i sidetitler || Se OrdListe ||
||<-3>`<<WantedPages>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser henvisninger til ikke-eksisterende sider || Se ØnskedeSider ||
||<-3>`<<OrphanedPages>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser sider som ingen andre sider henviser til || Se ForældreløseSider ||
||<-3>`<<AbandonedPages>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser sider som i længst tid har været uredigerede || Se EfterladteSider ||
||<-3>`<<RandomPage>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> henviser til en tilfældig side || <<RandomPage>> ||
||<-3>`<<RandomPage(#)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser et antal tilfældige sider || To tilfældige sider:<<RandomPage(2)>> ||
||<-3>`<<TableOfContents([maksdybde])>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> opstiller en lokal indholdsfortegenelse, eventuelt begrænset til en maksimal dybde || Se ovenfor ||
||<-3>`<<Anchor(ankernavn)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> makro til at indsætte et anker i en side || <<Anchor(her)>>[[#her]] ||
||<-3>`<<Navigation(børn[,maksdybde])>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> makro til at vise alle en sides "børn" || Se øverst på HelpOnMacros ||
||<-3>`<<Navigation(søskende[,maksdybde])>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> hurtig navigering til en sides "søskende" (samme niveau undersider) || Se HelpOnMacros/MailTo ||
||<-3>`<<Navigation(slideshow)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> laver en henvisning til at skifte mellem slideshow og wiki modus, og en henvisning til at starte slideshowet || Se HelpOnSlideShows ||
||<-3>`<<Navigation(slides)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser første/forrige/næste/sidste henvisninger || See HelpOnSlideShows ||
||<-3>`<<AttachInfo>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser antal vedhæftede filer for den nuværende side || Se HelpOnActions/AttachFile ||
||<-3>`<<AttachInfo(sidenavn)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser antal vedhæftede filer for en side || Se HelpOnActions/AttachFile ||
||<-3>`<<AttachList>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser en liste over vedhæftede filer for den nuværende side || Se HelpOnActions/AttachFile ||
||<-3>`<<AttachList(sidenavn)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser en liste over vedhæftede filer for en side || Se HelpOnActions/AttachFile ||

=== Systeminformation ===
||<tablewidth="100%">'''Makro'''||'''Beskrivelse'''||'''Eskempel'''||
||<-3>`<<InterWiki>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> en liste over alle kendte [[InterWikiDansk|InterWiki]] navne || InterWikiDansk ||
||<-3>`<<SystemInfo>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> info om wiki'en, python-oversætteren og værtssystemet || SystemInfo ||
||<-3>`<<PageCount(exists)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> nuværende sideoptælling. Hvis `exists` tilføjes som et argument, vises kun sider som eksisterer. || <<PageCount>> sider ||
||<-3>`<<PageSize>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser en liste over størrelse af alle sider || Se SideStørrelse ||
||<-3>`<<StatsChart(type)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser statistiske diagrammer (nuværende definerede typer: hitcounts, pagesize, useragents) || Se HændelseStatistik og undersider ||
||<-3>`<<SystemAdmin>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Information for systemadministratorer || Kræver administrationsrettigheder.<<BR>> <<SystemAdmin>> ||

=== Andet ===
||<tablewidth="100%">'''Makro'''||'''Beskrivelse'''||'''Eksempel'''||
||<-3>`<<ImageLink(billede,mål[,width=bredde[,height=højde]][,alt="alternativ tekst"])>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Denne makro anvendes til at lave en henvisning som viser et billede (enten vedhæftet eller en URL) og henviser til enten en URL eller en wikiside. Valgfrit kan størrelsen på billedet justeres. Hvis intet mål angives, vil billedet henvise til sig selv. || See HelpOnMacros/ImageLink ||
||<-3>`<<Icon(piktogram)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;">vis systempiktogrammer||  See HelpOnNavigation||
||<-3>`<<UserPreferences>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser en brugerprofil-dialog || Se BrugerProfil ||
||<-3>`<<UserPreferences(createonly)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser brugeroprettelsesdialog ||  ||
||<-3>`<<BR>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> indsætter et linjeskift || 1. linje<<BR>>2. linje ||
||<-3>`<<RandomQuote(sidenavn)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Vælger et tilfældigt citat fra en given side, eller fra `LykkeKager` hvis udeladt (eller fra FortuneCookies, afhængigt af opsætning) || <<RandomQuote>> ||
||<-3>`<<Include(HelloWorld[,"heading"[,level]])>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> inkluderer indhold fra en anden side || for detailer se [[HelpOnMacros/Include]] ||
||<-3>`<<FootNote(tekst)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Tilføjer en fodnote<<FootNote(teksten kan ikke wiki-opmærkning)>>, eller viser opsamlede fodnoter når ingen argumenter er angivet || Se nedenfor for et eksempel ||
||<-3>`<<Date(tidsstempel)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser et tidsstempel ifølge systemopsætningen || <<Date>> ||
||<-3>`<<DateTime(tidsstempel)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> viser et tidsstempel<<FootNote("tidsstempel" kan udelades (nuværende tid), være antal sekunder siden 1970 (unix tidsstempel), eller en W3C tidsspecifikation ("2002-01-23T12:34:56"). Se RFC822, sect. 5. )>> ifølge brugerprofil || <<DateTime>> ||
||<-3>`<<GetText(tekst)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> indlæser I18N tekster (primært til brug i hjælpesider) || "Edit``Text" er oversat til "<<GetText(EditText)>>" ||
||<-3>`<<TeudView>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> anvendeligt for intranet udvikler-wiki'er, beregnet til at vise pydoc dokumentation, formatteret via et XSLT stilark || Se [[http://twistedmatrix.com/wiki/python/TeudProject]] ||
||<-3>`<<MailTo(email)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Sikrer din email-adresse imod spam bots || for detaljer se HelpOnMacros/MailTo ||
||<-3>`<<NewPage(SideSkabelon,KnapMærkat,OverliggendeSide[,NavneSkabelon])>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Giver brugeren mulighed for nemt at oprette (under)sider, vha. en `SideSkabelon` som skabelon for den nye side og tekststrengen `NavneSkabelon` som skabelon for den nye sides navn.<<FootNote(`NavneSkabelon` er formateret med `time.strftime()`, undtagen `%s` som erstattes med redigeringsfeltet (som kun vises hvis det er nødvendigt). Hvis `NavneSkabelon` ikke er angivet eller tomt, falder tilbage til `%s`.)>> || <<NewPage(KategoriSkabelon, Opret ny kategori,,Kategori%s)>>||
||<-3>`<<GetVal(Opslagsside,term)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Hent opslag fra opslagssider || Hvis du har en side kaldet DanishDict som indeholder en definition på ''Test'', skulle du kunne se en oversættelse her: <<GetVal(DanishDict,Test)>> ||
||<-3>{{{<<MonthCalendar(,,12)>>`||
||<5%><<BR>>||<^ 75% style="margin: 10px;"> Viser en kalender og opretter henvisninger til hver dag som undersider || Se HelpOnMacros/MonthCalendar ||

<<FootNote>>

=== Skriv din egen makro ===
Opret en fil kaldet {{{MakroNavn.py}}} under din {{{data/plugin/macro}}} mappe. Sørg for at den har en enkelt metode kaldet {{{execute(macro, arguments)}}}, som er startstedet.
 * ''macro'' er en instans af klassen Macro, og evaluerer også til en streng af makronavnet.
 * ''arguments'' er et arbitrært argument du kan sende ind med parametre til din makro.

Alle {{{Macro}}} instanser har et {{{request}}} medlem som du kan tilgå formularparametre igennem, og andre informationer relateret til bruger-interaktion.

{{{execute()}}} bør bruge en formateringsrutine til at konstruere korrekt opmærkning til målformatet. I de fleste tilfælde er dette HTML, så at skrive en makro som returnerer HTML vil fungere i de fleste tilfælde men fejle når formater som XML eller `text/plain` forespørges.

For eksempel, hvis din wikiside indeholder følgende linje:
{{{
<<MakroNavn(arg1,arg2,arg3)>>
}}}

Så kunne du skrive en !MakroNavn.py fil som denne:
{{{#!python
Dependencies = []

def execute(macro, args):
    return macro.formatter.text("I fik disse argumenter fra en makro %s: %s" %
    (str(macro), args))
}}}

 /!\ Tilføj et emne til {{{Dependencies}}} hvis uddata fra din makro ikke skal caches. Dette er vigtigt if makro-uddata kan ændre sig fra et øjeblik til det næste, for eksempel hvis din makro søger i wikisider som måske bliver redigeret af andre brugere, eller indlæser information fra en ekstern database med indhold som ændrer sig. I øjeblikket er værdien og navn på emnet uden betydning, og kan betragtes som en kort beskrivelse af 'hvorfor resultater af denne makro ikke skal caches', men kig venligst på emner anvendt i andre makroer for værdier som kan være passende.

<<FootNote>>
