better link anchors
This commit is contained in:
parent
fb41dd75c4
commit
1d5dd87230
8 changed files with 26 additions and 13 deletions
2
dump.go
2
dump.go
|
|
@ -27,6 +27,7 @@ func dumpWiki() error {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
defer engine.Close()
|
||||||
var arts []DumpArticle
|
var arts []DumpArticle
|
||||||
titles, err := engine.Dump()
|
titles, err := engine.Dump()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -60,6 +61,7 @@ func restoreWiki() (err error) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
engine = NewEngine(index)
|
engine = NewEngine(index)
|
||||||
|
defer engine.Close()
|
||||||
var arts []DumpArticle
|
var arts []DumpArticle
|
||||||
err = json.NewDecoder(os.Stdin).Decode(&arts)
|
err = json.NewDecoder(os.Stdin).Decode(&arts)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
||||||
|
|
@ -178,7 +178,7 @@ func (e *Engine) Search(public bool, search string) (string, error) {
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
if res.Total == 0 {
|
if res.Total == 0 {
|
||||||
return "<h4>No search results</h4>", nil
|
return "<b>No search results</b>", nil
|
||||||
} else if res.Total == maxSearchResult {
|
} else if res.Total == maxSearchResult {
|
||||||
return "", errors.New("engine: too many search results")
|
return "", errors.New("engine: too many search results")
|
||||||
}
|
}
|
||||||
|
|
@ -191,7 +191,7 @@ func (e *Engine) Search(public bool, search string) (string, error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
html += `<h5><a href="/wiki/` + hit.ID + `">` + art.Title + "</a></h5>"
|
html += `<a href="/wiki/` + hit.ID + `"><b>` + art.Title + "</b></a>"
|
||||||
for fragField, frags := range hit.Fragments {
|
for fragField, frags := range hit.Fragments {
|
||||||
if fragField == "title" || fragField == "search" {
|
if fragField == "title" || fragField == "search" {
|
||||||
html += `<pre style="white-space: pre-wrap">`
|
html += `<pre style="white-space: pre-wrap">`
|
||||||
|
|
|
||||||
15
main.go
15
main.go
|
|
@ -61,8 +61,13 @@ func main() {
|
||||||
flag.BoolVar(&restore, "restore", false, "restore a json dump to the data directory (dump is read from stdin)")
|
flag.BoolVar(&restore, "restore", false, "restore a json dump to the data directory (dump is read from stdin)")
|
||||||
flag.Parse()
|
flag.Parse()
|
||||||
|
|
||||||
|
err := os.Chdir(datadir)
|
||||||
|
if err != nil {
|
||||||
|
logger.Fatal("main: ", err)
|
||||||
|
}
|
||||||
|
|
||||||
if dump {
|
if dump {
|
||||||
err := dumpWiki()
|
err = dumpWiki()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal("dump: ", err)
|
logger.Fatal("dump: ", err)
|
||||||
}
|
}
|
||||||
|
|
@ -70,7 +75,7 @@ func main() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if restore {
|
if restore {
|
||||||
err := restoreWiki()
|
err = restoreWiki()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal("restore: ", err)
|
logger.Fatal("restore: ", err)
|
||||||
}
|
}
|
||||||
|
|
@ -81,16 +86,12 @@ func main() {
|
||||||
User: user,
|
User: user,
|
||||||
Group: group,
|
Group: group,
|
||||||
}
|
}
|
||||||
err := godrop.Drop(cfg, func() (net.Listener, error) {
|
err = godrop.Drop(cfg, func() (net.Listener, error) {
|
||||||
return net.Listen("tcp", listen)
|
return net.Listen("tcp", listen)
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal("main: ", err)
|
logger.Fatal("main: ", err)
|
||||||
}
|
}
|
||||||
err = os.Chdir(datadir)
|
|
||||||
if err != nil {
|
|
||||||
logger.Fatal("main: ", err)
|
|
||||||
}
|
|
||||||
newLogger(logfile)
|
newLogger(logfile)
|
||||||
l, err := godrop.GetListener()
|
l, err := godrop.GetListener()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
||||||
2
sri.sh
2
sri.sh
|
|
@ -5,6 +5,8 @@ FILES="*.css *.js *.ico"
|
||||||
echo "SRI (subresource integrity) hashes"
|
echo "SRI (subresource integrity) hashes"
|
||||||
cd ${DIR}
|
cd ${DIR}
|
||||||
for f in $(ls ${FILES} 2>/dev/null); do
|
for f in $(ls ${FILES} 2>/dev/null); do
|
||||||
|
grep '^' ${f} | head -c-1 - > tmp
|
||||||
|
mv tmp ${f}
|
||||||
printf "%13s: " ${f}
|
printf "%13s: " ${f}
|
||||||
echo "${HASH}-$(cat ${f}|openssl dgst -${HASH} -binary|openssl enc -base64 -A)"
|
echo "${HASH}-$(cat ${f}|openssl dgst -${HASH} -binary|openssl enc -base64 -A)"
|
||||||
done
|
done
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ const (
|
||||||
<ul type="circle">
|
<ul type="circle">
|
||||||
{{if .Data}}
|
{{if .Data}}
|
||||||
{{range $item := .Data}}
|
{{range $item := .Data}}
|
||||||
<li><h5><a href="/wiki/{{$item.LinkTitle}}">{{$item.Title}}</a></h5></li>
|
<li><a href="/wiki/{{$item.LinkTitle}}"><b>{{$item.Title}}</b></a></li>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -30,7 +30,7 @@ const (
|
||||||
<head>
|
<head>
|
||||||
<title>GoWiki | {{.Title}}</title>
|
<title>GoWiki | {{.Title}}</title>
|
||||||
<link rel="stylesheet" type="text/css" href="/bootstrap.css" mdeia="screen" integrity="sha256-KC5lAzGRWwscU0sTmXtd8ka5mt7Vk8a0L5JqOhwA28s="></link>
|
<link rel="stylesheet" type="text/css" href="/bootstrap.css" mdeia="screen" integrity="sha256-KC5lAzGRWwscU0sTmXtd8ka5mt7Vk8a0L5JqOhwA28s="></link>
|
||||||
<link rel="stylesheet" type="text/css" href="/custom.css" integrity="sha256-s5f4HosKrvdPfxqPtKG5e6/T9h+NFZ8kBnCXArk83zw="></link>
|
<link rel="stylesheet" type="text/css" href="/custom.css" integrity="sha256-uAIARpL4VhLyhfuh5bS4YWjdcAvN+KjjTli9S8Ud8O4="></link>
|
||||||
</head>
|
</head>
|
||||||
<body style="padding-top:50px">
|
<body style="padding-top:50px">
|
||||||
<div class="navbar navbar-default navbar-fixed-top">
|
<div class="navbar navbar-default navbar-fixed-top">
|
||||||
|
|
@ -538,6 +538,10 @@ a.para {
|
||||||
}
|
}
|
||||||
h1,h2,h3,h4,h5,h6 {
|
h1,h2,h3,h4,h5,h6 {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
|
padding-top: 60px !important;
|
||||||
|
margin-top: -50px !important;
|
||||||
|
-webkit-background-clip: content-box !important;
|
||||||
|
background-clip: content-box !important;
|
||||||
}
|
}
|
||||||
h1 {
|
h1 {
|
||||||
font-size: 2em;
|
font-size: 2em;
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<ul type="circle">
|
<ul type="circle">
|
||||||
{{if .Data}}
|
{{if .Data}}
|
||||||
{{range $item := .Data}}
|
{{range $item := .Data}}
|
||||||
<li><h5><a href="/wiki/{{$item.LinkTitle}}">{{$item.Title}}</a></h5></li>
|
<li><a href="/wiki/{{$item.LinkTitle}}"><b>{{$item.Title}}</b></a></li>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
||||||
|
|
@ -37,6 +37,10 @@ a.para {
|
||||||
}
|
}
|
||||||
h1,h2,h3,h4,h5,h6 {
|
h1,h2,h3,h4,h5,h6 {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
|
padding-top: 60px !important;
|
||||||
|
margin-top: -50px !important;
|
||||||
|
-webkit-background-clip: content-box !important;
|
||||||
|
background-clip: content-box !important;
|
||||||
}
|
}
|
||||||
h1 {
|
h1 {
|
||||||
font-size: 2em;
|
font-size: 2em;
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
<head>
|
<head>
|
||||||
<title>GoWiki | {{.Title}}</title>
|
<title>GoWiki | {{.Title}}</title>
|
||||||
<link rel="stylesheet" type="text/css" href="/bootstrap.css" mdeia="screen" integrity="sha256-KC5lAzGRWwscU0sTmXtd8ka5mt7Vk8a0L5JqOhwA28s="></link>
|
<link rel="stylesheet" type="text/css" href="/bootstrap.css" mdeia="screen" integrity="sha256-KC5lAzGRWwscU0sTmXtd8ka5mt7Vk8a0L5JqOhwA28s="></link>
|
||||||
<link rel="stylesheet" type="text/css" href="/custom.css" integrity="sha256-s5f4HosKrvdPfxqPtKG5e6/T9h+NFZ8kBnCXArk83zw="></link>
|
<link rel="stylesheet" type="text/css" href="/custom.css" integrity="sha256-uAIARpL4VhLyhfuh5bS4YWjdcAvN+KjjTli9S8Ud8O4="></link>
|
||||||
</head>
|
</head>
|
||||||
<body style="padding-top:50px">
|
<body style="padding-top:50px">
|
||||||
<div class="navbar navbar-default navbar-fixed-top">
|
<div class="navbar navbar-default navbar-fixed-top">
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue