~jan0sch/smederee
Showing details for patch f2d8f59e480f913aea16b99dd94531e2be4388d4.
diff -rN -u old-smederee/modules/hub/src/main/resources/assets/css/main.css new-smederee/modules/hub/src/main/resources/assets/css/main.css --- old-smederee/modules/hub/src/main/resources/assets/css/main.css 2025-03-01 08:29:39.071502633 +0000 +++ new-smederee/modules/hub/src/main/resources/assets/css/main.css 2025-03-01 08:29:39.075502630 +0000 @@ -374,6 +374,40 @@ padding: 0; } +code.code-line { + white-space: pre-wrap; + word-break: break-all; + word-wrap: break-word; +} + +tbody.repository-file-content { + color: var(--nord1); + background: var(--nord4) none repeat scroll 0% 0%; +} + +td.code-line { + padding: 0.1em 1em; +} + +td.code-line-number { + padding: 0.1em 0.25em; + text-align: right; +} + +td.code-line-number a { + cursor: pointer; + text-decoration: none; +} + +td.code-line-number a:hover { + cursor: pointer; + background: var(--nord6); +} + +tr.code-line { + vertical-align: top; +} + .left-floated { float: left; } diff -rN -u old-smederee/modules/hub/src/main/scala/de/smederee/hub/VcsRepositoryRoutes.scala new-smederee/modules/hub/src/main/scala/de/smederee/hub/VcsRepositoryRoutes.scala --- old-smederee/modules/hub/src/main/scala/de/smederee/hub/VcsRepositoryRoutes.scala 2025-03-01 08:29:39.071502633 +0000 +++ new-smederee/modules/hub/src/main/scala/de/smederee/hub/VcsRepositoryRoutes.scala 2025-03-01 08:29:39.075502630 +0000 @@ -451,12 +451,12 @@ case false => if (actionBaseUri.path.toString.toLowerCase(java.util.Locale.ROOT).endsWith(".md")) Sync[F].delay( - MarkdownRenderer.renderRepositoryMarkdownFile(None)(content.mkString("\n")).some + List(MarkdownRenderer.renderRepositoryMarkdownFile(None)(content.mkString("\n"))) ) else - Sync[F].delay(content.mkString("\n").some) + Sync[F].delay(content.toList) case true => - Sync[F].pure(None) + Sync[F].pure(List.empty) } resp <- repo match { diff -rN -u old-smederee/modules/hub/src/main/twirl/de/smederee/hub/views/showRepositoryFiles.scala.html new-smederee/modules/hub/src/main/twirl/de/smederee/hub/views/showRepositoryFiles.scala.html --- old-smederee/modules/hub/src/main/twirl/de/smederee/hub/views/showRepositoryFiles.scala.html 2025-03-01 08:29:39.071502633 +0000 +++ new-smederee/modules/hub/src/main/twirl/de/smederee/hub/views/showRepositoryFiles.scala.html 2025-03-01 08:29:39.075502630 +0000 @@ -5,7 +5,7 @@ goBackUri: Option[Uri] = None, title: Option[String] = None, user: Option[Account] -)(fileContent: Option[String], +)(fileContent: List[String], listing: IndexedSeq[(os.RelPath, os.StatInfo)], repositoryBaseUri: Uri, vcsRepository: VcsRepository @@ -61,12 +61,25 @@ @for(link <- goBackUri) { <a href="@link">@icon(baseUri)("chevron-up")</a> <a href="@link">..</a> } - @for(content <- fileContent) { - @if(actionBaseUri.path.toString.toLowerCase(java.util.Locale.ROOT).endsWith(".md")) { + @if(actionBaseUri.path.toString.toLowerCase(java.util.Locale.ROOT).endsWith(".md")) { + @for(content <- fileContent) { @Html(content) - } else { - <pre class="repository-file-content"><code>@content</code></pre> } + } else { + <table class="pure-table"> + <tbody class="repository-file-content"> + @for(tuple <- fileContent.zipWithIndex) { + @defining(tuple._1) { content => + @defining(tuple._2) { lineNumber => + <tr class="code-line"> + <td class="code-line-number" id="L@lineNumber"><a href="#L@lineNumber">@lineNumber</a></td> + <td class="code-line"><code class="code-line">@content</code></td> + </tr> + } + } + } + </tbody> + </table> } } </div>