second commit
15
.flake8
Normal file
|
@ -0,0 +1,15 @@
|
|||
[flake8]
|
||||
ignore = E203, E266, E501, W503, F403
|
||||
exclude =
|
||||
.git,
|
||||
__pycache__,
|
||||
.venv
|
||||
old,
|
||||
build,
|
||||
dist,
|
||||
preamble.py
|
||||
|
||||
max-line-length = 88
|
||||
max-complexity = 18
|
||||
select = B,C,E,F,W,T4,B9
|
||||
per-file-ignores = __init__.py:F401
|
160
.gitignore
vendored
Normal file
|
@ -0,0 +1,160 @@
|
|||
capture.svg
|
||||
.pdm.toml
|
||||
# Created by https://www.toptal.com/developers/gitignore/api/python
|
||||
# Edit at https://www.toptal.com/developers/gitignore?templates=python
|
||||
|
||||
### Python ###
|
||||
# Byte-compiled / optimized / DLL files
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
|
||||
# C extensions
|
||||
*.so
|
||||
|
||||
# Distribution / packaging
|
||||
.Python
|
||||
build/
|
||||
develop-eggs/
|
||||
dist/
|
||||
downloads/
|
||||
eggs/
|
||||
.eggs/
|
||||
lib/
|
||||
lib64/
|
||||
parts/
|
||||
sdist/
|
||||
var/
|
||||
wheels/
|
||||
share/python-wheels/
|
||||
*.egg-info/
|
||||
.installed.cfg
|
||||
*.egg
|
||||
MANIFEST
|
||||
|
||||
# PyInstaller
|
||||
# Usually these files are written by a python script from a template
|
||||
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
||||
*.manifest
|
||||
*.spec
|
||||
|
||||
# Installer logs
|
||||
pip-log.txt
|
||||
pip-delete-this-directory.txt
|
||||
|
||||
# Unit test / coverage reports
|
||||
htmlcov/
|
||||
.tox/
|
||||
.nox/
|
||||
.coverage
|
||||
.coverage.*
|
||||
.cache
|
||||
nosetests.xml
|
||||
coverage.xml
|
||||
*.cover
|
||||
*.py,cover
|
||||
.hypothesis/
|
||||
.pytest_cache/
|
||||
cover/
|
||||
|
||||
# Translations
|
||||
*.mo
|
||||
*.pot
|
||||
|
||||
# Django stuff:
|
||||
*.log
|
||||
local_settings.py
|
||||
db.sqlite3
|
||||
db.sqlite3-journal
|
||||
|
||||
# Flask stuff:
|
||||
instance/
|
||||
.webassets-cache
|
||||
|
||||
# Scrapy stuff:
|
||||
.scrapy
|
||||
|
||||
# Sphinx documentation
|
||||
docs/_build/
|
||||
|
||||
# PyBuilder
|
||||
.pybuilder/
|
||||
target/
|
||||
|
||||
# Jupyter Notebook
|
||||
.ipynb_checkpoints
|
||||
|
||||
# IPython
|
||||
profile_default/
|
||||
ipython_config.py
|
||||
|
||||
# pyenv
|
||||
# For a library or package, you might want to ignore these files since the code is
|
||||
# intended to run in multiple environments; otherwise, check them in:
|
||||
# .python-version
|
||||
|
||||
# pipenv
|
||||
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
||||
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
||||
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
||||
# install all needed dependencies.
|
||||
#Pipfile.lock
|
||||
|
||||
# poetry
|
||||
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
||||
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
||||
# commonly ignored for libraries.
|
||||
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
||||
#poetry.lock
|
||||
|
||||
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
|
||||
__pypackages__/
|
||||
|
||||
# Celery stuff
|
||||
celerybeat-schedule
|
||||
celerybeat.pid
|
||||
|
||||
# SageMath parsed files
|
||||
*.sage.py
|
||||
|
||||
# Environments
|
||||
.env
|
||||
.venv
|
||||
env/
|
||||
venv/
|
||||
ENV/
|
||||
env.bak/
|
||||
venv.bak/
|
||||
|
||||
# Spyder project settings
|
||||
.spyderproject
|
||||
.spyproject
|
||||
|
||||
# Rope project settings
|
||||
.ropeproject
|
||||
|
||||
# mkdocs documentation
|
||||
/site
|
||||
|
||||
# mypy
|
||||
.mypy_cache/
|
||||
.dmypy.json
|
||||
dmypy.json
|
||||
|
||||
# Pyre type checker
|
||||
.pyre/
|
||||
|
||||
# pytype static type analyzer
|
||||
.pytype/
|
||||
|
||||
# Cython debug symbols
|
||||
cython_debug/
|
||||
|
||||
# PyCharm
|
||||
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
||||
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
||||
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
||||
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
||||
#.idea/
|
||||
|
||||
# End of https://www.toptal.com/developers/gitignore/api/python
|
23
.pre-commit-config.yaml
Normal file
|
@ -0,0 +1,23 @@
|
|||
# See https://pre-commit.com for more information
|
||||
# See https://pre-commit.com/hooks.html for more hooks
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||
rev: v4.1.0
|
||||
hooks:
|
||||
- id: trailing-whitespace
|
||||
exclude: ".svg$"
|
||||
- id: end-of-file-fixer
|
||||
- id: check-added-large-files
|
||||
- repo: https://github.com/pycqa/isort
|
||||
rev: 5.10.1
|
||||
hooks:
|
||||
- id: isort
|
||||
- repo: https://github.com/psf/black
|
||||
rev: 22.3.0
|
||||
hooks:
|
||||
- id: black
|
||||
language_version: python
|
||||
- repo: https://github.com/pycqa/flake8
|
||||
rev: 4.0.1
|
||||
hooks:
|
||||
- id: flake8
|
37
Makefile
Normal file
|
@ -0,0 +1,37 @@
|
|||
SRC_FILES = $(wildcard yartsu/*)
|
||||
|
||||
.PHONY: list lint build svg-docs theme-docs docs typing format
|
||||
lint: format typing
|
||||
|
||||
typing:
|
||||
pdm run mypy yartsu
|
||||
|
||||
format:
|
||||
pdm run pre-commit run --all
|
||||
|
||||
build: build/yartsu
|
||||
|
||||
build/yartsu: $(SRC_FILES)
|
||||
mkdir -p build
|
||||
shiv \
|
||||
-c yartsu \
|
||||
-o ./build/yartsu \
|
||||
--preamble preamble.py \
|
||||
--reproducible \
|
||||
.
|
||||
|
||||
install-bin: build/yartsu
|
||||
cp ./build/yartsu ~/bin
|
||||
|
||||
docs: svg-docs theme-docs
|
||||
|
||||
theme-docs:
|
||||
./scripts/theme-showcase-gen
|
||||
|
||||
svg-docs:
|
||||
lolcat -F .5 -S 9 -f assets/logo.txt | yartsu -o assets/logo.svg
|
||||
yartsu -o assets/yartsu.svg -t "yartsu --help" -- yartsu -h
|
||||
|
||||
# https://stackoverflow.com/a/26339924
|
||||
list:
|
||||
@LC_ALL=C $(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' | sort | egrep -v -e '^[^[:alnum:]]' -e '^$@$$'
|
85
README.md
|
@ -1 +1,86 @@
|
|||
# YARTSU
|
||||
|
||||
yartsu, another rich terminal screenshot utility
|
||||
|
||||
![YARTSU LOGO](https://github.com/daylinmorgan/yartsu/blob/main/assets/logo.svg)
|
||||
![YARTSU HELP](https://github.com/daylinmorgan/yartsu/blob/main/assets/yartsu.svg)
|
||||
|
||||
**NOTE**: this is a currently in a beta release and the API is subject to change (feedback welcome)
|
||||
|
||||
Inspired by recent commits in the wonderful library [`rich`](https://github.com/Textualize/rich) I decided to write ` yartsu`.
|
||||
|
||||
I needed to programatically generate screenshots for documentation purposes. The new `export_svg` methods in `rich` were a godsend.
|
||||
So I wanted to try to make this feature a little more generalizable to program ouptut outside of `rich`/`python`.
|
||||
Hopefully, you find it useful.
|
||||
|
||||
If you come across anything unexpected please submit an issue.
|
||||
|
||||
## Install
|
||||
|
||||
```bash
|
||||
pip install yartsu
|
||||
```
|
||||
|
||||
<!-- install zipapp from releases?? -->
|
||||
|
||||
## Usage
|
||||
|
||||
Getting a properly formatted output from a terminal screenshot is challenging.
|
||||
|
||||
There are three options for generating a screenshot.
|
||||
|
||||
If one of the below option causes you any headaches consider first trying a different option.
|
||||
|
||||
### Option 1: Pipes
|
||||
|
||||
Many tools that color output (i.e. `grep` or `ls`) additionally allow
|
||||
you to force ANSI color codes to be included even when piping output.
|
||||
|
||||
In these cases you can simply pipe the output directly into `yartsu`
|
||||
|
||||
```bash
|
||||
ls --color=always / | yartsu -w 50 -o assets/ls_color.svg
|
||||
```
|
||||
|
||||
### Option 2: Subprocess/Pty
|
||||
|
||||
With this option `yartsu` will deploy a `subprocess` and `pty`
|
||||
to run your command for you in an attempt to preserve ANSI.
|
||||
|
||||
Note with this option you need to seperate
|
||||
the command you want to run with `yartsu` args using `--`.
|
||||
|
||||
```bash
|
||||
yartsu -w 50 -o assets/ls_color.svg -- ls --color /
|
||||
```
|
||||
|
||||
### Option 3: Text File
|
||||
|
||||
Finally, if you neither of the above options work and you can
|
||||
manage to preserve the codes in a plain text file you can pass this as input to `yartsu`.
|
||||
|
||||
```bash
|
||||
ls --color / > ls.txt
|
||||
yartsu -w 50 -i ls.txt -o assets/ls_color.svg
|
||||
```
|
||||
|
||||
By default svgs will be saved at `./capture.svg`.
|
||||
|
||||
Additionally, for options 1 and 3 you may want to define your own title with `-t/--title`.
|
||||
For option 2 the title will by default be the cmd ran by `yartsu`.
|
||||
|
||||
### Themes:
|
||||
|
||||
There are a number of themes you can use to style output.
|
||||
Use `yartsu --list-themes` to see the available options.
|
||||
Then you can specify the theme you want with `--theme`, i.e. `yartsu --theme rich_default`.
|
||||
You may also use the environment variable `YARTSU_THEME`.
|
||||
|
||||
See [here](https://github.com/daylinmorgan/yartsu/blob/main/docs/themes.md) a preview of the available themes
|
||||
|
||||
## TODO
|
||||
|
||||
- [ ] add unit tests
|
||||
- [ ] add support for nerd-fonts
|
||||
- [ ] add optional shadow
|
||||
- [ ] add more themes
|
||||
|
|
143
assets/logo.svg
Normal file
|
@ -0,0 +1,143 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 580 220.79999999999998" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-470432081-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-470432081-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-470432081-r1 { fill: #06dc9d }
|
||||
.terminal-470432081-r2 { fill: #0de988 }
|
||||
.terminal-470432081-r3 { fill: #18f373 }
|
||||
.terminal-470432081-r4 { fill: #26fa5e }
|
||||
.terminal-470432081-r5 { fill: #36fe4a }
|
||||
.terminal-470432081-r6 { fill: #48fe38 }
|
||||
.terminal-470432081-r7 { fill: #5cfb28 }
|
||||
.terminal-470432081-r8 { fill: #71f41a }
|
||||
.terminal-470432081-r9 { fill: #86ea0e }
|
||||
.terminal-470432081-r10 { fill: #9bdd06 }
|
||||
.terminal-470432081-r11 { fill: #c6d0f5 }
|
||||
.terminal-470432081-r12 { fill: #afce02 }
|
||||
.terminal-470432081-r13 { fill: #c2bc01 }
|
||||
.terminal-470432081-r14 { fill: #d3a903 }
|
||||
.terminal-470432081-r15 { fill: #e29409 }
|
||||
.terminal-470432081-r16 { fill: #ee7f12 }
|
||||
.terminal-470432081-r17 { fill: #f76a1e }
|
||||
.terminal-470432081-r18 { fill: #fc562d }
|
||||
.terminal-470432081-r19 { fill: #fe423e }
|
||||
.terminal-470432081-r20 { fill: #fd3151 }
|
||||
.terminal-470432081-r21 { fill: #f82165 }
|
||||
.terminal-470432081-r22 { fill: #f0147a }
|
||||
.terminal-470432081-r23 { fill: #e50b8f }
|
||||
.terminal-470432081-r24 { fill: #d704a4 }
|
||||
.terminal-470432081-r25 { fill: #c601b7 }
|
||||
.terminal-470432081-r26 { fill: #b401ca }
|
||||
.terminal-470432081-r27 { fill: #a005da }
|
||||
.terminal-470432081-r28 { fill: #8b0ce7 }
|
||||
.terminal-470432081-r29 { fill: #7617f2 }
|
||||
.terminal-470432081-r30 { fill: #6124f9 }
|
||||
.terminal-470432081-r31 { fill: #4d34fe }
|
||||
.terminal-470432081-r32 { fill: #3a46fe }
|
||||
.terminal-470432081-r33 { fill: #2a59fb }
|
||||
.terminal-470432081-r34 { fill: #1b6ef5 }
|
||||
.terminal-470432081-r35 { fill: #1083ec }
|
||||
.terminal-470432081-r36 { fill: #0798df }
|
||||
.terminal-470432081-r37 { fill: #02acd0 }
|
||||
.terminal-470432081-r38 { fill: #01bfbf }
|
||||
.terminal-470432081-r39 { fill: #02d1ab }
|
||||
.terminal-470432081-r40 { fill: #08e097 }
|
||||
.terminal-470432081-r41 { fill: #10ec82 }
|
||||
.terminal-470432081-r42 { fill: #1cf66d }
|
||||
.terminal-470432081-r43 { fill: #2bfc58 }
|
||||
.terminal-470432081-r44 { fill: #3bfe45 }
|
||||
.terminal-470432081-r45 { fill: #4efe33 }
|
||||
.terminal-470432081-r46 { fill: #62f923 }
|
||||
.terminal-470432081-r47 { fill: #77f116 }
|
||||
.terminal-470432081-r48 { fill: #8ce70c }
|
||||
.terminal-470432081-r49 { fill: #a1d905 }
|
||||
.terminal-470432081-r50 { fill: #b5c901 }
|
||||
.terminal-470432081-r51 { fill: #c7b601 }
|
||||
.terminal-470432081-r52 { fill: #d8a304 }
|
||||
.terminal-470432081-r53 { fill: #e68e0b }
|
||||
.terminal-470432081-r54 { fill: #f17915 }
|
||||
.terminal-470432081-r55 { fill: #f96422 }
|
||||
.terminal-470432081-r56 { fill: #fd5032 }
|
||||
.terminal-470432081-r57 { fill: #fe3d43 }
|
||||
.terminal-470432081-r58 { fill: #fc2c57 }
|
||||
.terminal-470432081-r59 { fill: #f61d6b }
|
||||
.terminal-470432081-r60 { fill: #ed1180 }
|
||||
.terminal-470432081-r61 { fill: #e10895 }
|
||||
.terminal-470432081-r62 { fill: #d203aa }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-470432081-clip-terminal">
|
||||
<rect x="0" y="0" width="560.1999999999999" height="169.79999999999998" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-470432081-line-0">
|
||||
<rect x="0" y="1.5" width="561.2" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-470432081-line-1">
|
||||
<rect x="0" y="25.9" width="561.2" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-470432081-line-2">
|
||||
<rect x="0" y="50.3" width="561.2" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-470432081-line-3">
|
||||
<rect x="0" y="74.7" width="561.2" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-470432081-line-4">
|
||||
<rect x="0" y="99.1" width="561.2" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-470432081-line-5">
|
||||
<rect x="0" y="123.5" width="561.2" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#1e1e2e" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="578" height="218.8" rx="8"/><text class="terminal-470432081-title" fill="#c6d0f5" text-anchor="middle" x="289" y="27">yartsu</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-470432081-clip-terminal)">
|
||||
|
||||
<g class="terminal-470432081-matrix">
|
||||
<text class="terminal-470432081-r7" x="73.2" y="20" textLength="12.2" clip-path="url(#terminal-470432081-line-0)">_</text><text class="terminal-470432081-r8" x="85.4" y="20" textLength="12.2" clip-path="url(#terminal-470432081-line-0)">_</text><text class="terminal-470432081-r9" x="97.6" y="20" textLength="12.2" clip-path="url(#terminal-470432081-line-0)">_</text><text class="terminal-470432081-r10" x="109.8" y="20" textLength="12.2" clip-path="url(#terminal-470432081-line-0)">_</text><text class="terminal-470432081-r11" x="561.2" y="20" textLength="12.2" clip-path="url(#terminal-470432081-line-0)">
|
||||
</text><text class="terminal-470432081-r5" x="12.2" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r6" x="24.4" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">[</text><text class="terminal-470432081-r7" x="36.6" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">]</text><text class="terminal-470432081-r8" x="48.8" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r9" x="61" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">/</text><text class="terminal-470432081-r10" x="73.2" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r12" x="85.4" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r13" x="97.6" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r14" x="109.8" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r15" x="122" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">\</text><text class="terminal-470432081-r16" x="134.2" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r17" x="146.4" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r18" x="158.6" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">n</text><text class="terminal-470432081-r19" x="170.8" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">_</text><text class="terminal-470432081-r11" x="561.2" y="44.4" textLength="12.2" clip-path="url(#terminal-470432081-line-1)">
|
||||
</text><text class="terminal-470432081-r7" x="0" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">|</text><text class="terminal-470432081-r8" x="12.2" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r9" x="24.4" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r10" x="36.6" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r12" x="48.8" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r13" x="61" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r14" x="73.2" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">.</text><text class="terminal-470432081-r15" x="85.4" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">-</text><text class="terminal-470432081-r16" x="97.6" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">-</text><text class="terminal-470432081-r17" x="109.8" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">.</text><text class="terminal-470432081-r18" x="122" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r19" x="134.2" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r20" x="146.4" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">(</text><text class="terminal-470432081-r21" x="158.6" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">)</text><text class="terminal-470432081-r22" x="170.8" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r23" x="183" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">|</text><text class="terminal-470432081-r42" x="414.8" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">_</text><text class="terminal-470432081-r11" x="561.2" y="68.8" textLength="12.2" clip-path="url(#terminal-470432081-line-2)">
|
||||
</text><text class="terminal-470432081-r10" x="0" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">|</text><text class="terminal-470432081-r12" x="12.2" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">L</text><text class="terminal-470432081-r13" x="24.4" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">I</text><text class="terminal-470432081-r16" x="61" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">/</text><text class="terminal-470432081-r17" x="73.2" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">/</text><text class="terminal-470432081-r18" x="85.4" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">#</text><text class="terminal-470432081-r20" x="109.8" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">\</text><text class="terminal-470432081-r21" x="122" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">\</text><text class="terminal-470432081-r26" x="183" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">|</text><text class="terminal-470432081-r31" x="244" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r34" x="280.6" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r36" x="305" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r37" x="317.2" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r39" x="341.6" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r41" x="366" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r43" x="390.4" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r44" x="402.6" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">|</text><text class="terminal-470432081-r46" x="427" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">|</text><text class="terminal-470432081-r47" x="439.2" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r49" x="463.6" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r50" x="475.8" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r51" x="488" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r52" x="500.2" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r55" x="536.8" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">_</text><text class="terminal-470432081-r11" x="561.2" y="93.2" textLength="12.2" clip-path="url(#terminal-470432081-line-3)">
|
||||
</text><text class="terminal-470432081-r14" x="0" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r19" x="61" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">\</text><text class="terminal-470432081-r20" x="73.2" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">\</text><text class="terminal-470432081-r21" x="85.4" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">_</text><text class="terminal-470432081-r22" x="97.6" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">_</text><text class="terminal-470432081-r23" x="109.8" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">/</text><text class="terminal-470432081-r24" x="122" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">/</text><text class="terminal-470432081-r29" x="183" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r33" x="231.8" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r35" x="256.2" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r36" x="268.4" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r38" x="292.8" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">/</text><text class="terminal-470432081-r40" x="317.2" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">_</text><text class="terminal-470432081-r41" x="329.4" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">`</text><text class="terminal-470432081-r43" x="353.8" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r45" x="378.2" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">'</text><text class="terminal-470432081-r46" x="390.4" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">_</text><text class="terminal-470432081-r47" x="402.6" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r50" x="439.2" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">_</text><text class="terminal-470432081-r51" x="451.4" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">(</text><text class="terminal-470432081-r52" x="463.6" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">_</text><text class="terminal-470432081-r53" x="475.8" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">-</text><text class="terminal-470432081-r54" x="488" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)"><</text><text class="terminal-470432081-r56" x="512.4" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r57" x="524.6" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r59" x="549" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">|</text><text class="terminal-470432081-r11" x="561.2" y="117.6" textLength="12.2" clip-path="url(#terminal-470432081-line-4)">
|
||||
</text><text class="terminal-470432081-r17" x="0" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">|</text><text class="terminal-470432081-r23" x="73.2" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">'</text><text class="terminal-470432081-r24" x="85.4" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">-</text><text class="terminal-470432081-r25" x="97.6" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">-</text><text class="terminal-470432081-r26" x="109.8" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">'</text><text class="terminal-470432081-r32" x="183" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">|</text><text class="terminal-470432081-r37" x="244" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">\</text><text class="terminal-470432081-r38" x="256.2" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r39" x="268.4" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">,</text><text class="terminal-470432081-r41" x="292.8" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">\</text><text class="terminal-470432081-r42" x="305" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r43" x="317.2" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r44" x="329.4" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">,</text><text class="terminal-470432081-r45" x="341.6" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r46" x="353.8" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">|</text><text class="terminal-470432081-r47" x="366" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r48" x="378.2" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">|</text><text class="terminal-470432081-r51" x="414.8" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">\</text><text class="terminal-470432081-r52" x="427" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r53" x="439.2" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r54" x="451.4" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">/</text><text class="terminal-470432081-r55" x="463.6" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r56" x="475.8" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r57" x="488" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">/</text><text class="terminal-470432081-r58" x="500.2" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">\</text><text class="terminal-470432081-r59" x="512.4" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r60" x="524.6" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">,</text><text class="terminal-470432081-r61" x="536.8" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">_</text><text class="terminal-470432081-r62" x="549" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">|</text><text class="terminal-470432081-r11" x="561.2" y="142" textLength="12.2" clip-path="url(#terminal-470432081-line-5)">
|
||||
</text><text class="terminal-470432081-r20" x="0" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">'</text><text class="terminal-470432081-r21" x="12.2" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r22" x="24.4" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r23" x="36.6" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r24" x="48.8" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r25" x="61" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r26" x="73.2" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r27" x="85.4" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r28" x="97.6" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r29" x="109.8" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r30" x="122" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r31" x="134.2" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r32" x="146.4" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r33" x="158.6" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r34" x="170.8" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">-</text><text class="terminal-470432081-r35" x="183" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">'</text><text class="terminal-470432081-r40" x="244" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">|</text><text class="terminal-470432081-r41" x="256.2" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">_</text><text class="terminal-470432081-r42" x="268.4" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">_</text><text class="terminal-470432081-r43" x="280.6" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">/</text><text class="terminal-470432081-r11" x="561.2" y="166.4" textLength="12.2" clip-path="url(#terminal-470432081-line-6)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 22 KiB |
7
assets/logo.txt
Normal file
|
@ -0,0 +1,7 @@
|
|||
____
|
||||
_[]_/____\__n_
|
||||
|_____.--.__()_| _
|
||||
|LI //# \\ | _ _ __ _ _ _| |_ ____ _
|
||||
| \\__// | | || / _` | '_| _(_-< || |
|
||||
| '--' | \_, \__,_|_| \__/__/\_,_|
|
||||
'--------------' |__/
|
135
assets/themes/cat_frappe.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-1674039238-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-1674039238-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-1674039238-r1 { fill: #94e2d5;font-weight: bold;font-style: italic; }
|
||||
.terminal-1674039238-r2 { fill: #c6ceef }
|
||||
.terminal-1674039238-r3 { fill: #8a90ab }
|
||||
.terminal-1674039238-r4 { fill: #94e2d5;font-weight: bold }
|
||||
.terminal-1674039238-r5 { fill: #f9e2af }
|
||||
.terminal-1674039238-r6 { fill: #a6e3a1 }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-1674039238-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-1674039238-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#303446" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-1674039238-title" fill="#c6ceef" text-anchor="middle" x="453" y="27">yartsu --theme cat_frappe</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-1674039238-clip-terminal)">
|
||||
|
||||
<g class="terminal-1674039238-matrix">
|
||||
<text class="terminal-1674039238-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-1674039238-line-0)">usage</text><text class="terminal-1674039238-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-1674039238-line-0)">:</text><text class="terminal-1674039238-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-1674039238-line-0)">
|
||||
</text><text class="terminal-1674039238-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-1674039238-line-1)">
|
||||
</text><text class="terminal-1674039238-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-1674039238-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-1674039238-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-1674039238-line-2)">
|
||||
</text><text class="terminal-1674039238-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-1674039238-line-3)">OR</text><text class="terminal-1674039238-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-1674039238-line-3)">
|
||||
</text><text class="terminal-1674039238-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-1674039238-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-1674039238-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-1674039238-line-4)">
|
||||
</text><text class="terminal-1674039238-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-1674039238-line-5)">OR</text><text class="terminal-1674039238-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-1674039238-line-5)">
|
||||
</text><text class="terminal-1674039238-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-1674039238-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-1674039238-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-1674039238-line-6)">
|
||||
</text><text class="terminal-1674039238-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-1674039238-line-7)">
|
||||
</text><text class="terminal-1674039238-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-1674039238-line-8)">convert terminal output to svg</text><text class="terminal-1674039238-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-1674039238-line-8)">
|
||||
</text><text class="terminal-1674039238-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-1674039238-line-9)">
|
||||
</text><text class="terminal-1674039238-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-1674039238-line-10)">options</text><text class="terminal-1674039238-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-1674039238-line-10)">:</text><text class="terminal-1674039238-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-1674039238-line-10)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-1674039238-line-11)">-h</text><text class="terminal-1674039238-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-1674039238-line-11)">, </text><text class="terminal-1674039238-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-1674039238-line-11)">--help</text><text class="terminal-1674039238-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-1674039238-line-11)">           show this help message and exit</text><text class="terminal-1674039238-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-1674039238-line-11)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-1674039238-line-12)">-V</text><text class="terminal-1674039238-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-1674039238-line-12)">, </text><text class="terminal-1674039238-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-1674039238-line-12)">--version</text><text class="terminal-1674039238-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-1674039238-line-12)">        show program's version number and exit</text><text class="terminal-1674039238-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-1674039238-line-12)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-1674039238-line-13)">-i</text><text class="terminal-1674039238-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-1674039238-line-13)">, </text><text class="terminal-1674039238-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-1674039238-line-13)">--input</text><text class="terminal-1674039238-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-1674039238-line-13)"> INPUT</text><text class="terminal-1674039238-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-1674039238-line-13)">    input file [default: stdin]</text><text class="terminal-1674039238-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-1674039238-line-13)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-1674039238-line-14)">-o</text><text class="terminal-1674039238-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-1674039238-line-14)">, </text><text class="terminal-1674039238-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-1674039238-line-14)">--output</text><text class="terminal-1674039238-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-1674039238-line-14)"> OUTPUT</text><text class="terminal-1674039238-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-1674039238-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-1674039238-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-1674039238-line-14)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-1674039238-line-15)">-t</text><text class="terminal-1674039238-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-1674039238-line-15)">, </text><text class="terminal-1674039238-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-1674039238-line-15)">--title</text><text class="terminal-1674039238-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-1674039238-line-15)"> TITLE</text><text class="terminal-1674039238-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-1674039238-line-15)">    title for terminal window</text><text class="terminal-1674039238-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-1674039238-line-15)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-1674039238-line-16)">-w</text><text class="terminal-1674039238-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-1674039238-line-16)">, </text><text class="terminal-1674039238-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-1674039238-line-16)">--width</text><text class="terminal-1674039238-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-1674039238-line-16)"> WIDTH</text><text class="terminal-1674039238-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-1674039238-line-16)">    width of svg</text><text class="terminal-1674039238-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-1674039238-line-16)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-1674039238-line-17)">--theme</text><text class="terminal-1674039238-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-1674039238-line-17)"> THEME</text><text class="terminal-1674039238-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-1674039238-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-1674039238-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-1674039238-line-17)">
|
||||
</text><text class="terminal-1674039238-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-1674039238-line-18)">--list-themes</text><text class="terminal-1674039238-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-1674039238-line-18)">        list available themes</text><text class="terminal-1674039238-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-1674039238-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/cat_latte.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-2483212130-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-2483212130-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-2483212130-r1 { fill: #94e2d5;font-weight: bold;font-style: italic; }
|
||||
.terminal-2483212130-r2 { fill: #4c4f69 }
|
||||
.terminal-2483212130-r3 { fill: #8d8fa1 }
|
||||
.terminal-2483212130-r4 { fill: #94e2d5;font-weight: bold }
|
||||
.terminal-2483212130-r5 { fill: #f9e2af }
|
||||
.terminal-2483212130-r6 { fill: #a6e3a1 }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-2483212130-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2483212130-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#eff1f5" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-2483212130-title" fill="#4c4f69" text-anchor="middle" x="453" y="27">yartsu --theme cat_latte</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-2483212130-clip-terminal)">
|
||||
|
||||
<g class="terminal-2483212130-matrix">
|
||||
<text class="terminal-2483212130-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-2483212130-line-0)">usage</text><text class="terminal-2483212130-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-2483212130-line-0)">:</text><text class="terminal-2483212130-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-2483212130-line-0)">
|
||||
</text><text class="terminal-2483212130-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-2483212130-line-1)">
|
||||
</text><text class="terminal-2483212130-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-2483212130-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-2483212130-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-2483212130-line-2)">
|
||||
</text><text class="terminal-2483212130-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-2483212130-line-3)">OR</text><text class="terminal-2483212130-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-2483212130-line-3)">
|
||||
</text><text class="terminal-2483212130-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-2483212130-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-2483212130-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-2483212130-line-4)">
|
||||
</text><text class="terminal-2483212130-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-2483212130-line-5)">OR</text><text class="terminal-2483212130-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-2483212130-line-5)">
|
||||
</text><text class="terminal-2483212130-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-2483212130-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-2483212130-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-2483212130-line-6)">
|
||||
</text><text class="terminal-2483212130-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-2483212130-line-7)">
|
||||
</text><text class="terminal-2483212130-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-2483212130-line-8)">convert terminal output to svg</text><text class="terminal-2483212130-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-2483212130-line-8)">
|
||||
</text><text class="terminal-2483212130-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-2483212130-line-9)">
|
||||
</text><text class="terminal-2483212130-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-2483212130-line-10)">options</text><text class="terminal-2483212130-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-2483212130-line-10)">:</text><text class="terminal-2483212130-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-2483212130-line-10)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-2483212130-line-11)">-h</text><text class="terminal-2483212130-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-2483212130-line-11)">, </text><text class="terminal-2483212130-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-2483212130-line-11)">--help</text><text class="terminal-2483212130-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-2483212130-line-11)">           show this help message and exit</text><text class="terminal-2483212130-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-2483212130-line-11)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-2483212130-line-12)">-V</text><text class="terminal-2483212130-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-2483212130-line-12)">, </text><text class="terminal-2483212130-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-2483212130-line-12)">--version</text><text class="terminal-2483212130-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-2483212130-line-12)">        show program's version number and exit</text><text class="terminal-2483212130-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-2483212130-line-12)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-2483212130-line-13)">-i</text><text class="terminal-2483212130-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-2483212130-line-13)">, </text><text class="terminal-2483212130-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-2483212130-line-13)">--input</text><text class="terminal-2483212130-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-2483212130-line-13)"> INPUT</text><text class="terminal-2483212130-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-2483212130-line-13)">    input file [default: stdin]</text><text class="terminal-2483212130-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-2483212130-line-13)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-2483212130-line-14)">-o</text><text class="terminal-2483212130-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-2483212130-line-14)">, </text><text class="terminal-2483212130-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-2483212130-line-14)">--output</text><text class="terminal-2483212130-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-2483212130-line-14)"> OUTPUT</text><text class="terminal-2483212130-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-2483212130-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-2483212130-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-2483212130-line-14)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-2483212130-line-15)">-t</text><text class="terminal-2483212130-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-2483212130-line-15)">, </text><text class="terminal-2483212130-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-2483212130-line-15)">--title</text><text class="terminal-2483212130-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-2483212130-line-15)"> TITLE</text><text class="terminal-2483212130-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-2483212130-line-15)">    title for terminal window</text><text class="terminal-2483212130-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-2483212130-line-15)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-2483212130-line-16)">-w</text><text class="terminal-2483212130-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-2483212130-line-16)">, </text><text class="terminal-2483212130-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-2483212130-line-16)">--width</text><text class="terminal-2483212130-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-2483212130-line-16)"> WIDTH</text><text class="terminal-2483212130-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-2483212130-line-16)">    width of svg</text><text class="terminal-2483212130-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-2483212130-line-16)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-2483212130-line-17)">--theme</text><text class="terminal-2483212130-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-2483212130-line-17)"> THEME</text><text class="terminal-2483212130-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-2483212130-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-2483212130-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-2483212130-line-17)">
|
||||
</text><text class="terminal-2483212130-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-2483212130-line-18)">--list-themes</text><text class="terminal-2483212130-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-2483212130-line-18)">        list available themes</text><text class="terminal-2483212130-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-2483212130-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/cat_macchiato.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-3574649073-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-3574649073-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-3574649073-r1 { fill: #94e2d5;font-weight: bold;font-style: italic; }
|
||||
.terminal-3574649073-r2 { fill: #c5cff5 }
|
||||
.terminal-3574649073-r3 { fill: #848baa }
|
||||
.terminal-3574649073-r4 { fill: #94e2d5;font-weight: bold }
|
||||
.terminal-3574649073-r5 { fill: #f9e2af }
|
||||
.terminal-3574649073-r6 { fill: #a6e3a1 }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-3574649073-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3574649073-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#24273a" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-3574649073-title" fill="#c5cff5" text-anchor="middle" x="453" y="27">yartsu --theme cat_macchiato</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-3574649073-clip-terminal)">
|
||||
|
||||
<g class="terminal-3574649073-matrix">
|
||||
<text class="terminal-3574649073-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-3574649073-line-0)">usage</text><text class="terminal-3574649073-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-3574649073-line-0)">:</text><text class="terminal-3574649073-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-3574649073-line-0)">
|
||||
</text><text class="terminal-3574649073-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-3574649073-line-1)">
|
||||
</text><text class="terminal-3574649073-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-3574649073-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-3574649073-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-3574649073-line-2)">
|
||||
</text><text class="terminal-3574649073-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-3574649073-line-3)">OR</text><text class="terminal-3574649073-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-3574649073-line-3)">
|
||||
</text><text class="terminal-3574649073-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-3574649073-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-3574649073-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-3574649073-line-4)">
|
||||
</text><text class="terminal-3574649073-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-3574649073-line-5)">OR</text><text class="terminal-3574649073-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-3574649073-line-5)">
|
||||
</text><text class="terminal-3574649073-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-3574649073-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-3574649073-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-3574649073-line-6)">
|
||||
</text><text class="terminal-3574649073-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-3574649073-line-7)">
|
||||
</text><text class="terminal-3574649073-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-3574649073-line-8)">convert terminal output to svg</text><text class="terminal-3574649073-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-3574649073-line-8)">
|
||||
</text><text class="terminal-3574649073-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-3574649073-line-9)">
|
||||
</text><text class="terminal-3574649073-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-3574649073-line-10)">options</text><text class="terminal-3574649073-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-3574649073-line-10)">:</text><text class="terminal-3574649073-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-3574649073-line-10)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-3574649073-line-11)">-h</text><text class="terminal-3574649073-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-3574649073-line-11)">, </text><text class="terminal-3574649073-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-3574649073-line-11)">--help</text><text class="terminal-3574649073-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-3574649073-line-11)">           show this help message and exit</text><text class="terminal-3574649073-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-3574649073-line-11)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-3574649073-line-12)">-V</text><text class="terminal-3574649073-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-3574649073-line-12)">, </text><text class="terminal-3574649073-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-3574649073-line-12)">--version</text><text class="terminal-3574649073-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-3574649073-line-12)">        show program's version number and exit</text><text class="terminal-3574649073-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-3574649073-line-12)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-3574649073-line-13)">-i</text><text class="terminal-3574649073-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-3574649073-line-13)">, </text><text class="terminal-3574649073-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-3574649073-line-13)">--input</text><text class="terminal-3574649073-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-3574649073-line-13)"> INPUT</text><text class="terminal-3574649073-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-3574649073-line-13)">    input file [default: stdin]</text><text class="terminal-3574649073-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-3574649073-line-13)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-3574649073-line-14)">-o</text><text class="terminal-3574649073-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-3574649073-line-14)">, </text><text class="terminal-3574649073-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-3574649073-line-14)">--output</text><text class="terminal-3574649073-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-3574649073-line-14)"> OUTPUT</text><text class="terminal-3574649073-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-3574649073-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-3574649073-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-3574649073-line-14)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-3574649073-line-15)">-t</text><text class="terminal-3574649073-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-3574649073-line-15)">, </text><text class="terminal-3574649073-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-3574649073-line-15)">--title</text><text class="terminal-3574649073-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-3574649073-line-15)"> TITLE</text><text class="terminal-3574649073-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-3574649073-line-15)">    title for terminal window</text><text class="terminal-3574649073-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-3574649073-line-15)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-3574649073-line-16)">-w</text><text class="terminal-3574649073-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-3574649073-line-16)">, </text><text class="terminal-3574649073-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-3574649073-line-16)">--width</text><text class="terminal-3574649073-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-3574649073-line-16)"> WIDTH</text><text class="terminal-3574649073-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-3574649073-line-16)">    width of svg</text><text class="terminal-3574649073-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-3574649073-line-16)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-3574649073-line-17)">--theme</text><text class="terminal-3574649073-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-3574649073-line-17)"> THEME</text><text class="terminal-3574649073-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-3574649073-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-3574649073-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-3574649073-line-17)">
|
||||
</text><text class="terminal-3574649073-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-3574649073-line-18)">--list-themes</text><text class="terminal-3574649073-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-3574649073-line-18)">        list available themes</text><text class="terminal-3574649073-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-3574649073-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/cat_mocha.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-2482032464-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-2482032464-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-2482032464-r1 { fill: #94e2d5;font-weight: bold;font-style: italic; }
|
||||
.terminal-2482032464-r2 { fill: #c6d0f5 }
|
||||
.terminal-2482032464-r3 { fill: #8288a5 }
|
||||
.terminal-2482032464-r4 { fill: #94e2d5;font-weight: bold }
|
||||
.terminal-2482032464-r5 { fill: #f9e2af }
|
||||
.terminal-2482032464-r6 { fill: #a6e3a1 }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-2482032464-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2482032464-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#1e1e2e" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-2482032464-title" fill="#c6d0f5" text-anchor="middle" x="453" y="27">yartsu --theme cat_mocha</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-2482032464-clip-terminal)">
|
||||
|
||||
<g class="terminal-2482032464-matrix">
|
||||
<text class="terminal-2482032464-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-2482032464-line-0)">usage</text><text class="terminal-2482032464-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-2482032464-line-0)">:</text><text class="terminal-2482032464-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-2482032464-line-0)">
|
||||
</text><text class="terminal-2482032464-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-2482032464-line-1)">
|
||||
</text><text class="terminal-2482032464-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-2482032464-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-2482032464-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-2482032464-line-2)">
|
||||
</text><text class="terminal-2482032464-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-2482032464-line-3)">OR</text><text class="terminal-2482032464-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-2482032464-line-3)">
|
||||
</text><text class="terminal-2482032464-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-2482032464-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-2482032464-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-2482032464-line-4)">
|
||||
</text><text class="terminal-2482032464-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-2482032464-line-5)">OR</text><text class="terminal-2482032464-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-2482032464-line-5)">
|
||||
</text><text class="terminal-2482032464-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-2482032464-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-2482032464-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-2482032464-line-6)">
|
||||
</text><text class="terminal-2482032464-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-2482032464-line-7)">
|
||||
</text><text class="terminal-2482032464-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-2482032464-line-8)">convert terminal output to svg</text><text class="terminal-2482032464-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-2482032464-line-8)">
|
||||
</text><text class="terminal-2482032464-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-2482032464-line-9)">
|
||||
</text><text class="terminal-2482032464-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-2482032464-line-10)">options</text><text class="terminal-2482032464-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-2482032464-line-10)">:</text><text class="terminal-2482032464-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-2482032464-line-10)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-2482032464-line-11)">-h</text><text class="terminal-2482032464-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-2482032464-line-11)">, </text><text class="terminal-2482032464-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-2482032464-line-11)">--help</text><text class="terminal-2482032464-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-2482032464-line-11)">           show this help message and exit</text><text class="terminal-2482032464-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-2482032464-line-11)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-2482032464-line-12)">-V</text><text class="terminal-2482032464-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-2482032464-line-12)">, </text><text class="terminal-2482032464-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-2482032464-line-12)">--version</text><text class="terminal-2482032464-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-2482032464-line-12)">        show program's version number and exit</text><text class="terminal-2482032464-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-2482032464-line-12)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-2482032464-line-13)">-i</text><text class="terminal-2482032464-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-2482032464-line-13)">, </text><text class="terminal-2482032464-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-2482032464-line-13)">--input</text><text class="terminal-2482032464-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-2482032464-line-13)"> INPUT</text><text class="terminal-2482032464-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-2482032464-line-13)">    input file [default: stdin]</text><text class="terminal-2482032464-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-2482032464-line-13)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-2482032464-line-14)">-o</text><text class="terminal-2482032464-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-2482032464-line-14)">, </text><text class="terminal-2482032464-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-2482032464-line-14)">--output</text><text class="terminal-2482032464-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-2482032464-line-14)"> OUTPUT</text><text class="terminal-2482032464-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-2482032464-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-2482032464-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-2482032464-line-14)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-2482032464-line-15)">-t</text><text class="terminal-2482032464-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-2482032464-line-15)">, </text><text class="terminal-2482032464-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-2482032464-line-15)">--title</text><text class="terminal-2482032464-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-2482032464-line-15)"> TITLE</text><text class="terminal-2482032464-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-2482032464-line-15)">    title for terminal window</text><text class="terminal-2482032464-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-2482032464-line-15)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-2482032464-line-16)">-w</text><text class="terminal-2482032464-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-2482032464-line-16)">, </text><text class="terminal-2482032464-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-2482032464-line-16)">--width</text><text class="terminal-2482032464-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-2482032464-line-16)"> WIDTH</text><text class="terminal-2482032464-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-2482032464-line-16)">    width of svg</text><text class="terminal-2482032464-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-2482032464-line-16)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-2482032464-line-17)">--theme</text><text class="terminal-2482032464-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-2482032464-line-17)"> THEME</text><text class="terminal-2482032464-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-2482032464-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-2482032464-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-2482032464-line-17)">
|
||||
</text><text class="terminal-2482032464-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-2482032464-line-18)">--list-themes</text><text class="terminal-2482032464-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-2482032464-line-18)">        list available themes</text><text class="terminal-2482032464-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-2482032464-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/dimmed_monokai.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-2808795502-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-2808795502-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-2808795502-r1 { fill: #578fa4;font-weight: bold;font-style: italic; }
|
||||
.terminal-2808795502-r2 { fill: #b9bcba }
|
||||
.terminal-2808795502-r3 { fill: #797a79 }
|
||||
.terminal-2808795502-r4 { fill: #578fa4;font-weight: bold }
|
||||
.terminal-2808795502-r5 { fill: #c5a635 }
|
||||
.terminal-2808795502-r6 { fill: #879a3b }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-2808795502-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-2808795502-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#191919" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-2808795502-title" fill="#b9bcba" text-anchor="middle" x="453" y="27">yartsu --theme dimmed_monokai</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-2808795502-clip-terminal)">
|
||||
|
||||
<g class="terminal-2808795502-matrix">
|
||||
<text class="terminal-2808795502-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-2808795502-line-0)">usage</text><text class="terminal-2808795502-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-2808795502-line-0)">:</text><text class="terminal-2808795502-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-2808795502-line-0)">
|
||||
</text><text class="terminal-2808795502-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-2808795502-line-1)">
|
||||
</text><text class="terminal-2808795502-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-2808795502-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-2808795502-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-2808795502-line-2)">
|
||||
</text><text class="terminal-2808795502-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-2808795502-line-3)">OR</text><text class="terminal-2808795502-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-2808795502-line-3)">
|
||||
</text><text class="terminal-2808795502-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-2808795502-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-2808795502-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-2808795502-line-4)">
|
||||
</text><text class="terminal-2808795502-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-2808795502-line-5)">OR</text><text class="terminal-2808795502-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-2808795502-line-5)">
|
||||
</text><text class="terminal-2808795502-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-2808795502-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-2808795502-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-2808795502-line-6)">
|
||||
</text><text class="terminal-2808795502-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-2808795502-line-7)">
|
||||
</text><text class="terminal-2808795502-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-2808795502-line-8)">convert terminal output to svg</text><text class="terminal-2808795502-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-2808795502-line-8)">
|
||||
</text><text class="terminal-2808795502-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-2808795502-line-9)">
|
||||
</text><text class="terminal-2808795502-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-2808795502-line-10)">options</text><text class="terminal-2808795502-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-2808795502-line-10)">:</text><text class="terminal-2808795502-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-2808795502-line-10)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-2808795502-line-11)">-h</text><text class="terminal-2808795502-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-2808795502-line-11)">, </text><text class="terminal-2808795502-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-2808795502-line-11)">--help</text><text class="terminal-2808795502-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-2808795502-line-11)">           show this help message and exit</text><text class="terminal-2808795502-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-2808795502-line-11)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-2808795502-line-12)">-V</text><text class="terminal-2808795502-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-2808795502-line-12)">, </text><text class="terminal-2808795502-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-2808795502-line-12)">--version</text><text class="terminal-2808795502-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-2808795502-line-12)">        show program's version number and exit</text><text class="terminal-2808795502-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-2808795502-line-12)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-2808795502-line-13)">-i</text><text class="terminal-2808795502-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-2808795502-line-13)">, </text><text class="terminal-2808795502-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-2808795502-line-13)">--input</text><text class="terminal-2808795502-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-2808795502-line-13)"> INPUT</text><text class="terminal-2808795502-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-2808795502-line-13)">    input file [default: stdin]</text><text class="terminal-2808795502-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-2808795502-line-13)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-2808795502-line-14)">-o</text><text class="terminal-2808795502-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-2808795502-line-14)">, </text><text class="terminal-2808795502-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-2808795502-line-14)">--output</text><text class="terminal-2808795502-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-2808795502-line-14)"> OUTPUT</text><text class="terminal-2808795502-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-2808795502-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-2808795502-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-2808795502-line-14)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-2808795502-line-15)">-t</text><text class="terminal-2808795502-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-2808795502-line-15)">, </text><text class="terminal-2808795502-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-2808795502-line-15)">--title</text><text class="terminal-2808795502-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-2808795502-line-15)"> TITLE</text><text class="terminal-2808795502-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-2808795502-line-15)">    title for terminal window</text><text class="terminal-2808795502-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-2808795502-line-15)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-2808795502-line-16)">-w</text><text class="terminal-2808795502-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-2808795502-line-16)">, </text><text class="terminal-2808795502-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-2808795502-line-16)">--width</text><text class="terminal-2808795502-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-2808795502-line-16)"> WIDTH</text><text class="terminal-2808795502-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-2808795502-line-16)">    width of svg</text><text class="terminal-2808795502-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-2808795502-line-16)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-2808795502-line-17)">--theme</text><text class="terminal-2808795502-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-2808795502-line-17)"> THEME</text><text class="terminal-2808795502-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-2808795502-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-2808795502-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-2808795502-line-17)">
|
||||
</text><text class="terminal-2808795502-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-2808795502-line-18)">--list-themes</text><text class="terminal-2808795502-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-2808795502-line-18)">        list available themes</text><text class="terminal-2808795502-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-2808795502-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/monokai.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-4130590367-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-4130590367-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-4130590367-r1 { fill: #58d1eb;font-weight: bold;font-style: italic; }
|
||||
.terminal-4130590367-r2 { fill: #d9d9d9 }
|
||||
.terminal-4130590367-r3 { fill: #878787 }
|
||||
.terminal-4130590367-r4 { fill: #58d1eb;font-weight: bold }
|
||||
.terminal-4130590367-r5 { fill: #fd971f }
|
||||
.terminal-4130590367-r6 { fill: #98e024 }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-4130590367-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-4130590367-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#0c0c0c" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-4130590367-title" fill="#d9d9d9" text-anchor="middle" x="453" y="27">yartsu --theme monokai</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-4130590367-clip-terminal)">
|
||||
|
||||
<g class="terminal-4130590367-matrix">
|
||||
<text class="terminal-4130590367-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-4130590367-line-0)">usage</text><text class="terminal-4130590367-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-4130590367-line-0)">:</text><text class="terminal-4130590367-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-4130590367-line-0)">
|
||||
</text><text class="terminal-4130590367-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-4130590367-line-1)">
|
||||
</text><text class="terminal-4130590367-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-4130590367-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-4130590367-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-4130590367-line-2)">
|
||||
</text><text class="terminal-4130590367-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-4130590367-line-3)">OR</text><text class="terminal-4130590367-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-4130590367-line-3)">
|
||||
</text><text class="terminal-4130590367-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-4130590367-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-4130590367-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-4130590367-line-4)">
|
||||
</text><text class="terminal-4130590367-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-4130590367-line-5)">OR</text><text class="terminal-4130590367-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-4130590367-line-5)">
|
||||
</text><text class="terminal-4130590367-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-4130590367-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-4130590367-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-4130590367-line-6)">
|
||||
</text><text class="terminal-4130590367-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-4130590367-line-7)">
|
||||
</text><text class="terminal-4130590367-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-4130590367-line-8)">convert terminal output to svg</text><text class="terminal-4130590367-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-4130590367-line-8)">
|
||||
</text><text class="terminal-4130590367-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-4130590367-line-9)">
|
||||
</text><text class="terminal-4130590367-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-4130590367-line-10)">options</text><text class="terminal-4130590367-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-4130590367-line-10)">:</text><text class="terminal-4130590367-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-4130590367-line-10)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-4130590367-line-11)">-h</text><text class="terminal-4130590367-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-4130590367-line-11)">, </text><text class="terminal-4130590367-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-4130590367-line-11)">--help</text><text class="terminal-4130590367-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-4130590367-line-11)">           show this help message and exit</text><text class="terminal-4130590367-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-4130590367-line-11)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-4130590367-line-12)">-V</text><text class="terminal-4130590367-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-4130590367-line-12)">, </text><text class="terminal-4130590367-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-4130590367-line-12)">--version</text><text class="terminal-4130590367-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-4130590367-line-12)">        show program's version number and exit</text><text class="terminal-4130590367-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-4130590367-line-12)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-4130590367-line-13)">-i</text><text class="terminal-4130590367-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-4130590367-line-13)">, </text><text class="terminal-4130590367-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-4130590367-line-13)">--input</text><text class="terminal-4130590367-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-4130590367-line-13)"> INPUT</text><text class="terminal-4130590367-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-4130590367-line-13)">    input file [default: stdin]</text><text class="terminal-4130590367-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-4130590367-line-13)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-4130590367-line-14)">-o</text><text class="terminal-4130590367-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-4130590367-line-14)">, </text><text class="terminal-4130590367-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-4130590367-line-14)">--output</text><text class="terminal-4130590367-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-4130590367-line-14)"> OUTPUT</text><text class="terminal-4130590367-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-4130590367-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-4130590367-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-4130590367-line-14)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-4130590367-line-15)">-t</text><text class="terminal-4130590367-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-4130590367-line-15)">, </text><text class="terminal-4130590367-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-4130590367-line-15)">--title</text><text class="terminal-4130590367-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-4130590367-line-15)"> TITLE</text><text class="terminal-4130590367-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-4130590367-line-15)">    title for terminal window</text><text class="terminal-4130590367-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-4130590367-line-15)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-4130590367-line-16)">-w</text><text class="terminal-4130590367-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-4130590367-line-16)">, </text><text class="terminal-4130590367-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-4130590367-line-16)">--width</text><text class="terminal-4130590367-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-4130590367-line-16)"> WIDTH</text><text class="terminal-4130590367-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-4130590367-line-16)">    width of svg</text><text class="terminal-4130590367-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-4130590367-line-16)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-4130590367-line-17)">--theme</text><text class="terminal-4130590367-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-4130590367-line-17)"> THEME</text><text class="terminal-4130590367-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-4130590367-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-4130590367-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-4130590367-line-17)">
|
||||
</text><text class="terminal-4130590367-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-4130590367-line-18)">--list-themes</text><text class="terminal-4130590367-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-4130590367-line-18)">        list available themes</text><text class="terminal-4130590367-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-4130590367-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/night_owlish.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-97046720-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-97046720-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-97046720-r1 { fill: #08916a;font-weight: bold;font-style: italic; }
|
||||
.terminal-97046720-r2 { fill: #403f53 }
|
||||
.terminal-97046720-r3 { fill: #8c8b97 }
|
||||
.terminal-97046720-r4 { fill: #08916a;font-weight: bold }
|
||||
.terminal-97046720-r5 { fill: #daaa01 }
|
||||
.terminal-97046720-r6 { fill: #2aa298 }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-97046720-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-97046720-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#ffffff" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-97046720-title" fill="#403f53" text-anchor="middle" x="453" y="27">yartsu --theme night_owlish</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-97046720-clip-terminal)">
|
||||
|
||||
<g class="terminal-97046720-matrix">
|
||||
<text class="terminal-97046720-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-97046720-line-0)">usage</text><text class="terminal-97046720-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-97046720-line-0)">:</text><text class="terminal-97046720-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-97046720-line-0)">
|
||||
</text><text class="terminal-97046720-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-97046720-line-1)">
|
||||
</text><text class="terminal-97046720-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-97046720-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-97046720-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-97046720-line-2)">
|
||||
</text><text class="terminal-97046720-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-97046720-line-3)">OR</text><text class="terminal-97046720-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-97046720-line-3)">
|
||||
</text><text class="terminal-97046720-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-97046720-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-97046720-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-97046720-line-4)">
|
||||
</text><text class="terminal-97046720-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-97046720-line-5)">OR</text><text class="terminal-97046720-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-97046720-line-5)">
|
||||
</text><text class="terminal-97046720-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-97046720-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-97046720-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-97046720-line-6)">
|
||||
</text><text class="terminal-97046720-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-97046720-line-7)">
|
||||
</text><text class="terminal-97046720-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-97046720-line-8)">convert terminal output to svg</text><text class="terminal-97046720-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-97046720-line-8)">
|
||||
</text><text class="terminal-97046720-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-97046720-line-9)">
|
||||
</text><text class="terminal-97046720-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-97046720-line-10)">options</text><text class="terminal-97046720-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-97046720-line-10)">:</text><text class="terminal-97046720-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-97046720-line-10)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-97046720-line-11)">-h</text><text class="terminal-97046720-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-97046720-line-11)">, </text><text class="terminal-97046720-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-97046720-line-11)">--help</text><text class="terminal-97046720-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-97046720-line-11)">           show this help message and exit</text><text class="terminal-97046720-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-97046720-line-11)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-97046720-line-12)">-V</text><text class="terminal-97046720-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-97046720-line-12)">, </text><text class="terminal-97046720-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-97046720-line-12)">--version</text><text class="terminal-97046720-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-97046720-line-12)">        show program's version number and exit</text><text class="terminal-97046720-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-97046720-line-12)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-97046720-line-13)">-i</text><text class="terminal-97046720-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-97046720-line-13)">, </text><text class="terminal-97046720-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-97046720-line-13)">--input</text><text class="terminal-97046720-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-97046720-line-13)"> INPUT</text><text class="terminal-97046720-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-97046720-line-13)">    input file [default: stdin]</text><text class="terminal-97046720-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-97046720-line-13)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-97046720-line-14)">-o</text><text class="terminal-97046720-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-97046720-line-14)">, </text><text class="terminal-97046720-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-97046720-line-14)">--output</text><text class="terminal-97046720-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-97046720-line-14)"> OUTPUT</text><text class="terminal-97046720-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-97046720-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-97046720-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-97046720-line-14)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-97046720-line-15)">-t</text><text class="terminal-97046720-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-97046720-line-15)">, </text><text class="terminal-97046720-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-97046720-line-15)">--title</text><text class="terminal-97046720-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-97046720-line-15)"> TITLE</text><text class="terminal-97046720-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-97046720-line-15)">    title for terminal window</text><text class="terminal-97046720-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-97046720-line-15)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-97046720-line-16)">-w</text><text class="terminal-97046720-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-97046720-line-16)">, </text><text class="terminal-97046720-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-97046720-line-16)">--width</text><text class="terminal-97046720-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-97046720-line-16)"> WIDTH</text><text class="terminal-97046720-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-97046720-line-16)">    width of svg</text><text class="terminal-97046720-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-97046720-line-16)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-97046720-line-17)">--theme</text><text class="terminal-97046720-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-97046720-line-17)"> THEME</text><text class="terminal-97046720-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-97046720-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-97046720-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-97046720-line-17)">
|
||||
</text><text class="terminal-97046720-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-97046720-line-18)">--list-themes</text><text class="terminal-97046720-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-97046720-line-18)">        list available themes</text><text class="terminal-97046720-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-97046720-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/rich-default.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-52482153-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-52482153-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-52482153-r1 { fill: #68a0b3;font-weight: bold;font-style: italic; }
|
||||
.terminal-52482153-r2 { fill: #c5c8c6 }
|
||||
.terminal-52482153-r3 { fill: #868887 }
|
||||
.terminal-52482153-r4 { fill: #68a0b3;font-weight: bold }
|
||||
.terminal-52482153-r5 { fill: #d0b344 }
|
||||
.terminal-52482153-r6 { fill: #98a84b }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-52482153-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-52482153-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-52482153-title" fill="#c5c8c6" text-anchor="middle" x="453" y="27">yartsu --theme rich-default</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-52482153-clip-terminal)">
|
||||
|
||||
<g class="terminal-52482153-matrix">
|
||||
<text class="terminal-52482153-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-52482153-line-0)">usage</text><text class="terminal-52482153-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-52482153-line-0)">:</text><text class="terminal-52482153-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-52482153-line-0)">
|
||||
</text><text class="terminal-52482153-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-52482153-line-1)">
|
||||
</text><text class="terminal-52482153-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-52482153-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-52482153-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-52482153-line-2)">
|
||||
</text><text class="terminal-52482153-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-52482153-line-3)">OR</text><text class="terminal-52482153-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-52482153-line-3)">
|
||||
</text><text class="terminal-52482153-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-52482153-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-52482153-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-52482153-line-4)">
|
||||
</text><text class="terminal-52482153-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-52482153-line-5)">OR</text><text class="terminal-52482153-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-52482153-line-5)">
|
||||
</text><text class="terminal-52482153-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-52482153-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-52482153-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-52482153-line-6)">
|
||||
</text><text class="terminal-52482153-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-52482153-line-7)">
|
||||
</text><text class="terminal-52482153-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-52482153-line-8)">convert terminal output to svg</text><text class="terminal-52482153-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-52482153-line-8)">
|
||||
</text><text class="terminal-52482153-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-52482153-line-9)">
|
||||
</text><text class="terminal-52482153-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-52482153-line-10)">options</text><text class="terminal-52482153-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-52482153-line-10)">:</text><text class="terminal-52482153-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-52482153-line-10)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-52482153-line-11)">-h</text><text class="terminal-52482153-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-52482153-line-11)">, </text><text class="terminal-52482153-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-52482153-line-11)">--help</text><text class="terminal-52482153-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-52482153-line-11)">           show this help message and exit</text><text class="terminal-52482153-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-52482153-line-11)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-52482153-line-12)">-V</text><text class="terminal-52482153-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-52482153-line-12)">, </text><text class="terminal-52482153-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-52482153-line-12)">--version</text><text class="terminal-52482153-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-52482153-line-12)">        show program's version number and exit</text><text class="terminal-52482153-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-52482153-line-12)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-52482153-line-13)">-i</text><text class="terminal-52482153-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-52482153-line-13)">, </text><text class="terminal-52482153-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-52482153-line-13)">--input</text><text class="terminal-52482153-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-52482153-line-13)"> INPUT</text><text class="terminal-52482153-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-52482153-line-13)">    input file [default: stdin]</text><text class="terminal-52482153-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-52482153-line-13)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-52482153-line-14)">-o</text><text class="terminal-52482153-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-52482153-line-14)">, </text><text class="terminal-52482153-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-52482153-line-14)">--output</text><text class="terminal-52482153-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-52482153-line-14)"> OUTPUT</text><text class="terminal-52482153-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-52482153-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-52482153-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-52482153-line-14)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-52482153-line-15)">-t</text><text class="terminal-52482153-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-52482153-line-15)">, </text><text class="terminal-52482153-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-52482153-line-15)">--title</text><text class="terminal-52482153-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-52482153-line-15)"> TITLE</text><text class="terminal-52482153-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-52482153-line-15)">    title for terminal window</text><text class="terminal-52482153-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-52482153-line-15)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-52482153-line-16)">-w</text><text class="terminal-52482153-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-52482153-line-16)">, </text><text class="terminal-52482153-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-52482153-line-16)">--width</text><text class="terminal-52482153-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-52482153-line-16)"> WIDTH</text><text class="terminal-52482153-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-52482153-line-16)">    width of svg</text><text class="terminal-52482153-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-52482153-line-16)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-52482153-line-17)">--theme</text><text class="terminal-52482153-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-52482153-line-17)"> THEME</text><text class="terminal-52482153-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-52482153-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-52482153-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-52482153-line-17)">
|
||||
</text><text class="terminal-52482153-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-52482153-line-18)">--list-themes</text><text class="terminal-52482153-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-52482153-line-18)">        list available themes</text><text class="terminal-52482153-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-52482153-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/themes/rich_default.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-78696603-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-78696603-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-78696603-r1 { fill: #68a0b3;font-weight: bold;font-style: italic; }
|
||||
.terminal-78696603-r2 { fill: #c5c8c6 }
|
||||
.terminal-78696603-r3 { fill: #868887 }
|
||||
.terminal-78696603-r4 { fill: #68a0b3;font-weight: bold }
|
||||
.terminal-78696603-r5 { fill: #d0b344 }
|
||||
.terminal-78696603-r6 { fill: #98a84b }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-78696603-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-78696603-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-78696603-title" fill="#c5c8c6" text-anchor="middle" x="453" y="27">yartsu --theme rich_default</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-78696603-clip-terminal)">
|
||||
|
||||
<g class="terminal-78696603-matrix">
|
||||
<text class="terminal-78696603-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-78696603-line-0)">usage</text><text class="terminal-78696603-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-78696603-line-0)">:</text><text class="terminal-78696603-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-78696603-line-0)">
|
||||
</text><text class="terminal-78696603-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-78696603-line-1)">
|
||||
</text><text class="terminal-78696603-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-78696603-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-78696603-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-78696603-line-2)">
|
||||
</text><text class="terminal-78696603-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-78696603-line-3)">OR</text><text class="terminal-78696603-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-78696603-line-3)">
|
||||
</text><text class="terminal-78696603-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-78696603-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-78696603-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-78696603-line-4)">
|
||||
</text><text class="terminal-78696603-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-78696603-line-5)">OR</text><text class="terminal-78696603-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-78696603-line-5)">
|
||||
</text><text class="terminal-78696603-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-78696603-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-78696603-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-78696603-line-6)">
|
||||
</text><text class="terminal-78696603-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-78696603-line-7)">
|
||||
</text><text class="terminal-78696603-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-78696603-line-8)">convert terminal output to svg</text><text class="terminal-78696603-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-78696603-line-8)">
|
||||
</text><text class="terminal-78696603-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-78696603-line-9)">
|
||||
</text><text class="terminal-78696603-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-78696603-line-10)">options</text><text class="terminal-78696603-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-78696603-line-10)">:</text><text class="terminal-78696603-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-78696603-line-10)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-78696603-line-11)">-h</text><text class="terminal-78696603-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-78696603-line-11)">, </text><text class="terminal-78696603-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-78696603-line-11)">--help</text><text class="terminal-78696603-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-78696603-line-11)">           show this help message and exit</text><text class="terminal-78696603-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-78696603-line-11)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-78696603-line-12)">-V</text><text class="terminal-78696603-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-78696603-line-12)">, </text><text class="terminal-78696603-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-78696603-line-12)">--version</text><text class="terminal-78696603-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-78696603-line-12)">        show program's version number and exit</text><text class="terminal-78696603-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-78696603-line-12)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-78696603-line-13)">-i</text><text class="terminal-78696603-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-78696603-line-13)">, </text><text class="terminal-78696603-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-78696603-line-13)">--input</text><text class="terminal-78696603-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-78696603-line-13)"> INPUT</text><text class="terminal-78696603-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-78696603-line-13)">    input file [default: stdin]</text><text class="terminal-78696603-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-78696603-line-13)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-78696603-line-14)">-o</text><text class="terminal-78696603-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-78696603-line-14)">, </text><text class="terminal-78696603-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-78696603-line-14)">--output</text><text class="terminal-78696603-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-78696603-line-14)"> OUTPUT</text><text class="terminal-78696603-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-78696603-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-78696603-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-78696603-line-14)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-78696603-line-15)">-t</text><text class="terminal-78696603-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-78696603-line-15)">, </text><text class="terminal-78696603-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-78696603-line-15)">--title</text><text class="terminal-78696603-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-78696603-line-15)"> TITLE</text><text class="terminal-78696603-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-78696603-line-15)">    title for terminal window</text><text class="terminal-78696603-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-78696603-line-15)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-78696603-line-16)">-w</text><text class="terminal-78696603-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-78696603-line-16)">, </text><text class="terminal-78696603-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-78696603-line-16)">--width</text><text class="terminal-78696603-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-78696603-line-16)"> WIDTH</text><text class="terminal-78696603-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-78696603-line-16)">    width of svg</text><text class="terminal-78696603-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-78696603-line-16)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-78696603-line-17)">--theme</text><text class="terminal-78696603-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-78696603-line-17)"> THEME</text><text class="terminal-78696603-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-78696603-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-78696603-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-78696603-line-17)">
|
||||
</text><text class="terminal-78696603-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-78696603-line-18)">--list-themes</text><text class="terminal-78696603-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-78696603-line-18)">        list available themes</text><text class="terminal-78696603-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-78696603-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
135
assets/yartsu.svg
Normal file
|
@ -0,0 +1,135 @@
|
|||
<svg class="rich-terminal" viewBox="0 0 909 513.5999999999999" xmlns="http://www.w3.org/2000/svg">
|
||||
<!-- Generated with Rich https://www.textualize.io -->
|
||||
<style>
|
||||
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Regular"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Fira Code";
|
||||
src: local("FiraCode-Bold"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
||||
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.terminal-3232156455-matrix {
|
||||
font-family: Fira Code, monospace;
|
||||
font-size: 20px;
|
||||
line-height: 24.4px;
|
||||
font-variant-east-asian: full-width;
|
||||
}
|
||||
|
||||
.terminal-3232156455-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: arial;
|
||||
}
|
||||
|
||||
.terminal-3232156455-r1 { fill: #94e2d5;font-weight: bold;font-style: italic; }
|
||||
.terminal-3232156455-r2 { fill: #c6d0f5 }
|
||||
.terminal-3232156455-r3 { fill: #8288a5 }
|
||||
.terminal-3232156455-r4 { fill: #94e2d5;font-weight: bold }
|
||||
.terminal-3232156455-r5 { fill: #f9e2af }
|
||||
.terminal-3232156455-r6 { fill: #a6e3a1 }
|
||||
</style>
|
||||
|
||||
<defs>
|
||||
<clipPath id="terminal-3232156455-clip-terminal">
|
||||
<rect x="0" y="0" width="889.5999999999999" height="462.59999999999997" />
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-0">
|
||||
<rect x="0" y="1.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-1">
|
||||
<rect x="0" y="25.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-2">
|
||||
<rect x="0" y="50.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-3">
|
||||
<rect x="0" y="74.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-4">
|
||||
<rect x="0" y="99.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-5">
|
||||
<rect x="0" y="123.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-6">
|
||||
<rect x="0" y="147.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-7">
|
||||
<rect x="0" y="172.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-8">
|
||||
<rect x="0" y="196.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-9">
|
||||
<rect x="0" y="221.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-10">
|
||||
<rect x="0" y="245.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-11">
|
||||
<rect x="0" y="269.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-12">
|
||||
<rect x="0" y="294.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-13">
|
||||
<rect x="0" y="318.7" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-14">
|
||||
<rect x="0" y="343.1" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-15">
|
||||
<rect x="0" y="367.5" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-16">
|
||||
<rect x="0" y="391.9" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
<clipPath id="terminal-3232156455-line-17">
|
||||
<rect x="0" y="416.3" width="890.6" height="24.65"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
|
||||
<rect fill="#1e1e2e" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="907" height="511.6" rx="8"/><text class="terminal-3232156455-title" fill="#c6d0f5" text-anchor="middle" x="453" y="27">yartsu --help</text>
|
||||
<g transform="translate(26,22)">
|
||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||
</g>
|
||||
|
||||
<g transform="translate(9, 41)" clip-path="url(#terminal-3232156455-clip-terminal)">
|
||||
|
||||
<g class="terminal-3232156455-matrix">
|
||||
<text class="terminal-3232156455-r1" x="0" y="20" textLength="61" clip-path="url(#terminal-3232156455-line-0)">usage</text><text class="terminal-3232156455-r2" x="61" y="20" textLength="12.2" clip-path="url(#terminal-3232156455-line-0)">:</text><text class="terminal-3232156455-r2" x="890.6" y="20" textLength="12.2" clip-path="url(#terminal-3232156455-line-0)">
|
||||
</text><text class="terminal-3232156455-r2" x="890.6" y="44.4" textLength="12.2" clip-path="url(#terminal-3232156455-line-1)">
|
||||
</text><text class="terminal-3232156455-r2" x="0" y="68.8" textLength="488" clip-path="url(#terminal-3232156455-line-2)">    ls --color=always | yartsu [options]</text><text class="terminal-3232156455-r2" x="890.6" y="68.8" textLength="12.2" clip-path="url(#terminal-3232156455-line-2)">
|
||||
</text><text class="terminal-3232156455-r3" x="48.8" y="93.2" textLength="24.4" clip-path="url(#terminal-3232156455-line-3)">OR</text><text class="terminal-3232156455-r2" x="890.6" y="93.2" textLength="12.2" clip-path="url(#terminal-3232156455-line-3)">
|
||||
</text><text class="terminal-3232156455-r2" x="0" y="117.6" textLength="414.8" clip-path="url(#terminal-3232156455-line-4)">    yartsu [options] -- ls --color</text><text class="terminal-3232156455-r2" x="890.6" y="117.6" textLength="12.2" clip-path="url(#terminal-3232156455-line-4)">
|
||||
</text><text class="terminal-3232156455-r3" x="48.8" y="142" textLength="24.4" clip-path="url(#terminal-3232156455-line-5)">OR</text><text class="terminal-3232156455-r2" x="890.6" y="142" textLength="12.2" clip-path="url(#terminal-3232156455-line-5)">
|
||||
</text><text class="terminal-3232156455-r2" x="0" y="166.4" textLength="585.6" clip-path="url(#terminal-3232156455-line-6)">    ls --color=always > ls.txt; yartsu -i ls.txt</text><text class="terminal-3232156455-r2" x="890.6" y="166.4" textLength="12.2" clip-path="url(#terminal-3232156455-line-6)">
|
||||
</text><text class="terminal-3232156455-r2" x="890.6" y="190.8" textLength="12.2" clip-path="url(#terminal-3232156455-line-7)">
|
||||
</text><text class="terminal-3232156455-r2" x="0" y="215.2" textLength="366" clip-path="url(#terminal-3232156455-line-8)">convert terminal output to svg</text><text class="terminal-3232156455-r2" x="890.6" y="215.2" textLength="12.2" clip-path="url(#terminal-3232156455-line-8)">
|
||||
</text><text class="terminal-3232156455-r2" x="890.6" y="239.6" textLength="12.2" clip-path="url(#terminal-3232156455-line-9)">
|
||||
</text><text class="terminal-3232156455-r4" x="0" y="264" textLength="85.4" clip-path="url(#terminal-3232156455-line-10)">options</text><text class="terminal-3232156455-r2" x="85.4" y="264" textLength="12.2" clip-path="url(#terminal-3232156455-line-10)">:</text><text class="terminal-3232156455-r2" x="890.6" y="264" textLength="12.2" clip-path="url(#terminal-3232156455-line-10)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="288.4" textLength="24.4" clip-path="url(#terminal-3232156455-line-11)">-h</text><text class="terminal-3232156455-r2" x="48.8" y="288.4" textLength="24.4" clip-path="url(#terminal-3232156455-line-11)">, </text><text class="terminal-3232156455-r5" x="73.2" y="288.4" textLength="73.2" clip-path="url(#terminal-3232156455-line-11)">--help</text><text class="terminal-3232156455-r2" x="146.4" y="288.4" textLength="512.4" clip-path="url(#terminal-3232156455-line-11)">           show this help message and exit</text><text class="terminal-3232156455-r2" x="890.6" y="288.4" textLength="12.2" clip-path="url(#terminal-3232156455-line-11)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="312.8" textLength="24.4" clip-path="url(#terminal-3232156455-line-12)">-V</text><text class="terminal-3232156455-r2" x="48.8" y="312.8" textLength="24.4" clip-path="url(#terminal-3232156455-line-12)">, </text><text class="terminal-3232156455-r5" x="73.2" y="312.8" textLength="109.8" clip-path="url(#terminal-3232156455-line-12)">--version</text><text class="terminal-3232156455-r2" x="183" y="312.8" textLength="561.2" clip-path="url(#terminal-3232156455-line-12)">        show program's version number and exit</text><text class="terminal-3232156455-r2" x="890.6" y="312.8" textLength="12.2" clip-path="url(#terminal-3232156455-line-12)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="337.2" textLength="24.4" clip-path="url(#terminal-3232156455-line-13)">-i</text><text class="terminal-3232156455-r2" x="48.8" y="337.2" textLength="24.4" clip-path="url(#terminal-3232156455-line-13)">, </text><text class="terminal-3232156455-r5" x="73.2" y="337.2" textLength="85.4" clip-path="url(#terminal-3232156455-line-13)">--input</text><text class="terminal-3232156455-r6" x="158.6" y="337.2" textLength="73.2" clip-path="url(#terminal-3232156455-line-13)"> INPUT</text><text class="terminal-3232156455-r2" x="231.8" y="337.2" textLength="378.2" clip-path="url(#terminal-3232156455-line-13)">    input file [default: stdin]</text><text class="terminal-3232156455-r2" x="890.6" y="337.2" textLength="12.2" clip-path="url(#terminal-3232156455-line-13)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="361.6" textLength="24.4" clip-path="url(#terminal-3232156455-line-14)">-o</text><text class="terminal-3232156455-r2" x="48.8" y="361.6" textLength="24.4" clip-path="url(#terminal-3232156455-line-14)">, </text><text class="terminal-3232156455-r5" x="73.2" y="361.6" textLength="97.6" clip-path="url(#terminal-3232156455-line-14)">--output</text><text class="terminal-3232156455-r6" x="170.8" y="361.6" textLength="85.4" clip-path="url(#terminal-3232156455-line-14)"> OUTPUT</text><text class="terminal-3232156455-r2" x="256.2" y="361.6" textLength="488" clip-path="url(#terminal-3232156455-line-14)">  output svg file [default: capture.svg]</text><text class="terminal-3232156455-r2" x="890.6" y="361.6" textLength="12.2" clip-path="url(#terminal-3232156455-line-14)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="386" textLength="24.4" clip-path="url(#terminal-3232156455-line-15)">-t</text><text class="terminal-3232156455-r2" x="48.8" y="386" textLength="24.4" clip-path="url(#terminal-3232156455-line-15)">, </text><text class="terminal-3232156455-r5" x="73.2" y="386" textLength="85.4" clip-path="url(#terminal-3232156455-line-15)">--title</text><text class="terminal-3232156455-r6" x="158.6" y="386" textLength="73.2" clip-path="url(#terminal-3232156455-line-15)"> TITLE</text><text class="terminal-3232156455-r2" x="231.8" y="386" textLength="353.8" clip-path="url(#terminal-3232156455-line-15)">    title for terminal window</text><text class="terminal-3232156455-r2" x="890.6" y="386" textLength="12.2" clip-path="url(#terminal-3232156455-line-15)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="410.4" textLength="24.4" clip-path="url(#terminal-3232156455-line-16)">-w</text><text class="terminal-3232156455-r2" x="48.8" y="410.4" textLength="24.4" clip-path="url(#terminal-3232156455-line-16)">, </text><text class="terminal-3232156455-r5" x="73.2" y="410.4" textLength="85.4" clip-path="url(#terminal-3232156455-line-16)">--width</text><text class="terminal-3232156455-r6" x="158.6" y="410.4" textLength="73.2" clip-path="url(#terminal-3232156455-line-16)"> WIDTH</text><text class="terminal-3232156455-r2" x="231.8" y="410.4" textLength="195.2" clip-path="url(#terminal-3232156455-line-16)">    width of svg</text><text class="terminal-3232156455-r2" x="890.6" y="410.4" textLength="12.2" clip-path="url(#terminal-3232156455-line-16)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="434.8" textLength="85.4" clip-path="url(#terminal-3232156455-line-17)">--theme</text><text class="terminal-3232156455-r6" x="109.8" y="434.8" textLength="73.2" clip-path="url(#terminal-3232156455-line-17)"> THEME</text><text class="terminal-3232156455-r2" x="183" y="434.8" textLength="707.6" clip-path="url(#terminal-3232156455-line-17)">        theme to use for highlighting [default: cat_mocha]</text><text class="terminal-3232156455-r2" x="890.6" y="434.8" textLength="12.2" clip-path="url(#terminal-3232156455-line-17)">
|
||||
</text><text class="terminal-3232156455-r5" x="24.4" y="459.2" textLength="158.6" clip-path="url(#terminal-3232156455-line-18)">--list-themes</text><text class="terminal-3232156455-r2" x="183" y="459.2" textLength="353.8" clip-path="url(#terminal-3232156455-line-18)">        list available themes</text><text class="terminal-3232156455-r2" x="890.6" y="459.2" textLength="12.2" clip-path="url(#terminal-3232156455-line-18)">
|
||||
</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
26
docs/themes.md
Normal file
|
@ -0,0 +1,26 @@
|
|||
# Themes
|
||||
|
||||
|
||||
## cat_mocha
|
||||
![cat_mocha](../assets/themes/cat_mocha.svg)
|
||||
|
||||
## cat_frappe
|
||||
![cat_frappe](../assets/themes/cat_frappe.svg)
|
||||
|
||||
## cat_macchiato
|
||||
![cat_macchiato](../assets/themes/cat_macchiato.svg)
|
||||
|
||||
## cat_latte
|
||||
![cat_latte](../assets/themes/cat_latte.svg)
|
||||
|
||||
## monokai
|
||||
![monokai](../assets/themes/monokai.svg)
|
||||
|
||||
## dimmed_monokai
|
||||
![dimmed_monokai](../assets/themes/dimmed_monokai.svg)
|
||||
|
||||
## night_owlish
|
||||
![night_owlish](../assets/themes/night_owlish.svg)
|
||||
|
||||
## rich_default
|
||||
![rich_default](../assets/themes/rich_default.svg)
|
316
pdm.lock
Normal file
|
@ -0,0 +1,316 @@
|
|||
[[package]]
|
||||
name = "cfgv"
|
||||
version = "3.3.1"
|
||||
requires_python = ">=3.6.1"
|
||||
summary = "Validate configuration and produce human readable error messages."
|
||||
|
||||
[[package]]
|
||||
name = "commonmark"
|
||||
version = "0.9.1"
|
||||
summary = "Python parser for the CommonMark Markdown spec"
|
||||
|
||||
[[package]]
|
||||
name = "distlib"
|
||||
version = "0.3.4"
|
||||
summary = "Distribution utilities"
|
||||
|
||||
[[package]]
|
||||
name = "filelock"
|
||||
version = "3.6.0"
|
||||
requires_python = ">=3.7"
|
||||
summary = "A platform independent file lock."
|
||||
|
||||
[[package]]
|
||||
name = "identify"
|
||||
version = "2.5.0"
|
||||
requires_python = ">=3.7"
|
||||
summary = "File identification library for Python"
|
||||
|
||||
[[package]]
|
||||
name = "importlib-metadata"
|
||||
version = "4.11.4"
|
||||
requires_python = ">=3.7"
|
||||
summary = "Read metadata from Python packages"
|
||||
dependencies = [
|
||||
"typing-extensions>=3.6.4; python_version < \"3.8\"",
|
||||
"zipp>=0.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "mypy"
|
||||
version = "0.961"
|
||||
requires_python = ">=3.6"
|
||||
summary = "Optional static typing for Python"
|
||||
dependencies = [
|
||||
"mypy-extensions>=0.4.3",
|
||||
"tomli>=1.1.0; python_version < \"3.11\"",
|
||||
"typed-ast<2,>=1.4.0; python_version < \"3.8\"",
|
||||
"typing-extensions>=3.10",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "mypy-extensions"
|
||||
version = "0.4.3"
|
||||
summary = "Experimental type system extensions for programs checked with the mypy typechecker."
|
||||
|
||||
[[package]]
|
||||
name = "nodeenv"
|
||||
version = "1.6.0"
|
||||
summary = "Node.js virtual environment builder"
|
||||
|
||||
[[package]]
|
||||
name = "platformdirs"
|
||||
version = "2.5.2"
|
||||
requires_python = ">=3.7"
|
||||
summary = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
|
||||
|
||||
[[package]]
|
||||
name = "pre-commit"
|
||||
version = "2.19.0"
|
||||
requires_python = ">=3.7"
|
||||
summary = "A framework for managing and maintaining multi-language pre-commit hooks."
|
||||
dependencies = [
|
||||
"cfgv>=2.0.0",
|
||||
"identify>=1.0.0",
|
||||
"importlib-metadata; python_version < \"3.8\"",
|
||||
"nodeenv>=0.11.1",
|
||||
"pyyaml>=5.1",
|
||||
"toml",
|
||||
"virtualenv>=20.0.8",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pygments"
|
||||
version = "2.12.0"
|
||||
requires_python = ">=3.6"
|
||||
summary = "Pygments is a syntax highlighting package written in Python."
|
||||
|
||||
[[package]]
|
||||
name = "pyyaml"
|
||||
version = "6.0"
|
||||
requires_python = ">=3.6"
|
||||
summary = "YAML parser and emitter for Python"
|
||||
|
||||
[[package]]
|
||||
name = "rich"
|
||||
version = "12.4.4"
|
||||
requires_python = ">=3.6.3,<4.0.0"
|
||||
summary = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal"
|
||||
dependencies = [
|
||||
"commonmark<0.10.0,>=0.9.0",
|
||||
"pygments<3.0.0,>=2.6.0",
|
||||
"typing-extensions<5.0,>=4.0.0; python_version < \"3.9\"",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "six"
|
||||
version = "1.16.0"
|
||||
requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
|
||||
summary = "Python 2 and 3 compatibility utilities"
|
||||
|
||||
[[package]]
|
||||
name = "toml"
|
||||
version = "0.10.2"
|
||||
requires_python = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
|
||||
summary = "Python Library for Tom's Obvious, Minimal Language"
|
||||
|
||||
[[package]]
|
||||
name = "tomli"
|
||||
version = "2.0.1"
|
||||
requires_python = ">=3.7"
|
||||
summary = "A lil' TOML parser"
|
||||
|
||||
[[package]]
|
||||
name = "typed-ast"
|
||||
version = "1.5.4"
|
||||
requires_python = ">=3.6"
|
||||
summary = "a fork of Python 2 and 3 ast modules with type comment support"
|
||||
|
||||
[[package]]
|
||||
name = "typing-extensions"
|
||||
version = "4.2.0"
|
||||
requires_python = ">=3.7"
|
||||
summary = "Backported and Experimental Type Hints for Python 3.7+"
|
||||
|
||||
[[package]]
|
||||
name = "virtualenv"
|
||||
version = "20.14.1"
|
||||
requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
|
||||
summary = "Virtual Python Environment builder"
|
||||
dependencies = [
|
||||
"distlib<1,>=0.3.1",
|
||||
"filelock<4,>=3.2",
|
||||
"importlib-metadata>=0.12; python_version < \"3.8\"",
|
||||
"platformdirs<3,>=2",
|
||||
"six<2,>=1.9.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "zipp"
|
||||
version = "3.8.0"
|
||||
requires_python = ">=3.7"
|
||||
summary = "Backport of pathlib-compatible object wrapper for zip files"
|
||||
|
||||
[metadata]
|
||||
lock_version = "3.1"
|
||||
content_hash = "sha256:cd0296df924304b4efef3a618f6d40e9dbd72f780d80bfb7ca3907b44f4990bd"
|
||||
|
||||
[metadata.files]
|
||||
"cfgv 3.3.1" = [
|
||||
{file = "cfgv-3.3.1-py2.py3-none-any.whl", hash = "sha256:c6a0883f3917a037485059700b9e75da2464e6c27051014ad85ba6aaa5884426"},
|
||||
{file = "cfgv-3.3.1.tar.gz", hash = "sha256:f5a830efb9ce7a445376bb66ec94c638a9787422f96264c98edc6bdeed8ab736"},
|
||||
]
|
||||
"commonmark 0.9.1" = [
|
||||
{file = "commonmark-0.9.1-py2.py3-none-any.whl", hash = "sha256:da2f38c92590f83de410ba1a3cbceafbc74fee9def35f9251ba9a971d6d66fd9"},
|
||||
{file = "commonmark-0.9.1.tar.gz", hash = "sha256:452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60"},
|
||||
]
|
||||
"distlib 0.3.4" = [
|
||||
{file = "distlib-0.3.4-py2.py3-none-any.whl", hash = "sha256:6564fe0a8f51e734df6333d08b8b94d4ea8ee6b99b5ed50613f731fd4089f34b"},
|
||||
{file = "distlib-0.3.4.zip", hash = "sha256:e4b58818180336dc9c529bfb9a0b58728ffc09ad92027a3f30b7cd91e3458579"},
|
||||
]
|
||||
"filelock 3.6.0" = [
|
||||
{file = "filelock-3.6.0-py3-none-any.whl", hash = "sha256:f8314284bfffbdcfa0ff3d7992b023d4c628ced6feb957351d4c48d059f56bc0"},
|
||||
{file = "filelock-3.6.0.tar.gz", hash = "sha256:9cd540a9352e432c7246a48fe4e8712b10acb1df2ad1f30e8c070b82ae1fed85"},
|
||||
]
|
||||
"identify 2.5.0" = [
|
||||
{file = "identify-2.5.0-py2.py3-none-any.whl", hash = "sha256:3acfe15a96e4272b4ec5662ee3e231ceba976ef63fd9980ed2ce9cc415df393f"},
|
||||
{file = "identify-2.5.0.tar.gz", hash = "sha256:c83af514ea50bf2be2c4a3f2fb349442b59dc87284558ae9ff54191bff3541d2"},
|
||||
]
|
||||
"importlib-metadata 4.11.4" = [
|
||||
{file = "importlib_metadata-4.11.4-py3-none-any.whl", hash = "sha256:c58c8eb8a762858f49e18436ff552e83914778e50e9d2f1660535ffb364552ec"},
|
||||
{file = "importlib_metadata-4.11.4.tar.gz", hash = "sha256:5d26852efe48c0a32b0509ffbc583fda1a2266545a78d104a6f4aff3db17d700"},
|
||||
]
|
||||
"mypy 0.961" = [
|
||||
{file = "mypy-0.961-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3e09f1f983a71d0672bbc97ae33ee3709d10c779beb613febc36805a6e28bb4e"},
|
||||
{file = "mypy-0.961-py3-none-any.whl", hash = "sha256:03c6cc893e7563e7b2949b969e63f02c000b32502a1b4d1314cabe391aa87d66"},
|
||||
{file = "mypy-0.961-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:697540876638ce349b01b6786bc6094ccdaba88af446a9abb967293ce6eaa2b0"},
|
||||
{file = "mypy-0.961-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b117650592e1782819829605a193360a08aa99f1fc23d1d71e1a75a142dc7e15"},
|
||||
{file = "mypy-0.961-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:bdd5ca340beffb8c44cb9dc26697628d1b88c6bddf5c2f6eb308c46f269bb6f3"},
|
||||
{file = "mypy-0.961-cp310-cp310-win_amd64.whl", hash = "sha256:e999229b9f3198c0c880d5e269f9f8129c8862451ce53a011326cad38b9ccd24"},
|
||||
{file = "mypy-0.961-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:b24be97351084b11582fef18d79004b3e4db572219deee0212078f7cf6352723"},
|
||||
{file = "mypy-0.961-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f4a21d01fc0ba4e31d82f0fff195682e29f9401a8bdb7173891070eb260aeb3b"},
|
||||
{file = "mypy-0.961-cp36-cp36m-win_amd64.whl", hash = "sha256:439c726a3b3da7ca84a0199a8ab444cd8896d95012c4a6c4a0d808e3147abf5d"},
|
||||
{file = "mypy-0.961-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5a0b53747f713f490affdceef835d8f0cb7285187a6a44c33821b6d1f46ed813"},
|
||||
{file = "mypy-0.961-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0e9f70df36405c25cc530a86eeda1e0867863d9471fe76d1273c783df3d35c2e"},
|
||||
{file = "mypy-0.961-cp37-cp37m-win_amd64.whl", hash = "sha256:b88f784e9e35dcaa075519096dc947a388319cb86811b6af621e3523980f1c8a"},
|
||||
{file = "mypy-0.961-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:d5aaf1edaa7692490f72bdb9fbd941fbf2e201713523bdb3f4038be0af8846c6"},
|
||||
{file = "mypy-0.961-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9f5f5a74085d9a81a1f9c78081d60a0040c3efb3f28e5c9912b900adf59a16e6"},
|
||||
{file = "mypy-0.961-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f4b794db44168a4fc886e3450201365c9526a522c46ba089b55e1f11c163750d"},
|
||||
{file = "mypy-0.961-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:64759a273d590040a592e0f4186539858c948302c653c2eac840c7a3cd29e51b"},
|
||||
{file = "mypy-0.961-cp38-cp38-win_amd64.whl", hash = "sha256:63e85a03770ebf403291ec50097954cc5caf2a9205c888ce3a61bd3f82e17569"},
|
||||
{file = "mypy-0.961-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5f1332964963d4832a94bebc10f13d3279be3ce8f6c64da563d6ee6e2eeda932"},
|
||||
{file = "mypy-0.961-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:006be38474216b833eca29ff6b73e143386f352e10e9c2fbe76aa8549e5554f5"},
|
||||
{file = "mypy-0.961-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9940e6916ed9371809b35b2154baf1f684acba935cd09928952310fbddaba648"},
|
||||
{file = "mypy-0.961-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a5ea0875a049de1b63b972456542f04643daf320d27dc592d7c3d9cd5d9bf950"},
|
||||
{file = "mypy-0.961-cp39-cp39-win_amd64.whl", hash = "sha256:1ece702f29270ec6af25db8cf6185c04c02311c6bb21a69f423d40e527b75c56"},
|
||||
{file = "mypy-0.961.tar.gz", hash = "sha256:f730d56cb924d371c26b8eaddeea3cc07d78ff51c521c6d04899ac6904b75492"},
|
||||
]
|
||||
"mypy-extensions 0.4.3" = [
|
||||
{file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"},
|
||||
{file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"},
|
||||
]
|
||||
"nodeenv 1.6.0" = [
|
||||
{file = "nodeenv-1.6.0-py2.py3-none-any.whl", hash = "sha256:621e6b7076565ddcacd2db0294c0381e01fd28945ab36bcf00f41c5daf63bef7"},
|
||||
{file = "nodeenv-1.6.0.tar.gz", hash = "sha256:3ef13ff90291ba2a4a7a4ff9a979b63ffdd00a464dbe04acf0ea6471517a4c2b"},
|
||||
]
|
||||
"platformdirs 2.5.2" = [
|
||||
{file = "platformdirs-2.5.2-py3-none-any.whl", hash = "sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788"},
|
||||
{file = "platformdirs-2.5.2.tar.gz", hash = "sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19"},
|
||||
]
|
||||
"pre-commit 2.19.0" = [
|
||||
{file = "pre_commit-2.19.0-py2.py3-none-any.whl", hash = "sha256:10c62741aa5704faea2ad69cb550ca78082efe5697d6f04e5710c3c229afdd10"},
|
||||
{file = "pre_commit-2.19.0.tar.gz", hash = "sha256:4233a1e38621c87d9dda9808c6606d7e7ba0e087cd56d3fe03202a01d2919615"},
|
||||
]
|
||||
"pygments 2.12.0" = [
|
||||
{file = "Pygments-2.12.0-py3-none-any.whl", hash = "sha256:dc9c10fb40944260f6ed4c688ece0cd2048414940f1cea51b8b226318411c519"},
|
||||
{file = "Pygments-2.12.0.tar.gz", hash = "sha256:5eb116118f9612ff1ee89ac96437bb6b49e8f04d8a13b514ba26f620208e26eb"},
|
||||
]
|
||||
"pyyaml 6.0" = [
|
||||
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"},
|
||||
{file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"},
|
||||
]
|
||||
"rich 12.4.4" = [
|
||||
{file = "rich-12.4.4-py3-none-any.whl", hash = "sha256:d2bbd99c320a2532ac71ff6a3164867884357da3e3301f0240090c5d2fdac7ec"},
|
||||
{file = "rich-12.4.4.tar.gz", hash = "sha256:4c586de507202505346f3e32d1363eb9ed6932f0c2f63184dea88983ff4971e2"},
|
||||
]
|
||||
"six 1.16.0" = [
|
||||
{file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
|
||||
{file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
|
||||
]
|
||||
"toml 0.10.2" = [
|
||||
{file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"},
|
||||
{file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
|
||||
]
|
||||
"tomli 2.0.1" = [
|
||||
{file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"},
|
||||
{file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"},
|
||||
]
|
||||
"typed-ast 1.5.4" = [
|
||||
{file = "typed_ast-1.5.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c542eeda69212fa10a7ada75e668876fdec5f856cd3d06829e6aa64ad17c8dfe"},
|
||||
{file = "typed_ast-1.5.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:669dd0c4167f6f2cd9f57041e03c3c2ebf9063d0757dc89f79ba1daa2bfca9d4"},
|
||||
{file = "typed_ast-1.5.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:211260621ab1cd7324e0798d6be953d00b74e0428382991adfddb352252f1d62"},
|
||||
{file = "typed_ast-1.5.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:267e3f78697a6c00c689c03db4876dd1efdfea2f251a5ad6555e82a26847b4ac"},
|
||||
{file = "typed_ast-1.5.4-cp310-cp310-win_amd64.whl", hash = "sha256:a9916d2bb8865f973824fb47436fa45e1ebf2efd920f2b9f99342cb7fab93f72"},
|
||||
{file = "typed_ast-1.5.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:79b1e0869db7c830ba6a981d58711c88b6677506e648496b1f64ac7d15633aec"},
|
||||
{file = "typed_ast-1.5.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a94d55d142c9265f4ea46fab70977a1944ecae359ae867397757d836ea5a3f47"},
|
||||
{file = "typed_ast-1.5.4-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:183afdf0ec5b1b211724dfef3d2cad2d767cbefac291f24d69b00546c1837fb6"},
|
||||
{file = "typed_ast-1.5.4-cp36-cp36m-win_amd64.whl", hash = "sha256:639c5f0b21776605dd6c9dbe592d5228f021404dafd377e2b7ac046b0349b1a1"},
|
||||
{file = "typed_ast-1.5.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:cf4afcfac006ece570e32d6fa90ab74a17245b83dfd6655a6f68568098345ff6"},
|
||||
{file = "typed_ast-1.5.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed855bbe3eb3715fca349c80174cfcfd699c2f9de574d40527b8429acae23a66"},
|
||||
{file = "typed_ast-1.5.4-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6778e1b2f81dfc7bc58e4b259363b83d2e509a65198e85d5700dfae4c6c8ff1c"},
|
||||
{file = "typed_ast-1.5.4-cp37-cp37m-win_amd64.whl", hash = "sha256:0261195c2062caf107831e92a76764c81227dae162c4f75192c0d489faf751a2"},
|
||||
{file = "typed_ast-1.5.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2efae9db7a8c05ad5547d522e7dbe62c83d838d3906a3716d1478b6c1d61388d"},
|
||||
{file = "typed_ast-1.5.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7d5d014b7daa8b0bf2eaef684295acae12b036d79f54178b92a2b6a56f92278f"},
|
||||
{file = "typed_ast-1.5.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:370788a63915e82fd6f212865a596a0fefcbb7d408bbbb13dea723d971ed8bdc"},
|
||||
{file = "typed_ast-1.5.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4e964b4ff86550a7a7d56345c7864b18f403f5bd7380edf44a3c1fb4ee7ac6c6"},
|
||||
{file = "typed_ast-1.5.4-cp38-cp38-win_amd64.whl", hash = "sha256:683407d92dc953c8a7347119596f0b0e6c55eb98ebebd9b23437501b28dcbb8e"},
|
||||
{file = "typed_ast-1.5.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4879da6c9b73443f97e731b617184a596ac1235fe91f98d279a7af36c796da35"},
|
||||
{file = "typed_ast-1.5.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3e123d878ba170397916557d31c8f589951e353cc95fb7f24f6bb69adc1a8a97"},
|
||||
{file = "typed_ast-1.5.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebd9d7f80ccf7a82ac5f88c521115cc55d84e35bf8b446fcd7836eb6b98929a3"},
|
||||
{file = "typed_ast-1.5.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98f80dee3c03455e92796b58b98ff6ca0b2a6f652120c263efdba4d6c5e58f72"},
|
||||
{file = "typed_ast-1.5.4-cp39-cp39-win_amd64.whl", hash = "sha256:0fdbcf2fef0ca421a3f5912555804296f0b0960f0418c440f5d6d3abb549f3e1"},
|
||||
{file = "typed_ast-1.5.4.tar.gz", hash = "sha256:39e21ceb7388e4bb37f4c679d72707ed46c2fbf2a5609b8b8ebc4b067d977df2"},
|
||||
]
|
||||
"typing-extensions 4.2.0" = [
|
||||
{file = "typing_extensions-4.2.0-py3-none-any.whl", hash = "sha256:6657594ee297170d19f67d55c05852a874e7eb634f4f753dbd667855e07c1708"},
|
||||
{file = "typing_extensions-4.2.0.tar.gz", hash = "sha256:f1c24655a0da0d1b67f07e17a5e6b2a105894e6824b92096378bb3668ef02376"},
|
||||
]
|
||||
"virtualenv 20.14.1" = [
|
||||
{file = "virtualenv-20.14.1-py2.py3-none-any.whl", hash = "sha256:e617f16e25b42eb4f6e74096b9c9e37713cf10bf30168fb4a739f3fa8f898a3a"},
|
||||
{file = "virtualenv-20.14.1.tar.gz", hash = "sha256:ef589a79795589aada0c1c5b319486797c03b67ac3984c48c669c0e4f50df3a5"},
|
||||
]
|
||||
"zipp 3.8.0" = [
|
||||
{file = "zipp-3.8.0-py3-none-any.whl", hash = "sha256:c4f6e5bbf48e74f7a38e7cc5b0480ff42b0ae5178957d564d18932525d5cf099"},
|
||||
{file = "zipp-3.8.0.tar.gz", hash = "sha256:56bf8aadb83c24db6c4b577e13de374ccfb67da2078beba1d037c17980bf43ad"},
|
||||
]
|
22
preamble.py
Normal file
|
@ -0,0 +1,22 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
import shutil
|
||||
from pathlib import Path
|
||||
|
||||
# These variables are injected by shiv.bootstrap
|
||||
site_packages: Path
|
||||
env: "shiv.bootstrap.environment.Environment"
|
||||
|
||||
# Get a handle of the current PYZ's site_packages directory
|
||||
current = site_packages.parent
|
||||
|
||||
# The parent directory of the site_packages directory is our shiv cache
|
||||
cache_path = current.parent
|
||||
|
||||
|
||||
name, build_id = current.name.split("_")
|
||||
|
||||
if __name__ == "__main__":
|
||||
for path in cache_path.iterdir():
|
||||
if path.name.startswith(f"{name}_") and not path.name.endswith(build_id):
|
||||
shutil.rmtree(path)
|
44
pyproject.toml
Normal file
|
@ -0,0 +1,44 @@
|
|||
[project]
|
||||
name = "yartsu"
|
||||
description = "yartsu, another rich terminal screenshot utility"
|
||||
authors = [
|
||||
{name = "Daylin Morgan", email = "daylinmorgan@gmail.com"},
|
||||
]
|
||||
dependencies = [
|
||||
"rich>=12.3.0",
|
||||
"importlib-metadata>=4.11.4; python_version < \"3.8\"",
|
||||
]
|
||||
requires-python = ">=3.7"
|
||||
license = {text = "MIT"}
|
||||
dynamic = ["version"]
|
||||
|
||||
[project.scripts]
|
||||
yartsu = "yartsu.cli:main"
|
||||
|
||||
[project.optional-dependencies]
|
||||
[tool.pdm]
|
||||
version = {use_scm = true}
|
||||
|
||||
[tool.pdm.dev-dependencies]
|
||||
dev = [
|
||||
"pre-commit>=2.18.1",
|
||||
"mypy>=0.961",
|
||||
]
|
||||
[build-system]
|
||||
requires = ["pdm-pep517>=0.12.0"]
|
||||
build-backend = "pdm.pep517.api"
|
||||
|
||||
[tool.isort]
|
||||
profile = "black"
|
||||
multi_line_output = 3
|
||||
|
||||
[tool.mypy]
|
||||
check_untyped_defs = true
|
||||
disallow_untyped_defs = true
|
||||
disallow_incomplete_defs = true
|
||||
disallow_untyped_decorators = true
|
||||
disallow_any_unimported = true
|
||||
warn_return_any = true
|
||||
warn_unused_ignores = true
|
||||
no_implicit_optional = true
|
||||
show_error_codes = true
|
72
scripts/catppuccin-colors
Executable file
|
@ -0,0 +1,72 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
if [[ -z $1 ]]; then
|
||||
echo "Usage: catppuccin-colors <palette>"
|
||||
echo "i.e. mocha,frappe,macchiato,latte"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! [[ -x "$(command -v inkcat)" ]]; then
|
||||
echo "inkcat is not installed"
|
||||
echo "you can use npm,pnpm, or yarn to install"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
get-color() {
|
||||
local palette=$1
|
||||
local color=$2
|
||||
inkcat $palette $color --no-copy --format rgb | sed s'/rgb//g'
|
||||
}
|
||||
|
||||
declare -A colors bright_colors
|
||||
colors=(
|
||||
[black]=$(get-color $1 subtext1)
|
||||
[red]=$(get-color $1 red)
|
||||
[green]=$(get-color $1 green)
|
||||
[yellow]=$(get-color $1 yellow)
|
||||
[blue]=$(get-color $1 blue)
|
||||
[magenta]=$(get-color $1 pink)
|
||||
[cyan]=$(get-color $1 teal)
|
||||
[white]=$(get-color $1 surface2)
|
||||
)
|
||||
bright_colors=(
|
||||
[black]=$(get-color $1 subtext0)
|
||||
[red]=$(get-color $1 red)
|
||||
[green]=$(get-color $1 green)
|
||||
[yellow]=$(get-color $1 yellow)
|
||||
[blue]=$(get-color $1 blue)
|
||||
[magenta]=$(get-color $1 pink)
|
||||
[cyan]=$(get-color $1 teal)
|
||||
[white]=$(get-color $1 surface1)
|
||||
)
|
||||
|
||||
make-palette() {
|
||||
|
||||
echo "cat_${1} = Theme("
|
||||
echo " background = $(get-color $1 base),"
|
||||
echo " foreground = $(get-color $1 text),"
|
||||
echo " colors = Colors("
|
||||
for color in "${!colors[@]}"; do
|
||||
echo " $color = ${colors[$color]},"
|
||||
done
|
||||
echo " ),"
|
||||
|
||||
echo " bright_colors = Colors("
|
||||
for color in "${!bright_colors[@]}"; do
|
||||
echo " $color = ${bright_colors[$color]},"
|
||||
done
|
||||
echo " ),"
|
||||
echo ")"
|
||||
|
||||
echo "CAT_${1^^} = TerminalTheme(
|
||||
cat_${1}.background,
|
||||
cat_${1}.foreground,
|
||||
cat_${1}.colors,
|
||||
cat_${1}.bright_colors,
|
||||
)"
|
||||
|
||||
}
|
||||
|
||||
for palette in "$@"; do
|
||||
make-palette $palette
|
||||
done
|
20
scripts/theme-showcase-gen
Executable file
|
@ -0,0 +1,20 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
THEME_MD="./docs/themes.md"
|
||||
|
||||
themes=$(yartsu --list-themes | tail -n +2 | awk '{print $2}')
|
||||
|
||||
mkdir -p ./assets/themes
|
||||
rm -f $THEME_MD
|
||||
|
||||
echo "# Themes" >>$THEME_MD
|
||||
echo >>$THEME_MD
|
||||
for theme in $themes; do
|
||||
url="assets/themes/${theme}.svg"
|
||||
echo >>$THEME_MD
|
||||
echo "## $theme" >>$THEME_MD
|
||||
echo "![$theme](../$url)" >>$THEME_MD
|
||||
yartsu --theme $theme -o $url -t "yartsu --theme ${theme}" -- yartsu -h
|
||||
done
|
||||
|
||||
echo "finished."
|
1
yartsu/__init__.py
Normal file
|
@ -0,0 +1 @@
|
|||
from ._version import __version__
|
61
yartsu/_run_cmd.py
Normal file
|
@ -0,0 +1,61 @@
|
|||
import errno
|
||||
import fcntl
|
||||
import os
|
||||
import pty
|
||||
import shlex
|
||||
import shutil
|
||||
import struct
|
||||
import sys
|
||||
import termios
|
||||
from itertools import chain
|
||||
from select import select
|
||||
from subprocess import Popen
|
||||
from typing import Tuple
|
||||
|
||||
(
|
||||
_COLUMNS,
|
||||
_ROWS,
|
||||
) = shutil.get_terminal_size(fallback=(80, 20))
|
||||
|
||||
|
||||
def _set_size(fd) -> None: # type: ignore
|
||||
"""Found at: https://stackoverflow.com/a/6420070"""
|
||||
size = struct.pack("HHHH", _ROWS, _COLUMNS, 0, 0)
|
||||
fcntl.ioctl(fd, termios.TIOCSWINSZ, size)
|
||||
|
||||
|
||||
def run_cmd(cmd: str) -> Tuple[int, str]:
|
||||
captured_output = []
|
||||
parents, children = zip(pty.openpty(), pty.openpty())
|
||||
for fd in chain(parents, children):
|
||||
_set_size(fd)
|
||||
|
||||
with Popen(
|
||||
shlex.split(cmd), stdin=sys.stdin, stdout=children[0], stderr=children[1]
|
||||
) as p:
|
||||
for fd in children:
|
||||
os.close(fd) # no input
|
||||
readable = {
|
||||
parents[0]: sys.stdout.buffer, # store buffers seperately
|
||||
parents[1]: sys.stderr.buffer,
|
||||
}
|
||||
while readable:
|
||||
for fd in select(readable, [], [])[0]:
|
||||
try:
|
||||
data = os.read(fd, 1024) # read available
|
||||
except OSError as e:
|
||||
if e.errno != errno.EIO:
|
||||
raise # XXX cleanup
|
||||
del readable[fd] # EIO means EOF on some systems
|
||||
else:
|
||||
if not data: # EOF
|
||||
del readable[fd]
|
||||
else:
|
||||
if fd == parents[0]: # We caught stdout
|
||||
captured_output.append(data.decode("utf-8"))
|
||||
else:
|
||||
captured_output.append(data.decode("utf-8"))
|
||||
readable[fd].flush()
|
||||
for fd in parents:
|
||||
os.close(fd)
|
||||
return p.returncode, "".join(captured_output)
|
6
yartsu/_version.py
Normal file
|
@ -0,0 +1,6 @@
|
|||
try:
|
||||
from importlib.metadata import version
|
||||
except ImportError:
|
||||
from importlib_metadata import version
|
||||
|
||||
__version__ = version("yartsu")
|
146
yartsu/argparse.py
Normal file
|
@ -0,0 +1,146 @@
|
|||
import sys
|
||||
from argparse import ONE_OR_MORE, SUPPRESS, ZERO_OR_MORE, Action
|
||||
from argparse import ArgumentParser as StdArgParser
|
||||
from argparse import HelpFormatter as StdHelpFormatter
|
||||
from typing import Any, NoReturn, Tuple, Union
|
||||
|
||||
from rich.text import Text
|
||||
|
||||
from .term import term
|
||||
|
||||
|
||||
class CustomFormatter(StdHelpFormatter):
|
||||
def _format_action_invocation(self, action: Action) -> str:
|
||||
if not action.option_strings:
|
||||
(metavar,) = self._metavar_formatter(action, action.dest)(1)
|
||||
return metavar
|
||||
else:
|
||||
# parts will be iterable of Text objects
|
||||
parts = []
|
||||
# if the Optional doesn't take a value, format is:
|
||||
# -s, --long
|
||||
if action.nargs == 0:
|
||||
parts.extend(
|
||||
[Text(option, style="option") for option in action.option_strings]
|
||||
)
|
||||
|
||||
# if the Optional takes a value, format is:
|
||||
# -s ARGS, --long ARGS
|
||||
# change to
|
||||
# -s, --long ARGS
|
||||
else:
|
||||
default = action.dest.upper()
|
||||
args_string = self._format_args(action, default)
|
||||
parts.extend(
|
||||
[Text(option, style="option") for option in action.option_strings]
|
||||
)
|
||||
# add metavar to last string
|
||||
parts[-1].append_text(Text(f" {args_string}", style="metavar"))
|
||||
return term.stylize(Text(", ").join(parts))
|
||||
|
||||
# from argparse.RawDescriptionHelpFormatter
|
||||
def _fill_text(self, text: str, width: int, indent: str) -> str:
|
||||
return term.stylize(
|
||||
Text("").join(
|
||||
Text.from_markup(indent + line)
|
||||
for line in text.splitlines(keepends=True)
|
||||
)
|
||||
)
|
||||
|
||||
def start_section(self, heading: str) -> None: # type: ignore
|
||||
return super().start_section(term.stylize(heading, style="header"))
|
||||
|
||||
def _format_action(self, action: Action) -> str:
|
||||
# determine the required width and the entry label
|
||||
help_position = min(self._action_max_length + 2, self._max_help_position)
|
||||
help_width = max(self._width - help_position, 11)
|
||||
action_width = help_position - self._current_indent - 2
|
||||
action_header = self._format_action_invocation(action)
|
||||
action_header_len = Text.from_ansi(action_header).cell_len
|
||||
|
||||
tup: Union[Tuple[int, str, int, str], Tuple[int, str, str]]
|
||||
|
||||
# no help; start on same line and add a final newline
|
||||
if not action.help:
|
||||
tup = self._current_indent, "", action_header
|
||||
action_header = "%*s%s\n" % tup
|
||||
|
||||
# short action name; start on the same line and pad two spaces
|
||||
elif action_header_len <= action_width:
|
||||
tup = self._current_indent, "", action_width, action_header
|
||||
action_header = f"{' '*self._current_indent}{action_header}{' '*(action_width+2 - action_header_len)}"
|
||||
indent_first = 0
|
||||
|
||||
# long action name; start on the next line
|
||||
else:
|
||||
tup = self._current_indent, "", action_header
|
||||
action_header = "%*s%s\n" % tup
|
||||
indent_first = help_position
|
||||
|
||||
# collect the pieces of the action help
|
||||
parts = [action_header]
|
||||
|
||||
# if there was help for the action, add lines of help text
|
||||
if action.help and action.help.strip():
|
||||
help_text = self._expand_help(action)
|
||||
if help_text:
|
||||
help_lines = self._split_lines(help_text, help_width)
|
||||
parts.append("%*s%s\n" % (indent_first, "", help_lines[0]))
|
||||
for line in help_lines[1:]:
|
||||
parts.append("%*s%s\n" % (help_position, "", line))
|
||||
|
||||
# or add a newline if the description doesn't end with one
|
||||
elif not action_header.endswith("\n"):
|
||||
parts.append("\n")
|
||||
|
||||
# if there are any sub-actions, add their help as well
|
||||
for subaction in self._iter_indented_subactions(action):
|
||||
parts.append(self._format_action(subaction))
|
||||
|
||||
# return a single string
|
||||
return self._join_parts(parts)
|
||||
|
||||
def _get_invocation_length(self, invocation: Any) -> int:
|
||||
return Text.from_ansi(invocation).cell_len
|
||||
|
||||
def _format_args(self, action: Action, default_metavar: str) -> str:
|
||||
get_metavar = self._metavar_formatter(action, default_metavar)
|
||||
if action.nargs == ZERO_OR_MORE:
|
||||
return "[%s ...]" % get_metavar(1)
|
||||
elif action.nargs == ONE_OR_MORE:
|
||||
return "%s ..." % get_metavar(1)
|
||||
else:
|
||||
return super()._format_args(action, default_metavar)
|
||||
|
||||
def add_argument(self, action: Action) -> None:
|
||||
if action.help is not SUPPRESS:
|
||||
|
||||
# find all invocations
|
||||
get_invocation = self._format_action_invocation
|
||||
invocations = [get_invocation(action)]
|
||||
for subaction in self._iter_indented_subactions(action):
|
||||
invocations.append(get_invocation(subaction))
|
||||
|
||||
# update the maximum item length accounting for ansi codes from rich
|
||||
invocation_length = max(map(self._get_invocation_length, invocations))
|
||||
action_length = invocation_length + self._current_indent
|
||||
self._action_max_length = max(self._action_max_length, action_length)
|
||||
|
||||
# add the item to the list
|
||||
self._add_item(self._format_action, [action])
|
||||
|
||||
|
||||
class ArgumentParser(StdArgParser):
|
||||
def __init__(self, *args: Any, **kwargs: Any) -> None:
|
||||
super().__init__(*args, **kwargs)
|
||||
self.formatter_class = CustomFormatter
|
||||
|
||||
def error(self, message: str) -> NoReturn:
|
||||
"""error(message: string)
|
||||
Prints a usage message incorporating the message to stderr and
|
||||
exits.
|
||||
If you override this in a subclass, it should not return -- it
|
||||
should either exit or raise an exception.
|
||||
"""
|
||||
term.print(f"[YartsuCLIError]({self.prog.strip()}): {message}", err=True)
|
||||
sys.exit(1)
|
122
yartsu/cli.py
Normal file
|
@ -0,0 +1,122 @@
|
|||
import os
|
||||
import sys
|
||||
import textwrap
|
||||
from argparse import SUPPRESS, FileType, Namespace
|
||||
from pathlib import Path
|
||||
|
||||
from rich.console import Console
|
||||
from rich.text import Text
|
||||
|
||||
from ._run_cmd import run_cmd
|
||||
from ._version import __version__
|
||||
from .argparse import ArgumentParser
|
||||
from .term import term
|
||||
from .themes import THEMES
|
||||
|
||||
DEFAULT_THEME = os.getenv("YARTSU_THEME", "cat_mocha")
|
||||
|
||||
|
||||
def get_args() -> Namespace:
|
||||
|
||||
parser = ArgumentParser(
|
||||
usage=SUPPRESS,
|
||||
description=textwrap.dedent(
|
||||
r"""
|
||||
[bold italic cyan]usage[/]:
|
||||
|
||||
ls --color=always | yartsu \[options]
|
||||
[dim]OR[/]
|
||||
yartsu \[options] -- ls --color
|
||||
[dim]OR[/]
|
||||
ls --color=always > ls.txt; yartsu -i ls.txt
|
||||
|
||||
convert terminal output to svg
|
||||
"""
|
||||
),
|
||||
)
|
||||
parser.add_argument(
|
||||
"-V", "--version", action="version", version=f"%(prog)s {__version__}"
|
||||
)
|
||||
parser.add_argument(
|
||||
"-i",
|
||||
"--input",
|
||||
help="input file [default: stdin]",
|
||||
type=FileType("r"),
|
||||
default=(None if sys.stdin.isatty() else sys.stdin),
|
||||
)
|
||||
parser.add_argument("cmd", type=str, nargs="*", default="", help=SUPPRESS)
|
||||
parser.add_argument(
|
||||
"-o",
|
||||
"--output",
|
||||
help="output svg file [default: %(default)s]",
|
||||
type=Path,
|
||||
default=Path("capture.svg"),
|
||||
)
|
||||
parser.add_argument("-t", "--title", help="title for terminal window", type=str)
|
||||
parser.add_argument("-w", "--width", help="width of svg", type=int)
|
||||
parser.add_argument(
|
||||
"--theme",
|
||||
help="theme to use for highlighting [default: %(default)s]",
|
||||
type=str,
|
||||
default=DEFAULT_THEME,
|
||||
)
|
||||
parser.add_argument(
|
||||
"--list-themes", help="list available themes", action="store_true"
|
||||
)
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
def main() -> None:
|
||||
args = get_args()
|
||||
console = Console(record=True)
|
||||
|
||||
if args.list_themes:
|
||||
term.print("Available themes:")
|
||||
term.print("\n".join([" - " + theme for theme in THEMES]))
|
||||
sys.exit(0)
|
||||
|
||||
if args.cmd and args.input or not (args.cmd or args.input):
|
||||
term.print(
|
||||
"[UsageError]: either use the --input option "
|
||||
"OR pipe terminal output to yartsu",
|
||||
err=True,
|
||||
)
|
||||
term.print("See 'yartsu --help' for more information", err=True)
|
||||
sys.exit(1)
|
||||
|
||||
if args.theme not in THEMES:
|
||||
term.print(f"[ThemeError]: {args.theme} is not a valid theme", err=True)
|
||||
sys.exit(1)
|
||||
|
||||
if args.cmd:
|
||||
cmd = " ".join(args.cmd)
|
||||
|
||||
try:
|
||||
returncode, captured_output = run_cmd(cmd)
|
||||
except FileNotFoundError:
|
||||
term.print(f"[CmdError]: issue running {cmd}", err=True)
|
||||
sys.exit(1)
|
||||
|
||||
if returncode != 0:
|
||||
term.print(f"[CmdError]: issue running {cmd}", err=True)
|
||||
sys.exit(returncode)
|
||||
|
||||
parsed_input = Text.from_ansi(captured_output)
|
||||
else:
|
||||
cmd = None
|
||||
|
||||
if args.input:
|
||||
parsed_input = Text.from_ansi(args.input.read())
|
||||
|
||||
title = args.title or cmd or "yartsu"
|
||||
|
||||
if not args.width:
|
||||
console.width = max(console.measure(parsed_input).maximum, 40)
|
||||
else:
|
||||
console.width = args.width
|
||||
|
||||
console.print(parsed_input)
|
||||
|
||||
console.save_svg(args.output, title=title, theme=THEMES[args.theme])
|
||||
|
||||
term.print(f"\nSaved to {args.output}.")
|
53
yartsu/term.py
Normal file
|
@ -0,0 +1,53 @@
|
|||
import shutil
|
||||
from typing import Any
|
||||
|
||||
from rich import box
|
||||
from rich.console import Console
|
||||
from rich.highlighter import RegexHighlighter
|
||||
from rich.table import Table as RichTable
|
||||
from rich.theme import Theme
|
||||
|
||||
MAX_WIDTH = 120
|
||||
|
||||
|
||||
class Table(RichTable):
|
||||
def __init__(self, box: box.Box = box.ROUNDED, *args: Any, **kwargs: Any) -> None:
|
||||
super().__init__(*args, **kwargs)
|
||||
self.box = box
|
||||
|
||||
|
||||
class ErrorHighlighter(RegexHighlighter):
|
||||
"""Apply style to anything that looks like an error."""
|
||||
|
||||
highlights = [r"(?P<error>\[\w+Error\])"]
|
||||
|
||||
|
||||
theme = Theme({"header": "bold cyan", "option": "yellow", "metavar": "green"})
|
||||
|
||||
|
||||
class Term:
|
||||
def __init__(self, width: int) -> None:
|
||||
|
||||
self.console = Console(highlight=False, theme=theme, width=width)
|
||||
self.err_console = Console(
|
||||
theme=Theme({"error": "bold red"}, inherit=True),
|
||||
stderr=True,
|
||||
highlighter=ErrorHighlighter(),
|
||||
width=width,
|
||||
)
|
||||
|
||||
def print(self, *objects: Any, err: bool = False, **kwargs: Any) -> None:
|
||||
console = self.console if not err else self.err_console
|
||||
console.print(*objects, **kwargs)
|
||||
|
||||
def stylize(self, *objects: Any, **kwargs: Any) -> str:
|
||||
with self.console.capture() as capture:
|
||||
self.print(*objects, **kwargs, end="")
|
||||
return capture.get()
|
||||
|
||||
def debug(self, renderable: Any, **kwargs: Any) -> None:
|
||||
self.console.print("[dim]>>debug[/]:\n", renderable, **kwargs)
|
||||
|
||||
|
||||
cols = shutil.get_terminal_size().columns
|
||||
term = Term(width=MAX_WIDTH if cols > MAX_WIDTH else cols)
|
144
yartsu/themes.py
Normal file
|
@ -0,0 +1,144 @@
|
|||
from collections import namedtuple
|
||||
|
||||
from rich.terminal_theme import (
|
||||
DIMMED_MONOKAI,
|
||||
MONOKAI,
|
||||
NIGHT_OWLISH,
|
||||
SVG_EXPORT_THEME,
|
||||
TerminalTheme,
|
||||
)
|
||||
|
||||
Colors = namedtuple("Colors", "black, red, green, yellow, blue, magenta, cyan, white")
|
||||
Theme = namedtuple("Theme", "background, foreground, colors, bright_colors")
|
||||
|
||||
cat_mocha = Theme(
|
||||
background=(30, 30, 46),
|
||||
foreground=(198, 208, 245),
|
||||
colors=Colors(
|
||||
black=(179, 188, 223),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(86, 89, 112),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
bright_colors=Colors(
|
||||
black=(161, 168, 201),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(67, 70, 90),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
)
|
||||
CAT_MOCHA = TerminalTheme(
|
||||
cat_mocha.background,
|
||||
cat_mocha.foreground,
|
||||
cat_mocha.colors,
|
||||
cat_mocha.bright_colors,
|
||||
)
|
||||
cat_frappe = Theme(
|
||||
background=(48, 52, 70),
|
||||
foreground=(198, 206, 239),
|
||||
colors=Colors(
|
||||
black=(179, 188, 223),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(86, 89, 112),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
bright_colors=Colors(
|
||||
black=(161, 168, 201),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(67, 70, 90),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
)
|
||||
CAT_FRAPPE = TerminalTheme(
|
||||
cat_frappe.background,
|
||||
cat_frappe.foreground,
|
||||
cat_frappe.colors,
|
||||
cat_frappe.bright_colors,
|
||||
)
|
||||
cat_macchiato = Theme(
|
||||
background=(36, 39, 58),
|
||||
foreground=(197, 207, 245),
|
||||
colors=Colors(
|
||||
black=(179, 188, 223),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(86, 89, 112),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
bright_colors=Colors(
|
||||
black=(161, 168, 201),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(67, 70, 90),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
)
|
||||
CAT_MACCHIATO = TerminalTheme(
|
||||
cat_macchiato.background,
|
||||
cat_macchiato.foreground,
|
||||
cat_macchiato.colors,
|
||||
cat_macchiato.bright_colors,
|
||||
)
|
||||
cat_latte = Theme(
|
||||
background=(239, 241, 245),
|
||||
foreground=(76, 79, 105),
|
||||
colors=Colors(
|
||||
black=(179, 188, 223),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(86, 89, 112),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
bright_colors=Colors(
|
||||
black=(161, 168, 201),
|
||||
cyan=(148, 226, 213),
|
||||
yellow=(249, 226, 175),
|
||||
blue=(135, 176, 249),
|
||||
red=(243, 139, 168),
|
||||
white=(67, 70, 90),
|
||||
green=(166, 227, 161),
|
||||
magenta=(245, 194, 231),
|
||||
),
|
||||
)
|
||||
CAT_LATTE = TerminalTheme(
|
||||
cat_latte.background,
|
||||
cat_latte.foreground,
|
||||
cat_latte.colors,
|
||||
cat_latte.bright_colors,
|
||||
)
|
||||
|
||||
THEMES = {
|
||||
"cat_mocha": CAT_MOCHA,
|
||||
"cat_frappe": CAT_FRAPPE,
|
||||
"cat_macchiato": CAT_MACCHIATO,
|
||||
"cat_latte": CAT_LATTE,
|
||||
"monokai": MONOKAI,
|
||||
"dimmed_monokai": DIMMED_MONOKAI,
|
||||
"night_owlish": NIGHT_OWLISH,
|
||||
"rich_default": SVG_EXPORT_THEME,
|
||||
}
|