16 lines
665 B
HTML
16 lines
665 B
HTML
{{- $siteSourceUrl := site.Params.siteSourceUrl -}}
|
|
{{- $submoduleLinks := site.Data.submodules -}}
|
|
{{- $scratch := .scratch -}}
|
|
{{- $scratch.Set "bestLength" -1 -}}
|
|
{{- $scratch.Set "bestUrl" (printf "%s/code/%s" $siteSourceUrl .path) -}}
|
|
{{- $scratch.Set "bestPath" "" -}}
|
|
{{- $filePath := .path -}}
|
|
{{- range $path, $url := $submoduleLinks -}}
|
|
{{- $bestLength := $scratch.Get "bestLength" -}}
|
|
{{- if and (le $bestLength (len $path)) (hasPrefix $filePath $path) -}}
|
|
{{- $scratch.Set "bestLength" (len $path) -}}
|
|
{{- $scratch.Set "bestPath" $path -}}
|
|
{{- $scratch.Set "bestUrl" (printf "%s%s" $url (strings.TrimPrefix $path $filePath)) -}}
|
|
{{- end -}}
|
|
{{- end -}}
|