mirror of
https://gitea.com/gitea/tea.git
synced 2024-11-29 05:46:54 +01:00
d2295828d0
Path-only URLs need an absolute reference to be resolved against for printing in markdown Previously we resolved against the URL to the resource we were operating on (eg comment or issue URL). The markdown renderer in the web UI resolves all such URLs relative to the repo base URL. This PR adopts this behaviour in tea, by trimming the URL to a repo base URL via regex. This makes a custom patch to our markdown renderer `glamour` obsolete, which turned out to be an incorrect patch, meaning we can make use of upstream glamour again. Co-authored-by: Norwin <git@nroo.de> Reviewed-on: https://gitea.com/gitea/tea/pulls/401 Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com> Reviewed-by: 6543 <6543@obermui.de> Co-authored-by: Norwin <noerw@noreply.gitea.io> Co-committed-by: Norwin <noerw@noreply.gitea.io>
90 lines
3.3 KiB
Markdown
90 lines
3.3 KiB
Markdown
# Glamour
|
||
|
||
<p>
|
||
<img src="https://stuff.charm.sh/glamour/glamour-github-header.png" width="245" alt="Glamour Title Treatment"><br>
|
||
<a href="https://github.com/charmbracelet/glamour/releases"><img src="https://img.shields.io/github/release/charmbracelet/glamour.svg" alt="Latest Release"></a>
|
||
<a href="https://pkg.go.dev/github.com/charmbracelet/glamour?tab=doc"><img src="https://godoc.org/github.com/golang/gddo?status.svg" alt="GoDoc"></a>
|
||
<a href="https://github.com/charmbracelet/glamour/actions"><img src="https://github.com/charmbracelet/glamour/workflows/build/badge.svg" alt="Build Status"></a>
|
||
<a href="https://coveralls.io/github/charmbracelet/glamour?branch=master"><img src="https://coveralls.io/repos/github/charmbracelet/glamour/badge.svg?branch=master" alt="Coverage Status"></a>
|
||
<a href="http://goreportcard.com/report/charmbracelet/glamour"><img src="http://goreportcard.com/badge/charmbracelet/glamour" alt="Go ReportCard"></a>
|
||
</p>
|
||
|
||
Write handsome command-line tools with *Glamour*.
|
||
|
||
![Glamour dark style example](https://stuff.charm.sh/glamour/glamour-example.png)
|
||
|
||
`glamour` lets you render [markdown](https://en.wikipedia.org/wiki/Markdown)
|
||
documents & templates on [ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code)
|
||
compatible terminals. You can create your own stylesheet or simply use one of
|
||
the stylish defaults.
|
||
|
||
|
||
## Usage
|
||
|
||
```go
|
||
import "github.com/charmbracelet/glamour"
|
||
|
||
in := `# Hello World
|
||
|
||
This is a simple example of Markdown rendering with Glamour!
|
||
Check out the [other examples](https://github.com/charmbracelet/glamour/tree/master/examples) too.
|
||
|
||
Bye!
|
||
`
|
||
|
||
out, err := glamour.Render(in, "dark")
|
||
fmt.Print(out)
|
||
```
|
||
|
||
<img src="https://github.com/charmbracelet/glamour/raw/master/examples/helloworld/helloworld.png" width="600" alt="Hello World example">
|
||
|
||
### Custom Renderer
|
||
|
||
```go
|
||
import "github.com/charmbracelet/glamour"
|
||
|
||
r, _ := glamour.NewTermRenderer(
|
||
// detect background color and pick either the default dark or light theme
|
||
glamour.WithAutoStyle(),
|
||
// wrap output at specific width
|
||
glamour.WithWordWrap(40),
|
||
)
|
||
|
||
out, err := r.Render(in)
|
||
fmt.Print(out)
|
||
```
|
||
|
||
|
||
## Styles
|
||
|
||
You can find all available default styles in our [gallery](https://github.com/charmbracelet/glamour/tree/master/styles/gallery).
|
||
Want to create your own style? [Learn how!](https://github.com/charmbracelet/glamour/tree/master/styles)
|
||
|
||
There are a few options for using a custom style:
|
||
1. Call `glamour.Render(inputText, "desiredStyle")`
|
||
1. Set the `GLAMOUR_STYLE` environment variable to your desired default style or a file location for a style and call `glamour.RenderWithEnvironmentConfig(inputText)`
|
||
1. Set the `GLAMOUR_STYLE` environment variable and pass `glamour.WithEnvironmentConfig()` to your custom renderer
|
||
|
||
|
||
## Glamourous Projects
|
||
|
||
Check out these projects, which use `glamour`:
|
||
- [Glow](https://github.com/charmbracelet/glow), a markdown renderer for
|
||
the command-line.
|
||
- [GitHub CLI](https://github.com/cli/cli), GitHub’s official command line tool.
|
||
- [GLab](https://github.com/profclems/glab), An open source GitLab command line tool.
|
||
|
||
## License
|
||
|
||
[MIT](https://github.com/charmbracelet/glamour/raw/master/LICENSE)
|
||
|
||
|
||
***
|
||
|
||
Part of [Charm](https://charm.sh).
|
||
|
||
<a href="https://charm.sh/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-badge-unrounded.jpg" width="400"></a>
|
||
|
||
Charm热爱开源 • Charm loves open source
|
||
|