Commit Graph

311 Commits

Author SHA1 Message Date
Christian Muehlhaeuser
a74950e6da fix: don't concurrently change output profiles
Multiple lipgloss renderer instances can end up using the same default
termenv.Output. This leads to a race condition when manipulating the
ColorProfile concurrently.

We could mutex protect the standard output in termenv, but it feels like
a weak promise, as the rest of the Output wouldn't (and probably
shouldn't) get protected. Protecting it in lipgloss itself would require
a global lock however.

I can't come up with a proper use-case for this scenario, and therefore
we shift this responsibility to the user.
2023-02-22 17:28:33 +01:00
Ayman Bagabas
776c15f0da chore(examples): update ssh example
chore(examples): go mod tidy
2023-02-09 11:59:54 -05:00
Ayman Bagabas
5e2b9055dc docs: update readme 2023-02-09 11:59:54 -05:00
Ayman Bagabas
cb0f2fd931 chore(tests): add more style tests 2023-02-09 11:59:54 -05:00
Ayman Bagabas
60d090659b feat(opts): use style options 2023-02-09 11:59:54 -05:00
Ayman Bagabas
abee24064a docs: update readme example 2023-02-09 11:59:54 -05:00
Ayman Bagabas
29a309cde1 fix: renderer nil check 2023-02-09 11:59:54 -05:00
Ayman Bagabas
53fe53727e feat: conform to the Go color interface
implement RGBA with the default output
2023-02-09 11:59:54 -05:00
Ayman Bagabas
e5401eb8b8 feat(renderer): add WithTermenvOutput option 2023-02-09 11:59:54 -05:00
Ayman Bagabas
4aa1f38785 chore: use unified examples go.mod 2023-02-09 11:59:54 -05:00
Ayman Bagabas
0a35904daa fix(whitespace): style color profile 2023-02-09 11:59:54 -05:00
Ayman Bagabas
8565b7428f fix(whitespace): use position renderer 2023-02-09 11:59:54 -05:00
Ayman Bagabas
3fe14d0547 chore: add ssh example 2023-02-09 11:59:54 -05:00
Ayman Bagabas
6f6b47fbe3 docs: update readme
* add new color types
* more examples
* custom renderer example
2023-02-09 11:59:54 -05:00
Ayman Bagabas
b9c2626fe7 feat(renderer): use style renderer
lipgloss.Style now takes a renderer instance to be used to detect styles
and colors based on its termenv.Output and terminal
2023-02-09 11:59:54 -05:00
Ayman Bagabas
31ab45f810 feat: instantiate lipgloss renderers
* Use lipgloss instances instead of a singleton global instance
* Deprecate (s Style).Render & (s Style).String
* Deprecate the Stringer interface
* Update README and godocs
* Update example
2023-02-09 11:59:54 -05:00
Carlos A Becker
f754c404f6 fix: reduce dependencies
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2023-02-09 11:59:54 -05:00
Carlos A Becker
14eeaa6ffa fix: reduce dependencies
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2023-02-03 12:14:45 +01:00
dependabot[bot]
b5904dc6ad chore(deps): bump actions/checkout from 3.1.0 to 3.3.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.1.0 to 3.3.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3.1.0...v3.3.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-03 11:41:04 +01:00
Christian Muehlhaeuser
04a7a77281 chore: disable dependabot timer 2022-11-18 02:10:07 +01:00
nervo
1c1240fd65
docs: fix various typos (#156) 2022-11-08 10:55:11 +01:00
Victor/Alyx Bersy
9ee8b6e19f
feat: add BlockBorder, OuterHalfBlockBorder, and InnerHalfBlockBorder border styles (#120) 2022-10-27 15:02:57 -04:00
dependabot[bot]
c85c4f4456 feat(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-25 03:14:22 +02:00
Christian Muehlhaeuser
cdc8b16b07 docs: new readme footer 2022-10-24 10:18:43 +02:00
Will Winder
3dd9f0bfb8 docs: minor fixes to comments 2022-10-15 15:40:38 -04:00
dependabot[bot]
92c8fa0a57 chore(deps): bump actions/checkout from 2 to 3.1.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.1.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3.1.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 12:43:40 +02:00
Christian Muehlhaeuser
e36ced828f chore: go mod tidy in example 2022-10-06 11:10:41 +02:00
dependabot[bot]
ae7c84f7b1 feat(deps): bump github.com/mattn/go-runewidth from 0.0.13 to 0.0.14
Bumps [github.com/mattn/go-runewidth](https://github.com/mattn/go-runewidth) from 0.0.13 to 0.0.14.
- [Release notes](https://github.com/mattn/go-runewidth/releases)
- [Commits](https://github.com/mattn/go-runewidth/compare/v0.0.13...v0.0.14)

---
updated-dependencies:
- dependency-name: github.com/mattn/go-runewidth
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-30 08:44:01 +02:00
dependabot[bot]
5c31e2f6ab feat(deps): bump github.com/stretchr/testify from 1.7.1 to 1.8.0
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.7.1 to 1.8.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.7.1...v1.8.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-30 08:37:07 +02:00
Christian Muehlhaeuser
e087d81d08 ci: bump linter workflow 2022-09-30 08:34:40 +02:00
Christian Muehlhaeuser
ce2c889fb7 chore: add dependabot config 2022-09-30 08:22:02 +02:00
Christian Muehlhaeuser
8832087534 ci: add coverage workflow 2022-09-30 08:03:48 +02:00
Christian Rocha
30dc6d9f2b docs(readme): ASCII is an acronym 2022-09-30 07:22:31 +02:00
Christian Rocha
b10373fbc6 docs: add feedback section to README 2022-09-30 07:22:31 +02:00
Christian Rocha
b4057ad28a docs: use new footer image 2022-09-30 07:22:31 +02:00
Carlos A Becker
065368aa11 test: simplify & improve output
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-09-30 05:41:52 +02:00
Christian Muehlhaeuser
681d473622 test: add Style tests 2022-09-30 05:14:18 +02:00
Christian Muehlhaeuser
0b889bb8b6 docs: fix RGBA godocs 2022-09-30 05:04:05 +02:00
Christian Muehlhaeuser
651d1265e7 fix: RGBA implementations for non-hex color values 2022-09-30 04:57:44 +02:00
Christian Muehlhaeuser
cabfd38a13 test: add RGBA tests 2022-09-30 04:57:44 +02:00
Christian Muehlhaeuser
09292df479 test: fix argument order 2022-09-30 04:02:08 +02:00
Maas Lalani
0ce5550901 feat: Align takes multiple arguments for setting horizontal + vertical alignment 2022-09-06 14:11:09 -04:00
Maas Lalani
9852bb3017 feat: VerticalAlign
Add VerticalAlign, UnsetVerticalAlign, etc...
2022-09-06 14:11:09 -04:00
Christian Rocha
0ee74a5a90
feat: non-interpolated colors, aka CompleteColor (#100)
* feat: add color types for specifying colors on a per-profile basis

* chore: remove go-colourful references

* fix: lint (#101)

Co-authored-by: Ayman Bagabas <ayman.bagabas@gmail.com>
2022-08-30 13:38:15 -07:00
Christian Rocha
2cb1d4a5c1 docs(lint): update example code in GoDocs per new style standard
This revision was made automatically via 'golangci-lint run --fix'
2022-08-24 09:22:45 -07:00
Luka Markušić
f651363297 Fix height doc (width -> height) 2022-08-24 08:48:32 -07:00
Christian Rocha
81744becf3 chore(lint): remove magic numbers 2022-08-17 17:13:05 -07:00
Christian Rocha
1fb1fb9602 chore: drop go-colorful dependency (but it's a great lib) 2022-08-17 17:13:05 -07:00
Ismael Padilla
e8297c491f Use ReplaceAll instead of Replace with n=-1 2022-07-14 23:03:04 +02:00
Christian Muehlhaeuser
a86f21a0ae ci: add benchmark test for Style.Render 2022-04-07 04:02:10 +02:00