Enable us to use tailwind's [`font-family`](https://tailwindcss.com/docs/font-family) classes as well as remove `gt-mono` in favor of `tw-font-mono`. I also merged the "compensation" to one selector, previously this was two different values 0.9em and 0.95em. I did not declare a `serif` font because I don't think there will ever be a use case for those. Command ran: ```sh perl -p -i -e 's#gt-mono#tw-font-mono#g' web_src/js/**/* templates/**/*tags/v1.22.0-rc0
9. Avoid unnecessary `!important` in CSS, add comments to explain why it's necessary if it can't be avoided. | 9. Avoid unnecessary `!important` in CSS, add comments to explain why it's necessary if it can't be avoided. | ||||
10. Avoid mixing different events in one event listener, prefer to use individual event listeners for every event. | 10. Avoid mixing different events in one event listener, prefer to use individual event listeners for every event. | ||||
11. Custom event names are recommended to use `ce-` prefix. | 11. Custom event names are recommended to use `ce-` prefix. | ||||
12. Prefer using Tailwind CSS which is available via `tw-` prefix, e.g. `tw-relative`. Gitea's helper CSS classes use `gt-` prefix (`gt-mono`), while Gitea's own private framework-level CSS classes use `g-` prefix (`g-modal-confirm`). | |||||
12. Prefer using Tailwind CSS which is available via `tw-` prefix, e.g. `tw-relative`. Gitea's helper CSS classes use `gt-` prefix (`gt-word-break`), while Gitea's own private framework-level CSS classes use `g-` prefix (`g-modal-confirm`). | |||||
13. Avoid inline scripts & styles as much as possible, it's recommended to put JS code into JS files and use CSS classes. If inline scripts & styles are unavoidable, explain the reason why it can't be avoided. | 13. Avoid inline scripts & styles as much as possible, it's recommended to put JS code into JS files and use CSS classes. If inline scripts & styles are unavoidable, explain the reason why it can't be avoided. | ||||
### Accessibility / ARIA | ### Accessibility / ARIA |
9. 避免在 CSS 中使用不必要的`!important`,如果无法避免,添加注释解释为什么需要它。 | 9. 避免在 CSS 中使用不必要的`!important`,如果无法避免,添加注释解释为什么需要它。 | ||||
10. 避免在一个事件监听器中混合不同的事件,优先为每个事件使用独立的事件监听器。 | 10. 避免在一个事件监听器中混合不同的事件,优先为每个事件使用独立的事件监听器。 | ||||
11. 推荐使用自定义事件名称前缀`ce-`。 | 11. 推荐使用自定义事件名称前缀`ce-`。 | ||||
12. 建议使用 Tailwind CSS,它可以通过 `tw-` 前缀获得,例如 `tw-relative`. Gitea 自身的助手类 CSS 使用 `gt-` 前缀(`gt-mono`),Gitea 自身的私有框架级 CSS 类使用 `g-` 前缀(`g-modal-confirm`)。 | |||||
12. 建议使用 Tailwind CSS,它可以通过 `tw-` 前缀获得,例如 `tw-relative`. Gitea 自身的助手类 CSS 使用 `gt-` 前缀(`gt-word-break`),Gitea 自身的私有框架级 CSS 类使用 `g-` 前缀(`g-modal-confirm`)。 | |||||
13. 尽量避免内联脚本和样式,建议将JS代码放入JS文件中并使用CSS类。如果内联脚本和样式不可避免,请解释无法避免的原因。 | 13. 尽量避免内联脚本和样式,建议将JS代码放入JS文件中并使用CSS类。如果内联脚本和样式不可避免,请解释无法避免的原因。 | ||||
### 可访问性 / ARIA | ### 可访问性 / ARIA |
'3xl': '24px', | '3xl': '24px', | ||||
'full': 'var(--border-radius-circle)', // 50% | 'full': 'var(--border-radius-circle)', // 50% | ||||
}, | }, | ||||
fontFamily: { | |||||
sans: 'var(--fonts-regular)', | |||||
mono: 'var(--fonts-monospace)', | |||||
}, | |||||
fontWeight: { | fontWeight: { | ||||
light: 'var(--font-weight-light)', | light: 'var(--font-weight-light)', | ||||
normal: 'var(--font-weight-normal)', | normal: 'var(--font-weight-normal)', |
</a> | </a> | ||||
</span> | </span> | ||||
<span class="gt-mono commit-summary {{if gt .ParentCount 1}} grey text{{end}}" title="{{.Summary}}">{{RenderCommitMessageLinkSubject $.root.Context .Message $commitLink ($.comment.Issue.PullRequest.BaseRepo.ComposeMetas ctx)}}</span> | |||||
<span class="tw-font-mono commit-summary {{if gt .ParentCount 1}} grey text{{end}}" title="{{.Summary}}">{{RenderCommitMessageLinkSubject $.root.Context .Message $commitLink ($.comment.Issue.PullRequest.BaseRepo.ComposeMetas ctx)}}</span> | |||||
{{if IsMultilineCommitMessage .Message}} | {{if IsMultilineCommitMessage .Message}} | ||||
<button class="ui button js-toggle-commit-body ellipsis-button" aria-expanded="false">...</button> | <button class="ui button js-toggle-commit-body ellipsis-button" aria-expanded="false">...</button> | ||||
{{end}} | {{end}} |
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}} | {{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}} | ||||
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td> | <td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td> | ||||
<td class="blob-excerpt lines-escape lines-escape-old">{{if and $line.LeftIdx $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}</td> | <td class="blob-excerpt lines-escape lines-escape-old">{{if and $line.LeftIdx $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}</td> | ||||
<td class="blob-excerpt lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="gt-mono" data-type-marker=""></span>{{end}}</td> | |||||
<td class="blob-excerpt lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="tw-font-mono" data-type-marker=""></span>{{end}}</td> | |||||
<td class="blob-excerpt lines-code lines-code-old">{{/* | <td class="blob-excerpt lines-code lines-code-old">{{/* | ||||
*/}}{{if $line.LeftIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{else}}{{/* | */}}{{if $line.LeftIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{else}}{{/* | ||||
*/}}<code class="code-inner"></code>{{/* | */}}<code class="code-inner"></code>{{/* | ||||
*/}}</td> | */}}</td> | ||||
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td> | <td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td> | ||||
<td class="blob-excerpt lines-escape lines-escape-new">{{if and $line.RightIdx $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}</td> | <td class="blob-excerpt lines-escape lines-escape-new">{{if and $line.RightIdx $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}</td> | ||||
<td class="blob-excerpt lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="gt-mono" data-type-marker=""></span>{{end}}</td> | |||||
<td class="blob-excerpt lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="tw-font-mono" data-type-marker=""></span>{{end}}</td> | |||||
<td class="blob-excerpt lines-code lines-code-new">{{/* | <td class="blob-excerpt lines-code lines-code-new">{{/* | ||||
*/}}{{if $line.RightIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{else}}{{/* | */}}{{if $line.RightIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{else}}{{/* | ||||
*/}}<code class="code-inner"></code>{{/* | */}}<code class="code-inner"></code>{{/* | ||||
{{end}} | {{end}} | ||||
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}} | {{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}} | ||||
<td class="blob-excerpt lines-escape">{{if $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}</td> | <td class="blob-excerpt lines-escape">{{if $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}</td> | ||||
<td class="blob-excerpt lines-type-marker"><span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td> | |||||
<td class="blob-excerpt lines-type-marker"><span class="tw-font-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td> | |||||
<td class="blob-excerpt lines-code{{if (not $line.RightIdx)}} lines-code-old{{end}}"><code {{if $inlineDiff.EscapeStatus.Escaped}}class="code-inner has-escaped" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"{{else}}class="code-inner"{{end}}>{{$inlineDiff.Content}}</code></td> | <td class="blob-excerpt lines-code{{if (not $line.RightIdx)}} lines-code-old{{end}}"><code {{if $inlineDiff.EscapeStatus.Escaped}}class="code-inner has-escaped" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"{{else}}class="code-inner"{{end}}>{{$inlineDiff.Content}}</code></td> | ||||
</tr> | </tr> | ||||
{{end}} | {{end}} |
{{svg "octicon-chevron-down" 18}} | {{svg "octicon-chevron-down" 18}} | ||||
{{end}} | {{end}} | ||||
</button> | </button> | ||||
<div class="tw-font-semibold tw-flex tw-items-center gt-mono"> | |||||
<div class="tw-font-semibold tw-flex tw-items-center tw-font-mono"> | |||||
{{if $file.IsBin}} | {{if $file.IsBin}} | ||||
<span class="tw-ml-0.5 tw-mr-2"> | <span class="tw-ml-0.5 tw-mr-2"> | ||||
{{ctx.Locale.Tr "repo.diff.bin"}} | {{ctx.Locale.Tr "repo.diff.bin"}} | ||||
{{template "repo/diff/stats" dict "file" . "root" $}} | {{template "repo/diff/stats" dict "file" . "root" $}} | ||||
{{end}} | {{end}} | ||||
</div> | </div> | ||||
<span class="file gt-mono"><a class="muted file-link" title="{{if $file.IsRenamed}}{{$file.OldName}} → {{end}}{{$file.Name}}" href="#diff-{{$file.NameHash}}">{{if $file.IsRenamed}}{{$file.OldName}} → {{end}}{{$file.Name}}</a>{{if .IsLFSFile}} ({{ctx.Locale.Tr "repo.stored_lfs"}}){{end}}</span> | |||||
<span class="file tw-font-mono"><a class="muted file-link" title="{{if $file.IsRenamed}}{{$file.OldName}} → {{end}}{{$file.Name}}" href="#diff-{{$file.NameHash}}">{{if $file.IsRenamed}}{{$file.OldName}} → {{end}}{{$file.Name}}</a>{{if .IsLFSFile}} ({{ctx.Locale.Tr "repo.stored_lfs"}}){{end}}</span> | |||||
<button class="btn interact-fg tw-p-2" data-clipboard-text="{{$file.Name}}">{{svg "octicon-copy" 14}}</button> | <button class="btn interact-fg tw-p-2" data-clipboard-text="{{$file.Name}}">{{svg "octicon-copy" 14}}</button> | ||||
{{if $file.IsGenerated}} | {{if $file.IsGenerated}} | ||||
<span class="ui label">{{ctx.Locale.Tr "repo.diff.generated"}}</span> | <span class="ui label">{{ctx.Locale.Tr "repo.diff.generated"}}</span> | ||||
{{if and $file.Mode $file.OldMode}} | {{if and $file.Mode $file.OldMode}} | ||||
{{$old := ctx.Locale.Tr ($file.ModeTranslationKey $file.OldMode)}} | {{$old := ctx.Locale.Tr ($file.ModeTranslationKey $file.OldMode)}} | ||||
{{$new := ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}} | {{$new := ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}} | ||||
<span class="tw-ml-4 gt-mono">{{ctx.Locale.Tr "git.filemode.changed_filemode" $old $new}}</span> | |||||
<span class="tw-ml-4 tw-font-mono">{{ctx.Locale.Tr "git.filemode.changed_filemode" $old $new}}</span> | |||||
{{else if $file.Mode}} | {{else if $file.Mode}} | ||||
<span class="tw-ml-4 gt-mono">{{ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}}</span> | |||||
<span class="tw-ml-4 tw-font-mono">{{ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}}</span> | |||||
{{end}} | {{end}} | ||||
</div> | </div> | ||||
<div class="diff-file-header-actions tw-flex tw-items-center tw-gap-1 tw-flex-wrap"> | <div class="diff-file-header-actions tw-flex tw-items-center tw-gap-1 tw-flex-wrap"> |
{{- $rightDiff := ""}}{{if $match.RightIdx}}{{$rightDiff = $section.GetComputedInlineDiffFor $match ctx.Locale}}{{end}} | {{- $rightDiff := ""}}{{if $match.RightIdx}}{{$rightDiff = $section.GetComputedInlineDiffFor $match ctx.Locale}}{{end}} | ||||
<td class="lines-num lines-num-old del-code" data-line-num="{{$line.LeftIdx}}"><span rel="diff-{{$file.NameHash}}L{{$line.LeftIdx}}"></span></td> | <td class="lines-num lines-num-old del-code" data-line-num="{{$line.LeftIdx}}"><span rel="diff-{{$file.NameHash}}L{{$line.LeftIdx}}"></span></td> | ||||
<td class="lines-escape del-code lines-escape-old">{{if $line.LeftIdx}}{{if $leftDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $leftDiff}}"></button>{{end}}{{end}}</td> | <td class="lines-escape del-code lines-escape-old">{{if $line.LeftIdx}}{{if $leftDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $leftDiff}}"></button>{{end}}{{end}}</td> | ||||
<td class="lines-type-marker lines-type-marker-old del-code"><span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td> | |||||
<td class="lines-type-marker lines-type-marker-old del-code"><span class="tw-font-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td> | |||||
<td class="lines-code lines-code-old del-code">{{/* | <td class="lines-code lines-code-old del-code">{{/* | ||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/* | */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/* | ||||
*/}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/* | */}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/* | ||||
*/}}</td> | */}}</td> | ||||
<td class="lines-num lines-num-new add-code" data-line-num="{{if $match.RightIdx}}{{$match.RightIdx}}{{end}}"><span rel="{{if $match.RightIdx}}diff-{{$file.NameHash}}R{{$match.RightIdx}}{{end}}"></span></td> | <td class="lines-num lines-num-new add-code" data-line-num="{{if $match.RightIdx}}{{$match.RightIdx}}{{end}}"><span rel="{{if $match.RightIdx}}diff-{{$file.NameHash}}R{{$match.RightIdx}}{{end}}"></span></td> | ||||
<td class="lines-escape add-code lines-escape-new">{{if $match.RightIdx}}{{if $rightDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $rightDiff}}"></button>{{end}}{{end}}</td> | <td class="lines-escape add-code lines-escape-new">{{if $match.RightIdx}}{{if $rightDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $rightDiff}}"></button>{{end}}{{end}}</td> | ||||
<td class="lines-type-marker lines-type-marker-new add-code">{{if $match.RightIdx}}<span class="gt-mono" data-type-marker="{{$match.GetLineTypeMarker}}"></span>{{end}}</td> | |||||
<td class="lines-type-marker lines-type-marker-new add-code">{{if $match.RightIdx}}<span class="tw-font-mono" data-type-marker="{{$match.GetLineTypeMarker}}"></span>{{end}}</td> | |||||
<td class="lines-code lines-code-new add-code">{{/* | <td class="lines-code lines-code-new add-code">{{/* | ||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/* | */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/* | ||||
*/}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $match.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$match.RightIdx}}">{{/* | */}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $match.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$match.RightIdx}}">{{/* | ||||
{{$inlineDiff := $section.GetComputedInlineDiffFor $line ctx.Locale}} | {{$inlineDiff := $section.GetComputedInlineDiffFor $line ctx.Locale}} | ||||
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$file.NameHash}}L{{$line.LeftIdx}}{{end}}"></span></td> | <td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$file.NameHash}}L{{$line.LeftIdx}}{{end}}"></span></td> | ||||
<td class="lines-escape lines-escape-old">{{if $line.LeftIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}{{end}}</td> | <td class="lines-escape lines-escape-old">{{if $line.LeftIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}{{end}}</td> | ||||
<td class="lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td> | |||||
<td class="lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="tw-font-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td> | |||||
<td class="lines-code lines-code-old">{{/* | <td class="lines-code lines-code-old">{{/* | ||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 2))}}{{/* | */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 2))}}{{/* | ||||
*/}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/* | */}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/* | ||||
*/}}</td> | */}}</td> | ||||
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$file.NameHash}}R{{$line.RightIdx}}{{end}}"></span></td> | <td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$file.NameHash}}R{{$line.RightIdx}}{{end}}"></span></td> | ||||
<td class="lines-escape lines-escape-new">{{if $line.RightIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}{{end}}</td> | <td class="lines-escape lines-escape-new">{{if $line.RightIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button>{{end}}{{end}}</td> | ||||
<td class="lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td> | |||||
<td class="lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="tw-font-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td> | |||||
<td class="lines-code lines-code-new">{{/* | <td class="lines-code lines-code-new">{{/* | ||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 3))}}{{/* | */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 3))}}{{/* | ||||
*/}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">{{/* | */}}<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">{{/* |
<button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button> | <button class="toggle-escape-button btn interact-bg" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff}}"></button> | ||||
{{- end -}} | {{- end -}} | ||||
</td> | </td> | ||||
<td class="lines-type-marker"><span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td> | |||||
<td class="lines-type-marker"><span class="tw-font-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td> | |||||
{{if eq .GetType 4}} | {{if eq .GetType 4}} | ||||
<td class="chroma lines-code blob-hunk">{{/* | <td class="chroma lines-code blob-hunk">{{/* | ||||
*/}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{/* | */}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{/* |
<div class="file-info text grey normal gt-mono"> | |||||
<div class="file-info text grey normal tw-font-mono"> | |||||
{{if .FileIsSymlink}} | {{if .FileIsSymlink}} | ||||
<div class="file-info-entry"> | <div class="file-info-entry"> | ||||
{{ctx.Locale.Tr "repo.symbolic_link"}} | {{ctx.Locale.Tr "repo.symbolic_link"}} |
<div class="ui four wide column meta"> | <div class="ui four wide column meta"> | ||||
<a class="muted" href="{{if not (and $release.Sha1 ($.Permission.CanRead $.UnitTypeCode))}}#{{else}}{{$.RepoLink}}/src/tag/{{$release.TagName | PathEscapeSegments}}{{end}}" rel="nofollow">{{svg "octicon-tag" 16 "tw-mr-1"}}{{$release.TagName}}</a> | <a class="muted" href="{{if not (and $release.Sha1 ($.Permission.CanRead $.UnitTypeCode))}}#{{else}}{{$.RepoLink}}/src/tag/{{$release.TagName | PathEscapeSegments}}{{end}}" rel="nofollow">{{svg "octicon-tag" 16 "tw-mr-1"}}{{$release.TagName}}</a> | ||||
{{if and $release.Sha1 ($.Permission.CanRead $.UnitTypeCode)}} | {{if and $release.Sha1 ($.Permission.CanRead $.UnitTypeCode)}} | ||||
<a class="muted gt-mono" href="{{$.RepoLink}}/src/commit/{{$release.Sha1}}" rel="nofollow">{{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha $release.Sha1}}</a> | |||||
<a class="muted tw-font-mono" href="{{$.RepoLink}}/src/commit/{{$release.Sha1}}" rel="nofollow">{{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha $release.Sha1}}</a> | |||||
{{template "repo/branch_dropdown" dict "root" $ "release" $release}} | {{template "repo/branch_dropdown" dict "root" $ "release" $release}} | ||||
{{end}} | {{end}} | ||||
</div> | </div> |
{{range .LFSFiles}} | {{range .LFSFiles}} | ||||
<tr> | <tr> | ||||
<td> | <td> | ||||
<a href="{{$.Link}}/show/{{.Oid}}" title="{{.Oid}}" class="ui brown button gt-mono"> | |||||
<a href="{{$.Link}}/show/{{.Oid}}" title="{{.Oid}}" class="ui brown button tw-font-mono"> | |||||
{{ShortSha .Oid}} | {{ShortSha .Oid}} | ||||
</a> | </a> | ||||
</td> | </td> |
{{range .Pointers}} | {{range .Pointers}} | ||||
<tr> | <tr> | ||||
<td> | <td> | ||||
<a href="{{$.RepoLink}}/raw/blob/{{.SHA}}" rel="nofollow" target="_blank" title="{{.SHA}}" class="ui button gt-mono"> | |||||
<a href="{{$.RepoLink}}/raw/blob/{{.SHA}}" rel="nofollow" target="_blank" title="{{.SHA}}" class="ui button tw-font-mono"> | |||||
{{ShortSha .SHA}} | {{ShortSha .SHA}} | ||||
</a> | </a> | ||||
</td> | </td> | ||||
<td> | <td> | ||||
<a {{if and .Exists .InRepo}}href="{{$.LFSFilesLink}}/show/{{.Oid}}" rel="nofollow" target="_blank"{{end}} title="{{.Oid}}" class="ui brown button gt-mono"> | |||||
<a {{if and .Exists .InRepo}}href="{{$.LFSFilesLink}}/show/{{.Oid}}" rel="nofollow" target="_blank"{{end}} title="{{.Oid}}" class="ui brown button tw-font-mono"> | |||||
{{ShortSha .Oid}} | {{ShortSha .Oid}} | ||||
</a> | </a> | ||||
</td> | </td> |
<span class="tw-mr-2">{{svg "octicon-clock" 16 "tw-mr-1"}}{{TimeSinceUnix .CreatedUnix ctx.Locale}}</span> | <span class="tw-mr-2">{{svg "octicon-clock" 16 "tw-mr-1"}}{{TimeSinceUnix .CreatedUnix ctx.Locale}}</span> | ||||
{{end}} | {{end}} | ||||
<a class="tw-mr-2 gt-mono muted" href="{{$.RepoLink}}/src/commit/{{.Sha1}}" rel="nofollow">{{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha .Sha1}}</a> | |||||
<a class="tw-mr-2 tw-font-mono muted" href="{{$.RepoLink}}/src/commit/{{.Sha1}}" rel="nofollow">{{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha .Sha1}}</a> | |||||
{{if not $.DisableDownloadSourceArchives}} | {{if not $.DisableDownloadSourceArchives}} | ||||
<a class="archive-link tw-mr-2 muted" href="{{$.RepoLink}}/archive/{{.TagName | PathEscapeSegments}}.zip" rel="nofollow">{{svg "octicon-file-zip" 16 "tw-mr-1"}}ZIP</a> | <a class="archive-link tw-mr-2 muted" href="{{$.RepoLink}}/archive/{{.TagName | PathEscapeSegments}}.zip" rel="nofollow">{{svg "octicon-file-zip" 16 "tw-mr-1"}}ZIP</a> |
</text-expander> | </text-expander> | ||||
<script> | <script> | ||||
if (localStorage?.getItem('markdown-editor-monospace') === 'true') { | if (localStorage?.getItem('markdown-editor-monospace') === 'true') { | ||||
document.querySelector('.markdown-text-editor').classList.add('gt-mono'); | |||||
document.querySelector('.markdown-text-editor').classList.add('tw-font-mono'); | |||||
} | } | ||||
</script> | </script> | ||||
</div> | </div> |
code, | code, | ||||
kbd, | kbd, | ||||
samp { | samp { | ||||
font-size: 0.9em; /* compensate for monospace fonts being usually slightly larger */ | |||||
font-family: var(--fonts-monospace); | font-family: var(--fonts-monospace); | ||||
} | } | ||||
pre, | |||||
code, | |||||
kbd, | |||||
samp, | |||||
.tw-font-mono { | |||||
font-size: 0.95em; /* compensate for monospace fonts being usually slightly larger */ | |||||
} | |||||
b, | b, | ||||
strong, | strong, | ||||
h1, | h1, |
Gitea's private styles use `g-` prefix. | Gitea's private styles use `g-` prefix. | ||||
*/ | */ | ||||
.gt-mono { | |||||
font-family: var(--fonts-monospace) !important; | |||||
font-size: .95em !important; /* compensate for monospace fonts being usually slightly larger */ | |||||
} | |||||
.gt-word-break { | .gt-word-break { | ||||
word-wrap: break-word !important; | word-wrap: break-word !important; | ||||
word-break: break-word; /* compat: Safari */ | word-break: break-word; /* compat: Safari */ |
</span> | </span> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="gt-mono"> | |||||
<div class="tw-font-mono"> | |||||
{{ commit.short_sha }} | {{ commit.short_sha }} | ||||
</div> | </div> | ||||
</div> | </div> |
</div> | </div> | ||||
<!-- todo finish all file status, now modify, add, delete and rename --> | <!-- todo finish all file status, now modify, add, delete and rename --> | ||||
<span :class="['status', diffTypeToString(file.Type)]" :data-tooltip-content="diffTypeToString(file.Type)"> </span> | <span :class="['status', diffTypeToString(file.Type)]" :data-tooltip-content="diffTypeToString(file.Type)"> </span> | ||||
<a class="file gt-mono" :href="'#diff-' + file.NameHash">{{ file.Name }}</a> | |||||
<a class="file tw-font-mono" :href="'#diff-' + file.NameHash">{{ file.Name }}</a> | |||||
</li> | </li> | ||||
<li v-if="store.isIncomplete" class="tw-pt-1"> | <li v-if="store.isIncomplete" class="tw-pt-1"> | ||||
<span class="file tw-flex tw-items-center tw-justify-between">{{ store.tooManyFilesMessage }} | <span class="file tw-flex tw-items-center tw-justify-between">{{ store.tooManyFilesMessage }} |
e.preventDefault(); | e.preventDefault(); | ||||
const enabled = localStorage?.getItem('markdown-editor-monospace') !== 'true'; | const enabled = localStorage?.getItem('markdown-editor-monospace') !== 'true'; | ||||
localStorage.setItem('markdown-editor-monospace', String(enabled)); | localStorage.setItem('markdown-editor-monospace', String(enabled)); | ||||
this.textarea.classList.toggle('gt-mono', enabled); | |||||
this.textarea.classList.toggle('tw-font-mono', enabled); | |||||
const text = monospaceButton.getAttribute(enabled ? 'data-disable-text' : 'data-enable-text'); | const text = monospaceButton.getAttribute(enabled ? 'data-disable-text' : 'data-enable-text'); | ||||
monospaceButton.setAttribute('data-tooltip-content', text); | monospaceButton.setAttribute('data-tooltip-content', text); | ||||
monospaceButton.setAttribute('aria-checked', String(enabled)); | monospaceButton.setAttribute('aria-checked', String(enabled)); |